@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 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=
@@ -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.js.map
189
+ //# sourceMappingURL=nativescript-community-ui-drawer-angular.mjs.map
@@ -1,14 +1,28 @@
1
1
  {
2
2
  "name": "@nativescript-community/ui-drawer-angular",
3
- "main": "bundles/nativescript-community-ui-drawer-angular.umd.js",
4
- "module": "fesm2015/nativescript-community-ui-drawer-angular.js",
5
- "es2015": "fesm2015/nativescript-community-ui-drawer-angular.js",
6
- "esm2015": "esm2015/nativescript-community-ui-drawer-angular.js",
7
- "fesm2015": "fesm2015/nativescript-community-ui-drawer-angular.js",
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.2.0"
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.31",
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.1.35"
55
+ "@nativescript-community/gesturehandler": "^2.0.3"
55
56
  },
56
- "gitHead": "d820fb7ec84497a3bb63589f7392d66c4a6acb80"
57
+ "gitHead": "d4bdfdfe1179ce2375c4f4c6b2edf8b83626fb16"
57
58
  }
@@ -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