Socket
Socket
Sign inDemoInstall

typeit

Package Overview
Dependencies
0
Maintainers
1
Versions
117
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 8.5.0 to 8.5.1

4

dist/index.es.js

@@ -276,3 +276,3 @@ // TypeIt by Alex MacArthur - https://typeitjs.com

let isMovingToEnd = new RegExp(END, "i").test(to);
let selectorIndex = [...queueItems].reverse().findIndex(({ char }) => {
let selectorIndex = selector ? [...queueItems].reverse().findIndex(({ char }) => {
let parentElement = char.parentElement;

@@ -284,3 +284,3 @@ let parentMatches = parentElement.matches(selector);

return parentMatches && parentElement.firstChild.isSameNode(char);
});
}) : -1;
if (selectorIndex < 0) {

@@ -287,0 +287,0 @@ selectorIndex = isMovingToEnd ? 0 : queueItems.length - 1;

// TypeIt by Alex MacArthur - https://typeitjs.com
(function(w,C){typeof exports=="object"&&typeof module<"u"?module.exports=C():typeof define=="function"&&define.amd?define(C):(w=typeof globalThis<"u"?globalThis:w||self,w.TypeIt=C())})(this,function(){"use strict";var w=e=>Array.isArray(e),C=e=>w(e)?e:[e];let se=function(e){let r=function(d){return C(d).forEach(b=>h.set(Symbol(b.char?.innerText),{...b})),this},l=()=>u().filter(d=>d.typeable),s=function(d,b){let U=h.keys();h.set(U[d],b)},o=function(){h.forEach(d=>delete d.done)},c=function(){h=new Map,r(e)},_=()=>h,u=()=>Array.from(h.values()),p=d=>h.delete(d),S=(d=!1)=>d?u():u().filter(b=>!b.done),z=(d,b=!1)=>b?h.delete(d):h.get(d).done=!0,h=new Map;return r(e),{add:r,set:s,wipe:c,reset:o,destroy:p,done:z,getItems:S,getQueue:_,getTypeable:l}};var j=e=>Array.from(e),H=e=>document.createTextNode(e);let R=e=>([...e.childNodes].forEach(r=>{if(r.nodeValue){[...r.nodeValue].forEach(l=>{r.parentNode.insertBefore(H(l),r)}),r.remove();return}R(r)}),e);var W=e=>{let r=document.implementation.createHTMLDocument();return r.body.innerHTML=e,R(r.body)};const J="data-typeit-id",k="ti-cursor",oe="END",ae={started:!1,completed:!1,frozen:!1,destroyed:!1},ue={breakLines:!0,cursor:!0,cursorChar:"|",cursorSpeed:1e3,deleteSpeed:null,html:!0,lifeLike:!0,loop:!1,loopDelay:750,nextStringDelay:750,speed:100,startDelay:250,startDelete:!1,strings:[],waitUntilVisible:!1,beforeString:()=>{},afterString:()=>{},beforeStep:()=>{},afterStep:()=>{},afterComplete:()=>{}},de=`[${J}]:before {content: '.'; display: inline-block; width: 0; visibility: hidden;}`;function K(e,r=!1){let l=document.createTreeWalker(e,NodeFilter.SHOW_ALL,{acceptNode:c=>c.classList?.contains(k)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT}),s,o=[];for(;s=l.nextNode();)s.originalParent=s.parentNode,o.push(s);return r?o.reverse():o}function fe(e){return K(W(e))}function ce(e,r=!0){return r?fe(e):j(e).map(H)}var x=e=>document.createElement(e),X=(e,r="")=>{let l=x("style");l.id=r,l.appendChild(H(e)),document.head.appendChild(l)},Y=e=>(w(e)||(e=[e/2,e/2]),e),G=(e,r)=>Math.abs(Math.random()*(e+r-(e-r))+(e-r));let Z=e=>e/2;function ye(e){let{speed:r,deleteSpeed:l,lifeLike:s}=e;return l=l!==null?l:r/3,s?[G(r,Z(r)),G(l,Z(l))]:[r,l]}var pe=e=>(e.forEach(clearTimeout),[]),he=()=>Math.random().toString().substring(2,9),B=e=>"value"in e;let me=e=>B(e)?j(e.value):K(e,!0).filter(r=>!(r.childNodes.length>0));var be=(e,r)=>{new IntersectionObserver((s,o)=>{s.forEach(c=>{c.isIntersecting&&(r(),o.unobserve(e))})},{threshold:1}).observe(e)};let N=e=>typeof e=="function"?e():e;var ee=e=>Number.isInteger(e);let Q=(e,r=document,l=!1)=>r[`querySelector${l?"All":""}`](e),ge=e=>e?.tagName==="BODY",Se=(e,r)=>{if(B(e)){e.value=`${e.value}${r.textContent}`;return}r.innerHTML="";let l=ge(r.originalParent)?e:r.originalParent||e;l.insertBefore(r,Q("."+k,l)||null)},Te=(e,r,l)=>Math.min(Math.max(r+e,0),l.length);var D=(e,r)=>Object.assign({},e,r),F=e=>{if(!e)return;let r=e.parentNode;(r.childNodes.length>1?e:r).remove()},_e=(e,r,l)=>{let s=r[l-1],o=Q(`.${k}`,e);e=s?.parentNode||e,e.insertBefore(o,s||null)};function ve(e){return typeof e=="string"?Q(e):e}var Ee=e=>/<(.+)>(.*?)<\/(.+)>/.test(e.outerHTML);let we=async(e,r,l)=>new Promise(s=>{let o=async()=>{await e(),s()};l.push(setTimeout(o,r||0))}),Ce={"font-family":"","font-weight":"","font-size":"","font-style":"","line-height":"",color:"","margin-left":"-.125em","margin-right":".125em"},Ne=(e,r,l)=>{let o=`${`[${J}='${e}']`} .${k}`,c=getComputedStyle(l),_=Object.entries(Ce).reduce((u,[p,S])=>`${u} ${p}: var(--ti-cursor-${p}, ${S||c[p]});`,"");X(`@keyframes blink-${e} { 0% {opacity: 0} 49% {opacity: 0} 50% {opacity: 1} } ${o} { display: inline; letter-spacing: -1em; ${_} animation: blink-${e} ${r.cursorSpeed/1e3}s infinite; } ${o}.with-delay { animation-delay: 500ms; } ${o}.disabled { animation: none; }`,e)};var te=(e,r)=>new Array(r).fill(e);const re=({queueItems:e,selector:r,cursorPosition:l,to:s})=>{if(ee(r))return r*-1;let o=new RegExp(oe,"i").test(s),c=[...e].reverse().findIndex(({char:u})=>{let p=u.parentElement,S=p.matches(r);return o&&S?!0:S&&p.firstChild.isSameNode(u)});c<0&&(c=o?0:e.length-1);let _=o?0:1;return c-l+_};let Le=async(e,r)=>{let l=async()=>e.func?.call(globalThis);e.delay?await r(async()=>{await l()},e.delay):await l()};return function(e,r={}){let l=async(t,n,a=!1)=>{g.frozen&&await new Promise(y=>{this.unfreeze=()=>{g.frozen=!1,y()}}),a||await i.beforeStep(this),await we(t,n,V),a||await i.afterStep(this)},s=()=>B(f),o=(t=0)=>ye(i)[t],c=()=>me(f),_=(t={})=>{let n=t.delay;n&&m.add({delay:n})},u=(t,n)=>(m.add(t),_(n),this),p=(t={})=>[{func:()=>P(t)},{func:()=>P(i)}],S=t=>{let n=i.nextStringDelay;m.add([{delay:n[0]},t,{delay:n[1]}])},z=()=>{if(s())return;let t=x("span");return t.className=k,q?(t.innerHTML=W(i.cursorChar).innerHTML,t):(t.style.visibility="hidden",t)},h=async()=>{!s()&&v&&f.appendChild(v),q&&Ne(ie,i,f)},d=t=>{q&&v&&(v.classList.toggle("disabled",t),v.classList.toggle("with-delay",!t))},b=()=>{let t=i.strings.filter(n=>!!n);t.forEach((n,a)=>{this.type(n),a+1!==t.length&&S({func:i.breakLines?()=>O(x("BR")):A,typeable:!!i.breakLines})})},U=async t=>{T&&await ne({value:T});for(let n of m.getTypeable())await l(A,o(1));m.reset(),m.set(0,{delay:t})},Ie=t=>{let n=f.innerHTML;return n?(f.innerHTML="",i.startDelete?(f.innerHTML=n,R(f),S({func:A}),t):n.trim().split(/<br(?:\s*?)(?:\/)?>/).concat(t)):t},M=async(t=!0)=>{g.started=!0;try{for(let[a,y]of m.getQueue())y.done||(y.typeable&&d(!0),await Le(y,l),d(!1),m.done(a,!t));if(!t)return this;if(g.completed=!0,await i.afterComplete(this),!i.loop)throw"";let n=i.loopDelay;l(async()=>{await U(n[0]),M()},n[1])}catch{}return this},ne=async t=>{T=Te(t,T,c()),_e(f,c(),T)},O=t=>Se(f,t),P=async t=>i=D(i,t),ke=async()=>{if(s()){f.value="";return}c().forEach(F)},A=()=>{let t=c();!t.length||(s()?f.value=f.value.slice(0,-1):F(t[T]))};this.break=function(t){return u({func:()=>O(x("BR")),typeable:!0},t)},this.delete=function(t=null,n={}){t=N(t);let a=p(n),y=t,{instant:$,to:E}=n,L=m.getTypeable(),I=(()=>y===null?L.length:ee(y)?y:re({queueItems:L,selector:y,cursorPosition:le,to:E}))();return u([a[0],...te({func:A,delay:$?0:o(1)},I),a[1]],n)},this.empty=function(t={}){return u({func:ke},t)},this.exec=function(t,n={}){let a=p(n);return u([a[0],{func:()=>t(this)},a[1]],n)},this.move=function(t,n={}){t=N(t);let a=p(n),{instant:y,to:$}=n,E=re({queueItems:m.getTypeable(),selector:t===null?"":t,to:$,cursorPosition:T}),L=E<0?-1:1;return le=T+E,u([a[0],...te({func:()=>ne(L),delay:y?0:o()},Math.abs(E)),a[1]],n)},this.options=function(t,n={}){return t=N(t),P(t),u({},n)},this.pause=function(t,n={}){return u({delay:N(t)},n)},this.type=function(t,n={}){t=N(t);let{instant:a}=n,y=p(n),E=ce(t,i.html).map(I=>({func:()=>O(I),char:I,delay:a||Ee(I)?0:o(),typeable:I.nodeType===Node.TEXT_NODE})),L=[y[0],{func:async()=>await i.beforeString(t,this)},...E,{func:async()=>await i.afterString(t,this)},y[1]];return u(L,n)},this.is=function(t){return g[t]},this.destroy=function(t=!0){V=pe(V),N(t)&&v&&F(v),g.destroyed=!0},this.freeze=function(){g.frozen=!0},this.unfreeze=function(){},this.reset=function(t){!this.is("destroyed")&&this.destroy(),t?(m.wipe(),t(this)):m.reset(),T=0;for(let n in g)g[n]=!1;return f[s()?"value":"innerHTML"]="",this},this.go=function(){return g.started?this:(h(),i.waitUntilVisible?(be(f,M.bind(this)),this):(M(),this))},this.flush=function(t=()=>{}){return h(),M(!1).then(t),this},this.getQueue=()=>m,this.getOptions=()=>i,this.updateOptions=t=>P(t),this.getElement=()=>f;let f=ve(e),V=[],T=0,le=0,g=D({},ae),i=D(ue,r);i=D(i,{html:!s()&&i.html,nextStringDelay:Y(i.nextStringDelay),loopDelay:Y(i.loopDelay)});let ie=he(),m=se([{func:()=>{},delay:i.startDelay}]);f.dataset.typeitId=ie,X(de);let q=i.cursor&&!s(),v=z();i.strings=Ie(C(i.strings)),i.strings.length&&b()}});
(function(w,C){typeof exports=="object"&&typeof module<"u"?module.exports=C():typeof define=="function"&&define.amd?define(C):(w=typeof globalThis<"u"?globalThis:w||self,w.TypeIt=C())})(this,function(){"use strict";var w=e=>Array.isArray(e),C=e=>w(e)?e:[e];let se=function(e){let r=function(d){return C(d).forEach(b=>h.set(Symbol(b.char?.innerText),{...b})),this},l=()=>u().filter(d=>d.typeable),s=function(d,b){let U=h.keys();h.set(U[d],b)},o=function(){h.forEach(d=>delete d.done)},c=function(){h=new Map,r(e)},_=()=>h,u=()=>Array.from(h.values()),p=d=>h.delete(d),S=(d=!1)=>d?u():u().filter(b=>!b.done),z=(d,b=!1)=>b?h.delete(d):h.get(d).done=!0,h=new Map;return r(e),{add:r,set:s,wipe:c,reset:o,destroy:p,done:z,getItems:S,getQueue:_,getTypeable:l}};var j=e=>Array.from(e),H=e=>document.createTextNode(e);let R=e=>([...e.childNodes].forEach(r=>{if(r.nodeValue){[...r.nodeValue].forEach(l=>{r.parentNode.insertBefore(H(l),r)}),r.remove();return}R(r)}),e);var W=e=>{let r=document.implementation.createHTMLDocument();return r.body.innerHTML=e,R(r.body)};const J="data-typeit-id",k="ti-cursor",oe="END",ae={started:!1,completed:!1,frozen:!1,destroyed:!1},ue={breakLines:!0,cursor:!0,cursorChar:"|",cursorSpeed:1e3,deleteSpeed:null,html:!0,lifeLike:!0,loop:!1,loopDelay:750,nextStringDelay:750,speed:100,startDelay:250,startDelete:!1,strings:[],waitUntilVisible:!1,beforeString:()=>{},afterString:()=>{},beforeStep:()=>{},afterStep:()=>{},afterComplete:()=>{}},de=`[${J}]:before {content: '.'; display: inline-block; width: 0; visibility: hidden;}`;function K(e,r=!1){let l=document.createTreeWalker(e,NodeFilter.SHOW_ALL,{acceptNode:c=>c.classList?.contains(k)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT}),s,o=[];for(;s=l.nextNode();)s.originalParent=s.parentNode,o.push(s);return r?o.reverse():o}function fe(e){return K(W(e))}function ce(e,r=!0){return r?fe(e):j(e).map(H)}var x=e=>document.createElement(e),X=(e,r="")=>{let l=x("style");l.id=r,l.appendChild(H(e)),document.head.appendChild(l)},Y=e=>(w(e)||(e=[e/2,e/2]),e),G=(e,r)=>Math.abs(Math.random()*(e+r-(e-r))+(e-r));let Z=e=>e/2;function ye(e){let{speed:r,deleteSpeed:l,lifeLike:s}=e;return l=l!==null?l:r/3,s?[G(r,Z(r)),G(l,Z(l))]:[r,l]}var pe=e=>(e.forEach(clearTimeout),[]),he=()=>Math.random().toString().substring(2,9),B=e=>"value"in e;let me=e=>B(e)?j(e.value):K(e,!0).filter(r=>!(r.childNodes.length>0));var be=(e,r)=>{new IntersectionObserver((s,o)=>{s.forEach(c=>{c.isIntersecting&&(r(),o.unobserve(e))})},{threshold:1}).observe(e)};let N=e=>typeof e=="function"?e():e;var ee=e=>Number.isInteger(e);let Q=(e,r=document,l=!1)=>r[`querySelector${l?"All":""}`](e),ge=e=>e?.tagName==="BODY",Se=(e,r)=>{if(B(e)){e.value=`${e.value}${r.textContent}`;return}r.innerHTML="";let l=ge(r.originalParent)?e:r.originalParent||e;l.insertBefore(r,Q("."+k,l)||null)},Te=(e,r,l)=>Math.min(Math.max(r+e,0),l.length);var D=(e,r)=>Object.assign({},e,r),F=e=>{if(!e)return;let r=e.parentNode;(r.childNodes.length>1?e:r).remove()},_e=(e,r,l)=>{let s=r[l-1],o=Q(`.${k}`,e);e=s?.parentNode||e,e.insertBefore(o,s||null)};function ve(e){return typeof e=="string"?Q(e):e}var Ee=e=>/<(.+)>(.*?)<\/(.+)>/.test(e.outerHTML);let we=async(e,r,l)=>new Promise(s=>{let o=async()=>{await e(),s()};l.push(setTimeout(o,r||0))}),Ce={"font-family":"","font-weight":"","font-size":"","font-style":"","line-height":"",color:"","margin-left":"-.125em","margin-right":".125em"},Ne=(e,r,l)=>{let o=`${`[${J}='${e}']`} .${k}`,c=getComputedStyle(l),_=Object.entries(Ce).reduce((u,[p,S])=>`${u} ${p}: var(--ti-cursor-${p}, ${S||c[p]});`,"");X(`@keyframes blink-${e} { 0% {opacity: 0} 49% {opacity: 0} 50% {opacity: 1} } ${o} { display: inline; letter-spacing: -1em; ${_} animation: blink-${e} ${r.cursorSpeed/1e3}s infinite; } ${o}.with-delay { animation-delay: 500ms; } ${o}.disabled { animation: none; }`,e)};var te=(e,r)=>new Array(r).fill(e);const re=({queueItems:e,selector:r,cursorPosition:l,to:s})=>{if(ee(r))return r*-1;let o=new RegExp(oe,"i").test(s),c=r?[...e].reverse().findIndex(({char:u})=>{let p=u.parentElement,S=p.matches(r);return o&&S?!0:S&&p.firstChild.isSameNode(u)}):-1;c<0&&(c=o?0:e.length-1);let _=o?0:1;return c-l+_};let Le=async(e,r)=>{let l=async()=>e.func?.call(globalThis);e.delay?await r(async()=>{await l()},e.delay):await l()};return function(e,r={}){let l=async(t,n,a=!1)=>{g.frozen&&await new Promise(y=>{this.unfreeze=()=>{g.frozen=!1,y()}}),a||await i.beforeStep(this),await we(t,n,V),a||await i.afterStep(this)},s=()=>B(f),o=(t=0)=>ye(i)[t],c=()=>me(f),_=(t={})=>{let n=t.delay;n&&m.add({delay:n})},u=(t,n)=>(m.add(t),_(n),this),p=(t={})=>[{func:()=>P(t)},{func:()=>P(i)}],S=t=>{let n=i.nextStringDelay;m.add([{delay:n[0]},t,{delay:n[1]}])},z=()=>{if(s())return;let t=x("span");return t.className=k,q?(t.innerHTML=W(i.cursorChar).innerHTML,t):(t.style.visibility="hidden",t)},h=async()=>{!s()&&v&&f.appendChild(v),q&&Ne(ie,i,f)},d=t=>{q&&v&&(v.classList.toggle("disabled",t),v.classList.toggle("with-delay",!t))},b=()=>{let t=i.strings.filter(n=>!!n);t.forEach((n,a)=>{this.type(n),a+1!==t.length&&S({func:i.breakLines?()=>O(x("BR")):A,typeable:!!i.breakLines})})},U=async t=>{T&&await ne({value:T});for(let n of m.getTypeable())await l(A,o(1));m.reset(),m.set(0,{delay:t})},Ie=t=>{let n=f.innerHTML;return n?(f.innerHTML="",i.startDelete?(f.innerHTML=n,R(f),S({func:A}),t):n.trim().split(/<br(?:\s*?)(?:\/)?>/).concat(t)):t},M=async(t=!0)=>{g.started=!0;try{for(let[a,y]of m.getQueue())y.done||(y.typeable&&d(!0),await Le(y,l),d(!1),m.done(a,!t));if(!t)return this;if(g.completed=!0,await i.afterComplete(this),!i.loop)throw"";let n=i.loopDelay;l(async()=>{await U(n[0]),M()},n[1])}catch{}return this},ne=async t=>{T=Te(t,T,c()),_e(f,c(),T)},O=t=>Se(f,t),P=async t=>i=D(i,t),ke=async()=>{if(s()){f.value="";return}c().forEach(F)},A=()=>{let t=c();!t.length||(s()?f.value=f.value.slice(0,-1):F(t[T]))};this.break=function(t){return u({func:()=>O(x("BR")),typeable:!0},t)},this.delete=function(t=null,n={}){t=N(t);let a=p(n),y=t,{instant:$,to:E}=n,L=m.getTypeable(),I=(()=>y===null?L.length:ee(y)?y:re({queueItems:L,selector:y,cursorPosition:le,to:E}))();return u([a[0],...te({func:A,delay:$?0:o(1)},I),a[1]],n)},this.empty=function(t={}){return u({func:ke},t)},this.exec=function(t,n={}){let a=p(n);return u([a[0],{func:()=>t(this)},a[1]],n)},this.move=function(t,n={}){t=N(t);let a=p(n),{instant:y,to:$}=n,E=re({queueItems:m.getTypeable(),selector:t===null?"":t,to:$,cursorPosition:T}),L=E<0?-1:1;return le=T+E,u([a[0],...te({func:()=>ne(L),delay:y?0:o()},Math.abs(E)),a[1]],n)},this.options=function(t,n={}){return t=N(t),P(t),u({},n)},this.pause=function(t,n={}){return u({delay:N(t)},n)},this.type=function(t,n={}){t=N(t);let{instant:a}=n,y=p(n),E=ce(t,i.html).map(I=>({func:()=>O(I),char:I,delay:a||Ee(I)?0:o(),typeable:I.nodeType===Node.TEXT_NODE})),L=[y[0],{func:async()=>await i.beforeString(t,this)},...E,{func:async()=>await i.afterString(t,this)},y[1]];return u(L,n)},this.is=function(t){return g[t]},this.destroy=function(t=!0){V=pe(V),N(t)&&v&&F(v),g.destroyed=!0},this.freeze=function(){g.frozen=!0},this.unfreeze=function(){},this.reset=function(t){!this.is("destroyed")&&this.destroy(),t?(m.wipe(),t(this)):m.reset(),T=0;for(let n in g)g[n]=!1;return f[s()?"value":"innerHTML"]="",this},this.go=function(){return g.started?this:(h(),i.waitUntilVisible?(be(f,M.bind(this)),this):(M(),this))},this.flush=function(t=()=>{}){return h(),M(!1).then(t),this},this.getQueue=()=>m,this.getOptions=()=>i,this.updateOptions=t=>P(t),this.getElement=()=>f;let f=ve(e),V=[],T=0,le=0,g=D({},ae),i=D(ue,r);i=D(i,{html:!s()&&i.html,nextStringDelay:Y(i.nextStringDelay),loopDelay:Y(i.loopDelay)});let ie=he(),m=se([{func:()=>{},delay:i.startDelay}]);f.dataset.typeitId=ie,X(de);let q=i.cursor&&!s(),v=z();i.strings=Ie(C(i.strings)),i.strings.length&&b()}});
{
"name": "typeit",
"version": "8.5.0",
"version": "8.5.1",
"description": "The most versatile animated typing utility on the planet.",

@@ -51,2 +51,3 @@ "author": "Alex MacArthur <alex@macarthur.me> (https://macarthur.me)",

"jest": {
"clearMocks": true,
"testPathIgnorePatterns": [

@@ -53,0 +54,0 @@ "<rootDir>/__tests__/setup.js"

@@ -23,3 +23,3 @@ import { END } from "../constants";

let isMovingToEnd = new RegExp(END, "i").test(to);
let selectorIndex = [...queueItems]
let selectorIndex = selector ? [...queueItems]
.reverse()

@@ -37,3 +37,3 @@ .findIndex(({ char }) => {

return parentMatches && parentElement.firstChild.isSameNode(char);
});
}) : -1;

@@ -40,0 +40,0 @@ // Couldn't find it the selector, so determine if we

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Packages

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc