@getflip/swirl-components 0.194.0 → 0.195.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.
Files changed (26) hide show
  1. package/components.json +20 -3
  2. package/dist/cjs/loader.cjs.js +1 -1
  3. package/dist/cjs/swirl-components.cjs.js +1 -1
  4. package/dist/cjs/swirl-file-viewer_7.cjs.entry.js +3 -1
  5. package/dist/cjs/swirl-popover_2.cjs.entry.js +26 -16
  6. package/dist/collection/assets/pdfjs/pdf.worker.min.js +1 -1
  7. package/dist/collection/components/swirl-file-viewer/viewers/swirl-file-viewer-pdf/swirl-file-viewer-pdf.js +3 -1
  8. package/dist/collection/components/swirl-popover/swirl-popover.js +14 -8
  9. package/dist/collection/components/swirl-popover-trigger/swirl-popover-trigger.js +39 -11
  10. package/dist/components/assets/pdfjs/pdf.worker.min.js +1 -1
  11. package/dist/components/swirl-file-viewer-pdf2.js +3 -1
  12. package/dist/components/swirl-popover-trigger2.js +23 -12
  13. package/dist/components/swirl-popover2.js +5 -5
  14. package/dist/esm/loader.js +1 -1
  15. package/dist/esm/swirl-components.js +1 -1
  16. package/dist/esm/swirl-file-viewer_7.entry.js +3 -1
  17. package/dist/esm/swirl-popover_2.entry.js +26 -16
  18. package/dist/swirl-components/p-8e9988cc.entry.js +1 -0
  19. package/dist/swirl-components/{p-405aa8bd.entry.js → p-9097097a.entry.js} +1 -1
  20. package/dist/swirl-components/swirl-components.esm.js +1 -1
  21. package/dist/types/components/swirl-popover/swirl-popover.d.ts +2 -2
  22. package/dist/types/components/swirl-popover-trigger/swirl-popover-trigger.d.ts +3 -0
  23. package/dist/types/components.d.ts +4 -2
  24. package/package.json +1 -1
  25. package/vscode-data.json +4 -0
  26. package/dist/swirl-components/p-679fd8e4.entry.js +0 -1
