@nativescript-community/ui-drawer 0.0.31 → 0.0.34
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/CHANGELOG.md +34 -0
- package/README.md +258 -0
- package/angular/{esm2015/index.js → esm2020/index.mjs} +0 -0
- package/angular/{esm2015/module.js → esm2020/module.mjs} +10 -10
- package/angular/{esm2015/nativescript-community-ui-drawer-angular.js → esm2020/nativescript-community-ui-drawer-angular.mjs} +0 -0
- package/angular/fesm2015/nativescript-community-ui-drawer-angular.mjs +217 -0
- package/angular/{fesm2015/nativescript-community-ui-drawer-angular.js → fesm2020/nativescript-community-ui-drawer-angular.mjs} +9 -9
- package/angular/package.json +20 -6
- package/index.js +2 -2
- package/package.json +6 -5
- package/react/index.d.ts +20 -0
- package/react/index.js +9 -0
- package/angular/bundles/nativescript-community-ui-drawer-angular.umd.js +0 -268
package/CHANGELOG.md
CHANGED
@@ -3,6 +3,40 @@
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
5
5
|
|
6
|
+
## [0.0.34](https://github.com/nativescript-community/ui-drawer/compare/v0.0.33...v0.0.34) (2022-04-11)
|
7
|
+
|
8
|
+
|
9
|
+
### Bug Fixes
|
10
|
+
|
11
|
+
* **android:** gesture lifecycle fixes ([7a5f070](https://github.com/nativescript-community/ui-drawer/commit/7a5f070962a5eb57a09cbfa581e98251f20a6a36))
|
12
|
+
* **react:** react build fix ([181d6a2](https://github.com/nativescript-community/ui-drawer/commit/181d6a21f30ed8085dece1e9d6d4ec688c99d4dd))
|
13
|
+
|
14
|
+
|
15
|
+
|
16
|
+
|
17
|
+
|
18
|
+
## [0.0.33](https://github.com/nativescript-community/ui-drawer/compare/v0.0.32...v0.0.33) (2022-01-04)
|
19
|
+
|
20
|
+
|
21
|
+
### Bug Fixes
|
22
|
+
|
23
|
+
* deps fix ([6957b33](https://github.com/nativescript-community/ui-drawer/commit/6957b33be832996995e153abe2fba817964bc302))
|
24
|
+
|
25
|
+
|
26
|
+
|
27
|
+
|
28
|
+
|
29
|
+
## [0.0.32](https://github.com/nativescript-community/ui-drawer/compare/v0.0.31...v0.0.32) (2022-01-04)
|
30
|
+
|
31
|
+
|
32
|
+
### Bug Fixes
|
33
|
+
|
34
|
+
* gesturehandler fix for `gestureEnabled` property ([8f92c62](https://github.com/nativescript-community/ui-drawer/commit/8f92c62426a439a4175fb64e64e8883f0fda3c4f))
|
35
|
+
|
36
|
+
|
37
|
+
|
38
|
+
|
39
|
+
|
6
40
|
## [0.0.31](https://github.com/nativescript-community/ui-drawer/compare/v0.0.30...v0.0.31) (2021-10-12)
|
7
41
|
|
8
42
|
**Note:** Version bump only for package @nativescript-community/ui-drawer
|
package/README.md
ADDED
@@ -0,0 +1,258 @@
|
|
1
|
+
<!-- ⚠️ This README has been generated from the file(s) "blueprint.md" ⚠️-->
|
2
|
+
<!-- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
3
|
+
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
4
|
+
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
5
|
+
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
6
|
+
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
7
|
+
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
8
|
+
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
9
|
+
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
10
|
+
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
11
|
+
DO NOT EDIT THIS READEME DIRECTLY! Edit "bluesprint.md" instead.
|
12
|
+
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
13
|
+
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
14
|
+
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
15
|
+
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
16
|
+
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
17
|
+
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
18
|
+
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
19
|
+
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
20
|
+
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
|
21
|
+
<h1 align="center">@nativescript-community/ui-drawer</h1>
|
22
|
+
<p align="center">
|
23
|
+
<a href="https://npmcharts.com/compare/@nativescript-community/ui-drawer?minimal=true"><img alt="Downloads per month" src="https://img.shields.io/npm/dm/@nativescript-community/ui-drawer.svg" height="20"/></a>
|
24
|
+
<a href="https://www.npmjs.com/package/@nativescript-community/ui-drawer"><img alt="NPM Version" src="https://img.shields.io/npm/v/@nativescript-community/ui-drawer.svg" height="20"/></a>
|
25
|
+
</p>
|
26
|
+
|
27
|
+
<p align="center">
|
28
|
+
<b>Easily add a side drawer (side menu) to your projects.</b></br>
|
29
|
+
<sub><sub>
|
30
|
+
</p>
|
31
|
+
|
32
|
+
<br />
|
33
|
+
|
34
|
+
|
35
|
+
| <img src="https://raw.githubusercontent.com/nativescript-community/ui-drawer/master/images/demo-ios.gif" height="500" /> | <img src="https://raw.githubusercontent.com/nativescript-community/ui-drawer/master/images/demo-android.gif" height="500" /> |
|
36
|
+
| --- | ----------- |
|
37
|
+
| iOS Demo | Android Demo |
|
38
|
+
|
39
|
+
|
40
|
+
[](#table-of-contents)
|
41
|
+
|
42
|
+
## Table of Contents
|
43
|
+
|
44
|
+
* [Installation](#installation)
|
45
|
+
* [Configuration](#configuration)
|
46
|
+
* [API](#api)
|
47
|
+
* [Properties](#properties)
|
48
|
+
* [Methods](#methods)
|
49
|
+
* [Events](#events)
|
50
|
+
* [Usage in Angular](#usage-in-angular)
|
51
|
+
* [Examples:](#examples)
|
52
|
+
* [Usage in React](#usage-in-react)
|
53
|
+
* [Examples:](#examples-1)
|
54
|
+
* [Usage in Svelte](#usage-in-svelte)
|
55
|
+
* [Examples:](#examples-2)
|
56
|
+
* [Usage in Vue](#usage-in-vue)
|
57
|
+
* [Examples:](#examples-3)
|
58
|
+
* [Demos and Development](#demos-and-development)
|
59
|
+
* [Setup](#setup)
|
60
|
+
* [Build](#build)
|
61
|
+
* [Demos](#demos)
|
62
|
+
* [Questions](#questions)
|
63
|
+
|
64
|
+
|
65
|
+
[](#installation)
|
66
|
+
|
67
|
+
## Installation
|
68
|
+
Run the following command from the root of your project:
|
69
|
+
|
70
|
+
`ns plugin add @nativescript-community/ui-drawer`
|
71
|
+
|
72
|
+
|
73
|
+
[](#configuration)
|
74
|
+
|
75
|
+
## Configuration
|
76
|
+
For gestures to work, make sure to add the following code block inside the main application file (e.g. app.ts):
|
77
|
+
|
78
|
+
```typescript
|
79
|
+
import { install } from '@nativescript-community/ui-drawer';
|
80
|
+
install();
|
81
|
+
```
|
82
|
+
|
83
|
+
|
84
|
+
[](#api)
|
85
|
+
|
86
|
+
## API
|
87
|
+
|
88
|
+
### Properties
|
89
|
+
|
90
|
+
| Property | Default | Type | Description |
|
91
|
+
| ------------------- | --------------------------------- | --------------------------- | ------------------------------------------------------- |
|
92
|
+
| leftDrawer | `undefined` | `View` | View containing the content for the left side drawer |
|
93
|
+
| rightDrawer | `undefined` | `View` | View containing the content for the right side drawer |
|
94
|
+
| topDrawer | `undefined` | `View` | View containing the content for the top side drawer |
|
95
|
+
| bottomDrawer | `undefined` | `View` | View containing the content for the bottom side drawer |
|
96
|
+
| mainContent | `undefined` | `View` | View containing the main content of the app |
|
97
|
+
| gestureEnabled | `true` | `boolean` | Boolean setting if swipe gestures are enabled |
|
98
|
+
| backdropColor | `new Color('rgba(0, 0, 0, 0.7)')` | `Color` | The color of the backdrop behind the drawer |
|
99
|
+
| leftDrawerMode | `slide` | `Mode ('under' or 'slide')` | The color of the backdrop behind the drawer |
|
100
|
+
| rightDrawerMode | `slide` | `Mode ('under' or 'slide')` | The color of the backdrop behind the drawer |
|
101
|
+
| gestureMinDist | `10` | number | The min "swipe" distance to trigger the menu gesture |
|
102
|
+
| leftSwipeDistance | `40` | number | The "left" zone size from where the gesture is recognized |
|
103
|
+
| rightSwipeDistance | `40` | number | The "right" zone size from where the gesture is recognized |
|
104
|
+
| topSwipeDistance | `40` | number | The "top" zone size from where the gesture is recognized |
|
105
|
+
| bottomSwipeDistance | `40` | number | The "bottom" zone size from where the gesture is recognized |
|
106
|
+
| leftOpenedDrawerAllowDraging | `true` | boolean | Allow dragging the opened menu |
|
107
|
+
| rightOpenedDrawerAllowDraging | `true` | boolean | Allow dragging the opened menu |
|
108
|
+
| topOpenedDrawerAllowDraging | `true` | boolean | Allow dragging the opened menu |
|
109
|
+
| bottomOpenedDrawerAllowDraging | `true` | boolean | Allow dragging the opened menu |
|
110
|
+
|
111
|
+
|
112
|
+
|
113
|
+
### Methods
|
114
|
+
|
115
|
+
| Name | Return | Description |
|
116
|
+
| ------------ | ------ | ----------------------------------------------- |
|
117
|
+
| open() | `void` | Programatically open the drawer |
|
118
|
+
| close() | `void` | Programatically close the drawer |
|
119
|
+
| toggle() | `void` | Programatically toggle the state of the drawer |
|
120
|
+
| install() | `void` | Install gestures |
|
121
|
+
|
122
|
+
### Events
|
123
|
+
|
124
|
+
| Name | Event Data | Description |
|
125
|
+
| --------- | ------------------ | ---------------------------- |
|
126
|
+
| open | `side`, `duration` | Drawer opens |
|
127
|
+
| close | `side`, `duration` | Drawer closes |
|
128
|
+
|
129
|
+
|
130
|
+
[](#usage-in-angular)
|
131
|
+
|
132
|
+
## Usage in Angular
|
133
|
+
Import the module into your project.
|
134
|
+
|
135
|
+
```typescript
|
136
|
+
import { DrawerModule } from "@nativescript-community/ui-drawer/angular";
|
137
|
+
|
138
|
+
@NgModule({
|
139
|
+
imports: [
|
140
|
+
DrawerModule
|
141
|
+
]
|
142
|
+
schemas: [
|
143
|
+
NO_ERRORS_SCHEMA
|
144
|
+
]
|
145
|
+
})
|
146
|
+
|
147
|
+
export class AppModule { }
|
148
|
+
```
|
149
|
+
|
150
|
+
### Examples:
|
151
|
+
|
152
|
+
- [Basic Drawer](demo-snippets/ng/basic-drawer)
|
153
|
+
- A basic sliding drawer.
|
154
|
+
- [All Sides](demo-snippets/ng/all-sides)
|
155
|
+
- An example of drawers on all sides: left, right, top, bottom.
|
156
|
+
|
157
|
+
|
158
|
+
|
159
|
+
[](#usage-in-react)
|
160
|
+
|
161
|
+
## Usage in React
|
162
|
+
|
163
|
+
Register the plugin in your `app.ts`.
|
164
|
+
|
165
|
+
```typescript
|
166
|
+
import DrawerElement from '@nativescript-community/ui-drawer/react';
|
167
|
+
DrawerElement.register();
|
168
|
+
```
|
169
|
+
|
170
|
+
### Examples:
|
171
|
+
|
172
|
+
- [Basic Drawer](demo-snippets/react/BasicDrawer.tsx)
|
173
|
+
- A basic sliding drawer.
|
174
|
+
- [All Sides](demo-snippets/react/AllSides.tsx)
|
175
|
+
- An example of drawers on all sides: left, right, top, bottom.
|
176
|
+
|
177
|
+
|
178
|
+
[](#usage-in-svelte)
|
179
|
+
|
180
|
+
## Usage in Svelte
|
181
|
+
|
182
|
+
Register the plugin in your `app.ts`.
|
183
|
+
|
184
|
+
```typescript
|
185
|
+
import DrawerElement from '@nativescript-community/ui-drawer/svelte';
|
186
|
+
DrawerElement.register();
|
187
|
+
```
|
188
|
+
|
189
|
+
### Examples:
|
190
|
+
|
191
|
+
- [Basic Drawer](demo-snippets/svelte/BasicDrawer.svelte)
|
192
|
+
- A basic sliding drawer.
|
193
|
+
- [All Sides](demo-snippets/svelte/AllSides.svelte)
|
194
|
+
- An example of drawers on all sides: left, right, top, bottom.
|
195
|
+
|
196
|
+
|
197
|
+
[](#usage-in-vue)
|
198
|
+
|
199
|
+
## Usage in Vue
|
200
|
+
|
201
|
+
Register the plugin in your `app.js`.
|
202
|
+
|
203
|
+
```typescript
|
204
|
+
import DrawerPlugin from '@nativescript-community/ui-drawer/vue'
|
205
|
+
Vue.use(DrawerPlugin);
|
206
|
+
```
|
207
|
+
|
208
|
+
### Examples:
|
209
|
+
|
210
|
+
- [Basic Drawer](demo-snippets/vue/BasicDrawer.vue)
|
211
|
+
- A basic sliding drawer.
|
212
|
+
- [All Sides](demo-snippets/vue/AllSides.vue)
|
213
|
+
- An example of drawers on all sides: left, right, top, bottom.
|
214
|
+
|
215
|
+
|
216
|
+
[](#demos-and-development)
|
217
|
+
|
218
|
+
## Demos and Development
|
219
|
+
|
220
|
+
|
221
|
+
### Setup
|
222
|
+
|
223
|
+
To run the demos, you must clone this repo **recursively**.
|
224
|
+
|
225
|
+
```
|
226
|
+
git clone https://github.com/@nativescript-community/ui-drawer.git --recursive
|
227
|
+
```
|
228
|
+
|
229
|
+
**Install Dependencies:**
|
230
|
+
```bash
|
231
|
+
npm i # or 'yarn install' or 'pnpm install'
|
232
|
+
```
|
233
|
+
|
234
|
+
**Interactive Menu:**
|
235
|
+
|
236
|
+
To start the interactive menu, run `npm start` (or `yarn start` or `pnpm start`). This will list all of the commonly used scripts.
|
237
|
+
|
238
|
+
### Build
|
239
|
+
|
240
|
+
```bash
|
241
|
+
npm run build
|
242
|
+
|
243
|
+
npm run build.angular # or for Angular
|
244
|
+
```
|
245
|
+
|
246
|
+
### Demos
|
247
|
+
|
248
|
+
```bash
|
249
|
+
npm run demo.[ng|react|svelte|vue].[ios|android]
|
250
|
+
|
251
|
+
npm run demo.svelte.ios # Example
|
252
|
+
```
|
253
|
+
|
254
|
+
[](#questions)
|
255
|
+
|
256
|
+
## Questions
|
257
|
+
|
258
|
+
If you have any questions/issues/comments please feel free to create an issue or start a conversation in the [NativeScript Community Discord](https://nativescript.org/discord).
|
File without changes
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import { Component, Directive, ElementRef, Inject, NgModule, ViewContainerRef } from '@angular/core';
|
1
|
+
import { Component, Directive, ElementRef, EmbeddedViewRef, EventEmitter, Inject, Input, NgModule, Output, TemplateRef, ViewContainerRef } from '@angular/core';
|
2
2
|
import { registerElement } from '@nativescript/angular';
|
3
3
|
import { Drawer } from '@nativescript-community/ui-drawer';
|
4
4
|
import * as i0 from "@angular/core";
|
@@ -34,7 +34,7 @@ DrawerComponent.ɵcmp = i0.ɵɵdefineComponent({ type: DrawerComponent, selector
|
|
34
34
|
type: Component,
|
35
35
|
args: [{
|
36
36
|
selector: 'Drawer',
|
37
|
-
template: '<ng-content></ng-content>'
|
37
|
+
template: '<ng-content></ng-content>'
|
38
38
|
}]
|
39
39
|
}], function () { return [{ type: i0.ElementRef, decorators: [{
|
40
40
|
type: Inject,
|
@@ -54,7 +54,7 @@ LeftDrawerDirective.ɵdir = i0.ɵɵdefineDirective({ type: LeftDrawerDirective,
|
|
54
54
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(LeftDrawerDirective, [{
|
55
55
|
type: Directive,
|
56
56
|
args: [{
|
57
|
-
selector: '[leftDrawer]'
|
57
|
+
selector: '[leftDrawer]'
|
58
58
|
}]
|
59
59
|
}], function () { return [{ type: i0.ElementRef, decorators: [{
|
60
60
|
type: Inject,
|
@@ -71,7 +71,7 @@ RightDrawerDirective.ɵdir = i0.ɵɵdefineDirective({ type: RightDrawerDirective
|
|
71
71
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(RightDrawerDirective, [{
|
72
72
|
type: Directive,
|
73
73
|
args: [{
|
74
|
-
selector: '[rightDrawer]'
|
74
|
+
selector: '[rightDrawer]'
|
75
75
|
}]
|
76
76
|
}], function () { return [{ type: i0.ElementRef, decorators: [{
|
77
77
|
type: Inject,
|
@@ -88,7 +88,7 @@ TopDrawerDirective.ɵdir = i0.ɵɵdefineDirective({ type: TopDrawerDirective, se
|
|
88
88
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(TopDrawerDirective, [{
|
89
89
|
type: Directive,
|
90
90
|
args: [{
|
91
|
-
selector: '[topDrawer]'
|
91
|
+
selector: '[topDrawer]'
|
92
92
|
}]
|
93
93
|
}], function () { return [{ type: i0.ElementRef, decorators: [{
|
94
94
|
type: Inject,
|
@@ -105,7 +105,7 @@ BottomDrawerDirective.ɵdir = i0.ɵɵdefineDirective({ type: BottomDrawerDirecti
|
|
105
105
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(BottomDrawerDirective, [{
|
106
106
|
type: Directive,
|
107
107
|
args: [{
|
108
|
-
selector: '[bottomDrawer]'
|
108
|
+
selector: '[bottomDrawer]'
|
109
109
|
}]
|
110
110
|
}], function () { return [{ type: i0.ElementRef, decorators: [{
|
111
111
|
type: Inject,
|
@@ -122,7 +122,7 @@ MainContentDirective.ɵdir = i0.ɵɵdefineDirective({ type: MainContentDirective
|
|
122
122
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MainContentDirective, [{
|
123
123
|
type: Directive,
|
124
124
|
args: [{
|
125
|
-
selector: '[mainContent]'
|
125
|
+
selector: '[mainContent]'
|
126
126
|
}]
|
127
127
|
}], function () { return [{ type: i0.ElementRef, decorators: [{
|
128
128
|
type: Inject,
|
@@ -166,7 +166,7 @@ const sideDrawerMeta = {
|
|
166
166
|
if (childView.id === BOTTOMDRAWER) {
|
167
167
|
drawer.bottomDrawer = null;
|
168
168
|
}
|
169
|
-
}
|
169
|
+
}
|
170
170
|
};
|
171
171
|
export const SIDEDRAWER_DIRECTIVES = [LeftDrawerDirective, RightDrawerDirective, TopDrawerDirective, BottomDrawerDirective, MainContentDirective];
|
172
172
|
registerElement('Drawer', () => Drawer, sideDrawerMeta);
|
@@ -179,8 +179,8 @@ DrawerModule.ɵinj = i0.ɵɵdefineInjector({});
|
|
179
179
|
type: NgModule,
|
180
180
|
args: [{
|
181
181
|
declarations: [DrawerComponent, SIDEDRAWER_DIRECTIVES],
|
182
|
-
exports: [DrawerComponent, SIDEDRAWER_DIRECTIVES]
|
182
|
+
exports: [DrawerComponent, SIDEDRAWER_DIRECTIVES]
|
183
183
|
}]
|
184
184
|
}], null, null); })();
|
185
185
|
(function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(DrawerModule, { declarations: [DrawerComponent, LeftDrawerDirective, RightDrawerDirective, TopDrawerDirective, BottomDrawerDirective, MainContentDirective], exports: [DrawerComponent, LeftDrawerDirective, RightDrawerDirective, TopDrawerDirective, BottomDrawerDirective, MainContentDirective] }); })();
|
186
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3VpLWRyYXdlci9hbmd1bGFyL21vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQWlDLE1BQU0sRUFBUyxRQUFRLEVBQXVCLGdCQUFnQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2hLLE9BQU8sRUFBeUIsZUFBZSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDL0UsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLG1DQUFtQyxDQUFDOzs7QUFFM0QsTUFBTSxVQUFVLEdBQVcsWUFBWSxDQUFDO0FBQ3hDLE1BQU0sV0FBVyxHQUFXLGFBQWEsQ0FBQztBQUMxQyxNQUFNLFNBQVMsR0FBVyxXQUFXLENBQUM7QUFDdEMsTUFBTSxZQUFZLEdBQVcsY0FBYyxDQUFDO0FBQzVDLE1BQU0sV0FBVyxHQUFXLGFBQWEsQ0FBQztBQWlCMUMsTUFBTSxPQUFPLGVBQWU7SUFPeEIsWUFBdUMsVUFBc0IsRUFBb0MsYUFBK0I7UUFBekYsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUFvQyxrQkFBYSxHQUFiLGFBQWEsQ0FBa0I7UUFDNUgsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQztJQUNoRCxDQUFDO0lBRUQsSUFBVyxhQUFhO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUN2QixDQUFDO0lBRUQsSUFBSSxjQUFjLENBQUMsS0FBYztRQUM3QixJQUFJLENBQUMsZUFBZSxHQUFHLEtBQUssQ0FBQztRQUM3QixJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztJQUNoQyxDQUFDO0lBRU8sb0JBQW9CO1FBQ3hCLElBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUM7SUFDdEQsQ0FBQzs7OEVBdEJRLGVBQWUsdUJBT0os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RSxjQUFjLENBQUMsQ0FBQztBQVN4RCxNQUFNLE9BQU8sWUFBWTs7d0VBQVosWUFBWTtnREFBWixZQUFZOzt1RkFBWixZQUFZO2NBSnhCLFFBQVE7ZUFBQztnQkFDTixZQUFZLEVBQUUsQ0FBQyxlQUFlLEVBQUUscUJBQXFCLENBQUM7Z0JBQ3RELE9BQU8sRUFBRSxDQUFDLGVBQWUsRUFBRSxxQkFBcUIsQ0FBQzthQUNwRDs7d0ZBQ1ksWUFBWSxtQkEvSVosZUFBZSxFQStCZixtQkFBbUIsRUFXbkIsb0JBQW9CLEVBWXBCLGtCQUFrQixFQVlsQixxQkFBcUIsRUFZckIsb0JBQW9CLGFBOUVwQixlQUFlLEVBK0JmLG1CQUFtQixFQVduQixvQkFBb0IsRUFZcEIsa0JBQWtCLEVBWWxCLHFCQUFxQixFQVlyQixvQkFBb0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgRW1iZWRkZWRWaWV3UmVmLCBFdmVudEVtaXR0ZXIsIEluamVjdCwgSW5wdXQsIE5nTW9kdWxlLCBPdXRwdXQsIFRlbXBsYXRlUmVmLCBWaWV3Q29udGFpbmVyUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOZ1ZpZXcsIFZpZXdDbGFzc01ldGEsIHJlZ2lzdGVyRWxlbWVudCB9IGZyb20gJ0BuYXRpdmVzY3JpcHQvYW5ndWxhcic7XG5pbXBvcnQgeyBEcmF3ZXIgfSBmcm9tICdAbmF0aXZlc2NyaXB0LWNvbW11bml0eS91aS1kcmF3ZXInO1xuXG5jb25zdCBMRUZURFJBV0VSOiBzdHJpbmcgPSAnTGVmdERyYXdlcic7XG5jb25zdCBSSUdIVERSQVdFUjogc3RyaW5nID0gJ1JpZ2h0RHJhd2VyJztcbmNvbnN0IFRPUERSQVdFUjogc3RyaW5nID0gJ1RvcERyYXdlcic7XG5jb25zdCBCT1RUT01EUkFXRVI6IHN0cmluZyA9ICdCb3R0b21EcmF3ZXInO1xuY29uc3QgTUFJTkNPTlRFTlQ6IHN0cmluZyA9ICdNYWluQ29udGVudCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSXRlbUV2ZW50QXJncyB7XG4gICAgb2JqZWN0OiBhbnk7XG4gICAgdmlldzogRW1iZWRkZWRWaWV3UmVmPGFueT47XG4gICAgcmV0dXJuVmFsdWU/OiBib29sZWFuO1xufVxuXG4vKipcbiAqIFRoaXMgaXMgdGhlIFNpZGVEcmF3ZXIgY29tcG9uZW50LiBJdCBzZXBhcmF0ZXMgeW91ciBtb2JpbGUgYXBwJ3Mgc2NyZWVuXG4gKiBpbnRvIGEgbWFpbiBwYXJ0IGFuZCBhIG1lbnUgcGFydCB3aGVyZWJ5IHRoZSBtZW51IHBhcnQgaXMgc2hvd24gdXBvbiBhIHN3aXBlXG4gKiBnZXN0dXJlIHVzaW5nIGEgdHJhbnNpdGlvbiBlZmZlY3QuXG4gKi9cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnRHJhd2VyJyxcbiAgICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxufSlcbmV4cG9ydCBjbGFzcyBEcmF3ZXJDb21wb25lbnQge1xuICAgIHB1YmxpYyBkcmF3ZXI6IERyYXdlcjtcbiAgICBwdWJsaWMgbWFpblRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxFbGVtZW50UmVmPjtcbiAgICBwdWJsaWMgZHJhd2VyVGVtcGxhdGU6IFRlbXBsYXRlUmVmPEVsZW1lbnRSZWY+O1xuXG4gICAgcHJpdmF0ZSBfZ2VzdHVyZUVuYWJsZWQ6IGJvb2xlYW47XG5cbiAgICBjb25zdHJ1Y3RvcihASW5qZWN0KEVsZW1lbnRSZWYpIHB1YmxpYyBlbGVtZW50UmVmOiBFbGVtZW50UmVmLCBASW5qZWN0KFZpZXdDb250YWluZXJSZWYpIHByaXZhdGUgdmlld0NvbnRhaW5lcjogVmlld0NvbnRhaW5lclJlZikge1xuICAgICAgICB0aGlzLmRyYXdlciA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgbmF0aXZlRWxlbWVudCgpOiBEcmF3ZXIge1xuICAgICAgICByZXR1cm4gdGhpcy5kcmF3ZXI7XG4gICAgfVxuXG4gICAgc2V0IGdlc3R1cmVFbmFibGVkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgICAgIHRoaXMuX2dlc3R1cmVFbmFibGVkID0gdmFsdWU7XG4gICAgICAgIHRoaXMudXBkYXRlR2VzdHVyZUVuYWJsZWQoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHVwZGF0ZUdlc3R1cmVFbmFibGVkKCkge1xuICAgICAgICB0aGlzLmRyYXdlci5nZXN0dXJlRW5hYmxlZCA9IHRoaXMuX2dlc3R1cmVFbmFibGVkO1xuICAgIH1cbn1cblxuLyoqXG4gKiBEaXJlY3RpdmUgaWRlbnRpZnlpbmcgdGhlIGxlZnQgZHJhd2VyXG4gKi9cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW2xlZnREcmF3ZXJdJyxcbn0pXG5leHBvcnQgY2xhc3MgTGVmdERyYXdlckRpcmVjdGl2ZSB7XG4gICAgY29uc3RydWN0b3IoQEluamVjdChFbGVtZW50UmVmKSBwcml2YXRlIF9lbGVtZW50UmVmOiBFbGVtZW50UmVmKSB7XG4gICAgICAgIHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5pZCA9IExFRlREUkFXRVI7XG4gICAgfVxufVxuLyoqXG4gKiBEaXJlY3RpdmUgaWRlbnRpZnlpbmcgdGhlIHJpZ2h0IGRyYXdlclxuICovXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1tyaWdodERyYXdlcl0nLFxufSlcbmV4cG9ydCBjbGFzcyBSaWdodERyYXdlckRpcmVjdGl2ZSB7XG4gICAgY29uc3RydWN0b3IoQEluamVjdChFbGVtZW50UmVmKSBwcml2YXRlIF9lbGVtZW50UmVmOiBFbGVtZW50UmVmKSB7XG4gICAgICAgIHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5pZCA9IFJJR0hURFJBV0VSO1xuICAgIH1cbn1cblxuLyoqXG4gKiBEaXJlY3RpdmUgaWRlbnRpZnlpbmcgdGhlIHJpZ2h0IGRyYXdlclxuICovXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1t0b3BEcmF3ZXJdJyxcbn0pXG5leHBvcnQgY2xhc3MgVG9wRHJhd2VyRGlyZWN0aXZlIHtcbiAgICBjb25zdHJ1Y3RvcihASW5qZWN0KEVsZW1lbnRSZWYpIHByaXZhdGUgX2VsZW1lbnRSZWY6IEVsZW1lbnRSZWYpIHtcbiAgICAgICAgdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmlkID0gVE9QRFJBV0VSO1xuICAgIH1cbn1cblxuLyoqXG4gKiBEaXJlY3RpdmUgaWRlbnRpZnlpbmcgdGhlIHJpZ2h0IGRyYXdlclxuICovXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1tib3R0b21EcmF3ZXJdJyxcbn0pXG5leHBvcnQgY2xhc3MgQm90dG9tRHJhd2VyRGlyZWN0aXZlIHtcbiAgICBjb25zdHJ1Y3RvcihASW5qZWN0KEVsZW1lbnRSZWYpIHByaXZhdGUgX2VsZW1lbnRSZWY6IEVsZW1lbnRSZWYpIHtcbiAgICAgICAgdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmlkID0gQk9UVE9NRFJBV0VSO1xuICAgIH1cbn1cblxuLyoqXG4gKiBEaXJlY3RpdmUgaWRlbnRpZnlpbmcgdGhlIG1haW4gY29udGVudC5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbbWFpbkNvbnRlbnRdJyxcbn0pXG5leHBvcnQgY2xhc3MgTWFpbkNvbnRlbnREaXJlY3RpdmUge1xuICAgIGNvbnN0cnVjdG9yKEBJbmplY3QoRWxlbWVudFJlZikgcHJpdmF0ZSBfZWxlbWVudFJlZjogRWxlbWVudFJlZikge1xuICAgICAgICB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuaWQgPSBNQUlOQ09OVEVOVDtcbiAgICB9XG59XG5cbmNvbnN0IHNpZGVEcmF3ZXJNZXRhOiBWaWV3Q2xhc3NNZXRhID0ge1xuICAgIGluc2VydENoaWxkOiAocGFyZW50OiBOZ1ZpZXcsIGNoaWxkOiBOZ1ZpZXcpID0+IHtcbiAgICAgICAgY29uc3QgZHJhd2VyID0gKHBhcmVudCBhcyBhbnkpIGFzIERyYXdlcjtcbiAgICAgICAgY29uc3QgY2hpbGRWaWV3ID0gY2hpbGQ7XG5cbiAgICAgICAgaWYgKGNoaWxkVmlldy5pZCA9PT0gTUFJTkNPTlRFTlQpIHtcbiAgICAgICAgICAgIGRyYXdlci5tYWluQ29udGVudCA9IGNoaWxkVmlldztcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChjaGlsZFZpZXcuaWQgPT09IExFRlREUkFXRVIpIHtcbiAgICAgICAgICAgIGRyYXdlci5sZWZ0RHJhd2VyID0gY2hpbGRWaWV3O1xuICAgICAgICB9XG4gICAgICAgIGlmIChjaGlsZFZpZXcuaWQgPT09IFJJR0hURFJBV0VSKSB7XG4gICAgICAgICAgICBkcmF3ZXIucmlnaHREcmF3ZXIgPSBjaGlsZFZpZXc7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGNoaWxkVmlldy5pZCA9PT0gVE9QRFJBV0VSKSB7XG4gICAgICAgICAgICBkcmF3ZXIudG9wRHJhd2VyID0gY2hpbGRWaWV3O1xuICAgICAgICB9XG4gICAgICAgIGlmIChjaGlsZFZpZXcuaWQgPT09IEJPVFRPTURSQVdFUikge1xuICAgICAgICAgICAgZHJhd2VyLmJvdHRvbURyYXdlciA9IGNoaWxkVmlldztcbiAgICAgICAgfVxuICAgIH0sXG4gICAgcmVtb3ZlQ2hpbGQ6IChwYXJlbnQ6IE5nVmlldywgY2hpbGQ6IE5nVmlldykgPT4ge1xuICAgICAgICBjb25zdCBkcmF3ZXIgPSAocGFyZW50IGFzIGFueSkgYXMgRHJhd2VyO1xuICAgICAgICBjb25zdCBjaGlsZFZpZXcgPSBjaGlsZDtcblxuICAgICAgICBpZiAoY2hpbGRWaWV3LmlkID09PSBNQUlOQ09OVEVOVCkge1xuICAgICAgICAgICAgZHJhd2VyLm1haW5Db250ZW50ID0gbnVsbDtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChjaGlsZFZpZXcuaWQgPT09IExFRlREUkFXRVIpIHtcbiAgICAgICAgICAgIGRyYXdlci5sZWZ0RHJhd2VyID0gbnVsbDtcbiAgICAgICAgfVxuICAgICAgICBpZiAoY2hpbGRWaWV3LmlkID09PSBSSUdIVERSQVdFUikge1xuICAgICAgICAgICAgZHJhd2VyLnJpZ2h0RHJhd2VyID0gbnVsbDtcbiAgICAgICAgfVxuICAgICAgICBpZiAoY2hpbGRWaWV3LmlkID09PSBUT1BEUkFXRVIpIHtcbiAgICAgICAgICAgIGRyYXdlci50b3BEcmF3ZXIgPSBudWxsO1xuICAgICAgICB9XG4gICAgICAgIGlmIChjaGlsZFZpZXcuaWQgPT09IEJPVFRPTURSQVdFUikge1xuICAgICAgICAgICAgZHJhd2VyLmJvdHRvbURyYXdlciA9IG51bGw7XG4gICAgICAgIH1cbiAgICB9LFxufTtcblxuLyoqXG4gKiBEaXJlY3RpdmVzIGlkZW50aWZ5aW5nIHRoZSBEcmF3ZXIuXG4gKi9cbmV4cG9ydCBjb25zdCBTSURFRFJBV0VSX0RJUkVDVElWRVMgPSBbTGVmdERyYXdlckRpcmVjdGl2ZSwgUmlnaHREcmF3ZXJEaXJlY3RpdmUsIFRvcERyYXdlckRpcmVjdGl2ZSwgQm90dG9tRHJhd2VyRGlyZWN0aXZlLCBNYWluQ29udGVudERpcmVjdGl2ZV07XG5cbnJlZ2lzdGVyRWxlbWVudCgnRHJhd2VyJywgKCkgPT4gRHJhd2VyLCBzaWRlRHJhd2VyTWV0YSk7XG5cbi8qKlxuICogTmdNb2R1bGUgY29udGFpbmluZyBhbGwgb2YgdGhlIFJhZFNpZGVEcmF3ZXIgZGlyZWN0aXZlcy5cbiAqL1xuQE5nTW9kdWxlKHtcbiAgICBkZWNsYXJhdGlvbnM6IFtEcmF3ZXJDb21wb25lbnQsIFNJREVEUkFXRVJfRElSRUNUSVZFU10sXG4gICAgZXhwb3J0czogW0RyYXdlckNvbXBvbmVudCwgU0lERURSQVdFUl9ESVJFQ1RJVkVTXSxcbn0pXG5leHBvcnQgY2xhc3MgRHJhd2VyTW9kdWxlIHt9XG4iXX0=
|
186
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3VpLWRyYXdlci9hbmd1bGFyL21vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsZUFBZSxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2hLLE9BQU8sRUFBeUIsZUFBZSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDL0UsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLG1DQUFtQyxDQUFDOzs7QUFFM0QsTUFBTSxVQUFVLEdBQVcsWUFBWSxDQUFDO0FBQ3hDLE1BQU0sV0FBVyxHQUFXLGFBQWEsQ0FBQztBQUMxQyxNQUFNLFNBQVMsR0FBVyxXQUFXLENBQUM7QUFDdEMsTUFBTSxZQUFZLEdBQVcsY0FBYyxDQUFDO0FBQzVDLE1BQU0sV0FBVyxHQUFXLGFBQWEsQ0FBQztBQWlCMUMsTUFBTSxPQUFPLGVBQWU7SUFPeEIsWUFBdUMsVUFBc0IsRUFBb0MsYUFBK0I7UUFBekYsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUFvQyxrQkFBYSxHQUFiLGFBQWEsQ0FBa0I7UUFDNUgsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQztJQUNoRCxDQUFDO0lBRUQsSUFBVyxhQUFhO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUN2QixDQUFDO0lBRUQsSUFBSSxjQUFjLENBQUMsS0FBYztRQUM3QixJQUFJLENBQUMsZUFBZSxHQUFHLEtBQUssQ0FBQztRQUM3QixJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztJQUNoQyxDQUFDO0lBRU8sb0JBQW9CO1FBQ3hCLElBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxHQUFHLElB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QUVsSixlQUFlLENBQUMsUUFBUSxFQUFFLEdBQUcsRUFBRSxDQUFDLE1BQU0sRUFBRSxjQUFjLENBQUMsQ0FBQztBQVN4RCxNQUFNLE9BQU8sWUFBWTs7d0VBQVosWUFBWTtnREFBWixZQUFZOzt1RkFBWixZQUFZO2NBSnhCLFFBQVE7ZUFBQztnQkFDTixZQUFZLEVBQUUsQ0FBQyxlQUFlLEVBQUUscUJBQXFCLENBQUM7Z0JBQ3RELE9BQU8sRUFBRSxDQUFDLGVBQWUsRUFBRSxxQkFBcUIsQ0FBQzthQUNwRDs7d0ZBQ1ksWUFBWSxtQkEvSVosZUFBZSxFQStCZixtQkFBbUIsRUFXbkIsb0JBQW9CLEVBWXBCLGtCQUFrQixFQVlsQixxQkFBcUIsRUFZckIsb0JBQW9CLGFBOUVwQixlQUFlLEVBK0JmLG1CQUFtQixFQVduQixvQkFBb0IsRUFZcEIsa0JBQWtCLEVBWWxCLHFCQUFxQixFQVlyQixvQkFBb0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgRW1iZWRkZWRWaWV3UmVmLCBFdmVudEVtaXR0ZXIsIEluamVjdCwgSW5wdXQsIE5nTW9kdWxlLCBPdXRwdXQsIFRlbXBsYXRlUmVmLCBWaWV3Q29udGFpbmVyUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOZ1ZpZXcsIFZpZXdDbGFzc01ldGEsIHJlZ2lzdGVyRWxlbWVudCB9IGZyb20gJ0BuYXRpdmVzY3JpcHQvYW5ndWxhcic7XG5pbXBvcnQgeyBEcmF3ZXIgfSBmcm9tICdAbmF0aXZlc2NyaXB0LWNvbW11bml0eS91aS1kcmF3ZXInO1xuXG5jb25zdCBMRUZURFJBV0VSOiBzdHJpbmcgPSAnTGVmdERyYXdlcic7XG5jb25zdCBSSUdIVERSQVdFUjogc3RyaW5nID0gJ1JpZ2h0RHJhd2VyJztcbmNvbnN0IFRPUERSQVdFUjogc3RyaW5nID0gJ1RvcERyYXdlcic7XG5jb25zdCBCT1RUT01EUkFXRVI6IHN0cmluZyA9ICdCb3R0b21EcmF3ZXInO1xuY29uc3QgTUFJTkNPTlRFTlQ6IHN0cmluZyA9ICdNYWluQ29udGVudCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSXRlbUV2ZW50QXJncyB7XG4gICAgb2JqZWN0OiBhbnk7XG4gICAgdmlldzogRW1iZWRkZWRWaWV3UmVmPGFueT47XG4gICAgcmV0dXJuVmFsdWU/OiBib29sZWFuO1xufVxuXG4vKipcbiAqIFRoaXMgaXMgdGhlIFNpZGVEcmF3ZXIgY29tcG9uZW50LiBJdCBzZXBhcmF0ZXMgeW91ciBtb2JpbGUgYXBwJ3Mgc2NyZWVuXG4gKiBpbnRvIGEgbWFpbiBwYXJ0IGFuZCBhIG1lbnUgcGFydCB3aGVyZWJ5IHRoZSBtZW51IHBhcnQgaXMgc2hvd24gdXBvbiBhIHN3aXBlXG4gKiBnZXN0dXJlIHVzaW5nIGEgdHJhbnNpdGlvbiBlZmZlY3QuXG4gKi9cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnRHJhd2VyJyxcbiAgICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nXG59KVxuZXhwb3J0IGNsYXNzIERyYXdlckNvbXBvbmVudCB7XG4gICAgcHVibGljIGRyYXdlcjogRHJhd2VyO1xuICAgIHB1YmxpYyBtYWluVGVtcGxhdGU6IFRlbXBsYXRlUmVmPEVsZW1lbnRSZWY+O1xuICAgIHB1YmxpYyBkcmF3ZXJUZW1wbGF0ZTogVGVtcGxhdGVSZWY8RWxlbWVudFJlZj47XG5cbiAgICBwcml2YXRlIF9nZXN0dXJlRW5hYmxlZDogYm9vbGVhbjtcblxuICAgIGNvbnN0cnVjdG9yKEBJbmplY3QoRWxlbWVudFJlZikgcHVibGljIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsIEBJbmplY3QoVmlld0NvbnRhaW5lclJlZikgcHJpdmF0ZSB2aWV3Q29udGFpbmVyOiBWaWV3Q29udGFpbmVyUmVmKSB7XG4gICAgICAgIHRoaXMuZHJhd2VyID0gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBuYXRpdmVFbGVtZW50KCk6IERyYXdlciB7XG4gICAgICAgIHJldHVybiB0aGlzLmRyYXdlcjtcbiAgICB9XG5cbiAgICBzZXQgZ2VzdHVyZUVuYWJsZWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5fZ2VzdHVyZUVuYWJsZWQgPSB2YWx1ZTtcbiAgICAgICAgdGhpcy51cGRhdGVHZXN0dXJlRW5hYmxlZCgpO1xuICAgIH1cblxuICAgIHByaXZhdGUgdXBkYXRlR2VzdHVyZUVuYWJsZWQoKSB7XG4gICAgICAgIHRoaXMuZHJhd2VyLmdlc3R1cmVFbmFibGVkID0gdGhpcy5fZ2VzdHVyZUVuYWJsZWQ7XG4gICAgfVxufVxuXG4vKipcbiAqIERpcmVjdGl2ZSBpZGVudGlmeWluZyB0aGUgbGVmdCBkcmF3ZXJcbiAqL1xuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbbGVmdERyYXdlcl0nXG59KVxuZXhwb3J0IGNsYXNzIExlZnREcmF3ZXJEaXJlY3RpdmUge1xuICAgIGNvbnN0cnVjdG9yKEBJbmplY3QoRWxlbWVudFJlZikgcHJpdmF0ZSBfZWxlbWVudFJlZjogRWxlbWVudFJlZikge1xuICAgICAgICB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuaWQgPSBMRUZURFJBV0VSO1xuICAgIH1cbn1cbi8qKlxuICogRGlyZWN0aXZlIGlkZW50aWZ5aW5nIHRoZSByaWdodCBkcmF3ZXJcbiAqL1xuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbcmlnaHREcmF3ZXJdJ1xufSlcbmV4cG9ydCBjbGFzcyBSaWdodERyYXdlckRpcmVjdGl2ZSB7XG4gICAgY29uc3RydWN0b3IoQEluamVjdChFbGVtZW50UmVmKSBwcml2YXRlIF9lbGVtZW50UmVmOiBFbGVtZW50UmVmKSB7XG4gICAgICAgIHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5pZCA9IFJJR0hURFJBV0VSO1xuICAgIH1cbn1cblxuLyoqXG4gKiBEaXJlY3RpdmUgaWRlbnRpZnlpbmcgdGhlIHJpZ2h0IGRyYXdlclxuICovXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1t0b3BEcmF3ZXJdJ1xufSlcbmV4cG9ydCBjbGFzcyBUb3BEcmF3ZXJEaXJlY3RpdmUge1xuICAgIGNvbnN0cnVjdG9yKEBJbmplY3QoRWxlbWVudFJlZikgcHJpdmF0ZSBfZWxlbWVudFJlZjogRWxlbWVudFJlZikge1xuICAgICAgICB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuaWQgPSBUT1BEUkFXRVI7XG4gICAgfVxufVxuXG4vKipcbiAqIERpcmVjdGl2ZSBpZGVudGlmeWluZyB0aGUgcmlnaHQgZHJhd2VyXG4gKi9cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW2JvdHRvbURyYXdlcl0nXG59KVxuZXhwb3J0IGNsYXNzIEJvdHRvbURyYXdlckRpcmVjdGl2ZSB7XG4gICAgY29uc3RydWN0b3IoQEluamVjdChFbGVtZW50UmVmKSBwcml2YXRlIF9lbGVtZW50UmVmOiBFbGVtZW50UmVmKSB7XG4gICAgICAgIHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5pZCA9IEJPVFRPTURSQVdFUjtcbiAgICB9XG59XG5cbi8qKlxuICogRGlyZWN0aXZlIGlkZW50aWZ5aW5nIHRoZSBtYWluIGNvbnRlbnQuXG4gKi9cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW21haW5Db250ZW50XSdcbn0pXG5leHBvcnQgY2xhc3MgTWFpbkNvbnRlbnREaXJlY3RpdmUge1xuICAgIGNvbnN0cnVjdG9yKEBJbmplY3QoRWxlbWVudFJlZikgcHJpdmF0ZSBfZWxlbWVudFJlZjogRWxlbWVudFJlZikge1xuICAgICAgICB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuaWQgPSBNQUlOQ09OVEVOVDtcbiAgICB9XG59XG5cbmNvbnN0IHNpZGVEcmF3ZXJNZXRhOiBWaWV3Q2xhc3NNZXRhID0ge1xuICAgIGluc2VydENoaWxkOiAocGFyZW50OiBOZ1ZpZXcsIGNoaWxkOiBOZ1ZpZXcpID0+IHtcbiAgICAgICAgY29uc3QgZHJhd2VyID0gcGFyZW50IGFzIGFueSBhcyBEcmF3ZXI7XG4gICAgICAgIGNvbnN0IGNoaWxkVmlldyA9IGNoaWxkO1xuXG4gICAgICAgIGlmIChjaGlsZFZpZXcuaWQgPT09IE1BSU5DT05URU5UKSB7XG4gICAgICAgICAgICBkcmF3ZXIubWFpbkNvbnRlbnQgPSBjaGlsZFZpZXc7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoY2hpbGRWaWV3LmlkID09PSBMRUZURFJBV0VSKSB7XG4gICAgICAgICAgICBkcmF3ZXIubGVmdERyYXdlciA9IGNoaWxkVmlldztcbiAgICAgICAgfVxuICAgICAgICBpZiAoY2hpbGRWaWV3LmlkID09PSBSSUdIVERSQVdFUikge1xuICAgICAgICAgICAgZHJhd2VyLnJpZ2h0RHJhd2VyID0gY2hpbGRWaWV3O1xuICAgICAgICB9XG4gICAgICAgIGlmIChjaGlsZFZpZXcuaWQgPT09IFRPUERSQVdFUikge1xuICAgICAgICAgICAgZHJhd2VyLnRvcERyYXdlciA9IGNoaWxkVmlldztcbiAgICAgICAgfVxuICAgICAgICBpZiAoY2hpbGRWaWV3LmlkID09PSBCT1RUT01EUkFXRVIpIHtcbiAgICAgICAgICAgIGRyYXdlci5ib3R0b21EcmF3ZXIgPSBjaGlsZFZpZXc7XG4gICAgICAgIH1cbiAgICB9LFxuICAgIHJlbW92ZUNoaWxkOiAocGFyZW50OiBOZ1ZpZXcsIGNoaWxkOiBOZ1ZpZXcpID0+IHtcbiAgICAgICAgY29uc3QgZHJhd2VyID0gcGFyZW50IGFzIGFueSBhcyBEcmF3ZXI7XG4gICAgICAgIGNvbnN0IGNoaWxkVmlldyA9IGNoaWxkO1xuXG4gICAgICAgIGlmIChjaGlsZFZpZXcuaWQgPT09IE1BSU5DT05URU5UKSB7XG4gICAgICAgICAgICBkcmF3ZXIubWFpbkNvbnRlbnQgPSBudWxsO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGNoaWxkVmlldy5pZCA9PT0gTEVGVERSQVdFUikge1xuICAgICAgICAgICAgZHJhd2VyLmxlZnREcmF3ZXIgPSBudWxsO1xuICAgICAgICB9XG4gICAgICAgIGlmIChjaGlsZFZpZXcuaWQgPT09IFJJR0hURFJBV0VSKSB7XG4gICAgICAgICAgICBkcmF3ZXIucmlnaHREcmF3ZXIgPSBudWxsO1xuICAgICAgICB9XG4gICAgICAgIGlmIChjaGlsZFZpZXcuaWQgPT09IFRPUERSQVdFUikge1xuICAgICAgICAgICAgZHJhd2VyLnRvcERyYXdlciA9IG51bGw7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGNoaWxkVmlldy5pZCA9PT0gQk9UVE9NRFJBV0VSKSB7XG4gICAgICAgICAgICBkcmF3ZXIuYm90dG9tRHJhd2VyID0gbnVsbDtcbiAgICAgICAgfVxuICAgIH1cbn07XG5cbi8qKlxuICogRGlyZWN0aXZlcyBpZGVudGlmeWluZyB0aGUgRHJhd2VyLlxuICovXG5leHBvcnQgY29uc3QgU0lERURSQVdFUl9ESVJFQ1RJVkVTID0gW0xlZnREcmF3ZXJEaXJlY3RpdmUsIFJpZ2h0RHJhd2VyRGlyZWN0aXZlLCBUb3BEcmF3ZXJEaXJlY3RpdmUsIEJvdHRvbURyYXdlckRpcmVjdGl2ZSwgTWFpbkNvbnRlbnREaXJlY3RpdmVdO1xuXG5yZWdpc3RlckVsZW1lbnQoJ0RyYXdlcicsICgpID0+IERyYXdlciwgc2lkZURyYXdlck1ldGEpO1xuXG4vKipcbiAqIE5nTW9kdWxlIGNvbnRhaW5pbmcgYWxsIG9mIHRoZSBSYWRTaWRlRHJhd2VyIGRpcmVjdGl2ZXMuXG4gKi9cbkBOZ01vZHVsZSh7XG4gICAgZGVjbGFyYXRpb25zOiBbRHJhd2VyQ29tcG9uZW50LCBTSURFRFJBV0VSX0RJUkVDVElWRVNdLFxuICAgIGV4cG9ydHM6IFtEcmF3ZXJDb21wb25lbnQsIFNJREVEUkFXRVJfRElSRUNUSVZFU11cbn0pXG5leHBvcnQgY2xhc3MgRHJhd2VyTW9kdWxlIHt9XG4iXX0=
|
File without changes
|
@@ -0,0 +1,217 @@
|
|
1
|
+
import * as i0 from '@angular/core';
|
2
|
+
import { ElementRef, ViewContainerRef, Component, Inject, Directive, NgModule } from '@angular/core';
|
3
|
+
import { registerElement } from '@nativescript/angular';
|
4
|
+
import { Drawer } from '@nativescript-community/ui-drawer';
|
5
|
+
|
6
|
+
const _c0 = ["*"];
|
7
|
+
const LEFTDRAWER = 'LeftDrawer';
|
8
|
+
const RIGHTDRAWER = 'RightDrawer';
|
9
|
+
const TOPDRAWER = 'TopDrawer';
|
10
|
+
const BOTTOMDRAWER = 'BottomDrawer';
|
11
|
+
const MAINCONTENT = 'MainContent';
|
12
|
+
class DrawerComponent {
|
13
|
+
constructor(elementRef, viewContainer) {
|
14
|
+
this.elementRef = elementRef;
|
15
|
+
this.viewContainer = viewContainer;
|
16
|
+
this.drawer = this.elementRef.nativeElement;
|
17
|
+
}
|
18
|
+
get nativeElement() {
|
19
|
+
return this.drawer;
|
20
|
+
}
|
21
|
+
set gestureEnabled(value) {
|
22
|
+
this._gestureEnabled = value;
|
23
|
+
this.updateGestureEnabled();
|
24
|
+
}
|
25
|
+
updateGestureEnabled() {
|
26
|
+
this.drawer.gestureEnabled = this._gestureEnabled;
|
27
|
+
}
|
28
|
+
}
|
29
|
+
DrawerComponent.ɵfac = function DrawerComponent_Factory(t) { return new (t || DrawerComponent)(i0.ɵɵdirectiveInject(ElementRef), i0.ɵɵdirectiveInject(ViewContainerRef)); };
|
30
|
+
DrawerComponent.ɵcmp = i0.ɵɵdefineComponent({ type: DrawerComponent, selectors: [["Drawer"]], ngContentSelectors: _c0, decls: 1, vars: 0, template: function DrawerComponent_Template(rf, ctx) {
|
31
|
+
if (rf & 1) {
|
32
|
+
i0.ɵɵprojectionDef();
|
33
|
+
i0.ɵɵprojection(0);
|
34
|
+
}
|
35
|
+
}, encapsulation: 2 });
|
36
|
+
(function () {
|
37
|
+
(typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(DrawerComponent, [{
|
38
|
+
type: Component,
|
39
|
+
args: [{
|
40
|
+
selector: 'Drawer',
|
41
|
+
template: '<ng-content></ng-content>'
|
42
|
+
}]
|
43
|
+
}], function () {
|
44
|
+
return [{ type: i0.ElementRef, decorators: [{
|
45
|
+
type: Inject,
|
46
|
+
args: [ElementRef]
|
47
|
+
}] }, { type: i0.ViewContainerRef, decorators: [{
|
48
|
+
type: Inject,
|
49
|
+
args: [ViewContainerRef]
|
50
|
+
}] }];
|
51
|
+
}, null);
|
52
|
+
})();
|
53
|
+
class LeftDrawerDirective {
|
54
|
+
constructor(_elementRef) {
|
55
|
+
this._elementRef = _elementRef;
|
56
|
+
this._elementRef.nativeElement.id = LEFTDRAWER;
|
57
|
+
}
|
58
|
+
}
|
59
|
+
LeftDrawerDirective.ɵfac = function LeftDrawerDirective_Factory(t) { return new (t || LeftDrawerDirective)(i0.ɵɵdirectiveInject(ElementRef)); };
|
60
|
+
LeftDrawerDirective.ɵdir = i0.ɵɵdefineDirective({ type: LeftDrawerDirective, selectors: [["", "leftDrawer", ""]] });
|
61
|
+
(function () {
|
62
|
+
(typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(LeftDrawerDirective, [{
|
63
|
+
type: Directive,
|
64
|
+
args: [{
|
65
|
+
selector: '[leftDrawer]'
|
66
|
+
}]
|
67
|
+
}], function () {
|
68
|
+
return [{ type: i0.ElementRef, decorators: [{
|
69
|
+
type: Inject,
|
70
|
+
args: [ElementRef]
|
71
|
+
}] }];
|
72
|
+
}, null);
|
73
|
+
})();
|
74
|
+
class RightDrawerDirective {
|
75
|
+
constructor(_elementRef) {
|
76
|
+
this._elementRef = _elementRef;
|
77
|
+
this._elementRef.nativeElement.id = RIGHTDRAWER;
|
78
|
+
}
|
79
|
+
}
|
80
|
+
RightDrawerDirective.ɵfac = function RightDrawerDirective_Factory(t) { return new (t || RightDrawerDirective)(i0.ɵɵdirectiveInject(ElementRef)); };
|
81
|
+
RightDrawerDirective.ɵdir = i0.ɵɵdefineDirective({ type: RightDrawerDirective, selectors: [["", "rightDrawer", ""]] });
|
82
|
+
(function () {
|
83
|
+
(typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(RightDrawerDirective, [{
|
84
|
+
type: Directive,
|
85
|
+
args: [{
|
86
|
+
selector: '[rightDrawer]'
|
87
|
+
}]
|
88
|
+
}], function () {
|
89
|
+
return [{ type: i0.ElementRef, decorators: [{
|
90
|
+
type: Inject,
|
91
|
+
args: [ElementRef]
|
92
|
+
}] }];
|
93
|
+
}, null);
|
94
|
+
})();
|
95
|
+
class TopDrawerDirective {
|
96
|
+
constructor(_elementRef) {
|
97
|
+
this._elementRef = _elementRef;
|
98
|
+
this._elementRef.nativeElement.id = TOPDRAWER;
|
99
|
+
}
|
100
|
+
}
|
101
|
+
TopDrawerDirective.ɵfac = function TopDrawerDirective_Factory(t) { return new (t || TopDrawerDirective)(i0.ɵɵdirectiveInject(ElementRef)); };
|
102
|
+
TopDrawerDirective.ɵdir = i0.ɵɵdefineDirective({ type: TopDrawerDirective, selectors: [["", "topDrawer", ""]] });
|
103
|
+
(function () {
|
104
|
+
(typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(TopDrawerDirective, [{
|
105
|
+
type: Directive,
|
106
|
+
args: [{
|
107
|
+
selector: '[topDrawer]'
|
108
|
+
}]
|
109
|
+
}], function () {
|
110
|
+
return [{ type: i0.ElementRef, decorators: [{
|
111
|
+
type: Inject,
|
112
|
+
args: [ElementRef]
|
113
|
+
}] }];
|
114
|
+
}, null);
|
115
|
+
})();
|
116
|
+
class BottomDrawerDirective {
|
117
|
+
constructor(_elementRef) {
|
118
|
+
this._elementRef = _elementRef;
|
119
|
+
this._elementRef.nativeElement.id = BOTTOMDRAWER;
|
120
|
+
}
|
121
|
+
}
|
122
|
+
BottomDrawerDirective.ɵfac = function BottomDrawerDirective_Factory(t) { return new (t || BottomDrawerDirective)(i0.ɵɵdirectiveInject(ElementRef)); };
|
123
|
+
BottomDrawerDirective.ɵdir = i0.ɵɵdefineDirective({ type: BottomDrawerDirective, selectors: [["", "bottomDrawer", ""]] });
|
124
|
+
(function () {
|
125
|
+
(typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(BottomDrawerDirective, [{
|
126
|
+
type: Directive,
|
127
|
+
args: [{
|
128
|
+
selector: '[bottomDrawer]'
|
129
|
+
}]
|
130
|
+
}], function () {
|
131
|
+
return [{ type: i0.ElementRef, decorators: [{
|
132
|
+
type: Inject,
|
133
|
+
args: [ElementRef]
|
134
|
+
}] }];
|
135
|
+
}, null);
|
136
|
+
})();
|
137
|
+
class MainContentDirective {
|
138
|
+
constructor(_elementRef) {
|
139
|
+
this._elementRef = _elementRef;
|
140
|
+
this._elementRef.nativeElement.id = MAINCONTENT;
|
141
|
+
}
|
142
|
+
}
|
143
|
+
MainContentDirective.ɵfac = function MainContentDirective_Factory(t) { return new (t || MainContentDirective)(i0.ɵɵdirectiveInject(ElementRef)); };
|
144
|
+
MainContentDirective.ɵdir = i0.ɵɵdefineDirective({ type: MainContentDirective, selectors: [["", "mainContent", ""]] });
|
145
|
+
(function () {
|
146
|
+
(typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MainContentDirective, [{
|
147
|
+
type: Directive,
|
148
|
+
args: [{
|
149
|
+
selector: '[mainContent]'
|
150
|
+
}]
|
151
|
+
}], function () {
|
152
|
+
return [{ type: i0.ElementRef, decorators: [{
|
153
|
+
type: Inject,
|
154
|
+
args: [ElementRef]
|
155
|
+
}] }];
|
156
|
+
}, null);
|
157
|
+
})();
|
158
|
+
const sideDrawerMeta = {
|
159
|
+
insertChild: (parent, child) => {
|
160
|
+
const drawer = parent;
|
161
|
+
const childView = child;
|
162
|
+
if (childView.id === MAINCONTENT) {
|
163
|
+
drawer.mainContent = childView;
|
164
|
+
}
|
165
|
+
if (childView.id === LEFTDRAWER) {
|
166
|
+
drawer.leftDrawer = childView;
|
167
|
+
}
|
168
|
+
if (childView.id === RIGHTDRAWER) {
|
169
|
+
drawer.rightDrawer = childView;
|
170
|
+
}
|
171
|
+
if (childView.id === TOPDRAWER) {
|
172
|
+
drawer.topDrawer = childView;
|
173
|
+
}
|
174
|
+
if (childView.id === BOTTOMDRAWER) {
|
175
|
+
drawer.bottomDrawer = childView;
|
176
|
+
}
|
177
|
+
},
|
178
|
+
removeChild: (parent, child) => {
|
179
|
+
const drawer = parent;
|
180
|
+
const childView = child;
|
181
|
+
if (childView.id === MAINCONTENT) {
|
182
|
+
drawer.mainContent = null;
|
183
|
+
}
|
184
|
+
if (childView.id === LEFTDRAWER) {
|
185
|
+
drawer.leftDrawer = null;
|
186
|
+
}
|
187
|
+
if (childView.id === RIGHTDRAWER) {
|
188
|
+
drawer.rightDrawer = null;
|
189
|
+
}
|
190
|
+
if (childView.id === TOPDRAWER) {
|
191
|
+
drawer.topDrawer = null;
|
192
|
+
}
|
193
|
+
if (childView.id === BOTTOMDRAWER) {
|
194
|
+
drawer.bottomDrawer = null;
|
195
|
+
}
|
196
|
+
}
|
197
|
+
};
|
198
|
+
const SIDEDRAWER_DIRECTIVES = [LeftDrawerDirective, RightDrawerDirective, TopDrawerDirective, BottomDrawerDirective, MainContentDirective];
|
199
|
+
registerElement('Drawer', () => Drawer, sideDrawerMeta);
|
200
|
+
class DrawerModule {
|
201
|
+
}
|
202
|
+
DrawerModule.ɵfac = function DrawerModule_Factory(t) { return new (t || DrawerModule)(); };
|
203
|
+
DrawerModule.ɵmod = i0.ɵɵdefineNgModule({ type: DrawerModule });
|
204
|
+
DrawerModule.ɵinj = i0.ɵɵdefineInjector({});
|
205
|
+
(function () {
|
206
|
+
(typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(DrawerModule, [{
|
207
|
+
type: NgModule,
|
208
|
+
args: [{
|
209
|
+
declarations: [DrawerComponent, SIDEDRAWER_DIRECTIVES],
|
210
|
+
exports: [DrawerComponent, SIDEDRAWER_DIRECTIVES]
|
211
|
+
}]
|
212
|
+
}], null, null);
|
213
|
+
})();
|
214
|
+
(function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(DrawerModule, { declarations: [DrawerComponent, LeftDrawerDirective, RightDrawerDirective, TopDrawerDirective, BottomDrawerDirective, MainContentDirective], exports: [DrawerComponent, LeftDrawerDirective, RightDrawerDirective, TopDrawerDirective, BottomDrawerDirective, MainContentDirective] }); })();
|
215
|
+
|
216
|
+
export { BottomDrawerDirective, DrawerComponent, DrawerModule, LeftDrawerDirective, MainContentDirective, RightDrawerDirective, SIDEDRAWER_DIRECTIVES, TopDrawerDirective };
|
217
|
+
//# sourceMappingURL=nativescript-community-ui-drawer-angular.mjs.map
|
@@ -35,7 +35,7 @@ DrawerComponent.ɵcmp = i0.ɵɵdefineComponent({ type: DrawerComponent, selector
|
|
35
35
|
type: Component,
|
36
36
|
args: [{
|
37
37
|
selector: 'Drawer',
|
38
|
-
template: '<ng-content></ng-content>'
|
38
|
+
template: '<ng-content></ng-content>'
|
39
39
|
}]
|
40
40
|
}], function () { return [{ type: i0.ElementRef, decorators: [{
|
41
41
|
type: Inject,
|
@@ -55,7 +55,7 @@ LeftDrawerDirective.ɵdir = i0.ɵɵdefineDirective({ type: LeftDrawerDirective,
|
|
55
55
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(LeftDrawerDirective, [{
|
56
56
|
type: Directive,
|
57
57
|
args: [{
|
58
|
-
selector: '[leftDrawer]'
|
58
|
+
selector: '[leftDrawer]'
|
59
59
|
}]
|
60
60
|
}], function () { return [{ type: i0.ElementRef, decorators: [{
|
61
61
|
type: Inject,
|
@@ -72,7 +72,7 @@ RightDrawerDirective.ɵdir = i0.ɵɵdefineDirective({ type: RightDrawerDirective
|
|
72
72
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(RightDrawerDirective, [{
|
73
73
|
type: Directive,
|
74
74
|
args: [{
|
75
|
-
selector: '[rightDrawer]'
|
75
|
+
selector: '[rightDrawer]'
|
76
76
|
}]
|
77
77
|
}], function () { return [{ type: i0.ElementRef, decorators: [{
|
78
78
|
type: Inject,
|
@@ -89,7 +89,7 @@ TopDrawerDirective.ɵdir = i0.ɵɵdefineDirective({ type: TopDrawerDirective, se
|
|
89
89
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(TopDrawerDirective, [{
|
90
90
|
type: Directive,
|
91
91
|
args: [{
|
92
|
-
selector: '[topDrawer]'
|
92
|
+
selector: '[topDrawer]'
|
93
93
|
}]
|
94
94
|
}], function () { return [{ type: i0.ElementRef, decorators: [{
|
95
95
|
type: Inject,
|
@@ -106,7 +106,7 @@ BottomDrawerDirective.ɵdir = i0.ɵɵdefineDirective({ type: BottomDrawerDirecti
|
|
106
106
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(BottomDrawerDirective, [{
|
107
107
|
type: Directive,
|
108
108
|
args: [{
|
109
|
-
selector: '[bottomDrawer]'
|
109
|
+
selector: '[bottomDrawer]'
|
110
110
|
}]
|
111
111
|
}], function () { return [{ type: i0.ElementRef, decorators: [{
|
112
112
|
type: Inject,
|
@@ -123,7 +123,7 @@ MainContentDirective.ɵdir = i0.ɵɵdefineDirective({ type: MainContentDirective
|
|
123
123
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MainContentDirective, [{
|
124
124
|
type: Directive,
|
125
125
|
args: [{
|
126
|
-
selector: '[mainContent]'
|
126
|
+
selector: '[mainContent]'
|
127
127
|
}]
|
128
128
|
}], function () { return [{ type: i0.ElementRef, decorators: [{
|
129
129
|
type: Inject,
|
@@ -167,7 +167,7 @@ const sideDrawerMeta = {
|
|
167
167
|
if (childView.id === BOTTOMDRAWER) {
|
168
168
|
drawer.bottomDrawer = null;
|
169
169
|
}
|
170
|
-
}
|
170
|
+
}
|
171
171
|
};
|
172
172
|
const SIDEDRAWER_DIRECTIVES = [LeftDrawerDirective, RightDrawerDirective, TopDrawerDirective, BottomDrawerDirective, MainContentDirective];
|
173
173
|
registerElement('Drawer', () => Drawer, sideDrawerMeta);
|
@@ -180,10 +180,10 @@ DrawerModule.ɵinj = i0.ɵɵdefineInjector({});
|
|
180
180
|
type: NgModule,
|
181
181
|
args: [{
|
182
182
|
declarations: [DrawerComponent, SIDEDRAWER_DIRECTIVES],
|
183
|
-
exports: [DrawerComponent, SIDEDRAWER_DIRECTIVES]
|
183
|
+
exports: [DrawerComponent, SIDEDRAWER_DIRECTIVES]
|
184
184
|
}]
|
185
185
|
}], null, null); })();
|
186
186
|
(function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(DrawerModule, { declarations: [DrawerComponent, LeftDrawerDirective, RightDrawerDirective, TopDrawerDirective, BottomDrawerDirective, MainContentDirective], exports: [DrawerComponent, LeftDrawerDirective, RightDrawerDirective, TopDrawerDirective, BottomDrawerDirective, MainContentDirective] }); })();
|
187
187
|
|
188
188
|
export { BottomDrawerDirective, DrawerComponent, DrawerModule, LeftDrawerDirective, MainContentDirective, RightDrawerDirective, SIDEDRAWER_DIRECTIVES, TopDrawerDirective };
|
189
|
-
//# sourceMappingURL=nativescript-community-ui-drawer-angular.
|
189
|
+
//# sourceMappingURL=nativescript-community-ui-drawer-angular.mjs.map
|
package/angular/package.json
CHANGED
@@ -1,14 +1,28 @@
|
|
1
1
|
{
|
2
2
|
"name": "@nativescript-community/ui-drawer-angular",
|
3
|
-
"main": "
|
4
|
-
"module": "fesm2015/nativescript-community-ui-drawer-angular.
|
5
|
-
"
|
6
|
-
"
|
7
|
-
"
|
3
|
+
"main": "index.js",
|
4
|
+
"module": "fesm2015/nativescript-community-ui-drawer-angular.mjs",
|
5
|
+
"es2020": "fesm2020/nativescript-community-ui-drawer-angular.mjs",
|
6
|
+
"esm2020": "esm2020/nativescript-community-ui-drawer-angular.mjs",
|
7
|
+
"fesm2020": "fesm2020/nativescript-community-ui-drawer-angular.mjs",
|
8
|
+
"fesm2015": "fesm2015/nativescript-community-ui-drawer-angular.mjs",
|
8
9
|
"typings": "nativescript-community-ui-drawer-angular.d.ts",
|
10
|
+
"exports": {
|
11
|
+
"./package.json": {
|
12
|
+
"default": "./package.json"
|
13
|
+
},
|
14
|
+
".": {
|
15
|
+
"types": "./nativescript-community-ui-drawer-angular.d.ts",
|
16
|
+
"esm2020": "./esm2020/nativescript-community-ui-drawer-angular.mjs",
|
17
|
+
"es2020": "./fesm2020/nativescript-community-ui-drawer-angular.mjs",
|
18
|
+
"es2015": "./fesm2015/nativescript-community-ui-drawer-angular.mjs",
|
19
|
+
"node": "./fesm2015/nativescript-community-ui-drawer-angular.mjs",
|
20
|
+
"default": "./fesm2020/nativescript-community-ui-drawer-angular.mjs"
|
21
|
+
}
|
22
|
+
},
|
9
23
|
"sideEffects": false,
|
10
24
|
"dependencies": {
|
11
|
-
"tslib": "^2.
|
25
|
+
"tslib": "^2.3.0"
|
12
26
|
},
|
13
27
|
"scripts": {
|
14
28
|
"prepublishOnly": "node --eval \"console.error('ERROR: Trying to publish a package that has been compiled by Ivy in full compilation mode. This is not allowed.\\nPlease delete and rebuild the package with Ivy partial compilation mode, before attempting to publish.\\n')\" && exit 1"
|
package/index.js
CHANGED
@@ -1,5 +1,5 @@
|
|
1
|
-
import { GestureHandlerStateEvent, GestureHandlerTouchEvent, GestureState, HandlerType, Manager, install as installGestures } from '@nativescript-community/gesturehandler';
|
2
|
-
import { Animation, Application, CSSType, Color, CoreTypes, GridLayout, Property, Utils, booleanConverter } from '@nativescript/core';
|
1
|
+
import { GestureHandlerStateEvent, GestureHandlerTouchEvent, GestureState, HandlerType, Manager, PanGestureHandler, install as installGestures } from '@nativescript-community/gesturehandler';
|
2
|
+
import { Animation, Application, CSSType, Color, CoreTypes, GridLayout, Property, Utils, View, booleanConverter } from '@nativescript/core';
|
3
3
|
installGestures(false);
|
4
4
|
const OPEN_DURATION = 200;
|
5
5
|
const CLOSE_DURATION = 200;
|
package/package.json
CHANGED
@@ -1,14 +1,15 @@
|
|
1
1
|
{
|
2
2
|
"name": "@nativescript-community/ui-drawer",
|
3
|
-
"version": "0.0.
|
3
|
+
"version": "0.0.34",
|
4
4
|
"description": "Easily add a side drawer (side menu) to your projects.",
|
5
5
|
"main": "./index",
|
6
6
|
"sideEffects": false,
|
7
7
|
"typings": "./index.d.ts",
|
8
8
|
"scripts": {
|
9
|
-
"build": "npm run tsc",
|
9
|
+
"build": "npm run tsc && npm run readme",
|
10
10
|
"build.all": "npm run build && npm run build.angular",
|
11
|
-
"build.angular": "../../node_modules/.bin/ng-packagr -p ../../src/ui-drawer/angular/package.json -c ../../src/ui-drawer/angular/tsconfig.json",
|
11
|
+
"build.angular": "../../node_modules/.bin/ng-packagr -p ../../src/ui-drawer/angular/ng-package.json -c ../../src/ui-drawer/angular/tsconfig.json",
|
12
|
+
"readme": "../../node_modules/.bin/readme generate -c ../../tools/readme/blueprint.json",
|
12
13
|
"tsc": "../../node_modules/.bin/cpy '**/*.d.ts' '../../packages/ui-drawer' --parents --cwd=../../src/ui-drawer && ../../node_modules/.bin/tsc -skipLibCheck -d",
|
13
14
|
"clean": "../../node_modules/.bin/rimraf ./*.d.ts ./*.js ./*.js.map"
|
14
15
|
},
|
@@ -51,7 +52,7 @@
|
|
51
52
|
"license": "Apache-2.0",
|
52
53
|
"readmeFilename": "README.md",
|
53
54
|
"dependencies": {
|
54
|
-
"@nativescript-community/gesturehandler": "^0.
|
55
|
+
"@nativescript-community/gesturehandler": "^2.0.3"
|
55
56
|
},
|
56
|
-
"gitHead": "
|
57
|
+
"gitHead": "d4bdfdfe1179ce2375c4f4c6b2edf8b83626fb16"
|
57
58
|
}
|
package/react/index.d.ts
ADDED
@@ -0,0 +1,20 @@
|
|
1
|
+
import * as React from 'react';
|
2
|
+
import { GridLayoutAttributes, NSVElement, NativeScriptProps } from 'react-nativescript';
|
3
|
+
import { Color, View } from '@nativescript/core';
|
4
|
+
import { Drawer as NativeScriptDrawer } from '..';
|
5
|
+
export declare function registerDrawer(): void;
|
6
|
+
interface DrawerAttributes extends GridLayoutAttributes {
|
7
|
+
backdropColor?: Color;
|
8
|
+
gestureEnabled?: boolean;
|
9
|
+
leftDrawer?: View;
|
10
|
+
mainContent?: View;
|
11
|
+
}
|
12
|
+
declare global {
|
13
|
+
namespace JSX {
|
14
|
+
interface IntrinsicElements {
|
15
|
+
drawer: NativeScriptProps<DrawerAttributes, NativeScriptDrawer>;
|
16
|
+
}
|
17
|
+
}
|
18
|
+
}
|
19
|
+
export declare const Drawer: React.ForwardRefExoticComponent<Pick<NativeScriptProps<DrawerAttributes, NativeScriptDrawer>, "nodeRole" | "children" | "style" | "key" | keyof DrawerAttributes> & React.RefAttributes<NSVElement<NativeScriptDrawer>>>;
|
20
|
+
export {};
|
package/react/index.js
ADDED
@@ -0,0 +1,9 @@
|
|
1
|
+
import * as React from 'react';
|
2
|
+
import { NSVElement, registerElement } from 'react-nativescript';
|
3
|
+
import { Color, View } from '@nativescript/core';
|
4
|
+
import { Drawer as NativeScriptDrawer } from '..';
|
5
|
+
export function registerDrawer() {
|
6
|
+
registerElement('drawer', () => require('../').Drawer);
|
7
|
+
}
|
8
|
+
export const Drawer = React.forwardRef((props, ref) => React.createElement("drawer", Object.assign({}, props, { ref: ref })));
|
9
|
+
//# sourceMappingURL=index.js.map
|
@@ -1,268 +0,0 @@
|
|
1
|
-
(function (global, factory) {
|
2
|
-
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@nativescript/angular'), require('@nativescript-community/ui-drawer')) :
|
3
|
-
typeof define === 'function' && define.amd ? define('@nativescript-community/ui-drawer-angular', ['exports', '@angular/core', '@nativescript/angular', '@nativescript-community/ui-drawer'], factory) :
|
4
|
-
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global['nativescript-community'] = global['nativescript-community'] || {}, global['nativescript-community']['ui-drawer-angular'] = {}), global.ng.core, global['ns-angular'], global['ns-drawer']));
|
5
|
-
}(this, (function (exports, i0, angular, uiDrawer) { 'use strict';
|
6
|
-
|
7
|
-
function _interopNamespace(e) {
|
8
|
-
if (e && e.__esModule) return e;
|
9
|
-
var n = Object.create(null);
|
10
|
-
if (e) {
|
11
|
-
Object.keys(e).forEach(function (k) {
|
12
|
-
if (k !== 'default') {
|
13
|
-
var d = Object.getOwnPropertyDescriptor(e, k);
|
14
|
-
Object.defineProperty(n, k, d.get ? d : {
|
15
|
-
enumerable: true,
|
16
|
-
get: function () {
|
17
|
-
return e[k];
|
18
|
-
}
|
19
|
-
});
|
20
|
-
}
|
21
|
-
});
|
22
|
-
}
|
23
|
-
n['default'] = e;
|
24
|
-
return Object.freeze(n);
|
25
|
-
}
|
26
|
-
|
27
|
-
var i0__namespace = /*#__PURE__*/_interopNamespace(i0);
|
28
|
-
|
29
|
-
var _c0 = ["*"];
|
30
|
-
var LEFTDRAWER = 'LeftDrawer';
|
31
|
-
var RIGHTDRAWER = 'RightDrawer';
|
32
|
-
var TOPDRAWER = 'TopDrawer';
|
33
|
-
var BOTTOMDRAWER = 'BottomDrawer';
|
34
|
-
var MAINCONTENT = 'MainContent';
|
35
|
-
var DrawerComponent = /** @class */ (function () {
|
36
|
-
function DrawerComponent(elementRef, viewContainer) {
|
37
|
-
this.elementRef = elementRef;
|
38
|
-
this.viewContainer = viewContainer;
|
39
|
-
this.drawer = this.elementRef.nativeElement;
|
40
|
-
}
|
41
|
-
Object.defineProperty(DrawerComponent.prototype, "nativeElement", {
|
42
|
-
get: function () {
|
43
|
-
return this.drawer;
|
44
|
-
},
|
45
|
-
enumerable: false,
|
46
|
-
configurable: true
|
47
|
-
});
|
48
|
-
Object.defineProperty(DrawerComponent.prototype, "gestureEnabled", {
|
49
|
-
set: function (value) {
|
50
|
-
this._gestureEnabled = value;
|
51
|
-
this.updateGestureEnabled();
|
52
|
-
},
|
53
|
-
enumerable: false,
|
54
|
-
configurable: true
|
55
|
-
});
|
56
|
-
DrawerComponent.prototype.updateGestureEnabled = function () {
|
57
|
-
this.drawer.gestureEnabled = this._gestureEnabled;
|
58
|
-
};
|
59
|
-
return DrawerComponent;
|
60
|
-
}());
|
61
|
-
DrawerComponent.ɵfac = function DrawerComponent_Factory(t) { return new (t || DrawerComponent)(i0__namespace.ɵɵdirectiveInject(i0.ElementRef), i0__namespace.ɵɵdirectiveInject(i0.ViewContainerRef)); };
|
62
|
-
DrawerComponent.ɵcmp = i0__namespace.ɵɵdefineComponent({ type: DrawerComponent, selectors: [["Drawer"]], ngContentSelectors: _c0, decls: 1, vars: 0, template: function DrawerComponent_Template(rf, ctx) {
|
63
|
-
if (rf & 1) {
|
64
|
-
i0__namespace.ɵɵprojectionDef();
|
65
|
-
i0__namespace.ɵɵprojection(0);
|
66
|
-
}
|
67
|
-
}, encapsulation: 2 });
|
68
|
-
(function () {
|
69
|
-
(typeof ngDevMode === "undefined" || ngDevMode) && i0__namespace.ɵsetClassMetadata(DrawerComponent, [{
|
70
|
-
type: i0.Component,
|
71
|
-
args: [{
|
72
|
-
selector: 'Drawer',
|
73
|
-
template: '<ng-content></ng-content>',
|
74
|
-
}]
|
75
|
-
}], function () {
|
76
|
-
return [{ type: i0__namespace.ElementRef, decorators: [{
|
77
|
-
type: i0.Inject,
|
78
|
-
args: [i0.ElementRef]
|
79
|
-
}] }, { type: i0__namespace.ViewContainerRef, decorators: [{
|
80
|
-
type: i0.Inject,
|
81
|
-
args: [i0.ViewContainerRef]
|
82
|
-
}] }];
|
83
|
-
}, null);
|
84
|
-
})();
|
85
|
-
var LeftDrawerDirective = /** @class */ (function () {
|
86
|
-
function LeftDrawerDirective(_elementRef) {
|
87
|
-
this._elementRef = _elementRef;
|
88
|
-
this._elementRef.nativeElement.id = LEFTDRAWER;
|
89
|
-
}
|
90
|
-
return LeftDrawerDirective;
|
91
|
-
}());
|
92
|
-
LeftDrawerDirective.ɵfac = function LeftDrawerDirective_Factory(t) { return new (t || LeftDrawerDirective)(i0__namespace.ɵɵdirectiveInject(i0.ElementRef)); };
|
93
|
-
LeftDrawerDirective.ɵdir = i0__namespace.ɵɵdefineDirective({ type: LeftDrawerDirective, selectors: [["", "leftDrawer", ""]] });
|
94
|
-
(function () {
|
95
|
-
(typeof ngDevMode === "undefined" || ngDevMode) && i0__namespace.ɵsetClassMetadata(LeftDrawerDirective, [{
|
96
|
-
type: i0.Directive,
|
97
|
-
args: [{
|
98
|
-
selector: '[leftDrawer]',
|
99
|
-
}]
|
100
|
-
}], function () {
|
101
|
-
return [{ type: i0__namespace.ElementRef, decorators: [{
|
102
|
-
type: i0.Inject,
|
103
|
-
args: [i0.ElementRef]
|
104
|
-
}] }];
|
105
|
-
}, null);
|
106
|
-
})();
|
107
|
-
var RightDrawerDirective = /** @class */ (function () {
|
108
|
-
function RightDrawerDirective(_elementRef) {
|
109
|
-
this._elementRef = _elementRef;
|
110
|
-
this._elementRef.nativeElement.id = RIGHTDRAWER;
|
111
|
-
}
|
112
|
-
return RightDrawerDirective;
|
113
|
-
}());
|
114
|
-
RightDrawerDirective.ɵfac = function RightDrawerDirective_Factory(t) { return new (t || RightDrawerDirective)(i0__namespace.ɵɵdirectiveInject(i0.ElementRef)); };
|
115
|
-
RightDrawerDirective.ɵdir = i0__namespace.ɵɵdefineDirective({ type: RightDrawerDirective, selectors: [["", "rightDrawer", ""]] });
|
116
|
-
(function () {
|
117
|
-
(typeof ngDevMode === "undefined" || ngDevMode) && i0__namespace.ɵsetClassMetadata(RightDrawerDirective, [{
|
118
|
-
type: i0.Directive,
|
119
|
-
args: [{
|
120
|
-
selector: '[rightDrawer]',
|
121
|
-
}]
|
122
|
-
}], function () {
|
123
|
-
return [{ type: i0__namespace.ElementRef, decorators: [{
|
124
|
-
type: i0.Inject,
|
125
|
-
args: [i0.ElementRef]
|
126
|
-
}] }];
|
127
|
-
}, null);
|
128
|
-
})();
|
129
|
-
var TopDrawerDirective = /** @class */ (function () {
|
130
|
-
function TopDrawerDirective(_elementRef) {
|
131
|
-
this._elementRef = _elementRef;
|
132
|
-
this._elementRef.nativeElement.id = TOPDRAWER;
|
133
|
-
}
|
134
|
-
return TopDrawerDirective;
|
135
|
-
}());
|
136
|
-
TopDrawerDirective.ɵfac = function TopDrawerDirective_Factory(t) { return new (t || TopDrawerDirective)(i0__namespace.ɵɵdirectiveInject(i0.ElementRef)); };
|
137
|
-
TopDrawerDirective.ɵdir = i0__namespace.ɵɵdefineDirective({ type: TopDrawerDirective, selectors: [["", "topDrawer", ""]] });
|
138
|
-
(function () {
|
139
|
-
(typeof ngDevMode === "undefined" || ngDevMode) && i0__namespace.ɵsetClassMetadata(TopDrawerDirective, [{
|
140
|
-
type: i0.Directive,
|
141
|
-
args: [{
|
142
|
-
selector: '[topDrawer]',
|
143
|
-
}]
|
144
|
-
}], function () {
|
145
|
-
return [{ type: i0__namespace.ElementRef, decorators: [{
|
146
|
-
type: i0.Inject,
|
147
|
-
args: [i0.ElementRef]
|
148
|
-
}] }];
|
149
|
-
}, null);
|
150
|
-
})();
|
151
|
-
var BottomDrawerDirective = /** @class */ (function () {
|
152
|
-
function BottomDrawerDirective(_elementRef) {
|
153
|
-
this._elementRef = _elementRef;
|
154
|
-
this._elementRef.nativeElement.id = BOTTOMDRAWER;
|
155
|
-
}
|
156
|
-
return BottomDrawerDirective;
|
157
|
-
}());
|
158
|
-
BottomDrawerDirective.ɵfac = function BottomDrawerDirective_Factory(t) { return new (t || BottomDrawerDirective)(i0__namespace.ɵɵdirectiveInject(i0.ElementRef)); };
|
159
|
-
BottomDrawerDirective.ɵdir = i0__namespace.ɵɵdefineDirective({ type: BottomDrawerDirective, selectors: [["", "bottomDrawer", ""]] });
|
160
|
-
(function () {
|
161
|
-
(typeof ngDevMode === "undefined" || ngDevMode) && i0__namespace.ɵsetClassMetadata(BottomDrawerDirective, [{
|
162
|
-
type: i0.Directive,
|
163
|
-
args: [{
|
164
|
-
selector: '[bottomDrawer]',
|
165
|
-
}]
|
166
|
-
}], function () {
|
167
|
-
return [{ type: i0__namespace.ElementRef, decorators: [{
|
168
|
-
type: i0.Inject,
|
169
|
-
args: [i0.ElementRef]
|
170
|
-
}] }];
|
171
|
-
}, null);
|
172
|
-
})();
|
173
|
-
var MainContentDirective = /** @class */ (function () {
|
174
|
-
function MainContentDirective(_elementRef) {
|
175
|
-
this._elementRef = _elementRef;
|
176
|
-
this._elementRef.nativeElement.id = MAINCONTENT;
|
177
|
-
}
|
178
|
-
return MainContentDirective;
|
179
|
-
}());
|
180
|
-
MainContentDirective.ɵfac = function MainContentDirective_Factory(t) { return new (t || MainContentDirective)(i0__namespace.ɵɵdirectiveInject(i0.ElementRef)); };
|
181
|
-
MainContentDirective.ɵdir = i0__namespace.ɵɵdefineDirective({ type: MainContentDirective, selectors: [["", "mainContent", ""]] });
|
182
|
-
(function () {
|
183
|
-
(typeof ngDevMode === "undefined" || ngDevMode) && i0__namespace.ɵsetClassMetadata(MainContentDirective, [{
|
184
|
-
type: i0.Directive,
|
185
|
-
args: [{
|
186
|
-
selector: '[mainContent]',
|
187
|
-
}]
|
188
|
-
}], function () {
|
189
|
-
return [{ type: i0__namespace.ElementRef, decorators: [{
|
190
|
-
type: i0.Inject,
|
191
|
-
args: [i0.ElementRef]
|
192
|
-
}] }];
|
193
|
-
}, null);
|
194
|
-
})();
|
195
|
-
var sideDrawerMeta = {
|
196
|
-
insertChild: function (parent, child) {
|
197
|
-
var drawer = parent;
|
198
|
-
var childView = child;
|
199
|
-
if (childView.id === MAINCONTENT) {
|
200
|
-
drawer.mainContent = childView;
|
201
|
-
}
|
202
|
-
if (childView.id === LEFTDRAWER) {
|
203
|
-
drawer.leftDrawer = childView;
|
204
|
-
}
|
205
|
-
if (childView.id === RIGHTDRAWER) {
|
206
|
-
drawer.rightDrawer = childView;
|
207
|
-
}
|
208
|
-
if (childView.id === TOPDRAWER) {
|
209
|
-
drawer.topDrawer = childView;
|
210
|
-
}
|
211
|
-
if (childView.id === BOTTOMDRAWER) {
|
212
|
-
drawer.bottomDrawer = childView;
|
213
|
-
}
|
214
|
-
},
|
215
|
-
removeChild: function (parent, child) {
|
216
|
-
var drawer = parent;
|
217
|
-
var childView = child;
|
218
|
-
if (childView.id === MAINCONTENT) {
|
219
|
-
drawer.mainContent = null;
|
220
|
-
}
|
221
|
-
if (childView.id === LEFTDRAWER) {
|
222
|
-
drawer.leftDrawer = null;
|
223
|
-
}
|
224
|
-
if (childView.id === RIGHTDRAWER) {
|
225
|
-
drawer.rightDrawer = null;
|
226
|
-
}
|
227
|
-
if (childView.id === TOPDRAWER) {
|
228
|
-
drawer.topDrawer = null;
|
229
|
-
}
|
230
|
-
if (childView.id === BOTTOMDRAWER) {
|
231
|
-
drawer.bottomDrawer = null;
|
232
|
-
}
|
233
|
-
},
|
234
|
-
};
|
235
|
-
var SIDEDRAWER_DIRECTIVES = [LeftDrawerDirective, RightDrawerDirective, TopDrawerDirective, BottomDrawerDirective, MainContentDirective];
|
236
|
-
angular.registerElement('Drawer', function () { return uiDrawer.Drawer; }, sideDrawerMeta);
|
237
|
-
var DrawerModule = /** @class */ (function () {
|
238
|
-
function DrawerModule() {
|
239
|
-
}
|
240
|
-
return DrawerModule;
|
241
|
-
}());
|
242
|
-
DrawerModule.ɵfac = function DrawerModule_Factory(t) { return new (t || DrawerModule)(); };
|
243
|
-
DrawerModule.ɵmod = i0__namespace.ɵɵdefineNgModule({ type: DrawerModule });
|
244
|
-
DrawerModule.ɵinj = i0__namespace.ɵɵdefineInjector({});
|
245
|
-
(function () {
|
246
|
-
(typeof ngDevMode === "undefined" || ngDevMode) && i0__namespace.ɵsetClassMetadata(DrawerModule, [{
|
247
|
-
type: i0.NgModule,
|
248
|
-
args: [{
|
249
|
-
declarations: [DrawerComponent, SIDEDRAWER_DIRECTIVES],
|
250
|
-
exports: [DrawerComponent, SIDEDRAWER_DIRECTIVES],
|
251
|
-
}]
|
252
|
-
}], null, null);
|
253
|
-
})();
|
254
|
-
(function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0__namespace.ɵɵsetNgModuleScope(DrawerModule, { declarations: [DrawerComponent, LeftDrawerDirective, RightDrawerDirective, TopDrawerDirective, BottomDrawerDirective, MainContentDirective], exports: [DrawerComponent, LeftDrawerDirective, RightDrawerDirective, TopDrawerDirective, BottomDrawerDirective, MainContentDirective] }); })();
|
255
|
-
|
256
|
-
exports.BottomDrawerDirective = BottomDrawerDirective;
|
257
|
-
exports.DrawerComponent = DrawerComponent;
|
258
|
-
exports.DrawerModule = DrawerModule;
|
259
|
-
exports.LeftDrawerDirective = LeftDrawerDirective;
|
260
|
-
exports.MainContentDirective = MainContentDirective;
|
261
|
-
exports.RightDrawerDirective = RightDrawerDirective;
|
262
|
-
exports.SIDEDRAWER_DIRECTIVES = SIDEDRAWER_DIRECTIVES;
|
263
|
-
exports.TopDrawerDirective = TopDrawerDirective;
|
264
|
-
|
265
|
-
Object.defineProperty(exports, '__esModule', { value: true });
|
266
|
-
|
267
|
-
})));
|
268
|
-
//# sourceMappingURL=nativescript-community-ui-drawer-angular.umd.js.map
|