PageSourceSearch

https://assets.mixbook.com/chunk.65b0c675680cf897d96c.js

js mixbook.com collected 2026-10-02 03:14:25 UTC 73,194 bytes, 1 lines download raw bytes

1(self.webpackChunkmixbook_site=self.webpackChunkmixbook_site||[]).push([[6136],{51206:function(e){e.exports=function(){var e={17:function(e,t,r){"use strict";t.__esModule=!0,t.default=void 0;var i=r(18);t.default=function(){function e(){}return e.getFirstMatch=function(e,t){var r=t.match(e);return r&&r.length>0&&r[1]||""},e.getSecondMatch=function(e,t){var r=t.match(e);return r&&r.length>1&&r[2]||""},e.matchAndReturnConst=function(e,t,r){if(e.test(t))return r},e.getWindowsVersionName=function(e){switch(e){case"NT":return"NT";case"XP":case"NT 5.1":return"XP";case"NT 5.0":return"2000";case"NT 5.2":return"2003";case"NT 6.0":return"Vista";case"NT 6.1":return"7";case"NT 6.2":return"8";case"NT 6.3":return"8.1";case"NT 10.0":return"10";default:return}},e.getMacOSVersionName=function(e){var t=e.split(".").splice(0,2).map(function(e){return parseInt(e,10)||0});t.push(0);var r=t[0],i=t[1];if(10===r)switch(i){case 5:return"Leopard";case 6:return"Snow Leopard";case 7:return"Lion";case 8:return"Mountain Lion";case 9:return"Mavericks";case 10:return"Yosemite";case 11:return"El Capitan";case 12:return"Sierra";case 13:return"High Sierra";case 14:return"Mojave";case 15:return"Catalina";default:return}switch(r){case 11:return"Big Sur";case 12:return"Monterey";case 13:return"Ventura";case 14:return"Sonoma";case 15:return"Sequoia";default:return}},e.getAndroidVersionName=function(e){var t=e.split(".").splice(0,2).map(function(e){return parseInt(e,10)||0});if(t.push(0),!(1===t[0]&&t[1]<5))return 1===t[0]&&t[1]<6?"Cupcake":1===t[0]&&t[1]>=6?"Donut":2===t[0]&&t[1]<2?"Eclair":2===t[0]&&2===t[1]?"Froyo":2===t[0]&&t[1]>2?"Gingerbread":3===t[0]?"Honeycomb":4===t[0]&&t[1]<1?"Ice Cream Sandwich":4===t[0]&&t[1]<4?"Jelly Bean":4===t[0]&&t[1]>=4?"KitKat":5===t[0]?"Lollipop":6===t[0]?"Marshmallow":7===t[0]?"Nougat":8===t[0]?"Oreo":9===t[0]?"Pie":void 0},e.getVersionPrecision=function(e){return e.split(".").length},e.compareVersions=function(t,r,i){void 0===i&&(i=!1);var s=e.getVersionPrecision(t),a=e.getVersionPrecision(r),o=Math.max(s,a),n=0,u=e.map([t,r],function(t){var r=o-e.getVersionPrecision(t),i=t+Array(r+1).join(".0");return e.map(i.split("."),function(e){return Array(20-e.length).join("0")+e}).reverse()});for(i&&(n=o-Math.min(s,a)),o-=1;o>=n;){if(u[0][o]>u[1][o])return 1;if(u[0][o]===u[1][o]){if(o===n)return 0;o-=1}else if(u[0][o]<u[1][o])return -1}},e.map=function(e,t){var r,i=[];if(Array.prototype.map)return Array.prototype.map.call(e,t);for(r=0;r<e.length;r+=1)i.push(t(e[r]));return i},e.find=function(e,t){var r,i;if(Array.prototype.find)return Array.prototype.find.call(e,t);for(r=0,i=e.length;r<i;r+=1){var s=e[r];if(t(s,r))return s}},e.assign=function(e){for(var t,r,i=arguments.length,s=Array(i>1?i-1:0),a=1;a<i;a++)s[a-1]=arguments[a];if(Object.assign)return Object.assign.apply(Object,[e].concat(s));for(t=0,r=s.length;t<r;t+=1)!function(){var r=s[t];"object"==typeof r&&null!==r&&Object.keys(r).forEach(function(t){e[t]=r[t]})}();return e},e.getBrowserAlias=function(e){return i.BROWSER_ALIASES_MAP[e]},e.getBrowserTypeByAlias=function(e){return i.BROWSER_MAP[e]||""},e}(),e.exports=t.default},18:function(e,t,r){"use strict";t.__esModule=!0,t.ENGINE_MAP=t.OS_MAP=t.PLATFORMS_MAP=t.BROWSER_MAP=t.BROWSER_ALIASES_MAP=void 0,t.BROWSER_ALIASES_MAP={AmazonBot:"amazonbot","Amazon Silk":"amazon_silk","Android Browser":"android",BaiduSpider:"baiduspider",Bada:"bada",BingCrawler:"bingcrawler",Brave:"brave",BlackBerry:"blackberry","ChatGPT-User":"chatgpt_user",Chrome:"chrome",ClaudeBot:"claudebot",Chromium:"chromium",Diffbot:"diffbot",DuckDuckBot:"duckduckbot",DuckDuckGo:"duckduckgo",Electron:"electron",Epiphany:"epiphany",FacebookExternalHit:"facebookexternalhit",Firefox:"firefox",Focus:"focus",Generic:"generic","Google Search":"google_search",Googlebot:"googlebot",GPTBot:"gptbot","Internet Explorer":"ie",InternetArchiveCrawler:"internetarchivecrawler","K-Meleon":"k_meleon",LibreWolf:"librewolf",Linespider:"linespider",Maxthon:"maxthon","Meta-ExternalAds":"meta_externalads","Meta-ExternalAgent":"meta_externalagent","Meta-ExternalFetcher":"meta_externalfetcher","Meta-WebIndexer":"meta_webindexer","Microsoft Edge":"edge","MZ Browser":"mz","NAVER Whale Browser":"naver","OAI-SearchBot":"oai_searchbot",Omgilibot:"omgilibot",Opera:"opera","Opera Coast":"opera_coast","Pale Moon":"pale_moon",PerplexityBot:"perplexitybot","Perplexity-User":"perplexity_user",PhantomJS:"phantomjs",PingdomBot:"pingdombot",Puffin:"puffin",QQ:"qq",QQLite:"qqlite",QupZilla:"qupzilla",Roku:"roku",Safari:"safari",Sailfish:"sailfish","Samsung Internet for Android":"samsung_internet",SlackBot:"slackbot",SeaMonkey:"seamonkey",Sleipnir:"sleipnir","Sogou Browser":"sogou",Swing:"swing",Tizen:"tizen","UC Browser":"uc",Vivaldi:"vivaldi","WebOS Browser":"webos",WeChat:"wechat",YahooSlurp:"yahooslurp","Yandex Browser":"yandex",YandexBot:"yandexbot",YouBot:"youbot"},t.BROWSER_MAP={amazonbot:"AmazonBot",amazon_silk:"Amazon Silk",android:"Android Browser",baiduspider:"BaiduSpider",bada:"Bada",bingcrawler:"BingCrawler",blackberry:"BlackBerry",brave:"Brave",chatgpt_user:"ChatGPT-User",chrome:"Chrome",claudebot:"ClaudeBot",chromium:"Chromium",diffbot:"Diffbot",duckduckbot:"DuckDuckBot",duckduckgo:"DuckDuckGo",edge:"Microsoft Edge",electron:"Electron",epiphany:"Epiphany",facebookexternalhit:"FacebookExternalHit",firefox:"Firefox",focus:"Focus",generic:"Generic",google_search:"Google Search",googlebot:"Googlebot",gptbot:"GPTBot",ie:"Internet Explorer",internetarchivecrawler:"InternetArchiveCrawler",k_meleon:"K-Meleon",librewolf:"LibreWolf",linespider:"Linespider",maxthon:"Maxthon",meta_externalads:"Meta-ExternalAds",meta_externalagent:"Meta-ExternalAgent",meta_externalfetcher:"Meta-ExternalFetcher",meta_webindexer:"Meta-WebIndexer",mz:"MZ Browser",naver:"NAVER Whale Browser",oai_searchbot:"OAI-SearchBot",omgilibot:"Omgilibot",opera:"Opera",opera_coast:"Opera Coast",pale_moon:"Pale Moon",perplexitybot:"PerplexityBot",perplexity_user:"Perplexity-User",phantomjs:"PhantomJS",pingdombot:"PingdomBot",puffin:"Puffin",qq:"QQ Browser",qqlite:"QQ Browser Lite",qupzilla:"QupZilla",roku:"Roku",safari:"Safari",sailfish:"Sailfish",samsung_internet:"Samsung Internet for Android",seamonkey:"SeaMonkey",slackbot:"SlackBot",sleipnir:"Sleipnir",sogou:"Sogou Browser",swing:"Swing",tizen:"Tizen",uc:"UC Browser",vivaldi:"Vivaldi",webos:"WebOS Browser",wechat:"WeChat",yahooslurp:"YahooSlurp",yandex:"Yandex Browser",yandexbot:"YandexBot",youbot:"YouBot"},t.PLATFORMS_MAP={bot:"bot",desktop:"desktop",mobile:"mobile",tablet:"tablet",tv:"tv"},t.OS_MAP={Android:"Android",Bada:"Bada",BlackBerry:"BlackBerry",ChromeOS:"Chrome OS",HarmonyOS:"HarmonyOS",iOS:"iOS",Linux:"Linux",MacOS:"macOS",PlayStation4:"PlayStation 4",Roku:"Roku",Tizen:"Tizen",WebOS:"WebOS",Windows:"Windows",WindowsPhone:"Windows Phone"},t.ENGINE_MAP={Blink:"Blink",EdgeHTML:"EdgeHTML",Gecko:"Gecko",Presto:"Presto",Trident:"Trident",WebKit:"WebKit"}},90:function(e,t,r){"use strict";t.__esModule=!0,t.default=void 0;var i,s=(i=r(91))&&i.__esModule?i:{default:i},a=r(18);t.default=function(){function e(){}return e.getParser=function(e,t,r){if(void 0===t&&(t=!1),void 0===r&&(r=null),"string"!=typeof e)throw Error("UserAgent should be a string");return new s.default(e,t,r)},e.parse=function(e,t){return void 0===t&&(t=null),new s.default(e,t).getResult()},function(e,t){for(var r=0;r<t.length;r++){var i=t[r];
vendor: 6,341 bytes, line 1
1i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}(e,[{key:"BROWSER_MAP",get:function(){return a.BROWSER_MAP}},{key:"ENGINE_MAP",get:function(){return a.ENGINE_MAP}},{key:"OS_MAP",get:function(){return a.OS_MAP}},{key:"PLATFORMS_MAP",get:function(){return a.PLATFORMS_MAP}}]),e}(),e.exports=t.default},91:function(e,t,r){"use strict";t.__esModule=!0,t.default=void 0;var i=u(r(92)),s=u(r(93)),a=u(r(94)),o=u(r(95)),n=u(r(17));function u(e){return e&&e.__esModule?e:{default:e}}t.default=function(){function e(e,t,r){if(void 0===t&&(t=!1),void 0===r&&(r=null),null==e||""===e)throw Error("UserAgent parameter can't be empty");this._ua=e;var i=!1;"boolean"==typeof t?(i=t,this._hints=r):this._hints=null!=t&&"object"==typeof t?t:null,this.parsedResult={},!0!==i&&this.parse()}var t=e.prototype;return t.getHints=function(){return this._hints},t.hasBrand=function(e){if(!this._hints||!Array.isArray(this._hints.brands))return!1;var t=e.toLowerCase();return this._hints.brands.some(function(e){return e.brand&&e.brand.toLowerCase()===t})},t.getBrandVersion=function(e){if(this._hints&&Array.isArray(this._hints.brands)){var t=e.toLowerCase(),r=this._hints.brands.find(function(e){return e.brand&&e.brand.toLowerCase()===t});return r?r.version:void 0}},t.getUA=function(){return this._ua},t.test=function(e){return e.test(this._ua)},t.parseBrowser=function(){var e=this;this.parsedResult.browser={};var t=n.default.find(i.default,function(t){if("function"==typeof t.test)return t.test(e);if(Array.isArray(t.test))return t.test.some(function(t){return e.test(t)});throw Error("Browser's test function is not valid")});return t&&(this.parsedResult.browser=t.describe(this.getUA(),this)),this.parsedResult.browser},t.getBrowser=function(){return this.parsedResult.browser?this.parsedResult.browser:this.parseBrowser()},t.getBrowserName=function(e){return e?String(this.getBrowser().name).toLowerCase()||"":this.getBrowser().name||""},t.getBrowserVersion=function(){return this.getBrowser().version},t.getOS=function(){return this.parsedResult.os?this.parsedResult.os:this.parseOS()},t.parseOS=function(){var e=this;this.parsedResult.os={};var t=n.default.find(s.default,function(t){if("function"==typeof t.test)return t.test(e);if(Array.isArray(t.test))return t.test.some(function(t){return e.test(t)});throw Error("Browser's test function is not valid")});return t&&(this.parsedResult.os=t.describe(this.getUA())),this.parsedResult.os},t.getOSName=function(e){var t=this.getOS().name;return e?String(t).toLowerCase()||"":t||""},t.getOSVersion=function(){return this.getOS().version},t.getPlatform=function(){return this.parsedResult.platform?this.parsedResult.platform:this.parsePlatform()},t.getPlatformType=function(e){void 0===e&&(e=!1);var t=this.getPlatform().type;return e?String(t).toLowerCase()||"":t||""},t.parsePlatform=function(){var e=this;this.parsedResult.platform={};var t=n.default.find(a.default,function(t){if("function"==typeof t.test)return t.test(e);if(Array.isArray(t.test))return t.test.some(function(t){return e.test(t)});throw Error("Browser's test function is not valid")});return t&&(this.parsedResult.platform=t.describe(this.getUA())),this.parsedResult.platform},t.getEngine=function(){return this.parsedResult.engine?this.parsedResult.engine:this.parseEngine()},t.getEngineName=function(e){return e?String(this.getEngine().name).toLowerCase()||"":this.getEngine().name||""},t.parseEngine=function(){var e=this;this.parsedResult.engine={};var t=n.default.find(o.default,function(t){if("function"==typeof t.test)return t.test(e);if(Array.isArray(t.test))return t.test.some(function(t){return e.test(t)});throw Error("Browser's test function is not valid")});return t&&(this.parsedResult.engine=t.describe(this.getUA())),this.parsedResult.engine},t.parse=function(){return this.parseBrowser(),this.parseOS(),this.parsePlatform(),this.parseEngine(),this},t.getResult=function(){return n.default.assign({},this.parsedResult)},t.satisfies=function(e){var t=this,r={},i=0,s={},a=0;if(Object.keys(e).forEach(function(t){var o=e[t];"string"==typeof o?(s[t]=o,a+=1):"object"==typeof o&&(r[t]=o,i+=1)}),i>0){var o=Object.keys(r),u=n.default.find(o,function(e){return t.isOS(e)});if(u){var l=this.satisfies(r[u]);if(void 0!==l)return l}var d=n.default.find(o,function(e){return t.isPlatform(e)});if(d){var c=this.satisfies(r[d]);if(void 0!==c)return c}}if(a>0){var h=Object.keys(s),p=n.default.find(h,function(e){return t.isBrowser(e,!0)});if(void 0!==p)return this.compareVersion(s[p])}},t.isBrowser=function(e,t){void 0===t&&(t=!1);var r=this.getBrowserName().toLowerCase(),i=e.toLowerCase(),s=n.default.getBrowserTypeByAlias(i);return t&&s&&(i=s.toLowerCase()),i===r},t.compareVersion=function(e){var t=[0],r=e,i=!1,s=this.getBrowserVersion();if("string"==typeof s)return">"===e[0]||"<"===e[0]?(r=e.substr(1),"="===e[1]?(i=!0,r=e.substr(2)):t=[],">"===e[0]?t.push(1):t.push(-1)):"="===e[0]?r=e.substr(1):"~"===e[0]&&(i=!0,r=e.substr(1)),t.indexOf(n.default.compareVersions(s,r,i))>-1},t.isOS=function(e){return this.getOSName(!0)===String(e).toLowerCase()},t.isPlatform=function(e){return this.getPlatformType(!0)===String(e).toLowerCase()},t.isEngine=function(e){return this.getEngineName(!0)===String(e).toLowerCase()},t.is=function(e,t){return void 0===t&&(t=!1),this.isBrowser(e,t)||this.isOS(e)||this.isPlatform(e)},t.some=function(e){var t=this;return void 0===e&&(e=[]),e.some(function(e){return t.is(e)})},e}(),e.exports=t.default},92:function(e,t,r){"use strict";t.__esModule=!0,t.default=void 0;var i,s=(i=r(17))&&i.__esModule?i:{default:i},a=/version\/(\d+(\.?_?\d+)+)/i;t.default=[{test:[/gptbot/i],describe:function(e){var t={name:"GPTBot"},r=s.default.getFirstMatch(/gptbot\/(\d+(\.\d+)+)/i,e)||s.default.getFirstMatch(a,e);return r&&(t.version=r),t}},{test:[/chatgpt-user/i],describe:function(e){var t={name:"ChatGPT-User"},r=s.default.getFirstMatch(/chatgpt-user\/(\d+(\.\d+)+)/i,e)||s.default.getFirstMatch(a,e);return r&&(t.version=r),t}},{test:[/oai-searchbot/i],describe:function(e){var t={name:"OAI-SearchBot"},r=s.default.getFirstMatch(/oai-searchbot\/(\d+(\.\d+)+)/i,e)||s.default.getFirstMatch(a,e);return r&&(t.version=r),t}},{test:[/claudebot/i,/claude-web/i,/claude-user/i,/claude-searchbot/i],describe:function(e){var t={name:"ClaudeBot"}
vendor: 10,950 bytes, line 1
1,r=s.default.getFirstMatch(/(?:claudebot|claude-web|claude-user|claude-searchbot)\/(\d+(\.\d+)+)/i,e)||s.default.getFirstMatch(a,e);return r&&(t.version=r),t}},{test:[/omgilibot/i,/webzio-extended/i],describe:function(e){var t={name:"Omgilibot"},r=s.default.getFirstMatch(/(?:omgilibot|webzio-extended)\/(\d+(\.\d+)+)/i,e)||s.default.getFirstMatch(a,e);return r&&(t.version=r),t}},{test:[/diffbot/i],describe:function(e){var t={name:"Diffbot"},r=s.default.getFirstMatch(/diffbot\/(\d+(\.\d+)+)/i,e)||s.default.getFirstMatch(a,e);return r&&(t.version=r),t}},{test:[/perplexitybot/i],describe:function(e){var t={name:"PerplexityBot"},r=s.default.getFirstMatch(/perplexitybot\/(\d+(\.\d+)+)/i,e)||s.default.getFirstMatch(a,e);return r&&(t.version=r),t}},{test:[/perplexity-user/i],describe:function(e){var t={name:"Perplexity-User"},r=s.default.getFirstMatch(/perplexity-user\/(\d+(\.\d+)+)/i,e)||s.default.getFirstMatch(a,e);return r&&(t.version=r),t}},{test:[/youbot/i],describe:function(e){var t={name:"YouBot"},r=s.default.getFirstMatch(/youbot\/(\d+(\.\d+)+)/i,e)||s.default.getFirstMatch(a,e);return r&&(t.version=r),t}},{test:[/meta-webindexer/i],describe:function(e){var t={name:"Meta-WebIndexer"},r=s.default.getFirstMatch(/meta-webindexer\/(\d+(\.\d+)+)/i,e)||s.default.getFirstMatch(a,e);return r&&(t.version=r),t}},{test:[/meta-externalads/i],describe:function(e){var t={name:"Meta-ExternalAds"},r=s.default.getFirstMatch(/meta-externalads\/(\d+(\.\d+)+)/i,e)||s.default.getFirstMatch(a,e);return r&&(t.version=r),t}},{test:[/meta-externalagent/i],describe:function(e){var t={name:"Meta-ExternalAgent"},r=s.default.getFirstMatch(/meta-externalagent\/(\d+(\.\d+)+)/i,e)||s.default.getFirstMatch(a,e);return r&&(t.version=r),t}},{test:[/meta-externalfetcher/i],describe:function(e){var t={name:"Meta-ExternalFetcher"},r=s.default.getFirstMatch(/meta-externalfetcher\/(\d+(\.\d+)+)/i,e)||s.default.getFirstMatch(a,e);return r&&(t.version=r),t}},{test:[/googlebot/i],describe:function(e){var t={name:"Googlebot"},r=s.default.getFirstMatch(/googlebot\/(\d+(\.\d+))/i,e)||s.default.getFirstMatch(a,e);return r&&(t.version=r),t}},{test:[/linespider/i],describe:function(e){var t={name:"Linespider"},r=s.default.getFirstMatch(/(?:linespider)(?:-[-\w]+)?[\s/](\d+(\.\d+)+)/i,e)||s.default.getFirstMatch(a,e);return r&&(t.version=r),t}},{test:[/amazonbot/i],describe:function(e){var t={name:"AmazonBot"},r=s.default.getFirstMatch(/amazonbot\/(\d+(\.\d+)+)/i,e)||s.default.getFirstMatch(a,e);return r&&(t.version=r),t}},{test:[/bingbot/i],describe:function(e){var t={name:"BingCrawler"},r=s.default.getFirstMatch(/bingbot\/(\d+(\.\d+)+)/i,e)||s.default.getFirstMatch(a,e);return r&&(t.version=r),t}},{test:[/baiduspider/i],describe:function(e){var t={name:"BaiduSpider"},r=s.default.getFirstMatch(/baiduspider\/(\d+(\.\d+)+)/i,e)||s.default.getFirstMatch(a,e);return r&&(t.version=r),t}},{test:[/duckduckbot/i],describe:function(e){var t={name:"DuckDuckBot"},r=s.default.getFirstMatch(/duckduckbot\/(\d+(\.\d+)+)/i,e)||s.default.getFirstMatch(a,e);return r&&(t.version=r),t}},{test:[/ia_archiver/i],describe:function(e){var t={name:"InternetArchiveCrawler"},r=s.default.getFirstMatch(/ia_archiver\/(\d+(\.\d+)+)/i,e)||s.default.getFirstMatch(a,e);return r&&(t.version=r),t}},{test:[/facebookexternalhit/i,/facebookcatalog/i],describe:function(){return{name:"FacebookExternalHit"}}},{test:[/slackbot/i,/slack-imgProxy/i],describe:function(e){var t={name:"SlackBot"},r=s.default.getFirstMatch(/(?:slackbot|slack-imgproxy)(?:-[-\w]+)?[\s/](\d+(\.\d+)+)/i,e)||s.default.getFirstMatch(a,e);return r&&(t.version=r),t}},{test:[/yahoo!?[\s/]*slurp/i],describe:function(){return{name:"YahooSlurp"}}},{test:[/yandexbot/i,/yandexmobilebot/i],describe:function(){return{name:"YandexBot"}}},{test:[/pingdom/i],describe:function(){return{name:"PingdomBot"}}},{test:[/opera/i],describe:function(e){var t={name:"Opera"},r=s.default.getFirstMatch(a,e)||s.default.getFirstMatch(/(?:opera)[\s/](\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/opr\/|opios/i],describe:function(e){var t={name:"Opera"},r=s.default.getFirstMatch(/(?:opr|opios)[\s/](\S+)/i,e)||s.default.getFirstMatch(a,e);return r&&(t.version=r),t}},{test:[/SamsungBrowser/i],describe:function(e){var t={name:"Samsung Internet for Android"},r=s.default.getFirstMatch(a,e)||s.default.getFirstMatch(/(?:SamsungBrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/Whale/i],describe:function(e){var t={name:"NAVER Whale Browser"},r=s.default.getFirstMatch(a,e)||s.default.getFirstMatch(/(?:whale)[\s/](\d+(?:\.\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/PaleMoon/i],describe:function(e){var t={name:"Pale Moon"},r=s.default.getFirstMatch(a,e)||s.default.getFirstMatch(/(?:PaleMoon)[\s/](\d+(?:\.\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/MZBrowser/i],describe:function(e){var t={name:"MZ Browser"},r=s.default.getFirstMatch(/(?:MZBrowser)[\s/](\d+(?:\.\d+)+)/i,e)||s.default.getFirstMatch(a,e);return r&&(t.version=r),t}},{test:[/focus/i],describe:function(e){var t={name:"Focus"},r=s.default.getFirstMatch(/(?:focus)[\s/](\d+(?:\.\d+)+)/i,e)||s.default.getFirstMatch(a,e);return r&&(t.version=r),t}},{test:[/swing/i],describe:function(e){var t={name:"Swing"},r=s.default.getFirstMatch(/(?:swing)[\s/](\d+(?:\.\d+)+)/i,e)||s.default.getFirstMatch(a,e);return r&&(t.version=r),t}},{test:[/coast/i],describe:function(e){var t={name:"Opera Coast"},r=s.default.getFirstMatch(a,e)||s.default.getFirstMatch(/(?:coast)[\s/](\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/opt\/\d+(?:.?_?\d+)+/i],describe:function(e){var t={name:"Opera Touch"},r=s.default.getFirstMatch(/(?:opt)[\s/](\d+(\.?_?\d+)+)/i,e)||s.default.getFirstMatch(a,e);return r&&(t.version=r),t}},{test:[/yabrowser/i],describe:function(e){var t={name:"Yandex Browser"},r=s.default.getFirstMatch(/(?:yabrowser)[\s/](\d+(\.?_?\d+)+)/i,e)||s.default.getFirstMatch(a,e);return r&&(t.version=r),t}},{test:[/ucbrowser/i],describe:function(e){var t={name:"UC Browser"},r=s.default.getFirstMatch(a,e)||s.default.getFirstMatch(/(?:ucbrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/Maxthon|mxios/i],describe:function(e){var t={name:"Maxthon"},r=s.default.getFirstMatch(a,e)||s.default.getFirstMatch(/(?:Maxthon|mxios)[\s/](\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/epiphany/i],describe:function(e){var t={name:"Epiphany"},r=s.default.getFirstMatch(a,e)||s.default.getFirstMatch(/(?:epiphany)[\s/](\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/puffin/i],describe:function(e){var t={name:"Puffin"},r=s.default.getFirstMatch(a,e)||s.default.getFirstMatch(/(?:puffin)[\s/](\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/sleipnir/i],describe:function(e){var t={name:"Sleipnir"},r=s.default.getFirstMatch(a,e)||s.default.getFirstMatch(/(?:sleipnir)[\s/](\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/k-meleon/i],describe:function(e){var t={name:"K-Meleon"},r=s.default.getFirstMatch(a,e)||s.default.getFirstMatch(/(?:k-meleon)[\s/](\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/micromessenger/i],describe:function(e){var t={name:"WeChat"},r=s.default.getFirstMatch(/(?:micromessenger)[\s/](\d+(\.?_?\d+)+)/i,e)||s.default.getFirstMatch(a,e);return r&&(t.version=r),t}},{test:[/qqbrowser/i],describe:function(e){var t={name:/qqbrowserlite/i.test(e)?"QQ Browser Lite":"QQ Browser"},r=s.default.getFirstMatch(/(?:qqbrowserlite|qqbrowser)[/](\d+(\.?_?\d+)+)/i,e)||s.default.getFirstMatch(a,e);return r&&(t.version=r),t}},{test:[/msie|trident/i],describe:function(e){var t={name:"Internet Explorer"},r=s.default.getFirstMatch(/(?:msie |rv:)(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/\sedg\//i],describe:function(e){var t={name:"Microsoft Edge"},r=s.default.getFirstMatch(/\sedg\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/edg([ea]|ios)/i],describe:function(e){var t={name:"Microsoft Edge"},r=s.default.getSecondMatch(/edg([ea]|ios)\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/vivaldi/i],describe:function(e){var t={name:"Vivaldi"},r=s.default.getFirstMatch(/vivaldi\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/seamonkey/i],describe:function(e){var t={name:"SeaMonkey"},r=s.default.getFirstMatch(/seamonkey\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/sailfish/i],describe:function(e){var t={name:"Sailfish"},r=s.default.getFirstMatch(/sailfish\s?browser\/(\d+(\.\d+)?)/i,e);return r&&(t.version=r),t}},{test:[/silk/i],describe:function(e){var t={name:"Amazon Silk"},r=s.default.getFirstMatch(/silk\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/phantom/i],describe:function(e){var t={name:"PhantomJS"},r=s.default.getFirstMatch(/phantomjs\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/slimerjs/i],describe:function(e){var t={name:"SlimerJS"},r=s.default.getFirstMatch(/slimerjs\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe:function(e){var t={name:"BlackBerry"},r=s.default.getFirstMatch(a,e)||s.default.getFirstMatch(/blackberry[\d]+\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/(web|hpw)[o0]s/i],describe:function(e){var t={name:"WebOS Browser"},r=s.default.getFirstMatch(a,e)||s.default.getFirstMatch(/w(?:eb)?[o0]sbrowser\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/bada/i],describe:function(e){var t={name:"Bada"},r=s.default.getFirstMatch(/dolfin\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/tizen/i],describe:function(e){var t={name:"Tizen"},r=s.default.getFirstMatch(/(?:tizen\s?)?browser\/(\d+(\.?_?\d+)+)/i,e)||s.default.getFirstMatch(a,e);return r&&(t.version=r),t}},{test:[/qupzilla/i],describe:function(e){var t={name:"QupZilla"},r=s.default.getFirstMatch(/(?:qupzilla)[\s/](\d+(\.?_?\d+)+)/i,e)||s.default.getFirstMatch(a,e);return r&&(t.version=r),t}},{test:[/librewolf/i],describe:function(e){var t={name:"LibreWolf"},r=s.default.getFirstMatch(/(?:librewolf)[\s/](\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/firefox|iceweasel|fxios/i],describe:function(e){var t={name:"Firefox"},r=s.default.getFirstMatch(/(?:firefox|iceweasel|fxios)[\s/](\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/electron/i],describe:function(e){var t={name:"Electron"},r=s.default.getFirstMatch(/(?:electron)\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/sogoumobilebrowser/i,/metasr/i,/se 2\.[x]/i],describe:function(e){var t={name:"Sogou Browser"},r=s.default.getFirstMatch(/(?:sogoumobilebrowser)[\s/](\d+(\.?_?\d+)+)/i,e),i=s.default.getFirstMatch(/(?:chrome|crios|crmo)\/(\d+(\.?_?\d+)+)/i,e),a=s.default.getFirstMatch(/se ([\d.]+)x/i,e),o=r||i||a;return o&&(t.version=o),t}},{test:[/MiuiBrowser/i],describe:function(e){var t={name:"Miui"},r=s.default.getFirstMatch(/(?:MiuiBrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:function(e){return!!e.hasBrand("DuckDuckGo")||e.test(/\sDdg\/[\d.]+$/i)}
vendor: 4,155 bytes, line 1
1,describe:function(e,t){var r={name:"DuckDuckGo"};if(t){var i=t.getBrandVersion("DuckDuckGo");if(i)return r.version=i,r}var a=s.default.getFirstMatch(/\sDdg\/([\d.]+)$/i,e);return a&&(r.version=a),r}},{test:function(e){return e.hasBrand("Brave")},describe:function(e,t){var r={name:"Brave"};if(t){var i=t.getBrandVersion("Brave");if(i)return r.version=i,r}return r}},{test:[/chromium/i],describe:function(e){var t={name:"Chromium"},r=s.default.getFirstMatch(/(?:chromium)[\s/](\d+(\.?_?\d+)+)/i,e)||s.default.getFirstMatch(a,e);return r&&(t.version=r),t}},{test:[/chrome|crios|crmo/i],describe:function(e){var t={name:"Chrome"},r=s.default.getFirstMatch(/(?:chrome|crios|crmo)\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/GSA/i],describe:function(e){var t={name:"Google Search"},r=s.default.getFirstMatch(/(?:GSA)\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:function(e){var t=!e.test(/like android/i),r=e.test(/android/i);return t&&r},describe:function(e){var t={name:"Android Browser"},r=s.default.getFirstMatch(a,e);return r&&(t.version=r),t}},{test:[/playstation 4/i],describe:function(e){var t={name:"PlayStation 4"},r=s.default.getFirstMatch(a,e);return r&&(t.version=r),t}},{test:[/safari|applewebkit/i],describe:function(e){var t={name:"Safari"},r=s.default.getFirstMatch(a,e);return r&&(t.version=r),t}},{test:[/.*/i],describe:function(e){var t=-1!==e.search("\\(")?/^(.*)\/(.*)[ \t]\((.*)/:/^(.*)\/(.*) /;return{name:s.default.getFirstMatch(t,e),version:s.default.getSecondMatch(t,e)}}}],e.exports=t.default},93:function(e,t,r){"use strict";t.__esModule=!0,t.default=void 0;var i,s=(i=r(17))&&i.__esModule?i:{default:i},a=r(18);t.default=[{test:[/Roku\/DVP/],describe:function(e){var t=s.default.getFirstMatch(/Roku\/DVP-(\d+\.\d+)/i,e);return{name:a.OS_MAP.Roku,version:t}}},{test:[/windows phone/i],describe:function(e){var t=s.default.getFirstMatch(/windows phone (?:os)?\s?(\d+(\.\d+)*)/i,e);return{name:a.OS_MAP.WindowsPhone,version:t}}},{test:[/windows /i],describe:function(e){var t=s.default.getFirstMatch(/Windows ((NT|XP)( \d\d?.\d)?)/i,e),r=s.default.getWindowsVersionName(t);return{name:a.OS_MAP.Windows,version:t,versionName:r}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe:function(e){var t={name:a.OS_MAP.iOS},r=s.default.getSecondMatch(/(Version\/)(\d[\d.]+)/,e);return r&&(t.version=r),t}},{test:[/macintosh/i],describe:function(e){var t=s.default.getFirstMatch(/mac os x (\d+(\.?_?\d+)+)/i,e).replace(/[_\s]/g,"."),r=s.default.getMacOSVersionName(t),i={name:a.OS_MAP.MacOS,version:t};return r&&(i.versionName=r),i}},{test:[/(ipod|iphone|ipad)/i],describe:function(e){var t=s.default.getFirstMatch(/os (\d+([_\s]\d+)*) like mac os x/i,e).replace(/[_\s]/g,".");return{name:a.OS_MAP.iOS,version:t}}},{test:[/OpenHarmony/i],describe:function(e){var t=s.default.getFirstMatch(/OpenHarmony\s+(\d+(\.\d+)*)/i,e);return{name:a.OS_MAP.HarmonyOS,version:t}}},{test:function(e){var t=!e.test(/like android/i),r=e.test(/android/i);return t&&r},describe:function(e){var t=s.default.getFirstMatch(/android[\s/-](\d+(\.\d+)*)/i,e),r=s.default.getAndroidVersionName(t),i={name:a.OS_MAP.Android,version:t};return r&&(i.versionName=r),i}},{test:[/(web|hpw)[o0]s/i],describe:function(e){var t=s.default.getFirstMatch(/(?:web|hpw)[o0]s\/(\d+(\.\d+)*)/i,e),r={name:a.OS_MAP.WebOS};return t&&t.length&&(r.version=t),r}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe:function(e){var t=s.default.getFirstMatch(/rim\stablet\sos\s(\d+(\.\d+)*)/i,e)||s.default.getFirstMatch(/blackberry\d+\/(\d+([_\s]\d+)*)/i,e)||s.default.getFirstMatch(/\bbb(\d+)/i,e);return{name:a.OS_MAP.BlackBerry,version:t}}},{test:[/bada/i],describe:function(e){var t=s.default.getFirstMatch(/bada\/(\d+(\.\d+)*)/i,e);return{name:a.OS_MAP.Bada,version:t}}},{test:[/tizen/i],describe:function(e){var t=s.default.getFirstMatch(/tizen[/\s](\d+(\.\d+)*)/i,e);return{name:a.OS_MAP.Tizen,version:t}}},{test:[/linux/i],describe:function(){return{name:a.OS_MAP.Linux}}},{test:[/CrOS/],describe:function(){return{name:a.OS_MAP.ChromeOS}}},{test:[/PlayStation 4/],describe:function(e){var t=s.default.getFirstMatch(/PlayStation 4[/\s](\d+(\.\d+)*)/i,e);
1return{name:a.OS_MAP.PlayStation4,version:t}}}],e.exports=t.default},94:function(e,t,r){"use strict";t.__esModule=!0,t.default=void 0;var i,s=(i=r(17))&&i.__esModule?i:{default:i},a=r(18);t.default=[{test:[/googlebot/i],describe:function(){return{type:a.PLATFORMS_MAP.bot,vendor:"Google"}}},{test:[/linespider/i],describe:function(){return{type:a.PLATFORMS_MAP.bot,vendor:"Line"}}},{test:[/amazonbot/i],describe:function(){return{type:a.PLATFORMS_MAP.bot,vendor:"Amazon"}}},{test:[/gptbot/i],describe:function(){return{type:a.PLATFORMS_MAP.bot,vendor:"OpenAI"}}},{test:[/chatgpt-user/i],describe:function(){return{type:a.PLATFORMS_MAP.bot,vendor:"OpenAI"}}},{test:[/oai-searchbot/i],describe:function(){return{type:a.PLATFORMS_MAP.bot,vendor:"OpenAI"}}},{test:[/baiduspider/i],describe:function(){return{type:a.PLATFORMS_MAP.bot,vendor:"Baidu"}}},{test:[/bingbot/i],describe:function(){return{type:a.PLATFORMS_MAP.bot,vendor:"Bing"}}},{test:[/duckduckbot/i],describe:function(){return{type:a.PLATFORMS_MAP.bot,vendor:"DuckDuckGo"}}},{test:[/claudebot/i,/claude-web/i,/claude-user/i,/claude-searchbot/i],describe:function(){return{type:a.PLATFORMS_MAP.bot,vendor:"Anthropic"}}},{test:[/omgilibot/i,/webzio-extended/i],describe:function(){return{type:a.PLATFORMS_MAP.bot,vendor:"Webz.io"}}},{test:[/diffbot/i],describe:function(){return{type:a.PLATFORMS_MAP.bot,vendor:"Diffbot"}}},{test:[/perplexitybot/i],describe:function(){return{type:a.PLATFORMS_MAP.bot,vendor:"Perplexity AI"}}},{test:[/perplexity-user/i],describe:function(){return{type:a.PLATFORMS_MAP.bot,vendor:"Perplexity AI"}}},{test:[/youbot/i],describe:function(){return{type:a.PLATFORMS_MAP.bot,vendor:"You.com"}}},{test:[/ia_archiver/i],describe:function(){return{type:a.PLATFORMS_MAP.bot,vendor:"Internet Archive"}}},{test:[/meta-webindexer/i],describe:function(){return{type:a.PLATFORMS_MAP.bot,vendor:"Meta"}}},{test:[/meta-externalads/i],describe:function(){return{type:a.PLATFORMS_MAP.bot,vendor:"Meta"}}},{test:[/meta-externalagent/i],describe:function(){return{type:a.PLATFORMS_MAP.bot,vendor:"Meta"}}},{test:[/meta-externalfetcher/i],describe:function(){return{type:a.PLATFORMS_MAP.bot,vendor:"Meta"}}},{test:[/facebookexternalhit/i,/facebookcatalog/i],describe:function(){return{type:a.PLATFORMS_MAP.bot,vendor:"Meta"}}},{test:[/slackbot/i,/slack-imgProxy/i],describe:function(){return{type:a.PLATFORMS_MAP.bot,vendor:"Slack"}}},{test:[/yahoo/i],describe:function(){return{type:a.PLATFORMS_MAP.bot,vendor:"Yahoo"}}},{test:[/yandexbot/i,/yandexmobilebot/i],describe:function(){return{type:a.PLATFORMS_MAP.bot,vendor:"Yandex"}}},{test:[/pingdom/i],describe:function(){return{type:a.PLATFORMS_MAP.bot,vendor:"Pingdom"}}},{test:[/huawei/i],describe:function(e){var t=s.default.getFirstMatch(/(can-l01)/i,e)&&"Nova",r={type:a.PLATFORMS_MAP.mobile,vendor:"Huawei"};return t&&(r.model=t),r}},{test:[/nexus\s*(?:7|8|9|10).*/i],describe:function(){return{type:a.PLATFORMS_MAP.tablet,vendor:"Nexus"}}},{test:[/ipad/i],describe:function(){return{type:a.PLATFORMS_MAP.tablet,vendor:"Apple",model:"iPad"}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe:function(){return{type:a.PLATFORMS_MAP.tablet,vendor:"Apple",model:"iPad"}}},{test:[/kftt build/i],describe:function(){return{type:a.PLATFORMS_MAP.tablet,vendor:"Amazon",model:"Kindle Fire HD 7"}}},{test:[/silk/i],describe:function(){return{type:a.PLATFORMS_MAP.tablet,vendor:"Amazon"}}},{test:[/tablet(?! pc)/i],describe:function(){return{type:a.PLATFORMS_MAP.tablet}}},{test:function(e){var t=e.test(/ipod|iphone/i),r=e.test(/like (ipod|iphone)/i);return t&&!r},describe:function(e){var t=s.default.getFirstMatch(/(ipod|iphone)/i,e);return{type:a.PLATFORMS_MAP.mobile,vendor:"Apple",model:t}}},{test:[/nexus\s*[0-6].*/i,/galaxy nexus/i],describe:function(){return{type:a.PLATFORMS_MAP.mobile,vendor:"Nexus"}}},{test:[/Nokia/i],describe:function(e){var t=s.default.getFirstMatch(/Nokia\s+([0-9]+(\.[0-9]+)?)/i,e),r={type:a.PLATFORMS_MAP.mobile,vendor:"Nokia"};return t&&(r.model=t),r}},{test:[/[^-]mobi/i],describe:function(){return{type:a.PLATFORMS_MAP.mobile}}},{test:function(e){return"blackberry"===e.getBrowserName(!0)},describe:function(){return{type:a.PLATFORMS_MAP.mobile,vendor:"BlackBerry"}}},{test:function(e){return"bada"===e.getBrowserName(!0)},describe:function(){return{type:a.PLATFORMS_MAP.mobile}}},{test:function(e){return"windows phone"===e.getBrowserName()},describe:function(){return{type:a.PLATFORMS_MAP.mobile,vendor:"Microsoft"}}},{test:function(e){var t=Number(String(e.getOSVersion()).split(".")[0]);return"android"===e.getOSName(!0)&&t>=3},describe:function(){return{type:a.PLATFORMS_MAP.tablet}}},{test:function(e){return"android"===e.getOSName(!0)},describe:function(){return{type:a.PLATFORMS_MAP.mobile}}},{test:[/smart-?tv|smarttv/i],describe:function(){return{type:a.PLATFORMS_MAP.tv}}},{test:[/netcast/i],describe:function(){return{type:a.PLATFORMS_MAP.tv}}},{test:function(e){return"macos"===e.getOSName(!0)},describe:function(){return{type:a.PLATFORMS_MAP.desktop,vendor:"Apple"}}},{test:function(e){return"windows"===e.getOSName(!0)},describe:function(){return{type:a.PLATFORMS_MAP.desktop}}},{test:function(e){return"linux"===e.getOSName(!0)},describe:function(){return{type:a.PLATFORMS_MAP.desktop}}},{test:function(e){return"playstation 4"===e.getOSName(!0)},describe:function(){return{type:a.PLATFORMS_MAP.tv}}},{test:function(e){return"roku"===e.getOSName(!0)},describe:function(){return{type:a.PLATFORMS_MAP.tv}}}],e.exports=t.default},95:function(e,t,r){"use strict";t.__esModule=!0,t.default=void 0;var i,s=(i=r(17))&&i.__esModule?i:{default:i},a=r(18);t.default=[{test:function(e){return"microsoft edge"===e.getBrowserName(!0)},describe:function(e){if(/\sedg\//i.test(e))return{name:a.ENGINE_MAP.Blink};var t=s.default.getFirstMatch(/edge\/(\d+(\.?_?\d+)+)/i,e);return{name:a.ENGINE_MAP.EdgeHTML,version:t}}},{test:[/trident/i],describe:function(e){var t={name:a.ENGINE_MAP.Trident},r=s.default.getFirstMatch(/trident\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:function(e){return e.test(/presto/i)},describe:function(e){var t={name:a.ENGINE_MAP.Presto},r=s.default.getFirstMatch(/presto\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:function(e){var t=e.test(/gecko/i),r=e.test(/like gecko/i);return t&&!r},describe:function(e){var t={name:a.ENGINE_MAP.Gecko},r=s.default.getFirstMatch(/gecko\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/(apple)?webkit\/537\.36/i],describe:function(){return{name:a.ENGINE_MAP.Blink}}},{test:[/(apple)?webkit/i],describe:function(e){var t={name:a.ENGINE_MAP.WebKit},r=s.default.getFirstMatch(/webkit\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}}],e.exports=t.default}},t={};function r(i){if(t[i])return t[i].exports;var s=t[i]={i:i,l:!1,exports:{}};return e[i].call(s.exports,s,s.exports,r),s.l=!0,s.exports}return r.m=e,r.c=t,r.d=function(e,t,i){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:i})},r.r=function(e){"u">typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}
1),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t||4&t&&"object"==typeof e&&e&&e.__esModule)return e;var i=Object.create(null);if(r.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var s in e)r.d(i,s,(function(t){return e[t]}).bind(null,s));return i},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=90)}()},32428:function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.UploadApi=t.UPLOAD_SUPPORTED_EXTENSIONS=t.UPLOAD_SUPPORTED_MIME_TYPES=void 0;let i=r(39086),s=r(78186);t.UPLOAD_SUPPORTED_MIME_TYPES=["image/*","image/webp","image/heif","image/heic","image/cr2","image/dng","image/nef"],t.UPLOAD_SUPPORTED_EXTENSIONS=[".webp",".heic",".cr2",".dng",".nef"],t.UploadApi=class{constructor(e){this._endpoint=`${e}/upload/photo?version=2`}uploadFile(e,t,r,a,o,n){let u=(0,s.generateUuidV4)();return i.HttpClient.request({noRejectBadStatus:!0,method:"POST",url:this._endpoint,headers:{"x-correlation-id":u},body:{Filedata:e,Filename:e.name,uid:t.id,oauth_token:t.oauthToken,oauth_token_secret:t.oauthSecret,session_uuid:r,project_id:a,retry:o,upload_origin:n}})}isSmugMugUrl(e){return -1!==e.indexOf("smugmug")&&-1===e.indexOf("frouser")}uploadPhoto(e,t,r,a){let o=(0,s.generateUuidV4)();return i.HttpClient.request({noRejectBadStatus:!0,method:"POST",url:this._endpoint,headers:{"x-correlation-id":o},body:{url:e.url,asset_source_id:e.sourceId,asset_external_id:e.externalId,asset_taken_at:e.takenAt,uid:t.id,oauth_token:t.oauthToken,oauth_token_secret:t.oauthSecret,session_uuid:r,download_headers:JSON.stringify(e.downloadHeaders),project_id:a}})}}},12697:function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MagicFlow=function(e){let{entrySurface:t}=e,r=(0,c.useStylesheet)(s.Stylesheet,s.Styles),M=(0,l.useAppState)(b.SessionState,"isAuthenticated"),y=(0,l.useAppState)(f.ChatState,"isAllowed"),{isMixbookWebView:P,isInAppBrowser:F}=(0,h.useUserAgent)(),[A,w]=i.useState(),[k,T]=i.useState(),O=i.useRef(null),E=i.useRef(null),{settings:U,context:R}=(0,u.useAppContext)(),x=(0,l.useAppState)(b.SessionState,"credentials"),B=(0,l.useAppState)(m.LocationState,"url"),C=null==x?void 0:x.id,N=null==x?void 0:x.jacked,I=(0,p.useViewportState)("deviceType"),L=(0,p.useViewportState)("isMobileSizeScreen"),[D,j]=(0,d.useDynamicParam)("message",(0,_.StringType)(),{noHistoryPush:!0,noDismissLayers:!0}),[q]=i.useState(D),{visitorId:G,strangerId:V,clientCountry:W}=R,Q=i.useMemo(()=>{var e,t,r,i,s;let a;return e=B,{utm_channel:null==(t=(a=(0,S.getUrlParams)(e)).utm_channel)?void 0:t[0],utm_source:null==(r=a.utm_source)?void 0:r[0],utm_medium:null==(i=a.utm_medium)?void 0:i[0],utm_campaign:null==(s=a.utm_campaign)?void 0:s[0]}},[B]),z=(0,l.useAppState)(g.FlaggerState,"features"),H=v.EditorCapabilities.build(),Y=i.useMemo(()=>Object.entries(z).filter(([,e])=>e).map(([e])=>e),[z]),J=i.useCallback((e,t)=>{T(e instanceof Error?e.message:t)},[]),K=i.useMemo(()=>({apiUrl:U.api.baseUrl,websocketsUrl:U.api.websocketsUrl,isMixbookWebView:P,isInAppBrowser:F,isMobile:L,visitorId:G,strangerId:V,clientCountry:W,deviceType:I,entrySurface:t,capabilities:H,initialMessage:q,...Q}),[U.api.baseUrl,U.api.websocketsUrl,P,F,L,G,V,W,I,t,H,q,Q]);i.useEffect(()=>{q&&j("")},[]);let $=i.useMemo(()=>({isUserAuthenticated:M,userId:C,isChatAllowed:y,isMixbookWebView:P,isJacked:N,enabledFeatures:Y}),[M,y,P,C,N,Y]),Z=(0,a.useMagicFlowHostApi)(),X=(0,o.useMagicFlowLoader)();return i.useEffect(()=>{X().then(w).catch(e=>J(e,"Failed to load MagicFlow"))},[J,X]),i.useEffect(()=>{let e={config:K,hostState:$,hostApi:Z};A&&O.current&&!E.current?A.mount(O.current,e).then(e=>{E.current=e}).catch(e=>J(e,"Failed to mount MagicFlow")):E.current&&E.current.update(e)},[K,J,Z,$,A]),i.useEffect(()=>()=>{E.current&&(E.current.unmount(),E.current=null)},[]),i.createElement("div",{className:r.root}
1,!A&&(k?i.createElement(n.ErrorMessage,null,"Error: ",k):"Loading…"),i.createElement("div",{ref:O,className:r.container}))};let i=r(67294),s=r(27308),a=r(32778),o=r(95025),n=r(39686),u=r(290),l=r(39010),d=r(66314),c=r(49499),h=r(35490),p=r(83629),f=r(36155),g=r(83009),m=r(23538),b=r(9619),_=r(41272),v=r(73178),S=r(86401)},32778:function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.useMagicFlowHostApi=function(){let e=(0,a.useAppContext)(),t=(0,n.useOpenAuthDialog)(),r=(0,o.useAppState)(h.UploaderState,"uploader"),g=(0,o.useAppStateAction)(u.ChatState,"open"),m=(0,o.useAppState)(d.LocationState,"url"),b=i.useCallback(t=>{let{coupon:r}=e.stateLoader.get(c.SessionState),{markAsDismissedInCookiesForever:i}=e.stateLoader.get(l.DismissState,f);r&&i(r.code),"SignUp"===t.type&&p.Tracking.track("UserRegistered",{origin:s.AuthOrigin.StoryMode})},[e.stateLoader]);return i.useMemo(()=>({addEventListener(...t){let[r,i]=t;switch(r){case"uploadStarts":return e.eventStream.listen("uploadStart",()=>i());case"uploadFileQueued":return e.eventStream.listen("fileUploadQueued",({file:e})=>i(e));case"uploadProgress":return e.eventStream.listen("uploadProgress",({stats:e})=>i(e));case"uploadFileSucceeded":return e.eventStream.listen("fileUploadSucceeded",({file:e,photo:t})=>i({file:e,photo:t.toObject()}));case"uploadFileFailed":return e.eventStream.listen("fileUploadFailed",({file:e,error:t})=>i({file:e,error:t}));case"uploadFileCancelled":return e.eventStream.listen("fileUploadCanceled",({file:e})=>i(e));case"photoBatchUpload":return e.eventStream.listen("photoBatchUpload",({photos:e})=>i(e.map(e=>e.toObject())));case"uploadBatchEnd":return e.eventStream.listen("uploadEnd",({stats:e})=>i(e));default:throw Error(`Unknown event: ${r}`)}},showAuthDialog(){t("signUp",b,s.AuthOrigin.StoryMode,m)},openCustomerChat(){g()},uploadFileArray(e,t,i){r.uploadFileArray(e,{projectId:t,uploadOrigin:i})},cancelUpload(e){r.cancelFile(e)},retryUpload(e){r.retryFile(e)}}),[e.eventStream,b,t,g,r,m])};let i=r(67294),s=r(12179),a=r(290),o=r(39010),n=r(54593),u=r(36155),l=r(35713),d=r(23538),c=r(9619),h=r(79800),p=r(53678),f={key:l.DismissableKey.Coupon}},95025:function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.useMagicFlowLoader=function(){let{editorVersionedUrl:e,studioUrl:t}=(0,s.useAppContext)().settings.studio;return i.useCallback(async()=>{let r,i,s=new URLSearchParams(window.location.search).get("version");return s?(r=o.Url.fromString(e),i=s):(r=o.Url.fromString(t),i=await u(r)),i&&(r=r.appendPath(`revisions/${i}`)),r=r.appendPath("magic-flow/magicFlow.js"),await (0,n.loadModule)(r.toString())},[e,t])};let i=r(67294),s=r(290),a=r(39086),o=r(12167),n=r(37599);async function u(e){let t=await a.HttpClient.request({method:"GET",url:e.appendPath("config.json").toString()}),{version:r}=await t.getJson();return r}},19294:function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AppUploader=void 0;let i=r(76783),s=r(32428),a=r(87647),o=r(24167),n=r(40885),u=r(71421),l=r(68780),d=r(22756),c=r(30070),h=r(80652),p=r(92818),f=r(39086),g=r(61275),m=r(86184),b=r(19078),_=r(53678),v=r(78186),S=[1e3,5e3,5e3,3e4],M=[501,503,415];t.AppUploader=class{constructor(e){b.ObjectUtils.bindOwnProperties(this),this._app=e,this._queue=[],this._uploading=[],this._uploaded=[],this._failed=[],this._retryQueue=[],this._reRetryQueue=[];let t=e.stateLoader.createProvider();this._globalProgressState=m.FunctionUtils.lazy(()=>t.get(h.UploadGlobalProgressState)),this._photoTargetState=m.FunctionUtils.lazy(()=>t.get(c.PhotoTargetState)),this._photosState=m.FunctionUtils.lazy(()=>t.get(d.PhotosState)),this._throttledSendSessionStats=m.FunctionUtils.throttle(this.sendSessionStats,5e3)}get isFirstUpload(){return 0===this._queue.length&&0===this._uploading.length&&0===this._uploaded.length&&0===this._retryQueue.length&&0===this._reRetryQueue.length&&0===this._failed.length}get hasFinished(){let e=this._uploaded.length>0||this._failed.length>0,t=0===this._queue.length&&0===this._uploading.length&&0===this._retryQueue.length;return e&&t}get hasAllFilesUploaded(){let{totalFiles:e,uploaded:t}=this.stats;return e>0&&e===t}get hasFailedUploadsToReRetry(){return this.hasFinished&&this._failed.some(e=>!e.isReRetried)}get tasks(){return[...this._uploading,...this._uploaded,...this._queue,...this._retryQueue,...this._failed]}get emptyStats(){return{queue:0,retryQueue:0,uploading:0,uploaded:0,failed:0,totalFiles:0,averageSpeed:0,remainingTime:0,progressPercentage:0,progressByFile:new Map}}get hasInFlightUploads(){return this._uploading.length>0||this._queue.length>0||this._retryQueue.length>0}get stats(){let{averageSpeed:e,remainingTime:t,progressPercentage:r}=this._globalProgressState(),i=new Map,s=this._queue.length+this._retryQueue.length+this._uploading.length+this._uploaded.length+this._failed.length;
1return this._uploading.forEach(e=>{if(e instanceof n.FileUploaderTask){let t=Math.round(e.uploadedBytes/e.totalBytes*100);i.set(e.file,t)}}),{queue:this._queue.length,retryQueue:this._retryQueue.length,uploading:this._uploading.length,uploaded:this._uploaded.length,failed:this._failed.length,totalFiles:s,averageSpeed:e,remainingTime:t,progressPercentage:r,progressByFile:i,sessionId:this._sessionId}}cancel(){[...this._queue,...this._retryQueue,...this._failed,...this._uploading].forEach(e=>this.handleCancelUploadFileTask(e)),this._uploading.forEach(e=>e.abort()),this._retryQueue.forEach(e=>e.retryCallbackId&&window.clearTimeout(e.retryCallbackId)),this.handleUploadSessionEnd(),this.resetStats()}retryFile(e){this._retryTasks(t=>t instanceof n.FileUploaderTask&&t.hasFile(e))}retryTask(e){this._retryTasks(t=>t===e)}cancelFile(e){this._queue=this.removeFile(e,this._queue),this._retryQueue=this.removeFile(e,this._retryQueue,!0),this._uploading=this.removeFile(e,this._uploading,!1,!0),this._failed=this.removeFile(e,this._failed),this.nextTask(),_.Tracking.track("UploadCancel")}cancelTask(e){this._queue=this._cancelTask(this._queue,e),this._retryQueue=this._cancelTask(this._retryQueue,e,!0),this._uploading=this._cancelTask(this._uploading,e,!1,!0),this._failed=this._cancelTask(this._failed,e),this._uploaded=this._cancelTask(this._uploaded,e),this.nextTask(),_.Tracking.track("UploadCancel")}sortQueue(e){this._sortProperties=e,this._queue=this.sortTaskList(new p.Collection(this._queue),e),this.updateGlobalState()}resetUploaded(){this._uploaded=[],this.updateGlobalState()}resetStats(){this._uploaded=[],this._uploading=[],this._failed=[],this._retryQueue=[],this._queue=[],this.updateGlobalState()}cancelFailed(){_.Tracking.track("FailedUploadsCancelled"),this.cancel()}retry(){let e=this._failed;this._failed=[],e.forEach(e=>{e.retryCount=0,this.handleFileUploadTaskQueued(e),this.uploadPhotoFromTask(e)});let t=this._sortProperties;t?this.sortQueue(t):this.updateGlobalState()}uploadFileList(e,t={}){let r=Array.from(e);this.uploadFileArray(r,t)}uploadFileArray(e,t={}){this._credentials=t.credentials;let r=e.filter(e=>!this.fileAlreadyInQueueOrUploaded(e)).filter(e=>o.AppUploaderHelpers.isFileAnImage(e,s.UPLOAD_SUPPORTED_EXTENSIONS));if(0===r.length){this._app.eventStream.push("uploadStart",{}),this.hasInFlightUploads||this._app.eventStream.push("uploadEnd",{stats:this.emptyStats});return}let i=r.map(e=>new n.FileUploaderTask(e,{album:this.getTargetAlbum(),...t})),a=this._sortProperties,u=this.sortTaskList(new p.Collection(i),a);for(let e of r)this._app.eventStream.push("fileUploadQueued",{file:e});this.uploadTaskList(u),this.sortQueue(a)}uploadPhotoList(e){this.uploadTaskList(e.map(e=>new u.PhotoUploaderTask(e,this.getTargetAlbum())))}cancelRelatedTasks(e){let t=e.map(e=>e.id);this.tasks.filter(e=>{var r,i;return(null==(r=e.photo)?void 0:r.id)&&t.includes(null==(i=e.photo)?void 0:i.id)}).map(e=>this.cancelTask(e))}sortTaskList(e,t){let r=e.select(e=>e instanceof n.FileUploaderTask),i=e.select(e=>!(e instanceof n.FileUploaderTask)),s=(null==t?void 0:t.sortBy)==="filename"?r.sortBy(e=>e.file.name):r.sortBy(e=>e.file.lastModified);return t&&"filename"===t.sortBy&&"desc"===t.sortOrder&&(s=s.reverse()),[...i.toArray(),...s.toArray()]}removeFile(e,t,r=!1,i=!1){let s=t;return t.filter(t=>
1t instanceof n.FileUploaderTask&&t.hasFile(e)).forEach(a=>{r&&a.retryCallbackId&&window.clearTimeout(a.retryCallbackId),i&&a.abort(),this._app.eventStream.push("fileUploadCanceled",{file:e}),s=t.filter(e=>e!==a)}),s}fileAlreadyInQueueOrUploaded(e){return this.tasks.some(t=>t instanceof n.FileUploaderTask&&t.hasFile(e))}uploadTaskList(e){0!==e.length&&(this._app.eventStream.push("uploadStart",{}),e.forEach(e=>this.uploadPhotoFromTask(e)),this.updateGlobalState())}getTargetAlbum(){return this._photoTargetState().targetAlbum}uploadPhotoFromTask(e){this._uploading.length<4?this.processTask(e):this._queue.push(e)}async processTask(e){(this.isFirstUpload||null==this._sessionId)&&this.handleUploadSessionStart(),this._retryQueue=this._retryQueue.filter(t=>t!==e),this._reRetryQueue=this._reRetryQueue.filter(t=>t!==e),this._uploading.push(e);try{let t=await e.execute(this._app,this._sessionId,()=>this.updateGlobalState(),this._app.context.projectId);this.pushPhotoInStates(t,e.album,e.credentials),this._uploaded.push(e),e instanceof n.FileUploaderTask&&this._app.eventStream.push("fileUploadSucceeded",{file:e.file,photo:t}),this._app.eventStream.push("photoBatchUpload",{photos:[t]})}catch(t){e.error===l.UploaderTaskError.None&&(e.error=l.UploaderTaskError.Timeout),t instanceof a.UploaderRequestError&&415===t.status?this.handleUnsupportedFileTypeError(e,t):this._retryTask(e,(0,g.ensureError)(t))}finally{this._uploading.splice(this._uploading.indexOf(e),1),this.nextTask()}}handleCancelUploadFileTask(e){e instanceof n.FileUploaderTask&&this._app.eventStream.push("fileUploadCanceled",{file:e.file})}handleFileUploadTaskQueued(e){e instanceof n.FileUploaderTask&&this._app.eventStream.push("fileUploadQueued",{file:e.file})}handleUnsupportedFileTypeError(e,t){this.handleFailedTask(e,t)}_retryTask(e,t){++e.retryCount>S.length?(this._retryQueue=this._retryQueue.filter(t=>t!==e),this.handleFailedTask(e,t)):(this._retryQueue.push(e),e.retryCallbackId=window.setTimeout(()=>{this.uploadPhotoFromTask(e),this._retryQueue=this._retryQueue.filter(t=>t!==e)},S[e.retryCount-1]))}_cancelTask(e,t,r=!1,i=!1){return this._cancelTasks(e,e=>e===t,r,i)}_cancelTasks(e,t,r=!1,i=!1){return e.filter(t).forEach(e=>{r&&e.retryCallbackId&&window.clearTimeout(e.retryCallbackId),i&&e.abort(),e instanceof n.FileUploaderTask&&this._app.eventStream.push("fileUploadCanceled",{file:e.file})}),e.filter(e=>!t(e))}_retryTasks(e){_.Tracking.track("UploadManualRetry"),this._failed.forEach(t=>{e(t)&&(t.reset(),this.uploadPhotoFromTask(t),this._failed=this._failed.filter(e=>e!==t))}),this.updateGlobalState()}handleFailedTask(e,t){this._failed.push(e),this.maybeReportError(t),_.Tracking.track("UploadFailure"),e instanceof n.FileUploaderTask&&this._app.eventStream.push("fileUploadFailed",{file:e.file,error:e.error})}
1maybeReportError(e){if(e instanceof f.Http.RequestError&&e.isConnectivityError)return;let t="Uploading error";if(e instanceof a.UploaderRequestError){if(M.includes(e.status))return;t+=` with status code ${e.status}`}this._app.rollbar.error(t,e)}nextTask(){if(this.updateGlobalState(),this.checkIfFinished(),this._uploading.length<4){let e=this._queue.shift();e&&this.processTask(e)}}reRetryFailedUploads(){this._reRetryQueue=this._failed.filter(e=>!e.isReRetried),this._failed=this._failed.filter(e=>e.isReRetried),_.Tracking.track("UploadReRetry"),this._reRetryQueue.forEach(e=>{e.isReRetried=!0,e.retryCount=0,this.uploadPhotoFromTask(e)})}pushPhotoInStates(e,t,r){let i=this._photosState();t?i.addToAlbum(t,[e],r):i.add(e)}updateGlobalState(){this._globalProgressState().update({uploadingFiles:this._uploading.slice(),uploadedFiles:this._uploaded.slice(),failedFiles:this._failed.slice(),queueFiles:this._queue.slice(),queueRetryFiles:this._retryQueue.slice()}),this._app.eventStream.push("uploadProgress",{stats:this.stats})}handleWindowUnload(e){return e.returnValue="Upload is not finished, you can lose data on close.",e.returnValue}handleUploadSessionStart(){_.Tracking.track("UploadSessionStart",{totalFiles:this.stats.totalFiles}),this._app.segmentAnalytics.track("Upload Session Start",{totalFiles:this.stats.totalFiles}),window.addEventListener("beforeunload",this.handleWindowUnload),this._sessionId=(0,v.generateUuidV4)(),this._sessionStartTime=Date.now(),this._sessionEndTime&&(this._sessionEndTime=void 0,this._uploaded=[],this._failed=[]),this.sendSessionStats()}handleUploadSessionEnd(){this.trackUploadSessionEnd(),this.cleanupUploadSession()}cleanupUploadSession(){window.removeEventListener("beforeunload",this.handleWindowUnload),this._sessionEndTime=Date.now(),this.sendSessionStats(),delete this._sessionId,delete this._sessionStartTime}trackUploadSessionEnd(){let{totalFiles:e,uploaded:t}=this.stats,r=this._sessionStartTime||Date.now(),i={totalFiles:e,uploaded:t,sessionDuration:((this._sessionEndTime||Date.now())-r)/1e3};if(this.hasAllFilesUploaded)_.Tracking.track("UploadSessionEndSuccess",i);else{let e=this.stats.totalFiles-this.stats.uploaded;_.Tracking.track("UploadSessionFailures",{failed:e}),_.Tracking.track("UploadSessionEnd",{...i,failed:e})}}sendSessionStats(){var e,t;if(!this._sessionId||!this._sessionStartTime)return;let r=this._uploading.concat(this._uploaded),s=((this._sessionEndTime||Date.now())-this._sessionStartTime)/1e3,a=r.reduce((e,t)=>e+t.uploadedBytes,0),o=Math.min(0x7fffffff,s?a/s:0),{queue:n,retryQueue:u,uploading:l,uploaded:d,failed:c}=this.stats;i.Api.Client.call(i.Api.Actions.CreateUploadSession,{uuid:this._sessionId,projectId:this._app.context.projectId,uploadType:this.getUploadType(),intendedCount:n+u+l+d+c,succeedCount:d,failedCount:c,averageSpeed:o,oauthToken:null==(e=this._credentials)?void 0:e.oauthToken,oauthTokenSecret:null==(t=this._credentials)?void 0:t.oauthSecret}).catch(e=>{this._app.rollbar.error("Unable to create upload session",e)})}getUploadType(){let e=[this._queue,this._uploading,this._uploaded,this._failed,this._retryQueue],t=e.some(e=>e.some(e=>e instanceof u.PhotoUploaderTask)),r=e.some(e=>e.some(e=>e instanceof n.FileUploaderTask));return t&&r?"mixed":t?"url":r?"file":"unknown"}checkIfFinished(){this.hasFinished?this.hasFailedUploadsToReRetry?this.reRetryFailedUploads():(this.handleUploadSessionEnd(),this._app.eventStream.push("uploadEnd",{stats:this.stats})):this._throttledSendSessionStats()}}},87647:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.UploaderRequestError=void 0,t.UploaderRequestError=class e extends Error{constructor(t,r){super(t),Object.setPrototypeOf(this,e.prototype),this.status=r}}},24167:function(e,t,r){"use strict";var i;Object.defineProperty(t,"__esModule",{value:!0}),t.AppUploaderHelpers=void 0;let s=r(7723);!function(e){function t(e){return e.type.startsWith("image/")}function r(e,t){return s.ArrayUtils.includes(t,i(e))}function i(e){let t=e.name.toLowerCase().split(".").slice(-1)[0];return`.${t}`}e.fileMimeTypeIsImage=t,e.fileExtensionInList=r,e.getFileExtension=i,e.isFileAnImage=function(e,i){return t(e)||r(e,i
1)}}(i||(t.AppUploaderHelpers=i={}))},40885:function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.FileUploaderTask=void 0;let i=r(32428),s=r(68780),a=r(9619);class o extends s.UploaderTask{constructor(e,t={}){super(),this.file=e,this._album=t.album,this.projectId=t.projectId,this.uploadOrigin=t.uploadOrigin,this.credentials=t.credentials}get id(){return this.file.name}get name(){return this.file.name}get source(){return"Device"}get progress(){return this.totalBytes?this.uploadedBytes/this.totalBytes:0}get fileSize(){return this.file.size}hasFile(e){return this.file.name===e.name&&this.file.size===e.size}execute(e,t,r,s){let o=this.credentials||e.stateLoader.get(a.SessionState).credentials;if(!o)throw Error("Credentials must be provided");let n=s;n||(n=this.projectId);let u=new i.UploadApi(e.settings.upload.baseUrl);return this._uploadPromise=u.uploadFile(this.file,o,t,n,this.retryCount>0||this.isReRetried,this.uploadOrigin),super.execute(e,t,r,s)}}t.FileUploaderTask=o},71421:function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.PhotoUploaderTask=void 0;let i=r(35804),s=r(32428),a=r(68780),o=r(9619);class n extends a.UploaderTask{constructor(e,t){super(),this.photoToUpload=e,this._album=t}get id(){return this.photoToUpload.clientId||this.photoToUpload.id.toString()}get name(){return this.photoToUpload.name}get source(){let{sourceId:e}=this.photoToUpload;return e?i.PhotoSource.fromId(e).name:"Unknown"}get progress(){return+!!this.photo}async execute(e,t,r,i){let a=new s.UploadApi(e.settings.upload.baseUrl),{credentials:n}=e.stateLoader.createProvider().get(o.SessionState);return this._uploadPromise=a.uploadPhoto(this.getUploadPhotoOptions(),n,t,i),await super.execute(e,t,r,i)}getUploadPhotoOptions(){var e;return{url:this.photoToUpload.getHighResolutionImage().url,downloadHeaders:this.photoToUpload.downloadHeaders,sourceId:this.photoToUpload.sourceId,externalId:this.photoToUpload.clientId,takenAt:null==(e=this.photoToUpload.takenAt)?void 0:e.toISOString()}}}t.PhotoUploaderTask=n},68780:function(e,t,r){"use strict";var i,s;Object.defineProperty(t,"__esModule",{value:!0}),t.UploaderTask=t.UploaderTaskError=void 0;let a=r(87647),o=r(88282),n=r(59158),u=r(86184);(s=i||(t.UploaderTaskError=i={}))[s.None=0]="None",s[s.UnsupportedFile=1]="UnsupportedFile",s[s.AssetNotFound=2]="AssetNotFound",s[s.Internal=3]="Internal",s[s.Timeout=4]="Timeout",t.UploaderTask=class{constructor(){this.retryCount=0,this.error=i.None,this.isReRetried=!1,this._uploadedBytes=0,this._totalBytes=0,this._averageSpeed=0}abort(){var e;null==(e=this._uploadPromise)||e.abort()}get uploadedBytes(){return this._uploadedBytes}get totalBytes(){return this._totalBytes}get photo(){return this._photo}get album(){return this._album}get averageSpeed(){return this._averageSpeed}reset(){this.retryCount=0,this._uploadedBytes=0}async execute(e,t,r,s){if(!this._uploadPromise)throw this.error=i.Timeout,Error("Initialize _uploadPromise first");this._startTimestamp=Date.now(),this.error=i.None;let d=e.stateLoader.createProvider().get(n.UploadProgressState,{id:this.id});this._uploadPromise.addEventListener("uploadProgress",u.FunctionUtils.throttle(e=>{let t=(Date.now()-this._startTimestamp)/1e3;this._averageSpeed=e.loaded/t,this._uploadedBytes=e.loaded,this._totalBytes=e.total,r(),d.updateProgress(this.progress)},1e3));let c=await this._uploadPromise;if(!c)throw this.error=i.Timeout,Error("Response is empty");let h=await c.getJson();if(!("photo"in h)){try{this.error=l[h.code]||i.Internal}catch(e){this.error=i.Internal}throw new a.UploaderRequestError("Uploader error",c.status)}return this._uploadedBytes=this._totalBytes,this._photo=o.PhotoModel.fromJsonApi(h.photo),this._photo}};let l={501:i.AssetNotFound,503:i.UnsupportedFile,415:i.UnsupportedFile,408:i.Timeout}},54593:function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.useOpenAuthDialog=d,t.useAuthCallback=function(e){let{onCall:t,onAuthenticated:r,onNotAuthenticated:s,origin:a}=e,n=d(),u=(0,o.useAppState)(l.SessionState,"isAuthenticated");return i.useCallback((...e)=>{null==t||t(...e);let i=r&&(()=>r(...e));u?null==i||i():(null==s||s(...e),n("signUp",i,a))},[u,s,r,t,n,a])};let i=r(67294),s=r(44995),a=r(290),o=r(39010),n=r(35490),u=r(31056),l=r(9619);function d(){let{isMixbookWebView:e}
1=(0,n.useUserAgent)(),{mobileAppBus:t}=(0,a.useAppContext)(),r=(0,o.useAppStateAction)(u.LayersState,"add");return i.useCallback((a,o,n,u)=>{e?t.requestAuthentication():r({name:"AuthDialog",type:"auth-dialog",content:i.createElement(s.AuthDialog,{tab:a,returnTo:u,onSuccess:o,origin:n})})},[e,r,t])}},55790:function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StudioSectionGenBooksLayout=function({data:e}){let t=(0,o.useStylesheet)(n.Stylesheet,n.Styles);return i.createElement(a.DynamicSection,{data:e,className:t.root},i.createElement(s.MagicFlow,null))};let i=r(67294),s=r(12697),a=r(67309),o=r(49499),n=r(4708)},39138:function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.OnlineState=void 0;let i=r(97582),s=r(23894),a=r(96091),o=r(89275),n=class extends a.State{get isOnline(){return this.state.isOnline}getInitialState(){return{isOnline:window.navigator.onLine}}stateDidLoad(){o.HtmlWindowUtils.withWindow(()=>{window.addEventListener("online",()=>{this.update({isOnline:!0})}),window.addEventListener("offline",()=>{this.update({isOnline:!1})})})}};t.OnlineState=n,t.OnlineState=i.__decorate([s.GlobalRegistry.register("onlineState")],n)},30070:function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.PhotoTargetState=void 0;let i=r(97582),s=r(23894),a=r(96091),o=r(22756),n=r(12521),u=class extends a.State{get targetAlbum(){return this.state.targetAlbum}get targetProject(){return this.state.targetProject}resetTargetAlbum(){this.update({targetAlbum:void 0,usedPhotosByTarget:this.getUsedPhotos({targetAlbum:void 0})})}setTargetAlbum(e){this.update({targetAlbum:e,usedPhotosByTarget:this.getUsedPhotos({targetAlbum:e})})}setTargetProject(e){this.update({targetProject:e,usedPhotosByTarget:this.getUsedPhotos({targetProject:e})})}isPhotoUsedByTarget(e){let{usedPhotosByTarget:t}=this.state;return t.some(e)}stateDidReceiveDependencies(){let{targetAlbum:e,targetProject:t}=this.state;this.update({usedPhotosByTarget:this.getUsedPhotos({targetAlbum:e,targetProject:t})})}getInitialState(){return{usedPhotosByTarget:[]}}getDependencies(e){let t=e.get(o.PhotosState),{isEditor:r}=e.get(n.PageState);return{isEditor:r,selectPhotos:t.select}}getUsedPhotos(e){let{targetAlbum:t,targetProject:r}=e,{isEditor:i,selectPhotos:s}=this.dependencies;return!i&&t?s({albumId:t.id})||[]:i&&r&&s({predicate:e=>r.photos.some(t=>t.id===e.id)})||[]}};t.PhotoTargetState=u,t.PhotoTargetState=i.__decorate([s.GlobalRegistry.register("photoTargetState")],u)},80652:function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.UploadGlobalProgressState=void 0;let i=r(97582),s=r(23894),a=r(96091),o=r(39138),n=r(7723),u=class extends a.State{get photos(){return n.ArrayUtils.compact(this.state.uploadedFiles.map(e=>e.photo))}get uploadingFiles(){return this.state.uploadingFiles}get status(){return 0===this.uploadedFilesCount&&0===this.totalFilesCount?"idle":this.uploadingFilesCount>0||this.queueRetryFilesCount>0?"progress":this.uploadedFilesCount===this.totalFilesCount?"success":"error"}get uploadingFilesCount(){return this.state.uploadingFiles.length}get uploadedFiles(){return this.state.uploadedFiles}get uploadedFilesCount(){return this.state.uploadedFiles.length}get failedFiles(){return this.state.failedFiles}get failedFilesCount(){return this.state.failedFiles.length}get queueFiles(){return this.state.queueFiles}get queueFilesCount(){return this.state.queueFiles.length}get queueRetryFiles(){return this.state.queueRetryFiles}get queueRetryFilesCount(){return this.state.queueRetryFiles.length}get totalFilesCount(){return this.uploadingFilesCount+this.uploadedFilesCount+this.failedFilesCount+this.queueFilesCount+this.queueRetryFilesCount}get progressPercentage(){let{uploadingFiles:e,uploadedFiles:t,failedFiles:r,queueFiles:i,queueRetryFiles:s}=this.state,a=e.concat(t,r,i,s);if(0===a.length)return 0;let o=100/a.length;return Math.round(a.reduce((e,t)=>e+o*t.progress,0))}get averageSpeed(){let{uploadedFiles:e,uploadingFiles:t}=this.state,{isOffline:r}=this.dependencies,i=e.concat(t),s=i.reduce((e,t)=>
1e+t.averageSpeed,0);return 0===i.length||r?0:Math.round(s/i.length)}get remainingTime(){let{queueFiles:e,uploadingFiles:t,queueRetryFiles:r,failedFiles:i}=this.state,{isOffline:s}=this.dependencies,a=e.concat(t,r,i),o=a.reduce((e,t)=>e+t.fileSize-t.uploadedBytes,0),{averageSpeed:n}=this;return 0===a.length||0===n||s?0:Math.round(o/this.averageSpeed)}update(e){return super.update(e)}getInitialState(){return{uploadingFiles:[],uploadedFiles:[],failedFiles:[],queueFiles:[],queueRetryFiles:[]}}getDependencies(e){return{isOffline:!e.get(o.OnlineState).isOnline}}};t.UploadGlobalProgressState=u,t.UploadGlobalProgressState=i.__decorate([s.GlobalRegistry.register("uploadGlobalState")],u)},59158:function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.UploadProgressState=void 0;let i=r(97582),s=r(23894),a=r(96091),o=class extends a.State{get progress(){return this.state.progress}updateProgress(e){this.update({progress:e})}getInitialState(){return{progress:0}}};t.UploadProgressState=o,t.UploadProgressState=i.__decorate([s.GlobalRegistry.register("uploadProgressState")],o)},79800:function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.UploaderState=void 0;let i=r(97582),s=r(23894),a=r(96091),o=r(19294),n=class extends a.State{get uploader(){return this.state.uploader}getDependencies(e,t){return{app:t}}getInitialState(){let{app:e}=this.dependencies;return{uploader:new o.AppUploader(e)}}};t.UploaderState=n,t.UploaderState=i.__decorate([s.GlobalRegistry.register("uploaderState")],n)},24497:function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ROUTES=void 0;let i=r(35744),s=r(56933),a=r(51336),o=r(28596),n=r(49933),u=r(36015),l=r(73764),d=r(23658),c=r(55884),h=r(65119),p=r(16998),f=r(28134),g=r(13346),m=r(39292),b=r(81985),_=r(47171),v=r(18030),S=r(84585),M=r(28378),y=r(77222),P=r(90198),F=r(72913),A=r(4020);t.ROUTES=[{route:n.InvitePurchaseRoute,pageName:"InvitePurchasePage"},{route:F.BookPreviewRoute,pageName:"BookPreviewPage"},{route:F.CalendarPreviewRoute,pageName:"CalendarPreviewPage"},{route:P.PhotoSourceAuthCallbackRoute,pageName:"PhotoSourceAuthCallbackPage"},{route:i.AcceptCollaborateRoute,pageName:"AcceptCollaboratePage"},{route:s.AuthEditorRoute,pageName:"AuthEditorPage"},{route:a.EmbedEditorRoute,pageName:"EmbedEditorPage"},{route:o.EmbedTrustPilotWidgetRoute,pageName:"EmbedTrustPilotWidgetPage"},{route:d.MyCartAddRoute,pageName:"MyCartAddPage"},{route:l.MyCartRoute,pageName:"MyCartPage"},{route:c.MyCartCheckoutRoute,pageName:"MyCartCheckoutPage"},{route:g.MyOrderRoute,pageName:"MyOrderPage"},{route:m.MyOrderPrintRoute,pageName:"MyOrderPrintPage"},{route:b.MyPhotosRoute,pageName:"MyPhotosPage"},{route:v.MyProjectContributeRoute,pageName:"MyProjectContributePage"},{route:h.MyInvitationPageRoute,pageName:"MyInvitationPage"},{route:_.MyProjectRoute,pageName:"MyProjectPage"},{route:S.MyProjectEditRoute,pageName:"MyProjectEditPage"},{route:M.MyShipmentTrackingRoute,pageName:"MyShipmentTrackingPage"},{route:u.MyAccountDeleteRoute,pageName:"MyAccountDeletePage"},{route:p.MyMemoriesEditRoute,pageName:"MyMemoriesEditPage"},{route:f.MyMemoriesPreviewRoute,pageName:"MyMemoriesPreviewPage"},{route:A.MobileUploadRoute,pageName:"MobileUploadPage"},{route:y.AuthorizeRoute,pageName:"AuthorizePage"}]},12313:function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.callServerAction=a;let i=r(77923),s=r(11780);async function a(e,t){let r=await fetch((0,s.setUrlParams)(i.SERVER_ACTION_PATH,{"target-server":"site"}),{method:i.SERVER_ACTION_METHOD,headers:{"content-type":i.SERVER_ACTION_CONTENT_TYPE},body:JSON.stringify({action:e,params:t})});if(!r.ok)throw Error(`Action failed: ${e}`);return await r.json()}},77923:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SERVER_ACTION_PATH=t.SERVER_ACTION_CONTENT_TYPE=t.SERVER_ACTION_METHOD=void 0,t.SERVER_ACTION_METHOD="POST",t.SERVER_ACTION_CONTENT_TYPE="application/json",t.SERVER_ACTION_PATH="/~/action"},73178:function(e,t,r){"use strict";var i,s;Object.defineProperty(t,"__esModule",{value:!0}),t.EditorCapabilities=void 0;let a=r(51206),o=r(76783),n=r(20210),u=r(89275),l=r(69133);t.EditorCapabilities=class e{static build(){return new e(u.HtmlWindowUtils.exists()?window.navigator.userAgent:"dummy-uaString")}constructor(e){if(this.uaString=e,!u.HtmlWindowUtils.exists())return;this.browserParser=(0,a.getParser)(e)}get isDesktopDevice(){var e;return(null==(e=this.browserParser)?void 0:e.getPlatformType(!0))==="desktop"}get isTabletDevice(){var e;return(null==(e=this.browserParser)?void 0:e.getPlatformType(!0))==="tablet"}get isIpad(){return this.isIPadOnIOS||this.isIPadOnIPadOS}get isMobileDevice(){var e;return(null==(e=this.browserParser)?void 0:e.getPlatformType(!0))==="mobile"}get isiOS(){var e;return(null==(e=this.browserParser)?void 0:e.getOSName(!0))==="ios"}get isAndroid(){var e;return(null==(e=this.browserParser)?void 0:e.getOSName(!0))==="android"}get isIe(){var e;return(null==(e=this.browserParser)?void 0:e.getBrowserName(!0))==="internet explorer"}get isChrome(){var e;return(null==(e=this.browserParser)?void 0:e.getBrowserName(!0))==="chrome"}
1get isEdge(){var e;return(null==(e=this.browserParser)?void 0:e.getBrowserName(!0))==="microsoft edge"}get isFirefox(){var e;return(null==(e=this.browserParser)?void 0:e.getBrowserName(!0))==="firefox"}get isSafari(){var e;return(null==(e=this.browserParser)?void 0:e.getBrowserName(!0))==="safari"}get isIPadOnIOS(){var e;return(null==(e=this.browserParser)?void 0:e.getPlatform().model)==="iPad"}get isIPadOnIPadOS(){var e;return(null==(e=this.browserParser)?void 0:e.getPlatform().vendor)==="Apple"&&this.isDesktopDevice&&this.doesSupportTouch}get isSafariOnIPadOS(){return this.isSafari&&this.isIPadOnIPadOS}get isFacebook(){return[/\[FB.{0,300};(FBAV)\/(\d+)(?:\.(\d+)|)(?:\.(\d+)|)/,/\[FB.{0,300};/].some(e=>e.test(this.uaString))}get isInstagram(){return/Mozilla.{1,200}Mobile.{1,100}(Instagram).(\d+)\.(\d+)\.(\d+)/.test(this.uaString)}get isTikTok(){return/ByteLocale/.test(this.uaString)}get isPinterest(){return/Pinterest/.test(this.uaString)}get isInAppBrowser(){return this.isFacebook||this.isInstagram||this.isTikTok||this.isPinterest}get isMixbookWebView(){return this.uaString.includes("Mixbook/")}get isModernMixbookWebView(){return!!(this.mixbookWebViewVersion&&l.SemverUtils.gte(this.mixbookWebViewVersion,"3.0.0"))}get mixbookWebViewVersion(){var e;return null==(e=this.uaString.match(/Mixbook\/(\S+)/))?void 0:e[1]}get supportsWebp(){return this.isChrome||this.isFirefox||this.isEdge||this.isiOS&&this.isSafariNewerThan(14)||this.isDesktopDevice&&this.isSafari&&this.isSafariNewerThan(16)}get doesSupportTouch(){return this.getDoesSupportTouch()}get doesSupportFeDropShadow(){return!(this.isEdge||this.isIe)}get isTouchDevice(){return(0,n.isTouchDevice)()}get supportsGooglePicker(){var e;if(!this.isMixbookWebView)return!0;let t=null==(e=this.uaString.match(/Mixbook\/(\d+\.\d+\.\d+)/))?void 0:e[1];if(!t)throw Error(`Unable to parse Mixbook app version from user agent: ${this.uaString}`);return l.SemverUtils.gte(t,"4.1.9")}get edgeVersionNumber(){var e;if(this.isEdge)return parseInt((null==(e=this.browserParser)?void 0:e.getBrowserVersion())||"0",10)}get androidVersionNumber(){var e;return this.isAndroid?parseInt((null==(e=this.browserParser)?void 0:e.getOSVersion())||"0",10):0}get isSafari11(){var e;return(null==(e=this.browserParser)?void 0:e.satisfies({safari:"11"}))||!1}get screenAspectRatio(){return u.HtmlWindowUtils.exists()?window.screen.width/window.screen.height:1}getDoesSupportTouch(){return!!u.HtmlWindowUtils.exists()&&"ontouchstart"in window}isSafariNewerThan(e){var t;return(null==(t=this.browserParser)?void 0:t.satisfies({safari:`>=${e}`}))||!1}get isTablet(){return this.isTabletDevice||this.isSafariOnIPadOS}get isMobileStudio(){return this.isMobile||this.isTablet}get isMobile(){return this.isMobileDevice||this.isMixbookWebView}get isDesktopStudio(){return!this.isMobileStudio}get editorExperience(){return this.isMobileStudio?i.Mobile:i.Desktop}get experienceId(){let{ExperienceId:e}=o.Api.Registry.GetProjectEditAccess;return this.editorExperience===i.Mobile?e.MobileHtmlEditor:e.HtmlEditor}},(s=i||(i={})).Mobile="Mobile",s.Desktop="Desktop"},69133:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SemverUtils=void 0;var r,i=r||(t.SemverUtils=r={});function s(e){var t,r,i;let[s,a,o]=e.split(".");return[null!=(t=Number(s))?t:0,null!=(r=Number(a))?r:0,null!=(i=Number(o))?i:0]}i.gte=function(e,t){let[r,i,a]=s(e),[o,n,u]=s(t);return r!==o?r>o:i!==n?i>n:a>=u},i.parse=s},27308:function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),r(97582),t.Styles={root:"components-embedEditor-components-magicFlow",container:"components-embedEditor-components-magicFlow-container"},t.Stylesheet={id:"src/app/components/embedEditor/components/magicFlow.css",index:793,toString:function(e){return r(87537),".mx-site .components-embedEditor-components-magicFlow{align-items:center;display:flex;height:100%;justify-content:center;position:relative}.mx-site .components-embedEditor-components-magicFlow-container{height:100%;left:0;position:absolute;top:0;width:100%}"}}},4708:function(e,t,r){"use strict";
1Object.defineProperty(t,"__esModule",{value:!0}),r(97582),t.Styles={root:"sections-studio-genBooks-studioSectionGenBooksLayout"},t.Stylesheet={id:"src/app/sections/studio/genBooks/studioSectionGenBooksLayout.css",index:791,toString:function(e){return r(87537),".mx-site .sections-studio-genBooks-studioSectionGenBooksLayout{flex:1}"}}}}]);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.