Socket
Socket
Sign inDemoInstall

@spectrum-web-components/tooltip

Package Overview
Dependencies
25
Maintainers
7
Versions
236
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 0.42.2 to 0.42.3

test/tooltip-memory.test.js

2

custom-elements.json

@@ -272,3 +272,3 @@ {

"type": {
"text": "HTMLElement"
"text": "HTMLElement | null"
},

@@ -275,0 +275,0 @@ "privacy": "private",

{
"name": "@spectrum-web-components/tooltip",
"version": "0.42.2",
"version": "0.42.3",
"publishConfig": {

@@ -64,6 +64,6 @@ "access": "public"

"dependencies": {
"@spectrum-web-components/base": "^0.42.2",
"@spectrum-web-components/overlay": "^0.42.2",
"@spectrum-web-components/reactive-controllers": "^0.42.2",
"@spectrum-web-components/shared": "^0.42.2"
"@spectrum-web-components/base": "^0.42.3",
"@spectrum-web-components/overlay": "^0.42.3",
"@spectrum-web-components/reactive-controllers": "^0.42.3",
"@spectrum-web-components/shared": "^0.42.3"
},

@@ -79,3 +79,3 @@ "devDependencies": {

],
"gitHead": "e19af30387032608baaa88c6a17c2ee50103a7c5"
"gitHead": "a03edce4f21f232f1705d8eb222e6e5436cad4c3"
}

@@ -143,4 +143,4 @@ "use strict";

let root = start.getRootNode();
if (true) {
if (root === document) {
if (root === document) {
if (true) {
window.__swc.warn(

@@ -154,4 +154,4 @@ this,

);
return root;
}
return null;
}

@@ -163,4 +163,4 @@ let triggerElement = start.parentElement || root.host || /* c8 ignore next 1 */

root = start.getRootNode();
if (true) {
if (root === document) {
if (root === document) {
if (true) {
window.__swc.warn(

@@ -174,4 +174,4 @@ this,

);
return root;
}
return null;
}

@@ -178,0 +178,0 @@ triggerElement = start.parentElement || root.host || /* c8 ignore next 1 */

@@ -1,2 +0,2 @@

"use strict";var c=Object.defineProperty;var m=Object.getOwnPropertyDescriptor;var o=(r,s,e,n)=>{for(var t=n>1?void 0:n?m(s,e):s,i=r.length-1,l;i>=0;i--)(l=r[i])&&(t=(n?l(s,e,t):l(t))||t);return n&&t&&c(s,e,t),t};import{html as p,SpectrumElement as h}from"@spectrum-web-components/base";import{property as a,query as d}from"@spectrum-web-components/base/src/decorators.js";import{ifDefined as u}from"@spectrum-web-components/base/src/directives.js";import v from"./tooltip.css.js";import{focusableSelector as b}from"@spectrum-web-components/shared/src/focusable-selectors.js";import{DependencyManagerController as f}from"@spectrum-web-components/reactive-controllers/src/DependencyManger.js";class g extends HTMLElement{constructor(){super();this._open=!1;this._placement="top";this.addEventListener("sp-opened",this.redispatchEvent),this.addEventListener("sp-closed",this.redispatchEvent)}redispatchEvent(e){e.stopPropagation(),this.tooltip.dispatchEvent(new CustomEvent(e.type,{bubbles:e.bubbles,composed:e.composed,detail:e.detail}))}get tooltip(){return this.getRootNode().host}static get observedAttributes(){return["open","placement"]}attributeChangedCallback(e,n,t){switch(e){case"open":this.open=t!==null;break;case"placement":this.placement=t;break}}set open(e){this._open=e;const{tooltip:n}=this;n&&(n.open=e)}get open(){return this._open}set placement(e){this._placement=e;const{tooltip:n}=this;n&&(n.placement=e)}get placement(){return this._placement}get tipElement(){return this.tooltip.tipElement}}customElements.get("sp-tooltip-openable")||customElements.define("sp-tooltip-openable",g);export class Tooltip extends h{constructor(){super(...arguments);this.delayed=!1;this.dependencyManager=new f(this);this.disabled=!1;this.selfManaged=!1;this.offset=0;this.open=!1;this._variant="";this.handleOpenOverlay=()=>{this.open=!0};this.handleCloseOverlay=()=>{this.open=!1}}static get styles(){return[v]}get variant(){return this._variant}set variant(e){if(e!==this.variant){if(["info","positive","negative"].includes(e)){this.setAttribute("variant",e),this._variant=e;return}this.removeAttribute("variant"),this._variant=""}}forwardTransitionEvent(e){this.dispatchEvent(new TransitionEvent(e.type,{bubbles:!0,composed:!0,propertyName:e.propertyName}))}get triggerElement(){var i;let e=this.assignedSlot||this,n=e.getRootNode(),t=e.parentElement||n.host||n;for(;!((i=t==null?void 0:t.matches)!=null&&i.call(t,b));)e=t.assignedSlot||t,n=e.getRootNode(),t=e.parentElement||n.host||n;return t}render(){const e=p`
"use strict";var c=Object.defineProperty;var m=Object.getOwnPropertyDescriptor;var o=(r,s,e,t)=>{for(var n=t>1?void 0:t?m(s,e):s,i=r.length-1,l;i>=0;i--)(l=r[i])&&(n=(t?l(s,e,n):l(n))||n);return t&&n&&c(s,e,n),n};import{html as p,SpectrumElement as h}from"@spectrum-web-components/base";import{property as a,query as d}from"@spectrum-web-components/base/src/decorators.js";import{ifDefined as u}from"@spectrum-web-components/base/src/directives.js";import v from"./tooltip.css.js";import{focusableSelector as b}from"@spectrum-web-components/shared/src/focusable-selectors.js";import{DependencyManagerController as f}from"@spectrum-web-components/reactive-controllers/src/DependencyManger.js";class g extends HTMLElement{constructor(){super();this._open=!1;this._placement="top";this.addEventListener("sp-opened",this.redispatchEvent),this.addEventListener("sp-closed",this.redispatchEvent)}redispatchEvent(e){e.stopPropagation(),this.tooltip.dispatchEvent(new CustomEvent(e.type,{bubbles:e.bubbles,composed:e.composed,detail:e.detail}))}get tooltip(){return this.getRootNode().host}static get observedAttributes(){return["open","placement"]}attributeChangedCallback(e,t,n){switch(e){case"open":this.open=n!==null;break;case"placement":this.placement=n;break}}set open(e){this._open=e;const{tooltip:t}=this;t&&(t.open=e)}get open(){return this._open}set placement(e){this._placement=e;const{tooltip:t}=this;t&&(t.placement=e)}get placement(){return this._placement}get tipElement(){return this.tooltip.tipElement}}customElements.get("sp-tooltip-openable")||customElements.define("sp-tooltip-openable",g);export class Tooltip extends h{constructor(){super(...arguments);this.delayed=!1;this.dependencyManager=new f(this);this.disabled=!1;this.selfManaged=!1;this.offset=0;this.open=!1;this._variant="";this.handleOpenOverlay=()=>{this.open=!0};this.handleCloseOverlay=()=>{this.open=!1}}static get styles(){return[v]}get variant(){return this._variant}set variant(e){if(e!==this.variant){if(["info","positive","negative"].includes(e)){this.setAttribute("variant",e),this._variant=e;return}this.removeAttribute("variant"),this._variant=""}}forwardTransitionEvent(e){this.dispatchEvent(new TransitionEvent(e.type,{bubbles:!0,composed:!0,propertyName:e.propertyName}))}get triggerElement(){var i;let e=this.assignedSlot||this,t=e.getRootNode();if(t===document)return null;let n=e.parentElement||t.host||t;for(;!((i=n==null?void 0:n.matches)!=null&&i.call(n,b));){if(e=n.assignedSlot||n,t=e.getRootNode(),t===document)return null;n=e.parentElement||t.host||t}return n}render(){const e=p`
<sp-tooltip-openable

@@ -28,3 +28,3 @@ id="tooltip"

</sp-overlay>
`):e}connectedCallback(){super.connectedCallback(),this.updateComplete.then(()=>{if(!this.selfManaged)return;const e=this.overlayElement;if(e){const n=this.triggerElement;e.triggerElement=n}})}}o([a({type:Boolean})],Tooltip.prototype,"delayed",2),o([a({type:Boolean})],Tooltip.prototype,"disabled",2),o([a({type:Boolean,attribute:"self-managed"})],Tooltip.prototype,"selfManaged",2),o([a({type:Number})],Tooltip.prototype,"offset",2),o([a({type:Boolean,reflect:!0})],Tooltip.prototype,"open",2),o([d("sp-overlay")],Tooltip.prototype,"overlayElement",2),o([a({reflect:!0})],Tooltip.prototype,"placement",2),o([d("#tip")],Tooltip.prototype,"tipElement",2),o([a({type:Number})],Tooltip.prototype,"tipPadding",2),o([a({type:String})],Tooltip.prototype,"variant",1);
`):e}connectedCallback(){super.connectedCallback(),this.updateComplete.then(()=>{if(!this.selfManaged)return;const e=this.overlayElement;if(e){const t=this.triggerElement;e.triggerElement=t}})}}o([a({type:Boolean})],Tooltip.prototype,"delayed",2),o([a({type:Boolean})],Tooltip.prototype,"disabled",2),o([a({type:Boolean,attribute:"self-managed"})],Tooltip.prototype,"selfManaged",2),o([a({type:Number})],Tooltip.prototype,"offset",2),o([a({type:Boolean,reflect:!0})],Tooltip.prototype,"open",2),o([d("sp-overlay")],Tooltip.prototype,"overlayElement",2),o([a({reflect:!0})],Tooltip.prototype,"placement",2),o([d("#tip")],Tooltip.prototype,"tipElement",2),o([a({type:Number})],Tooltip.prototype,"tipPadding",2),o([a({type:String})],Tooltip.prototype,"variant",1);
//# sourceMappingURL=Tooltip.js.map

@@ -12,3 +12,3 @@ "use strict";

import "@spectrum-web-components/button/sp-button.js";
import { stub } from "sinon";
import { spy, stub } from "sinon";
import { testForLitDevWarnings } from "../../../test/testing-helpers.js";

@@ -161,2 +161,30 @@ import { sendMouse } from "../../../test/plugins/browser.js";

});
describe("self-managed", () => {
let documentEventsSpy;
before(() => {
documentEventsSpy = spy(document, "addEventListener");
});
afterEach(() => {
documentEventsSpy.resetHistory();
});
after(() => {
documentEventsSpy.restore();
});
it("does not attach event listeners if no trigger was found", async function() {
var _a;
const el = await fixture(
html`
<sp-tooltip self-managed>Help text.</sp-tooltip>
`
);
await elementUpdated(el);
let calls = documentEventsSpy.callCount;
while (calls) {
calls -= 1;
const call = documentEventsSpy.getCall(calls);
expect(call.args[0]).to.not.equal("pointerenter");
}
expect((_a = el.overlayElement) == null ? void 0 : _a.triggerElement).to.be.null;
});
});
describe("dev mode", () => {

@@ -163,0 +191,0 @@ let consoleWarnStub;

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc