diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 000000000..bb31533ed --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,21 @@ +name: CI +on: [push] +jobs: + lhci: + name: Lighthouse + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - name: Use Node.js 18.x + uses: actions/setup-node@v3 + with: + node-version: 18.x + - name: npm install, build + run: | + cd nextjs-tailwind + npm install + npm run build + - name: run Lighthouse CI + run: | + npm install -g @lhci/cli@0.11.x + lhci autorun diff --git a/.github/workflows/seo.yml b/.github/workflows/seo.yml new file mode 100644 index 000000000..9a899fb8b --- /dev/null +++ b/.github/workflows/seo.yml @@ -0,0 +1,35 @@ +name: SEO Tests + +on: + push: + branches: [tailwindcss] + +jobs: + test: + runs-on: ubuntu-latest + steps: + - name: Checkout Code + uses: actions/checkout@v2 + + - name: Setup Node.js + uses: actions/setup-node@v2 + with: + node-version: "18.x" + + - name: Install Dependencies + run: | + sudo apt-get update + sudo apt-get install -y libgbm-dev + cd nextjs-tailwind + npm ci + npx playwright install chromium + npm install -g lighthouse chrome-launcher axe-core chromium wait-on + + - name: Build the application + run: cd nextjs-tailwind && npm run build + + # - name: Start server + # run: cd nextjs-tailwind && npm run start + + # - name: Run Tests + # run: cd nextjs-tailwind && npx playwright test tests/seo diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 3cf4e8684..5d04e3e7b 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -13,10 +13,10 @@ jobs: - name: Setup Node uses: actions/setup-node@v2 with: - node-version: '18.x' + node-version: "18.x" - name: Install dependencies run: npm ci - name: Install playwright browsers run: npx playwright install --with-deps - name: Run tests - run: npx playwright test \ No newline at end of file + run: npx playwright test diff --git a/.gitignore b/.gitignore index 71142d117..9569ba7a2 100644 --- a/.gitignore +++ b/.gitignore @@ -10,4 +10,5 @@ venv /app/__pycache__/ .github/workflows/*.bak .vscode -docs \ No newline at end of file +docs +.next diff --git a/agile_documentation.md b/agile_documentation.md new file mode 100644 index 000000000..9145179ec --- /dev/null +++ b/agile_documentation.md @@ -0,0 +1,24 @@ +# Agile Documentation +* Epic: CSS Framework Selection: + * Initiative: CSS Performance Testing Framework: Develop a framework to test the performance of different CSS frameworks, and evaluate the results to select the best one for our web application. + * User Story: As developers, we want to test the performance of different CSS frameworks, so we can select the best one for our web application. + +* Epic: Legal Compliance: + * Initiative: Legal Compliance Audit: Conduct a legal compliance audit of our web application, identify potential legal requirements, and implement necessary changes to ensure compliance. + * User Story: As developers, we want to ensure that our web application adheres to all potential legal requirements, so we do not get sued and can operate with confidence. + +* Epic: Search Engine Optimization + * Initiative: SEO Optimization Strategy: Develop an SEO optimization strategy for our web application, based on keyword research, on-page optimization, link building, and analytics tracking, to improve visibility and ranking on search engines. + * User Story: : As developers, we want to perform SEO on our web application, so that we will have higher visibility and ranking on search engines, which can attract more users. + +* Epic: Web Accessibility: + * Initiative: Accessibility Standards Implementation: Implement accessibility standards for our web application, such as WCAG 2.1, and conduct accessibility testing to ensure that our application is accessible to all users. + * User Story: As developers, we want to ensure that our web application is accessible, so that all users, including those with disabilities or impairments, can use our application. + +* Epic: Internationalization: + * Initiative: Internationalization Implementation: Implement internationalization features for our web application, such as language and time zone selection, translation options, and cultural adaptation, to make our application accessible to users from different countries and cultures. + * User Story: As developers, we want to make our web application internationalized, so that it can be used by users from different countries, with different languages, time zones, and cultural backgrounds. + +* Epic: DevOps & SRE: + * Initiative: DevOps Automation Implementation: Implement DevOps practices, such as continuous integration, automated testing, and deployment automation, to streamline our development process and improve the efficiency and quality of our web application. + * User Story: As developers, we want to implement DevOps operations, so that we can automate testing for our web application, as well as trial different package managers to produce the most efficient app. diff --git a/lighthouserc.js b/lighthouserc.js new file mode 100644 index 000000000..da50f84a7 --- /dev/null +++ b/lighthouserc.js @@ -0,0 +1,10 @@ +module.exports = { + ci: { + collect: { + staticDistDir: "./nextjs-tailwind/out", // Update this with the directory where your static site files are located + }, + upload: { + target: "temporary-public-storage", + }, + }, +}; diff --git a/nextjs-tailwind/.gitignore b/nextjs-tailwind/.gitignore new file mode 100644 index 000000000..aa8d231b3 --- /dev/null +++ b/nextjs-tailwind/.gitignore @@ -0,0 +1,3 @@ +.next +node_modules +nextjs \ No newline at end of file diff --git a/nextjs-tailwind/.next/build-manifest.json b/nextjs-tailwind/.next/build-manifest.json new file mode 100644 index 000000000..3219a350c --- /dev/null +++ b/nextjs-tailwind/.next/build-manifest.json @@ -0,0 +1,48 @@ +{ + "polyfillFiles": [ + "static/chunks/polyfills-c67a75d1b6f99dc8.js" + ], + "devFiles": [], + "ampDevFiles": [], + "lowPriorityFiles": [ + "static/qoOcYhOJr35_hxGsTufz0/_buildManifest.js", + "static/qoOcYhOJr35_hxGsTufz0/_ssgManifest.js" + ], + "rootMainFiles": [], + "pages": { + "/": [ +<<<<<<< HEAD + "static/chunks/webpack.js", + "static/chunks/main.js", + "static/chunks/pages/index.js" +======= + "static/chunks/webpack-8fa1640cc84ba8fe.js", + "static/chunks/framework-cda2f1305c3d9424.js", + "static/chunks/main-7477d36a73a3487c.js", + "static/chunks/664-8af8765c6fed5950.js", + "static/chunks/pages/index-f186d9255c9723c4.js" +>>>>>>> 6f66b5540804f9c1185fee28809018f4b1176a4e + ], + "/_app": [ + "static/chunks/webpack-8fa1640cc84ba8fe.js", + "static/chunks/framework-cda2f1305c3d9424.js", + "static/chunks/main-7477d36a73a3487c.js", + "static/css/19de0c04e16bfeb8.css", + "static/chunks/pages/_app-13a04ff25ee58f5a.js" + ], + "/_error": [ + "static/chunks/webpack-8fa1640cc84ba8fe.js", + "static/chunks/framework-cda2f1305c3d9424.js", + "static/chunks/main-7477d36a73a3487c.js", + "static/chunks/pages/_error-54de1933a164a1ff.js" + ], + "/content": [ + "static/chunks/webpack-8fa1640cc84ba8fe.js", + "static/chunks/framework-cda2f1305c3d9424.js", + "static/chunks/main-7477d36a73a3487c.js", + "static/chunks/664-8af8765c6fed5950.js", + "static/chunks/pages/content-0397b03146a21a97.js" + ] + }, + "ampFirstPages": [] +} \ No newline at end of file diff --git a/nextjs-tailwind/.next/cache/webpack/client-development-fallback/0.pack b/nextjs-tailwind/.next/cache/webpack/client-development-fallback/0.pack new file mode 100644 index 000000000..d7316a063 Binary files /dev/null and b/nextjs-tailwind/.next/cache/webpack/client-development-fallback/0.pack differ diff --git a/nextjs-tailwind/.next/cache/webpack/client-development-fallback/1.pack b/nextjs-tailwind/.next/cache/webpack/client-development-fallback/1.pack new file mode 100644 index 000000000..a22f5fb75 Binary files /dev/null and b/nextjs-tailwind/.next/cache/webpack/client-development-fallback/1.pack differ diff --git a/nextjs-tailwind/.next/cache/webpack/client-development-fallback/index.pack b/nextjs-tailwind/.next/cache/webpack/client-development-fallback/index.pack new file mode 100644 index 000000000..23ea7a501 Binary files /dev/null and b/nextjs-tailwind/.next/cache/webpack/client-development-fallback/index.pack differ diff --git a/nextjs-tailwind/.next/cache/webpack/client-development-fallback/index.pack.old b/nextjs-tailwind/.next/cache/webpack/client-development-fallback/index.pack.old new file mode 100644 index 000000000..5ffeca048 Binary files /dev/null and b/nextjs-tailwind/.next/cache/webpack/client-development-fallback/index.pack.old differ diff --git a/nextjs-tailwind/.next/cache/webpack/client-development/0.pack b/nextjs-tailwind/.next/cache/webpack/client-development/0.pack new file mode 100644 index 000000000..28c5d81c5 Binary files /dev/null and b/nextjs-tailwind/.next/cache/webpack/client-development/0.pack differ diff --git a/nextjs-tailwind/.next/cache/webpack/client-development/1.pack b/nextjs-tailwind/.next/cache/webpack/client-development/1.pack new file mode 100644 index 000000000..224b5ca1d Binary files /dev/null and b/nextjs-tailwind/.next/cache/webpack/client-development/1.pack differ diff --git a/nextjs-tailwind/.next/cache/webpack/client-development/2.pack b/nextjs-tailwind/.next/cache/webpack/client-development/2.pack new file mode 100644 index 000000000..f2aad9385 Binary files /dev/null and b/nextjs-tailwind/.next/cache/webpack/client-development/2.pack differ diff --git a/nextjs-tailwind/.next/cache/webpack/client-development/3.pack b/nextjs-tailwind/.next/cache/webpack/client-development/3.pack new file mode 100644 index 000000000..44f2c0b46 Binary files /dev/null and b/nextjs-tailwind/.next/cache/webpack/client-development/3.pack differ diff --git a/nextjs-tailwind/.next/cache/webpack/client-development/4.pack b/nextjs-tailwind/.next/cache/webpack/client-development/4.pack new file mode 100644 index 000000000..7e7b2e04d Binary files /dev/null and b/nextjs-tailwind/.next/cache/webpack/client-development/4.pack differ diff --git a/nextjs-tailwind/.next/cache/webpack/client-development/5.pack b/nextjs-tailwind/.next/cache/webpack/client-development/5.pack new file mode 100644 index 000000000..bb447f49f Binary files /dev/null and b/nextjs-tailwind/.next/cache/webpack/client-development/5.pack differ diff --git a/nextjs-tailwind/.next/cache/webpack/client-development/6.pack b/nextjs-tailwind/.next/cache/webpack/client-development/6.pack new file mode 100644 index 000000000..c71970d5e Binary files /dev/null and b/nextjs-tailwind/.next/cache/webpack/client-development/6.pack differ diff --git a/nextjs-tailwind/.next/cache/webpack/client-development/7.pack b/nextjs-tailwind/.next/cache/webpack/client-development/7.pack new file mode 100644 index 000000000..505e98f93 Binary files /dev/null and b/nextjs-tailwind/.next/cache/webpack/client-development/7.pack differ diff --git a/nextjs-tailwind/.next/cache/webpack/client-development/8.pack b/nextjs-tailwind/.next/cache/webpack/client-development/8.pack new file mode 100644 index 000000000..37b820fd8 Binary files /dev/null and b/nextjs-tailwind/.next/cache/webpack/client-development/8.pack differ diff --git a/nextjs-tailwind/.next/cache/webpack/client-development/9.pack b/nextjs-tailwind/.next/cache/webpack/client-development/9.pack new file mode 100644 index 000000000..9aad1cf74 Binary files /dev/null and b/nextjs-tailwind/.next/cache/webpack/client-development/9.pack differ diff --git a/nextjs-tailwind/.next/cache/webpack/client-development/index.pack b/nextjs-tailwind/.next/cache/webpack/client-development/index.pack new file mode 100644 index 000000000..25679d466 Binary files /dev/null and b/nextjs-tailwind/.next/cache/webpack/client-development/index.pack differ diff --git a/nextjs-tailwind/.next/cache/webpack/client-development/index.pack.old b/nextjs-tailwind/.next/cache/webpack/client-development/index.pack.old new file mode 100644 index 000000000..9a46d879a Binary files /dev/null and b/nextjs-tailwind/.next/cache/webpack/client-development/index.pack.old differ diff --git a/nextjs-tailwind/.next/cache/webpack/server-development/0.pack b/nextjs-tailwind/.next/cache/webpack/server-development/0.pack new file mode 100644 index 000000000..4b92694b7 Binary files /dev/null and b/nextjs-tailwind/.next/cache/webpack/server-development/0.pack differ diff --git a/nextjs-tailwind/.next/cache/webpack/server-development/1.pack b/nextjs-tailwind/.next/cache/webpack/server-development/1.pack new file mode 100644 index 000000000..440c163ec Binary files /dev/null and b/nextjs-tailwind/.next/cache/webpack/server-development/1.pack differ diff --git a/nextjs-tailwind/.next/cache/webpack/server-development/2.pack b/nextjs-tailwind/.next/cache/webpack/server-development/2.pack new file mode 100644 index 000000000..796a59d00 Binary files /dev/null and b/nextjs-tailwind/.next/cache/webpack/server-development/2.pack differ diff --git a/nextjs-tailwind/.next/cache/webpack/server-development/3.pack b/nextjs-tailwind/.next/cache/webpack/server-development/3.pack new file mode 100644 index 000000000..5473d55e0 Binary files /dev/null and b/nextjs-tailwind/.next/cache/webpack/server-development/3.pack differ diff --git a/nextjs-tailwind/.next/cache/webpack/server-development/4.pack b/nextjs-tailwind/.next/cache/webpack/server-development/4.pack new file mode 100644 index 000000000..4155c0af2 Binary files /dev/null and b/nextjs-tailwind/.next/cache/webpack/server-development/4.pack differ diff --git a/nextjs-tailwind/.next/cache/webpack/server-development/5.pack b/nextjs-tailwind/.next/cache/webpack/server-development/5.pack new file mode 100644 index 000000000..cf50f88ca Binary files /dev/null and b/nextjs-tailwind/.next/cache/webpack/server-development/5.pack differ diff --git a/nextjs-tailwind/.next/cache/webpack/server-development/6.pack b/nextjs-tailwind/.next/cache/webpack/server-development/6.pack new file mode 100644 index 000000000..0972fe3cb Binary files /dev/null and b/nextjs-tailwind/.next/cache/webpack/server-development/6.pack differ diff --git a/nextjs-tailwind/.next/cache/webpack/server-development/7.pack b/nextjs-tailwind/.next/cache/webpack/server-development/7.pack new file mode 100644 index 000000000..e6ffb63ef Binary files /dev/null and b/nextjs-tailwind/.next/cache/webpack/server-development/7.pack differ diff --git a/nextjs-tailwind/.next/cache/webpack/server-development/index.pack b/nextjs-tailwind/.next/cache/webpack/server-development/index.pack new file mode 100644 index 000000000..46f31845d Binary files /dev/null and b/nextjs-tailwind/.next/cache/webpack/server-development/index.pack differ diff --git a/nextjs-tailwind/.next/cache/webpack/server-development/index.pack.old b/nextjs-tailwind/.next/cache/webpack/server-development/index.pack.old new file mode 100644 index 000000000..37289f655 Binary files /dev/null and b/nextjs-tailwind/.next/cache/webpack/server-development/index.pack.old differ diff --git a/nextjs-tailwind/.next/package.json b/nextjs-tailwind/.next/package.json new file mode 100644 index 000000000..7156107e3 --- /dev/null +++ b/nextjs-tailwind/.next/package.json @@ -0,0 +1 @@ +{"type": "commonjs"} \ No newline at end of file diff --git a/nextjs-tailwind/.next/react-loadable-manifest.json b/nextjs-tailwind/.next/react-loadable-manifest.json new file mode 100644 index 000000000..9e26dfeeb --- /dev/null +++ b/nextjs-tailwind/.next/react-loadable-manifest.json @@ -0,0 +1 @@ +{} \ No newline at end of file diff --git a/nextjs-tailwind/.next/server/middleware-build-manifest.js b/nextjs-tailwind/.next/server/middleware-build-manifest.js new file mode 100644 index 000000000..8e1fadd0e --- /dev/null +++ b/nextjs-tailwind/.next/server/middleware-build-manifest.js @@ -0,0 +1,5 @@ +<<<<<<< HEAD +self.__BUILD_MANIFEST={"polyfillFiles":["static/chunks/polyfills.js"],"devFiles":["static/chunks/react-refresh.js"],"ampDevFiles":["static/chunks/webpack.js","static/chunks/amp.js"],"lowPriorityFiles":["static/development/_buildManifest.js","static/development/_ssgManifest.js"],"rootMainFiles":[],"pages":{"/":["static/chunks/webpack.js","static/chunks/main.js","static/chunks/pages/index.js"],"/_app":["static/chunks/webpack.js","static/chunks/main.js","static/chunks/pages/_app.js"],"/_error":["static/chunks/webpack.js","static/chunks/main.js","static/chunks/pages/_error.js"],"/content":["static/chunks/webpack.js","static/chunks/main.js","static/chunks/pages/content.js"]},"ampFirstPages":[]} +======= +self.__BUILD_MANIFEST={polyfillFiles:["static/chunks/polyfills-c67a75d1b6f99dc8.js"],devFiles:[],ampDevFiles:[],lowPriorityFiles:["static/qoOcYhOJr35_hxGsTufz0/_buildManifest.js","static/qoOcYhOJr35_hxGsTufz0/_ssgManifest.js"],rootMainFiles:[],pages:{"/":["static/chunks/webpack-8fa1640cc84ba8fe.js","static/chunks/framework-cda2f1305c3d9424.js","static/chunks/main-7477d36a73a3487c.js","static/chunks/664-8af8765c6fed5950.js","static/chunks/pages/index-f186d9255c9723c4.js"],"/_app":["static/chunks/webpack-8fa1640cc84ba8fe.js","static/chunks/framework-cda2f1305c3d9424.js","static/chunks/main-7477d36a73a3487c.js","static/css/19de0c04e16bfeb8.css","static/chunks/pages/_app-13a04ff25ee58f5a.js"],"/_error":["static/chunks/webpack-8fa1640cc84ba8fe.js","static/chunks/framework-cda2f1305c3d9424.js","static/chunks/main-7477d36a73a3487c.js","static/chunks/pages/_error-54de1933a164a1ff.js"],"/content":["static/chunks/webpack-8fa1640cc84ba8fe.js","static/chunks/framework-cda2f1305c3d9424.js","static/chunks/main-7477d36a73a3487c.js","static/chunks/664-8af8765c6fed5950.js","static/chunks/pages/content-0397b03146a21a97.js"]},ampFirstPages:[]}; +>>>>>>> 6f66b5540804f9c1185fee28809018f4b1176a4e diff --git a/nextjs-tailwind/.next/server/middleware-manifest.json b/nextjs-tailwind/.next/server/middleware-manifest.json new file mode 100644 index 000000000..57712aad3 --- /dev/null +++ b/nextjs-tailwind/.next/server/middleware-manifest.json @@ -0,0 +1,6 @@ +{ + "sortedMiddleware": [], + "middleware": {}, + "functions": {}, + "version": 2 +} \ No newline at end of file diff --git a/nextjs-tailwind/.next/server/middleware-react-loadable-manifest.js b/nextjs-tailwind/.next/server/middleware-react-loadable-manifest.js new file mode 100644 index 000000000..bebba06e2 --- /dev/null +++ b/nextjs-tailwind/.next/server/middleware-react-loadable-manifest.js @@ -0,0 +1 @@ +self.__REACT_LOADABLE_MANIFEST={}; \ No newline at end of file diff --git a/nextjs-tailwind/.next/server/next-font-manifest.js b/nextjs-tailwind/.next/server/next-font-manifest.js new file mode 100644 index 000000000..fc972205d --- /dev/null +++ b/nextjs-tailwind/.next/server/next-font-manifest.js @@ -0,0 +1 @@ +self.__NEXT_FONT_MANIFEST={pages:{},app:{},appUsingSizeAdjust:!1,pagesUsingSizeAdjust:!1}; \ No newline at end of file diff --git a/nextjs-tailwind/.next/server/next-font-manifest.json b/nextjs-tailwind/.next/server/next-font-manifest.json new file mode 100644 index 000000000..e0cc40075 --- /dev/null +++ b/nextjs-tailwind/.next/server/next-font-manifest.json @@ -0,0 +1,6 @@ +{ + "pages": {}, + "app": {}, + "appUsingSizeAdjust": false, + "pagesUsingSizeAdjust": false +} \ No newline at end of file diff --git a/nextjs-tailwind/.next/server/pages-manifest.json b/nextjs-tailwind/.next/server/pages-manifest.json new file mode 100644 index 000000000..abfc3b73a --- /dev/null +++ b/nextjs-tailwind/.next/server/pages-manifest.json @@ -0,0 +1,13 @@ +{ + "/content": "pages/content.html", + "/": "pages/index.html", + "/_app": "pages/_app.js", + "/_error": "pages/_error.js", + "/_document": "pages/_document.js", +<<<<<<< HEAD + "/content": "pages/content.js", + "/": "pages/index.js" +======= + "/404": "pages/404.html" +>>>>>>> 6f66b5540804f9c1185fee28809018f4b1176a4e +} \ No newline at end of file diff --git a/nextjs-tailwind/.next/server/pages/_app.js b/nextjs-tailwind/.next/server/pages/_app.js new file mode 100644 index 000000000..ef4bde433 --- /dev/null +++ b/nextjs-tailwind/.next/server/pages/_app.js @@ -0,0 +1,56 @@ +(() => { +var exports = {}; +exports.id = 888; +exports.ids = [888]; +exports.modules = { + +/***/ 879: +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(997); +/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var _styles_globals_css__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(764); +/* harmony import */ var _styles_globals_css__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_styles_globals_css__WEBPACK_IMPORTED_MODULE_1__); + + +function MyApp({ Component , pageProps }) { + return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(Component, { + ...pageProps + }); +} +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (MyApp); + + +/***/ }), + +/***/ 764: +/***/ (() => { + + + +/***/ }), + +/***/ 997: +/***/ ((module) => { + +"use strict"; +module.exports = require("react/jsx-runtime"); + +/***/ }) + +}; +; + +// load runtime +var __webpack_require__ = require("../webpack-runtime.js"); +__webpack_require__.C(exports); +var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId)) +var __webpack_exports__ = (__webpack_exec__(879)); +module.exports = __webpack_exports__; + +})(); \ No newline at end of file diff --git a/nextjs-tailwind/.next/server/pages/_document.js b/nextjs-tailwind/.next/server/pages/_document.js new file mode 100644 index 000000000..482157196 --- /dev/null +++ b/nextjs-tailwind/.next/server/pages/_document.js @@ -0,0 +1,867 @@ +"use strict"; +(() => { +var exports = {}; +exports.id = 660; +exports.ids = [660]; +exports.modules = { + +/***/ 940: +/***/ ((__unused_webpack_module, exports, __webpack_require__) => { + + +Object.defineProperty(exports, "__esModule", ({ + value: true +})); +exports.Html = Html; +exports.Main = Main; +exports["default"] = void 0; +var _react = _interopRequireWildcard(__webpack_require__(689)); +var _constants = __webpack_require__(724); +var _getPageFiles = __webpack_require__(140); +var _htmlescape = __webpack_require__(716); +var _isError = _interopRequireDefault(__webpack_require__(676)); +var _htmlContext = __webpack_require__(743); +class Document extends _react.default.Component { + /** + * `getInitialProps` hook returns the context object with the addition of `renderPage`. + * `renderPage` callback executes `React` rendering logic synchronously to support server-rendering wrappers + */ static getInitialProps(ctx) { + return ctx.defaultGetInitialProps(ctx); + } + render() { + return /*#__PURE__*/ _react.default.createElement(Html, null, /*#__PURE__*/ _react.default.createElement(Head, null), /*#__PURE__*/ _react.default.createElement("body", null, /*#__PURE__*/ _react.default.createElement(Main, null), /*#__PURE__*/ _react.default.createElement(NextScript, null))); + } +} +exports["default"] = Document; +function _interopRequireDefault(obj) { + return obj && obj.__esModule ? obj : { + default: obj + }; +} +function _getRequireWildcardCache() { + if (typeof WeakMap !== "function") return null; + var cache = new WeakMap(); + _getRequireWildcardCache = function() { + return cache; + }; + return cache; +} +function _interopRequireWildcard(obj) { + if (obj && obj.__esModule) { + return obj; + } + if (obj === null || typeof obj !== "object" && typeof obj !== "function") { + return { + default: obj + }; + } + var cache = _getRequireWildcardCache(); + if (cache && cache.has(obj)) { + return cache.get(obj); + } + var newObj = {}; + var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; + for(var key in obj){ + if (Object.prototype.hasOwnProperty.call(obj, key)) { + var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; + if (desc && (desc.get || desc.set)) { + Object.defineProperty(newObj, key, desc); + } else { + newObj[key] = obj[key]; + } + } + } + newObj.default = obj; + if (cache) { + cache.set(obj, newObj); + } + return newObj; +} +/** Set of pages that have triggered a large data warning on production mode. */ const largePageDataWarnings = new Set(); +function getDocumentFiles(buildManifest, pathname, inAmpMode) { + const sharedFiles = (0, _getPageFiles).getPageFiles(buildManifest, "/_app"); + const pageFiles = true && inAmpMode ? [] : (0, _getPageFiles).getPageFiles(buildManifest, pathname); + return { + sharedFiles, + pageFiles, + allFiles: [ + ...new Set([ + ...sharedFiles, + ...pageFiles + ]) + ] + }; +} +function getPolyfillScripts(context, props) { + // polyfills.js has to be rendered as nomodule without async + // It also has to be the first script to load + const { assetPrefix , buildManifest , devOnlyCacheBusterQueryString , disableOptimizedLoading , crossOrigin } = context; + return buildManifest.polyfillFiles.filter((polyfill)=>polyfill.endsWith(".js") && !polyfill.endsWith(".module.js")).map((polyfill)=>/*#__PURE__*/ _react.default.createElement("script", { + key: polyfill, + defer: !disableOptimizedLoading, + nonce: props.nonce, + crossOrigin: props.crossOrigin || crossOrigin, + noModule: true, + src: `${assetPrefix}/_next/${polyfill}${devOnlyCacheBusterQueryString}` + })); +} +function hasComponentProps(child) { + return !!child && !!child.props; +} +function AmpStyles({ styles }) { + if (!styles) return null; + // try to parse styles from fragment for backwards compat + const curStyles = Array.isArray(styles) ? styles : []; + if (styles.props && // @ts-ignore Property 'props' does not exist on type ReactElement + Array.isArray(styles.props.children)) { + const hasStyles = (el)=>{ + var ref, ref1; + return el == null ? void 0 : (ref = el.props) == null ? void 0 : (ref1 = ref.dangerouslySetInnerHTML) == null ? void 0 : ref1.__html; + }; + // @ts-ignore Property 'props' does not exist on type ReactElement + styles.props.children.forEach((child)=>{ + if (Array.isArray(child)) { + child.forEach((el)=>hasStyles(el) && curStyles.push(el)); + } else if (hasStyles(child)) { + curStyles.push(child); + } + }); + } + /* Add custom styles before AMP styles to prevent accidental overrides */ return /*#__PURE__*/ _react.default.createElement("style", { + "amp-custom": "", + dangerouslySetInnerHTML: { + __html: curStyles.map((style)=>style.props.dangerouslySetInnerHTML.__html).join("").replace(/\/\*# sourceMappingURL=.*\*\//g, "").replace(/\/\*@ sourceURL=.*?\*\//g, "") + } + }); +} +function getDynamicChunks(context, props, files) { + const { dynamicImports , assetPrefix , isDevelopment , devOnlyCacheBusterQueryString , disableOptimizedLoading , crossOrigin } = context; + return dynamicImports.map((file)=>{ + if (!file.endsWith(".js") || files.allFiles.includes(file)) return null; + return /*#__PURE__*/ _react.default.createElement("script", { + async: !isDevelopment && disableOptimizedLoading, + defer: !disableOptimizedLoading, + key: file, + src: `${assetPrefix}/_next/${encodeURI(file)}${devOnlyCacheBusterQueryString}`, + nonce: props.nonce, + crossOrigin: props.crossOrigin || crossOrigin + }); + }); +} +function getScripts(context, props, files) { + var ref; + const { assetPrefix , buildManifest , isDevelopment , devOnlyCacheBusterQueryString , disableOptimizedLoading , crossOrigin } = context; + const normalScripts = files.allFiles.filter((file)=>file.endsWith(".js")); + const lowPriorityScripts = (ref = buildManifest.lowPriorityFiles) == null ? void 0 : ref.filter((file)=>file.endsWith(".js")); + return [ + ...normalScripts, + ...lowPriorityScripts + ].map((file)=>{ + return /*#__PURE__*/ _react.default.createElement("script", { + key: file, + src: `${assetPrefix}/_next/${encodeURI(file)}${devOnlyCacheBusterQueryString}`, + nonce: props.nonce, + async: !isDevelopment && disableOptimizedLoading, + defer: !disableOptimizedLoading, + crossOrigin: props.crossOrigin || crossOrigin + }); + }); +} +function getPreNextWorkerScripts(context, props) { + const { assetPrefix , scriptLoader , crossOrigin , nextScriptWorkers } = context; + // disable `nextScriptWorkers` in edge runtime + if (!nextScriptWorkers || "nodejs" === "edge") return null; + try { + let { partytownSnippet } = require("@builder.io/partytown/integration"); + const children = Array.isArray(props.children) ? props.children : [ + props.children + ]; + // Check to see if the user has defined their own Partytown configuration + const userDefinedConfig = children.find((child)=>{ + var ref, ref2; + return hasComponentProps(child) && (child == null ? void 0 : (ref = child.props) == null ? void 0 : (ref2 = ref.dangerouslySetInnerHTML) == null ? void 0 : ref2.__html.length) && "data-partytown-config" in child.props; + }); + return /*#__PURE__*/ _react.default.createElement(_react.default.Fragment, null, !userDefinedConfig && /*#__PURE__*/ _react.default.createElement("script", { + "data-partytown-config": "", + dangerouslySetInnerHTML: { + __html: ` + partytown = { + lib: "${assetPrefix}/_next/static/~partytown/" + }; + ` + } + }), /*#__PURE__*/ _react.default.createElement("script", { + "data-partytown": "", + dangerouslySetInnerHTML: { + __html: partytownSnippet() + } + }), (scriptLoader.worker || []).map((file, index)=>{ + const { strategy , src , children: scriptChildren , dangerouslySetInnerHTML , ...scriptProps } = file; + let srcProps = {}; + if (src) { + // Use external src if provided + srcProps.src = src; + } else if (dangerouslySetInnerHTML && dangerouslySetInnerHTML.__html) { + // Embed inline script if provided with dangerouslySetInnerHTML + srcProps.dangerouslySetInnerHTML = { + __html: dangerouslySetInnerHTML.__html + }; + } else if (scriptChildren) { + // Embed inline script if provided with children + srcProps.dangerouslySetInnerHTML = { + __html: typeof scriptChildren === "string" ? scriptChildren : Array.isArray(scriptChildren) ? scriptChildren.join("") : "" + }; + } else { + throw new Error("Invalid usage of next/script. Did you forget to include a src attribute or an inline script? https://nextjs.org/docs/messages/invalid-script"); + } + return /*#__PURE__*/ _react.default.createElement("script", Object.assign({}, srcProps, scriptProps, { + type: "text/partytown", + key: src || index, + nonce: props.nonce, + "data-nscript": "worker", + crossOrigin: props.crossOrigin || crossOrigin + })); + })); + } catch (err) { + if ((0, _isError).default(err) && err.code !== "MODULE_NOT_FOUND") { + console.warn(`Warning: ${err.message}`); + } + return null; + } +} +function getPreNextScripts(context, props) { + const { scriptLoader , disableOptimizedLoading , crossOrigin } = context; + const webWorkerScripts = getPreNextWorkerScripts(context, props); + const beforeInteractiveScripts = (scriptLoader.beforeInteractive || []).filter((script)=>script.src).map((file, index)=>{ + const { strategy , ...scriptProps } = file; + return /*#__PURE__*/ _react.default.createElement("script", Object.assign({}, scriptProps, { + key: scriptProps.src || index, + defer: scriptProps.defer ?? !disableOptimizedLoading, + nonce: props.nonce, + "data-nscript": "beforeInteractive", + crossOrigin: props.crossOrigin || crossOrigin + })); + }); + return /*#__PURE__*/ _react.default.createElement(_react.default.Fragment, null, webWorkerScripts, beforeInteractiveScripts); +} +function getHeadHTMLProps(props) { + const { crossOrigin , nonce , ...restProps } = props; + // This assignment is necessary for additional type checking to avoid unsupported attributes in + const headProps = restProps; + return headProps; +} +function getAmpPath(ampPath, asPath) { + return ampPath || `${asPath}${asPath.includes("?") ? "&" : "?"}amp=1`; +} +function getNextFontLinkTags(nextFontManifest, dangerousAsPath, assetPrefix = "") { + if (!nextFontManifest) { + return { + preconnect: null, + preload: null + }; + } + const appFontsEntry = nextFontManifest.pages["/_app"]; + const pageFontsEntry = nextFontManifest.pages[dangerousAsPath]; + const preloadedFontFiles = [ + ...appFontsEntry ?? [], + ...pageFontsEntry ?? [] + ]; + // If no font files should preload but there's an entry for the path, add a preconnect tag. + const preconnectToSelf = !!(preloadedFontFiles.length === 0 && (appFontsEntry || pageFontsEntry)); + return { + preconnect: preconnectToSelf ? /*#__PURE__*/ _react.default.createElement("link", { + "data-next-font": nextFontManifest.pagesUsingSizeAdjust ? "size-adjust" : "", + rel: "preconnect", + href: "/", + crossOrigin: "anonymous" + }) : null, + preload: preloadedFontFiles ? preloadedFontFiles.map((fontFile)=>{ + const ext = /\.(woff|woff2|eot|ttf|otf)$/.exec(fontFile)[1]; + return /*#__PURE__*/ _react.default.createElement("link", { + key: fontFile, + rel: "preload", + href: `${assetPrefix}/_next/${encodeURI(fontFile)}`, + as: "font", + type: `font/${ext}`, + crossOrigin: "anonymous", + "data-next-font": fontFile.includes("-s") ? "size-adjust" : "" + }); + }) : null + }; +} +class Head extends _react.default.Component { + static contextType = _htmlContext.HtmlContext; + getCssLinks(files) { + const { assetPrefix , devOnlyCacheBusterQueryString , dynamicImports , crossOrigin , optimizeCss , optimizeFonts } = this.context; + const cssFiles = files.allFiles.filter((f)=>f.endsWith(".css")); + const sharedFiles = new Set(files.sharedFiles); + // Unmanaged files are CSS files that will be handled directly by the + // webpack runtime (`mini-css-extract-plugin`). + let unmangedFiles = new Set([]); + let dynamicCssFiles = Array.from(new Set(dynamicImports.filter((file)=>file.endsWith(".css")))); + if (dynamicCssFiles.length) { + const existing = new Set(cssFiles); + dynamicCssFiles = dynamicCssFiles.filter((f)=>!(existing.has(f) || sharedFiles.has(f))); + unmangedFiles = new Set(dynamicCssFiles); + cssFiles.push(...dynamicCssFiles); + } + let cssLinkElements = []; + cssFiles.forEach((file)=>{ + const isSharedFile = sharedFiles.has(file); + if (!optimizeCss) { + cssLinkElements.push(/*#__PURE__*/ _react.default.createElement("link", { + key: `${file}-preload`, + nonce: this.props.nonce, + rel: "preload", + href: `${assetPrefix}/_next/${encodeURI(file)}${devOnlyCacheBusterQueryString}`, + as: "style", + crossOrigin: this.props.crossOrigin || crossOrigin + })); + } + const isUnmanagedFile = unmangedFiles.has(file); + cssLinkElements.push(/*#__PURE__*/ _react.default.createElement("link", { + key: file, + nonce: this.props.nonce, + rel: "stylesheet", + href: `${assetPrefix}/_next/${encodeURI(file)}${devOnlyCacheBusterQueryString}`, + crossOrigin: this.props.crossOrigin || crossOrigin, + "data-n-g": isUnmanagedFile ? undefined : isSharedFile ? "" : undefined, + "data-n-p": isUnmanagedFile ? undefined : isSharedFile ? undefined : "" + })); + }); + if ( true && optimizeFonts) { + cssLinkElements = this.makeStylesheetInert(cssLinkElements); + } + return cssLinkElements.length === 0 ? null : cssLinkElements; + } + getPreloadDynamicChunks() { + const { dynamicImports , assetPrefix , devOnlyCacheBusterQueryString , crossOrigin } = this.context; + return dynamicImports.map((file)=>{ + if (!file.endsWith(".js")) { + return null; + } + return /*#__PURE__*/ _react.default.createElement("link", { + rel: "preload", + key: file, + href: `${assetPrefix}/_next/${encodeURI(file)}${devOnlyCacheBusterQueryString}`, + as: "script", + nonce: this.props.nonce, + crossOrigin: this.props.crossOrigin || crossOrigin + }); + }) // Filter out nulled scripts + .filter(Boolean); + } + getPreloadMainLinks(files) { + const { assetPrefix , devOnlyCacheBusterQueryString , scriptLoader , crossOrigin } = this.context; + const preloadFiles = files.allFiles.filter((file)=>{ + return file.endsWith(".js"); + }); + return [ + ...(scriptLoader.beforeInteractive || []).map((file)=>/*#__PURE__*/ _react.default.createElement("link", { + key: file.src, + nonce: this.props.nonce, + rel: "preload", + href: file.src, + as: "script", + crossOrigin: this.props.crossOrigin || crossOrigin + })), + ...preloadFiles.map((file)=>/*#__PURE__*/ _react.default.createElement("link", { + key: file, + nonce: this.props.nonce, + rel: "preload", + href: `${assetPrefix}/_next/${encodeURI(file)}${devOnlyCacheBusterQueryString}`, + as: "script", + crossOrigin: this.props.crossOrigin || crossOrigin + })) + ]; + } + getBeforeInteractiveInlineScripts() { + const { scriptLoader } = this.context; + const { nonce , crossOrigin } = this.props; + return (scriptLoader.beforeInteractive || []).filter((script)=>!script.src && (script.dangerouslySetInnerHTML || script.children)).map((file, index)=>{ + const { strategy , children , dangerouslySetInnerHTML , src , ...scriptProps } = file; + let html = ""; + if (dangerouslySetInnerHTML && dangerouslySetInnerHTML.__html) { + html = dangerouslySetInnerHTML.__html; + } else if (children) { + html = typeof children === "string" ? children : Array.isArray(children) ? children.join("") : ""; + } + return /*#__PURE__*/ _react.default.createElement("script", Object.assign({}, scriptProps, { + dangerouslySetInnerHTML: { + __html: html + }, + key: scriptProps.id || index, + nonce: nonce, + "data-nscript": "beforeInteractive", + crossOrigin: crossOrigin || undefined + })); + }); + } + getDynamicChunks(files) { + return getDynamicChunks(this.context, this.props, files); + } + getPreNextScripts() { + return getPreNextScripts(this.context, this.props); + } + getScripts(files) { + return getScripts(this.context, this.props, files); + } + getPolyfillScripts() { + return getPolyfillScripts(this.context, this.props); + } + makeStylesheetInert(node) { + return _react.default.Children.map(node, (c)=>{ + var ref5, ref3; + if ((c == null ? void 0 : c.type) === "link" && (c == null ? void 0 : (ref5 = c.props) == null ? void 0 : ref5.href) && _constants.OPTIMIZED_FONT_PROVIDERS.some(({ url })=>{ + var ref, ref4; + return c == null ? void 0 : (ref = c.props) == null ? void 0 : (ref4 = ref.href) == null ? void 0 : ref4.startsWith(url); + })) { + const newProps = { + ...c.props || {}, + "data-href": c.props.href, + href: undefined + }; + return /*#__PURE__*/ _react.default.cloneElement(c, newProps); + } else if (c == null ? void 0 : (ref3 = c.props) == null ? void 0 : ref3.children) { + const newProps = { + ...c.props || {}, + children: this.makeStylesheetInert(c.props.children) + }; + return /*#__PURE__*/ _react.default.cloneElement(c, newProps); + } + return c; + }).filter(Boolean); + } + render() { + const { styles , ampPath , inAmpMode , hybridAmp , canonicalBase , __NEXT_DATA__ , dangerousAsPath , headTags , unstable_runtimeJS , unstable_JsPreload , disableOptimizedLoading , optimizeCss , optimizeFonts , assetPrefix , nextFontManifest } = this.context; + const disableRuntimeJS = unstable_runtimeJS === false; + const disableJsPreload = unstable_JsPreload === false || !disableOptimizedLoading; + this.context.docComponentsRendered.Head = true; + let { head } = this.context; + let cssPreloads = []; + let otherHeadElements = []; + if (head) { + head.forEach((c)=>{ + if (c && c.type === "link" && c.props["rel"] === "preload" && c.props["as"] === "style") { + cssPreloads.push(c); + } else { + c && otherHeadElements.push(c); + } + }); + head = cssPreloads.concat(otherHeadElements); + } + let children = _react.default.Children.toArray(this.props.children).filter(Boolean); + // show a warning if Head contains (only in development) + if (false) {} + if ( true && optimizeFonts && !( true && inAmpMode)) { + children = this.makeStylesheetInert(children); + } + let hasAmphtmlRel = false; + let hasCanonicalRel = false; + // show warning and remove conflicting amp head tags + head = _react.default.Children.map(head || [], (child)=>{ + if (!child) return child; + const { type , props } = child; + if ( true && inAmpMode) { + let badProp = ""; + if (type === "meta" && props.name === "viewport") { + badProp = 'name="viewport"'; + } else if (type === "link" && props.rel === "canonical") { + hasCanonicalRel = true; + } else if (type === "script") { + // only block if + // 1. it has a src and isn't pointing to ampproject's CDN + // 2. it is using dangerouslySetInnerHTML without a type or + // a type of text/javascript + if (props.src && props.src.indexOf("ampproject") < -1 || props.dangerouslySetInnerHTML && (!props.type || props.type === "text/javascript")) { + badProp = "<script"; + Object.keys(props).forEach((prop)=>{ + badProp += ` ${prop}="${props[prop]}"`; + }); + badProp += "/>"; + } + } + if (badProp) { + console.warn(`Found conflicting amp tag "${child.type}" with conflicting prop ${badProp} in ${__NEXT_DATA__.page}. https://nextjs.org/docs/messages/conflicting-amp-tag`); + return null; + } + } else { + // non-amp mode + if (type === "link" && props.rel === "amphtml") { + hasAmphtmlRel = true; + } + } + return child; + }); + const files = getDocumentFiles(this.context.buildManifest, this.context.__NEXT_DATA__.page, true && inAmpMode); + const nextFontLinkTags = getNextFontLinkTags(nextFontManifest, dangerousAsPath, assetPrefix); + return /*#__PURE__*/ _react.default.createElement("head", Object.assign({}, getHeadHTMLProps(this.props)), this.context.isDevelopment && /*#__PURE__*/ _react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/ _react.default.createElement("style", { + "data-next-hide-fouc": true, + "data-ampdevmode": true && inAmpMode ? "true" : undefined, + dangerouslySetInnerHTML: { + __html: `body{display:none}` + } + }), /*#__PURE__*/ _react.default.createElement("noscript", { + "data-next-hide-fouc": true, + "data-ampdevmode": true && inAmpMode ? "true" : undefined + }, /*#__PURE__*/ _react.default.createElement("style", { + dangerouslySetInnerHTML: { + __html: `body{display:block}` + } + }))), head, /*#__PURE__*/ _react.default.createElement("meta", { + name: "next-head-count", + content: _react.default.Children.count(head || []).toString() + }), children, optimizeFonts && /*#__PURE__*/ _react.default.createElement("meta", { + name: "next-font-preconnect" + }), nextFontLinkTags.preconnect, nextFontLinkTags.preload, true && inAmpMode && /*#__PURE__*/ _react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/ _react.default.createElement("meta", { + name: "viewport", + content: "width=device-width,minimum-scale=1,initial-scale=1" + }), !hasCanonicalRel && /*#__PURE__*/ _react.default.createElement("link", { + rel: "canonical", + href: canonicalBase + (__webpack_require__(368).cleanAmpPath)(dangerousAsPath) + }), /*#__PURE__*/ _react.default.createElement("link", { + rel: "preload", + as: "script", + href: "https://cdn.ampproject.org/v0.js" + }), /*#__PURE__*/ _react.default.createElement(AmpStyles, { + styles: styles + }), /*#__PURE__*/ _react.default.createElement("style", { + "amp-boilerplate": "", + dangerouslySetInnerHTML: { + __html: `body{-webkit-animation:-amp-start 8s steps(1,end) 0s 1 normal both;-moz-animation:-amp-start 8s steps(1,end) 0s 1 normal both;-ms-animation:-amp-start 8s steps(1,end) 0s 1 normal both;animation:-amp-start 8s steps(1,end) 0s 1 normal both}@-webkit-keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}@-moz-keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}@-ms-keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}@-o-keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}@keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}` + } + }), /*#__PURE__*/ _react.default.createElement("noscript", null, /*#__PURE__*/ _react.default.createElement("style", { + "amp-boilerplate": "", + dangerouslySetInnerHTML: { + __html: `body{-webkit-animation:none;-moz-animation:none;-ms-animation:none;animation:none}` + } + })), /*#__PURE__*/ _react.default.createElement("script", { + async: true, + src: "https://cdn.ampproject.org/v0.js" + })), !( true && inAmpMode) && /*#__PURE__*/ _react.default.createElement(_react.default.Fragment, null, !hasAmphtmlRel && hybridAmp && /*#__PURE__*/ _react.default.createElement("link", { + rel: "amphtml", + href: canonicalBase + getAmpPath(ampPath, dangerousAsPath) + }), this.getBeforeInteractiveInlineScripts(), !optimizeCss && this.getCssLinks(files), !optimizeCss && /*#__PURE__*/ _react.default.createElement("noscript", { + "data-n-css": this.props.nonce ?? "" + }), !disableRuntimeJS && !disableJsPreload && this.getPreloadDynamicChunks(), !disableRuntimeJS && !disableJsPreload && this.getPreloadMainLinks(files), !disableOptimizedLoading && !disableRuntimeJS && this.getPolyfillScripts(), !disableOptimizedLoading && !disableRuntimeJS && this.getPreNextScripts(), !disableOptimizedLoading && !disableRuntimeJS && this.getDynamicChunks(files), !disableOptimizedLoading && !disableRuntimeJS && this.getScripts(files), optimizeCss && this.getCssLinks(files), optimizeCss && /*#__PURE__*/ _react.default.createElement("noscript", { + "data-n-css": this.props.nonce ?? "" + }), this.context.isDevelopment && // this element is used to mount development styles so the + // ordering matches production + // (by default, style-loader injects at the bottom of <head />) + /*#__PURE__*/ _react.default.createElement("noscript", { + id: "__next_css__DO_NOT_USE__" + }), styles || null), /*#__PURE__*/ _react.default.createElement(_react.default.Fragment, {}, ...headTags || [])); + } +} +exports.Head = Head; +function handleDocumentScriptLoaderItems(scriptLoader, __NEXT_DATA__, props) { + var ref10, ref7, ref8, ref9; + if (!props.children) return; + const scriptLoaderItems = []; + const children = Array.isArray(props.children) ? props.children : [ + props.children + ]; + const headChildren = (ref10 = children.find((child)=>child.type === Head)) == null ? void 0 : (ref7 = ref10.props) == null ? void 0 : ref7.children; + const bodyChildren = (ref8 = children.find((child)=>child.type === "body")) == null ? void 0 : (ref9 = ref8.props) == null ? void 0 : ref9.children; + // Scripts with beforeInteractive can be placed inside Head or <body> so children of both needs to be traversed + const combinedChildren = [ + ...Array.isArray(headChildren) ? headChildren : [ + headChildren + ], + ...Array.isArray(bodyChildren) ? bodyChildren : [ + bodyChildren + ] + ]; + _react.default.Children.forEach(combinedChildren, (child)=>{ + var ref; + if (!child) return; + // When using the `next/script` component, register it in script loader. + if ((ref = child.type) == null ? void 0 : ref.__nextScript) { + if (child.props.strategy === "beforeInteractive") { + scriptLoader.beforeInteractive = (scriptLoader.beforeInteractive || []).concat([ + { + ...child.props + } + ]); + return; + } else if ([ + "lazyOnload", + "afterInteractive", + "worker" + ].includes(child.props.strategy)) { + scriptLoaderItems.push(child.props); + return; + } + } + }); + __NEXT_DATA__.scriptLoader = scriptLoaderItems; +} +class NextScript extends _react.default.Component { + static contextType = _htmlContext.HtmlContext; + getDynamicChunks(files) { + return getDynamicChunks(this.context, this.props, files); + } + getPreNextScripts() { + return getPreNextScripts(this.context, this.props); + } + getScripts(files) { + return getScripts(this.context, this.props, files); + } + getPolyfillScripts() { + return getPolyfillScripts(this.context, this.props); + } + static getInlineScriptSource(context) { + const { __NEXT_DATA__ , largePageDataBytes } = context; + try { + const data = JSON.stringify(__NEXT_DATA__); + if (largePageDataWarnings.has(__NEXT_DATA__.page)) { + return (0, _htmlescape).htmlEscapeJsonString(data); + } + const bytes = false ? 0 : Buffer.from(data).byteLength; + const prettyBytes = (__webpack_require__(955)/* ["default"] */ .Z); + if (largePageDataBytes && bytes > largePageDataBytes) { + if (true) { + largePageDataWarnings.add(__NEXT_DATA__.page); + } + console.warn(`Warning: data for page "${__NEXT_DATA__.page}"${__NEXT_DATA__.page === context.dangerousAsPath ? "" : ` (path "${context.dangerousAsPath}")`} is ${prettyBytes(bytes)} which exceeds the threshold of ${prettyBytes(largePageDataBytes)}, this amount of data can reduce performance.\nSee more info here: https://nextjs.org/docs/messages/large-page-data`); + } + return (0, _htmlescape).htmlEscapeJsonString(data); + } catch (err) { + if ((0, _isError).default(err) && err.message.indexOf("circular structure") !== -1) { + throw new Error(`Circular structure in "getInitialProps" result of page "${__NEXT_DATA__.page}". https://nextjs.org/docs/messages/circular-structure`); + } + throw err; + } + } + render() { + const { assetPrefix , inAmpMode , buildManifest , unstable_runtimeJS , docComponentsRendered , devOnlyCacheBusterQueryString , disableOptimizedLoading , crossOrigin } = this.context; + const disableRuntimeJS = unstable_runtimeJS === false; + docComponentsRendered.NextScript = true; + if ( true && inAmpMode) { + if (true) { + return null; + } + const ampDevFiles = [ + ...buildManifest.devFiles, + ...buildManifest.polyfillFiles, + ...buildManifest.ampDevFiles + ]; + return /*#__PURE__*/ _react.default.createElement(_react.default.Fragment, null, disableRuntimeJS ? null : /*#__PURE__*/ _react.default.createElement("script", { + id: "__NEXT_DATA__", + type: "application/json", + nonce: this.props.nonce, + crossOrigin: this.props.crossOrigin || crossOrigin, + dangerouslySetInnerHTML: { + __html: NextScript.getInlineScriptSource(this.context) + }, + "data-ampdevmode": true + }), ampDevFiles.map((file)=>/*#__PURE__*/ _react.default.createElement("script", { + key: file, + src: `${assetPrefix}/_next/${file}${devOnlyCacheBusterQueryString}`, + nonce: this.props.nonce, + crossOrigin: this.props.crossOrigin || crossOrigin, + "data-ampdevmode": true + }))); + } + if (false) {} + const files = getDocumentFiles(this.context.buildManifest, this.context.__NEXT_DATA__.page, true && inAmpMode); + return /*#__PURE__*/ _react.default.createElement(_react.default.Fragment, null, !disableRuntimeJS && buildManifest.devFiles ? buildManifest.devFiles.map((file)=>/*#__PURE__*/ _react.default.createElement("script", { + key: file, + src: `${assetPrefix}/_next/${encodeURI(file)}${devOnlyCacheBusterQueryString}`, + nonce: this.props.nonce, + crossOrigin: this.props.crossOrigin || crossOrigin + })) : null, disableRuntimeJS ? null : /*#__PURE__*/ _react.default.createElement("script", { + id: "__NEXT_DATA__", + type: "application/json", + nonce: this.props.nonce, + crossOrigin: this.props.crossOrigin || crossOrigin, + dangerouslySetInnerHTML: { + __html: NextScript.getInlineScriptSource(this.context) + } + }), disableOptimizedLoading && !disableRuntimeJS && this.getPolyfillScripts(), disableOptimizedLoading && !disableRuntimeJS && this.getPreNextScripts(), disableOptimizedLoading && !disableRuntimeJS && this.getDynamicChunks(files), disableOptimizedLoading && !disableRuntimeJS && this.getScripts(files)); + } +} +exports.NextScript = NextScript; +function Html(props) { + const { inAmpMode , docComponentsRendered , locale , scriptLoader , __NEXT_DATA__ } = (0, _react).useContext(_htmlContext.HtmlContext); + docComponentsRendered.Html = true; + handleDocumentScriptLoaderItems(scriptLoader, __NEXT_DATA__, props); + return /*#__PURE__*/ _react.default.createElement("html", Object.assign({}, props, { + lang: props.lang || locale || undefined, + amp: true && inAmpMode ? "" : undefined, + "data-ampdevmode": true && inAmpMode && "production" !== "production" ? 0 : undefined + })); +} +function Main() { + const { docComponentsRendered } = (0, _react).useContext(_htmlContext.HtmlContext); + docComponentsRendered.Main = true; + // @ts-ignore + return /*#__PURE__*/ _react.default.createElement("next-js-internal-body-render-target", null); +} +// Add a special property to the built-in `Document` component so later we can +// identify if a user customized `Document` is used or not. +const InternalFunctionDocument = function InternalFunctionDocument() { + return /*#__PURE__*/ _react.default.createElement(Html, null, /*#__PURE__*/ _react.default.createElement(Head, null), /*#__PURE__*/ _react.default.createElement("body", null, /*#__PURE__*/ _react.default.createElement(Main, null), /*#__PURE__*/ _react.default.createElement(NextScript, null))); +}; +Document[_constants.NEXT_BUILTIN_DOCUMENT] = InternalFunctionDocument; //# sourceMappingURL=_document.js.map + + +/***/ }), + +/***/ 676: +/***/ ((__unused_webpack_module, exports, __webpack_require__) => { + + +Object.defineProperty(exports, "__esModule", ({ + value: true +})); +exports["default"] = isError; +exports.getProperError = getProperError; +var _isPlainObject = __webpack_require__(524); +function isError(err) { + return typeof err === "object" && err !== null && "name" in err && "message" in err; +} +function getProperError(err) { + if (isError(err)) { + return err; + } + if (false) {} + return new Error((0, _isPlainObject).isPlainObject(err) ? JSON.stringify(err) : err + ""); +} + +//# sourceMappingURL=is-error.js.map + +/***/ }), + +/***/ 955: +/***/ ((__unused_webpack_module, exports) => { + +var __webpack_unused_export__; + +__webpack_unused_export__ = ({ + value: true +}); +exports.Z = prettyBytes; +function prettyBytes(number, options) { + if (!Number.isFinite(number)) { + throw new TypeError(`Expected a finite number, got ${typeof number}: ${number}`); + } + options = Object.assign({}, options); + if (options.signed && number === 0) { + return " 0 B"; + } + const isNegative = number < 0; + const prefix = isNegative ? "-" : options.signed ? "+" : ""; + if (isNegative) { + number = -number; + } + if (number < 1) { + const numberString = toLocaleString(number, options.locale); + return prefix + numberString + " B"; + } + const exponent = Math.min(Math.floor(Math.log10(number) / 3), UNITS.length - 1); + number = Number((number / Math.pow(1000, exponent)).toPrecision(3)); + const numberString = toLocaleString(number, options.locale); + const unit = UNITS[exponent]; + return prefix + numberString + " " + unit; +} +/* +MIT License + +Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +*/ const UNITS = [ + "B", + "kB", + "MB", + "GB", + "TB", + "PB", + "EB", + "ZB", + "YB" +]; +/* +Formats the given number using `Number#toLocaleString`. +- If locale is a string, the value is expected to be a locale-key (for example: `de`). +- If locale is true, the system default locale is used for translation. +- If no value for locale is specified, the number is returned unmodified. +*/ const toLocaleString = (number, locale)=>{ + let result = number; + if (typeof locale === "string") { + result = number.toLocaleString(locale); + } else if (locale === true) { + result = number.toLocaleString(); + } + return result; +}; + +//# sourceMappingURL=pretty-bytes.js.map + +/***/ }), + +/***/ 140: +/***/ ((module) => { + +module.exports = require("next/dist/server/get-page-files.js"); + +/***/ }), + +/***/ 716: +/***/ ((module) => { + +module.exports = require("next/dist/server/htmlescape.js"); + +/***/ }), + +/***/ 368: +/***/ ((module) => { + +module.exports = require("next/dist/server/utils.js"); + +/***/ }), + +/***/ 724: +/***/ ((module) => { + +module.exports = require("next/dist/shared/lib/constants.js"); + +/***/ }), + +/***/ 743: +/***/ ((module) => { + +module.exports = require("next/dist/shared/lib/html-context.js"); + +/***/ }), + +/***/ 524: +/***/ ((module) => { + +module.exports = require("next/dist/shared/lib/is-plain-object.js"); + +/***/ }), + +/***/ 689: +/***/ ((module) => { + +module.exports = require("react"); + +/***/ }) + +}; +; + +// load runtime +var __webpack_require__ = require("../webpack-runtime.js"); +__webpack_require__.C(exports); +var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId)) +var __webpack_exports__ = (__webpack_exec__(940)); +module.exports = __webpack_exports__; + +})(); \ No newline at end of file diff --git a/nextjs-tailwind/.next/server/pages/_error.js b/nextjs-tailwind/.next/server/pages/_error.js new file mode 100644 index 000000000..e50a3cfaf --- /dev/null +++ b/nextjs-tailwind/.next/server/pages/_error.js @@ -0,0 +1,445 @@ +"use strict"; +(() => { +var exports = {}; +exports.id = 820; +exports.ids = [820]; +exports.modules = { + +/***/ 495: +/***/ ((__unused_webpack_module, exports) => { + +var __webpack_unused_export__; + +__webpack_unused_export__ = ({ + value: true +}); +Object.defineProperty(exports, "Z", ({ + enumerable: true, + get: function() { + return _extends; + } +})); +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); +} +function _extends() { + return extends_.apply(this, arguments); +} + + +/***/ }), + +/***/ 648: +/***/ ((__unused_webpack_module, exports) => { + +var __webpack_unused_export__; + +__webpack_unused_export__ = ({ + value: true +}); +Object.defineProperty(exports, "Z", ({ + enumerable: true, + get: function() { + return _interopRequireDefault; + } +})); +function _interopRequireDefault(obj) { + return obj && obj.__esModule ? obj : { + default: obj + }; +} + + +/***/ }), + +/***/ 598: +/***/ ((__unused_webpack_module, exports) => { + +var __webpack_unused_export__; + +__webpack_unused_export__ = ({ + value: true +}); +Object.defineProperty(exports, "Z", ({ + enumerable: true, + get: function() { + return _interopRequireWildcard; + } +})); +function _getRequireWildcardCache(nodeInterop) { + if (typeof WeakMap !== "function") return null; + var cacheBabelInterop = new WeakMap(); + var cacheNodeInterop = new WeakMap(); + return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { + return nodeInterop ? cacheNodeInterop : cacheBabelInterop; + })(nodeInterop); +} +function _interopRequireWildcard(obj, nodeInterop) { + if (!nodeInterop && obj && obj.__esModule) { + return obj; + } + if (obj === null || typeof obj !== "object" && typeof obj !== "function") { + return { + default: obj + }; + } + var cache = _getRequireWildcardCache(nodeInterop); + if (cache && cache.has(obj)) { + return cache.get(obj); + } + var newObj = {}; + var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; + for(var key in obj){ + if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { + var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; + if (desc && (desc.get || desc.set)) { + Object.defineProperty(newObj, key, desc); + } else { + newObj[key] = obj[key]; + } + } + } + newObj.default = obj; + if (cache) { + cache.set(obj, newObj); + } + return newObj; +} + + +/***/ }), + +/***/ 499: +/***/ ((module, exports, __webpack_require__) => { + + +Object.defineProperty(exports, "__esModule", ({ + value: true +})); +exports["default"] = void 0; +var _interop_require_default = (__webpack_require__(648)/* ["default"] */ .Z); +var _react = _interop_require_default(__webpack_require__(689)); +var _head = _interop_require_default(__webpack_require__(636)); +const statusCodes = { + 400: "Bad Request", + 404: "This page could not be found", + 405: "Method Not Allowed", + 500: "Internal Server Error" +}; +function _getInitialProps({ res , err }) { + const statusCode = res && res.statusCode ? res.statusCode : err ? err.statusCode : 404; + return { + statusCode + }; +} +const styles = { + error: { + // https://github.com/sindresorhus/modern-normalize/blob/main/modern-normalize.css#L38-L52 + fontFamily: 'system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji"', + height: "100vh", + textAlign: "center", + display: "flex", + flexDirection: "column", + alignItems: "center", + justifyContent: "center" + }, + desc: { + display: "inline-block", + textAlign: "left" + }, + h1: { + display: "inline-block", + margin: "0 20px 0 0", + paddingRight: 23, + fontSize: 24, + fontWeight: 500, + verticalAlign: "top", + lineHeight: "49px" + }, + h2: { + fontSize: 14, + fontWeight: 400, + lineHeight: "49px", + margin: 0 + } +}; +var _Component; +class Error extends (_Component = _react.default.Component) { + render() { + const { statusCode , withDarkMode =true } = this.props; + const title = this.props.title || statusCodes[statusCode] || "An unexpected error has occurred"; + return /*#__PURE__*/ _react.default.createElement("div", { + style: styles.error + }, /*#__PURE__*/ _react.default.createElement(_head.default, null, /*#__PURE__*/ _react.default.createElement("title", null, statusCode ? `${statusCode}: ${title}` : "Application error: a client-side exception has occurred")), /*#__PURE__*/ _react.default.createElement("div", null, /*#__PURE__*/ _react.default.createElement("style", { + dangerouslySetInnerHTML: { + /* CSS minified from + body { margin: 0; color: #000; background: #fff; } + .next-error-h1 { + border-right: 1px solid rgba(0, 0, 0, .3); + } + + ${ + withDarkMode + ? `@media (prefers-color-scheme: dark) { + body { color: #fff; background: #000; } + .next-error-h1 { + border-right: 1px solid rgba(255, 255, 255, .3); + } + }` + : '' + } + */ __html: `body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}${withDarkMode ? "@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}" : ""}` + } + }), statusCode ? /*#__PURE__*/ _react.default.createElement("h1", { + className: "next-error-h1", + style: styles.h1 + }, statusCode) : null, /*#__PURE__*/ _react.default.createElement("div", { + style: styles.desc + }, /*#__PURE__*/ _react.default.createElement("h2", { + style: styles.h2 + }, this.props.title || statusCode ? title : /*#__PURE__*/ _react.default.createElement(_react.default.Fragment, null, "Application error: a client-side exception has occurred (see the browser console for more information)"), ".")))); + } +} +Error.displayName = "ErrorPage"; +Error.getInitialProps = _getInitialProps; +Error.origGetInitialProps = _getInitialProps; +exports["default"] = Error; +if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") { + Object.defineProperty(exports.default, "__esModule", { + value: true + }); + Object.assign(exports.default, exports); + module.exports = exports.default; +} //# sourceMappingURL=_error.js.map + + +/***/ }), + +/***/ 636: +/***/ ((module, exports, __webpack_require__) => { + + +"use client"; +Object.defineProperty(exports, "__esModule", ({ + value: true +})); +exports.defaultHead = defaultHead; +exports["default"] = void 0; +var _extends = (__webpack_require__(495)/* ["default"] */ .Z); +var _interop_require_default = (__webpack_require__(648)/* ["default"] */ .Z); +var _interop_require_wildcard = (__webpack_require__(598)/* ["default"] */ .Z); +var _react = _interop_require_wildcard(__webpack_require__(689)); +var _sideEffect = _interop_require_default(__webpack_require__(470)); +var _ampContext = __webpack_require__(918); +var _headManagerContext = __webpack_require__(796); +var _ampMode = __webpack_require__(732); +var _warnOnce = __webpack_require__(618); +function defaultHead(inAmpMode = false) { + const head = [ + /*#__PURE__*/ _react.default.createElement("meta", { + charSet: "utf-8" + }) + ]; + if (!inAmpMode) { + head.push(/*#__PURE__*/ _react.default.createElement("meta", { + name: "viewport", + content: "width=device-width" + })); + } + return head; +} +function onlyReactElement(list, child) { + // React children can be "string" or "number" in this case we ignore them for backwards compat + if (typeof child === "string" || typeof child === "number") { + return list; + } + // Adds support for React.Fragment + if (child.type === _react.default.Fragment) { + return list.concat(_react.default.Children.toArray(child.props.children).reduce((fragmentList, fragmentChild)=>{ + if (typeof fragmentChild === "string" || typeof fragmentChild === "number") { + return fragmentList; + } + return fragmentList.concat(fragmentChild); + }, [])); + } + return list.concat(child); +} +const METATYPES = [ + "name", + "httpEquiv", + "charSet", + "itemProp" +]; +/* + returns a function for filtering head child elements + which shouldn't be duplicated, like <title/> + Also adds support for deduplicated `key` properties +*/ function unique() { + const keys = new Set(); + const tags = new Set(); + const metaTypes = new Set(); + const metaCategories = {}; + return (h)=>{ + let isUnique = true; + let hasKey = false; + if (h.key && typeof h.key !== "number" && h.key.indexOf("$") > 0) { + hasKey = true; + const key = h.key.slice(h.key.indexOf("$") + 1); + if (keys.has(key)) { + isUnique = false; + } else { + keys.add(key); + } + } + // eslint-disable-next-line default-case + switch(h.type){ + case "title": + case "base": + if (tags.has(h.type)) { + isUnique = false; + } else { + tags.add(h.type); + } + break; + case "meta": + for(let i = 0, len = METATYPES.length; i < len; i++){ + const metatype = METATYPES[i]; + if (!h.props.hasOwnProperty(metatype)) continue; + if (metatype === "charSet") { + if (metaTypes.has(metatype)) { + isUnique = false; + } else { + metaTypes.add(metatype); + } + } else { + const category = h.props[metatype]; + const categories = metaCategories[metatype] || new Set(); + if ((metatype !== "name" || !hasKey) && categories.has(category)) { + isUnique = false; + } else { + categories.add(category); + metaCategories[metatype] = categories; + } + } + } + break; + } + return isUnique; + }; +} +/** + * + * @param headChildrenElements List of children of <Head> + */ function reduceComponents(headChildrenElements, props) { + const { inAmpMode } = props; + return headChildrenElements.reduce(onlyReactElement, []).reverse().concat(defaultHead(inAmpMode).reverse()).filter(unique()).reverse().map((c, i)=>{ + const key = c.key || i; + if ( true && !inAmpMode) { + if (c.type === "link" && c.props["href"] && // TODO(prateekbh@): Replace this with const from `constants` when the tree shaking works. + [ + "https://fonts.googleapis.com/css", + "https://use.typekit.net/" + ].some((url)=>c.props["href"].startsWith(url))) { + const newProps = _extends({}, c.props || {}); + newProps["data-href"] = newProps["href"]; + newProps["href"] = undefined; + // Add this attribute to make it easy to identify optimized tags + newProps["data-optimized-fonts"] = true; + return /*#__PURE__*/ _react.default.cloneElement(c, newProps); + } + } + if (false) {} + return /*#__PURE__*/ _react.default.cloneElement(c, { + key + }); + }); +} +/** + * This component injects elements to `<head>` of your page. + * To avoid duplicated `tags` in `<head>` you can use the `key` property, which will make sure every tag is only rendered once. + */ function Head({ children }) { + const ampState = (0, _react).useContext(_ampContext.AmpStateContext); + const headManager = (0, _react).useContext(_headManagerContext.HeadManagerContext); + return /*#__PURE__*/ _react.default.createElement(_sideEffect.default, { + reduceComponentsToState: reduceComponents, + headManager: headManager, + inAmpMode: (0, _ampMode).isInAmpMode(ampState) + }, children); +} +var _default = Head; +exports["default"] = _default; +if ((typeof exports.default === "function" || typeof exports.default === "object" && exports.default !== null) && typeof exports.default.__esModule === "undefined") { + Object.defineProperty(exports.default, "__esModule", { + value: true + }); + Object.assign(exports.default, exports); + module.exports = exports.default; +} //# sourceMappingURL=head.js.map + + +/***/ }), + +/***/ 918: +/***/ ((module) => { + +module.exports = require("next/dist/shared/lib/amp-context.js"); + +/***/ }), + +/***/ 732: +/***/ ((module) => { + +module.exports = require("next/dist/shared/lib/amp-mode.js"); + +/***/ }), + +/***/ 796: +/***/ ((module) => { + +module.exports = require("next/dist/shared/lib/head-manager-context.js"); + +/***/ }), + +/***/ 470: +/***/ ((module) => { + +module.exports = require("next/dist/shared/lib/side-effect.js"); + +/***/ }), + +/***/ 618: +/***/ ((module) => { + +module.exports = require("next/dist/shared/lib/utils/warn-once.js"); + +/***/ }), + +/***/ 689: +/***/ ((module) => { + +module.exports = require("react"); + +/***/ }) + +}; +; + +// load runtime +var __webpack_require__ = require("../webpack-runtime.js"); +__webpack_require__.C(exports); +var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId)) +var __webpack_exports__ = (__webpack_exec__(499)); +module.exports = __webpack_exports__; + +})(); \ No newline at end of file diff --git a/nextjs-tailwind/.next/server/webpack-runtime.js b/nextjs-tailwind/.next/server/webpack-runtime.js new file mode 100644 index 000000000..d1b7f2b64 --- /dev/null +++ b/nextjs-tailwind/.next/server/webpack-runtime.js @@ -0,0 +1,160 @@ +/******/ (() => { // webpackBootstrap +/******/ "use strict"; +/******/ var __webpack_modules__ = ({}); +/************************************************************************/ +/******/ // The module cache +/******/ var __webpack_module_cache__ = {}; +/******/ +/******/ // The require function +/******/ function __webpack_require__(moduleId) { +/******/ // Check if module is in cache +/******/ var cachedModule = __webpack_module_cache__[moduleId]; +/******/ if (cachedModule !== undefined) { +/******/ return cachedModule.exports; +/******/ } +/******/ // Create a new module (and put it into the cache) +/******/ var module = __webpack_module_cache__[moduleId] = { +/******/ // no module.id needed +/******/ // no module.loaded needed +/******/ exports: {} +/******/ }; +/******/ +/******/ // Execute the module function +/******/ var threw = true; +/******/ try { +/******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__); +/******/ threw = false; +/******/ } finally { +/******/ if(threw) delete __webpack_module_cache__[moduleId]; +/******/ } +/******/ +/******/ // Return the exports of the module +/******/ return module.exports; +/******/ } +/******/ +/******/ // expose the modules object (__webpack_modules__) +/******/ __webpack_require__.m = __webpack_modules__; +/******/ +/************************************************************************/ +/******/ /* webpack/runtime/compat get default export */ +/******/ (() => { +/******/ // getDefaultExport function for compatibility with non-harmony modules +/******/ __webpack_require__.n = (module) => { +/******/ var getter = module && module.__esModule ? +/******/ () => (module['default']) : +/******/ () => (module); +/******/ __webpack_require__.d(getter, { a: getter }); +/******/ return getter; +/******/ }; +/******/ })(); +/******/ +/******/ /* webpack/runtime/define property getters */ +/******/ (() => { +/******/ // define getter functions for harmony exports +/******/ __webpack_require__.d = (exports, definition) => { +/******/ for(var key in definition) { +/******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) { +/******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] }); +/******/ } +/******/ } +/******/ }; +/******/ })(); +/******/ +/******/ /* webpack/runtime/ensure chunk */ +/******/ (() => { +/******/ __webpack_require__.f = {}; +/******/ // This file contains only the entry chunk. +/******/ // The chunk loading function for additional chunks +/******/ __webpack_require__.e = (chunkId) => { +/******/ return Promise.all(Object.keys(__webpack_require__.f).reduce((promises, key) => { +/******/ __webpack_require__.f[key](chunkId, promises); +/******/ return promises; +/******/ }, [])); +/******/ }; +/******/ })(); +/******/ +/******/ /* webpack/runtime/get javascript chunk filename */ +/******/ (() => { +/******/ // This function allow to reference async chunks and sibling chunks for the entrypoint +/******/ __webpack_require__.u = (chunkId) => { +/******/ // return url for filenames based on template +/******/ return "" + chunkId + ".js"; +/******/ }; +/******/ })(); +/******/ +/******/ /* webpack/runtime/hasOwnProperty shorthand */ +/******/ (() => { +/******/ __webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop)) +/******/ })(); +/******/ +/******/ /* webpack/runtime/make namespace object */ +/******/ (() => { +/******/ // define __esModule on exports +/******/ __webpack_require__.r = (exports) => { +/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { +/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); +/******/ } +/******/ Object.defineProperty(exports, '__esModule', { value: true }); +/******/ }; +/******/ })(); +/******/ +/******/ /* webpack/runtime/startup entrypoint */ +/******/ (() => { +/******/ __webpack_require__.X = (result, chunkIds, fn) => { +/******/ // arguments: chunkIds, moduleId are deprecated +/******/ var moduleId = chunkIds; +/******/ if(!fn) chunkIds = result, fn = () => (__webpack_require__(__webpack_require__.s = moduleId)); +/******/ chunkIds.map(__webpack_require__.e, __webpack_require__) +/******/ var r = fn(); +/******/ return r === undefined ? result : r; +/******/ } +/******/ })(); +/******/ +/******/ /* webpack/runtime/require chunk loading */ +/******/ (() => { +/******/ // no baseURI +/******/ +/******/ // object to store loaded chunks +/******/ // "1" means "loaded", otherwise not loaded yet +/******/ var installedChunks = { +/******/ 658: 1 +/******/ }; +/******/ +/******/ // no on chunks loaded +/******/ +/******/ var installChunk = (chunk) => { +/******/ var moreModules = chunk.modules, chunkIds = chunk.ids, runtime = chunk.runtime; +/******/ for(var moduleId in moreModules) { +/******/ if(__webpack_require__.o(moreModules, moduleId)) { +/******/ __webpack_require__.m[moduleId] = moreModules[moduleId]; +/******/ } +/******/ } +/******/ if(runtime) runtime(__webpack_require__); +/******/ for(var i = 0; i < chunkIds.length; i++) +/******/ installedChunks[chunkIds[i]] = 1; +/******/ +/******/ }; +/******/ +/******/ // require() chunk loading for javascript +/******/ __webpack_require__.f.require = (chunkId, promises) => { +/******/ // "1" is the signal for "already loaded" +/******/ if(!installedChunks[chunkId]) { +/******/ if(658 != chunkId) { +/******/ installChunk(require("./chunks/" + __webpack_require__.u(chunkId))); +/******/ } else installedChunks[chunkId] = 1; +/******/ } +/******/ }; +/******/ +/******/ module.exports = __webpack_require__; +/******/ __webpack_require__.C = installChunk; +/******/ +/******/ // no HMR +/******/ +/******/ // no HMR manifest +/******/ })(); +/******/ +/************************************************************************/ +/******/ +/******/ +/******/ })() +; \ No newline at end of file diff --git a/nextjs-tailwind/.next/trace b/nextjs-tailwind/.next/trace new file mode 100644 index 000000000..b99319cdc --- /dev/null +++ b/nextjs-tailwind/.next/trace @@ -0,0 +1,9 @@ +<<<<<<< HEAD +[{"traceId":"323b56869b39b0c2","name":"hot-reloader","id":1,"timestamp":6808506664,"duration":181,"tags":{"version":"13.2.4"},"startTime":1679684178735},{"traceId":"323b56869b39b0c2","parentId":1,"name":"start","id":2,"timestamp":6808512840,"duration":18,"tags":{},"startTime":1679684178741},{"traceId":"323b56869b39b0c2","parentId":2,"name":"get-version-info","id":3,"timestamp":6808514588,"duration":10033701,"tags":{},"startTime":1679684178743},{"traceId":"323b56869b39b0c2","parentId":2,"name":"clean","id":4,"timestamp":6818548578,"duration":229184,"tags":{},"startTime":1679684188777},{"traceId":"323b56869b39b0c2","parentId":5,"name":"get-page-paths","id":6,"timestamp":6818804345,"duration":6482,"tags":{},"startTime":1679684189033},{"traceId":"323b56869b39b0c2","parentId":5,"name":"create-pages-mapping","id":7,"timestamp":6818810951,"duration":1524,"tags":{},"startTime":1679684189039},{"traceId":"323b56869b39b0c2","parentId":5,"name":"create-entrypoints","id":8,"timestamp":6818812597,"duration":26519,"tags":{},"startTime":1679684189041},{"traceId":"323b56869b39b0c2","parentId":5,"name":"generate-webpack-config","id":9,"timestamp":6818839291,"duration":882221,"tags":{},"startTime":1679684189068},{"traceId":"323b56869b39b0c2","parentId":2,"name":"get-webpack-config","id":5,"timestamp":6818803560,"duration":918004,"tags":{},"startTime":1679684189032},{"traceId":"323b56869b39b0c2","parentId":10,"name":"add-entry","id":12,"timestamp":6820241730,"duration":2674625,"tags":{"request":"C:\\Users\\Kille\\OneDrive\\Desktop\\Web Development\\mywebclass-simulation-intermediate\\nextjs-tailwind\\node_modules\\next\\dist\\compiled\\@next\\react-refresh-utils\\dist\\runtime.js"},"startTime":1679684190470},{"traceId":"323b56869b39b0c2","parentId":10,"name":"add-entry","id":13,"timestamp":6820243793,"duration":2833470,"tags":{"request":"./node_modules/next/dist/client/dev/amp-dev"},"startTime":1679684190472},{"traceId":"323b56869b39b0c2","parentId":10,"name":"add-entry","id":17,"timestamp":6820244110,"duration":3081045,"tags":{"request":"next-client-pages-loader?absolutePagePath=private-next-pages%2F_error&page=%2F_error!"},"startTime":1679684190472},{"traceId":"323b56869b39b0c2","parentId":10,"name":"add-entry","id":16,"timestamp":6820244039,"duration":3129079,"tags":{"request":"C:\\Users\\Kille\\OneDrive\\Desktop\\Web Development\\mywebclass-simulation-intermediate\\nextjs-tailwind\\node_modules\\next\\dist\\client\\router.js"},"startTime":1679684190472},{"traceId":"323b56869b39b0c2","parentId":10,"name":"add-entry","id":14,"timestamp":6820243906,"duration":3129332,"tags":{"request":"./node_modules/next/dist/client/next-dev.js"},"startTime":1679684190472},{"traceId":"323b56869b39b0c2","parentId":19,"name":"next-swc-transform","id":20,"timestamp":6823249475,"duration":399589,"tags":{},"startTime":1679684193478},{"traceId":"323b56869b39b0c2","parentId":18,"name":"next-swc-loader","id":19,"timestamp":6823246484,"duration":402663,"tags":{},"startTime":1679684193475},{"traceId":"323b56869b39b0c2","parentId":10,"name":"build-module-jsx","id":18,"timestamp":6823217554,"duration":701007,"tags":{"name":"C:\\Users\\Kille\\OneDrive\\Desktop\\Web Development\\mywebclass-simulation-intermediate\\nextjs-tailwind\\pages\\_app.jsx"},"startTime":1679684193446},{"traceId":"323b56869b39b0c2","parentId":21,"name":"read-resource","id":22,"timestamp":6824359541,"duration":40513,"tags":{},"startTime":1679684194588},{"traceId":"323b56869b39b0c2","parentId":23,"name":"postcss-process","id":24,"timestamp":6827044980,"duration":691556,"tags":{},"startTime":1679684197273},{"traceId":"323b56869b39b0c2","parentId":21,"name":"postcss-loader","id":23,"timestamp":6824400637,"duration":3339654,"tags":{},"startTime":1679684194629},{"traceId":"323b56869b39b0c2","parentId":21,"name":"css-loader","id":25,"timestamp":6827740949,"duration":148944,"tags":{"astUsed":"true"},"startTime":1679684197969},{"traceId":"323b56869b39b0c2","parentId":10,"name":"build-module-css","id":21,"timestamp":6824313454,"duration":3624208,"tags":{"name":"C:\\Users\\Kille\\OneDrive\\Desktop\\Web Development\\mywebclass-simulation-intermediate\\nextjs-tailwind\\node_modules\\next\\dist\\build\\webpack\\loaders\\css-loader\\src\\index.js??ruleSet[1].rules[1].oneOf[13].use[1]!C:\\Users\\Kille\\OneDrive\\Desktop\\Web Development\\mywebclass-simulation-intermediate\\nextjs-tailwind\\node_modules\\next\\dist\\build\\webpack\\loaders\\postcss-loader\\src\\index.js??ruleSet[1].rules[1].oneOf[13].use[2]!C:\\Users\\Kille\\OneDrive\\Desktop\\Web Development\\mywebclass-simulation-intermediate\\nextjs-tailwind\\styles\\globals.css"},"startTime":1679684194542},{"traceId":"323b56869b39b0c2","parentId":10,"name":"add-entry","id":15,"timestamp":6820243980,"duration":7703623,"tags":{"request":"next-client-pages-loader?absolutePagePath=private-next-pages%2F_app&page=%2F_app!"},"startTime":1679684190472},{"traceId":"323b56869b39b0c2","parentId":1,"name":"make","id":11,"timestamp":6820234621,"duration":7714202,"tags":{},"startTime":1679684190463},{"traceId":"323b56869b39b0c2","parentId":10,"name":"webpack-compilation-chunk-graph","id":27,"timestamp":6827973232,"duration":24682,"tags":{},"startTime":1679684198202},{"traceId":"323b56869b39b0c2","parentId":10,"name":"webpack-compilation-optimize-modules","id":29,"timestamp":6827998238,"duration":70,"tags":{},"startTime":1679684198227},{"traceId":"323b56869b39b0c2","parentId":10,"name":"webpack-compilation-optimize-chunks","id":30,"timestamp":6827998644,"duration":1425,"tags":{},"startTime":1679684198227},{"traceId":"323b56869b39b0c2","parentId":10,"name":"webpack-compilation-optimize-tree","id":31,"timestamp":6828000287,"duration":362,"tags":{},"startTime":1679684198229},{"traceId":"323b56869b39b0c2","parentId":10,"name":"webpack-compilation-optimize","id":28,"timestamp":6827998112,"duration":4080,"tags":{},"startTime":1679684198226},{"traceId":"323b56869b39b0c2","parentId":10,"name":"webpack-compilation-hash","id":32,"timestamp":6828098674,"duration":98655,"tags":{},"startTime":1679684198327},{"traceId":"323b56869b39b0c2","parentId":10,"name":"NextJsBuildManifest-generateClientManifest","id":34,"timestamp":6828294516,"duration":3259,"tags":{},"startTime":1679684198523},{"traceId":"323b56869b39b0c2","parentId":10,"name":"NextJsBuildManifest-createassets","id":33,"timestamp":6828292241,"duration":5626,"tags":{},"startTime":1679684198521},{"traceId":"323b56869b39b0c2","parentId":10,"name":"webpack-compilation-seal","id":26,"timestamp":6827969200,"duration":334312,"tags":{},"startTime":1679684198198},{"traceId":"323b56869b39b0c2","parentId":1,"name":"webpack-compilation","id":10,"timestamp":6820208470,"duration":8096587,"tags":{"name":"client"},"startTime":1679684190437},{"traceId":"323b56869b39b0c2","parentId":1,"name":"emit","id":35,"timestamp":6828306503,"duration":222687,"tags":{},"startTime":1679684198535},{"traceId":"323b56869b39b0c2","parentId":42,"name":"next-swc-transform","id":43,"timestamp":6829083785,"duration":12065,"tags":{},"startTime":1679684199312},{"traceId":"323b56869b39b0c2","parentId":41,"name":"next-swc-loader","id":42,"timestamp":6829083063,"duration":12820,"tags":{},"startTime":1679684199311},{"traceId":"323b56869b39b0c2","parentId":36,"name":"build-module-jsx","id":41,"timestamp":6829080176,"duration":22138,"tags":{"name":"C:\\Users\\Kille\\OneDrive\\Desktop\\Web Development\\mywebclass-simulation-intermediate\\nextjs-tailwind\\pages\\_app.jsx"},"startTime":1679684199309},{"traceId":"323b56869b39b0c2","parentId":36,"name":"add-entry","id":40,"timestamp":6828835103,"duration":278136,"tags":{"request":"private-next-pages/_document"},"startTime":1679684199063},{"traceId":"323b56869b39b0c2","parentId":36,"name":"add-entry","id":39,"timestamp":6828834949,"duration":283221,"tags":{"request":"private-next-pages/_error"},"startTime":1679684199063},{"traceId":"323b56869b39b0c2","parentId":44,"name":"read-resource","id":45,"timestamp":6829125252,"duration":816,"tags":{},"startTime":1679684199354},{"traceId":"323b56869b39b0c2","parentId":41,"name":"build-module-css","id":44,"timestamp":6829121549,"duration":5457,"tags":{"name":"C:\\Users\\Kille\\OneDrive\\Desktop\\Web Development\\mywebclass-simulation-intermediate\\nextjs-tailwind\\styles\\globals.css"},"startTime":1679684199350},{"traceId":"323b56869b39b0c2","parentId":36,"name":"add-entry","id":38,"timestamp":6828833938,"duration":293211,"tags":{"request":"private-next-pages/_app"},"startTime":1679684199062},{"traceId":"323b56869b39b0c2","parentId":1,"name":"make","id":37,"timestamp":6828656317,"duration":471015,"tags":{},"startTime":1679684198885},{"traceId":"323b56869b39b0c2","parentId":36,"name":"webpack-compilation-chunk-graph","id":47,"timestamp":6829129019,"duration":2034,"tags":{},"startTime":1679684199357},{"traceId":"323b56869b39b0c2","parentId":36,"name":"webpack-compilation-optimize-modules","id":49,"timestamp":6829131141,"duration":167,"tags":{},"startTime":1679684199360},{"traceId":"323b56869b39b0c2","parentId":36,"name":"webpack-compilation-optimize-chunks","id":50,"timestamp":6829131524,"duration":278,"tags":{},"startTime":1679684199360},{"traceId":"323b56869b39b0c2","parentId":36,"name":"webpack-compilation-optimize-tree","id":51,"timestamp":6829131967,"duration":83,"tags":{},"startTime":1679684199360},{"traceId":"323b56869b39b0c2","parentId":36,"name":"webpack-compilation-optimize","id":48,"timestamp":6829131107,"duration":1256,"tags":{},"startTime":1679684199359},{"traceId":"323b56869b39b0c2","parentId":36,"name":"webpack-compilation-hash","id":52,"timestamp":6829140889,"duration":4745,"tags":{},"startTime":1679684199369},{"traceId":"323b56869b39b0c2","parentId":36,"name":"webpack-compilation-seal","id":46,"timestamp":6829128716,"duration":19417,"tags":{},"startTime":1679684199357},{"traceId":"323b56869b39b0c2","parentId":1,"name":"webpack-compilation","id":36,"timestamp":6828630946,"duration":517352,"tags":{"name":"server"},"startTime":1679684198859},{"traceId":"323b56869b39b0c2","parentId":1,"name":"emit","id":53,"timestamp":6829148485,"duration":33743,"tags":{},"startTime":1679684199377},{"traceId":"323b56869b39b0c2","parentId":1,"name":"make","id":55,"timestamp":6829201404,"duration":6816,"tags":{},"startTime":1679684199430},{"traceId":"323b56869b39b0c2","parentId":54,"name":"webpack-compilation-chunk-graph","id":57,"timestamp":6829211259,"duration":77,"tags":{},"startTime":1679684199440},{"traceId":"323b56869b39b0c2","parentId":54,"name":"webpack-compilation-optimize-modules","id":59,"timestamp":6829211409,"duration":15,"tags":{},"startTime":1679684199440},{"traceId":"323b56869b39b0c2","parentId":54,"name":"webpack-compilation-optimize-chunks","id":60,"timestamp":6829211464,"duration":26,"tags":{},"startTime":1679684199440},{"traceId":"323b56869b39b0c2","parentId":54,"name":"webpack-compilation-optimize-tree","id":61,"timestamp":6829211534,"duration":14,"tags":{},"startTime":1679684199440},{"traceId":"323b56869b39b0c2","parentId":54,"name":"webpack-compilation-optimize","id":58,"timestamp":6829211380,"duration":239,"tags":{},"startTime":1679684199440},{"traceId":"323b56869b39b0c2","parentId":54,"name":"webpack-compilation-hash","id":62,"timestamp":6829212030,"duration":189,"tags":{},"startTime":1679684199440},{"traceId":"323b56869b39b0c2","parentId":54,"name":"webpack-compilation-seal","id":56,"timestamp":6829211148,"duration":2194,"tags":{},"startTime":1679684199440},{"traceId":"323b56869b39b0c2","parentId":1,"name":"webpack-compilation","id":54,"timestamp":6829196953,"duration":16492,"tags":{"name":"edge-server"},"startTime":1679684199425},{"traceId":"323b56869b39b0c2","parentId":1,"name":"emit","id":63,"timestamp":6829213555,"duration":68178,"tags":{},"startTime":1679684199442}] +[{"traceId":"323b56869b39b0c2","parentId":65,"name":"add-entry","id":67,"timestamp":6829308557,"duration":54844,"tags":{"request":"C:\\Users\\Kille\\OneDrive\\Desktop\\Web Development\\mywebclass-simulation-intermediate\\nextjs-tailwind\\node_modules\\next\\dist\\compiled\\@next\\react-refresh-utils\\dist\\runtime.js"},"startTime":1679684199537},{"traceId":"323b56869b39b0c2","parentId":65,"name":"add-entry","id":71,"timestamp":6829308969,"duration":62760,"tags":{"request":"C:\\Users\\Kille\\OneDrive\\Desktop\\Web Development\\mywebclass-simulation-intermediate\\nextjs-tailwind\\node_modules\\next\\dist\\client\\router.js"},"startTime":1679684199537},{"traceId":"323b56869b39b0c2","parentId":73,"name":"read-resource","id":74,"timestamp":6829375173,"duration":576,"tags":{},"startTime":1679684199604},{"traceId":"323b56869b39b0c2","parentId":75,"name":"postcss-process","id":76,"timestamp":6829376022,"duration":336077,"tags":{},"startTime":1679684199604},{"traceId":"323b56869b39b0c2","parentId":73,"name":"postcss-loader","id":75,"timestamp":6829375914,"duration":338087,"tags":{},"startTime":1679684199604},{"traceId":"323b56869b39b0c2","parentId":73,"name":"css-loader","id":77,"timestamp":6829714127,"duration":80973,"tags":{"astUsed":"true"},"startTime":1679684199943},{"traceId":"323b56869b39b0c2","parentId":65,"name":"build-module-css","id":73,"timestamp":6829373766,"duration":433240,"tags":{"name":"C:\\Users\\Kille\\OneDrive\\Desktop\\Web Development\\mywebclass-simulation-intermediate\\nextjs-tailwind\\node_modules\\next\\dist\\build\\webpack\\loaders\\css-loader\\src\\index.js??ruleSet[1].rules[1].oneOf[13].use[1]!C:\\Users\\Kille\\OneDrive\\Desktop\\Web Development\\mywebclass-simulation-intermediate\\nextjs-tailwind\\node_modules\\next\\dist\\build\\webpack\\loaders\\postcss-loader\\src\\index.js??ruleSet[1].rules[1].oneOf[13].use[2]!C:\\Users\\Kille\\OneDrive\\Desktop\\Web Development\\mywebclass-simulation-intermediate\\nextjs-tailwind\\styles\\globals.css"},"startTime":1679684199602},{"traceId":"323b56869b39b0c2","parentId":65,"name":"add-entry","id":72,"timestamp":6829309023,"duration":498772,"tags":{"request":"next-client-pages-loader?absolutePagePath=private-next-pages%2F_error&page=%2F_error!"},"startTime":1679684199537},{"traceId":"323b56869b39b0c2","parentId":65,"name":"add-entry","id":68,"timestamp":6829308841,"duration":502114,"tags":{"request":"./node_modules/next/dist/client/dev/amp-dev"},"startTime":1679684199537},{"traceId":"323b56869b39b0c2","parentId":65,"name":"add-entry","id":69,"timestamp":6829308896,"duration":502592,"tags":{"request":"./node_modules/next/dist/client/next-dev.js"},"startTime":1679684199537},{"traceId":"323b56869b39b0c2","parentId":65,"name":"add-entry","id":70,"timestamp":6829308938,"duration":502590,"tags":{"request":"next-client-pages-loader?absolutePagePath=private-next-pages%2F_app&page=%2F_app!"},"startTime":1679684199537},{"traceId":"323b56869b39b0c2","parentId":64,"name":"make","id":66,"timestamp":6829306476,"duration":505127,"tags":{},"startTime":1679684199535},{"traceId":"323b56869b39b0c2","parentId":65,"name":"webpack-compilation-chunk-graph","id":79,"timestamp":6829818833,"duration":14943,"tags":{},"startTime":1679684200047},{"traceId":"323b56869b39b0c2","parentId":65,"name":"webpack-compilation-optimize-modules","id":81,"timestamp":6829834236,"duration":33,"tags":{},"startTime":1679684200063},{"traceId":"323b56869b39b0c2","parentId":65,"name":"webpack-compilation-optimize-chunks","id":82,"timestamp":6829834586,"duration":2702,"tags":{},"startTime":1679684200063},{"traceId":"323b56869b39b0c2","parentId":65,"name":"webpack-compilation-optimize-tree","id":83,"timestamp":6829837791,"duration":105,"tags":{},"startTime":1679684200066},{"traceId":"323b56869b39b0c2","parentId":65,"name":"webpack-compilation-optimize","id":80,"timestamp":6829834176,"duration":6243,"tags":{},"startTime":1679684200063},{"traceId":"323b56869b39b0c2","parentId":65,"name":"webpack-compilation-hash","id":84,"timestamp":6829876057,"duration":22209,"tags":{},"startTime":1679684200104},{"traceId":"323b56869b39b0c2","parentId":65,"name":"NextJsBuildManifest-generateClientManifest","id":86,"timestamp":6829909338,"duration":600,"tags":{},"startTime":1679684200138},{"traceId":"323b56869b39b0c2","parentId":65,"name":"NextJsBuildManifest-createassets","id":85,"timestamp":6829908268,"duration":1724,"tags":{},"startTime":1679684200137},{"traceId":"323b56869b39b0c2","parentId":65,"name":"webpack-compilation-seal","id":78,"timestamp":6829815128,"duration":96651,"tags":{},"startTime":1679684200043},{"traceId":"323b56869b39b0c2","parentId":64,"name":"webpack-compilation","id":65,"timestamp":6829303346,"duration":608876,"tags":{"name":"client"},"startTime":1679684199532},{"traceId":"323b56869b39b0c2","parentId":64,"name":"emit","id":87,"timestamp":6829912388,"duration":51176,"tags":{},"startTime":1679684200141},{"traceId":"323b56869b39b0c2","parentId":1,"name":"webpack-invalidated-client","id":64,"timestamp":6829289340,"duration":687205,"tags":{"trigger":"manual"},"startTime":1679684199518}] +[{"traceId":"323b56869b39b0c2","parentId":90,"name":"add-entry","id":92,"timestamp":6830761297,"duration":74571,"tags":{"request":"C:\\Users\\Kille\\OneDrive\\Desktop\\Web Development\\mywebclass-simulation-intermediate\\nextjs-tailwind\\node_modules\\next\\dist\\compiled\\@next\\react-refresh-utils\\dist\\runtime.js"},"startTime":1679684200990},{"traceId":"323b56869b39b0c2","parentId":90,"name":"add-entry","id":96,"timestamp":6830762802,"duration":84643,"tags":{"request":"C:\\Users\\Kille\\OneDrive\\Desktop\\Web Development\\mywebclass-simulation-intermediate\\nextjs-tailwind\\node_modules\\next\\dist\\client\\router.js"},"startTime":1679684200991},{"traceId":"323b56869b39b0c2","parentId":90,"name":"add-entry","id":93,"timestamp":6830761573,"duration":86073,"tags":{"request":"./node_modules/next/dist/client/dev/amp-dev"},"startTime":1679684200990},{"traceId":"323b56869b39b0c2","parentId":90,"name":"add-entry","id":97,"timestamp":6830763465,"duration":87528,"tags":{"request":"next-client-pages-loader?absolutePagePath=private-next-pages%2F_error&page=%2F_error!"},"startTime":1679684200992},{"traceId":"323b56869b39b0c2","parentId":90,"name":"add-entry","id":95,"timestamp":6830762706,"duration":99618,"tags":{"request":"next-client-pages-loader?absolutePagePath=private-next-pages%2F_app&page=%2F_app!"},"startTime":1679684200991},{"traceId":"323b56869b39b0c2","parentId":90,"name":"add-entry","id":94,"timestamp":6830762547,"duration":104101,"tags":{"request":"./node_modules/next/dist/client/next-dev.js"},"startTime":1679684200991},{"traceId":"323b56869b39b0c2","parentId":100,"name":"next-swc-transform","id":101,"timestamp":6830853206,"duration":36658,"tags":{},"startTime":1679684201082},{"traceId":"323b56869b39b0c2","parentId":99,"name":"next-swc-loader","id":100,"timestamp":6830852859,"duration":37042,"tags":{},"startTime":1679684201081},{"traceId":"323b56869b39b0c2","parentId":90,"name":"build-module-jsx","id":99,"timestamp":6830851513,"duration":75132,"tags":{"name":"C:\\Users\\Kille\\OneDrive\\Desktop\\Web Development\\mywebclass-simulation-intermediate\\nextjs-tailwind\\pages\\index.jsx"},"startTime":1679684201080},{"traceId":"323b56869b39b0c2","parentId":106,"name":"next-swc-transform","id":107,"timestamp":6830992638,"duration":25806,"tags":{},"startTime":1679684201221},{"traceId":"323b56869b39b0c2","parentId":103,"name":"next-swc-loader","id":106,"timestamp":6830992569,"duration":25913,"tags":{},"startTime":1679684201221},{"traceId":"323b56869b39b0c2","parentId":99,"name":"build-module-jsx","id":103,"timestamp":6830992290,"duration":54892,"tags":{"name":"C:\\Users\\Kille\\OneDrive\\Desktop\\Web Development\\mywebclass-simulation-intermediate\\nextjs-tailwind\\components\\Header.jsx"},"startTime":1679684201221},{"traceId":"323b56869b39b0c2","parentId":104,"name":"next-swc-transform","id":105,"timestamp":6830992564,"duration":59791,"tags":{},"startTime":1679684201221},{"traceId":"323b56869b39b0c2","parentId":102,"name":"next-swc-loader","id":104,"timestamp":6830992450,"duration":59937,"tags":{},"startTime":1679684201221},{"traceId":"323b56869b39b0c2","parentId":99,"name":"build-module-jsx","id":102,"timestamp":6830991983,"duration":76697,"tags":{"name":"C:\\Users\\Kille\\OneDrive\\Desktop\\Web Development\\mywebclass-simulation-intermediate\\nextjs-tailwind\\components\\Footer.jsx"},"startTime":1679684201220},{"traceId":"323b56869b39b0c2","parentId":90,"name":"add-entry","id":98,"timestamp":6830763579,"duration":380555,"tags":{"request":"next-client-pages-loader?absolutePagePath=C%3A%5CUsers%5CKille%5COneDrive%5CDesktop%5CWeb%20Development%5Cmywebclass-simulation-intermediate%5Cnextjs-tailwind%5Cpages%5Cindex.jsx&page=%2F!"},"startTime":1679684200992},{"traceId":"323b56869b39b0c2","parentId":88,"name":"make","id":91,"timestamp":6830394068,"duration":750130,"tags":{},"startTime":1679684200622},{"traceId":"323b56869b39b0c2","parentId":90,"name":"webpack-compilation-chunk-graph","id":109,"timestamp":6831146984,"duration":3386,"tags":{},"startTime":1679684201375},{"traceId":"323b56869b39b0c2","parentId":90,"name":"webpack-compilation-optimize-modules","id":111,"timestamp":6831150482,"duration":17,"tags":{},"startTime":1679684201379},{"traceId":"323b56869b39b0c2","parentId":90,"name":"webpack-compilation-optimize-chunks","id":112,"timestamp":6831150531,"duration":89,"tags":{},"startTime":1679684201379},{"traceId":"323b56869b39b0c2","parentId":90,"name":"webpack-compilation-optimize-tree","id":113,"timestamp":6831150661,"duration":12,"tags":{},"startTime":1679684201379},{"traceId":"323b56869b39b0c2","parentId":90,"name":"webpack-compilation-optimize","id":110,"timestamp":6831150433,"duration":591,"tags":{},"startTime":1679684201379},{"traceId":"323b56869b39b0c2","parentId":90,"name":"webpack-compilation-hash","id":114,"timestamp":6831161509,"duration":17929,"tags":{},"startTime":1679684201390},{"traceId":"323b56869b39b0c2","parentId":90,"name":"NextJsBuildManifest-generateClientManifest","id":116,"timestamp":6831186971,"duration":977,"tags":{},"startTime":1679684201415},{"traceId":"323b56869b39b0c2","parentId":90,"name":"NextJsBuildManifest-createassets","id":115,"timestamp":6831186642,"duration":1347,"tags":{},"startTime":1679684201415},{"traceId":"323b56869b39b0c2","parentId":90,"name":"webpack-compilation-seal","id":108,"timestamp":6831146432,"duration":43372,"tags":{},"startTime":1679684201375},{"traceId":"323b56869b39b0c2","parentId":88,"name":"webpack-compilation","id":90,"timestamp":6830387977,"duration":801954,"tags":{"name":"client"},"startTime":1679684200616},{"traceId":"323b56869b39b0c2","parentId":88,"name":"emit","id":117,"timestamp":6831190054,"duration":57967,"tags":{},"startTime":1679684201418},{"traceId":"323b56869b39b0c2","parentId":1,"name":"webpack-invalidated-client","id":88,"timestamp":6830371324,"duration":885810,"tags":{"trigger":"manual"},"startTime":1679684200600},{"traceId":"323b56869b39b0c2","parentId":118,"name":"add-entry","id":120,"timestamp":6831331644,"duration":44577,"tags":{"request":"private-next-pages/_app"},"startTime":1679684201560},{"traceId":"323b56869b39b0c2","parentId":118,"name":"add-entry","id":122,"timestamp":6831332341,"duration":46383,"tags":{"request":"private-next-pages/_document"},"startTime":1679684201561},{"traceId":"323b56869b39b0c2","parentId":118,"name":"add-entry","id":121,"timestamp":6831332190,"duration":56311,"tags":{"request":"private-next-pages/_error"},"startTime":1679684201561},{"traceId":"323b56869b39b0c2","parentId":125,"name":"next-swc-transform","id":126,"timestamp":6831870469,"duration":9193,"tags":{},"startTime":1679684202099},{"traceId":"323b56869b39b0c2","parentId":124,"name":"next-swc-loader","id":125,"timestamp":6831869985,"duration":9887,"tags":{},"startTime":1679684202098},{"traceId":"323b56869b39b0c2","parentId":118,"name":"build-module-jsx","id":124,"timestamp":6831865332,"duration":60912,"tags":{"name":"C:\\Users\\Kille\\OneDrive\\Desktop\\Web Development\\mywebclass-simulation-intermediate\\nextjs-tailwind\\pages\\index.jsx"},"startTime":1679684202094},{"traceId":"323b56869b39b0c2","parentId":129,"name":"next-swc-transform","id":130,"timestamp":6832050079,"duration":14492,"tags":{},"startTime":1679684202278},{"traceId":"323b56869b39b0c2","parentId":127,"name":"next-swc-loader","id":129,"timestamp":6832049731,"duration":14893,"tags":{},"startTime":1679684202278},{"traceId":"323b56869b39b0c2","parentId":124,"name":"build-module-jsx","id":127,"timestamp":6832047752,"duration":29752,"tags":{"name":"C:\\Users\\Kille\\OneDrive\\Desktop\\Web Development\\mywebclass-simulation-intermediate\\nextjs-tailwind\\components\\Header.jsx"},"startTime":1679684202276},{"traceId":"323b56869b39b0c2","parentId":131,"name":"next-swc-transform","id":132,"timestamp":6832051877,"duration":26318,"tags":{},"startTime":1679684202280},{"traceId":"323b56869b39b0c2","parentId":128,"name":"next-swc-loader","id":131,"timestamp":6832050102,"duration":28170,"tags":{},"startTime":1679684202278},{"traceId":"323b56869b39b0c2","parentId":124,"name":"build-module-jsx","id":128,"timestamp":6832049029,"duration":46122,"tags":{"name":"C:\\Users\\Kille\\OneDrive\\Desktop\\Web Development\\mywebclass-simulation-intermediate\\nextjs-tailwind\\components\\Footer.jsx"},"startTime":1679684202277},{"traceId":"323b56869b39b0c2","parentId":118,"name":"add-entry","id":123,"timestamp":6831332773,"duration":810871,"tags":{"request":"./pages\\index.jsx"},"startTime":1679684201561},{"traceId":"323b56869b39b0c2","parentId":89,"name":"make","id":119,"timestamp":6831274867,"duration":868907,"tags":{},"startTime":1679684201503},{"traceId":"323b56869b39b0c2","parentId":118,"name":"webpack-compilation-chunk-graph","id":134,"timestamp":6832146969,"duration":4784,"tags":{},"startTime":1679684202375},{"traceId":"323b56869b39b0c2","parentId":118,"name":"webpack-compilation-optimize-modules","id":136,"timestamp":6832151945,"duration":80,"tags":{},"startTime":1679684202380},{"traceId":"323b56869b39b0c2","parentId":118,"name":"webpack-compilation-optimize-chunks","id":137,"timestamp":6832152731,"duration":1120,"tags":{},"startTime":1679684202381},{"traceId":"323b56869b39b0c2","parentId":118,"name":"webpack-compilation-optimize-tree","id":138,"timestamp":6832154063,"duration":48,"tags":{},"startTime":1679684202382},{"traceId":"323b56869b39b0c2","parentId":118,"name":"webpack-compilation-optimize","id":135,"timestamp":6832151881,"duration":2826,"tags":{},"startTime":1679684202380},{"traceId":"323b56869b39b0c2","parentId":118,"name":"webpack-compilation-hash","id":139,"timestamp":6832176392,"duration":6448,"tags":{},"startTime":1679684202405},{"traceId":"323b56869b39b0c2","parentId":118,"name":"webpack-compilation-seal","id":133,"timestamp":6832146245,"duration":46514,"tags":{},"startTime":1679684202375},{"traceId":"323b56869b39b0c2","parentId":89,"name":"webpack-compilation","id":118,"timestamp":6831272394,"duration":920690,"tags":{"name":"server"},"startTime":1679684201501},{"traceId":"323b56869b39b0c2","parentId":89,"name":"emit","id":140,"timestamp":6832193275,"duration":84047,"tags":{},"startTime":1679684202422},{"traceId":"323b56869b39b0c2","parentId":1,"name":"webpack-invalidated-server","id":89,"timestamp":6830373714,"duration":1910862,"tags":{"trigger":"manual"},"startTime":1679684200602}] +[{"traceId":"323b56869b39b0c2","parentId":1,"name":"client-success","id":141,"timestamp":6834982144,"duration":2,"tags":{},"startTime":1679684205211},{"traceId":"323b56869b39b0c2","parentId":1,"name":"client-success","id":142,"timestamp":7020191025,"duration":10,"tags":{},"startTime":1679684390420},{"traceId":"323b56869b39b0c2","parentId":1,"name":"client-success","id":143,"timestamp":7140048147,"duration":3,"tags":{},"startTime":1679684510277},{"traceId":"323b56869b39b0c2","parentId":1,"name":"client-success","id":144,"timestamp":7260099207,"duration":4,"tags":{},"startTime":1679684630328},{"traceId":"323b56869b39b0c2","parentId":1,"name":"client-success","id":145,"timestamp":7380019071,"duration":3,"tags":{},"startTime":1679684750247},{"traceId":"323b56869b39b0c2","parentId":1,"name":"client-success","id":146,"timestamp":7500035234,"duration":3,"tags":{},"startTime":1679684870264},{"traceId":"323b56869b39b0c2","parentId":149,"name":"add-entry","id":151,"timestamp":7559515722,"duration":241692,"tags":{"request":"C:\\Users\\Kille\\OneDrive\\Desktop\\Web Development\\mywebclass-simulation-intermediate\\nextjs-tailwind\\node_modules\\next\\dist\\compiled\\@next\\react-refresh-utils\\dist\\runtime.js"},"startTime":1679684929744},{"traceId":"323b56869b39b0c2","parentId":149,"name":"add-entry","id":156,"timestamp":7559526699,"duration":261331,"tags":{"request":"next-client-pages-loader?absolutePagePath=private-next-pages%2F_error&page=%2F_error!"},"startTime":1679684929755},{"traceId":"323b56869b39b0c2","parentId":149,"name":"add-entry","id":158,"timestamp":7559526758,"duration":334045,"tags":{"request":"next-client-pages-loader?absolutePagePath=C%3A%5CUsers%5CKille%5COneDrive%5CDesktop%5CWeb%20Development%5Cmywebclass-simulation-intermediate%5Cnextjs-tailwind%5Cpages%5Cindex.jsx&page=%2F!"},"startTime":1679684929755},{"traceId":"323b56869b39b0c2","parentId":149,"name":"add-entry","id":155,"timestamp":7559526662,"duration":335378,"tags":{"request":"C:\\Users\\Kille\\OneDrive\\Desktop\\Web Development\\mywebclass-simulation-intermediate\\nextjs-tailwind\\node_modules\\next\\dist\\client\\router.js"},"startTime":1679684929755},{"traceId":"323b56869b39b0c2","parentId":149,"name":"add-entry","id":154,"timestamp":7559526590,"duration":335535,"tags":{"request":"next-client-pages-loader?absolutePagePath=private-next-pages%2F_app&page=%2F_app!"},"startTime":1679684929755},{"traceId":"323b56869b39b0c2","parentId":149,"name":"add-entry","id":152,"timestamp":7559526454,"duration":338754,"tags":{"request":"./node_modules/next/dist/client/dev/amp-dev"},"startTime":1679684929755},{"traceId":"323b56869b39b0c2","parentId":149,"name":"add-entry","id":153,"timestamp":7559526550,"duration":343112,"tags":{"request":"./node_modules/next/dist/client/next-dev.js"},"startTime":1679684929755},{"traceId":"323b56869b39b0c2","parentId":160,"name":"next-swc-transform","id":161,"timestamp":7559937945,"duration":287837,"tags":{},"startTime":1679684930166},{"traceId":"323b56869b39b0c2","parentId":159,"name":"next-swc-loader","id":160,"timestamp":7559935176,"duration":290655,"tags":{},"startTime":1679684930164},{"traceId":"323b56869b39b0c2","parentId":149,"name":"build-module-jsx","id":159,"timestamp":7559926437,"duration":341930,"tags":{"name":"C:\\Users\\Kille\\OneDrive\\Desktop\\Web Development\\mywebclass-simulation-intermediate\\nextjs-tailwind\\pages\\content.jsx"},"startTime":1679684930155},{"traceId":"323b56869b39b0c2","parentId":1,"name":"client-success","id":162,"timestamp":7560293069,"duration":3,"tags":{},"startTime":1679684930521},{"traceId":"323b56869b39b0c2","parentId":164,"name":"next-swc-transform","id":165,"timestamp":7560302199,"duration":16502,"tags":{},"startTime":1679684930530},{"traceId":"323b56869b39b0c2","parentId":163,"name":"next-swc-loader","id":164,"timestamp":7560300847,"duration":17926,"tags":{},"startTime":1679684930529},{"traceId":"323b56869b39b0c2","parentId":159,"name":"build-module-jsx","id":163,"timestamp":7560300006,"duration":37313,"tags":{"name":"C:\\Users\\Kille\\OneDrive\\Desktop\\Web Development\\mywebclass-simulation-intermediate\\nextjs-tailwind\\components\\TableOfContents.jsx"},"startTime":1679684930528},{"traceId":"323b56869b39b0c2","parentId":167,"name":"next-swc-transform","id":168,"timestamp":7560314919,"duration":25403,"tags":{},"startTime":1679684930543},{"traceId":"323b56869b39b0c2","parentId":166,"name":"next-swc-loader","id":167,"timestamp":7560313728,"duration":26636,"tags":{},"startTime":1679684930542},{"traceId":"323b56869b39b0c2","parentId":159,"name":"build-module-jsx","id":166,"timestamp":7560312797,"duration":66067,"tags":{"name":"C:\\Users\\Kille\\OneDrive\\Desktop\\Web Development\\mywebclass-simulation-intermediate\\nextjs-tailwind\\components\\ContentElements.jsx"},"startTime":1679684930541},{"traceId":"323b56869b39b0c2","parentId":149,"name":"add-entry","id":157,"timestamp":7559526728,"duration":853785,"tags":{"request":"next-client-pages-loader?absolutePagePath=C%3A%5CUsers%5CKille%5COneDrive%5CDesktop%5CWeb%20Development%5Cmywebclass-simulation-intermediate%5Cnextjs-tailwind%5Cpages%5Ccontent.jsx&page=%2Fcontent!"},"startTime":1679684929755},{"traceId":"323b56869b39b0c2","parentId":147,"name":"make","id":150,"timestamp":7559497417,"duration":883231,"tags":{},"startTime":1679684929726},{"traceId":"323b56869b39b0c2","parentId":149,"name":"webpack-compilation-chunk-graph","id":170,"timestamp":7560395602,"duration":20634,"tags":{},"startTime":1679684930624},{"traceId":"323b56869b39b0c2","parentId":149,"name":"webpack-compilation-optimize-modules","id":172,"timestamp":7560416554,"duration":432,"tags":{},"startTime":1679684930645},{"traceId":"323b56869b39b0c2","parentId":149,"name":"webpack-compilation-optimize-chunks","id":173,"timestamp":7560417726,"duration":1255,"tags":{},"startTime":1679684930646},{"traceId":"323b56869b39b0c2","parentId":149,"name":"webpack-compilation-optimize-tree","id":174,"timestamp":7560419508,"duration":239,"tags":{},"startTime":1679684930648},{"traceId":"323b56869b39b0c2","parentId":149,"name":"webpack-compilation-optimize","id":171,"timestamp":7560416482,"duration":7469,"tags":{},"startTime":1679684930645},{"traceId":"323b56869b39b0c2","parentId":149,"name":"webpack-compilation-hash","id":175,"timestamp":7560487242,"duration":41987,"tags":{},"startTime":1679684930715},{"traceId":"323b56869b39b0c2","parentId":149,"name":"NextJsBuildManifest-generateClientManifest","id":177,"timestamp":7560549426,"duration":961,"tags":{},"startTime":1679684930777},{"traceId":"323b56869b39b0c2","parentId":149,"name":"NextJsBuildManifest-createassets","id":176,"timestamp":7560548460,"duration":1979,"tags":{},"startTime":1679684930776},{"traceId":"323b56869b39b0c2","parentId":149,"name":"webpack-compilation-seal","id":169,"timestamp":7560392670,"duration":164918,"tags":{},"startTime":1679684930621},{"traceId":"323b56869b39b0c2","parentId":147,"name":"webpack-compilation","id":149,"timestamp":7559469725,"duration":1088163,"tags":{"name":"client"},"startTime":1679684929698},{"traceId":"323b56869b39b0c2","parentId":147,"name":"emit","id":178,"timestamp":7560558014,"duration":192344,"tags":{},"startTime":1679684930786},{"traceId":"323b56869b39b0c2","parentId":1,"name":"webpack-invalidated-client","id":147,"timestamp":7559180692,"duration":1615832,"tags":{"trigger":"manual"},"startTime":1679684929409},{"traceId":"323b56869b39b0c2","parentId":1,"name":"client-success","id":181,"timestamp":7560913898,"duration":4,"tags":{},"startTime":1679684931142},{"traceId":"323b56869b39b0c2","parentId":179,"name":"add-entry","id":182,"timestamp":7560959560,"duration":224329,"tags":{"request":"private-next-pages/_app"},"startTime":1679684931188},{"traceId":"323b56869b39b0c2","parentId":179,"name":"add-entry","id":184,"timestamp":7560959837,"duration":227568,"tags":{"request":"private-next-pages/_document"},"startTime":1679684931188},{"traceId":"323b56869b39b0c2","parentId":179,"name":"add-entry","id":183,"timestamp":7560959802,"duration":256847,"tags":{"request":"private-next-pages/_error"},"startTime":1679684931188},{"traceId":"323b56869b39b0c2","parentId":179,"name":"add-entry","id":186,"timestamp":7560959891,"duration":257426,"tags":{"request":"./pages\\index.jsx"},"startTime":1679684931188},{"traceId":"323b56869b39b0c2","parentId":188,"name":"next-swc-transform","id":189,"timestamp":7561238899,"duration":28671,"tags":{},"startTime":1679684931467},{"traceId":"323b56869b39b0c2","parentId":187,"name":"next-swc-loader","id":188,"timestamp":7561237631,"duration":30009,"tags":{},"startTime":1679684931466},{"traceId":"323b56869b39b0c2","parentId":179,"name":"build-module-jsx","id":187,"timestamp":7561236084,"duration":59416,"tags":{"name":"C:\\Users\\Kille\\OneDrive\\Desktop\\Web Development\\mywebclass-simulation-intermediate\\nextjs-tailwind\\pages\\content.jsx"},"startTime":1679684931464},{"traceId":"323b56869b39b0c2","parentId":194,"name":"next-swc-transform","id":195,"timestamp":7561368635,"duration":25012,"tags":{},"startTime":1679684931597},{"traceId":"323b56869b39b0c2","parentId":191,"name":"next-swc-loader","id":194,"timestamp":7561368481,"duration":25218,"tags":{},"startTime":1679684931596},{"traceId":"323b56869b39b0c2","parentId":187,"name":"build-module-jsx","id":191,"timestamp":7561367504,"duration":41994,"tags":{"name":"C:\\Users\\Kille\\OneDrive\\Desktop\\Web Development\\mywebclass-simulation-intermediate\\nextjs-tailwind\\components\\ContentElements.jsx"},"startTime":1679684931596},{"traceId":"323b56869b39b0c2","parentId":192,"name":"next-swc-transform","id":193,"timestamp":7561368466,"duration":129238,"tags":{},"startTime":1679684931596},{"traceId":"323b56869b39b0c2","parentId":190,"name":"next-swc-loader","id":192,"timestamp":7561368092,"duration":129664,"tags":{},"startTime":1679684931596},{"traceId":"323b56869b39b0c2","parentId":187,"name":"build-module-jsx","id":190,"timestamp":7561366162,"duration":134823,"tags":{"name":"C:\\Users\\Kille\\OneDrive\\Desktop\\Web Development\\mywebclass-simulation-intermediate\\nextjs-tailwind\\components\\TableOfContents.jsx"},"startTime":1679684931594},{"traceId":"323b56869b39b0c2","parentId":179,"name":"add-entry","id":185,"timestamp":7560959865,"duration":541641,"tags":{"request":"./pages\\content.jsx"},"startTime":1679684931188},{"traceId":"323b56869b39b0c2","parentId":148,"name":"make","id":180,"timestamp":7560839691,"duration":662087,"tags":{},"startTime":1679684931068},{"traceId":"323b56869b39b0c2","parentId":179,"name":"webpack-compilation-chunk-graph","id":197,"timestamp":7561504103,"duration":4513,"tags":{},"startTime":1679684931732},{"traceId":"323b56869b39b0c2","parentId":179,"name":"webpack-compilation-optimize-modules","id":199,"timestamp":7561509486,"duration":57,"tags":{},"startTime":1679684931738},{"traceId":"323b56869b39b0c2","parentId":179,"name":"webpack-compilation-optimize-chunks","id":200,"timestamp":7561509649,"duration":1023,"tags":{},"startTime":1679684931738},{"traceId":"323b56869b39b0c2","parentId":179,"name":"webpack-compilation-optimize-tree","id":201,"timestamp":7561510803,"duration":47,"tags":{},"startTime":1679684931739},{"traceId":"323b56869b39b0c2","parentId":179,"name":"webpack-compilation-optimize","id":198,"timestamp":7561509390,"duration":2045,"tags":{},"startTime":1679684931737},{"traceId":"323b56869b39b0c2","parentId":179,"name":"webpack-compilation-hash","id":202,"timestamp":7561539692,"duration":22735,"tags":{},"startTime":1679684931768},{"traceId":"323b56869b39b0c2","parentId":179,"name":"webpack-compilation-seal","id":196,"timestamp":7561503488,"duration":62668,"tags":{},"startTime":1679684931732},{"traceId":"323b56869b39b0c2","parentId":148,"name":"webpack-compilation","id":179,"timestamp":7560833368,"duration":733012,"tags":{"name":"server"},"startTime":1679684931061},{"traceId":"323b56869b39b0c2","parentId":148,"name":"emit","id":203,"timestamp":7561566762,"duration":87082,"tags":{},"startTime":1679684931795},{"traceId":"323b56869b39b0c2","parentId":1,"name":"webpack-invalidated-server","id":148,"timestamp":7559191820,"duration":2546155,"tags":{"trigger":"manual"},"startTime":1679684929420}] +======= +[{"traceId":"a0da640fc065c60d","parentId":1,"name":"generate-buildid","id":4,"timestamp":360095386139,"duration":276,"tags":{},"startTime":1679887601831},{"traceId":"a0da640fc065c60d","parentId":1,"name":"load-custom-routes","id":5,"timestamp":360095386632,"duration":272,"tags":{},"startTime":1679887601832},{"traceId":"a0da640fc065c60d","parentId":1,"name":"verify-typescript-setup","id":6,"timestamp":360095616744,"duration":250115,"tags":{},"startTime":1679887602062},{"traceId":"a0da640fc065c60d","parentId":1,"name":"verify-and-lint","id":7,"timestamp":360095788195,"duration":644310,"tags":{},"startTime":1679887602233},{"traceId":"a0da640fc065c60d","parentId":1,"name":"collect-pages","id":8,"timestamp":360096439540,"duration":1598,"tags":{},"startTime":1679887602885},{"traceId":"a0da640fc065c60d","parentId":1,"name":"create-pages-mapping","id":9,"timestamp":360096441882,"duration":494,"tags":{},"startTime":1679887602887},{"traceId":"a0da640fc065c60d","parentId":1,"name":"public-dir-conflict-check","id":10,"timestamp":360096442609,"duration":966,"tags":{},"startTime":1679887602888},{"traceId":"a0da640fc065c60d","parentId":1,"name":"generate-routes-manifest","id":11,"timestamp":360096443864,"duration":2648,"tags":{},"startTime":1679887602889},{"traceId":"a0da640fc065c60d","parentId":1,"name":"create-dist-dir","id":12,"timestamp":360096446700,"duration":1403,"tags":{},"startTime":1679887602892},{"traceId":"a0da640fc065c60d","parentId":1,"name":"write-routes-manifest","id":13,"timestamp":360096455242,"duration":687,"tags":{},"startTime":1679887602900},{"traceId":"a0da640fc065c60d","parentId":1,"name":"generate-required-server-files","id":14,"timestamp":360096455988,"duration":549,"tags":{},"startTime":1679887602901},{"traceId":"a0da640fc065c60d","parentId":1,"name":"create-entrypoints","id":16,"timestamp":360096456986,"duration":60477,"tags":{},"startTime":1679887602902},{"traceId":"a0da640fc065c60d","parentId":15,"name":"generate-webpack-config","id":17,"timestamp":360096517523,"duration":745496,"tags":{},"startTime":1679887602963},{"traceId":"a0da640fc065c60d","parentId":18,"name":"next-trace-entrypoint-plugin","id":19,"timestamp":360097371337,"duration":3052,"tags":{},"startTime":1679887603817},{"traceId":"a0da640fc065c60d","parentId":18,"name":"add-entry","id":25,"timestamp":360097381267,"duration":171364,"tags":{"request":"next/dist/pages/_document"},"startTime":1679887603826},{"traceId":"a0da640fc065c60d","parentId":18,"name":"add-entry","id":24,"timestamp":360097381254,"duration":175747,"tags":{"request":"next/dist/pages/_error"},"startTime":1679887603826},{"traceId":"a0da640fc065c60d","parentId":18,"name":"add-entry","id":23,"timestamp":360097381240,"duration":180659,"tags":{"request":"private-next-pages/_app.jsx"},"startTime":1679887603826},{"traceId":"a0da640fc065c60d","parentId":18,"name":"add-entry","id":21,"timestamp":360097380723,"duration":185905,"tags":{"request":"private-next-pages/content.jsx"},"startTime":1679887603826},{"traceId":"a0da640fc065c60d","parentId":18,"name":"add-entry","id":22,"timestamp":360097381217,"duration":185429,"tags":{"request":"private-next-pages/index.jsx"},"startTime":1679887603826},{"traceId":"a0da640fc065c60d","parentId":15,"name":"make","id":20,"timestamp":360097380321,"duration":186578,"tags":{},"startTime":1679887603826},{"traceId":"a0da640fc065c60d","parentId":26,"name":"get-entries","id":27,"timestamp":360097568382,"duration":421,"tags":{},"startTime":1679887604014},{"traceId":"a0da640fc065c60d","parentId":26,"name":"node-file-trace","id":28,"timestamp":360097569303,"duration":122257,"tags":{"traceEntryCount":"5"},"startTime":1679887604015},{"traceId":"a0da640fc065c60d","parentId":26,"name":"collect-traced-files","id":29,"timestamp":360097691583,"duration":521,"tags":{},"startTime":1679887604137},{"traceId":"a0da640fc065c60d","parentId":19,"name":"finish-modules","id":26,"timestamp":360097568165,"duration":123943,"tags":{},"startTime":1679887604013},{"traceId":"a0da640fc065c60d","parentId":18,"name":"webpack-compilation-chunk-graph","id":31,"timestamp":360097703318,"duration":4561,"tags":{},"startTime":1679887604149},{"traceId":"a0da640fc065c60d","parentId":18,"name":"webpack-compilation-optimize-modules","id":33,"timestamp":360097708023,"duration":28,"tags":{},"startTime":1679887604153},{"traceId":"a0da640fc065c60d","parentId":18,"name":"webpack-compilation-optimize-chunks","id":34,"timestamp":360097708149,"duration":6518,"tags":{},"startTime":1679887604153},{"traceId":"a0da640fc065c60d","parentId":18,"name":"webpack-compilation-optimize-tree","id":35,"timestamp":360097714797,"duration":222,"tags":{},"startTime":1679887604160},{"traceId":"a0da640fc065c60d","parentId":18,"name":"webpack-compilation-optimize","id":32,"timestamp":360097707958,"duration":14589,"tags":{},"startTime":1679887604153},{"traceId":"a0da640fc065c60d","parentId":18,"name":"webpack-compilation-hash","id":36,"timestamp":360097744616,"duration":7583,"tags":{},"startTime":1679887604190},{"traceId":"a0da640fc065c60d","parentId":19,"name":"create-trace-assets","id":37,"timestamp":360097755166,"duration":321168,"tags":{},"startTime":1679887604200},{"traceId":"a0da640fc065c60d","parentId":18,"name":"webpack-compilation-seal","id":30,"timestamp":360097698208,"duration":380091,"tags":{},"startTime":1679887604143},{"traceId":"a0da640fc065c60d","parentId":15,"name":"webpack-compilation","id":18,"timestamp":360097369080,"duration":709670,"tags":{"name":"server"},"startTime":1679887603814},{"traceId":"a0da640fc065c60d","parentId":15,"name":"emit","id":38,"timestamp":360098079211,"duration":6734,"tags":{},"startTime":1679887604524},{"traceId":"a0da640fc065c60d","parentId":15,"name":"webpack-close","id":39,"timestamp":360098086894,"duration":86984,"tags":{"name":"server"},"startTime":1679887604532},{"traceId":"a0da640fc065c60d","parentId":39,"name":"webpack-generate-error-stats","id":40,"timestamp":360098173978,"duration":4444,"tags":{},"startTime":1679887604619},{"traceId":"a0da640fc065c60d","parentId":15,"name":"make","id":42,"timestamp":360098243577,"duration":117,"tags":{},"startTime":1679887604689},{"traceId":"a0da640fc065c60d","parentId":41,"name":"webpack-compilation-chunk-graph","id":44,"timestamp":360098245672,"duration":39,"tags":{},"startTime":1679887604691},{"traceId":"a0da640fc065c60d","parentId":41,"name":"webpack-compilation-optimize-modules","id":46,"timestamp":360098245974,"duration":12,"tags":{},"startTime":1679887604691},{"traceId":"a0da640fc065c60d","parentId":41,"name":"webpack-compilation-optimize-chunks","id":47,"timestamp":360098246103,"duration":102,"tags":{},"startTime":1679887604691},{"traceId":"a0da640fc065c60d","parentId":41,"name":"webpack-compilation-optimize-tree","id":48,"timestamp":360098246277,"duration":40,"tags":{},"startTime":1679887604691},{"traceId":"a0da640fc065c60d","parentId":41,"name":"webpack-compilation-optimize","id":45,"timestamp":360098245916,"duration":620,"tags":{},"startTime":1679887604691},{"traceId":"a0da640fc065c60d","parentId":41,"name":"webpack-compilation-hash","id":49,"timestamp":360098246877,"duration":97,"tags":{},"startTime":1679887604692},{"traceId":"a0da640fc065c60d","parentId":41,"name":"terser-webpack-plugin-optimize","id":50,"timestamp":360098247899,"duration":475,"tags":{"compilationName":"edge-server","swcMinify":"true"},"startTime":1679887604693},{"traceId":"a0da640fc065c60d","parentId":41,"name":"css-minimizer-plugin","id":51,"timestamp":360098248478,"duration":150,"tags":{"webpackVersion":"5"},"startTime":1679887604694},{"traceId":"a0da640fc065c60d","parentId":41,"name":"webpack-compilation-seal","id":43,"timestamp":360098245458,"duration":4083,"tags":{},"startTime":1679887604691},{"traceId":"a0da640fc065c60d","parentId":15,"name":"webpack-compilation","id":41,"timestamp":360098241156,"duration":8460,"tags":{"name":"edge-server"},"startTime":1679887604686},{"traceId":"a0da640fc065c60d","parentId":15,"name":"emit","id":52,"timestamp":360098249676,"duration":4181,"tags":{},"startTime":1679887604695},{"traceId":"a0da640fc065c60d","parentId":15,"name":"webpack-close","id":53,"timestamp":360098254132,"duration":241,"tags":{"name":"edge-server"},"startTime":1679887604699},{"traceId":"a0da640fc065c60d","parentId":53,"name":"webpack-generate-error-stats","id":54,"timestamp":360098254379,"duration":916,"tags":{},"startTime":1679887604700},{"traceId":"a0da640fc065c60d","parentId":55,"name":"add-entry","id":62,"timestamp":360098267348,"duration":176875,"tags":{"request":"next-client-pages-loader?absolutePagePath=next%2Fdist%2Fpages%2F_error&page=%2F_error!"},"startTime":1679887604713},{"traceId":"a0da640fc065c60d","parentId":55,"name":"add-entry","id":60,"timestamp":360098267318,"duration":185384,"tags":{"request":"next-client-pages-loader?absolutePagePath=private-next-pages%2F_app.jsx&page=%2F_app!"},"startTime":1679887604713},{"traceId":"a0da640fc065c60d","parentId":55,"name":"add-entry","id":58,"timestamp":360098267288,"duration":186118,"tags":{"request":"next-client-pages-loader?absolutePagePath=private-next-pages%2Fcontent.jsx&page=%2Fcontent!"},"startTime":1679887604713},{"traceId":"a0da640fc065c60d","parentId":55,"name":"add-entry","id":59,"timestamp":360098267308,"duration":186108,"tags":{"request":"next-client-pages-loader?absolutePagePath=private-next-pages%2Findex.jsx&page=%2F!"},"startTime":1679887604713},{"traceId":"a0da640fc065c60d","parentId":55,"name":"add-entry","id":61,"timestamp":360098267335,"duration":187295,"tags":{"request":"J:\\Web Development\\mywebclass-simulation-intermediate\\nextjs-tailwind\\node_modules\\next\\dist\\client\\router.js"},"startTime":1679887604713},{"traceId":"a0da640fc065c60d","parentId":55,"name":"add-entry","id":57,"timestamp":360098267177,"duration":187463,"tags":{"request":"./node_modules/next/dist/client/next.js"},"startTime":1679887604712},{"traceId":"a0da640fc065c60d","parentId":15,"name":"make","id":56,"timestamp":360098266878,"duration":187826,"tags":{},"startTime":1679887604712},{"traceId":"a0da640fc065c60d","parentId":55,"name":"webpack-compilation-chunk-graph","id":64,"timestamp":360098463530,"duration":2645,"tags":{},"startTime":1679887604909},{"traceId":"a0da640fc065c60d","parentId":55,"name":"webpack-compilation-optimize-modules","id":66,"timestamp":360098466264,"duration":10,"tags":{},"startTime":1679887604911},{"traceId":"a0da640fc065c60d","parentId":55,"name":"webpack-compilation-optimize-chunks","id":67,"timestamp":360098466302,"duration":5285,"tags":{},"startTime":1679887604912},{"traceId":"a0da640fc065c60d","parentId":55,"name":"webpack-compilation-optimize-tree","id":68,"timestamp":360098471636,"duration":8,"tags":{},"startTime":1679887604917},{"traceId":"a0da640fc065c60d","parentId":55,"name":"webpack-compilation-optimize","id":65,"timestamp":360098466243,"duration":6913,"tags":{},"startTime":1679887604911},{"traceId":"a0da640fc065c60d","parentId":55,"name":"webpack-compilation-hash","id":69,"timestamp":360098483454,"duration":3357,"tags":{},"startTime":1679887604929},{"traceId":"a0da640fc065c60d","parentId":55,"name":"NextJsBuildManifest-generateClientManifest","id":71,"timestamp":360098489952,"duration":1102,"tags":{},"startTime":1679887604935},{"traceId":"a0da640fc065c60d","parentId":55,"name":"NextJsBuildManifest-createassets","id":70,"timestamp":360098489410,"duration":1671,"tags":{},"startTime":1679887604935},{"traceId":"a0da640fc065c60d","parentId":72,"name":"minify-js","id":73,"timestamp":360098494165,"duration":1150,"tags":{"name":"static/chunks/main-57d95ecdb991e8de.js","cache":"HIT"},"startTime":1679887604939},{"traceId":"a0da640fc065c60d","parentId":72,"name":"minify-js","id":74,"timestamp":360098494364,"duration":959,"tags":{"name":"static/chunks/pages/content-4d5f19956f410e20.js","cache":"HIT"},"startTime":1679887604940},{"traceId":"a0da640fc065c60d","parentId":72,"name":"minify-js","id":75,"timestamp":360098494383,"duration":941,"tags":{"name":"static/chunks/pages/index-9d9924ecf8ae7170.js","cache":"HIT"},"startTime":1679887604940},{"traceId":"a0da640fc065c60d","parentId":72,"name":"minify-js","id":76,"timestamp":360098494393,"duration":933,"tags":{"name":"static/chunks/pages/_app-ffb0de23c12d9b14.js","cache":"HIT"},"startTime":1679887604940},{"traceId":"a0da640fc065c60d","parentId":72,"name":"minify-js","id":77,"timestamp":360098494402,"duration":925,"tags":{"name":"static/chunks/pages/_error-bec44203c9b651f7.js","cache":"HIT"},"startTime":1679887604940},{"traceId":"a0da640fc065c60d","parentId":72,"name":"minify-js","id":78,"timestamp":360098494412,"duration":916,"tags":{"name":"static/chunks/webpack-d8d0d5dfdfeffdbf.js","cache":"HIT"},"startTime":1679887604940},{"traceId":"a0da640fc065c60d","parentId":72,"name":"minify-js","id":79,"timestamp":360098494421,"duration":908,"tags":{"name":"static/chunks/framework-2e315a3383098fda.js","cache":"HIT"},"startTime":1679887604940},{"traceId":"a0da640fc065c60d","parentId":72,"name":"minify-js","id":80,"timestamp":360098494430,"duration":901,"tags":{"name":"static/chunks/664-55d91fa422a6614d.js","cache":"HIT"},"startTime":1679887604940},{"traceId":"a0da640fc065c60d","parentId":72,"name":"minify-js","id":81,"timestamp":360098494440,"duration":892,"tags":{"name":"server/middleware-react-loadable-manifest.js","cache":"HIT"},"startTime":1679887604940},{"traceId":"a0da640fc065c60d","parentId":72,"name":"minify-js","id":85,"timestamp":360098495301,"duration":32,"tags":{"name":"server/next-font-manifest.js","cache":"HIT"},"startTime":1679887604941},{"traceId":"a0da640fc065c60d","parentId":72,"name":"minify-js","id":82,"timestamp":360098494460,"duration":28000,"tags":{"name":"static/qoOcYhOJr35_hxGsTufz0/_ssgManifest.js","cache":"MISS"},"startTime":1679887604940},{"traceId":"a0da640fc065c60d","parentId":72,"name":"minify-js","id":83,"timestamp":360098495109,"duration":27561,"tags":{"name":"server/middleware-build-manifest.js","cache":"MISS"},"startTime":1679887604940},{"traceId":"a0da640fc065c60d","parentId":72,"name":"minify-js","id":84,"timestamp":360098495270,"duration":27421,"tags":{"name":"static/qoOcYhOJr35_hxGsTufz0/_buildManifest.js","cache":"MISS"},"startTime":1679887604940},{"traceId":"a0da640fc065c60d","parentId":55,"name":"terser-webpack-plugin-optimize","id":72,"timestamp":360098491424,"duration":31271,"tags":{"compilationName":"client","swcMinify":"true"},"startTime":1679887604937},{"traceId":"a0da640fc065c60d","parentId":86,"name":"minify-css","id":87,"timestamp":360098522998,"duration":131,"tags":{"file":"static/css/e718d67422ec51f9.css","cache":"HIT"},"startTime":1679887604968},{"traceId":"a0da640fc065c60d","parentId":55,"name":"css-minimizer-plugin","id":86,"timestamp":360098522775,"duration":358,"tags":{"webpackVersion":"5"},"startTime":1679887604968},{"traceId":"a0da640fc065c60d","parentId":55,"name":"webpack-compilation-seal","id":63,"timestamp":360098459238,"duration":68480,"tags":{},"startTime":1679887604904},{"traceId":"a0da640fc065c60d","parentId":15,"name":"webpack-compilation","id":55,"timestamp":360098265650,"duration":262245,"tags":{"name":"client"},"startTime":1679887604711},{"traceId":"a0da640fc065c60d","parentId":15,"name":"emit","id":88,"timestamp":360098527936,"duration":5322,"tags":{},"startTime":1679887604973},{"traceId":"a0da640fc065c60d","parentId":15,"name":"webpack-close","id":89,"timestamp":360098533549,"duration":126577,"tags":{"name":"client"},"startTime":1679887604979},{"traceId":"a0da640fc065c60d","parentId":89,"name":"webpack-generate-error-stats","id":90,"timestamp":360098660157,"duration":1235,"tags":{},"startTime":1679887605105},{"traceId":"a0da640fc065c60d","parentId":1,"name":"run-webpack-compiler","id":15,"timestamp":360096456984,"duration":2204440,"tags":{},"startTime":1679887602902},{"traceId":"a0da640fc065c60d","parentId":1,"name":"format-webpack-messages","id":91,"timestamp":360098661429,"duration":298,"tags":{},"startTime":1679887605107},{"traceId":"a0da640fc065c60d","parentId":92,"name":"check-static-error-page","id":93,"timestamp":360098956723,"duration":4310,"tags":{},"startTime":1679887605402},{"traceId":"a0da640fc065c60d","parentId":92,"name":"check-static-error-page","id":93,"timestamp":360098956723,"duration":4340,"tags":{},"startTime":1679887605402},{"traceId":"a0da640fc065c60d","parentId":92,"name":"check-page","id":96,"timestamp":360098982284,"duration":738,"tags":{"page":"/_document"},"startTime":1679887605428},{"traceId":"a0da640fc065c60d","parentId":92,"name":"check-page","id":95,"timestamp":360098982050,"duration":1092,"tags":{"page":"/_error"},"startTime":1679887605427},{"traceId":"a0da640fc065c60d","parentId":92,"name":"check-page","id":94,"timestamp":360098980442,"duration":3460,"tags":{"page":"/_app"},"startTime":1679887605426},{"traceId":"a0da640fc065c60d","parentId":97,"name":"is-page-static","id":100,"timestamp":360098984561,"duration":570723,"tags":{},"startTime":1679887605430},{"traceId":"a0da640fc065c60d","parentId":92,"name":"check-page","id":97,"timestamp":360098982546,"duration":572810,"tags":{"page":"/content"},"startTime":1679887605428},{"traceId":"a0da640fc065c60d","parentId":98,"name":"is-page-static","id":99,"timestamp":360098984100,"duration":578094,"tags":{},"startTime":1679887605429},{"traceId":"a0da640fc065c60d","parentId":92,"name":"check-page","id":98,"timestamp":360098982625,"duration":579632,"tags":{"page":"/"},"startTime":1679887605428},{"traceId":"a0da640fc065c60d","parentId":1,"name":"static-check","id":92,"timestamp":360098955680,"duration":606635,"tags":{},"startTime":1679887605401},{"traceId":"a0da640fc065c60d","parentId":1,"name":"apply-include-excludes","id":101,"timestamp":360099594641,"duration":1671,"tags":{},"startTime":1679887606040},{"traceId":"a0da640fc065c60d","parentId":1,"name":"trace-next-server","id":102,"timestamp":360099596346,"duration":9632408,"tags":{},"startTime":1679887606042},{"traceId":"a0da640fc065c60d","parentId":104,"name":"load-dotenv","id":105,"timestamp":360109260745,"duration":125,"tags":{},"startTime":1679887615706}] +[{"traceId":"a0da640fc065c60d","parentId":104,"name":"run-export-path-map","id":106,"timestamp":360109265854,"duration":222,"tags":{},"startTime":1679887615711},{"traceId":"a0da640fc065c60d","parentId":104,"name":"export-page","id":110,"timestamp":360109269749,"duration":361823,"tags":{"path":"/500"},"startTime":1679887615715},{"traceId":"a0da640fc065c60d","parentId":104,"name":"export-page","id":109,"timestamp":360109269676,"duration":363241,"tags":{"path":"/404"},"startTime":1679887615715},{"traceId":"a0da640fc065c60d","parentId":104,"name":"export-page","id":108,"timestamp":360109269572,"duration":373268,"tags":{"path":"/"},"startTime":1679887615715},{"traceId":"a0da640fc065c60d","parentId":104,"name":"export-page","id":107,"timestamp":360109268637,"duration":385384,"tags":{"path":"/content"},"startTime":1679887615714},{"traceId":"a0da640fc065c60d","parentId":1,"name":"next-export","id":104,"timestamp":360109260098,"duration":809862,"tags":{},"startTime":1679887615705},{"traceId":"a0da640fc065c60d","parentId":103,"name":"move-exported-page","id":111,"timestamp":360110073068,"duration":16852,"tags":{},"startTime":1679887616518},{"traceId":"a0da640fc065c60d","parentId":103,"name":"move-exported-page","id":112,"timestamp":360110089997,"duration":1336,"tags":{},"startTime":1679887616535},{"traceId":"a0da640fc065c60d","parentId":103,"name":"move-exported-page","id":113,"timestamp":360110091627,"duration":706,"tags":{},"startTime":1679887616537},{"traceId":"a0da640fc065c60d","parentId":103,"name":"move-exported-page","id":114,"timestamp":360110092422,"duration":644,"tags":{},"startTime":1679887616538},{"traceId":"a0da640fc065c60d","parentId":1,"name":"static-generation","id":103,"timestamp":360109241416,"duration":854697,"tags":{},"startTime":1679887615687},{"traceId":"a0da640fc065c60d","parentId":1,"name":"print-tree-view","id":115,"timestamp":360110105560,"duration":23644,"tags":{},"startTime":1679887616551},{"traceId":"a0da640fc065c60d","parentId":1,"name":"telemetry-flush","id":116,"timestamp":360110129241,"duration":741948,"tags":{},"startTime":1679887616574},{"traceId":"a0da640fc065c60d","name":"next-build","id":1,"timestamp":360095188468,"duration":15682738,"tags":{"version":"13.2.4"},"startTime":1679887601634}] +>>>>>>> 6f66b5540804f9c1185fee28809018f4b1176a4e diff --git a/nextjs-tailwind/components/ContentElements.jsx b/nextjs-tailwind/components/ContentElements.jsx new file mode 100644 index 000000000..9da26f322 --- /dev/null +++ b/nextjs-tailwind/components/ContentElements.jsx @@ -0,0 +1,229 @@ +function ContentElements () { + return ( + <div> + <main class='basis-3/4 col-span-9 md:col-span-9 lg:col-span-9 px-4'> + <section class='mt-24' id='title'> + <h1 class='text-4xl font-bold border-b'>Article Title</h1> + <div class='text-gray-500 mb-3'> + By <a href='#'>Author Name</a> + <span class='ml-3'>Last Updated: January 1, 2022</span> + <span class='ml-3' id='readingTime'> + 0 + </span> + </div> + </section> + <section class='my-11' id='section2'> + <h2 class='text-3xl font-semi'>Section 2</h2> + <p> + Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam + auctor augue massa, ac maximus nibh dapibus vel. Nulla luctus, magna + at pulvinar tincidunt, massa lacus iaculis risus, nec efficitur + risus ex ac lectus. Quisque id lacus non velit aliquet ultrices. + Morbi vel arcu varius, commodo nulla eu, luctus est. Donec + efficitur, sapi + </p> + <p> + Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam + auctor augue massa, ac maximus nibh dapibus vel. Nulla luctus, magna + at pulvinar tincidunt, massa lacus iaculis risus, nec efficitur + risus ex ac lectus. Quisque id lacus non velit aliquet ultrices. + Morbi vel arcu varius, commodo nulla eu, luctus est. Donec + efficitur, sapi + </p> + <p> + Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam + auctor augue massa, ac maximus nibh dapibus vel. Nulla luctus, magna + at pulvinar tincidunt, massa lacus iaculis risus, nec efficitur + risus ex ac lectus. Quisque id lacus non velit aliquet ultrices. + Morbi vel arcu varius, commodo nulla eu, luctus est. Donec + efficitur, sapi + </p> + <p> + Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam + auctor augue massa, ac maximus nibh dapibus vel. Nulla luctus, magna + at pulvinar tincidunt, massa lacus iaculis risus, nec efficitur + risus ex ac lectus. Quisque id lacus non velit aliquet ultrices. + Morbi vel arcu varius, commodo nulla eu, luctus est. Donec + efficitur, sapi + </p> + <p> + Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam + auctor augue massa, ac maximus nibh dapibus vel. Nulla luctus, magna + at pulvinar tincidunt, massa lacus iaculis risus, nec efficitur + risus ex ac lectus. Quisque id lacus non velit aliquet ultrices. + Morbi vel arcu varius, commodo nulla eu, luctus est. Donec + efficitur, sapi + </p> + <p> + Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam + auctor augue massa, ac maximus nibh dapibus vel. Nulla luctus, magna + at pulvinar tincidunt, massa lacus iaculis risus, nec efficitur + risus ex ac lectus. Quisque id lacus non velit aliquet ultrices. + Morbi vel arcu varius, commodo nulla eu, luctus est. Donec + efficitur, sapi + </p> + <p> + Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam + auctor augue massa, ac maximus nibh dapibus vel. Nulla luctus, magna + at pulvinar tincidunt, massa lacus iaculis risus, nec efficitur + risus ex ac lectus. Quisque id lacus non velit aliquet ultrices. + Morbi vel arcu varius, commodo nulla eu, luctus est. Donec + efficitur, sapi + </p> + <p> + Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam + auctor augue massa, ac maximus nibh dapibus vel. Nulla luctus, magna + at pulvinar tincidunt, massa lacus iaculis risus, nec efficitur + risus ex ac lectus. Quisque id lacus non velit aliquet ultrices. + Morbi vel arcu varius, commodo nulla eu, luctus est. Donec + efficitur, sapi + </p> + <p> + Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam + auctor augue massa, ac maximus nibh dapibus vel. Nulla luctus, magna + at pulvinar tincidunt, massa lacus iaculis risus, nec efficitur + risus ex ac lectus. Quisque id lacus non velit aliquet ultrices. + Morbi vel arcu varius, commodo nulla eu, luctus est. Donec + efficitur, sapi + </p> + <p> + Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam + auctor augue massa, ac maximus nibh dapibus vel. Nulla luctus, magna + at pulvinar tincidunt, massa lacus iaculis risus, nec efficitur + risus ex ac lectus. Quisque id lacus non velit aliquet ultrices. + Morbi vel arcu varius, commodo nulla eu, luctus est. Donec + efficitur, sapi + </p> + <p> + Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam + auctor augue massa, ac maximus nibh dapibus vel. Nulla luctus, magna + at pulvinar tincidunt, massa lacus iaculis risus, nec efficitur + risus ex ac lectus. Quisque id lacus non velit aliquet ultrices. + Morbi vel arcu varius, commodo nulla eu, luctus est. Donec + efficitur, sapi + </p> + <p> + Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam + auctor augue massa, ac maximus nibh dapibus vel. Nulla luctus, magna + at pulvinar tincidunt, massa lacus iaculis risus, nec efficitur + risus ex ac lectus. Quisque id lacus non velit aliquet ultrices. + Morbi vel arcu varius, commodo nulla eu, luctus est. Donec + efficitur, sapi + </p> + </section> + <section class='my-11' id='section3'> + <h2 class='text-3xl font-semi'>Section 3</h2> + <p> + Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam + auctor augue massa, ac maximus nibh dapibus vel. Nulla luctus, magna + at pulvinar tincidunt, massa lacus iaculis risus, nec efficitur + risus ex ac lectus. Quisque id lacus non velit aliquet ultrices. + Morbi vel arcu varius, commodo nulla eu, luctus est. Donec + efficitur, sapi + </p> + <p> + Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam + auctor augue massa, ac maximus nibh dapibus vel. Nulla luctus, magna + at pulvinar tincidunt, massa lacus iaculis risus, nec efficitur + risus ex ac lectus. Quisque id lacus non velit aliquet ultrices. + Morbi vel arcu varius, commodo nulla eu, luctus est. Donec + efficitur, sapi + </p> + <p> + Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam + auctor augue massa, ac maximus nibh dapibus vel. Nulla luctus, magna + at pulvinar tincidunt, massa lacus iaculis risus, nec efficitur + risus ex ac lectus. Quisque id lacus non velit aliquet ultrices. + Morbi vel arcu varius, commodo nulla eu, luctus est. Donec + efficitur, sapi + </p> + <p> + Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam + auctor augue massa, ac maximus nibh dapibus vel. Nulla luctus, magna + at pulvinar tincidunt, massa lacus iaculis risus, nec efficitur + risus ex ac lectus. Quisque id lacus non velit aliquet ultrices. + Morbi vel arcu varius, commodo nulla eu, luctus est. Donec + efficitur, sapi + </p> + <p> + Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam + auctor augue massa, ac maximus nibh dapibus vel. Nulla luctus, magna + at pulvinar tincidunt, massa lacus iaculis risus, nec efficitur + risus ex ac lectus. Quisque id lacus non velit aliquet ultrices. + Morbi vel arcu varius, commodo nulla eu, luctus est. Donec + efficitur, sapi + </p> + <p> + Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam + auctor augue massa, ac maximus nibh dapibus vel. Nulla luctus, magna + at pulvinar tincidunt, massa lacus iaculis risus, nec efficitur + risus ex ac lectus. Quisque id lacus non velit aliquet ultrices. + Morbi vel arcu varius, commodo nulla eu, luctus est. Donec + efficitur, sapi + </p> + <p> + Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam + auctor augue massa, ac maximus nibh dapibus vel. Nulla luctus, magna + at pulvinar tincidunt, massa lacus iaculis risus, nec efficitur + risus ex ac lectus. Quisque id lacus non velit aliquet ultrices. + Morbi vel arcu varius, commodo nulla eu, luctus est. Donec + efficitur, sapi + </p> + </section> + <section class='my-11' id='section4'> + <h2 class='text-3xl font-semi'>Section 4</h2> + <p> + Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam + auctor augue massa, ac maximus nibh dapibus vel. Nulla luctus, magna + at pulvinar tincidunt, massa lacus iaculis risus, nec efficitur + risus ex ac lectus. Quisque id lacus non velit aliquet ultrices. + Morbi vel arcu varius, commodo nulla eu, luctus est. Donec + efficitur, sapi + </p> + <p> + Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam + auctor augue massa, ac maximus nibh dapibus vel. Nulla luctus, magna + at pulvinar tincidunt, massa lacus iaculis risus, nec efficitur + risus ex ac lectus. Quisque id lacus non velit aliquet ultrices. + Morbi vel arcu varius, commodo nulla eu, luctus est. Donec + efficitur, sapi + </p> + <p> + Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam + auctor augue massa, ac maximus nibh dapibus vel. Nulla luctus, magna + at pulvinar tincidunt, massa lacus iaculis risus, nec efficitur + risus ex ac lectus. Quisque id lacus non velit aliquet ultrices. + Morbi vel arcu varius, commodo nulla eu, luctus est. Donec + efficitur, sapi + </p> + <p> + Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam + auctor augue massa, ac maximus nibh dapibus vel. Nulla luctus, magna + at pulvinar tincidunt, massa lacus iaculis risus, nec efficitur + risus ex ac lectus. Quisque id lacus non velit aliquet ultrices. + Morbi vel arcu varius, commodo nulla eu, luctus est. Donec + efficitur, sapi + </p> + <p> + Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam + auctor augue massa, ac maximus nibh dapibus vel. Nulla luctus, magna + at pulvinar tincidunt, massa lacus iaculis risus, nec efficitur + risus ex ac lectus. Quisque id lacus non velit aliquet ultrices. + Morbi vel arcu varius, commodo nulla eu, luctus est. Donec + efficitur, sapi + </p> + <p> + Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam + auctor augue massa, ac maximus nibh dapibus vel. Nulla luctus, magna + at pulvinar tincidunt, massa lacus iaculis risus, nec efficitur + risus ex ac lectus. Quisque id lacus non velit aliquet ultrices. + Morbi vel arcu varius, commodo nulla eu, luctus est. Donec + efficitur, sapi + </p> + </section> + </main> + </div> + ) +} + +export default ContentElements diff --git a/nextjs-tailwind/components/Footer.jsx b/nextjs-tailwind/components/Footer.jsx new file mode 100644 index 000000000..8351f9fdc --- /dev/null +++ b/nextjs-tailwind/components/Footer.jsx @@ -0,0 +1,75 @@ +function Footer () { + return ( + <div> + <footer class='mt-10 py-5 mx-auto'> + <div class='grid grid-cols-1 sm:grid-cols-3'> + <div> + <h5 class='text-sm mb-4'>About Us</h5> + <ul class='flex flex-col gap-1'> + <li class='mb-2'> + <a href='story.html' class='text-gray-500 hover:text-gray-800'> + Our Story + </a> + </li> + <li class='mb-2'> + <a + href='privacy.html' + class='text-gray-500 hover:text-gray-800' + > + Privacy Policy + </a> + </li> + </ul> + </div> + <div class='sm:col-span-1'> + <h5 class='text-sm mb-4'>Share on Social Media</h5> + <ul class='flex flex-row gap-2'> + <li> + <a href='#' class='text-gray-500 hover:text-gray-800'> + <i class='bi bi-linkedin' /> + </a> + </li> + <li> + <a href='#' class='text-gray-500 hover:text-gray-800'> + <i class='bi bi-twitter' /> + </a> + </li> + <li> + <a href='#' class='text-gray-500 hover:text-gray-800'> + <i class='bi bi-facebook' /> + </a> + </li> + </ul> + </div> + <div class='sm:col-span-1'> + <form> + <h5 class='text-sm mb-4'>Subscribe to our newsletter</h5> + <p class='mb-4'> + Monthly digest of what's new and exciting from us. + </p> + <div class='flex flex-col sm:flex-row gap-2'> + <label for='newsletter1' class='sr-only'> + Email address + </label> + <input + id='newsletter1' + type='text' + class='py-2 px-4 border rounded w-full' + placeholder='Email address' + /> + <button + class='px-6 py-2 bg-blue-500 hover:bg-blue-600 text-white font-bold rounded' + type='button' + > + Subscribe + </button> + </div> + </form> + </div> + </div> + </footer> + </div> + ) +} + +export default Footer diff --git a/nextjs-tailwind/components/Header.jsx b/nextjs-tailwind/components/Header.jsx new file mode 100644 index 000000000..cbe5bc04e --- /dev/null +++ b/nextjs-tailwind/components/Header.jsx @@ -0,0 +1,42 @@ +import Link from 'next/link' +function Header () { + return ( + <header role='banner' class='sticky top-0 w-screen'> + <nav role='navigation' aria-label='Main navigation' class='bg-gray-900'> + <div class='mx-auto px-4'> + <div class='px-80 flex justify-between items-center py-4'> + <Link class='text-white text-xl font-semi leading-none' href='/'> + MyWebClass.org + </Link> + <button + class='navbar-toggler lg:hidden' + type='button' + data-toggle='collapse' + data-target='#navbarCollapse' + aria-controls='navbarCollapse' + aria-expanded='false' + aria-label='Toggle navigation' + > + <span class='navbar-toggler-icon' aria-hidden='true' /> + <span class='sr-only'>Toggle navigation</span> + </button> + <div class='hidden lg:block flex-grow'> + <ul class='flex justify-end flex-wrap items-center'> + <li class='nav-item'> + <Link + class='nav-link text-gray-300 hover:text-white px-3 py-2 rounded-md text-sm font-medium' + href='/content' + > + Content Template + </Link> + </li> + </ul> + </div> + </div> + </div> + </nav> + </header> + ) +} + +export default Header diff --git a/nextjs-tailwind/components/TableOfContents.jsx b/nextjs-tailwind/components/TableOfContents.jsx new file mode 100644 index 000000000..2cbbefedd --- /dev/null +++ b/nextjs-tailwind/components/TableOfContents.jsx @@ -0,0 +1,15 @@ +function TableOfContents () { + return ( + <div class='fixed'> + {/* <!-- Table of Contents (TOC) menu with scrollspy --> */} + <nav class='bg-gray-100 top-2 left-0 h-full'> + <div class='sticky mt-16 px-4'> + <h2 class='text-3xl font-semi'>Navigation</h2> + {/* <!-- Javascript builds out the navigation items --> */} + </div> + </nav> + </div> + ) +} + +export default TableOfContents diff --git a/nextjs-tailwind/lighthouserc.js b/nextjs-tailwind/lighthouserc.js new file mode 100644 index 000000000..da50f84a7 --- /dev/null +++ b/nextjs-tailwind/lighthouserc.js @@ -0,0 +1,10 @@ +module.exports = { + ci: { + collect: { + staticDistDir: "./nextjs-tailwind/out", // Update this with the directory where your static site files are located + }, + upload: { + target: "temporary-public-storage", + }, + }, +}; diff --git a/nextjs-tailwind/out/404.html b/nextjs-tailwind/out/404.html new file mode 100644 index 000000000..e4e8fd76e --- /dev/null +++ b/nextjs-tailwind/out/404.html @@ -0,0 +1 @@ +<!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><title>404: This page could not be found

