@flexilla/dismissible 2.0.12 → 2.0.13
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/dist/dismissible.js +26 -20
- package/dist/dismissible.umd.cjs +1 -1
- package/package.json +3 -3
package/dist/dismissible.js
CHANGED
|
@@ -7,12 +7,12 @@ const f = (i, e = document.body) => e.querySelector(i), d = (i, e = document.bod
|
|
|
7
7
|
type: s,
|
|
8
8
|
keysCheck: n
|
|
9
9
|
}) => {
|
|
10
|
-
const l = getComputedStyle(i),
|
|
11
|
-
if (
|
|
12
|
-
const
|
|
13
|
-
i.removeEventListener(
|
|
10
|
+
const l = getComputedStyle(i), a = l.transition;
|
|
11
|
+
if (a !== "none" && a !== "" && !n.includes(a)) {
|
|
12
|
+
const r = "transitionend", h = () => {
|
|
13
|
+
i.removeEventListener(r, h), e();
|
|
14
14
|
};
|
|
15
|
-
i.addEventListener(
|
|
15
|
+
i.addEventListener(r, h, { once: !0 });
|
|
16
16
|
} else
|
|
17
17
|
e();
|
|
18
18
|
}, m = ({
|
|
@@ -26,7 +26,7 @@ const f = (i, e = document.body) => e.querySelector(i), d = (i, e = document.bod
|
|
|
26
26
|
keysCheck: ["all 0s ease 0s", "all"]
|
|
27
27
|
});
|
|
28
28
|
};
|
|
29
|
-
class
|
|
29
|
+
class c {
|
|
30
30
|
static initGlobalRegistry() {
|
|
31
31
|
window.$flexillaInstances || (window.$flexillaInstances = {});
|
|
32
32
|
}
|
|
@@ -36,7 +36,7 @@ class h {
|
|
|
36
36
|
static getInstance(e, s) {
|
|
37
37
|
var n, l;
|
|
38
38
|
return this.initGlobalRegistry(), (l = (n = window.$flexillaInstances[e]) == null ? void 0 : n.find(
|
|
39
|
-
(
|
|
39
|
+
(a) => a.element === s
|
|
40
40
|
)) == null ? void 0 : l.instance;
|
|
41
41
|
}
|
|
42
42
|
static removeInstance(e, s) {
|
|
@@ -44,8 +44,14 @@ class h {
|
|
|
44
44
|
(n) => n.element !== s
|
|
45
45
|
));
|
|
46
46
|
}
|
|
47
|
+
static setup(e) {
|
|
48
|
+
e.setAttribute("data-fx-component", "fx");
|
|
49
|
+
}
|
|
50
|
+
static initialized(e) {
|
|
51
|
+
e.setAttribute("data-component-initialized", "initialized");
|
|
52
|
+
}
|
|
47
53
|
}
|
|
48
|
-
const
|
|
54
|
+
const o = class o {
|
|
49
55
|
// Store original display style
|
|
50
56
|
/**
|
|
51
57
|
* Dismissible Component
|
|
@@ -114,13 +120,13 @@ const r = class r {
|
|
|
114
120
|
break;
|
|
115
121
|
}
|
|
116
122
|
});
|
|
117
|
-
const
|
|
118
|
-
if (!(
|
|
119
|
-
this.dismissibleElement =
|
|
120
|
-
const
|
|
121
|
-
if (
|
|
122
|
-
return
|
|
123
|
-
this.setupDismissible(),
|
|
123
|
+
const a = typeof e == "string" ? f(e, document.body) : e;
|
|
124
|
+
if (!(a instanceof HTMLElement)) throw new Error("Provided Element not a valid HTMLElement");
|
|
125
|
+
this.dismissibleElement = a, this.action = s || this.dismissibleElement.dataset.action || "hide-from-screen", this.dismissButtons = d("[data-dismiss-btn]", this.dismissibleElement), this.restoreButtons = d("[data-restore-btn]", document.body), this.onDismiss = n, this.onRestore = l, this.parentElement = this.dismissibleElement.parentElement, this.previousSibling = this.dismissibleElement.previousSibling, this.originalDisplay = this.dismissibleElement.style.display || getComputedStyle(this.dismissibleElement).display, this.dismissibleElement.setAttribute("aria-hidden", "false");
|
|
126
|
+
const r = c.getInstance("dismissible", this.dismissibleElement);
|
|
127
|
+
if (r)
|
|
128
|
+
return r;
|
|
129
|
+
this.setupDismissible(), c.register("dismissible", this.dismissibleElement, this);
|
|
124
130
|
}
|
|
125
131
|
setupDismissible() {
|
|
126
132
|
for (const e of this.dismissButtons)
|
|
@@ -136,12 +142,12 @@ const r = class r {
|
|
|
136
142
|
e.removeEventListener("click", this.dismiss);
|
|
137
143
|
for (const e of this.restoreButtons)
|
|
138
144
|
e.removeEventListener("click", this.restore);
|
|
139
|
-
|
|
145
|
+
c.removeInstance("dismissible", this.dismissibleElement);
|
|
140
146
|
}
|
|
141
147
|
};
|
|
142
|
-
t(
|
|
148
|
+
t(o, "autoInit", (e = "[data-fx-dismissible]") => {
|
|
143
149
|
const s = d(e);
|
|
144
|
-
for (const n of s) new
|
|
150
|
+
for (const n of s) new o(n);
|
|
145
151
|
}), /**
|
|
146
152
|
*
|
|
147
153
|
* @param dismissible
|
|
@@ -150,8 +156,8 @@ t(r, "autoInit", (e = "[data-fx-dismissible]") => {
|
|
|
150
156
|
* @param onRestore
|
|
151
157
|
* @returns
|
|
152
158
|
*/
|
|
153
|
-
t(
|
|
154
|
-
let b =
|
|
159
|
+
t(o, "init", (e, s, n, l) => new o(e, s, n, l));
|
|
160
|
+
let b = o;
|
|
155
161
|
export {
|
|
156
162
|
b as Dismissible
|
|
157
163
|
};
|
package/dist/dismissible.umd.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(l,n){typeof exports=="object"&&typeof module<"u"?n(exports):typeof define=="function"&&define.amd?define(["exports"],n):(l=typeof globalThis<"u"?globalThis:l||self,n(l["@flexilla/dismissible"]={}))})(this,function(l){"use strict";var p=Object.defineProperty;var y=(l,n,
|
|
1
|
+
(function(l,n){typeof exports=="object"&&typeof module<"u"?n(exports):typeof define=="function"&&define.amd?define(["exports"],n):(l=typeof globalThis<"u"?globalThis:l||self,n(l["@flexilla/dismissible"]={}))})(this,function(l){"use strict";var p=Object.defineProperty;var y=(l,n,r)=>n in l?p(l,n,{enumerable:!0,configurable:!0,writable:!0,value:r}):l[n]=r;var i=(l,n,r)=>y(l,typeof n!="symbol"?n+"":n,r);const n=(o,e=document.body)=>e.querySelector(o),r=(o,e=document.body)=>Array.from(e.querySelectorAll(o)),E=({element:o,callback:e,type:s,keysCheck:t})=>{const a=getComputedStyle(o),d=a.transition;if(d!=="none"&&d!==""&&!t.includes(d)){const c="transitionend",f=()=>{o.removeEventListener(c,f),e()};o.addEventListener(c,f,{once:!0})}else e()},h=({element:o,callback:e})=>{E({element:o,callback:e,type:"transition",keysCheck:["all 0s ease 0s","all"]})};class b{static initGlobalRegistry(){window.$flexillaInstances||(window.$flexillaInstances={})}static register(e,s,t){return this.initGlobalRegistry(),window.$flexillaInstances[e]||(window.$flexillaInstances[e]=[]),this.getInstance(e,s)||(window.$flexillaInstances[e].push({element:s,instance:t}),t)}static getInstance(e,s){var t,a;return this.initGlobalRegistry(),(a=(t=window.$flexillaInstances[e])==null?void 0:t.find(d=>d.element===s))==null?void 0:a.instance}static removeInstance(e,s){this.initGlobalRegistry(),window.$flexillaInstances[e]&&(window.$flexillaInstances[e]=window.$flexillaInstances[e].filter(t=>t.element!==s))}static setup(e){e.setAttribute("data-fx-component","fx")}static initialized(e){e.setAttribute("data-component-initialized","initialized")}}const m=class m{constructor(e,s,t,a){i(this,"dismissibleElement");i(this,"dismissButtons");i(this,"restoreButtons");i(this,"action");i(this,"onDismiss");i(this,"onRestore");i(this,"parentElement");i(this,"previousSibling");i(this,"originalDisplay");i(this,"hideFromScreen",()=>{var e;this.dismissibleElement.style.display="none",(e=this.onDismiss)==null||e.call(this)});i(this,"removeFromDom",()=>{var e,s;(e=this.onDismiss)==null||e.call(this),(s=this.dismissibleElement.parentElement)==null||s.removeChild(this.dismissibleElement)});i(this,"showOnScreen",()=>{var e;this.dismissibleElement.style.display=this.originalDisplay,this.dismissibleElement.setAttribute("aria-hidden","false"),this.dismissibleElement.setAttribute("data-state","visible"),(e=this.onRestore)==null||e.call(this)});i(this,"restoreToDom",()=>{var e;this.parentElement&&(this.previousSibling&&this.previousSibling.nextSibling?this.parentElement.insertBefore(this.dismissibleElement,this.previousSibling.nextSibling):this.parentElement.appendChild(this.dismissibleElement),this.dismissibleElement.setAttribute("aria-hidden","false"),this.dismissibleElement.removeAttribute("data-hidden"),this.dismissibleElement.setAttribute("data-state","visible"),(e=this.onRestore)==null||e.call(this))});i(this,"dismiss",()=>{switch(this.action){case"hide-from-screen":this.dismissibleElement.setAttribute("aria-hidden","true"),this.dismissibleElement.setAttribute("data-state","hidden"),h({element:this.dismissibleElement,callback:this.hideFromScreen});break;default:this.dismissibleElement.setAttribute("data-hidden",""),this.dismissibleElement.setAttribute("aria-hidden","true"),this.dismissibleElement.setAttribute("data-state","removed"),h({element:this.dismissibleElement,callback:this.removeFromDom});break}});i(this,"restore",()=>{switch(this.action){case"hide-from-screen":h({element:this.dismissibleElement,callback:this.showOnScreen});break;default:h({element:this.dismissibleElement,callback:this.restoreToDom});break}});const d=typeof e=="string"?n(e,document.body):e;if(!(d instanceof HTMLElement))throw new Error("Provided Element not a valid HTMLElement");this.dismissibleElement=d,this.action=s||this.dismissibleElement.dataset.action||"hide-from-screen",this.dismissButtons=r("[data-dismiss-btn]",this.dismissibleElement),this.restoreButtons=r("[data-restore-btn]",document.body),this.onDismiss=t,this.onRestore=a,this.parentElement=this.dismissibleElement.parentElement,this.previousSibling=this.dismissibleElement.previousSibling,this.originalDisplay=this.dismissibleElement.style.display||getComputedStyle(this.dismissibleElement).display,this.dismissibleElement.setAttribute("aria-hidden","false");const c=b.getInstance("dismissible",this.dismissibleElement);if(c)return c;this.setupDismissible(),b.register("dismissible",this.dismissibleElement,this)}setupDismissible(){for(const e of this.dismissButtons)e.addEventListener("click",this.dismiss);for(const e of this.restoreButtons)e.addEventListener("click",this.restore)}cleanup(){for(const e of this.dismissButtons)e.removeEventListener("click",this.dismiss);for(const e of this.restoreButtons)e.removeEventListener("click",this.restore);b.removeInstance("dismissible",this.dismissibleElement)}};i(m,"autoInit",(e="[data-fx-dismissible]")=>{const s=r(e);for(const t of s)new m(t)}),i(m,"init",(e,s,t,a)=>new m(e,s,t,a));let u=m;l.Dismissible=u,Object.defineProperty(l,Symbol.toStringTag,{value:"Module"})});
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@flexilla/dismissible",
|
|
3
3
|
"private": false,
|
|
4
|
-
"version": "2.0.
|
|
4
|
+
"version": "2.0.13",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"description": "A lightweight JavaScript component that automatically makes a component dismissible for easy user interaction.",
|
|
7
7
|
"publishConfig": {
|
|
@@ -62,7 +62,7 @@
|
|
|
62
62
|
"license": "MIT",
|
|
63
63
|
"author": "johnkat-mj",
|
|
64
64
|
"dependencies": {
|
|
65
|
-
"@flexilla/manager": "^0.
|
|
65
|
+
"@flexilla/manager": "^0.2.0"
|
|
66
66
|
},
|
|
67
|
-
"gitHead": "
|
|
67
|
+
"gitHead": "571385edbe8bad9a5cd0de39af00185455acb50a"
|
|
68
68
|
}
|