{"componentChunkName":"component---src-templates-lesson-page-js","path":"/progressive-web-apps/01-intro-and-setup/","webpackCompilationHash":"a16c2e57d401e22678c3","result":{"data":{"currentLesson":{"id":"a74efa60-6e25-5afe-b0d0-7cc36fa23c88","body":"function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\n/* @jsx mdx */\nvar _frontmatter = {\n  \"title\": \"Intro & Setup\",\n  \"youtubeId\": \"psB_Pjwhbxo\",\n  \"duration\": 108\n};\n\nvar makeShortcode = function makeShortcode(name) {\n  return function MDXDefaultShortcode(props) {\n    console.warn(\"Component \" + name + \" was not imported, exported, or provided by MDXProvider as global scope\");\n    return mdx(\"div\", props);\n  };\n};\n\nvar layoutProps = {\n  _frontmatter: _frontmatter\n};\nvar MDXLayout = \"wrapper\";\nreturn function MDXContent(_ref) {\n  var components = _ref.components,\n      props = _objectWithoutProperties(_ref, [\"components\"]);\n\n  return mdx(MDXLayout, _extends({}, layoutProps, props, {\n    components: components,\n    mdxType: \"MDXLayout\"\n  }), mdx(\"h2\", {\n    \"id\": \"welcome-to-the-progressive-web-apps-training-course\"\n  }, \"Welcome to the Progressive Web Apps Training course!\"), mdx(\"p\", null, \"This video provides a short introduction to the course, giving an overview of what topics and API\\u2019s are covered.\\nThe format of this course is simple: we show you something, you build stuff, and repeat!\"));\n}\n;\nMDXContent.isMDXComponent = true;","title":"Intro & Setup","duration":108,"youtubeId":"psB_Pjwhbxo"}},"pageContext":{"isCreatedByStatefulCreatePages":false,"id":"a74efa60-6e25-5afe-b0d0-7cc36fa23c88","lesson":{"id":"a74efa60-6e25-5afe-b0d0-7cc36fa23c88","title":"Intro & Setup","slug":"/progressive-web-apps/01-intro-and-setup/","duration":108},"currentCourse":{"id":"c4a0b327-b291-5ccc-b2bc-746eb4c862e8","title":"Progressive Web Apps","slug":"/progressive-web-apps/","premium":null,"lessons":[{"id":"a74efa60-6e25-5afe-b0d0-7cc36fa23c88","title":"Intro & Setup","slug":"/progressive-web-apps/01-intro-and-setup/","duration":108},{"id":"cb7345c2-ddd9-5937-accb-9a1d6ef13108","title":"When should you use a PWA?","slug":"/progressive-web-apps/02-when-you-should-use-a-pwa/","duration":344},{"id":"ff10915e-1bb5-5cc9-96f8-5e4cad6e0c0e","title":"Your development cycle","slug":"/progressive-web-apps/03-your-development-cycle/","duration":123},{"id":"a42b1a7e-3de2-5a9b-a024-2663b6673148","title":"Make a static site work offline (by hand)","slug":"/progressive-web-apps/04-make-a-static-site-work-offline-by-hand/","duration":492}]},"previousLesson":null,"nextLesson":{"id":"cb7345c2-ddd9-5937-accb-9a1d6ef13108","title":"When should you use a PWA?","slug":"/progressive-web-apps/02-when-you-should-use-a-pwa/","duration":344},"premium":null}}}