@flexilla/dismissible 2.0.8 → 2.0.10
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 +62 -37
- package/dist/dismissible.umd.cjs +1 -1
- package/package.json +7 -4
package/dist/dismissible.js
CHANGED
|
@@ -1,69 +1,93 @@
|
|
|
1
|
-
var
|
|
2
|
-
var
|
|
3
|
-
var
|
|
4
|
-
const
|
|
5
|
-
element:
|
|
1
|
+
var u = Object.defineProperty;
|
|
2
|
+
var E = (t, e, s) => e in t ? u(t, e, { enumerable: !0, configurable: !0, writable: !0, value: s }) : t[e] = s;
|
|
3
|
+
var n = (t, e, s) => E(t, typeof e != "symbol" ? e + "" : e, s);
|
|
4
|
+
const f = (t, e = document.body) => e.querySelector(t), c = (t, e = document.body) => Array.from(e.querySelectorAll(t)), w = ({
|
|
5
|
+
element: t,
|
|
6
6
|
callback: e,
|
|
7
|
-
type:
|
|
8
|
-
keysCheck:
|
|
7
|
+
type: s,
|
|
8
|
+
keysCheck: i
|
|
9
9
|
}) => {
|
|
10
|
-
const l = getComputedStyle(
|
|
11
|
-
if (
|
|
12
|
-
const d = "transitionend",
|
|
13
|
-
|
|
10
|
+
const l = getComputedStyle(t), a = l.transition;
|
|
11
|
+
if (a !== "none" && a !== "" && !i.includes(a)) {
|
|
12
|
+
const d = "transitionend", r = () => {
|
|
13
|
+
t.removeEventListener(d, r), e();
|
|
14
14
|
};
|
|
15
|
-
|
|
15
|
+
t.addEventListener(d, r, { once: !0 });
|
|
16
16
|
} else
|
|
17
17
|
e();
|
|
18
|
-
},
|
|
19
|
-
element:
|
|
18
|
+
}, h = ({
|
|
19
|
+
element: t,
|
|
20
20
|
callback: e
|
|
21
21
|
}) => {
|
|
22
|
-
|
|
23
|
-
element:
|
|
22
|
+
w({
|
|
23
|
+
element: t,
|
|
24
24
|
callback: e,
|
|
25
25
|
type: "transition",
|
|
26
26
|
keysCheck: ["all 0s ease 0s", "all"]
|
|
27
27
|
});
|
|
28
|
-
}
|
|
28
|
+
};
|
|
29
|
+
class o {
|
|
30
|
+
static initGlobalRegistry() {
|
|
31
|
+
window.$flexillaInstances || (window.$flexillaInstances = {});
|
|
32
|
+
}
|
|
33
|
+
static register(e, s, i) {
|
|
34
|
+
return this.initGlobalRegistry(), window.$flexillaInstances[e] || (window.$flexillaInstances[e] = []), this.getInstance(e, s) || (window.$flexillaInstances[e].push({ element: s, instance: i }), i);
|
|
35
|
+
}
|
|
36
|
+
static getInstance(e, s) {
|
|
37
|
+
var i, l;
|
|
38
|
+
return this.initGlobalRegistry(), (l = (i = window.$flexillaInstances[e]) == null ? void 0 : i.find(
|
|
39
|
+
(a) => a.element === s
|
|
40
|
+
)) == null ? void 0 : l.instance;
|
|
41
|
+
}
|
|
42
|
+
static removeInstance(e, s) {
|
|
43
|
+
this.initGlobalRegistry(), window.$flexillaInstances[e] && (window.$flexillaInstances[e] = window.$flexillaInstances[e].filter(
|
|
44
|
+
(i) => i.element !== s
|
|
45
|
+
));
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
const m = class m {
|
|
29
49
|
/**
|
|
30
50
|
* Dismissible Component
|
|
31
51
|
* @param dismissible
|
|
32
52
|
* @param action
|
|
33
53
|
* @param onDissmiss
|
|
34
54
|
*/
|
|
35
|
-
constructor(e,
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
55
|
+
constructor(e, s, i) {
|
|
56
|
+
n(this, "dismissibleElement");
|
|
57
|
+
n(this, "dismissButtons");
|
|
58
|
+
n(this, "action");
|
|
59
|
+
n(this, "onDismiss");
|
|
60
|
+
n(this, "hideFromScreen", () => {
|
|
41
61
|
var e;
|
|
42
62
|
this.dismissibleElement.style.display = "none", (e = this.onDismiss) == null || e.call(this);
|
|
43
63
|
});
|
|
44
|
-
|
|
45
|
-
var e,
|
|
46
|
-
(e = this.onDismiss) == null || e.call(this), (
|
|
64
|
+
n(this, "removeFromDom", () => {
|
|
65
|
+
var e, s;
|
|
66
|
+
(e = this.onDismiss) == null || e.call(this), (s = this.dismissibleElement.parentElement) == null || s.removeChild(this.dismissibleElement);
|
|
47
67
|
});
|
|
48
|
-
|
|
68
|
+
n(this, "dismiss", () => {
|
|
49
69
|
switch (this.action) {
|
|
50
70
|
case "hide-from-screen":
|
|
51
|
-
this.dismissibleElement.setAttribute("aria-hidden", "true"), this.dismissibleElement.setAttribute("data-state", "hidden"),
|
|
71
|
+
this.dismissibleElement.setAttribute("aria-hidden", "true"), this.dismissibleElement.setAttribute("data-state", "hidden"), h({
|
|
52
72
|
element: this.dismissibleElement,
|
|
53
73
|
callback: this.hideFromScreen
|
|
54
74
|
});
|
|
55
75
|
break;
|
|
56
76
|
default:
|
|
57
|
-
this.dismissibleElement.setAttribute("data-hidden", ""), this.dismissibleElement.setAttribute("aria-hidden", "true"), this.dismissibleElement.setAttribute("data-state", "removed"),
|
|
77
|
+
this.dismissibleElement.setAttribute("data-hidden", ""), this.dismissibleElement.setAttribute("aria-hidden", "true"), this.dismissibleElement.setAttribute("data-state", "removed"), h({
|
|
58
78
|
element: this.dismissibleElement,
|
|
59
79
|
callback: this.removeFromDom
|
|
60
80
|
});
|
|
61
81
|
break;
|
|
62
82
|
}
|
|
63
83
|
});
|
|
64
|
-
const l = typeof e == "string" ?
|
|
84
|
+
const l = typeof e == "string" ? f(e, document.body) : e;
|
|
65
85
|
if (!(l instanceof HTMLElement)) throw new Error("Provided Element not a valid HTMLElement");
|
|
66
|
-
this.dismissibleElement = l, this.action =
|
|
86
|
+
this.dismissibleElement = l, this.action = s || this.dismissibleElement.dataset.action || "hide-from-screen", this.dismissButtons = c("[data-dismiss-btn]", this.dismissibleElement), this.onDismiss = i, this.dismissibleElement.setAttribute("aria-hidden", "false");
|
|
87
|
+
const a = o.getInstance("dismissible", this.dismissibleElement);
|
|
88
|
+
if (a)
|
|
89
|
+
return a;
|
|
90
|
+
this.setupDismissible(), o.register("dismissible", this.dismissibleElement, this);
|
|
67
91
|
}
|
|
68
92
|
setupDismissible() {
|
|
69
93
|
for (const e of this.dismissButtons)
|
|
@@ -75,11 +99,12 @@ const E = (s, e = document.body) => e.querySelector(s), r = (s, e = document.bod
|
|
|
75
99
|
cleanup() {
|
|
76
100
|
for (const e of this.dismissButtons)
|
|
77
101
|
e.removeEventListener("click", this.dismiss);
|
|
102
|
+
o.removeInstance("dismissible", this.dismissibleElement);
|
|
78
103
|
}
|
|
79
104
|
};
|
|
80
|
-
|
|
81
|
-
const
|
|
82
|
-
for (const
|
|
105
|
+
n(m, "autoInit", (e = "[data-fx-dismissible]") => {
|
|
106
|
+
const s = c(e);
|
|
107
|
+
for (const i of s) new m(i);
|
|
83
108
|
}), /**
|
|
84
109
|
*
|
|
85
110
|
* @param dismissible
|
|
@@ -87,8 +112,8 @@ i(m, "autoInit", (e = "[data-fx-dismissible]") => {
|
|
|
87
112
|
* @param onDissmiss
|
|
88
113
|
* @returns
|
|
89
114
|
*/
|
|
90
|
-
|
|
91
|
-
let
|
|
115
|
+
n(m, "init", (e, s, i) => new m(e, s, i));
|
|
116
|
+
let b = m;
|
|
92
117
|
export {
|
|
93
|
-
|
|
118
|
+
b as Dismissible
|
|
94
119
|
};
|
package/dist/dismissible.umd.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(n,t){typeof exports=="object"&&typeof module<"u"?t(exports):typeof define=="function"&&define.amd?define(["exports"],t):(n=typeof globalThis<"u"?globalThis:n||self,t(n["@flexilla/dismissible"]={}))})(this,function(n){"use strict";var w=Object.defineProperty;var y=(n,t,m)=>t in n?w(n,t,{enumerable:!0,configurable:!0,writable:!0,value:m}):n[t]=m;var o=(n,t,m)=>y(n,typeof t!="symbol"?t+"":t,m);const t=(l,e=document.body)=>e.querySelector(l),m=(l,e=document.body)=>Array.from(e.querySelectorAll(l)),E=({element:l,callback:e,type:s,keysCheck:i})=>{const a=getComputedStyle(l),d=a.transition;if(d!=="none"&&d!==""&&!i.includes(d)){const u="transitionend",f=()=>{l.removeEventListener(u,f),e()};l.addEventListener(u,f,{once:!0})}else e()},b=({element:l,callback:e})=>{E({element:l,callback:e,type:"transition",keysCheck:["all 0s ease 0s","all"]})};class c{static initGlobalRegistry(){window.$flexillaInstances||(window.$flexillaInstances={})}static register(e,s,i){return this.initGlobalRegistry(),window.$flexillaInstances[e]||(window.$flexillaInstances[e]=[]),this.getInstance(e,s)||(window.$flexillaInstances[e].push({element:s,instance:i}),i)}static getInstance(e,s){var i,a;return this.initGlobalRegistry(),(a=(i=window.$flexillaInstances[e])==null?void 0:i.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(i=>i.element!==s))}}const r=class r{constructor(e,s,i){o(this,"dismissibleElement");o(this,"dismissButtons");o(this,"action");o(this,"onDismiss");o(this,"hideFromScreen",()=>{var e;this.dismissibleElement.style.display="none",(e=this.onDismiss)==null||e.call(this)});o(this,"removeFromDom",()=>{var e,s;(e=this.onDismiss)==null||e.call(this),(s=this.dismissibleElement.parentElement)==null||s.removeChild(this.dismissibleElement)});o(this,"dismiss",()=>{switch(this.action){case"hide-from-screen":this.dismissibleElement.setAttribute("aria-hidden","true"),this.dismissibleElement.setAttribute("data-state","hidden"),b({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"),b({element:this.dismissibleElement,callback:this.removeFromDom});break}});const a=typeof e=="string"?t(e,document.body):e;if(!(a instanceof HTMLElement))throw new Error("Provided Element not a valid HTMLElement");this.dismissibleElement=a,this.action=s||this.dismissibleElement.dataset.action||"hide-from-screen",this.dismissButtons=m("[data-dismiss-btn]",this.dismissibleElement),this.onDismiss=i,this.dismissibleElement.setAttribute("aria-hidden","false");const d=c.getInstance("dismissible",this.dismissibleElement);if(d)return d;this.setupDismissible(),c.register("dismissible",this.dismissibleElement,this)}setupDismissible(){for(const e of this.dismissButtons)e.addEventListener("click",this.dismiss)}cleanup(){for(const e of this.dismissButtons)e.removeEventListener("click",this.dismiss);c.removeInstance("dismissible",this.dismissibleElement)}};o(r,"autoInit",(e="[data-fx-dismissible]")=>{const s=m(e);for(const i of s)new r(i)}),o(r,"init",(e,s,i)=>new r(e,s,i));let h=r;n.Dismissible=h,Object.defineProperty(n,Symbol.toStringTag,{value:"Module"})});
|
package/package.json
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@flexilla/dismissible",
|
|
3
3
|
"private": false,
|
|
4
|
-
"version": "2.0.
|
|
4
|
+
"version": "2.0.10",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"description": "A lightweight JavaScript component that automatically makes a component dismissible for easy user interaction.",
|
|
7
7
|
"publishConfig": {
|
|
8
8
|
"access": "public"
|
|
9
9
|
},
|
|
10
|
-
"main": "./dist/dismissible.umd.
|
|
10
|
+
"main": "./dist/dismissible.umd.cjs",
|
|
11
11
|
"module": "./dist/dismissible.js",
|
|
12
12
|
"types": "./dist/index.d.ts",
|
|
13
13
|
"exports": {
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
},
|
|
19
19
|
"require": {
|
|
20
20
|
"types": "./dist/index.d.ts",
|
|
21
|
-
"default": "./dist/dismissible.umd.
|
|
21
|
+
"default": "./dist/dismissible.umd.cjs"
|
|
22
22
|
}
|
|
23
23
|
}
|
|
24
24
|
},
|
|
@@ -61,5 +61,8 @@
|
|
|
61
61
|
},
|
|
62
62
|
"license": "MIT",
|
|
63
63
|
"author": "johnkat-mj",
|
|
64
|
-
"
|
|
64
|
+
"dependencies": {
|
|
65
|
+
"@flexilla/manager": "^0.0.0"
|
|
66
|
+
},
|
|
67
|
+
"gitHead": "4140779a05fd5faf443de9d97ce4ba2a99b2ed37"
|
|
65
68
|
}
|