{"version":3,"file":"b2ce1e870ca4cd1891e547d1736670e5ff9da05d-fc5acc2aecddce1e5988.js","mappings":"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","sources":["webpack://gatsby-starter-default/./node_modules/camelcase/index.js","webpack://gatsby-starter-default/./node_modules/flexsearch/dist/flexsearch.min.js","webpack://gatsby-starter-default/./node_modules/core-js/internals/create-property.js","webpack://gatsby-starter-default/./node_modules/core-js/internals/get-iterator-method.js","webpack://gatsby-starter-default/./node_modules/core-js/internals/get-iterator.js","webpack://gatsby-starter-default/./node_modules/core-js/internals/is-array-iterator-method.js","webpack://gatsby-starter-default/./node_modules/core-js/internals/iterate.js","webpack://gatsby-starter-default/./node_modules/core-js/internals/iterator-close.js","webpack://gatsby-starter-default/./node_modules/core-js/internals/iterators.js","webpack://gatsby-starter-default/./node_modules/core-js/modules/es.object.from-entries.js","webpack://gatsby-starter-default/../src/image-utils.ts","webpack://gatsby-starter-default/../src/components/hooks.ts","webpack://gatsby-starter-default/../src/components/picture.tsx","webpack://gatsby-starter-default/../src/components/layout-wrapper.tsx","webpack://gatsby-starter-default/../src/components/placeholder.tsx","webpack://gatsby-starter-default/../src/components/main-image.tsx","webpack://gatsby-starter-default/../src/components/gatsby-image.browser.tsx","webpack://gatsby-starter-default/../src/components/gatsby-image.server.tsx","webpack://gatsby-starter-default/../src/components/static-image.server.tsx","webpack://gatsby-starter-default/../src/components/static-image.tsx","webpack://gatsby-starter-default/./src/components/common/Badge.js","webpack://gatsby-starter-default/./src/components/header/header.js","webpack://gatsby-starter-default/./src/components/footer/footer.js","webpack://gatsby-starter-default/./src/components/layout/layout.js","webpack://gatsby-starter-default/./node_modules/react-use-flexsearch/dist/index.esm.js","webpack://gatsby-starter-default/./src/components/common/Search.js","webpack://gatsby-starter-default/./src/components/menu/menu.js","webpack://gatsby-starter-default/./src/lib/helper.js","webpack://gatsby-starter-default/./src/images/SM_logo.svg","webpack://gatsby-starter-default/./node_modules/@babel/runtime/helpers/regeneratorRuntime.js","webpack://gatsby-starter-default/./node_modules/@babel/runtime/regenerator/index.js","webpack://gatsby-starter-default/./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"],"sourcesContent":["'use strict';\n\nvar preserveCamelCase = function preserveCamelCase(string) {\n var isLastCharLower = false;\n var isLastCharUpper = false;\n var isLastLastCharUpper = false;\n for (var i = 0; i < string.length; i++) {\n var character = string[i];\n if (isLastCharLower && /[a-zA-Z]/.test(character) && character.toUpperCase() === character) {\n string = string.slice(0, i) + '-' + string.slice(i);\n isLastCharLower = false;\n isLastLastCharUpper = isLastCharUpper;\n isLastCharUpper = true;\n i++;\n } else if (isLastCharUpper && isLastLastCharUpper && /[a-zA-Z]/.test(character) && character.toLowerCase() === character) {\n string = string.slice(0, i - 1) + '-' + string.slice(i - 1);\n isLastLastCharUpper = isLastCharUpper;\n isLastCharUpper = false;\n isLastCharLower = true;\n } else {\n isLastCharLower = character.toLowerCase() === character && character.toUpperCase() !== character;\n isLastLastCharUpper = isLastCharUpper;\n isLastCharUpper = character.toUpperCase() === character && character.toLowerCase() !== character;\n }\n }\n return string;\n};\nvar camelCase = function camelCase(input, options) {\n if (!(typeof input === 'string' || Array.isArray(input))) {\n throw new TypeError('Expected the input to be `string | string[]`');\n }\n options = Object.assign({\n pascalCase: false\n }, options);\n var postProcess = function postProcess(x) {\n return options.pascalCase ? x.charAt(0).toUpperCase() + x.slice(1) : x;\n };\n if (Array.isArray(input)) {\n input = input.map(function (x) {\n return x.trim();\n }).filter(function (x) {\n return x.length;\n }).join('-');\n } else {\n input = input.trim();\n }\n if (input.length === 0) {\n return '';\n }\n if (input.length === 1) {\n return options.pascalCase ? input.toUpperCase() : input.toLowerCase();\n }\n var hasUpperCase = input !== input.toLowerCase();\n if (hasUpperCase) {\n input = preserveCamelCase(input);\n }\n input = input.replace(/^[_.\\- ]+/, '').toLowerCase().replace(/[_.\\- ]+(\\w|$)/g, function (_, p1) {\n return p1.toUpperCase();\n }).replace(/\\d+(\\w|$)/g, function (m) {\n return m.toUpperCase();\n });\n return postProcess(input);\n};\nmodule.exports = camelCase;\n// TODO: Remove this for the next major release\nmodule.exports.default = camelCase;","/*\n FlexSearch v0.6.30\n Copyright 2019 Nextapps GmbH\n Author: Thomas Wilkerling\n Released under the Apache 2.0 Licence\n https://github.com/nextapps-de/flexsearch\n*/\n'use strict';\n\n(function (K, R, w) {\n var L;\n (L = w.define) && L.amd ? L([], function () {\n return R;\n }) : (L = w.modules) ? L[K.toLowerCase()] = R : \"object\" === typeof exports ? module.exports = R : w[K] = R;\n})(\"FlexSearch\", function ma(K) {\n function w(a, c) {\n var b = c ? c.id : a && a.id;\n this.id = b || 0 === b ? b : na++;\n this.init(a, c);\n fa(this, \"index\", function () {\n return this.a ? Object.keys(this.a.index[this.a.keys[0]].c) : Object.keys(this.c);\n });\n fa(this, \"length\", function () {\n return this.index.length;\n });\n }\n function L(a, c, b, d) {\n this.u !== this.g && (this.o = this.o.concat(b), this.u++, d && this.o.length >= d && (this.u = this.g), this.u === this.g && (this.cache && this.j.set(c, this.o), this.F && this.F(this.o)));\n return this;\n }\n function S(a) {\n var c = B();\n for (var b in a) {\n if (a.hasOwnProperty(b)) {\n var d = a[b];\n F(d) ? c[b] = d.slice(0) : G(d) ? c[b] = S(d) : c[b] = d;\n }\n }\n return c;\n }\n function W(a, c) {\n var b = a.length,\n d = O(c),\n e = [];\n for (var f = 0, h = 0; f < b; f++) {\n var g = a[f];\n if (d && c(g) || !d && !c[g]) e[h++] = g;\n }\n return e;\n }\n function P(a, c, b, d, e, f, h, g, k, l) {\n b = ha(b, h ? 0 : e, g, f, c, k, l);\n var p;\n g && (g = b.page, p = b.next, b = b.result);\n if (h) c = this.where(h, null, e, b);else {\n c = b;\n b = this.l;\n e = c.length;\n f = Array(e);\n for (h = 0; h < e; h++) {\n f[h] = b[c[h]];\n }\n c = f;\n }\n b = c;\n d && (O(d) || (M = d.split(\":\"), 1 < M.length ? d = oa : (M = M[0], d = pa)), b.sort(d));\n b = T(g, p, b);\n this.cache && this.j.set(a, b);\n return b;\n }\n function fa(a, c, b) {\n Object.defineProperty(a, c, {\n get: b\n });\n }\n function r(a) {\n return new RegExp(a, \"g\");\n }\n function Q(a, c) {\n for (var b = 0; b < c.length; b += 2) {\n a = a.replace(c[b], c[b + 1]);\n }\n return a;\n }\n function V(a, c, b, d, e, f, h, g) {\n if (c[b]) return c[b];\n e = e ? (g - (h || g / 1.5)) * f + (h || g / 1.5) * e : f;\n c[b] = e;\n e >= h && (a = a[g - (e + .5 >> 0)], a = a[b] || (a[b] = []), a[a.length] = d);\n return e;\n }\n function ba(a, c) {\n if (a) {\n var b = Object.keys(a);\n for (var d = 0, e = b.length; d < e; d++) {\n var f = b[d],\n h = a[f];\n if (h) for (var g = 0, k = h.length; g < k; g++) {\n if (h[g] === c) {\n 1 === k ? delete a[f] : h.splice(g, 1);\n break;\n } else G(h[g]) && ba(h[g], c);\n }\n }\n }\n }\n function ca(a) {\n var c = \"\",\n b = \"\";\n var d = \"\";\n for (var e = 0; e < a.length; e++) {\n var f = a[e];\n if (f !== b) if (e && \"h\" === f) {\n if (d = \"a\" === d || \"e\" === d || \"i\" === d || \"o\" === d || \"u\" === d || \"y\" === d, (\"a\" === b || \"e\" === b || \"i\" === b || \"o\" === b || \"u\" === b || \"y\" === b) && d || \" \" === b) c += f;\n } else c += f;\n d = e === a.length - 1 ? \"\" : a[e + 1];\n b = f;\n }\n return c;\n }\n function qa(a, c) {\n a = a.length - c.length;\n return 0 > a ? 1 : a ? -1 : 0;\n }\n function pa(a, c) {\n a = a[M];\n c = c[M];\n return a < c ? -1 : a > c ? 1 : 0;\n }\n function oa(a, c) {\n var b = M.length;\n for (var d = 0; d < b; d++) {\n a = a[M[d]], c = c[M[d]];\n }\n return a < c ? -1 : a > c ? 1 : 0;\n }\n function T(a, c, b) {\n return a ? {\n page: a,\n next: c ? \"\" + c : null,\n result: b\n } : b;\n }\n function ha(a, c, b, d, e, f, h) {\n var g,\n k = [];\n if (!0 === b) {\n b = \"0\";\n var l = \"\";\n } else l = b && b.split(\":\");\n var p = a.length;\n if (1 < p) {\n var y = B(),\n t = [];\n var v, x;\n var n = 0,\n m;\n var I;\n var u = !0;\n var D,\n E = 0,\n N,\n da,\n X,\n ea;\n l && (2 === l.length ? (X = l, l = !1) : l = ea = parseInt(l[0], 10));\n if (h) {\n for (v = B(); n < p; n++) {\n if (\"not\" === e[n]) for (x = a[n], I = x.length, m = 0; m < I; m++) {\n v[\"@\" + x[m]] = 1;\n } else da = n + 1;\n }\n if (C(da)) return T(b, g, k);\n n = 0;\n } else N = J(e) && e;\n var Y;\n for (; n < p; n++) {\n var ra = n === (da || p) - 1;\n if (!N || !n) if ((m = N || e && e[n]) && \"and\" !== m) {\n if (\"or\" === m) Y = !1;else continue;\n } else Y = f = !0;\n x = a[n];\n if (I = x.length) {\n if (u) if (D) {\n var q = D.length;\n for (m = 0; m < q; m++) {\n u = D[m];\n var A = \"@\" + u;\n h && v[A] || (y[A] = 1, f || (k[E++] = u));\n }\n D = null;\n u = !1;\n } else {\n D = x;\n continue;\n }\n A = !1;\n for (m = 0; m < I; m++) {\n q = x[m];\n var z = \"@\" + q;\n var Z = f ? y[z] || 0 : n;\n if (!(!Z && !d || h && v[z] || !f && y[z])) if (Z === n) {\n if (ra) {\n if (!ea || --ea < E) if (k[E++] = q, c && E === c) return T(b, E + (l || 0), k);\n } else y[z] = n + 1;\n A = !0;\n } else d && (z = t[Z] || (t[Z] = []), z[z.length] = q);\n }\n if (Y && !A && !d) break;\n } else if (Y && !d) return T(b, g, x);\n }\n if (D) if (n = D.length, h) for (m = l ? parseInt(l, 10) : 0; m < n; m++) {\n a = D[m], v[\"@\" + a] || (k[E++] = a);\n } else k = D;\n if (d) for (E = k.length, X ? (n = parseInt(X[0], 10) + 1, m = parseInt(X[1], 10) + 1) : (n = t.length, m = 0); n--;) {\n if (q = t[n]) {\n for (I = q.length; m < I; m++) {\n if (d = q[m], !h || !v[\"@\" + d]) if (k[E++] = d, c && E === c) return T(b, n + \":\" + m, k);\n }\n m = 0;\n }\n }\n } else !p || e && \"not\" === e[0] || (k = a[0], l && (l = parseInt(l[0], 10)));\n c && (h = k.length, l && l > h && (l = 0), l = l || 0, g = l + c, g < h ? k = k.slice(l, g) : (g = 0, l && (k = k.slice(l))));\n return T(b, g, k);\n }\n function J(a) {\n return \"string\" === typeof a;\n }\n function F(a) {\n return a.constructor === Array;\n }\n function O(a) {\n return \"function\" === typeof a;\n }\n function G(a) {\n return \"object\" === typeof a;\n }\n function C(a) {\n return \"undefined\" === typeof a;\n }\n function ia(a) {\n var c = Array(a);\n for (var b = 0; b < a; b++) {\n c[b] = B();\n }\n return c;\n }\n function B() {\n return Object.create(null);\n }\n function sa() {\n var a, c;\n self.onmessage = function (b) {\n if (b = b.data) if (b.search) {\n var d = c.search(b.content, b.threshold ? {\n limit: b.limit,\n threshold: b.threshold,\n where: b.where\n } : b.limit);\n self.postMessage({\n id: a,\n content: b.content,\n limit: b.limit,\n result: d\n });\n } else b.add ? c.add(b.id, b.content) : b.update ? c.update(b.id, b.content) : b.remove ? c.remove(b.id) : b.clear ? c.clear() : b.info ? (b = c.info(), b.worker = a, console.log(b)) : b.register && (a = b.id, b.options.cache = !1, b.options.async = !1, b.options.worker = !1, c = new Function(b.register.substring(b.register.indexOf(\"{\") + 1, b.register.lastIndexOf(\"}\")))(), c = new c(b.options));\n };\n }\n function ta(a, c, b, d) {\n a = K(\"flexsearch\", \"id\" + a, sa, function (f) {\n (f = f.data) && f.result && d(f.id, f.content, f.result, f.limit, f.where, f.cursor, f.suggest);\n }, c);\n var e = ma.toString();\n b.id = c;\n a.postMessage({\n register: e,\n options: b,\n id: c\n });\n return a;\n }\n var H = {\n encode: \"icase\",\n f: \"forward\",\n split: /\\W+/,\n cache: !1,\n async: !1,\n g: !1,\n D: !1,\n a: !1,\n b: 9,\n threshold: 0,\n depth: 0\n },\n ja = {\n memory: {\n encode: \"extra\",\n f: \"strict\",\n threshold: 0,\n b: 1\n },\n speed: {\n encode: \"icase\",\n f: \"strict\",\n threshold: 1,\n b: 3,\n depth: 2\n },\n match: {\n encode: \"extra\",\n f: \"full\",\n threshold: 1,\n b: 3\n },\n score: {\n encode: \"extra\",\n f: \"strict\",\n threshold: 1,\n b: 9,\n depth: 4\n },\n balance: {\n encode: \"balance\",\n f: \"strict\",\n threshold: 0,\n b: 3,\n depth: 3\n },\n fast: {\n encode: \"icase\",\n f: \"strict\",\n threshold: 8,\n b: 9,\n depth: 1\n }\n },\n aa = [];\n var na = 0;\n var ka = {},\n la = {};\n w.create = function (a, c) {\n return new w(a, c);\n };\n w.registerMatcher = function (a) {\n for (var c in a) {\n a.hasOwnProperty(c) && aa.push(r(c), a[c]);\n }\n return this;\n };\n w.registerEncoder = function (a, c) {\n U[a] = c.bind(U);\n return this;\n };\n w.registerLanguage = function (a, c) {\n ka[a] = c.filter;\n la[a] = c.stemmer;\n return this;\n };\n w.encode = function (a, c) {\n return U[a](c);\n };\n w.prototype.init = function (a, c) {\n this.v = [];\n if (c) {\n var b = c.preset;\n a = c;\n } else a || (a = H), b = a.preset;\n c = {};\n J(a) ? (c = ja[a], a = {}) : b && (c = ja[b]);\n if (b = a.worker) if (\"undefined\" === typeof Worker) a.worker = !1, this.m = null;else {\n var d = parseInt(b, 10) || 4;\n this.C = -1;\n this.u = 0;\n this.o = [];\n this.F = null;\n this.m = Array(d);\n for (var e = 0; e < d; e++) {\n this.m[e] = ta(this.id, e, a, L.bind(this));\n }\n }\n this.f = a.tokenize || c.f || this.f || H.f;\n this.split = C(b = a.split) ? this.split || H.split : J(b) ? r(b) : b;\n this.D = a.rtl || this.D || H.D;\n this.async = \"undefined\" === typeof Promise || C(b = a.async) ? this.async || H.async : b;\n this.g = C(b = a.worker) ? this.g || H.g : b;\n this.threshold = C(b = a.threshold) ? c.threshold || this.threshold || H.threshold : b;\n this.b = C(b = a.resolution) ? b = c.b || this.b || H.b : b;\n b <= this.threshold && (this.b = this.threshold + 1);\n this.depth = \"strict\" !== this.f || C(b = a.depth) ? c.depth || this.depth || H.depth : b;\n this.w = (b = C(b = a.encode) ? c.encode || H.encode : b) && U[b] && U[b].bind(U) || (O(b) ? b : this.w || !1);\n (b = a.matcher) && this.addMatcher(b);\n if (b = (c = a.lang) || a.filter) {\n J(b) && (b = ka[b]);\n if (F(b)) {\n d = this.w;\n e = B();\n for (var f = 0; f < b.length; f++) {\n var h = d ? d(b[f]) : b[f];\n e[h] = 1;\n }\n b = e;\n }\n this.filter = b;\n }\n if (b = c || a.stemmer) {\n var g;\n c = J(b) ? la[b] : b;\n d = this.w;\n e = [];\n for (g in c) {\n c.hasOwnProperty(g) && (f = d ? d(g) : g, e.push(r(f + \"($|\\\\W)\"), d ? d(c[g]) : c[g]));\n }\n this.stemmer = g = e;\n }\n this.a = e = (b = a.doc) ? S(b) : this.a || H.a;\n this.i = ia(this.b - (this.threshold || 0));\n this.h = B();\n this.c = B();\n if (e) {\n this.l = B();\n a.doc = null;\n g = e.index = {};\n c = e.keys = [];\n d = e.field;\n f = e.tag;\n h = e.store;\n F(e.id) || (e.id = e.id.split(\":\"));\n if (h) {\n var k = B();\n if (J(h)) k[h] = 1;else if (F(h)) for (var l = 0; l < h.length; l++) {\n k[h[l]] = 1;\n } else G(h) && (k = h);\n e.store = k;\n }\n if (f) {\n this.G = B();\n h = B();\n if (d) if (J(d)) h[d] = a;else if (F(d)) for (k = 0; k < d.length; k++) {\n h[d[k]] = a;\n } else G(d) && (h = d);\n F(f) || (e.tag = f = [f]);\n for (d = 0; d < f.length; d++) {\n this.G[f[d]] = B();\n }\n this.I = f;\n d = h;\n }\n if (d) {\n var _l;\n F(d) || (G(d) ? (_l = d, e.field = d = Object.keys(d)) : e.field = d = [d]);\n for (e = 0; e < d.length; e++) {\n f = d[e], F(f) || (_l && (a = _l[f]), c[e] = f, d[e] = f.split(\":\")), g[f] = new w(a);\n }\n }\n a.doc = b;\n }\n this.B = !0;\n this.j = (this.cache = b = C(b = a.cache) ? this.cache || H.cache : b) ? new ua(b) : !1;\n return this;\n };\n w.prototype.encode = function (a) {\n a && (aa.length && (a = Q(a, aa)), this.v.length && (a = Q(a, this.v)), this.w && (a = this.w(a)), this.stemmer && (a = Q(a, this.stemmer)));\n return a;\n };\n w.prototype.addMatcher = function (a) {\n var c = this.v;\n for (var b in a) {\n a.hasOwnProperty(b) && c.push(r(b), a[b]);\n }\n return this;\n };\n w.prototype.add = function (a, c, b, d, e) {\n if (this.a && G(a)) return this.A(\"add\", a, c);\n if (c && J(c) && (a || 0 === a)) {\n var f = \"@\" + a;\n if (this.c[f] && !d) return this.update(a, c);\n if (this.g) return ++this.C >= this.m.length && (this.C = 0), this.m[this.C].postMessage({\n add: !0,\n id: a,\n content: c\n }), this.c[f] = \"\" + this.C, b && b(), this;\n if (!e) {\n if (this.async && \"function\" !== typeof importScripts) {\n var t = this;\n f = new Promise(function (v) {\n setTimeout(function () {\n t.add(a, c, null, d, !0);\n t = null;\n v();\n });\n });\n if (b) f.then(b);else return f;\n return this;\n }\n if (b) return this.add(a, c, null, d, !0), b(), this;\n }\n c = this.encode(c);\n if (!c.length) return this;\n b = this.f;\n e = O(b) ? b(c) : c.split(this.split);\n this.filter && (e = W(e, this.filter));\n var n = B();\n n._ctx = B();\n var m = e.length,\n u = this.threshold,\n q = this.depth,\n A = this.b,\n z = this.i,\n y = this.D;\n for (var _t = 0; _t < m; _t++) {\n var h = e[_t];\n if (h) {\n var g = h.length,\n k = (y ? _t + 1 : m - _t) / m,\n l = \"\";\n switch (b) {\n case \"reverse\":\n case \"both\":\n for (var p = g; --p;) {\n l = h[p] + l, V(z, n, l, a, y ? 1 : (g - p) / g, k, u, A - 1);\n }\n l = \"\";\n case \"forward\":\n for (p = 0; p < g; p++) {\n l += h[p], V(z, n, l, a, y ? (p + 1) / g : 1, k, u, A - 1);\n }\n break;\n case \"full\":\n for (p = 0; p < g; p++) {\n var v = (y ? p + 1 : g - p) / g;\n for (var x = g; x > p; x--) {\n l = h.substring(p, x), V(z, n, l, a, v, k, u, A - 1);\n }\n }\n break;\n default:\n if (g = V(z, n, h, a, 1, k, u, A - 1), q && 1 < m && g >= u) for (g = n._ctx[h] || (n._ctx[h] = B()), h = this.h[h] || (this.h[h] = ia(A - (u || 0))), k = _t - q, l = _t + q + 1, 0 > k && (k = 0), l > m && (l = m); k < l; k++) {\n k !== _t && V(h, g, e[k], a, 0, A - (k < _t ? _t - k : k - _t), u, A - 1);\n }\n }\n }\n }\n this.c[f] = 1;\n this.B = !1;\n }\n return this;\n };\n w.prototype.A = function (a, c, b) {\n if (F(c)) {\n var d = c.length;\n if (d--) {\n for (var e = 0; e < d; e++) {\n this.A(a, c[e]);\n }\n return this.A(a, c[d], b);\n }\n } else {\n var f = this.a.index,\n h = this.a.keys,\n g = this.a.tag;\n e = this.a.store;\n var k;\n var l = this.a.id;\n d = c;\n for (var p = 0; p < l.length; p++) {\n d = d[l[p]];\n }\n if (\"remove\" === a && (delete this.l[d], l = h.length, l--)) {\n for (c = 0; c < l; c++) {\n f[h[c]].remove(d);\n }\n return f[h[l]].remove(d, b);\n }\n if (g) {\n for (k = 0; k < g.length; k++) {\n var n = g[k];\n var m = c;\n l = n.split(\":\");\n for (p = 0; p < l.length; p++) {\n m = m[l[p]];\n }\n m = \"@\" + m;\n }\n k = this.G[n];\n k = k[m] || (k[m] = []);\n }\n l = this.a.field;\n for (var u = 0, q = l.length; u < q; u++) {\n n = l[u];\n g = c;\n for (m = 0; m < n.length; m++) {\n g = g[n[m]];\n }\n n = f[h[u]];\n m = \"add\" === a ? n.add : n.update;\n u === q - 1 ? m.call(n, d, g, b) : m.call(n, d, g);\n }\n if (e) {\n b = Object.keys(e);\n a = B();\n for (f = 0; f < b.length; f++) {\n if (h = b[f], e[h]) {\n h = h.split(\":\");\n var _u = void 0,\n _q = void 0;\n for (l = 0; l < h.length; l++) {\n g = h[l], _u = (_u || c)[g], _q = (_q || a)[g] = _u;\n }\n }\n }\n c = a;\n }\n k && (k[k.length] = c);\n this.l[d] = c;\n }\n return this;\n };\n w.prototype.update = function (a, c, b) {\n if (this.a && G(a)) return this.A(\"update\", a, c);\n this.c[\"@\" + a] && J(c) && (this.remove(a), this.add(a, c, b, !0));\n return this;\n };\n w.prototype.remove = function (a, c, b) {\n if (this.a && G(a)) return this.A(\"remove\", a, c);\n var d = \"@\" + a;\n if (this.c[d]) {\n if (this.g) return this.m[this.c[d]].postMessage({\n remove: !0,\n id: a\n }), delete this.c[d], c && c(), this;\n if (!b) {\n if (this.async && \"function\" !== typeof importScripts) {\n var e = this;\n d = new Promise(function (f) {\n setTimeout(function () {\n e.remove(a, null, !0);\n e = null;\n f();\n });\n });\n if (c) d.then(c);else return d;\n return this;\n }\n if (c) return this.remove(a, null, !0), c(), this;\n }\n for (c = 0; c < this.b - (this.threshold || 0); c++) {\n ba(this.i[c], a);\n }\n this.depth && ba(this.h, a);\n delete this.c[d];\n this.B = !1;\n }\n return this;\n };\n var M;\n w.prototype.search = function (a, c, b, d) {\n if (G(c)) {\n if (F(c)) for (var e = 0; e < c.length; e++) {\n c[e].query = a;\n } else c.query = a;\n a = c;\n c = 1E3;\n } else c && O(c) ? (b = c, c = 1E3) : c || 0 === c || (c = 1E3);\n if (this.g) {\n this.F = b;\n this.u = 0;\n this.o = [];\n for (var f = 0; f < this.g; f++) {\n this.m[f].postMessage({\n search: !0,\n limit: c,\n content: a\n });\n }\n } else {\n var h = [],\n g = a;\n if (G(a) && !F(a)) {\n b || (b = a.callback) && (g.callback = null);\n var k = a.sort;\n var l = a.page;\n c = a.limit;\n f = a.threshold;\n var p = a.suggest;\n a = a.query;\n }\n if (this.a) {\n f = this.a.index;\n var y = g.where;\n var n = g.bool || \"or\",\n m = g.field;\n var t = n;\n var v, x;\n if (m) F(m) || (m = [m]);else if (F(g)) {\n var u = g;\n m = [];\n t = [];\n for (var q = 0; q < g.length; q++) {\n d = g[q], e = d.bool || n, m[q] = d.field, t[q] = e, \"not\" === e ? v = !0 : \"and\" === e && (x = !0);\n }\n } else m = this.a.keys;\n n = m.length;\n for (q = 0; q < n; q++) {\n u && (g = u[q]), l && !J(g) && (g.page = null, g.limit = 0), h[q] = f[m[q]].search(g, 0);\n }\n if (b) return b(P.call(this, a, t, h, k, c, p, y, l, x, v));\n if (this.async) {\n var I = this;\n return new Promise(function (D) {\n Promise.all(h).then(function (E) {\n D(P.call(I, a, t, E, k, c, p, y, l, x, v));\n });\n });\n }\n return P.call(this, a, t, h, k, c, p, y, l, x, v);\n }\n f || (f = this.threshold || 0);\n if (!d) {\n if (this.async && \"function\" !== typeof importScripts) {\n var _y = this;\n f = new Promise(function (t) {\n setTimeout(function () {\n t(_y.search(g, c, null, !0));\n _y = null;\n });\n });\n if (b) f.then(b);else return f;\n return this;\n }\n if (b) return b(this.search(g, c, null, !0)), this;\n }\n if (!a || !J(a)) return h;\n g = a;\n if (this.cache) if (this.B) {\n if (b = this.j.get(a)) return b;\n } else this.j.clear(), this.B = !0;\n g = this.encode(g);\n if (!g.length) return h;\n b = this.f;\n b = O(b) ? b(g) : g.split(this.split);\n this.filter && (b = W(b, this.filter));\n u = b.length;\n d = !0;\n e = [];\n var A = B(),\n z = 0;\n 1 < u && (this.depth && \"strict\" === this.f ? n = !0 : b.sort(qa));\n if (!n || (q = this.h)) {\n var _y2 = this.b;\n for (; z < u; z++) {\n var _t2 = b[z];\n if (_t2) {\n if (n) {\n if (!m) if (q[_t2]) m = _t2, A[_t2] = 1;else if (!p) return h;\n if (p && z === u - 1 && !e.length) n = !1, _t2 = m || _t2, A[_t2] = 0;else if (!m) continue;\n }\n if (!A[_t2]) {\n var _v = [];\n var _x = !1,\n _I = 0;\n var D = n ? q[m] : this.i;\n if (D) {\n var E = void 0;\n for (var N = 0; N < _y2 - f; N++) {\n if (E = D[N] && D[N][_t2]) _v[_I++] = E, _x = !0;\n }\n }\n if (_x) m = _t2, e[e.length] = 1 < _I ? _v.concat.apply([], _v) : _v[0];else if (!p) {\n d = !1;\n break;\n }\n A[_t2] = 1;\n }\n }\n }\n } else d = !1;\n d && (h = ha(e, c, l, p));\n this.cache && this.j.set(a, h);\n return h;\n }\n };\n w.prototype.find = function (a, c) {\n return this.where(a, c, 1)[0] || null;\n };\n w.prototype.where = function (a, c, b, d) {\n var e = this.l,\n f = [];\n var h = 0;\n var g;\n var k;\n var l;\n if (G(a)) {\n b || (b = c);\n var p = Object.keys(a);\n var n = p.length;\n g = !1;\n if (1 === n && \"id\" === p[0]) return [e[a.id]];\n if ((k = this.I) && !d) for (var m = 0; m < k.length; m++) {\n var u = k[m],\n q = a[u];\n if (!C(q)) {\n l = this.G[u][\"@\" + q];\n if (0 === --n) return l;\n p.splice(p.indexOf(u), 1);\n delete a[u];\n break;\n }\n }\n k = Array(n);\n for (m = 0; m < n; m++) {\n k[m] = p[m].split(\":\");\n }\n } else {\n if (O(a)) {\n c = d || Object.keys(e);\n b = c.length;\n for (p = 0; p < b; p++) {\n n = e[c[p]], a(n) && (f[h++] = n);\n }\n return f;\n }\n if (C(c)) return [e[a]];\n if (\"id\" === a) return [e[c]];\n p = [a];\n n = 1;\n k = [a.split(\":\")];\n g = !0;\n }\n d = l || d || Object.keys(e);\n m = d.length;\n for (u = 0; u < m; u++) {\n q = l ? d[u] : e[d[u]];\n var A = !0;\n for (var z = 0; z < n; z++) {\n g || (c = a[p[z]]);\n var y = k[z],\n t = y.length;\n var v = q;\n if (1 < t) for (var x = 0; x < t; x++) {\n v = v[y[x]];\n } else v = v[y[0]];\n if (v !== c) {\n A = !1;\n break;\n }\n }\n if (A && (f[h++] = q, b && h === b)) break;\n }\n return f;\n };\n w.prototype.info = function () {\n if (this.g) for (var a = 0; a < this.g; a++) {\n this.m[a].postMessage({\n info: !0,\n id: this.id\n });\n } else return {\n id: this.id,\n items: this.length,\n cache: this.cache && this.cache.s ? this.cache.s.length : !1,\n matcher: aa.length + (this.v ? this.v.length : 0),\n worker: this.g,\n threshold: this.threshold,\n depth: this.depth,\n resolution: this.b,\n contextual: this.depth && \"strict\" === this.f\n };\n };\n w.prototype.clear = function () {\n return this.destroy().init();\n };\n w.prototype.destroy = function () {\n this.cache && (this.j.clear(), this.j = null);\n this.i = this.h = this.c = null;\n if (this.a) {\n var a = this.a.keys;\n for (var c = 0; c < a.length; c++) {\n this.a.index[a[c]].destroy();\n }\n this.a = this.l = null;\n }\n return this;\n };\n w.prototype.export = function (a) {\n var c = !a || C(a.serialize) || a.serialize;\n if (this.a) {\n var d = !a || C(a.doc) || a.doc;\n var b = !a || C(a.index) || a.index;\n a = [];\n var e = 0;\n if (b) for (b = this.a.keys; e < b.length; e++) {\n var f = this.a.index[b[e]];\n a[e] = [f.i, f.h, Object.keys(f.c)];\n }\n d && (a[e] = this.l);\n } else a = [this.i, this.h, Object.keys(this.c)];\n c && (a = JSON.stringify(a));\n return a;\n };\n w.prototype.import = function (a, c) {\n if (!c || C(c.serialize) || c.serialize) a = JSON.parse(a);\n var b = B();\n if (this.a) {\n var d = !c || C(c.doc) || c.doc,\n e = 0;\n if (!c || C(c.index) || c.index) {\n c = this.a.keys;\n var h = c.length;\n for (var f = a[0][2]; e < f.length; e++) {\n b[f[e]] = 1;\n }\n for (e = 0; e < h; e++) {\n f = this.a.index[c[e]];\n var g = a[e];\n g && (f.i = g[0], f.h = g[1], f.c = b);\n }\n }\n d && (this.l = G(d) ? d : a[e]);\n } else {\n d = a[2];\n for (e = 0; e < d.length; e++) {\n b[d[e]] = 1;\n }\n this.i = a[0];\n this.h = a[1];\n this.c = b;\n }\n };\n var va = function () {\n var a = r(\"\\\\s+\"),\n c = r(\"[^a-z0-9 ]\"),\n b = [r(\"[-/]\"), \" \", c, \"\", a, \" \"];\n return function (d) {\n return ca(Q(d.toLowerCase(), b));\n };\n }(),\n U = {\n icase: function icase(a) {\n return a.toLowerCase();\n },\n simple: function () {\n var a = r(\"\\\\s+\"),\n c = r(\"[^a-z0-9 ]\"),\n b = r(\"[-/]\"),\n d = r(\"[\\xE0\\xE1\\xE2\\xE3\\xE4\\xE5]\"),\n e = r(\"[\\xE8\\xE9\\xEA\\xEB]\"),\n f = r(\"[\\xEC\\xED\\xEE\\xEF]\"),\n h = r(\"[\\xF2\\xF3\\xF4\\xF5\\xF6\\u0151]\"),\n g = r(\"[\\xF9\\xFA\\xFB\\xFC\\u0171]\"),\n k = r(\"[\\xFD\\u0177\\xFF]\"),\n l = r(\"\\xF1\"),\n p = r(\"[\\xE7c]\"),\n n = r(\"\\xDF\"),\n m = r(\" & \"),\n u = [d, \"a\", e, \"e\", f, \"i\", h, \"o\", g, \"u\", k, \"y\", l, \"n\", p, \"k\", n, \"s\", m, \" and \", b, \" \", c, \"\", a, \" \"];\n return function (q) {\n q = Q(q.toLowerCase(), u);\n return \" \" === q ? \"\" : q;\n };\n }(),\n advanced: function () {\n var a = r(\"ae\"),\n c = r(\"ai\"),\n b = r(\"ay\"),\n d = r(\"ey\"),\n e = r(\"oe\"),\n f = r(\"ue\"),\n h = r(\"ie\"),\n g = r(\"sz\"),\n k = r(\"zs\"),\n l = r(\"ck\"),\n p = r(\"cc\"),\n n = r(\"sh\"),\n m = r(\"th\"),\n u = r(\"dt\"),\n q = r(\"ph\"),\n A = r(\"pf\"),\n z = r(\"ou\"),\n y = r(\"uo\"),\n t = [a, \"a\", c, \"ei\", b, \"ei\", d, \"ei\", e, \"o\", f, \"u\", h, \"i\", g, \"s\", k, \"s\", n, \"s\", l, \"k\", p, \"k\", m, \"t\", u, \"t\", q, \"f\", A, \"f\", z, \"o\", y, \"u\"];\n return function (v, x) {\n if (!v) return v;\n v = this.simple(v);\n 2 < v.length && (v = Q(v, t));\n x || 1 < v.length && (v = ca(v));\n return v;\n };\n }(),\n extra: function () {\n var a = r(\"p\"),\n c = r(\"z\"),\n b = r(\"[cgq]\"),\n d = r(\"n\"),\n e = r(\"d\"),\n f = r(\"[vw]\"),\n h = r(\"[aeiouy]\"),\n g = [a, \"b\", c, \"s\", b, \"k\", d, \"m\", e, \"t\", f, \"f\", h, \"\"];\n return function (k) {\n if (!k) return k;\n k = this.advanced(k, !0);\n if (1 < k.length) {\n k = k.split(\" \");\n for (var l = 0; l < k.length; l++) {\n var p = k[l];\n 1 < p.length && (k[l] = p[0] + Q(p.substring(1), g));\n }\n k = k.join(\" \");\n k = ca(k);\n }\n return k;\n };\n }(),\n balance: va\n },\n ua = function () {\n function a(c) {\n this.clear();\n this.H = !0 !== c && c;\n }\n a.prototype.clear = function () {\n this.cache = B();\n this.count = B();\n this.index = B();\n this.s = [];\n };\n a.prototype.set = function (c, b) {\n if (this.H && C(this.cache[c])) {\n var d = this.s.length;\n if (d === this.H) {\n d--;\n var e = this.s[d];\n delete this.cache[e];\n delete this.count[e];\n delete this.index[e];\n }\n this.index[c] = d;\n this.s[d] = c;\n this.count[c] = -1;\n this.cache[c] = b;\n this.get(c);\n } else this.cache[c] = b;\n };\n a.prototype.get = function (c) {\n var b = this.cache[c];\n if (this.H && b) {\n var d = ++this.count[c];\n var f = this.index;\n var h = f[c];\n if (0 < h) {\n var g = this.s;\n for (var e = h; this.count[g[--h]] <= d && -1 !== h;) {\n ;\n }\n h++;\n if (h !== e) {\n for (d = e; d > h; d--) {\n e = g[d - 1], g[d] = e, f[e] = d;\n }\n g[h] = c;\n f[c] = h;\n }\n }\n }\n return b;\n };\n return a;\n }();\n return w;\n}(function () {\n var K = {},\n R = \"undefined\" !== typeof Blob && \"undefined\" !== typeof URL && URL.createObjectURL;\n return function (w, L, S, W, P) {\n S = R ? URL.createObjectURL(new Blob([\"(\" + S.toString() + \")()\"], {\n type: \"text/javascript\"\n })) : w + \".min.js\";\n w += \"-\" + L;\n K[w] || (K[w] = []);\n K[w][P] = new Worker(S);\n K[w][P].onmessage = W;\n return K[w][P];\n };\n}()), this);","'use strict';\nvar toPropertyKey = require('../internals/to-property-key');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = function (object, key, value) {\n var propertyKey = toPropertyKey(key);\n if (propertyKey in object) definePropertyModule.f(object, propertyKey, createPropertyDescriptor(0, value));\n else object[propertyKey] = value;\n};\n","var classof = require('../internals/classof');\nvar getMethod = require('../internals/get-method');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar Iterators = require('../internals/iterators');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\n\nmodule.exports = function (it) {\n if (!isNullOrUndefined(it)) return getMethod(it, ITERATOR)\n || getMethod(it, '@@iterator')\n || Iterators[classof(it)];\n};\n","var call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar anObject = require('../internals/an-object');\nvar tryToString = require('../internals/try-to-string');\nvar getIteratorMethod = require('../internals/get-iterator-method');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (argument, usingIterator) {\n var iteratorMethod = arguments.length < 2 ? getIteratorMethod(argument) : usingIterator;\n if (aCallable(iteratorMethod)) return anObject(call(iteratorMethod, argument));\n throw $TypeError(tryToString(argument) + ' is not iterable');\n};\n","var wellKnownSymbol = require('../internals/well-known-symbol');\nvar Iterators = require('../internals/iterators');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar ArrayPrototype = Array.prototype;\n\n// check on default Array iterator\nmodule.exports = function (it) {\n return it !== undefined && (Iterators.Array === it || ArrayPrototype[ITERATOR] === it);\n};\n","var bind = require('../internals/function-bind-context');\nvar call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar tryToString = require('../internals/try-to-string');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar getIterator = require('../internals/get-iterator');\nvar getIteratorMethod = require('../internals/get-iterator-method');\nvar iteratorClose = require('../internals/iterator-close');\n\nvar $TypeError = TypeError;\n\nvar Result = function (stopped, result) {\n this.stopped = stopped;\n this.result = result;\n};\n\nvar ResultPrototype = Result.prototype;\n\nmodule.exports = function (iterable, unboundFunction, options) {\n var that = options && options.that;\n var AS_ENTRIES = !!(options && options.AS_ENTRIES);\n var IS_RECORD = !!(options && options.IS_RECORD);\n var IS_ITERATOR = !!(options && options.IS_ITERATOR);\n var INTERRUPTED = !!(options && options.INTERRUPTED);\n var fn = bind(unboundFunction, that);\n var iterator, iterFn, index, length, result, next, step;\n\n var stop = function (condition) {\n if (iterator) iteratorClose(iterator, 'normal', condition);\n return new Result(true, condition);\n };\n\n var callFn = function (value) {\n if (AS_ENTRIES) {\n anObject(value);\n return INTERRUPTED ? fn(value[0], value[1], stop) : fn(value[0], value[1]);\n } return INTERRUPTED ? fn(value, stop) : fn(value);\n };\n\n if (IS_RECORD) {\n iterator = iterable.iterator;\n } else if (IS_ITERATOR) {\n iterator = iterable;\n } else {\n iterFn = getIteratorMethod(iterable);\n if (!iterFn) throw $TypeError(tryToString(iterable) + ' is not iterable');\n // optimisation for array iterators\n if (isArrayIteratorMethod(iterFn)) {\n for (index = 0, length = lengthOfArrayLike(iterable); length > index; index++) {\n result = callFn(iterable[index]);\n if (result && isPrototypeOf(ResultPrototype, result)) return result;\n } return new Result(false);\n }\n iterator = getIterator(iterable, iterFn);\n }\n\n next = IS_RECORD ? iterable.next : iterator.next;\n while (!(step = call(next, iterator)).done) {\n try {\n result = callFn(step.value);\n } catch (error) {\n iteratorClose(iterator, 'throw', error);\n }\n if (typeof result == 'object' && result && isPrototypeOf(ResultPrototype, result)) return result;\n } return new Result(false);\n};\n","var call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar getMethod = require('../internals/get-method');\n\nmodule.exports = function (iterator, kind, value) {\n var innerResult, innerError;\n anObject(iterator);\n try {\n innerResult = getMethod(iterator, 'return');\n if (!innerResult) {\n if (kind === 'throw') throw value;\n return value;\n }\n innerResult = call(innerResult, iterator);\n } catch (error) {\n innerError = true;\n innerResult = error;\n }\n if (kind === 'throw') throw value;\n if (innerError) throw innerResult;\n anObject(innerResult);\n return value;\n};\n","module.exports = {};\n","var $ = require('../internals/export');\nvar iterate = require('../internals/iterate');\nvar createProperty = require('../internals/create-property');\n\n// `Object.fromEntries` method\n// https://github.com/tc39/proposal-object-from-entries\n$({ target: 'Object', stat: true }, {\n fromEntries: function fromEntries(iterable) {\n var obj = {};\n iterate(iterable, function (k, v) {\n createProperty(obj, k, v);\n }, { AS_ENTRIES: true });\n return obj;\n }\n});\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, { 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, { Fragment, FunctionComponent } 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 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\"\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 {\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 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 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}\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","import * as React from \"react\"\nimport styled from \"styled-components\"\n\nconst Badge = ({ children, color = '#000000' }) => {\n return (\n <>\n {children}\n \n )\n}\n\nconst StyledBadge = styled.div`\n text-transform: uppercase;\n letter-spacing: .2rem;\n padding-left: 0px;\n`\n\nexport default Badge\n","import * as React from \"react\"\nimport PropTypes from \"prop-types\"\nimport { Link } from \"gatsby\"\nimport \"./header.scss\"\nimport SMLogo from \"../../images/SM_logo.svg\"\nimport Menu from \"../../components/menu/menu\"\n\nconst Header = ({ siteTitle }) => (\n
\n
\n \n
\n
\n
\n
\n \n \n \n
\n
\n
 
\n
\n
\n\n)\n\nHeader.propTypes = {\n siteTitle: PropTypes.string,\n}\n\nHeader.defaultProps = {\n siteTitle: ``,\n}\n\nexport default Header\n","import * as React from \"react\"\nimport \"./footer.scss\"\nimport SMLogo from \"../../images/SM_logo.svg\"\nimport { Link } from \"gatsby\"\n\nconst Footer = () => (\n
\n
\n
\n <>\n \n

{new Date().getFullYear()}. All Rights Reserved.

\n \n
\n
\n

\n info@slaightmusic.com\n

\n
\n
\n
\n)\n\nexport default Footer\n","import * as React from \"react\"\nimport PropTypes from \"prop-types\"\nimport { withPrefix } from \"gatsby\"\n\nimport Header from \"../header/header\"\nimport Footer from \"../footer/footer\"\nimport \"./layout.scss\"\nimport styled from \"styled-components\"\n\nconst Layout = ({ children, defaultLayout = true, pageType = \"default\" }) => {\n // Use a custom layout without header and footer for the home page.\n if (!defaultLayout) {\n return (\n <>\n \n \n \n \n \n
\n
{children}
\n
\n
\n \n )\n }\n\n // Otherwise, use default page layout.\n return (\n <>\n \n \n \n \n \n
\n
\n
{children}
\n
\n