@@ -143,7 +143,9 @@ export class SwirlFileViewerPdf {
143
143
  if (Boolean(this.doc)) {
144
144
  this.doc.destroy();
145
145
  }
146
- this.doc = await getDocument(this.file).promise;
146
+ // Don't remove the isEvalSupported property. https://github.com/advisories/GHSA-wgrm-67xf-hhpq
147
+ this.doc = await getDocument({ isEvalSupported: false, url: this.file })
148
+ .promise;
147
149
  const pages = [];
148
150
  for (let i = 1; i <= this.doc.numPages; i++) {
149
151
  pages.push(this.doc.getPage(i));
@@ -123,7 +123,7 @@ export class SwirlPopover {
123
123
  * Close the popover.
124
124
  * @returns
125
125
  */
126
- async close() {
126
+ async close(disableFocus) {
127
127
  if (this.closing || !this.active) {
128
128
  return;
129
129
  }
@@ -138,7 +138,7 @@ export class SwirlPopover {
138
138
  this.updateTriggerAttributes();
139
139
  }, 150);
140
140
  this.unlockBodyScroll();
141
- if (this.returnFocusToTrigger) {
141
+ if (this.returnFocusToTrigger && !disableFocus) {
142
142
  this.getNativeTriggerElement()?.focus();
143
143
  }
144
144
  }
@@ -146,7 +146,7 @@ export class SwirlPopover {
146
146
  * Open the popover.
147
147
  * @returns
148
148
  */
149
- async open(triggerEl) {
149
+ async open(triggerEl, disableFocus) {
150
150
  this.triggerEl = triggerEl || this.triggerEl;
151
151
  if (this.active || !Boolean(this.triggerEl)) {
152
152
  return;
@@ -158,10 +158,10 @@ export class SwirlPopover {
158
158
  requestAnimationFrame(async () => {
159
159
  await this.reposition();
160
160
  this.popoverOpen.emit({ position: this.position });
161
- if (focusableChildren.length > 0) {
161
+ if (focusableChildren.length > 0 && !disableFocus) {
162
162
  focusableChildren[0].focus();
163
163
  }
164
- else {
164
+ else if (!disableFocus) {
165
165
  this.contentContainer.focus();
166
166
  }
167
167
  if (this.disableAutoUpdate) {
@@ -586,8 +586,11 @@ export class SwirlPopover {
586
586
  return {
587
587
  "close": {
588
588
  "complexType": {
589
- "signature": "() => Promise<void>",
590
- "parameters": [],
589
+ "signature": "(disableFocus?: boolean) => Promise<void>",
590
+ "parameters": [{
591
+ "tags": [],
592
+ "text": ""
593
+ }],
591
594
  "references": {
592
595
  "Promise": {
593
596
  "location": "global"
@@ -605,10 +608,13 @@ export class SwirlPopover {
605
608
  },
606
609
  "open": {
607
610
  "complexType": {
608
- "signature": "(triggerEl?: HTMLElement) => Promise<void>",
611
+ "signature": "(triggerEl?: HTMLElement, disableFocus?: boolean) => Promise<void>",
609
612
  "parameters": [{
610
613
  "tags": [],
611
614
  "text": ""
615
+ }, {
616
+ "tags": [],
617
+ "text": ""
612
618
  }],
613
619
  "references": {
614
620
  "Promise": {
@@ -1,19 +1,28 @@
1
1
  import { h, Host } from "@stencil/core";
2
2
  export class SwirlPopoverTrigger {
3
3
  constructor() {
4
- this.onClick = () => {
5
- const popoverEl = this.getPopoverEl();
6
- if (!Boolean(popoverEl)) {
4
+ this.onMouseenter = () => {
5
+ if (!this.triggerOnHover)
7
6
  return;
8
- }
9
- if (this.isPopoverOpen()) {
10
- popoverEl.close();
11
- return;
12
- }
7
+ const popoverEl = this.getPopoverEl();
13
8
  const triggerEl = this.getTriggerEl();
14
- if (!Boolean(triggerEl)) {
9
+ popoverEl.open(triggerEl, true);
10
+ popoverEl.addEventListener("popoverOpen", () => {
11
+ this.updateTriggerElAriaAttributes(true);
12
+ }, { once: true });
13
+ popoverEl.addEventListener("popoverClose", () => {
14
+ this.updateTriggerElAriaAttributes(false);
15
+ }, { once: true });
16
+ };
17
+ this.onMouseleave = () => {
18
+ if (!this.triggerOnHover)
15
19
  return;
16
- }
20
+ const popoverEl = this.getPopoverEl();
21
+ popoverEl.close(true);
22
+ };
23
+ this.onClick = () => {
24
+ const popoverEl = this.getPopoverEl();
25
+ const triggerEl = this.getTriggerEl();
17
26
  popoverEl.open(triggerEl);
18
27
  popoverEl.addEventListener("popoverOpen", () => {
19
28
  this.updateTriggerElAriaAttributes(true);
@@ -48,6 +57,7 @@ export class SwirlPopoverTrigger {
48
57
  this.parentScrollContainer = undefined;
49
58
  this.setAriaAttributes = true;
50
59
  this.swirlPopover = undefined;
60
+ this.triggerOnHover = false;
51
61
  }
52
62
  componentDidLoad() {
53
63
  this.updateTriggerElAriaAttributes();
@@ -92,7 +102,7 @@ export class SwirlPopoverTrigger {
92
102
  return isActive;
93
103
  }
94
104
  render() {
95
- return (h(Host, { onClick: this.onClick }, h("slot", null)));
105
+ return (h(Host, { onClick: this.onClick, onMouseenter: this.onMouseenter, onMouseleave: this.onMouseleave }, h("slot", null)));
96
106
  }
97
107
  static get is() { return "swirl-popover-trigger"; }
98
108
  static get encapsulation() { return "scoped"; }
@@ -183,6 +193,24 @@ export class SwirlPopoverTrigger {
183
193
  },
184
194
  "attribute": "swirl-popover",
185
195
  "reflect": false
196
+ },
197
+ "triggerOnHover": {
198
+ "type": "boolean",
199
+ "mutable": false,
200
+ "complexType": {
201
+ "original": "boolean",
202
+ "resolved": "boolean",
203
+ "references": {}
204
+ },
205
+ "required": false,
206
+ "optional": true,
207
+ "docs": {
208
+ "tags": [],
209
+ "text": ""
210
+ },
211
+ "attribute": "trigger-on-hover",
212
+ "reflect": false,
213
+ "defaultValue": "false"
186
214
  }
187
215
  };
188
216
  }