vevet
Version:
Vevet is a JavaScript library for creative development that simplifies crafting rich interactions like split text animations, carousels, marquees, preloading, and more.
36 lines • 1.4 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.splitBase = splitBase;
var wrapLetters_1 = require("./wrapLetters");
var wrapWords_1 = require("./wrapWords");
/**
* Splits text in the container into words and optionally into letters.
*/
function splitBase(_a) {
var container = _a.container, letterClassName = _a.letterClassName, wordClassName = _a.wordClassName, hasLetters = _a.hasLetters, letterTag = _a.letterTag, wordTag = _a.wordTag;
// Prepare the fragment
var prepareFragment = document.createDocumentFragment();
while (container.childNodes[0]) {
prepareFragment.appendChild(container.childNodes[0]);
}
// Wrap the text into words
var wordsMeta = (0, wrapWords_1.wrapWords)({
container: prepareFragment,
classname: wordClassName,
tagName: wordTag,
});
var lettersMeta = [];
// If enabled, wrap words into letters
if (hasLetters) {
var wrappedLetters = (0, wrapLetters_1.wrapLetters)({
wordsMeta: wordsMeta,
classname: letterClassName,
tagName: letterTag,
});
lettersMeta.push.apply(lettersMeta, wrappedLetters.lettersMeta);
}
// Append the prepared fragment
container.appendChild(prepareFragment);
return { wordsMeta: wordsMeta, lettersMeta: lettersMeta };
}
//# sourceMappingURL=splitBase.js.map