From cadd58187a656de6882c4c181fa609eb6e796eeb Mon Sep 17 00:00:00 2001 From: Jonny Barnes Date: Fri, 18 Aug 2023 17:03:38 +0100 Subject: [PATCH] Initial work on adding passkeys Mostly starting to get some javascript set up --- .editorconfig | 3 + .eslintrc.yml | 3 +- .stylelintrc | 6 +- public/assets/app.js | 6 +- public/assets/app.js.br | Bin 16618 -> 16895 bytes resources/css/app.css | 12 +- resources/css/code.css | 2 +- resources/css/colours.css | 18 +-- resources/css/content.css | 55 ++++--- resources/css/fonts.css | 8 +- resources/css/h-card.css | 56 ++++---- resources/css/layout.css | 26 ++-- resources/css/posse.css | 3 - resources/css/variables.css | 36 ++--- resources/js/app.js | 9 ++ resources/js/auth.js | 36 +++++ resources/views/admin/welcome.blade.php | 5 + webpack.config.js | 184 ++++++++++++------------ 18 files changed, 256 insertions(+), 212 deletions(-) delete mode 100644 resources/css/posse.css create mode 100644 resources/js/auth.js diff --git a/.editorconfig b/.editorconfig index 8f0de65c..0b5d680f 100644 --- a/.editorconfig +++ b/.editorconfig @@ -8,6 +8,9 @@ indent_style = space insert_final_newline = true trim_trailing_whitespace = true +[*.{js,css}] +indent_size = 2 + [*.md] trim_trailing_whitespace = false diff --git a/.eslintrc.yml b/.eslintrc.yml index a16298c1..d3156688 100644 --- a/.eslintrc.yml +++ b/.eslintrc.yml @@ -1,5 +1,6 @@ parserOptions: sourceType: 'module' + ecmaVersion: 8 extends: 'eslint:recommended' env: browser: true @@ -9,7 +10,7 @@ ignorePatterns: rules: indent: - error - - 4 + - 2 linebreak-style: - error - unix diff --git a/.stylelintrc b/.stylelintrc index c4ff038c..a9a9091b 100644 --- a/.stylelintrc +++ b/.stylelintrc @@ -1,7 +1,3 @@ { - "extends": ["stylelint-config-standard"], - "rules": { - "indentation": 4, - "import-notation": "string" - } + "extends": ["stylelint-config-standard"] } diff --git a/public/assets/app.js b/public/assets/app.js index b2c27953..e8471e65 100644 --- a/public/assets/app.js +++ b/public/assets/app.js @@ -16,9 +16,7 @@ \*****************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _css_app_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../css/app.css */ "./resources/css/app.css"); - +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _css_app_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../css/app.css */ \"./resources/css/app.css\");\n\n\n// import { Auth } from './auth.js';\n//\n// let auth = new Auth();\n\n// auth.createCredentials().then((credentials) => {\n// // eslint-disable-next-line no-console\n// console.log(credentials);\n// });//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9yZXNvdXJjZXMvanMvYXBwLmpzIiwibWFwcGluZ3MiOiI7O0FBQXdCOztBQUV4QjtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9qYnVrLWZyb250ZW5kLy4vcmVzb3VyY2VzL2pzL2FwcC5qcz82ZDQwIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAnLi4vY3NzL2FwcC5jc3MnO1xuXG4vLyBpbXBvcnQgeyBBdXRoIH0gZnJvbSAnLi9hdXRoLmpzJztcbi8vXG4vLyBsZXQgYXV0aCA9IG5ldyBBdXRoKCk7XG5cbi8vIGF1dGguY3JlYXRlQ3JlZGVudGlhbHMoKS50aGVuKChjcmVkZW50aWFscykgPT4ge1xuLy8gICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tY29uc29sZVxuLy8gICBjb25zb2xlLmxvZyhjcmVkZW50aWFscyk7XG4vLyB9KTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./resources/js/app.js\n"); /***/ }), @@ -28,7 +26,7 @@ __webpack_require__.r(__webpack_exports__); \***********************************************************************************************************************************************************************/ /***/ (function(module, __webpack_exports__, __webpack_require__) { -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/sourceMaps.js */ \"./node_modules/css-loader/dist/runtime/sourceMaps.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \":root{--font-family-headings:\\\"Archer SSm A\\\",\\\"Archer SSm B\\\",serif;--font-family-body:\\\"Verlag A\\\",\\\"Verlag B\\\",sans-serif;--font-family-monospace:\\\"Operator Mono SSm A\\\",\\\"Operator Mono SSm B\\\",monospace;--font-size-sm:0.75rem;--font-size-base:1rem;--font-size-md:1.25rem;--font-size-lg:1.5rem;--font-size-xl:1.75rem;--font-size-xxl:2rem;--font-size-xxxl:2.25rem;--color-primary:#334700;--color-secondary:#e3ffb7;--color-link:#00649e;--color-link-visited:#bc7aff;--color-primary-shadow:rgba(16,25,0,.4)}@supports (color:color(display-p3 0 0 0)){:root{--color-primary:color(display-p3 0.21567 0.27838 0.03615);--color-secondary:color(display-p3 0.91016 0.99842 0.74082);--color-link:color(display-p3 0.01045 0.38351 0.63618);--color-link-visited:color(display-p3 0.70467 0.47549 0.99958);--color-primary-shadow:color(display-p3 0.06762 0.09646 0.00441/0.4)}}@supports (color:oklch(0% 0 0)){:root{--color-primary:oklch(36.8% 0.1 125.505);--color-secondary:oklch(96.3% 0.1 125.505);--color-link:oklch(48.09% 0.146 241.41);--color-link-visited:oklch(70.44% 0.21 304.41);--color-primary-shadow:oklch(19.56% 0.054 125.505/40%)}}body{background-color:var(--color-secondary);color:var(--color-primary);font-family:var(--font-family-body);font-size:var(--font-size-md)}code{font-family:var(--font-family-monospace)}h1,h2,h3,h4,h5,h6{font-family:var(--font-family-headings)}.grid{display:grid;grid-template-columns:5vw 1fr 5vw;grid-template-rows:-webkit-min-content 1fr -webkit-min-content;grid-template-rows:min-content 1fr min-content;row-gap:1rem}#site-header{grid-column:2/3;grid-row:1/2}main{grid-row:2/3}footer,main{grid-column:2/3}footer{grid-row:3/4}footer .iwc-logo{max-width:85vw}a{color:var(--color-link)}a:visited{color:var(--color-link-visited)}#site-header a:visited{color:var(--color-link)}.hljs{border-radius:.5rem}.p-bridgy-twitter-content{display:none}.h-card .hovercard{-webkit-box-orient:vertical;-webkit-box-direction:normal;background-color:var(--color-secondary);border-radius:1rem;-webkit-box-shadow:0 .5rem .5rem .5rem var(--color-primary-shadow);box-shadow:0 .5rem .5rem .5rem var(--color-primary-shadow);display:none;-ms-flex-direction:column;flex-direction:column;gap:.5rem;opacity:0;padding:1rem;position:absolute;-webkit-transition:opacity .5s ease-in-out;transition:opacity .5s ease-in-out;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;z-index:100}.h-card .hovercard .u-photo{max-width:6rem}.h-card .hovercard .social-icon{height:1rem;width:1rem}.h-card:hover .hovercard{display:-webkit-box;display:-ms-flexbox;display:flex;opacity:1}.h-entry{-webkit-border-start:1px solid var(--color-primary);-webkit-padding-start:.5rem;border-inline-start:1px solid var(--color-primary);padding-inline-start:.5rem}.h-entry .reply-to{font-style:italic}.h-entry .post-info a{text-decoration:none}.h-entry .note-metadata{-webkit-box-orient:horizontal;-webkit-box-direction:normal;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;gap:1rem}.h-entry .note-metadata .syndication-links{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row wrap;flex-flow:row wrap}.h-entry .note-metadata .syndication-links a{text-decoration:none}.h-entry .note-metadata .syndication-links a svg{height:1rem;width:1rem}\", \"\",{\"version\":3,\"sources\":[\"webpack://./resources/css/variables.css\",\"webpack://./resources/css/fonts.css\",\"webpack://./resources/css/colours.css\",\"webpack://./resources/css/layout.css\",\"webpack://./resources/css/code.css\",\"webpack://./resources/css/posse.css\",\"webpack://./resources/css/h-card.css\",\"webpack://./resources/css/content.css\"],\"names\":[],\"mappings\":\"AAAA,MAEI,0DAA6D,CAC7D,mDAAsD,CACtD,6EAAgF,CAGhF,sBAAuB,CACvB,qBAAsB,CACtB,sBAAuB,CACvB,qBAAsB,CACtB,sBAAuB,CACvB,oBAAqB,CACrB,wBAAyB,CAGzB,uBAAyC,CACzC,yBAA2C,CAC3C,oBAAwC,CACxC,4BAA+C,CAC/C,uCACJ,CArBA,0CAAA,MAgBI,yDAAyC,CACzC,2DAA2C,CAC3C,sDAAwC,CACxC,8DAA+C,CAC/C,oEACJ,CAAA,CArBA,gCAAA,MAgBI,wCAAyC,CACzC,0CAA2C,CAC3C,uCAAwC,CACxC,8CAA+C,CAC/C,sDACJ,CAAA,CCrBA,KCCI,uCAAwC,CACxC,0BAA2B,CDD3B,mCAAoC,CACpC,6BACJ,CAEA,KACI,wCACJ,CAEA,kBAMI,uCACJ,CEhBA,MACI,YAAa,CACb,iCAAkC,CAClC,8DAA+C,CAA/C,8CAA+C,CAC/C,YACJ,CAEA,aACI,eAAkB,CAClB,YACJ,CAEA,KAEI,YACJ,CAEA,YAJI,eAWJ,CAPA,OAEI,YAKJ,CAHI,iBACI,cACJ,CDlBJ,EACI,uBAKJ,CAHI,UACI,+BACJ,CAIA,uBACI,uBACJ,CEhBJ,MACI,mBACJ,CCFA,0BACI,YACJ,CCDI,mBAWI,2BAAsB,CAAtB,4BAAsB,CAJtB,uCAAwC,CAFxC,kBAAmB,CACnB,kEAA2D,CAA3D,0DAA2D,CAL3D,YAAa,CAUb,yBAAsB,CAAtB,qBAAsB,CACtB,SAAU,CAFV,SAAU,CANV,YAAa,CAFb,iBAAkB,CAOlB,0CAAoC,CAApC,kCAAoC,CADpC,yBAAkB,CAAlB,sBAAkB,CAAlB,iBAAkB,CALlB,WAmBJ,CARI,4BACI,cACJ,CAEA,gCAEI,WAAY,CADZ,UAEJ,CAIA,yBACI,mBAAa,CAAb,mBAAa,CAAb,YAAa,CACb,SACJ,CC1BR,SACI,mDAAmD,CACnD,2BAA2B,CAD3B,kDAAmD,CACnD,0BA8BJ,CA5BI,mBACI,iBACJ,CAGI,sBACI,oBACJ,CAGJ,wBAEI,6BAAmB,CAAnB,4BAAmB,CADnB,mBAAa,CAAb,mBAAa,CAAb,YAAa,CACb,sBAAmB,CAAnB,kBAAmB,CACnB,QAcJ,CAZI,2CACI,6BAAmB,CAAnB,4BAAmB,CAAnB,sBAAmB,CAAnB,kBAUJ,CARI,6CACI,oBAMJ,CAJI,iDAEI,WAAY,CADZ,UAEJ\",\"sourcesContent\":[\":root {\\n /* Font Family */\\n --font-family-headings: \\\"Archer SSm A\\\", \\\"Archer SSm B\\\", serif;\\n --font-family-body: \\\"Verlag A\\\", \\\"Verlag B\\\", sans-serif;\\n --font-family-monospace: \\\"Operator Mono SSm A\\\", \\\"Operator Mono SSm B\\\", monospace;\\n\\n /* Font Size */\\n --font-size-sm: 0.75rem; /* 12px */\\n --font-size-base: 1rem; /* 16px, base */\\n --font-size-md: 1.25rem; /* 20px */\\n --font-size-lg: 1.5rem; /* 24px */\\n --font-size-xl: 1.75rem; /* 28px */\\n --font-size-xxl: 2rem; /* 32px */\\n --font-size-xxxl: 2.25rem; /* 36px */\\n\\n /* Colours */\\n --color-primary: oklch(36.8% 0.1 125.505);\\n --color-secondary: oklch(96.3% 0.1 125.505);\\n --color-link: oklch(48.09% 0.146 241.41);\\n --color-link-visited: oklch(70.44% 0.21 304.41);\\n --color-primary-shadow: oklch(19.56% 0.054 125.505 / 40%);\\n}\\n\",\"body {\\n font-family: var(--font-family-body);\\n font-size: var(--font-size-md);\\n}\\n\\ncode {\\n font-family: var(--font-family-monospace);\\n}\\n\\nh1,\\nh2,\\nh3,\\nh4,\\nh5,\\nh6 {\\n font-family: var(--font-family-headings);\\n}\\n\",\"body {\\n background-color: var(--color-secondary);\\n color: var(--color-primary);\\n}\\n\\na {\\n color: var(--color-link);\\n\\n &:visited {\\n color: var(--color-link-visited);\\n }\\n}\\n\\n#site-header {\\n & a:visited {\\n color: var(--color-link);\\n }\\n}\\n\",\".grid {\\n display: grid;\\n grid-template-columns: 5vw 1fr 5vw;\\n grid-template-rows: min-content 1fr min-content;\\n row-gap: 1rem;\\n}\\n\\n#site-header {\\n grid-column: 2 / 3;\\n grid-row: 1 / 2;\\n}\\n\\nmain {\\n grid-column: 2 / 3;\\n grid-row: 2 / 3;\\n}\\n\\nfooter {\\n grid-column: 2 / 3;\\n grid-row: 3 / 4;\\n\\n & .iwc-logo {\\n max-width: 85vw;\\n }\\n}\\n\",\".hljs {\\n border-radius: .5rem;\\n}\\n\",\".p-bridgy-twitter-content {\\n display: none;\\n}\\n\",\".h-card {\\n & .hovercard {\\n display: none;\\n position: absolute;\\n z-index: 100;\\n padding: 1rem;\\n border-radius: 1rem;\\n box-shadow: 0 .5rem .5rem .5rem var(--color-primary-shadow);\\n background-color: var(--color-secondary);\\n width: fit-content;\\n transition: opacity 0.5s ease-in-out;\\n opacity: 0;\\n flex-direction: column;\\n gap: .5rem;\\n\\n & .u-photo {\\n max-width: 6rem;\\n }\\n\\n & .social-icon {\\n width: 1rem;\\n height: 1rem;\\n }\\n }\\n\\n &:hover {\\n & .hovercard {\\n display: flex;\\n opacity: 1;\\n }\\n }\\n}\\n\",\"@import \\\"posse.css\\\";\\n@import \\\"h-card.css\\\";\\n\\n.h-entry {\\n border-inline-start: 1px solid var(--color-primary);\\n padding-inline-start: .5rem;\\n\\n & .reply-to {\\n font-style: italic;\\n }\\n\\n & .post-info {\\n & a {\\n text-decoration: none;\\n }\\n }\\n\\n & .note-metadata {\\n display: flex;\\n flex-direction: row;\\n gap: 1rem;\\n\\n & .syndication-links {\\n flex-flow: row wrap;\\n\\n & a {\\n text-decoration: none;\\n\\n & svg {\\n width: 1rem;\\n height: 1rem;\\n }\\n }\\n }\\n }\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\n/* harmony default export */ __webpack_exports__[\"default\"] = (___CSS_LOADER_EXPORT___);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L2Nqcy5qcz8/cnVsZVNldFsxXS5ydWxlc1sxXS51c2VbMV0hLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvZGlzdC9janMuanM/P3J1bGVTZXRbMV0ucnVsZXNbMV0udXNlWzJdIS4vcmVzb3VyY2VzL2Nzcy9hcHAuY3NzIiwibWFwcGluZ3MiOiI7Ozs7O0FBQUE7QUFDNkc7QUFDakI7QUFDNUYsOEJBQThCLG1GQUEyQixDQUFDLDRGQUFxQztBQUMvRjtBQUNBLGdEQUFnRCwrREFBK0Qsd0RBQXdELGtGQUFrRix1QkFBdUIsc0JBQXNCLHVCQUF1QixzQkFBc0IsdUJBQXVCLHFCQUFxQix5QkFBeUIsd0JBQXdCLDBCQUEwQixxQkFBcUIsNkJBQTZCLHdDQUF3QywwQ0FBMEMsTUFBTSwwREFBMEQsNERBQTRELHVEQUF1RCwrREFBK0Qsc0VBQXNFLGdDQUFnQyxNQUFNLHlDQUF5QywyQ0FBMkMsd0NBQXdDLCtDQUErQyx3REFBd0QsS0FBSyx3Q0FBd0MsMkJBQTJCLG9DQUFvQyw4QkFBOEIsS0FBSyx5Q0FBeUMsa0JBQWtCLHdDQUF3QyxNQUFNLGFBQWEsa0NBQWtDLCtEQUErRCwrQ0FBK0MsYUFBYSxhQUFhLGdCQUFnQixhQUFhLEtBQUssYUFBYSxZQUFZLGdCQUFnQixPQUFPLGFBQWEsaUJBQWlCLGVBQWUsRUFBRSx3QkFBd0IsVUFBVSxnQ0FBZ0MsdUJBQXVCLHdCQUF3QixNQUFNLG9CQUFvQiwwQkFBMEIsYUFBYSxtQkFBbUIsNEJBQTRCLDZCQUE2Qix3Q0FBd0MsbUJBQW1CLG1FQUFtRSwyREFBMkQsYUFBYSwwQkFBMEIsc0JBQXNCLFVBQVUsVUFBVSxhQUFhLGtCQUFrQiwyQ0FBMkMsbUNBQW1DLDBCQUEwQix1QkFBdUIsa0JBQWtCLFlBQVksNEJBQTRCLGVBQWUsZ0NBQWdDLFlBQVksV0FBVyx5QkFBeUIsb0JBQW9CLG9CQUFvQixhQUFhLFVBQVUsU0FBUyxvREFBb0QsNEJBQTRCLG1EQUFtRCwyQkFBMkIsbUJBQW1CLGtCQUFrQixzQkFBc0IscUJBQXFCLHdCQUF3Qiw4QkFBOEIsNkJBQTZCLG9CQUFvQixvQkFBb0IsYUFBYSx1QkFBdUIsbUJBQW1CLFNBQVMsMkNBQTJDLDhCQUE4Qiw2QkFBNkIsdUJBQXVCLG1CQUFtQiw2Q0FBNkMscUJBQXFCLGlEQUFpRCxZQUFZLFdBQVcsT0FBTyw0cERBQTRwRCwrRkFBK0YsaUVBQWlFLDJGQUEyRix3REFBd0QsMkNBQTJDLGlEQUFpRCwyQ0FBMkMsMkNBQTJDLDJDQUEyQywyQ0FBMkMsK0VBQStFLGtEQUFrRCwrQ0FBK0Msc0RBQXNELGdFQUFnRSxHQUFHLFdBQVcsMkNBQTJDLHFDQUFxQyxHQUFHLFVBQVUsZ0RBQWdELEdBQUcsaUNBQWlDLCtDQUErQyxHQUFHLFdBQVcsK0NBQStDLGtDQUFrQyxHQUFHLE9BQU8sK0JBQStCLG1CQUFtQiwyQ0FBMkMsT0FBTyxHQUFHLGtCQUFrQixtQkFBbUIsbUNBQW1DLE9BQU8sR0FBRyxZQUFZLG9CQUFvQix5Q0FBeUMsc0RBQXNELG9CQUFvQixHQUFHLGtCQUFrQix5QkFBeUIsc0JBQXNCLEdBQUcsVUFBVSx5QkFBeUIsc0JBQXNCLEdBQUcsWUFBWSx5QkFBeUIsc0JBQXNCLHFCQUFxQiwwQkFBMEIsT0FBTyxHQUFHLFlBQVksMkJBQTJCLEdBQUcsZ0NBQWdDLG9CQUFvQixHQUFHLGNBQWMsb0JBQW9CLHdCQUF3Qiw2QkFBNkIsdUJBQXVCLHdCQUF3Qiw4QkFBOEIsc0VBQXNFLG1EQUFtRCw2QkFBNkIsK0NBQStDLHFCQUFxQixpQ0FBaUMscUJBQXFCLHdCQUF3Qiw4QkFBOEIsV0FBVyw0QkFBNEIsMEJBQTBCLDJCQUEyQixXQUFXLE9BQU8saUJBQWlCLHdCQUF3Qiw0QkFBNEIseUJBQXlCLFdBQVcsT0FBTyxHQUFHLDJCQUEyQix5QkFBeUIsY0FBYywwREFBMEQsa0NBQWtDLHFCQUFxQiw2QkFBNkIsT0FBTyxzQkFBc0IsZUFBZSxvQ0FBb0MsV0FBVyxPQUFPLDBCQUEwQix3QkFBd0IsOEJBQThCLG9CQUFvQixrQ0FBa0Msa0NBQWtDLHFCQUFxQix3Q0FBd0MsMkJBQTJCLGtDQUFrQyxtQ0FBbUMsbUJBQW1CLGVBQWUsV0FBVyxPQUFPLEdBQUcscUJBQXFCO0FBQ3RwUTtBQUNBLCtEQUFlLHVCQUF1QixFQUFDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vamJ1ay1mcm9udGVuZC8uL3Jlc291cmNlcy9jc3MvYXBwLmNzcz8wYmExIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIEltcG9ydHNcbmltcG9ydCBfX19DU1NfTE9BREVSX0FQSV9TT1VSQ0VNQVBfSU1QT1JUX19fIGZyb20gXCIuLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L3J1bnRpbWUvc291cmNlTWFwcy5qc1wiO1xuaW1wb3J0IF9fX0NTU19MT0FERVJfQVBJX0lNUE9SVF9fXyBmcm9tIFwiLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvZGlzdC9ydW50aW1lL2FwaS5qc1wiO1xudmFyIF9fX0NTU19MT0FERVJfRVhQT1JUX19fID0gX19fQ1NTX0xPQURFUl9BUElfSU1QT1JUX19fKF9fX0NTU19MT0FERVJfQVBJX1NPVVJDRU1BUF9JTVBPUlRfX18pO1xuLy8gTW9kdWxlXG5fX19DU1NfTE9BREVSX0VYUE9SVF9fXy5wdXNoKFttb2R1bGUuaWQsIFwiOnJvb3R7LS1mb250LWZhbWlseS1oZWFkaW5nczpcXFwiQXJjaGVyIFNTbSBBXFxcIixcXFwiQXJjaGVyIFNTbSBCXFxcIixzZXJpZjstLWZvbnQtZmFtaWx5LWJvZHk6XFxcIlZlcmxhZyBBXFxcIixcXFwiVmVybGFnIEJcXFwiLHNhbnMtc2VyaWY7LS1mb250LWZhbWlseS1tb25vc3BhY2U6XFxcIk9wZXJhdG9yIE1vbm8gU1NtIEFcXFwiLFxcXCJPcGVyYXRvciBNb25vIFNTbSBCXFxcIixtb25vc3BhY2U7LS1mb250LXNpemUtc206MC43NXJlbTstLWZvbnQtc2l6ZS1iYXNlOjFyZW07LS1mb250LXNpemUtbWQ6MS4yNXJlbTstLWZvbnQtc2l6ZS1sZzoxLjVyZW07LS1mb250LXNpemUteGw6MS43NXJlbTstLWZvbnQtc2l6ZS14eGw6MnJlbTstLWZvbnQtc2l6ZS14eHhsOjIuMjVyZW07LS1jb2xvci1wcmltYXJ5OiMzMzQ3MDA7LS1jb2xvci1zZWNvbmRhcnk6I2UzZmZiNzstLWNvbG9yLWxpbms6IzAwNjQ5ZTstLWNvbG9yLWxpbmstdmlzaXRlZDojYmM3YWZmOy0tY29sb3ItcHJpbWFyeS1zaGFkb3c6cmdiYSgxNiwyNSwwLC40KX1Ac3VwcG9ydHMgKGNvbG9yOmNvbG9yKGRpc3BsYXktcDMgMCAwIDApKXs6cm9vdHstLWNvbG9yLXByaW1hcnk6Y29sb3IoZGlzcGxheS1wMyAwLjIxNTY3IDAuMjc4MzggMC4wMzYxNSk7LS1jb2xvci1zZWNvbmRhcnk6Y29sb3IoZGlzcGxheS1wMyAwLjkxMDE2IDAuOTk4NDIgMC43NDA4Mik7LS1jb2xvci1saW5rOmNvbG9yKGRpc3BsYXktcDMgMC4wMTA0NSAwLjM4MzUxIDAuNjM2MTgpOy0tY29sb3ItbGluay12aXNpdGVkOmNvbG9yKGRpc3BsYXktcDMgMC43MDQ2NyAwLjQ3NTQ5IDAuOTk5NTgpOy0tY29sb3ItcHJpbWFyeS1zaGFkb3c6Y29sb3IoZGlzcGxheS1wMyAwLjA2NzYyIDAuMDk2NDYgMC4wMDQ0MS8wLjQpfX1Ac3VwcG9ydHMgKGNvbG9yOm9rbGNoKDAlIDAgMCkpezpyb290ey0tY29sb3ItcHJpbWFyeTpva2xjaCgzNi44JSAwLjEgMTI1LjUwNSk7LS1jb2xvci1zZWNvbmRhcnk6b2tsY2goOTYuMyUgMC4xIDEyNS41MDUpOy0tY29sb3ItbGluazpva2xjaCg0OC4wOSUgMC4xNDYgMjQxLjQxKTstLWNvbG9yLWxpbmstdmlzaXRlZDpva2xjaCg3MC40NCUgMC4yMSAzMDQuNDEpOy0tY29sb3ItcHJpbWFyeS1zaGFkb3c6b2tsY2goMTkuNTYlIDAuMDU0IDEyNS41MDUvNDAlKX19Ym9keXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLXNlY29uZGFyeSk7Y29sb3I6dmFyKC0tY29sb3ItcHJpbWFyeSk7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1mYW1pbHktYm9keSk7Zm9udC1zaXplOnZhcigtLWZvbnQtc2l6ZS1tZCl9Y29kZXtmb250LWZhbWlseTp2YXIoLS1mb250LWZhbWlseS1tb25vc3BhY2UpfWgxLGgyLGgzLGg0LGg1LGg2e2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtZmFtaWx5LWhlYWRpbmdzKX0uZ3JpZHtkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjV2dyAxZnIgNXZ3O2dyaWQtdGVtcGxhdGUtcm93czotd2Via2l0LW1pbi1jb250ZW50IDFmciAtd2Via2l0LW1pbi1jb250ZW50O2dyaWQtdGVtcGxhdGUtcm93czptaW4tY29udGVudCAxZnIgbWluLWNvbnRlbnQ7cm93LWdhcDoxcmVtfSNzaXRlLWhlYWRlcntncmlkLWNvbHVtbjoyLzM7Z3JpZC1yb3c6MS8yfW1haW57Z3JpZC1yb3c6Mi8zfWZvb3RlcixtYWlue2dyaWQtY29sdW1uOjIvM31mb290ZXJ7Z3JpZC1yb3c6My80fWZvb3RlciAuaXdjLWxvZ297bWF4LXdpZHRoOjg1dnd9YXtjb2xvcjp2YXIoLS1jb2xvci1saW5rKX1hOnZpc2l0ZWR7Y29sb3I6dmFyKC0tY29sb3ItbGluay12aXNpdGVkKX0jc2l0ZS1oZWFkZXIgYTp2aXNpdGVke2NvbG9yOnZhcigtLWNvbG9yLWxpbmspfS5obGpze2JvcmRlci1yYWRpdXM6LjVyZW19LnAtYnJpZGd5LXR3aXR0ZXItY29udGVudHtkaXNwbGF5Om5vbmV9LmgtY2FyZCAuaG92ZXJjYXJkey13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsO2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3Itc2Vjb25kYXJ5KTtib3JkZXItcmFkaXVzOjFyZW07LXdlYmtpdC1ib3gtc2hhZG93OjAgLjVyZW0gLjVyZW0gLjVyZW0gdmFyKC0tY29sb3ItcHJpbWFyeS1zaGFkb3cpO2JveC1zaGFkb3c6MCAuNXJlbSAuNXJlbSAuNXJlbSB2YXIoLS1jb2xvci1wcmltYXJ5LXNoYWRvdyk7ZGlzcGxheTpub25lOy1tcy1mbGV4LWRpcmVjdGlvbjpjb2x1bW47ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDouNXJlbTtvcGFjaXR5OjA7cGFkZGluZzoxcmVtO3Bvc2l0aW9uOmFic29sdXRlOy13ZWJraXQtdHJhbnNpdGlvbjpvcGFjaXR5IC41cyBlYXNlLWluLW91dDt0cmFuc2l0aW9uOm9wYWNpdHkgLjVzIGVhc2UtaW4tb3V0O3dpZHRoOi13ZWJraXQtZml0LWNvbnRlbnQ7d2lkdGg6LW1vei1maXQtY29udGVudDt3aWR0aDpmaXQtY29udGVudDt6LWluZGV4OjEwMH0uaC1jYXJkIC5ob3ZlcmNhcmQgLnUtcGhvdG97bWF4LXdpZHRoOjZyZW19LmgtY2FyZCAuaG92ZXJjYXJkIC5zb2NpYWwtaWNvbntoZWlnaHQ6MXJlbTt3aWR0aDoxcmVtfS5oLWNhcmQ6aG92ZXIgLmhvdmVyY2FyZHtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4O29wYWNpdHk6MX0uaC1lbnRyeXstd2Via2l0LWJvcmRlci1zdGFydDoxcHggc29saWQgdmFyKC0tY29sb3ItcHJpbWFyeSk7LXdlYmtpdC1wYWRkaW5nLXN0YXJ0Oi41cmVtO2JvcmRlci1pbmxpbmUtc3RhcnQ6MXB4IHNvbGlkIHZhcigtLWNvbG9yLXByaW1hcnkpO3BhZGRpbmctaW5saW5lLXN0YXJ0Oi41cmVtfS5oLWVudHJ5IC5yZXBseS10b3tmb250LXN0eWxlOml0YWxpY30uaC1lbnRyeSAucG9zdC1pbmZvIGF7dGV4dC1kZWNvcmF0aW9uOm5vbmV9LmgtZW50cnkgLm5vdGUtbWV0YWRhdGF7LXdlYmtpdC1ib3gtb3JpZW50Omhvcml6b250YWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy1tcy1mbGV4LWRpcmVjdGlvbjpyb3c7ZmxleC1kaXJlY3Rpb246cm93O2dhcDoxcmVtfS5oLWVudHJ5IC5ub3RlLW1ldGFkYXRhIC5zeW5kaWNhdGlvbi1saW5rc3std2Via2l0LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsOy1tcy1mbGV4LWZsb3c6cm93IHdyYXA7ZmxleC1mbG93OnJvdyB3cmFwfS5oLWVudHJ5IC5ub3RlLW1ldGFkYXRhIC5zeW5kaWNhdGlvbi1saW5rcyBhe3RleHQtZGVjb3JhdGlvbjpub25lfS5oLWVudHJ5IC5ub3RlLW1ldGFkYXRhIC5zeW5kaWNhdGlvbi1saW5rcyBhIHN2Z3toZWlnaHQ6MXJlbTt3aWR0aDoxcmVtfVwiLCBcIlwiLHtcInZlcnNpb25cIjozLFwic291cmNlc1wiOltcIndlYnBhY2s6Ly8uL3Jlc291cmNlcy9jc3MvdmFyaWFibGVzLmNzc1wiLFwid2VicGFjazovLy4vcmVzb3VyY2VzL2Nzcy9mb250cy5jc3NcIixcIndlYnBhY2s6Ly8uL3Jlc291cmNlcy9jc3MvY29sb3Vycy5jc3NcIixcIndlYnBhY2s6Ly8uL3Jlc291cmNlcy9jc3MvbGF5b3V0LmNzc1wiLFwid2VicGFjazovLy4vcmVzb3VyY2VzL2Nzcy9jb2RlLmNzc1wiLFwid2VicGFjazovLy4vcmVzb3VyY2VzL2Nzcy9wb3NzZS5jc3NcIixcIndlYnBhY2s6Ly8uL3Jlc291cmNlcy9jc3MvaC1jYXJkLmNzc1wiLFwid2VicGFjazovLy4vcmVzb3VyY2VzL2Nzcy9jb250ZW50LmNzc1wiXSxcIm5hbWVzXCI6W10sXCJtYXBwaW5nc1wiOlwiQUFBQSxNQUVJLDBEQUE2RCxDQUM3RCxtREFBc0QsQ0FDdEQsNkVBQWdGLENBR2hGLHNCQUF1QixDQUN2QixxQkFBc0IsQ0FDdEIsc0JBQXVCLENBQ3ZCLHFCQUFzQixDQUN0QixzQkFBdUIsQ0FDdkIsb0JBQXFCLENBQ3JCLHdCQUF5QixDQUd6Qix1QkFBeUMsQ0FDekMseUJBQTJDLENBQzNDLG9CQUF3QyxDQUN4Qyw0QkFBK0MsQ0FDL0MsdUNBQ0osQ0FyQkEsMENBQUEsTUFnQkkseURBQXlDLENBQ3pDLDJEQUEyQyxDQUMzQyxzREFBd0MsQ0FDeEMsOERBQStDLENBQy9DLG9FQUNKLENBQUEsQ0FyQkEsZ0NBQUEsTUFnQkksd0NBQXlDLENBQ3pDLDBDQUEyQyxDQUMzQyx1Q0FBd0MsQ0FDeEMsOENBQStDLENBQy9DLHNEQUNKLENBQUEsQ0NyQkEsS0NDSSx1Q0FBd0MsQ0FDeEMsMEJBQTJCLENERDNCLG1DQUFvQyxDQUNwQyw2QkFDSixDQUVBLEtBQ0ksd0NBQ0osQ0FFQSxrQkFNSSx1Q0FDSixDRWhCQSxNQUNJLFlBQWEsQ0FDYixpQ0FBa0MsQ0FDbEMsOERBQStDLENBQS9DLDhDQUErQyxDQUMvQyxZQUNKLENBRUEsYUFDSSxlQUFrQixDQUNsQixZQUNKLENBRUEsS0FFSSxZQUNKLENBRUEsWUFKSSxlQVdKLENBUEEsT0FFSSxZQUtKLENBSEksaUJBQ0ksY0FDSixDRGxCSixFQUNJLHVCQUtKLENBSEksVUFDSSwrQkFDSixDQUlBLHVCQUNJLHVCQUNKLENFaEJKLE1BQ0ksbUJBQ0osQ0NGQSwwQkFDSSxZQUNKLENDREksbUJBV0ksMkJBQXNCLENBQXRCLDRCQUFzQixDQUp0Qix1Q0FBd0MsQ0FGeEMsa0JBQW1CLENBQ25CLGtFQUEyRCxDQUEzRCwwREFBMkQsQ0FMM0QsWUFBYSxDQVViLHlCQUFzQixDQUF0QixxQkFBc0IsQ0FDdEIsU0FBVSxDQUZWLFNBQVUsQ0FOVixZQUFhLENBRmIsaUJBQWtCLENBT2xCLDBDQUFvQyxDQUFwQyxrQ0FBb0MsQ0FEcEMseUJBQWtCLENBQWxCLHNCQUFrQixDQUFsQixpQkFBa0IsQ0FMbEIsV0FtQkosQ0FSSSw0QkFDSSxjQUNKLENBRUEsZ0NBRUksV0FBWSxDQURaLFVBRUosQ0FJQSx5QkFDSSxtQkFBYSxDQUFiLG1CQUFhLENBQWIsWUFBYSxDQUNiLFNBQ0osQ0MxQlIsU0FDSSxtREFBbUQsQ0FDbkQsMkJBQTJCLENBRDNCLGtEQUFtRCxDQUNuRCwwQkE4QkosQ0E1QkksbUJBQ0ksaUJBQ0osQ0FHSSxzQkFDSSxvQkFDSixDQUdKLHdCQUVJLDZCQUFtQixDQUFuQiw0QkFBbUIsQ0FEbkIsbUJBQWEsQ0FBYixtQkFBYSxDQUFiLFlBQWEsQ0FDYixzQkFBbUIsQ0FBbkIsa0JBQW1CLENBQ25CLFFBY0osQ0FaSSwyQ0FDSSw2QkFBbUIsQ0FBbkIsNEJBQW1CLENBQW5CLHNCQUFtQixDQUFuQixrQkFVSixDQVJJLDZDQUNJLG9CQU1KLENBSkksaURBRUksV0FBWSxDQURaLFVBRUpcIixcInNvdXJjZXNDb250ZW50XCI6W1wiOnJvb3Qge1xcbiAgICAvKiBGb250IEZhbWlseSAqL1xcbiAgICAtLWZvbnQtZmFtaWx5LWhlYWRpbmdzOiBcXFwiQXJjaGVyIFNTbSBBXFxcIiwgXFxcIkFyY2hlciBTU20gQlxcXCIsIHNlcmlmO1xcbiAgICAtLWZvbnQtZmFtaWx5LWJvZHk6IFxcXCJWZXJsYWcgQVxcXCIsIFxcXCJWZXJsYWcgQlxcXCIsIHNhbnMtc2VyaWY7XFxuICAgIC0tZm9udC1mYW1pbHktbW9ub3NwYWNlOiBcXFwiT3BlcmF0b3IgTW9ubyBTU20gQVxcXCIsIFxcXCJPcGVyYXRvciBNb25vIFNTbSBCXFxcIiwgbW9ub3NwYWNlO1xcblxcbiAgICAvKiBGb250IFNpemUgKi9cXG4gICAgLS1mb250LXNpemUtc206IDAuNzVyZW07ICAgLyogMTJweCAqL1xcbiAgICAtLWZvbnQtc2l6ZS1iYXNlOiAxcmVtOyAgICAvKiAxNnB4LCBiYXNlICovXFxuICAgIC0tZm9udC1zaXplLW1kOiAxLjI1cmVtOyAgIC8qIDIwcHggKi9cXG4gICAgLS1mb250LXNpemUtbGc6IDEuNXJlbTsgICAgLyogMjRweCAqL1xcbiAgICAtLWZvbnQtc2l6ZS14bDogMS43NXJlbTsgICAvKiAyOHB4ICovXFxuICAgIC0tZm9udC1zaXplLXh4bDogMnJlbTsgICAgIC8qIDMycHggKi9cXG4gICAgLS1mb250LXNpemUteHh4bDogMi4yNXJlbTsgLyogMzZweCAqL1xcblxcbiAgICAvKiBDb2xvdXJzICovXFxuICAgIC0tY29sb3ItcHJpbWFyeTogb2tsY2goMzYuOCUgMC4xIDEyNS41MDUpO1xcbiAgICAtLWNvbG9yLXNlY29uZGFyeTogb2tsY2goOTYuMyUgMC4xIDEyNS41MDUpO1xcbiAgICAtLWNvbG9yLWxpbms6IG9rbGNoKDQ4LjA5JSAwLjE0NiAyNDEuNDEpO1xcbiAgICAtLWNvbG9yLWxpbmstdmlzaXRlZDogb2tsY2goNzAuNDQlIDAuMjEgMzA0LjQxKTtcXG4gICAgLS1jb2xvci1wcmltYXJ5LXNoYWRvdzogb2tsY2goMTkuNTYlIDAuMDU0IDEyNS41MDUgLyA0MCUpO1xcbn1cXG5cIixcImJvZHkge1xcbiAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1mYW1pbHktYm9keSk7XFxuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLW1kKTtcXG59XFxuXFxuY29kZSB7XFxuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseS1tb25vc3BhY2UpO1xcbn1cXG5cXG5oMSxcXG5oMixcXG5oMyxcXG5oNCxcXG5oNSxcXG5oNiB7XFxuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseS1oZWFkaW5ncyk7XFxufVxcblwiLFwiYm9keSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXNlY29uZGFyeSk7XFxuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcXG59XFxuXFxuYSB7XFxuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saW5rKTtcXG5cXG4gICAgJjp2aXNpdGVkIHtcXG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saW5rLXZpc2l0ZWQpO1xcbiAgICB9XFxufVxcblxcbiNzaXRlLWhlYWRlciB7XFxuICAgICYgYTp2aXNpdGVkIHtcXG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saW5rKTtcXG4gICAgfVxcbn1cXG5cIixcIi5ncmlkIHtcXG4gICAgZGlzcGxheTogZ3JpZDtcXG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA1dncgMWZyIDV2dztcXG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBtaW4tY29udGVudCAxZnIgbWluLWNvbnRlbnQ7XFxuICAgIHJvdy1nYXA6IDFyZW07XFxufVxcblxcbiNzaXRlLWhlYWRlciB7XFxuICAgIGdyaWQtY29sdW1uOiAyIC8gMztcXG4gICAgZ3JpZC1yb3c6IDEgLyAyO1xcbn1cXG5cXG5tYWluIHtcXG4gICAgZ3JpZC1jb2x1bW46IDIgLyAzO1xcbiAgICBncmlkLXJvdzogMiAvIDM7XFxufVxcblxcbmZvb3RlciB7XFxuICAgIGdyaWQtY29sdW1uOiAyIC8gMztcXG4gICAgZ3JpZC1yb3c6IDMgLyA0O1xcblxcbiAgICAmIC5pd2MtbG9nbyB7XFxuICAgICAgICBtYXgtd2lkdGg6IDg1dnc7XFxuICAgIH1cXG59XFxuXCIsXCIuaGxqcyB7XFxuICAgIGJvcmRlci1yYWRpdXM6IC41cmVtO1xcbn1cXG5cIixcIi5wLWJyaWRneS10d2l0dGVyLWNvbnRlbnQge1xcbiAgICBkaXNwbGF5OiBub25lO1xcbn1cXG5cIixcIi5oLWNhcmQge1xcbiAgICAmIC5ob3ZlcmNhcmQge1xcbiAgICAgICAgZGlzcGxheTogbm9uZTtcXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gICAgICAgIHotaW5kZXg6IDEwMDtcXG4gICAgICAgIHBhZGRpbmc6IDFyZW07XFxuICAgICAgICBib3JkZXItcmFkaXVzOiAxcmVtO1xcbiAgICAgICAgYm94LXNoYWRvdzogMCAuNXJlbSAuNXJlbSAuNXJlbSB2YXIoLS1jb2xvci1wcmltYXJ5LXNoYWRvdyk7XFxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1zZWNvbmRhcnkpO1xcbiAgICAgICAgd2lkdGg6IGZpdC1jb250ZW50O1xcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzIGVhc2UtaW4tb3V0O1xcbiAgICAgICAgb3BhY2l0eTogMDtcXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XFxuICAgICAgICBnYXA6IC41cmVtO1xcblxcbiAgICAgICAgJiAudS1waG90byB7XFxuICAgICAgICAgICAgbWF4LXdpZHRoOiA2cmVtO1xcbiAgICAgICAgfVxcblxcbiAgICAgICAgJiAuc29jaWFsLWljb24ge1xcbiAgICAgICAgICAgIHdpZHRoOiAxcmVtO1xcbiAgICAgICAgICAgIGhlaWdodDogMXJlbTtcXG4gICAgICAgIH1cXG4gICAgfVxcblxcbiAgICAmOmhvdmVyIHtcXG4gICAgICAgICYgLmhvdmVyY2FyZCB7XFxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcXG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xcbiAgICAgICAgfVxcbiAgICB9XFxufVxcblwiLFwiQGltcG9ydCBcXFwicG9zc2UuY3NzXFxcIjtcXG5AaW1wb3J0IFxcXCJoLWNhcmQuY3NzXFxcIjtcXG5cXG4uaC1lbnRyeSB7XFxuICAgIGJvcmRlci1pbmxpbmUtc3RhcnQ6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1wcmltYXJ5KTtcXG4gICAgcGFkZGluZy1pbmxpbmUtc3RhcnQ6IC41cmVtO1xcblxcbiAgICAmIC5yZXBseS10byB7XFxuICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XFxuICAgIH1cXG5cXG4gICAgJiAucG9zdC1pbmZvIHtcXG4gICAgICAgICYgYSB7XFxuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xcbiAgICAgICAgfVxcbiAgICB9XFxuXFxuICAgICYgLm5vdGUtbWV0YWRhdGEge1xcbiAgICAgICAgZGlzcGxheTogZmxleDtcXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XFxuICAgICAgICBnYXA6IDFyZW07XFxuXFxuICAgICAgICAmIC5zeW5kaWNhdGlvbi1saW5rcyB7XFxuICAgICAgICAgICAgZmxleC1mbG93OiByb3cgd3JhcDtcXG5cXG4gICAgICAgICAgICAmIGEge1xcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XFxuXFxuICAgICAgICAgICAgICAgICYgc3ZnIHtcXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxcmVtO1xcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxcmVtO1xcbiAgICAgICAgICAgICAgICB9XFxuICAgICAgICAgICAgfVxcbiAgICAgICAgfVxcbiAgICB9XFxufVxcblwiXSxcInNvdXJjZVJvb3RcIjpcIlwifV0pO1xuLy8gRXhwb3J0c1xuZXhwb3J0IGRlZmF1bHQgX19fQ1NTX0xPQURFUl9FWFBPUlRfX187XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].use[2]!./resources/css/app.css\n"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/sourceMaps.js */ \"./node_modules/css-loader/dist/runtime/sourceMaps.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/api.js */ \"./node_modules/css-loader/dist/runtime/api.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \":root{--font-family-headings:\\\"Archer SSm A\\\",\\\"Archer SSm B\\\",serif;--font-family-body:\\\"Verlag A\\\",\\\"Verlag B\\\",sans-serif;--font-family-monospace:\\\"Operator Mono SSm A\\\",\\\"Operator Mono SSm B\\\",monospace;--font-size-sm:0.75rem;--font-size-base:1rem;--font-size-md:1.25rem;--font-size-lg:1.5rem;--font-size-xl:1.75rem;--font-size-xxl:2rem;--font-size-xxxl:2.25rem;--color-primary:#334700;--color-secondary:#e3ffb7;--color-link:#00649e;--color-link-visited:#bc7aff;--color-primary-shadow:rgba(16,25,0,.4)}@supports (color:color(display-p3 0 0 0)){:root{--color-primary:color(display-p3 0.21567 0.27838 0.03615);--color-secondary:color(display-p3 0.91016 0.99842 0.74082);--color-link:color(display-p3 0.01045 0.38351 0.63618);--color-link-visited:color(display-p3 0.70467 0.47549 0.99958);--color-primary-shadow:color(display-p3 0.06762 0.09646 0.00441/0.4)}}@supports (color:oklch(0% 0 0)){:root{--color-primary:oklch(36.8% 0.1 125.505deg);--color-secondary:oklch(96.3% 0.1 125.505deg);--color-link:oklch(48.09% 0.146 241.41deg);--color-link-visited:oklch(70.44% 0.21 304.41deg);--color-primary-shadow:oklch(19.56% 0.054 125.505deg/40%)}}body{background-color:var(--color-secondary);color:var(--color-primary);font-family:var(--font-family-body);font-size:var(--font-size-md)}code{font-family:var(--font-family-monospace)}h1,h2,h3,h4,h5,h6{font-family:var(--font-family-headings)}.grid{display:grid;grid-template-columns:5vw 1fr 5vw;grid-template-rows:-webkit-min-content 1fr -webkit-min-content;grid-template-rows:min-content 1fr min-content;row-gap:1rem}#site-header{grid-column:2/3;grid-row:1/2}main{grid-row:2/3}footer,main{grid-column:2/3}footer{grid-row:3/4}footer .iwc-logo{max-width:85vw}a{color:var(--color-link)}a:visited{color:var(--color-link-visited)}#site-header a:visited{color:var(--color-link)}.hljs{border-radius:.5rem}.h-card .hovercard{-webkit-box-orient:vertical;-webkit-box-direction:normal;background-color:var(--color-secondary);border-radius:1rem;-webkit-box-shadow:0 .5rem .5rem .5rem var(--color-primary-shadow);box-shadow:0 .5rem .5rem .5rem var(--color-primary-shadow);display:none;-ms-flex-direction:column;flex-direction:column;gap:.5rem;opacity:0;padding:1rem;position:absolute;-webkit-transition:opacity .5s ease-in-out;transition:opacity .5s ease-in-out;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;z-index:100}.h-card .hovercard .u-photo{max-width:6rem}.h-card .hovercard .social-icon{height:1rem;width:1rem}.h-card:hover .hovercard{display:-webkit-box;display:-ms-flexbox;display:flex;opacity:1}.h-entry{-webkit-border-start:1px solid var(--color-primary);-webkit-padding-start:.5rem;border-inline-start:1px solid var(--color-primary);padding-inline-start:.5rem}.h-entry .reply-to{font-style:italic}.h-entry .post-info a{text-decoration:none}.h-entry .note-metadata{-webkit-box-orient:horizontal;-webkit-box-direction:normal;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;gap:1rem}.h-entry .note-metadata .syndication-links{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row wrap;flex-flow:row wrap}.h-entry .note-metadata .syndication-links a{text-decoration:none}.h-entry .note-metadata .syndication-links a svg{height:1rem;width:1rem}\", \"\",{\"version\":3,\"sources\":[\"webpack://./resources/css/variables.css\",\"webpack://./resources/css/fonts.css\",\"webpack://./resources/css/colours.css\",\"webpack://./resources/css/layout.css\",\"webpack://./resources/css/code.css\",\"webpack://./resources/css/h-card.css\",\"webpack://./resources/css/content.css\"],\"names\":[],\"mappings\":\"AAAA,MAEE,0DAA6D,CAC7D,mDAAsD,CACtD,6EAAgF,CAGhF,sBAAuB,CACvB,qBAAsB,CACtB,sBAAuB,CACvB,qBAAsB,CACtB,sBAAuB,CACvB,oBAAqB,CACrB,wBAAyB,CAGzB,uBAA4C,CAC5C,yBAA8C,CAC9C,oBAA2C,CAC3C,4BAAkD,CAClD,uCACF,CArBA,0CAAA,MAgBE,yDAA4C,CAC5C,2DAA8C,CAC9C,sDAA2C,CAC3C,8DAAkD,CAClD,oEACF,CAAA,CArBA,gCAAA,MAgBE,2CAA4C,CAC5C,6CAA8C,CAC9C,0CAA2C,CAC3C,iDAAkD,CAClD,yDACF,CAAA,CCrBA,KCCE,uCAAwC,CACxC,0BAA2B,CDD3B,mCAAoC,CACpC,6BACF,CAEA,KACE,wCACF,CAEA,kBAME,uCACF,CEhBA,MACE,YAAa,CACb,iCAAkC,CAClC,8DAA+C,CAA/C,8CAA+C,CAC/C,YACF,CAEA,aACE,eAAkB,CAClB,YACF,CAEA,KAEE,YACF,CAEA,YAJE,eAWF,CAPA,OAEE,YAKF,CAHE,iBACE,cACF,CDlBF,EACE,uBAKF,CAHE,UACE,+BACF,CAIA,uBACE,uBACF,CEhBF,MACE,mBACF,CCDE,mBAWE,2BAAsB,CAAtB,4BAAsB,CAJtB,uCAAwC,CAFxC,kBAAmB,CACnB,kEAA2D,CAA3D,0DAA2D,CAL3D,YAAa,CAUb,yBAAsB,CAAtB,qBAAsB,CACtB,SAAU,CAFV,SAAU,CANV,YAAa,CAFb,iBAAkB,CAOlB,0CAAoC,CAApC,kCAAoC,CADpC,yBAAkB,CAAlB,sBAAkB,CAAlB,iBAAkB,CALlB,WAmBF,CARE,4BACE,cACF,CAEA,gCAEE,WAAY,CADZ,UAEF,CAIA,yBACE,mBAAa,CAAb,mBAAa,CAAb,YAAa,CACb,SACF,CC3BJ,SACE,mDAAmD,CACnD,2BAA2B,CAD3B,kDAAmD,CACnD,0BA8BF,CA5BE,mBACE,iBACF,CAGE,sBACE,oBACF,CAGF,wBAEE,6BAAmB,CAAnB,4BAAmB,CADnB,mBAAa,CAAb,mBAAa,CAAb,YAAa,CACb,sBAAmB,CAAnB,kBAAmB,CACnB,QAcF,CAZE,2CACE,6BAAmB,CAAnB,4BAAmB,CAAnB,sBAAmB,CAAnB,kBAUF,CARE,6CACE,oBAMF,CAJE,iDAEE,WAAY,CADZ,UAEF\",\"sourcesContent\":[\":root {\\n /* Font Family */\\n --font-family-headings: \\\"Archer SSm A\\\", \\\"Archer SSm B\\\", serif;\\n --font-family-body: \\\"Verlag A\\\", \\\"Verlag B\\\", sans-serif;\\n --font-family-monospace: \\\"Operator Mono SSm A\\\", \\\"Operator Mono SSm B\\\", monospace;\\n\\n /* Font Size */\\n --font-size-sm: 0.75rem; /* 12px */\\n --font-size-base: 1rem; /* 16px, base */\\n --font-size-md: 1.25rem; /* 20px */\\n --font-size-lg: 1.5rem; /* 24px */\\n --font-size-xl: 1.75rem; /* 28px */\\n --font-size-xxl: 2rem; /* 32px */\\n --font-size-xxxl: 2.25rem; /* 36px */\\n\\n /* Colours */\\n --color-primary: oklch(36.8% 0.1 125.505deg);\\n --color-secondary: oklch(96.3% 0.1 125.505deg);\\n --color-link: oklch(48.09% 0.146 241.41deg);\\n --color-link-visited: oklch(70.44% 0.21 304.41deg);\\n --color-primary-shadow: oklch(19.56% 0.054 125.505deg / 40%);\\n}\\n\",\"body {\\n font-family: var(--font-family-body);\\n font-size: var(--font-size-md);\\n}\\n\\ncode {\\n font-family: var(--font-family-monospace);\\n}\\n\\nh1,\\nh2,\\nh3,\\nh4,\\nh5,\\nh6 {\\n font-family: var(--font-family-headings);\\n}\\n\",\"body {\\n background-color: var(--color-secondary);\\n color: var(--color-primary);\\n}\\n\\na {\\n color: var(--color-link);\\n\\n &:visited {\\n color: var(--color-link-visited);\\n }\\n}\\n\\n#site-header {\\n & a:visited {\\n color: var(--color-link);\\n }\\n}\\n\",\".grid {\\n display: grid;\\n grid-template-columns: 5vw 1fr 5vw;\\n grid-template-rows: min-content 1fr min-content;\\n row-gap: 1rem;\\n}\\n\\n#site-header {\\n grid-column: 2 / 3;\\n grid-row: 1 / 2;\\n}\\n\\nmain {\\n grid-column: 2 / 3;\\n grid-row: 2 / 3;\\n}\\n\\nfooter {\\n grid-column: 2 / 3;\\n grid-row: 3 / 4;\\n\\n & .iwc-logo {\\n max-width: 85vw;\\n }\\n}\\n\",\".hljs {\\n border-radius: .5rem;\\n}\\n\",\".h-card {\\n & .hovercard {\\n display: none;\\n position: absolute;\\n z-index: 100;\\n padding: 1rem;\\n border-radius: 1rem;\\n box-shadow: 0 .5rem .5rem .5rem var(--color-primary-shadow);\\n background-color: var(--color-secondary);\\n width: fit-content;\\n transition: opacity 0.5s ease-in-out;\\n opacity: 0;\\n flex-direction: column;\\n gap: .5rem;\\n\\n & .u-photo {\\n max-width: 6rem;\\n }\\n\\n & .social-icon {\\n width: 1rem;\\n height: 1rem;\\n }\\n }\\n\\n &:hover {\\n & .hovercard {\\n display: flex;\\n opacity: 1;\\n }\\n }\\n}\\n\",\"@import url('h-card.css');\\n\\n.h-entry {\\n border-inline-start: 1px solid var(--color-primary);\\n padding-inline-start: .5rem;\\n\\n & .reply-to {\\n font-style: italic;\\n }\\n\\n & .post-info {\\n & a {\\n text-decoration: none;\\n }\\n }\\n\\n & .note-metadata {\\n display: flex;\\n flex-direction: row;\\n gap: 1rem;\\n\\n & .syndication-links {\\n flex-flow: row wrap;\\n\\n & a {\\n text-decoration: none;\\n\\n & svg {\\n width: 1rem;\\n height: 1rem;\\n }\\n }\\n }\\n }\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\n/* harmony default export */ __webpack_exports__[\"default\"] = (___CSS_LOADER_EXPORT___);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L2Nqcy5qcz8/cnVsZVNldFsxXS5ydWxlc1sxXS51c2VbMV0hLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvZGlzdC9janMuanM/P3J1bGVTZXRbMV0ucnVsZXNbMV0udXNlWzJdIS4vcmVzb3VyY2VzL2Nzcy9hcHAuY3NzIiwibWFwcGluZ3MiOiI7Ozs7O0FBQUE7QUFDNkc7QUFDakI7QUFDNUYsOEJBQThCLG1GQUEyQixDQUFDLDRGQUFxQztBQUMvRjtBQUNBLGdEQUFnRCwrREFBK0Qsd0RBQXdELGtGQUFrRix1QkFBdUIsc0JBQXNCLHVCQUF1QixzQkFBc0IsdUJBQXVCLHFCQUFxQix5QkFBeUIsd0JBQXdCLDBCQUEwQixxQkFBcUIsNkJBQTZCLHdDQUF3QywwQ0FBMEMsTUFBTSwwREFBMEQsNERBQTRELHVEQUF1RCwrREFBK0Qsc0VBQXNFLGdDQUFnQyxNQUFNLDRDQUE0Qyw4Q0FBOEMsMkNBQTJDLGtEQUFrRCwyREFBMkQsS0FBSyx3Q0FBd0MsMkJBQTJCLG9DQUFvQyw4QkFBOEIsS0FBSyx5Q0FBeUMsa0JBQWtCLHdDQUF3QyxNQUFNLGFBQWEsa0NBQWtDLCtEQUErRCwrQ0FBK0MsYUFBYSxhQUFhLGdCQUFnQixhQUFhLEtBQUssYUFBYSxZQUFZLGdCQUFnQixPQUFPLGFBQWEsaUJBQWlCLGVBQWUsRUFBRSx3QkFBd0IsVUFBVSxnQ0FBZ0MsdUJBQXVCLHdCQUF3QixNQUFNLG9CQUFvQixtQkFBbUIsNEJBQTRCLDZCQUE2Qix3Q0FBd0MsbUJBQW1CLG1FQUFtRSwyREFBMkQsYUFBYSwwQkFBMEIsc0JBQXNCLFVBQVUsVUFBVSxhQUFhLGtCQUFrQiwyQ0FBMkMsbUNBQW1DLDBCQUEwQix1QkFBdUIsa0JBQWtCLFlBQVksNEJBQTRCLGVBQWUsZ0NBQWdDLFlBQVksV0FBVyx5QkFBeUIsb0JBQW9CLG9CQUFvQixhQUFhLFVBQVUsU0FBUyxvREFBb0QsNEJBQTRCLG1EQUFtRCwyQkFBMkIsbUJBQW1CLGtCQUFrQixzQkFBc0IscUJBQXFCLHdCQUF3Qiw4QkFBOEIsNkJBQTZCLG9CQUFvQixvQkFBb0IsYUFBYSx1QkFBdUIsbUJBQW1CLFNBQVMsMkNBQTJDLDhCQUE4Qiw2QkFBNkIsdUJBQXVCLG1CQUFtQiw2Q0FBNkMscUJBQXFCLGlEQUFpRCxZQUFZLFdBQVcsT0FBTyxzbURBQXNtRCwyRkFBMkYsK0RBQStELHlGQUF5RixvREFBb0QseUNBQXlDLCtDQUErQyx5Q0FBeUMseUNBQXlDLHlDQUF5Qyx5Q0FBeUMsOEVBQThFLG1EQUFtRCxnREFBZ0QsdURBQXVELGlFQUFpRSxHQUFHLFdBQVcseUNBQXlDLG1DQUFtQyxHQUFHLFVBQVUsOENBQThDLEdBQUcsaUNBQWlDLDZDQUE2QyxHQUFHLFdBQVcsNkNBQTZDLGdDQUFnQyxHQUFHLE9BQU8sNkJBQTZCLGlCQUFpQix1Q0FBdUMsS0FBSyxHQUFHLGtCQUFrQixpQkFBaUIsK0JBQStCLEtBQUssR0FBRyxZQUFZLGtCQUFrQix1Q0FBdUMsb0RBQW9ELGtCQUFrQixHQUFHLGtCQUFrQix1QkFBdUIsb0JBQW9CLEdBQUcsVUFBVSx1QkFBdUIsb0JBQW9CLEdBQUcsWUFBWSx1QkFBdUIsb0JBQW9CLG1CQUFtQixzQkFBc0IsS0FBSyxHQUFHLFlBQVkseUJBQXlCLEdBQUcsY0FBYyxrQkFBa0Isb0JBQW9CLHlCQUF5QixtQkFBbUIsb0JBQW9CLDBCQUEwQixrRUFBa0UsK0NBQStDLHlCQUF5QiwyQ0FBMkMsaUJBQWlCLDZCQUE2QixpQkFBaUIsb0JBQW9CLHdCQUF3QixPQUFPLHdCQUF3QixvQkFBb0IscUJBQXFCLE9BQU8sS0FBSyxlQUFlLG9CQUFvQixzQkFBc0IsbUJBQW1CLE9BQU8sS0FBSyxHQUFHLCtCQUErQixjQUFjLHdEQUF3RCxnQ0FBZ0MsbUJBQW1CLHlCQUF5QixLQUFLLG9CQUFvQixXQUFXLDhCQUE4QixPQUFPLEtBQUssd0JBQXdCLG9CQUFvQiwwQkFBMEIsZ0JBQWdCLDhCQUE4Qiw0QkFBNEIsZUFBZSxnQ0FBZ0MsbUJBQW1CLHdCQUF3Qix5QkFBeUIsV0FBVyxTQUFTLE9BQU8sS0FBSyxHQUFHLHFCQUFxQjtBQUN6c1A7QUFDQSwrREFBZSx1QkFBdUIsRUFBQyIsInNvdXJjZXMiOlsid2VicGFjazovL2pidWstZnJvbnRlbmQvLi9yZXNvdXJjZXMvY3NzL2FwcC5jc3M/MGJhMSJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBJbXBvcnRzXG5pbXBvcnQgX19fQ1NTX0xPQURFUl9BUElfU09VUkNFTUFQX0lNUE9SVF9fXyBmcm9tIFwiLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvZGlzdC9ydW50aW1lL3NvdXJjZU1hcHMuanNcIjtcbmltcG9ydCBfX19DU1NfTE9BREVSX0FQSV9JTVBPUlRfX18gZnJvbSBcIi4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2Rpc3QvcnVudGltZS9hcGkuanNcIjtcbnZhciBfX19DU1NfTE9BREVSX0VYUE9SVF9fXyA9IF9fX0NTU19MT0FERVJfQVBJX0lNUE9SVF9fXyhfX19DU1NfTE9BREVSX0FQSV9TT1VSQ0VNQVBfSU1QT1JUX19fKTtcbi8vIE1vZHVsZVxuX19fQ1NTX0xPQURFUl9FWFBPUlRfX18ucHVzaChbbW9kdWxlLmlkLCBcIjpyb290ey0tZm9udC1mYW1pbHktaGVhZGluZ3M6XFxcIkFyY2hlciBTU20gQVxcXCIsXFxcIkFyY2hlciBTU20gQlxcXCIsc2VyaWY7LS1mb250LWZhbWlseS1ib2R5OlxcXCJWZXJsYWcgQVxcXCIsXFxcIlZlcmxhZyBCXFxcIixzYW5zLXNlcmlmOy0tZm9udC1mYW1pbHktbW9ub3NwYWNlOlxcXCJPcGVyYXRvciBNb25vIFNTbSBBXFxcIixcXFwiT3BlcmF0b3IgTW9ubyBTU20gQlxcXCIsbW9ub3NwYWNlOy0tZm9udC1zaXplLXNtOjAuNzVyZW07LS1mb250LXNpemUtYmFzZToxcmVtOy0tZm9udC1zaXplLW1kOjEuMjVyZW07LS1mb250LXNpemUtbGc6MS41cmVtOy0tZm9udC1zaXplLXhsOjEuNzVyZW07LS1mb250LXNpemUteHhsOjJyZW07LS1mb250LXNpemUteHh4bDoyLjI1cmVtOy0tY29sb3ItcHJpbWFyeTojMzM0NzAwOy0tY29sb3Itc2Vjb25kYXJ5OiNlM2ZmYjc7LS1jb2xvci1saW5rOiMwMDY0OWU7LS1jb2xvci1saW5rLXZpc2l0ZWQ6I2JjN2FmZjstLWNvbG9yLXByaW1hcnktc2hhZG93OnJnYmEoMTYsMjUsMCwuNCl9QHN1cHBvcnRzIChjb2xvcjpjb2xvcihkaXNwbGF5LXAzIDAgMCAwKSl7OnJvb3R7LS1jb2xvci1wcmltYXJ5OmNvbG9yKGRpc3BsYXktcDMgMC4yMTU2NyAwLjI3ODM4IDAuMDM2MTUpOy0tY29sb3Itc2Vjb25kYXJ5OmNvbG9yKGRpc3BsYXktcDMgMC45MTAxNiAwLjk5ODQyIDAuNzQwODIpOy0tY29sb3ItbGluazpjb2xvcihkaXNwbGF5LXAzIDAuMDEwNDUgMC4zODM1MSAwLjYzNjE4KTstLWNvbG9yLWxpbmstdmlzaXRlZDpjb2xvcihkaXNwbGF5LXAzIDAuNzA0NjcgMC40NzU0OSAwLjk5OTU4KTstLWNvbG9yLXByaW1hcnktc2hhZG93OmNvbG9yKGRpc3BsYXktcDMgMC4wNjc2MiAwLjA5NjQ2IDAuMDA0NDEvMC40KX19QHN1cHBvcnRzIChjb2xvcjpva2xjaCgwJSAwIDApKXs6cm9vdHstLWNvbG9yLXByaW1hcnk6b2tsY2goMzYuOCUgMC4xIDEyNS41MDVkZWcpOy0tY29sb3Itc2Vjb25kYXJ5Om9rbGNoKDk2LjMlIDAuMSAxMjUuNTA1ZGVnKTstLWNvbG9yLWxpbms6b2tsY2goNDguMDklIDAuMTQ2IDI0MS40MWRlZyk7LS1jb2xvci1saW5rLXZpc2l0ZWQ6b2tsY2goNzAuNDQlIDAuMjEgMzA0LjQxZGVnKTstLWNvbG9yLXByaW1hcnktc2hhZG93Om9rbGNoKDE5LjU2JSAwLjA1NCAxMjUuNTA1ZGVnLzQwJSl9fWJvZHl7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1zZWNvbmRhcnkpO2NvbG9yOnZhcigtLWNvbG9yLXByaW1hcnkpO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtZmFtaWx5LWJvZHkpO2ZvbnQtc2l6ZTp2YXIoLS1mb250LXNpemUtbWQpfWNvZGV7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1mYW1pbHktbW9ub3NwYWNlKX1oMSxoMixoMyxoNCxoNSxoNntmb250LWZhbWlseTp2YXIoLS1mb250LWZhbWlseS1oZWFkaW5ncyl9LmdyaWR7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczo1dncgMWZyIDV2dztncmlkLXRlbXBsYXRlLXJvd3M6LXdlYmtpdC1taW4tY29udGVudCAxZnIgLXdlYmtpdC1taW4tY29udGVudDtncmlkLXRlbXBsYXRlLXJvd3M6bWluLWNvbnRlbnQgMWZyIG1pbi1jb250ZW50O3Jvdy1nYXA6MXJlbX0jc2l0ZS1oZWFkZXJ7Z3JpZC1jb2x1bW46Mi8zO2dyaWQtcm93OjEvMn1tYWlue2dyaWQtcm93OjIvM31mb290ZXIsbWFpbntncmlkLWNvbHVtbjoyLzN9Zm9vdGVye2dyaWQtcm93OjMvNH1mb290ZXIgLml3Yy1sb2dve21heC13aWR0aDo4NXZ3fWF7Y29sb3I6dmFyKC0tY29sb3ItbGluayl9YTp2aXNpdGVke2NvbG9yOnZhcigtLWNvbG9yLWxpbmstdmlzaXRlZCl9I3NpdGUtaGVhZGVyIGE6dmlzaXRlZHtjb2xvcjp2YXIoLS1jb2xvci1saW5rKX0uaGxqc3tib3JkZXItcmFkaXVzOi41cmVtfS5oLWNhcmQgLmhvdmVyY2FyZHstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLXNlY29uZGFyeSk7Ym9yZGVyLXJhZGl1czoxcmVtOy13ZWJraXQtYm94LXNoYWRvdzowIC41cmVtIC41cmVtIC41cmVtIHZhcigtLWNvbG9yLXByaW1hcnktc2hhZG93KTtib3gtc2hhZG93OjAgLjVyZW0gLjVyZW0gLjVyZW0gdmFyKC0tY29sb3ItcHJpbWFyeS1zaGFkb3cpO2Rpc3BsYXk6bm9uZTstbXMtZmxleC1kaXJlY3Rpb246Y29sdW1uO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6LjVyZW07b3BhY2l0eTowO3BhZGRpbmc6MXJlbTtwb3NpdGlvbjphYnNvbHV0ZTstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuNXMgZWFzZS1pbi1vdXQ7dHJhbnNpdGlvbjpvcGFjaXR5IC41cyBlYXNlLWluLW91dDt3aWR0aDotd2Via2l0LWZpdC1jb250ZW50O3dpZHRoOi1tb3otZml0LWNvbnRlbnQ7d2lkdGg6Zml0LWNvbnRlbnQ7ei1pbmRleDoxMDB9LmgtY2FyZCAuaG92ZXJjYXJkIC51LXBob3Rve21heC13aWR0aDo2cmVtfS5oLWNhcmQgLmhvdmVyY2FyZCAuc29jaWFsLWljb257aGVpZ2h0OjFyZW07d2lkdGg6MXJlbX0uaC1jYXJkOmhvdmVyIC5ob3ZlcmNhcmR7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDtvcGFjaXR5OjF9LmgtZW50cnl7LXdlYmtpdC1ib3JkZXItc3RhcnQ6MXB4IHNvbGlkIHZhcigtLWNvbG9yLXByaW1hcnkpOy13ZWJraXQtcGFkZGluZy1zdGFydDouNXJlbTtib3JkZXItaW5saW5lLXN0YXJ0OjFweCBzb2xpZCB2YXIoLS1jb2xvci1wcmltYXJ5KTtwYWRkaW5nLWlubGluZS1zdGFydDouNXJlbX0uaC1lbnRyeSAucmVwbHktdG97Zm9udC1zdHlsZTppdGFsaWN9LmgtZW50cnkgLnBvc3QtaW5mbyBhe3RleHQtZGVjb3JhdGlvbjpub25lfS5oLWVudHJ5IC5ub3RlLW1ldGFkYXRhey13ZWJraXQtYm94LW9yaWVudDpob3Jpem9udGFsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7ZGlzcGxheTotd2Via2l0LWJveDtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDstbXMtZmxleC1kaXJlY3Rpb246cm93O2ZsZXgtZGlyZWN0aW9uOnJvdztnYXA6MXJlbX0uaC1lbnRyeSAubm90ZS1tZXRhZGF0YSAuc3luZGljYXRpb24tbGlua3N7LXdlYmtpdC1ib3gtb3JpZW50Omhvcml6b250YWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDstbXMtZmxleC1mbG93OnJvdyB3cmFwO2ZsZXgtZmxvdzpyb3cgd3JhcH0uaC1lbnRyeSAubm90ZS1tZXRhZGF0YSAuc3luZGljYXRpb24tbGlua3MgYXt0ZXh0LWRlY29yYXRpb246bm9uZX0uaC1lbnRyeSAubm90ZS1tZXRhZGF0YSAuc3luZGljYXRpb24tbGlua3MgYSBzdmd7aGVpZ2h0OjFyZW07d2lkdGg6MXJlbX1cIiwgXCJcIix7XCJ2ZXJzaW9uXCI6MyxcInNvdXJjZXNcIjpbXCJ3ZWJwYWNrOi8vLi9yZXNvdXJjZXMvY3NzL3ZhcmlhYmxlcy5jc3NcIixcIndlYnBhY2s6Ly8uL3Jlc291cmNlcy9jc3MvZm9udHMuY3NzXCIsXCJ3ZWJwYWNrOi8vLi9yZXNvdXJjZXMvY3NzL2NvbG91cnMuY3NzXCIsXCJ3ZWJwYWNrOi8vLi9yZXNvdXJjZXMvY3NzL2xheW91dC5jc3NcIixcIndlYnBhY2s6Ly8uL3Jlc291cmNlcy9jc3MvY29kZS5jc3NcIixcIndlYnBhY2s6Ly8uL3Jlc291cmNlcy9jc3MvaC1jYXJkLmNzc1wiLFwid2VicGFjazovLy4vcmVzb3VyY2VzL2Nzcy9jb250ZW50LmNzc1wiXSxcIm5hbWVzXCI6W10sXCJtYXBwaW5nc1wiOlwiQUFBQSxNQUVFLDBEQUE2RCxDQUM3RCxtREFBc0QsQ0FDdEQsNkVBQWdGLENBR2hGLHNCQUF1QixDQUN2QixxQkFBc0IsQ0FDdEIsc0JBQXVCLENBQ3ZCLHFCQUFzQixDQUN0QixzQkFBdUIsQ0FDdkIsb0JBQXFCLENBQ3JCLHdCQUF5QixDQUd6Qix1QkFBNEMsQ0FDNUMseUJBQThDLENBQzlDLG9CQUEyQyxDQUMzQyw0QkFBa0QsQ0FDbEQsdUNBQ0YsQ0FyQkEsMENBQUEsTUFnQkUseURBQTRDLENBQzVDLDJEQUE4QyxDQUM5QyxzREFBMkMsQ0FDM0MsOERBQWtELENBQ2xELG9FQUNGLENBQUEsQ0FyQkEsZ0NBQUEsTUFnQkUsMkNBQTRDLENBQzVDLDZDQUE4QyxDQUM5QywwQ0FBMkMsQ0FDM0MsaURBQWtELENBQ2xELHlEQUNGLENBQUEsQ0NyQkEsS0NDRSx1Q0FBd0MsQ0FDeEMsMEJBQTJCLENERDNCLG1DQUFvQyxDQUNwQyw2QkFDRixDQUVBLEtBQ0Usd0NBQ0YsQ0FFQSxrQkFNRSx1Q0FDRixDRWhCQSxNQUNFLFlBQWEsQ0FDYixpQ0FBa0MsQ0FDbEMsOERBQStDLENBQS9DLDhDQUErQyxDQUMvQyxZQUNGLENBRUEsYUFDRSxlQUFrQixDQUNsQixZQUNGLENBRUEsS0FFRSxZQUNGLENBRUEsWUFKRSxlQVdGLENBUEEsT0FFRSxZQUtGLENBSEUsaUJBQ0UsY0FDRixDRGxCRixFQUNFLHVCQUtGLENBSEUsVUFDRSwrQkFDRixDQUlBLHVCQUNFLHVCQUNGLENFaEJGLE1BQ0UsbUJBQ0YsQ0NERSxtQkFXRSwyQkFBc0IsQ0FBdEIsNEJBQXNCLENBSnRCLHVDQUF3QyxDQUZ4QyxrQkFBbUIsQ0FDbkIsa0VBQTJELENBQTNELDBEQUEyRCxDQUwzRCxZQUFhLENBVWIseUJBQXNCLENBQXRCLHFCQUFzQixDQUN0QixTQUFVLENBRlYsU0FBVSxDQU5WLFlBQWEsQ0FGYixpQkFBa0IsQ0FPbEIsMENBQW9DLENBQXBDLGtDQUFvQyxDQURwQyx5QkFBa0IsQ0FBbEIsc0JBQWtCLENBQWxCLGlCQUFrQixDQUxsQixXQW1CRixDQVJFLDRCQUNFLGNBQ0YsQ0FFQSxnQ0FFRSxXQUFZLENBRFosVUFFRixDQUlBLHlCQUNFLG1CQUFhLENBQWIsbUJBQWEsQ0FBYixZQUFhLENBQ2IsU0FDRixDQzNCSixTQUNFLG1EQUFtRCxDQUNuRCwyQkFBMkIsQ0FEM0Isa0RBQW1ELENBQ25ELDBCQThCRixDQTVCRSxtQkFDRSxpQkFDRixDQUdFLHNCQUNFLG9CQUNGLENBR0Ysd0JBRUUsNkJBQW1CLENBQW5CLDRCQUFtQixDQURuQixtQkFBYSxDQUFiLG1CQUFhLENBQWIsWUFBYSxDQUNiLHNCQUFtQixDQUFuQixrQkFBbUIsQ0FDbkIsUUFjRixDQVpFLDJDQUNFLDZCQUFtQixDQUFuQiw0QkFBbUIsQ0FBbkIsc0JBQW1CLENBQW5CLGtCQVVGLENBUkUsNkNBQ0Usb0JBTUYsQ0FKRSxpREFFRSxXQUFZLENBRFosVUFFRlwiLFwic291cmNlc0NvbnRlbnRcIjpbXCI6cm9vdCB7XFxuICAvKiBGb250IEZhbWlseSAqL1xcbiAgLS1mb250LWZhbWlseS1oZWFkaW5nczogXFxcIkFyY2hlciBTU20gQVxcXCIsIFxcXCJBcmNoZXIgU1NtIEJcXFwiLCBzZXJpZjtcXG4gIC0tZm9udC1mYW1pbHktYm9keTogXFxcIlZlcmxhZyBBXFxcIiwgXFxcIlZlcmxhZyBCXFxcIiwgc2Fucy1zZXJpZjtcXG4gIC0tZm9udC1mYW1pbHktbW9ub3NwYWNlOiBcXFwiT3BlcmF0b3IgTW9ubyBTU20gQVxcXCIsIFxcXCJPcGVyYXRvciBNb25vIFNTbSBCXFxcIiwgbW9ub3NwYWNlO1xcblxcbiAgLyogRm9udCBTaXplICovXFxuICAtLWZvbnQtc2l6ZS1zbTogMC43NXJlbTsgICAvKiAxMnB4ICovXFxuICAtLWZvbnQtc2l6ZS1iYXNlOiAxcmVtOyAgICAvKiAxNnB4LCBiYXNlICovXFxuICAtLWZvbnQtc2l6ZS1tZDogMS4yNXJlbTsgICAvKiAyMHB4ICovXFxuICAtLWZvbnQtc2l6ZS1sZzogMS41cmVtOyAgICAvKiAyNHB4ICovXFxuICAtLWZvbnQtc2l6ZS14bDogMS43NXJlbTsgICAvKiAyOHB4ICovXFxuICAtLWZvbnQtc2l6ZS14eGw6IDJyZW07ICAgICAvKiAzMnB4ICovXFxuICAtLWZvbnQtc2l6ZS14eHhsOiAyLjI1cmVtOyAvKiAzNnB4ICovXFxuXFxuICAvKiBDb2xvdXJzICovXFxuICAtLWNvbG9yLXByaW1hcnk6IG9rbGNoKDM2LjglIDAuMSAxMjUuNTA1ZGVnKTtcXG4gIC0tY29sb3Itc2Vjb25kYXJ5OiBva2xjaCg5Ni4zJSAwLjEgMTI1LjUwNWRlZyk7XFxuICAtLWNvbG9yLWxpbms6IG9rbGNoKDQ4LjA5JSAwLjE0NiAyNDEuNDFkZWcpO1xcbiAgLS1jb2xvci1saW5rLXZpc2l0ZWQ6IG9rbGNoKDcwLjQ0JSAwLjIxIDMwNC40MWRlZyk7XFxuICAtLWNvbG9yLXByaW1hcnktc2hhZG93OiBva2xjaCgxOS41NiUgMC4wNTQgMTI1LjUwNWRlZyAvIDQwJSk7XFxufVxcblwiLFwiYm9keSB7XFxuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1mYW1pbHktYm9keSk7XFxuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1tZCk7XFxufVxcblxcbmNvZGUge1xcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5LW1vbm9zcGFjZSk7XFxufVxcblxcbmgxLFxcbmgyLFxcbmgzLFxcbmg0LFxcbmg1LFxcbmg2IHtcXG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseS1oZWFkaW5ncyk7XFxufVxcblwiLFwiYm9keSB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1zZWNvbmRhcnkpO1xcbiAgY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xcbn1cXG5cXG5hIHtcXG4gIGNvbG9yOiB2YXIoLS1jb2xvci1saW5rKTtcXG5cXG4gICY6dmlzaXRlZCB7XFxuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saW5rLXZpc2l0ZWQpO1xcbiAgfVxcbn1cXG5cXG4jc2l0ZS1oZWFkZXIge1xcbiAgJiBhOnZpc2l0ZWQge1xcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItbGluayk7XFxuICB9XFxufVxcblwiLFwiLmdyaWQge1xcbiAgZGlzcGxheTogZ3JpZDtcXG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogNXZ3IDFmciA1dnc7XFxuICBncmlkLXRlbXBsYXRlLXJvd3M6IG1pbi1jb250ZW50IDFmciBtaW4tY29udGVudDtcXG4gIHJvdy1nYXA6IDFyZW07XFxufVxcblxcbiNzaXRlLWhlYWRlciB7XFxuICBncmlkLWNvbHVtbjogMiAvIDM7XFxuICBncmlkLXJvdzogMSAvIDI7XFxufVxcblxcbm1haW4ge1xcbiAgZ3JpZC1jb2x1bW46IDIgLyAzO1xcbiAgZ3JpZC1yb3c6IDIgLyAzO1xcbn1cXG5cXG5mb290ZXIge1xcbiAgZ3JpZC1jb2x1bW46IDIgLyAzO1xcbiAgZ3JpZC1yb3c6IDMgLyA0O1xcblxcbiAgJiAuaXdjLWxvZ28ge1xcbiAgICBtYXgtd2lkdGg6IDg1dnc7XFxuICB9XFxufVxcblwiLFwiLmhsanMge1xcbiAgYm9yZGVyLXJhZGl1czogLjVyZW07XFxufVxcblwiLFwiLmgtY2FyZCB7XFxuICAmIC5ob3ZlcmNhcmQge1xcbiAgICBkaXNwbGF5OiBub25lO1xcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICAgIHotaW5kZXg6IDEwMDtcXG4gICAgcGFkZGluZzogMXJlbTtcXG4gICAgYm9yZGVyLXJhZGl1czogMXJlbTtcXG4gICAgYm94LXNoYWRvdzogMCAuNXJlbSAuNXJlbSAuNXJlbSB2YXIoLS1jb2xvci1wcmltYXJ5LXNoYWRvdyk7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXNlY29uZGFyeSk7XFxuICAgIHdpZHRoOiBmaXQtY29udGVudDtcXG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzIGVhc2UtaW4tb3V0O1xcbiAgICBvcGFjaXR5OiAwO1xcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgICBnYXA6IC41cmVtO1xcblxcbiAgICAmIC51LXBob3RvIHtcXG4gICAgICBtYXgtd2lkdGg6IDZyZW07XFxuICAgIH1cXG5cXG4gICAgJiAuc29jaWFsLWljb24ge1xcbiAgICAgIHdpZHRoOiAxcmVtO1xcbiAgICAgIGhlaWdodDogMXJlbTtcXG4gICAgfVxcbiAgfVxcblxcbiAgJjpob3ZlciB7XFxuICAgICYgLmhvdmVyY2FyZCB7XFxuICAgICAgZGlzcGxheTogZmxleDtcXG4gICAgICBvcGFjaXR5OiAxO1xcbiAgICB9XFxuICB9XFxufVxcblwiLFwiQGltcG9ydCB1cmwoJ2gtY2FyZC5jc3MnKTtcXG5cXG4uaC1lbnRyeSB7XFxuICBib3JkZXItaW5saW5lLXN0YXJ0OiAxcHggc29saWQgdmFyKC0tY29sb3ItcHJpbWFyeSk7XFxuICBwYWRkaW5nLWlubGluZS1zdGFydDogLjVyZW07XFxuXFxuICAmIC5yZXBseS10byB7XFxuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcXG4gIH1cXG5cXG4gICYgLnBvc3QtaW5mbyB7XFxuICAgICYgYSB7XFxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xcbiAgICB9XFxuICB9XFxuXFxuICAmIC5ub3RlLW1ldGFkYXRhIHtcXG4gICAgZGlzcGxheTogZmxleDtcXG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcXG4gICAgZ2FwOiAxcmVtO1xcblxcbiAgICAmIC5zeW5kaWNhdGlvbi1saW5rcyB7XFxuICAgICAgZmxleC1mbG93OiByb3cgd3JhcDtcXG5cXG4gICAgICAmIGEge1xcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xcblxcbiAgICAgICAgJiBzdmcge1xcbiAgICAgICAgICB3aWR0aDogMXJlbTtcXG4gICAgICAgICAgaGVpZ2h0OiAxcmVtO1xcbiAgICAgICAgfVxcbiAgICAgIH1cXG4gICAgfVxcbiAgfVxcbn1cXG5cIl0sXCJzb3VyY2VSb290XCI6XCJcIn1dKTtcbi8vIEV4cG9ydHNcbmV4cG9ydCBkZWZhdWx0IF9fX0NTU19MT0FERVJfRVhQT1JUX19fO1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].use[2]!./resources/css/app.css\n"); /***/ }), diff --git a/public/assets/app.js.br b/public/assets/app.js.br index eac06b5426ca72ff6f3a743c3ab89561721be8e5..dc6eb881df1f9dd789d3dfb90c0478bb9aabfa94 100644 GIT binary patch literal 16895 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

