react-voice-search
Version:
React voice search component with audio visualization, speech recognition, and cross-browser support for Web Speech API. SSR-compatible with Next.js.
18 lines • 54 kB
JavaScript
import e,{useState as r,useRef as t,useEffect as n}from"react";function i(e,r){(null==r||r>e.length)&&(r=e.length);for(var t=0,n=Array(r);t<r;t++)n[t]=e[t];return n}function o(e,r,t,n,i,o,a){try{var s=e[o](a),c=s.value}catch(e){return void t(e)}s.done?r(c):Promise.resolve(c).then(n,i)}function a(e){return function(){var r=this,t=arguments;return new Promise(function(n,i){var a=e.apply(r,t);function s(e){o(a,n,i,s,c,"next",e)}function c(e){o(a,n,i,s,c,"throw",e)}s(void 0)})}}function s(e,r,t){return(r=function(e){var r=function(e,r){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,r);if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===r?String:Number)(e)}(e,"string");return"symbol"==typeof r?r:r+""}(r))in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}function c(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);r&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable})),t.push.apply(t,n)}return t}function u(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{};r%2?c(Object(t),!0).forEach(function(r){s(e,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):c(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))})}return e}function l(){
/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */
var e,r,t="function"==typeof Symbol?Symbol:{},n=t.iterator||"@@iterator",i=t.toStringTag||"@@toStringTag";function o(t,n,i,o){var c=n&&n.prototype instanceof s?n:s,u=Object.create(c.prototype);return f(u,"_invoke",function(t,n,i){var o,s,c,u=0,l=i||[],f=!1,p={p:0,n:0,v:e,a:d,f:d.bind(e,4),d:function(r,t){return o=r,s=0,c=e,p.n=t,a}};function d(t,n){for(s=t,c=n,r=0;!f&&u&&!i&&r<l.length;r++){var i,o=l[r],d=p.p,b=o[2];t>3?(i=b===n)&&(c=o[(s=o[4])?5:(s=3,3)],o[4]=o[5]=e):o[0]<=d&&((i=t<2&&d<o[1])?(s=0,p.v=n,p.n=o[1]):d<b&&(i=t<3||o[0]>n||n>b)&&(o[4]=t,o[5]=n,p.n=b,s=0))}if(i||t>1)return a;throw f=!0,n}return function(i,l,b){if(u>1)throw TypeError("Generator is already running");for(f&&1===l&&d(l,b),s=l,c=b;(r=s<2?e:c)||!f;){o||(s?s<3?(s>1&&(p.n=-1),d(s,c)):p.n=c:p.v=c);try{if(u=2,o){if(s||(i="next"),r=o[i]){if(!(r=r.call(o,c)))throw TypeError("iterator result is not an object");if(!r.done)return r;c=r.value,s<2&&(s=0)}else 1===s&&(r=o.return)&&r.call(o),s<2&&(c=TypeError("The iterator does not provide a '"+i+"' method"),s=1);o=e}else if((r=(f=p.n<0)?c:t.call(n,p))!==a)break}catch(r){o=e,s=1,c=r}finally{u=1}}return{value:r,done:f}}}(t,i,o),!0),u}var a={};function s(){}function c(){}function u(){}r=Object.getPrototypeOf;var p=[][n]?r(r([][n]())):(f(r={},n,function(){return this}),r),d=u.prototype=s.prototype=Object.create(p);function b(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,u):(e.__proto__=u,f(e,i,"GeneratorFunction")),e.prototype=Object.create(d),e}return c.prototype=u,f(d,"constructor",u),f(u,"constructor",c),c.displayName="GeneratorFunction",f(u,i,"GeneratorFunction"),f(d),f(d,i,"Generator"),f(d,n,function(){return this}),f(d,"toString",function(){return"[object Generator]"}),(l=function(){return{w:o,m:b}})()}function f(e,r,t,n){var i=Object.defineProperty;try{i({},"",{})}catch(e){i=0}f=function(e,r,t,n){if(r)i?i(e,r,{value:t,enumerable:!n,configurable:!n,writable:!n}):e[r]=t;else{function o(r,t){f(e,r,function(e){return this._invoke(r,t,e)})}o("next",0),o("throw",1),o("return",2)}},f(e,r,t,n)}function p(e,r){return function(e){if(Array.isArray(e))return e}(e)||function(e,r){var t=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=t){var n,i,o,a,s=[],c=!0,u=!1;try{if(o=(t=t.call(e)).next,0===r);else for(;!(c=(n=o.call(t)).done)&&(s.push(n.value),s.length!==r);c=!0);}catch(e){u=!0,i=e}finally{try{if(!c&&null!=t.return&&(a=t.return(),Object(a)!==a))return}finally{if(u)throw i}}return s}}(e,r)||function(e,r){if(e){if("string"==typeof e)return i(e,r);var t={}.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?i(e,r):void 0}}(e,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function d(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var b,w={exports:{}},m={exports:{}},h={};var y,v,g,x,k,S,O,E,j,C,T,P,_,I,M,$={};
/** @license React v16.13.1
* react-is.development.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/function A(){return v||(v=1,"production"===process.env.NODE_ENV?m.exports=function(){if(b)return h;b=1;var e="function"==typeof Symbol&&Symbol.for,r=e?Symbol.for("react.element"):60103,t=e?Symbol.for("react.portal"):60106,n=e?Symbol.for("react.fragment"):60107,i=e?Symbol.for("react.strict_mode"):60108,o=e?Symbol.for("react.profiler"):60114,a=e?Symbol.for("react.provider"):60109,s=e?Symbol.for("react.context"):60110,c=e?Symbol.for("react.async_mode"):60111,u=e?Symbol.for("react.concurrent_mode"):60111,l=e?Symbol.for("react.forward_ref"):60112,f=e?Symbol.for("react.suspense"):60113,p=e?Symbol.for("react.suspense_list"):60120,d=e?Symbol.for("react.memo"):60115,w=e?Symbol.for("react.lazy"):60116,m=e?Symbol.for("react.block"):60121,y=e?Symbol.for("react.fundamental"):60117,v=e?Symbol.for("react.responder"):60118,g=e?Symbol.for("react.scope"):60119;function x(e){if("object"==typeof e&&null!==e){var p=e.$$typeof;switch(p){case r:switch(e=e.type){case c:case u:case n:case o:case i:case f:return e;default:switch(e=e&&e.$$typeof){case s:case l:case w:case d:case a:return e;default:return p}}case t:return p}}}function k(e){return x(e)===u}return h.AsyncMode=c,h.ConcurrentMode=u,h.ContextConsumer=s,h.ContextProvider=a,h.Element=r,h.ForwardRef=l,h.Fragment=n,h.Lazy=w,h.Memo=d,h.Portal=t,h.Profiler=o,h.StrictMode=i,h.Suspense=f,h.isAsyncMode=function(e){return k(e)||x(e)===c},h.isConcurrentMode=k,h.isContextConsumer=function(e){return x(e)===s},h.isContextProvider=function(e){return x(e)===a},h.isElement=function(e){return"object"==typeof e&&null!==e&&e.$$typeof===r},h.isForwardRef=function(e){return x(e)===l},h.isFragment=function(e){return x(e)===n},h.isLazy=function(e){return x(e)===w},h.isMemo=function(e){return x(e)===d},h.isPortal=function(e){return x(e)===t},h.isProfiler=function(e){return x(e)===o},h.isStrictMode=function(e){return x(e)===i},h.isSuspense=function(e){return x(e)===f},h.isValidElementType=function(e){return"string"==typeof e||"function"==typeof e||e===n||e===u||e===o||e===i||e===f||e===p||"object"==typeof e&&null!==e&&(e.$$typeof===w||e.$$typeof===d||e.$$typeof===a||e.$$typeof===s||e.$$typeof===l||e.$$typeof===y||e.$$typeof===v||e.$$typeof===g||e.$$typeof===m)},h.typeOf=x,h}():m.exports=(y||(y=1,"production"!==process.env.NODE_ENV&&function(){var e="function"==typeof Symbol&&Symbol.for,r=e?Symbol.for("react.element"):60103,t=e?Symbol.for("react.portal"):60106,n=e?Symbol.for("react.fragment"):60107,i=e?Symbol.for("react.strict_mode"):60108,o=e?Symbol.for("react.profiler"):60114,a=e?Symbol.for("react.provider"):60109,s=e?Symbol.for("react.context"):60110,c=e?Symbol.for("react.async_mode"):60111,u=e?Symbol.for("react.concurrent_mode"):60111,l=e?Symbol.for("react.forward_ref"):60112,f=e?Symbol.for("react.suspense"):60113,p=e?Symbol.for("react.suspense_list"):60120,d=e?Symbol.for("react.memo"):60115,b=e?Symbol.for("react.lazy"):60116,w=e?Symbol.for("react.block"):60121,m=e?Symbol.for("react.fundamental"):60117,h=e?Symbol.for("react.responder"):60118,y=e?Symbol.for("react.scope"):60119;function v(e){if("object"==typeof e&&null!==e){var p=e.$$typeof;switch(p){case r:var w=e.type;switch(w){case c:case u:case n:case o:case i:case f:return w;default:var m=w&&w.$$typeof;switch(m){case s:case l:case b:case d:case a:return m;default:return p}}case t:return p}}}var g=c,x=u,k=s,S=a,O=r,E=l,j=n,C=b,T=d,P=t,_=o,I=i,M=f,A=!1;function N(e){return v(e)===u}$.AsyncMode=g,$.ConcurrentMode=x,$.ContextConsumer=k,$.ContextProvider=S,$.Element=O,$.ForwardRef=E,$.Fragment=j,$.Lazy=C,$.Memo=T,$.Portal=P,$.Profiler=_,$.StrictMode=I,$.Suspense=M,$.isAsyncMode=function(e){return A||(A=!0,console.warn("The ReactIs.isAsyncMode() alias has been deprecated, and will be removed in React 17+. Update your code to use ReactIs.isConcurrentMode() instead. It has the exact same API.")),N(e)||v(e)===c},$.isConcurrentMode=N,$.isContextConsumer=function(e){return v(e)===s},$.isContextProvider=function(e){return v(e)===a},$.isElement=function(e){return"object"==typeof e&&null!==e&&e.$$typeof===r},$.isForwardRef=function(e){return v(e)===l},$.isFragment=function(e){return v(e)===n},$.isLazy=function(e){return v(e)===b},$.isMemo=function(e){return v(e)===d},$.isPortal=function(e){return v(e)===t},$.isProfiler=function(e){return v(e)===o},$.isStrictMode=function(e){return v(e)===i},$.isSuspense=function(e){return v(e)===f},$.isValidElementType=function(e){return"string"==typeof e||"function"==typeof e||e===n||e===u||e===o||e===i||e===f||e===p||"object"==typeof e&&null!==e&&(e.$$typeof===b||e.$$typeof===d||e.$$typeof===a||e.$$typeof===s||e.$$typeof===l||e.$$typeof===m||e.$$typeof===h||e.$$typeof===y||e.$$typeof===w)},$.typeOf=v}()),$)),m.exports}
/*
object-assign
(c) Sindre Sorhus
@license MIT
*/function N(){if(x)return g;x=1;var e=Object.getOwnPropertySymbols,r=Object.prototype.hasOwnProperty,t=Object.prototype.propertyIsEnumerable;return g=function(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var r={},t=0;t<10;t++)r["_"+String.fromCharCode(t)]=t;if("0123456789"!==Object.getOwnPropertyNames(r).map(function(e){return r[e]}).join(""))return!1;var n={};return"abcdefghijklmnopqrst".split("").forEach(function(e){n[e]=e}),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},n)).join("")}catch(e){return!1}}()?Object.assign:function(n,i){for(var o,a,s=function(e){if(null==e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}(n),c=1;c<arguments.length;c++){for(var u in o=Object(arguments[c]))r.call(o,u)&&(s[u]=o[u]);if(e){a=e(o);for(var l=0;l<a.length;l++)t.call(o,a[l])&&(s[a[l]]=o[a[l]])}}return s},g}function z(){if(S)return k;S=1;return k="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"}function R(){return E?O:(E=1,O=Function.call.bind(Object.prototype.hasOwnProperty))}function q(){if(C)return j;C=1;var e=function(){};if("production"!==process.env.NODE_ENV){var r=z(),t={},n=R();e=function(e){var r="Warning: "+e;"undefined"!=typeof console&&console.error(r);try{throw new Error(r)}catch(e){}}}function i(i,o,a,s,c){if("production"!==process.env.NODE_ENV)for(var u in i)if(n(i,u)){var l;try{if("function"!=typeof i[u]){var f=Error((s||"React class")+": "+a+" type `"+u+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+typeof i[u]+"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");throw f.name="Invariant Violation",f}l=i[u](o,u,s,a,null,r)}catch(e){l=e}if(!l||l instanceof Error||e((s||"React class")+": type specification of "+a+" `"+u+"` is invalid; the type checker function must return `null` or an `Error` but returned a "+typeof l+". You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument)."),l instanceof Error&&!(l.message in t)){t[l.message]=!0;var p=c?c():"";e("Failed "+a+" type: "+l.message+(null!=p?p:""))}}}return i.resetWarningCache=function(){"production"!==process.env.NODE_ENV&&(t={})},j=i}function V(){if(P)return T;P=1;var e=A(),r=N(),t=z(),n=R(),i=q(),o=function(){};function a(){return null}return"production"!==process.env.NODE_ENV&&(o=function(e){var r="Warning: "+e;"undefined"!=typeof console&&console.error(r);try{throw new Error(r)}catch(e){}}),T=function(s,c){var u="function"==typeof Symbol&&Symbol.iterator;var l="<<anonymous>>",f={array:w("array"),bigint:w("bigint"),bool:w("boolean"),func:w("function"),number:w("number"),object:w("object"),string:w("string"),symbol:w("symbol"),any:b(a),arrayOf:function(e){return b(function(r,n,i,o,a){if("function"!=typeof e)return new d("Property `"+a+"` of component `"+i+"` has invalid PropType notation inside arrayOf.");var s=r[n];if(!Array.isArray(s))return new d("Invalid "+o+" `"+a+"` of type `"+y(s)+"` supplied to `"+i+"`, expected an array.");for(var c=0;c<s.length;c++){var u=e(s,c,i,o,a+"["+c+"]",t);if(u instanceof Error)return u}return null})},element:b(function(e,r,t,n,i){var o=e[r];return s(o)?null:new d("Invalid "+n+" `"+i+"` of type `"+y(o)+"` supplied to `"+t+"`, expected a single ReactElement.")}),elementType:b(function(r,t,n,i,o){var a=r[t];return e.isValidElementType(a)?null:new d("Invalid "+i+" `"+o+"` of type `"+y(a)+"` supplied to `"+n+"`, expected a single ReactElement type.")}),instanceOf:function(e){return b(function(r,t,n,i,o){if(!(r[t]instanceof e)){var a=e.name||l;return new d("Invalid "+i+" `"+o+"` of type `"+(((s=r[t]).constructor&&s.constructor.name?s.constructor.name:l)+"` supplied to `")+n+"`, expected instance of `"+a+"`.")}var s;return null})},node:b(function(e,r,t,n,i){return h(e[r])?null:new d("Invalid "+n+" `"+i+"` supplied to `"+t+"`, expected a ReactNode.")}),objectOf:function(e){return b(function(r,i,o,a,s){if("function"!=typeof e)return new d("Property `"+s+"` of component `"+o+"` has invalid PropType notation inside objectOf.");var c=r[i],u=y(c);if("object"!==u)return new d("Invalid "+a+" `"+s+"` of type `"+u+"` supplied to `"+o+"`, expected an object.");for(var l in c)if(n(c,l)){var f=e(c,l,o,a,s+"."+l,t);if(f instanceof Error)return f}return null})},oneOf:function(e){if(!Array.isArray(e))return"production"!==process.env.NODE_ENV&&o(arguments.length>1?"Invalid arguments supplied to oneOf, expected an array, got "+arguments.length+" arguments. A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z]).":"Invalid argument supplied to oneOf, expected an array."),a;return b(function(r,t,n,i,o){for(var a=r[t],s=0;s<e.length;s++)if(p(a,e[s]))return null;var c=JSON.stringify(e,function(e,r){return"symbol"===v(r)?String(r):r});return new d("Invalid "+i+" `"+o+"` of value `"+String(a)+"` supplied to `"+n+"`, expected one of "+c+".")})},oneOfType:function(e){if(!Array.isArray(e))return"production"!==process.env.NODE_ENV&&o("Invalid argument supplied to oneOfType, expected an instance of array."),a;for(var r=0;r<e.length;r++){var i=e[r];if("function"!=typeof i)return o("Invalid argument supplied to oneOfType. Expected an array of check functions, but received "+g(i)+" at index "+r+"."),a}return b(function(r,i,o,a,s){for(var c=[],u=0;u<e.length;u++){var l=(0,e[u])(r,i,o,a,s,t);if(null==l)return null;l.data&&n(l.data,"expectedType")&&c.push(l.data.expectedType)}return new d("Invalid "+a+" `"+s+"` supplied to `"+o+"`"+(c.length>0?", expected one of type ["+c.join(", ")+"]":"")+".")})},shape:function(e){return b(function(r,n,i,o,a){var s=r[n],c=y(s);if("object"!==c)return new d("Invalid "+o+" `"+a+"` of type `"+c+"` supplied to `"+i+"`, expected `object`.");for(var u in e){var l=e[u];if("function"!=typeof l)return m(i,o,a,u,v(l));var f=l(s,u,i,o,a+"."+u,t);if(f)return f}return null})},exact:function(e){return b(function(i,o,a,s,c){var u=i[o],l=y(u);if("object"!==l)return new d("Invalid "+s+" `"+c+"` of type `"+l+"` supplied to `"+a+"`, expected `object`.");var f=r({},i[o],e);for(var p in f){var b=e[p];if(n(e,p)&&"function"!=typeof b)return m(a,s,c,p,v(b));if(!b)return new d("Invalid "+s+" `"+c+"` key `"+p+"` supplied to `"+a+"`.\nBad object: "+JSON.stringify(i[o],null," ")+"\nValid keys: "+JSON.stringify(Object.keys(e),null," "));var w=b(u,p,a,s,c+"."+p,t);if(w)return w}return null})}};function p(e,r){return e===r?0!==e||1/e==1/r:e!=e&&r!=r}function d(e,r){this.message=e,this.data=r&&"object"==typeof r?r:{},this.stack=""}function b(e){if("production"!==process.env.NODE_ENV)var r={},n=0;function i(i,a,s,u,f,p,b){if(u=u||l,p=p||s,b!==t){if(c){var w=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use `PropTypes.checkPropTypes()` to call them. Read more at http://fb.me/use-check-prop-types");throw w.name="Invariant Violation",w}if("production"!==process.env.NODE_ENV&&"undefined"!=typeof console){var m=u+":"+s;!r[m]&&n<3&&(o("You are manually calling a React.PropTypes validation function for the `"+p+"` prop on `"+u+"`. This is deprecated and will throw in the standalone `prop-types` package. You may be seeing this warning due to a third-party PropTypes library. See https://fb.me/react-warning-dont-call-proptypes for details."),r[m]=!0,n++)}}return null==a[s]?i?null===a[s]?new d("The "+f+" `"+p+"` is marked as required in `"+u+"`, but its value is `null`."):new d("The "+f+" `"+p+"` is marked as required in `"+u+"`, but its value is `undefined`."):null:e(a,s,u,f,p)}var a=i.bind(null,!1);return a.isRequired=i.bind(null,!0),a}function w(e){return b(function(r,t,n,i,o,a){var s=r[t];return y(s)!==e?new d("Invalid "+i+" `"+o+"` of type `"+v(s)+"` supplied to `"+n+"`, expected `"+e+"`.",{expectedType:e}):null})}function m(e,r,t,n,i){return new d((e||"React class")+": "+r+" type `"+t+"."+n+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+i+"`.")}function h(e){switch(typeof e){case"number":case"string":case"undefined":return!0;case"boolean":return!e;case"object":if(Array.isArray(e))return e.every(h);if(null===e||s(e))return!0;var r=function(e){var r=e&&(u&&e[u]||e["@@iterator"]);if("function"==typeof r)return r}(e);if(!r)return!1;var t,n=r.call(e);if(r!==e.entries){for(;!(t=n.next()).done;)if(!h(t.value))return!1}else for(;!(t=n.next()).done;){var i=t.value;if(i&&!h(i[1]))return!1}return!0;default:return!1}}function y(e){var r=typeof e;return Array.isArray(e)?"array":e instanceof RegExp?"object":function(e,r){return"symbol"===e||!!r&&("Symbol"===r["@@toStringTag"]||"function"==typeof Symbol&&r instanceof Symbol)}(r,e)?"symbol":r}function v(e){if(null==e)return""+e;var r=y(e);if("object"===r){if(e instanceof Date)return"date";if(e instanceof RegExp)return"regexp"}return r}function g(e){var r=v(e);switch(r){case"array":case"object":return"an "+r;case"boolean":case"date":case"regexp":return"a "+r;default:return r}}return d.prototype=Error.prototype,f.checkPropTypes=i,f.resetWarningCache=i.resetWarningCache,f.PropTypes=f,f},T}function D(){if(I)return _;I=1;var e=z();function r(){}function t(){}return t.resetWarningCache=r,_=function(){function n(r,t,n,i,o,a){if(a!==e){var s=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw s.name="Invariant Violation",s}}function i(){return n}n.isRequired=n;var o={array:n,bigint:n,bool:n,func:n,number:n,object:n,string:n,symbol:n,any:n,arrayOf:i,element:n,elementType:n,instanceOf:i,node:n,objectOf:i,oneOf:i,oneOfType:i,shape:i,exact:i,checkPropTypes:t,resetWarningCache:r};return o.PropTypes=o,o}}function F(){if(M)return w.exports;if(M=1,"production"!==process.env.NODE_ENV){var e=A();w.exports=V()(e.isElement,true)}else w.exports=D()();return w.exports}var H,U=d(F()),B="user-agent",W="",L="function",G="undefined",X="object",Y="string",J="browser",K="cpu",Q="device",Z="engine",ee="os",re="result",te="name",ne="type",ie="vendor",oe="version",ae="architecture",se="major",ce="model",ue="console",le="mobile",fe="tablet",pe="smarttv",de="wearable",be="xr",we="embedded",me="inapp",he="brands",ye="formFactors",ve="fullVersionList",ge="platform",xe="platformVersion",ke="bitness",Se="sec-ch-ua",Oe=Se+"-full-version-list",Ee=Se+"-arch",je=Se+"-"+ke,Ce=Se+"-form-factors",Te=Se+"-"+le,Pe=Se+"-"+ce,_e=Se+"-"+ge,Ie=_e+"-version",Me=[he,ve,le,ce,ge,xe,ae,ye,ke],$e="Amazon",Ae="Apple",Ne="ASUS",ze="BlackBerry",Re="Google",qe="Huawei",Ve="Lenovo",De="Honor",Fe="LG",He="Microsoft",Ue="Motorola",Be="Nvidia",We="OnePlus",Le="OPPO",Ge="Samsung",Xe="Sharp",Ye="Sony",Je="Xiaomi",Ke="Zebra",Qe="Chrome",Ze="Chromium",er="Chromecast",rr="Edge",tr="Firefox",nr="Opera",ir="Facebook",or="Sogou",ar="Mobile ",sr=" Browser",cr="Windows",ur=typeof window!==G&&window.navigator?window.navigator:void 0,lr=ur&&ur.userAgentData?ur.userAgentData:void 0,fr=function(e){for(var r={},t=0;t<e.length;t++)r[e[t].toUpperCase()]=e[t];return r},pr=function(e,r){if(typeof e===X&&e.length>0){for(var t in e)if(mr(r)==mr(e[t]))return!0;return!1}return!!br(e)&&mr(r)==mr(e)},dr=function(e,r){for(var t in e)return/^(browser|cpu|device|engine|os)$/.test(t)||!!r&&dr(e[t])},br=function(e){return typeof e===Y},wr=function(e){if(e){for(var r=[],t=vr(/\\?\"/g,e).split(","),n=0;n<t.length;n++)if(t[n].indexOf(";")>-1){var i=xr(t[n]).split(";v=");r[n]={brand:i[0],version:i[1]}}else r[n]=xr(t[n]);return r}},mr=function(e){return br(e)?e.toLowerCase():e},hr=function(e){return br(e)?vr(/[^\d\.]/g,e).split(".")[0]:void 0},yr=function(e){for(var r in e){var t=e[r];typeof t==X&&2==t.length?this[t[0]]=t[1]:this[t]=void 0}return this},vr=function(e,r){return br(r)?r.replace(e,W):r},gr=function(e){return vr(/\\?\"/g,e)},xr=function(e,r){if(br(e))return e=vr(/^\s\s*/,e),typeof r===G?e:e.substring(0,500)},kr=function(e,r){if(e&&r)for(var t,n,i,o,a,s,c=0;c<r.length&&!a;){var u=r[c],l=r[c+1];for(t=n=0;t<u.length&&!a&&u[t];)if(a=u[t++].exec(e))for(i=0;i<l.length;i++)s=a[++n],typeof(o=l[i])===X&&o.length>0?2===o.length?typeof o[1]==L?this[o[0]]=o[1].call(this,s):this[o[0]]=o[1]:o.length>=3&&(typeof o[1]!==L||o[1].exec&&o[1].test?3==o.length?this[o[0]]=s?s.replace(o[1],o[2]):void 0:4==o.length?this[o[0]]=s?o[3].call(this,s.replace(o[1],o[2])):void 0:o.length>4&&(this[o[0]]=s?o[3].apply(this,[s.replace(o[1],o[2])].concat(o.slice(4))):void 0):o.length>3?this[o[0]]=s?o[1].apply(this,o.slice(2)):void 0:this[o[0]]=s?o[1].call(this,s,o[2]):void 0):this[o]=s||void 0;c+=2}},Sr=function(e,r){for(var t in r)if(typeof r[t]===X&&r[t].length>0){for(var n=0;n<r[t].length;n++)if(pr(r[t][n],e))return"?"===t?void 0:t}else if(pr(r[t],e))return"?"===t?void 0:t;return r.hasOwnProperty("*")?r["*"]:e},Or={ME:"4.90","NT 3.51":"3.51","NT 4.0":"4.0",2e3:["5.0","5.01"],XP:["5.1","5.2"],Vista:"6.0",7:"6.1",8:"6.2",8.1:"6.3",10:["6.4","10.0"],NT:""},Er={embedded:"Automotive",mobile:"Mobile",tablet:["Tablet","EInk"],smarttv:"TV",wearable:"Watch",xr:["VR","XR"],"?":["Desktop","Unknown"],"*":void 0},jr={Chrome:"Google Chrome",Edge:"Microsoft Edge","Edge WebView2":"Microsoft Edge WebView2","Chrome WebView":"Android WebView","Chrome Headless":"HeadlessChrome","Huawei Browser":"HuaweiBrowser","MIUI Browser":"Miui Browser","Opera Mobi":"OperaMobile",Yandex:"YaBrowser"},Cr={browser:[[/\b(?:crmo|crios)\/([\w\.]+)/i],[oe,[te,ar+"Chrome"]],[/webview.+edge\/([\w\.]+)/i],[oe,[te,rr+" WebView"]],[/edg(?:e|ios|a)?\/([\w\.]+)/i],[oe,[te,"Edge"]],[/(opera mini)\/([-\w\.]+)/i,/(opera [mobiletab]{3,6})\b.+version\/([-\w\.]+)/i,/(opera)(?:.+version\/|[\/ ]+)([\w\.]+)/i],[te,oe],[/opios[\/ ]+([\w\.]+)/i],[oe,[te,nr+" Mini"]],[/\bop(?:rg)?x\/([\w\.]+)/i],[oe,[te,nr+" GX"]],[/\bopr\/([\w\.]+)/i],[oe,[te,nr]],[/\bb[ai]*d(?:uhd|[ub]*[aekoprswx]{5,6})[\/ ]?([\w\.]+)/i],[oe,[te,"Baidu"]],[/\b(?:mxbrowser|mxios|myie2)\/?([-\w\.]*)\b/i],[oe,[te,"Maxthon"]],[/(kindle)\/([\w\.]+)/i,/(lunascape|maxthon|netfront|jasmine|blazer|sleipnir)[\/ ]?([\w\.]*)/i,/(avant|iemobile|slim(?:browser|boat|jet))[\/ ]?([\d\.]*)/i,/(?:ms|\()(ie) ([\w\.]+)/i,/(flock|rockmelt|midori|epiphany|silk|skyfire|ovibrowser|bolt|iron|vivaldi|iridium|phantomjs|bowser|qupzilla|falkon|rekonq|puffin|brave|whale(?!.+naver)|qqbrowserlite|duckduckgo|klar|helio|(?=comodo_)?dragon|otter|dooble|(?:lg |qute)browser)\/([-\w\.]+)/i,/(heytap|ovi|115|surf)browser\/([\d\.]+)/i,/(ecosia|weibo)(?:__| \w+@)([\d\.]+)/i],[te,oe],[/quark(?:pc)?\/([-\w\.]+)/i],[oe,[te,"Quark"]],[/\bddg\/([\w\.]+)/i],[oe,[te,"DuckDuckGo"]],[/(?:\buc? ?browser|(?:juc.+)ucweb)[\/ ]?([\w\.]+)/i],[oe,[te,"UCBrowser"]],[/microm.+\bqbcore\/([\w\.]+)/i,/\bqbcore\/([\w\.]+).+microm/i,/micromessenger\/([\w\.]+)/i],[oe,[te,"WeChat"]],[/konqueror\/([\w\.]+)/i],[oe,[te,"Konqueror"]],[/trident.+rv[: ]([\w\.]{1,9})\b.+like gecko/i],[oe,[te,"IE"]],[/ya(?:search)?browser\/([\w\.]+)/i],[oe,[te,"Yandex"]],[/slbrowser\/([\w\.]+)/i],[oe,[te,"Smart "+Ve+sr]],[/(avast|avg)\/([\w\.]+)/i],[[te,/(.+)/,"$1 Secure"+sr],oe],[/\bfocus\/([\w\.]+)/i],[oe,[te,tr+" Focus"]],[/\bopt\/([\w\.]+)/i],[oe,[te,nr+" Touch"]],[/coc_coc\w+\/([\w\.]+)/i],[oe,[te,"Coc Coc"]],[/dolfin\/([\w\.]+)/i],[oe,[te,"Dolphin"]],[/coast\/([\w\.]+)/i],[oe,[te,nr+" Coast"]],[/miuibrowser\/([\w\.]+)/i],[oe,[te,"MIUI"+sr]],[/fxios\/([\w\.-]+)/i],[oe,[te,ar+tr]],[/\bqihoobrowser\/?([\w\.]*)/i],[oe,[te,"360"]],[/\b(qq)\/([\w\.]+)/i],[[te,/(.+)/,"$1Browser"],oe],[/(oculus|sailfish|huawei|vivo|pico)browser\/([\w\.]+)/i],[[te,/(.+)/,"$1"+sr],oe],[/samsungbrowser\/([\w\.]+)/i],[oe,[te,Ge+" Internet"]],[/metasr[\/ ]?([\d\.]+)/i],[oe,[te,or+" Explorer"]],[/(sogou)mo\w+\/([\d\.]+)/i],[[te,or+" Mobile"],oe],[/(electron)\/([\w\.]+) safari/i,/(tesla)(?: qtcarbrowser|\/(20\d\d\.[-\w\.]+))/i,/m?(qqbrowser|2345(?=browser|chrome|explorer))\w*[\/ ]?v?([\w\.]+)/i],[te,oe],[/(lbbrowser|rekonq)/i],[te],[/ome\/([\w\.]+) \w* ?(iron) saf/i,/ome\/([\w\.]+).+qihu (360)[es]e/i],[oe,te],[/((?:fban\/fbios|fb_iab\/fb4a)(?!.+fbav)|;fbav\/([\w\.]+);)/i],[[te,ir],oe,[ne,me]],[/(kakao(?:talk|story))[\/ ]([\w\.]+)/i,/(naver)\(.*?(\d+\.[\w\.]+).*\)/i,/(daum)apps[\/ ]([\w\.]+)/i,/safari (line)\/([\w\.]+)/i,/\b(line)\/([\w\.]+)\/iab/i,/(alipay)client\/([\w\.]+)/i,/(twitter)(?:and| f.+e\/([\w\.]+))/i,/(instagram|snapchat|klarna)[\/ ]([-\w\.]+)/i],[te,oe,[ne,me]],[/\bgsa\/([\w\.]+) .*safari\//i],[oe,[te,"GSA"],[ne,me]],[/musical_ly(?:.+app_?version\/|_)([\w\.]+)/i],[oe,[te,"TikTok"],[ne,me]],[/\[(linkedin)app\]/i],[te,[ne,me]],[/(chromium)[\/ ]([-\w\.]+)/i],[te,oe],[/headlesschrome(?:\/([\w\.]+)| )/i],[oe,[te,Qe+" Headless"]],[/wv\).+chrome\/([\w\.]+).+edgw\//i],[oe,[te,rr+" WebView2"]],[/ wv\).+(chrome)\/([\w\.]+)/i],[[te,Qe+" WebView"],oe],[/droid.+ version\/([\w\.]+)\b.+(?:mobile safari|safari)/i],[oe,[te,"Android"+sr]],[/chrome\/([\w\.]+) mobile/i],[oe,[te,ar+"Chrome"]],[/(chrome|omniweb|arora|[tizenoka]{5} ?browser)\/v?([\w\.]+)/i],[te,oe],[/version\/([\w\.\,]+) .*mobile(?:\/\w+ | ?)safari/i],[oe,[te,ar+"Safari"]],[/iphone .*mobile(?:\/\w+ | ?)safari/i],[[te,ar+"Safari"]],[/version\/([\w\.\,]+) .*(safari)/i],[oe,te],[/webkit.+?(mobile ?safari|safari)(\/[\w\.]+)/i],[te,[oe,"1"]],[/(webkit|khtml)\/([\w\.]+)/i],[te,oe],[/(?:mobile|tablet);.*(firefox)\/([\w\.-]+)/i],[[te,ar+tr],oe],[/(navigator|netscape\d?)\/([-\w\.]+)/i],[[te,"Netscape"],oe],[/(wolvic|librewolf)\/([\w\.]+)/i],[te,oe],[/mobile vr; rv:([\w\.]+)\).+firefox/i],[oe,[te,tr+" Reality"]],[/ekiohf.+(flow)\/([\w\.]+)/i,/(swiftfox)/i,/(icedragon|iceweasel|camino|chimera|fennec|maemo browser|minimo|conkeror)[\/ ]?([\w\.\+]+)/i,/(seamonkey|k-meleon|icecat|iceape|firebird|phoenix|palemoon|basilisk|waterfox)\/([-\w\.]+)$/i,/(firefox)\/([\w\.]+)/i,/(mozilla)\/([\w\.]+) .+rv\:.+gecko\/\d+/i,/(amaya|dillo|doris|icab|ladybird|lynx|mosaic|netsurf|obigo|polaris|w3m|(?:go|ice|up)[\. ]?browser)[-\/ ]?v?([\w\.]+)/i,/\b(links) \(([\w\.]+)/i],[te,[oe,/_/g,"."]],[/(cobalt)\/([\w\.]+)/i],[te,[oe,/[^\d\.]+./,W]]],cpu:[[/\b((amd|x|x86[-_]?|wow|win)64)\b/i],[[ae,"amd64"]],[/(ia32(?=;))/i,/\b((i[346]|x)86)(pc)?\b/i],[[ae,"ia32"]],[/\b(aarch64|arm(v?[89]e?l?|_?64))\b/i],[[ae,"arm64"]],[/\b(arm(v[67])?ht?n?[fl]p?)\b/i],[[ae,"armhf"]],[/( (ce|mobile); ppc;|\/[\w\.]+arm\b)/i],[[ae,"arm"]],[/((ppc|powerpc)(64)?)( mac|;|\))/i],[[ae,/ower/,W,mr]],[/ sun4\w[;\)]/i],[[ae,"sparc"]],[/\b(avr32|ia64(?=;)|68k(?=\))|\barm(?=v([1-7]|[5-7]1)l?|;|eabi)|(irix|mips|sparc)(64)?\b|pa-risc)/i],[[ae,mr]]],device:[[/\b(sch-i[89]0\d|shw-m380s|sm-[ptx]\w{2,4}|gt-[pn]\d{2,4}|sgh-t8[56]9|nexus 10)/i],[ce,[ie,Ge],[ne,fe]],[/\b((?:s[cgp]h|gt|sm)-(?![lr])\w+|sc[g-]?[\d]+a?|galaxy nexus)/i,/samsung[- ]((?!sm-[lr]|browser)[-\w]+)/i,/sec-(sgh\w+)/i],[ce,[ie,Ge],[ne,le]],[/(?:\/|\()(ip(?:hone|od)[\w, ]*)(?:\/|;)/i],[ce,[ie,Ae],[ne,le]],[/\((ipad);[-\w\),; ]+apple/i,/applecoremedia\/[\w\.]+ \((ipad)/i,/\b(ipad)\d\d?,\d\d?[;\]].+ios/i],[ce,[ie,Ae],[ne,fe]],[/(macintosh);/i],[ce,[ie,Ae]],[/\b(sh-?[altvz]?\d\d[a-ekm]?)/i],[ce,[ie,Xe],[ne,le]],[/\b((?:brt|eln|hey2?|gdi|jdn)-a?[lnw]09|(?:ag[rm]3?|jdn2|kob2)-a?[lw]0[09]hn)(?: bui|\)|;)/i],[ce,[ie,De],[ne,fe]],[/honor([-\w ]+)[;\)]/i],[ce,[ie,De],[ne,le]],[/\b((?:ag[rs][2356]?k?|bah[234]?|bg[2o]|bt[kv]|cmr|cpn|db[ry]2?|jdn2|got|kob2?k?|mon|pce|scm|sht?|[tw]gr|vrd)-[ad]?[lw][0125][09]b?|605hw|bg2-u03|(?:gem|fdr|m2|ple|t1)-[7a]0[1-4][lu]|t1-a2[13][lw]|mediapad[\w\. ]*(?= bui|\)))\b(?!.+d\/s)/i],[ce,[ie,qe],[ne,fe]],[/(?:huawei)([-\w ]+)[;\)]/i,/\b(nexus 6p|\w{2,4}e?-[atu]?[ln][\dx][012359c][adn]?)\b(?!.+d\/s)/i],[ce,[ie,qe],[ne,le]],[/oid[^\)]+; (2[\dbc]{4}(182|283|rp\w{2})[cgl]|m2105k81a?c)(?: bui|\))/i,/\b((?:red)?mi[-_ ]?pad[\w- ]*)(?: bui|\))/i],[[ce,/_/g," "],[ie,Je],[ne,fe]],[/\b(poco[\w ]+|m2\d{3}j\d\d[a-z]{2})(?: bui|\))/i,/\b; (\w+) build\/hm\1/i,/\b(hm[-_ ]?note?[_ ]?(?:\d\w)?) bui/i,/\b(redmi[\-_ ]?(?:note|k)?[\w_ ]+)(?: bui|\))/i,/oid[^\)]+; (m?[12][0-389][01]\w{3,6}[c-y])( bui|; wv|\))/i,/\b(mi[-_ ]?(?:a\d|one|one[_ ]plus|note lte|max|cc)?[_ ]?(?:\d?\w?)[_ ]?(?:plus|se|lite|pro)?)(?: bui|\))/i,/ ([\w ]+) miui\/v?\d/i],[[ce,/_/g," "],[ie,Je],[ne,le]],[/droid.+; (cph2[3-6]\d[13579]|((gm|hd)19|(ac|be|in|kb)20|(d[en]|eb|le|mt)21|ne22)[0-2]\d|p[g-k]\w[1m]10)\b/i,/(?:one)?(?:plus)? (a\d0\d\d)(?: b|\))/i],[ce,[ie,We],[ne,le]],[/; (\w+) bui.+ oppo/i,/\b(cph[12]\d{3}|p(?:af|c[al]|d\w|e[ar])[mt]\d0|x9007|a101op)\b/i],[ce,[ie,Le],[ne,le]],[/\b(opd2(\d{3}a?))(?: bui|\))/i],[ce,[ie,Sr,{OnePlus:["203","304","403","404","413","415"],"*":Le}],[ne,fe]],[/(vivo (5r?|6|8l?|go|one|s|x[il]?[2-4]?)[\w\+ ]*)(?: bui|\))/i],[ce,[ie,"BLU"],[ne,le]],[/; vivo (\w+)(?: bui|\))/i,/\b(v[12]\d{3}\w?[at])(?: bui|;)/i],[ce,[ie,"Vivo"],[ne,le]],[/\b(rmx[1-3]\d{3})(?: bui|;|\))/i],[ce,[ie,"Realme"],[ne,le]],[/(ideatab[-\w ]+|602lv|d-42a|a101lv|a2109a|a3500-hv|s[56]000|pb-6505[my]|tb-?x?\d{3,4}(?:f[cu]|xu|[av])|yt\d?-[jx]?\d+[lfmx])( bui|;|\)|\/)/i,/lenovo ?(b[68]0[08]0-?[hf]?|tab(?:[\w- ]+?)|tb[\w-]{6,7})( bui|;|\)|\/)/i],[ce,[ie,Ve],[ne,fe]],[/lenovo[-_ ]?([-\w ]+?)(?: bui|\)|\/)/i],[ce,[ie,Ve],[ne,le]],[/\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\b[\w ]+build\//i,/\bmot(?:orola)?[- ]([\w\s]+)(\)| bui)/i,/((?:moto(?! 360)[-\w\(\) ]+|xt\d{3,4}[cgkosw\+]?[-\d]*|nexus 6)(?= bui|\)))/i],[ce,[ie,Ue],[ne,le]],[/\b(mz60\d|xoom[2 ]{0,2}) build\//i],[ce,[ie,Ue],[ne,fe]],[/((?=lg)?[vl]k\-?\d{3}) bui| 3\.[-\w; ]{10}lg?-([06cv9]{3,4})/i],[ce,[ie,Fe],[ne,fe]],[/(lm(?:-?f100[nv]?|-[\w\.]+)(?= bui|\))|nexus [45])/i,/\blg[-e;\/ ]+(?!.*(?:browser|netcast|android tv|watch|webos))(\w+)/i,/\blg-?([\d\w]+) bui/i],[ce,[ie,Fe],[ne,le]],[/(nokia) (t[12][01])/i],[ie,ce,[ne,fe]],[/(?:maemo|nokia).*(n900|lumia \d+|rm-\d+)/i,/nokia[-_ ]?(([-\w\. ]*))/i],[[ce,/_/g," "],[ne,le],[ie,"Nokia"]],[/(pixel (c|tablet))\b/i],[ce,[ie,Re],[ne,fe]],[/droid.+;(?: google)? (g(01[13]a|020[aem]|025[jn]|1b60|1f8f|2ybb|4s1m|576d|5nz6|8hhn|8vou|a02099|c15s|d1yq|e2ae|ec77|gh2x|kv4x|p4bc|pj41|r83y|tt9q|ur25|wvk6)|pixel[\d ]*a?( pro)?( xl)?( fold)?( \(5g\))?)( bui|\))/i],[ce,[ie,Re],[ne,le]],[/(google) (pixelbook( go)?)/i],[ie,ce],[/droid.+; (a?\d[0-2]{2}so|[c-g]\d{4}|so[-gl]\w+|xq-\w\w\d\d)(?= bui|\).+chrome\/(?![1-6]{0,1}\d\.))/i],[ce,[ie,Ye],[ne,le]],[/sony tablet [ps]/i,/\b(?:sony)?sgp\w+(?: bui|\))/i],[[ce,"Xperia Tablet"],[ie,Ye],[ne,fe]],[/(alexa)webm/i,/(kf[a-z]{2}wi|aeo(?!bc)\w\w)( bui|\))/i,/(kf[a-z]+)( bui|\)).+silk\//i],[ce,[ie,$e],[ne,fe]],[/((?:sd|kf)[0349hijorstuw]+)( bui|\)).+silk\//i],[[ce,/(.+)/g,"Fire Phone $1"],[ie,$e],[ne,le]],[/(playbook);[-\w\),; ]+(rim)/i],[ce,ie,[ne,fe]],[/\b((?:bb[a-f]|st[hv])100-\d)/i,/\(bb10; (\w+)/i],[ce,[ie,ze],[ne,le]],[/(?:\b|asus_)(transfo[prime ]{4,10} \w+|eeepc|slider \w+|nexus 7|padfone|p00[cj])/i],[ce,[ie,Ne],[ne,fe]],[/ (z[bes]6[027][012][km][ls]|zenfone \d\w?)\b/i],[ce,[ie,Ne],[ne,le]],[/(nexus 9)/i],[ce,[ie,"HTC"],[ne,fe]],[/(htc)[-;_ ]{1,2}([\w ]+(?=\)| bui)|\w+)/i,/(zte)[- ]([\w ]+?)(?: bui|\/|\))/i,/(alcatel|geeksphone|nexian|panasonic(?!(?:;|\.))|sony(?!-bra))[-_ ]?([-\w]*)/i],[ie,[ce,/_/g," "],[ne,le]],[/tcl (xess p17aa)/i,/droid [\w\.]+; ((?:8[14]9[16]|9(?:0(?:48|60|8[01])|1(?:3[27]|66)|2(?:6[69]|9[56])|466))[gqswx])(_\w(\w|\w\w))?(\)| bui)/i],[ce,[ie,"TCL"],[ne,fe]],[/droid [\w\.]+; (418(?:7d|8v)|5087z|5102l|61(?:02[dh]|25[adfh]|27[ai]|56[dh]|59k|65[ah])|a509dl|t(?:43(?:0w|1[adepqu])|50(?:6d|7[adju])|6(?:09dl|10k|12b|71[efho]|76[hjk])|7(?:66[ahju]|67[hw]|7[045][bh]|71[hk]|73o|76[ho]|79w|81[hks]?|82h|90[bhsy]|99b)|810[hs]))(_\w(\w|\w\w))?(\)| bui)/i],[ce,[ie,"TCL"],[ne,le]],[/(itel) ((\w+))/i],[[ie,mr],ce,[ne,Sr,{tablet:["p10001l","w7001"],"*":"mobile"}]],[/droid.+; ([ab][1-7]-?[0178a]\d\d?)/i],[ce,[ie,"Acer"],[ne,fe]],[/droid.+; (m[1-5] note) bui/i,/\bmz-([-\w]{2,})/i],[ce,[ie,"Meizu"],[ne,le]],[/; ((?:power )?armor(?:[\w ]{0,8}))(?: bui|\))/i],[ce,[ie,"Ulefone"],[ne,le]],[/; (energy ?\w+)(?: bui|\))/i,/; energizer ([\w ]+)(?: bui|\))/i],[ce,[ie,"Energizer"],[ne,le]],[/; cat (b35);/i,/; (b15q?|s22 flip|s48c|s62 pro)(?: bui|\))/i],[ce,[ie,"Cat"],[ne,le]],[/((?:new )?andromax[\w- ]+)(?: bui|\))/i],[ce,[ie,"Smartfren"],[ne,le]],[/droid.+; (a(in)?(0(15|59|6[35])|142)p?)/i],[ce,[ie,"Nothing"],[ne,le]],[/; (x67 5g|tikeasy \w+|ac[1789]\d\w+)( b|\))/i,/archos ?(5|gamepad2?|([\w ]*[t1789]|hello) ?\d+[\w ]*)( b|\))/i],[ce,[ie,"Archos"],[ne,fe]],[/archos ([\w ]+)( b|\))/i,/; (ac[3-6]\d\w{2,8})( b|\))/i],[ce,[ie,"Archos"],[ne,le]],[/; (n159v)/i],[ce,[ie,"HMD"],[ne,le]],[/(imo) (tab \w+)/i,/(infinix|tecno) (x1101b?|p904|dp(7c|8d|10a)( pro)?|p70[1-3]a?|p904|t1101)/i],[ie,ce,[ne,fe]],[/(blackberry|benq|palm(?=\-)|sonyericsson|acer|asus(?! zenw)|dell|jolla|meizu|motorola|polytron|tecno|micromax|advan)[-_ ]?([-\w]*)/i,/; (blu|hmd|imo|infinix|lava|oneplus|tcl)[_ ]([\w\+ ]+?)(?: bui|\)|; r)/i,/(hp) ([\w ]+\w)/i,/(microsoft); (lumia[\w ]+)/i,/(oppo) ?([\w ]+) bui/i],[ie,ce,[ne,le]],[/(kobo)\s(ereader|touch)/i,/(hp).+(touchpad(?!.+tablet)|tablet)/i,/(kindle)\/([\w\.]+)/i],[ie,ce,[ne,fe]],[/(surface duo)/i],[ce,[ie,He],[ne,fe]],[/droid [\d\.]+; (fp\du?)(?: b|\))/i],[ce,[ie,"Fairphone"],[ne,le]],[/((?:tegranote|shield t(?!.+d tv))[\w- ]*?)(?: b|\))/i],[ce,[ie,Be],[ne,fe]],[/(sprint) (\w+)/i],[ie,ce,[ne,le]],[/(kin\.[onetw]{3})/i],[[ce,/\./g," "],[ie,He],[ne,le]],[/droid.+; ([c6]+|et5[16]|mc[239][23]x?|vc8[03]x?)\)/i],[ce,[ie,Ke],[ne,fe]],[/droid.+; (ec30|ps20|tc[2-8]\d[kx])\)/i],[ce,[ie,Ke],[ne,le]],[/smart-tv.+(samsung)/i],[ie,[ne,pe]],[/hbbtv.+maple;(\d+)/i],[[ce,/^/,"SmartTV"],[ie,Ge],[ne,pe]],[/(vizio)(?: |.+model\/)(\w+-\w+)/i,/tcast.+(lg)e?. ([-\w]+)/i],[ie,ce,[ne,pe]],[/(nux; netcast.+smarttv|lg (netcast\.tv-201\d|android tv))/i],[[ie,Fe],[ne,pe]],[/(apple) ?tv/i],[ie,[ce,Ae+" TV"],[ne,pe]],[/crkey.*devicetype\/chromecast/i],[[ce,er+" Third Generation"],[ie,Re],[ne,pe]],[/crkey.*devicetype\/([^/]*)/i],[[ce,/^/,"Chromecast "],[ie,Re],[ne,pe]],[/fuchsia.*crkey/i],[[ce,er+" Nest Hub"],[ie,Re],[ne,pe]],[/crkey/i],[[ce,er],[ie,Re],[ne,pe]],[/(portaltv)/i],[ce,[ie,ir],[ne,pe]],[/droid.+aft(\w+)( bui|\))/i],[ce,[ie,$e],[ne,pe]],[/(shield \w+ tv)/i],[ce,[ie,Be],[ne,pe]],[/\(dtv[\);].+(aquos)/i,/(aquos-tv[\w ]+)\)/i],[ce,[ie,Xe],[ne,pe]],[/(bravia[\w ]+)( bui|\))/i],[ce,[ie,Ye],[ne,pe]],[/(mi(tv|box)-?\w+) bui/i],[ce,[ie,Je],[ne,pe]],[/Hbbtv.*(technisat) (.*);/i],[ie,ce,[ne,pe]],[/\b(roku)[\dx]*[\)\/]((?:dvp-)?[\d\.]*)/i,/hbbtv\/\d+\.\d+\.\d+ +\([\w\+ ]*; *([\w\d][^;]*);([^;]*)/i],[[ie,/.+\/(\w+)/,"$1",Sr,{LG:"lge"}],[ce,xr],[ne,pe]],[/droid.+; ([\w- ]+) (?:android tv|smart[- ]?tv)/i],[ce,[ne,pe]],[/\b(android tv|smart[- ]?tv|opera tv|tv; rv:|large screen[\w ]+safari)\b/i],[[ne,pe]],[/(playstation \w+)/i],[ce,[ie,Ye],[ne,ue]],[/\b(xbox(?: one)?(?!; xbox))[\); ]/i],[ce,[ie,He],[ne,ue]],[/(ouya)/i,/(nintendo) (\w+)/i,/(retroid) (pocket ([^\)]+))/i],[ie,ce,[ne,ue]],[/droid.+; (shield)( bui|\))/i],[ce,[ie,Be],[ne,ue]],[/\b(sm-[lr]\d\d[0156][fnuw]?s?|gear live)\b/i],[ce,[ie,Ge],[ne,de]],[/((pebble))app/i,/(asus|google|lg|oppo) ((pixel |zen)?watch[\w ]*)( bui|\))/i],[ie,ce,[ne,de]],[/(ow(?:19|20)?we?[1-3]{1,3})/i],[ce,[ie,Le],[ne,de]],[/(watch)(?: ?os[,\/]|\d,\d\/)[\d\.]+/i],[ce,[ie,Ae],[ne,de]],[/(opwwe\d{3})/i],[ce,[ie,We],[ne,de]],[/(moto 360)/i],[ce,[ie,Ue],[ne,de]],[/(smartwatch 3)/i],[ce,[ie,Ye],[ne,de]],[/(g watch r)/i],[ce,[ie,Fe],[ne,de]],[/droid.+; (wt63?0{2,3})\)/i],[ce,[ie,Ke],[ne,de]],[/droid.+; (glass) \d/i],[ce,[ie,Re],[ne,be]],[/(pico) (4|neo3(?: link|pro)?)/i],[ie,ce,[ne,be]],[/(quest( \d| pro)?s?).+vr/i],[ce,[ie,ir],[ne,be]],[/mobile vr; rv.+firefox/i],[[ne,be]],[/(tesla)(?: qtcarbrowser|\/[-\w\.]+)/i],[ie,[ne,we]],[/(aeobc)\b/i],[ce,[ie,$e],[ne,we]],[/(homepod).+mac os/i],[ce,[ie,Ae],[ne,we]],[/windows iot/i],[[ne,we]],[/droid .+?; ([^;]+?)(?: bui|; wv\)|\) applew).+?(mobile|vr|\d) safari/i],[ce,[ne,Sr,{mobile:"Mobile",xr:"VR","*":fe}]],[/\b((tablet|tab)[;\/]|focus\/\d(?!.+mobile))/i],[[ne,fe]],[/(phone|mobile(?:[;\/]| [ \w\/\.]*safari)|pda(?=.+windows ce))/i],[[ne,le]],[/droid .+?; ([\w\. -]+)( bui|\))/i],[ce,[ie,"Generic"]]],engine:[[/windows.+ edge\/([\w\.]+)/i],[oe,[te,rr+"HTML"]],[/(arkweb)\/([\w\.]+)/i],[te,oe],[/webkit\/537\.36.+chrome\/(?!27)([\w\.]+)/i],[oe,[te,"Blink"]],[/(presto)\/([\w\.]+)/i,/(webkit|trident|netfront|netsurf|amaya|lynx|w3m|goanna|servo)\/([\w\.]+)/i,/ekioh(flow)\/([\w\.]+)/i,/(khtml|tasman|links)[\/ ]\(?([\w\.]+)/i,/(icab)[\/ ]([23]\.[\d\.]+)/i,/\b(libweb)/i],[te,oe],[/ladybird\//i],[[te,"LibWeb"]],[/rv\:([\w\.]{1,9})\b.+(gecko)/i],[oe,te]],os:[[/(windows nt) (6\.[23]); arm/i],[[te,/N/,"R"],[oe,Sr,Or]],[/(windows (?:phone|mobile|iot))(?: os)?[\/ ]?([\d\.]*( se)?)/i,/(windows)[\/ ](1[01]|2000|3\.1|7|8(\.1)?|9[58]|me|server 20\d\d( r2)?|vista|xp)/i],[te,oe],[/windows nt ?([\d\.\)]*)(?!.+xbox)/i,/\bwin(?=3| ?9|n)(?:nt| 9x )?([\d\.;]*)/i],[[oe,/(;|\))/g,"",Sr,Or],[te,cr]],[/(windows ce)\/?([\d\.]*)/i],[te,oe],[/[adehimnop]{4,7}\b(?:.*os ([\w]+) like mac|; opera)/i,/(?:ios;fbsv\/|iphone.+ios[\/ ])([\d\.]+)/i,/cfnetwork\/.+darwin/i],[[oe,/_/g,"."],[te,"iOS"]],[/(mac os x) ?([\w\. ]*)/i,/(macintosh|mac_powerpc\b)(?!.+(haiku|morphos))/i],[[te,"macOS"],[oe,/_/g,"."]],[/android ([\d\.]+).*crkey/i],[oe,[te,er+" Android"]],[/fuchsia.*crkey\/([\d\.]+)/i],[oe,[te,er+" Fuchsia"]],[/crkey\/([\d\.]+).*devicetype\/smartspeaker/i],[oe,[te,er+" SmartSpeaker"]],[/linux.*crkey\/([\d\.]+)/i],[oe,[te,er+" Linux"]],[/crkey\/([\d\.]+)/i],[oe,[te,er]],[/droid ([\w\.]+)\b.+(android[- ]x86)/i],[oe,te],[/(ubuntu) ([\w\.]+) like android/i],[[te,/(.+)/,"$1 Touch"],oe],[/(harmonyos)[\/ ]?([\d\.]*)/i,/(android|bada|blackberry|kaios|maemo|meego|openharmony|qnx|rim tablet os|sailfish|series40|symbian|tizen)\w*[-\/\.; ]?([\d\.]*)/i],[te,oe],[/\(bb(10);/i],[oe,[te,ze]],[/(?:symbian ?os|symbos|s60(?=;)|series ?60)[-\/ ]?([\w\.]*)/i],[oe,[te,"Symbian"]],[/mozilla\/[\d\.]+ \((?:mobile|tablet|tv|mobile; [\w ]+); rv:.+ gecko\/([\w\.]+)/i],[oe,[te,tr+" OS"]],[/\b(?:hp)?wos(?:browser)?\/([\w\.]+)/i,/webos(?:[ \/]?|\.tv-20(?=2[2-9]))(\d[\d\.]*)/i],[oe,[te,"webOS"]],[/web0s;.+?(?:chr[o0]me|safari)\/(\d+)/i],[[oe,Sr,{25:"120",24:"108",23:"94",22:"87",6:"79",5:"68",4:"53",3:"38",2:"538",1:"537","*":"TV"}],[te,"webOS"]],[/watch(?: ?os[,\/]|\d,\d\/)([\d\.]+)/i],[oe,[te,"watchOS"]],[/(cros) [\w]+(?:\)| ([\w\.]+)\b)/i],[[te,"Chrome OS"],oe],[/panasonic;(viera)/i,/(netrange)mmh/i,/(nettv)\/(\d+\.[\w\.]+)/i,/(nintendo|playstation) (\w+)/i,/(xbox); +xbox ([^\);]+)/i,/(pico) .+os([\w\.]+)/i,/\b(joli|palm)\b ?(?:os)?\/?([\w\.]*)/i,/linux.+(mint)[\/\(\) ]?([\w\.]*)/i,/(mageia|vectorlinux|fuchsia|arcaos|arch(?= ?linux))[;l ]([\d\.]*)/i,/([kxln]?ubuntu|debian|suse|opensuse|gentoo|slackware|fedora|mandriva|centos|pclinuxos|red ?hat|zenwalk|linpus|raspbian|plan 9|minix|risc os|contiki|deepin|manjaro|elementary os|sabayon|linspire|knoppix)(?: gnu[\/ ]linux)?(?: enterprise)?(?:[- ]linux)?(?:-gnu)?[-\/ ]?(?!chrom|package)([-\w\.]*)/i,/((?:open)?solaris)[-\/ ]?([\w\.]*)/i,/\b(aix)[; ]([1-9\.]{0,4})/i,/(hurd|linux|morphos)(?: (?:arm|x86|ppc)\w*| ?)([\w\.]*)/i,/(gnu) ?([\w\.]*)/i,/\b([-frentopcghs]{0,5}bsd|dragonfly)[\/ ]?(?!amd|[ix346]{1,2}86)([\w\.]*)/i,/(haiku) ?(r\d)?/i],[te,oe],[/(sunos) ?([\d\.]*)/i],[[te,"Solaris"],oe],[/\b(beos|os\/2|amigaos|openvms|hp-ux|serenityos)/i,/(unix) ?([\w\.]*)/i],[te,oe]]},Tr=(yr.call((H={init:{},isIgnore:{},isIgnoreRgx:{},toString:{}}).init,[[J,[te,oe,se,ne]],[K,[ae]],[Q,[ne,ce,ie]],[Z,[te,oe]],[ee,[te,oe]]]),yr.call(H.isIgnore,[[J,[oe,se]],[Z,[oe]],[ee,[oe]]]),yr.call(H.isIgnoreRgx,[[J,/ ?browser$/i],[ee,/ ?os$/i]]),yr.call(H.toString,[[J,[te,oe]],[K,[ae]],[Q,[ie,ce]],[Z,[te,oe]],[ee,[te,oe]]]),H),Pr=function(e,r){var t=Tr.init[r],n=Tr.isIgnore[r]||0,i=Tr.isIgnoreRgx[r]||0,o=Tr.toString[r]||0;function a(){yr.call(this,t)}return a.prototype.getItem=function(){return e},a.prototype.withClientHints=function(){return lr?lr.getHighEntropyValues(Me).then(function(r){return e.setCH(new _r(r,!1)).parseCH().get()}):e.parseCH().get()},a.prototype.withFeatureCheck=function(){return e.detectFeature().get()},r!=re&&(a.prototype.is=function(e){var r=!1;for(var t in this)if(this.hasOwnProperty(t)&&!pr(n,t)&&mr(i?vr(i,this[t]):this[t])==mr(i?vr(i,e):e)){if(r=!0,e!=G)break}else if(e==G&&r){r=!r;break}return r},a.prototype.toString=function(){var e=W;for(var r in o)typeof this[o[r]]!==G&&(e+=(e?" ":W)+this[o[r]]);return e||G}),lr||(a.prototype.then=function(e){var r=this,t=function(){for(var e in r)r.hasOwnProperty(e)&&(this[e]=r[e])};t.prototype={is:a.prototype.is,toString:a.prototype.toString};var n=new t;return e(n),n}),new a};function _r(e,r){if(e=e||{},yr.call(this,Me),r)yr.call(this,[[he,wr(e[Se])],[ve,wr(e[Oe])],[le,/\?1/.test(e[Te])],[ce,gr(e[Pe])],[ge,gr(e[_e])],[xe,gr(e[Ie])],[ae,gr(e[Ee])],[ye,wr(e[Ce])],[ke,gr(e[je])]]);else for(var t in e)this.hasOwnProperty(t)&&typeof e[t]!==G&&(this[t]=e[t])}function Ir(e,r,t,n){return this.get=function(e){return e?this.data.hasOwnProperty(e)?this.data[e]:void 0:this.data},this.set=function(e,r){return this.data[e]=r,this},this.setCH=function(e){return this.uaCH=e,this},this.detectFeature=function(){if(ur&&ur.userAgent==this.ua)switch(this.itemType){case J:ur.brave&&typeof ur.brave.isBrave==L&&this.set(te,"Brave");break;case Q:!this.get(ne)&&lr&&lr[le]&&this.set(ne,le),"Macintosh"==this.get(ce)&&ur&&typeof ur.standalone!==G&&ur.maxTouchPoints&&ur.maxTouchPoints>2&&this.set(ce,"iPad").set(ne,fe);break;case ee:!this.get(te)&&lr&&lr[ge]&&this.set(te,lr[ge]);break;case re:var e=this.data,r=function(r){return e[r].getItem().detectFeature().get()};this.set(J,r(J)).set(K,r(K)).set(Q,r(Q)).set(Z,r(Z)).set(ee,r(ee))}return this},this.parseUA=function(){return this.itemType!=re&&kr.call(this.data,this.ua,this.rgxMap),this.itemType==J&&this.set(se,hr(this.get(oe))),this},this.parseCH=function(){var e=this.uaCH,r=this.rgxMap;switch(this.itemType){case J:case Z:var t,n=e[ve]||e[he];if(n)for(var i in n){var o=n[i].brand||n[i],a=n[i].version;this.itemType==J&&!/not.a.brand/i.test(o)&&(!t||/Chrom/.test(t)&&o!=Ze||t==rr&&/WebView2/.test(o))&&(o=Sr(o,jr),(t=this.get(te))&&!/Chrom/.test(t)&&/Chrom/.test(o)||this.set(te,o).set(oe,a).set(se,hr(a)),t=o),this.itemType==Z&&o==Ze&&this.set(oe,a)}break;case K:var s=e[ae];s&&(s&&"64"==e[ke]&&(s+="64"),kr.call(this.data,s+";",r));break;case Q:if(e[le]&&this.set(ne,le),e[ce]&&(this.set(ce,e[ce]),!this.get(ne)||!this.get(ie))){var c={};kr.call(c,"droid 9; "+e[ce]+")",r),!this.get(ne)&&c.type&&this.set(ne,c.type),!this.get(ie)&&c.vendor&&this.set(ie,c.vendor)}if(e[ye]){var u;if("string"!=typeof e[ye])for(var l=0;!u&&l<e[ye].length;)u=Sr(e[ye][l++],Er);else u=Sr(e[ye],Er);this.set(ne,u)}break;case ee:var f=e[ge];if(f){var p=e[xe];f==cr&&(p=parseInt(hr(p),10)>=13?"11":"10"),this.set(te,f).set(oe,p)}this.get(te)==cr&&"Xbox"==e[ce]&&this.set(te,"Xbox").set(oe,void 0);break;case re:var d=this.data,b=function(r){return d[r].getItem().setCH(e).parseCH().get()};this.set(J,b(J)).set(K,b(K)).set(Q,b(Q)).set(Z,b(Z)).set(ee,b(ee))}return this},yr.call(this,[["itemType",e],["ua",r],["uaCH",n],["rgxMap",t],["data",Pr(this,e)]]),this}function Mr(e,r,t){if(typeof e===X?(dr(e,!0)?(typeof r===X&&(t=r),r=e):(t=e,r=void 0),e=void 0):typeof e!==Y||dr(r,!0)||(t=r,r=void 0),t&&typeof t.append===L){var n={};t.forEach(function(e,r){n[r]=e}),t=n}if(!(this instanceof Mr))return new Mr(e,r,t).getResult();var i=typeof e===Y?e:t&&t[B]?t[B]:ur&&ur.userAgent?ur.userAgent:W,o=new _r(t,!0),a=r?function(e,r){var t={},n=r;if(!dr(r))for(var i in n={},r)for(var o in r[i])n[o]=r[i][o].concat(n[o]?n[o]:[]);for(var a in e)t[a]=n[a]&&n[a].length%2==0?n[a].concat(e[a]):e[a];return t}(Cr,r):Cr,s=function(e){return e==re?function(){return new Ir(e,i,a,o).set("ua",i).set(J,this.getBrowser()).set(K,this.getCPU()).set(Q,this.getDevice()).set(Z,this.getEngine()).set(ee,this.getOS()).get()}:function(){return new Ir(e,i,a[e],o).parseUA().get()}};return yr.call(this,[["getBrowser",s(J)],["getCPU",s(K)],["getDevice",s(Q)],["getEngine",s(Z)],["getOS",s(ee)],["getResult",s(re)],["getUA",function(){return i}],["setUA",function(e){return br(e)&&(i=e.length>500?xr(e,500):e),this}]]).setUA(i),this}Mr.VERSION="2.0.4",Mr.BROWSER=fr([te,oe,se,ne]),Mr.CPU=fr([ae]),Mr.DEVICE=fr([ce,ie,ne,ue,le,pe,fe,de,we]),Mr.ENGINE=Mr.OS=fr([te,oe]);var $r=function(r){var t=r.className;return e.createElement("svg",{className:t,xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor",width:"24",height:"24"},e.createElement("path",{d:"M12 14c1.66 0 3-1.34 3-3V5c0-1.66-1.34-3-3-3S9 3.34 9 5v6c0 1.66 1.34 3 3 3zm-1-9c0-.55.45-1 1-1s1 .45 1 1v6c0 .55-.45 1-1 1s-1-.45-1-1V5zm6 6c0 2.76-2.24 5-5 5s-5-2.24-5-5H5c0 3.53 2.61 6.43 6 6.92V21h2v-3.08c3.39-.49 6-3.39 6-6.92h-2z"}))},Ar="undefined"!=typeof window,Nr=null;Ar&&(Nr=window.SpeechRecognition||window.webkitSpeechRecognition||null);var zr=function(i){var o=i.width,s=i.darkMode,c=void 0!==s&&s,f=i.handleSearch,d=i.language,b=void 0===d?"en-US":d,w=i.customMicIcon,m=i.customStyles,h=void 0===m?{}:m,y=i.customClasses,v=void 0===y?{}:y,g=i.Error,x=void 0===g?function(){}:g,k=p(r(!1),2),S=k[0],O=k[1],E=p(r(0),2),j=E[0],C=E[1],T=p(r(!1),2),P=T[0],_=T[1],I=p(r(!1),2),M=I[0],$=I[1],A=t(null),N=t(null),z=t(null),R=t(null),q=t(null),V=t(null),D=t(!1);n(function(){if(Ar)try{var e,r,t=(new Mr).getResult(),n=(null===(e=t.browser.name)||void 0===e?void 0:e.includes("Firefox"))||(null===(r=t.browser.name)||void 0===r?void 0:r.includes("Opera"));$(Nr&&!n)}catch(e){if(!Ar)return;var i=window.navigator.userAgent.toLowerCase(),o=i.indexOf("firefox")>-1||i.indexOf("opera")>-1;$(Nr&&!o)}},[]),n(function(){if(Ar){var e=window.navigator.userAgent.toLowerCase();_(/android/.test(e))}},[]);var F=function(){if(q.current){try{cancelAnimationFrame(q.current)}catch(e){}q.current=null}D.current=!1},H=function(){if(A.current){try{A.current.abort()}catch(e){}try{A.current.stop()}catch(e){}try{A.current.onresult=null,A.current.onerror=null,A.current.onend=null,A.current.onstart=null,A.current.onspeechend=null,A.current.onsoundstart=null,A.current.onsoundend=null,A.current.onaudiostart=null,A.current.onaudioend=null,A.current.onnomatch=null}catch(e){}A.current=null}},U=function(){O(!1),H(),F(),function(){if(R.current)try{R.current.getTracks().forEach(function(e){try{e.stop()}catch(e){}try{e.enabled=!1}catch(e){}})}catch(e){}}(),V.current&&clearTimeout(V.current),V.current=setTimeout(function(){!function(){if(F(),R.current){try{R.current.getTracks().forEach(function(e){try{e.stop()}catch(e){}try{e.enabled=!1}catch(e){}try{e.onended=null}catch(e){}try{e.onmute=null}catch(e){}try{e.onunmute=null}catch(e){}})}catch(e){}R.current=null}if(N.current){try{"closed"!==N.current.state&&N.current.close()}catch(e){}N.current=null}if(z.current=null,C(0),navigator.mediaDevices)try{var e;"function"==typeof(null===(e=navigator.permissions)||void 0===e?void 0:e.revoke)?navigator.permissions.revoke({name:"microphone"}).catch(function(){}):navigator.mediaDevices.getUserMedia({audio:!1}).catch(function(){})}catch(e){}if(Ar&&!N.current)try{var r=window.AudioContext||window.webkitAudioContext;r&&(new r).close().catch(function(){})}catch(e){}}(),V.current=null},300)},B=function(){var e=a(l().m(function e(){var r,t,n,i,o;return l().w(function(e){for(;;)switch(e.p=e.n){case 0:if(Ar&&!P){e.n=1;break}return e.a(2);case 1:if(e.p=1,F(),N.current){e.n=4;break}if(!(t=window.AudioContext||window.webkitAudioContext)){e.n=2;break}N.current=new t,e.n=3;break;case 2:return e.a(2);case 3:e.n=5;break;case 4:if("suspended"!==N.current.state){e.n=5;break}return e.n=5,N.current.resume();case 5:if(null!==(r=navigator)&&void 0!==r&&null!==(r=r.mediaDevices)&&void 0!==r&&r.getUserMedia){e.n=6;break}return e.a(2);case 6:return e.n=7,navigator.mediaDevices.getUserMedia({audio:!0,video:!1});case 7:n=e.v,R.current=n,(i=N.current.createAnalyser()).fftSize=256,i.smoothingTimeConstant=.8,N.current.createMediaStreamSource(n).connect(i),z.current=i,W(),e.n=9;break;case 8:e.p=8,o=e.v,console.error("Error accessing microphone for analysis:",o);case 9:return e.a(2)}},e,null,[[1,8]])}));return function(){return e.apply(this,arguments)}}(),W=function(){if(z.current&&Ar){F();var e=new Uint8Array(z.current.frequencyBinCount);D.current=!0;var r=function(){if(z.current&&D.current)try{z.current.getByteFrequencyData(e);for(var t=0,n=0;n<e.length;n++)t+=e[n];var i=t/e.length,o=Math.min(100,Math.max(0,1.5*i));D.current&&(C(o),q.current=requestAnimationFrame(r))}catch(e){F()}else F()};q.current=requestAnimationFrame(r)}};n(function(){S?(D.current=!0,!z.current||q.current||P||W()):F()},[S,P]);var L=function(){if(!Ar||!Nr)return null;try{var e=new Nr;return e.continuous=!1,e.interimResults=!1,e.lang=b,P&&(e.maxAlternatives=3),e.onresult=function(e){try{if(e.results&&e.results[0]){var r=e.results[0][0].transcript;f(r)}else x("No speech was detected. Please try again.")}catch(e){console.error("Error processing speech result:",e),x("Failed to process speech. Please try again.")}finally{U()}},e.onerror=function(e){switch(console.error("Speech recognition error:",e.error),e.error){case"no-speech":x("No speech was detected. Please try again.");break;case"audio-capture":x("Microphone not found or not working properly.");break;case"not-allowed":x("Microphone access denied. Please allow microphone access.");break;case"network":x("Network error occurred. Please check your connection.");break;case"aborted":break;default:P||x("Speech recognition error. Please try again.")}U()},e.onend=function(){U()},e.onnomatch=function(){P||x("Could not recognize what you said. Please try again."),U()},e}catch(e){return console.error("Error creating recognition instance:",e),null}};n(function(){return function(){D.current=!1,U(),V.current&&clearTimeout(V.current)}},[]);var G=p(r(!1),2),X=G[0],Y=G[1];n(function(){var e;if(Ar)return P&&S&&(e=setInterval(function(){Y(function(e){return!e})},1e3)),function(){e&&clearInterval(e)}},[P,S]);var J=function(){var e=a(l().m(function e(){var r,t;return l().w(function(e){for(;;)switch(e.p=e.n){case 0:if(Ar){e.n=1;break}return e.a(2);case 1:if(!S){e.n=2;break}U(),e.n=9;break;case 2:if(H(),A.current=L(),A.current){e.n=3;break}return x("Speech recognition not available. Please try a different browser."),e.a(2);case 3:if(e.p=3,A.current.start(),O(!0),P){e.n=7;break}return e.p=4,e.n=5,B();case 5:e.n=7;break;case 6:e.p=6,r=e.v,console.warn("Audio analyzer setup failed, but speech recognition will continue:",r);case 7:e.n=9;break;case 8:e.p=8,t=e.v,console.error("Error starting speech recognition:",t),x("Failed to start speech recognition. Please try again."),U();case 9:return e.a(2)}},e,null,[[4,6],[3,8]])}));return function(){return e.apply(this,arguments)}}(),K=S?Math.max(1,1+j/100):1,Q=S?Math.min(.5,j/200+.2):0,Z=S?"rgba(".concat(Math.min(255,2.55*j),", 0, 0, ").concat(Q,")"):"transparent",ee=w||$r,re=u({display:"flex",flexDirection:"row",boxSizing:"border-box",height:"50px",position:"relative",width:o||"50px",zIndex:10},h.inputContainer),te=u({position:"absolute",zIndex:10,top:0,right:0,height:"100%",padding:"0 0.75rem",display:"flex",alignItems:"center",justifyContent:"center"},h.micContainer),ne=u(P?{position:"absolute",borderRadius:"9999px",transition:"all 500ms ease-in-out",width:"32px",height:"32px",opacity:S?X?.5:.2:0,backgroundColor:S?"rgba(239, 68, 68, 1)":"transparent",transform:S?X?"scale(1.5)":"scale(1.2)":"scale(1)"}:{position:"absolute",borderRadius:"9999px",transition:"all 75ms ease-out",width:"".concat(32*K,"px"),height:"".concat(32*K,"px"),backgroundColor:Z,transform:"scale(".concat(K,")"),opacity:Q},h.pulse),ie=u({position:"relative",zIndex:20,cursor:"pointer",background:"none",border:"none",padding:0,outline:"none"},h.micButton),oe=v.inputContainer||"",ae=v.micContainer||"",se=v.pulse||"",ce=v.micButton||"",ue=v.micIcon||"\n ".concat(c?"text-white opacity-80":"text-black"," \n ").concat(S?"animate-pulse text-red-500":"","\n ");return Ar?e.createElement("div",{className:oe,style:re},M&&e.createElement("div",{className:ae,style:te},e.createElement("div",{className:se,style:ne}),e.createElement("button",{onClick:J,className:ce,style:ie},e.createElement(ee,{className:ue})))):e.createElement("div",{className:oe,style:re})};zr.propTypes={width:U.oneOfType([U.string,U.number]),darkMode:U.bool,handleSearch:U.func.isRequired,language:U.string,customMicIcon:U.elementType,customStyles:U.object,customClasses:U.object,Error:U.func};export{zr as default};
//# sourceMappingURL=index.esm.js.map