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.
Files changed (73) hide show
  1. package/README.md +1 -0
  2. package/lib/cdn/vevet.iife.min.js +5 -5
  3. package/lib/cjs/components/Snap/index.js +5 -3
  4. package/lib/cjs/components/Snap/index.js.map +1 -1
  5. package/lib/cjs/components/SplitText/index.js +3 -2
  6. package/lib/cjs/components/SplitText/index.js.map +1 -1
  7. package/lib/cjs/components/SplitText/utils/isIgnored.js +16 -0
  8. package/lib/cjs/components/SplitText/utils/isIgnored.js.map +1 -0
  9. package/lib/cjs/components/SplitText/utils/saveInitialNodes.js +11 -3
  10. package/lib/cjs/components/SplitText/utils/saveInitialNodes.js.map +1 -1
  11. package/lib/cjs/components/SplitText/utils/splitBase.js +3 -1
  12. package/lib/cjs/components/SplitText/utils/splitBase.js.map +1 -1
  13. package/lib/cjs/components/SplitText/utils/wrapLetters.js +6 -2
  14. package/lib/cjs/components/SplitText/utils/wrapLetters.js.map +1 -1
  15. package/lib/cjs/components/SplitText/utils/wrapLines.js +15 -5
  16. package/lib/cjs/components/SplitText/utils/wrapLines.js.map +1 -1
  17. package/lib/cjs/components/SplitText/utils/wrapWords.js +15 -1
  18. package/lib/cjs/components/SplitText/utils/wrapWords.js.map +1 -1
  19. package/lib/cjs/core/index.js +2 -2
  20. package/lib/cjs/core/index.js.map +1 -1
  21. package/lib/cjs/manifest.json +3 -0
  22. package/lib/esm/components/Snap/index.js +5 -3
  23. package/lib/esm/components/Snap/index.js.map +1 -1
  24. package/lib/esm/components/SplitText/index.js +3 -2
  25. package/lib/esm/components/SplitText/index.js.map +1 -1
  26. package/lib/esm/components/SplitText/utils/isIgnored.js +13 -0
  27. package/lib/esm/components/SplitText/utils/isIgnored.js.map +1 -0
  28. package/lib/esm/components/SplitText/utils/saveInitialNodes.js +11 -3
  29. package/lib/esm/components/SplitText/utils/saveInitialNodes.js.map +1 -1
  30. package/lib/esm/components/SplitText/utils/splitBase.js +3 -1
  31. package/lib/esm/components/SplitText/utils/splitBase.js.map +1 -1
  32. package/lib/esm/components/SplitText/utils/wrapLetters.js +6 -2
  33. package/lib/esm/components/SplitText/utils/wrapLetters.js.map +1 -1
  34. package/lib/esm/components/SplitText/utils/wrapLines.js +13 -5
  35. package/lib/esm/components/SplitText/utils/wrapLines.js.map +1 -1
  36. package/lib/esm/components/SplitText/utils/wrapWords.js +15 -1
  37. package/lib/esm/components/SplitText/utils/wrapWords.js.map +1 -1
  38. package/lib/esm/core/index.js +2 -3
  39. package/lib/esm/core/index.js.map +1 -1
  40. package/lib/esm/manifest.json +3 -0
  41. package/lib/types/components/Snap/index.d.ts.map +1 -1
  42. package/lib/types/components/SplitText/index.d.ts.map +1 -1
  43. package/lib/types/components/SplitText/types.d.ts +5 -0
  44. package/lib/types/components/SplitText/types.d.ts.map +1 -1
  45. package/lib/types/components/SplitText/utils/isIgnored.d.ts +3 -0
  46. package/lib/types/components/SplitText/utils/isIgnored.d.ts.map +1 -0
  47. package/lib/types/components/SplitText/utils/saveInitialNodes.d.ts.map +1 -1
  48. package/lib/types/components/SplitText/utils/splitBase.d.ts +3 -2
  49. package/lib/types/components/SplitText/utils/splitBase.d.ts.map +1 -1
  50. package/lib/types/components/SplitText/utils/wrapLetters.d.ts +3 -2
  51. package/lib/types/components/SplitText/utils/wrapLetters.d.ts.map +1 -1
  52. package/lib/types/components/SplitText/utils/wrapLines.d.ts.map +1 -1
  53. package/lib/types/components/SplitText/utils/wrapWords.d.ts +3 -2
  54. package/lib/types/components/SplitText/utils/wrapWords.d.ts.map +1 -1
  55. package/package.json +5 -4
  56. package/src/components/Snap/index.ts +6 -5
  57. package/src/components/SplitText/index.ts +3 -1
  58. package/src/components/SplitText/types.ts +6 -0
  59. package/src/components/SplitText/utils/isIgnored.ts +20 -0
  60. package/src/components/SplitText/utils/saveInitialNodes.ts +14 -3
  61. package/src/components/SplitText/utils/splitBase.ts +5 -1
  62. package/src/components/SplitText/utils/wrapLetters.ts +13 -3
  63. package/src/components/SplitText/utils/wrapLines.ts +21 -5
  64. package/src/components/SplitText/utils/wrapWords.ts +19 -2
  65. package/src/core/index.ts +2 -2
  66. package/src/manifest.json +3 -0
  67. package/lib/cjs/version.js +0 -5
  68. package/lib/cjs/version.js.map +0 -1
  69. package/lib/esm/version.js +0 -3
  70. package/lib/esm/version.js.map +0 -1
  71. package/lib/types/version.d.ts +0 -3
  72. package/lib/types/version.d.ts.map +0 -1
  73. 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({ node, parent: node.parentNode });
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
- while (element.node.childNodes[0]) {
17
- element.node.childNodes[0].remove();
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":"AAKA,MAAM,UAAU,gBAAgB,CAAC,IAAU;IACzC,MAAM,SAAS,GAAa,EAAE,CAAC;IAE/B,SAAS,IAAI,CAAC,IAAU;QACtB,mDAAmD;QACnD,SAAS,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;QAElD,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,OAAO,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;oBAClC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;gBACtC,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"}
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;AAWxC;;GAEG;AACH,MAAM,UAAU,SAAS,CAAC,EACxB,SAAS,EACT,eAAe,EACf,aAAa,EACb,UAAU,EACV,SAAS,EACT,OAAO,GACA;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;KACjB,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;SACnB,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
+ {"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.append(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;AASjC;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,EAAU;IACnE,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,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,MAAM,CAAC,OAAO,CAAC,CAAC;YAEjC,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"}
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 prevTop = Infinity;
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 currentTop = Math.round(wordMeta.element.offsetTop);
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 (currentTop !== prevTop) {
44
- prevTop = currentTop;
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":"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"}
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":"AAQA;;GAEG;AACH,MAAM,UAAU,SAAS,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,EAAU;IACjE,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;IAE3C;;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,6CAA6C;gBAC7C,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,cAAc,CAAC;YACtC,CAAC;YAED,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,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;oBAE3D,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"}
1
+ {"version":3,"file":"wrapWords.js","sourceRoot":"","sources":["../../../../../src/components/SplitText/utils/wrapWords.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { detect } from 'detect-browser';
2
2
  import isMobileJs from 'ismobilejs';
3
- import version from '../version';
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":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ {
2
+ "version": "5.0.6"
3
+ }
@@ -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;IAiBhD;;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;IAuBpB;;OAEG;IACH,SAAS,CAAC,WAAW;IAuBrB;;;OAGG;IACH,SAAS,CAAC,QAAQ;CAcnB"}
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;CACzB;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"}
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,3 @@
1
+ import { ISplitTextStaticProps } from '../types';
2
+ export declare function isIgnored(element: HTMLElement, ignore: ISplitTextStaticProps['ignore']): boolean;
3
+ //# sourceMappingURL=isIgnored.d.ts.map
@@ -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":"AAKA,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,IAAI;;EAqC1C"}
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;AAIhD,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;CACtC;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,EACxB,SAAS,EACT,eAAe,EACf,aAAa,EACb,UAAU,EACV,SAAS,EACT,OAAO,GACR,EAAE,MAAM;;;EA+BR"}
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,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAEpE,UAAU,MAAM;IACd,SAAS,EAAE,kBAAkB,EAAE,CAAC;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,qBAAqB,CAAC;CACtC;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,MAAM;;EA0CpE"}
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;;;EAyGR"}
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;AAE9C,UAAU,MAAM;IACd,SAAS,EAAE,SAAS,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,qBAAqB,CAAC;CACtC;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,MAAM,wBAkElE"}
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.5",
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
- "version": "node ./config/version.js && git add ./src/version.ts && git commit -m \"Update version\"",
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(targetMagnet, duration);
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({ node, parent: node.parentNode });
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
- while (element.node.childNodes[0]) {
27
- element.node.childNodes[0].remove();
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) {