AU!sf?cWyG6pc*+vr^VB@P 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 diff --git a/resources/css/app.css b/resources/css/app.css index d810ef58..ca75b3e5 100644 --- a/resources/css/app.css +++ b/resources/css/app.css @@ -1,6 +1,6 @@ -@import "variables.css"; -@import "fonts.css"; -@import "layout.css"; -@import "colours.css"; -@import "code.css"; -@import "content.css"; +@import url('variables.css'); +@import url('fonts.css'); +@import url('layout.css'); +@import url('colours.css'); +@import url('code.css'); +@import url('content.css'); diff --git a/resources/css/code.css b/resources/css/code.css index 8524dbbd..88b8f5fa 100644 --- a/resources/css/code.css +++ b/resources/css/code.css @@ -1,3 +1,3 @@ .hljs { - border-radius: .5rem; + border-radius: .5rem; } diff --git a/resources/css/colours.css b/resources/css/colours.css index 2eecc8bf..65b95212 100644 --- a/resources/css/colours.css +++ b/resources/css/colours.css @@ -1,18 +1,18 @@ body { - background-color: var(--color-secondary); - color: var(--color-primary); + background-color: var(--color-secondary); + color: var(--color-primary); } a { - color: var(--color-link); + color: var(--color-link); - &:visited { - color: var(--color-link-visited); - } + &:visited { + color: var(--color-link-visited); + } } #site-header { - & a:visited { - color: var(--color-link); - } + & a:visited { + color: var(--color-link); + } } diff --git a/resources/css/content.css b/resources/css/content.css index e89befba..c656acef 100644 --- a/resources/css/content.css +++ b/resources/css/content.css @@ -1,36 +1,35 @@ -@import "posse.css"; -@import "h-card.css"; +@import url('h-card.css'); .h-entry { - border-inline-start: 1px solid var(--color-primary); - padding-inline-start: .5rem; + border-inline-start: 1px solid var(--color-primary); + padding-inline-start: .5rem; - & .reply-to { - font-style: italic; + & .reply-to { + font-style: italic; + } + + & .post-info { + & a { + text-decoration: none; } + } - & .post-info { - & a { - text-decoration: none; - } - } - - & .note-metadata { - display: flex; - flex-direction: row; - gap: 1rem; - - & .syndication-links { - flex-flow: row wrap; - - & a { - text-decoration: none; - - & svg { - width: 1rem; - height: 1rem; - } - } + & .note-metadata { + display: flex; + flex-direction: row; + gap: 1rem; + + & .syndication-links { + flex-flow: row wrap; + + & a { + text-decoration: none; + + & svg { + width: 1rem; + height: 1rem; } + } } + } } diff --git a/resources/css/fonts.css b/resources/css/fonts.css index b11a1128..91b3749b 100644 --- a/resources/css/fonts.css +++ b/resources/css/fonts.css @@ -1,10 +1,10 @@ body { - font-family: var(--font-family-body); - font-size: var(--font-size-md); + font-family: var(--font-family-body); + font-size: var(--font-size-md); } code { - font-family: var(--font-family-monospace); + font-family: var(--font-family-monospace); } h1, @@ -13,5 +13,5 @@ h3, h4, h5, h6 { - font-family: var(--font-family-headings); + font-family: var(--font-family-headings); } diff --git a/resources/css/h-card.css b/resources/css/h-card.css index dea4e7c5..de901e08 100644 --- a/resources/css/h-card.css +++ b/resources/css/h-card.css @@ -1,32 +1,32 @@ .h-card { + & .hovercard { + display: none; + position: absolute; + z-index: 100; + padding: 1rem; + border-radius: 1rem; + box-shadow: 0 .5rem .5rem .5rem var(--color-primary-shadow); + background-color: var(--color-secondary); + width: fit-content; + transition: opacity 0.5s ease-in-out; + opacity: 0; + flex-direction: column; + gap: .5rem; + + & .u-photo { + max-width: 6rem; + } + + & .social-icon { + width: 1rem; + height: 1rem; + } + } + + &:hover { & .hovercard { - display: none; - position: absolute; - z-index: 100; - padding: 1rem; - border-radius: 1rem; - box-shadow: 0 .5rem .5rem .5rem var(--color-primary-shadow); - background-color: var(--color-secondary); - width: fit-content; - transition: opacity 0.5s ease-in-out; - opacity: 0; - flex-direction: column; - gap: .5rem; - - & .u-photo { - max-width: 6rem; - } - - & .social-icon { - width: 1rem; - height: 1rem; - } - } - - &:hover { - & .hovercard { - display: flex; - opacity: 1; - } + display: flex; + opacity: 1; } + } } diff --git a/resources/css/layout.css b/resources/css/layout.css index 0163e7f1..f0a40dd6 100644 --- a/resources/css/layout.css +++ b/resources/css/layout.css @@ -1,25 +1,25 @@ .grid { - display: grid; - grid-template-columns: 5vw 1fr 5vw; - grid-template-rows: min-content 1fr min-content; - row-gap: 1rem; + display: grid; + grid-template-columns: 5vw 1fr 5vw; + grid-template-rows: min-content 1fr min-content; + row-gap: 1rem; } #site-header { - grid-column: 2 / 3; - grid-row: 1 / 2; + grid-column: 2 / 3; + grid-row: 1 / 2; } main { - grid-column: 2 / 3; - grid-row: 2 / 3; + grid-column: 2 / 3; + grid-row: 2 / 3; } footer { - grid-column: 2 / 3; - grid-row: 3 / 4; + grid-column: 2 / 3; + grid-row: 3 / 4; - & .iwc-logo { - max-width: 85vw; - } + & .iwc-logo { + max-width: 85vw; + } } diff --git a/resources/css/posse.css b/resources/css/posse.css deleted file mode 100644 index b131bdfe..00000000 --- a/resources/css/posse.css +++ /dev/null @@ -1,3 +0,0 @@ -.p-bridgy-twitter-content { - display: none; -} diff --git a/resources/css/variables.css b/resources/css/variables.css index 5aedebb8..c5fc61b7 100644 --- a/resources/css/variables.css +++ b/resources/css/variables.css @@ -1,22 +1,22 @@ :root { - /* Font Family */ - --font-family-headings: "Archer SSm A", "Archer SSm B", serif; - --font-family-body: "Verlag A", "Verlag B", sans-serif; - --font-family-monospace: "Operator Mono SSm A", "Operator Mono SSm B", monospace; + /* Font Family */ + --font-family-headings: "Archer SSm A", "Archer SSm B", serif; + --font-family-body: "Verlag A", "Verlag B", sans-serif; + --font-family-monospace: "Operator Mono SSm A", "Operator Mono SSm B", monospace; - /* Font Size */ - --font-size-sm: 0.75rem; /* 12px */ - --font-size-base: 1rem; /* 16px, base */ - --font-size-md: 1.25rem; /* 20px */ - --font-size-lg: 1.5rem; /* 24px */ - --font-size-xl: 1.75rem; /* 28px */ - --font-size-xxl: 2rem; /* 32px */ - --font-size-xxxl: 2.25rem; /* 36px */ + /* Font Size */ + --font-size-sm: 0.75rem; /* 12px */ + --font-size-base: 1rem; /* 16px, base */ + --font-size-md: 1.25rem; /* 20px */ + --font-size-lg: 1.5rem; /* 24px */ + --font-size-xl: 1.75rem; /* 28px */ + --font-size-xxl: 2rem; /* 32px */ + --font-size-xxxl: 2.25rem; /* 36px */ - /* Colours */ - --color-primary: oklch(36.8% 0.1 125.505); - --color-secondary: oklch(96.3% 0.1 125.505); - --color-link: oklch(48.09% 0.146 241.41); - --color-link-visited: oklch(70.44% 0.21 304.41); - --color-primary-shadow: oklch(19.56% 0.054 125.505 / 40%); + /* Colours */ + --color-primary: oklch(36.8% 0.1 125.505deg); + --color-secondary: oklch(96.3% 0.1 125.505deg); + --color-link: oklch(48.09% 0.146 241.41deg); + --color-link-visited: oklch(70.44% 0.21 304.41deg); + --color-primary-shadow: oklch(19.56% 0.054 125.505deg / 40%); } diff --git a/resources/js/app.js b/resources/js/app.js index f65cc9bd..69946e98 100644 --- a/resources/js/app.js +++ b/resources/js/app.js @@ -1 +1,10 @@ import '../css/app.css'; + +// import { Auth } from './auth.js'; +// +// let auth = new Auth(); + +// auth.createCredentials().then((credentials) => { +// // eslint-disable-next-line no-console +// console.log(credentials); +// }); diff --git a/resources/js/auth.js b/resources/js/auth.js new file mode 100644 index 00000000..d181f62d --- /dev/null +++ b/resources/js/auth.js @@ -0,0 +1,36 @@ +class Auth { + constructor() {} + + async createCredentials() { + const publicKeyCredentialCreationOptions = { + challenge: Uint8Array.from( + 'randomStringFromServer', + c => c.charCodeAt(0) + ), + rp: { + id: 'jonnybarnes.localhost', + name: 'JB', + }, + user: { + id: Uint8Array.from( + 'UZSL85T9AFC', + c => c.charCodeAt(0) + ), + name: 'jonny@jonnybarnes.uk', + displayName: 'Jonny', + }, + pubKeyCredParams: [{alg: -7, type: 'public-key'}], + // authenticatorSelection: { + // authenticatorAttachment: 'cross-platform', + // }, + timeout: 60000, + attestation: 'direct' + }; + + return await navigator.credentials.create({ + publicKey: publicKeyCredentialCreationOptions + }); + } +} + +export { Auth }; diff --git a/resources/views/admin/welcome.blade.php b/resources/views/admin/welcome.blade.php index 4ca4c4d0..3cce67d7 100644 --- a/resources/views/admin/welcome.blade.php +++ b/resources/views/admin/welcome.blade.php @@ -51,4 +51,9 @@

