@digital-realty/ix-drawer 1.0.41 → 1.0.43-alpha.0

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.
@@ -1,41 +1,41 @@
1
- import { LitElement, nothing } from 'lit';
2
- import '@digital-realty/ix-button/ix-button.js';
3
- import '@digital-realty/ix-icon/ix-icon.js';
4
- import '@digital-realty/ix-icon-button/ix-icon-button.js';
5
- import '@digital-realty/ix-dialog/ix-dialog.js';
6
- export declare class IxDrawer extends LitElement {
7
- static get styles(): import("lit").CSSResult[];
8
- protected minimised: boolean;
9
- protected openDeleteConfirmationDialog: boolean;
10
- isVisible: boolean;
11
- onClosed: any;
12
- minimisedTitle: string;
13
- minimisedSubTitle: string;
14
- minimisable: boolean;
15
- hideAside: boolean;
16
- showConfirmationDialogOnClose: boolean;
17
- animateVertical: boolean;
18
- hideClose: boolean;
19
- closing: boolean;
20
- minimising: boolean;
21
- contentBox: HTMLElement | undefined;
22
- disconnectedCallback(): void;
23
- resetState(): void;
24
- handleOnScroll: () => void;
25
- onMinimised(): void;
26
- onMaximised(): void;
27
- handleOnCancel(): void;
28
- handleOnDelete(): void;
29
- handleClosed(): void;
30
- clickOutsideDrawer(event: MouseEvent): void;
31
- handleCloseButton(): void;
32
- handleOnBlur(): void;
33
- handleClosing(): void;
34
- renderMinimiseButton(): typeof nothing | import("lit").TemplateResult<1>;
35
- renderMaximiseButton(): import("lit").TemplateResult<1>;
36
- renderDeleteButton(): import("lit").TemplateResult<1>;
37
- renderDeleteConfirmationDialog(): import("lit").TemplateResult<1>;
38
- renderMinimisedContainer(): import("lit").TemplateResult<1>;
39
- renderDrawerContainer(): import("lit").TemplateResult<1>;
40
- render(): typeof nothing | import("lit").TemplateResult<1>;
41
- }
1
+ import { LitElement, nothing } from 'lit';
2
+ import '@digital-realty/ix-button/ix-button.js';
3
+ import '@digital-realty/ix-icon/ix-icon.js';
4
+ import '@digital-realty/ix-icon-button/ix-icon-button.js';
5
+ import '@digital-realty/ix-dialog/ix-dialog.js';
6
+ export declare class IxDrawer extends LitElement {
7
+ static get styles(): import("lit").CSSResult[];
8
+ protected minimised: boolean;
9
+ protected openDeleteConfirmationDialog: boolean;
10
+ isVisible: boolean;
11
+ onClosed: any;
12
+ minimisedTitle: string;
13
+ minimisedSubTitle: string;
14
+ minimisable: boolean;
15
+ hideAside: boolean;
16
+ showConfirmationDialogOnClose: boolean;
17
+ animateVertical: boolean;
18
+ hideClose: boolean;
19
+ closing: boolean;
20
+ minimising: boolean;
21
+ contentBox: HTMLElement | undefined;
22
+ disconnectedCallback(): void;
23
+ resetState(): void;
24
+ handleOnScroll: () => void;
25
+ onMinimised(): void;
26
+ onMaximised(): void;
27
+ handleOnCancel(): void;
28
+ handleOnDelete(): void;
29
+ handleClosed(): void;
30
+ clickOutsideDrawer(event: MouseEvent): void;
31
+ handleCloseButton(): void;
32
+ handleOnBlur(): void;
33
+ handleClosing(): void;
34
+ renderMinimiseButton(): typeof nothing | import("lit").TemplateResult<1>;
35
+ renderMaximiseButton(): import("lit").TemplateResult<1>;
36
+ renderDeleteButton(): import("lit").TemplateResult<1>;
37
+ renderDeleteConfirmationDialog(): import("lit").TemplateResult<1>;
38
+ renderMinimisedContainer(): import("lit").TemplateResult<1>;
39
+ renderDrawerContainer(): import("lit").TemplateResult<1>;
40
+ render(): typeof nothing | import("lit").TemplateResult<1>;
41
+ }
package/dist/IxDrawer.js CHANGED
@@ -1,112 +1,112 @@
1
- import { __decorate } from "tslib";
2
- import { LitElement, html, nothing } from 'lit';
3
- import { classMap } from 'lit/directives/class-map.js';
4
- import { property, query, state } from 'lit/decorators.js';
5
- import { IxDrawerStyles } from './styles/ix-drawer-styles.js';
6
- import '@digital-realty/ix-button/ix-button.js';
7
- import '@digital-realty/ix-icon/ix-icon.js';
8
- import '@digital-realty/ix-icon-button/ix-icon-button.js';
9
- import '@digital-realty/ix-dialog/ix-dialog.js';
10
- export class IxDrawer extends LitElement {
11
- constructor() {
12
- super(...arguments);
13
- this.minimised = false;
14
- this.openDeleteConfirmationDialog = false;
15
- this.isVisible = false;
16
- this.minimisedTitle = 'Draft';
17
- this.minimisedSubTitle = '';
18
- this.minimisable = false;
19
- this.hideAside = false;
20
- this.showConfirmationDialogOnClose = false;
21
- this.animateVertical = false;
22
- this.hideClose = false;
23
- this.closing = false;
24
- this.minimising = false;
25
- this.handleOnScroll = () => {
26
- if (this.contentBox) {
27
- const scrollEvent = new CustomEvent('on-content-scroll', {
28
- detail: {
29
- scrollTop: this.contentBox.scrollTop,
30
- scrollHeight: this.contentBox.scrollHeight,
31
- clientHeight: this.contentBox.clientHeight,
32
- },
33
- bubbles: true,
34
- composed: true,
35
- });
36
- this.dispatchEvent(scrollEvent);
37
- }
38
- };
39
- }
40
- static get styles() {
41
- return [IxDrawerStyles];
42
- }
43
- disconnectedCallback() {
44
- super.disconnectedCallback();
45
- this.resetState();
46
- }
47
- resetState() {
48
- this.closing = false;
49
- this.minimising = false;
50
- this.openDeleteConfirmationDialog = false;
51
- this.minimised = false;
52
- }
53
- onMinimised() {
54
- this.minimising = true;
55
- this.closing = true;
56
- setTimeout(() => {
57
- this.handleClosed();
58
- }, 300);
59
- }
60
- onMaximised() {
61
- this.minimised = false;
62
- }
63
- handleOnCancel() {
64
- this.openDeleteConfirmationDialog = false;
65
- }
66
- handleOnDelete() {
67
- this.openDeleteConfirmationDialog = true;
68
- }
69
- handleClosed() {
70
- if (this.closing) {
71
- this.closing = false;
72
- this.openDeleteConfirmationDialog = false;
73
- if (this.minimising) {
74
- this.minimising = false;
75
- this.minimised = !this.minimised;
76
- return;
77
- }
78
- this.minimised = false;
79
- this.onClosed();
80
- }
81
- }
82
- clickOutsideDrawer(event) {
83
- const el = event.target;
84
- if (el.classList.contains('drawer-container')) {
85
- if (!this.minimising && this.showConfirmationDialogOnClose)
86
- this.openDeleteConfirmationDialog = true;
87
- else
88
- this.handleClosing();
89
- }
90
- }
91
- handleCloseButton() {
92
- if (this.showConfirmationDialogOnClose)
93
- this.openDeleteConfirmationDialog = true;
94
- else
95
- this.handleClosing();
96
- }
97
- handleOnBlur() {
98
- this.handleOnCancel();
99
- }
100
- handleClosing() {
101
- this.closing = true;
102
- // Backup timeout to complete closing
103
- // if animation end event has not fired
104
- setTimeout(() => {
105
- this.handleClosed();
106
- }, 300);
107
- }
108
- renderMinimiseButton() {
109
- if (this.minimisable)
1
+ import { __decorate } from "tslib";
2
+ import { LitElement, html, nothing } from 'lit';
3
+ import { classMap } from 'lit/directives/class-map.js';
4
+ import { property, query, state } from 'lit/decorators.js';
5
+ import { IxDrawerStyles } from './styles/ix-drawer-styles.js';
6
+ import '@digital-realty/ix-button/ix-button.js';
7
+ import '@digital-realty/ix-icon/ix-icon.js';
8
+ import '@digital-realty/ix-icon-button/ix-icon-button.js';
9
+ import '@digital-realty/ix-dialog/ix-dialog.js';
10
+ export class IxDrawer extends LitElement {
11
+ constructor() {
12
+ super(...arguments);
13
+ this.minimised = false;
14
+ this.openDeleteConfirmationDialog = false;
15
+ this.isVisible = false;
16
+ this.minimisedTitle = 'Draft';
17
+ this.minimisedSubTitle = '';
18
+ this.minimisable = false;
19
+ this.hideAside = false;
20
+ this.showConfirmationDialogOnClose = false;
21
+ this.animateVertical = false;
22
+ this.hideClose = false;
23
+ this.closing = false;
24
+ this.minimising = false;
25
+ this.handleOnScroll = () => {
26
+ if (this.contentBox) {
27
+ const scrollEvent = new CustomEvent('on-content-scroll', {
28
+ detail: {
29
+ scrollTop: this.contentBox.scrollTop,
30
+ scrollHeight: this.contentBox.scrollHeight,
31
+ clientHeight: this.contentBox.clientHeight,
32
+ },
33
+ bubbles: true,
34
+ composed: true,
35
+ });
36
+ this.dispatchEvent(scrollEvent);
37
+ }
38
+ };
39
+ }
40
+ static get styles() {
41
+ return [IxDrawerStyles];
42
+ }
43
+ disconnectedCallback() {
44
+ super.disconnectedCallback();
45
+ this.resetState();
46
+ }
47
+ resetState() {
48
+ this.closing = false;
49
+ this.minimising = false;
50
+ this.openDeleteConfirmationDialog = false;
51
+ this.minimised = false;
52
+ }
53
+ onMinimised() {
54
+ this.minimising = true;
55
+ this.closing = true;
56
+ setTimeout(() => {
57
+ this.handleClosed();
58
+ }, 300);
59
+ }
60
+ onMaximised() {
61
+ this.minimised = false;
62
+ }
63
+ handleOnCancel() {
64
+ this.openDeleteConfirmationDialog = false;
65
+ }
66
+ handleOnDelete() {
67
+ this.openDeleteConfirmationDialog = true;
68
+ }
69
+ handleClosed() {
70
+ if (this.closing) {
71
+ this.closing = false;
72
+ this.openDeleteConfirmationDialog = false;
73
+ if (this.minimising) {
74
+ this.minimising = false;
75
+ this.minimised = !this.minimised;
76
+ return;
77
+ }
78
+ this.minimised = false;
79
+ this.onClosed();
80
+ }
81
+ }
82
+ clickOutsideDrawer(event) {
83
+ const el = event.target;
84
+ if (el.classList.contains('drawer-container')) {
85
+ if (!this.minimising && this.showConfirmationDialogOnClose)
86
+ this.openDeleteConfirmationDialog = true;
87
+ else
88
+ this.handleClosing();
89
+ }
90
+ }
91
+ handleCloseButton() {
92
+ if (this.showConfirmationDialogOnClose)
93
+ this.openDeleteConfirmationDialog = true;
94
+ else
95
+ this.handleClosing();
96
+ }
97
+ handleOnBlur() {
98
+ this.handleOnCancel();
99
+ }
100
+ handleClosing() {
101
+ this.closing = true;
102
+ // Backup timeout to complete closing
103
+ // if animation end event has not fired
104
+ setTimeout(() => {
105
+ this.handleClosed();
106
+ }, 300);
107
+ }
108
+ renderMinimiseButton() {
109
+ if (this.minimisable)
110
110
  return html `<ix-button
111
111
  data-testid="hideButton"
112
112
  appearance="text"
@@ -115,15 +115,15 @@ export class IxDrawer extends LitElement {
115
115
  >
116
116
  <ix-icon slot="icon">fullscreen_exit</ix-icon>
117
117
  HIDE
118
- </ix-button>`;
119
- return nothing;
120
- }
121
- renderMaximiseButton() {
118
+ </ix-button>`;
119
+ return nothing;
120
+ }
121
+ renderMaximiseButton() {
122
122
  return html `<div class="drawer__maximise-btn">
123
123
  <ix-icon @click=${this.onMaximised}>fullscreen</ix-icon>
124
- </div>`;
125
- }
126
- renderDeleteButton() {
124
+ </div>`;
125
+ }
126
+ renderDeleteButton() {
127
127
  return html `<svg
128
128
  class="drawer__delete-btn"
129
129
  focusable="false"
@@ -135,9 +135,9 @@ export class IxDrawer extends LitElement {
135
135
  <path
136
136
  d="M6 19c0 1.1.9 2 2 2h8c1.1 0 2-.9 2-2V7H6v12zM19 4h-3.5l-1-1h-5l-1 1H5v2h14V4z"
137
137
  ></path>
138
- </svg> `;
139
- }
140
- renderDeleteConfirmationDialog() {
138
+ </svg> `;
139
+ }
140
+ renderDeleteConfirmationDialog() {
141
141
  return html `
142
142
  <ix-dialog
143
143
  .open=${this.openDeleteConfirmationDialog}
@@ -163,9 +163,9 @@ export class IxDrawer extends LitElement {
163
163
  >
164
164
  </div>
165
165
  </ix-dialog>
166
- `;
167
- }
168
- renderMinimisedContainer() {
166
+ `;
167
+ }
168
+ renderMinimisedContainer() {
169
169
  return html `<div class="drawer-minimised-container">
170
170
  <div class="drawer-minimised-body">
171
171
  <div>
@@ -178,14 +178,14 @@ export class IxDrawer extends LitElement {
178
178
  ${this.renderDeleteButton()} ${this.renderMaximiseButton()}
179
179
  </div>
180
180
  </div>
181
- </div>`;
182
- }
183
- renderDrawerContainer() {
184
- const drawerClasses = {
185
- drawer: true,
186
- 'animate-vert': this.animateVertical,
187
- 'aside-hidden': this.hideAside,
188
- };
181
+ </div>`;
182
+ }
183
+ renderDrawerContainer() {
184
+ const drawerClasses = {
185
+ drawer: true,
186
+ 'animate-vert': this.animateVertical,
187
+ 'aside-hidden': this.hideAside,
188
+ };
189
189
  return html `
190
190
  <div
191
191
  class="drawer-container"
@@ -202,8 +202,8 @@ export class IxDrawer extends LitElement {
202
202
  ${this.renderMinimiseButton()}
203
203
  </div>
204
204
  <slot name="header"></slot>
205
- ${this.hideClose
206
- ? nothing
205
+ ${this.hideClose
206
+ ? nothing
207
207
  : html `
208
208
  <div class="drawer-header__close-btn">
209
209
  <ix-icon-button
@@ -222,59 +222,59 @@ export class IxDrawer extends LitElement {
222
222
  </div>
223
223
  </aside>
224
224
  </div>
225
- `;
226
- }
227
- render() {
228
- if (!this.isVisible)
229
- return nothing;
225
+ `;
226
+ }
227
+ render() {
228
+ if (!this.isVisible)
229
+ return nothing;
230
230
  return html `
231
- ${this.minimised
232
- ? this.renderMinimisedContainer()
231
+ ${this.minimised
232
+ ? this.renderMinimisedContainer()
233
233
  : this.renderDrawerContainer()}
234
234
  ${this.renderDeleteConfirmationDialog()}
235
- `;
236
- }
237
- }
238
- __decorate([
239
- state()
240
- ], IxDrawer.prototype, "minimised", void 0);
241
- __decorate([
242
- state()
243
- ], IxDrawer.prototype, "openDeleteConfirmationDialog", void 0);
244
- __decorate([
245
- property({ type: Boolean })
246
- ], IxDrawer.prototype, "isVisible", void 0);
247
- __decorate([
248
- property({ type: Function })
249
- ], IxDrawer.prototype, "onClosed", void 0);
250
- __decorate([
251
- property({ type: String })
252
- ], IxDrawer.prototype, "minimisedTitle", void 0);
253
- __decorate([
254
- property({ type: String })
255
- ], IxDrawer.prototype, "minimisedSubTitle", void 0);
256
- __decorate([
257
- property({ type: Boolean })
258
- ], IxDrawer.prototype, "minimisable", void 0);
259
- __decorate([
260
- property({ type: Boolean })
261
- ], IxDrawer.prototype, "hideAside", void 0);
262
- __decorate([
263
- property({ type: Boolean })
264
- ], IxDrawer.prototype, "showConfirmationDialogOnClose", void 0);
265
- __decorate([
266
- property({ type: Boolean, attribute: 'animate-vertical' })
267
- ], IxDrawer.prototype, "animateVertical", void 0);
268
- __decorate([
269
- property({ type: Boolean, attribute: 'hide-close' })
270
- ], IxDrawer.prototype, "hideClose", void 0);
271
- __decorate([
272
- state()
273
- ], IxDrawer.prototype, "closing", void 0);
274
- __decorate([
275
- state()
276
- ], IxDrawer.prototype, "minimising", void 0);
277
- __decorate([
278
- query('#content-scroll-box')
279
- ], IxDrawer.prototype, "contentBox", void 0);
235
+ `;
236
+ }
237
+ }
238
+ __decorate([
239
+ state()
240
+ ], IxDrawer.prototype, "minimised", void 0);
241
+ __decorate([
242
+ state()
243
+ ], IxDrawer.prototype, "openDeleteConfirmationDialog", void 0);
244
+ __decorate([
245
+ property({ type: Boolean })
246
+ ], IxDrawer.prototype, "isVisible", void 0);
247
+ __decorate([
248
+ property({ type: Function })
249
+ ], IxDrawer.prototype, "onClosed", void 0);
250
+ __decorate([
251
+ property({ type: String })
252
+ ], IxDrawer.prototype, "minimisedTitle", void 0);
253
+ __decorate([
254
+ property({ type: String })
255
+ ], IxDrawer.prototype, "minimisedSubTitle", void 0);
256
+ __decorate([
257
+ property({ type: Boolean })
258
+ ], IxDrawer.prototype, "minimisable", void 0);
259
+ __decorate([
260
+ property({ type: Boolean })
261
+ ], IxDrawer.prototype, "hideAside", void 0);
262
+ __decorate([
263
+ property({ type: Boolean })
264
+ ], IxDrawer.prototype, "showConfirmationDialogOnClose", void 0);
265
+ __decorate([
266
+ property({ type: Boolean, attribute: 'animate-vertical' })
267
+ ], IxDrawer.prototype, "animateVertical", void 0);
268
+ __decorate([
269
+ property({ type: Boolean, attribute: 'hide-close' })
270
+ ], IxDrawer.prototype, "hideClose", void 0);
271
+ __decorate([
272
+ state()
273
+ ], IxDrawer.prototype, "closing", void 0);
274
+ __decorate([
275
+ state()
276
+ ], IxDrawer.prototype, "minimising", void 0);
277
+ __decorate([
278
+ query('#content-scroll-box')
279
+ ], IxDrawer.prototype, "contentBox", void 0);
280
280
  //# sourceMappingURL=IxDrawer.js.map
package/dist/index.d.ts CHANGED
@@ -1 +1 @@
1
- export { IxDrawer } from './IxDrawer.js';
1
+ export { IxDrawer } from './IxDrawer.js';
package/dist/index.js CHANGED
@@ -1,2 +1,2 @@
1
- export { IxDrawer } from './IxDrawer.js';
1
+ export { IxDrawer } from './IxDrawer.js';
2
2
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- export {};
1
+ export {};
package/dist/ix-drawer.js CHANGED
@@ -1,3 +1,3 @@
1
- import { IxDrawer } from './IxDrawer.js';
2
- window.customElements.define('ix-drawer', IxDrawer);
1
+ import { IxDrawer } from './IxDrawer.js';
2
+ window.customElements.define('ix-drawer', IxDrawer);
3
3
  //# sourceMappingURL=ix-drawer.js.map
@@ -1,4 +1,4 @@
1
- import { IxDrawer as IxDrawerLit } from '../IxDrawer.js';
2
- export declare const IxDrawer: import("@lit/react").ReactWebComponent<IxDrawerLit, {
3
- onclick: string;
4
- }>;
1
+ import { IxDrawer as IxDrawerLit } from '../IxDrawer.js';
2
+ export declare const IxDrawer: import("@lit/react").ReactWebComponent<IxDrawerLit, {
3
+ onclick: string;
4
+ }>;
@@ -1,13 +1,13 @@
1
- import React from 'react';
2
- import { createComponent } from '@lit/react';
3
- import { IxDrawer as IxDrawerLit } from '../IxDrawer.js';
4
- customElements.define('ix-drawer', IxDrawerLit);
5
- export const IxDrawer = createComponent({
6
- tagName: 'ix-drawer',
7
- elementClass: IxDrawerLit,
8
- react: React,
9
- events: {
10
- onclick: 'onClick',
11
- },
12
- });
1
+ import React from 'react';
2
+ import { createComponent } from '@lit/react';
3
+ import { IxDrawer as IxDrawerLit } from '../IxDrawer.js';
4
+ customElements.define('ix-drawer', IxDrawerLit);
5
+ export const IxDrawer = createComponent({
6
+ tagName: 'ix-drawer',
7
+ elementClass: IxDrawerLit,
8
+ react: React,
9
+ events: {
10
+ onclick: 'onClick',
11
+ },
12
+ });
13
13
  //# sourceMappingURL=IxDrawer.js.map
@@ -1 +1 @@
1
- export declare const IxDrawerStyles: import("lit").CSSResult;
1
+ export declare const IxDrawerStyles: import("lit").CSSResult;
@@ -1,4 +1,4 @@
1
- import { css } from 'lit';
1
+ import { css } from 'lit';
2
2
  export const IxDrawerStyles = css `
3
3
  :root,
4
4
  :host :root,
@@ -262,5 +262,5 @@ export const IxDrawerStyles = css `
262
262
  max-width: 500px;
263
263
  }
264
264
  }
265
- `;
265
+ `;
266
266
  //# sourceMappingURL=ix-drawer-styles.js.map
package/package.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "description": "Webcomponent ix-drawer following open-wc recommendations",
4
4
  "license": "MIT",
5
5
  "author": "interxion",
6
- "version": "1.0.41",
6
+ "version": "1.0.43-alpha.0",
7
7
  "type": "module",
8
8
  "main": "dist/index.js",
9
9
  "module": "dist/index.js",
@@ -29,10 +29,10 @@
29
29
  "storybook:build": "tsc && npm run analyze -- --exclude dist && build-storybook"
30
30
  },
31
31
  "dependencies": {
32
- "@digital-realty/ix-button": "^3.2.31",
33
- "@digital-realty/ix-dialog": "^1.0.28",
34
- "@digital-realty/ix-icon": "^1.0.36",
35
- "@digital-realty/ix-icon-button": "^1.0.40",
32
+ "@digital-realty/ix-button": "^3.2.33-alpha.0",
33
+ "@digital-realty/ix-dialog": "^1.0.30-alpha.0",
34
+ "@digital-realty/ix-icon": "^1.0.38-alpha.0",
35
+ "@digital-realty/ix-icon-button": "^1.0.42-alpha.0",
36
36
  "@lit/react": "^1.0.2",
37
37
  "@material/web": "1.2.0",
38
38
  "lit": "^2.0.2",
@@ -109,5 +109,5 @@
109
109
  "README.md",
110
110
  "LICENSE"
111
111
  ],
112
- "gitHead": "dc83d7ba595b824274ec44de0918b5b826fcd3ed"
112
+ "gitHead": "020de6dab25bbe6058e9a71b2c56681822403481"
113
113
  }