31 | )
32 |
33 | export default Header
34 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # React-Gatsby-Tangomodel
2 | Tangomodel site in React & Gatsby
3 |
4 | For an overview of the project structure please refer to the [Gatsby documentation - Building with Components](https://www.gatsbyjs.org/docs/building-with-components/).
5 |
6 | ## Install
7 |
8 | Make sure that you have the Gatsby CLI program installed:
9 | ```sh
10 | npm install --global gatsby-cli
11 | ```
12 |
13 | And run from your CLI:
14 | ```sh
15 | gatsby new gatsby-example-site
16 | ```
17 |
18 | Then you can run it by:
19 | ```sh
20 | cd gatsby-example-site
21 | gatsby develop
22 | ```
23 |
24 | ## Deploy
25 |
26 | [](https://app.netlify.com/start/deploy?repository=https://github.com/gatsbyjs/gatsby-starter-default)
27 |
--------------------------------------------------------------------------------
/src/pages/page-2.js:
--------------------------------------------------------------------------------
1 | import React from 'react'
2 | import { Link } from 'gatsby'
3 | import { Button, Card, CardBody, CardImage, CardTitle, CardText } from 'mdbreact';
4 |
5 | import Layout from '../components/layout'
6 |
7 | const SecondPage = () => (
8 |
9 |
Hi from the second page
10 |
Welcome to page 2
11 | Go back to the homepage
12 |
13 |
14 |
15 |
16 | Card title
17 | Some quick example text to build on the card title and make up the bulk of the card's content.
18 |
19 |
20 |
21 |
22 | )
23 |
24 | export default SecondPage
25 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "react-gatsby-tangomodel",
3 | "description": "Tangomodel in React & Gatsby",
4 | "version": "1.0.0",
5 | "author": "Big Silver ",
6 | "dependencies": {
7 | "gatsby": "next",
8 | "gatsby-plugin-manifest": "next",
9 | "gatsby-plugin-offline": "next",
10 | "gatsby-plugin-react-helmet": "next",
11 | "mdbreact": "^4.7.0",
12 | "react": "^16.4.2",
13 | "react-dom": "^16.4.2",
14 | "react-helmet": "^5.2.0"
15 | },
16 | "keywords": [
17 | "gatsby"
18 | ],
19 | "license": "MIT",
20 | "scripts": {
21 | "build": "gatsby build",
22 | "develop": "gatsby develop",
23 | "format": "prettier --write '**/*.js'",
24 | "test": "echo \"Error: no test specified\" && exit 1"
25 | },
26 | "devDependencies": {
27 | "prettier": "^1.14.2"
28 | },
29 | "repository": {
30 | "type": "git",
31 | "url": "https://github.com/gatsbyjs/gatsby-starter-default"
32 | }
33 | }
34 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | The MIT License (MIT)
2 |
3 | Copyright (c) 2015 gatsbyjs
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
23 |
--------------------------------------------------------------------------------
/src/components/layout.js:
--------------------------------------------------------------------------------
1 | import React from 'react'
2 | import PropTypes from 'prop-types'
3 | import Helmet from 'react-helmet'
4 | import { StaticQuery, graphql } from 'gatsby'
5 |
6 | import Header from './header'
7 | import './layout.css'
8 |
9 | const Layout = ({ children }) => (
10 | (
21 | <>
22 |
29 |
30 |
31 |
32 |
60 |
61 |
62 |
63 |
64 |
65 |
66 | )
67 |
68 | export default IndexPage
69 |
--------------------------------------------------------------------------------
/src/components/layout.css:
--------------------------------------------------------------------------------
1 | html {
2 | font-family: sans-serif;
3 | -ms-text-size-adjust: 100%;
4 | -webkit-text-size-adjust: 100%;
5 | }
6 | body {
7 | margin: 0;
8 | }
9 | article,
10 | aside,
11 | details,
12 | figcaption,
13 | figure,
14 | footer,
15 | header,
16 | main,
17 | menu,
18 | nav,
19 | section,
20 | summary {
21 | display: block;
22 | }
23 | audio,
24 | canvas,
25 | progress,
26 | video {
27 | display: inline-block;
28 | }
29 | audio:not([controls]) {
30 | display: none;
31 | height: 0;
32 | }
33 | progress {
34 | vertical-align: baseline;
35 | }
36 | [hidden],
37 | template {
38 | display: none;
39 | }
40 | a {
41 | background-color: transparent;
42 | -webkit-text-decoration-skip: objects;
43 | }
44 | a:active,
45 | a:hover {
46 | outline-width: 0;
47 | }
48 | abbr[title] {
49 | border-bottom: none;
50 | text-decoration: underline;
51 | text-decoration: underline dotted;
52 | }
53 | b,
54 | strong {
55 | font-weight: inherit;
56 | font-weight: bolder;
57 | }
58 | dfn {
59 | font-style: italic;
60 | }
61 | h1 {
62 | font-size: 2em;
63 | margin: .67em 0;
64 | }
65 | mark {
66 | background-color: #ff0;
67 | color: #000;
68 | }
69 | small {
70 | font-size: 80%;
71 | }
72 | sub,
73 | sup {
74 | font-size: 75%;
75 | line-height: 0;
76 | position: relative;
77 | vertical-align: baseline;
78 | }
79 | sub {
80 | bottom: -.25em;
81 | }
82 | sup {
83 | top: -.5em;
84 | }
85 | img {
86 | border-style: none;
87 | }
88 | svg:not(:root) {
89 | overflow: hidden;
90 | }
91 | code,
92 | kbd,
93 | pre,
94 | samp {
95 | font-family: monospace, monospace;
96 | font-size: 1em;
97 | }
98 | figure {
99 | margin: 1em 40px;
100 | }
101 | hr {
102 | box-sizing: content-box;
103 | height: 0;
104 | overflow: visible;
105 | }
106 | button,
107 | input,
108 | optgroup,
109 | select,
110 | textarea {
111 | font: inherit;
112 | margin: 0;
113 | }
114 | optgroup {
115 | font-weight: 700;
116 | }
117 | button,
118 | input {
119 | overflow: visible;
120 | }
121 | button,
122 | select {
123 | text-transform: none;
124 | }
125 | [type=reset],
126 | [type=submit],
127 | button,
128 | html [type=button] {
129 | -webkit-appearance: button;
130 | }
131 | [type=button]::-moz-focus-inner,
132 | [type=reset]::-moz-focus-inner,
133 | [type=submit]::-moz-focus-inner,
134 | button::-moz-focus-inner {
135 | border-style: none;
136 | padding: 0;
137 | }
138 | [type=button]:-moz-focusring,
139 | [type=reset]:-moz-focusring,
140 | [type=submit]:-moz-focusring,
141 | button:-moz-focusring {
142 | outline: 1px dotted ButtonText;
143 | }
144 | fieldset {
145 | border: 1px solid silver;
146 | margin: 0 2px;
147 | padding: .35em .625em .75em;
148 | }
149 | legend {
150 | box-sizing: border-box;
151 | color: inherit;
152 | display: table;
153 | max-width: 100%;
154 | padding: 0;
155 | white-space: normal;
156 | }
157 | textarea {
158 | overflow: auto;
159 | }
160 | [type=checkbox],
161 | [type=radio] {
162 | box-sizing: border-box;
163 | padding: 0;
164 | }
165 | [type=number]::-webkit-inner-spin-button,
166 | [type=number]::-webkit-outer-spin-button {
167 | height: auto;
168 | }
169 | [type=search] {
170 | -webkit-appearance: textfield;
171 | outline-offset: -2px;
172 | }
173 | [type=search]::-webkit-search-cancel-button,
174 | [type=search]::-webkit-search-decoration {
175 | -webkit-appearance: none;
176 | }
177 | ::-webkit-input-placeholder {
178 | color: inherit;
179 | opacity: .54;
180 | }
181 | ::-webkit-file-upload-button {
182 | -webkit-appearance: button;
183 | font: inherit;
184 | }
185 | html {
186 | font: 112.5%/1.45em georgia, serif;
187 | box-sizing: border-box;
188 | overflow-y: scroll;
189 | }
190 | * {
191 | box-sizing: inherit;
192 | }
193 | *:before {
194 | box-sizing: inherit;
195 | }
196 | *:after {
197 | box-sizing: inherit;
198 | }
199 | body {
200 | color: hsla(0, 0%, 0%, 0.8);
201 | font-family: georgia, serif;
202 | font-weight: normal;
203 | word-wrap: break-word;
204 | font-kerning: normal;
205 | -moz-font-feature-settings: "kern", "liga", "clig", "calt";
206 | -ms-font-feature-settings: "kern", "liga", "clig", "calt";
207 | -webkit-font-feature-settings: "kern", "liga", "clig", "calt";
208 | font-feature-settings: "kern", "liga", "clig", "calt";
209 | }
210 | img {
211 | max-width: 100%;
212 | margin-left: 0;
213 | margin-right: 0;
214 | margin-top: 0;
215 | padding-bottom: 0;
216 | padding-left: 0;
217 | padding-right: 0;
218 | padding-top: 0;
219 | margin-bottom: 1.45rem;
220 | }
221 | h1 {
222 | margin-left: 0;
223 | margin-right: 0;
224 | margin-top: 0;
225 | padding-bottom: 0;
226 | padding-left: 0;
227 | padding-right: 0;
228 | padding-top: 0;
229 | margin-bottom: 1.45rem;
230 | color: inherit;
231 | font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen,
232 | Ubuntu, Cantarell, Fira Sans, Droid Sans, Helvetica Neue, sans-serif;
233 | font-weight: bold;
234 | text-rendering: optimizeLegibility;
235 | font-size: 2.25rem;
236 | line-height: 1.1;
237 | }
238 | h2 {
239 | margin-left: 0;
240 | margin-right: 0;
241 | margin-top: 0;
242 | padding-bottom: 0;
243 | padding-left: 0;
244 | padding-right: 0;
245 | padding-top: 0;
246 | margin-bottom: 1.45rem;
247 | color: inherit;
248 | font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen,
249 | Ubuntu, Cantarell, Fira Sans, Droid Sans, Helvetica Neue, sans-serif;
250 | font-weight: bold;
251 | text-rendering: optimizeLegibility;
252 | font-size: 1.62671rem;
253 | line-height: 1.1;
254 | }
255 | h3 {
256 | margin-left: 0;
257 | margin-right: 0;
258 | margin-top: 0;
259 | padding-bottom: 0;
260 | padding-left: 0;
261 | padding-right: 0;
262 | padding-top: 0;
263 | margin-bottom: 1.45rem;
264 | color: inherit;
265 | font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen,
266 | Ubuntu, Cantarell, Fira Sans, Droid Sans, Helvetica Neue, sans-serif;
267 | font-weight: bold;
268 | text-rendering: optimizeLegibility;
269 | font-size: 1.38316rem;
270 | line-height: 1.1;
271 | }
272 | h4 {
273 | margin-left: 0;
274 | margin-right: 0;
275 | margin-top: 0;
276 | padding-bottom: 0;
277 | padding-left: 0;
278 | padding-right: 0;
279 | padding-top: 0;
280 | margin-bottom: 1.45rem;
281 | color: inherit;
282 | font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen,
283 | Ubuntu, Cantarell, Fira Sans, Droid Sans, Helvetica Neue, sans-serif;
284 | font-weight: bold;
285 | text-rendering: optimizeLegibility;
286 | font-size: 1rem;
287 | line-height: 1.1;
288 | }
289 | h5 {
290 | margin-left: 0;
291 | margin-right: 0;
292 | margin-top: 0;
293 | padding-bottom: 0;
294 | padding-left: 0;
295 | padding-right: 0;
296 | padding-top: 0;
297 | margin-bottom: 1.45rem;
298 | color: inherit;
299 | font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen,
300 | Ubuntu, Cantarell, Fira Sans, Droid Sans, Helvetica Neue, sans-serif;
301 | font-weight: bold;
302 | text-rendering: optimizeLegibility;
303 | font-size: 0.85028rem;
304 | line-height: 1.1;
305 | }
306 | h6 {
307 | margin-left: 0;
308 | margin-right: 0;
309 | margin-top: 0;
310 | padding-bottom: 0;
311 | padding-left: 0;
312 | padding-right: 0;
313 | padding-top: 0;
314 | margin-bottom: 1.45rem;
315 | color: inherit;
316 | font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen,
317 | Ubuntu, Cantarell, Fira Sans, Droid Sans, Helvetica Neue, sans-serif;
318 | font-weight: bold;
319 | text-rendering: optimizeLegibility;
320 | font-size: 0.78405rem;
321 | line-height: 1.1;
322 | }
323 | hgroup {
324 | margin-left: 0;
325 | margin-right: 0;
326 | margin-top: 0;
327 | padding-bottom: 0;
328 | padding-left: 0;
329 | padding-right: 0;
330 | padding-top: 0;
331 | margin-bottom: 1.45rem;
332 | }
333 | ul {
334 | margin-left: 1.45rem;
335 | margin-right: 0;
336 | margin-top: 0;
337 | padding-bottom: 0;
338 | padding-left: 0;
339 | padding-right: 0;
340 | padding-top: 0;
341 | margin-bottom: 1.45rem;
342 | list-style-position: outside;
343 | list-style-image: none;
344 | }
345 | ol {
346 | margin-left: 1.45rem;
347 | margin-right: 0;
348 | margin-top: 0;
349 | padding-bottom: 0;
350 | padding-left: 0;
351 | padding-right: 0;
352 | padding-top: 0;
353 | margin-bottom: 1.45rem;
354 | list-style-position: outside;
355 | list-style-image: none;
356 | }
357 | dl {
358 | margin-left: 0;
359 | margin-right: 0;
360 | margin-top: 0;
361 | padding-bottom: 0;
362 | padding-left: 0;
363 | padding-right: 0;
364 | padding-top: 0;
365 | margin-bottom: 1.45rem;
366 | }
367 | dd {
368 | margin-left: 0;
369 | margin-right: 0;
370 | margin-top: 0;
371 | padding-bottom: 0;
372 | padding-left: 0;
373 | padding-right: 0;
374 | padding-top: 0;
375 | margin-bottom: 1.45rem;
376 | }
377 | p {
378 | margin-left: 0;
379 | margin-right: 0;
380 | margin-top: 0;
381 | padding-bottom: 0;
382 | padding-left: 0;
383 | padding-right: 0;
384 | padding-top: 0;
385 | margin-bottom: 1.45rem;
386 | }
387 | figure {
388 | margin-left: 0;
389 | margin-right: 0;
390 | margin-top: 0;
391 | padding-bottom: 0;
392 | padding-left: 0;
393 | padding-right: 0;
394 | padding-top: 0;
395 | margin-bottom: 1.45rem;
396 | }
397 | pre {
398 | margin-left: 0;
399 | margin-right: 0;
400 | margin-top: 0;
401 | padding-bottom: 0;
402 | padding-left: 0;
403 | padding-right: 0;
404 | padding-top: 0;
405 | margin-bottom: 1.45rem;
406 | font-size: 0.85rem;
407 | line-height: 1.42;
408 | background: hsla(0, 0%, 0%, 0.04);
409 | border-radius: 3px;
410 | overflow: auto;
411 | word-wrap: normal;
412 | padding: 1.45rem;
413 | }
414 | table {
415 | margin-left: 0;
416 | margin-right: 0;
417 | margin-top: 0;
418 | padding-bottom: 0;
419 | padding-left: 0;
420 | padding-right: 0;
421 | padding-top: 0;
422 | margin-bottom: 1.45rem;
423 | font-size: 1rem;
424 | line-height: 1.45rem;
425 | border-collapse: collapse;
426 | width: 100%;
427 | }
428 | fieldset {
429 | margin-left: 0;
430 | margin-right: 0;
431 | margin-top: 0;
432 | padding-bottom: 0;
433 | padding-left: 0;
434 | padding-right: 0;
435 | padding-top: 0;
436 | margin-bottom: 1.45rem;
437 | }
438 | blockquote {
439 | margin-left: 1.45rem;
440 | margin-right: 1.45rem;
441 | margin-top: 0;
442 | padding-bottom: 0;
443 | padding-left: 0;
444 | padding-right: 0;
445 | padding-top: 0;
446 | margin-bottom: 1.45rem;
447 | }
448 | form {
449 | margin-left: 0;
450 | margin-right: 0;
451 | margin-top: 0;
452 | padding-bottom: 0;
453 | padding-left: 0;
454 | padding-right: 0;
455 | padding-top: 0;
456 | margin-bottom: 1.45rem;
457 | }
458 | noscript {
459 | margin-left: 0;
460 | margin-right: 0;
461 | margin-top: 0;
462 | padding-bottom: 0;
463 | padding-left: 0;
464 | padding-right: 0;
465 | padding-top: 0;
466 | margin-bottom: 1.45rem;
467 | }
468 | iframe {
469 | margin-left: 0;
470 | margin-right: 0;
471 | margin-top: 0;
472 | padding-bottom: 0;
473 | padding-left: 0;
474 | padding-right: 0;
475 | padding-top: 0;
476 | margin-bottom: 1.45rem;
477 | }
478 | hr {
479 | margin-left: 0;
480 | margin-right: 0;
481 | margin-top: 0;
482 | padding-bottom: 0;
483 | padding-left: 0;
484 | padding-right: 0;
485 | padding-top: 0;
486 | margin-bottom: calc(1.45rem - 1px);
487 | background: hsla(0, 0%, 0%, 0.2);
488 | border: none;
489 | height: 1px;
490 | }
491 | address {
492 | margin-left: 0;
493 | margin-right: 0;
494 | margin-top: 0;
495 | padding-bottom: 0;
496 | padding-left: 0;
497 | padding-right: 0;
498 | padding-top: 0;
499 | margin-bottom: 1.45rem;
500 | }
501 | b {
502 | font-weight: bold;
503 | }
504 | strong {
505 | font-weight: bold;
506 | }
507 | dt {
508 | font-weight: bold;
509 | }
510 | th {
511 | font-weight: bold;
512 | }
513 | li {
514 | margin-bottom: calc(1.45rem / 2);
515 | }
516 | ol li {
517 | padding-left: 0;
518 | }
519 | ul li {
520 | padding-left: 0;
521 | }
522 | li > ol {
523 | margin-left: 1.45rem;
524 | margin-bottom: calc(1.45rem / 2);
525 | margin-top: calc(1.45rem / 2);
526 | }
527 | li > ul {
528 | margin-left: 1.45rem;
529 | margin-bottom: calc(1.45rem / 2);
530 | margin-top: calc(1.45rem / 2);
531 | }
532 | blockquote *:last-child {
533 | margin-bottom: 0;
534 | }
535 | li *:last-child {
536 | margin-bottom: 0;
537 | }
538 | p *:last-child {
539 | margin-bottom: 0;
540 | }
541 | li > p {
542 | margin-bottom: calc(1.45rem / 2);
543 | }
544 | code {
545 | font-size: 0.85rem;
546 | line-height: 1.45rem;
547 | }
548 | kbd {
549 | font-size: 0.85rem;
550 | line-height: 1.45rem;
551 | }
552 | samp {
553 | font-size: 0.85rem;
554 | line-height: 1.45rem;
555 | }
556 | abbr {
557 | border-bottom: 1px dotted hsla(0, 0%, 0%, 0.5);
558 | cursor: help;
559 | }
560 | acronym {
561 | border-bottom: 1px dotted hsla(0, 0%, 0%, 0.5);
562 | cursor: help;
563 | }
564 | abbr[title] {
565 | border-bottom: 1px dotted hsla(0, 0%, 0%, 0.5);
566 | cursor: help;
567 | text-decoration: none;
568 | }
569 | thead {
570 | text-align: left;
571 | }
572 | td,
573 | th {
574 | text-align: left;
575 | border-bottom: 1px solid hsla(0, 0%, 0%, 0.12);
576 | font-feature-settings: "tnum";
577 | -moz-font-feature-settings: "tnum";
578 | -ms-font-feature-settings: "tnum";
579 | -webkit-font-feature-settings: "tnum";
580 | padding-left: 0.96667rem;
581 | padding-right: 0.96667rem;
582 | padding-top: 0.725rem;
583 | padding-bottom: calc(0.725rem - 1px);
584 | }
585 | th:first-child,
586 | td:first-child {
587 | padding-left: 0;
588 | }
589 | th:last-child,
590 | td:last-child {
591 | padding-right: 0;
592 | }
593 | tt,
594 | code {
595 | background-color: hsla(0, 0%, 0%, 0.04);
596 | border-radius: 3px;
597 | font-family: "SFMono-Regular", Consolas, "Roboto Mono", "Droid Sans Mono",
598 | "Liberation Mono", Menlo, Courier, monospace;
599 | padding: 0;
600 | padding-top: 0.2em;
601 | padding-bottom: 0.2em;
602 | }
603 | pre code {
604 | background: none;
605 | line-height: 1.42;
606 | }
607 | code:before,
608 | code:after,
609 | tt:before,
610 | tt:after {
611 | letter-spacing: -0.2em;
612 | content: " ";
613 | }
614 | pre code:before,
615 | pre code:after,
616 | pre tt:before,
617 | pre tt:after {
618 | content: "";
619 | }
620 | @media only screen and (max-width: 480px) {
621 | html {
622 | font-size: 100%;
623 | }
624 | }
625 |
--------------------------------------------------------------------------------
/public/render-page.js.map:
--------------------------------------------------------------------------------
1 | {"version":3,"sources":["webpack://lib/webpack/universalModuleDefinition","webpack://lib/webpack/bootstrap","webpack://lib/./.cache/api-runner-ssr.js","webpack://lib/./.cache/api-ssr-docs.js","webpack://lib/./.cache/default-html.js","webpack://lib/./.cache/develop-static-entry.js","webpack://lib/./.cache/gatsby-browser-entry.js","webpack://lib/./.cache/parse-path.js","webpack://lib/./.cache/public-page-renderer.js","webpack://lib/./.cache/wait-for-route-change.js","webpack://lib/./node_modules/@babel/runtime/helpers/assertThisInitialized.js","webpack://lib/./node_modules/@babel/runtime/helpers/defineProperty.js","webpack://lib/./node_modules/@babel/runtime/helpers/extends.js","webpack://lib/./node_modules/@babel/runtime/helpers/inheritsLoose.js","webpack://lib/./node_modules/@babel/runtime/helpers/interopRequireDefault.js","webpack://lib/./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js","webpack://lib/./node_modules/fbjs/lib/emptyFunction.js","webpack://lib/./node_modules/fbjs/lib/invariant.js","webpack://lib/./node_modules/fbjs/lib/warning.js","webpack://lib/./node_modules/gatsby-link/index.js","webpack://lib/./node_modules/gatsby-plugin-manifest/gatsby-ssr.js","webpack://lib/./node_modules/gatsby-plugin-react-helmet/gatsby-ssr.js","webpack://lib/./node_modules/object-assign/index.js","webpack://lib/./node_modules/prop-types/checkPropTypes.js","webpack://lib/./node_modules/prop-types/factoryWithTypeCheckers.js","webpack://lib/./node_modules/prop-types/index.js","webpack://lib/./node_modules/prop-types/lib/ReactPropTypesSecret.js","webpack://lib/external \"@reach/router\"","webpack://lib/external \"core-js/modules/es6.array.filter\"","webpack://lib/external \"core-js/modules/es6.array.for-each\"","webpack://lib/external \"core-js/modules/es6.array.index-of\"","webpack://lib/external \"core-js/modules/es6.array.map\"","webpack://lib/external \"core-js/modules/es6.date.to-string\"","webpack://lib/external \"core-js/modules/es6.object.assign\"","webpack://lib/external \"core-js/modules/es6.promise\"","webpack://lib/external \"core-js/modules/es6.regexp.constructor\"","webpack://lib/external \"core-js/modules/es6.regexp.split\"","webpack://lib/external \"core-js/modules/es6.regexp.to-string\"","webpack://lib/external \"core-js/modules/web.dom.iterable\"","webpack://lib/external \"lodash\"","webpack://lib/external \"react\"","webpack://lib/external \"react-dom/server\"","webpack://lib/external \"react-helmet\""],"names":["plugins","plugin","options","apis","module","exports","api","args","defaultReturn","argTransform","console","log","results","map","undefined","result","filter","length","replaceRenderer","onRenderBody","onPreRenderHTML","wrapPageElement","wrapRootElement","HTML","render","props","htmlAttributes","headComponents","bodyAttributes","preBodyComponents","__html","body","postBodyComponents","Component","propTypes","object","array","string","testRequireError","moduleName","err","regex","RegExp","firstLine","toString","split","test","Html","process","exit","__esModule","default","pagePath","callback","bodyProps","htmlStr","setHeadComponents","components","concat","setHtmlAttributes","attributes","setBodyAttributes","setPreBodyComponents","setPostBodyComponents","setBodyProps","getHeadComponents","replaceHeadComponents","getPreBodyComponents","replacePreBodyComponents","getPostBodyComponents","replacePostBodyComponents","apiRunner","htmlElement","createElement","StaticQueryContext","createContext","StaticQuery","staticQueryData","data","query","children","isRequired","func","graphql","Error","parsePath","path","pathname","search","hash","hashIndex","indexOf","substr","searchIndex","preferDefault","m","promiseResolvers","addListener","Promise","resolve","push","resolveRouteChangeListeners","forEach","r","window","location","___waitForRouteChange"],"mappings":"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CA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA,0B;;;;;;;;;;;AClBA;AACA;AACA;AACA;AACA;;AAEA,gC;;;;;;;;;;;ACNA;AACA;AACA;AACA;AACA;;AAEA,wC;;;;;;;;;;;ACNA;AACA;AACA;AACA;AACA;;AAEA,aAAa,uBAAuB;AACpC;AACA;AACA;AACA;;AAEA;AACA;;AAEA,+C;;;;;;;;;;;;ACfa;;AAEb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,6CAA6C;AAC7C;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,+B;;;;;;;;;;;;ACnCA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEa;;AAEb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA,IAAI,IAAqC;AACzC;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,qDAAqD;AACrD,KAAK;AACL;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;;AAEA,0BAA0B;AAC1B;AACA;AACA;;AAEA,2B;;;;;;;;;;;;ACpDA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEa;;AAEb,oBAAoB,mBAAO,CAAC,iEAAiB;;AAE7C;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA,IAAI,IAAqC;AACzC;AACA,sFAAsF,aAAa;AACnG;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA;;AAEA;AACA,aAAa;AACb;;AAEA;AACA,4FAA4F,eAAe;AAC3G;AACA;;AAEA;AACA;AACA;AACA;;AAEA,yB;;;;;;;;;;;;AC7Da;;AAEb,6BAA6B,mBAAO,CAAC,oHAA8C;;AAEnF;AACA;AACA;;AAEA,4DAA4D,mBAAO,CAAC,kIAAqD;;AAEzH,uCAAuC,mBAAO,CAAC,wFAAgC;;AAE/E,6CAA6C,mBAAO,CAAC,oGAAsC;;AAE3F,qDAAqD,mBAAO,CAAC,oHAA8C;;AAE3G,8CAA8C,mBAAO,CAAC,sGAAuC;;AAE7F,wCAAwC,mBAAO,CAAC,sDAAY;;AAE5D,oCAAoC,mBAAO,CAAC,oBAAO;;AAEnD,cAAc,mBAAO,CAAC,oCAAe;;AAErC,cAAc,mBAAO,CAAC,gDAAQ;;AAE9B;AACA;AACA,uBAAuB,EAAe;AACtC;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,GAAG,EAAE;;AAEL;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA,gDAAgD;;AAEhD;AACA;;AAEA;AACA;AACA;AACA,0CAA0C;AAC1C;AACA;;AAEA;AACA,KAAK;AACL;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,OAAO;AACP;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,6BAA6B;AAC7B;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,WAAW;AACX;;;AAGA;AACA;AACA,WAAW;AACX;;AAEA;AACA;AACA,KAAK;AACL;;AAEA;AACA,CAAC;;AAED,gDAAgD;AAChD;AACA;AACA;;AAEA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP,KAAK;AACL;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA,EAAE;;;AAGF;;AAEA;AACA;AACA;AACA;;AAEA,gC;;;;;;;;;;;;ACtPa;;AAEb,6BAA6B,mBAAO,CAAC,oHAA8C;;AAEnF,oCAAoC,mBAAO,CAAC,oBAAO;;AAEnD,cAAc,mBAAO,CAAC,gDAAQ;;AAE9B;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,GAAG;AACH,E;;;;;;;;;;;;AC7Ba;;AAEb,6BAA6B,mBAAO,CAAC,oHAA8C;;AAEnF,0CAA0C,mBAAO,CAAC,kCAAc;;AAEhE;AACA;AACA;AACA;;AAEA,mDAAmD;;;AAGnD;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,E;;;;;;;;;;;;ACvBA;AACA;AACA;AACA;AACA;;AAEa;AACb;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA,gCAAgC;AAChC;AACA;AACA;AACA;;AAEA;AACA;AACA,iBAAiB,QAAQ;AACzB;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH,kCAAkC;AAClC;AACA;AACA;;AAEA;AACA,EAAE;AACF;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,gBAAgB,sBAAsB;AACtC;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,kBAAkB,oBAAoB;AACtC;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;;;;;;;;;;;;ACzFA;AACA;AACA;AACA;AACA;AACA;;AAEa;;AAEb,IAAI,IAAqC;AACzC,kBAAkB,mBAAO,CAAC,gEAAoB;AAC9C,gBAAgB,mBAAO,CAAC,4DAAkB;AAC1C,6BAA6B,mBAAO,CAAC,yFAA4B;AACjE;AACA;;AAEA;AACA;AACA;AACA;AACA,WAAW,OAAO;AAClB,WAAW,OAAO;AAClB,WAAW,OAAO;AAClB,WAAW,OAAO;AAClB,WAAW,UAAU;AACrB;AACA;AACA;AACA,MAAM,IAAqC;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gGAAgG;AAChG;AACA,SAAS;AACT;AACA;AACA,gGAAgG;AAChG;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;;;;;;;;;;;;AC1DA;AACA;AACA;AACA;AACA;AACA;;AAEa;;AAEb,oBAAoB,mBAAO,CAAC,wEAAwB;AACpD,gBAAgB,mBAAO,CAAC,gEAAoB;AAC5C,cAAc,mBAAO,CAAC,4DAAkB;AACxC,aAAa,mBAAO,CAAC,4DAAe;;AAEpC,2BAA2B,mBAAO,CAAC,yFAA4B;AAC/D,qBAAqB,mBAAO,CAAC,qEAAkB;;AAE/C;AACA;AACA;AACA,0CAA0C;;AAE1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,QAAQ;AACrB,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV,6BAA6B;AAC7B,QAAQ;AACR;AACA;AACA;AACA;AACA,+BAA+B,KAAK;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,4BAA4B;AAC5B,OAAO;AACP;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,QAAQ,IAAqC;AAC7C;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,UAAU,aAAoB;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB,sBAAsB;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,MAAM,KAAqC,0FAA0F,SAAM;AAC3I;AACA;;AAEA;AACA;AACA,qBAAqB,2BAA2B;AAChD;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,MAAM,KAAqC,8FAA8F,SAAM;AAC/I;AACA;;AAEA,mBAAmB,gCAAgC;AACnD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,qBAAqB,gCAAgC;AACrD;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;;;;;;;;;;;AC7hBA;AACA;AACA;AACA;AACA;AACA;;AAEA,IAAI,IAAqC;AACzC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,mBAAmB,mBAAO,CAAC,uFAA2B;AACtD,CAAC,MAAM,EAIN;;;;;;;;;;;;;AC3BD;AACA;AACA;AACA;AACA;AACA;;AAEa;;AAEb;;AAEA;;;;;;;;;;;;ACXA,2D;;;;;;;;;;;ACAA,8E;;;;;;;;;;;ACAA,gF;;;;;;;;;;;ACAA,gF;;;;;;;;;;;ACAA,2E;;;;;;;;;;;ACAA,gF;;;;;;;;;;;ACAA,+E;;;;;;;;;;;ACAA,yE;;;;;;;;;;;ACAA,oF;;;;;;;;;;;ACAA,8E;;;;;;;;;;;ACAA,kF;;;;;;;;;;;ACAA,8E;;;;;;;;;;;ACAA,oD;;;;;;;;;;;ACAA,mD;;;;;;;;;;;ACAA,8D;;;;;;;;;;;ACAA,0D","file":"render-page.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"@reach/router\"), require(\"core-js/modules/es6.array.filter\"), require(\"core-js/modules/es6.array.for-each\"), require(\"core-js/modules/es6.array.index-of\"), require(\"core-js/modules/es6.array.map\"), require(\"core-js/modules/es6.date.to-string\"), require(\"core-js/modules/es6.object.assign\"), require(\"core-js/modules/es6.promise\"), require(\"core-js/modules/es6.regexp.constructor\"), require(\"core-js/modules/es6.regexp.split\"), require(\"core-js/modules/es6.regexp.to-string\"), require(\"core-js/modules/web.dom.iterable\"), require(\"lodash\"), require(\"react\"), require(\"react-dom/server\"), require(\"react-helmet\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine(\"lib\", [\"@reach/router\", \"core-js/modules/es6.array.filter\", \"core-js/modules/es6.array.for-each\", \"core-js/modules/es6.array.index-of\", \"core-js/modules/es6.array.map\", \"core-js/modules/es6.date.to-string\", \"core-js/modules/es6.object.assign\", \"core-js/modules/es6.promise\", \"core-js/modules/es6.regexp.constructor\", \"core-js/modules/es6.regexp.split\", \"core-js/modules/es6.regexp.to-string\", \"core-js/modules/web.dom.iterable\", \"lodash\", \"react\", \"react-dom/server\", \"react-helmet\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"lib\"] = factory(require(\"@reach/router\"), require(\"core-js/modules/es6.array.filter\"), require(\"core-js/modules/es6.array.for-each\"), require(\"core-js/modules/es6.array.index-of\"), require(\"core-js/modules/es6.array.map\"), require(\"core-js/modules/es6.date.to-string\"), require(\"core-js/modules/es6.object.assign\"), require(\"core-js/modules/es6.promise\"), require(\"core-js/modules/es6.regexp.constructor\"), require(\"core-js/modules/es6.regexp.split\"), require(\"core-js/modules/es6.regexp.to-string\"), require(\"core-js/modules/web.dom.iterable\"), require(\"lodash\"), require(\"react\"), require(\"react-dom/server\"), require(\"react-helmet\"));\n\telse\n\t\troot[\"lib\"] = factory(root[\"@reach/router\"], root[\"core-js/modules/es6.array.filter\"], root[\"core-js/modules/es6.array.for-each\"], root[\"core-js/modules/es6.array.index-of\"], root[\"core-js/modules/es6.array.map\"], root[\"core-js/modules/es6.date.to-string\"], root[\"core-js/modules/es6.object.assign\"], root[\"core-js/modules/es6.promise\"], root[\"core-js/modules/es6.regexp.constructor\"], root[\"core-js/modules/es6.regexp.split\"], root[\"core-js/modules/es6.regexp.to-string\"], root[\"core-js/modules/web.dom.iterable\"], root[\"lodash\"], root[\"react\"], root[\"react-dom/server\"], root[\"react-helmet\"]);\n})(this, function(__WEBPACK_EXTERNAL_MODULE__reach_router__, __WEBPACK_EXTERNAL_MODULE_core_js_modules_es6_array_filter__, __WEBPACK_EXTERNAL_MODULE_core_js_modules_es6_array_for_each__, __WEBPACK_EXTERNAL_MODULE_core_js_modules_es6_array_index_of__, __WEBPACK_EXTERNAL_MODULE_core_js_modules_es6_array_map__, __WEBPACK_EXTERNAL_MODULE_core_js_modules_es6_date_to_string__, __WEBPACK_EXTERNAL_MODULE_core_js_modules_es6_object_assign__, __WEBPACK_EXTERNAL_MODULE_core_js_modules_es6_promise__, __WEBPACK_EXTERNAL_MODULE_core_js_modules_es6_regexp_constructor__, __WEBPACK_EXTERNAL_MODULE_core_js_modules_es6_regexp_split__, __WEBPACK_EXTERNAL_MODULE_core_js_modules_es6_regexp_to_string__, __WEBPACK_EXTERNAL_MODULE_core_js_modules_web_dom_iterable__, __WEBPACK_EXTERNAL_MODULE_lodash__, __WEBPACK_EXTERNAL_MODULE_react__, __WEBPACK_EXTERNAL_MODULE_react_dom_server__, __WEBPACK_EXTERNAL_MODULE_react_helmet__) {\nreturn "," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = \"./.cache/develop-static-entry.js\");\n","var plugins = [{\n plugin: require('/Volumes/WORK/project/React/tango/node_modules/gatsby-plugin-react-helmet/gatsby-ssr'),\n options: {\"plugins\":[]},\n },{\n plugin: require('/Volumes/WORK/project/React/tango/node_modules/gatsby-plugin-manifest/gatsby-ssr'),\n options: {\"plugins\":[],\"name\":\"gatsby-starter-default\",\"short_name\":\"starter\",\"start_url\":\"/\",\"background_color\":\"#663399\",\"theme_color\":\"#663399\",\"display\":\"minimal-ui\",\"icon\":\"src/images/gatsby-icon.png\"},\n }]\n// During bootstrap, we write requires at top of this file which looks like:\n// var plugins = [\n// {\n// plugin: require(\"/path/to/plugin1/gatsby-ssr.js\"),\n// options: { ... },\n// },\n// {\n// plugin: require(\"/path/to/plugin2/gatsby-ssr.js\"),\n// options: { ... },\n// },\n// ]\n\nconst apis = require(`./api-ssr-docs`)\n\n// Run the specified API in any plugins that have implemented it\nmodule.exports = (api, args, defaultReturn, argTransform) => {\n if (!apis[api]) {\n console.log(`This API doesn't exist`, api)\n }\n\n // Run each plugin in series.\n // eslint-disable-next-line no-undef\n let results = plugins.map(plugin => {\n if (!plugin.plugin[api]) {\n return undefined\n }\n const result = plugin.plugin[api](args, plugin.options)\n if (result && argTransform) {\n args = argTransform({ args, result })\n }\n return result\n })\n\n // Filter out undefined results.\n results = results.filter(result => typeof result !== `undefined`)\n\n if (results.length > 0) {\n return results\n } else {\n return [defaultReturn]\n }\n}\n","/**\n * Replace the default server renderer. This is useful for integration with\n * Redux, css-in-js libraries, etc. that need custom setups for server\n * rendering.\n * @param {Object} $0\n * @param {function} $0.replaceBodyHTMLString Call this with the HTML string\n * you render. **WARNING** if multiple plugins implement this API it's the\n * last plugin that \"wins\". TODO implement an automated warning against this.\n * @param {function} $0.setHeadComponents Takes an array of components as its\n * first argument which are added to the `headComponents` array which is passed\n * to the `html.js` component.\n * @param {function} $0.setHtmlAttributes Takes an object of props which will\n * spread into the `` component.\n * @param {function} $0.setBodyAttributes Takes an object of props which will\n * spread into the `` component.\n * @param {function} $0.setPreBodyComponents Takes an array of components as its\n * first argument which are added to the `preBodyComponents` array which is passed\n * to the `html.js` component.\n * @param {function} $0.setPostBodyComponents Takes an array of components as its\n * first argument which are added to the `postBodyComponents` array which is passed\n * to the `html.js` component.\n * @param {function} $0.setBodyProps Takes an object of data which\n * is merged with other body props and passed to `html.js` as `bodyProps`.\n * @param {Object} pluginOptions\n * @example\n * // From gatsby-plugin-glamor\n * const { renderToString } = require(\"react-dom/server\")\n * const inline = require(\"glamor-inline\")\n *\n * exports.replaceRenderer = ({ bodyComponent, replaceBodyHTMLString }) => {\n * const bodyHTML = renderToString(bodyComponent)\n * const inlinedHTML = inline(bodyHTML)\n *\n * replaceBodyHTMLString(inlinedHTML)\n * }\n */\nexports.replaceRenderer = true\n\n/**\n * Called after every page Gatsby server renders while building HTML so you can\n * set head and body components to be rendered in your `html.js`.\n *\n * Gatsby does a two-pass render for HTML. It loops through your pages first\n * rendering only the body and then takes the result body HTML string and\n * passes it as the `body` prop to your `html.js` to complete the render.\n *\n * It's often handy to be able to send custom components to your `html.js`.\n * For example, it's a very common pattern for React.js libraries that\n * support server rendering to pull out data generated during the render to\n * add to your HTML.\n *\n * Using this API over [`replaceRenderer`](#replaceRenderer) is preferable as\n * multiple plugins can implement this API where only one plugin can take\n * over server rendering. However, if your plugin requires taking over server\n * rendering then that's the one to\n * use\n * @param {Object} $0\n * @param {string} $0.pathname The pathname of the page currently being rendered.\n * @param {function} $0.setHeadComponents Takes an array of components as its\n * first argument which are added to the `headComponents` array which is passed\n * to the `html.js` component.\n * @param {function} $0.setHtmlAttributes Takes an object of props which will\n * spread into the `` component.\n * @param {function} $0.setBodyAttributes Takes an object of props which will\n * spread into the `` component.\n * @param {function} $0.setPreBodyComponents Takes an array of components as its\n * first argument which are added to the `preBodyComponents` array which is passed\n * to the `html.js` component.\n * @param {function} $0.setPostBodyComponents Takes an array of components as its\n * first argument which are added to the `postBodyComponents` array which is passed\n * to the `html.js` component.\n * @param {function} $0.setBodyProps Takes an object of data which\n * is merged with other body props and passed to `html.js` as `bodyProps`.\n * @param {Object} pluginOptions\n * @example\n * const Helmet = require(\"react-helmet\")\n *\n * exports.onRenderBody = (\n * { setHeadComponents, setHtmlAttributes, setBodyAttributes },\n * pluginOptions\n * ) => {\n * const helmet = Helmet.renderStatic()\n * setHtmlAttributes(helmet.htmlAttributes.toComponent())\n * setBodyAttributes(helmet.bodyAttributes.toComponent())\n * setHeadComponents([\n * helmet.title.toComponent(),\n * helmet.link.toComponent(),\n * helmet.meta.toComponent(),\n * helmet.noscript.toComponent(),\n * helmet.script.toComponent(),\n * helmet.style.toComponent(),\n * ])\n * }\n */\nexports.onRenderBody = true\n\n/**\n * Called after every page Gatsby server renders while building HTML so you can\n * replace head components to be rendered in your `html.js`. This is useful if\n * you need to reorder scripts or styles added by other plugins.\n * @param {Object} $0\n * @param {Array} $0.getHeadComponents Returns the current `headComponents` array.\n * @param {function} $0.replaceHeadComponents Takes an array of components as its\n * first argument which replace the `headComponents` array which is passed\n * to the `html.js` component. **WARNING** if multiple plugins implement this\n * API it's the last plugin that \"wins\".\n * @param {Array} $0.getPreBodyComponents Returns the current `preBodyComponents` array.\n * @param {function} $0.replacePreBodyComponents Takes an array of components as its\n * first argument which replace the `preBodyComponents` array which is passed\n * to the `html.js` component. **WARNING** if multiple plugins implement this\n * API it's the last plugin that \"wins\".\n * @param {Array} $0.getPostBodyComponents Returns the current `postBodyComponents` array.\n * @param {function} $0.replacePostBodyComponents Takes an array of components as its\n * first argument which replace the `postBodyComponents` array which is passed\n * to the `html.js` component. **WARNING** if multiple plugins implement this\n * API it's the last plugin that \"wins\".\n * @param {Object} pluginOptions\n * @example\n * // Move Typography.js styles to the top of the head section so they're loaded first.\n * exports.onPreRenderHTML = ({ getHeadComponents, replaceHeadComponents }) => {\n * const headComponents = getHeadComponents()\n * headComponents.sort((x, y) => {\n * if (x.key === 'TypographyStyle') {\n * return -1\n * } else if (y.key === 'TypographyStyle') {\n * return 1\n * }\n * return 0\n * })\n * replaceHeadComponents(headComponents)\n * }\n */\nexports.onPreRenderHTML = true\n\n/**\n * Allow a plugin to wrap the page element.\n *\n * This is useful for setting wrapper component around pages that won't get\n * unmounted on page change. For setting Provider components use [wrapRootElement](#wrapRootElement).\n *\n * _Note:_ [There is equivalent hook in Browser API](/docs/browser-apis/#wrapPageElement)\n * @param {object} $0\n * @param {object} $0.element The \"Page\" React Element built by Gatsby.\n * @param {object} $0.props Props object used by page.\n * @example\n * import React from \"react\"\n * import Layout from \"./src/components/Layout\"\n *\n * export const wrapPageElement = ({ element, props }) => {\n * // props provide same data to Layout as Page element will get\n * // including location, data, etc - you don't need to pass it\n * return {element}\n * }\n */\nexports.wrapPageElement = true\n\n/**\n * Allow a plugin to wrap the root element.\n *\n * This is useful to setup any Providers component that will wrap your application.\n * For setting persistent UI elements around pages use [wrapPageElement](#wrapPageElement).\n *\n * _Note:_ [There is equivalent hook in Browser API](/docs/browser-apis/#wrapRootElement)\n * @param {object} $0\n * @param {object} $0.element The \"Root\" React Element built by Gatsby.\n * @example\n * import React from \"react\"\n * import { Provider } from \"react-redux\"\n *\n * import createStore from \"./src/state/createStore\"\n * const store = createStore()\n *\n * export const wrapRootElement = ({ element }) => {\n * return (\n * \n * {element}\n * \n * )\n * }\n */\nexports.wrapRootElement = true\n","import React from \"react\"\nimport PropTypes from \"prop-types\"\n\nexport default class HTML extends React.Component {\n render() {\n return (\n \n \n \n \n \n {this.props.headComponents}\n \n \n {this.props.preBodyComponents}\n \n {this.props.postBodyComponents}\n \n \n )\n }\n}\n\nHTML.propTypes = {\n htmlAttributes: PropTypes.object,\n headComponents: PropTypes.array,\n bodyAttributes: PropTypes.object,\n preBodyComponents: PropTypes.array,\n body: PropTypes.string,\n postBodyComponents: PropTypes.array,\n}\n","import React from \"react\"\nimport { renderToStaticMarkup } from \"react-dom/server\"\nimport { merge } from \"lodash\"\nimport apiRunner from \"./api-runner-ssr\"\n// import testRequireError from \"./test-require-error\"\n// For some extremely mysterious reason, webpack adds the above module *after*\n// this module so that when this code runs, testRequireError is undefined.\n// So in the meantime, we'll just inline it.\nconst testRequireError = (moduleName, err) => {\n const regex = new RegExp(`Error: Cannot find module\\\\s.${moduleName}`)\n const firstLine = err.toString().split(`\\n`)[0]\n return regex.test(firstLine)\n}\n\nlet Html\ntry {\n Html = require(`../src/html`)\n} catch (err) {\n if (testRequireError(`../src/html`, err)) {\n Html = require(`./default-html`)\n } else {\n console.log(`There was an error requiring \"src/html.js\"\\n\\n`, err, `\\n\\n`)\n process.exit()\n }\n}\n\nHtml = Html && Html.__esModule ? Html.default : Html\n\nexport default (pagePath, callback) => {\n let headComponents = []\n let htmlAttributes = {}\n let bodyAttributes = {}\n let preBodyComponents = []\n let postBodyComponents = []\n let bodyProps = {}\n let htmlStr\n\n const setHeadComponents = components => {\n headComponents = headComponents.concat(components)\n }\n\n const setHtmlAttributes = attributes => {\n htmlAttributes = merge(htmlAttributes, attributes)\n }\n\n const setBodyAttributes = attributes => {\n bodyAttributes = merge(bodyAttributes, attributes)\n }\n\n const setPreBodyComponents = components => {\n preBodyComponents = preBodyComponents.concat(components)\n }\n\n const setPostBodyComponents = components => {\n postBodyComponents = postBodyComponents.concat(components)\n }\n\n const setBodyProps = props => {\n bodyProps = merge({}, bodyProps, props)\n }\n\n const getHeadComponents = () => headComponents\n\n const replaceHeadComponents = components => {\n headComponents = components\n }\n\n const getPreBodyComponents = () => preBodyComponents\n\n const replacePreBodyComponents = components => {\n preBodyComponents = components\n }\n\n const getPostBodyComponents = () => postBodyComponents\n\n const replacePostBodyComponents = components => {\n postBodyComponents = components\n }\n\n apiRunner(`onRenderBody`, {\n setHeadComponents,\n setHtmlAttributes,\n setBodyAttributes,\n setPreBodyComponents,\n setPostBodyComponents,\n setBodyProps,\n })\n\n apiRunner(`onPreRenderHTML`, {\n getHeadComponents,\n replaceHeadComponents,\n getPreBodyComponents,\n replacePreBodyComponents,\n getPostBodyComponents,\n replacePostBodyComponents,\n })\n\n const htmlElement = React.createElement(Html, {\n ...bodyProps,\n body: ``,\n headComponents: headComponents.concat([\n ,\n ]),\n preBodyComponents,\n postBodyComponents: postBodyComponents.concat([\n ,\n ]),\n })\n htmlStr = renderToStaticMarkup(htmlElement)\n htmlStr = `${htmlStr}`\n\n callback(null, htmlStr)\n}\n","import React from \"react\"\nimport PropTypes from \"prop-types\"\nimport Link, {\n withPrefix,\n navigate,\n push,\n replace,\n navigateTo,\n} from \"gatsby-link\"\nimport { addListener as waitForRouteChange } from \"./wait-for-route-change\"\nimport PageRenderer from \"./public-page-renderer\"\nimport parsePath from \"./parse-path\"\n\nconst StaticQueryContext = React.createContext({})\n\nconst StaticQuery = props => (\n \n {staticQueryData => {\n if (\n props.data ||\n (staticQueryData[props.query] && staticQueryData[props.query].data)\n ) {\n return (props.render || props.children)(\n props.data ? props.data.data : staticQueryData[props.query].data\n )\n } else {\n return
Loading (StaticQuery)
\n }\n }}\n \n)\n\nStaticQuery.propTypes = {\n data: PropTypes.object,\n query: PropTypes.string.isRequired,\n render: PropTypes.func,\n children: PropTypes.func,\n}\n\nfunction graphql() {\n throw new Error(\n `It appears like Gatsby is misconfigured. Gatsby related \\`graphql\\` calls ` +\n `are supposed to only be evaluated at compile time, and then compiled away,. ` +\n `Unfortunately, something went wrong and the query was left in the compiled code.\\n\\n.` +\n `Unless your site has a complex or custom babel/Gatsby configuration this is likely a bug in Gatsby.`\n )\n}\n\nexport {\n Link,\n withPrefix,\n graphql,\n parsePath,\n navigate,\n push, // TODO replace for v3\n replace, // TODO remove replace for v3\n navigateTo, // TODO: remove navigateTo for v3\n StaticQueryContext,\n StaticQuery,\n PageRenderer,\n waitForRouteChange,\n}\n","export default function parsePath(path) {\n var pathname = path || `/`\n var search = ``\n var hash = ``\n\n var hashIndex = pathname.indexOf(`#`)\n if (hashIndex !== -1) {\n hash = pathname.substr(hashIndex)\n pathname = pathname.substr(0, hashIndex)\n }\n\n var searchIndex = pathname.indexOf(`?`)\n if (searchIndex !== -1) {\n search = pathname.substr(searchIndex)\n pathname = pathname.substr(0, searchIndex)\n }\n\n return {\n pathname: pathname,\n search: search === `?` ? `` : search,\n hash: hash === `#` ? `` : hash,\n }\n}\n","const preferDefault = m => (m && m.default) || m\n\nif (process.env.BUILD_STAGE === `develop`) {\n module.exports = preferDefault(require(`./public-page-renderer-dev`))\n} else if (process.env.BUILD_STAGE === `build-javascript`) {\n module.exports = preferDefault(require(`./public-page-renderer-prod`))\n} else {\n module.exports = () => null\n}\n","let promiseResolvers = []\n\nconst addListener = () =>\n new Promise(resolve => {\n promiseResolvers.push(resolve)\n })\n\nconst resolveRouteChangeListeners = () => {\n promiseResolvers.forEach(r => r(window.location))\n promiseResolvers = []\n}\n\n// We need to set this function on the window\n// so it's accessible to Cypress for tests.\nif (typeof window !== `undefined`) {\n window.___waitForRouteChange = addListener\n}\n\nexport { addListener, resolveRouteChangeListeners }\n","function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n}\n\nmodule.exports = _assertThisInitialized;","function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nmodule.exports = _defineProperty;","function _extends() {\n module.exports = _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}\n\nmodule.exports = _extends;","function _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n subClass.__proto__ = superClass;\n}\n\nmodule.exports = _inheritsLoose;","function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n}\n\nmodule.exports = _interopRequireDefault;","function _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n return target;\n}\n\nmodule.exports = _objectWithoutPropertiesLoose;","\"use strict\";\n\n/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * \n */\n\nfunction makeEmptyFunction(arg) {\n return function () {\n return arg;\n };\n}\n\n/**\n * This function accepts and discards inputs; it has no side effects. This is\n * primarily useful idiomatically for overridable function endpoints which\n * always need to be callable, since JS lacks a null-call idiom ala Cocoa.\n */\nvar emptyFunction = function emptyFunction() {};\n\nemptyFunction.thatReturns = makeEmptyFunction;\nemptyFunction.thatReturnsFalse = makeEmptyFunction(false);\nemptyFunction.thatReturnsTrue = makeEmptyFunction(true);\nemptyFunction.thatReturnsNull = makeEmptyFunction(null);\nemptyFunction.thatReturnsThis = function () {\n return this;\n};\nemptyFunction.thatReturnsArgument = function (arg) {\n return arg;\n};\n\nmodule.exports = emptyFunction;","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n */\n\n'use strict';\n\n/**\n * Use invariant() to assert state which your program assumes to be true.\n *\n * Provide sprintf-style format (only %s is supported) and arguments\n * to provide information about what broke and what you were\n * expecting.\n *\n * The invariant message will be stripped in production, but the invariant\n * will remain to ensure logic does not differ in production.\n */\n\nvar validateFormat = function validateFormat(format) {};\n\nif (process.env.NODE_ENV !== 'production') {\n validateFormat = function validateFormat(format) {\n if (format === undefined) {\n throw new Error('invariant requires an error message argument');\n }\n };\n}\n\nfunction invariant(condition, format, a, b, c, d, e, f) {\n validateFormat(format);\n\n if (!condition) {\n var error;\n if (format === undefined) {\n error = new Error('Minified exception occurred; use the non-minified dev environment ' + 'for the full error message and additional helpful warnings.');\n } else {\n var args = [a, b, c, d, e, f];\n var argIndex = 0;\n error = new Error(format.replace(/%s/g, function () {\n return args[argIndex++];\n }));\n error.name = 'Invariant Violation';\n }\n\n error.framesToPop = 1; // we don't care about invariant's own frame\n throw error;\n }\n}\n\nmodule.exports = invariant;","/**\n * Copyright (c) 2014-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n */\n\n'use strict';\n\nvar emptyFunction = require('./emptyFunction');\n\n/**\n * Similar to invariant but only logs a warning if the condition is not met.\n * This can be used to log issues in development environments in critical\n * paths. Removing the logging code for production environments will keep the\n * same logic and follow the same code paths.\n */\n\nvar warning = emptyFunction;\n\nif (process.env.NODE_ENV !== 'production') {\n var printWarning = function printWarning(format) {\n for (var _len = arguments.length, args = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n var argIndex = 0;\n var message = 'Warning: ' + format.replace(/%s/g, function () {\n return args[argIndex++];\n });\n if (typeof console !== 'undefined') {\n console.error(message);\n }\n try {\n // --- Welcome to debugging React ---\n // This error was thrown as a convenience so that you can use this stack\n // to find the callsite that caused this warning to fire.\n throw new Error(message);\n } catch (x) {}\n };\n\n warning = function warning(condition, format) {\n if (format === undefined) {\n throw new Error('`warning(condition, format, ...args)` requires a warning ' + 'message argument');\n }\n\n if (format.indexOf('Failed Composite propType: ') === 0) {\n return; // Ignore CompositeComponent proptype check.\n }\n\n if (!condition) {\n for (var _len2 = arguments.length, args = Array(_len2 > 2 ? _len2 - 2 : 0), _key2 = 2; _key2 < _len2; _key2++) {\n args[_key2 - 2] = arguments[_key2];\n }\n\n printWarning.apply(undefined, [format].concat(args));\n }\n };\n}\n\nmodule.exports = warning;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nexports.__esModule = true;\nexports.withPrefix = withPrefix;\nexports.navigateTo = exports.replace = exports.push = exports.navigate = exports.default = void 0;\n\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(require(\"@babel/runtime/helpers/objectWithoutPropertiesLoose\"));\n\nvar _extends2 = _interopRequireDefault(require(\"@babel/runtime/helpers/extends\"));\n\nvar _inheritsLoose2 = _interopRequireDefault(require(\"@babel/runtime/helpers/inheritsLoose\"));\n\nvar _assertThisInitialized2 = _interopRequireDefault(require(\"@babel/runtime/helpers/assertThisInitialized\"));\n\nvar _defineProperty2 = _interopRequireDefault(require(\"@babel/runtime/helpers/defineProperty\"));\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _react = _interopRequireDefault(require(\"react\"));\n\nvar _router = require(\"@reach/router\");\n\nvar _gatsby = require(\"gatsby\");\n\n/*global __PATH_PREFIX__ */\nfunction withPrefix(path) {\n return normalizePath(__PATH_PREFIX__ + \"/\" + path);\n}\n\nfunction normalizePath(path) {\n return path.replace(/\\/+/g, \"/\");\n}\n\nvar NavLinkPropTypes = {\n activeClassName: _propTypes.default.string,\n activeStyle: _propTypes.default.object // Set up IntersectionObserver\n\n};\n\nvar handleIntersection = function handleIntersection(el, cb) {\n var io = new window.IntersectionObserver(function (entries) {\n entries.forEach(function (entry) {\n if (el === entry.target) {\n // Check if element is within viewport, remove listener, destroy observer, and run link callback.\n // MSEdge doesn't currently support isIntersecting, so also test for an intersectionRatio > 0\n if (entry.isIntersecting || entry.intersectionRatio > 0) {\n io.unobserve(el);\n io.disconnect();\n cb();\n }\n }\n });\n }); // Add element to the observer\n\n io.observe(el);\n};\n\nvar GatsbyLink =\n/*#__PURE__*/\nfunction (_React$Component) {\n (0, _inheritsLoose2.default)(GatsbyLink, _React$Component);\n\n function GatsbyLink(props) {\n var _this;\n\n _this = _React$Component.call(this) || this; // Default to no support for IntersectionObserver\n\n (0, _defineProperty2.default)((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this)), \"defaultGetProps\", function (_ref) {\n var isCurrent = _ref.isCurrent;\n\n if (isCurrent) {\n return {\n className: [_this.props.className, _this.props.activeClassName].filter(Boolean).join(\" \"),\n style: (0, _extends2.default)({}, _this.props.style, _this.props.activeStyle)\n };\n }\n\n return null;\n });\n var IOSupported = false;\n\n if (typeof window !== \"undefined\" && window.IntersectionObserver) {\n IOSupported = true;\n }\n\n var location = props.location;\n _this.state = {\n IOSupported: IOSupported,\n location: location\n };\n _this.handleRef = _this.handleRef.bind((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this)));\n return _this;\n }\n\n var _proto = GatsbyLink.prototype;\n\n _proto.componentDidUpdate = function componentDidUpdate(prevProps, prevState) {\n // Preserve non IO functionality if no support\n if (this.props.to !== prevProps.to && !this.state.IOSupported) {\n ___loader.enqueue((0, _gatsby.parsePath)(this.props.to).pathname);\n }\n };\n\n _proto.componentDidMount = function componentDidMount() {\n // Preserve non IO functionality if no support\n if (!this.state.IOSupported) {\n ___loader.enqueue((0, _gatsby.parsePath)(this.props.to).pathname);\n }\n };\n\n _proto.handleRef = function handleRef(ref) {\n var _this2 = this;\n\n this.props.innerRef && this.props.innerRef(ref);\n\n if (this.state.IOSupported && ref) {\n // If IO supported and element reference found, setup Observer functionality\n handleIntersection(ref, function () {\n ___loader.enqueue((0, _gatsby.parsePath)(_this2.props.to).pathname);\n });\n }\n };\n\n _proto.render = function render() {\n var _this3 = this;\n\n var _this$props = this.props,\n to = _this$props.to,\n _this$props$getProps = _this$props.getProps,\n getProps = _this$props$getProps === void 0 ? this.defaultGetProps : _this$props$getProps,\n _onClick = _this$props.onClick,\n _onMouseEnter = _this$props.onMouseEnter,\n location = _this$props.location,\n $activeClassName = _this$props.activeClassName,\n $activeStyle = _this$props.activeStyle,\n $ref = _this$props.ref,\n $innerRef = _this$props.innerRef,\n state = _this$props.state,\n rest = (0, _objectWithoutPropertiesLoose2.default)(_this$props, [\"to\", \"getProps\", \"onClick\", \"onMouseEnter\", \"location\", \"activeClassName\", \"activeStyle\", \"ref\", \"innerRef\", \"state\"]);\n var prefixedTo = withPrefix(to);\n return _react.default.createElement(_router.Link, (0, _extends2.default)({\n to: prefixedTo,\n state: state,\n getProps: getProps,\n innerRef: this.handleRef,\n onMouseEnter: function onMouseEnter(e) {\n // eslint-disable-line\n _onMouseEnter && _onMouseEnter(e);\n\n ___loader.hovering((0, _gatsby.parsePath)(to).pathname);\n },\n onClick: function onClick(e) {\n // eslint-disable-line\n _onClick && _onClick(e);\n\n if (e.button === 0 && // ignore right clicks\n !_this3.props.target && // let browser handle \"target=_blank\"\n !e.defaultPrevented && // onClick prevented default\n !e.metaKey && // ignore clicks with modifier keys...\n !e.altKey && !e.ctrlKey && !e.shiftKey) {\n e.preventDefault(); // Is this link pointing to a hash on the same page? If so,\n // just scroll there.\n\n var _parsePath = (0, _gatsby.parsePath)(prefixedTo),\n pathname = _parsePath.pathname,\n hash = _parsePath.hash;\n\n if (pathname === location.pathname || !pathname) {\n var element = hash ? document.getElementById(hash.substr(1)) : null;\n\n if (element !== null) {\n element.scrollIntoView();\n } else {\n // This is just a normal link to the current page so let's emulate default\n // browser behavior by scrolling now to the top of the page.\n window.scrollTo(0, 0);\n }\n } // Make sure the necessary scripts and data are\n // loaded before continuing.\n\n\n navigate(prefixedTo, {\n state: state\n });\n }\n\n return true;\n }\n }, rest));\n };\n\n return GatsbyLink;\n}(_react.default.Component);\n\nGatsbyLink.propTypes = (0, _extends2.default)({}, NavLinkPropTypes, {\n innerRef: _propTypes.default.func,\n onClick: _propTypes.default.func,\n to: _propTypes.default.string.isRequired // eslint-disable-next-line react/display-name\n\n});\n\nvar withLocation = function withLocation(Comp) {\n return function (props) {\n return _react.default.createElement(_router.Location, null, function (_ref2) {\n var location = _ref2.location;\n return _react.default.createElement(Comp, (0, _extends2.default)({\n location: location\n }, props));\n });\n };\n};\n\nvar _default = withLocation(GatsbyLink);\n\nexports.default = _default;\n\nvar navigate = function navigate(to, options) {\n window.___navigate(to, options);\n};\n\nexports.navigate = navigate;\n\nvar push = function push(to) {\n console.warn(\"The \\\"push\\\" method is now deprecated and will be removed in Gatsby v3. Please use \\\"navigate\\\" instead.\");\n\n window.___push(to);\n};\n\nexports.push = push;\n\nvar replace = function replace(to) {\n console.warn(\"The \\\"replace\\\" method is now deprecated and will be removed in Gatsby v3. Please use \\\"navigate\\\" instead.\");\n\n window.___replace(to);\n}; // TODO: Remove navigateTo for Gatsby v3\n\n\nexports.replace = replace;\n\nvar navigateTo = function navigateTo(to) {\n console.warn(\"The \\\"navigateTo\\\" method is now deprecated and will be removed in Gatsby v3. Please use \\\"push\\\" instead.\");\n return push(to);\n};\n\nexports.navigateTo = navigateTo;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nvar _react = _interopRequireDefault(require(\"react\"));\n\nvar _gatsby = require(\"gatsby\");\n\nexports.onRenderBody = function (_ref, pluginOptions) {\n var setHeadComponents = _ref.setHeadComponents;\n\n // If icons were generated, also add a favicon link.\n if (pluginOptions.icon) {\n setHeadComponents([_react.default.createElement(\"link\", {\n key: \"gatsby-plugin-manifest-icon-link\",\n rel: \"shortcut icon\",\n href: (0, _gatsby.withPrefix)(\"/icons/icon-48x48.png\")\n })]);\n }\n\n setHeadComponents([_react.default.createElement(\"link\", {\n key: \"gatsby-plugin-manifest-link\",\n rel: \"manifest\",\n href: (0, _gatsby.withPrefix)(\"/manifest.webmanifest\")\n }), _react.default.createElement(\"meta\", {\n key: \"gatsby-plugin-manifest-meta\",\n name: \"theme-color\",\n content: pluginOptions.theme_color\n })]);\n};","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nvar _reactHelmet = _interopRequireDefault(require(\"react-helmet\"));\n\nexports.onRenderBody = function (_ref, pluginOptions) {\n var setHeadComponents = _ref.setHeadComponents,\n setHtmlAttributes = _ref.setHtmlAttributes,\n setBodyAttributes = _ref.setBodyAttributes;\n\n var helmet = _reactHelmet.default.renderStatic(); // These action functions were added partway through the Gatsby 1.x cycle.\n\n\n if (setHtmlAttributes) {\n setHtmlAttributes(helmet.htmlAttributes.toComponent());\n }\n\n if (setBodyAttributes) {\n setBodyAttributes(helmet.bodyAttributes.toComponent());\n }\n\n setHeadComponents([helmet.title.toComponent(), helmet.link.toComponent(), helmet.meta.toComponent(), helmet.noscript.toComponent(), helmet.script.toComponent(), helmet.style.toComponent()]);\n};","/*\nobject-assign\n(c) Sindre Sorhus\n@license MIT\n*/\n\n'use strict';\n/* eslint-disable no-unused-vars */\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nvar propIsEnumerable = Object.prototype.propertyIsEnumerable;\n\nfunction toObject(val) {\n\tif (val === null || val === undefined) {\n\t\tthrow new TypeError('Object.assign cannot be called with null or undefined');\n\t}\n\n\treturn Object(val);\n}\n\nfunction shouldUseNative() {\n\ttry {\n\t\tif (!Object.assign) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Detect buggy property enumeration order in older V8 versions.\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=4118\n\t\tvar test1 = new String('abc'); // eslint-disable-line no-new-wrappers\n\t\ttest1[5] = 'de';\n\t\tif (Object.getOwnPropertyNames(test1)[0] === '5') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test2 = {};\n\t\tfor (var i = 0; i < 10; i++) {\n\t\t\ttest2['_' + String.fromCharCode(i)] = i;\n\t\t}\n\t\tvar order2 = Object.getOwnPropertyNames(test2).map(function (n) {\n\t\t\treturn test2[n];\n\t\t});\n\t\tif (order2.join('') !== '0123456789') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test3 = {};\n\t\t'abcdefghijklmnopqrst'.split('').forEach(function (letter) {\n\t\t\ttest3[letter] = letter;\n\t\t});\n\t\tif (Object.keys(Object.assign({}, test3)).join('') !==\n\t\t\t\t'abcdefghijklmnopqrst') {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn true;\n\t} catch (err) {\n\t\t// We don't expect any of the above to throw, but better to be safe.\n\t\treturn false;\n\t}\n}\n\nmodule.exports = shouldUseNative() ? Object.assign : function (target, source) {\n\tvar from;\n\tvar to = toObject(target);\n\tvar symbols;\n\n\tfor (var s = 1; s < arguments.length; s++) {\n\t\tfrom = Object(arguments[s]);\n\n\t\tfor (var key in from) {\n\t\t\tif (hasOwnProperty.call(from, key)) {\n\t\t\t\tto[key] = from[key];\n\t\t\t}\n\t\t}\n\n\t\tif (getOwnPropertySymbols) {\n\t\t\tsymbols = getOwnPropertySymbols(from);\n\t\t\tfor (var i = 0; i < symbols.length; i++) {\n\t\t\t\tif (propIsEnumerable.call(from, symbols[i])) {\n\t\t\t\t\tto[symbols[i]] = from[symbols[i]];\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn to;\n};\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nif (process.env.NODE_ENV !== 'production') {\n var invariant = require('fbjs/lib/invariant');\n var warning = require('fbjs/lib/warning');\n var ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\n var loggedTypeFailures = {};\n}\n\n/**\n * Assert that the values match with the type specs.\n * Error messages are memorized and will only be shown once.\n *\n * @param {object} typeSpecs Map of name to a ReactPropType\n * @param {object} values Runtime values that need to be type-checked\n * @param {string} location e.g. \"prop\", \"context\", \"child context\"\n * @param {string} componentName Name of the component for error messages.\n * @param {?Function} getStack Returns the component stack.\n * @private\n */\nfunction checkPropTypes(typeSpecs, values, location, componentName, getStack) {\n if (process.env.NODE_ENV !== 'production') {\n for (var typeSpecName in typeSpecs) {\n if (typeSpecs.hasOwnProperty(typeSpecName)) {\n var error;\n // Prop type validation may throw. In case they do, we don't want to\n // fail the render phase where it didn't fail before. So we log it.\n // After these have been cleaned up, we'll let them throw.\n try {\n // This is intentionally an invariant that gets caught. It's the same\n // behavior as without this statement except with a better message.\n invariant(typeof typeSpecs[typeSpecName] === 'function', '%s: %s type `%s` is invalid; it must be a function, usually from ' + 'the `prop-types` package, but received `%s`.', componentName || 'React class', location, typeSpecName, typeof typeSpecs[typeSpecName]);\n error = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, ReactPropTypesSecret);\n } catch (ex) {\n error = ex;\n }\n warning(!error || error instanceof Error, '%s: type specification of %s `%s` is invalid; the type checker ' + 'function must return `null` or an `Error` but returned a %s. ' + 'You may have forgotten to pass an argument to the type checker ' + 'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' + 'shape all require an argument).', componentName || 'React class', location, typeSpecName, typeof error);\n if (error instanceof Error && !(error.message in loggedTypeFailures)) {\n // Only monitor this failure once because there tends to be a lot of the\n // same error.\n loggedTypeFailures[error.message] = true;\n\n var stack = getStack ? getStack() : '';\n\n warning(false, 'Failed %s type: %s%s', location, error.message, stack != null ? stack : '');\n }\n }\n }\n }\n}\n\nmodule.exports = checkPropTypes;\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar emptyFunction = require('fbjs/lib/emptyFunction');\nvar invariant = require('fbjs/lib/invariant');\nvar warning = require('fbjs/lib/warning');\nvar assign = require('object-assign');\n\nvar ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\nvar checkPropTypes = require('./checkPropTypes');\n\nmodule.exports = function(isValidElement, throwOnDirectAccess) {\n /* global Symbol */\n var ITERATOR_SYMBOL = typeof Symbol === 'function' && Symbol.iterator;\n var FAUX_ITERATOR_SYMBOL = '@@iterator'; // Before Symbol spec.\n\n /**\n * Returns the iterator method function contained on the iterable object.\n *\n * Be sure to invoke the function with the iterable as context:\n *\n * var iteratorFn = getIteratorFn(myIterable);\n * if (iteratorFn) {\n * var iterator = iteratorFn.call(myIterable);\n * ...\n * }\n *\n * @param {?object} maybeIterable\n * @return {?function}\n */\n function getIteratorFn(maybeIterable) {\n var iteratorFn = maybeIterable && (ITERATOR_SYMBOL && maybeIterable[ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL]);\n if (typeof iteratorFn === 'function') {\n return iteratorFn;\n }\n }\n\n /**\n * Collection of methods that allow declaration and validation of props that are\n * supplied to React components. Example usage:\n *\n * var Props = require('ReactPropTypes');\n * var MyArticle = React.createClass({\n * propTypes: {\n * // An optional string prop named \"description\".\n * description: Props.string,\n *\n * // A required enum prop named \"category\".\n * category: Props.oneOf(['News','Photos']).isRequired,\n *\n * // A prop named \"dialog\" that requires an instance of Dialog.\n * dialog: Props.instanceOf(Dialog).isRequired\n * },\n * render: function() { ... }\n * });\n *\n * A more formal specification of how these methods are used:\n *\n * type := array|bool|func|object|number|string|oneOf([...])|instanceOf(...)\n * decl := ReactPropTypes.{type}(.isRequired)?\n *\n * Each and every declaration produces a function with the same signature. This\n * allows the creation of custom validation functions. For example:\n *\n * var MyLink = React.createClass({\n * propTypes: {\n * // An optional string or URI prop named \"href\".\n * href: function(props, propName, componentName) {\n * var propValue = props[propName];\n * if (propValue != null && typeof propValue !== 'string' &&\n * !(propValue instanceof URI)) {\n * return new Error(\n * 'Expected a string or an URI for ' + propName + ' in ' +\n * componentName\n * );\n * }\n * }\n * },\n * render: function() {...}\n * });\n *\n * @internal\n */\n\n var ANONYMOUS = '<>';\n\n // Important!\n // Keep this list in sync with production version in `./factoryWithThrowingShims.js`.\n var ReactPropTypes = {\n array: createPrimitiveTypeChecker('array'),\n bool: createPrimitiveTypeChecker('boolean'),\n func: createPrimitiveTypeChecker('function'),\n number: createPrimitiveTypeChecker('number'),\n object: createPrimitiveTypeChecker('object'),\n string: createPrimitiveTypeChecker('string'),\n symbol: createPrimitiveTypeChecker('symbol'),\n\n any: createAnyTypeChecker(),\n arrayOf: createArrayOfTypeChecker,\n element: createElementTypeChecker(),\n instanceOf: createInstanceTypeChecker,\n node: createNodeChecker(),\n objectOf: createObjectOfTypeChecker,\n oneOf: createEnumTypeChecker,\n oneOfType: createUnionTypeChecker,\n shape: createShapeTypeChecker,\n exact: createStrictShapeTypeChecker,\n };\n\n /**\n * inlined Object.is polyfill to avoid requiring consumers ship their own\n * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is\n */\n /*eslint-disable no-self-compare*/\n function is(x, y) {\n // SameValue algorithm\n if (x === y) {\n // Steps 1-5, 7-10\n // Steps 6.b-6.e: +0 != -0\n return x !== 0 || 1 / x === 1 / y;\n } else {\n // Step 6.a: NaN == NaN\n return x !== x && y !== y;\n }\n }\n /*eslint-enable no-self-compare*/\n\n /**\n * We use an Error-like object for backward compatibility as people may call\n * PropTypes directly and inspect their output. However, we don't use real\n * Errors anymore. We don't inspect their stack anyway, and creating them\n * is prohibitively expensive if they are created too often, such as what\n * happens in oneOfType() for any type before the one that matched.\n */\n function PropTypeError(message) {\n this.message = message;\n this.stack = '';\n }\n // Make `instanceof Error` still work for returned errors.\n PropTypeError.prototype = Error.prototype;\n\n function createChainableTypeChecker(validate) {\n if (process.env.NODE_ENV !== 'production') {\n var manualPropTypeCallCache = {};\n var manualPropTypeWarningCount = 0;\n }\n function checkType(isRequired, props, propName, componentName, location, propFullName, secret) {\n componentName = componentName || ANONYMOUS;\n propFullName = propFullName || propName;\n\n if (secret !== ReactPropTypesSecret) {\n if (throwOnDirectAccess) {\n // New behavior only for users of `prop-types` package\n invariant(\n false,\n 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n 'Use `PropTypes.checkPropTypes()` to call them. ' +\n 'Read more at http://fb.me/use-check-prop-types'\n );\n } else if (process.env.NODE_ENV !== 'production' && typeof console !== 'undefined') {\n // Old behavior for people using React.PropTypes\n var cacheKey = componentName + ':' + propName;\n if (\n !manualPropTypeCallCache[cacheKey] &&\n // Avoid spamming the console because they are often not actionable except for lib authors\n manualPropTypeWarningCount < 3\n ) {\n warning(\n false,\n 'You are manually calling a React.PropTypes validation ' +\n 'function for the `%s` prop on `%s`. This is deprecated ' +\n 'and will throw in the standalone `prop-types` package. ' +\n 'You may be seeing this warning due to a third-party PropTypes ' +\n 'library. See https://fb.me/react-warning-dont-call-proptypes ' + 'for details.',\n propFullName,\n componentName\n );\n manualPropTypeCallCache[cacheKey] = true;\n manualPropTypeWarningCount++;\n }\n }\n }\n if (props[propName] == null) {\n if (isRequired) {\n if (props[propName] === null) {\n return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required ' + ('in `' + componentName + '`, but its value is `null`.'));\n }\n return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required in ' + ('`' + componentName + '`, but its value is `undefined`.'));\n }\n return null;\n } else {\n return validate(props, propName, componentName, location, propFullName);\n }\n }\n\n var chainedCheckType = checkType.bind(null, false);\n chainedCheckType.isRequired = checkType.bind(null, true);\n\n return chainedCheckType;\n }\n\n function createPrimitiveTypeChecker(expectedType) {\n function validate(props, propName, componentName, location, propFullName, secret) {\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== expectedType) {\n // `propValue` being instance of, say, date/regexp, pass the 'object'\n // check, but we can offer a more precise error message here rather than\n // 'of type `object`'.\n var preciseType = getPreciseType(propValue);\n\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + preciseType + '` supplied to `' + componentName + '`, expected ') + ('`' + expectedType + '`.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createAnyTypeChecker() {\n return createChainableTypeChecker(emptyFunction.thatReturnsNull);\n }\n\n function createArrayOfTypeChecker(typeChecker) {\n function validate(props, propName, componentName, location, propFullName) {\n if (typeof typeChecker !== 'function') {\n return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside arrayOf.');\n }\n var propValue = props[propName];\n if (!Array.isArray(propValue)) {\n var propType = getPropType(propValue);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an array.'));\n }\n for (var i = 0; i < propValue.length; i++) {\n var error = typeChecker(propValue, i, componentName, location, propFullName + '[' + i + ']', ReactPropTypesSecret);\n if (error instanceof Error) {\n return error;\n }\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createElementTypeChecker() {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n if (!isValidElement(propValue)) {\n var propType = getPropType(propValue);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createInstanceTypeChecker(expectedClass) {\n function validate(props, propName, componentName, location, propFullName) {\n if (!(props[propName] instanceof expectedClass)) {\n var expectedClassName = expectedClass.name || ANONYMOUS;\n var actualClassName = getClassName(props[propName]);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + actualClassName + '` supplied to `' + componentName + '`, expected ') + ('instance of `' + expectedClassName + '`.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createEnumTypeChecker(expectedValues) {\n if (!Array.isArray(expectedValues)) {\n process.env.NODE_ENV !== 'production' ? warning(false, 'Invalid argument supplied to oneOf, expected an instance of array.') : void 0;\n return emptyFunction.thatReturnsNull;\n }\n\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n for (var i = 0; i < expectedValues.length; i++) {\n if (is(propValue, expectedValues[i])) {\n return null;\n }\n }\n\n var valuesString = JSON.stringify(expectedValues);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of value `' + propValue + '` ' + ('supplied to `' + componentName + '`, expected one of ' + valuesString + '.'));\n }\n return createChainableTypeChecker(validate);\n }\n\n function createObjectOfTypeChecker(typeChecker) {\n function validate(props, propName, componentName, location, propFullName) {\n if (typeof typeChecker !== 'function') {\n return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside objectOf.');\n }\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== 'object') {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an object.'));\n }\n for (var key in propValue) {\n if (propValue.hasOwnProperty(key)) {\n var error = typeChecker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n if (error instanceof Error) {\n return error;\n }\n }\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createUnionTypeChecker(arrayOfTypeCheckers) {\n if (!Array.isArray(arrayOfTypeCheckers)) {\n process.env.NODE_ENV !== 'production' ? warning(false, 'Invalid argument supplied to oneOfType, expected an instance of array.') : void 0;\n return emptyFunction.thatReturnsNull;\n }\n\n for (var i = 0; i < arrayOfTypeCheckers.length; i++) {\n var checker = arrayOfTypeCheckers[i];\n if (typeof checker !== 'function') {\n warning(\n false,\n 'Invalid argument supplied to oneOfType. Expected an array of check functions, but ' +\n 'received %s at index %s.',\n getPostfixForTypeWarning(checker),\n i\n );\n return emptyFunction.thatReturnsNull;\n }\n }\n\n function validate(props, propName, componentName, location, propFullName) {\n for (var i = 0; i < arrayOfTypeCheckers.length; i++) {\n var checker = arrayOfTypeCheckers[i];\n if (checker(props, propName, componentName, location, propFullName, ReactPropTypesSecret) == null) {\n return null;\n }\n }\n\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`.'));\n }\n return createChainableTypeChecker(validate);\n }\n\n function createNodeChecker() {\n function validate(props, propName, componentName, location, propFullName) {\n if (!isNode(props[propName])) {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`, expected a ReactNode.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createShapeTypeChecker(shapeTypes) {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== 'object') {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));\n }\n for (var key in shapeTypes) {\n var checker = shapeTypes[key];\n if (!checker) {\n continue;\n }\n var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n if (error) {\n return error;\n }\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createStrictShapeTypeChecker(shapeTypes) {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== 'object') {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));\n }\n // We need to check all keys in case some are required but missing from\n // props.\n var allKeys = assign({}, props[propName], shapeTypes);\n for (var key in allKeys) {\n var checker = shapeTypes[key];\n if (!checker) {\n return new PropTypeError(\n 'Invalid ' + location + ' `' + propFullName + '` key `' + key + '` supplied to `' + componentName + '`.' +\n '\\nBad object: ' + JSON.stringify(props[propName], null, ' ') +\n '\\nValid keys: ' + JSON.stringify(Object.keys(shapeTypes), null, ' ')\n );\n }\n var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n if (error) {\n return error;\n }\n }\n return null;\n }\n\n return createChainableTypeChecker(validate);\n }\n\n function isNode(propValue) {\n switch (typeof propValue) {\n case 'number':\n case 'string':\n case 'undefined':\n return true;\n case 'boolean':\n return !propValue;\n case 'object':\n if (Array.isArray(propValue)) {\n return propValue.every(isNode);\n }\n if (propValue === null || isValidElement(propValue)) {\n return true;\n }\n\n var iteratorFn = getIteratorFn(propValue);\n if (iteratorFn) {\n var iterator = iteratorFn.call(propValue);\n var step;\n if (iteratorFn !== propValue.entries) {\n while (!(step = iterator.next()).done) {\n if (!isNode(step.value)) {\n return false;\n }\n }\n } else {\n // Iterator will provide entry [k,v] tuples rather than values.\n while (!(step = iterator.next()).done) {\n var entry = step.value;\n if (entry) {\n if (!isNode(entry[1])) {\n return false;\n }\n }\n }\n }\n } else {\n return false;\n }\n\n return true;\n default:\n return false;\n }\n }\n\n function isSymbol(propType, propValue) {\n // Native Symbol.\n if (propType === 'symbol') {\n return true;\n }\n\n // 19.4.3.5 Symbol.prototype[@@toStringTag] === 'Symbol'\n if (propValue['@@toStringTag'] === 'Symbol') {\n return true;\n }\n\n // Fallback for non-spec compliant Symbols which are polyfilled.\n if (typeof Symbol === 'function' && propValue instanceof Symbol) {\n return true;\n }\n\n return false;\n }\n\n // Equivalent of `typeof` but with special handling for array and regexp.\n function getPropType(propValue) {\n var propType = typeof propValue;\n if (Array.isArray(propValue)) {\n return 'array';\n }\n if (propValue instanceof RegExp) {\n // Old webkits (at least until Android 4.0) return 'function' rather than\n // 'object' for typeof a RegExp. We'll normalize this here so that /bla/\n // passes PropTypes.object.\n return 'object';\n }\n if (isSymbol(propType, propValue)) {\n return 'symbol';\n }\n return propType;\n }\n\n // This handles more types than `getPropType`. Only used for error messages.\n // See `createPrimitiveTypeChecker`.\n function getPreciseType(propValue) {\n if (typeof propValue === 'undefined' || propValue === null) {\n return '' + propValue;\n }\n var propType = getPropType(propValue);\n if (propType === 'object') {\n if (propValue instanceof Date) {\n return 'date';\n } else if (propValue instanceof RegExp) {\n return 'regexp';\n }\n }\n return propType;\n }\n\n // Returns a string that is postfixed to a warning about an invalid type.\n // For example, \"undefined\" or \"of type array\"\n function getPostfixForTypeWarning(value) {\n var type = getPreciseType(value);\n switch (type) {\n case 'array':\n case 'object':\n return 'an ' + type;\n case 'boolean':\n case 'date':\n case 'regexp':\n return 'a ' + type;\n default:\n return type;\n }\n }\n\n // Returns class name of the object, if any.\n function getClassName(propValue) {\n if (!propValue.constructor || !propValue.constructor.name) {\n return ANONYMOUS;\n }\n return propValue.constructor.name;\n }\n\n ReactPropTypes.checkPropTypes = checkPropTypes;\n ReactPropTypes.PropTypes = ReactPropTypes;\n\n return ReactPropTypes;\n};\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nif (process.env.NODE_ENV !== 'production') {\n var REACT_ELEMENT_TYPE = (typeof Symbol === 'function' &&\n Symbol.for &&\n Symbol.for('react.element')) ||\n 0xeac7;\n\n var isValidElement = function(object) {\n return typeof object === 'object' &&\n object !== null &&\n object.$$typeof === REACT_ELEMENT_TYPE;\n };\n\n // By explicitly using `prop-types` you are opting into new development behavior.\n // http://fb.me/prop-types-in-prod\n var throwOnDirectAccess = true;\n module.exports = require('./factoryWithTypeCheckers')(isValidElement, throwOnDirectAccess);\n} else {\n // By explicitly using `prop-types` you are opting into new production behavior.\n // http://fb.me/prop-types-in-prod\n module.exports = require('./factoryWithThrowingShims')();\n}\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n\nmodule.exports = ReactPropTypesSecret;\n","module.exports = __WEBPACK_EXTERNAL_MODULE__reach_router__;","module.exports = __WEBPACK_EXTERNAL_MODULE_core_js_modules_es6_array_filter__;","module.exports = __WEBPACK_EXTERNAL_MODULE_core_js_modules_es6_array_for_each__;","module.exports = __WEBPACK_EXTERNAL_MODULE_core_js_modules_es6_array_index_of__;","module.exports = __WEBPACK_EXTERNAL_MODULE_core_js_modules_es6_array_map__;","module.exports = __WEBPACK_EXTERNAL_MODULE_core_js_modules_es6_date_to_string__;","module.exports = __WEBPACK_EXTERNAL_MODULE_core_js_modules_es6_object_assign__;","module.exports = __WEBPACK_EXTERNAL_MODULE_core_js_modules_es6_promise__;","module.exports = __WEBPACK_EXTERNAL_MODULE_core_js_modules_es6_regexp_constructor__;","module.exports = __WEBPACK_EXTERNAL_MODULE_core_js_modules_es6_regexp_split__;","module.exports = __WEBPACK_EXTERNAL_MODULE_core_js_modules_es6_regexp_to_string__;","module.exports = __WEBPACK_EXTERNAL_MODULE_core_js_modules_web_dom_iterable__;","module.exports = __WEBPACK_EXTERNAL_MODULE_lodash__;","module.exports = __WEBPACK_EXTERNAL_MODULE_react__;","module.exports = __WEBPACK_EXTERNAL_MODULE_react_dom_server__;","module.exports = __WEBPACK_EXTERNAL_MODULE_react_helmet__;"],"sourceRoot":""}
--------------------------------------------------------------------------------