defuss 2.0.16 → 2.1.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.
- package/dist/dom-051FL7DA.cjs +2499 -0
- package/dist/dom-2urZevPa.cjs +2604 -0
- package/dist/dom-3Q6GgiEP.cjs +2386 -0
- package/dist/dom-5yKQMUIF.mjs +2041 -0
- package/dist/dom-6ZLWCL99.mjs +2043 -0
- package/dist/dom-7TUAWNZF.mjs +2620 -0
- package/dist/dom-9gOgXC15.mjs +2530 -0
- package/dist/dom-Ac1HaELT.cjs +2383 -0
- package/dist/dom-B0JKQVLo.mjs +2159 -0
- package/dist/dom-B35D5snD.cjs +2565 -0
- package/dist/dom-B3H4AWT8.cjs +2560 -0
- package/dist/dom-B4SRsxUl.cjs +2560 -0
- package/dist/dom-B6LaR9hr.mjs +2479 -0
- package/dist/dom-B9S2ESUN.mjs +2496 -0
- package/dist/dom-BBt7XE-h.mjs +2634 -0
- package/dist/dom-BCQkRmTA.mjs +2480 -0
- package/dist/dom-BEht0Cox.mjs +2428 -0
- package/dist/dom-BIbibRMj.mjs +2680 -0
- package/dist/dom-BNGg_cbb.mjs +2491 -0
- package/dist/dom-BOSr7iWk.cjs +2706 -0
- package/dist/dom-BQR3Ktxk.mjs +2479 -0
- package/dist/dom-BRy0f7HK.cjs +2714 -0
- package/dist/dom-BZFXy5pV.cjs +2703 -0
- package/dist/dom-B_UvukCH.mjs +2040 -0
- package/dist/dom-B_e7yDzd.cjs +2928 -0
- package/dist/dom-B_lCwk1Q.mjs +2315 -0
- package/dist/dom-Baq533m0.mjs +2857 -0
- package/dist/dom-BcaFBnxf.mjs +2208 -0
- package/dist/dom-BfByzUuR.cjs +2159 -0
- package/dist/dom-BgRqSIRj.mjs +2517 -0
- package/dist/dom-Bm2vH_qI.mjs +2431 -0
- package/dist/dom-BpYh7n5K.cjs +2562 -0
- package/dist/dom-BwxduwV-.mjs +2097 -0
- package/dist/dom-BxFiaTgP.mjs +2169 -0
- package/dist/dom-BycLWyql.mjs +2564 -0
- package/dist/dom-ByuC2gIO.cjs +2598 -0
- package/dist/dom-C0Md-XPg.cjs +2553 -0
- package/dist/dom-C274_6Go.cjs +2556 -0
- package/dist/dom-CEXwGUHT.mjs +2175 -0
- package/dist/dom-CKDuv_GB.cjs +2700 -0
- package/dist/dom-CX9zlNhe.mjs +2492 -0
- package/dist/dom-CbkHOYKY.cjs +2101 -0
- package/dist/dom-CbnDrfq8.mjs +2491 -0
- package/dist/dom-CdE-pVzi.cjs +2102 -0
- package/dist/dom-Cg8xF9s2.mjs +2634 -0
- package/dist/dom-Cgi1LYfG.mjs +2626 -0
- package/dist/dom-Cj-ITpFq.mjs +2312 -0
- package/dist/dom-Cka7SFtU.mjs +2486 -0
- package/dist/dom-CqXRRKMq.cjs +2502 -0
- package/dist/dom-Cvxyn1jX.cjs +2751 -0
- package/dist/dom-CwVNwwYO.mjs +2622 -0
- package/dist/dom-D1h0E-Gl.cjs +2276 -0
- package/dist/dom-D1tJ6iHK.mjs +2208 -0
- package/dist/dom-D3B4oBiG.cjs +2560 -0
- package/dist/dom-D3RFN-wE.cjs +2105 -0
- package/dist/dom-D3kiX0Hd.mjs +2240 -0
- package/dist/dom-D6Z2Nh2a.cjs +2658 -0
- package/dist/dom-D88_i9KL.cjs +2758 -0
- package/dist/dom-D98Bwft7.mjs +2674 -0
- package/dist/dom-DDUT5VJn.cjs +2308 -0
- package/dist/dom-DEyxBtEp.cjs +2386 -0
- package/dist/dom-DFRuG-Zh.cjs +2243 -0
- package/dist/dom-DG8glurk.cjs +2235 -0
- package/dist/dom-DHoO2wC0.cjs +2554 -0
- package/dist/dom-DLelllDB.mjs +2479 -0
- package/dist/dom-DM9F1UXd.cjs +2755 -0
- package/dist/dom-DPcA3iwZ.mjs +2315 -0
- package/dist/dom-DSrDBeAh.cjs +2383 -0
- package/dist/dom-DWF-s1Su.cjs +2560 -0
- package/dist/dom-DXqKDT61.mjs +2636 -0
- package/dist/dom-DZaG_1dy.cjs +2523 -0
- package/dist/dom-Da94we67.mjs +2482 -0
- package/dist/dom-DbLKf6Jh.mjs +2452 -0
- package/dist/dom-DcxhioDc.mjs +2312 -0
- package/dist/dom-Dd4Xeoid.cjs +2225 -0
- package/dist/dom-DdmtiIFy.mjs +2240 -0
- package/dist/dom-DeobYYW6.cjs +2565 -0
- package/dist/dom-DfOG-SOC.mjs +2524 -0
- package/dist/dom-DfoXi_Ge.mjs +2491 -0
- package/dist/dom-DgH5XaDf.cjs +2566 -0
- package/dist/dom-Dh6j0hU3.cjs +2216 -0
- package/dist/dom-DoY3LzGN.cjs +2716 -0
- package/dist/dom-DrkvmJc0.mjs +2604 -0
- package/dist/dom-DtoQzVf_.mjs +2420 -0
- package/dist/dom-DuPDCLQ6.cjs +2274 -0
- package/dist/dom-DxgDiOaA.cjs +2565 -0
- package/dist/dom-G04drjmU.cjs +2491 -0
- package/dist/dom-H0GABHXb.mjs +2150 -0
- package/dist/dom-JCkS89Rd.cjs +2567 -0
- package/dist/dom-KqUQZkfM.cjs +2308 -0
- package/dist/dom-TFwB-0L9.cjs +2678 -0
- package/dist/dom-TZFkL5KJ.cjs +2644 -0
- package/dist/dom-TouShoro.mjs +2177 -0
- package/dist/dom-VETbfxjz.mjs +2677 -0
- package/dist/dom-Vsf53vAt.mjs +2488 -0
- package/dist/dom-XAoDKik2.cjs +2241 -0
- package/dist/dom-YFfM2w3z.mjs +2041 -0
- package/dist/dom-_tAEgP75.mjs +2578 -0
- package/dist/dom-aBdjDw0s.cjs +2308 -0
- package/dist/dom-aW_a5G16.mjs +2240 -0
- package/dist/dom-gRbdIyyK.cjs +2604 -0
- package/dist/dom-rGg1mmtQ.cjs +2103 -0
- package/dist/dom-unkLyMam.mjs +2486 -0
- package/dist/dom-vZS7gOVB.cjs +2714 -0
- package/dist/index-2LUk-rix.d.ts +1509 -0
- package/dist/index-5Ez8v0Mw.d.ts +1568 -0
- package/dist/index-B8ImEI1u.d.ts +1509 -0
- package/dist/index-BBk97lC7.d.ts +1465 -0
- package/dist/index-BTOeLZBB.d.ts +1527 -0
- package/dist/index-BTaR1jax.d.ts +1509 -0
- package/dist/index-Bae31vFS.d.ts +1570 -0
- package/dist/index-Bb1GxtDc.d.ts +1472 -0
- package/dist/index-Bfz7852w.d.ts +1567 -0
- package/dist/index-Bywe1fkx.d.ts +1509 -0
- package/dist/index-CCeeNIcc.d.ts +1496 -0
- package/dist/index-C_P6zlvR.d.ts +1558 -0
- package/dist/index-DBvUJqwo.d.ts +1509 -0
- package/dist/index-DPVHaQn9.d.ts +1521 -0
- package/dist/index-DbR8em5t.d.ts +1497 -0
- package/dist/index-Dhjx6sE5.d.ts +1570 -0
- package/dist/index-Dzgvlh_Y.d.ts +1509 -0
- package/dist/index-Fi1RplM1.d.ts +1496 -0
- package/dist/index-ep2QX2G6.d.ts +1579 -0
- package/dist/index-gq002HdC.d.ts +1568 -0
- package/dist/index-u-BP7aQx.d.ts +1553 -0
- package/dist/index.cjs +51 -11
- package/dist/index.d.cts +8 -4
- package/dist/index.d.ts +8 -4
- package/dist/index.mjs +48 -12
- package/dist/render/client.cjs +6 -4
- package/dist/render/client.d.cts +2 -2
- package/dist/render/client.d.ts +2 -2
- package/dist/render/client.mjs +3 -5
- package/dist/render/index.cjs +5 -1
- package/dist/render/index.d.cts +1 -1
- package/dist/render/index.d.ts +1 -1
- package/dist/render/index.mjs +1 -1
- package/dist/render/server.cjs +5 -1
- package/dist/render/server.d.cts +2 -2
- package/dist/render/server.d.ts +2 -2
- package/dist/render/server.mjs +2 -2
- package/dist/transitions-BTnlvkEd.mjs +102 -0
- package/dist/transitions-D6dj9XXM.cjs +109 -0
- package/package.json +2 -2
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
const getTransitionStyles = (type, duration, easing) => {
|
|
2
|
+
const baseTransition = `all ${duration}ms ${easing}`;
|
|
3
|
+
const filterUndefined = (obj) => {
|
|
4
|
+
const filtered = {};
|
|
5
|
+
Object.entries(obj).forEach(([key, value]) => {
|
|
6
|
+
if (value !== void 0) {
|
|
7
|
+
filtered[key] = value;
|
|
8
|
+
}
|
|
9
|
+
});
|
|
10
|
+
return filtered;
|
|
11
|
+
};
|
|
12
|
+
switch (type) {
|
|
13
|
+
case "fade":
|
|
14
|
+
return {
|
|
15
|
+
enter: filterUndefined({ opacity: "0", transition: baseTransition }),
|
|
16
|
+
enterActive: filterUndefined({ opacity: "1" }),
|
|
17
|
+
exit: filterUndefined({ opacity: "1", transition: baseTransition }),
|
|
18
|
+
exitActive: filterUndefined({ opacity: "0" })
|
|
19
|
+
};
|
|
20
|
+
case "slide-left":
|
|
21
|
+
return {
|
|
22
|
+
enter: filterUndefined({ transform: "translateX(100%)", transition: baseTransition }),
|
|
23
|
+
enterActive: filterUndefined({ transform: "translateX(0%)" }),
|
|
24
|
+
exit: filterUndefined({ transform: "translateX(0%)", transition: baseTransition }),
|
|
25
|
+
exitActive: filterUndefined({ transform: "translateX(-100%)" })
|
|
26
|
+
};
|
|
27
|
+
case "slide-right":
|
|
28
|
+
return {
|
|
29
|
+
enter: filterUndefined({ transform: "translateX(-100%)", transition: baseTransition }),
|
|
30
|
+
enterActive: filterUndefined({ transform: "translateX(0%)" }),
|
|
31
|
+
exit: filterUndefined({ transform: "translateX(0%)", transition: baseTransition }),
|
|
32
|
+
exitActive: filterUndefined({ transform: "translateX(100%)" })
|
|
33
|
+
};
|
|
34
|
+
case "slide-up":
|
|
35
|
+
return {
|
|
36
|
+
enter: filterUndefined({ transform: "translateY(100%)", transition: baseTransition }),
|
|
37
|
+
enterActive: filterUndefined({ transform: "translateY(0%)" }),
|
|
38
|
+
exit: filterUndefined({ transform: "translateY(0%)", transition: baseTransition }),
|
|
39
|
+
exitActive: filterUndefined({ transform: "translateY(-100%)" })
|
|
40
|
+
};
|
|
41
|
+
case "slide-down":
|
|
42
|
+
return {
|
|
43
|
+
enter: filterUndefined({ transform: "translateY(-100%)", transition: baseTransition }),
|
|
44
|
+
enterActive: filterUndefined({ transform: "translateY(0%)" }),
|
|
45
|
+
exit: filterUndefined({ transform: "translateY(0%)", transition: baseTransition }),
|
|
46
|
+
exitActive: filterUndefined({ transform: "translateY(100%)" })
|
|
47
|
+
};
|
|
48
|
+
case "scale":
|
|
49
|
+
return {
|
|
50
|
+
enter: filterUndefined({ transform: "scale(0)", opacity: "0", transition: baseTransition }),
|
|
51
|
+
enterActive: filterUndefined({ transform: "scale(1)", opacity: "1" }),
|
|
52
|
+
exit: filterUndefined({ transform: "scale(1)", opacity: "1", transition: baseTransition }),
|
|
53
|
+
exitActive: filterUndefined({ transform: "scale(0)", opacity: "0" })
|
|
54
|
+
};
|
|
55
|
+
default:
|
|
56
|
+
return {
|
|
57
|
+
enter: {},
|
|
58
|
+
enterActive: {},
|
|
59
|
+
exit: {},
|
|
60
|
+
exitActive: {}
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
};
|
|
64
|
+
const applyStyles = (element, styles) => {
|
|
65
|
+
Object.entries(styles).forEach(([property, value]) => {
|
|
66
|
+
element.style.setProperty(property, String(value));
|
|
67
|
+
});
|
|
68
|
+
};
|
|
69
|
+
const storeOriginalStyles = (element, properties) => {
|
|
70
|
+
const originalStyles = {};
|
|
71
|
+
properties.forEach((property) => {
|
|
72
|
+
originalStyles[property] = element.style.getPropertyValue(property) || "";
|
|
73
|
+
});
|
|
74
|
+
return originalStyles;
|
|
75
|
+
};
|
|
76
|
+
const restoreOriginalStyles = (element, originalStyles) => {
|
|
77
|
+
Object.entries(originalStyles).forEach(([property, value]) => {
|
|
78
|
+
if (value) {
|
|
79
|
+
element.style.setProperty(property, value);
|
|
80
|
+
} else {
|
|
81
|
+
element.style.removeProperty(property);
|
|
82
|
+
}
|
|
83
|
+
});
|
|
84
|
+
};
|
|
85
|
+
const DEFAULT_TRANSITION_CONFIG = {
|
|
86
|
+
type: "fade",
|
|
87
|
+
duration: 300,
|
|
88
|
+
easing: "ease-in-out",
|
|
89
|
+
delay: 0
|
|
90
|
+
};
|
|
91
|
+
const waitForTransition = (element, duration) => {
|
|
92
|
+
return new Promise((resolve) => {
|
|
93
|
+
const handleTransitionEnd = () => {
|
|
94
|
+
element.removeEventListener("transitionend", handleTransitionEnd);
|
|
95
|
+
resolve();
|
|
96
|
+
};
|
|
97
|
+
element.addEventListener("transitionend", handleTransitionEnd);
|
|
98
|
+
setTimeout(resolve, duration + 50);
|
|
99
|
+
});
|
|
100
|
+
};
|
|
101
|
+
|
|
102
|
+
export { DEFAULT_TRANSITION_CONFIG, applyStyles, getTransitionStyles, restoreOriginalStyles, storeOriginalStyles, waitForTransition };
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
const getTransitionStyles = (type, duration, easing) => {
|
|
4
|
+
const baseTransition = `all ${duration}ms ${easing}`;
|
|
5
|
+
const filterUndefined = (obj) => {
|
|
6
|
+
const filtered = {};
|
|
7
|
+
Object.entries(obj).forEach(([key, value]) => {
|
|
8
|
+
if (value !== void 0) {
|
|
9
|
+
filtered[key] = value;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
return filtered;
|
|
13
|
+
};
|
|
14
|
+
switch (type) {
|
|
15
|
+
case "fade":
|
|
16
|
+
return {
|
|
17
|
+
enter: filterUndefined({ opacity: "0", transition: baseTransition }),
|
|
18
|
+
enterActive: filterUndefined({ opacity: "1" }),
|
|
19
|
+
exit: filterUndefined({ opacity: "1", transition: baseTransition }),
|
|
20
|
+
exitActive: filterUndefined({ opacity: "0" })
|
|
21
|
+
};
|
|
22
|
+
case "slide-left":
|
|
23
|
+
return {
|
|
24
|
+
enter: filterUndefined({ transform: "translateX(100%)", transition: baseTransition }),
|
|
25
|
+
enterActive: filterUndefined({ transform: "translateX(0%)" }),
|
|
26
|
+
exit: filterUndefined({ transform: "translateX(0%)", transition: baseTransition }),
|
|
27
|
+
exitActive: filterUndefined({ transform: "translateX(-100%)" })
|
|
28
|
+
};
|
|
29
|
+
case "slide-right":
|
|
30
|
+
return {
|
|
31
|
+
enter: filterUndefined({ transform: "translateX(-100%)", transition: baseTransition }),
|
|
32
|
+
enterActive: filterUndefined({ transform: "translateX(0%)" }),
|
|
33
|
+
exit: filterUndefined({ transform: "translateX(0%)", transition: baseTransition }),
|
|
34
|
+
exitActive: filterUndefined({ transform: "translateX(100%)" })
|
|
35
|
+
};
|
|
36
|
+
case "slide-up":
|
|
37
|
+
return {
|
|
38
|
+
enter: filterUndefined({ transform: "translateY(100%)", transition: baseTransition }),
|
|
39
|
+
enterActive: filterUndefined({ transform: "translateY(0%)" }),
|
|
40
|
+
exit: filterUndefined({ transform: "translateY(0%)", transition: baseTransition }),
|
|
41
|
+
exitActive: filterUndefined({ transform: "translateY(-100%)" })
|
|
42
|
+
};
|
|
43
|
+
case "slide-down":
|
|
44
|
+
return {
|
|
45
|
+
enter: filterUndefined({ transform: "translateY(-100%)", transition: baseTransition }),
|
|
46
|
+
enterActive: filterUndefined({ transform: "translateY(0%)" }),
|
|
47
|
+
exit: filterUndefined({ transform: "translateY(0%)", transition: baseTransition }),
|
|
48
|
+
exitActive: filterUndefined({ transform: "translateY(100%)" })
|
|
49
|
+
};
|
|
50
|
+
case "scale":
|
|
51
|
+
return {
|
|
52
|
+
enter: filterUndefined({ transform: "scale(0)", opacity: "0", transition: baseTransition }),
|
|
53
|
+
enterActive: filterUndefined({ transform: "scale(1)", opacity: "1" }),
|
|
54
|
+
exit: filterUndefined({ transform: "scale(1)", opacity: "1", transition: baseTransition }),
|
|
55
|
+
exitActive: filterUndefined({ transform: "scale(0)", opacity: "0" })
|
|
56
|
+
};
|
|
57
|
+
default:
|
|
58
|
+
return {
|
|
59
|
+
enter: {},
|
|
60
|
+
enterActive: {},
|
|
61
|
+
exit: {},
|
|
62
|
+
exitActive: {}
|
|
63
|
+
};
|
|
64
|
+
}
|
|
65
|
+
};
|
|
66
|
+
const applyStyles = (element, styles) => {
|
|
67
|
+
Object.entries(styles).forEach(([property, value]) => {
|
|
68
|
+
element.style.setProperty(property, String(value));
|
|
69
|
+
});
|
|
70
|
+
};
|
|
71
|
+
const storeOriginalStyles = (element, properties) => {
|
|
72
|
+
const originalStyles = {};
|
|
73
|
+
properties.forEach((property) => {
|
|
74
|
+
originalStyles[property] = element.style.getPropertyValue(property) || "";
|
|
75
|
+
});
|
|
76
|
+
return originalStyles;
|
|
77
|
+
};
|
|
78
|
+
const restoreOriginalStyles = (element, originalStyles) => {
|
|
79
|
+
Object.entries(originalStyles).forEach(([property, value]) => {
|
|
80
|
+
if (value) {
|
|
81
|
+
element.style.setProperty(property, value);
|
|
82
|
+
} else {
|
|
83
|
+
element.style.removeProperty(property);
|
|
84
|
+
}
|
|
85
|
+
});
|
|
86
|
+
};
|
|
87
|
+
const DEFAULT_TRANSITION_CONFIG = {
|
|
88
|
+
type: "fade",
|
|
89
|
+
duration: 300,
|
|
90
|
+
easing: "ease-in-out",
|
|
91
|
+
delay: 0
|
|
92
|
+
};
|
|
93
|
+
const waitForTransition = (element, duration) => {
|
|
94
|
+
return new Promise((resolve) => {
|
|
95
|
+
const handleTransitionEnd = () => {
|
|
96
|
+
element.removeEventListener("transitionend", handleTransitionEnd);
|
|
97
|
+
resolve();
|
|
98
|
+
};
|
|
99
|
+
element.addEventListener("transitionend", handleTransitionEnd);
|
|
100
|
+
setTimeout(resolve, duration + 50);
|
|
101
|
+
});
|
|
102
|
+
};
|
|
103
|
+
|
|
104
|
+
exports.DEFAULT_TRANSITION_CONFIG = DEFAULT_TRANSITION_CONFIG;
|
|
105
|
+
exports.applyStyles = applyStyles;
|
|
106
|
+
exports.getTransitionStyles = getTransitionStyles;
|
|
107
|
+
exports.restoreOriginalStyles = restoreOriginalStyles;
|
|
108
|
+
exports.storeOriginalStyles = storeOriginalStyles;
|
|
109
|
+
exports.waitForTransition = waitForTransition;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "defuss",
|
|
3
|
-
"version": "2.0
|
|
3
|
+
"version": "2.1.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public"
|
|
@@ -92,7 +92,7 @@
|
|
|
92
92
|
"csstype": "^3.1.3",
|
|
93
93
|
"happy-dom": "^15.11.7",
|
|
94
94
|
"w3c-xmlserializer": "^5.0.0",
|
|
95
|
-
"defuss-runtime": "1.0
|
|
95
|
+
"defuss-runtime": "1.2.0"
|
|
96
96
|
},
|
|
97
97
|
"scripts": {
|
|
98
98
|
"clean": "rm -rf ./coverage && rm -rf ./node_modules/.pnpm && rm -rf ./node_modules/.vite",
|