Edit your bio.

+ +

Passkeys

+

+ List passkeys here? +

@stop diff --git a/webpack.config.js b/webpack.config.js index 447c6d42..3c7cc93c 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -6,103 +6,103 @@ const EslintPlugin = require('eslint-webpack-plugin'); const MiniCssExtractPlugin = require("mini-css-extract-plugin"); const config = { - entry: ['./resources/js/app.js'], - output: { - path: path.resolve('./public/assets'), - filename: 'app.js', - }, - module: { - rules: [{ - test: /\.js$/, - exclude: /node_modules/, - use: { - loader: 'babel-loader', - options: { - presets: [ - ['@babel/preset-env', { targets: "defaults" }] - ] - } - } - }] - }, - plugins: [ - new StyleLintPlugin({ - configFile: path.resolve(__dirname + '/.stylelintrc'), - context: path.resolve(__dirname + '/resources/css'), - files: '**/*.css', - }), - new EslintPlugin({ - context: path.resolve(__dirname + '/resources/js'), - files: '**/*.js', - }), - new CompressionPlugin({ - filename: "[path][base].br", - algorithm: "brotliCompress", - test: /\.js$|\.css$/, - exclude: /.map$/, - compressionOptions: { - params: { - [zlib.constants.BROTLI_PARAM_QUALITY]: 11, - }, - }, - }), - ] + entry: ['./resources/js/app.js'], + output: { + path: path.resolve('./public/assets'), + filename: 'app.js', + }, + module: { + rules: [{ + test: /\.js$/, + exclude: /node_modules/, + use: { + loader: 'babel-loader', + options: { + presets: [ + ['@babel/preset-env', { targets: "defaults" }] + ] + } + } + }] + }, + plugins: [ + new StyleLintPlugin({ + configFile: path.resolve(__dirname + '/.stylelintrc'), + context: path.resolve(__dirname + '/resources/css'), + files: '**/*.css', + }), + new EslintPlugin({ + context: path.resolve(__dirname + '/resources/js'), + files: '**/*.js', + }), + new CompressionPlugin({ + filename: "[path][base].br", + algorithm: "brotliCompress", + test: /\.js$|\.css$/, + exclude: /.map$/, + compressionOptions: { + params: { + [zlib.constants.BROTLI_PARAM_QUALITY]: 11, + }, + }, + }), + ] }; module.exports = (env, argv) => { - if (argv.mode === 'development') { - config.devtool = 'eval-source-map'; + if (argv.mode === 'development') { + config.devtool = 'eval-source-map'; - config.module.rules.push({ - test: /\.css$/, - exclude: /node_modules/, - use: [ - { - loader: 'style-loader' - }, - { - loader: 'css-loader', - options: { - sourceMap: true - } - }, - { - loader: 'postcss-loader', - options: { - postcssOptions: { - config: path.resolve(__dirname, 'postcss.config.js'), - }, - sourceMap: true - } - } - ] - }); - } + config.module.rules.push({ + test: /\.css$/, + exclude: /node_modules/, + use: [ + { + loader: 'style-loader' + }, + { + loader: 'css-loader', + options: { + sourceMap: true + } + }, + { + loader: 'postcss-loader', + options: { + postcssOptions: { + config: path.resolve(__dirname, 'postcss.config.js'), + }, + sourceMap: true + } + } + ] + }); + } - if (argv.mode === 'production') { - config.module.rules.push({ - test: /\.css$/, - exclude: /node_modules/, - use: [ - { - loader: MiniCssExtractPlugin.loader, - }, - { - loader: 'css-loader', - }, - { - loader: 'postcss-loader', - options: { - postcssOptions: { - config: path.resolve(__dirname, 'postcss.config.js'), - }, - } - } - ] - }); + if (argv.mode === 'production') { + config.module.rules.push({ + test: /\.css$/, + exclude: /node_modules/, + use: [ + { + loader: MiniCssExtractPlugin.loader, + }, + { + loader: 'css-loader', + }, + { + loader: 'postcss-loader', + options: { + postcssOptions: { + config: path.resolve(__dirname, 'postcss.config.js'), + }, + } + } + ] + }); - config.plugins.push(new MiniCssExtractPlugin({filename: 'app.css'})); - } + config.plugins.push(new MiniCssExtractPlugin({filename: 'app.css'})); + } - return config; + return config; };