404

This page could not be found.

\ No newline at end of file diff --git a/nextjs-tailwind/out/_next/static/chunks/664-8af8765c6fed5950.js b/nextjs-tailwind/out/_next/static/chunks/664-8af8765c6fed5950.js new file mode 100644 index 000000000..7fa2e2b28 --- /dev/null +++ b/nextjs-tailwind/out/_next/static/chunks/664-8af8765c6fed5950.js @@ -0,0 +1 @@ +(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[664],{1516:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getDomainLocale=function(e,t,o,n){return!1},("function"==typeof t.default||"object"==typeof t.default&&null!==t.default)&&void 0===t.default.__esModule&&(Object.defineProperty(t.default,"__esModule",{value:!0}),Object.assign(t.default,t),e.exports=t.default)},5569:function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=o(2648).Z,r=o(7273).Z,l=n(o(7294)),u=o(4532),a=o(3353),f=o(1410),c=o(9064),i=o(370),s=o(9955),d=o(4224),p=o(508),h=o(1516),v=o(4266);let y=new Set;function b(e,t,o,n,r){if(r||a.isLocalURL(t)){if(!n.bypassPrefetchedCheck){let r=void 0!==n.locale?n.locale:"locale"in e?e.locale:void 0,l=t+"%"+o+"%"+r;if(y.has(l))return;y.add(l)}Promise.resolve(e.prefetch(t,o,n)).catch(e=>{})}}function g(e){return"string"==typeof e?e:f.formatUrl(e)}let _=l.default.forwardRef(function(e,t){let o,n;let{href:f,as:y,children:_,prefetch:C,passHref:m,replace:M,shallow:k,scroll:j,locale:E,onClick:O,onMouseEnter:P,onTouchStart:x,legacyBehavior:L=!1}=e,w=r(e,["href","as","children","prefetch","passHref","replace","shallow","scroll","locale","onClick","onMouseEnter","onTouchStart","legacyBehavior"]);o=_,L&&("string"==typeof o||"number"==typeof o)&&(o=l.default.createElement("a",null,o));let R=!1!==C,I=l.default.useContext(s.RouterContext),S=l.default.useContext(d.AppRouterContext),T=null!=I?I:S,U=!I,{href:A,as:D}=l.default.useMemo(()=>{if(!I){let e=g(f);return{href:e,as:y?g(y):e}}let[e,t]=u.resolveHref(I,f,!0);return{href:e,as:y?u.resolveHref(I,y):t||e}},[I,f,y]),K=l.default.useRef(A),N=l.default.useRef(D);L&&(n=l.default.Children.only(o));let H=L?n&&"object"==typeof n&&n.ref:t,[B,Z,q]=p.useIntersection({rootMargin:"200px"}),z=l.default.useCallback(e=>{(N.current!==D||K.current!==A)&&(q(),N.current=D,K.current=A),B(e),H&&("function"==typeof H?H(e):"object"==typeof H&&(H.current=e))},[D,H,A,q,B]);l.default.useEffect(()=>{T&&Z&&R&&b(T,A,D,{locale:E},U)},[D,A,Z,E,R,null==I?void 0:I.locale,T,U]);let F={ref:z,onClick(e){L||"function"!=typeof O||O(e),L&&n.props&&"function"==typeof n.props.onClick&&n.props.onClick(e),T&&!e.defaultPrevented&&function(e,t,o,n,r,u,f,c,i,s){let{nodeName:d}=e.currentTarget,p="A"===d.toUpperCase();if(p&&(function(e){let t=e.currentTarget,o=t.getAttribute("target");return o&&"_self"!==o||e.metaKey||e.ctrlKey||e.shiftKey||e.altKey||e.nativeEvent&&2===e.nativeEvent.which}(e)||!i&&!a.isLocalURL(o)))return;e.preventDefault();let h=()=>{"beforePopState"in t?t[r?"replace":"push"](o,n,{shallow:u,locale:c,scroll:f}):t[r?"replace":"push"](n||o,{forceOptimisticNavigation:!s})};i?l.default.startTransition(h):h()}(e,T,A,D,M,k,j,E,U,R)},onMouseEnter(e){L||"function"!=typeof P||P(e),L&&n.props&&"function"==typeof n.props.onMouseEnter&&n.props.onMouseEnter(e),T&&(R||!U)&&b(T,A,D,{locale:E,priority:!0,bypassPrefetchedCheck:!0},U)},onTouchStart(e){L||"function"!=typeof x||x(e),L&&n.props&&"function"==typeof n.props.onTouchStart&&n.props.onTouchStart(e),T&&(R||!U)&&b(T,A,D,{locale:E,priority:!0,bypassPrefetchedCheck:!0},U)}};if(c.isAbsoluteUrl(D))F.href=D;else if(!L||m||"a"===n.type&&!("href"in n.props)){let e=void 0!==E?E:null==I?void 0:I.locale,t=(null==I?void 0:I.isLocaleDomain)&&h.getDomainLocale(D,e,null==I?void 0:I.locales,null==I?void 0:I.domainLocales);F.href=t||v.addBasePath(i.addLocale(D,e,null==I?void 0:I.defaultLocale))}return L?l.default.cloneElement(n,F):l.default.createElement("a",Object.assign({},w,F),o)});t.default=_,("function"==typeof t.default||"object"==typeof t.default&&null!==t.default)&&void 0===t.default.__esModule&&(Object.defineProperty(t.default,"__esModule",{value:!0}),Object.assign(t.default,t),e.exports=t.default)},508:function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.useIntersection=function(e){let{rootRef:t,rootMargin:o,disabled:f}=e,c=f||!l,[i,s]=n.useState(!1),d=n.useRef(null),p=n.useCallback(e=>{d.current=e},[]);n.useEffect(()=>{if(l){if(c||i)return;let e=d.current;if(e&&e.tagName){let n=function(e,t,o){let{id:n,observer:r,elements:l}=function(e){let t;let o={root:e.root||null,margin:e.rootMargin||""},n=a.find(e=>e.root===o.root&&e.margin===o.margin);if(n&&(t=u.get(n)))return t;let r=new Map,l=new IntersectionObserver(e=>{e.forEach(e=>{let t=r.get(e.target),o=e.isIntersecting||e.intersectionRatio>0;t&&o&&t(o)})},e);return t={id:o,observer:l,elements:r},a.push(o),u.set(o,t),t}(o);return l.set(e,t),r.observe(e),function(){if(l.delete(e),r.unobserve(e),0===l.size){r.disconnect(),u.delete(n);let e=a.findIndex(e=>e.root===n.root&&e.margin===n.margin);e>-1&&a.splice(e,1)}}}(e,e=>e&&s(e),{root:null==t?void 0:t.current,rootMargin:o});return n}}else if(!i){let e=r.requestIdleCallback(()=>s(!0));return()=>r.cancelIdleCallback(e)}},[c,o,t,i,d.current]);let h=n.useCallback(()=>{s(!1)},[]);return[p,i,h]};var n=o(7294),r=o(29);let l="function"==typeof IntersectionObserver,u=new Map,a=[];("function"==typeof t.default||"object"==typeof t.default&&null!==t.default)&&void 0===t.default.__esModule&&(Object.defineProperty(t.default,"__esModule",{value:!0}),Object.assign(t.default,t),e.exports=t.default)},1664:function(e,t,o){e.exports=o(5569)}}]); \ No newline at end of file diff --git a/nextjs-tailwind/out/_next/static/chunks/framework-cda2f1305c3d9424.js b/nextjs-tailwind/out/_next/static/chunks/framework-cda2f1305c3d9424.js new file mode 100644 index 000000000..9681a8827 --- /dev/null +++ b/nextjs-tailwind/out/_next/static/chunks/framework-cda2f1305c3d9424.js @@ -0,0 +1,33 @@ +"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[774],{4448:function(e,n,t){/** + * @license React + * react-dom.production.min.js + * + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */var r,l,a,u,o,i,s=t(7294),c=t(3840);function f(e){for(var n="https://reactjs.org/docs/error-decoder.html?invariant="+e,t=1;t