Socket
Socket
Sign inDemoInstall

typeit-react

Package Overview
Dependencies
Maintainers
1
Versions
64
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

typeit-react - npm Package Compare versions

Comparing version 0.0.3 to 0.1.0-rc

6

dist/typeit-react.es.min.js

@@ -5,3 +5,3 @@ /**

* Author: Alex MacArthur <alex@macarthur.me> (https://macarthur.me)
* Version: v0.0.3
* Version: v0.1.0-rc
* License: GPL-2.0

@@ -11,3 +11,3 @@ * URL: https://typeitjs.com

*/
import{createElement as t,useRef as e,useEffect as n,useState as i,useMemo as r}from"react";
import{createElement as n,useRef as t,useEffect as e,useState as r,useMemo as i}from"react";
/*! *****************************************************************************

@@ -26,2 +26,2 @@ Copyright (c) Microsoft Corporation. All rights reserved.

and limitations under the License.
***************************************************************************** */var o=function(){return(o=Object.assign||function(t){for(var e,n=1,i=arguments.length;n<i;n++)for(var r in e=arguments[n])Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t}).apply(this,arguments)};function s(t){return(s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}var u={strings:[],speed:100,cursor:!0,cursorChar:"|",cursorSpeed:1e3,deleteSpeed:null,lifeLike:!0,breakLines:!0,startDelay:250,startDelete:!1,nextStringDelay:750,loop:!1,loopDelay:750,html:!0,waitUntilVisible:!1,beforeString:function(){},afterString:function(){},beforeStep:function(){},afterStep:function(){},afterComplete:function(){}};function a(){var t=this,e=this,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;this.insert=function(e,n){t.waiting.splice(e,0,n)},this.add=function(t){var n=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return Array.isArray(t[0])?(e.waiting=e.waiting.concat(t),e):(e.waiting[n?"unshift":"push"](t),e)},this.delete=function(e){return t.waiting.splice(e,1),t},this.reset=function(){return t.waiting=t.executed.concat(t.waiting),t.executed=[],t},this.executed=[],this.waiting=n,!n.length&&i&&this.add(i)}var c=function(t){return document.createElement(t)};function l(t,e){return Math.abs(Math.random()*(t+e-(t-e))+(t-e))}function f(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",n=c("style");n.id=e,n.appendChild(document.createTextNode(t)),document.head.appendChild(n)}function h(t){return t.map((function(t){return t.replace(/<\!--.*?-->/g,"")}))}var p=function(t){return["textarea","input"].indexOf(t.tagName.toLowerCase())>-1},d=function(t){return Array.isArray(t)?t:[t]},v=function(t){return[].slice.call(t)},y=function(t,e){var n=t.nextSibling;return!!n&&!n.isEqualNode(e)},g=function(t,e){var n=e;if(p(t))t.value="".concat(t.value).concat(n);else{var i=v(t.childNodes).filter((function(t){return t.classList&&t.classList.contains("ti-cursor")}));if(i=i.length?i[0]:null,"object"==s(e)&&!(e instanceof HTMLElement)){var r=e.ancestorTree.slice(0).reverse().join(" "),o=v(t.querySelectorAll("".concat(r))),u=(o=o.filter((function(t){return!i||!i.isEqualNode(t)}))).length>0?o[o.length-1]:null;if(u&&function(t,e){if(!t)return!1;for(var n=!1,i=[],r=t;!n;)i.push(y(r,e)),(r=r.parentNode)&&r.hasAttribute&&!r.hasAttribute("data-typeit-id")||(n=!0);return!i.some((function(t){return t}))}(u,i))t=u,n=e.content;else if(n=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"",i=c(t);return e.forEach((function(t){i.setAttribute(t.name,t.value)})),i.innerHTML=n,i}(e.ancestorTree[0],e.attributes,e.content),e.ancestorTree.length>1){var a=v(t.querySelectorAll(e.ancestorTree[1]));t=a[a.length-1]}}n="object"==s(n)?n:document.createTextNode(n),t.insertBefore(n,i&&t.hasAttribute("data-typeit-id")?i:null)}},m=function(t){var e=[];return e.concat.apply(e,t)},b=function(t){var e=document.implementation.createHTMLDocument("");return e.body.innerHTML=t,e.body},w=function(t){return v(t.childNodes).map((function(t){return 3===t.nodeType?t.nodeValue.split(""):t}))},S=function(t,e,n){return{ancestorTree:e,attributes:(i=t,v(i.attributes).map((function(t){return{name:t.name,value:t.nodeValue}}))),content:n};var i},q=function(t,e){var n=S(t,e,""),i=w(t).map((function(n,i){return Array.isArray(n)?n.map((function(n,i){return S(t,e,n)})):n}));return i.unshift(n),m(i)},A=function(t){return t instanceof HTMLElement&&"BR"!==t.tagName},T=function t(e){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=e.map((function(t){if(A(t)){if(!n)return v(t.childNodes);for(var e=t.parentNode,i=[t.tagName];["BODY","HTML"].indexOf(e.tagName)<0;)i.push(e.tagName),e=e.parentNode;return q(t,i)}return t}));return(i=m(i)).some((function(t){return A(t)}))?t(i,n):i};function L(t){var e=b(t),n=w(e);return T(n)}function N(t){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];return e?L(t):t.split("")}var x=function(t,e){e?t.value="":t.querySelector(".ti-cursor")&&(t.innerHTML="")},O=function(t,e){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],i=!Array.isArray(t),r=t.length;return(t=i?new Array(t).fill(0):t).map((function(t,o){if(i)return e;var s=[e,t];return n&&(0===o&&s.push({isFirst:!0}),o+1===r&&s.push({isLast:!0})),s}))},E=function(t){t.parentNode.removeChild(t)},D=function(t){return 3!==t.nodeType&&"BR"!==t.tagName&&!t.firstChild},$=function(t){return t.some((function(t){return D(t)}))},M=function(t){for(var e=v(t.querySelectorAll("*")),n=$(e);e.length&&n;){var i=!1;e.forEach((function(t){D(t)&&(E(t),i=!0)})),i&&(e=v(t.querySelectorAll("*"))),n=$(e)}return e},P=function(t){return Array.isArray(t)||(t=[t/2,t/2]),{before:t[0],after:t[1],total:t[0]+t[1]}};function I(t,e,n){var i=(e=null!==e?e:t/3)/2;return n?[l(t,t/2),l(e,i)]:[t,e]}function j(){var t=this,e=this,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},i=n.typeIt,r=n.element,o=n.id,l=n.options,y=n.queue,m=void 0===y?[]:y,w=n.isAReset,S=void 0!==w&&w,q=function(){var e=v(t.$e.childNodes).filter((function(t){return!t.isEqualNode(k)}));return T(e,!1)},A=function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1,i=e.opts.nextStringDelay;e.queue.insert(t,[e.pause,i.before]),e.queue.insert(t+n+1,[e.pause,i.after])},D=function(){!B&&t.opts.cursor&&(f("@keyframes blink-".concat(o," { 0% {opacity: 0} 49% {opacity: 0} 50% {opacity: 1} }[data-typeit-id='").concat(o,"'] .ti-cursor { animation: blink-").concat(o," ").concat(t.opts.cursorSpeed/1e3,"s infinite; }"),o),(k=c("span")).innerHTML=b(t.opts.cursorChar).innerHTML,k.className="ti-cursor",k.setAttribute("style","display:inline;position:relative;font:inherit;color:inherit;line-height:inherit;"),t.$e.appendChild(k))};this.wait=function(t,e){this.timeouts.push(setTimeout(t,e))};var $=function(){t.opts.strings.forEach((function(e,n){var i=N(e,t.opts.html);t.queue.add(O(i,t.type,!0));var r=t.queue.waiting.length;if(n+1!==t.opts.strings.length){if(t.opts.breakLines)return t.queue.add([t.type,c("BR")]),void A(r);t.queue.add(O(i,t.delete)),A(r,e.length)}}))},C=function(e){t.queue.reset().delete(0).add([t.pause,e.before],!0);for(var n=0;n<q().length;n++)t.queue.add([t.delete,null,{isPhantom:!0}],!0)},H=function(e){var n=t.$e.innerHTML;return n?(t.$e.innerHTML="",t.opts.startDelete?(L(n).forEach((function(e){g(t.$e,e)})),t.queue.add([t.delete,!0]),A(1),e):[n.trim()].concat(e)):e};this.pause=function(){var t=this,e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return new Promise((function(n,i){t.wait((function(){return n()}),e||t.opts.nextStringDelay.total)}))},this.reset=function(){return this.queue.reset(),new j({typeIt:i,element:this.$e,id:o,options:this.opts,queue:this.queue.waiting,isAReset:!0})},this.init=function(){var t=this;if(!this.status.started){if(D(),!this.opts.waitUntilVisible)return this.status.started=!0,this.fire();new IntersectionObserver((function(e,n){e.forEach((function(e){e.isIntersecting&&(t.fire(),n.unobserve(t.$e))}))}),{threshold:1}).observe(this.$e)}},this.fire=function(){for(var t=this,e=this,n=this.queue.waiting.slice(),r=Promise.resolve(),o=function(t){var o=n[t],s=[o,e.queue,i];r=r.then((function(){return new Promise((function(t,n){var i,r;if(e.status.frozen)return n();e.pace=I(e.opts.speed,e.opts.deleteSpeed,e.opts.lifeLike),o[2]&&o[2].isFirst&&(i=e.opts).beforeString.apply(i,s),(r=e.opts).beforeStep.apply(r,s),o[0].call(e,o[1],o[2]).then((function(){var n,i,r=e.queue.waiting.shift();return o[2]&&o[2].isPhantom?t():(o[2]&&o[2].isLast&&(n=e.opts).afterString.apply(n,s),(i=e.opts).afterStep.apply(i,s),e.queue.executed.push(r),t())}))}))}))},s=0;s<n.length;s++)o(s);r.then((function(){if(t.opts.loop){var e=t.opts.loopDelay?t.opts.loopDelay:t.opts.nextStringDelay;t.wait((function(){C(e),t.fire()}),e.after)}t.status.completed=!0,t.opts.afterComplete(i)})).catch((function(){}))},this.type=function(t){var e=this;return"object"!=s(t)||t.content?new Promise((function(n){e.wait((function(){return g(e.$e,t),n()}),e.pace[0])})):(g(this.$e,t),Promise.resolve())},this.empty=function(){var t=this;return new Promise((function(e){return B?t.$e.value="":v(t.$e.childNodes).forEach((function(t){k.isEqualNode(t)||E(t)})),e()}))},this.delete=function(){var t=this,e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return new Promise((function(n){t.wait((function(){var i=q();return i.length&&E(i[i.length-1]),M(t.$e),e&&i.length-1>0?t.delete(!0).then((function(){return n()})):n()}),t.pace[1])}))},this.setOptions=function(t){var e=this;return new Promise((function(n){return e.opts=Object.assign({},e.opts,t),n()}))};var k=null,B=p(r);this.status={started:!1,complete:!1,frozen:!1,destroyed:!1},this.$e=r,this.timeouts=[],this.opts=Object.assign({},u,l),this.opts.html=!B&&this.opts.html,this.opts.nextStringDelay=P(this.opts.nextStringDelay),this.opts.loopDelay=P(this.opts.loopDelay),this.queue=new a(m,[this.pause,this.opts.startDelay]),this.$e.setAttribute("data-typeit-id",o),f("[data-typeit-id]:before {content: '.'; display: inline-block; width: 0; visibility: hidden;}"),x(r,B);var R=d(this.opts.strings);R=H(R),this.opts.strings=h(R),this.opts.strings.length&&!S&&$()}function C(t,e){var n,i=this,r=this;this.instances=(n=t,"string"==typeof n?n=document.querySelectorAll(n):n.forEach||(n=[n]),v(n)).map((function(t){return new j({typeIt:i,element:t,id:Math.random().toString(36).substring(2,15),options:e,queue:[],isAReset:!1})}));var o=function(t){i.instances.forEach((function(e){t.call(i,e)}))},s=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1;o((function(i){var o="string"!=typeof t,s=o?t:i[t],u=O(n,[s,o?r:e]);i.queue.add(u)}))};this.is=function(t){return e=this.instances,n=t,!0,!!e.length&&!e.some((function(t){return!0!==t.status[n]}));var e,n},this.freeze=function(){o((function(t){t.status.frozen=!0}))},this.unfreeze=function(){o((function(t){t.status.frozen&&(t.status.frozen=!1,t.fire())}))},this.type=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return o((function(e){var n=N(t,e.opts.html);e.queue.add(O(n,e.type,!0))})),this},this.delete=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return s("delete",null===t,null===t?1:t),this},this.pause=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return s("pause",t),this},this.break=function(){return s("type",c("BR")),this},this.options=function(t){return s("setOptions",t),this},this.exec=function(t){return s(t),this},this.destroy=function(){var t=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];this.instances=this.instances.map((function(e){if(e.timeouts.forEach((function(t){clearTimeout(t)})),e.timeouts=[],t){var n=e.isInput?null:e.$e.querySelector(".ti-cursor");n&&e.$e.removeChild(n)}return e.status.destroyed=!0,e}))},this.empty=function(){return s("empty"),this},this.reset=function(){return this.destroy(),this.instances=this.instances.map((function(t){return t.reset()})),this},this.go=function(){return o((function(t){t.init()})),this}}var H=["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"],k=e,B=n,R=i,z=r,V=function(e){var n=R(!0),i=n[0],r=n[1],s=k(null),u=e.options,a=e.element,c=e.children,l=e.getBeforeInit,f=e.getAfterInit,h=function(t,e){var n={};for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&e.indexOf(i)<0&&(n[i]=t[i]);if(null!=t&&"function"==typeof Object.getOwnPropertySymbols){var r=0;for(i=Object.getOwnPropertySymbols(t);r<i.length;r++)e.indexOf(i[r])<0&&Object.prototype.propertyIsEnumerable.call(t,i[r])&&(n[i[r]]=t[i[r]])}return n}(e,["options","element","children","getBeforeInit","getAfterInit"]),p=a,d=z((function(){return t=p,H.indexOf(t.toLowerCase())>-1;var t}),[p]);return B((function(){c&&(u.strings=s.current.innerHTML),r(!1)}),[]),B((function(){if(!i){var t=new C(s.current,o({},u));return(t=l(t)).go(),t=f(t),function(){t.destroy()}}}),[i]),t("div",{style:{opacity:i?0:1}},d?t(p,o({ref:s},h)):t(p,o({ref:s},h),i&&c))};V.defaultProps={element:"span",options:{},getBeforeInit:function(t){return t},getAfterInit:function(t){return t}};export default V;
***************************************************************************** */var o=function(){return(o=Object.assign||function(n){for(var t,e=1,r=arguments.length;e<r;e++)for(var i in t=arguments[e])Object.prototype.hasOwnProperty.call(t,i)&&(n[i]=t[i]);return n}).apply(this,arguments)};var u={strings:[],speed:100,cursor:!0,cursorChar:"|",cursorSpeed:1e3,deleteSpeed:null,lifeLike:!0,breakLines:!0,startDelay:250,startDelete:!1,nextStringDelay:750,loop:!1,loopDelay:750,html:!0,waitUntilVisible:!1,beforeString:function(){},afterString:function(){},beforeStep:function(){},afterStep:function(){},afterComplete:function(){}},c=function(n){return n.map((function(n){return void 0===n[1]&&n.push(null),void 0===n[2]&&n.push({}),n}))},a=function(n,t){return Object.assign({},n,t)},f=function(n){return Array.isArray(n)},s=function(n,t){return n[2]=a(n[2],t)||t,n},l=function(n,t){return f(n[0])?n.map((function(n){return s(n,t)})):s(n,t)},d=function(n,t,e,r){r=r||!1,e=e||{};var i=!f(n),o=n.length;return(n=i?new Array(n).fill(0):n).map((function(n,u){if(i)return t;var c=[t,n,e];return r&&(0===u&&(c=l(c,{isFirst:!0})),u+1===o&&(c=l(c,{isLast:!0}))),c}))};function h(n){this.insert=function(n,e){t.splice(n,0,e)},this.add=function(n,e,r){return n=f(n)?n:[n,null],r=r||!1,e=e||1,f(n[0])||(n=d(e,n)),t=r?n.concat(t):t.concat(n),this},this.delete=function(n){return t.splice(n,1),this},this.reset=function(){return t=c(t).map((function(n){return n[2].executed=!1,n})),this},this.getItems=function(){return c(t).filter((function(n){return!n.executed}))};var t=[];n&&this.add(n)}var p=function(n){return Array.from(n)},v=function(n){var t=[];return t.concat.apply(t,n)},m=function(n){var t=document.implementation.createHTMLDocument("");return t.body.innerHTML=n,t.body},y=function(n){return 3===n.nodeType||"BR"===n.tagName},g=function n(t,e,r){e=e||null,r=void 0!==r&&r;var i=p(t.childNodes).map((function(t){return y(t)?t:n(t)}));return i=v(i),e&&(i=i.filter((function(n){return!n.parentNode.isEqualNode(e)}))),r?i.reverse():i},b=function(n){return"BODY"===n.tagName},S=function(n,t){t=t||null;var e=n instanceof HTMLElement;return{node:t,isTopLevelText:(!t||b(t.parentNode))&&!e,isHTMLElement:e,content:n}};function T(n){var t,e=m(n);return t=g(e).map((function(n){return n.nodeValue?p(n.nodeValue).map((function(t){return S(t,n)})):S(n)})),v(t)}function N(n,t){return(t=void 0===t||t)?T(n):p(n).map((function(n){return S(n)}))}var w=function(n){return document.createElement(n)},L=function(n,t){var e=w("style");e.id=t||"",e.appendChild(document.createTextNode(n)),document.head.appendChild(e)},x=function(n){return f(n)||(n=[n/2,n/2]),{before:n[0],after:n[1],total:n[0]+n[1]}},M=function(n,t){return Math.abs(Math.random()*(n+t-(n-t))+(n-t))},O=function(n){return["textarea","input"].indexOf(n.tagName.toLowerCase())>-1},D=function(n,t){var e=t.querySelectorAll("*");return[t].concat(p(e).reverse()).find((function(t){return t.cloneNode().outerHTML===n.outerHTML}))},E=function(n,t,e,r){e=e||null;var i=t.isHTMLElement,o=i?t.content:document.createTextNode(t.content);if(O(n))n.value="".concat(n.value).concat(t.content);else{if(!t.isTopLevelText&&!i){var u=t.node.parentNode,c=D(u.cloneNode(),n);if(function(n,t){if(!n)return!1;var e=n.nextSibling;return!e||e.isEqualNode(t)}(c,e))n=c;else if((o=u.cloneNode()).innerText=t.content,!b(u.parentNode)){for(var a=u.parentNode,f=a.cloneNode(),s=D(f,n);!s&&!b(a);)f.innerHTML=o.outerHTML,o=f,f=a.parentNode.cloneNode(),a=a.parentNode,s=D(f,n);n=s||n}}var l=g(n,e,!0)[r-1],d=l?l.parentNode:n;d.insertBefore(o,d.contains(e)?e:null)}},P=function(n){return n&&n.parentNode.removeChild(n)},C=function(n){return!n.firstChild&&!y(n)},H=function(n){return n.some((function(n){return C(n)}))},A=function(n,t,e){var r,i="string"==typeof n,o=!1,u=-1*n;return i&&(u=(r="END"===n.toUpperCase())?-1:1,o=r?t+u>0:t+u<e.length),{isString:i,numberOfSteps:u,canKeepMoving:o}};function I(n,t,e){return e?t?t(n):n:(n&&n.then||(n=Promise.resolve(n)),t?n.then(t):n)}function k(n){return function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];try{return Promise.resolve(n.apply(this,t))}catch(n){return Promise.reject(n)}}}function z(){}function B(n,t){if(!t)return n&&n.then?n.then(z):Promise.resolve()}function j(n,t){var e=n();return e&&e.then?e.then(t):t(e)}function q(n,t,e){if(!n.s){if(e instanceof R){if(!e.s)return void(e.o=q.bind(null,n,t));1&t&&(t=e.s),e=e.v}if(e&&e.then)return void e.then(q.bind(null,n,t),q.bind(null,n,2));n.s=t,n.v=e;var r=n.o;r&&r(n)}}var R=function(){function n(){}return n.prototype.then=function(t,e){var r=new n,i=this.s;if(i){var o=1&i?t:e;if(o){try{q(r,1,o(this.v))}catch(n){q(r,2,n)}return r}return this}return this.o=function(n){try{var i=n.v;1&n.s?q(r,1,t?t(i):i):e?q(r,1,e(i)):q(r,2,i)}catch(n){q(r,2,n)}},r},n}();function V(n,t){return n&&n.then?n.then(t):t(n)}function U(n,t){var e=this,r=this;t=t||{};var i=function(n,t){return cn.add(n,t),e},o=function(n){n=n||{};var t=a({},tn),e=a(t,n);return[[K,e,{force:!0}],[K,t,{force:!0}]]},c=function(){return W?p(J.value):g(J,an,!0)},s=function(n,t){t=t||1;var e=tn.nextStringDelay;cn.insert(n,[D,e.before]),cn.insert(n+t+1,[D,e.after])},l=function(n){an&&(an.classList.toggle("disabled",n),an.classList.toggle("with-delay",!n))},v=k((function(n,t){return Z.push(setTimeout(n,t)),I()})),y=k((function(n){return j((function(){if($)return B(move(-1*$))}),(function(){cn.reset().delete(0).add([D,n.before],!0),c().forEach((function(n){cn.add([Y,null,{isPhantom:!0}],1,!0)}))}))})),b=k((function(){nn.started=!0;var n=cn.getItems();return V(function(n,t){try{var e=n()}catch(n){return t(n)}return e&&e.then?e.then(void 0,t):e}((function(){return V(function(n,t,e){var r,i,o=-1;return function e(u){try{for(;++o<n.length;)if((u=t(o))&&u.then){if(!((c=u)instanceof R&&1&c.s))return void u.then(e,i||(i=q.bind(null,r=new R,2)));u=u.v}r?q(r,1,u):r=u}catch(n){q(r||(r=new R),2,n)}var c}(),r}(n,(function(t){if(nn.frozen||nn.destroyed)throw"";var e,i,o,u,c=n[t],a=c[2],f=[c,cn,r];return a.freezeCursor&&l(!0),e=tn.speed,i=tn.deleteSpeed,o=tn.lifeLike,u=(i=null!==i?i:e/3)/2,X=o?[M(e,e/2),M(i,u)]:[e,i],j((function(){var n;if(null==a?void 0:a.isFirst)return B((n=tn).beforeString.apply(n,f))}),(function(){var n;return I((n=tn).beforeStep.apply(n,f),(function(){return I(c[0].call(r,c[1],a),(function(){return j((function(){if(!a||!a.isPhantom)return j((function(){var n,t;if(null===(n=c[2])||void 0===n?void 0:n.isLast)return B((t=tn).afterString.apply(t,f))}),(function(){var n;return I((n=tn).afterStep.apply(n,f),(function(){c[2].executed=!0}))}))}),(function(){l(!1)}))}))}))}))})),(function(n){return nn.completed=!0,I(tn.afterComplete(r),(function(){if(tn.loop){var n=tn.loopDelay||tn.nextStringDelay;v((function(){return I(y(n),(function(){b()}))}),n.after)}}))}))}),z),(function(n){return r}))})),D=function(n){return new Promise((function(t){v((function(){return t()}),n||tn.nextStringDelay.total)}))},U=function n(t){var e=c(),r=A(t,$,e);return $+=r.numberOfSteps,new Promise((function(t){v(k((function(){return function(n,t,e,r){if(e){var i=r,o=t[(i=i>t.length?t.length:i)-1];(n=o?o.parentNode:n).insertBefore(e,o||null)}}(J,c(),an,$),j((function(){if(r.isString&&r.canKeepMoving)return B(n(r.numberOfSteps>0?"START":"END"))}),(function(){return t()}))})),X[0])}))},F=function(n){return new Promise((function(t){v((function(){return E(J,n,an,$),t()}),X[0])}))},K=k((function(n){tn=a(tn,n)})),Q=k((function(){W?J.value="":c().forEach((function(n){P(n)}))})),Y=function n(t){return t=!0===t,new Promise((function(e){v(k((function(){var r=!1,i=c();return i.length&&(W?J.value=J.value.slice(0,-1):P(i[$])),function(n){for(var t=p(n.querySelectorAll("*")),e=H(t);t.length&&e;){var r=!1;t.forEach((function(n){C(n)&&(P(n),r=!0)})),r&&(t=p(n.querySelectorAll("*"))),e=H(t)}}(J),j((function(){if(t&&i.length-1>0)return I(n(!0),(function(){return r=!0,e()}))}),(function(n){return r?n:e()}))})),X[1])}))};this.break=function(){return cn.add([F,w("BR")])},this.delete=function(n,t){var e=o(t);return cn.add(e[0]),cn.add([Y,!n,_],n||1),cn.add(e[1]),this},this.destroy=function(n){n=void 0===n||n,Z.forEach((function(n){clearTimeout(n)})),Z=[],n&&P(an),nn.destroyed=!0},this.empty=function(){return i(Q)},this.exec=function(n,t){var e=o(t);return i([e[0],[n,null],e[1]])},this.is=function(n){return nn[n]},this.move=function(n,t){var e=A(n,$,c()),r=o(t);return cn.add(r[0]),cn.add([U,e.isString?n:Math.sign(n),_],Math.abs(n)),cn.add(r[1]),this},this.freeze=function(){nn.frozen=!0},this.unfreeze=function(){nn.frozen=!1,!nn.frozen&&b()},this.options=function(n){return i([K,n])},this.pause=function(n){return i([D,n||null])},this.type=function(n,t){var e=o(t),r=N(n,tn.html),u=[e[0]].concat(d(r,F,_,!0),[e[1]]);return i(u)},this.getQueue=function(){return cn},this.getOptions=function(){return tn},this.reset=function(){for(var n in!this.is("destroyed")&&this.destroy(),cn.reset(),nn)nn[n]=!1;return this},this.go=function(){return nn.started?this:(function(){if(an){var n="[data-typeit-id='".concat(un,"'] .ti-cursor");L("@keyframes blink-".concat(un," { 0% {opacity: 0} 49% {opacity: 0} 50% {opacity: 1} } ").concat(n," { animation: blink-").concat(un," ").concat(tn.cursorSpeed/1e3,"s infinite; } ").concat(n,".with-delay { animation-delay: 500ms; } ").concat(n,".disabled { animation: none; }"),un),J.appendChild(an)}}(),tn.waitUntilVisible?(function(n,t){new IntersectionObserver((function(e,r){e.forEach((function(e){e.isIntersecting&&(t(),r.unobserve(n))}))}),{threshold:1}).observe(n)}(J,b.bind(this)),this):(b(),this))};var G,J="string"==typeof(G=n)?document.querySelector(G):G,W=O(J),X=[],Z=[],$=0,_={freezeCursor:!0},nn={started:!1,completed:!1,frozen:!1,destroyed:!1},tn=a(u,t);tn=a(tn,{html:!W&&tn.html,nextStringDelay:x(tn.nextStringDelay),loopDelay:x(tn.loopDelay)});var en,rn,on,un=Math.random().toString().substring(2,9),cn=new h([D,tn.startDelay]);J.setAttribute("data-typeit-id",un),L("[data-typeit-id]:before {content: '.'; display: inline-block; width: 0; visibility: hidden;}"),tn.strings=(on=tn.strings,en=f(on)?on:[on],(rn=function(n){return n.innerHTML.replace(/<\!--.*?-->/g,"").trim()}(J))?(J.innerHTML="",tn.startDelete?(T(rn).forEach((function(n){E(J,n,an,$)})),cn.add([Y,!0]),s(1),en):[rn.trim()].concat(en)):en);var an=function(){if(W||!tn.cursor)return null;var n=w("span");return n.innerHTML=m(tn.cursorChar).innerHTML,n.className="ti-cursor",n.style.cssText="position:absolute;display:inline;margin-left:-.025em;".concat(function(n){var t=["font","lineHeight","color"],e=w("SPAN"),r=window.getComputedStyle(n,null);for(var i in r)t.indexOf(i)>-1&&r[i]&&(e.style[i]=r[i]);return e.style.cssText}(J)),n}();tn.strings.length&&function(){var n=tn.strings;n.forEach((function(t,e){var r=N(t,tn.html);cn.add(d(r,F,_,!0));var i=cn.getItems().length;if(e+1!==n.length){if(tn.breakLines){var o=S(w("BR"));return cn.add([F,o,_]),void s(i)}cn.add(d(r,Y,_)),s(i,t.length)}}))}()}var F=["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"],K=t,Q=e,Y=r,G=i,J=function(t){var e=Y(!0),r=e[0],i=e[1],u=K(null),c=t.options,a=t.element,f=t.children,s=t.getBeforeInit,l=t.getAfterInit,d=function(n,t){var e={};for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&t.indexOf(r)<0&&(e[r]=n[r]);if(null!=n&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(r=Object.getOwnPropertySymbols(n);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(n,r[i])&&(e[r[i]]=n[r[i]])}return e}(t,["options","element","children","getBeforeInit","getAfterInit"]),h=a,p=G((function(){return n=h,F.indexOf(n.toLowerCase())>-1;var n}),[h]);return Q((function(){f&&(c.strings=u.current.innerHTML),i(!1)}),[]),Q((function(){if(!r){var n=new U(u.current,o({},c));return(n=s(n)).go(),n=l(n),function(){n.destroy()}}}),[r]),n("div",{style:{opacity:r?0:1}},p?n(h,o({ref:u},d)):n(h,o({ref:u},d),r&&f))};J.defaultProps={element:"span",options:{},getBeforeInit:function(n){return n},getAfterInit:function(n){return n}};export default J;

@@ -5,3 +5,3 @@ /**

* Author: Alex MacArthur <alex@macarthur.me> (https://macarthur.me)
* Version: v0.0.3
* Version: v0.1.0-rc
* License: GPL-2.0

@@ -11,3 +11,3 @@ * URL: https://typeitjs.com

*/
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("react")):"function"==typeof define&&define.amd?define(["react"],e):(t=t||self).TypeIt=e(t.React)}(this,(function(t){"use strict";
!function(n,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("react")):"function"==typeof define&&define.amd?define(["react"],t):(n=n||self).TypeIt=t(n.React)}(this,(function(n){"use strict";
/*! *****************************************************************************

@@ -26,2 +26,2 @@ Copyright (c) Microsoft Corporation. All rights reserved.

and limitations under the License.
***************************************************************************** */var e=function(){return(e=Object.assign||function(t){for(var e,n=1,i=arguments.length;n<i;n++)for(var r in e=arguments[n])Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t}).apply(this,arguments)};function n(t){return(n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}var i={strings:[],speed:100,cursor:!0,cursorChar:"|",cursorSpeed:1e3,deleteSpeed:null,lifeLike:!0,breakLines:!0,startDelay:250,startDelete:!1,nextStringDelay:750,loop:!1,loopDelay:750,html:!0,waitUntilVisible:!1,beforeString:function(){},afterString:function(){},beforeStep:function(){},afterStep:function(){},afterComplete:function(){}};function r(){var t=this,e=this,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;this.insert=function(e,n){t.waiting.splice(e,0,n)},this.add=function(t){var n=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return Array.isArray(t[0])?(e.waiting=e.waiting.concat(t),e):(e.waiting[n?"unshift":"push"](t),e)},this.delete=function(e){return t.waiting.splice(e,1),t},this.reset=function(){return t.waiting=t.executed.concat(t.waiting),t.executed=[],t},this.executed=[],this.waiting=n,!n.length&&i&&this.add(i)}var o=function(t){return document.createElement(t)};function u(t,e){return Math.abs(Math.random()*(t+e-(t-e))+(t-e))}function s(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",n=o("style");n.id=e,n.appendChild(document.createTextNode(t)),document.head.appendChild(n)}function a(t){return t.map((function(t){return t.replace(/<\!--.*?-->/g,"")}))}var c=function(t){return["textarea","input"].indexOf(t.tagName.toLowerCase())>-1},f=function(t){return Array.isArray(t)?t:[t]},l=function(t){return[].slice.call(t)},h=function(t,e){var n=t.nextSibling;return!!n&&!n.isEqualNode(e)},p=function(t,e){var i=e;if(c(t))t.value="".concat(t.value).concat(i);else{var r=l(t.childNodes).filter((function(t){return t.classList&&t.classList.contains("ti-cursor")}));if(r=r.length?r[0]:null,"object"==n(e)&&!(e instanceof HTMLElement)){var u=e.ancestorTree.slice(0).reverse().join(" "),s=l(t.querySelectorAll("".concat(u))),a=(s=s.filter((function(t){return!r||!r.isEqualNode(t)}))).length>0?s[s.length-1]:null;if(a&&function(t,e){if(!t)return!1;for(var n=!1,i=[],r=t;!n;)i.push(h(r,e)),(r=r.parentNode)&&r.hasAttribute&&!r.hasAttribute("data-typeit-id")||(n=!0);return!i.some((function(t){return t}))}(a,r))t=a,i=e.content;else if(i=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"",i=o(t);return e.forEach((function(t){i.setAttribute(t.name,t.value)})),i.innerHTML=n,i}(e.ancestorTree[0],e.attributes,e.content),e.ancestorTree.length>1){var f=l(t.querySelectorAll(e.ancestorTree[1]));t=f[f.length-1]}}i="object"==n(i)?i:document.createTextNode(i),t.insertBefore(i,r&&t.hasAttribute("data-typeit-id")?r:null)}},d=function(t){var e=[];return e.concat.apply(e,t)},v=function(t){var e=document.implementation.createHTMLDocument("");return e.body.innerHTML=t,e.body},y=function(t){return l(t.childNodes).map((function(t){return 3===t.nodeType?t.nodeValue.split(""):t}))},m=function(t,e,n){return{ancestorTree:e,attributes:(i=t,l(i.attributes).map((function(t){return{name:t.name,value:t.nodeValue}}))),content:n};var i},g=function(t,e){var n=m(t,e,""),i=y(t).map((function(n,i){return Array.isArray(n)?n.map((function(n,i){return m(t,e,n)})):n}));return i.unshift(n),d(i)},b=function(t){return t instanceof HTMLElement&&"BR"!==t.tagName},w=function t(e){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=e.map((function(t){if(b(t)){if(!n)return l(t.childNodes);for(var e=t.parentNode,i=[t.tagName];["BODY","HTML"].indexOf(e.tagName)<0;)i.push(e.tagName),e=e.parentNode;return g(t,i)}return t}));return(i=d(i)).some((function(t){return b(t)}))?t(i,n):i};function S(t){var e=v(t),n=y(e);return w(n)}function q(t){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];return e?S(t):t.split("")}var A=function(t,e){e?t.value="":t.querySelector(".ti-cursor")&&(t.innerHTML="")},T=function(t,e){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],i=!Array.isArray(t),r=t.length;return(t=i?new Array(t).fill(0):t).map((function(t,o){if(i)return e;var u=[e,t];return n&&(0===o&&u.push({isFirst:!0}),o+1===r&&u.push({isLast:!0})),u}))},x=function(t){t.parentNode.removeChild(t)},L=function(t){return 3!==t.nodeType&&"BR"!==t.tagName&&!t.firstChild},N=function(t){return t.some((function(t){return L(t)}))},E=function(t){for(var e=l(t.querySelectorAll("*")),n=N(e);e.length&&n;){var i=!1;e.forEach((function(t){L(t)&&(x(t),i=!0)})),i&&(e=l(t.querySelectorAll("*"))),n=N(e)}return e},O=function(t){return Array.isArray(t)||(t=[t/2,t/2]),{before:t[0],after:t[1],total:t[0]+t[1]}};function D(t,e,n){var i=(e=null!==e?e:t/3)/2;return n?[u(t,t/2),u(e,i)]:[t,e]}function $(){var t=this,e=this,u=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},h=u.typeIt,d=u.element,y=u.id,m=u.options,g=u.queue,b=void 0===g?[]:g,L=u.isAReset,N=void 0!==L&&L,M=function(){var e=l(t.$e.childNodes).filter((function(t){return!t.isEqualNode(k)}));return w(e,!1)},P=function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1,i=e.opts.nextStringDelay;e.queue.insert(t,[e.pause,i.before]),e.queue.insert(t+n+1,[e.pause,i.after])},I=function(){!B&&t.opts.cursor&&(s("@keyframes blink-".concat(y," { 0% {opacity: 0} 49% {opacity: 0} 50% {opacity: 1} }[data-typeit-id='").concat(y,"'] .ti-cursor { animation: blink-").concat(y," ").concat(t.opts.cursorSpeed/1e3,"s infinite; }"),y),(k=o("span")).innerHTML=v(t.opts.cursorChar).innerHTML,k.className="ti-cursor",k.setAttribute("style","display:inline;position:relative;font:inherit;color:inherit;line-height:inherit;"),t.$e.appendChild(k))};this.wait=function(t,e){this.timeouts.push(setTimeout(t,e))};var j=function(){t.opts.strings.forEach((function(e,n){var i=q(e,t.opts.html);t.queue.add(T(i,t.type,!0));var r=t.queue.waiting.length;if(n+1!==t.opts.strings.length){if(t.opts.breakLines)return t.queue.add([t.type,o("BR")]),void P(r);t.queue.add(T(i,t.delete)),P(r,e.length)}}))},C=function(e){t.queue.reset().delete(0).add([t.pause,e.before],!0);for(var n=0;n<M().length;n++)t.queue.add([t.delete,null,{isPhantom:!0}],!0)},H=function(e){var n=t.$e.innerHTML;return n?(t.$e.innerHTML="",t.opts.startDelete?(S(n).forEach((function(e){p(t.$e,e)})),t.queue.add([t.delete,!0]),P(1),e):[n.trim()].concat(e)):e};this.pause=function(){var t=this,e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return new Promise((function(n,i){t.wait((function(){return n()}),e||t.opts.nextStringDelay.total)}))},this.reset=function(){return this.queue.reset(),new $({typeIt:h,element:this.$e,id:y,options:this.opts,queue:this.queue.waiting,isAReset:!0})},this.init=function(){var t=this;if(!this.status.started){if(I(),!this.opts.waitUntilVisible)return this.status.started=!0,this.fire();new IntersectionObserver((function(e,n){e.forEach((function(e){e.isIntersecting&&(t.fire(),n.unobserve(t.$e))}))}),{threshold:1}).observe(this.$e)}},this.fire=function(){for(var t=this,e=this,n=this.queue.waiting.slice(),i=Promise.resolve(),r=function(t){var r=n[t],o=[r,e.queue,h];i=i.then((function(){return new Promise((function(t,n){var i,u;if(e.status.frozen)return n();e.pace=D(e.opts.speed,e.opts.deleteSpeed,e.opts.lifeLike),r[2]&&r[2].isFirst&&(i=e.opts).beforeString.apply(i,o),(u=e.opts).beforeStep.apply(u,o),r[0].call(e,r[1],r[2]).then((function(){var n,i,u=e.queue.waiting.shift();return r[2]&&r[2].isPhantom?t():(r[2]&&r[2].isLast&&(n=e.opts).afterString.apply(n,o),(i=e.opts).afterStep.apply(i,o),e.queue.executed.push(u),t())}))}))}))},o=0;o<n.length;o++)r(o);i.then((function(){if(t.opts.loop){var e=t.opts.loopDelay?t.opts.loopDelay:t.opts.nextStringDelay;t.wait((function(){C(e),t.fire()}),e.after)}t.status.completed=!0,t.opts.afterComplete(h)})).catch((function(){}))},this.type=function(t){var e=this;return"object"!=n(t)||t.content?new Promise((function(n){e.wait((function(){return p(e.$e,t),n()}),e.pace[0])})):(p(this.$e,t),Promise.resolve())},this.empty=function(){var t=this;return new Promise((function(e){return B?t.$e.value="":l(t.$e.childNodes).forEach((function(t){k.isEqualNode(t)||x(t)})),e()}))},this.delete=function(){var t=this,e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return new Promise((function(n){t.wait((function(){var i=M();return i.length&&x(i[i.length-1]),E(t.$e),e&&i.length-1>0?t.delete(!0).then((function(){return n()})):n()}),t.pace[1])}))},this.setOptions=function(t){var e=this;return new Promise((function(n){return e.opts=Object.assign({},e.opts,t),n()}))};var k=null,B=c(d);this.status={started:!1,complete:!1,frozen:!1,destroyed:!1},this.$e=d,this.timeouts=[],this.opts=Object.assign({},i,m),this.opts.html=!B&&this.opts.html,this.opts.nextStringDelay=O(this.opts.nextStringDelay),this.opts.loopDelay=O(this.opts.loopDelay),this.queue=new r(b,[this.pause,this.opts.startDelay]),this.$e.setAttribute("data-typeit-id",y),s("[data-typeit-id]:before {content: '.'; display: inline-block; width: 0; visibility: hidden;}"),A(d,B);var R=f(this.opts.strings);R=H(R),this.opts.strings=a(R),this.opts.strings.length&&!N&&j()}function M(t,e){var n,i=this,r=this;this.instances=(n=t,"string"==typeof n?n=document.querySelectorAll(n):n.forEach||(n=[n]),l(n)).map((function(t){return new $({typeIt:i,element:t,id:Math.random().toString(36).substring(2,15),options:e,queue:[],isAReset:!1})}));var u=function(t){i.instances.forEach((function(e){t.call(i,e)}))},s=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1;u((function(i){var o="string"!=typeof t,u=o?t:i[t],s=T(n,[u,o?r:e]);i.queue.add(s)}))};this.is=function(t){return e=this.instances,n=t,!0,!!e.length&&!e.some((function(t){return!0!==t.status[n]}));var e,n},this.freeze=function(){u((function(t){t.status.frozen=!0}))},this.unfreeze=function(){u((function(t){t.status.frozen&&(t.status.frozen=!1,t.fire())}))},this.type=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return u((function(e){var n=q(t,e.opts.html);e.queue.add(T(n,e.type,!0))})),this},this.delete=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return s("delete",null===t,null===t?1:t),this},this.pause=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return s("pause",t),this},this.break=function(){return s("type",o("BR")),this},this.options=function(t){return s("setOptions",t),this},this.exec=function(t){return s(t),this},this.destroy=function(){var t=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];this.instances=this.instances.map((function(e){if(e.timeouts.forEach((function(t){clearTimeout(t)})),e.timeouts=[],t){var n=e.isInput?null:e.$e.querySelector(".ti-cursor");n&&e.$e.removeChild(n)}return e.status.destroyed=!0,e}))},this.empty=function(){return s("empty"),this},this.reset=function(){return this.destroy(),this.instances=this.instances.map((function(t){return t.reset()})),this},this.go=function(){return u((function(t){t.init()})),this}}var P=["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"],I=t.useRef,j=t.useEffect,C=t.useState,H=t.useMemo,k=function(n){var i=C(!0),r=i[0],o=i[1],u=I(null),s=n.options,a=n.element,c=n.children,f=n.getBeforeInit,l=n.getAfterInit,h=function(t,e){var n={};for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&e.indexOf(i)<0&&(n[i]=t[i]);if(null!=t&&"function"==typeof Object.getOwnPropertySymbols){var r=0;for(i=Object.getOwnPropertySymbols(t);r<i.length;r++)e.indexOf(i[r])<0&&Object.prototype.propertyIsEnumerable.call(t,i[r])&&(n[i[r]]=t[i[r]])}return n}(n,["options","element","children","getBeforeInit","getAfterInit"]),p=a,d=H((function(){return t=p,P.indexOf(t.toLowerCase())>-1;var t}),[p]);return j((function(){c&&(s.strings=u.current.innerHTML),o(!1)}),[]),j((function(){if(!r){var t=new M(u.current,e({},s));return(t=f(t)).go(),t=l(t),function(){t.destroy()}}}),[r]),t.createElement("div",{style:{opacity:r?0:1}},d?t.createElement(p,e({ref:u},h)):t.createElement(p,e({ref:u},h),r&&c))};return k.defaultProps={element:"span",options:{},getBeforeInit:function(t){return t},getAfterInit:function(t){return t}},k}));
***************************************************************************** */var t=function(){return(t=Object.assign||function(n){for(var t,e=1,r=arguments.length;e<r;e++)for(var i in t=arguments[e])Object.prototype.hasOwnProperty.call(t,i)&&(n[i]=t[i]);return n}).apply(this,arguments)};var e={strings:[],speed:100,cursor:!0,cursorChar:"|",cursorSpeed:1e3,deleteSpeed:null,lifeLike:!0,breakLines:!0,startDelay:250,startDelete:!1,nextStringDelay:750,loop:!1,loopDelay:750,html:!0,waitUntilVisible:!1,beforeString:function(){},afterString:function(){},beforeStep:function(){},afterStep:function(){},afterComplete:function(){}},r=function(n){return n.map((function(n){return void 0===n[1]&&n.push(null),void 0===n[2]&&n.push({}),n}))},i=function(n,t){return Object.assign({},n,t)},o=function(n){return Array.isArray(n)},u=function(n,t){return n[2]=i(n[2],t)||t,n},c=function(n,t){return o(n[0])?n.map((function(n){return u(n,t)})):u(n,t)},a=function(n,t,e,r){r=r||!1,e=e||{};var i=!o(n),u=n.length;return(n=i?new Array(n).fill(0):n).map((function(n,o){if(i)return t;var a=[t,n,e];return r&&(0===o&&(a=c(a,{isFirst:!0})),o+1===u&&(a=c(a,{isLast:!0}))),a}))};function f(n){this.insert=function(n,e){t.splice(n,0,e)},this.add=function(n,e,r){return n=o(n)?n:[n,null],r=r||!1,e=e||1,o(n[0])||(n=a(e,n)),t=r?n.concat(t):t.concat(n),this},this.delete=function(n){return t.splice(n,1),this},this.reset=function(){return t=r(t).map((function(n){return n[2].executed=!1,n})),this},this.getItems=function(){return r(t).filter((function(n){return!n.executed}))};var t=[];n&&this.add(n)}var s=function(n){return Array.from(n)},l=function(n){var t=[];return t.concat.apply(t,n)},d=function(n){var t=document.implementation.createHTMLDocument("");return t.body.innerHTML=n,t.body},p=function(n){return 3===n.nodeType||"BR"===n.tagName},h=function n(t,e,r){e=e||null,r=void 0!==r&&r;var i=s(t.childNodes).map((function(t){return p(t)?t:n(t)}));return i=l(i),e&&(i=i.filter((function(n){return!n.parentNode.isEqualNode(e)}))),r?i.reverse():i},v=function(n){return"BODY"===n.tagName},m=function(n,t){t=t||null;var e=n instanceof HTMLElement;return{node:t,isTopLevelText:(!t||v(t.parentNode))&&!e,isHTMLElement:e,content:n}};function y(n){var t,e=d(n);return t=h(e).map((function(n){return n.nodeValue?s(n.nodeValue).map((function(t){return m(t,n)})):m(n)})),l(t)}function g(n,t){return(t=void 0===t||t)?y(n):s(n).map((function(n){return m(n)}))}var b=function(n){return document.createElement(n)},S=function(n,t){var e=b("style");e.id=t||"",e.appendChild(document.createTextNode(n)),document.head.appendChild(e)},T=function(n){return o(n)||(n=[n/2,n/2]),{before:n[0],after:n[1],total:n[0]+n[1]}},N=function(n,t){return Math.abs(Math.random()*(n+t-(n-t))+(n-t))},w=function(n){return["textarea","input"].indexOf(n.tagName.toLowerCase())>-1},x=function(n,t){var e=t.querySelectorAll("*");return[t].concat(s(e).reverse()).find((function(t){return t.cloneNode().outerHTML===n.outerHTML}))},L=function(n,t,e,r){e=e||null;var i=t.isHTMLElement,o=i?t.content:document.createTextNode(t.content);if(w(n))n.value="".concat(n.value).concat(t.content);else{if(!t.isTopLevelText&&!i){var u=t.node.parentNode,c=x(u.cloneNode(),n);if(function(n,t){if(!n)return!1;var e=n.nextSibling;return!e||e.isEqualNode(t)}(c,e))n=c;else if((o=u.cloneNode()).innerText=t.content,!v(u.parentNode)){for(var a=u.parentNode,f=a.cloneNode(),s=x(f,n);!s&&!v(a);)f.innerHTML=o.outerHTML,o=f,f=a.parentNode.cloneNode(),a=a.parentNode,s=x(f,n);n=s||n}}var l=h(n,e,!0)[r-1],d=l?l.parentNode:n;d.insertBefore(o,d.contains(e)?e:null)}},M=function(n){return n&&n.parentNode.removeChild(n)},O=function(n){return!n.firstChild&&!p(n)},E=function(n){return n.some((function(n){return O(n)}))},D=function(n,t,e){var r,i="string"==typeof n,o=!1,u=-1*n;return i&&(u=(r="END"===n.toUpperCase())?-1:1,o=r?t+u>0:t+u<e.length),{isString:i,numberOfSteps:u,canKeepMoving:o}};function P(n,t,e){return e?t?t(n):n:(n&&n.then||(n=Promise.resolve(n)),t?n.then(t):n)}function C(n){return function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];try{return Promise.resolve(n.apply(this,t))}catch(n){return Promise.reject(n)}}}function H(){}function A(n,t){if(!t)return n&&n.then?n.then(H):Promise.resolve()}function I(n,t){var e=n();return e&&e.then?e.then(t):t(e)}function k(n,t,e){if(!n.s){if(e instanceof j){if(!e.s)return void(e.o=k.bind(null,n,t));1&t&&(t=e.s),e=e.v}if(e&&e.then)return void e.then(k.bind(null,n,t),k.bind(null,n,2));n.s=t,n.v=e;var r=n.o;r&&r(n)}}var j=function(){function n(){}return n.prototype.then=function(t,e){var r=new n,i=this.s;if(i){var o=1&i?t:e;if(o){try{k(r,1,o(this.v))}catch(n){k(r,2,n)}return r}return this}return this.o=function(n){try{var i=n.v;1&n.s?k(r,1,t?t(i):i):e?k(r,1,e(i)):k(r,2,i)}catch(n){k(r,2,n)}},r},n}();function z(n,t){return n&&n.then?n.then(t):t(n)}function B(n,t){var r=this,u=this;t=t||{};var c=function(n,t){return cn.add(n,t),r},l=function(n){n=n||{};var t=i({},tn),e=i(t,n);return[[K,e,{force:!0}],[K,t,{force:!0}]]},p=function(){return W?s(J.value):h(J,an,!0)},v=function(n,t){t=t||1;var e=tn.nextStringDelay;cn.insert(n,[V,e.before]),cn.insert(n+t+1,[V,e.after])},x=function(n){an&&(an.classList.toggle("disabled",n),an.classList.toggle("with-delay",!n))},B=C((function(n,t){return Z.push(setTimeout(n,t)),P()})),q=C((function(n){return I((function(){if($)return A(move(-1*$))}),(function(){cn.reset().delete(0).add([V,n.before],!0),p().forEach((function(n){cn.add([Y,null,{isPhantom:!0}],1,!0)}))}))})),R=C((function(){nn.started=!0;var n=cn.getItems();return z(function(n,t){try{var e=n()}catch(n){return t(n)}return e&&e.then?e.then(void 0,t):e}((function(){return z(function(n,t,e){var r,i,o=-1;return function e(u){try{for(;++o<n.length;)if((u=t(o))&&u.then){if(!((c=u)instanceof j&&1&c.s))return void u.then(e,i||(i=k.bind(null,r=new j,2)));u=u.v}r?k(r,1,u):r=u}catch(n){k(r||(r=new j),2,n)}var c}(),r}(n,(function(t){if(nn.frozen||nn.destroyed)throw"";var e,r,i,o,c=n[t],a=c[2],f=[c,cn,u];return a.freezeCursor&&x(!0),e=tn.speed,r=tn.deleteSpeed,i=tn.lifeLike,o=(r=null!==r?r:e/3)/2,X=i?[N(e,e/2),N(r,o)]:[e,r],I((function(){var n;if(null==a?void 0:a.isFirst)return A((n=tn).beforeString.apply(n,f))}),(function(){var n;return P((n=tn).beforeStep.apply(n,f),(function(){return P(c[0].call(u,c[1],a),(function(){return I((function(){if(!a||!a.isPhantom)return I((function(){var n,t;if(null===(n=c[2])||void 0===n?void 0:n.isLast)return A((t=tn).afterString.apply(t,f))}),(function(){var n;return P((n=tn).afterStep.apply(n,f),(function(){c[2].executed=!0}))}))}),(function(){x(!1)}))}))}))}))})),(function(n){return nn.completed=!0,P(tn.afterComplete(u),(function(){if(tn.loop){var n=tn.loopDelay||tn.nextStringDelay;B((function(){return P(q(n),(function(){R()}))}),n.after)}}))}))}),H),(function(n){return u}))})),V=function(n){return new Promise((function(t){B((function(){return t()}),n||tn.nextStringDelay.total)}))},U=function n(t){var e=p(),r=D(t,$,e);return $+=r.numberOfSteps,new Promise((function(t){B(C((function(){return function(n,t,e,r){if(e){var i=r,o=t[(i=i>t.length?t.length:i)-1];(n=o?o.parentNode:n).insertBefore(e,o||null)}}(J,p(),an,$),I((function(){if(r.isString&&r.canKeepMoving)return A(n(r.numberOfSteps>0?"START":"END"))}),(function(){return t()}))})),X[0])}))},F=function(n){return new Promise((function(t){B((function(){return L(J,n,an,$),t()}),X[0])}))},K=C((function(n){tn=i(tn,n)})),Q=C((function(){W?J.value="":p().forEach((function(n){M(n)}))})),Y=function n(t){return t=!0===t,new Promise((function(e){B(C((function(){var r=!1,i=p();return i.length&&(W?J.value=J.value.slice(0,-1):M(i[$])),function(n){for(var t=s(n.querySelectorAll("*")),e=E(t);t.length&&e;){var r=!1;t.forEach((function(n){O(n)&&(M(n),r=!0)})),r&&(t=s(n.querySelectorAll("*"))),e=E(t)}}(J),I((function(){if(t&&i.length-1>0)return P(n(!0),(function(){return r=!0,e()}))}),(function(n){return r?n:e()}))})),X[1])}))};this.break=function(){return cn.add([F,b("BR")])},this.delete=function(n,t){var e=l(t);return cn.add(e[0]),cn.add([Y,!n,_],n||1),cn.add(e[1]),this},this.destroy=function(n){n=void 0===n||n,Z.forEach((function(n){clearTimeout(n)})),Z=[],n&&M(an),nn.destroyed=!0},this.empty=function(){return c(Q)},this.exec=function(n,t){var e=l(t);return c([e[0],[n,null],e[1]])},this.is=function(n){return nn[n]},this.move=function(n,t){var e=D(n,$,p()),r=l(t);return cn.add(r[0]),cn.add([U,e.isString?n:Math.sign(n),_],Math.abs(n)),cn.add(r[1]),this},this.freeze=function(){nn.frozen=!0},this.unfreeze=function(){nn.frozen=!1,!nn.frozen&&R()},this.options=function(n){return c([K,n])},this.pause=function(n){return c([V,n||null])},this.type=function(n,t){var e=l(t),r=g(n,tn.html),i=[e[0]].concat(a(r,F,_,!0),[e[1]]);return c(i)},this.getQueue=function(){return cn},this.getOptions=function(){return tn},this.reset=function(){for(var n in!this.is("destroyed")&&this.destroy(),cn.reset(),nn)nn[n]=!1;return this},this.go=function(){return nn.started?this:(function(){if(an){var n="[data-typeit-id='".concat(un,"'] .ti-cursor");S("@keyframes blink-".concat(un," { 0% {opacity: 0} 49% {opacity: 0} 50% {opacity: 1} } ").concat(n," { animation: blink-").concat(un," ").concat(tn.cursorSpeed/1e3,"s infinite; } ").concat(n,".with-delay { animation-delay: 500ms; } ").concat(n,".disabled { animation: none; }"),un),J.appendChild(an)}}(),tn.waitUntilVisible?(function(n,t){new IntersectionObserver((function(e,r){e.forEach((function(e){e.isIntersecting&&(t(),r.unobserve(n))}))}),{threshold:1}).observe(n)}(J,R.bind(this)),this):(R(),this))};var G,J="string"==typeof(G=n)?document.querySelector(G):G,W=w(J),X=[],Z=[],$=0,_={freezeCursor:!0},nn={started:!1,completed:!1,frozen:!1,destroyed:!1},tn=i(e,t);tn=i(tn,{html:!W&&tn.html,nextStringDelay:T(tn.nextStringDelay),loopDelay:T(tn.loopDelay)});var en,rn,on,un=Math.random().toString().substring(2,9),cn=new f([V,tn.startDelay]);J.setAttribute("data-typeit-id",un),S("[data-typeit-id]:before {content: '.'; display: inline-block; width: 0; visibility: hidden;}"),tn.strings=(on=tn.strings,en=o(on)?on:[on],(rn=function(n){return n.innerHTML.replace(/<\!--.*?-->/g,"").trim()}(J))?(J.innerHTML="",tn.startDelete?(y(rn).forEach((function(n){L(J,n,an,$)})),cn.add([Y,!0]),v(1),en):[rn.trim()].concat(en)):en);var an=function(){if(W||!tn.cursor)return null;var n=b("span");return n.innerHTML=d(tn.cursorChar).innerHTML,n.className="ti-cursor",n.style.cssText="position:absolute;display:inline;margin-left:-.025em;".concat(function(n){var t=["font","lineHeight","color"],e=b("SPAN"),r=window.getComputedStyle(n,null);for(var i in r)t.indexOf(i)>-1&&r[i]&&(e.style[i]=r[i]);return e.style.cssText}(J)),n}();tn.strings.length&&function(){var n=tn.strings;n.forEach((function(t,e){var r=g(t,tn.html);cn.add(a(r,F,_,!0));var i=cn.getItems().length;if(e+1!==n.length){if(tn.breakLines){var o=m(b("BR"));return cn.add([F,o,_]),void v(i)}cn.add(a(r,Y,_)),v(i,t.length)}}))}()}var q=["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"],R=n.useRef,V=n.useEffect,U=n.useState,F=n.useMemo,K=function(e){var r=U(!0),i=r[0],o=r[1],u=R(null),c=e.options,a=e.element,f=e.children,s=e.getBeforeInit,l=e.getAfterInit,d=function(n,t){var e={};for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&t.indexOf(r)<0&&(e[r]=n[r]);if(null!=n&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(r=Object.getOwnPropertySymbols(n);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(n,r[i])&&(e[r[i]]=n[r[i]])}return e}(e,["options","element","children","getBeforeInit","getAfterInit"]),p=a,h=F((function(){return n=p,q.indexOf(n.toLowerCase())>-1;var n}),[p]);return V((function(){f&&(c.strings=u.current.innerHTML),o(!1)}),[]),V((function(){if(!i){var n=new B(u.current,t({},c));return(n=s(n)).go(),n=l(n),function(){n.destroy()}}}),[i]),n.createElement("div",{style:{opacity:i?0:1}},h?n.createElement(p,t({ref:u},d)):n.createElement(p,t({ref:u},d),i&&f))};return K.defaultProps={element:"span",options:{},getBeforeInit:function(n){return n},getAfterInit:function(n){return n}},K}));
{
"name": "typeit-react",
"version": "0.0.3",
"version": "0.1.0-rc",
"description": "React component for the most versatile JavaScript animated typing utility on the planet.",

@@ -40,3 +40,3 @@ "homepage": "https://typeitjs.com",

"@types/react": "^16.9.19",
"typeit": "^6.1.3"
"typeit": "^7.0.0-rc2"
},

@@ -43,0 +43,0 @@ "peerDependencies": {

Sorry, the diff of this file is too big to display

SocketSocket SOC 2 Logo

Product

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

Packages

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc