{"ast":null,"code":"import { jsxDEV as _jsxDEV } from \"react/jsx-dev-runtime\";\nimport { Fragment as _Fragment } from \"react/jsx-dev-runtime\";\nvar _jsxFileName = \"/home/gkkdzdg/www/src/layouts/Layout.js\";\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport Alert from 'components/alert/Alert';\nimport Header from 'components/header/Header';\nimport Footer from 'components/footer/Footer';\nimport Meta from 'components/meta';\nimport Transition from './Transition';\nimport cn from 'classnames';\nimport styles from './Layout.module.scss';\nimport globalData from 'global/globalData';\nimport { useRouter } from 'next/router';\nimport { useMemo } from 'react';\n\nconst Layout = ({\n  pageProps,\n  preview,\n  children,\n  pageId,\n  onBoarding = false,\n  pageTitle = undefined\n}) => {\n  // TODO: use pageProps to determine things? (meta data & title, ..)\n  // and/or get some from globalData\n  const metaTitle = pageTitle || pageProps.title;\n  const meta = {\n    title: 'compose' + (metaTitle ? ' - ' + metaTitle : ''),\n    description: 'Description of compose website (TODO)'\n  };\n  let headerLinks = undefined;\n  const router = useRouter();\n  const translatedLink = useMemo(() => {\n    let translatedLink = undefined;\n\n    if (pageProps.lang) {\n      const lang = pageProps.lang;\n      const otherLang = lang == 'fr' ? 'en' : 'fr';\n      headerLinks = globalData.menuItems[lang];\n      translatedLink = router.route.split('/').map((routeEle, depth) => {\n        let translation = routeEle;\n\n        if (routeEle != '') {\n          if (depth == 1) {\n            translation = otherLang;\n          } else {\n            if (pageProps.allSlugs && pageProps.allSlugs[otherLang]) {\n              translation = pageProps.allSlugs[otherLang].current;\n            } else {\n              for (const slugKey in globalData.slugs) {\n                if (!globalData.slugs.hasOwnProperty(slugKey)) continue;\n                const slugTranslations = globalData.slugs[slugKey];\n\n                if (slugTranslations[lang] == routeEle) {\n                  translation = slugTranslations[otherLang];\n                  break;\n                }\n              }\n            }\n          }\n        }\n\n        return translation;\n      }).join('/');\n      if (translatedLink.indexOf('[') != -1) translatedLink = '/' + otherLang;\n    }\n\n    return translatedLink;\n  }, [pageProps.lang, pageId]); // console.log('Layout.js::79 pageId', pageId)\n\n  return /*#__PURE__*/_jsxDEV(_Fragment, {\n    children: [/*#__PURE__*/_jsxDEV(Meta, _objectSpread({}, meta), void 0, false, {\n      fileName: _jsxFileName,\n      lineNumber: 84,\n      columnNumber: 4\n    }, this), !onBoarding && headerLinks && /*#__PURE__*/_jsxDEV(Header, {\n      links: headerLinks,\n      translatedLink: translatedLink,\n      lang: pageProps.lang\n    }, void 0, false, {\n      fileName: _jsxFileName,\n      lineNumber: 85,\n      columnNumber: 35\n    }, this), /*#__PURE__*/_jsxDEV(Alert, {\n      preview: preview\n    }, void 0, false, {\n      fileName: _jsxFileName,\n      lineNumber: 86,\n      columnNumber: 4\n    }, this), /*#__PURE__*/_jsxDEV(Transition, {\n      location: pageId,\n      children: /*#__PURE__*/_jsxDEV(\"main\", {\n        className: onBoarding ? cn() : cn(styles.main, pageId.replace('/', '-')),\n        children: [children, !onBoarding && /*#__PURE__*/_jsxDEV(Footer, {\n          lang: pageProps.lang\n        }, void 0, false, {\n          fileName: _jsxFileName,\n          lineNumber: 90,\n          columnNumber: 22\n        }, this)]\n      }, void 0, true, {\n        fileName: _jsxFileName,\n        lineNumber: 88,\n        columnNumber: 5\n      }, this)\n    }, void 0, false, {\n      fileName: _jsxFileName,\n      lineNumber: 87,\n      columnNumber: 4\n    }, this)]\n  }, void 0, true);\n};\n\nexport default Layout;","map":{"version":3,"sources":["/home/gkkdzdg/www/src/layouts/Layout.js"],"names":["Alert","Header","Footer","Meta","Transition","cn","styles","globalData","useRouter","useMemo","Layout","pageProps","preview","children","pageId","onBoarding","pageTitle","undefined","metaTitle","title","meta","description","headerLinks","router","translatedLink","lang","otherLang","menuItems","route","split","map","routeEle","depth","translation","allSlugs","current","slugKey","slugs","hasOwnProperty","slugTranslations","join","indexOf","main","replace"],"mappings":"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","sourcesContent":["\n\nimport Alert from 'components/alert/Alert'\nimport Header from 'components/header/Header'\nimport Footer from 'components/footer/Footer'\nimport Meta from 'components/meta'\n\nimport Transition from './Transition'\n\nimport cn from 'classnames'\nimport styles from './Layout.module.scss'\n\nimport globalData from 'global/globalData'\nimport { useRouter } from 'next/router'\nimport { useMemo } from 'react'\n\n\nconst Layout = ({\n\t\tpageProps, preview, children, pageId,\n\t\tonBoarding = false,\n\t\tpageTitle = undefined,\n\t}) => {\n\n\t// TODO: use pageProps to determine things? (meta data & title, ..)\n\t// and/or get some from globalData\n\tconst metaTitle = pageTitle || pageProps.title\n\tconst meta = {\n\t\ttitle: 'compose' + (metaTitle ? ' - ' + metaTitle : ''),\n\t\tdescription: 'Description of compose website (TODO)',\n\t}\n\n\tlet headerLinks = undefined\n\n\tconst router = useRouter()\n\tconst translatedLink = useMemo(() => {\n\t\tlet translatedLink = undefined\n\t\tif (pageProps.lang) {\n\t\t\tconst lang = pageProps.lang\n\t\t\tconst otherLang = lang == 'fr'\n\t\t\t\t? 'en'\n\t\t\t\t: 'fr'\n\n\n\t\t\theaderLinks = globalData.menuItems[lang]\n\n\t\t\ttranslatedLink = router.route.split('/')\n\t\t\t\t.map((routeEle, depth) => {\n\t\t\t\t\tlet translation = routeEle\n\t\t\t\t\tif (routeEle != '') {\n\t\t\t\t\t\tif (depth == 1) {\n\t\t\t\t\t\t\ttranslation = otherLang\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tif (pageProps.allSlugs && pageProps.allSlugs[otherLang]) {\n\t\t\t\t\t\t\t\ttranslation = pageProps.allSlugs[otherLang].current\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\telse {\n\t\t\t\t\t\t\t\tfor (const slugKey in globalData.slugs) {\n\t\t\t\t\t\t\t\t\tif (!globalData.slugs.hasOwnProperty(slugKey)) continue\n\t\t\t\t\t\t\t\t\tconst slugTranslations = globalData.slugs[slugKey]\n\t\t\t\t\t\t\t\t\tif (slugTranslations[lang] == routeEle) {\n\t\t\t\t\t\t\t\t\t\ttranslation = slugTranslations[otherLang]\n\t\t\t\t\t\t\t\t\t\tbreak\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\treturn translation\n\t\t\t\t})\n\t\t\t\t.join('/')\n\n\t\t\tif (translatedLink.indexOf('[') != -1)\n\t\t\t\ttranslatedLink = '/' + otherLang\n\t\t}\n\n\t\treturn translatedLink\n\t}, [pageProps.lang, pageId])\n\n\t// console.log('Layout.js::79 pageId', pageId)\n\n\n\treturn (\n\t\t<>\n\t\t\t<Meta {...meta} />\n\t\t\t{!onBoarding && headerLinks && <Header links={headerLinks} translatedLink={translatedLink} lang={pageProps.lang} />}\n\t\t\t<Alert preview={preview} />\n\t\t\t<Transition location={pageId}>\n\t\t\t\t<main className={onBoarding ? cn() : cn(styles.main, pageId.replace('/', '-'))}>\n\t\t\t\t\t{children}\n\t\t\t\t\t{!onBoarding && <Footer lang={pageProps.lang} />}\n\t\t\t\t</main>\n\t\t\t</Transition>\n\t\t</>\n\t)\n}\n\nexport default Layout"]},"metadata":{},"sourceType":"module"}