vevet 5.0.5 → 5.0.6
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/README.md +1 -0
- package/lib/cdn/vevet.iife.min.js +5 -5
- package/lib/cjs/components/Snap/index.js +5 -3
- package/lib/cjs/components/Snap/index.js.map +1 -1
- package/lib/cjs/components/SplitText/index.js +3 -2
- package/lib/cjs/components/SplitText/index.js.map +1 -1
- package/lib/cjs/components/SplitText/utils/isIgnored.js +16 -0
- package/lib/cjs/components/SplitText/utils/isIgnored.js.map +1 -0
- package/lib/cjs/components/SplitText/utils/saveInitialNodes.js +11 -3
- package/lib/cjs/components/SplitText/utils/saveInitialNodes.js.map +1 -1
- package/lib/cjs/components/SplitText/utils/splitBase.js +3 -1
- package/lib/cjs/components/SplitText/utils/splitBase.js.map +1 -1
- package/lib/cjs/components/SplitText/utils/wrapLetters.js +6 -2
- package/lib/cjs/components/SplitText/utils/wrapLetters.js.map +1 -1
- package/lib/cjs/components/SplitText/utils/wrapLines.js +15 -5
- package/lib/cjs/components/SplitText/utils/wrapLines.js.map +1 -1
- package/lib/cjs/components/SplitText/utils/wrapWords.js +15 -1
- package/lib/cjs/components/SplitText/utils/wrapWords.js.map +1 -1
- package/lib/cjs/core/index.js +2 -2
- package/lib/cjs/core/index.js.map +1 -1
- package/lib/cjs/manifest.json +3 -0
- package/lib/esm/components/Snap/index.js +5 -3
- package/lib/esm/components/Snap/index.js.map +1 -1
- package/lib/esm/components/SplitText/index.js +3 -2
- package/lib/esm/components/SplitText/index.js.map +1 -1
- package/lib/esm/components/SplitText/utils/isIgnored.js +13 -0
- package/lib/esm/components/SplitText/utils/isIgnored.js.map +1 -0
- package/lib/esm/components/SplitText/utils/saveInitialNodes.js +11 -3
- package/lib/esm/components/SplitText/utils/saveInitialNodes.js.map +1 -1
- package/lib/esm/components/SplitText/utils/splitBase.js +3 -1
- package/lib/esm/components/SplitText/utils/splitBase.js.map +1 -1
- package/lib/esm/components/SplitText/utils/wrapLetters.js +6 -2
- package/lib/esm/components/SplitText/utils/wrapLetters.js.map +1 -1
- package/lib/esm/components/SplitText/utils/wrapLines.js +13 -5
- package/lib/esm/components/SplitText/utils/wrapLines.js.map +1 -1
- package/lib/esm/components/SplitText/utils/wrapWords.js +15 -1
- package/lib/esm/components/SplitText/utils/wrapWords.js.map +1 -1
- package/lib/esm/core/index.js +2 -3
- package/lib/esm/core/index.js.map +1 -1
- package/lib/esm/manifest.json +3 -0
- package/lib/types/components/Snap/index.d.ts.map +1 -1
- package/lib/types/components/SplitText/index.d.ts.map +1 -1
- package/lib/types/components/SplitText/types.d.ts +5 -0
- package/lib/types/components/SplitText/types.d.ts.map +1 -1
- package/lib/types/components/SplitText/utils/isIgnored.d.ts +3 -0
- package/lib/types/components/SplitText/utils/isIgnored.d.ts.map +1 -0
- package/lib/types/components/SplitText/utils/saveInitialNodes.d.ts.map +1 -1
- package/lib/types/components/SplitText/utils/splitBase.d.ts +3 -2
- package/lib/types/components/SplitText/utils/splitBase.d.ts.map +1 -1
- package/lib/types/components/SplitText/utils/wrapLetters.d.ts +3 -2
- package/lib/types/components/SplitText/utils/wrapLetters.d.ts.map +1 -1
- package/lib/types/components/SplitText/utils/wrapLines.d.ts.map +1 -1
- package/lib/types/components/SplitText/utils/wrapWords.d.ts +3 -2
- package/lib/types/components/SplitText/utils/wrapWords.d.ts.map +1 -1
- package/package.json +5 -4
- package/src/components/Snap/index.ts +6 -5
- package/src/components/SplitText/index.ts +3 -1
- package/src/components/SplitText/types.ts +6 -0
- package/src/components/SplitText/utils/isIgnored.ts +20 -0
- package/src/components/SplitText/utils/saveInitialNodes.ts +14 -3
- package/src/components/SplitText/utils/splitBase.ts +5 -1
- package/src/components/SplitText/utils/wrapLetters.ts +13 -3
- package/src/components/SplitText/utils/wrapLines.ts +21 -5
- package/src/components/SplitText/utils/wrapWords.ts +19 -2
- package/src/core/index.ts +2 -2
- package/src/manifest.json +3 -0
- package/lib/cjs/version.js +0 -5
- package/lib/cjs/version.js.map +0 -1
- package/lib/esm/version.js +0 -3
- package/lib/esm/version.js.map +0 -1
- package/lib/types/version.d.ts +0 -3
- package/lib/types/version.d.ts.map +0 -1
- package/src/version.ts +0 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isIgnored.js","sourceRoot":"","sources":["../../../../../src/components/SplitText/utils/isIgnored.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,SAAS,CACvB,OAAoB,EACpB,MAAuC;IAEvC,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC/B,OAAO,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACjC,CAAC;IAED,IAAI,OAAO,MAAM,KAAK,UAAU,EAAE,CAAC;QACjC,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC;IACzB,CAAC;IAED,OAAO,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;AAClC,CAAC"}
|
|
@@ -2,7 +2,11 @@ export function saveInitialNodes(root) {
|
|
|
2
2
|
const flatArray = [];
|
|
3
3
|
function copy(node) {
|
|
4
4
|
// Add the current node and its parent to the array
|
|
5
|
-
flatArray.push({
|
|
5
|
+
flatArray.push({
|
|
6
|
+
node,
|
|
7
|
+
cssText: node instanceof HTMLElement ? node.style.cssText : null,
|
|
8
|
+
parent: node.parentNode,
|
|
9
|
+
});
|
|
6
10
|
// Recursively process child nodes
|
|
7
11
|
node.childNodes.forEach((child) => copy(child));
|
|
8
12
|
}
|
|
@@ -13,8 +17,12 @@ export function saveInitialNodes(root) {
|
|
|
13
17
|
restore: () => {
|
|
14
18
|
const fragment = document.createDocumentFragment();
|
|
15
19
|
flatArray.forEach((element) => {
|
|
16
|
-
|
|
17
|
-
|
|
20
|
+
const { node, cssText } = element;
|
|
21
|
+
if (node instanceof HTMLElement && cssText) {
|
|
22
|
+
node.style.cssText = cssText;
|
|
23
|
+
}
|
|
24
|
+
while (node.childNodes[0]) {
|
|
25
|
+
node.childNodes[0].remove();
|
|
18
26
|
}
|
|
19
27
|
if (element.parent) {
|
|
20
28
|
const parent = element.parent === root ? fragment : element.parent;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"saveInitialNodes.js","sourceRoot":"","sources":["../../../../../src/components/SplitText/utils/saveInitialNodes.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"saveInitialNodes.js","sourceRoot":"","sources":["../../../../../src/components/SplitText/utils/saveInitialNodes.ts"],"names":[],"mappings":"AAMA,MAAM,UAAU,gBAAgB,CAAC,IAAU;IACzC,MAAM,SAAS,GAAa,EAAE,CAAC;IAE/B,SAAS,IAAI,CAAC,IAAU;QACtB,mDAAmD;QACnD,SAAS,CAAC,IAAI,CAAC;YACb,IAAI;YACJ,OAAO,EAAE,IAAI,YAAY,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI;YAChE,MAAM,EAAE,IAAI,CAAC,UAAU;SACxB,CAAC,CAAC;QAEH,kCAAkC;QAClC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IAClD,CAAC;IAED,qCAAqC;IACrC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IAEhD,iDAAiD;IACjD,OAAO;QACL,OAAO,EAAE,GAAG,EAAE;YACZ,MAAM,QAAQ,GAAG,QAAQ,CAAC,sBAAsB,EAAE,CAAC;YAEnD,SAAS,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;gBAC5B,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;gBAElC,IAAI,IAAI,YAAY,WAAW,IAAI,OAAO,EAAE,CAAC;oBAC3C,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC;gBAC/B,CAAC;gBAED,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC1B,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;gBAC9B,CAAC;gBAED,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;oBACnB,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;oBACnE,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;gBACnC,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC1B,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;YAC9B,CAAC;YAED,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAC7B,CAAC;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -3,7 +3,7 @@ import { wrapWords } from './wrapWords';
|
|
|
3
3
|
/**
|
|
4
4
|
* Splits text in the container into words and optionally into letters.
|
|
5
5
|
*/
|
|
6
|
-
export function splitBase({ container, letterClassName, wordClassName, hasLetters, letterTag, wordTag, }) {
|
|
6
|
+
export function splitBase({ container, letterClassName, wordClassName, hasLetters, letterTag, wordTag, ignore, }) {
|
|
7
7
|
// Prepare the fragment
|
|
8
8
|
const prepareFragment = document.createDocumentFragment();
|
|
9
9
|
while (container.childNodes[0]) {
|
|
@@ -14,6 +14,7 @@ export function splitBase({ container, letterClassName, wordClassName, hasLetter
|
|
|
14
14
|
container: prepareFragment,
|
|
15
15
|
classname: wordClassName,
|
|
16
16
|
tagName: wordTag,
|
|
17
|
+
ignore,
|
|
17
18
|
});
|
|
18
19
|
const lettersMeta = [];
|
|
19
20
|
// If enabled, wrap words into letters
|
|
@@ -22,6 +23,7 @@ export function splitBase({ container, letterClassName, wordClassName, hasLetter
|
|
|
22
23
|
wordsMeta,
|
|
23
24
|
classname: letterClassName,
|
|
24
25
|
tagName: letterTag,
|
|
26
|
+
ignore,
|
|
25
27
|
});
|
|
26
28
|
lettersMeta.push(...wrappedLetters.lettersMeta);
|
|
27
29
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"splitBase.js","sourceRoot":"","sources":["../../../../../src/components/SplitText/utils/splitBase.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"splitBase.js","sourceRoot":"","sources":["../../../../../src/components/SplitText/utils/splitBase.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAYxC;;GAEG;AACH,MAAM,UAAU,SAAS,CAAC,EACxB,SAAS,EACT,eAAe,EACf,aAAa,EACb,UAAU,EACV,SAAS,EACT,OAAO,EACP,MAAM,GACC;IACP,uBAAuB;IACvB,MAAM,eAAe,GAAG,QAAQ,CAAC,sBAAsB,EAAE,CAAC;IAC1D,OAAO,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/B,eAAe,CAAC,WAAW,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;IACvD,CAAC;IAED,2BAA2B;IAC3B,MAAM,SAAS,GAAG,SAAS,CAAC;QAC1B,SAAS,EAAE,eAAsB;QACjC,SAAS,EAAE,aAAa;QACxB,OAAO,EAAE,OAAO;QAChB,MAAM;KACP,CAAC,CAAC;IAEH,MAAM,WAAW,GAA2B,EAAE,CAAC;IAE/C,sCAAsC;IACtC,IAAI,UAAU,EAAE,CAAC;QACf,MAAM,cAAc,GAAG,WAAW,CAAC;YACjC,SAAS;YACT,SAAS,EAAE,eAAe;YAC1B,OAAO,EAAE,SAAS;YAClB,MAAM;SACP,CAAC,CAAC;QAEH,WAAW,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC,WAAW,CAAC,CAAC;IAClD,CAAC;IAED,+BAA+B;IAC/B,SAAS,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC;IAEvC,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC;AACpC,CAAC"}
|
|
@@ -1,14 +1,18 @@
|
|
|
1
1
|
import split from 'lodash.split';
|
|
2
|
+
import { isIgnored } from './isIgnored';
|
|
2
3
|
/**
|
|
3
4
|
* Wraps each letter in every word inside the container with the specified HTML tag and class name.
|
|
4
5
|
*/
|
|
5
|
-
export function wrapLetters({ wordsMeta, classname, tagName }) {
|
|
6
|
+
export function wrapLetters({ wordsMeta, classname, tagName, ignore }) {
|
|
6
7
|
const lettersMeta = [];
|
|
7
8
|
const baseElement = document.createElement(tagName);
|
|
8
9
|
baseElement.style.display = 'inline-block';
|
|
9
10
|
baseElement.classList.add(classname);
|
|
10
11
|
// Iterate over each word to wrap its letters
|
|
11
12
|
wordsMeta.forEach((wordMeta) => {
|
|
13
|
+
if (isIgnored(wordMeta.element, ignore)) {
|
|
14
|
+
return;
|
|
15
|
+
}
|
|
12
16
|
const textNode = wordMeta.element.childNodes[0];
|
|
13
17
|
if (!textNode) {
|
|
14
18
|
return;
|
|
@@ -23,7 +27,7 @@ export function wrapLetters({ wordsMeta, classname, tagName }) {
|
|
|
23
27
|
const element = baseElement.cloneNode(false);
|
|
24
28
|
element.appendChild(document.createTextNode(letterContents));
|
|
25
29
|
// Append the letter element to the word's container
|
|
26
|
-
wordMeta.element.
|
|
30
|
+
wordMeta.element.insertBefore(element, textNode);
|
|
27
31
|
const letter = { element };
|
|
28
32
|
// Add the letter to the word's letters array and the global letters array
|
|
29
33
|
wordMeta.letters.push(letter);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wrapLetters.js","sourceRoot":"","sources":["../../../../../src/components/SplitText/utils/wrapLetters.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"wrapLetters.js","sourceRoot":"","sources":["../../../../../src/components/SplitText/utils/wrapLetters.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,cAAc,CAAC;AAMjC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AASxC;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAU;IAC3E,MAAM,WAAW,GAA2B,EAAE,CAAC;IAE/C,MAAM,WAAW,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IACpD,WAAW,CAAC,KAAK,CAAC,OAAO,GAAG,cAAc,CAAC;IAC3C,WAAW,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAErC,6CAA6C;IAC7C,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;QAC7B,IAAI,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,CAAC;YACxC,OAAO;QACT,CAAC;QAED,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QAChD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO;QACT,CAAC;QAED,MAAM,IAAI,GAAG,QAAQ,CAAC,WAAW,CAAC;QAElC,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO;QACT,CAAC;QAED,yCAAyC;QACzC,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAErC,YAAY,CAAC,OAAO,CAAC,CAAC,cAAc,EAAE,EAAE;YACtC,MAAM,OAAO,GAAG,WAAW,CAAC,SAAS,CAAC,KAAK,CAAgB,CAAC;YAC5D,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC,CAAC;YAE7D,oDAAoD;YACpD,QAAQ,CAAC,OAAO,CAAC,YAAY,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YAEjD,MAAM,MAAM,GAAyB,EAAE,OAAO,EAAE,CAAC;YAEjD,0EAA0E;YAC1E,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC9B,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC;QAEH,2DAA2D;QAC3D,QAAQ,CAAC,MAAM,EAAE,CAAC;IACpB,CAAC,CAAC,CAAC;IAEH,OAAO,EAAE,WAAW,EAAE,CAAC;AACzB,CAAC"}
|
|
@@ -24,24 +24,31 @@ export function childOf(element, parent) {
|
|
|
24
24
|
* Wraps each word in the container into lines, based on their vertical position.
|
|
25
25
|
*/
|
|
26
26
|
export function wrapLines({ container, hasLinesWrapper, wordsMeta, lineClassName, lineWrapperClassName, tagName, }) {
|
|
27
|
+
const { direction } = getComputedStyle(container);
|
|
27
28
|
const linesMeta = [];
|
|
28
29
|
let lineIndex = -1;
|
|
29
|
-
let
|
|
30
|
+
let lastBounding = null;
|
|
30
31
|
const baseElement = document.createElement(tagName);
|
|
31
32
|
baseElement.style.display = 'block';
|
|
32
33
|
baseElement.setAttribute('aria-hidden', 'true');
|
|
33
34
|
baseElement.classList.add(lineClassName);
|
|
35
|
+
const boundings = wordsMeta.map((wordMeta) => wordMeta.element.getBoundingClientRect());
|
|
34
36
|
// Create lines by wrapping words
|
|
35
|
-
wordsMeta.forEach((wordMeta) => {
|
|
37
|
+
wordsMeta.forEach((wordMeta, index) => {
|
|
36
38
|
var _a;
|
|
37
|
-
const
|
|
39
|
+
const bounds = boundings[index];
|
|
38
40
|
const topParent = getTopParent(wordMeta.element, container);
|
|
39
41
|
if (!topParent) {
|
|
40
42
|
return;
|
|
41
43
|
}
|
|
42
44
|
// create new line if the top position changes
|
|
43
|
-
if (
|
|
44
|
-
|
|
45
|
+
if (!lastBounding ||
|
|
46
|
+
(bounds.top >= lastBounding.top &&
|
|
47
|
+
bounds.left <= lastBounding.left &&
|
|
48
|
+
direction === 'ltr') ||
|
|
49
|
+
(bounds.top >= lastBounding.top &&
|
|
50
|
+
bounds.left >= lastBounding.left &&
|
|
51
|
+
direction === 'rtl')) {
|
|
45
52
|
lineIndex += 1;
|
|
46
53
|
const element = baseElement.cloneNode(false);
|
|
47
54
|
let wrapper;
|
|
@@ -53,6 +60,7 @@ export function wrapLines({ container, hasLinesWrapper, wordsMeta, lineClassName
|
|
|
53
60
|
}
|
|
54
61
|
linesMeta[lineIndex] = { element, wrapper, nodes: [], words: [] };
|
|
55
62
|
}
|
|
63
|
+
lastBounding = bounds;
|
|
56
64
|
const currentLine = linesMeta[lineIndex];
|
|
57
65
|
const isInList = !!linesMeta.find(({ nodes }) => nodes.includes(topParent));
|
|
58
66
|
if (!isInList) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wrapLines.js","sourceRoot":"","sources":["../../../../../src/components/SplitText/utils/wrapLines.ts"],"names":[],"mappings":"AAeA;;GAEG;AACH,SAAS,YAAY,CAAC,GAAmB,EAAE,SAAkB;;IAC3D,IAAI,CAAC,CAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,aAAa,CAAA,EAAE,CAAC;QACxB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,GAAG,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;QACpC,OAAO,GAAG,CAAC;IACb,CAAC;IAED,OAAO,YAAY,CAAC,MAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,aAAa,mCAAI,IAAI,EAAE,SAAS,CAAC,CAAC;AAC7D,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,OAAgB,EAAE,MAAe;IACvD,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;QACvB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QACrB,OAAO,OAAO,CAAC,OAAO,CAAC,UAAqB,EAAE,MAAM,CAAC,CAAC;IACxD,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,SAAS,CAAC,EACxB,SAAS,EACT,eAAe,EACf,SAAS,EACT,aAAa,EACb,oBAAoB,EACpB,OAAO,GACA;IACP,MAAM,SAAS,GAAY,EAAE,CAAC;IAC9B,IAAI,SAAS,GAAG,CAAC,CAAC,CAAC;IACnB,IAAI,
|
|
1
|
+
{"version":3,"file":"wrapLines.js","sourceRoot":"","sources":["../../../../../src/components/SplitText/utils/wrapLines.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +1,15 @@
|
|
|
1
|
+
import { isIgnored } from './isIgnored';
|
|
1
2
|
/**
|
|
2
3
|
* Wraps each word inside the container in an HTML element with the specified tag and class.
|
|
3
4
|
*/
|
|
4
|
-
export function wrapWords({ container, classname, tagName }) {
|
|
5
|
+
export function wrapWords({ container, classname, tagName, ignore }) {
|
|
5
6
|
const whitespace = String.fromCharCode(32); // ASCII for space
|
|
6
7
|
const baseElement = document.createElement(tagName);
|
|
7
8
|
baseElement.style.display = 'inline-block';
|
|
8
9
|
baseElement.setAttribute('aria-hidden', 'true');
|
|
9
10
|
baseElement.classList.add(classname);
|
|
10
11
|
const wordsMeta = [];
|
|
12
|
+
let prevNonBreakingWord = null;
|
|
11
13
|
/**
|
|
12
14
|
* Recursively processes each child node within the container to wrap words.
|
|
13
15
|
*/
|
|
@@ -16,9 +18,19 @@ export function wrapWords({ container, classname, tagName }) {
|
|
|
16
18
|
// If the node is an element, process its children
|
|
17
19
|
if (node instanceof HTMLElement || node instanceof DocumentFragment) {
|
|
18
20
|
if ('tagName' in node && node.tagName !== 'BR') {
|
|
21
|
+
if (isIgnored(node, ignore)) {
|
|
22
|
+
if (prevNonBreakingWord) {
|
|
23
|
+
prevNonBreakingWord.append(node);
|
|
24
|
+
}
|
|
25
|
+
else {
|
|
26
|
+
wordsMeta.push({ element: node, letters: [] });
|
|
27
|
+
}
|
|
28
|
+
return;
|
|
29
|
+
}
|
|
19
30
|
// eslint-disable-next-line no-param-reassign
|
|
20
31
|
node.style.display = 'inline-block';
|
|
21
32
|
}
|
|
33
|
+
prevNonBreakingWord = null;
|
|
22
34
|
const children = [...Array.from(node.childNodes)];
|
|
23
35
|
children.forEach((child) => recursive(child));
|
|
24
36
|
return;
|
|
@@ -29,6 +41,7 @@ export function wrapWords({ container, classname, tagName }) {
|
|
|
29
41
|
const text = (_b = node.nodeValue) !== null && _b !== void 0 ? _b : '';
|
|
30
42
|
// Handle case where node contains only whitespace
|
|
31
43
|
if (text === whitespace) {
|
|
44
|
+
prevNonBreakingWord = null;
|
|
32
45
|
parent === null || parent === void 0 ? void 0 : parent.insertBefore(document.createTextNode(whitespace), node);
|
|
33
46
|
node.remove();
|
|
34
47
|
return;
|
|
@@ -39,6 +52,7 @@ export function wrapWords({ container, classname, tagName }) {
|
|
|
39
52
|
if (wordContents) {
|
|
40
53
|
const element = baseElement.cloneNode(false);
|
|
41
54
|
element.appendChild(document.createTextNode(wordContents));
|
|
55
|
+
prevNonBreakingWord = element;
|
|
42
56
|
wordsMeta.push({ element, letters: [] });
|
|
43
57
|
parent === null || parent === void 0 ? void 0 : parent.insertBefore(element, node);
|
|
44
58
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wrapWords.js","sourceRoot":"","sources":["../../../../../src/components/SplitText/utils/wrapWords.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"wrapWords.js","sourceRoot":"","sources":["../../../../../src/components/SplitText/utils/wrapWords.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AASxC;;GAEG;AACH,MAAM,UAAU,SAAS,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAU;IACzE,MAAM,UAAU,GAAG,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC,kBAAkB;IAE9D,MAAM,WAAW,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IACpD,WAAW,CAAC,KAAK,CAAC,OAAO,GAAG,cAAc,CAAC;IAC3C,WAAW,CAAC,YAAY,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;IAChD,WAAW,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAErC,MAAM,SAAS,GAAyB,EAAE,CAAC;IAC3C,IAAI,mBAAmB,GAAuB,IAAI,CAAC;IAEnD;;OAEG;IACH,SAAS,SAAS,CAAC,IAAe;;QAChC,kDAAkD;QAClD,IAAI,IAAI,YAAY,WAAW,IAAI,IAAI,YAAY,gBAAgB,EAAE,CAAC;YACpE,IAAI,SAAS,IAAI,IAAI,IAAI,IAAI,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;gBAC/C,IAAI,SAAS,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC;oBAC5B,IAAI,mBAAmB,EAAE,CAAC;wBACxB,mBAAmB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;oBACnC,CAAC;yBAAM,CAAC;wBACN,SAAS,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;oBACjD,CAAC;oBAED,OAAO;gBACT,CAAC;gBAED,6CAA6C;gBAC7C,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,cAAc,CAAC;YACtC,CAAC;YAED,mBAAmB,GAAG,IAAI,CAAC;YAE3B,MAAM,QAAQ,GAAG,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;YAClD,QAAQ,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;YAE9C,OAAO;QACT,CAAC;QAED,kDAAkD;QAClD,IAAI,IAAI,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;YACxB,MAAM,MAAM,GAAG,MAAA,IAAI,CAAC,aAAa,mCAAI,SAAS,CAAC;YAC/C,MAAM,IAAI,GAAG,MAAA,IAAI,CAAC,SAAS,mCAAI,EAAE,CAAC;YAElC,kDAAkD;YAClD,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;gBACxB,mBAAmB,GAAG,IAAI,CAAC;gBAC3B,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,YAAY,CAAC,QAAQ,CAAC,cAAc,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC,CAAC;gBAChE,IAAI,CAAC,MAAM,EAAE,CAAC;gBAEd,OAAO;YACT,CAAC;YAED,0DAA0D;YAC1D,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YAC1C,UAAU,CAAC,OAAO,CAAC,CAAC,YAAY,EAAE,KAAK,EAAE,EAAE;gBACzC,IAAI,YAAY,EAAE,CAAC;oBACjB,MAAM,OAAO,GAAG,WAAW,CAAC,SAAS,CAAC,KAAK,CAAgB,CAAC;oBAC5D,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC,CAAC;oBAC3D,mBAAmB,GAAG,OAAO,CAAC;oBAE9B,SAAS,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;oBAEzC,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,YAAY,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;gBACtC,CAAC;gBAED,6DAA6D;gBAC7D,IAAI,KAAK,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAClC,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,YAAY,CAAC,QAAQ,CAAC,cAAc,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC,CAAC;gBAClE,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,MAAM,EAAE,CAAC;QAChB,CAAC;IACH,CAAC;IAED,iCAAiC;IACjC,SAAS,CAAC,SAAS,CAAC,CAAC;IAErB,OAAO,SAAS,CAAC;AACnB,CAAC"}
|
package/lib/esm/core/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { detect } from 'detect-browser';
|
|
2
2
|
import isMobileJs from 'ismobilejs';
|
|
3
|
-
import
|
|
3
|
+
import manifest from '../manifest.json';
|
|
4
4
|
import { createPageLoad } from './handlers/createPageLoad';
|
|
5
5
|
import { createViewport } from './handlers/createViewport';
|
|
6
6
|
export function Core(input) {
|
|
@@ -28,8 +28,7 @@ export function Core(input) {
|
|
|
28
28
|
});
|
|
29
29
|
const viewport = createViewport({ prefix, props, isMobile });
|
|
30
30
|
// output
|
|
31
|
-
const output = Object.assign(Object.assign({}, viewport.data), { viewportCallbacks: viewport.callbacks, version,
|
|
32
|
-
props,
|
|
31
|
+
const output = Object.assign(Object.assign({}, viewport.data), { viewportCallbacks: viewport.callbacks, version: manifest.version, props,
|
|
33
32
|
prefix, phone: device.phone, tablet: device.tablet, mobile: isMobile, osName,
|
|
34
33
|
browserName, doc: document, html: document.documentElement, body: document.body, loaded: false, onLoad: pageLoad.onLoad, onResize: (...params) => viewport.callbacks.on(...params) });
|
|
35
34
|
// update props on page load
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/Snap/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/Snap/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/SplitText/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EACL,sBAAsB,EACtB,oBAAoB,EACpB,kBAAkB,EAClB,sBAAsB,EACtB,qBAAqB,EACrB,kBAAkB,EACnB,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAE5D,cAAc,SAAS,CAAC;AAExB;;;;;;;;;;;;;;GAcG;AACH,qBAAa,SAAS,CACpB,YAAY,SAAS,sBAAsB,GAAG,sBAAsB,EACpE,WAAW,SAAS,qBAAqB,GAAG,qBAAqB,EACjE,YAAY,SAAS,sBAAsB,GAAG,sBAAsB,CACpE,SAAQ,MAAM,CAAC,YAAY,EAAE,WAAW,EAAE,YAAY,CAAC;IACvD;;OAEG;IACI,UAAU,IAAI,cAAc,CAAC,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/SplitText/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EACL,sBAAsB,EACtB,oBAAoB,EACpB,kBAAkB,EAClB,sBAAsB,EACtB,qBAAqB,EACrB,kBAAkB,EACnB,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAE5D,cAAc,SAAS,CAAC;AAExB;;;;;;;;;;;;;;GAcG;AACH,qBAAa,SAAS,CACpB,YAAY,SAAS,sBAAsB,GAAG,sBAAsB,EACpE,WAAW,SAAS,qBAAqB,GAAG,qBAAqB,EACjE,YAAY,SAAS,sBAAsB,GAAG,sBAAsB,CACpE,SAAQ,MAAM,CAAC,YAAY,EAAE,WAAW,EAAE,YAAY,CAAC;IACvD;;OAEG;IACI,UAAU,IAAI,cAAc,CAAC,WAAW,CAAC;IAkBhD;;OAEG;IACI,WAAW,IAAI,cAAc,CAAC,YAAY,CAAC;IAIlD;;OAEG;IACH,IAAI,MAAM,WAET;IAED;;OAEG;IACH,SAAS,CAAC,WAAW,EAAE,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAC;IAE3D;;OAEG;IACH,SAAS,CAAC,YAAY,UAAS;IAE/B;;OAEG;IACH,SAAS,CAAC,YAAY,EAAE,oBAAoB,EAAE,CAAM;IAEpD;;OAEG;IACH,IAAI,WAAW,2BAEd;IAED;;OAEG;IACH,IAAI,OAAO,kBAEV;IAED;;OAEG;IACH,SAAS,CAAC,UAAU,EAAE,kBAAkB,EAAE,CAAM;IAEhD;;OAEG;IACH,IAAI,SAAS,yBAEZ;IAED;;OAEG;IACH,IAAI,KAAK,kBAER;IAED;;OAEG;IACH,SAAS,CAAC,UAAU,EAAE,kBAAkB,EAAE,CAAM;IAEhD;;OAEG;IACH,IAAI,SAAS,yBAEZ;IAED;;OAEG;IACH,IAAI,KAAK,kBAER;IAED;;OAEG;IACH,SAAS,CAAC,iBAAiB,CAAC,EAAE,UAAU,CAAC,OAAO,SAAS,CAAC,CAAC;IAE3D;;OAEG;gBACS,KAAK,CAAC,EAAE,WAAW,GAAG,YAAY;IAiB9C;;OAEG;IACH,SAAS,CAAC,MAAM;IAsBhB;;OAEG;IACI,KAAK;IAYZ;;OAEG;IACH,SAAS,CAAC,UAAU;IAwBpB;;OAEG;IACH,SAAS,CAAC,WAAW;IAuBrB;;;OAGG;IACH,SAAS,CAAC,QAAQ;CAcnB"}
|
|
@@ -60,6 +60,11 @@ export interface ISplitTextStaticProps extends IModuleStaticProps {
|
|
|
60
60
|
* @default 0
|
|
61
61
|
*/
|
|
62
62
|
resizeDebounce?: number;
|
|
63
|
+
/**
|
|
64
|
+
* Do not split certain elements. Supports string selectors, array of elements, or function.
|
|
65
|
+
* @default null
|
|
66
|
+
*/
|
|
67
|
+
ignore?: string | HTMLElement[] | ((element: HTMLElement) => boolean) | null;
|
|
63
68
|
}
|
|
64
69
|
/** Mutable properties for the SplitText module */
|
|
65
70
|
export interface ISplitTextMutableProps extends IModuleMutableProps {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/components/SplitText/types.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,kBAAkB,EACnB,MAAM,QAAQ,CAAC;AAEhB,iDAAiD;AACjD,MAAM,WAAW,qBAAsB,SAAQ,kBAAkB;IAC/D;;OAEG;IACH,SAAS,EAAE,WAAW,CAAC;IAEvB;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB;;;OAGG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;IAEhB;;;OAGG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,qBAAqB,CAAC;IAExC;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,qBAAqB,CAAC;IAEtC;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,qBAAqB,CAAC;IAEtC;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/components/SplitText/types.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,kBAAkB,EACnB,MAAM,QAAQ,CAAC;AAEhB,iDAAiD;AACjD,MAAM,WAAW,qBAAsB,SAAQ,kBAAkB;IAC/D;;OAEG;IACH,SAAS,EAAE,WAAW,CAAC;IAEvB;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB;;;OAGG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;IAEhB;;;OAGG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,qBAAqB,CAAC;IAExC;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,qBAAqB,CAAC;IAEtC;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,qBAAqB,CAAC;IAEtC;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,GAAG,WAAW,EAAE,GAAG,CAAC,CAAC,OAAO,EAAE,WAAW,KAAK,OAAO,CAAC,GAAG,IAAI,CAAC;CAC9E;AAED,kDAAkD;AAClD,MAAM,WAAW,sBAAuB,SAAQ,mBAAmB;CAAG;AAEtE,6CAA6C;AAC7C,MAAM,WAAW,sBAAuB,SAAQ,mBAAmB;IACjE;;OAEG;IACH,WAAW,EAAE,SAAS,CAAC;IAEvB;;OAEG;IACH,KAAK,EAAE,SAAS,CAAC;CAClB;AAED,8BAA8B;AAC9B,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,OAAO,EAAE,WAAW,CAAC;IAErB;;;;OAIG;IACH,OAAO,CAAC,EAAE,WAAW,CAAC;IAEtB;;OAEG;IACH,KAAK,EAAE,kBAAkB,EAAE,CAAC;CAC7B;AAED,8BAA8B;AAC9B,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,OAAO,EAAE,WAAW,CAAC;IAErB;;OAEG;IACH,OAAO,EAAE,oBAAoB,EAAE,CAAC;CACjC;AAED,gCAAgC;AAChC,MAAM,WAAW,oBAAoB;IACnC;;OAEG;IACH,OAAO,EAAE,WAAW,CAAC;CACtB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isIgnored.d.ts","sourceRoot":"","sources":["../../../../../src/components/SplitText/utils/isIgnored.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAC;AAEjD,wBAAgB,SAAS,CACvB,OAAO,EAAE,WAAW,EACpB,MAAM,EAAE,qBAAqB,CAAC,QAAQ,CAAC,WAexC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"saveInitialNodes.d.ts","sourceRoot":"","sources":["../../../../../src/components/SplitText/utils/saveInitialNodes.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"saveInitialNodes.d.ts","sourceRoot":"","sources":["../../../../../src/components/SplitText/utils/saveInitialNodes.ts"],"names":[],"mappings":"AAMA,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,IAAI;;EA+C1C"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ISplitTextLetterMeta } from '../types';
|
|
1
|
+
import { ISplitTextLetterMeta, ISplitTextStaticProps } from '../types';
|
|
2
2
|
interface IProps {
|
|
3
3
|
container: HTMLElement;
|
|
4
4
|
letterClassName: string;
|
|
@@ -6,11 +6,12 @@ interface IProps {
|
|
|
6
6
|
hasLetters: boolean;
|
|
7
7
|
letterTag: keyof HTMLElementTagNameMap;
|
|
8
8
|
wordTag: keyof HTMLElementTagNameMap;
|
|
9
|
+
ignore: ISplitTextStaticProps['ignore'];
|
|
9
10
|
}
|
|
10
11
|
/**
|
|
11
12
|
* Splits text in the container into words and optionally into letters.
|
|
12
13
|
*/
|
|
13
|
-
export declare function splitBase({ container, letterClassName, wordClassName, hasLetters, letterTag, wordTag, }: IProps): {
|
|
14
|
+
export declare function splitBase({ container, letterClassName, wordClassName, hasLetters, letterTag, wordTag, ignore, }: IProps): {
|
|
14
15
|
wordsMeta: import("../types").ISplitTextWordMeta[];
|
|
15
16
|
lettersMeta: ISplitTextLetterMeta[];
|
|
16
17
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"splitBase.d.ts","sourceRoot":"","sources":["../../../../../src/components/SplitText/utils/splitBase.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"splitBase.d.ts","sourceRoot":"","sources":["../../../../../src/components/SplitText/utils/splitBase.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAC;AAIvE,UAAU,MAAM;IACd,SAAS,EAAE,WAAW,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;IACxB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,MAAM,qBAAqB,CAAC;IACvC,OAAO,EAAE,MAAM,qBAAqB,CAAC;IACrC,MAAM,EAAE,qBAAqB,CAAC,QAAQ,CAAC,CAAC;CACzC;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,EACxB,SAAS,EACT,eAAe,EACf,aAAa,EACb,UAAU,EACV,SAAS,EACT,OAAO,EACP,MAAM,GACP,EAAE,MAAM;;;EAiCR"}
|
|
@@ -1,13 +1,14 @@
|
|
|
1
|
-
import { ISplitTextLetterMeta, ISplitTextWordMeta } from '../types';
|
|
1
|
+
import { ISplitTextLetterMeta, ISplitTextStaticProps, ISplitTextWordMeta } from '../types';
|
|
2
2
|
interface IProps {
|
|
3
3
|
wordsMeta: ISplitTextWordMeta[];
|
|
4
4
|
classname: string;
|
|
5
5
|
tagName: keyof HTMLElementTagNameMap;
|
|
6
|
+
ignore: ISplitTextStaticProps['ignore'];
|
|
6
7
|
}
|
|
7
8
|
/**
|
|
8
9
|
* Wraps each letter in every word inside the container with the specified HTML tag and class name.
|
|
9
10
|
*/
|
|
10
|
-
export declare function wrapLetters({ wordsMeta, classname, tagName }: IProps): {
|
|
11
|
+
export declare function wrapLetters({ wordsMeta, classname, tagName, ignore }: IProps): {
|
|
11
12
|
lettersMeta: ISplitTextLetterMeta[];
|
|
12
13
|
};
|
|
13
14
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wrapLetters.d.ts","sourceRoot":"","sources":["../../../../../src/components/SplitText/utils/wrapLetters.ts"],"names":[],"mappings":"AACA,OAAO,
|
|
1
|
+
{"version":3,"file":"wrapLetters.d.ts","sourceRoot":"","sources":["../../../../../src/components/SplitText/utils/wrapLetters.ts"],"names":[],"mappings":"AACA,OAAO,EACL,oBAAoB,EACpB,qBAAqB,EACrB,kBAAkB,EACnB,MAAM,UAAU,CAAC;AAGlB,UAAU,MAAM;IACd,SAAS,EAAE,kBAAkB,EAAE,CAAC;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,qBAAqB,CAAC;IACrC,MAAM,EAAE,qBAAqB,CAAC,QAAQ,CAAC,CAAC;CACzC;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,MAAM;;EA8C5E"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wrapLines.d.ts","sourceRoot":"","sources":["../../../../../src/components/SplitText/utils/wrapLines.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAElE,UAAU,MAAM;IACd,SAAS,EAAE,WAAW,CAAC;IACvB,eAAe,EAAE,OAAO,CAAC;IACzB,SAAS,EAAE,kBAAkB,EAAE,CAAC;IAChC,aAAa,EAAE,MAAM,CAAC;IACtB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,OAAO,EAAE,MAAM,qBAAqB,CAAC;CACtC;AAED,UAAU,KAAM,SAAQ,kBAAkB;IACxC,KAAK,EAAE,IAAI,EAAE,CAAC;CACf;AAiBD,wBAAgB,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,WAUxD;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,EACxB,SAAS,EACT,eAAe,EACf,SAAS,EACT,aAAa,EACb,oBAAoB,EACpB,OAAO,GACR,EAAE,MAAM;;;
|
|
1
|
+
{"version":3,"file":"wrapLines.d.ts","sourceRoot":"","sources":["../../../../../src/components/SplitText/utils/wrapLines.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAElE,UAAU,MAAM;IACd,SAAS,EAAE,WAAW,CAAC;IACvB,eAAe,EAAE,OAAO,CAAC;IACzB,SAAS,EAAE,kBAAkB,EAAE,CAAC;IAChC,aAAa,EAAE,MAAM,CAAC;IACtB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,OAAO,EAAE,MAAM,qBAAqB,CAAC;CACtC;AAED,UAAU,KAAM,SAAQ,kBAAkB;IACxC,KAAK,EAAE,IAAI,EAAE,CAAC;CACf;AAiBD,wBAAgB,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,WAUxD;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,EACxB,SAAS,EACT,eAAe,EACf,SAAS,EACT,aAAa,EACb,oBAAoB,EACpB,OAAO,GACR,EAAE,MAAM;;;EAyHR"}
|
|
@@ -1,12 +1,13 @@
|
|
|
1
|
-
import { ISplitTextWordMeta } from '../types';
|
|
1
|
+
import { ISplitTextStaticProps, ISplitTextWordMeta } from '../types';
|
|
2
2
|
interface IProps {
|
|
3
3
|
container: ChildNode;
|
|
4
4
|
classname: string;
|
|
5
5
|
tagName: keyof HTMLElementTagNameMap;
|
|
6
|
+
ignore: ISplitTextStaticProps['ignore'];
|
|
6
7
|
}
|
|
7
8
|
/**
|
|
8
9
|
* Wraps each word inside the container in an HTML element with the specified tag and class.
|
|
9
10
|
*/
|
|
10
|
-
export declare function wrapWords({ container, classname, tagName }: IProps): ISplitTextWordMeta[];
|
|
11
|
+
export declare function wrapWords({ container, classname, tagName, ignore }: IProps): ISplitTextWordMeta[];
|
|
11
12
|
export {};
|
|
12
13
|
//# sourceMappingURL=wrapWords.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wrapWords.d.ts","sourceRoot":"","sources":["../../../../../src/components/SplitText/utils/wrapWords.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"wrapWords.d.ts","sourceRoot":"","sources":["../../../../../src/components/SplitText/utils/wrapWords.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAGrE,UAAU,MAAM;IACd,SAAS,EAAE,SAAS,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,qBAAqB,CAAC;IACrC,MAAM,EAAE,qBAAqB,CAAC,QAAQ,CAAC,CAAC;CACzC;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,MAAM,wBAiF1E"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "vevet",
|
|
3
|
-
"version": "5.0.
|
|
3
|
+
"version": "5.0.6",
|
|
4
4
|
"description": "Vevet is a JavaScript library for creative development that simplifies crafting rich interactions like split text animations, carousels, marquees, preloading, and more.",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"storybook": "storybook dev -p 6006",
|
|
@@ -14,9 +14,7 @@
|
|
|
14
14
|
"build:cdn": "esbuild ./lib/esm/index.js --bundle --format=iife --target=es2017 --global-name=Vevet --minify --outfile=./lib/cdn/vevet.iife.min.js",
|
|
15
15
|
"build:styles": "copyfiles src/styles/**/*.scss lib/styles -u 2",
|
|
16
16
|
"build:docs": "rimraf docs && typedoc --out docusaurus/static/v5 ./src --theme default --hideGenerator --includeVersion && cd docusaurus && npm run build && cd ..",
|
|
17
|
-
"
|
|
18
|
-
"deploy": "gh-pages -d docusaurus/build",
|
|
19
|
-
"prepublishOnly": "run-s lint build deploy"
|
|
17
|
+
"deploy": "gh-pages -d docusaurus/build"
|
|
20
18
|
},
|
|
21
19
|
"main": "./lib/cjs/index.js",
|
|
22
20
|
"types": "./lib/types/index.d.ts",
|
|
@@ -70,6 +68,8 @@
|
|
|
70
68
|
"devDependencies": {
|
|
71
69
|
"@anton.bobrov/eslint-config": "2.0.5",
|
|
72
70
|
"@chromatic-com/storybook": "^3.2.4",
|
|
71
|
+
"@release-it/bumper": "^7.0.5",
|
|
72
|
+
"@release-it/conventional-changelog": "^10.0.1",
|
|
73
73
|
"@storybook/addon-essentials": "^8.6.0",
|
|
74
74
|
"@storybook/addon-interactions": "^8.6.0",
|
|
75
75
|
"@storybook/addon-onboarding": "^8.6.0",
|
|
@@ -90,6 +90,7 @@
|
|
|
90
90
|
"prettier": "3.3.3",
|
|
91
91
|
"react": "^18.3.1",
|
|
92
92
|
"react-dom": "^18.3.1",
|
|
93
|
+
"release-it": "^19.0.2",
|
|
93
94
|
"rimraf": "^6.0.1",
|
|
94
95
|
"storybook": "^8.6.0",
|
|
95
96
|
"tsc-alias": "^1.8.7",
|
|
@@ -524,6 +524,10 @@ export class Snap<
|
|
|
524
524
|
track.current = lerp(start, end, data.eased);
|
|
525
525
|
track.target = track.current;
|
|
526
526
|
|
|
527
|
+
if (data.progress === 1) {
|
|
528
|
+
this._targetIndex = undefined;
|
|
529
|
+
}
|
|
530
|
+
|
|
527
531
|
this._render();
|
|
528
532
|
callbacks.emit('timelineUpdate', data);
|
|
529
533
|
});
|
|
@@ -564,22 +568,19 @@ export class Snap<
|
|
|
564
568
|
}
|
|
565
569
|
|
|
566
570
|
this._targetIndex = index;
|
|
567
|
-
|
|
568
|
-
// Get nearest magnet
|
|
569
|
-
|
|
570
571
|
const slideMagnets = slides[index].magnets;
|
|
571
|
-
const targetMagnet = slideMagnets[0] + loopCount * max;
|
|
572
572
|
|
|
573
573
|
// Use static magnet when not looping
|
|
574
574
|
|
|
575
575
|
if (!props.loop) {
|
|
576
|
-
this.toCoord(
|
|
576
|
+
this.toCoord(slideMagnets[0], duration);
|
|
577
577
|
|
|
578
578
|
return;
|
|
579
579
|
}
|
|
580
580
|
|
|
581
581
|
// Or calculate closest magnet
|
|
582
582
|
|
|
583
|
+
const targetMagnet = slideMagnets[0] + loopCount * max;
|
|
583
584
|
const targetMagnetMin = targetMagnet - max;
|
|
584
585
|
const targetMagnetMax = targetMagnet + max;
|
|
585
586
|
const allMagnets = [targetMagnetMin, targetMagnet, targetMagnetMax];
|
|
@@ -53,6 +53,7 @@ export class SplitText<
|
|
|
53
53
|
lineClass: this._cn('__line'),
|
|
54
54
|
lineWrapperClass: this._cn('__line-wrapper'),
|
|
55
55
|
resizeDebounce: 0,
|
|
56
|
+
ignore: null,
|
|
56
57
|
} as TRequiredProps<StaticProps>;
|
|
57
58
|
}
|
|
58
59
|
|
|
@@ -210,7 +211,7 @@ export class SplitText<
|
|
|
210
211
|
return;
|
|
211
212
|
}
|
|
212
213
|
|
|
213
|
-
const { container, letterTag, wordTag, wordClass, letterClass } =
|
|
214
|
+
const { container, letterTag, wordTag, wordClass, letterClass, ignore } =
|
|
214
215
|
this.props;
|
|
215
216
|
|
|
216
217
|
this._isBaseSplit = true;
|
|
@@ -222,6 +223,7 @@ export class SplitText<
|
|
|
222
223
|
hasLetters: this.props.letters,
|
|
223
224
|
letterTag,
|
|
224
225
|
wordTag,
|
|
226
|
+
ignore,
|
|
225
227
|
});
|
|
226
228
|
|
|
227
229
|
this._wordsMeta = wordsMeta;
|
|
@@ -76,6 +76,12 @@ export interface ISplitTextStaticProps extends IModuleStaticProps {
|
|
|
76
76
|
* @default 0
|
|
77
77
|
*/
|
|
78
78
|
resizeDebounce?: number;
|
|
79
|
+
|
|
80
|
+
/**
|
|
81
|
+
* Do not split certain elements. Supports string selectors, array of elements, or function.
|
|
82
|
+
* @default null
|
|
83
|
+
*/
|
|
84
|
+
ignore?: string | HTMLElement[] | ((element: HTMLElement) => boolean) | null;
|
|
79
85
|
}
|
|
80
86
|
|
|
81
87
|
/** Mutable properties for the SplitText module */
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { ISplitTextStaticProps } from '../types';
|
|
2
|
+
|
|
3
|
+
export function isIgnored(
|
|
4
|
+
element: HTMLElement,
|
|
5
|
+
ignore: ISplitTextStaticProps['ignore'],
|
|
6
|
+
) {
|
|
7
|
+
if (!ignore) {
|
|
8
|
+
return false;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
if (typeof ignore === 'string') {
|
|
12
|
+
return element.matches(ignore);
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
if (typeof ignore === 'function') {
|
|
16
|
+
return ignore(element);
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
return ignore.includes(element);
|
|
20
|
+
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
interface IClone {
|
|
2
2
|
node: Node;
|
|
3
|
+
cssText: string | null;
|
|
3
4
|
parent?: Node | null;
|
|
4
5
|
}
|
|
5
6
|
|
|
@@ -8,7 +9,11 @@ export function saveInitialNodes(root: Node) {
|
|
|
8
9
|
|
|
9
10
|
function copy(node: Node): void {
|
|
10
11
|
// Add the current node and its parent to the array
|
|
11
|
-
flatArray.push({
|
|
12
|
+
flatArray.push({
|
|
13
|
+
node,
|
|
14
|
+
cssText: node instanceof HTMLElement ? node.style.cssText : null,
|
|
15
|
+
parent: node.parentNode,
|
|
16
|
+
});
|
|
12
17
|
|
|
13
18
|
// Recursively process child nodes
|
|
14
19
|
node.childNodes.forEach((child) => copy(child));
|
|
@@ -23,8 +28,14 @@ export function saveInitialNodes(root: Node) {
|
|
|
23
28
|
const fragment = document.createDocumentFragment();
|
|
24
29
|
|
|
25
30
|
flatArray.forEach((element) => {
|
|
26
|
-
|
|
27
|
-
|
|
31
|
+
const { node, cssText } = element;
|
|
32
|
+
|
|
33
|
+
if (node instanceof HTMLElement && cssText) {
|
|
34
|
+
node.style.cssText = cssText;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
while (node.childNodes[0]) {
|
|
38
|
+
node.childNodes[0].remove();
|
|
28
39
|
}
|
|
29
40
|
|
|
30
41
|
if (element.parent) {
|