diff --git a/3593e9597659f01632f7c3576f9dbb5ef523d6b7-eafd487b38767ad0ca55.js b/3593e9597659f01632f7c3576f9dbb5ef523d6b7-eafd487b38767ad0ca55.js new file mode 100644 index 0000000..8e10c78 --- /dev/null +++ b/3593e9597659f01632f7c3576f9dbb5ef523d6b7-eafd487b38767ad0ca55.js @@ -0,0 +1,3 @@ +/*! For license information please see 3593e9597659f01632f7c3576f9dbb5ef523d6b7-eafd487b38767ad0ca55.js.LICENSE.txt */ +"use strict";(self.webpackChunkppx_gatsby_blog=self.webpackChunkppx_gatsby_blog||[]).push([[940],{5850:function(e,t,n){n.d(t,{Z:function(){return te}});var a=n(7294);function r(e){var t,n,a="";if("string"==typeof e||"number"==typeof e)a+=e;else if("object"==typeof e)if(Array.isArray(e))for(t=0;tt in e?g(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,v=(e,t)=>{for(var n in t||(t={}))k.call(t,n)&&w(e,n,t[n]);if(m)for(var n of m(t))E.call(t,n)&&w(e,n,t[n]);return e},A=(e,t)=>d(e,f(t)),x=(e,t)=>{var n={};for(var a in e)k.call(e,a)&&t.indexOf(a)<0&&(n[a]=e[a]);if(null!=e&&m)for(var a of m(e))t.indexOf(a)<0&&E.call(e,a)&&(n[a]=e[a]);return n},S=(o={"../../node_modules/.pnpm/prismjs@1.29.0_patch_hash=vrxx3pzkik6jpmgpayxfjunetu/node_modules/prismjs/prism.js"(e,t){var n=function(){var e=/(?:^|\s)lang(?:uage)?-([\w-]+)(?=\s|$)/i,t=0,n={},a={util:{encode:function e(t){return t instanceof r?new r(t.type,e(t.content),t.alias):Array.isArray(t)?t.map(e):t.replace(/&/g,"&").replace(/=p.reach);A+=v.value.length,v=v.next){var x=v.value;if(t.length>e.length)return;if(!(x instanceof r)){var S,F=1;if(h){if(!(S=o(w,A,e,m))||S.index>=e.length)break;var R=S.index,T=S.index+S[0].length,_=A;for(_+=v.value.length;R>=_;)_+=(v=v.next).value.length;if(A=_-=v.value.length,v.value instanceof r)continue;for(var I=v;I!==t.tail&&(_p.reach&&(p.reach=C);var D=v.prev;if(L&&(D=i(t,D,L),A+=L.length),c(t,D,F),v=i(t,D,new r(g,b?a.tokenize(O,b):O,k,O)),N&&i(t,v,N),F>1){var B={cause:g+","+y,reach:C};s(e,t,n,v.prev,A,B),p&&B.reach>p.reach&&(p.reach=B.reach)}}}}}}function l(){var e={value:null,prev:null,next:null},t={value:null,prev:e,next:null};e.next=t,this.head=e,this.tail=t,this.length=0}function i(e,t,n){var a=t.next,r={value:n,prev:t,next:a};return t.next=r,a.prev=r,e.length++,r}function c(e,t,n){for(var a=t.next,r=0;r"+o.content+""},a}();t.exports=n,n.default=n}},function(){return s||(0,o[b(o)[0]])((s={exports:{}}).exports,s),s.exports}),F=((e,t,n)=>(n=null!=e?p(h(e)):{},((e,t,n,a)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let r of b(t))k.call(e,r)||r===n||g(e,r,{get:()=>t[r],enumerable:!(a=y(t,r))||a.enumerable});return e})(!t&&e&&e.__esModule?n:g(n,"default",{value:e,enumerable:!0}),e)))(S());!function(e){var t={pattern:/\\[\\(){}[\]^$+*?|.]/,alias:"escape"},n=/\\(?:x[\da-fA-F]{2}|u[\da-fA-F]{4}|u\{[\da-fA-F]+\}|0[0-7]{0,2}|[123][0-7]{2}|c[a-zA-Z]|.)/,a="(?:[^\\\\-]|"+n.source+")",r=(a=RegExp(a+"-"+a),{pattern:/(<|')[^<>']+(?=[>']$)/,lookbehind:!0,alias:"variable"});e.languages.regex={"char-class":{pattern:/((?:^|[^\\])(?:\\\\)*)\[(?:[^\\\]]|\\[\s\S])*\]/,lookbehind:!0,inside:{"char-class-negation":{pattern:/(^\[)\^/,lookbehind:!0,alias:"operator"},"char-class-punctuation":{pattern:/^\[|\]$/,alias:"punctuation"},range:{pattern:a,inside:{escape:n,"range-punctuation":{pattern:/-/,alias:"operator"}}},"special-escape":t,"char-set":{pattern:/\\[wsd]|\\p\{[^{}]+\}/i,alias:"class-name"},escape:n}},"special-escape":t,"char-set":{pattern:/\.|\\[wsd]|\\p\{[^{}]+\}/i,alias:"class-name"},backreference:[{pattern:/\\(?![123][0-7]{2})[1-9]/,alias:"keyword"},{pattern:/\\k<[^<>']+>/,alias:"keyword",inside:{"group-name":r}}],anchor:{pattern:/[$^]|\\[ABbGZz]/,alias:"function"},escape:n,group:[{pattern:/\((?:\?(?:<[^<>']+>|'[^<>']+'|[>:]|]=?|[!=]=?=?|--?|\+\+?|&&?|\|\|?|[?*/~^%]/,punctuation:/[{}[\];(),.:]/},F.languages.javascript=F.languages.extend("clike",{"class-name":[F.languages.clike["class-name"],{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$A-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\.(?:constructor|prototype))/,lookbehind:!0}],keyword:[{pattern:/((?:^|\})\s*)catch\b/,lookbehind:!0},{pattern:/(^|[^.]|\.\.\.\s*)\b(?:as|assert(?=\s*\{)|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally(?=\s*(?:\{|$))|for|from(?=\s*(?:['"]|$))|function|(?:get|set)(?=\s*(?:[#\[$\w\xA0-\uFFFF]|$))|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/,lookbehind:!0}],function:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,number:{pattern:RegExp(/(^|[^\w$])/.source+"(?:"+/NaN|Infinity/.source+"|"+/0[bB][01]+(?:_[01]+)*n?/.source+"|"+/0[oO][0-7]+(?:_[0-7]+)*n?/.source+"|"+/0[xX][\dA-Fa-f]+(?:_[\dA-Fa-f]+)*n?/.source+"|"+/\d+(?:_\d+)*n/.source+"|"+/(?:\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\.\d+(?:_\d+)*)(?:[Ee][+-]?\d+(?:_\d+)*)?/.source+")"+/(?![\w$])/.source),lookbehind:!0},operator:/--|\+\+|\*\*=?|=>|&&=?|\|\|=?|[!=]==|<<=?|>>>?=?|[-+*/%&|^!=<>]=?|\.{3}|\?\?=?|\?\.?|[~:]/}),F.languages.javascript["class-name"][0].pattern=/(\b(?:class|extends|implements|instanceof|interface|new)\s+)[\w.\\]+/,F.languages.insertBefore("javascript","keyword",{regex:{pattern:RegExp(/((?:^|[^$\w\xA0-\uFFFF."'\])\s]|\b(?:return|yield))\s*)/.source+/\//.source+"(?:"+/(?:\[(?:[^\]\\\r\n]|\\.)*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}/.source+"|"+/(?:\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.)*\])*\])*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}v[dgimyus]{0,7}/.source+")"+/(?=(?:\s|\/\*(?:[^*]|\*(?!\/))*\*\/)*(?:$|[\r\n,.;:})\]]|\/\/))/.source),lookbehind:!0,greedy:!0,inside:{"regex-source":{pattern:/^(\/)[\s\S]+(?=\/[a-z]*$)/,lookbehind:!0,alias:"language-regex",inside:F.languages.regex},"regex-delimiter":/^\/|\/$/,"regex-flags":/^[a-z]+$/}},"function-variable":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)\s*=>))/,alias:"function"},parameter:[{pattern:/(function(?:\s+(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)?\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\))/,lookbehind:!0,inside:F.languages.javascript},{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=>)/i,lookbehind:!0,inside:F.languages.javascript},{pattern:/(\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*=>)/,lookbehind:!0,inside:F.languages.javascript},{pattern:/((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*)\(\s*|\]\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*\{)/,lookbehind:!0,inside:F.languages.javascript}],constant:/\b[A-Z](?:[A-Z_]|\dx?)*\b/}),F.languages.insertBefore("javascript","string",{hashbang:{pattern:/^#!.*/,greedy:!0,alias:"comment"},"template-string":{pattern:/`(?:\\[\s\S]|\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}|(?!\$\{)[^\\`])*`/,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:"string"},interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}/,lookbehind:!0,inside:{"interpolation-punctuation":{pattern:/^\$\{|\}$/,alias:"punctuation"},rest:F.languages.javascript}},string:/[\s\S]+/}},"string-property":{pattern:/((?:^|[,{])[ \t]*)(["'])(?:\\(?:\r\n|[\s\S])|(?!\2)[^\\\r\n])*\2(?=\s*:)/m,lookbehind:!0,greedy:!0,alias:"property"}}),F.languages.insertBefore("javascript","operator",{"literal-property":{pattern:/((?:^|[,{])[ \t]*)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*:)/m,lookbehind:!0,alias:"property"}}),F.languages.markup&&(F.languages.markup.tag.addInlined("script","javascript"),F.languages.markup.tag.addAttribute(/on(?:abort|blur|change|click|composition(?:end|start|update)|dblclick|error|focus(?:in|out)?|key(?:down|up)|load|mouse(?:down|enter|leave|move|out|over|up)|reset|resize|scroll|select|slotchange|submit|unload|wheel)/.source,"javascript")),F.languages.js=F.languages.javascript,F.languages.actionscript=F.languages.extend("javascript",{keyword:/\b(?:as|break|case|catch|class|const|default|delete|do|dynamic|each|else|extends|final|finally|for|function|get|if|implements|import|in|include|instanceof|interface|internal|is|namespace|native|new|null|override|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|use|var|void|while|with)\b/,operator:/\+\+|--|(?:[+\-*\/%^]|&&?|\|\|?|<>?>?|[!=]=?)=?|[~?@]/}),F.languages.actionscript["class-name"].alias="function",delete F.languages.actionscript.parameter,delete F.languages.actionscript["literal-property"],F.languages.markup&&F.languages.insertBefore("actionscript","string",{xml:{pattern:/(^|[^.])<\/?\w+(?:\s+[^\s>\/=]+=("|')(?:\\[\s\S]|(?!\2)[^\\])*\2)*\s*\/?>/,lookbehind:!0,inside:F.languages.markup}}),i=/#(?!\{).+/,c={pattern:/#\{[^}]+\}/,alias:"variable"},(l=F).languages.coffeescript=l.languages.extend("javascript",{comment:i,string:[{pattern:/'(?:\\[\s\S]|[^\\'])*'/,greedy:!0},{pattern:/"(?:\\[\s\S]|[^\\"])*"/,greedy:!0,inside:{interpolation:c}}],keyword:/\b(?:and|break|by|catch|class|continue|debugger|delete|do|each|else|extend|extends|false|finally|for|if|in|instanceof|is|isnt|let|loop|namespace|new|no|not|null|of|off|on|or|own|return|super|switch|then|this|throw|true|try|typeof|undefined|unless|until|when|while|window|with|yes|yield)\b/,"class-member":{pattern:/@(?!\d)\w+/,alias:"variable"}}),l.languages.insertBefore("coffeescript","comment",{"multiline-comment":{pattern:/###[\s\S]+?###/,alias:"comment"},"block-regex":{pattern:/\/{3}[\s\S]*?\/{3}/,alias:"regex",inside:{comment:i,interpolation:c}}}),l.languages.insertBefore("coffeescript","string",{"inline-javascript":{pattern:/`(?:\\[\s\S]|[^\\`])*`/,inside:{delimiter:{pattern:/^`|`$/,alias:"punctuation"},script:{pattern:/[\s\S]+/,alias:"language-javascript",inside:l.languages.javascript}}},"multiline-string":[{pattern:/'''[\s\S]*?'''/,greedy:!0,alias:"string"},{pattern:/"""[\s\S]*?"""/,greedy:!0,alias:"string",inside:{interpolation:c}}]}),l.languages.insertBefore("coffeescript","keyword",{property:/(?!\d)\w+(?=\s*:(?!:))/}),delete l.languages.coffeescript["template-string"],l.languages.coffee=l.languages.coffeescript,function(e){var t=e.languages.javadoclike={parameter:{pattern:/(^[\t ]*(?:\/{3}|\*|\/\*\*)\s*@(?:arg|arguments|param)\s+)\w+/m,lookbehind:!0},keyword:{pattern:/(^[\t ]*(?:\/{3}|\*|\/\*\*)\s*|\{)@[a-z][a-zA-Z-]+\b/m,lookbehind:!0},punctuation:/[{}]/};Object.defineProperty(t,"addSupport",{value:function(t,n){(t="string"==typeof t?[t]:t).forEach((function(t){var a=function(e){e.inside||(e.inside={}),e.inside.rest=n},r="doc-comment";if(o=e.languages[t]){var o,s=o[r];if((s=s||(o=e.languages.insertBefore(t,"comment",{"doc-comment":{pattern:/(^|[^\\])\/\*\*[^/][\s\S]*?(?:\*\/|$)/,lookbehind:!0,alias:"comment"}}))[r])instanceof RegExp&&(s=o[r]={pattern:s}),Array.isArray(s))for(var l=0,i=s.length;l|\+|~|\|\|/,punctuation:/[(),]/}},e.languages.css.atrule.inside["selector-function-argument"].inside=t,e.languages.insertBefore("css","property",{variable:{pattern:/(^|[^-\w\xA0-\uFFFF])--(?!\s)[-_a-z\xA0-\uFFFF](?:(?!\s)[-\w\xA0-\uFFFF])*/i,lookbehind:!0}}),{pattern:/(\b\d+)(?:%|[a-z]+(?![\w-]))/,lookbehind:!0}),{pattern:/(^|[^\w.-])-?(?:\d+(?:\.\d+)?|\.\d+)/,lookbehind:!0});e.languages.insertBefore("css","function",{operator:{pattern:/(\s)[+\-*\/](?=\s)/,lookbehind:!0},hexcode:{pattern:/\B#[\da-f]{3,8}\b/i,alias:"color"},color:[{pattern:/(^|[^\w-])(?:AliceBlue|AntiqueWhite|Aqua|Aquamarine|Azure|Beige|Bisque|Black|BlanchedAlmond|Blue|BlueViolet|Brown|BurlyWood|CadetBlue|Chartreuse|Chocolate|Coral|CornflowerBlue|Cornsilk|Crimson|Cyan|DarkBlue|DarkCyan|DarkGoldenRod|DarkGr[ae]y|DarkGreen|DarkKhaki|DarkMagenta|DarkOliveGreen|DarkOrange|DarkOrchid|DarkRed|DarkSalmon|DarkSeaGreen|DarkSlateBlue|DarkSlateGr[ae]y|DarkTurquoise|DarkViolet|DeepPink|DeepSkyBlue|DimGr[ae]y|DodgerBlue|FireBrick|FloralWhite|ForestGreen|Fuchsia|Gainsboro|GhostWhite|Gold|GoldenRod|Gr[ae]y|Green|GreenYellow|HoneyDew|HotPink|IndianRed|Indigo|Ivory|Khaki|Lavender|LavenderBlush|LawnGreen|LemonChiffon|LightBlue|LightCoral|LightCyan|LightGoldenRodYellow|LightGr[ae]y|LightGreen|LightPink|LightSalmon|LightSeaGreen|LightSkyBlue|LightSlateGr[ae]y|LightSteelBlue|LightYellow|Lime|LimeGreen|Linen|Magenta|Maroon|MediumAquaMarine|MediumBlue|MediumOrchid|MediumPurple|MediumSeaGreen|MediumSlateBlue|MediumSpringGreen|MediumTurquoise|MediumVioletRed|MidnightBlue|MintCream|MistyRose|Moccasin|NavajoWhite|Navy|OldLace|Olive|OliveDrab|Orange|OrangeRed|Orchid|PaleGoldenRod|PaleGreen|PaleTurquoise|PaleVioletRed|PapayaWhip|PeachPuff|Peru|Pink|Plum|PowderBlue|Purple|RebeccaPurple|Red|RosyBrown|RoyalBlue|SaddleBrown|Salmon|SandyBrown|SeaGreen|SeaShell|Sienna|Silver|SkyBlue|SlateBlue|SlateGr[ae]y|Snow|SpringGreen|SteelBlue|Tan|Teal|Thistle|Tomato|Transparent|Turquoise|Violet|Wheat|White|WhiteSmoke|Yellow|YellowGreen)(?![\w-])/i,lookbehind:!0},{pattern:/\b(?:hsl|rgb)\(\s*\d{1,3}\s*,\s*\d{1,3}%?\s*,\s*\d{1,3}%?\s*\)\B|\b(?:hsl|rgb)a\(\s*\d{1,3}\s*,\s*\d{1,3}%?\s*,\s*\d{1,3}%?\s*,\s*(?:0|0?\.\d+|1)\s*\)\B/i,inside:{unit:t,number:n,function:/[\w-]+(?=\()/,punctuation:/[(),]/}}],entity:/\\[\da-f]{1,8}/i,unit:t,number:n})}(F),function(e){var t=/[*&][^\s[\]{},]+/,n=/!(?:<[\w\-%#;/?:@&=+$,.!~*'()[\]]+>|(?:[a-zA-Z\d-]*!)?[\w\-%#;/?:@&=+$.~*'()]+)?/,a="(?:"+n.source+"(?:[ \t]+"+t.source+")?|"+t.source+"(?:[ \t]+"+n.source+")?)",r=/(?:[^\s\x00-\x08\x0e-\x1f!"#%&'*,\-:>?@[\]`{|}\x7f-\x84\x86-\x9f\ud800-\udfff\ufffe\uffff]|[?:-])(?:[ \t]*(?:(?![#:])|:))*/.source.replace(//g,(function(){return/[^\s\x00-\x08\x0e-\x1f,[\]{}\x7f-\x84\x86-\x9f\ud800-\udfff\ufffe\uffff]/.source})),o=/"(?:[^"\\\r\n]|\\.)*"|'(?:[^'\\\r\n]|\\.)*'/.source;function s(e,t){t=(t||"").replace(/m/g,"")+"m";var n=/([:\-,[{]\s*(?:\s<>[ \t]+)?)(?:<>)(?=[ \t]*(?:$|,|\]|\}|(?:[\r\n]\s*)?#))/.source.replace(/<>/g,(function(){return a})).replace(/<>/g,(function(){return e}));return RegExp(n,t)}e.languages.yaml={scalar:{pattern:RegExp(/([\-:]\s*(?:\s<>[ \t]+)?[|>])[ \t]*(?:((?:\r?\n|\r)[ \t]+)\S[^\r\n]*(?:\2[^\r\n]+)*)/.source.replace(/<>/g,(function(){return a}))),lookbehind:!0,alias:"string"},comment:/#.*/,key:{pattern:RegExp(/((?:^|[:\-,[{\r\n?])[ \t]*(?:<>[ \t]+)?)<>(?=\s*:\s)/.source.replace(/<>/g,(function(){return a})).replace(/<>/g,(function(){return"(?:"+r+"|"+o+")"}))),lookbehind:!0,greedy:!0,alias:"atrule"},directive:{pattern:/(^[ \t]*)%.+/m,lookbehind:!0,alias:"important"},datetime:{pattern:s(/\d{4}-\d\d?-\d\d?(?:[tT]|[ \t]+)\d\d?:\d{2}:\d{2}(?:\.\d*)?(?:[ \t]*(?:Z|[-+]\d\d?(?::\d{2})?))?|\d{4}-\d{2}-\d{2}|\d\d?:\d{2}(?::\d{2}(?:\.\d*)?)?/.source),lookbehind:!0,alias:"number"},boolean:{pattern:s(/false|true/.source,"i"),lookbehind:!0,alias:"important"},null:{pattern:s(/null|~/.source,"i"),lookbehind:!0,alias:"important"},string:{pattern:s(o),lookbehind:!0,greedy:!0},number:{pattern:s(/[+-]?(?:0x[\da-f]+|0o[0-7]+|(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?|\.inf|\.nan)/.source,"i"),lookbehind:!0},tag:n,important:t,punctuation:/---|[:[\]{}\-,|>?]|\.\.\./},e.languages.yml=e.languages.yaml}(F),F.languages.markup={comment:{pattern://,greedy:!0},prolog:{pattern:/<\?[\s\S]+?\?>/,greedy:!0},doctype:{pattern:/"'[\]]|"[^"]*"|'[^']*')+(?:\[(?:[^<"'\]]|"[^"]*"|'[^']*'|<(?!!--)|)*\]\s*)?>/i,greedy:!0,inside:{"internal-subset":{pattern:/(^[^\[]*\[)[\s\S]+(?=\]>$)/,lookbehind:!0,greedy:!0,inside:null},string:{pattern:/"[^"]*"|'[^']*'/,greedy:!0},punctuation:/^$|[[\]]/,"doctype-tag":/^DOCTYPE/i,name:/[^\s<>'"]+/}},cdata:{pattern://i,greedy:!0},tag:{pattern:/<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?\s*\/?>/,greedy:!0,inside:{tag:{pattern:/^<\/?[^\s>\/]+/,inside:{punctuation:/^<\/?/,namespace:/^[^\s>\/:]+:/}},"special-attr":[],"attr-value":{pattern:/=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/,inside:{punctuation:[{pattern:/^=/,alias:"attr-equals"},{pattern:/^(\s*)["']|["']$/,lookbehind:!0}]}},punctuation:/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,inside:{namespace:/^[^\s>\/:]+:/}}}},entity:[{pattern:/&[\da-z]{1,8};/i,alias:"named-entity"},/&#x?[\da-f]{1,8};/i]},F.languages.markup.tag.inside["attr-value"].inside.entity=F.languages.markup.entity,F.languages.markup.doctype.inside["internal-subset"].inside=F.languages.markup,F.hooks.add("wrap",(function(e){"entity"===e.type&&(e.attributes.title=e.content.replace(/&/,"&"))})),Object.defineProperty(F.languages.markup.tag,"addInlined",{value:function(e,t){var n;(t=((n=((n={})["language-"+t]={pattern:/(^$)/i,lookbehind:!0,inside:F.languages[t]},n.cdata=/^$/i,{"included-cdata":{pattern://i,inside:n}}))["language-"+t]={pattern:/[\s\S]+/,inside:F.languages[t]},{}))[e]={pattern:RegExp(/(<__[^>]*>)(?:))*\]\]>|(?!)/.source.replace(/__/g,(function(){return e})),"i"),lookbehind:!0,greedy:!0,inside:n},F.languages.insertBefore("markup","cdata",t)}}),Object.defineProperty(F.languages.markup.tag,"addAttribute",{value:function(e,t){F.languages.markup.tag.inside["special-attr"].push({pattern:RegExp(/(^|["'\s])/.source+"(?:"+e+")"+/\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))/.source,"i"),lookbehind:!0,inside:{"attr-name":/^[^\s=]+/,"attr-value":{pattern:/=[\s\S]+/,inside:{value:{pattern:/(^=\s*(["']|(?!["'])))\S[\s\S]*(?=\2$)/,lookbehind:!0,alias:[t,"language-"+t],inside:F.languages[t]},punctuation:[{pattern:/^=/,alias:"attr-equals"},/"|'/]}}}})}}),F.languages.html=F.languages.markup,F.languages.mathml=F.languages.markup,F.languages.svg=F.languages.markup,F.languages.xml=F.languages.extend("markup",{}),F.languages.ssml=F.languages.xml,F.languages.atom=F.languages.xml,F.languages.rss=F.languages.xml,function(e){var t=/(?:\\.|[^\\\n\r]|(?:\n|\r\n?)(?![\r\n]))/.source;function n(e){return e=e.replace(//g,(function(){return t})),RegExp(/((?:^|[^\\])(?:\\{2})*)/.source+"(?:"+e+")")}var a=/(?:\\.|``(?:[^`\r\n]|`(?!`))+``|`[^`\r\n]+`|[^\\|\r\n`])+/.source,r=/\|?__(?:\|__)+\|?(?:(?:\n|\r\n?)|(?![\s\S]))/.source.replace(/__/g,(function(){return a})),o=/\|?[ \t]*:?-{3,}:?[ \t]*(?:\|[ \t]*:?-{3,}:?[ \t]*)+\|?(?:\n|\r\n?)/.source,s=(e.languages.markdown=e.languages.extend("markup",{}),e.languages.insertBefore("markdown","prolog",{"front-matter-block":{pattern:/(^(?:\s*[\r\n])?)---(?!.)[\s\S]*?[\r\n]---(?!.)/,lookbehind:!0,greedy:!0,inside:{punctuation:/^---|---$/,"front-matter":{pattern:/\S+(?:\s+\S+)*/,alias:["yaml","language-yaml"],inside:e.languages.yaml}}},blockquote:{pattern:/^>(?:[\t ]*>)*/m,alias:"punctuation"},table:{pattern:RegExp("^"+r+o+"(?:"+r+")*","m"),inside:{"table-data-rows":{pattern:RegExp("^("+r+o+")(?:"+r+")*$"),lookbehind:!0,inside:{"table-data":{pattern:RegExp(a),inside:e.languages.markdown},punctuation:/\|/}},"table-line":{pattern:RegExp("^("+r+")"+o+"$"),lookbehind:!0,inside:{punctuation:/\||:?-{3,}:?/}},"table-header-row":{pattern:RegExp("^"+r+"$"),inside:{"table-header":{pattern:RegExp(a),alias:"important",inside:e.languages.markdown},punctuation:/\|/}}}},code:[{pattern:/((?:^|\n)[ \t]*\n|(?:^|\r\n?)[ \t]*\r\n?)(?: {4}|\t).+(?:(?:\n|\r\n?)(?: {4}|\t).+)*/,lookbehind:!0,alias:"keyword"},{pattern:/^```[\s\S]*?^```$/m,greedy:!0,inside:{"code-block":{pattern:/^(```.*(?:\n|\r\n?))[\s\S]+?(?=(?:\n|\r\n?)^```$)/m,lookbehind:!0},"code-language":{pattern:/^(```).+/,lookbehind:!0},punctuation:/```/}}],title:[{pattern:/\S.*(?:\n|\r\n?)(?:==+|--+)(?=[ \t]*$)/m,alias:"important",inside:{punctuation:/==+$|--+$/}},{pattern:/(^\s*)#.+/m,lookbehind:!0,alias:"important",inside:{punctuation:/^#+|#+$/}}],hr:{pattern:/(^\s*)([*-])(?:[\t ]*\2){2,}(?=\s*$)/m,lookbehind:!0,alias:"punctuation"},list:{pattern:/(^\s*)(?:[*+-]|\d+\.)(?=[\t ].)/m,lookbehind:!0,alias:"punctuation"},"url-reference":{pattern:/!?\[[^\]]+\]:[\t ]+(?:\S+|<(?:\\.|[^>\\])+>)(?:[\t ]+(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\((?:\\.|[^)\\])*\)))?/,inside:{variable:{pattern:/^(!?\[)[^\]]+/,lookbehind:!0},string:/(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\((?:\\.|[^)\\])*\))$/,punctuation:/^[\[\]!:]|[<>]/},alias:"url"},bold:{pattern:n(/\b__(?:(?!_)|_(?:(?!_))+_)+__\b|\*\*(?:(?!\*)|\*(?:(?!\*))+\*)+\*\*/.source),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^..)[\s\S]+(?=..$)/,lookbehind:!0,inside:{}},punctuation:/\*\*|__/}},italic:{pattern:n(/\b_(?:(?!_)|__(?:(?!_))+__)+_\b|\*(?:(?!\*)|\*\*(?:(?!\*))+\*\*)+\*/.source),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^.)[\s\S]+(?=.$)/,lookbehind:!0,inside:{}},punctuation:/[*_]/}},strike:{pattern:n(/(~~?)(?:(?!~))+\2/.source),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^~~?)[\s\S]+(?=\1$)/,lookbehind:!0,inside:{}},punctuation:/~~?/}},"code-snippet":{pattern:/(^|[^\\`])(?:``[^`\r\n]+(?:`[^`\r\n]+)*``(?!`)|`[^`\r\n]+`(?!`))/,lookbehind:!0,greedy:!0,alias:["code","keyword"]},url:{pattern:n(/!?\[(?:(?!\]))+\](?:\([^\s)]+(?:[\t ]+"(?:\\.|[^"\\])*")?\)|[ \t]?\[(?:(?!\]))+\])/.source),lookbehind:!0,greedy:!0,inside:{operator:/^!/,content:{pattern:/(^\[)[^\]]+(?=\])/,lookbehind:!0,inside:{}},variable:{pattern:/(^\][ \t]?\[)[^\]]+(?=\]$)/,lookbehind:!0},url:{pattern:/(^\]\()[^\s)]+/,lookbehind:!0},string:{pattern:/(^[ \t]+)"(?:\\.|[^"\\])*"(?=\)$)/,lookbehind:!0}}}}),["url","bold","italic","strike"].forEach((function(t){["url","bold","italic","strike","code-snippet"].forEach((function(n){t!==n&&(e.languages.markdown[t].inside.content.inside[n]=e.languages.markdown[n])}))})),e.hooks.add("after-tokenize",(function(e){"markdown"!==e.language&&"md"!==e.language||function e(t){if(t&&"string"!=typeof t)for(var n=0,a=t.length;n",quot:'"'},i=String.fromCodePoint||String.fromCharCode;e.languages.md=e.languages.markdown}(F),F.languages.graphql={comment:/#.*/,description:{pattern:/(?:"""(?:[^"]|(?!""")")*"""|"(?:\\.|[^\\"\r\n])*")(?=\s*[a-z_])/i,greedy:!0,alias:"string",inside:{"language-markdown":{pattern:/(^"(?:"")?)(?!\1)[\s\S]+(?=\1$)/,lookbehind:!0,inside:F.languages.markdown}}},string:{pattern:/"""(?:[^"]|(?!""")")*"""|"(?:\\.|[^\\"\r\n])*"/,greedy:!0},number:/(?:\B-|\b)\d+(?:\.\d+)?(?:e[+-]?\d+)?\b/i,boolean:/\b(?:false|true)\b/,variable:/\$[a-z_]\w*/i,directive:{pattern:/@[a-z_]\w*/i,alias:"function"},"attr-name":{pattern:/\b[a-z_]\w*(?=\s*(?:\((?:[^()"]|"(?:\\.|[^\\"\r\n])*")*\))?:)/i,greedy:!0},"atom-input":{pattern:/\b[A-Z]\w*Input\b/,alias:"class-name"},scalar:/\b(?:Boolean|Float|ID|Int|String)\b/,constant:/\b[A-Z][A-Z_\d]*\b/,"class-name":{pattern:/(\b(?:enum|implements|interface|on|scalar|type|union)\s+|&\s*|:\s*|\[)[A-Z_]\w*/,lookbehind:!0},fragment:{pattern:/(\bfragment\s+|\.{3}\s*(?!on\b))[a-zA-Z_]\w*/,lookbehind:!0,alias:"function"},"definition-mutation":{pattern:/(\bmutation\s+)[a-zA-Z_]\w*/,lookbehind:!0,alias:"function"},"definition-query":{pattern:/(\bquery\s+)[a-zA-Z_]\w*/,lookbehind:!0,alias:"function"},keyword:/\b(?:directive|enum|extend|fragment|implements|input|interface|mutation|on|query|repeatable|scalar|schema|subscription|type|union)\b/,operator:/[!=|&]|\.{3}/,"property-query":/\w+(?=\s*\()/,object:/\w+(?=\s*\{)/,punctuation:/[!(){}\[\]:=,]/,property:/\w+/},F.hooks.add("after-tokenize",(function(e){if("graphql"===e.language)for(var t=e.tokens.filter((function(e){return"string"!=typeof e&&"comment"!==e.type&&"scalar"!==e.type})),n=0;n?|<|>)?|>[>=]?|\b(?:AND|BETWEEN|DIV|ILIKE|IN|IS|LIKE|NOT|OR|REGEXP|RLIKE|SOUNDS LIKE|XOR)\b/i,punctuation:/[;[\]()`,.]/},function(e){var t=e.languages.javascript["template-string"],n=t.pattern.source,a=t.inside.interpolation,r=a.inside["interpolation-punctuation"],o=a.pattern.source;function s(t,a){if(e.languages[t])return{pattern:RegExp("((?:"+a+")\\s*)"+n),lookbehind:!0,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:"string"},"embedded-code":{pattern:/[\s\S]+/,alias:t}}}}function l(t,n,a){return t={code:t,grammar:n,language:a},e.hooks.run("before-tokenize",t),t.tokens=e.tokenize(t.code,t.grammar),e.hooks.run("after-tokenize",t),t.tokens}function i(t,n,s){var i=e.tokenize(t,{interpolation:{pattern:RegExp(o),lookbehind:!0}}),c=0,u={},p=(i=l(i.map((function(e){if("string"==typeof e)return e;var n,a;for(e=e.content;-1!==t.indexOf((a=c++,n="___"+s.toUpperCase()+"_"+a+"___")););return u[n]=e,n})).join(""),n,s),Object.keys(u));return c=0,function t(n){for(var o=0;o=p.length)return;var s,i,g,d,y,f,b,m=n[o];"string"==typeof m||"string"==typeof m.content?(s=p[c],-1!==(b=(f="string"==typeof m?m:m.content).indexOf(s))&&(++c,i=f.substring(0,b),y=u[s],g=void 0,(d={})["interpolation-punctuation"]=r,3===(d=e.tokenize(y,d)).length&&((g=[1,1]).push.apply(g,l(d[1],e.languages.javascript,"javascript")),d.splice.apply(d,g)),g=new e.Token("interpolation",d,a.alias,y),d=f.substring(b+s.length),y=[],i&&y.push(i),y.push(g),d&&(t(f=[d]),y.push.apply(y,f)),"string"==typeof m?(n.splice.apply(n,[o,1].concat(y)),o+=y.length-1):m.content=y)):(b=m.content,Array.isArray(b)?t(b):t([b]))}}(i),new e.Token(s,i,"language-"+s,t)}e.languages.javascript["template-string"]=[s("css",/\b(?:styled(?:\([^)]*\))?(?:\s*\.\s*\w+(?:\([^)]*\))*)*|css(?:\s*\.\s*(?:global|resolve))?|createGlobalStyle|keyframes)/.source),s("html",/\bhtml|\.\s*(?:inner|outer)HTML\s*\+?=/.source),s("svg",/\bsvg/.source),s("markdown",/\b(?:markdown|md)/.source),s("graphql",/\b(?:gql|graphql(?:\s*\.\s*experimental)?)/.source),s("sql",/\bsql/.source),t].filter(Boolean);var c={javascript:!0,js:!0,typescript:!0,ts:!0,jsx:!0,tsx:!0};function u(e){return"string"==typeof e?e:Array.isArray(e)?e.map(u).join(""):u(e.content)}e.hooks.add("after-tokenize",(function(t){t.language in c&&function t(n){for(var a=0,r=n.length;a]|<(?:[^<>]|<[^<>]*>)*>)*>)?/,lookbehind:!0,greedy:!0,inside:null},builtin:/\b(?:Array|Function|Promise|any|boolean|console|never|number|string|symbol|unknown)\b/}),e.languages.typescript.keyword.push(/\b(?:abstract|declare|is|keyof|readonly|require)\b/,/\b(?:asserts|infer|interface|module|namespace|type)\b(?=\s*(?:[{_$a-zA-Z\xA0-\uFFFF]|$))/,/\btype\b(?=\s*(?:[\{*]|$))/),delete e.languages.typescript.parameter,delete e.languages.typescript["literal-property"];var t=e.languages.extend("typescript",{});delete t["class-name"],e.languages.typescript["class-name"].inside=t,e.languages.insertBefore("typescript","function",{decorator:{pattern:/@[$\w\xA0-\uFFFF]+/,inside:{at:{pattern:/^@/,alias:"operator"},function:/^[\s\S]+/}},"generic-function":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>(?=\s*\()/,greedy:!0,inside:{function:/^#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*/,generic:{pattern:/<[\s\S]+/,alias:"class-name",inside:t}}}}),e.languages.ts=e.languages.typescript}(F),function(e){var t=e.languages.javascript,n=/\{(?:[^{}]|\{(?:[^{}]|\{[^{}]*\})*\})+\}/.source,a="(@(?:arg|argument|param|property)\\s+(?:"+n+"\\s+)?)";e.languages.jsdoc=e.languages.extend("javadoclike",{parameter:{pattern:RegExp(a+/(?:(?!\s)[$\w\xA0-\uFFFF.])+(?=\s|$)/.source),lookbehind:!0,inside:{punctuation:/\./}}}),e.languages.insertBefore("jsdoc","keyword",{"optional-parameter":{pattern:RegExp(a+/\[(?:(?!\s)[$\w\xA0-\uFFFF.])+(?:=[^[\]]+)?\](?=\s|$)/.source),lookbehind:!0,inside:{parameter:{pattern:/(^\[)[$\w\xA0-\uFFFF\.]+/,lookbehind:!0,inside:{punctuation:/\./}},code:{pattern:/(=)[\s\S]*(?=\]$)/,lookbehind:!0,inside:t,alias:"language-javascript"},punctuation:/[=[\]]/}},"class-name":[{pattern:RegExp(/(@(?:augments|class|extends|interface|memberof!?|template|this|typedef)\s+(?:\s+)?)[A-Z]\w*(?:\.[A-Z]\w*)*/.source.replace(//g,(function(){return n}))),lookbehind:!0,inside:{punctuation:/\./}},{pattern:RegExp("(@[a-z]+\\s+)"+n),lookbehind:!0,inside:{string:t.string,number:t.number,boolean:t.boolean,keyword:e.languages.typescript.keyword,operator:/=>|\.\.\.|[&|?:*]/,punctuation:/[.,;=<>{}()[\]]/}}],example:{pattern:/(@example\s+(?!\s))(?:[^@\s]|\s+(?!\s))+?(?=\s*(?:\*\s*)?(?:@\w|\*\/))/,lookbehind:!0,inside:{code:{pattern:/^([\t ]*(?:\*\s*)?)\S.*$/m,lookbehind:!0,inside:t,alias:"language-javascript"}}}}),e.languages.javadoclike.addSupport("javascript",e.languages.jsdoc)}(F),function(e){e.languages.flow=e.languages.extend("javascript",{}),e.languages.insertBefore("flow","keyword",{type:[{pattern:/\b(?:[Bb]oolean|Function|[Nn]umber|[Ss]tring|[Ss]ymbol|any|mixed|null|void)\b/,alias:"class-name"}]}),e.languages.flow["function-variable"].pattern=/(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=\s*(?:function\b|(?:\([^()]*\)(?:\s*:\s*\w+)?|(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)\s*=>))/i,delete e.languages.flow.parameter,e.languages.insertBefore("flow","operator",{"flow-punctuation":{pattern:/\{\||\|\}/,alias:"punctuation"}}),Array.isArray(e.languages.flow.keyword)||(e.languages.flow.keyword=[e.languages.flow.keyword]),e.languages.flow.keyword.unshift({pattern:/(^|[^$]\b)(?:Class|declare|opaque|type)\b(?!\$)/,lookbehind:!0},{pattern:/(^|[^$]\B)\$(?:Diff|Enum|Exact|Keys|ObjMap|PropertyType|Record|Shape|Subtype|Supertype|await)\b(?!\$)/,lookbehind:!0})}(F),F.languages.n4js=F.languages.extend("javascript",{keyword:/\b(?:Array|any|boolean|break|case|catch|class|const|constructor|continue|debugger|declare|default|delete|do|else|enum|export|extends|false|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|module|new|null|number|package|private|protected|public|return|set|static|string|super|switch|this|throw|true|try|typeof|var|void|while|with|yield)\b/}),F.languages.insertBefore("n4js","constant",{annotation:{pattern:/@+\w+/,alias:"operator"}}),F.languages.n4jsd=F.languages.n4js,function(e){function t(e,t){return RegExp(e.replace(//g,(function(){return/(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*/.source})),t)}e.languages.insertBefore("javascript","function-variable",{"method-variable":{pattern:RegExp("(\\.\\s*)"+e.languages.javascript["function-variable"].pattern.source),lookbehind:!0,alias:["function-variable","method","function","property-access"]}}),e.languages.insertBefore("javascript","function",{method:{pattern:RegExp("(\\.\\s*)"+e.languages.javascript.function.source),lookbehind:!0,alias:["function","property-access"]}}),e.languages.insertBefore("javascript","constant",{"known-class-name":[{pattern:/\b(?:(?:Float(?:32|64)|(?:Int|Uint)(?:8|16|32)|Uint8Clamped)?Array|ArrayBuffer|BigInt|Boolean|DataView|Date|Error|Function|Intl|JSON|(?:Weak)?(?:Map|Set)|Math|Number|Object|Promise|Proxy|Reflect|RegExp|String|Symbol|WebAssembly)\b/,alias:"class-name"},{pattern:/\b(?:[A-Z]\w*)Error\b/,alias:"class-name"}]}),e.languages.insertBefore("javascript","keyword",{imports:{pattern:t(/(\bimport\b\s*)(?:(?:\s*,\s*(?:\*\s*as\s+|\{[^{}]*\}))?|\*\s*as\s+|\{[^{}]*\})(?=\s*\bfrom\b)/.source),lookbehind:!0,inside:e.languages.javascript},exports:{pattern:t(/(\bexport\b\s*)(?:\*(?:\s*as\s+)?(?=\s*\bfrom\b)|\{[^{}]*\})/.source),lookbehind:!0,inside:e.languages.javascript}}),e.languages.javascript.keyword.unshift({pattern:/\b(?:as|default|export|from|import)\b/,alias:"module"},{pattern:/\b(?:await|break|catch|continue|do|else|finally|for|if|return|switch|throw|try|while|yield)\b/,alias:"control-flow"},{pattern:/\bnull\b/,alias:["null","nil"]},{pattern:/\bundefined\b/,alias:"nil"}),e.languages.insertBefore("javascript","operator",{spread:{pattern:/\.{3}/,alias:"operator"},arrow:{pattern:/=>/,alias:"operator"}}),e.languages.insertBefore("javascript","punctuation",{"property-access":{pattern:t(/(\.\s*)#?/.source),lookbehind:!0},"maybe-class-name":{pattern:/(^|[^$\w\xA0-\uFFFF])[A-Z][$\w\xA0-\uFFFF]+/,lookbehind:!0},dom:{pattern:/\b(?:document|(?:local|session)Storage|location|navigator|performance|window)\b/,alias:"variable"},console:{pattern:/\bconsole(?=\s*\.)/,alias:"class-name"}});for(var n=["function","function-variable","method","method-variable","property-access"],a=0;a*\.{3}(?:[^{}]|)*\})/.source;function o(e,t){return e=e.replace(//g,(function(){return n})).replace(//g,(function(){return a})).replace(//g,(function(){return r})),RegExp(e,t)}function s(t){for(var n=[],a=0;a"!==r.content[r.content.length-1].content&&n.push({tagName:l(r.content[0].content[1]),openedBraces:0}):0+(?:[\w.:$-]+(?:=(?:"(?:\\[\s\S]|[^\\"])*"|'(?:\\[\s\S]|[^\\'])*'|[^\s{'"/>=]+|))?|))**\/?)?>/.source),e.languages.jsx.tag.inside.tag.pattern=/^<\/?[^\s>\/]*/,e.languages.jsx.tag.inside["attr-value"].pattern=/=(?!\{)(?:"(?:\\[\s\S]|[^\\"])*"|'(?:\\[\s\S]|[^\\'])*'|[^\s'">]+)/,e.languages.jsx.tag.inside.tag.inside["class-name"]=/^[A-Z]\w*(?:\.[A-Z]\w*)*$/,e.languages.jsx.tag.inside.comment=t.comment,e.languages.insertBefore("inside","attr-name",{spread:{pattern:o(//.source),inside:e.languages.jsx}},e.languages.jsx.tag),e.languages.insertBefore("inside","special-attr",{script:{pattern:o(/=/.source),alias:"language-javascript",inside:{"script-punctuation":{pattern:/^=(?=\{)/,alias:"punctuation"},rest:e.languages.jsx}}},e.languages.jsx.tag);var l=function(e){return e?"string"==typeof e?e:"string"==typeof e.content?e.content:e.content.map(l).join(""):""};e.hooks.add("after-tokenize",(function(e){"jsx"!==e.language&&"tsx"!==e.language||s(e.tokens)}))}(F),function(e){var t=e.util.clone(e.languages.typescript);(t=(e.languages.tsx=e.languages.extend("jsx",t),delete e.languages.tsx.parameter,delete e.languages.tsx["literal-property"],e.languages.tsx.tag)).pattern=RegExp(/(^|[^\w$]|(?=<\/))/.source+"(?:"+t.pattern.source+")",t.pattern.flags),t.lookbehind=!0}(F),F.languages.swift={comment:{pattern:/(^|[^\\:])(?:\/\/.*|\/\*(?:[^/*]|\/(?!\*)|\*(?!\/)|\/\*(?:[^*]|\*(?!\/))*\*\/)*\*\/)/,lookbehind:!0,greedy:!0},"string-literal":[{pattern:RegExp(/(^|[^"#])/.source+"(?:"+/"(?:\\(?:\((?:[^()]|\([^()]*\))*\)|\r\n|[^(])|[^\\\r\n"])*"/.source+"|"+/"""(?:\\(?:\((?:[^()]|\([^()]*\))*\)|[^(])|[^\\"]|"(?!""))*"""/.source+")"+/(?!["#])/.source),lookbehind:!0,greedy:!0,inside:{interpolation:{pattern:/(\\\()(?:[^()]|\([^()]*\))*(?=\))/,lookbehind:!0,inside:null},"interpolation-punctuation":{pattern:/^\)|\\\($/,alias:"punctuation"},punctuation:/\\(?=[\r\n])/,string:/[\s\S]+/}},{pattern:RegExp(/(^|[^"#])(#+)/.source+"(?:"+/"(?:\\(?:#+\((?:[^()]|\([^()]*\))*\)|\r\n|[^#])|[^\\\r\n])*?"/.source+"|"+/"""(?:\\(?:#+\((?:[^()]|\([^()]*\))*\)|[^#])|[^\\])*?"""/.source+")\\2"),lookbehind:!0,greedy:!0,inside:{interpolation:{pattern:/(\\#+\()(?:[^()]|\([^()]*\))*(?=\))/,lookbehind:!0,inside:null},"interpolation-punctuation":{pattern:/^\)|\\#+\($/,alias:"punctuation"},string:/[\s\S]+/}}],directive:{pattern:RegExp(/#/.source+"(?:"+/(?:elseif|if)\b/.source+"(?:[ \t]*"+/(?:![ \t]*)?(?:\b\w+\b(?:[ \t]*\((?:[^()]|\([^()]*\))*\))?|\((?:[^()]|\([^()]*\))*\))(?:[ \t]*(?:&&|\|\|))?/.source+")+|"+/(?:else|endif)\b/.source+")"),alias:"property",inside:{"directive-name":/^#\w+/,boolean:/\b(?:false|true)\b/,number:/\b\d+(?:\.\d+)*\b/,operator:/!|&&|\|\||[<>]=?/,punctuation:/[(),]/}},literal:{pattern:/#(?:colorLiteral|column|dsohandle|file(?:ID|Literal|Path)?|function|imageLiteral|line)\b/,alias:"constant"},"other-directive":{pattern:/#\w+\b/,alias:"property"},attribute:{pattern:/@\w+/,alias:"atrule"},"function-definition":{pattern:/(\bfunc\s+)\w+/,lookbehind:!0,alias:"function"},label:{pattern:/\b(break|continue)\s+\w+|\b[a-zA-Z_]\w*(?=\s*:\s*(?:for|repeat|while)\b)/,lookbehind:!0,alias:"important"},keyword:/\b(?:Any|Protocol|Self|Type|actor|as|assignment|associatedtype|associativity|async|await|break|case|catch|class|continue|convenience|default|defer|deinit|didSet|do|dynamic|else|enum|extension|fallthrough|fileprivate|final|for|func|get|guard|higherThan|if|import|in|indirect|infix|init|inout|internal|is|isolated|lazy|left|let|lowerThan|mutating|none|nonisolated|nonmutating|open|operator|optional|override|postfix|precedencegroup|prefix|private|protocol|public|repeat|required|rethrows|return|right|safe|self|set|some|static|struct|subscript|super|switch|throw|throws|try|typealias|unowned|unsafe|var|weak|where|while|willSet)\b/,boolean:/\b(?:false|true)\b/,nil:{pattern:/\bnil\b/,alias:"constant"},"short-argument":/\$\d+\b/,omit:{pattern:/\b_\b/,alias:"keyword"},number:/\b(?:[\d_]+(?:\.[\de_]+)?|0x[a-f0-9_]+(?:\.[a-f0-9p_]+)?|0b[01_]+|0o[0-7_]+)\b/i,"class-name":/\b[A-Z](?:[A-Z_\d]*[a-z]\w*)?\b/,function:/\b[a-z_]\w*(?=\s*\()/i,constant:/\b(?:[A-Z_]{2,}|k[A-Z][A-Za-z_]+)\b/,operator:/[-+*/%=!<>&|^~?]+|\.[.\-+*/%=!<>&|^~?]+/,punctuation:/[{}[\]();,.:\\]/},F.languages.swift["string-literal"].forEach((function(e){e.inside.interpolation.inside=F.languages.swift})),function(e){e.languages.kotlin=e.languages.extend("clike",{keyword:{pattern:/(^|[^.])\b(?:abstract|actual|annotation|as|break|by|catch|class|companion|const|constructor|continue|crossinline|data|do|dynamic|else|enum|expect|external|final|finally|for|fun|get|if|import|in|infix|init|inline|inner|interface|internal|is|lateinit|noinline|null|object|open|operator|out|override|package|private|protected|public|reified|return|sealed|set|super|suspend|tailrec|this|throw|to|try|typealias|val|var|vararg|when|where|while)\b/,lookbehind:!0},function:[{pattern:/(?:`[^\r\n`]+`|\b\w+)(?=\s*\()/,greedy:!0},{pattern:/(\.)(?:`[^\r\n`]+`|\w+)(?=\s*\{)/,lookbehind:!0,greedy:!0}],number:/\b(?:0[xX][\da-fA-F]+(?:_[\da-fA-F]+)*|0[bB][01]+(?:_[01]+)*|\d+(?:_\d+)*(?:\.\d+(?:_\d+)*)?(?:[eE][+-]?\d+(?:_\d+)*)?[fFL]?)\b/,operator:/\+[+=]?|-[-=>]?|==?=?|!(?:!|==?)?|[\/*%<>]=?|[?:]:?|\.\.|&&|\|\||\b(?:and|inv|or|shl|shr|ushr|xor)\b/}),delete e.languages.kotlin["class-name"];var t={"interpolation-punctuation":{pattern:/^\$\{?|\}$/,alias:"punctuation"},expression:{pattern:/[\s\S]+/,inside:e.languages.kotlin}};e.languages.insertBefore("kotlin","string",{"string-literal":[{pattern:/"""(?:[^$]|\$(?:(?!\{)|\{[^{}]*\}))*?"""/,alias:"multiline",inside:{interpolation:{pattern:/\$(?:[a-z_]\w*|\{[^{}]*\})/i,inside:t},string:/[\s\S]+/}},{pattern:/"(?:[^"\\\r\n$]|\\.|\$(?:(?!\{)|\{[^{}]*\}))*"/,alias:"singleline",inside:{interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\$(?:[a-z_]\w*|\{[^{}]*\})/i,lookbehind:!0,inside:t},string:/[\s\S]+/}}],char:{pattern:/'(?:[^'\\\r\n]|\\(?:.|u[a-fA-F0-9]{0,4}))'/,greedy:!0}}),delete e.languages.kotlin.string,e.languages.insertBefore("kotlin","keyword",{annotation:{pattern:/\B@(?:\w+:)?(?:[A-Z]\w*|\[[^\]]+\])/,alias:"builtin"}}),e.languages.insertBefore("kotlin","function",{label:{pattern:/\b\w+@|@\w+\b/,alias:"symbol"}}),e.languages.kt=e.languages.kotlin,e.languages.kts=e.languages.kotlin}(F),F.languages.c=F.languages.extend("clike",{comment:{pattern:/\/\/(?:[^\r\n\\]|\\(?:\r\n?|\n|(?![\r\n])))*|\/\*[\s\S]*?(?:\*\/|$)/,greedy:!0},string:{pattern:/"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"/,greedy:!0},"class-name":{pattern:/(\b(?:enum|struct)\s+(?:__attribute__\s*\(\([\s\S]*?\)\)\s*)?)\w+|\b[a-z]\w*_t\b/,lookbehind:!0},keyword:/\b(?:_Alignas|_Alignof|_Atomic|_Bool|_Complex|_Generic|_Imaginary|_Noreturn|_Static_assert|_Thread_local|__attribute__|asm|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|inline|int|long|register|return|short|signed|sizeof|static|struct|switch|typedef|typeof|union|unsigned|void|volatile|while)\b/,function:/\b[a-z_]\w*(?=\s*\()/i,number:/(?:\b0x(?:[\da-f]+(?:\.[\da-f]*)?|\.[\da-f]+)(?:p[+-]?\d+)?|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?)[ful]{0,4}/i,operator:/>>=?|<<=?|->|([-+&|:])\1|[?:~]|[-+*/%&|^!=<>]=?/}),F.languages.insertBefore("c","string",{char:{pattern:/'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n]){0,32}'/,greedy:!0}}),F.languages.insertBefore("c","string",{macro:{pattern:/(^[\t ]*)#\s*[a-z](?:[^\r\n\\/]|\/(?!\*)|\/\*(?:[^*]|\*(?!\/))*\*\/|\\(?:\r\n|[\s\S]))*/im,lookbehind:!0,greedy:!0,alias:"property",inside:{string:[{pattern:/^(#\s*include\s*)<[^>]+>/,lookbehind:!0},F.languages.c.string],char:F.languages.c.char,comment:F.languages.c.comment,"macro-name":[{pattern:/(^#\s*define\s+)\w+\b(?!\()/i,lookbehind:!0},{pattern:/(^#\s*define\s+)\w+\b(?=\()/i,lookbehind:!0,alias:"function"}],directive:{pattern:/^(#\s*)[a-z]+/,lookbehind:!0,alias:"keyword"},"directive-hash":/^#/,punctuation:/##|\\(?=[\r\n])/,expression:{pattern:/\S[\s\S]*/,inside:F.languages.c}}}}),F.languages.insertBefore("c","function",{constant:/\b(?:EOF|NULL|SEEK_CUR|SEEK_END|SEEK_SET|__DATE__|__FILE__|__LINE__|__TIMESTAMP__|__TIME__|__func__|stderr|stdin|stdout)\b/}),delete F.languages.c.boolean,F.languages.objectivec=F.languages.extend("c",{string:{pattern:/@?"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"/,greedy:!0},keyword:/\b(?:asm|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|in|inline|int|long|register|return|self|short|signed|sizeof|static|struct|super|switch|typedef|typeof|union|unsigned|void|volatile|while)\b|(?:@interface|@end|@implementation|@protocol|@class|@public|@protected|@private|@property|@try|@catch|@finally|@throw|@synthesize|@dynamic|@selector)\b/,operator:/-[->]?|\+\+?|!=?|<>?=?|==?|&&?|\|\|?|[~^%?*\/@]/}),delete F.languages.objectivec["class-name"],F.languages.objc=F.languages.objectivec,F.languages.reason=F.languages.extend("clike",{string:{pattern:/"(?:\\(?:\r\n|[\s\S])|[^\\\r\n"])*"/,greedy:!0},"class-name":/\b[A-Z]\w*/,keyword:/\b(?:and|as|assert|begin|class|constraint|do|done|downto|else|end|exception|external|for|fun|function|functor|if|in|include|inherit|initializer|lazy|let|method|module|mutable|new|nonrec|object|of|open|or|private|rec|sig|struct|switch|then|to|try|type|val|virtual|when|while|with)\b/,operator:/\.{3}|:[:=]|\|>|->|=(?:==?|>)?|<=?|>=?|[|^?'#!~`]|[+\-*\/]\.?|\b(?:asr|land|lor|lsl|lsr|lxor|mod)\b/}),F.languages.insertBefore("reason","class-name",{char:{pattern:/'(?:\\x[\da-f]{2}|\\o[0-3][0-7][0-7]|\\\d{3}|\\.|[^'\\\r\n])'/,greedy:!0},constructor:/\b[A-Z]\w*\b(?!\s*\.)/,label:{pattern:/\b[a-z]\w*(?=::)/,alias:"symbol"}}),delete F.languages.reason.function,function(e){for(var t=/\/\*(?:[^*/]|\*(?!\/)|\/(?!\*)|)*\*\//.source,n=0;n<2;n++)t=t.replace(//g,(function(){return t}));t=t.replace(//g,(function(){return/[^\s\S]/.source})),e.languages.rust={comment:[{pattern:RegExp(/(^|[^\\])/.source+t),lookbehind:!0,greedy:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],string:{pattern:/b?"(?:\\[\s\S]|[^\\"])*"|b?r(#*)"(?:[^"]|"(?!\1))*"\1/,greedy:!0},char:{pattern:/b?'(?:\\(?:x[0-7][\da-fA-F]|u\{(?:[\da-fA-F]_*){1,6}\}|.)|[^\\\r\n\t'])'/,greedy:!0},attribute:{pattern:/#!?\[(?:[^\[\]"]|"(?:\\[\s\S]|[^\\"])*")*\]/,greedy:!0,alias:"attr-name",inside:{string:null}},"closure-params":{pattern:/([=(,:]\s*|\bmove\s*)\|[^|]*\||\|[^|]*\|(?=\s*(?:\{|->))/,lookbehind:!0,greedy:!0,inside:{"closure-punctuation":{pattern:/^\||\|$/,alias:"punctuation"},rest:null}},"lifetime-annotation":{pattern:/'\w+/,alias:"symbol"},"fragment-specifier":{pattern:/(\$\w+:)[a-z]+/,lookbehind:!0,alias:"punctuation"},variable:/\$\w+/,"function-definition":{pattern:/(\bfn\s+)\w+/,lookbehind:!0,alias:"function"},"type-definition":{pattern:/(\b(?:enum|struct|trait|type|union)\s+)\w+/,lookbehind:!0,alias:"class-name"},"module-declaration":[{pattern:/(\b(?:crate|mod)\s+)[a-z][a-z_\d]*/,lookbehind:!0,alias:"namespace"},{pattern:/(\b(?:crate|self|super)\s*)::\s*[a-z][a-z_\d]*\b(?:\s*::(?:\s*[a-z][a-z_\d]*\s*::)*)?/,lookbehind:!0,alias:"namespace",inside:{punctuation:/::/}}],keyword:[/\b(?:Self|abstract|as|async|await|become|box|break|const|continue|crate|do|dyn|else|enum|extern|final|fn|for|if|impl|in|let|loop|macro|match|mod|move|mut|override|priv|pub|ref|return|self|static|struct|super|trait|try|type|typeof|union|unsafe|unsized|use|virtual|where|while|yield)\b/,/\b(?:bool|char|f(?:32|64)|[ui](?:8|16|32|64|128|size)|str)\b/],function:/\b[a-z_]\w*(?=\s*(?:::\s*<|\())/,macro:{pattern:/\b\w+!/,alias:"property"},constant:/\b[A-Z_][A-Z_\d]+\b/,"class-name":/\b[A-Z]\w*\b/,namespace:{pattern:/(?:\b[a-z][a-z_\d]*\s*::\s*)*\b[a-z][a-z_\d]*\s*::(?!\s*<)/,inside:{punctuation:/::/}},number:/\b(?:0x[\dA-Fa-f](?:_?[\dA-Fa-f])*|0o[0-7](?:_?[0-7])*|0b[01](?:_?[01])*|(?:(?:\d(?:_?\d)*)?\.)?\d(?:_?\d)*(?:[Ee][+-]?\d+)?)(?:_?(?:f32|f64|[iu](?:8|16|32|64|size)?))?\b/,boolean:/\b(?:false|true)\b/,punctuation:/->|\.\.=|\.{1,3}|::|[{}[\];(),:]/,operator:/[-+*\/%!^]=?|=[=>]?|&[&=]?|\|[|=]?|<>?=?|[@?]/},e.languages.rust["closure-params"].inside.rest=e.languages.rust,e.languages.rust.attribute.inside.string=e.languages.rust.string}(F),F.languages.go=F.languages.extend("clike",{string:{pattern:/(^|[^\\])"(?:\\.|[^"\\\r\n])*"|`[^`]*`/,lookbehind:!0,greedy:!0},keyword:/\b(?:break|case|chan|const|continue|default|defer|else|fallthrough|for|func|go(?:to)?|if|import|interface|map|package|range|return|select|struct|switch|type|var)\b/,boolean:/\b(?:_|false|iota|nil|true)\b/,number:[/\b0(?:b[01_]+|o[0-7_]+)i?\b/i,/\b0x(?:[a-f\d_]+(?:\.[a-f\d_]*)?|\.[a-f\d_]+)(?:p[+-]?\d+(?:_\d+)*)?i?(?!\w)/i,/(?:\b\d[\d_]*(?:\.[\d_]*)?|\B\.\d[\d_]*)(?:e[+-]?[\d_]+)?i?(?!\w)/i],operator:/[*\/%^!=]=?|\+[=+]?|-[=-]?|\|[=|]?|&(?:=|&|\^=?)?|>(?:>=?|=)?|<(?:<=?|=|-)?|:=|\.\.\./,builtin:/\b(?:append|bool|byte|cap|close|complex|complex(?:64|128)|copy|delete|error|float(?:32|64)|u?int(?:8|16|32|64)?|imag|len|make|new|panic|print(?:ln)?|real|recover|rune|string|uintptr)\b/}),F.languages.insertBefore("go","string",{char:{pattern:/'(?:\\.|[^'\\\r\n]){0,10}'/,greedy:!0}}),delete F.languages.go["class-name"],function(e){var t=/\b(?:alignas|alignof|asm|auto|bool|break|case|catch|char|char16_t|char32_t|char8_t|class|co_await|co_return|co_yield|compl|concept|const|const_cast|consteval|constexpr|constinit|continue|decltype|default|delete|do|double|dynamic_cast|else|enum|explicit|export|extern|final|float|for|friend|goto|if|import|inline|int|int16_t|int32_t|int64_t|int8_t|long|module|mutable|namespace|new|noexcept|nullptr|operator|override|private|protected|public|register|reinterpret_cast|requires|return|short|signed|sizeof|static|static_assert|static_cast|struct|switch|template|this|thread_local|throw|try|typedef|typeid|typename|uint16_t|uint32_t|uint64_t|uint8_t|union|unsigned|using|virtual|void|volatile|wchar_t|while)\b/,n=/\b(?!)\w+(?:\s*\.\s*\w+)*\b/.source.replace(//g,(function(){return t.source}));e.languages.cpp=e.languages.extend("c",{"class-name":[{pattern:RegExp(/(\b(?:class|concept|enum|struct|typename)\s+)(?!)\w+/.source.replace(//g,(function(){return t.source}))),lookbehind:!0},/\b[A-Z]\w*(?=\s*::\s*\w+\s*\()/,/\b[A-Z_]\w*(?=\s*::\s*~\w+\s*\()/i,/\b\w+(?=\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>\s*::\s*\w+\s*\()/],keyword:t,number:{pattern:/(?:\b0b[01']+|\b0x(?:[\da-f']+(?:\.[\da-f']*)?|\.[\da-f']+)(?:p[+-]?[\d']+)?|(?:\b[\d']+(?:\.[\d']*)?|\B\.[\d']+)(?:e[+-]?[\d']+)?)[ful]{0,4}/i,greedy:!0},operator:/>>=?|<<=?|->|--|\+\+|&&|\|\||[?:~]|<=>|[-+*/%&|^!=<>]=?|\b(?:and|and_eq|bitand|bitor|not|not_eq|or|or_eq|xor|xor_eq)\b/,boolean:/\b(?:false|true)\b/}),e.languages.insertBefore("cpp","string",{module:{pattern:RegExp(/(\b(?:import|module)\s+)/.source+"(?:"+/"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|<[^<>\r\n]*>/.source+"|"+/(?:\s*:\s*)?|:\s*/.source.replace(//g,(function(){return n}))+")"),lookbehind:!0,greedy:!0,inside:{string:/^[<"][\s\S]+/,operator:/:/,punctuation:/\./}},"raw-string":{pattern:/R"([^()\\ ]{0,16})\([\s\S]*?\)\1"/,alias:"string",greedy:!0}}),e.languages.insertBefore("cpp","keyword",{"generic-function":{pattern:/\b(?!operator\b)[a-z_]\w*\s*<(?:[^<>]|<[^<>]*>)*>(?=\s*\()/i,inside:{function:/^\w+/,generic:{pattern:/<[\s\S]+/,alias:"class-name",inside:e.languages.cpp}}}}),e.languages.insertBefore("cpp","operator",{"double-colon":{pattern:/::/,alias:"punctuation"}}),e.languages.insertBefore("cpp","class-name",{"base-clause":{pattern:/(\b(?:class|struct)\s+\w+\s*:\s*)[^;{}"'\s]+(?:\s+[^;{}"'\s]+)*(?=\s*[;{])/,lookbehind:!0,greedy:!0,inside:e.languages.extend("cpp",{})}}),e.languages.insertBefore("inside","double-colon",{"class-name":/\b[a-z_]\w*\b(?!\s*::)/i},e.languages.cpp["base-clause"])}(F);((e,t)=>{for(var n in t)g(e,n,{get:t[n],enumerable:!0})})({},{dracula:()=>R,duotoneDark:()=>T,duotoneLight:()=>_,github:()=>I,jettwaveDark:()=>G,jettwaveLight:()=>Z,nightOwl:()=>O,nightOwlLight:()=>L,oceanicNext:()=>D,okaidia:()=>B,palenight:()=>$,shadesOfPurple:()=>j,synthwave84:()=>P,ultramin:()=>z,vsDark:()=>M,vsLight:()=>U});var R={plain:{color:"#F8F8F2",backgroundColor:"#282A36"},styles:[{types:["prolog","constant","builtin"],style:{color:"rgb(189, 147, 249)"}},{types:["inserted","function"],style:{color:"rgb(80, 250, 123)"}},{types:["deleted"],style:{color:"rgb(255, 85, 85)"}},{types:["changed"],style:{color:"rgb(255, 184, 108)"}},{types:["punctuation","symbol"],style:{color:"rgb(248, 248, 242)"}},{types:["string","char","tag","selector"],style:{color:"rgb(255, 121, 198)"}},{types:["keyword","variable"],style:{color:"rgb(189, 147, 249)",fontStyle:"italic"}},{types:["comment"],style:{color:"rgb(98, 114, 164)"}},{types:["attr-name"],style:{color:"rgb(241, 250, 140)"}}]},T={plain:{backgroundColor:"#2a2734",color:"#9a86fd"},styles:[{types:["comment","prolog","doctype","cdata","punctuation"],style:{color:"#6c6783"}},{types:["namespace"],style:{opacity:.7}},{types:["tag","operator","number"],style:{color:"#e09142"}},{types:["property","function"],style:{color:"#9a86fd"}},{types:["tag-id","selector","atrule-id"],style:{color:"#eeebff"}},{types:["attr-name"],style:{color:"#c4b9fe"}},{types:["boolean","string","entity","url","attr-value","keyword","control","directive","unit","statement","regex","atrule","placeholder","variable"],style:{color:"#ffcc99"}},{types:["deleted"],style:{textDecorationLine:"line-through"}},{types:["inserted"],style:{textDecorationLine:"underline"}},{types:["italic"],style:{fontStyle:"italic"}},{types:["important","bold"],style:{fontWeight:"bold"}},{types:["important"],style:{color:"#c4b9fe"}}]},_={plain:{backgroundColor:"#faf8f5",color:"#728fcb"},styles:[{types:["comment","prolog","doctype","cdata","punctuation"],style:{color:"#b6ad9a"}},{types:["namespace"],style:{opacity:.7}},{types:["tag","operator","number"],style:{color:"#063289"}},{types:["property","function"],style:{color:"#b29762"}},{types:["tag-id","selector","atrule-id"],style:{color:"#2d2006"}},{types:["attr-name"],style:{color:"#896724"}},{types:["boolean","string","entity","url","attr-value","keyword","control","directive","unit","statement","regex","atrule"],style:{color:"#728fcb"}},{types:["placeholder","variable"],style:{color:"#93abdc"}},{types:["deleted"],style:{textDecorationLine:"line-through"}},{types:["inserted"],style:{textDecorationLine:"underline"}},{types:["italic"],style:{fontStyle:"italic"}},{types:["important","bold"],style:{fontWeight:"bold"}},{types:["important"],style:{color:"#896724"}}]},I={plain:{color:"#393A34",backgroundColor:"#f6f8fa"},styles:[{types:["comment","prolog","doctype","cdata"],style:{color:"#999988",fontStyle:"italic"}},{types:["namespace"],style:{opacity:.7}},{types:["string","attr-value"],style:{color:"#e3116c"}},{types:["punctuation","operator"],style:{color:"#393A34"}},{types:["entity","url","symbol","number","boolean","variable","constant","property","regex","inserted"],style:{color:"#36acaa"}},{types:["atrule","keyword","attr-name","selector"],style:{color:"#00a4db"}},{types:["function","deleted","tag"],style:{color:"#d73a49"}},{types:["function-variable"],style:{color:"#6f42c1"}},{types:["tag","selector","keyword"],style:{color:"#00009f"}}]},O={plain:{color:"#d6deeb",backgroundColor:"#011627"},styles:[{types:["changed"],style:{color:"rgb(162, 191, 252)",fontStyle:"italic"}},{types:["deleted"],style:{color:"rgba(239, 83, 80, 0.56)",fontStyle:"italic"}},{types:["inserted","attr-name"],style:{color:"rgb(173, 219, 103)",fontStyle:"italic"}},{types:["comment"],style:{color:"rgb(99, 119, 119)",fontStyle:"italic"}},{types:["string","url"],style:{color:"rgb(173, 219, 103)"}},{types:["variable"],style:{color:"rgb(214, 222, 235)"}},{types:["number"],style:{color:"rgb(247, 140, 108)"}},{types:["builtin","char","constant","function"],style:{color:"rgb(130, 170, 255)"}},{types:["punctuation"],style:{color:"rgb(199, 146, 234)"}},{types:["selector","doctype"],style:{color:"rgb(199, 146, 234)",fontStyle:"italic"}},{types:["class-name"],style:{color:"rgb(255, 203, 139)"}},{types:["tag","operator","keyword"],style:{color:"rgb(127, 219, 202)"}},{types:["boolean"],style:{color:"rgb(255, 88, 116)"}},{types:["property"],style:{color:"rgb(128, 203, 196)"}},{types:["namespace"],style:{color:"rgb(178, 204, 214)"}}]},L={plain:{color:"#403f53",backgroundColor:"#FBFBFB"},styles:[{types:["changed"],style:{color:"rgb(162, 191, 252)",fontStyle:"italic"}},{types:["deleted"],style:{color:"rgba(239, 83, 80, 0.56)",fontStyle:"italic"}},{types:["inserted","attr-name"],style:{color:"rgb(72, 118, 214)",fontStyle:"italic"}},{types:["comment"],style:{color:"rgb(152, 159, 177)",fontStyle:"italic"}},{types:["string","builtin","char","constant","url"],style:{color:"rgb(72, 118, 214)"}},{types:["variable"],style:{color:"rgb(201, 103, 101)"}},{types:["number"],style:{color:"rgb(170, 9, 130)"}},{types:["punctuation"],style:{color:"rgb(153, 76, 195)"}},{types:["function","selector","doctype"],style:{color:"rgb(153, 76, 195)",fontStyle:"italic"}},{types:["class-name"],style:{color:"rgb(17, 17, 17)"}},{types:["tag"],style:{color:"rgb(153, 76, 195)"}},{types:["operator","property","keyword","namespace"],style:{color:"rgb(12, 150, 155)"}},{types:["boolean"],style:{color:"rgb(188, 84, 84)"}}]},N="#c5a5c5",C="#8dc891",D={plain:{backgroundColor:"#282c34",color:"#ffffff"},styles:[{types:["attr-name"],style:{color:N}},{types:["attr-value"],style:{color:C}},{types:["comment","block-comment","prolog","doctype","cdata","shebang"],style:{color:"#999999"}},{types:["property","number","function-name","constant","symbol","deleted"],style:{color:"#5a9bcf"}},{types:["boolean"],style:{color:"#ff8b50"}},{types:["tag"],style:{color:"#fc929e"}},{types:["string"],style:{color:C}},{types:["punctuation"],style:{color:C}},{types:["selector","char","builtin","inserted"],style:{color:"#D8DEE9"}},{types:["function"],style:{color:"#79b6f2"}},{types:["operator","entity","url","variable"],style:{color:"#d7deea"}},{types:["keyword"],style:{color:N}},{types:["atrule","class-name"],style:{color:"#FAC863"}},{types:["important"],style:{fontWeight:"400"}},{types:["bold"],style:{fontWeight:"bold"}},{types:["italic"],style:{fontStyle:"italic"}},{types:["namespace"],style:{opacity:.7}}]},B={plain:{color:"#f8f8f2",backgroundColor:"#272822"},styles:[{types:["changed"],style:{color:"rgb(162, 191, 252)",fontStyle:"italic"}},{types:["deleted"],style:{color:"#f92672",fontStyle:"italic"}},{types:["inserted"],style:{color:"rgb(173, 219, 103)",fontStyle:"italic"}},{types:["comment"],style:{color:"#8292a2",fontStyle:"italic"}},{types:["string","url"],style:{color:"#a6e22e"}},{types:["variable"],style:{color:"#f8f8f2"}},{types:["number"],style:{color:"#ae81ff"}},{types:["builtin","char","constant","function","class-name"],style:{color:"#e6db74"}},{types:["punctuation"],style:{color:"#f8f8f2"}},{types:["selector","doctype"],style:{color:"#a6e22e",fontStyle:"italic"}},{types:["tag","operator","keyword"],style:{color:"#66d9ef"}},{types:["boolean"],style:{color:"#ae81ff"}},{types:["namespace"],style:{color:"rgb(178, 204, 214)",opacity:.7}},{types:["tag","property"],style:{color:"#f92672"}},{types:["attr-name"],style:{color:"#a6e22e !important"}},{types:["doctype"],style:{color:"#8292a2"}},{types:["rule"],style:{color:"#e6db74"}}]},$={plain:{color:"#bfc7d5",backgroundColor:"#292d3e"},styles:[{types:["comment"],style:{color:"rgb(105, 112, 152)",fontStyle:"italic"}},{types:["string","inserted"],style:{color:"rgb(195, 232, 141)"}},{types:["number"],style:{color:"rgb(247, 140, 108)"}},{types:["builtin","char","constant","function"],style:{color:"rgb(130, 170, 255)"}},{types:["punctuation","selector"],style:{color:"rgb(199, 146, 234)"}},{types:["variable"],style:{color:"rgb(191, 199, 213)"}},{types:["class-name","attr-name"],style:{color:"rgb(255, 203, 107)"}},{types:["tag","deleted"],style:{color:"rgb(255, 85, 114)"}},{types:["operator"],style:{color:"rgb(137, 221, 255)"}},{types:["boolean"],style:{color:"rgb(255, 88, 116)"}},{types:["keyword"],style:{fontStyle:"italic"}},{types:["doctype"],style:{color:"rgb(199, 146, 234)",fontStyle:"italic"}},{types:["namespace"],style:{color:"rgb(178, 204, 214)"}},{types:["url"],style:{color:"rgb(221, 221, 221)"}}]},j={plain:{color:"#9EFEFF",backgroundColor:"#2D2A55"},styles:[{types:["changed"],style:{color:"rgb(255, 238, 128)"}},{types:["deleted"],style:{color:"rgba(239, 83, 80, 0.56)"}},{types:["inserted"],style:{color:"rgb(173, 219, 103)"}},{types:["comment"],style:{color:"rgb(179, 98, 255)",fontStyle:"italic"}},{types:["punctuation"],style:{color:"rgb(255, 255, 255)"}},{types:["constant"],style:{color:"rgb(255, 98, 140)"}},{types:["string","url"],style:{color:"rgb(165, 255, 144)"}},{types:["variable"],style:{color:"rgb(255, 238, 128)"}},{types:["number","boolean"],style:{color:"rgb(255, 98, 140)"}},{types:["attr-name"],style:{color:"rgb(255, 180, 84)"}},{types:["keyword","operator","property","namespace","tag","selector","doctype"],style:{color:"rgb(255, 157, 0)"}},{types:["builtin","char","constant","function","class-name"],style:{color:"rgb(250, 208, 0)"}}]},P={plain:{backgroundColor:"linear-gradient(to bottom, #2a2139 75%, #34294f)",backgroundImage:"#34294f",color:"#f92aad",textShadow:"0 0 2px #100c0f, 0 0 5px #dc078e33, 0 0 10px #fff3"},styles:[{types:["comment","block-comment","prolog","doctype","cdata"],style:{color:"#495495",fontStyle:"italic"}},{types:["punctuation"],style:{color:"#ccc"}},{types:["tag","attr-name","namespace","number","unit","hexcode","deleted"],style:{color:"#e2777a"}},{types:["property","selector"],style:{color:"#72f1b8",textShadow:"0 0 2px #100c0f, 0 0 10px #257c5575, 0 0 35px #21272475"}},{types:["function-name"],style:{color:"#6196cc"}},{types:["boolean","selector-id","function"],style:{color:"#fdfdfd",textShadow:"0 0 2px #001716, 0 0 3px #03edf975, 0 0 5px #03edf975, 0 0 8px #03edf975"}},{types:["class-name","maybe-class-name","builtin"],style:{color:"#fff5f6",textShadow:"0 0 2px #000, 0 0 10px #fc1f2c75, 0 0 5px #fc1f2c75, 0 0 25px #fc1f2c75"}},{types:["constant","symbol"],style:{color:"#f92aad",textShadow:"0 0 2px #100c0f, 0 0 5px #dc078e33, 0 0 10px #fff3"}},{types:["important","atrule","keyword","selector-class"],style:{color:"#f4eee4",textShadow:"0 0 2px #393a33, 0 0 8px #f39f0575, 0 0 2px #f39f0575"}},{types:["string","char","attr-value","regex","variable"],style:{color:"#f87c32"}},{types:["parameter"],style:{fontStyle:"italic"}},{types:["entity","url"],style:{color:"#67cdcc"}},{types:["operator"],style:{color:"ffffffee"}},{types:["important","bold"],style:{fontWeight:"bold"}},{types:["italic"],style:{fontStyle:"italic"}},{types:["entity"],style:{cursor:"help"}},{types:["inserted"],style:{color:"green"}}]},z={plain:{color:"#282a2e",backgroundColor:"#ffffff"},styles:[{types:["comment"],style:{color:"rgb(197, 200, 198)"}},{types:["string","number","builtin","variable"],style:{color:"rgb(150, 152, 150)"}},{types:["class-name","function","tag","attr-name"],style:{color:"rgb(40, 42, 46)"}}]},M={plain:{color:"#9CDCFE",backgroundColor:"#1E1E1E"},styles:[{types:["prolog"],style:{color:"rgb(0, 0, 128)"}},{types:["comment"],style:{color:"rgb(106, 153, 85)"}},{types:["builtin","changed","keyword","interpolation-punctuation"],style:{color:"rgb(86, 156, 214)"}},{types:["number","inserted"],style:{color:"rgb(181, 206, 168)"}},{types:["constant"],style:{color:"rgb(100, 102, 149)"}},{types:["attr-name","variable"],style:{color:"rgb(156, 220, 254)"}},{types:["deleted","string","attr-value","template-punctuation"],style:{color:"rgb(206, 145, 120)"}},{types:["selector"],style:{color:"rgb(215, 186, 125)"}},{types:["tag"],style:{color:"rgb(78, 201, 176)"}},{types:["tag"],languages:["markup"],style:{color:"rgb(86, 156, 214)"}},{types:["punctuation","operator"],style:{color:"rgb(212, 212, 212)"}},{types:["punctuation"],languages:["markup"],style:{color:"#808080"}},{types:["function"],style:{color:"rgb(220, 220, 170)"}},{types:["class-name"],style:{color:"rgb(78, 201, 176)"}},{types:["char"],style:{color:"rgb(209, 105, 105)"}}]},U={plain:{color:"#000000",backgroundColor:"#ffffff"},styles:[{types:["comment"],style:{color:"rgb(0, 128, 0)"}},{types:["builtin"],style:{color:"rgb(0, 112, 193)"}},{types:["number","variable","inserted"],style:{color:"rgb(9, 134, 88)"}},{types:["operator"],style:{color:"rgb(0, 0, 0)"}},{types:["constant","char"],style:{color:"rgb(129, 31, 63)"}},{types:["tag"],style:{color:"rgb(128, 0, 0)"}},{types:["attr-name"],style:{color:"rgb(255, 0, 0)"}},{types:["deleted","string"],style:{color:"rgb(163, 21, 21)"}},{types:["changed","punctuation"],style:{color:"rgb(4, 81, 165)"}},{types:["function","keyword"],style:{color:"rgb(0, 0, 255)"}},{types:["class-name"],style:{color:"rgb(38, 127, 153)"}}]},G={plain:{color:"#f8fafc",backgroundColor:"#011627"},styles:[{types:["prolog"],style:{color:"#000080"}},{types:["comment"],style:{color:"#6A9955"}},{types:["builtin","changed","keyword","interpolation-punctuation"],style:{color:"#569CD6"}},{types:["number","inserted"],style:{color:"#B5CEA8"}},{types:["constant"],style:{color:"#f8fafc"}},{types:["attr-name","variable"],style:{color:"#9CDCFE"}},{types:["deleted","string","attr-value","template-punctuation"],style:{color:"#cbd5e1"}},{types:["selector"],style:{color:"#D7BA7D"}},{types:["tag"],style:{color:"#0ea5e9"}},{types:["tag"],languages:["markup"],style:{color:"#0ea5e9"}},{types:["punctuation","operator"],style:{color:"#D4D4D4"}},{types:["punctuation"],languages:["markup"],style:{color:"#808080"}},{types:["function"],style:{color:"#7dd3fc"}},{types:["class-name"],style:{color:"#0ea5e9"}},{types:["char"],style:{color:"#D16969"}}]},Z={plain:{color:"#0f172a",backgroundColor:"#f1f5f9"},styles:[{types:["prolog"],style:{color:"#000080"}},{types:["comment"],style:{color:"#6A9955"}},{types:["builtin","changed","keyword","interpolation-punctuation"],style:{color:"#0c4a6e"}},{types:["number","inserted"],style:{color:"#B5CEA8"}},{types:["constant"],style:{color:"#0f172a"}},{types:["attr-name","variable"],style:{color:"#0c4a6e"}},{types:["deleted","string","attr-value","template-punctuation"],style:{color:"#64748b"}},{types:["selector"],style:{color:"#D7BA7D"}},{types:["tag"],style:{color:"#0ea5e9"}},{types:["tag"],languages:["markup"],style:{color:"#0ea5e9"}},{types:["punctuation","operator"],style:{color:"#475569"}},{types:["punctuation"],languages:["markup"],style:{color:"#808080"}},{types:["function"],style:{color:"#0e7490"}},{types:["class-name"],style:{color:"#0ea5e9"}},{types:["char"],style:{color:"#D16969"}}]},q=(e,t)=>{const{plain:n}=e,a=e.styles.reduce(((e,n)=>{const{languages:a,style:r}=n;return a&&!a.includes(t)||n.types.forEach((t=>{const n=v(v({},e[t]),r);e[t]=n})),e}),{});return a.root=n,a.plain=A(v({},n),{backgroundColor:void 0}),a},W=/\r\n|\r|\n/,Y=e=>{0===e.length?e.push({types:["plain"],content:"\n",empty:!0}):1===e.length&&""===e[0].content&&(e[0].content="\n",e[0].empty=!0)},H=(e,t)=>{const n=e.length;return n>0&&e[n-1]===t?e:e.concat(t)},K=e=>{const t=[[]],n=[e],a=[0],r=[e.length];let o=0,s=0,l=[];const i=[l];for(;s>-1;){for(;(o=a[s]++)0?c:["plain"],e=u):(c=H(c,u.type),u.alias&&(c=H(c,u.alias)),e=u.content),"string"!=typeof e){s++,t.push(c),n.push(e),a.push(0),r.push(e.length);continue}const p=e.split(W),g=p.length;l.push({types:c,content:p[0]});for(let t=1;t{const s=t.toLowerCase(),l=((e,t)=>{const[n,r]=(0,a.useState)(q(t,e)),o=(0,a.useRef)(),s=(0,a.useRef)();return(0,a.useEffect)((()=>{t===o.current&&e===s.current||(o.current=t,s.current=e,r(q(t,e)))}),[e,t]),n})(s,r),i=(e=>(0,a.useCallback)((t=>{var n=t,{className:a,style:r,line:o}=n,s=x(n,["className","style","line"]);const l=A(v({},s),{className:u("token-line",a)});return"object"==typeof e&&"plain"in e&&(l.style=e.plain),"object"==typeof r&&(l.style=v(v({},l.style||{}),r)),l}),[e]))(l),c=(e=>{const t=(0,a.useCallback)((({types:t,empty:n})=>{if(null!=e)return 1===t.length&&"plain"===t[0]?null!=n?{display:"inline-block"}:void 0:1===t.length&&null!=n?e[t[0]]:Object.assign(null!=n?{display:"inline-block"}:{},...t.map((t=>e[t])))}),[e]);return(0,a.useCallback)((e=>{var n=e,{token:a,className:r,style:o}=n,s=x(n,["token","className","style"]);const l=A(v({},s),{className:u("token",...a.types,r),children:a.content,style:t(a)});return null!=o&&(l.style=v(v({},l.style||{}),o)),l}),[t])})(l),p=(({prism:e,code:t,grammar:n,language:r})=>{const o=(0,a.useRef)(e);return(0,a.useMemo)((()=>{if(null==n)return K([t]);const e={code:t,grammar:n,language:r,tokens:[]};return o.current.hooks.run("before-tokenize",e),e.tokens=o.current.tokenize(t,n),o.current.hooks.run("after-tokenize",e),K(e.tokens)}),[t,n,r])})({prism:o,language:s,code:n,grammar:o.languages[s]});return e({tokens:p,className:`prism-code language-${s}`,style:null!=l?l.root:{},getLineProps:i,getTokenProps:c})},X=e=>(0,a.createElement)(V,A(v({},e),{prism:e.prism||F,theme:e.theme||M,code:e.code,language:e.language})),Q=n(4893);const J={plain:{color:"#0f172a",backgroundColor:"#f1f5f9"},styles:[{types:["prolog"],style:{color:"#000080"}},{types:["comment"],style:{color:"#6A9955"}},{types:["builtin","changed","keyword","interpolation-punctuation"],style:{color:"#0c4a6e"}},{types:["number","inserted"],style:{color:"#B5CEA8"}},{types:["constant"],style:{color:"#0f172a"}},{types:["attr-name","variable"],style:{color:"#0c4a6e"}},{types:["deleted","string","attr-value","template-punctuation"],style:{color:"#64748b"}},{types:["selector"],style:{color:"#D7BA7D"}},{types:["tag"],style:{color:"#0ea5e9"}},{types:["tag"],languages:["markup"],style:{color:"#0ea5e9"}},{types:["punctuation","operator"],style:{color:"#475569"}},{types:["punctuation"],languages:["markup"],style:{color:"#808080"}},{types:["function"],style:{color:"#0e7490"}},{types:["class-name"],style:{color:"#0ea5e9"}},{types:["char"],style:{color:"#D16969"}}]},ee={plain:{backgroundColor:"#2a2734",color:"#9a86fd"},styles:[{types:["comment","prolog","doctype","cdata","punctuation"],style:{color:"#6c6783"}},{types:["namespace"],style:{opacity:.7}},{types:["tag","operator","number"],style:{color:"#e09142"}},{types:["property","function"],style:{color:"#9a86fd"}},{types:["tag-id","selector","atrule-id"],style:{color:"#eeebff"}},{types:["attr-name"],style:{color:"#c4b9fe"}},{types:["boolean","string","entity","url","attr-value","keyword","control","directive","unit","statement","regex","atrule","placeholder","variable"],style:{color:"#ffcc99"}},{types:["deleted"],style:{textDecorationLine:"line-through"}},{types:["inserted"],style:{textDecorationLine:"underline"}},{types:["italic"],style:{fontStyle:"italic"}},{types:["important","bold"],style:{fontWeight:"bold"}},{types:["important"],style:{color:"#c4b9fe"}}]};var te=e=>{let{children:t,className:n}=e;n||(n="language-test");const r=n.replace(/language-/gm,""),o=(0,a.useContext)(Q.Ni),{0:s,1:l}=(0,a.useState)(!1),i="light"===o?J:ee;return(0,a.useEffect)((()=>{l(!0)}),[]),s?a.createElement(X,{code:t,language:r,theme:i},(e=>{let{className:t,style:n,tokens:r,getLineProps:o,getTokenProps:s}=e;return a.createElement("pre",{className:t,style:n},r.slice(0,-1).map(((e,t)=>a.createElement("div",Object.assign({key:t},o({line:e,key:t})),e.map(((e,t)=>a.createElement("span",Object.assign({key:t},s({token:e,key:t})))))))))})):null}},1151:function(e,t,n){n.d(t,{Zo:function(){return l},ah:function(){return o}});var a=n(7294);const r=a.createContext({});function o(e){const t=a.useContext(r);return a.useMemo((()=>"function"==typeof e?e(t):{...t,...e}),[t,e])}const s={};function l({components:e,children:t,disableParentContext:n}){let l;return l=n?"function"==typeof e?e({}):e||s:o(e),a.createElement(r.Provider,{value:l},t)}}}]); +//# sourceMappingURL=3593e9597659f01632f7c3576f9dbb5ef523d6b7-eafd487b38767ad0ca55.js.map \ No newline at end of file diff --git a/3593e9597659f01632f7c3576f9dbb5ef523d6b7-eafd487b38767ad0ca55.js.LICENSE.txt b/3593e9597659f01632f7c3576f9dbb5ef523d6b7-eafd487b38767ad0ca55.js.LICENSE.txt new file mode 100644 index 0000000..8938b82 --- /dev/null +++ b/3593e9597659f01632f7c3576f9dbb5ef523d6b7-eafd487b38767ad0ca55.js.LICENSE.txt @@ -0,0 +1,12 @@ +/*! Bundled license information: + +prismjs/prism.js: + (** + * Prism: Lightweight, robust, elegant syntax highlighting + * + * @license MIT + * @author Lea Verou + * @namespace + * @public + *) +*/ diff --git a/3593e9597659f01632f7c3576f9dbb5ef523d6b7-eafd487b38767ad0ca55.js.map b/3593e9597659f01632f7c3576f9dbb5ef523d6b7-eafd487b38767ad0ca55.js.map new file mode 100644 index 0000000..4829a0c --- /dev/null +++ b/3593e9597659f01632f7c3576f9dbb5ef523d6b7-eafd487b38767ad0ca55.js.map @@ -0,0 +1 @@ +{"version":3,"file":"3593e9597659f01632f7c3576f9dbb5ef523d6b7-eafd487b38767ad0ca55.js","mappings":"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","sources":["webpack://ppx-gatsby-blog/./node_modules/clsx/dist/clsx.m.js","webpack://ppx-gatsby-blog/./node_modules/prism-react-renderer/dist/index.mjs","webpack://ppx-gatsby-blog/./src/lib/prismThemes.ts","webpack://ppx-gatsby-blog/./src/components/prism-syntax-highlight.tsx","webpack://ppx-gatsby-blog/./node_modules/@mdx-js/react/lib/index.js"],"sourcesContent":["function r(e){var t,f,n=\"\";if(\"string\"==typeof e||\"number\"==typeof e)n+=e;else if(\"object\"==typeof e)if(Array.isArray(e))for(t=0;t key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __spreadValues = (a, b) => {\n for (var prop in b || (b = {}))\n if (__hasOwnProp.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n if (__getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(b)) {\n if (__propIsEnum.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n }\n return a;\n};\nvar __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));\nvar __objRest = (source, exclude) => {\n var target = {};\n for (var prop in source)\n if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)\n target[prop] = source[prop];\n if (source != null && __getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(source)) {\n if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))\n target[prop] = source[prop];\n }\n return target;\n};\nvar __commonJS = (cb, mod) => function __require() {\n return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;\n};\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(\n // If the importer is in node compatibility mode or this is not an ESM\n // file that has been converted to a CommonJS file using a Babel-\n // compatible transform (i.e. \"__esModule\" has not been set), then set\n // \"default\" to the CommonJS \"module.exports\" for node compatibility.\n isNodeMode || !mod || !mod.__esModule ? __defProp(target, \"default\", { value: mod, enumerable: true }) : target,\n mod\n));\n\n// ../../node_modules/.pnpm/prismjs@1.29.0_patch_hash=vrxx3pzkik6jpmgpayxfjunetu/node_modules/prismjs/prism.js\nvar require_prism = __commonJS({\n \"../../node_modules/.pnpm/prismjs@1.29.0_patch_hash=vrxx3pzkik6jpmgpayxfjunetu/node_modules/prismjs/prism.js\"(exports, module) {\n var Prism2 = function() {\n var lang = /(?:^|\\s)lang(?:uage)?-([\\w-]+)(?=\\s|$)/i;\n var uniqueId = 0;\n var plainTextGrammar = {};\n var _ = {\n /**\n * A namespace for utility methods.\n *\n * All function in this namespace that are not explicitly marked as _public_ are for __internal use only__ and may\n * change or disappear at any time.\n *\n * @namespace\n * @memberof Prism\n */\n util: {\n encode: function encode(tokens) {\n if (tokens instanceof Token) {\n return new Token(tokens.type, encode(tokens.content), tokens.alias);\n } else if (Array.isArray(tokens)) {\n return tokens.map(encode);\n } else {\n return tokens.replace(/&/g, \"&\").replace(/} [visited]\n * @returns {T}\n * @template T\n */\n clone: function deepClone(o, visited) {\n visited = visited || {};\n var clone;\n var id;\n switch (_.util.type(o)) {\n case \"Object\":\n id = _.util.objId(o);\n if (visited[id]) {\n return visited[id];\n }\n clone = /** @type {Record} */\n {};\n visited[id] = clone;\n for (var key in o) {\n if (o.hasOwnProperty(key)) {\n clone[key] = deepClone(o[key], visited);\n }\n }\n return (\n /** @type {any} */\n clone\n );\n case \"Array\":\n id = _.util.objId(o);\n if (visited[id]) {\n return visited[id];\n }\n clone = [];\n visited[id] = clone;\n /** @type {Array} */\n /** @type {any} */\n o.forEach(function(v, i) {\n clone[i] = deepClone(v, visited);\n });\n return (\n /** @type {any} */\n clone\n );\n default:\n return o;\n }\n },\n /**\n * Returns the Prism language of the given element set by a `language-xxxx` or `lang-xxxx` class.\n *\n * If no language is set for the element or the element is `null` or `undefined`, `none` will be returned.\n *\n * @param {Element} element\n * @returns {string}\n */\n getLanguage: function(element) {\n while (element) {\n var m = lang.exec(element.className);\n if (m) {\n return m[1].toLowerCase();\n }\n element = element.parentElement;\n }\n return \"none\";\n },\n /**\n * Sets the Prism `language-xxxx` class of the given element.\n *\n * @param {Element} element\n * @param {string} language\n * @returns {void}\n */\n setLanguage: function(element, language) {\n element.className = element.className.replace(RegExp(lang, \"gi\"), \"\");\n element.classList.add(\"language-\" + language);\n },\n /**\n * Returns whether a given class is active for `element`.\n *\n * The class can be activated if `element` or one of its ancestors has the given class and it can be deactivated\n * if `element` or one of its ancestors has the negated version of the given class. The _negated version_ of the\n * given class is just the given class with a `no-` prefix.\n *\n * Whether the class is active is determined by the closest ancestor of `element` (where `element` itself is\n * closest ancestor) that has the given class or the negated version of it. If neither `element` nor any of its\n * ancestors have the given class or the negated version of it, then the default activation will be returned.\n *\n * In the paradoxical situation where the closest ancestor contains __both__ the given class and the negated\n * version of it, the class is considered active.\n *\n * @param {Element} element\n * @param {string} className\n * @param {boolean} [defaultActivation=false]\n * @returns {boolean}\n */\n isActive: function(element, className, defaultActivation) {\n var no = \"no-\" + className;\n while (element) {\n var classList = element.classList;\n if (classList.contains(className)) {\n return true;\n }\n if (classList.contains(no)) {\n return false;\n }\n element = element.parentElement;\n }\n return !!defaultActivation;\n }\n },\n /**\n * This namespace contains all currently loaded languages and the some helper functions to create and modify languages.\n *\n * @namespace\n * @memberof Prism\n * @public\n */\n languages: {\n /**\n * The grammar for plain, unformatted text.\n */\n plain: plainTextGrammar,\n plaintext: plainTextGrammar,\n text: plainTextGrammar,\n txt: plainTextGrammar,\n /**\n * Creates a deep copy of the language with the given id and appends the given tokens.\n *\n * If a token in `redef` also appears in the copied language, then the existing token in the copied language\n * will be overwritten at its original position.\n *\n * ## Best practices\n *\n * Since the position of overwriting tokens (token in `redef` that overwrite tokens in the copied language)\n * doesn't matter, they can technically be in any order. However, this can be confusing to others that trying to\n * understand the language definition because, normally, the order of tokens matters in Prism grammars.\n *\n * Therefore, it is encouraged to order overwriting tokens according to the positions of the overwritten tokens.\n * Furthermore, all non-overwriting tokens should be placed after the overwriting ones.\n *\n * @param {string} id The id of the language to extend. This has to be a key in `Prism.languages`.\n * @param {Grammar} redef The new tokens to append.\n * @returns {Grammar} The new language created.\n * @public\n * @example\n * Prism.languages['css-with-colors'] = Prism.languages.extend('css', {\n * // Prism.languages.css already has a 'comment' token, so this token will overwrite CSS' 'comment' token\n * // at its original position\n * 'comment': { ... },\n * // CSS doesn't have a 'color' token, so this token will be appended\n * 'color': /\\b(?:red|green|blue)\\b/\n * });\n */\n extend: function(id, redef) {\n var lang2 = _.util.clone(_.languages[id]);\n for (var key in redef) {\n lang2[key] = redef[key];\n }\n return lang2;\n },\n /**\n * Inserts tokens _before_ another token in a language definition or any other grammar.\n *\n * ## Usage\n *\n * This helper method makes it easy to modify existing languages. For example, the CSS language definition\n * not only defines CSS highlighting for CSS documents, but also needs to define highlighting for CSS embedded\n * in HTML through `Not found

Page not found

Sorry 😔, we couldn’t find what you were looking for.

Go home.

+ + \ No newline at end of file diff --git a/404/index.html b/404/index.html new file mode 100644 index 0000000..e526b75 --- /dev/null +++ b/404/index.html @@ -0,0 +1,9 @@ +Not found

Page not found

Sorry 😔, we couldn’t find what you were looking for.

Go home.

+ + \ No newline at end of file diff --git a/5470a255fbdbf50a36e606a4068fa8dfcc405439-1de734c24ec8fdac70e8.js b/5470a255fbdbf50a36e606a4068fa8dfcc405439-1de734c24ec8fdac70e8.js new file mode 100644 index 0000000..ec74eae --- /dev/null +++ b/5470a255fbdbf50a36e606a4068fa8dfcc405439-1de734c24ec8fdac70e8.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkppx_gatsby_blog=self.webpackChunkppx_gatsby_blog||[]).push([[743],{3204:function(e){const t=/[\p{Lu}]/u,n=/[\p{Ll}]/u,r=/^[\p{Lu}](?![\p{Lu}])/gu,o=/([\p{Alpha}\p{N}_]|$)/u,s=/[_.\- ]+/,i=new RegExp("^"+s.source),a=new RegExp(s.source+o.source,"gu"),c=new RegExp("\\d+"+o.source,"gu"),l=(e,o)=>{if("string"!=typeof e&&!Array.isArray(e))throw new TypeError("Expected the input to be `string | string[]`");if(o={pascalCase:!1,preserveConsecutiveUppercase:!1,...o},0===(e=Array.isArray(e)?e.map((e=>e.trim())).filter((e=>e.length)).join("-"):e.trim()).length)return"";const s=!1===o.locale?e=>e.toLowerCase():e=>e.toLocaleLowerCase(o.locale),l=!1===o.locale?e=>e.toUpperCase():e=>e.toLocaleUpperCase(o.locale);if(1===e.length)return o.pascalCase?l(e):s(e);return e!==s(e)&&(e=((e,r,o)=>{let s=!1,i=!1,a=!1;for(let c=0;c(r.lastIndex=0,e.replace(r,(e=>t(e)))))(e,s):s(e),o.pascalCase&&(e=l(e.charAt(0))+e.slice(1)),((e,t)=>(a.lastIndex=0,c.lastIndex=0,e.replace(a,((e,n)=>t(n))).replace(c,(e=>t(e)))))(e,l)};e.exports=l,e.exports.default=l},8032:function(e,t,n){n.d(t,{G:function(){return _},L:function(){return h},M:function(){return S},P:function(){return v},_:function(){return a},a:function(){return i},b:function(){return u},g:function(){return d},h:function(){return c}});var r=n(7294),o=(n(3204),n(5697)),s=n.n(o);function i(){return i=Object.assign?Object.assign.bind():function(e){for(var t=1;t=0||(o[n]=e[n]);return o}const c=()=>"undefined"!=typeof HTMLImageElement&&"loading"in HTMLImageElement.prototype;function l(e,t,n){const r={};let o="gatsby-image-wrapper";return"fixed"===n?(r.width=e,r.height=t):"constrained"===n&&(o="gatsby-image-wrapper gatsby-image-wrapper-constrained"),{className:o,"data-gatsby-image-wrapper":"",style:r}}function u(e,t,n,r,o){return void 0===o&&(o={}),i({},n,{loading:r,shouldLoad:e,"data-main-image":"",style:i({},o,{opacity:t?1:0})})}function d(e,t,n,r,o,s,a,c){const l={};s&&(l.backgroundColor=s,"fixed"===n?(l.width=r,l.height=o,l.backgroundColor=s,l.position="relative"):("constrained"===n||"fullWidth"===n)&&(l.position="absolute",l.top=0,l.left=0,l.bottom=0,l.right=0)),a&&(l.objectFit=a),c&&(l.objectPosition=c);const u=i({},e,{"aria-hidden":!0,"data-placeholder-image":"",style:i({opacity:t?0:1,transition:"opacity 500ms linear"},l)});return u}const f=["children"],p=function(e){let{layout:t,width:n,height:o}=e;return"fullWidth"===t?r.createElement("div",{"aria-hidden":!0,style:{paddingTop:o/n*100+"%"}}):"constrained"===t?r.createElement("div",{style:{maxWidth:n,display:"block"}},r.createElement("img",{alt:"",role:"presentation","aria-hidden":"true",src:"data:image/svg+xml;charset=utf-8,%3Csvg%20height='"+o+"'%20width='"+n+"'%20xmlns='http://www.w3.org/2000/svg'%20version='1.1'%3E%3C/svg%3E",style:{maxWidth:"100%",display:"block",position:"static"}})):null},h=function(e){let{children:t}=e,n=a(e,f);return r.createElement(r.Fragment,null,r.createElement(p,i({},n)),t,null)},m=["src","srcSet","loading","alt","shouldLoad"],g=["fallback","sources","shouldLoad"],y=function(e){let{src:t,srcSet:n,loading:o,alt:s="",shouldLoad:c}=e,l=a(e,m);return r.createElement("img",i({},l,{decoding:"async",loading:o,src:c?t:void 0,"data-src":c?void 0:t,srcSet:c?n:void 0,"data-srcset":c?void 0:n,alt:s}))},b=function(e){let{fallback:t,sources:n=[],shouldLoad:o=!0}=e,s=a(e,g);const c=s.sizes||(null==t?void 0:t.sizes),l=r.createElement(y,i({},s,t,{sizes:c,shouldLoad:o}));return n.length?r.createElement("picture",null,n.map((e=>{let{media:t,srcSet:n,type:s}=e;return r.createElement("source",{key:t+"-"+s+"-"+n,type:s,media:t,srcSet:o?n:void 0,"data-srcset":o?void 0:n,sizes:c})})),l):l};var w;y.propTypes={src:o.string.isRequired,alt:o.string.isRequired,sizes:o.string,srcSet:o.string,shouldLoad:o.bool},b.displayName="Picture",b.propTypes={alt:o.string.isRequired,shouldLoad:o.bool,fallback:o.exact({src:o.string.isRequired,srcSet:o.string,sizes:o.string}),sources:o.arrayOf(o.oneOfType([o.exact({media:o.string.isRequired,type:o.string,sizes:o.string,srcSet:o.string.isRequired}),o.exact({media:o.string,type:o.string.isRequired,sizes:o.string,srcSet:o.string.isRequired})]))};const E=["fallback"],v=function(e){let{fallback:t}=e,n=a(e,E);return t?r.createElement(b,i({},n,{fallback:{src:t},"aria-hidden":!0,alt:""})):r.createElement("div",i({},n))};v.displayName="Placeholder",v.propTypes={fallback:o.string,sources:null==(w=b.propTypes)?void 0:w.sources,alt:function(e,t,n){return e[t]?new Error("Invalid prop `"+t+"` supplied to `"+n+"`. Validation failed."):null}};const S=function(e){return r.createElement(r.Fragment,null,r.createElement(b,i({},e)),r.createElement("noscript",null,r.createElement(b,i({},e,{shouldLoad:!0}))))};S.displayName="MainImage",S.propTypes=b.propTypes;const O=["as","className","class","style","image","loading","imgClassName","imgStyle","backgroundColor","objectFit","objectPosition"],x=["style","className"],R=e=>e.replace(/\n/g,""),N=function(e,t,n){for(var r=arguments.length,o=new Array(r>3?r-3:0),i=3;iJSON.stringify(o.images)),[o.images]);f&&(d=f);const N=function(e,t,n){let r="";return"fullWidth"===e&&(r=''),"constrained"===e&&(r='
"),r}(w,y,b);return(0,r.useEffect)((()=>{L||(L=n.e(731).then(n.bind(n,6731)).then((e=>{let{renderImageToString:t,swapPlaceholderImage:n}=e;return j=t,{renderImageToString:t,swapPlaceholderImage:n}})));const e=x.current.querySelector("[data-gatsby-image-ssr]");if(e&&c())return e.complete?(null==p||p({wasCached:!0}),null==h||h({wasCached:!0}),setTimeout((()=>{e.removeAttribute("data-gatsby-image-ssr")}),0)):(null==p||p({wasCached:!0}),e.addEventListener("load",(function t(){e.removeEventListener("load",t),null==h||h({wasCached:!0}),setTimeout((()=>{e.removeAttribute("data-gatsby-image-ssr")}),0)}))),void k.add(R);if(j&&k.has(R))return;let t,r;return L.then((e=>{let{renderImageToString:n,swapPlaceholderImage:a}=e;x.current&&(x.current.innerHTML=n(i({isLoading:!0,isLoaded:k.has(R),image:o},g)),k.has(R)||(t=requestAnimationFrame((()=>{x.current&&(r=a(x.current,R,k,s,p,h,m))}))))})),()=>{t&&cancelAnimationFrame(t),r&&r()}}),[o]),(0,r.useLayoutEffect)((()=>{k.has(R)&&j&&(x.current.innerHTML=j(i({isLoading:k.has(R),isLoaded:k.has(R),image:o},g)),null==p||p({wasCached:!0}),null==h||h({wasCached:!0}))}),[o]),(0,r.createElement)(t,i({},O,{style:i({},v,s,{backgroundColor:u}),className:S+(d?" "+d:""),ref:x,dangerouslySetInnerHTML:{__html:N},suppressHydrationWarning:!0}))},_=(0,r.memo)((function(e){return e.image?(0,r.createElement)(P,e):null}));_.propTypes=T,_.displayName="GatsbyImage";const F=["src","__imageData","__error","width","height","aspectRatio","tracedSVGOptions","placeholder","formats","quality","transformOptions","jpgOptions","pngOptions","webpOptions","avifOptions","blurredOptions","breakpoints","outputPixelDensities"];function D(e){return function(t){let{src:n,__imageData:o,__error:s}=t,c=a(t,F);return s&&console.warn(s),o?r.createElement(e,i({image:o},c)):(console.warn("Image not loaded",n),null)}}const U=D((function(e){let{as:t="div",className:n,class:o,style:s,image:c,loading:f="lazy",imgClassName:p,imgStyle:m,backgroundColor:g,objectFit:y,objectPosition:b}=e,w=a(e,O);if(!c)return console.warn("[gatsby-plugin-image] Missing image prop"),null;o&&(n=o),m=i({objectFit:y,objectPosition:b,backgroundColor:g},m);const{width:E,height:N,layout:T,images:C,placeholder:A,backgroundColor:k}=c,L=l(E,N,T),{style:j,className:P}=L,_=a(L,x),F={fallback:void 0,sources:[]};return C.fallback&&(F.fallback=i({},C.fallback,{srcSet:C.fallback.srcSet?R(C.fallback.srcSet):void 0})),C.sources&&(F.sources=C.sources.map((e=>i({},e,{srcSet:R(e.srcSet)})))),r.createElement(t,i({},_,{style:i({},j,s,{backgroundColor:g}),className:P+(n?" "+n:"")}),r.createElement(h,{layout:T,width:E,height:N},r.createElement(v,i({},d(A,!1,T,E,N,k,y,b))),r.createElement(S,i({"data-gatsby-image-ssr":"",className:p},w,u("eager"===f,!1,F,f,m)))))})),B=function(e,t){for(var n=arguments.length,r=new Array(n>2?n-2:0),o=2;o{if(void 0!==e.layout&&!I.has(e.layout))return new Error("Invalid value "+e.layout+'" provided for prop "layout". Defaulting to "constrained". Valid values are "fixed", "fullWidth" or "constrained".')}};U.displayName="StaticImage",U.propTypes=M;const q=D(_);q.displayName="StaticImage",q.propTypes=M},2268:function(e,t,n){n.d(t,{Z:function(){return Ve}});var r=n(7294);function o(e,t){return function(){return e.apply(t,arguments)}}const{toString:s}=Object.prototype,{getPrototypeOf:i}=Object,a=(c=Object.create(null),e=>{const t=s.call(e);return c[t]||(c[t]=t.slice(8,-1).toLowerCase())});var c;const l=e=>(e=e.toLowerCase(),t=>a(t)===e),u=e=>t=>typeof t===e,{isArray:d}=Array,f=u("undefined");const p=l("ArrayBuffer");const h=u("string"),m=u("function"),g=u("number"),y=e=>null!==e&&"object"==typeof e,b=e=>{if("object"!==a(e))return!1;const t=i(e);return!(null!==t&&t!==Object.prototype&&null!==Object.getPrototypeOf(t)||Symbol.toStringTag in e||Symbol.iterator in e)},w=l("Date"),E=l("File"),v=l("Blob"),S=l("FileList"),O=l("URLSearchParams");function x(e,t,{allOwnKeys:n=!1}={}){if(null==e)return;let r,o;if("object"!=typeof e&&(e=[e]),d(e))for(r=0,o=e.length;r0;)if(r=n[o],t===r.toLowerCase())return r;return null}const N="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:global,T=e=>!f(e)&&e!==N;const C=(A="undefined"!=typeof Uint8Array&&i(Uint8Array),e=>A&&e instanceof A);var A;const k=l("HTMLFormElement"),L=(({hasOwnProperty:e})=>(t,n)=>e.call(t,n))(Object.prototype),j=l("RegExp"),P=(e,t)=>{const n=Object.getOwnPropertyDescriptors(e),r={};x(n,((n,o)=>{!1!==t(n,o,e)&&(r[o]=n)})),Object.defineProperties(e,r)},_="abcdefghijklmnopqrstuvwxyz",F="0123456789",D={DIGIT:F,ALPHA:_,ALPHA_DIGIT:_+_.toUpperCase()+F};const U=l("AsyncFunction");var B={isArray:d,isArrayBuffer:p,isBuffer:function(e){return null!==e&&!f(e)&&null!==e.constructor&&!f(e.constructor)&&m(e.constructor.isBuffer)&&e.constructor.isBuffer(e)},isFormData:e=>{let t;return e&&("function"==typeof FormData&&e instanceof FormData||m(e.append)&&("formdata"===(t=a(e))||"object"===t&&m(e.toString)&&"[object FormData]"===e.toString()))},isArrayBufferView:function(e){let t;return t="undefined"!=typeof ArrayBuffer&&ArrayBuffer.isView?ArrayBuffer.isView(e):e&&e.buffer&&p(e.buffer),t},isString:h,isNumber:g,isBoolean:e=>!0===e||!1===e,isObject:y,isPlainObject:b,isUndefined:f,isDate:w,isFile:E,isBlob:v,isRegExp:j,isFunction:m,isStream:e=>y(e)&&m(e.pipe),isURLSearchParams:O,isTypedArray:C,isFileList:S,forEach:x,merge:function e(){const{caseless:t}=T(this)&&this||{},n={},r=(r,o)=>{const s=t&&R(n,o)||o;b(n[s])&&b(r)?n[s]=e(n[s],r):b(r)?n[s]=e({},r):d(r)?n[s]=r.slice():n[s]=r};for(let o=0,s=arguments.length;o(x(t,((t,r)=>{n&&m(t)?e[r]=o(t,n):e[r]=t}),{allOwnKeys:r}),e),trim:e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,""),stripBOM:e=>(65279===e.charCodeAt(0)&&(e=e.slice(1)),e),inherits:(e,t,n,r)=>{e.prototype=Object.create(t.prototype,r),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),n&&Object.assign(e.prototype,n)},toFlatObject:(e,t,n,r)=>{let o,s,a;const c={};if(t=t||{},null==e)return t;do{for(o=Object.getOwnPropertyNames(e),s=o.length;s-- >0;)a=o[s],r&&!r(a,e,t)||c[a]||(t[a]=e[a],c[a]=!0);e=!1!==n&&i(e)}while(e&&(!n||n(e,t))&&e!==Object.prototype);return t},kindOf:a,kindOfTest:l,endsWith:(e,t,n)=>{e=String(e),(void 0===n||n>e.length)&&(n=e.length),n-=t.length;const r=e.indexOf(t,n);return-1!==r&&r===n},toArray:e=>{if(!e)return null;if(d(e))return e;let t=e.length;if(!g(t))return null;const n=new Array(t);for(;t-- >0;)n[t]=e[t];return n},forEachEntry:(e,t)=>{const n=(e&&e[Symbol.iterator]).call(e);let r;for(;(r=n.next())&&!r.done;){const n=r.value;t.call(e,n[0],n[1])}},matchAll:(e,t)=>{let n;const r=[];for(;null!==(n=e.exec(t));)r.push(n);return r},isHTMLForm:k,hasOwnProperty:L,hasOwnProp:L,reduceDescriptors:P,freezeMethods:e=>{P(e,((t,n)=>{if(m(e)&&-1!==["arguments","caller","callee"].indexOf(n))return!1;const r=e[n];m(r)&&(t.enumerable=!1,"writable"in t?t.writable=!1:t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+n+"'")}))}))},toObjectSet:(e,t)=>{const n={},r=e=>{e.forEach((e=>{n[e]=!0}))};return d(e)?r(e):r(String(e).split(t)),n},toCamelCase:e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,(function(e,t,n){return t.toUpperCase()+n})),noop:()=>{},toFiniteNumber:(e,t)=>(e=+e,Number.isFinite(e)?e:t),findKey:R,global:N,isContextDefined:T,ALPHABET:D,generateString:(e=16,t=D.ALPHA_DIGIT)=>{let n="";const{length:r}=t;for(;e--;)n+=t[Math.random()*r|0];return n},isSpecCompliantForm:function(e){return!!(e&&m(e.append)&&"FormData"===e[Symbol.toStringTag]&&e[Symbol.iterator])},toJSONObject:e=>{const t=new Array(10),n=(e,r)=>{if(y(e)){if(t.indexOf(e)>=0)return;if(!("toJSON"in e)){t[r]=e;const o=d(e)?[]:{};return x(e,((e,t)=>{const s=n(e,r+1);!f(s)&&(o[t]=s)})),t[r]=void 0,o}}return e};return n(e,0)},isAsyncFn:U,isThenable:e=>e&&(y(e)||m(e))&&m(e.then)&&m(e.catch)};function I(e,t,n,r,o){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=(new Error).stack,this.message=e,this.name="AxiosError",t&&(this.code=t),n&&(this.config=n),r&&(this.request=r),o&&(this.response=o)}B.inherits(I,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:B.toJSONObject(this.config),code:this.code,status:this.response&&this.response.status?this.response.status:null}}});const M=I.prototype,q={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach((e=>{q[e]={value:e}})),Object.defineProperties(I,q),Object.defineProperty(M,"isAxiosError",{value:!0}),I.from=(e,t,n,r,o,s)=>{const i=Object.create(M);return B.toFlatObject(e,i,(function(e){return e!==Error.prototype}),(e=>"isAxiosError"!==e)),I.call(i,e.message,t,n,r,o),i.cause=e,i.name=e.name,s&&Object.assign(i,s),i};var z=I;function H(e){return B.isPlainObject(e)||B.isArray(e)}function W(e){return B.endsWith(e,"[]")?e.slice(0,-2):e}function J(e,t,n){return e?e.concat(t).map((function(e,t){return e=W(e),!n&&t?"["+e+"]":e})).join(n?".":""):t}const V=B.toFlatObject(B,{},null,(function(e){return/^is[A-Z]/.test(e)}));var K=function(e,t,n){if(!B.isObject(e))throw new TypeError("target must be an object");t=t||new FormData;const r=(n=B.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,(function(e,t){return!B.isUndefined(t[e])}))).metaTokens,o=n.visitor||l,s=n.dots,i=n.indexes,a=(n.Blob||"undefined"!=typeof Blob&&Blob)&&B.isSpecCompliantForm(t);if(!B.isFunction(o))throw new TypeError("visitor must be a function");function c(e){if(null===e)return"";if(B.isDate(e))return e.toISOString();if(!a&&B.isBlob(e))throw new z("Blob is not supported. Use a Buffer instead.");return B.isArrayBuffer(e)||B.isTypedArray(e)?a&&"function"==typeof Blob?new Blob([e]):Buffer.from(e):e}function l(e,n,o){let a=e;if(e&&!o&&"object"==typeof e)if(B.endsWith(n,"{}"))n=r?n:n.slice(0,-2),e=JSON.stringify(e);else if(B.isArray(e)&&function(e){return B.isArray(e)&&!e.some(H)}(e)||(B.isFileList(e)||B.endsWith(n,"[]"))&&(a=B.toArray(e)))return n=W(n),a.forEach((function(e,r){!B.isUndefined(e)&&null!==e&&t.append(!0===i?J([n],r,s):null===i?n:n+"[]",c(e))})),!1;return!!H(e)||(t.append(J(o,n,s),c(e)),!1)}const u=[],d=Object.assign(V,{defaultVisitor:l,convertValue:c,isVisitable:H});if(!B.isObject(e))throw new TypeError("data must be an object");return function e(n,r){if(!B.isUndefined(n)){if(-1!==u.indexOf(n))throw Error("Circular reference detected in "+r.join("."));u.push(n),B.forEach(n,(function(n,s){!0===(!(B.isUndefined(n)||null===n)&&o.call(t,n,B.isString(s)?s.trim():s,r,d))&&e(n,r?r.concat(s):[s])})),u.pop()}}(e),t};function G(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,(function(e){return t[e]}))}function $(e,t){this._pairs=[],e&&K(e,this,t)}const Z=$.prototype;Z.append=function(e,t){this._pairs.push([e,t])},Z.toString=function(e){const t=e?function(t){return e.call(this,t,G)}:G;return this._pairs.map((function(e){return t(e[0])+"="+t(e[1])}),"").join("&")};var X=$;function Q(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function Y(e,t,n){if(!t)return e;const r=n&&n.encode||Q,o=n&&n.serialize;let s;if(s=o?o(t,n):B.isURLSearchParams(t)?t.toString():new X(t,n).toString(r),s){const t=e.indexOf("#");-1!==t&&(e=e.slice(0,t)),e+=(-1===e.indexOf("?")?"?":"&")+s}return e}var ee=class{constructor(){this.handlers=[]}use(e,t,n){return this.handlers.push({fulfilled:e,rejected:t,synchronous:!!n&&n.synchronous,runWhen:n?n.runWhen:null}),this.handlers.length-1}eject(e){this.handlers[e]&&(this.handlers[e]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(e){B.forEach(this.handlers,(function(t){null!==t&&e(t)}))}},te={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1};var ne={isBrowser:!0,classes:{URLSearchParams:"undefined"!=typeof URLSearchParams?URLSearchParams:X,FormData:"undefined"!=typeof FormData?FormData:null,Blob:"undefined"!=typeof Blob?Blob:null},isStandardBrowserEnv:(()=>{let e;return("undefined"==typeof navigator||"ReactNative"!==(e=navigator.product)&&"NativeScript"!==e&&"NS"!==e)&&("undefined"!=typeof window&&"undefined"!=typeof document)})(),isStandardBrowserWebWorkerEnv:"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&"function"==typeof self.importScripts,protocols:["http","https","file","blob","url","data"]};var re=function(e){function t(e,n,r,o){let s=e[o++];const i=Number.isFinite(+s),a=o>=e.length;if(s=!s&&B.isArray(r)?r.length:s,a)return B.hasOwnProp(r,s)?r[s]=[r[s],n]:r[s]=n,!i;r[s]&&B.isObject(r[s])||(r[s]=[]);return t(e,n,r[s],o)&&B.isArray(r[s])&&(r[s]=function(e){const t={},n=Object.keys(e);let r;const o=n.length;let s;for(r=0;r{t(function(e){return B.matchAll(/\w+|\[(\w*)]/g,e).map((e=>"[]"===e[0]?"":e[1]||e[0]))}(e),r,n,0)})),n}return null};const oe={"Content-Type":void 0};const se={transitional:te,adapter:["xhr","http"],transformRequest:[function(e,t){const n=t.getContentType()||"",r=n.indexOf("application/json")>-1,o=B.isObject(e);o&&B.isHTMLForm(e)&&(e=new FormData(e));if(B.isFormData(e))return r&&r?JSON.stringify(re(e)):e;if(B.isArrayBuffer(e)||B.isBuffer(e)||B.isStream(e)||B.isFile(e)||B.isBlob(e))return e;if(B.isArrayBufferView(e))return e.buffer;if(B.isURLSearchParams(e))return t.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),e.toString();let s;if(o){if(n.indexOf("application/x-www-form-urlencoded")>-1)return function(e,t){return K(e,new ne.classes.URLSearchParams,Object.assign({visitor:function(e,t,n,r){return ne.isNode&&B.isBuffer(e)?(this.append(t,e.toString("base64")),!1):r.defaultVisitor.apply(this,arguments)}},t))}(e,this.formSerializer).toString();if((s=B.isFileList(e))||n.indexOf("multipart/form-data")>-1){const t=this.env&&this.env.FormData;return K(s?{"files[]":e}:e,t&&new t,this.formSerializer)}}return o||r?(t.setContentType("application/json",!1),function(e,t,n){if(B.isString(e))try{return(t||JSON.parse)(e),B.trim(e)}catch(r){if("SyntaxError"!==r.name)throw r}return(n||JSON.stringify)(e)}(e)):e}],transformResponse:[function(e){const t=this.transitional||se.transitional,n=t&&t.forcedJSONParsing,r="json"===this.responseType;if(e&&B.isString(e)&&(n&&!this.responseType||r)){const n=!(t&&t.silentJSONParsing)&&r;try{return JSON.parse(e)}catch(o){if(n){if("SyntaxError"===o.name)throw z.from(o,z.ERR_BAD_RESPONSE,this,null,this.response);throw o}}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:ne.classes.FormData,Blob:ne.classes.Blob},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*"}}};B.forEach(["delete","get","head"],(function(e){se.headers[e]={}})),B.forEach(["post","put","patch"],(function(e){se.headers[e]=B.merge(oe)}));var ie=se;const ae=B.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]);const ce=Symbol("internals");function le(e){return e&&String(e).trim().toLowerCase()}function ue(e){return!1===e||null==e?e:B.isArray(e)?e.map(ue):String(e)}function de(e,t,n,r,o){return B.isFunction(r)?r.call(this,t,n):(o&&(t=n),B.isString(t)?B.isString(r)?-1!==t.indexOf(r):B.isRegExp(r)?r.test(t):void 0:void 0)}class fe{constructor(e){e&&this.set(e)}set(e,t,n){const r=this;function o(e,t,n){const o=le(t);if(!o)throw new Error("header name must be a non-empty string");const s=B.findKey(r,o);(!s||void 0===r[s]||!0===n||void 0===n&&!1!==r[s])&&(r[s||t]=ue(e))}const s=(e,t)=>B.forEach(e,((e,n)=>o(e,n,t)));return B.isPlainObject(e)||e instanceof this.constructor?s(e,t):B.isString(e)&&(e=e.trim())&&!/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim())?s((e=>{const t={};let n,r,o;return e&&e.split("\n").forEach((function(e){o=e.indexOf(":"),n=e.substring(0,o).trim().toLowerCase(),r=e.substring(o+1).trim(),!n||t[n]&&ae[n]||("set-cookie"===n?t[n]?t[n].push(r):t[n]=[r]:t[n]=t[n]?t[n]+", "+r:r)})),t})(e),t):null!=e&&o(t,e,n),this}get(e,t){if(e=le(e)){const n=B.findKey(this,e);if(n){const e=this[n];if(!t)return e;if(!0===t)return function(e){const t=Object.create(null),n=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let r;for(;r=n.exec(e);)t[r[1]]=r[2];return t}(e);if(B.isFunction(t))return t.call(this,e,n);if(B.isRegExp(t))return t.exec(e);throw new TypeError("parser must be boolean|regexp|function")}}}has(e,t){if(e=le(e)){const n=B.findKey(this,e);return!(!n||void 0===this[n]||t&&!de(0,this[n],n,t))}return!1}delete(e,t){const n=this;let r=!1;function o(e){if(e=le(e)){const o=B.findKey(n,e);!o||t&&!de(0,n[o],o,t)||(delete n[o],r=!0)}}return B.isArray(e)?e.forEach(o):o(e),r}clear(e){const t=Object.keys(this);let n=t.length,r=!1;for(;n--;){const o=t[n];e&&!de(0,this[o],o,e,!0)||(delete this[o],r=!0)}return r}normalize(e){const t=this,n={};return B.forEach(this,((r,o)=>{const s=B.findKey(n,o);if(s)return t[s]=ue(r),void delete t[o];const i=e?function(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,((e,t,n)=>t.toUpperCase()+n))}(o):String(o).trim();i!==o&&delete t[o],t[i]=ue(r),n[i]=!0})),this}concat(...e){return this.constructor.concat(this,...e)}toJSON(e){const t=Object.create(null);return B.forEach(this,((n,r)=>{null!=n&&!1!==n&&(t[r]=e&&B.isArray(n)?n.join(", "):n)})),t}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map((([e,t])=>e+": "+t)).join("\n")}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(e){return e instanceof this?e:new this(e)}static concat(e,...t){const n=new this(e);return t.forEach((e=>n.set(e))),n}static accessor(e){const t=(this[ce]=this[ce]={accessors:{}}).accessors,n=this.prototype;function r(e){const r=le(e);t[r]||(!function(e,t){const n=B.toCamelCase(" "+t);["get","set","has"].forEach((r=>{Object.defineProperty(e,r+n,{value:function(e,n,o){return this[r].call(this,t,e,n,o)},configurable:!0})}))}(n,e),t[r]=!0)}return B.isArray(e)?e.forEach(r):r(e),this}}fe.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),B.freezeMethods(fe.prototype),B.freezeMethods(fe);var pe=fe;function he(e,t){const n=this||ie,r=t||n,o=pe.from(r.headers);let s=r.data;return B.forEach(e,(function(e){s=e.call(n,s,o.normalize(),t?t.status:void 0)})),o.normalize(),s}function me(e){return!(!e||!e.__CANCEL__)}function ge(e,t,n){z.call(this,null==e?"canceled":e,z.ERR_CANCELED,t,n),this.name="CanceledError"}B.inherits(ge,z,{__CANCEL__:!0});var ye=ge;var be=ne.isStandardBrowserEnv?{write:function(e,t,n,r,o,s){const i=[];i.push(e+"="+encodeURIComponent(t)),B.isNumber(n)&&i.push("expires="+new Date(n).toGMTString()),B.isString(r)&&i.push("path="+r),B.isString(o)&&i.push("domain="+o),!0===s&&i.push("secure"),document.cookie=i.join("; ")},read:function(e){const t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove:function(e){this.write(e,"",Date.now()-864e5)}}:{write:function(){},read:function(){return null},remove:function(){}};function we(e,t){return e&&!/^([a-z][a-z\d+\-.]*:)?\/\//i.test(t)?function(e,t){return t?e.replace(/\/+$/,"")+"/"+t.replace(/^\/+/,""):e}(e,t):t}var Ee=ne.isStandardBrowserEnv?function(){const e=/(msie|trident)/i.test(navigator.userAgent),t=document.createElement("a");let n;function r(n){let r=n;return e&&(t.setAttribute("href",r),r=t.href),t.setAttribute("href",r),{href:t.href,protocol:t.protocol?t.protocol.replace(/:$/,""):"",host:t.host,search:t.search?t.search.replace(/^\?/,""):"",hash:t.hash?t.hash.replace(/^#/,""):"",hostname:t.hostname,port:t.port,pathname:"/"===t.pathname.charAt(0)?t.pathname:"/"+t.pathname}}return n=r(window.location.href),function(e){const t=B.isString(e)?r(e):e;return t.protocol===n.protocol&&t.host===n.host}}():function(){return!0};var ve=function(e,t){e=e||10;const n=new Array(e),r=new Array(e);let o,s=0,i=0;return t=void 0!==t?t:1e3,function(a){const c=Date.now(),l=r[i];o||(o=c),n[s]=a,r[s]=c;let u=i,d=0;for(;u!==s;)d+=n[u++],u%=e;if(s=(s+1)%e,s===i&&(i=(i+1)%e),c-o{const s=o.loaded,i=o.lengthComputable?o.total:void 0,a=s-n,c=r(a);n=s;const l={loaded:s,total:i,progress:i?s/i:void 0,bytes:a,rate:c||void 0,estimated:c&&i&&s<=i?(i-s)/c:void 0,event:o};l[t?"download":"upload"]=!0,e(l)}}const Oe={http:null,xhr:"undefined"!=typeof XMLHttpRequest&&function(e){return new Promise((function(t,n){let r=e.data;const o=pe.from(e.headers).normalize(),s=e.responseType;let i;function a(){e.cancelToken&&e.cancelToken.unsubscribe(i),e.signal&&e.signal.removeEventListener("abort",i)}B.isFormData(r)&&(ne.isStandardBrowserEnv||ne.isStandardBrowserWebWorkerEnv?o.setContentType(!1):o.setContentType("multipart/form-data;",!1));let c=new XMLHttpRequest;if(e.auth){const t=e.auth.username||"",n=e.auth.password?unescape(encodeURIComponent(e.auth.password)):"";o.set("Authorization","Basic "+btoa(t+":"+n))}const l=we(e.baseURL,e.url);function u(){if(!c)return;const r=pe.from("getAllResponseHeaders"in c&&c.getAllResponseHeaders());!function(e,t,n){const r=n.config.validateStatus;n.status&&r&&!r(n.status)?t(new z("Request failed with status code "+n.status,[z.ERR_BAD_REQUEST,z.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n)):e(n)}((function(e){t(e),a()}),(function(e){n(e),a()}),{data:s&&"text"!==s&&"json"!==s?c.response:c.responseText,status:c.status,statusText:c.statusText,headers:r,config:e,request:c}),c=null}if(c.open(e.method.toUpperCase(),Y(l,e.params,e.paramsSerializer),!0),c.timeout=e.timeout,"onloadend"in c?c.onloadend=u:c.onreadystatechange=function(){c&&4===c.readyState&&(0!==c.status||c.responseURL&&0===c.responseURL.indexOf("file:"))&&setTimeout(u)},c.onabort=function(){c&&(n(new z("Request aborted",z.ECONNABORTED,e,c)),c=null)},c.onerror=function(){n(new z("Network Error",z.ERR_NETWORK,e,c)),c=null},c.ontimeout=function(){let t=e.timeout?"timeout of "+e.timeout+"ms exceeded":"timeout exceeded";const r=e.transitional||te;e.timeoutErrorMessage&&(t=e.timeoutErrorMessage),n(new z(t,r.clarifyTimeoutError?z.ETIMEDOUT:z.ECONNABORTED,e,c)),c=null},ne.isStandardBrowserEnv){const t=(e.withCredentials||Ee(l))&&e.xsrfCookieName&&be.read(e.xsrfCookieName);t&&o.set(e.xsrfHeaderName,t)}void 0===r&&o.setContentType(null),"setRequestHeader"in c&&B.forEach(o.toJSON(),(function(e,t){c.setRequestHeader(t,e)})),B.isUndefined(e.withCredentials)||(c.withCredentials=!!e.withCredentials),s&&"json"!==s&&(c.responseType=e.responseType),"function"==typeof e.onDownloadProgress&&c.addEventListener("progress",Se(e.onDownloadProgress,!0)),"function"==typeof e.onUploadProgress&&c.upload&&c.upload.addEventListener("progress",Se(e.onUploadProgress)),(e.cancelToken||e.signal)&&(i=t=>{c&&(n(!t||t.type?new ye(null,e,c):t),c.abort(),c=null)},e.cancelToken&&e.cancelToken.subscribe(i),e.signal&&(e.signal.aborted?i():e.signal.addEventListener("abort",i)));const d=function(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}(l);d&&-1===ne.protocols.indexOf(d)?n(new z("Unsupported protocol "+d+":",z.ERR_BAD_REQUEST,e)):c.send(r||null)}))}};B.forEach(Oe,((e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch(n){}Object.defineProperty(e,"adapterName",{value:t})}}));var xe=e=>{e=B.isArray(e)?e:[e];const{length:t}=e;let n,r;for(let o=0;oe instanceof pe?e.toJSON():e;function Ce(e,t){t=t||{};const n={};function r(e,t,n){return B.isPlainObject(e)&&B.isPlainObject(t)?B.merge.call({caseless:n},e,t):B.isPlainObject(t)?B.merge({},t):B.isArray(t)?t.slice():t}function o(e,t,n){return B.isUndefined(t)?B.isUndefined(e)?void 0:r(void 0,e,n):r(e,t,n)}function s(e,t){if(!B.isUndefined(t))return r(void 0,t)}function i(e,t){return B.isUndefined(t)?B.isUndefined(e)?void 0:r(void 0,e):r(void 0,t)}function a(n,o,s){return s in t?r(n,o):s in e?r(void 0,n):void 0}const c={url:s,method:s,data:s,baseURL:i,transformRequest:i,transformResponse:i,paramsSerializer:i,timeout:i,timeoutMessage:i,withCredentials:i,adapter:i,responseType:i,xsrfCookieName:i,xsrfHeaderName:i,onUploadProgress:i,onDownloadProgress:i,decompress:i,maxContentLength:i,maxBodyLength:i,beforeRedirect:i,transport:i,httpAgent:i,httpsAgent:i,cancelToken:i,socketPath:i,responseEncoding:i,validateStatus:a,headers:(e,t)=>o(Te(e),Te(t),!0)};return B.forEach(Object.keys(Object.assign({},e,t)),(function(r){const s=c[r]||o,i=s(e[r],t[r],r);B.isUndefined(i)&&s!==a||(n[r]=i)})),n}const Ae="1.4.0",ke={};["object","boolean","number","function","string","symbol"].forEach(((e,t)=>{ke[e]=function(n){return typeof n===e||"a"+(t<1?"n ":" ")+e}}));const Le={};ke.transitional=function(e,t,n){function r(e,t){return"[Axios v1.4.0] Transitional option '"+e+"'"+t+(n?". "+n:"")}return(n,o,s)=>{if(!1===e)throw new z(r(o," has been removed"+(t?" in "+t:"")),z.ERR_DEPRECATED);return t&&!Le[o]&&(Le[o]=!0,console.warn(r(o," has been deprecated since v"+t+" and will be removed in the near future"))),!e||e(n,o,s)}};var je={assertOptions:function(e,t,n){if("object"!=typeof e)throw new z("options must be an object",z.ERR_BAD_OPTION_VALUE);const r=Object.keys(e);let o=r.length;for(;o-- >0;){const s=r[o],i=t[s];if(i){const t=e[s],n=void 0===t||i(t,s,e);if(!0!==n)throw new z("option "+s+" must be "+n,z.ERR_BAD_OPTION_VALUE)}else if(!0!==n)throw new z("Unknown option "+s,z.ERR_BAD_OPTION)}},validators:ke};const Pe=je.validators;class _e{constructor(e){this.defaults=e,this.interceptors={request:new ee,response:new ee}}request(e,t){"string"==typeof e?(t=t||{}).url=e:t=e||{},t=Ce(this.defaults,t);const{transitional:n,paramsSerializer:r,headers:o}=t;let s;void 0!==n&&je.assertOptions(n,{silentJSONParsing:Pe.transitional(Pe.boolean),forcedJSONParsing:Pe.transitional(Pe.boolean),clarifyTimeoutError:Pe.transitional(Pe.boolean)},!1),null!=r&&(B.isFunction(r)?t.paramsSerializer={serialize:r}:je.assertOptions(r,{encode:Pe.function,serialize:Pe.function},!0)),t.method=(t.method||this.defaults.method||"get").toLowerCase(),s=o&&B.merge(o.common,o[t.method]),s&&B.forEach(["delete","get","head","post","put","patch","common"],(e=>{delete o[e]})),t.headers=pe.concat(s,o);const i=[];let a=!0;this.interceptors.request.forEach((function(e){"function"==typeof e.runWhen&&!1===e.runWhen(t)||(a=a&&e.synchronous,i.unshift(e.fulfilled,e.rejected))}));const c=[];let l;this.interceptors.response.forEach((function(e){c.push(e.fulfilled,e.rejected)}));let u,d=0;if(!a){const e=[Ne.bind(this),void 0];for(e.unshift.apply(e,i),e.push.apply(e,c),u=e.length,l=Promise.resolve(t);d{if(!n._listeners)return;let t=n._listeners.length;for(;t-- >0;)n._listeners[t](e);n._listeners=null})),this.promise.then=e=>{let t;const r=new Promise((e=>{n.subscribe(e),t=e})).then(e);return r.cancel=function(){n.unsubscribe(t)},r},e((function(e,r,o){n.reason||(n.reason=new ye(e,r,o),t(n.reason))}))}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){this.reason?e(this.reason):this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;const t=this._listeners.indexOf(e);-1!==t&&this._listeners.splice(t,1)}static source(){let e;return{token:new De((function(t){e=t})),cancel:e}}}var Ue=De;const Be={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(Be).forEach((([e,t])=>{Be[t]=e}));var Ie=Be;const Me=function e(t){const n=new Fe(t),r=o(Fe.prototype.request,n);return B.extend(r,Fe.prototype,n,{allOwnKeys:!0}),B.extend(r,n,null,{allOwnKeys:!0}),r.create=function(n){return e(Ce(t,n))},r}(ie);Me.Axios=Fe,Me.CanceledError=ye,Me.CancelToken=Ue,Me.isCancel=me,Me.VERSION=Ae,Me.toFormData=K,Me.AxiosError=z,Me.Cancel=Me.CanceledError,Me.all=function(e){return Promise.all(e)},Me.spread=function(e){return function(t){return e.apply(null,t)}},Me.isAxiosError=function(e){return B.isObject(e)&&!0===e.isAxiosError},Me.mergeConfig=Ce,Me.AxiosHeaders=pe,Me.formToJSON=e=>re(B.isHTMLForm(e)?new FormData(e):e),Me.HttpStatusCode=Ie,Me.default=Me;var qe=Me;var ze=()=>{const{0:e,1:t}=(0,r.useState)(null);return(0,r.useEffect)((()=>{(async()=>{const e=await qe.get("https://devapi.qweather.com/v7/weather/now?location=EF058&lang=en&key="+{}.GATSBY_WEATHER_API_KEY);t(e.data)})().catch(console.error)}),[]),e?r.createElement("div",{className:"basis-1/2 flex"},r.createElement("div",{className:""},r.createElement("h3",{className:"text-xl font-bold leading-8 tracking-tight text-gray-900 dark:text-gray-100"},"Weather in Vancouver"),r.createElement("div",{className:"flex mt-2"},r.createElement("div",{className:"mt-2"},r.createElement("i",{className:"qi-"+e.now.icon+" text-4xl"})),r.createElement("div",{className:"mt-1 ml-4"},e.now.temp,"℃, feels like ",e.now.feelsLike,"℃,",r.createElement("br",null),e.now.text,", with ",e.now.windSpeed," mph wind")))):null},He=n(8032),We=n(4160);var Je=()=>{const e=(0,We.K2)("615631790");return r.createElement("div",{className:"flex items-center justify-center"},"© ",(new Date).getFullYear(),", Built with ",r.createElement("a",{href:"https://www.gatsbyjs.com/"},"Gatsby"),"  ",r.createElement(He.G,{alt:"copyright",image:e.icon.childImageSharp.gatsbyImageData}))};var Ve=()=>r.createElement("div",{className:"flex flex-row pt-8 pb-14 "},r.createElement(ze,null),r.createElement(Je,null))},3904:function(e,t,n){var r=n(7294),o=n(4160);t.Z=e=>{let{title:t}=e;const n=(0,o.K2)("2841359383").site.siteMetadata;return r.createElement(r.Fragment,null,r.createElement("title",null,t+" | "+n.title),r.createElement("meta",{name:"description",content:n.description}),r.createElement("meta",{name:"twitter:title",content:t+" | "+n.title}),r.createElement("meta",{name:"twitter:description",content:n.description}),r.createElement("meta",{name:"twitter:creator",content:n.social.twitter}))}},4893:function(e,t,n){n.d(t,{Ni:function(){return s},aP:function(){return i}});var r=n(7294),o=n(530);const s=r.createContext(o.j?document.body.className:""),i=r.createContext((e=>{}));t.ZP=e=>{let{children:t}=e;const{0:n,1:a}=(0,r.useState)(o.j?document.body.className:"");return r.createElement(s.Provider,{value:n},r.createElement(i.Provider,{value:e=>{a("light"===e?"light":"dark")}},t))}},3552:function(e,t,n){n.d(t,{Z:function(){return g}});var r=n(4160),o=n(7294),s=n(4893),i=n(530);function a(e,t,r,s){void 0===r&&(r=n.g),void 0===s&&(s={});var i=(0,o.useRef)(),a=s.capture,c=s.passive,l=s.once;(0,o.useEffect)((function(){i.current=t}),[t]),(0,o.useEffect)((function(){if(n.g&&n.g.addEventListener){var t=function(e){return i.current(e)},r={capture:a,passive:c,once:l};return n.g.addEventListener(e,t,r),function(){n.g.removeEventListener(e,t,r)}}}),[e,n.g,a,c,l])}var c={},l=function(e,t,n){return c[e]||(c[e]={callbacks:[],value:n}),c[e].callbacks.push(t),{deregister:function(){var n=c[e].callbacks,r=n.indexOf(t);r>-1&&n.splice(r,1)},emit:function(n){c[e].value!==n&&(c[e].value=n,c[e].callbacks.forEach((function(e){t!==e&&e(n)})))}}};function u(e,t){if(void 0===t&&(t=void 0!==n.g&&n.g.localStorage?n.g.localStorage:"undefined"!=typeof globalThis&&globalThis.localStorage?globalThis.localStorage:"undefined"!=typeof window&&window.localStorage?window.localStorage:"undefined"!=typeof localStorage?localStorage:null),t){var r=(s=t,{get:function(e,t){var n=s.getItem(e);return null==n?"function"==typeof t?t():t:JSON.parse(n)},set:function(e,t){s.setItem(e,JSON.stringify(t))}});return function(t){return function(e,t,n){var r=n.get,s=n.set,i=(0,o.useRef)(null),c=(0,o.useState)((function(){return r(t,e)})),u=c[0],d=c[1];a("storage",(function(e){if(e.key===t){var n=JSON.parse(e.newValue);u!==n&&d(n)}})),(0,o.useEffect)((function(){return i.current=l(t,d,e),function(){i.current.deregister()}}),[e,t]);var f=(0,o.useCallback)((function(e){var n="function"==typeof e?e(u):e;s(t,n),d(n),i.current.emit(e)}),[u,s,t]);return[u,f]}(t,e,r)}}var s;return o.useState}var d=function(){},f={classList:{add:d,remove:d}},p=function(e,t,r){void 0===r&&(r=n.g);var s=e?u(e,t):o.useState,i=n.g.matchMedia?n.g.matchMedia("(prefers-color-scheme: dark)"):{},a={addEventListener:function(e,t){return i.addListener&&i.addListener(t)},removeEventListener:function(e,t){return i.removeListener&&i.removeListener(t)}},c="(prefers-color-scheme: dark)"===i.media,l=n.g.document&&n.g.document.body||f;return{usePersistedDarkModeState:s,getDefaultOnChange:function(e,t,n){return void 0===e&&(e=l),void 0===t&&(t="dark-mode"),void 0===n&&(n="light-mode"),function(r){e.classList.add(r?t:n),e.classList.remove(r?n:t)}},mediaQueryEventTarget:a,getInitialValue:function(e){return c?i.matches:e}}};var h=()=>{const e=(0,o.useContext)(s.aP),{0:t,1:n}=(0,o.useState)(!1),r=function(e,t){void 0===e&&(e=!1),void 0===t&&(t={});var n=t.element,r=t.classNameDark,s=t.classNameLight,i=t.onChange,c=t.storageKey;void 0===c&&(c="darkMode");var l=t.storageProvider,u=t.global,d=(0,o.useMemo)((function(){return p(c,l,u)}),[c,l,u]),f=d.getDefaultOnChange,h=d.mediaQueryEventTarget,m=(0,d.usePersistedDarkModeState)((0,d.getInitialValue)(e)),g=m[0],y=m[1],b=(0,o.useMemo)((function(){return i||f(n,r,s)}),[i,n,r,s,f]);return(0,o.useEffect)((function(){b(g)}),[b,g]),a("change",(function(e){return y(e.matches)}),h),{value:g,enable:(0,o.useCallback)((function(){return y(!0)}),[y]),disable:(0,o.useCallback)((function(){return y(!1)}),[y]),toggle:(0,o.useCallback)((function(){return y((function(e){return!e}))}),[y])}}(!i.j||"dark"===localStorage.getItem("darkMode"),{classNameDark:"dark",classNameLight:"light",storageKey:"darkMode"});return(0,o.useEffect)((()=>{n(!0)}),[]),t?o.createElement("button",{onClick:t=>{const n=r.value?"light":"dark";r.toggle(),e(n)},"aria-label":"darkMode"},r.value?o.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor",className:"w-6 h-6"},o.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M12 3v2.25m6.364.386l-1.591 1.591M21 12h-2.25m-.386 6.364l-1.591-1.591M12 18.75V21m-4.773-4.227l-1.591 1.591M5.25 12H3m4.227-4.773L5.636 5.636M15.75 12a3.75 3.75 0 11-7.5 0 3.75 3.75 0 017.5 0z"})):o.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor",className:"w-6 h-6"},o.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M21.752 15.002A9.718 9.718 0 0118 15.75c-5.385 0-9.75-4.365-9.75-9.75 0-1.33.266-2.597.748-3.752A9.753 9.753 0 003 11.25C3 16.635 7.365 21 12.75 21a9.753 9.753 0 009.002-5.998z"}))):null};var m=()=>o.createElement("div",{className:"max-w-3xl mx-auto px-4 sm:px-6 lg:px-8 sticky top-0 dark:bg-gray-900 bg-white z-50"},o.createElement("div",{className:"flex justify-between h-16"},o.createElement("div",{className:"flex justify-between items-center w-full"},o.createElement(r.rU,{to:"/"},o.createElement("h2",{className:"text-2xl font-medium"},"PPX ",o.createElement("span",{className:"text-teal-500"},"Blog"))),o.createElement(h,null))));var g=e=>{let{pageTitle:t,children:n}=e;return o.createElement(s.ZP,null,o.createElement("div",{className:""},o.createElement(m,null),o.createElement("main",{className:"max-w-3xl mx-auto px-4 sm:px-6 lg:px-8 relative"},n)))}},530:function(e,t,n){n.d(t,{j:function(){return r}});const r="undefined"!=typeof window}}]); +//# sourceMappingURL=5470a255fbdbf50a36e606a4068fa8dfcc405439-1de734c24ec8fdac70e8.js.map \ No newline at end of file diff --git a/5470a255fbdbf50a36e606a4068fa8dfcc405439-1de734c24ec8fdac70e8.js.map b/5470a255fbdbf50a36e606a4068fa8dfcc405439-1de734c24ec8fdac70e8.js.map new file mode 100644 index 0000000..aec07d4 --- /dev/null +++ b/5470a255fbdbf50a36e606a4068fa8dfcc405439-1de734c24ec8fdac70e8.js.map @@ -0,0 +1 @@ +{"version":3,"file":"5470a255fbdbf50a36e606a4068fa8dfcc405439-1de734c24ec8fdac70e8.js","mappings":"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","sources":["webpack://ppx-gatsby-blog/./node_modules/camelcase/index.js","webpack://ppx-gatsby-blog/../src/image-utils.ts","webpack://ppx-gatsby-blog/../src/components/hooks.ts","webpack://ppx-gatsby-blog/../src/components/layout-wrapper.tsx","webpack://ppx-gatsby-blog/../src/components/picture.tsx","webpack://ppx-gatsby-blog/../src/components/placeholder.tsx","webpack://ppx-gatsby-blog/../src/components/main-image.tsx","webpack://ppx-gatsby-blog/../src/components/gatsby-image.server.tsx","webpack://ppx-gatsby-blog/../src/components/gatsby-image.browser.tsx","webpack://ppx-gatsby-blog/../src/components/static-image.server.tsx","webpack://ppx-gatsby-blog/../src/components/static-image.tsx","webpack://ppx-gatsby-blog/./node_modules/axios/lib/helpers/bind.js","webpack://ppx-gatsby-blog/./node_modules/axios/lib/utils.js","webpack://ppx-gatsby-blog/./node_modules/axios/lib/core/AxiosError.js","webpack://ppx-gatsby-blog/./node_modules/axios/lib/helpers/toFormData.js","webpack://ppx-gatsby-blog/./node_modules/axios/lib/helpers/AxiosURLSearchParams.js","webpack://ppx-gatsby-blog/./node_modules/axios/lib/helpers/buildURL.js","webpack://ppx-gatsby-blog/./node_modules/axios/lib/core/InterceptorManager.js","webpack://ppx-gatsby-blog/./node_modules/axios/lib/defaults/transitional.js","webpack://ppx-gatsby-blog/./node_modules/axios/lib/platform/browser/index.js","webpack://ppx-gatsby-blog/./node_modules/axios/lib/platform/browser/classes/URLSearchParams.js","webpack://ppx-gatsby-blog/./node_modules/axios/lib/platform/browser/classes/FormData.js","webpack://ppx-gatsby-blog/./node_modules/axios/lib/platform/browser/classes/Blob.js","webpack://ppx-gatsby-blog/./node_modules/axios/lib/helpers/formDataToJSON.js","webpack://ppx-gatsby-blog/./node_modules/axios/lib/defaults/index.js","webpack://ppx-gatsby-blog/./node_modules/axios/lib/helpers/toURLEncodedForm.js","webpack://ppx-gatsby-blog/./node_modules/axios/lib/helpers/parseHeaders.js","webpack://ppx-gatsby-blog/./node_modules/axios/lib/core/AxiosHeaders.js","webpack://ppx-gatsby-blog/./node_modules/axios/lib/core/transformData.js","webpack://ppx-gatsby-blog/./node_modules/axios/lib/cancel/isCancel.js","webpack://ppx-gatsby-blog/./node_modules/axios/lib/cancel/CanceledError.js","webpack://ppx-gatsby-blog/./node_modules/axios/lib/helpers/cookies.js","webpack://ppx-gatsby-blog/./node_modules/axios/lib/core/buildFullPath.js","webpack://ppx-gatsby-blog/./node_modules/axios/lib/helpers/isAbsoluteURL.js","webpack://ppx-gatsby-blog/./node_modules/axios/lib/helpers/combineURLs.js","webpack://ppx-gatsby-blog/./node_modules/axios/lib/helpers/isURLSameOrigin.js","webpack://ppx-gatsby-blog/./node_modules/axios/lib/helpers/speedometer.js","webpack://ppx-gatsby-blog/./node_modules/axios/lib/adapters/xhr.js","webpack://ppx-gatsby-blog/./node_modules/axios/lib/adapters/adapters.js","webpack://ppx-gatsby-blog/./node_modules/axios/lib/helpers/null.js","webpack://ppx-gatsby-blog/./node_modules/axios/lib/core/settle.js","webpack://ppx-gatsby-blog/./node_modules/axios/lib/helpers/parseProtocol.js","webpack://ppx-gatsby-blog/./node_modules/axios/lib/core/dispatchRequest.js","webpack://ppx-gatsby-blog/./node_modules/axios/lib/core/mergeConfig.js","webpack://ppx-gatsby-blog/./node_modules/axios/lib/env/data.js","webpack://ppx-gatsby-blog/./node_modules/axios/lib/helpers/validator.js","webpack://ppx-gatsby-blog/./node_modules/axios/lib/core/Axios.js","webpack://ppx-gatsby-blog/./node_modules/axios/lib/cancel/CancelToken.js","webpack://ppx-gatsby-blog/./node_modules/axios/lib/helpers/HttpStatusCode.js","webpack://ppx-gatsby-blog/./node_modules/axios/lib/axios.js","webpack://ppx-gatsby-blog/./node_modules/axios/lib/helpers/spread.js","webpack://ppx-gatsby-blog/./node_modules/axios/lib/helpers/isAxiosError.js","webpack://ppx-gatsby-blog/./src/components/Footer/Weather.tsx","webpack://ppx-gatsby-blog/./src/components/Footer/CopyRight.tsx","webpack://ppx-gatsby-blog/./src/components/Footer/Footer.tsx","webpack://ppx-gatsby-blog/./src/components/Seo.tsx","webpack://ppx-gatsby-blog/./src/components/ThemeContextWrapper.tsx","webpack://ppx-gatsby-blog/./node_modules/@use-it/event-listener/dist/event-listener.m.js","webpack://ppx-gatsby-blog/./node_modules/use-persisted-state/dist/use-persisted-state.m.js","webpack://ppx-gatsby-blog/./node_modules/@fisch0920/use-dark-mode/dist/use-dark-mode.m.js","webpack://ppx-gatsby-blog/./src/components/ThemeBtn.tsx","webpack://ppx-gatsby-blog/./src/components/NavBar.tsx","webpack://ppx-gatsby-blog/./src/components/layout.tsx","webpack://ppx-gatsby-blog/./src/lib/checkUtil.ts"],"sourcesContent":["'use strict';\n\nconst UPPERCASE = /[\\p{Lu}]/u;\nconst LOWERCASE = /[\\p{Ll}]/u;\nconst LEADING_CAPITAL = /^[\\p{Lu}](?![\\p{Lu}])/gu;\nconst IDENTIFIER = /([\\p{Alpha}\\p{N}_]|$)/u;\nconst SEPARATORS = /[_.\\- ]+/;\n\nconst LEADING_SEPARATORS = new RegExp('^' + SEPARATORS.source);\nconst SEPARATORS_AND_IDENTIFIER = new RegExp(SEPARATORS.source + IDENTIFIER.source, 'gu');\nconst NUMBERS_AND_IDENTIFIER = new RegExp('\\\\d+' + IDENTIFIER.source, 'gu');\n\nconst preserveCamelCase = (string, toLowerCase, toUpperCase) => {\n\tlet isLastCharLower = false;\n\tlet isLastCharUpper = false;\n\tlet isLastLastCharUpper = false;\n\n\tfor (let i = 0; i < string.length; i++) {\n\t\tconst character = string[i];\n\n\t\tif (isLastCharLower && UPPERCASE.test(character)) {\n\t\t\tstring = string.slice(0, i) + '-' + string.slice(i);\n\t\t\tisLastCharLower = false;\n\t\t\tisLastLastCharUpper = isLastCharUpper;\n\t\t\tisLastCharUpper = true;\n\t\t\ti++;\n\t\t} else if (isLastCharUpper && isLastLastCharUpper && LOWERCASE.test(character)) {\n\t\t\tstring = string.slice(0, i - 1) + '-' + string.slice(i - 1);\n\t\t\tisLastLastCharUpper = isLastCharUpper;\n\t\t\tisLastCharUpper = false;\n\t\t\tisLastCharLower = true;\n\t\t} else {\n\t\t\tisLastCharLower = toLowerCase(character) === character && toUpperCase(character) !== character;\n\t\t\tisLastLastCharUpper = isLastCharUpper;\n\t\t\tisLastCharUpper = toUpperCase(character) === character && toLowerCase(character) !== character;\n\t\t}\n\t}\n\n\treturn string;\n};\n\nconst preserveConsecutiveUppercase = (input, toLowerCase) => {\n\tLEADING_CAPITAL.lastIndex = 0;\n\n\treturn input.replace(LEADING_CAPITAL, m1 => toLowerCase(m1));\n};\n\nconst postProcess = (input, toUpperCase) => {\n\tSEPARATORS_AND_IDENTIFIER.lastIndex = 0;\n\tNUMBERS_AND_IDENTIFIER.lastIndex = 0;\n\n\treturn input.replace(SEPARATORS_AND_IDENTIFIER, (_, identifier) => toUpperCase(identifier))\n\t\t.replace(NUMBERS_AND_IDENTIFIER, m => toUpperCase(m));\n};\n\nconst camelCase = (input, options) => {\n\tif (!(typeof input === 'string' || Array.isArray(input))) {\n\t\tthrow new TypeError('Expected the input to be `string | string[]`');\n\t}\n\n\toptions = {\n\t\tpascalCase: false,\n\t\tpreserveConsecutiveUppercase: false,\n\t\t...options\n\t};\n\n\tif (Array.isArray(input)) {\n\t\tinput = input.map(x => x.trim())\n\t\t\t.filter(x => x.length)\n\t\t\t.join('-');\n\t} else {\n\t\tinput = input.trim();\n\t}\n\n\tif (input.length === 0) {\n\t\treturn '';\n\t}\n\n\tconst toLowerCase = options.locale === false ?\n\t\tstring => string.toLowerCase() :\n\t\tstring => string.toLocaleLowerCase(options.locale);\n\tconst toUpperCase = options.locale === false ?\n\t\tstring => string.toUpperCase() :\n\t\tstring => string.toLocaleUpperCase(options.locale);\n\n\tif (input.length === 1) {\n\t\treturn options.pascalCase ? toUpperCase(input) : toLowerCase(input);\n\t}\n\n\tconst hasUpperCase = input !== toLowerCase(input);\n\n\tif (hasUpperCase) {\n\t\tinput = preserveCamelCase(input, toLowerCase, toUpperCase);\n\t}\n\n\tinput = input.replace(LEADING_SEPARATORS, '');\n\n\tif (options.preserveConsecutiveUppercase) {\n\t\tinput = preserveConsecutiveUppercase(input, toLowerCase);\n\t} else {\n\t\tinput = toLowerCase(input);\n\t}\n\n\tif (options.pascalCase) {\n\t\tinput = toUpperCase(input.charAt(0)) + input.slice(1);\n\t}\n\n\treturn postProcess(input, toUpperCase);\n};\n\nmodule.exports = camelCase;\n// TODO: Remove this for the next major release\nmodule.exports.default = camelCase;\n","import camelCase from \"camelcase\"\nimport type { IGatsbyImageData } from \"./index\"\n\nconst DEFAULT_PIXEL_DENSITIES = [0.25, 0.5, 1, 2]\nexport const DEFAULT_BREAKPOINTS = [750, 1080, 1366, 1920]\nexport const EVERY_BREAKPOINT = [\n 320, 654, 768, 1024, 1366, 1600, 1920, 2048, 2560, 3440, 3840, 4096,\n]\nconst DEFAULT_FLUID_WIDTH = 800\nconst DEFAULT_FIXED_WIDTH = 800\nconst DEFAULT_ASPECT_RATIO = 4 / 3\n\nexport type Fit = \"cover\" | \"fill\" | \"inside\" | \"outside\" | \"contain\"\n\nexport type Layout = \"fixed\" | \"fullWidth\" | \"constrained\"\nexport type ImageFormat = \"jpg\" | \"png\" | \"webp\" | \"avif\" | \"auto\" | \"\"\n\n/**\n * The minimal required reporter, as we don't want to import it from gatsby-cli\n */\nexport interface IReporter {\n warn(message: string): void\n}\n\nexport interface ISharpGatsbyImageArgs {\n layout?: Layout\n formats?: Array\n placeholder?: \"tracedSVG\" | \"dominantColor\" | \"blurred\" | \"none\"\n tracedSVGOptions?: Record\n width?: number\n height?: number\n aspectRatio?: number\n sizes?: string\n quality?: number\n transformOptions?: {\n fit?: Fit\n cropFocus?: number | string\n duotone?: {\n highlight: string\n shadow: string\n opacity?: number\n }\n grayscale?: boolean\n rotate?: number\n trim?: number\n }\n jpgOptions?: Record\n pngOptions?: Record\n webpOptions?: Record\n avifOptions?: Record\n blurredOptions?: { width?: number; toFormat?: ImageFormat }\n breakpoints?: Array\n outputPixelDensities?: Array\n backgroundColor?: string\n}\n\nexport interface IImageSizeArgs {\n width?: number\n height?: number\n layout?: Layout\n filename: string\n outputPixelDensities?: Array\n breakpoints?: Array\n fit?: Fit\n reporter?: IReporter\n sourceMetadata: { width: number; height: number }\n}\n\nexport interface IImageSizes {\n sizes: Array\n presentationWidth: number\n presentationHeight: number\n aspectRatio: number\n unscaledWidth: number\n}\n\nexport interface IImage {\n src: string\n width: number\n height: number\n format: ImageFormat\n}\n\nexport interface IGatsbyImageHelperArgs {\n pluginName: string\n generateImageSource: (\n filename: string,\n width: number,\n height: number,\n format: ImageFormat,\n fit?: Fit,\n options?: Record\n ) => IImage\n layout?: Layout\n formats?: Array\n filename: string\n placeholderURL?: string\n width?: number\n height?: number\n sizes?: string\n reporter?: IReporter\n sourceMetadata?: { width: number; height: number; format: ImageFormat }\n fit?: Fit\n options?: Record\n breakpoints?: Array\n backgroundColor?: string\n aspectRatio?: number\n}\n\nconst warn = (message: string): void => console.warn(message)\n\nconst sortNumeric = (a: number, b: number): number => a - b\n\nexport const getSizes = (width: number, layout: Layout): string | undefined => {\n switch (layout) {\n // If screen is wider than the max size, image width is the max size,\n // otherwise it's the width of the screen\n case `constrained`:\n return `(min-width: ${width}px) ${width}px, 100vw`\n\n // Image is always the same width, whatever the size of the screen\n case `fixed`:\n return `${width}px`\n\n // Image is always the width of the screen\n case `fullWidth`:\n return `100vw`\n\n default:\n return undefined\n }\n}\n\nexport const getSrcSet = (images: Array): string =>\n images.map(image => `${image.src} ${image.width}w`).join(`,\\n`)\n\nexport function formatFromFilename(filename: string): ImageFormat | undefined {\n const dot = filename.lastIndexOf(`.`)\n if (dot !== -1) {\n const ext = filename.slice(dot + 1)\n if (ext === `jpeg`) {\n return `jpg`\n }\n if (ext.length === 3 || ext.length === 4) {\n return ext as ImageFormat\n }\n }\n return undefined\n}\n\nexport function setDefaultDimensions(\n args: IGatsbyImageHelperArgs\n): IGatsbyImageHelperArgs {\n let {\n layout = `constrained`,\n width,\n height,\n sourceMetadata,\n breakpoints,\n aspectRatio,\n formats = [`auto`, `webp`],\n } = args\n formats = formats.map(format => format.toLowerCase() as ImageFormat)\n layout = camelCase(layout) as Layout\n\n if (width && height) {\n return { ...args, formats, layout, aspectRatio: width / height }\n }\n if (sourceMetadata.width && sourceMetadata.height && !aspectRatio) {\n aspectRatio = sourceMetadata.width / sourceMetadata.height\n }\n\n if (layout === `fullWidth`) {\n width = width || sourceMetadata.width || breakpoints[breakpoints.length - 1]\n height = height || Math.round(width / (aspectRatio || DEFAULT_ASPECT_RATIO))\n } else {\n if (!width) {\n if (height && aspectRatio) {\n width = height * aspectRatio\n } else if (sourceMetadata.width) {\n width = sourceMetadata.width\n } else if (height) {\n width = Math.round(height / DEFAULT_ASPECT_RATIO)\n } else {\n width = DEFAULT_FIXED_WIDTH\n }\n }\n\n if (aspectRatio && !height) {\n height = Math.round(width / aspectRatio)\n } else if (!aspectRatio) {\n aspectRatio = width / height\n }\n }\n return { ...args, width, height, aspectRatio, layout, formats }\n}\n\n/**\n * Use this for getting an image for the blurred placeholder. This ensures the\n * aspect ratio and crop match the main image\n */\nexport function getLowResolutionImageURL(\n args: IGatsbyImageHelperArgs,\n width = 20\n): string {\n args = setDefaultDimensions(args)\n const { generateImageSource, filename, aspectRatio } = args\n return generateImageSource(\n filename,\n width,\n Math.round(width / aspectRatio),\n args.sourceMetadata.format || `jpg`,\n args.fit,\n args.options\n )?.src\n}\n\nexport function generateImageData(\n args: IGatsbyImageHelperArgs\n): IGatsbyImageData {\n args = setDefaultDimensions(args)\n\n let {\n pluginName,\n sourceMetadata,\n generateImageSource,\n layout,\n fit,\n options,\n width,\n height,\n filename,\n reporter = { warn },\n backgroundColor,\n placeholderURL,\n } = args\n\n if (!pluginName) {\n reporter.warn(\n `[gatsby-plugin-image] \"generateImageData\" was not passed a plugin name`\n )\n }\n\n if (typeof generateImageSource !== `function`) {\n throw new Error(`generateImageSource must be a function`)\n }\n\n if (!sourceMetadata || (!sourceMetadata.width && !sourceMetadata.height)) {\n // No metadata means we let the CDN handle max size etc, aspect ratio etc\n sourceMetadata = {\n width,\n height,\n format: sourceMetadata?.format || formatFromFilename(filename) || `auto`,\n }\n } else if (!sourceMetadata.format) {\n sourceMetadata.format = formatFromFilename(filename)\n }\n\n const formats = new Set(args.formats)\n\n if (formats.size === 0 || formats.has(`auto`) || formats.has(``)) {\n formats.delete(`auto`)\n formats.delete(``)\n formats.add(sourceMetadata.format)\n }\n\n if (formats.has(`jpg`) && formats.has(`png`)) {\n reporter.warn(\n `[${pluginName}] Specifying both 'jpg' and 'png' formats is not supported. Using 'auto' instead`\n )\n if (sourceMetadata.format === `jpg`) {\n formats.delete(`png`)\n } else {\n formats.delete(`jpg`)\n }\n }\n\n const imageSizes = calculateImageSizes({ ...args, sourceMetadata })\n\n const result: IGatsbyImageData[\"images\"] = {\n sources: [],\n }\n\n let sizes = args.sizes\n if (!sizes) {\n sizes = getSizes(imageSizes.presentationWidth, layout)\n }\n\n formats.forEach(format => {\n const images = imageSizes.sizes\n .map(size => {\n const imageSrc = generateImageSource(\n filename,\n size,\n Math.round(size / imageSizes.aspectRatio),\n format,\n fit,\n options\n )\n if (\n !imageSrc?.width ||\n !imageSrc.height ||\n !imageSrc.src ||\n !imageSrc.format\n ) {\n reporter.warn(\n `[${pluginName}] The resolver for image ${filename} returned an invalid value.`\n )\n return undefined\n }\n return imageSrc\n })\n .filter(Boolean)\n\n if (format === `jpg` || format === `png` || format === `auto`) {\n const unscaled =\n images.find(img => img.width === imageSizes.unscaledWidth) || images[0]\n\n if (unscaled) {\n result.fallback = {\n src: unscaled.src,\n srcSet: getSrcSet(images),\n sizes,\n }\n }\n } else {\n result.sources?.push({\n srcSet: getSrcSet(images),\n sizes,\n type: `image/${format}`,\n })\n }\n })\n\n const imageProps: Partial = {\n images: result,\n layout,\n backgroundColor,\n }\n\n if (placeholderURL) {\n imageProps.placeholder = { fallback: placeholderURL }\n }\n\n switch (layout) {\n case `fixed`:\n imageProps.width = imageSizes.presentationWidth\n imageProps.height = imageSizes.presentationHeight\n break\n\n case `fullWidth`:\n imageProps.width = 1\n imageProps.height = 1 / imageSizes.aspectRatio\n break\n\n case `constrained`:\n imageProps.width = args.width || imageSizes.presentationWidth || 1\n imageProps.height = (imageProps.width || 1) / imageSizes.aspectRatio\n }\n\n return imageProps as IGatsbyImageData\n}\n\nconst dedupeAndSortDensities = (values: Array): Array =>\n Array.from(new Set([1, ...values])).sort(sortNumeric)\n\nexport function calculateImageSizes(args: IImageSizeArgs): IImageSizes {\n const {\n width,\n height,\n filename,\n layout = `constrained`,\n sourceMetadata: imgDimensions,\n reporter = { warn },\n breakpoints = DEFAULT_BREAKPOINTS,\n } = args\n\n // check that all dimensions provided are positive\n const userDimensions = { width, height }\n const erroneousUserDimensions = Object.entries(userDimensions).filter(\n ([_, size]) => typeof size === `number` && size < 1\n )\n if (erroneousUserDimensions.length) {\n throw new Error(\n `Specified dimensions for images must be positive numbers (> 0). Problem dimensions you have are ${erroneousUserDimensions\n .map(dim => dim.join(`: `))\n .join(`, `)}`\n )\n }\n\n if (layout === `fixed`) {\n return fixedImageSizes(args)\n } else if (layout === `constrained`) {\n return responsiveImageSizes(args)\n } else if (layout === `fullWidth`) {\n return responsiveImageSizes({ breakpoints, ...args })\n } else {\n reporter.warn(\n `No valid layout was provided for the image at ${filename}. Valid image layouts are fixed, fullWidth, and constrained. Found ${layout}`\n )\n return {\n sizes: [imgDimensions.width],\n presentationWidth: imgDimensions.width,\n presentationHeight: imgDimensions.height,\n aspectRatio: imgDimensions.width / imgDimensions.height,\n unscaledWidth: imgDimensions.width,\n }\n }\n}\nexport function fixedImageSizes({\n filename,\n sourceMetadata: imgDimensions,\n width,\n height,\n fit = `cover`,\n outputPixelDensities = DEFAULT_PIXEL_DENSITIES,\n reporter = { warn },\n}: IImageSizeArgs): IImageSizes {\n let aspectRatio = imgDimensions.width / imgDimensions.height\n // Sort, dedupe and ensure there's a 1\n const densities = dedupeAndSortDensities(outputPixelDensities)\n\n // If both are provided then we need to check the fit\n if (width && height) {\n const calculated = getDimensionsAndAspectRatio(imgDimensions, {\n width,\n height,\n fit,\n })\n width = calculated.width\n height = calculated.height\n aspectRatio = calculated.aspectRatio\n }\n\n if (!width) {\n if (!height) {\n width = DEFAULT_FIXED_WIDTH\n } else {\n width = Math.round(height * aspectRatio)\n }\n } else if (!height) {\n height = Math.round(width / aspectRatio)\n }\n\n const originalWidth = width // will use this for presentationWidth, don't want to lose it\n const isTopSizeOverriden =\n imgDimensions.width < width || imgDimensions.height < (height as number)\n\n // If the image is smaller than requested, warn the user that it's being processed as such\n // print out this message with the necessary information before we overwrite it for sizing\n if (isTopSizeOverriden) {\n const fixedDimension = imgDimensions.width < width ? `width` : `height`\n reporter.warn(`\nThe requested ${fixedDimension} \"${\n fixedDimension === `width` ? width : height\n }px\" for the image ${filename} was larger than the actual image ${fixedDimension} of ${\n imgDimensions[fixedDimension]\n }px. If possible, replace the current image with a larger one.`)\n\n if (fixedDimension === `width`) {\n width = imgDimensions.width\n height = Math.round(width / aspectRatio)\n } else {\n height = imgDimensions.height\n width = height * aspectRatio\n }\n }\n\n const sizes = densities\n .filter(size => size >= 1) // remove smaller densities because fixed images don't need them\n .map(density => Math.round(density * (width as number)))\n .filter(size => size <= imgDimensions.width)\n\n return {\n sizes,\n aspectRatio,\n presentationWidth: originalWidth,\n presentationHeight: Math.round(originalWidth / aspectRatio),\n unscaledWidth: width,\n }\n}\n\nexport function responsiveImageSizes({\n sourceMetadata: imgDimensions,\n width,\n height,\n fit = `cover`,\n outputPixelDensities = DEFAULT_PIXEL_DENSITIES,\n breakpoints,\n layout,\n}: IImageSizeArgs): IImageSizes {\n let sizes\n let aspectRatio = imgDimensions.width / imgDimensions.height\n // Sort, dedupe and ensure there's a 1\n const densities = dedupeAndSortDensities(outputPixelDensities)\n\n // If both are provided then we need to check the fit\n if (width && height) {\n const calculated = getDimensionsAndAspectRatio(imgDimensions, {\n width,\n height,\n fit,\n })\n width = calculated.width\n height = calculated.height\n aspectRatio = calculated.aspectRatio\n }\n\n // Case 1: width of height were passed in, make sure it isn't larger than the actual image\n width = width && Math.min(width, imgDimensions.width)\n height = height && Math.min(height, imgDimensions.height)\n\n // Case 2: neither width or height were passed in, use default size\n if (!width && !height) {\n width = Math.min(DEFAULT_FLUID_WIDTH, imgDimensions.width)\n height = width / aspectRatio\n }\n\n // if it still hasn't been found, calculate width from the derived height.\n // TS isn't smart enough to realise the type for height has been narrowed here\n if (!width) {\n width = (height as number) * aspectRatio\n }\n\n const originalWidth = width\n const isTopSizeOverriden =\n imgDimensions.width < width || imgDimensions.height < (height as number)\n if (isTopSizeOverriden) {\n width = imgDimensions.width\n height = imgDimensions.height\n }\n\n width = Math.round(width)\n\n if (breakpoints?.length > 0) {\n sizes = breakpoints.filter(size => size <= imgDimensions.width)\n\n // If a larger breakpoint has been filtered-out, add the actual image width instead\n if (\n sizes.length < breakpoints.length &&\n !sizes.includes(imgDimensions.width)\n ) {\n sizes.push(imgDimensions.width)\n }\n } else {\n sizes = densities.map(density => Math.round(density * (width as number)))\n sizes = sizes.filter(size => size <= imgDimensions.width)\n }\n\n // ensure that the size passed in is included in the final output\n if (layout === `constrained` && !sizes.includes(width)) {\n sizes.push(width)\n }\n sizes = sizes.sort(sortNumeric)\n return {\n sizes,\n aspectRatio,\n presentationWidth: originalWidth,\n presentationHeight: Math.round(originalWidth / aspectRatio),\n unscaledWidth: width,\n }\n}\n\nexport function getDimensionsAndAspectRatio(\n dimensions,\n options\n): { width: number; height: number; aspectRatio: number } {\n // Calculate the eventual width/height of the image.\n const imageAspectRatio = dimensions.width / dimensions.height\n\n let width = options.width\n let height = options.height\n\n switch (options.fit) {\n case `fill`: {\n width = options.width ? options.width : dimensions.width\n height = options.height ? options.height : dimensions.height\n break\n }\n case `inside`: {\n const widthOption = options.width\n ? options.width\n : Number.MAX_SAFE_INTEGER\n const heightOption = options.height\n ? options.height\n : Number.MAX_SAFE_INTEGER\n\n width = Math.min(widthOption, Math.round(heightOption * imageAspectRatio))\n height = Math.min(\n heightOption,\n Math.round(widthOption / imageAspectRatio)\n )\n break\n }\n case `outside`: {\n const widthOption = options.width ? options.width : 0\n const heightOption = options.height ? options.height : 0\n\n width = Math.max(widthOption, Math.round(heightOption * imageAspectRatio))\n height = Math.max(\n heightOption,\n Math.round(widthOption / imageAspectRatio)\n )\n break\n }\n\n default: {\n if (options.width && !options.height) {\n width = options.width\n height = Math.round(options.width / imageAspectRatio)\n }\n\n if (options.height && !options.width) {\n width = Math.round(options.height * imageAspectRatio)\n height = options.height\n }\n }\n }\n\n return {\n width,\n height,\n aspectRatio: width / height,\n }\n}\n","/* global GATSBY___IMAGE */\nimport { generateImageData, EVERY_BREAKPOINT } from \"../image-utils\"\nimport type { CSSProperties, HTMLAttributes, ImgHTMLAttributes } from \"react\"\nimport type { Node } from \"gatsby\"\nimport type { PlaceholderProps } from \"./placeholder\"\nimport type { MainImageProps } from \"./main-image\"\nimport type { IGatsbyImageData } from \"./gatsby-image.browser\"\nimport type {\n IGatsbyImageHelperArgs,\n Layout,\n IImage,\n ImageFormat,\n} from \"../image-utils\"\n\n// Native lazy-loading support: https://addyosmani.com/blog/lazy-loading/\nexport const hasNativeLazyLoadSupport = (): boolean =>\n typeof HTMLImageElement !== `undefined` &&\n `loading` in HTMLImageElement.prototype\n\nexport function gatsbyImageIsInstalled(): boolean {\n return typeof GATSBY___IMAGE !== `undefined` && GATSBY___IMAGE\n}\n\nexport type IGatsbyImageDataParent = T & {\n gatsbyImageData: IGatsbyImageData\n}\nexport type IGatsbyImageParent = T & {\n gatsbyImage: IGatsbyImageData\n}\nexport type FileNode = Partial & {\n childImageSharp?: IGatsbyImageDataParent>\n}\n\nconst isGatsbyImageData = (\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n node: IGatsbyImageData | any\n): node is IGatsbyImageData =>\n // 🦆 check for a deep prop to be sure this is a valid gatsbyImageData object\n Boolean(node?.images?.fallback?.src)\n\nconst isGatsbyImageDataParent = (\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n node: IGatsbyImageDataParent | any\n): node is IGatsbyImageDataParent => Boolean(node?.gatsbyImageData)\n\nconst isGatsbyImageParent = (\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n node: IGatsbyImageParent | any\n): node is IGatsbyImageParent => Boolean(node?.gatsbyImage)\n\nexport type ImageDataLike =\n | FileNode\n | IGatsbyImageDataParent\n | IGatsbyImageParent\n | IGatsbyImageData\n\nexport const getImage = (\n node: ImageDataLike | null\n): IGatsbyImageData | undefined => {\n // This checks both for gatsbyImageData and gatsbyImage\n if (isGatsbyImageData(node)) {\n return node\n }\n // gatsbyImageData GraphQL field\n if (isGatsbyImageDataParent(node)) {\n return node.gatsbyImageData\n }\n // gatsbyImage GraphQL field for Gatsby's Image CDN service\n if (isGatsbyImageParent(node)) {\n return node.gatsbyImage\n }\n return node?.childImageSharp?.gatsbyImageData\n}\n\nexport const getSrc = (node: ImageDataLike): string | undefined =>\n getImage(node)?.images?.fallback?.src\n\nexport const getSrcSet = (node: ImageDataLike): string | undefined =>\n getImage(node)?.images?.fallback?.srcSet\n\nexport function getWrapperProps(\n width: number,\n height: number,\n layout: Layout\n): Pick, \"className\" | \"style\"> & {\n \"data-gatsby-image-wrapper\": string\n} {\n const wrapperStyle: CSSProperties = {}\n\n let className = `gatsby-image-wrapper`\n\n // If the plugin isn't installed we need to apply the styles inline\n if (!gatsbyImageIsInstalled()) {\n wrapperStyle.position = `relative`\n wrapperStyle.overflow = `hidden`\n }\n\n if (layout === `fixed`) {\n wrapperStyle.width = width\n wrapperStyle.height = height\n } else if (layout === `constrained`) {\n if (!gatsbyImageIsInstalled()) {\n wrapperStyle.display = `inline-block`\n wrapperStyle.verticalAlign = `top`\n }\n className = `gatsby-image-wrapper gatsby-image-wrapper-constrained`\n }\n\n return {\n className,\n \"data-gatsby-image-wrapper\": ``,\n style: wrapperStyle,\n }\n}\n\nexport interface IUrlBuilderArgs {\n width: number\n height: number\n baseUrl: string\n format: ImageFormat\n options: OptionsType\n}\nexport interface IGetImageDataArgs> {\n baseUrl: string\n /**\n * For constrained and fixed images, the size of the image element\n */\n width?: number\n height?: number\n /**\n * If available, pass the source image width and height\n */\n sourceWidth?: number\n sourceHeight?: number\n /**\n * If only one dimension is passed, then this will be used to calculate the other.\n */\n aspectRatio?: number\n layout?: Layout\n /**\n * Returns a URL based on the passed arguments. Should be a pure function\n */\n urlBuilder: (args: IUrlBuilderArgs) => string\n\n /**\n * Should be a data URI\n */\n placeholderURL?: string\n backgroundColor?: string\n /**\n * Used in error messages etc\n */\n pluginName?: string\n\n /**\n * If you do not support auto-format, pass an array of image types here\n */\n formats?: Array\n\n breakpoints?: Array\n\n /**\n * Passed to the urlBuilder function\n */\n options?: OptionsType\n}\n\n/**\n * Use this hook to generate gatsby-plugin-image data in the browser.\n */\nexport function getImageData({\n baseUrl,\n urlBuilder,\n sourceWidth,\n sourceHeight,\n pluginName = `getImageData`,\n formats = [`auto`],\n breakpoints,\n options,\n ...props\n}: IGetImageDataArgs): IGatsbyImageData {\n if (\n !breakpoints?.length &&\n (props.layout === `fullWidth` || (props.layout as string) === `FULL_WIDTH`)\n ) {\n breakpoints = EVERY_BREAKPOINT\n }\n const generateImageSource = (\n baseUrl: string,\n width: number,\n height?: number,\n format?: ImageFormat\n ): IImage => {\n return {\n width,\n height,\n format,\n src: urlBuilder({ baseUrl, width, height, options, format }),\n }\n }\n\n const sourceMetadata: IGatsbyImageHelperArgs[\"sourceMetadata\"] = {\n width: sourceWidth,\n height: sourceHeight,\n format: `auto`,\n }\n\n const args: IGatsbyImageHelperArgs = {\n ...props,\n pluginName,\n generateImageSource,\n filename: baseUrl,\n formats,\n breakpoints,\n sourceMetadata,\n }\n return generateImageData(args)\n}\n\nexport function getMainProps(\n isLoading: boolean,\n isLoaded: boolean,\n images: IGatsbyImageData[\"images\"],\n loading?: \"eager\" | \"lazy\",\n style: CSSProperties = {}\n): Partial {\n // fallback when it's not configured in gatsby-config.\n if (!gatsbyImageIsInstalled()) {\n style = {\n height: `100%`,\n left: 0,\n position: `absolute`,\n top: 0,\n transform: `translateZ(0)`,\n transition: `opacity 250ms linear`,\n width: `100%`,\n willChange: `opacity`,\n ...style,\n }\n }\n\n const result = {\n ...images,\n loading,\n shouldLoad: isLoading,\n \"data-main-image\": ``,\n style: {\n ...style,\n opacity: isLoaded ? 1 : 0,\n },\n }\n\n return result\n}\n\nexport type PlaceholderImageAttrs = ImgHTMLAttributes &\n Pick & {\n \"data-placeholder-image\"?: string\n }\n\nexport function getPlaceholderProps(\n placeholder: PlaceholderImageAttrs | undefined,\n isLoaded: boolean,\n layout: Layout,\n width?: number,\n height?: number,\n backgroundColor?: string,\n objectFit?: CSSProperties[\"objectFit\"],\n objectPosition?: CSSProperties[\"objectPosition\"]\n): PlaceholderImageAttrs {\n const wrapperStyle: CSSProperties = {}\n\n if (backgroundColor) {\n wrapperStyle.backgroundColor = backgroundColor\n\n if (layout === `fixed`) {\n wrapperStyle.width = width\n wrapperStyle.height = height\n wrapperStyle.backgroundColor = backgroundColor\n wrapperStyle.position = `relative`\n } else if (layout === `constrained`) {\n wrapperStyle.position = `absolute`\n wrapperStyle.top = 0\n wrapperStyle.left = 0\n wrapperStyle.bottom = 0\n wrapperStyle.right = 0\n } else if (layout === `fullWidth`) {\n wrapperStyle.position = `absolute`\n wrapperStyle.top = 0\n wrapperStyle.left = 0\n wrapperStyle.bottom = 0\n wrapperStyle.right = 0\n }\n }\n\n if (objectFit) {\n wrapperStyle.objectFit = objectFit\n }\n\n if (objectPosition) {\n wrapperStyle.objectPosition = objectPosition\n }\n const result: PlaceholderImageAttrs = {\n ...placeholder,\n \"aria-hidden\": true,\n \"data-placeholder-image\": ``,\n style: {\n opacity: isLoaded ? 0 : 1,\n transition: `opacity 500ms linear`,\n ...wrapperStyle,\n },\n }\n\n // fallback when it's not configured in gatsby-config.\n if (!gatsbyImageIsInstalled()) {\n result.style = {\n height: `100%`,\n left: 0,\n position: `absolute`,\n top: 0,\n width: `100%`,\n }\n }\n\n return result\n}\n\nexport interface IArtDirectedImage {\n media: string\n image: IGatsbyImageData\n}\n\n/**\n * Generate a Gatsby image data object with multiple, art-directed images that display at different\n * resolutions.\n *\n * @param defaultImage The image displayed when no media query matches.\n * It is also used for all other settings applied to the image, such as width, height and layout.\n * You should pass a className to the component with media queries to adjust the size of the container,\n * as this cannot be adjusted automatically.\n * @param artDirected Array of objects which each contains a `media` string which is a media query\n * such as `(min-width: 320px)`, and the image object to use when that query matches.\n */\nexport function withArtDirection(\n defaultImage: IGatsbyImageData,\n artDirected: Array\n): IGatsbyImageData {\n const { images, placeholder, ...props } = defaultImage\n const output: IGatsbyImageData = {\n ...props,\n images: {\n ...images,\n sources: [],\n },\n placeholder: placeholder && {\n ...placeholder,\n sources: [],\n },\n }\n\n artDirected.forEach(({ media, image }) => {\n if (!media) {\n if (process.env.NODE_ENV === `development`) {\n console.warn(\n \"[gatsby-plugin-image] All art-directed images passed to must have a value set for `media`. Skipping.\"\n )\n }\n return\n }\n\n if (\n image.layout !== defaultImage.layout &&\n process.env.NODE_ENV === `development`\n ) {\n console.warn(\n `[gatsby-plugin-image] Mismatched image layout: expected \"${defaultImage.layout}\" but received \"${image.layout}\". All art-directed images use the same layout as the default image`\n )\n }\n\n output.images.sources.push(\n ...image.images.sources.map(source => {\n return { ...source, media }\n }),\n {\n media,\n srcSet: image.images.fallback.srcSet,\n }\n )\n\n if (!output.placeholder) {\n return\n }\n\n output.placeholder.sources.push({\n media,\n srcSet: image.placeholder.fallback,\n })\n })\n output.images.sources.push(...images.sources)\n if (placeholder?.sources) {\n output.placeholder?.sources.push(...placeholder.sources)\n }\n return output\n}\n","import React, { Fragment, FunctionComponent, PropsWithChildren } from \"react\"\nimport terserMacro from \"../../macros/terser.macro\"\nimport { Layout } from \"../image-utils\"\n\nexport interface ILayoutWrapperProps {\n layout: Layout\n width: number\n height: number\n}\n\nconst NativeScriptLoading: FunctionComponent = () => (\n \n)\n\nexport function getSizer(\n layout: Layout,\n width: number,\n height: number\n): string {\n let sizer = ``\n if (layout === `fullWidth`) {\n sizer = `
`\n }\n\n if (layout === `constrained`) {\n sizer = `
\"\"
`\n }\n\n return sizer\n}\n\nconst Sizer: FunctionComponent = function Sizer({\n layout,\n width,\n height,\n}) {\n if (layout === `fullWidth`) {\n return (\n
\n )\n }\n\n if (layout === `constrained`) {\n return (\n
\n \n
\n )\n }\n\n return null\n}\n\nexport const LayoutWrapper: FunctionComponent<\n PropsWithChildren\n> = function LayoutWrapper({ children, ...props }) {\n return (\n \n \n {children}\n\n {SERVER ? : null}\n \n )\n}\n","import React, { FunctionComponent, ImgHTMLAttributes } from \"react\"\nimport * as PropTypes from \"prop-types\"\n\nexport interface IResponsiveImageProps {\n sizes?: string\n srcSet: string\n}\n\nexport type SourceProps = IResponsiveImageProps &\n (\n | {\n media: string\n type?: string\n }\n | {\n media?: string\n type: string\n }\n )\n\ntype FallbackProps = { src: string } & Partial\n\ntype ImageProps = ImgHTMLAttributes & {\n src: string\n alt: string\n shouldLoad: boolean\n}\n\nexport type PictureProps = ImgHTMLAttributes & {\n fallback?: FallbackProps\n sources?: Array\n alt: string\n shouldLoad?: boolean\n}\n\nconst Image: FunctionComponent = function Image({\n src,\n srcSet,\n loading,\n alt = ``,\n shouldLoad,\n ...props\n}) {\n return (\n \n )\n}\n\nexport const Picture: React.FC = function Picture({\n fallback,\n sources = [],\n shouldLoad = true,\n ...props\n}) {\n const sizes = props.sizes || fallback?.sizes\n const fallbackImage = (\n \n )\n\n if (!sources.length) {\n return fallbackImage\n }\n\n return (\n \n {sources.map(({ media, srcSet, type }) => (\n \n ))}\n {fallbackImage}\n \n )\n}\n\nImage.propTypes = {\n src: PropTypes.string.isRequired,\n alt: PropTypes.string.isRequired,\n sizes: PropTypes.string,\n srcSet: PropTypes.string,\n shouldLoad: PropTypes.bool,\n}\n\nPicture.displayName = `Picture`\nPicture.propTypes = {\n alt: PropTypes.string.isRequired,\n shouldLoad: PropTypes.bool,\n fallback: PropTypes.exact({\n src: PropTypes.string.isRequired,\n srcSet: PropTypes.string,\n sizes: PropTypes.string,\n }),\n sources: PropTypes.arrayOf(\n PropTypes.oneOfType([\n PropTypes.exact({\n media: PropTypes.string.isRequired,\n type: PropTypes.string,\n sizes: PropTypes.string,\n srcSet: PropTypes.string.isRequired,\n }),\n PropTypes.exact({\n media: PropTypes.string,\n type: PropTypes.string.isRequired,\n sizes: PropTypes.string,\n srcSet: PropTypes.string.isRequired,\n }),\n ])\n ),\n}\n","import React, { FunctionComponent, ImgHTMLAttributes } from \"react\"\nimport * as PropTypes from \"prop-types\"\nimport { Picture, SourceProps } from \"./picture\"\n\nexport type PlaceholderProps = ImgHTMLAttributes & {\n fallback?: string\n sources?: Array\n}\n\nexport const Placeholder: FunctionComponent =\n function Placeholder({ fallback, ...props }) {\n if (fallback) {\n return (\n \n )\n } else {\n return
\n }\n }\n\nPlaceholder.displayName = `Placeholder`\nPlaceholder.propTypes = {\n fallback: PropTypes.string,\n sources: Picture.propTypes?.sources,\n alt: function (props, propName, componentName): Error | null {\n if (!props[propName]) {\n return null\n }\n\n return new Error(\n `Invalid prop \\`${propName}\\` supplied to \\`${componentName}\\`. Validation failed.`\n )\n },\n}\n","import React from \"react\"\nimport { Picture, PictureProps } from \"./picture\"\n\nexport type MainImageProps = PictureProps\n\nexport const MainImage: React.FC = function MainImage(props) {\n return (\n <>\n \n \n \n )\n}\n\nMainImage.displayName = `MainImage`\nMainImage.propTypes = Picture.propTypes\n","import React from \"react\"\nimport { getWrapperProps, getMainProps, getPlaceholderProps } from \"./hooks\"\nimport { Placeholder } from \"./placeholder\"\nimport { MainImage, MainImageProps } from \"./main-image\"\nimport { LayoutWrapper } from \"./layout-wrapper\"\nimport PropTypes from \"prop-types\"\nimport type { FunctionComponent, WeakValidationMap } from \"react\"\nimport type { GatsbyImageProps, IGatsbyImageData } from \"./gatsby-image.browser\"\n\nconst removeNewLines = (str: string): string => str.replace(/\\n/g, ``)\n\nexport const GatsbyImage: FunctionComponent =\n function GatsbyImage({\n as = `div`,\n className,\n class: preactClass,\n style,\n image,\n loading = `lazy`,\n imgClassName,\n imgStyle,\n backgroundColor,\n objectFit,\n objectPosition,\n ...props\n }) {\n if (!image) {\n console.warn(`[gatsby-plugin-image] Missing image prop`)\n return null\n }\n\n if (preactClass) {\n className = preactClass\n }\n\n imgStyle = {\n objectFit,\n objectPosition,\n backgroundColor,\n ...imgStyle,\n }\n\n const {\n width,\n height,\n layout,\n images,\n placeholder,\n backgroundColor: placeholderBackgroundColor,\n } = image\n\n const {\n style: wStyle,\n className: wClass,\n ...wrapperProps\n } = getWrapperProps(width, height, layout)\n\n const cleanedImages: IGatsbyImageData[\"images\"] = {\n fallback: undefined,\n sources: [],\n }\n if (images.fallback) {\n cleanedImages.fallback = {\n ...images.fallback,\n srcSet: images.fallback.srcSet\n ? removeNewLines(images.fallback.srcSet)\n : undefined,\n }\n }\n\n if (images.sources) {\n cleanedImages.sources = images.sources.map(source => {\n return {\n ...source,\n srcSet: removeNewLines(source.srcSet),\n }\n })\n }\n\n return React.createElement(\n as,\n {\n ...wrapperProps,\n style: {\n ...wStyle,\n ...style,\n backgroundColor,\n },\n className: `${wClass}${className ? ` ${className}` : ``}`,\n },\n \n \n\n )}\n // When eager is set we want to start the isLoading state on true (we want to load the img without react)\n {...getMainProps(\n loading === `eager`,\n false,\n cleanedImages,\n loading,\n imgStyle\n )}\n />\n \n )\n }\n\nexport const altValidator: PropTypes.Validator = (\n props: GatsbyImageProps,\n propName,\n componentName,\n ...rest\n): Error | undefined => {\n if (!props.alt && props.alt !== ``) {\n return new Error(\n `The \"alt\" prop is required in ${componentName}. If the image is purely presentational then pass an empty string: e.g. alt=\"\". Learn more: https://a11y-style-guide.com/style-guide/section-media.html`\n )\n }\n\n return PropTypes.string(props, propName, componentName, ...rest)\n}\n\nexport const propTypes = {\n image: PropTypes.object.isRequired,\n alt: altValidator,\n} as WeakValidationMap\n","import {\n createElement,\n memo,\n useMemo,\n useEffect,\n useLayoutEffect,\n useRef,\n} from \"react\"\nimport {\n getWrapperProps,\n gatsbyImageIsInstalled,\n hasNativeLazyLoadSupport,\n} from \"./hooks\"\nimport { getSizer } from \"./layout-wrapper\"\nimport { propTypes } from \"./gatsby-image.server\"\nimport type {\n FC,\n ElementType,\n FunctionComponent,\n ImgHTMLAttributes,\n CSSProperties,\n ReactEventHandler,\n} from \"react\"\nimport type { renderImageToString } from \"./lazy-hydrate\"\nimport type { PlaceholderProps } from \"./placeholder\"\nimport type { MainImageProps } from \"./main-image\"\nimport type { Layout } from \"../image-utils\"\n\nconst imageCache = new Set()\nlet renderImageToStringPromise\nlet renderImage: typeof renderImageToString | undefined\n\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport interface GatsbyImageProps\n extends Omit<\n ImgHTMLAttributes,\n \"placeholder\" | \"onLoad\" | \"src\" | \"srcSet\" | \"width\" | \"height\"\n > {\n alt: string\n as?: ElementType\n className?: string\n class?: string\n imgClassName?: string\n image: IGatsbyImageData\n imgStyle?: CSSProperties\n backgroundColor?: string\n objectFit?: CSSProperties[\"objectFit\"]\n objectPosition?: CSSProperties[\"objectPosition\"]\n onLoad?: (props: { wasCached: boolean }) => void\n onError?: ReactEventHandler\n onStartLoad?: (props: { wasCached: boolean }) => void\n}\n\nexport interface IGatsbyImageData {\n layout: Layout\n width: number\n height: number\n backgroundColor?: string\n images: Pick\n placeholder?: Pick\n}\n\nconst GatsbyImageHydrator: FC = function GatsbyImageHydrator({\n as = `div`,\n image,\n style,\n backgroundColor,\n className,\n class: preactClass,\n onStartLoad,\n onLoad,\n onError,\n ...props\n}) {\n const { width, height, layout } = image\n const {\n style: wStyle,\n className: wClass,\n ...wrapperProps\n } = getWrapperProps(width, height, layout)\n const root = useRef()\n const cacheKey = useMemo(() => JSON.stringify(image.images), [image.images])\n\n // Preact uses class instead of className so we need to check for both\n if (preactClass) {\n className = preactClass\n }\n\n const sizer = getSizer(layout, width, height)\n\n useEffect(() => {\n if (!renderImageToStringPromise) {\n renderImageToStringPromise = import(`./lazy-hydrate`).then(\n ({ renderImageToString, swapPlaceholderImage }) => {\n renderImage = renderImageToString\n\n return {\n renderImageToString,\n swapPlaceholderImage,\n }\n }\n )\n }\n\n // The plugin image component is a bit special where if it's server-side rendered, we add extra script tags to support lazy-loading without\n // In this case we stop hydration but fire the correct events.\n const ssrImage = root.current.querySelector(\n `[data-gatsby-image-ssr]`\n ) as HTMLImageElement\n if (ssrImage && hasNativeLazyLoadSupport()) {\n if (ssrImage.complete) {\n // Trigger onStartload and onLoad events\n onStartLoad?.({\n wasCached: true,\n })\n onLoad?.({\n wasCached: true,\n })\n\n // remove ssr key for state updates but add delay to not fight with native code snippt of gatsby-ssr\n setTimeout(() => {\n ssrImage.removeAttribute(`data-gatsby-image-ssr`)\n }, 0)\n } else {\n onStartLoad?.({\n wasCached: true,\n })\n\n ssrImage.addEventListener(`load`, function onLoadListener() {\n ssrImage.removeEventListener(`load`, onLoadListener)\n\n onLoad?.({\n wasCached: true,\n })\n // remove ssr key for state updates but add delay to not fight with native code snippt of gatsby-ssr\n setTimeout(() => {\n ssrImage.removeAttribute(`data-gatsby-image-ssr`)\n }, 0)\n })\n }\n\n imageCache.add(cacheKey)\n\n return\n }\n\n if (renderImage && imageCache.has(cacheKey)) {\n return\n }\n\n let animationFrame\n let cleanupCallback\n renderImageToStringPromise.then(\n ({ renderImageToString, swapPlaceholderImage }) => {\n if (!root.current) {\n return\n }\n\n root.current.innerHTML = renderImageToString({\n isLoading: true,\n isLoaded: imageCache.has(cacheKey),\n image,\n ...props,\n })\n\n if (!imageCache.has(cacheKey)) {\n animationFrame = requestAnimationFrame(() => {\n if (root.current) {\n cleanupCallback = swapPlaceholderImage(\n root.current,\n cacheKey,\n imageCache,\n style,\n onStartLoad,\n onLoad,\n onError\n )\n }\n })\n }\n }\n )\n\n // eslint-disable-next-line consistent-return\n return (): void => {\n if (animationFrame) {\n cancelAnimationFrame(animationFrame)\n }\n if (cleanupCallback) {\n cleanupCallback()\n }\n }\n }, [image])\n\n // useLayoutEffect is ran before React commits to the DOM. This allows us to make sure our HTML is using our cached image version\n useLayoutEffect(() => {\n if (imageCache.has(cacheKey) && renderImage) {\n root.current.innerHTML = renderImage({\n isLoading: imageCache.has(cacheKey),\n isLoaded: imageCache.has(cacheKey),\n image,\n ...props,\n })\n\n // Trigger onStartload and onLoad events\n onStartLoad?.({\n wasCached: true,\n })\n onLoad?.({\n wasCached: true,\n })\n }\n }, [image])\n\n // By keeping all props equal React will keep the component in the DOM\n return createElement(as, {\n ...wrapperProps,\n style: {\n ...wStyle,\n ...style,\n backgroundColor,\n },\n className: `${wClass}${className ? ` ${className}` : ``}`,\n ref: root,\n dangerouslySetInnerHTML: {\n __html: sizer,\n },\n suppressHydrationWarning: true,\n })\n}\n\nexport const GatsbyImage: FunctionComponent = memo(\n function GatsbyImage(props) {\n if (!props.image) {\n if (process.env.NODE_ENV === `development`) {\n console.warn(`[gatsby-plugin-image] Missing image prop`)\n }\n\n return null\n }\n\n if (!gatsbyImageIsInstalled() && process.env.NODE_ENV === `development`) {\n console.warn(\n `[gatsby-plugin-image] You're missing out on some cool performance features. Please add \"gatsby-plugin-image\" to your gatsby-config.js`\n )\n }\n\n return createElement(GatsbyImageHydrator, props)\n }\n)\n\nGatsbyImage.propTypes = propTypes\nGatsbyImage.displayName = `GatsbyImage`\n","import React, { FunctionComponent, ReactElement } from \"react\"\nimport {\n altValidator,\n GatsbyImage as GatsbyImageServer,\n} from \"./gatsby-image.server\"\nimport { GatsbyImageProps, IGatsbyImageData } from \"./gatsby-image.browser\"\nimport PropTypes from \"prop-types\"\nimport { ISharpGatsbyImageArgs } from \"../image-utils\"\n\nexport interface IStaticImageProps\n extends Omit,\n Omit {\n src: string\n filename?: string\n}\n\n// These values are added by Babel. Do not add them manually\ninterface IPrivateProps {\n __imageData?: IGatsbyImageData\n __error?: string\n}\n\nexport function _getStaticImage(\n GatsbyImage: FunctionComponent\n): React.FC {\n return function StaticImage({\n src,\n __imageData: imageData,\n __error,\n // We extract these because they're not meant to be passed-down to GatsbyImage\n /* eslint-disable @typescript-eslint/no-unused-vars */\n width,\n height,\n aspectRatio,\n tracedSVGOptions,\n placeholder,\n formats,\n quality,\n transformOptions,\n jpgOptions,\n pngOptions,\n webpOptions,\n avifOptions,\n blurredOptions,\n breakpoints,\n outputPixelDensities,\n /* eslint-enable @typescript-eslint/no-unused-vars */\n ...props\n }): ReactElement {\n if (__error) {\n console.warn(__error)\n }\n\n if (imageData) {\n return \n }\n console.warn(`Image not loaded`, src)\n if (!__error && process.env.NODE_ENV === `development`) {\n console.warn(\n `Please ensure that \"gatsby-plugin-image\" is included in the plugins array in gatsby-config.js, and that your version of gatsby is at least 2.24.78`\n )\n }\n return null\n }\n}\n\nconst StaticImage: React.FC =\n _getStaticImage(GatsbyImageServer)\n\nconst checkDimensionProps: PropTypes.Validator = (\n props: IStaticImageProps & IPrivateProps,\n propName: keyof IStaticImageProps & IPrivateProps,\n ...rest\n) => {\n if (\n props.layout === `fullWidth` &&\n (propName === `width` || propName === `height`) &&\n props[propName]\n ) {\n return new Error(\n `\"${propName}\" ${props[propName]} may not be passed when layout is fullWidth.`\n )\n }\n return PropTypes.number(props, propName, ...rest)\n}\n\nconst validLayouts = new Set([`fixed`, `fullWidth`, `constrained`])\n\nexport const propTypes = {\n src: PropTypes.string.isRequired,\n alt: altValidator,\n width: checkDimensionProps,\n height: checkDimensionProps,\n sizes: PropTypes.string,\n layout: (props: IStaticImageProps & IPrivateProps): Error | undefined => {\n if (props.layout === undefined) {\n return undefined\n }\n if (validLayouts.has(props.layout)) {\n return undefined\n }\n\n return new Error(\n `Invalid value ${props.layout}\" provided for prop \"layout\". Defaulting to \"constrained\". Valid values are \"fixed\", \"fullWidth\" or \"constrained\".`\n )\n },\n}\n\nStaticImage.displayName = `StaticImage`\nStaticImage.propTypes = propTypes\n\nexport { StaticImage }\n","import {\n GatsbyImage as GatsbyImageBrowser,\n IGatsbyImageData,\n} from \"./gatsby-image.browser\"\nimport React from \"react\"\nimport {\n _getStaticImage,\n propTypes,\n IStaticImageProps,\n} from \"./static-image.server\"\n// These values are added by Babel. Do not add them manually\ninterface IPrivateProps {\n __imageData?: IGatsbyImageData\n __error?: string\n}\n\nconst StaticImage: React.FC =\n _getStaticImage(GatsbyImageBrowser)\n\nStaticImage.displayName = `StaticImage`\nStaticImage.propTypes = propTypes\n\nexport { StaticImage }\n","'use strict';\n\nexport default function bind(fn, thisArg) {\n return function wrap() {\n return fn.apply(thisArg, arguments);\n };\n}\n","'use strict';\n\nimport bind from './helpers/bind.js';\n\n// utils is a library of generic helper functions non-specific to axios\n\nconst {toString} = Object.prototype;\nconst {getPrototypeOf} = Object;\n\nconst kindOf = (cache => thing => {\n const str = toString.call(thing);\n return cache[str] || (cache[str] = str.slice(8, -1).toLowerCase());\n})(Object.create(null));\n\nconst kindOfTest = (type) => {\n type = type.toLowerCase();\n return (thing) => kindOf(thing) === type\n}\n\nconst typeOfTest = type => thing => typeof thing === type;\n\n/**\n * Determine if a value is an Array\n *\n * @param {Object} val The value to test\n *\n * @returns {boolean} True if value is an Array, otherwise false\n */\nconst {isArray} = Array;\n\n/**\n * Determine if a value is undefined\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if the value is undefined, otherwise false\n */\nconst isUndefined = typeOfTest('undefined');\n\n/**\n * Determine if a value is a Buffer\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Buffer, otherwise false\n */\nfunction isBuffer(val) {\n return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor)\n && isFunction(val.constructor.isBuffer) && val.constructor.isBuffer(val);\n}\n\n/**\n * Determine if a value is an ArrayBuffer\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is an ArrayBuffer, otherwise false\n */\nconst isArrayBuffer = kindOfTest('ArrayBuffer');\n\n\n/**\n * Determine if a value is a view on an ArrayBuffer\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false\n */\nfunction isArrayBufferView(val) {\n let result;\n if ((typeof ArrayBuffer !== 'undefined') && (ArrayBuffer.isView)) {\n result = ArrayBuffer.isView(val);\n } else {\n result = (val) && (val.buffer) && (isArrayBuffer(val.buffer));\n }\n return result;\n}\n\n/**\n * Determine if a value is a String\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a String, otherwise false\n */\nconst isString = typeOfTest('string');\n\n/**\n * Determine if a value is a Function\n *\n * @param {*} val The value to test\n * @returns {boolean} True if value is a Function, otherwise false\n */\nconst isFunction = typeOfTest('function');\n\n/**\n * Determine if a value is a Number\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Number, otherwise false\n */\nconst isNumber = typeOfTest('number');\n\n/**\n * Determine if a value is an Object\n *\n * @param {*} thing The value to test\n *\n * @returns {boolean} True if value is an Object, otherwise false\n */\nconst isObject = (thing) => thing !== null && typeof thing === 'object';\n\n/**\n * Determine if a value is a Boolean\n *\n * @param {*} thing The value to test\n * @returns {boolean} True if value is a Boolean, otherwise false\n */\nconst isBoolean = thing => thing === true || thing === false;\n\n/**\n * Determine if a value is a plain Object\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a plain Object, otherwise false\n */\nconst isPlainObject = (val) => {\n if (kindOf(val) !== 'object') {\n return false;\n }\n\n const prototype = getPrototypeOf(val);\n return (prototype === null || prototype === Object.prototype || Object.getPrototypeOf(prototype) === null) && !(Symbol.toStringTag in val) && !(Symbol.iterator in val);\n}\n\n/**\n * Determine if a value is a Date\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Date, otherwise false\n */\nconst isDate = kindOfTest('Date');\n\n/**\n * Determine if a value is a File\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a File, otherwise false\n */\nconst isFile = kindOfTest('File');\n\n/**\n * Determine if a value is a Blob\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Blob, otherwise false\n */\nconst isBlob = kindOfTest('Blob');\n\n/**\n * Determine if a value is a FileList\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a File, otherwise false\n */\nconst isFileList = kindOfTest('FileList');\n\n/**\n * Determine if a value is a Stream\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Stream, otherwise false\n */\nconst isStream = (val) => isObject(val) && isFunction(val.pipe);\n\n/**\n * Determine if a value is a FormData\n *\n * @param {*} thing The value to test\n *\n * @returns {boolean} True if value is an FormData, otherwise false\n */\nconst isFormData = (thing) => {\n let kind;\n return thing && (\n (typeof FormData === 'function' && thing instanceof FormData) || (\n isFunction(thing.append) && (\n (kind = kindOf(thing)) === 'formdata' ||\n // detect form-data instance\n (kind === 'object' && isFunction(thing.toString) && thing.toString() === '[object FormData]')\n )\n )\n )\n}\n\n/**\n * Determine if a value is a URLSearchParams object\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a URLSearchParams object, otherwise false\n */\nconst isURLSearchParams = kindOfTest('URLSearchParams');\n\n/**\n * Trim excess whitespace off the beginning and end of a string\n *\n * @param {String} str The String to trim\n *\n * @returns {String} The String freed of excess whitespace\n */\nconst trim = (str) => str.trim ?\n str.trim() : str.replace(/^[\\s\\uFEFF\\xA0]+|[\\s\\uFEFF\\xA0]+$/g, '');\n\n/**\n * Iterate over an Array or an Object invoking a function for each item.\n *\n * If `obj` is an Array callback will be called passing\n * the value, index, and complete array for each item.\n *\n * If 'obj' is an Object callback will be called passing\n * the value, key, and complete object for each property.\n *\n * @param {Object|Array} obj The object to iterate\n * @param {Function} fn The callback to invoke for each item\n *\n * @param {Boolean} [allOwnKeys = false]\n * @returns {any}\n */\nfunction forEach(obj, fn, {allOwnKeys = false} = {}) {\n // Don't bother if no value provided\n if (obj === null || typeof obj === 'undefined') {\n return;\n }\n\n let i;\n let l;\n\n // Force an array if not already something iterable\n if (typeof obj !== 'object') {\n /*eslint no-param-reassign:0*/\n obj = [obj];\n }\n\n if (isArray(obj)) {\n // Iterate over array values\n for (i = 0, l = obj.length; i < l; i++) {\n fn.call(null, obj[i], i, obj);\n }\n } else {\n // Iterate over object keys\n const keys = allOwnKeys ? Object.getOwnPropertyNames(obj) : Object.keys(obj);\n const len = keys.length;\n let key;\n\n for (i = 0; i < len; i++) {\n key = keys[i];\n fn.call(null, obj[key], key, obj);\n }\n }\n}\n\nfunction findKey(obj, key) {\n key = key.toLowerCase();\n const keys = Object.keys(obj);\n let i = keys.length;\n let _key;\n while (i-- > 0) {\n _key = keys[i];\n if (key === _key.toLowerCase()) {\n return _key;\n }\n }\n return null;\n}\n\nconst _global = (() => {\n /*eslint no-undef:0*/\n if (typeof globalThis !== \"undefined\") return globalThis;\n return typeof self !== \"undefined\" ? self : (typeof window !== 'undefined' ? window : global)\n})();\n\nconst isContextDefined = (context) => !isUndefined(context) && context !== _global;\n\n/**\n * Accepts varargs expecting each argument to be an object, then\n * immutably merges the properties of each object and returns result.\n *\n * When multiple objects contain the same key the later object in\n * the arguments list will take precedence.\n *\n * Example:\n *\n * ```js\n * var result = merge({foo: 123}, {foo: 456});\n * console.log(result.foo); // outputs 456\n * ```\n *\n * @param {Object} obj1 Object to merge\n *\n * @returns {Object} Result of all merge properties\n */\nfunction merge(/* obj1, obj2, obj3, ... */) {\n const {caseless} = isContextDefined(this) && this || {};\n const result = {};\n const assignValue = (val, key) => {\n const targetKey = caseless && findKey(result, key) || key;\n if (isPlainObject(result[targetKey]) && isPlainObject(val)) {\n result[targetKey] = merge(result[targetKey], val);\n } else if (isPlainObject(val)) {\n result[targetKey] = merge({}, val);\n } else if (isArray(val)) {\n result[targetKey] = val.slice();\n } else {\n result[targetKey] = val;\n }\n }\n\n for (let i = 0, l = arguments.length; i < l; i++) {\n arguments[i] && forEach(arguments[i], assignValue);\n }\n return result;\n}\n\n/**\n * Extends object a by mutably adding to it the properties of object b.\n *\n * @param {Object} a The object to be extended\n * @param {Object} b The object to copy properties from\n * @param {Object} thisArg The object to bind function to\n *\n * @param {Boolean} [allOwnKeys]\n * @returns {Object} The resulting value of object a\n */\nconst extend = (a, b, thisArg, {allOwnKeys}= {}) => {\n forEach(b, (val, key) => {\n if (thisArg && isFunction(val)) {\n a[key] = bind(val, thisArg);\n } else {\n a[key] = val;\n }\n }, {allOwnKeys});\n return a;\n}\n\n/**\n * Remove byte order marker. This catches EF BB BF (the UTF-8 BOM)\n *\n * @param {string} content with BOM\n *\n * @returns {string} content value without BOM\n */\nconst stripBOM = (content) => {\n if (content.charCodeAt(0) === 0xFEFF) {\n content = content.slice(1);\n }\n return content;\n}\n\n/**\n * Inherit the prototype methods from one constructor into another\n * @param {function} constructor\n * @param {function} superConstructor\n * @param {object} [props]\n * @param {object} [descriptors]\n *\n * @returns {void}\n */\nconst inherits = (constructor, superConstructor, props, descriptors) => {\n constructor.prototype = Object.create(superConstructor.prototype, descriptors);\n constructor.prototype.constructor = constructor;\n Object.defineProperty(constructor, 'super', {\n value: superConstructor.prototype\n });\n props && Object.assign(constructor.prototype, props);\n}\n\n/**\n * Resolve object with deep prototype chain to a flat object\n * @param {Object} sourceObj source object\n * @param {Object} [destObj]\n * @param {Function|Boolean} [filter]\n * @param {Function} [propFilter]\n *\n * @returns {Object}\n */\nconst toFlatObject = (sourceObj, destObj, filter, propFilter) => {\n let props;\n let i;\n let prop;\n const merged = {};\n\n destObj = destObj || {};\n // eslint-disable-next-line no-eq-null,eqeqeq\n if (sourceObj == null) return destObj;\n\n do {\n props = Object.getOwnPropertyNames(sourceObj);\n i = props.length;\n while (i-- > 0) {\n prop = props[i];\n if ((!propFilter || propFilter(prop, sourceObj, destObj)) && !merged[prop]) {\n destObj[prop] = sourceObj[prop];\n merged[prop] = true;\n }\n }\n sourceObj = filter !== false && getPrototypeOf(sourceObj);\n } while (sourceObj && (!filter || filter(sourceObj, destObj)) && sourceObj !== Object.prototype);\n\n return destObj;\n}\n\n/**\n * Determines whether a string ends with the characters of a specified string\n *\n * @param {String} str\n * @param {String} searchString\n * @param {Number} [position= 0]\n *\n * @returns {boolean}\n */\nconst endsWith = (str, searchString, position) => {\n str = String(str);\n if (position === undefined || position > str.length) {\n position = str.length;\n }\n position -= searchString.length;\n const lastIndex = str.indexOf(searchString, position);\n return lastIndex !== -1 && lastIndex === position;\n}\n\n\n/**\n * Returns new array from array like object or null if failed\n *\n * @param {*} [thing]\n *\n * @returns {?Array}\n */\nconst toArray = (thing) => {\n if (!thing) return null;\n if (isArray(thing)) return thing;\n let i = thing.length;\n if (!isNumber(i)) return null;\n const arr = new Array(i);\n while (i-- > 0) {\n arr[i] = thing[i];\n }\n return arr;\n}\n\n/**\n * Checking if the Uint8Array exists and if it does, it returns a function that checks if the\n * thing passed in is an instance of Uint8Array\n *\n * @param {TypedArray}\n *\n * @returns {Array}\n */\n// eslint-disable-next-line func-names\nconst isTypedArray = (TypedArray => {\n // eslint-disable-next-line func-names\n return thing => {\n return TypedArray && thing instanceof TypedArray;\n };\n})(typeof Uint8Array !== 'undefined' && getPrototypeOf(Uint8Array));\n\n/**\n * For each entry in the object, call the function with the key and value.\n *\n * @param {Object} obj - The object to iterate over.\n * @param {Function} fn - The function to call for each entry.\n *\n * @returns {void}\n */\nconst forEachEntry = (obj, fn) => {\n const generator = obj && obj[Symbol.iterator];\n\n const iterator = generator.call(obj);\n\n let result;\n\n while ((result = iterator.next()) && !result.done) {\n const pair = result.value;\n fn.call(obj, pair[0], pair[1]);\n }\n}\n\n/**\n * It takes a regular expression and a string, and returns an array of all the matches\n *\n * @param {string} regExp - The regular expression to match against.\n * @param {string} str - The string to search.\n *\n * @returns {Array}\n */\nconst matchAll = (regExp, str) => {\n let matches;\n const arr = [];\n\n while ((matches = regExp.exec(str)) !== null) {\n arr.push(matches);\n }\n\n return arr;\n}\n\n/* Checking if the kindOfTest function returns true when passed an HTMLFormElement. */\nconst isHTMLForm = kindOfTest('HTMLFormElement');\n\nconst toCamelCase = str => {\n return str.toLowerCase().replace(/[-_\\s]([a-z\\d])(\\w*)/g,\n function replacer(m, p1, p2) {\n return p1.toUpperCase() + p2;\n }\n );\n};\n\n/* Creating a function that will check if an object has a property. */\nconst hasOwnProperty = (({hasOwnProperty}) => (obj, prop) => hasOwnProperty.call(obj, prop))(Object.prototype);\n\n/**\n * Determine if a value is a RegExp object\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a RegExp object, otherwise false\n */\nconst isRegExp = kindOfTest('RegExp');\n\nconst reduceDescriptors = (obj, reducer) => {\n const descriptors = Object.getOwnPropertyDescriptors(obj);\n const reducedDescriptors = {};\n\n forEach(descriptors, (descriptor, name) => {\n if (reducer(descriptor, name, obj) !== false) {\n reducedDescriptors[name] = descriptor;\n }\n });\n\n Object.defineProperties(obj, reducedDescriptors);\n}\n\n/**\n * Makes all methods read-only\n * @param {Object} obj\n */\n\nconst freezeMethods = (obj) => {\n reduceDescriptors(obj, (descriptor, name) => {\n // skip restricted props in strict mode\n if (isFunction(obj) && ['arguments', 'caller', 'callee'].indexOf(name) !== -1) {\n return false;\n }\n\n const value = obj[name];\n\n if (!isFunction(value)) return;\n\n descriptor.enumerable = false;\n\n if ('writable' in descriptor) {\n descriptor.writable = false;\n return;\n }\n\n if (!descriptor.set) {\n descriptor.set = () => {\n throw Error('Can not rewrite read-only method \\'' + name + '\\'');\n };\n }\n });\n}\n\nconst toObjectSet = (arrayOrString, delimiter) => {\n const obj = {};\n\n const define = (arr) => {\n arr.forEach(value => {\n obj[value] = true;\n });\n }\n\n isArray(arrayOrString) ? define(arrayOrString) : define(String(arrayOrString).split(delimiter));\n\n return obj;\n}\n\nconst noop = () => {}\n\nconst toFiniteNumber = (value, defaultValue) => {\n value = +value;\n return Number.isFinite(value) ? value : defaultValue;\n}\n\nconst ALPHA = 'abcdefghijklmnopqrstuvwxyz'\n\nconst DIGIT = '0123456789';\n\nconst ALPHABET = {\n DIGIT,\n ALPHA,\n ALPHA_DIGIT: ALPHA + ALPHA.toUpperCase() + DIGIT\n}\n\nconst generateString = (size = 16, alphabet = ALPHABET.ALPHA_DIGIT) => {\n let str = '';\n const {length} = alphabet;\n while (size--) {\n str += alphabet[Math.random() * length|0]\n }\n\n return str;\n}\n\n/**\n * If the thing is a FormData object, return true, otherwise return false.\n *\n * @param {unknown} thing - The thing to check.\n *\n * @returns {boolean}\n */\nfunction isSpecCompliantForm(thing) {\n return !!(thing && isFunction(thing.append) && thing[Symbol.toStringTag] === 'FormData' && thing[Symbol.iterator]);\n}\n\nconst toJSONObject = (obj) => {\n const stack = new Array(10);\n\n const visit = (source, i) => {\n\n if (isObject(source)) {\n if (stack.indexOf(source) >= 0) {\n return;\n }\n\n if(!('toJSON' in source)) {\n stack[i] = source;\n const target = isArray(source) ? [] : {};\n\n forEach(source, (value, key) => {\n const reducedValue = visit(value, i + 1);\n !isUndefined(reducedValue) && (target[key] = reducedValue);\n });\n\n stack[i] = undefined;\n\n return target;\n }\n }\n\n return source;\n }\n\n return visit(obj, 0);\n}\n\nconst isAsyncFn = kindOfTest('AsyncFunction');\n\nconst isThenable = (thing) =>\n thing && (isObject(thing) || isFunction(thing)) && isFunction(thing.then) && isFunction(thing.catch);\n\nexport default {\n isArray,\n isArrayBuffer,\n isBuffer,\n isFormData,\n isArrayBufferView,\n isString,\n isNumber,\n isBoolean,\n isObject,\n isPlainObject,\n isUndefined,\n isDate,\n isFile,\n isBlob,\n isRegExp,\n isFunction,\n isStream,\n isURLSearchParams,\n isTypedArray,\n isFileList,\n forEach,\n merge,\n extend,\n trim,\n stripBOM,\n inherits,\n toFlatObject,\n kindOf,\n kindOfTest,\n endsWith,\n toArray,\n forEachEntry,\n matchAll,\n isHTMLForm,\n hasOwnProperty,\n hasOwnProp: hasOwnProperty, // an alias to avoid ESLint no-prototype-builtins detection\n reduceDescriptors,\n freezeMethods,\n toObjectSet,\n toCamelCase,\n noop,\n toFiniteNumber,\n findKey,\n global: _global,\n isContextDefined,\n ALPHABET,\n generateString,\n isSpecCompliantForm,\n toJSONObject,\n isAsyncFn,\n isThenable\n};\n","'use strict';\n\nimport utils from '../utils.js';\n\n/**\n * Create an Error with the specified message, config, error code, request and response.\n *\n * @param {string} message The error message.\n * @param {string} [code] The error code (for example, 'ECONNABORTED').\n * @param {Object} [config] The config.\n * @param {Object} [request] The request.\n * @param {Object} [response] The response.\n *\n * @returns {Error} The created error.\n */\nfunction AxiosError(message, code, config, request, response) {\n Error.call(this);\n\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, this.constructor);\n } else {\n this.stack = (new Error()).stack;\n }\n\n this.message = message;\n this.name = 'AxiosError';\n code && (this.code = code);\n config && (this.config = config);\n request && (this.request = request);\n response && (this.response = response);\n}\n\nutils.inherits(AxiosError, Error, {\n toJSON: function toJSON() {\n return {\n // Standard\n message: this.message,\n name: this.name,\n // Microsoft\n description: this.description,\n number: this.number,\n // Mozilla\n fileName: this.fileName,\n lineNumber: this.lineNumber,\n columnNumber: this.columnNumber,\n stack: this.stack,\n // Axios\n config: utils.toJSONObject(this.config),\n code: this.code,\n status: this.response && this.response.status ? this.response.status : null\n };\n }\n});\n\nconst prototype = AxiosError.prototype;\nconst descriptors = {};\n\n[\n 'ERR_BAD_OPTION_VALUE',\n 'ERR_BAD_OPTION',\n 'ECONNABORTED',\n 'ETIMEDOUT',\n 'ERR_NETWORK',\n 'ERR_FR_TOO_MANY_REDIRECTS',\n 'ERR_DEPRECATED',\n 'ERR_BAD_RESPONSE',\n 'ERR_BAD_REQUEST',\n 'ERR_CANCELED',\n 'ERR_NOT_SUPPORT',\n 'ERR_INVALID_URL'\n// eslint-disable-next-line func-names\n].forEach(code => {\n descriptors[code] = {value: code};\n});\n\nObject.defineProperties(AxiosError, descriptors);\nObject.defineProperty(prototype, 'isAxiosError', {value: true});\n\n// eslint-disable-next-line func-names\nAxiosError.from = (error, code, config, request, response, customProps) => {\n const axiosError = Object.create(prototype);\n\n utils.toFlatObject(error, axiosError, function filter(obj) {\n return obj !== Error.prototype;\n }, prop => {\n return prop !== 'isAxiosError';\n });\n\n AxiosError.call(axiosError, error.message, code, config, request, response);\n\n axiosError.cause = error;\n\n axiosError.name = error.name;\n\n customProps && Object.assign(axiosError, customProps);\n\n return axiosError;\n};\n\nexport default AxiosError;\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosError from '../core/AxiosError.js';\n// temporary hotfix to avoid circular references until AxiosURLSearchParams is refactored\nimport PlatformFormData from '../platform/node/classes/FormData.js';\n\n/**\n * Determines if the given thing is a array or js object.\n *\n * @param {string} thing - The object or array to be visited.\n *\n * @returns {boolean}\n */\nfunction isVisitable(thing) {\n return utils.isPlainObject(thing) || utils.isArray(thing);\n}\n\n/**\n * It removes the brackets from the end of a string\n *\n * @param {string} key - The key of the parameter.\n *\n * @returns {string} the key without the brackets.\n */\nfunction removeBrackets(key) {\n return utils.endsWith(key, '[]') ? key.slice(0, -2) : key;\n}\n\n/**\n * It takes a path, a key, and a boolean, and returns a string\n *\n * @param {string} path - The path to the current key.\n * @param {string} key - The key of the current object being iterated over.\n * @param {string} dots - If true, the key will be rendered with dots instead of brackets.\n *\n * @returns {string} The path to the current key.\n */\nfunction renderKey(path, key, dots) {\n if (!path) return key;\n return path.concat(key).map(function each(token, i) {\n // eslint-disable-next-line no-param-reassign\n token = removeBrackets(token);\n return !dots && i ? '[' + token + ']' : token;\n }).join(dots ? '.' : '');\n}\n\n/**\n * If the array is an array and none of its elements are visitable, then it's a flat array.\n *\n * @param {Array} arr - The array to check\n *\n * @returns {boolean}\n */\nfunction isFlatArray(arr) {\n return utils.isArray(arr) && !arr.some(isVisitable);\n}\n\nconst predicates = utils.toFlatObject(utils, {}, null, function filter(prop) {\n return /^is[A-Z]/.test(prop);\n});\n\n/**\n * Convert a data object to FormData\n *\n * @param {Object} obj\n * @param {?Object} [formData]\n * @param {?Object} [options]\n * @param {Function} [options.visitor]\n * @param {Boolean} [options.metaTokens = true]\n * @param {Boolean} [options.dots = false]\n * @param {?Boolean} [options.indexes = false]\n *\n * @returns {Object}\n **/\n\n/**\n * It converts an object into a FormData object\n *\n * @param {Object} obj - The object to convert to form data.\n * @param {string} formData - The FormData object to append to.\n * @param {Object} options\n *\n * @returns\n */\nfunction toFormData(obj, formData, options) {\n if (!utils.isObject(obj)) {\n throw new TypeError('target must be an object');\n }\n\n // eslint-disable-next-line no-param-reassign\n formData = formData || new (PlatformFormData || FormData)();\n\n // eslint-disable-next-line no-param-reassign\n options = utils.toFlatObject(options, {\n metaTokens: true,\n dots: false,\n indexes: false\n }, false, function defined(option, source) {\n // eslint-disable-next-line no-eq-null,eqeqeq\n return !utils.isUndefined(source[option]);\n });\n\n const metaTokens = options.metaTokens;\n // eslint-disable-next-line no-use-before-define\n const visitor = options.visitor || defaultVisitor;\n const dots = options.dots;\n const indexes = options.indexes;\n const _Blob = options.Blob || typeof Blob !== 'undefined' && Blob;\n const useBlob = _Blob && utils.isSpecCompliantForm(formData);\n\n if (!utils.isFunction(visitor)) {\n throw new TypeError('visitor must be a function');\n }\n\n function convertValue(value) {\n if (value === null) return '';\n\n if (utils.isDate(value)) {\n return value.toISOString();\n }\n\n if (!useBlob && utils.isBlob(value)) {\n throw new AxiosError('Blob is not supported. Use a Buffer instead.');\n }\n\n if (utils.isArrayBuffer(value) || utils.isTypedArray(value)) {\n return useBlob && typeof Blob === 'function' ? new Blob([value]) : Buffer.from(value);\n }\n\n return value;\n }\n\n /**\n * Default visitor.\n *\n * @param {*} value\n * @param {String|Number} key\n * @param {Array} path\n * @this {FormData}\n *\n * @returns {boolean} return true to visit the each prop of the value recursively\n */\n function defaultVisitor(value, key, path) {\n let arr = value;\n\n if (value && !path && typeof value === 'object') {\n if (utils.endsWith(key, '{}')) {\n // eslint-disable-next-line no-param-reassign\n key = metaTokens ? key : key.slice(0, -2);\n // eslint-disable-next-line no-param-reassign\n value = JSON.stringify(value);\n } else if (\n (utils.isArray(value) && isFlatArray(value)) ||\n ((utils.isFileList(value) || utils.endsWith(key, '[]')) && (arr = utils.toArray(value))\n )) {\n // eslint-disable-next-line no-param-reassign\n key = removeBrackets(key);\n\n arr.forEach(function each(el, index) {\n !(utils.isUndefined(el) || el === null) && formData.append(\n // eslint-disable-next-line no-nested-ternary\n indexes === true ? renderKey([key], index, dots) : (indexes === null ? key : key + '[]'),\n convertValue(el)\n );\n });\n return false;\n }\n }\n\n if (isVisitable(value)) {\n return true;\n }\n\n formData.append(renderKey(path, key, dots), convertValue(value));\n\n return false;\n }\n\n const stack = [];\n\n const exposedHelpers = Object.assign(predicates, {\n defaultVisitor,\n convertValue,\n isVisitable\n });\n\n function build(value, path) {\n if (utils.isUndefined(value)) return;\n\n if (stack.indexOf(value) !== -1) {\n throw Error('Circular reference detected in ' + path.join('.'));\n }\n\n stack.push(value);\n\n utils.forEach(value, function each(el, key) {\n const result = !(utils.isUndefined(el) || el === null) && visitor.call(\n formData, el, utils.isString(key) ? key.trim() : key, path, exposedHelpers\n );\n\n if (result === true) {\n build(el, path ? path.concat(key) : [key]);\n }\n });\n\n stack.pop();\n }\n\n if (!utils.isObject(obj)) {\n throw new TypeError('data must be an object');\n }\n\n build(obj);\n\n return formData;\n}\n\nexport default toFormData;\n","'use strict';\n\nimport toFormData from './toFormData.js';\n\n/**\n * It encodes a string by replacing all characters that are not in the unreserved set with\n * their percent-encoded equivalents\n *\n * @param {string} str - The string to encode.\n *\n * @returns {string} The encoded string.\n */\nfunction encode(str) {\n const charMap = {\n '!': '%21',\n \"'\": '%27',\n '(': '%28',\n ')': '%29',\n '~': '%7E',\n '%20': '+',\n '%00': '\\x00'\n };\n return encodeURIComponent(str).replace(/[!'()~]|%20|%00/g, function replacer(match) {\n return charMap[match];\n });\n}\n\n/**\n * It takes a params object and converts it to a FormData object\n *\n * @param {Object} params - The parameters to be converted to a FormData object.\n * @param {Object} options - The options object passed to the Axios constructor.\n *\n * @returns {void}\n */\nfunction AxiosURLSearchParams(params, options) {\n this._pairs = [];\n\n params && toFormData(params, this, options);\n}\n\nconst prototype = AxiosURLSearchParams.prototype;\n\nprototype.append = function append(name, value) {\n this._pairs.push([name, value]);\n};\n\nprototype.toString = function toString(encoder) {\n const _encode = encoder ? function(value) {\n return encoder.call(this, value, encode);\n } : encode;\n\n return this._pairs.map(function each(pair) {\n return _encode(pair[0]) + '=' + _encode(pair[1]);\n }, '').join('&');\n};\n\nexport default AxiosURLSearchParams;\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosURLSearchParams from '../helpers/AxiosURLSearchParams.js';\n\n/**\n * It replaces all instances of the characters `:`, `$`, `,`, `+`, `[`, and `]` with their\n * URI encoded counterparts\n *\n * @param {string} val The value to be encoded.\n *\n * @returns {string} The encoded value.\n */\nfunction encode(val) {\n return encodeURIComponent(val).\n replace(/%3A/gi, ':').\n replace(/%24/g, '$').\n replace(/%2C/gi, ',').\n replace(/%20/g, '+').\n replace(/%5B/gi, '[').\n replace(/%5D/gi, ']');\n}\n\n/**\n * Build a URL by appending params to the end\n *\n * @param {string} url The base of the url (e.g., http://www.google.com)\n * @param {object} [params] The params to be appended\n * @param {?object} options\n *\n * @returns {string} The formatted url\n */\nexport default function buildURL(url, params, options) {\n /*eslint no-param-reassign:0*/\n if (!params) {\n return url;\n }\n \n const _encode = options && options.encode || encode;\n\n const serializeFn = options && options.serialize;\n\n let serializedParams;\n\n if (serializeFn) {\n serializedParams = serializeFn(params, options);\n } else {\n serializedParams = utils.isURLSearchParams(params) ?\n params.toString() :\n new AxiosURLSearchParams(params, options).toString(_encode);\n }\n\n if (serializedParams) {\n const hashmarkIndex = url.indexOf(\"#\");\n\n if (hashmarkIndex !== -1) {\n url = url.slice(0, hashmarkIndex);\n }\n url += (url.indexOf('?') === -1 ? '?' : '&') + serializedParams;\n }\n\n return url;\n}\n","'use strict';\n\nimport utils from './../utils.js';\n\nclass InterceptorManager {\n constructor() {\n this.handlers = [];\n }\n\n /**\n * Add a new interceptor to the stack\n *\n * @param {Function} fulfilled The function to handle `then` for a `Promise`\n * @param {Function} rejected The function to handle `reject` for a `Promise`\n *\n * @return {Number} An ID used to remove interceptor later\n */\n use(fulfilled, rejected, options) {\n this.handlers.push({\n fulfilled,\n rejected,\n synchronous: options ? options.synchronous : false,\n runWhen: options ? options.runWhen : null\n });\n return this.handlers.length - 1;\n }\n\n /**\n * Remove an interceptor from the stack\n *\n * @param {Number} id The ID that was returned by `use`\n *\n * @returns {Boolean} `true` if the interceptor was removed, `false` otherwise\n */\n eject(id) {\n if (this.handlers[id]) {\n this.handlers[id] = null;\n }\n }\n\n /**\n * Clear all interceptors from the stack\n *\n * @returns {void}\n */\n clear() {\n if (this.handlers) {\n this.handlers = [];\n }\n }\n\n /**\n * Iterate over all the registered interceptors\n *\n * This method is particularly useful for skipping over any\n * interceptors that may have become `null` calling `eject`.\n *\n * @param {Function} fn The function to call for each interceptor\n *\n * @returns {void}\n */\n forEach(fn) {\n utils.forEach(this.handlers, function forEachHandler(h) {\n if (h !== null) {\n fn(h);\n }\n });\n }\n}\n\nexport default InterceptorManager;\n","'use strict';\n\nexport default {\n silentJSONParsing: true,\n forcedJSONParsing: true,\n clarifyTimeoutError: false\n};\n","import URLSearchParams from './classes/URLSearchParams.js'\nimport FormData from './classes/FormData.js'\nimport Blob from './classes/Blob.js'\n\n/**\n * Determine if we're running in a standard browser environment\n *\n * This allows axios to run in a web worker, and react-native.\n * Both environments support XMLHttpRequest, but not fully standard globals.\n *\n * web workers:\n * typeof window -> undefined\n * typeof document -> undefined\n *\n * react-native:\n * navigator.product -> 'ReactNative'\n * nativescript\n * navigator.product -> 'NativeScript' or 'NS'\n *\n * @returns {boolean}\n */\nconst isStandardBrowserEnv = (() => {\n let product;\n if (typeof navigator !== 'undefined' && (\n (product = navigator.product) === 'ReactNative' ||\n product === 'NativeScript' ||\n product === 'NS')\n ) {\n return false;\n }\n\n return typeof window !== 'undefined' && typeof document !== 'undefined';\n})();\n\n/**\n * Determine if we're running in a standard browser webWorker environment\n *\n * Although the `isStandardBrowserEnv` method indicates that\n * `allows axios to run in a web worker`, the WebWorker will still be\n * filtered out due to its judgment standard\n * `typeof window !== 'undefined' && typeof document !== 'undefined'`.\n * This leads to a problem when axios post `FormData` in webWorker\n */\n const isStandardBrowserWebWorkerEnv = (() => {\n return (\n typeof WorkerGlobalScope !== 'undefined' &&\n // eslint-disable-next-line no-undef\n self instanceof WorkerGlobalScope &&\n typeof self.importScripts === 'function'\n );\n})();\n\n\nexport default {\n isBrowser: true,\n classes: {\n URLSearchParams,\n FormData,\n Blob\n },\n isStandardBrowserEnv,\n isStandardBrowserWebWorkerEnv,\n protocols: ['http', 'https', 'file', 'blob', 'url', 'data']\n};\n","'use strict';\n\nimport AxiosURLSearchParams from '../../../helpers/AxiosURLSearchParams.js';\nexport default typeof URLSearchParams !== 'undefined' ? URLSearchParams : AxiosURLSearchParams;\n","'use strict';\n\nexport default typeof FormData !== 'undefined' ? FormData : null;\n","'use strict'\n\nexport default typeof Blob !== 'undefined' ? Blob : null\n","'use strict';\n\nimport utils from '../utils.js';\n\n/**\n * It takes a string like `foo[x][y][z]` and returns an array like `['foo', 'x', 'y', 'z']\n *\n * @param {string} name - The name of the property to get.\n *\n * @returns An array of strings.\n */\nfunction parsePropPath(name) {\n // foo[x][y][z]\n // foo.x.y.z\n // foo-x-y-z\n // foo x y z\n return utils.matchAll(/\\w+|\\[(\\w*)]/g, name).map(match => {\n return match[0] === '[]' ? '' : match[1] || match[0];\n });\n}\n\n/**\n * Convert an array to an object.\n *\n * @param {Array} arr - The array to convert to an object.\n *\n * @returns An object with the same keys and values as the array.\n */\nfunction arrayToObject(arr) {\n const obj = {};\n const keys = Object.keys(arr);\n let i;\n const len = keys.length;\n let key;\n for (i = 0; i < len; i++) {\n key = keys[i];\n obj[key] = arr[key];\n }\n return obj;\n}\n\n/**\n * It takes a FormData object and returns a JavaScript object\n *\n * @param {string} formData The FormData object to convert to JSON.\n *\n * @returns {Object | null} The converted object.\n */\nfunction formDataToJSON(formData) {\n function buildPath(path, value, target, index) {\n let name = path[index++];\n const isNumericKey = Number.isFinite(+name);\n const isLast = index >= path.length;\n name = !name && utils.isArray(target) ? target.length : name;\n\n if (isLast) {\n if (utils.hasOwnProp(target, name)) {\n target[name] = [target[name], value];\n } else {\n target[name] = value;\n }\n\n return !isNumericKey;\n }\n\n if (!target[name] || !utils.isObject(target[name])) {\n target[name] = [];\n }\n\n const result = buildPath(path, value, target[name], index);\n\n if (result && utils.isArray(target[name])) {\n target[name] = arrayToObject(target[name]);\n }\n\n return !isNumericKey;\n }\n\n if (utils.isFormData(formData) && utils.isFunction(formData.entries)) {\n const obj = {};\n\n utils.forEachEntry(formData, (name, value) => {\n buildPath(parsePropPath(name), value, obj, 0);\n });\n\n return obj;\n }\n\n return null;\n}\n\nexport default formDataToJSON;\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosError from '../core/AxiosError.js';\nimport transitionalDefaults from './transitional.js';\nimport toFormData from '../helpers/toFormData.js';\nimport toURLEncodedForm from '../helpers/toURLEncodedForm.js';\nimport platform from '../platform/index.js';\nimport formDataToJSON from '../helpers/formDataToJSON.js';\n\nconst DEFAULT_CONTENT_TYPE = {\n 'Content-Type': undefined\n};\n\n/**\n * It takes a string, tries to parse it, and if it fails, it returns the stringified version\n * of the input\n *\n * @param {any} rawValue - The value to be stringified.\n * @param {Function} parser - A function that parses a string into a JavaScript object.\n * @param {Function} encoder - A function that takes a value and returns a string.\n *\n * @returns {string} A stringified version of the rawValue.\n */\nfunction stringifySafely(rawValue, parser, encoder) {\n if (utils.isString(rawValue)) {\n try {\n (parser || JSON.parse)(rawValue);\n return utils.trim(rawValue);\n } catch (e) {\n if (e.name !== 'SyntaxError') {\n throw e;\n }\n }\n }\n\n return (encoder || JSON.stringify)(rawValue);\n}\n\nconst defaults = {\n\n transitional: transitionalDefaults,\n\n adapter: ['xhr', 'http'],\n\n transformRequest: [function transformRequest(data, headers) {\n const contentType = headers.getContentType() || '';\n const hasJSONContentType = contentType.indexOf('application/json') > -1;\n const isObjectPayload = utils.isObject(data);\n\n if (isObjectPayload && utils.isHTMLForm(data)) {\n data = new FormData(data);\n }\n\n const isFormData = utils.isFormData(data);\n\n if (isFormData) {\n if (!hasJSONContentType) {\n return data;\n }\n return hasJSONContentType ? JSON.stringify(formDataToJSON(data)) : data;\n }\n\n if (utils.isArrayBuffer(data) ||\n utils.isBuffer(data) ||\n utils.isStream(data) ||\n utils.isFile(data) ||\n utils.isBlob(data)\n ) {\n return data;\n }\n if (utils.isArrayBufferView(data)) {\n return data.buffer;\n }\n if (utils.isURLSearchParams(data)) {\n headers.setContentType('application/x-www-form-urlencoded;charset=utf-8', false);\n return data.toString();\n }\n\n let isFileList;\n\n if (isObjectPayload) {\n if (contentType.indexOf('application/x-www-form-urlencoded') > -1) {\n return toURLEncodedForm(data, this.formSerializer).toString();\n }\n\n if ((isFileList = utils.isFileList(data)) || contentType.indexOf('multipart/form-data') > -1) {\n const _FormData = this.env && this.env.FormData;\n\n return toFormData(\n isFileList ? {'files[]': data} : data,\n _FormData && new _FormData(),\n this.formSerializer\n );\n }\n }\n\n if (isObjectPayload || hasJSONContentType ) {\n headers.setContentType('application/json', false);\n return stringifySafely(data);\n }\n\n return data;\n }],\n\n transformResponse: [function transformResponse(data) {\n const transitional = this.transitional || defaults.transitional;\n const forcedJSONParsing = transitional && transitional.forcedJSONParsing;\n const JSONRequested = this.responseType === 'json';\n\n if (data && utils.isString(data) && ((forcedJSONParsing && !this.responseType) || JSONRequested)) {\n const silentJSONParsing = transitional && transitional.silentJSONParsing;\n const strictJSONParsing = !silentJSONParsing && JSONRequested;\n\n try {\n return JSON.parse(data);\n } catch (e) {\n if (strictJSONParsing) {\n if (e.name === 'SyntaxError') {\n throw AxiosError.from(e, AxiosError.ERR_BAD_RESPONSE, this, null, this.response);\n }\n throw e;\n }\n }\n }\n\n return data;\n }],\n\n /**\n * A timeout in milliseconds to abort a request. If set to 0 (default) a\n * timeout is not created.\n */\n timeout: 0,\n\n xsrfCookieName: 'XSRF-TOKEN',\n xsrfHeaderName: 'X-XSRF-TOKEN',\n\n maxContentLength: -1,\n maxBodyLength: -1,\n\n env: {\n FormData: platform.classes.FormData,\n Blob: platform.classes.Blob\n },\n\n validateStatus: function validateStatus(status) {\n return status >= 200 && status < 300;\n },\n\n headers: {\n common: {\n 'Accept': 'application/json, text/plain, */*'\n }\n }\n};\n\nutils.forEach(['delete', 'get', 'head'], function forEachMethodNoData(method) {\n defaults.headers[method] = {};\n});\n\nutils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n defaults.headers[method] = utils.merge(DEFAULT_CONTENT_TYPE);\n});\n\nexport default defaults;\n","'use strict';\n\nimport utils from '../utils.js';\nimport toFormData from './toFormData.js';\nimport platform from '../platform/index.js';\n\nexport default function toURLEncodedForm(data, options) {\n return toFormData(data, new platform.classes.URLSearchParams(), Object.assign({\n visitor: function(value, key, path, helpers) {\n if (platform.isNode && utils.isBuffer(value)) {\n this.append(key, value.toString('base64'));\n return false;\n }\n\n return helpers.defaultVisitor.apply(this, arguments);\n }\n }, options));\n}\n","'use strict';\n\nimport utils from './../utils.js';\n\n// RawAxiosHeaders whose duplicates are ignored by node\n// c.f. https://nodejs.org/api/http.html#http_message_headers\nconst ignoreDuplicateOf = utils.toObjectSet([\n 'age', 'authorization', 'content-length', 'content-type', 'etag',\n 'expires', 'from', 'host', 'if-modified-since', 'if-unmodified-since',\n 'last-modified', 'location', 'max-forwards', 'proxy-authorization',\n 'referer', 'retry-after', 'user-agent'\n]);\n\n/**\n * Parse headers into an object\n *\n * ```\n * Date: Wed, 27 Aug 2014 08:58:49 GMT\n * Content-Type: application/json\n * Connection: keep-alive\n * Transfer-Encoding: chunked\n * ```\n *\n * @param {String} rawHeaders Headers needing to be parsed\n *\n * @returns {Object} Headers parsed into an object\n */\nexport default rawHeaders => {\n const parsed = {};\n let key;\n let val;\n let i;\n\n rawHeaders && rawHeaders.split('\\n').forEach(function parser(line) {\n i = line.indexOf(':');\n key = line.substring(0, i).trim().toLowerCase();\n val = line.substring(i + 1).trim();\n\n if (!key || (parsed[key] && ignoreDuplicateOf[key])) {\n return;\n }\n\n if (key === 'set-cookie') {\n if (parsed[key]) {\n parsed[key].push(val);\n } else {\n parsed[key] = [val];\n }\n } else {\n parsed[key] = parsed[key] ? parsed[key] + ', ' + val : val;\n }\n });\n\n return parsed;\n};\n","'use strict';\n\nimport utils from '../utils.js';\nimport parseHeaders from '../helpers/parseHeaders.js';\n\nconst $internals = Symbol('internals');\n\nfunction normalizeHeader(header) {\n return header && String(header).trim().toLowerCase();\n}\n\nfunction normalizeValue(value) {\n if (value === false || value == null) {\n return value;\n }\n\n return utils.isArray(value) ? value.map(normalizeValue) : String(value);\n}\n\nfunction parseTokens(str) {\n const tokens = Object.create(null);\n const tokensRE = /([^\\s,;=]+)\\s*(?:=\\s*([^,;]+))?/g;\n let match;\n\n while ((match = tokensRE.exec(str))) {\n tokens[match[1]] = match[2];\n }\n\n return tokens;\n}\n\nconst isValidHeaderName = (str) => /^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(str.trim());\n\nfunction matchHeaderValue(context, value, header, filter, isHeaderNameFilter) {\n if (utils.isFunction(filter)) {\n return filter.call(this, value, header);\n }\n\n if (isHeaderNameFilter) {\n value = header;\n }\n\n if (!utils.isString(value)) return;\n\n if (utils.isString(filter)) {\n return value.indexOf(filter) !== -1;\n }\n\n if (utils.isRegExp(filter)) {\n return filter.test(value);\n }\n}\n\nfunction formatHeader(header) {\n return header.trim()\n .toLowerCase().replace(/([a-z\\d])(\\w*)/g, (w, char, str) => {\n return char.toUpperCase() + str;\n });\n}\n\nfunction buildAccessors(obj, header) {\n const accessorName = utils.toCamelCase(' ' + header);\n\n ['get', 'set', 'has'].forEach(methodName => {\n Object.defineProperty(obj, methodName + accessorName, {\n value: function(arg1, arg2, arg3) {\n return this[methodName].call(this, header, arg1, arg2, arg3);\n },\n configurable: true\n });\n });\n}\n\nclass AxiosHeaders {\n constructor(headers) {\n headers && this.set(headers);\n }\n\n set(header, valueOrRewrite, rewrite) {\n const self = this;\n\n function setHeader(_value, _header, _rewrite) {\n const lHeader = normalizeHeader(_header);\n\n if (!lHeader) {\n throw new Error('header name must be a non-empty string');\n }\n\n const key = utils.findKey(self, lHeader);\n\n if(!key || self[key] === undefined || _rewrite === true || (_rewrite === undefined && self[key] !== false)) {\n self[key || _header] = normalizeValue(_value);\n }\n }\n\n const setHeaders = (headers, _rewrite) =>\n utils.forEach(headers, (_value, _header) => setHeader(_value, _header, _rewrite));\n\n if (utils.isPlainObject(header) || header instanceof this.constructor) {\n setHeaders(header, valueOrRewrite)\n } else if(utils.isString(header) && (header = header.trim()) && !isValidHeaderName(header)) {\n setHeaders(parseHeaders(header), valueOrRewrite);\n } else {\n header != null && setHeader(valueOrRewrite, header, rewrite);\n }\n\n return this;\n }\n\n get(header, parser) {\n header = normalizeHeader(header);\n\n if (header) {\n const key = utils.findKey(this, header);\n\n if (key) {\n const value = this[key];\n\n if (!parser) {\n return value;\n }\n\n if (parser === true) {\n return parseTokens(value);\n }\n\n if (utils.isFunction(parser)) {\n return parser.call(this, value, key);\n }\n\n if (utils.isRegExp(parser)) {\n return parser.exec(value);\n }\n\n throw new TypeError('parser must be boolean|regexp|function');\n }\n }\n }\n\n has(header, matcher) {\n header = normalizeHeader(header);\n\n if (header) {\n const key = utils.findKey(this, header);\n\n return !!(key && this[key] !== undefined && (!matcher || matchHeaderValue(this, this[key], key, matcher)));\n }\n\n return false;\n }\n\n delete(header, matcher) {\n const self = this;\n let deleted = false;\n\n function deleteHeader(_header) {\n _header = normalizeHeader(_header);\n\n if (_header) {\n const key = utils.findKey(self, _header);\n\n if (key && (!matcher || matchHeaderValue(self, self[key], key, matcher))) {\n delete self[key];\n\n deleted = true;\n }\n }\n }\n\n if (utils.isArray(header)) {\n header.forEach(deleteHeader);\n } else {\n deleteHeader(header);\n }\n\n return deleted;\n }\n\n clear(matcher) {\n const keys = Object.keys(this);\n let i = keys.length;\n let deleted = false;\n\n while (i--) {\n const key = keys[i];\n if(!matcher || matchHeaderValue(this, this[key], key, matcher, true)) {\n delete this[key];\n deleted = true;\n }\n }\n\n return deleted;\n }\n\n normalize(format) {\n const self = this;\n const headers = {};\n\n utils.forEach(this, (value, header) => {\n const key = utils.findKey(headers, header);\n\n if (key) {\n self[key] = normalizeValue(value);\n delete self[header];\n return;\n }\n\n const normalized = format ? formatHeader(header) : String(header).trim();\n\n if (normalized !== header) {\n delete self[header];\n }\n\n self[normalized] = normalizeValue(value);\n\n headers[normalized] = true;\n });\n\n return this;\n }\n\n concat(...targets) {\n return this.constructor.concat(this, ...targets);\n }\n\n toJSON(asStrings) {\n const obj = Object.create(null);\n\n utils.forEach(this, (value, header) => {\n value != null && value !== false && (obj[header] = asStrings && utils.isArray(value) ? value.join(', ') : value);\n });\n\n return obj;\n }\n\n [Symbol.iterator]() {\n return Object.entries(this.toJSON())[Symbol.iterator]();\n }\n\n toString() {\n return Object.entries(this.toJSON()).map(([header, value]) => header + ': ' + value).join('\\n');\n }\n\n get [Symbol.toStringTag]() {\n return 'AxiosHeaders';\n }\n\n static from(thing) {\n return thing instanceof this ? thing : new this(thing);\n }\n\n static concat(first, ...targets) {\n const computed = new this(first);\n\n targets.forEach((target) => computed.set(target));\n\n return computed;\n }\n\n static accessor(header) {\n const internals = this[$internals] = (this[$internals] = {\n accessors: {}\n });\n\n const accessors = internals.accessors;\n const prototype = this.prototype;\n\n function defineAccessor(_header) {\n const lHeader = normalizeHeader(_header);\n\n if (!accessors[lHeader]) {\n buildAccessors(prototype, _header);\n accessors[lHeader] = true;\n }\n }\n\n utils.isArray(header) ? header.forEach(defineAccessor) : defineAccessor(header);\n\n return this;\n }\n}\n\nAxiosHeaders.accessor(['Content-Type', 'Content-Length', 'Accept', 'Accept-Encoding', 'User-Agent', 'Authorization']);\n\nutils.freezeMethods(AxiosHeaders.prototype);\nutils.freezeMethods(AxiosHeaders);\n\nexport default AxiosHeaders;\n","'use strict';\n\nimport utils from './../utils.js';\nimport defaults from '../defaults/index.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\n\n/**\n * Transform the data for a request or a response\n *\n * @param {Array|Function} fns A single function or Array of functions\n * @param {?Object} response The response object\n *\n * @returns {*} The resulting transformed data\n */\nexport default function transformData(fns, response) {\n const config = this || defaults;\n const context = response || config;\n const headers = AxiosHeaders.from(context.headers);\n let data = context.data;\n\n utils.forEach(fns, function transform(fn) {\n data = fn.call(config, data, headers.normalize(), response ? response.status : undefined);\n });\n\n headers.normalize();\n\n return data;\n}\n","'use strict';\n\nexport default function isCancel(value) {\n return !!(value && value.__CANCEL__);\n}\n","'use strict';\n\nimport AxiosError from '../core/AxiosError.js';\nimport utils from '../utils.js';\n\n/**\n * A `CanceledError` is an object that is thrown when an operation is canceled.\n *\n * @param {string=} message The message.\n * @param {Object=} config The config.\n * @param {Object=} request The request.\n *\n * @returns {CanceledError} The created error.\n */\nfunction CanceledError(message, config, request) {\n // eslint-disable-next-line no-eq-null,eqeqeq\n AxiosError.call(this, message == null ? 'canceled' : message, AxiosError.ERR_CANCELED, config, request);\n this.name = 'CanceledError';\n}\n\nutils.inherits(CanceledError, AxiosError, {\n __CANCEL__: true\n});\n\nexport default CanceledError;\n","'use strict';\n\nimport utils from './../utils.js';\nimport platform from '../platform/index.js';\n\nexport default platform.isStandardBrowserEnv ?\n\n// Standard browser envs support document.cookie\n (function standardBrowserEnv() {\n return {\n write: function write(name, value, expires, path, domain, secure) {\n const cookie = [];\n cookie.push(name + '=' + encodeURIComponent(value));\n\n if (utils.isNumber(expires)) {\n cookie.push('expires=' + new Date(expires).toGMTString());\n }\n\n if (utils.isString(path)) {\n cookie.push('path=' + path);\n }\n\n if (utils.isString(domain)) {\n cookie.push('domain=' + domain);\n }\n\n if (secure === true) {\n cookie.push('secure');\n }\n\n document.cookie = cookie.join('; ');\n },\n\n read: function read(name) {\n const match = document.cookie.match(new RegExp('(^|;\\\\s*)(' + name + ')=([^;]*)'));\n return (match ? decodeURIComponent(match[3]) : null);\n },\n\n remove: function remove(name) {\n this.write(name, '', Date.now() - 86400000);\n }\n };\n })() :\n\n// Non standard browser env (web workers, react-native) lack needed support.\n (function nonStandardBrowserEnv() {\n return {\n write: function write() {},\n read: function read() { return null; },\n remove: function remove() {}\n };\n })();\n","'use strict';\n\nimport isAbsoluteURL from '../helpers/isAbsoluteURL.js';\nimport combineURLs from '../helpers/combineURLs.js';\n\n/**\n * Creates a new URL by combining the baseURL with the requestedURL,\n * only when the requestedURL is not already an absolute URL.\n * If the requestURL is absolute, this function returns the requestedURL untouched.\n *\n * @param {string} baseURL The base URL\n * @param {string} requestedURL Absolute or relative URL to combine\n *\n * @returns {string} The combined full path\n */\nexport default function buildFullPath(baseURL, requestedURL) {\n if (baseURL && !isAbsoluteURL(requestedURL)) {\n return combineURLs(baseURL, requestedURL);\n }\n return requestedURL;\n}\n","'use strict';\n\n/**\n * Determines whether the specified URL is absolute\n *\n * @param {string} url The URL to test\n *\n * @returns {boolean} True if the specified URL is absolute, otherwise false\n */\nexport default function isAbsoluteURL(url) {\n // A URL is considered absolute if it begins with \"://\" or \"//\" (protocol-relative URL).\n // RFC 3986 defines scheme name as a sequence of characters beginning with a letter and followed\n // by any combination of letters, digits, plus, period, or hyphen.\n return /^([a-z][a-z\\d+\\-.]*:)?\\/\\//i.test(url);\n}\n","'use strict';\n\n/**\n * Creates a new URL by combining the specified URLs\n *\n * @param {string} baseURL The base URL\n * @param {string} relativeURL The relative URL\n *\n * @returns {string} The combined URL\n */\nexport default function combineURLs(baseURL, relativeURL) {\n return relativeURL\n ? baseURL.replace(/\\/+$/, '') + '/' + relativeURL.replace(/^\\/+/, '')\n : baseURL;\n}\n","'use strict';\n\nimport utils from './../utils.js';\nimport platform from '../platform/index.js';\n\nexport default platform.isStandardBrowserEnv ?\n\n// Standard browser envs have full support of the APIs needed to test\n// whether the request URL is of the same origin as current location.\n (function standardBrowserEnv() {\n const msie = /(msie|trident)/i.test(navigator.userAgent);\n const urlParsingNode = document.createElement('a');\n let originURL;\n\n /**\n * Parse a URL to discover it's components\n *\n * @param {String} url The URL to be parsed\n * @returns {Object}\n */\n function resolveURL(url) {\n let href = url;\n\n if (msie) {\n // IE needs attribute set twice to normalize properties\n urlParsingNode.setAttribute('href', href);\n href = urlParsingNode.href;\n }\n\n urlParsingNode.setAttribute('href', href);\n\n // urlParsingNode provides the UrlUtils interface - http://url.spec.whatwg.org/#urlutils\n return {\n href: urlParsingNode.href,\n protocol: urlParsingNode.protocol ? urlParsingNode.protocol.replace(/:$/, '') : '',\n host: urlParsingNode.host,\n search: urlParsingNode.search ? urlParsingNode.search.replace(/^\\?/, '') : '',\n hash: urlParsingNode.hash ? urlParsingNode.hash.replace(/^#/, '') : '',\n hostname: urlParsingNode.hostname,\n port: urlParsingNode.port,\n pathname: (urlParsingNode.pathname.charAt(0) === '/') ?\n urlParsingNode.pathname :\n '/' + urlParsingNode.pathname\n };\n }\n\n originURL = resolveURL(window.location.href);\n\n /**\n * Determine if a URL shares the same origin as the current location\n *\n * @param {String} requestURL The URL to test\n * @returns {boolean} True if URL shares the same origin, otherwise false\n */\n return function isURLSameOrigin(requestURL) {\n const parsed = (utils.isString(requestURL)) ? resolveURL(requestURL) : requestURL;\n return (parsed.protocol === originURL.protocol &&\n parsed.host === originURL.host);\n };\n })() :\n\n // Non standard browser envs (web workers, react-native) lack needed support.\n (function nonStandardBrowserEnv() {\n return function isURLSameOrigin() {\n return true;\n };\n })();\n","'use strict';\n\n/**\n * Calculate data maxRate\n * @param {Number} [samplesCount= 10]\n * @param {Number} [min= 1000]\n * @returns {Function}\n */\nfunction speedometer(samplesCount, min) {\n samplesCount = samplesCount || 10;\n const bytes = new Array(samplesCount);\n const timestamps = new Array(samplesCount);\n let head = 0;\n let tail = 0;\n let firstSampleTS;\n\n min = min !== undefined ? min : 1000;\n\n return function push(chunkLength) {\n const now = Date.now();\n\n const startedAt = timestamps[tail];\n\n if (!firstSampleTS) {\n firstSampleTS = now;\n }\n\n bytes[head] = chunkLength;\n timestamps[head] = now;\n\n let i = tail;\n let bytesCount = 0;\n\n while (i !== head) {\n bytesCount += bytes[i++];\n i = i % samplesCount;\n }\n\n head = (head + 1) % samplesCount;\n\n if (head === tail) {\n tail = (tail + 1) % samplesCount;\n }\n\n if (now - firstSampleTS < min) {\n return;\n }\n\n const passed = startedAt && now - startedAt;\n\n return passed ? Math.round(bytesCount * 1000 / passed) : undefined;\n };\n}\n\nexport default speedometer;\n","'use strict';\n\nimport utils from './../utils.js';\nimport settle from './../core/settle.js';\nimport cookies from './../helpers/cookies.js';\nimport buildURL from './../helpers/buildURL.js';\nimport buildFullPath from '../core/buildFullPath.js';\nimport isURLSameOrigin from './../helpers/isURLSameOrigin.js';\nimport transitionalDefaults from '../defaults/transitional.js';\nimport AxiosError from '../core/AxiosError.js';\nimport CanceledError from '../cancel/CanceledError.js';\nimport parseProtocol from '../helpers/parseProtocol.js';\nimport platform from '../platform/index.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\nimport speedometer from '../helpers/speedometer.js';\n\nfunction progressEventReducer(listener, isDownloadStream) {\n let bytesNotified = 0;\n const _speedometer = speedometer(50, 250);\n\n return e => {\n const loaded = e.loaded;\n const total = e.lengthComputable ? e.total : undefined;\n const progressBytes = loaded - bytesNotified;\n const rate = _speedometer(progressBytes);\n const inRange = loaded <= total;\n\n bytesNotified = loaded;\n\n const data = {\n loaded,\n total,\n progress: total ? (loaded / total) : undefined,\n bytes: progressBytes,\n rate: rate ? rate : undefined,\n estimated: rate && total && inRange ? (total - loaded) / rate : undefined,\n event: e\n };\n\n data[isDownloadStream ? 'download' : 'upload'] = true;\n\n listener(data);\n };\n}\n\nconst isXHRAdapterSupported = typeof XMLHttpRequest !== 'undefined';\n\nexport default isXHRAdapterSupported && function (config) {\n return new Promise(function dispatchXhrRequest(resolve, reject) {\n let requestData = config.data;\n const requestHeaders = AxiosHeaders.from(config.headers).normalize();\n const responseType = config.responseType;\n let onCanceled;\n function done() {\n if (config.cancelToken) {\n config.cancelToken.unsubscribe(onCanceled);\n }\n\n if (config.signal) {\n config.signal.removeEventListener('abort', onCanceled);\n }\n }\n\n if (utils.isFormData(requestData)) {\n if (platform.isStandardBrowserEnv || platform.isStandardBrowserWebWorkerEnv) {\n requestHeaders.setContentType(false); // Let the browser set it\n } else {\n requestHeaders.setContentType('multipart/form-data;', false); // mobile/desktop app frameworks\n }\n }\n\n let request = new XMLHttpRequest();\n\n // HTTP basic authentication\n if (config.auth) {\n const username = config.auth.username || '';\n const password = config.auth.password ? unescape(encodeURIComponent(config.auth.password)) : '';\n requestHeaders.set('Authorization', 'Basic ' + btoa(username + ':' + password));\n }\n\n const fullPath = buildFullPath(config.baseURL, config.url);\n\n request.open(config.method.toUpperCase(), buildURL(fullPath, config.params, config.paramsSerializer), true);\n\n // Set the request timeout in MS\n request.timeout = config.timeout;\n\n function onloadend() {\n if (!request) {\n return;\n }\n // Prepare the response\n const responseHeaders = AxiosHeaders.from(\n 'getAllResponseHeaders' in request && request.getAllResponseHeaders()\n );\n const responseData = !responseType || responseType === 'text' || responseType === 'json' ?\n request.responseText : request.response;\n const response = {\n data: responseData,\n status: request.status,\n statusText: request.statusText,\n headers: responseHeaders,\n config,\n request\n };\n\n settle(function _resolve(value) {\n resolve(value);\n done();\n }, function _reject(err) {\n reject(err);\n done();\n }, response);\n\n // Clean up request\n request = null;\n }\n\n if ('onloadend' in request) {\n // Use onloadend if available\n request.onloadend = onloadend;\n } else {\n // Listen for ready state to emulate onloadend\n request.onreadystatechange = function handleLoad() {\n if (!request || request.readyState !== 4) {\n return;\n }\n\n // The request errored out and we didn't get a response, this will be\n // handled by onerror instead\n // With one exception: request that using file: protocol, most browsers\n // will return status as 0 even though it's a successful request\n if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf('file:') === 0)) {\n return;\n }\n // readystate handler is calling before onerror or ontimeout handlers,\n // so we should call onloadend on the next 'tick'\n setTimeout(onloadend);\n };\n }\n\n // Handle browser request cancellation (as opposed to a manual cancellation)\n request.onabort = function handleAbort() {\n if (!request) {\n return;\n }\n\n reject(new AxiosError('Request aborted', AxiosError.ECONNABORTED, config, request));\n\n // Clean up request\n request = null;\n };\n\n // Handle low level network errors\n request.onerror = function handleError() {\n // Real errors are hidden from us by the browser\n // onerror should only fire if it's a network error\n reject(new AxiosError('Network Error', AxiosError.ERR_NETWORK, config, request));\n\n // Clean up request\n request = null;\n };\n\n // Handle timeout\n request.ontimeout = function handleTimeout() {\n let timeoutErrorMessage = config.timeout ? 'timeout of ' + config.timeout + 'ms exceeded' : 'timeout exceeded';\n const transitional = config.transitional || transitionalDefaults;\n if (config.timeoutErrorMessage) {\n timeoutErrorMessage = config.timeoutErrorMessage;\n }\n reject(new AxiosError(\n timeoutErrorMessage,\n transitional.clarifyTimeoutError ? AxiosError.ETIMEDOUT : AxiosError.ECONNABORTED,\n config,\n request));\n\n // Clean up request\n request = null;\n };\n\n // Add xsrf header\n // This is only done if running in a standard browser environment.\n // Specifically not if we're in a web worker, or react-native.\n if (platform.isStandardBrowserEnv) {\n // Add xsrf header\n const xsrfValue = (config.withCredentials || isURLSameOrigin(fullPath))\n && config.xsrfCookieName && cookies.read(config.xsrfCookieName);\n\n if (xsrfValue) {\n requestHeaders.set(config.xsrfHeaderName, xsrfValue);\n }\n }\n\n // Remove Content-Type if data is undefined\n requestData === undefined && requestHeaders.setContentType(null);\n\n // Add headers to the request\n if ('setRequestHeader' in request) {\n utils.forEach(requestHeaders.toJSON(), function setRequestHeader(val, key) {\n request.setRequestHeader(key, val);\n });\n }\n\n // Add withCredentials to request if needed\n if (!utils.isUndefined(config.withCredentials)) {\n request.withCredentials = !!config.withCredentials;\n }\n\n // Add responseType to request if needed\n if (responseType && responseType !== 'json') {\n request.responseType = config.responseType;\n }\n\n // Handle progress if needed\n if (typeof config.onDownloadProgress === 'function') {\n request.addEventListener('progress', progressEventReducer(config.onDownloadProgress, true));\n }\n\n // Not all browsers support upload events\n if (typeof config.onUploadProgress === 'function' && request.upload) {\n request.upload.addEventListener('progress', progressEventReducer(config.onUploadProgress));\n }\n\n if (config.cancelToken || config.signal) {\n // Handle cancellation\n // eslint-disable-next-line func-names\n onCanceled = cancel => {\n if (!request) {\n return;\n }\n reject(!cancel || cancel.type ? new CanceledError(null, config, request) : cancel);\n request.abort();\n request = null;\n };\n\n config.cancelToken && config.cancelToken.subscribe(onCanceled);\n if (config.signal) {\n config.signal.aborted ? onCanceled() : config.signal.addEventListener('abort', onCanceled);\n }\n }\n\n const protocol = parseProtocol(fullPath);\n\n if (protocol && platform.protocols.indexOf(protocol) === -1) {\n reject(new AxiosError('Unsupported protocol ' + protocol + ':', AxiosError.ERR_BAD_REQUEST, config));\n return;\n }\n\n\n // Send the request\n request.send(requestData || null);\n });\n}\n","import utils from '../utils.js';\nimport httpAdapter from './http.js';\nimport xhrAdapter from './xhr.js';\nimport AxiosError from \"../core/AxiosError.js\";\n\nconst knownAdapters = {\n http: httpAdapter,\n xhr: xhrAdapter\n}\n\nutils.forEach(knownAdapters, (fn, value) => {\n if(fn) {\n try {\n Object.defineProperty(fn, 'name', {value});\n } catch (e) {\n // eslint-disable-next-line no-empty\n }\n Object.defineProperty(fn, 'adapterName', {value});\n }\n});\n\nexport default {\n getAdapter: (adapters) => {\n adapters = utils.isArray(adapters) ? adapters : [adapters];\n\n const {length} = adapters;\n let nameOrAdapter;\n let adapter;\n\n for (let i = 0; i < length; i++) {\n nameOrAdapter = adapters[i];\n if((adapter = utils.isString(nameOrAdapter) ? knownAdapters[nameOrAdapter.toLowerCase()] : nameOrAdapter)) {\n break;\n }\n }\n\n if (!adapter) {\n if (adapter === false) {\n throw new AxiosError(\n `Adapter ${nameOrAdapter} is not supported by the environment`,\n 'ERR_NOT_SUPPORT'\n );\n }\n\n throw new Error(\n utils.hasOwnProp(knownAdapters, nameOrAdapter) ?\n `Adapter '${nameOrAdapter}' is not available in the build` :\n `Unknown adapter '${nameOrAdapter}'`\n );\n }\n\n if (!utils.isFunction(adapter)) {\n throw new TypeError('adapter is not a function');\n }\n\n return adapter;\n },\n adapters: knownAdapters\n}\n","// eslint-disable-next-line strict\nexport default null;\n","'use strict';\n\nimport AxiosError from './AxiosError.js';\n\n/**\n * Resolve or reject a Promise based on response status.\n *\n * @param {Function} resolve A function that resolves the promise.\n * @param {Function} reject A function that rejects the promise.\n * @param {object} response The response.\n *\n * @returns {object} The response.\n */\nexport default function settle(resolve, reject, response) {\n const validateStatus = response.config.validateStatus;\n if (!response.status || !validateStatus || validateStatus(response.status)) {\n resolve(response);\n } else {\n reject(new AxiosError(\n 'Request failed with status code ' + response.status,\n [AxiosError.ERR_BAD_REQUEST, AxiosError.ERR_BAD_RESPONSE][Math.floor(response.status / 100) - 4],\n response.config,\n response.request,\n response\n ));\n }\n}\n","'use strict';\n\nexport default function parseProtocol(url) {\n const match = /^([-+\\w]{1,25})(:?\\/\\/|:)/.exec(url);\n return match && match[1] || '';\n}\n","'use strict';\n\nimport transformData from './transformData.js';\nimport isCancel from '../cancel/isCancel.js';\nimport defaults from '../defaults/index.js';\nimport CanceledError from '../cancel/CanceledError.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\nimport adapters from \"../adapters/adapters.js\";\n\n/**\n * Throws a `CanceledError` if cancellation has been requested.\n *\n * @param {Object} config The config that is to be used for the request\n *\n * @returns {void}\n */\nfunction throwIfCancellationRequested(config) {\n if (config.cancelToken) {\n config.cancelToken.throwIfRequested();\n }\n\n if (config.signal && config.signal.aborted) {\n throw new CanceledError(null, config);\n }\n}\n\n/**\n * Dispatch a request to the server using the configured adapter.\n *\n * @param {object} config The config that is to be used for the request\n *\n * @returns {Promise} The Promise to be fulfilled\n */\nexport default function dispatchRequest(config) {\n throwIfCancellationRequested(config);\n\n config.headers = AxiosHeaders.from(config.headers);\n\n // Transform request data\n config.data = transformData.call(\n config,\n config.transformRequest\n );\n\n if (['post', 'put', 'patch'].indexOf(config.method) !== -1) {\n config.headers.setContentType('application/x-www-form-urlencoded', false);\n }\n\n const adapter = adapters.getAdapter(config.adapter || defaults.adapter);\n\n return adapter(config).then(function onAdapterResolution(response) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n response.data = transformData.call(\n config,\n config.transformResponse,\n response\n );\n\n response.headers = AxiosHeaders.from(response.headers);\n\n return response;\n }, function onAdapterRejection(reason) {\n if (!isCancel(reason)) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n if (reason && reason.response) {\n reason.response.data = transformData.call(\n config,\n config.transformResponse,\n reason.response\n );\n reason.response.headers = AxiosHeaders.from(reason.response.headers);\n }\n }\n\n return Promise.reject(reason);\n });\n}\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosHeaders from \"./AxiosHeaders.js\";\n\nconst headersToObject = (thing) => thing instanceof AxiosHeaders ? thing.toJSON() : thing;\n\n/**\n * Config-specific merge-function which creates a new config-object\n * by merging two configuration objects together.\n *\n * @param {Object} config1\n * @param {Object} config2\n *\n * @returns {Object} New object resulting from merging config2 to config1\n */\nexport default function mergeConfig(config1, config2) {\n // eslint-disable-next-line no-param-reassign\n config2 = config2 || {};\n const config = {};\n\n function getMergedValue(target, source, caseless) {\n if (utils.isPlainObject(target) && utils.isPlainObject(source)) {\n return utils.merge.call({caseless}, target, source);\n } else if (utils.isPlainObject(source)) {\n return utils.merge({}, source);\n } else if (utils.isArray(source)) {\n return source.slice();\n }\n return source;\n }\n\n // eslint-disable-next-line consistent-return\n function mergeDeepProperties(a, b, caseless) {\n if (!utils.isUndefined(b)) {\n return getMergedValue(a, b, caseless);\n } else if (!utils.isUndefined(a)) {\n return getMergedValue(undefined, a, caseless);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function valueFromConfig2(a, b) {\n if (!utils.isUndefined(b)) {\n return getMergedValue(undefined, b);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function defaultToConfig2(a, b) {\n if (!utils.isUndefined(b)) {\n return getMergedValue(undefined, b);\n } else if (!utils.isUndefined(a)) {\n return getMergedValue(undefined, a);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function mergeDirectKeys(a, b, prop) {\n if (prop in config2) {\n return getMergedValue(a, b);\n } else if (prop in config1) {\n return getMergedValue(undefined, a);\n }\n }\n\n const mergeMap = {\n url: valueFromConfig2,\n method: valueFromConfig2,\n data: valueFromConfig2,\n baseURL: defaultToConfig2,\n transformRequest: defaultToConfig2,\n transformResponse: defaultToConfig2,\n paramsSerializer: defaultToConfig2,\n timeout: defaultToConfig2,\n timeoutMessage: defaultToConfig2,\n withCredentials: defaultToConfig2,\n adapter: defaultToConfig2,\n responseType: defaultToConfig2,\n xsrfCookieName: defaultToConfig2,\n xsrfHeaderName: defaultToConfig2,\n onUploadProgress: defaultToConfig2,\n onDownloadProgress: defaultToConfig2,\n decompress: defaultToConfig2,\n maxContentLength: defaultToConfig2,\n maxBodyLength: defaultToConfig2,\n beforeRedirect: defaultToConfig2,\n transport: defaultToConfig2,\n httpAgent: defaultToConfig2,\n httpsAgent: defaultToConfig2,\n cancelToken: defaultToConfig2,\n socketPath: defaultToConfig2,\n responseEncoding: defaultToConfig2,\n validateStatus: mergeDirectKeys,\n headers: (a, b) => mergeDeepProperties(headersToObject(a), headersToObject(b), true)\n };\n\n utils.forEach(Object.keys(Object.assign({}, config1, config2)), function computeConfigValue(prop) {\n const merge = mergeMap[prop] || mergeDeepProperties;\n const configValue = merge(config1[prop], config2[prop], prop);\n (utils.isUndefined(configValue) && merge !== mergeDirectKeys) || (config[prop] = configValue);\n });\n\n return config;\n}\n","export const VERSION = \"1.4.0\";","'use strict';\n\nimport {VERSION} from '../env/data.js';\nimport AxiosError from '../core/AxiosError.js';\n\nconst validators = {};\n\n// eslint-disable-next-line func-names\n['object', 'boolean', 'number', 'function', 'string', 'symbol'].forEach((type, i) => {\n validators[type] = function validator(thing) {\n return typeof thing === type || 'a' + (i < 1 ? 'n ' : ' ') + type;\n };\n});\n\nconst deprecatedWarnings = {};\n\n/**\n * Transitional option validator\n *\n * @param {function|boolean?} validator - set to false if the transitional option has been removed\n * @param {string?} version - deprecated version / removed since version\n * @param {string?} message - some message with additional info\n *\n * @returns {function}\n */\nvalidators.transitional = function transitional(validator, version, message) {\n function formatMessage(opt, desc) {\n return '[Axios v' + VERSION + '] Transitional option \\'' + opt + '\\'' + desc + (message ? '. ' + message : '');\n }\n\n // eslint-disable-next-line func-names\n return (value, opt, opts) => {\n if (validator === false) {\n throw new AxiosError(\n formatMessage(opt, ' has been removed' + (version ? ' in ' + version : '')),\n AxiosError.ERR_DEPRECATED\n );\n }\n\n if (version && !deprecatedWarnings[opt]) {\n deprecatedWarnings[opt] = true;\n // eslint-disable-next-line no-console\n console.warn(\n formatMessage(\n opt,\n ' has been deprecated since v' + version + ' and will be removed in the near future'\n )\n );\n }\n\n return validator ? validator(value, opt, opts) : true;\n };\n};\n\n/**\n * Assert object's properties type\n *\n * @param {object} options\n * @param {object} schema\n * @param {boolean?} allowUnknown\n *\n * @returns {object}\n */\n\nfunction assertOptions(options, schema, allowUnknown) {\n if (typeof options !== 'object') {\n throw new AxiosError('options must be an object', AxiosError.ERR_BAD_OPTION_VALUE);\n }\n const keys = Object.keys(options);\n let i = keys.length;\n while (i-- > 0) {\n const opt = keys[i];\n const validator = schema[opt];\n if (validator) {\n const value = options[opt];\n const result = value === undefined || validator(value, opt, options);\n if (result !== true) {\n throw new AxiosError('option ' + opt + ' must be ' + result, AxiosError.ERR_BAD_OPTION_VALUE);\n }\n continue;\n }\n if (allowUnknown !== true) {\n throw new AxiosError('Unknown option ' + opt, AxiosError.ERR_BAD_OPTION);\n }\n }\n}\n\nexport default {\n assertOptions,\n validators\n};\n","'use strict';\n\nimport utils from './../utils.js';\nimport buildURL from '../helpers/buildURL.js';\nimport InterceptorManager from './InterceptorManager.js';\nimport dispatchRequest from './dispatchRequest.js';\nimport mergeConfig from './mergeConfig.js';\nimport buildFullPath from './buildFullPath.js';\nimport validator from '../helpers/validator.js';\nimport AxiosHeaders from './AxiosHeaders.js';\n\nconst validators = validator.validators;\n\n/**\n * Create a new instance of Axios\n *\n * @param {Object} instanceConfig The default config for the instance\n *\n * @return {Axios} A new instance of Axios\n */\nclass Axios {\n constructor(instanceConfig) {\n this.defaults = instanceConfig;\n this.interceptors = {\n request: new InterceptorManager(),\n response: new InterceptorManager()\n };\n }\n\n /**\n * Dispatch a request\n *\n * @param {String|Object} configOrUrl The config specific for this request (merged with this.defaults)\n * @param {?Object} config\n *\n * @returns {Promise} The Promise to be fulfilled\n */\n request(configOrUrl, config) {\n /*eslint no-param-reassign:0*/\n // Allow for axios('example/url'[, config]) a la fetch API\n if (typeof configOrUrl === 'string') {\n config = config || {};\n config.url = configOrUrl;\n } else {\n config = configOrUrl || {};\n }\n\n config = mergeConfig(this.defaults, config);\n\n const {transitional, paramsSerializer, headers} = config;\n\n if (transitional !== undefined) {\n validator.assertOptions(transitional, {\n silentJSONParsing: validators.transitional(validators.boolean),\n forcedJSONParsing: validators.transitional(validators.boolean),\n clarifyTimeoutError: validators.transitional(validators.boolean)\n }, false);\n }\n\n if (paramsSerializer != null) {\n if (utils.isFunction(paramsSerializer)) {\n config.paramsSerializer = {\n serialize: paramsSerializer\n }\n } else {\n validator.assertOptions(paramsSerializer, {\n encode: validators.function,\n serialize: validators.function\n }, true);\n }\n }\n\n // Set config.method\n config.method = (config.method || this.defaults.method || 'get').toLowerCase();\n\n let contextHeaders;\n\n // Flatten headers\n contextHeaders = headers && utils.merge(\n headers.common,\n headers[config.method]\n );\n\n contextHeaders && utils.forEach(\n ['delete', 'get', 'head', 'post', 'put', 'patch', 'common'],\n (method) => {\n delete headers[method];\n }\n );\n\n config.headers = AxiosHeaders.concat(contextHeaders, headers);\n\n // filter out skipped interceptors\n const requestInterceptorChain = [];\n let synchronousRequestInterceptors = true;\n this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {\n if (typeof interceptor.runWhen === 'function' && interceptor.runWhen(config) === false) {\n return;\n }\n\n synchronousRequestInterceptors = synchronousRequestInterceptors && interceptor.synchronous;\n\n requestInterceptorChain.unshift(interceptor.fulfilled, interceptor.rejected);\n });\n\n const responseInterceptorChain = [];\n this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) {\n responseInterceptorChain.push(interceptor.fulfilled, interceptor.rejected);\n });\n\n let promise;\n let i = 0;\n let len;\n\n if (!synchronousRequestInterceptors) {\n const chain = [dispatchRequest.bind(this), undefined];\n chain.unshift.apply(chain, requestInterceptorChain);\n chain.push.apply(chain, responseInterceptorChain);\n len = chain.length;\n\n promise = Promise.resolve(config);\n\n while (i < len) {\n promise = promise.then(chain[i++], chain[i++]);\n }\n\n return promise;\n }\n\n len = requestInterceptorChain.length;\n\n let newConfig = config;\n\n i = 0;\n\n while (i < len) {\n const onFulfilled = requestInterceptorChain[i++];\n const onRejected = requestInterceptorChain[i++];\n try {\n newConfig = onFulfilled(newConfig);\n } catch (error) {\n onRejected.call(this, error);\n break;\n }\n }\n\n try {\n promise = dispatchRequest.call(this, newConfig);\n } catch (error) {\n return Promise.reject(error);\n }\n\n i = 0;\n len = responseInterceptorChain.length;\n\n while (i < len) {\n promise = promise.then(responseInterceptorChain[i++], responseInterceptorChain[i++]);\n }\n\n return promise;\n }\n\n getUri(config) {\n config = mergeConfig(this.defaults, config);\n const fullPath = buildFullPath(config.baseURL, config.url);\n return buildURL(fullPath, config.params, config.paramsSerializer);\n }\n}\n\n// Provide aliases for supported request methods\nutils.forEach(['delete', 'get', 'head', 'options'], function forEachMethodNoData(method) {\n /*eslint func-names:0*/\n Axios.prototype[method] = function(url, config) {\n return this.request(mergeConfig(config || {}, {\n method,\n url,\n data: (config || {}).data\n }));\n };\n});\n\nutils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n /*eslint func-names:0*/\n\n function generateHTTPMethod(isForm) {\n return function httpMethod(url, data, config) {\n return this.request(mergeConfig(config || {}, {\n method,\n headers: isForm ? {\n 'Content-Type': 'multipart/form-data'\n } : {},\n url,\n data\n }));\n };\n }\n\n Axios.prototype[method] = generateHTTPMethod();\n\n Axios.prototype[method + 'Form'] = generateHTTPMethod(true);\n});\n\nexport default Axios;\n","'use strict';\n\nimport CanceledError from './CanceledError.js';\n\n/**\n * A `CancelToken` is an object that can be used to request cancellation of an operation.\n *\n * @param {Function} executor The executor function.\n *\n * @returns {CancelToken}\n */\nclass CancelToken {\n constructor(executor) {\n if (typeof executor !== 'function') {\n throw new TypeError('executor must be a function.');\n }\n\n let resolvePromise;\n\n this.promise = new Promise(function promiseExecutor(resolve) {\n resolvePromise = resolve;\n });\n\n const token = this;\n\n // eslint-disable-next-line func-names\n this.promise.then(cancel => {\n if (!token._listeners) return;\n\n let i = token._listeners.length;\n\n while (i-- > 0) {\n token._listeners[i](cancel);\n }\n token._listeners = null;\n });\n\n // eslint-disable-next-line func-names\n this.promise.then = onfulfilled => {\n let _resolve;\n // eslint-disable-next-line func-names\n const promise = new Promise(resolve => {\n token.subscribe(resolve);\n _resolve = resolve;\n }).then(onfulfilled);\n\n promise.cancel = function reject() {\n token.unsubscribe(_resolve);\n };\n\n return promise;\n };\n\n executor(function cancel(message, config, request) {\n if (token.reason) {\n // Cancellation has already been requested\n return;\n }\n\n token.reason = new CanceledError(message, config, request);\n resolvePromise(token.reason);\n });\n }\n\n /**\n * Throws a `CanceledError` if cancellation has been requested.\n */\n throwIfRequested() {\n if (this.reason) {\n throw this.reason;\n }\n }\n\n /**\n * Subscribe to the cancel signal\n */\n\n subscribe(listener) {\n if (this.reason) {\n listener(this.reason);\n return;\n }\n\n if (this._listeners) {\n this._listeners.push(listener);\n } else {\n this._listeners = [listener];\n }\n }\n\n /**\n * Unsubscribe from the cancel signal\n */\n\n unsubscribe(listener) {\n if (!this._listeners) {\n return;\n }\n const index = this._listeners.indexOf(listener);\n if (index !== -1) {\n this._listeners.splice(index, 1);\n }\n }\n\n /**\n * Returns an object that contains a new `CancelToken` and a function that, when called,\n * cancels the `CancelToken`.\n */\n static source() {\n let cancel;\n const token = new CancelToken(function executor(c) {\n cancel = c;\n });\n return {\n token,\n cancel\n };\n }\n}\n\nexport default CancelToken;\n","const HttpStatusCode = {\n Continue: 100,\n SwitchingProtocols: 101,\n Processing: 102,\n EarlyHints: 103,\n Ok: 200,\n Created: 201,\n Accepted: 202,\n NonAuthoritativeInformation: 203,\n NoContent: 204,\n ResetContent: 205,\n PartialContent: 206,\n MultiStatus: 207,\n AlreadyReported: 208,\n ImUsed: 226,\n MultipleChoices: 300,\n MovedPermanently: 301,\n Found: 302,\n SeeOther: 303,\n NotModified: 304,\n UseProxy: 305,\n Unused: 306,\n TemporaryRedirect: 307,\n PermanentRedirect: 308,\n BadRequest: 400,\n Unauthorized: 401,\n PaymentRequired: 402,\n Forbidden: 403,\n NotFound: 404,\n MethodNotAllowed: 405,\n NotAcceptable: 406,\n ProxyAuthenticationRequired: 407,\n RequestTimeout: 408,\n Conflict: 409,\n Gone: 410,\n LengthRequired: 411,\n PreconditionFailed: 412,\n PayloadTooLarge: 413,\n UriTooLong: 414,\n UnsupportedMediaType: 415,\n RangeNotSatisfiable: 416,\n ExpectationFailed: 417,\n ImATeapot: 418,\n MisdirectedRequest: 421,\n UnprocessableEntity: 422,\n Locked: 423,\n FailedDependency: 424,\n TooEarly: 425,\n UpgradeRequired: 426,\n PreconditionRequired: 428,\n TooManyRequests: 429,\n RequestHeaderFieldsTooLarge: 431,\n UnavailableForLegalReasons: 451,\n InternalServerError: 500,\n NotImplemented: 501,\n BadGateway: 502,\n ServiceUnavailable: 503,\n GatewayTimeout: 504,\n HttpVersionNotSupported: 505,\n VariantAlsoNegotiates: 506,\n InsufficientStorage: 507,\n LoopDetected: 508,\n NotExtended: 510,\n NetworkAuthenticationRequired: 511,\n};\n\nObject.entries(HttpStatusCode).forEach(([key, value]) => {\n HttpStatusCode[value] = key;\n});\n\nexport default HttpStatusCode;\n","'use strict';\n\nimport utils from './utils.js';\nimport bind from './helpers/bind.js';\nimport Axios from './core/Axios.js';\nimport mergeConfig from './core/mergeConfig.js';\nimport defaults from './defaults/index.js';\nimport formDataToJSON from './helpers/formDataToJSON.js';\nimport CanceledError from './cancel/CanceledError.js';\nimport CancelToken from './cancel/CancelToken.js';\nimport isCancel from './cancel/isCancel.js';\nimport {VERSION} from './env/data.js';\nimport toFormData from './helpers/toFormData.js';\nimport AxiosError from './core/AxiosError.js';\nimport spread from './helpers/spread.js';\nimport isAxiosError from './helpers/isAxiosError.js';\nimport AxiosHeaders from \"./core/AxiosHeaders.js\";\nimport HttpStatusCode from './helpers/HttpStatusCode.js';\n\n/**\n * Create an instance of Axios\n *\n * @param {Object} defaultConfig The default config for the instance\n *\n * @returns {Axios} A new instance of Axios\n */\nfunction createInstance(defaultConfig) {\n const context = new Axios(defaultConfig);\n const instance = bind(Axios.prototype.request, context);\n\n // Copy axios.prototype to instance\n utils.extend(instance, Axios.prototype, context, {allOwnKeys: true});\n\n // Copy context to instance\n utils.extend(instance, context, null, {allOwnKeys: true});\n\n // Factory for creating new instances\n instance.create = function create(instanceConfig) {\n return createInstance(mergeConfig(defaultConfig, instanceConfig));\n };\n\n return instance;\n}\n\n// Create the default instance to be exported\nconst axios = createInstance(defaults);\n\n// Expose Axios class to allow class inheritance\naxios.Axios = Axios;\n\n// Expose Cancel & CancelToken\naxios.CanceledError = CanceledError;\naxios.CancelToken = CancelToken;\naxios.isCancel = isCancel;\naxios.VERSION = VERSION;\naxios.toFormData = toFormData;\n\n// Expose AxiosError class\naxios.AxiosError = AxiosError;\n\n// alias for CanceledError for backward compatibility\naxios.Cancel = axios.CanceledError;\n\n// Expose all/spread\naxios.all = function all(promises) {\n return Promise.all(promises);\n};\n\naxios.spread = spread;\n\n// Expose isAxiosError\naxios.isAxiosError = isAxiosError;\n\n// Expose mergeConfig\naxios.mergeConfig = mergeConfig;\n\naxios.AxiosHeaders = AxiosHeaders;\n\naxios.formToJSON = thing => formDataToJSON(utils.isHTMLForm(thing) ? new FormData(thing) : thing);\n\naxios.HttpStatusCode = HttpStatusCode;\n\naxios.default = axios;\n\n// this module should only have a default export\nexport default axios\n","'use strict';\n\n/**\n * Syntactic sugar for invoking a function and expanding an array for arguments.\n *\n * Common use case would be to use `Function.prototype.apply`.\n *\n * ```js\n * function f(x, y, z) {}\n * var args = [1, 2, 3];\n * f.apply(null, args);\n * ```\n *\n * With `spread` this example can be re-written.\n *\n * ```js\n * spread(function(x, y, z) {})([1, 2, 3]);\n * ```\n *\n * @param {Function} callback\n *\n * @returns {Function}\n */\nexport default function spread(callback) {\n return function wrap(arr) {\n return callback.apply(null, arr);\n };\n}\n","'use strict';\n\nimport utils from './../utils.js';\n\n/**\n * Determines whether the payload is an error thrown by Axios\n *\n * @param {*} payload The value to test\n *\n * @returns {boolean} True if the payload is an error thrown by Axios, otherwise false\n */\nexport default function isAxiosError(payload) {\n return utils.isObject(payload) && (payload.isAxiosError === true);\n}\n","import * as React from \"react\";\nimport {useEffect, useState} from \"react\";\nimport axios from \"axios\";\n\ntype weatherDataType = null | {\n now: {\n temp: string,\n feelsLike: string,\n text: string,\n windSpeed: string,\n icon: string\n }\n}\n\nconst Weather = () => {\n const [weatherData, setWeatherData] = useState(null);\n\n useEffect(() => {\n const fetchData = async () => {\n const weatherData = await axios\n .get(`https://devapi.qweather.com/v7/weather/now?location=EF058&lang=en&key=${process.env.GATSBY_WEATHER_API_KEY}`);\n setWeatherData(weatherData.data);\n };\n fetchData().catch(console.error);\n }, []);\n return (\n !weatherData ? null :\n
\n
\n

\n Weather in Vancouver

\n
\n
\n \n
\n
\n {weatherData.now.temp}℃, feels like {weatherData.now.feelsLike}℃,
\n {weatherData.now.text}, with {weatherData.now.windSpeed} mph wind\n
\n
\n
\n\n
\n );\n};\n\nexport default Weather;","import {GatsbyImage} from \"gatsby-plugin-image\";\nimport React from \"react\";\nimport {graphql, useStaticQuery} from \"gatsby\";\n\nconst CopyRight = () => {\n const data = useStaticQuery(graphql`\n query {\n icon: file(absolutePath: { regex: \"/images/icon.png/\" }) {\n childImageSharp {\n gatsbyImageData(layout: FIXED, width: 25)\n }\n }\n }`);\n\n return (\n
\n © {new Date().getFullYear()}, Built with \n Gatsby  \n \n
\n )\n}\n\nexport default CopyRight;\n","import Weather from \"@src/components/Footer/Weather\";\nimport * as React from \"react\";\nimport CopyRight from \"@src/components/Footer/CopyRight\";\n\nconst Footer = () => {\n return (\n
\n \n \n
\n );\n};\n\nexport default Footer;","import React from \"react\";\nimport { graphql, useStaticQuery } from 'gatsby'\n\nconst Seo = ({ title }: {title: string}) => {\n const data = useStaticQuery(graphql`\n query {\n site {\n siteMetadata {\n title\n description\n social {\n twitter\n }\n }\n }\n }\n `)\n\n const metaData = data.site.siteMetadata\n return (\n <>\n {`${title} | ${metaData.title}`}\n \n \n \n \n \n )\n}\n\nexport default Seo","import React, {useState} from \"react\";\nimport {isBrowser} from \"@src/lib/checkUtil\";\n\nexport const ThemeContext = React.createContext(!isBrowser ? \"\" : document.body.className);\nexport const ThemeUpdateContext = React.createContext((theme: string) => {\n});\n\nconst ThemeContextWrapper = ({children}: { children: React.ReactNode }) => {\n const [theme, setTheme] = useState(!isBrowser ? \"\" : document.body.className);\n\n const updateTheme = (currentTheme: string) => {\n setTheme(currentTheme === \"light\" ? \"light\" : \"dark\");\n };\n\n return \n \n {children}\n \n ;\n};\n\nexport default ThemeContextWrapper;","import{useRef as e,useEffect as n}from\"react\";export default function(t,r,i,o){void 0===i&&(i=global),void 0===o&&(o={});var c=e(),u=o.capture,a=o.passive,v=o.once;n(function(){c.current=r},[r]),n(function(){if(i&&i.addEventListener){var e=function(e){return c.current(e)},n={capture:u,passive:a,once:v};return i.addEventListener(t,e,n),function(){i.removeEventListener(t,e,n)}}},[t,i,u,a,v])}\n","import{useRef as e,useState as n,useEffect as t,useCallback as o}from\"react\";import r from\"@use-it/event-listener\";var l={},a=function(e,n,t){return l[e]||(l[e]={callbacks:[],value:t}),l[e].callbacks.push(n),{deregister:function(){var t=l[e].callbacks,o=t.indexOf(n);o>-1&&t.splice(o,1)},emit:function(t){l[e].value!==t&&(l[e].value=t,l[e].callbacks.forEach(function(e){n!==e&&e(t)}))}}};export default function(l,u){if(void 0===u&&(u=\"undefined\"!=typeof global&&global.localStorage?global.localStorage:\"undefined\"!=typeof globalThis&&globalThis.localStorage?globalThis.localStorage:\"undefined\"!=typeof window&&window.localStorage?window.localStorage:\"undefined\"!=typeof localStorage?localStorage:null),u){var i=function(e){return{get:function(n,t){var o=e.getItem(n);return null==o?\"function\"==typeof t?t():t:JSON.parse(o)},set:function(n,t){e.setItem(n,JSON.stringify(t))}}}(u);return function(u){return function(l,u,i){var c=i.get,f=i.set,g=e(null),s=n(function(){return c(u,l)}),d=s[0],p=s[1];r(\"storage\",function(e){if(e.key===u){var n=JSON.parse(e.newValue);d!==n&&p(n)}}),t(function(){return g.current=a(u,p,l),function(){g.current.deregister()}},[l,u]);var v=o(function(e){var n=\"function\"==typeof e?e(d):e;f(u,n),p(n),g.current.emit(e)},[d,f,u]);return[d,v]}(u,l,i)}}return n}\n","import e from\"@use-it/event-listener\";import{useState as t,useEffect as r,useCallback as n,useMemo as a}from\"react\";import o from\"use-persisted-state\";var i=function(){},u={classList:{add:i,remove:i}},d=function(e,r,n){void 0===n&&(n=global);var a=e?o(e,r):t,i=n.matchMedia?n.matchMedia(\"(prefers-color-scheme: dark)\"):{},d={addEventListener:function(e,t){return i.addListener&&i.addListener(t)},removeEventListener:function(e,t){return i.removeListener&&i.removeListener(t)}},s=\"(prefers-color-scheme: dark)\"===i.media,c=n.document&&n.document.body||u;return{usePersistedDarkModeState:a,getDefaultOnChange:function(e,t,r){return void 0===e&&(e=c),void 0===t&&(t=\"dark-mode\"),void 0===r&&(r=\"light-mode\"),function(n){e.classList.add(n?t:r),e.classList.remove(n?r:t)}},mediaQueryEventTarget:d,getInitialValue:function(e){return s?i.matches:e}}};export default function(t,o){void 0===t&&(t=!1),void 0===o&&(o={});var i=o.element,u=o.classNameDark,s=o.classNameLight,c=o.onChange,m=o.storageKey;void 0===m&&(m=\"darkMode\");var l=o.storageProvider,f=o.global,v=a(function(){return d(m,l,f)},[m,l,f]),g=v.getDefaultOnChange,h=v.mediaQueryEventTarget,L=(0,v.usePersistedDarkModeState)((0,v.getInitialValue)(t)),k=L[0],p=L[1],b=a(function(){return c||g(i,u,s)},[c,i,u,s,g]);return r(function(){b(k)},[b,k]),e(\"change\",function(e){return p(e.matches)},h),{value:k,enable:n(function(){return p(!0)},[p]),disable:n(function(){return p(!1)},[p]),toggle:n(function(){return p(function(e){return!e})},[p])}}\n","import React, {useContext, useEffect, useState} from \"react\";\nimport {ThemeUpdateContext} from \"@src/components/ThemeContextWrapper\";\nimport {isBrowser} from \"@src/lib/checkUtil\";\nimport useDarkMode from '@fisch0920/use-dark-mode';\n\n\ninterface Props {\n theme: string;\n toggleTheme: (theme: string) => void;\n}\n\nconst ThemeBtn = () => {\n const updateTheme = useContext(ThemeUpdateContext);\n const [mounted, setMounted] = useState(false);\n const darkConfig = {\n classNameDark: 'dark',\n classNameLight: 'light',\n storageKey: 'darkMode',\n }\n const darkMode = useDarkMode(!isBrowser ?\n true : localStorage.getItem(\"darkMode\") === \"dark\",darkConfig);\n\n useEffect(() => {\n setMounted(true);\n }, []);\n\n if (!mounted) return null;\n return (\n {\n const newTheme = darkMode.value ? \"light\" : \"dark\";\n darkMode.toggle();\n updateTheme(newTheme); // update global theme status, use context\n }\n\n }\n aria-label=\"darkMode\"\n >\n {darkMode.value ? (\n \n \n \n ) : (\n \n \n \n )\n }\n \n );\n};\n\nexport default ThemeBtn;","import {Link} from \"gatsby\";\nimport ThemeBtn from \"./ThemeBtn\";\nimport React from \"react\";\n\nconst NavBar = () => {\n return (\n
\n
\n
\n \n

\n PPX Blog\n

\n \n \n
\n
\n
\n );\n};\n\nexport default NavBar;","import NavBar from \"./NavBar\";\nimport React from \"react\";\nimport ThemeContextWrapper from \"@src/components/ThemeContextWrapper\";\n\nconst Layout = ({pageTitle, children}: { pageTitle: string, children: React.ReactNode }) => {\n return (\n \n
\n \n
{children}
\n
\n
\n );\n};\n\nexport default Layout;","export const isBrowser = typeof window !== \"undefined\";\n\n"],"names":["UPPERCASE","LOWERCASE","LEADING_CAPITAL","IDENTIFIER","SEPARATORS","LEADING_SEPARATORS","RegExp","source","SEPARATORS_AND_IDENTIFIER","NUMBERS_AND_IDENTIFIER","camelCase","input","options","Array","isArray","TypeError","pascalCase","preserveConsecutiveUppercase","map","x","trim","filter","length","join","toLowerCase","locale","string","toLocaleLowerCase","toUpperCase","toLocaleUpperCase","isLastCharLower","isLastCharUpper","isLastLastCharUpper","i","character","test","slice","preserveCamelCase","replace","lastIndex","m1","charAt","_","identifier","m","postProcess","module","exports","hasNativeLazyLoadSupport","HTMLImageElement","prototype","srcSet","width","height","layout","wrapperStyle","className","style","getMainProps","isLoading","isLoaded","images","loading","shouldLoad","_extends","opacity","getPlaceholderProps","placeholder","backgroundColor","objectFit","objectPosition","position","top","left","bottom","right","result","transition","Sizer","React","createElement","paddingTop","maxWidth","display","alt","role","src","LayoutWrapper","_ref","children","props","_objectWithoutPropertiesLoose","Fragment","Image","decoding","Picture","_ref2","fallback","sources","sizes","media","type","key","fallbackImage","propTypes","PropTypes","isRequired","displayName","Placeholder","_Picture$propTypes","propName","componentName","Error","MainImage","removeNewLines","str","altValidator","rest","image","_excluded","Set","renderImageToStringPromise","renderImage","GatsbyImageHydrator","as","class","preactClass","onStartLoad","onLoad","onError","getWrapperProps","wStyle","wClass","wrapperProps","root","useRef","useMemo","JSON","stringify","sizer","useEffect","import","then","renderImageToString","swapPlaceholderImage","ssrImage","current","querySelector","complete","wasCached","setTimeout","removeAttribute","addEventListener","removeEventListener","onLoadListener","imageCache","add","cacheKey","has","animationFrame","cleanupCallback","innerHTML","requestAnimationFrame","cancelAnimationFrame","useLayoutEffect","ref","dangerouslySetInnerHTML","__html","suppressHydrationWarning","GatsbyImage","memo","_getStaticImage","StaticImage","__imageData","imageData","__error","console","warn","imgClassName","imgStyle","placeholderBackgroundColor","cleanedImages","checkDimensionProps","number","validLayouts","GatsbyImageBrowser","bind","fn","thisArg","apply","arguments","toString","Object","getPrototypeOf","kindOf","cache","create","thing","call","kindOfTest","typeOfTest","isUndefined","isArrayBuffer","isString","isFunction","isNumber","isObject","isPlainObject","val","Symbol","toStringTag","iterator","isDate","isFile","isBlob","isFileList","isURLSearchParams","forEach","obj","allOwnKeys","l","keys","getOwnPropertyNames","len","findKey","_key","_global","globalThis","self","window","global","isContextDefined","context","isTypedArray","TypedArray","Uint8Array","isHTMLForm","hasOwnProperty","prop","isRegExp","reduceDescriptors","reducer","descriptors","getOwnPropertyDescriptors","reducedDescriptors","descriptor","name","defineProperties","ALPHA","DIGIT","ALPHABET","ALPHA_DIGIT","isAsyncFn","isBuffer","constructor","isFormData","kind","FormData","append","isArrayBufferView","ArrayBuffer","isView","buffer","isBoolean","isStream","pipe","merge","caseless","this","assignValue","targetKey","extend","a","b","stripBOM","content","charCodeAt","inherits","superConstructor","defineProperty","value","assign","toFlatObject","sourceObj","destObj","propFilter","merged","endsWith","searchString","String","undefined","indexOf","toArray","arr","forEachEntry","next","done","pair","matchAll","regExp","matches","exec","push","hasOwnProp","freezeMethods","enumerable","writable","set","toObjectSet","arrayOrString","delimiter","define","split","toCamelCase","p1","p2","noop","toFiniteNumber","defaultValue","Number","isFinite","generateString","size","alphabet","Math","random","isSpecCompliantForm","toJSONObject","stack","visit","target","reducedValue","isThenable","catch","AxiosError","message","code","config","request","response","captureStackTrace","utils","toJSON","description","fileName","lineNumber","columnNumber","status","from","error","customProps","axiosError","cause","isVisitable","removeBrackets","renderKey","path","dots","concat","token","predicates","formData","metaTokens","indexes","option","visitor","defaultVisitor","useBlob","Blob","convertValue","toISOString","Buffer","some","isFlatArray","el","index","exposedHelpers","build","pop","encode","charMap","encodeURIComponent","match","AxiosURLSearchParams","params","_pairs","encoder","_encode","buildURL","url","serializeFn","serialize","serializedParams","hashmarkIndex","handlers","use","fulfilled","rejected","synchronous","runWhen","eject","id","clear","h","silentJSONParsing","forcedJSONParsing","clarifyTimeoutError","isBrowser","classes","URLSearchParams","isStandardBrowserEnv","product","navigator","document","isStandardBrowserWebWorkerEnv","WorkerGlobalScope","importScripts","protocols","buildPath","isNumericKey","isLast","arrayToObject","entries","parsePropPath","DEFAULT_CONTENT_TYPE","defaults","transitional","adapter","transformRequest","data","headers","contentType","getContentType","hasJSONContentType","isObjectPayload","setContentType","helpers","isNode","toURLEncodedForm","formSerializer","_FormData","env","rawValue","parser","parse","e","stringifySafely","transformResponse","JSONRequested","responseType","strictJSONParsing","ERR_BAD_RESPONSE","timeout","xsrfCookieName","xsrfHeaderName","maxContentLength","maxBodyLength","validateStatus","common","method","ignoreDuplicateOf","$internals","normalizeHeader","header","normalizeValue","matchHeaderValue","isHeaderNameFilter","AxiosHeaders","valueOrRewrite","rewrite","setHeader","_value","_header","_rewrite","lHeader","setHeaders","rawHeaders","parsed","line","substring","parseHeaders","get","tokens","tokensRE","parseTokens","matcher","delete","deleted","deleteHeader","normalize","format","normalized","w","char","formatHeader","targets","asStrings","static","first","computed","accessors","defineAccessor","accessorName","methodName","arg1","arg2","arg3","configurable","buildAccessors","accessor","transformData","fns","isCancel","__CANCEL__","CanceledError","ERR_CANCELED","write","expires","domain","secure","cookie","Date","toGMTString","read","decodeURIComponent","remove","now","buildFullPath","baseURL","requestedURL","relativeURL","combineURLs","msie","userAgent","urlParsingNode","originURL","resolveURL","href","setAttribute","protocol","host","search","hash","hostname","port","pathname","location","requestURL","samplesCount","min","bytes","timestamps","firstSampleTS","head","tail","chunkLength","startedAt","bytesCount","passed","round","progressEventReducer","listener","isDownloadStream","bytesNotified","_speedometer","loaded","total","lengthComputable","progressBytes","rate","progress","estimated","event","knownAdapters","http","xhr","XMLHttpRequest","Promise","resolve","reject","requestData","requestHeaders","onCanceled","cancelToken","unsubscribe","signal","auth","username","password","unescape","btoa","fullPath","onloadend","responseHeaders","getAllResponseHeaders","ERR_BAD_REQUEST","floor","settle","err","responseText","statusText","open","paramsSerializer","onreadystatechange","readyState","responseURL","onabort","ECONNABORTED","onerror","ERR_NETWORK","ontimeout","timeoutErrorMessage","ETIMEDOUT","xsrfValue","withCredentials","isURLSameOrigin","cookies","setRequestHeader","onDownloadProgress","onUploadProgress","upload","cancel","abort","subscribe","aborted","parseProtocol","send","adapters","nameOrAdapter","throwIfCancellationRequested","throwIfRequested","dispatchRequest","reason","headersToObject","mergeConfig","config1","config2","getMergedValue","mergeDeepProperties","valueFromConfig2","defaultToConfig2","mergeDirectKeys","mergeMap","timeoutMessage","decompress","beforeRedirect","transport","httpAgent","httpsAgent","socketPath","responseEncoding","configValue","VERSION","validators","deprecatedWarnings","validator","version","formatMessage","opt","desc","opts","ERR_DEPRECATED","assertOptions","schema","allowUnknown","ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","Axios","instanceConfig","interceptors","configOrUrl","contextHeaders","boolean","function","requestInterceptorChain","synchronousRequestInterceptors","interceptor","unshift","responseInterceptorChain","promise","chain","newConfig","onFulfilled","onRejected","getUri","generateHTTPMethod","isForm","CancelToken","executor","resolvePromise","_listeners","onfulfilled","_resolve","splice","c","HttpStatusCode","Continue","SwitchingProtocols","Processing","EarlyHints","Ok","Created","Accepted","NonAuthoritativeInformation","NoContent","ResetContent","PartialContent","MultiStatus","AlreadyReported","ImUsed","MultipleChoices","MovedPermanently","Found","SeeOther","NotModified","UseProxy","Unused","TemporaryRedirect","PermanentRedirect","BadRequest","Unauthorized","PaymentRequired","Forbidden","NotFound","MethodNotAllowed","NotAcceptable","ProxyAuthenticationRequired","RequestTimeout","Conflict","Gone","LengthRequired","PreconditionFailed","PayloadTooLarge","UriTooLong","UnsupportedMediaType","RangeNotSatisfiable","ExpectationFailed","ImATeapot","MisdirectedRequest","UnprocessableEntity","Locked","FailedDependency","TooEarly","UpgradeRequired","PreconditionRequired","TooManyRequests","RequestHeaderFieldsTooLarge","UnavailableForLegalReasons","InternalServerError","NotImplemented","BadGateway","ServiceUnavailable","GatewayTimeout","HttpVersionNotSupported","VariantAlsoNegotiates","InsufficientStorage","LoopDetected","NotExtended","NetworkAuthenticationRequired","axios","createInstance","defaultConfig","instance","toFormData","Cancel","all","promises","spread","callback","isAxiosError","payload","formToJSON","default","weatherData","setWeatherData","useState","async","process","GATSBY_WEATHER_API_KEY","fetchData","icon","temp","feelsLike","text","windSpeed","useStaticQuery","getFullYear","childImageSharp","gatsbyImageData","Weather","CopyRight","title","metaData","site","siteMetadata","social","twitter","ThemeContext","body","ThemeUpdateContext","theme","setTheme","Provider","currentTheme","t","r","o","g","u","capture","passive","v","once","n","callbacks","deregister","emit","localStorage","getItem","setItem","f","s","d","p","newValue","classList","matchMedia","addListener","removeListener","usePersistedDarkModeState","getDefaultOnChange","mediaQueryEventTarget","getInitialValue","updateTheme","useContext","mounted","setMounted","darkMode","element","classNameDark","classNameLight","onChange","storageKey","storageProvider","L","k","enable","disable","toggle","useDarkMode","onClick","newTheme","xmlns","fill","viewBox","strokeWidth","stroke","strokeLinecap","strokeLinejoin","Link","to","ThemeBtn","pageTitle","ThemeContextWrapper","NavBar"],"sourceRoot":""} \ No newline at end of file diff --git a/731-a30254404af694f3fe54.js b/731-a30254404af694f3fe54.js new file mode 100644 index 0000000..15ac583 --- /dev/null +++ b/731-a30254404af694f3fe54.js @@ -0,0 +1,3 @@ +/*! For license information please see 731-a30254404af694f3fe54.js.LICENSE.txt */ +"use strict";(self.webpackChunkppx_gatsby_blog=self.webpackChunkppx_gatsby_blog||[]).push([[731],{6731:function(e,t,n){n.r(t),n.d(t,{renderImageToString:function(){return p},swapPlaceholderImage:function(){return f}});var r=n(8032),o=n(7294),a=n(7762);n(3204);let l;const i=new WeakMap,u=navigator.connection||navigator.mozConnection||navigator.webkitConnection,s=["image","loading","isLoading","isLoaded","imgClassName","imgStyle","objectPosition","backgroundColor","objectFit"];function c(e,t){e.style.opacity="1",t&&(t.style.opacity="0")}function d(e,t,n,r,o,a){const l=e.querySelector("[data-main-image]"),i=e.querySelector("[data-placeholder-image]"),u=n.has(t);function s(e){this.removeEventListener("load",s);const t=e.currentTarget,n=new Image;n.src=t.currentSrc,n.decode?n.decode().then((()=>{c(this,i),null==o||o({wasCached:u})})).catch((e=>{c(this,i),null==a||a(e)})):(c(this,i),null==o||o({wasCached:u}))}return l.addEventListener("load",s),null==r||r({wasCached:u}),Array.from(l.parentElement.children).forEach((e=>{const t=e.getAttribute("data-src"),n=e.getAttribute("data-srcset");t&&(e.removeAttribute("data-src"),e.setAttribute("src",t)),n&&(e.removeAttribute("data-srcset"),e.setAttribute("srcset",n))})),n.add(t),l.complete&&s.call(l,{currentTarget:l}),()=>{l&&l.removeEventListener("load",s)}}function f(e,t,o,a,s,c,f){if(!(0,r.h)()){let r;const m=(g=()=>{r=d(e,t,o,s,c,f)},"IntersectionObserver"in window?(l||(l=new IntersectionObserver((e=>{e.forEach((e=>{var t;e.isIntersecting&&(null==(t=i.get(e.target))||t(),i.delete(e.target))}))}),{rootMargin:"4g"!==(null==u?void 0:u.effectiveType)||null!=u&&u.saveData?"2500px":"1250px"})),function(e){return i.set(e,g),l.observe(e),function(){l&&e&&(i.delete(e),l.unobserve(e))}}):function(){return g(),function(){}}),b=m(e);var p,h;return"objectFit"in document.documentElement.style||(e.dataset.objectFit=null!=(p=a.objectFit)?p:"cover",e.dataset.objectPosition=""+(null!=(h=a.objectPosition)?h:"50% 50%"),async function(e){"objectFitPolyfill"in window||await n.e(843).then(n.t.bind(n,4843,23)),window.objectFitPolyfill(e)}(e)),()=>{r&&r(),b()}}var g;return d(e,t,o,s,c,f)}function p(e){let{image:t,loading:n="lazy",isLoading:l,isLoaded:i,imgClassName:u,imgStyle:c={},objectPosition:d,backgroundColor:f,objectFit:p="cover"}=e,h=(0,r._)(e,s);const{width:g,height:m,layout:b,images:y,placeholder:v,backgroundColor:S}=t;return c=(0,r.a)({objectFit:p,objectPosition:d,backgroundColor:f},c),(0,a.uS)(o.createElement(r.L,{layout:b,width:g,height:m},o.createElement(r.P,(0,r.a)({},(0,r.g)(v,i,b,g,m,S,p,d))),o.createElement(r.M,(0,r.a)({},h,{width:g,height:m,className:u},(0,r.b)(l,i,y,n,c)))))}},7774:function(e,t,n){var r=n(7294);function o(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n