main
HerrHase 1 year ago
parent 8c38442b5d
commit 4708db42cc

@ -0,0 +1,4 @@
import BlogPosts from './components/blog-posts.riot'
riot.register('blog-posts', BlogPosts)
riot.mount('blog-posts')

@ -0,0 +1,87 @@
<blog-posts>
<article class="post m-bottom-6" each={ post in props.posts } if={ isVisible(post) }>
<header class="post__header m-bottom-3">
<h2 class="h4 m-bottom-3 highlight">
<a href="{ post.path }">
{ post.title }
</a>
</h2>
<span>
<time time="{ post.date_published }">
{ formatDate(post.date_published) }
</time>
</span>
<span each={ tag in post.tags } class="m-left-3">
/ <a class="underline" onclick={ () => { addTag(tag) } }>{ tag }</a>
</span>
</header>
<div if={ post.excerpt } class="post__excerpt">
<div class="content">
{ post.excerpt }
</div>
</div>
</article>
<script>
import dayjs from 'dayjs'
export default {
state: {
tag: undefined,
limit: 1,
},
/**
*
* @return {[type]}
*
*/
onBeforeMount() {
},
/**
*
* @param {[type]} date
* @return {[type]}
*
*/
formatDate(date) {
return dayjs(date).format('DD.MM.YYYY')
},
/**
*
* @param {[type]} post
* @return {Boolean}
*/
isVisible(post) {
let result = false
// if tag is set, check for tags in post.tags, if not valid not showing
if (this.tag) {
if (post.tags && post.tags.indexOf(this.tag) !== -1) {
result = true
}
} else {
result = true
}
return result
},
/**
*
* @param {[type]} tag
*/
addTag(tag) {
this.tag = tag
this.update()
}
}
</script>
</blog-posts>npm

@ -0,0 +1 @@
window.riot = require('riot')

@ -0,0 +1,16 @@
@import
'config',
'~@tiny-components/plain-ui/src/scss/plain-ui';
.inner {
width: 100%;
max-width: 770px;
}
.post__header {
h2 {
a {
color: white;
}
}
}

@ -2,5 +2,12 @@
title: Hipaa Mofa Cold
view: post.njk
date_published: 2022-12-02 19:22
tags:
- Test
excerpt: " Same cliche sustainable migas, copper mug polaroid cloud bread franzen JOMO microdosing sriracha. Vinyl tilde cred, blue bottle humblebrag offal pop-up pinterest photo booth bespoke bodega boys four dollar toast wayfarers."
---
I'm baby godard chillwave succulents salvia hot chicken sustainable selfies pour-over JOMO meggings. Banh mi offal blue bottle, letterpress vape subway tile franzen cardigan slow-carb. Man braid chartreuse etsy DSA. Fanny pack microdosing cronut butcher poke kinfolk. Tonx adaptogen same deep v chambray copper mug authentic hella art party craft beer gochujang yr kale chips. Ethical biodiesel skateboard sriracha chia neutra man braid before they sold out retro heirloom prism etsy chillwave taiyaki. Etsy bruh enamel pin, 3 wolf moon put a bird on it pabst vape keffiyeh taxidermy man bun aesthetic taiyaki.
Af selvage glossier flexitarian, tumblr mukbang kickstarter microdosing iPhone. La croix authentic bruh tilde. Meggings put a bird on it celiac snackwave coloring book, art party ascot before they sold out kogi franzen hammock irony try-hard kombucha raw denim. Tofu cloud bread blue bottle, keffiyeh humblebrag kinfolk ramps freegan asymmetrical tilde mustache butcher kitsch lyft. Waistcoat disrupt skateboard bodega boys sustainable ethical blog fingerstache artisan bruh bicycle rights. Hella godard knausgaard tote bag fashion axe kombucha whatever kitsch bitters blog deep v.
Deep v venmo slow-carb, succulents godard taxidermy narwhal DSA VHS. Shaman activated charcoal roof party before they sold out pop-up hell of waistcoat sartorial raclette direct trade pitchfork selvage iPhone quinoa celiac. Pug activated charcoal whatever, DIY disrupt four dollar toast man braid mixtape mukbang mumblecore intelligentsia. Crucifix sartorial vegan tilde dreamcatcher tattooed meditation viral craft beer microdosing retro slow-carb DIY helvetica fam. Yes plz live-edge mukbang beard.

@ -1,4 +1,4 @@
title: "test"
title: "A blog"
language: "en"
domain: "test.lan"
domain: "a-blog.lan"
https: true

155
package-lock.json generated

@ -6,14 +6,17 @@
"": {
"dependencies": {
"@tiny-components/plain-ui": "^0.5.0",
"dayjs": "^1.11.7",
"riot": "^7.1.0"
},
"devDependencies": {
"@helpers/siteomat-webpack-plugin": "^0.2.0",
"@helpers/siteomat-webpack-plugin": "^0.5.0",
"@riotjs/compiler": "^6.4.2",
"@riotjs/webpack-loader": "^6.0.0",
"cross-env": "^7.0.3",
"laravel-mix": "^6.0.34",
"laravel-mix-purgecss": "^6.0.0",
"resolve-url-loader": "^5.0.0",
"sass": "^1.42.1",
"sass-loader": "^12.2.0",
"svg-spritemap-webpack-plugin": "^4.3.3"
@ -1785,12 +1788,23 @@
"@hapi/hoek": "^9.0.0"
}
},
"node_modules/@helpers/siteomat-query": {
"version": "0.1.0",
"resolved": "https://gitea.node001.net/api/packages/HerrHase/npm/%40helpers%2Fsiteomat-query/-/0.1.0/siteomat-query-0.1.0.tgz",
"integrity": "sha512-5I5XrfZKCJ+RQ4phO/oI+0Wjb54jwRX3npbmDtZZ7sVHkLfYyBwKR+Zs3//MAKBOOUC44jeFp6RO3Si+IroZvg==",
"dev": true,
"dependencies": {
"assign-deep": "^1.0.1",
"lodash.orderby": "^4.6.0"
}
},
"node_modules/@helpers/siteomat-webpack-plugin": {
"version": "0.2.0",
"resolved": "https://gitea.node001.net/api/packages/HerrHase/npm/%40helpers%2Fsiteomat-webpack-plugin/-/0.2.0/siteomat-webpack-plugin-0.2.0.tgz",
"integrity": "sha512-ncXJuIT62KBBJGUbKukf6O7QmTcCvirb9m/5nBnBK9xBt0rH5R0TO0rmKMIQRoubB2dUAw8q4KF/iFLDuQiLWw==",
"version": "0.5.0",
"resolved": "https://gitea.node001.net/api/packages/HerrHase/npm/%40helpers%2Fsiteomat-webpack-plugin/-/0.5.0/siteomat-webpack-plugin-0.5.0.tgz",
"integrity": "sha512-GgvtofV0B61xRuUx1Me2ym+jvvLlTn6okdKOCKyxfA17UlzTtC6kFxUsWh6/Z8fwn6iH39p/hYEoGefU4OfGAw==",
"dev": true,
"dependencies": {
"@helpers/siteomat-query": "^0.1.0",
"assign-deep": "^1.0.1",
"crypto": "^1.0.1",
"dayjs": "^1.11.6",
@ -1924,7 +1938,6 @@
"resolved": "https://registry.npmjs.org/@riotjs/compiler/-/compiler-6.4.2.tgz",
"integrity": "sha512-MsxPHcOPVAi3bBiS/SW0DS1kxxki9+QS1FsBhKRs+oqFNEUlIm/ESt9BudSB9ISblL18q9Y8Z5uGOrmUXOga8Q==",
"dev": true,
"peer": true,
"dependencies": {
"@babel/parser": "^7.18.10",
"@riotjs/parser": "^4.3.1",
@ -1943,7 +1956,6 @@
"resolved": "https://registry.npmjs.org/globals/-/globals-13.19.0.tgz",
"integrity": "sha512-dkQ957uSRWHw7CFXLUtUHQI3g3aWApYhfNR2O6jn/907riyTYKVBmxYVROkBcY614FSSeSJh7Xm7SrUWCxvJMQ==",
"dev": true,
"peer": true,
"dependencies": {
"type-fest": "^0.20.2"
},
@ -1959,7 +1971,6 @@
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz",
"integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==",
"dev": true,
"peer": true,
"engines": {
"node": ">= 8"
}
@ -1969,7 +1980,6 @@
"resolved": "https://registry.npmjs.org/@riotjs/parser/-/parser-4.3.1.tgz",
"integrity": "sha512-ZUeAcey3ShAtquHBwuHFLrtPL1j0iEeXoOQoaZMaqVp15vq5UqOBxBcOVNfCXbr9ZbhnVCEEmek/9YFt5Ni8bA==",
"dev": true,
"peer": true,
"dependencies": {
"curri": "^1.0.1",
"dom-nodes": "^1.1.3"
@ -1983,8 +1993,7 @@
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/@riotjs/util/-/util-2.1.1.tgz",
"integrity": "sha512-uE3yhckx6QhFESlA/jO/Nj8HcOeRiCV3Zw1OrdKiRAMh4o/JBhGuAkoknPWCDTHSFIffHuWV8EorbO1wZLBpvw==",
"dev": true,
"peer": true
"dev": true
},
"node_modules/@riotjs/webpack-loader": {
"version": "6.0.0",
@ -2573,6 +2582,19 @@
"acorn": "^8"
}
},
"node_modules/adjust-sourcemap-loader": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/adjust-sourcemap-loader/-/adjust-sourcemap-loader-4.0.0.tgz",
"integrity": "sha512-OXwN5b9pCUXNQHJpwwD2qP40byEmSgzj8B4ydSN0uMNYWiFmJ6x6KwUllMmfk8Rwu/HJDFR7U8ubsWBoN0Xp0A==",
"dev": true,
"dependencies": {
"loader-utils": "^2.0.0",
"regex-parser": "^2.2.11"
},
"engines": {
"node": ">=8.9"
}
},
"node_modules/ajv": {
"version": "6.12.6",
"resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz",
@ -2782,7 +2804,6 @@
"resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.14.2.tgz",
"integrity": "sha512-O0yuUDnZeQDL+ncNGlJ78BiO4jnYI3bvMsD5prT0/nsgijG/LpNBIr63gTjVTNsiGkgQhiyCShTgxt8oXOrklA==",
"dev": true,
"peer": true,
"dependencies": {
"tslib": "^2.0.1"
},
@ -4030,21 +4051,18 @@
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/cumpa/-/cumpa-1.0.1.tgz",
"integrity": "sha512-Ew3sfG4cqvDFINS1VgdvLX1FIruhySlnP6DRLhB+1EjewiOzhJzKRKPEp/TCuo0RDisSFeuaDrk0S4Q8grF9CA==",
"dev": true,
"peer": true
"dev": true
},
"node_modules/curri": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/curri/-/curri-1.0.1.tgz",
"integrity": "sha512-VwFb2MGqN0A1RPA0vSgDRSWc0c+V6N9yz8pVYJ9AXILAukRAyCZP5Sqp4VdOxgw1lT0t5oaplwIDT/ruF3Nz7Q==",
"dev": true,
"peer": true
"dev": true
},
"node_modules/dayjs": {
"version": "1.11.7",
"resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.7.tgz",
"integrity": "sha512-+Yw9U6YO5TQohxLcIkrXBeY73WP3ejHWVvx8XCk3gxvQDCTEmS48ZrSZCKciI7Bhl/uCMyxYtE9UqRILmFphkQ==",
"dev": true
"integrity": "sha512-+Yw9U6YO5TQohxLcIkrXBeY73WP3ejHWVvx8XCk3gxvQDCTEmS48ZrSZCKciI7Bhl/uCMyxYtE9UqRILmFphkQ=="
},
"node_modules/debug": {
"version": "4.3.4",
@ -4203,8 +4221,7 @@
"version": "1.1.3",
"resolved": "https://registry.npmjs.org/dom-nodes/-/dom-nodes-1.1.3.tgz",
"integrity": "sha512-y5wnIx97oe0IqMllL/lizgkK2c9vu1cQeqPCCsS7mwNdPuYxg3b04eDJynHhC63kM8+ZsteOmiPElfVGOUmmKg==",
"dev": true,
"peer": true
"dev": true
},
"node_modules/dom-serializer": {
"version": "1.4.1",
@ -4502,7 +4519,6 @@
"resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz",
"integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==",
"dev": true,
"peer": true,
"bin": {
"esparse": "bin/esparse.js",
"esvalidate": "bin/esvalidate.js"
@ -7916,7 +7932,6 @@
"resolved": "https://registry.npmjs.org/recast/-/recast-0.20.5.tgz",
"integrity": "sha512-E5qICoPoNL4yU0H0NoBDntNB0Q5oMSNh9usFctYniLBluTthi3RsQVBXIJNbApOlvSwW/RGxIuokPcAc59J5fQ==",
"dev": true,
"peer": true,
"dependencies": {
"ast-types": "0.14.2",
"esprima": "~4.0.0",
@ -7972,6 +7987,12 @@
"@babel/runtime": "^7.8.4"
}
},
"node_modules/regex-parser": {
"version": "2.2.11",
"resolved": "https://registry.npmjs.org/regex-parser/-/regex-parser-2.2.11.tgz",
"integrity": "sha512-jbD/FT0+9MBU2XAZluI7w2OBs1RBi6p9M83nkoZayQXXU9e8Robt69FcZc7wU4eJD/YFTjn1JdCk3rbMJajz8Q==",
"dev": true
},
"node_modules/regexpu-core": {
"version": "5.2.2",
"resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.2.2.tgz",
@ -8105,6 +8126,22 @@
"node": ">=4"
}
},
"node_modules/resolve-url-loader": {
"version": "5.0.0",
"resolved": "https://registry.npmjs.org/resolve-url-loader/-/resolve-url-loader-5.0.0.tgz",
"integrity": "sha512-uZtduh8/8srhBoMx//5bwqjQ+rfYOUq8zC9NrMUGtjBiGTtFJM42s58/36+hTqeqINcnYe08Nj3LkK9lW4N8Xg==",
"dev": true,
"dependencies": {
"adjust-sourcemap-loader": "^4.0.0",
"convert-source-map": "^1.7.0",
"loader-utils": "^2.0.0",
"postcss": "^8.2.14",
"source-map": "0.6.1"
},
"engines": {
"node": ">=12"
}
},
"node_modules/retry": {
"version": "0.13.1",
"resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz",
@ -9252,7 +9289,6 @@
"resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz",
"integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==",
"dev": true,
"peer": true,
"engines": {
"node": ">=10"
},
@ -11295,12 +11331,23 @@
"@hapi/hoek": "^9.0.0"
}
},
"@helpers/siteomat-query": {
"version": "0.1.0",
"resolved": "https://gitea.node001.net/api/packages/HerrHase/npm/%40helpers%2Fsiteomat-query/-/0.1.0/siteomat-query-0.1.0.tgz",
"integrity": "sha512-5I5XrfZKCJ+RQ4phO/oI+0Wjb54jwRX3npbmDtZZ7sVHkLfYyBwKR+Zs3//MAKBOOUC44jeFp6RO3Si+IroZvg==",
"dev": true,
"requires": {
"assign-deep": "^1.0.1",
"lodash.orderby": "^4.6.0"
}
},
"@helpers/siteomat-webpack-plugin": {
"version": "0.2.0",
"resolved": "https://gitea.node001.net/api/packages/HerrHase/npm/%40helpers%2Fsiteomat-webpack-plugin/-/0.2.0/siteomat-webpack-plugin-0.2.0.tgz",
"integrity": "sha512-ncXJuIT62KBBJGUbKukf6O7QmTcCvirb9m/5nBnBK9xBt0rH5R0TO0rmKMIQRoubB2dUAw8q4KF/iFLDuQiLWw==",
"version": "0.5.0",
"resolved": "https://gitea.node001.net/api/packages/HerrHase/npm/%40helpers%2Fsiteomat-webpack-plugin/-/0.5.0/siteomat-webpack-plugin-0.5.0.tgz",
"integrity": "sha512-GgvtofV0B61xRuUx1Me2ym+jvvLlTn6okdKOCKyxfA17UlzTtC6kFxUsWh6/Z8fwn6iH39p/hYEoGefU4OfGAw==",
"dev": true,
"requires": {
"@helpers/siteomat-query": "^0.1.0",
"assign-deep": "^1.0.1",
"crypto": "^1.0.1",
"dayjs": "^1.11.6",
@ -11415,7 +11462,6 @@
"resolved": "https://registry.npmjs.org/@riotjs/compiler/-/compiler-6.4.2.tgz",
"integrity": "sha512-MsxPHcOPVAi3bBiS/SW0DS1kxxki9+QS1FsBhKRs+oqFNEUlIm/ESt9BudSB9ISblL18q9Y8Z5uGOrmUXOga8Q==",
"dev": true,
"peer": true,
"requires": {
"@babel/parser": "^7.18.10",
"@riotjs/parser": "^4.3.1",
@ -11434,7 +11480,6 @@
"resolved": "https://registry.npmjs.org/globals/-/globals-13.19.0.tgz",
"integrity": "sha512-dkQ957uSRWHw7CFXLUtUHQI3g3aWApYhfNR2O6jn/907riyTYKVBmxYVROkBcY614FSSeSJh7Xm7SrUWCxvJMQ==",
"dev": true,
"peer": true,
"requires": {
"type-fest": "^0.20.2"
}
@ -11443,8 +11488,7 @@
"version": "0.7.4",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz",
"integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==",
"dev": true,
"peer": true
"dev": true
}
}
},
@ -11453,7 +11497,6 @@
"resolved": "https://registry.npmjs.org/@riotjs/parser/-/parser-4.3.1.tgz",
"integrity": "sha512-ZUeAcey3ShAtquHBwuHFLrtPL1j0iEeXoOQoaZMaqVp15vq5UqOBxBcOVNfCXbr9ZbhnVCEEmek/9YFt5Ni8bA==",
"dev": true,
"peer": true,
"requires": {
"curri": "^1.0.1",
"dom-nodes": "^1.1.3"
@ -11463,8 +11506,7 @@
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/@riotjs/util/-/util-2.1.1.tgz",
"integrity": "sha512-uE3yhckx6QhFESlA/jO/Nj8HcOeRiCV3Zw1OrdKiRAMh4o/JBhGuAkoknPWCDTHSFIffHuWV8EorbO1wZLBpvw==",
"dev": true,
"peer": true
"dev": true
},
"@riotjs/webpack-loader": {
"version": "6.0.0",
@ -12020,6 +12062,16 @@
"dev": true,
"requires": {}
},
"adjust-sourcemap-loader": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/adjust-sourcemap-loader/-/adjust-sourcemap-loader-4.0.0.tgz",
"integrity": "sha512-OXwN5b9pCUXNQHJpwwD2qP40byEmSgzj8B4ydSN0uMNYWiFmJ6x6KwUllMmfk8Rwu/HJDFR7U8ubsWBoN0Xp0A==",
"dev": true,
"requires": {
"loader-utils": "^2.0.0",
"regex-parser": "^2.2.11"
}
},
"ajv": {
"version": "6.12.6",
"resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz",
@ -12190,7 +12242,6 @@
"resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.14.2.tgz",
"integrity": "sha512-O0yuUDnZeQDL+ncNGlJ78BiO4jnYI3bvMsD5prT0/nsgijG/LpNBIr63gTjVTNsiGkgQhiyCShTgxt8oXOrklA==",
"dev": true,
"peer": true,
"requires": {
"tslib": "^2.0.1"
}
@ -13163,21 +13214,18 @@
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/cumpa/-/cumpa-1.0.1.tgz",
"integrity": "sha512-Ew3sfG4cqvDFINS1VgdvLX1FIruhySlnP6DRLhB+1EjewiOzhJzKRKPEp/TCuo0RDisSFeuaDrk0S4Q8grF9CA==",
"dev": true,
"peer": true
"dev": true
},
"curri": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/curri/-/curri-1.0.1.tgz",
"integrity": "sha512-VwFb2MGqN0A1RPA0vSgDRSWc0c+V6N9yz8pVYJ9AXILAukRAyCZP5Sqp4VdOxgw1lT0t5oaplwIDT/ruF3Nz7Q==",
"dev": true,
"peer": true
"dev": true
},
"dayjs": {
"version": "1.11.7",
"resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.7.tgz",
"integrity": "sha512-+Yw9U6YO5TQohxLcIkrXBeY73WP3ejHWVvx8XCk3gxvQDCTEmS48ZrSZCKciI7Bhl/uCMyxYtE9UqRILmFphkQ==",
"dev": true
"integrity": "sha512-+Yw9U6YO5TQohxLcIkrXBeY73WP3ejHWVvx8XCk3gxvQDCTEmS48ZrSZCKciI7Bhl/uCMyxYtE9UqRILmFphkQ=="
},
"debug": {
"version": "4.3.4",
@ -13299,8 +13347,7 @@
"version": "1.1.3",
"resolved": "https://registry.npmjs.org/dom-nodes/-/dom-nodes-1.1.3.tgz",
"integrity": "sha512-y5wnIx97oe0IqMllL/lizgkK2c9vu1cQeqPCCsS7mwNdPuYxg3b04eDJynHhC63kM8+ZsteOmiPElfVGOUmmKg==",
"dev": true,
"peer": true
"dev": true
},
"dom-serializer": {
"version": "1.4.1",
@ -13541,8 +13588,7 @@
"version": "4.0.1",
"resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz",
"integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==",
"dev": true,
"peer": true
"dev": true
},
"esrecurse": {
"version": "4.3.0",
@ -16063,7 +16109,6 @@
"resolved": "https://registry.npmjs.org/recast/-/recast-0.20.5.tgz",
"integrity": "sha512-E5qICoPoNL4yU0H0NoBDntNB0Q5oMSNh9usFctYniLBluTthi3RsQVBXIJNbApOlvSwW/RGxIuokPcAc59J5fQ==",
"dev": true,
"peer": true,
"requires": {
"ast-types": "0.14.2",
"esprima": "~4.0.0",
@ -16110,6 +16155,12 @@
"@babel/runtime": "^7.8.4"
}
},
"regex-parser": {
"version": "2.2.11",
"resolved": "https://registry.npmjs.org/regex-parser/-/regex-parser-2.2.11.tgz",
"integrity": "sha512-jbD/FT0+9MBU2XAZluI7w2OBs1RBi6p9M83nkoZayQXXU9e8Robt69FcZc7wU4eJD/YFTjn1JdCk3rbMJajz8Q==",
"dev": true
},
"regexpu-core": {
"version": "5.2.2",
"resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.2.2.tgz",
@ -16211,6 +16262,19 @@
"integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
"dev": true
},
"resolve-url-loader": {
"version": "5.0.0",
"resolved": "https://registry.npmjs.org/resolve-url-loader/-/resolve-url-loader-5.0.0.tgz",
"integrity": "sha512-uZtduh8/8srhBoMx//5bwqjQ+rfYOUq8zC9NrMUGtjBiGTtFJM42s58/36+hTqeqINcnYe08Nj3LkK9lW4N8Xg==",
"dev": true,
"requires": {
"adjust-sourcemap-loader": "^4.0.0",
"convert-source-map": "^1.7.0",
"loader-utils": "^2.0.0",
"postcss": "^8.2.14",
"source-map": "0.6.1"
}
},
"retry": {
"version": "0.13.1",
"resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz",
@ -17054,8 +17118,7 @@
"version": "0.20.2",
"resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz",
"integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==",
"dev": true,
"peer": true
"dev": true
},
"type-is": {
"version": "1.6.18",

@ -1,17 +1,20 @@
{
"private": true,
"devDependencies": {
"@helpers/siteomat-webpack-plugin": "^0.2.0",
"@helpers/siteomat-webpack-plugin": "^0.5.0",
"@riotjs/compiler": "^6.4.2",
"@riotjs/webpack-loader": "^6.0.0",
"cross-env": "^7.0.3",
"laravel-mix": "^6.0.34",
"laravel-mix-purgecss": "^6.0.0",
"resolve-url-loader": "^5.0.0",
"sass": "^1.42.1",
"sass-loader": "^12.2.0",
"svg-spritemap-webpack-plugin": "^4.3.3"
},
"dependencies": {
"@tiny-components/plain-ui": "^0.5.0",
"dayjs": "^1.11.7",
"riot": "^7.1.0"
}
}

File diff suppressed because it is too large Load Diff

@ -1,74 +1,54 @@
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>
test | Farin Frin
A blog | Farin Frin
</title>
<meta name="robots" content="index" />
<link href="true://test.lan/faridn-frin.html" rel="canonical">
<link rel="alternate" href="true://test.lan/faridn-frin.html" hreflang="en">
<link href="true://a-blog.lan/faridn-frin.html" rel="canonical">
<link rel="alternate" href="true://a-blog.lan/faridn-frin.html" hreflang="en">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link href="/css/styles.css" rel="stylesheet" type="text/css">
</head>
<body class="site-body">
<header class="site-header">
<div class="bar">
<div class="bar__start">
<h1 class="site-header__title">
Farin Frin
</h1>
<a class="site-header__title h3 m-top-4 m-bottom-4" href="/">
A blog
</a>
</div>
</div>
</header>
<main class="site-main">
<div class="container">
<div class="grid">
<div class="col-12">
<div class="grid justify-center">
<div class="inner">
<div class="m-top-6">
<header>
<h1 class="highlight">
Farin Frin
</h1>
<span>
<time time="{ page.date_published }">
2022-12-08 12:12
</time>
</span>
</header>
<div class="content">
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</main>
<footer class="site-footer">
<div class="container">
<div class="container container-full">
<div class="grid">
<div class="col-12">
MIT License
@ -76,8 +56,6 @@
</div>
</div>
</footer>
<script src="/js/app.js"></script>
<script defer src="/js/critical.js"></script>
</body>
</html>

@ -1,74 +1,60 @@
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>
test | Hipaa Mofa Cold
A blog | Hipaa Mofa Cold
</title>
<meta name="robots" content="index" />
<link href="true://test.lan/hipaa-mofa-cold.html" rel="canonical">
<link rel="alternate" href="true://test.lan/hipaa-mofa-cold.html" hreflang="en">
<link href="true://a-blog.lan/hipaa-mofa-cold.html" rel="canonical">
<link rel="alternate" href="true://a-blog.lan/hipaa-mofa-cold.html" hreflang="en">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link href="/css/styles.css" rel="stylesheet" type="text/css">
</head>
<body class="site-body">
<header class="site-header">
<div class="bar">
<div class="bar__start">
<h1 class="site-header__title">
Hipaa Mofa Cold
</h1>
<a class="site-header__title h3 m-top-4 m-bottom-4" href="/">
A blog
</a>
</div>
</div>
</header>
<main class="site-main">
<div class="container">
<div class="grid">
<div class="col-12">
<div class="grid justify-center">
<div class="inner">
<div class="m-top-6">
<header>
<h1 class="highlight">
Hipaa Mofa Cold
</h1>
<span>
<time time="{ page.date_published }">
2022-12-02 19:22
</time>
</span>
<span class="m-left-3">
/ <a href="/index.html?tag=Test" class="underline">Test</a>
</span>
</header>
<div class="content">
<p>I&#39;m baby godard chillwave succulents salvia hot chicken sustainable selfies pour-over JOMO meggings. Banh mi offal blue bottle, letterpress vape subway tile franzen cardigan slow-carb. Man braid chartreuse etsy DSA. Fanny pack microdosing cronut butcher poke kinfolk. Tonx adaptogen same deep v chambray copper mug authentic hella art party craft beer gochujang yr kale chips. Ethical biodiesel skateboard sriracha chia neutra man braid before they sold out retro heirloom prism etsy chillwave taiyaki. Etsy bruh enamel pin, 3 wolf moon put a bird on it pabst vape keffiyeh taxidermy man bun aesthetic taiyaki.</p>
<p>Af selvage glossier flexitarian, tumblr mukbang kickstarter microdosing iPhone. La croix authentic bruh tilde. Meggings put a bird on it celiac snackwave coloring book, art party ascot before they sold out kogi franzen hammock irony try-hard kombucha raw denim. Tofu cloud bread blue bottle, keffiyeh humblebrag kinfolk ramps freegan asymmetrical tilde mustache butcher kitsch lyft. Waistcoat disrupt skateboard bodega boys sustainable ethical blog fingerstache artisan bruh bicycle rights. Hella godard knausgaard tote bag fashion axe kombucha whatever kitsch bitters blog deep v.</p>
<p>Deep v venmo slow-carb, succulents godard taxidermy narwhal DSA VHS. Shaman activated charcoal roof party before they sold out pop-up hell of waistcoat sartorial raclette direct trade pitchfork selvage iPhone quinoa celiac. Pug activated charcoal whatever, DIY disrupt four dollar toast man braid mixtape mukbang mumblecore intelligentsia. Crucifix sartorial vegan tilde dreamcatcher tattooed meditation viral craft beer microdosing retro slow-carb DIY helvetica fam. Yes plz live-edge mukbang beard.</p>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</main>
<footer class="site-footer">
<div class="container">
<div class="container container-full">
<div class="grid">
<div class="col-12">
MIT License
@ -76,8 +62,6 @@
</div>
</div>
</footer>
<script src="/js/app.js"></script>
<script defer src="/js/critical.js"></script>
</body>
</html>

@ -1,74 +1,36 @@
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>
test | Imprint
A blog | Imprint
</title>
<meta name="robots" content="index" />
<link href="true://test.lan/imprint.html" rel="canonical">
<link rel="alternate" href="true://test.lan/imprint.html" hreflang="en">
<link href="true://a-blog.lan/imprint.html" rel="canonical">
<link rel="alternate" href="true://a-blog.lan/imprint.html" hreflang="en">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link href="/css/styles.css" rel="stylesheet" type="text/css">
</head>
<body class="site-body">
<header class="site-header">
<div class="bar">
<div class="bar__start">
<h1 class="site-header__title">
Imprint
</h1>
<a class="site-header__title h3 m-top-4 m-bottom-4" href="/">
A blog
</a>
</div>
</div>
</header>
<main class="site-main">
<div class="container">
<div class="grid">
<div class="col-12">
</div>
</div>
</div>
</main>
<footer class="site-footer">
<div class="container">
<div class="container container-full">
<div class="grid">
<div class="col-12">
MIT License
@ -76,8 +38,6 @@
</div>
</div>
</footer>
<script src="/js/app.js"></script>
<script defer src="/js/critical.js"></script>
</body>
</html>

@ -1,110 +1,83 @@
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>
test | A blog
A blog | A blog
</title>
<meta name="robots" content="index" />
<link href="true://test.lan/index.html" rel="canonical">
<link rel="alternate" href="true://test.lan/index.html" hreflang="en">
<link href="true://a-blog.lan/index.html" rel="canonical">
<link rel="alternate" href="true://a-blog.lan/index.html" hreflang="en">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link href="/css/styles.css" rel="stylesheet" type="text/css">
</head>
<body class="site-body">
<header class="site-header">
<div class="bar">
<div class="bar__start">
<h1 class="site-header__title">
<h1 class="site-header__title h3 m-top-4 m-bottom-4">
A blog
</h1>
</div>
</div>
</header>
<main class="site-main">
<div class="container">
<div class="grid">
<div class="col-12">
<a class="post" href="/faridn-frin.html">
<h2 class="post__title">
Farin Frin
</h2>
<time>
2022-12-08 12:12
</time>
<div class="post__excerpt">
Fingerstache vegan artisan, disrupt tbh sus salvia iceland lo-fi. Man braid hot chicken schlitz coloring book, snackwave biodiesel wolf chillwave bodega boys literally bitters.
<div class="grid justify-center">
<div class="inner">
<div class="m-top-6">
<article class="post m-bottom-6">
<header class="post__header m-bottom-3">
<h2 class="h4 m-bottom-3 highlight">
<a href="/faridn-frin.html">
Farin Frin
</a>
</h2>
<span>
<time time="2022-12-08 12:12">
2022-12-08 12:12
</time>
</span>
</header>
<div class="post__excerpt">
<div class="content">
Fingerstache vegan artisan, disrupt tbh sus salvia iceland lo-fi. Man braid hot chicken schlitz coloring book, snackwave biodiesel wolf chillwave bodega boys literally bitters.
</div>
</div>
</article>
<article class="post m-bottom-6">
<header class="post__header m-bottom-3">
<h2 class="h4 m-bottom-3 highlight">
<a href="/hipaa-mofa-cold.html">
Hipaa Mofa Cold
</a>
</h2>
<span>
<time time="2022-12-02 19:22">
2022-12-02 19:22
</time>
</span>
<span class="m-left-3">
/ Test
</span>
</header>
<div class="post__excerpt">
<div class="content">
Same cliche sustainable migas, copper mug polaroid cloud bread franzen JOMO microdosing sriracha. Vinyl tilde cred, blue bottle humblebrag offal pop-up pinterest photo booth bespoke bodega boys four dollar toast wayfarers.
</div>
</div>
</article>
</div>
</a>
<a class="post" href="/hipaa-mofa-cold.html">
<h2 class="post__title">
Hipaa Mofa Cold
</h2>
<time>
2022-12-02 19:22
</time>
<div class="post__excerpt">
Same cliche sustainable migas, copper mug polaroid cloud bread franzen JOMO microdosing sriracha. Vinyl tilde cred, blue bottle humblebrag offal pop-up pinterest photo booth bespoke bodega boys four dollar toast wayfarers.
</div>
</a>
</div>
</div>
</div>
</div>
</div>
</main>
<footer class="site-footer">
<div class="container">
<div class="container container-full">
<div class="grid">
<div class="col-12">
MIT License
@ -112,8 +85,6 @@
</div>
</div>
</footer>
<script src="/js/app.js"></script>
<script defer src="/js/critical.js"></script>
</body>
</html>

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

@ -0,0 +1,3 @@
/* Riot WIP, @license MIT */
/* Riot v7.1.0, @license MIT */

@ -1 +1,5 @@
{}
{
"/js/critical.js": "/js/critical.js",
"/js/blog.js": "/js/blog.js",
"/css/styles.css": "/css/styles.css"
}

@ -1,18 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://test.lan/faridn-frin.html</loc>
<lastmod>2023-01-02T12:18:38+01:00</lastmod>
<loc>https://a-blog.lan/faridn-frin.html</loc>
<lastmod>2023-01-15T22:55:05+01:00</lastmod>
</url>
<url>
<loc>https://test.lan/hipaa-mofa-cold.html</loc>
<lastmod>2023-01-02T12:18:38+01:00</lastmod>
<loc>https://a-blog.lan/hipaa-mofa-cold.html</loc>
<lastmod>2023-01-15T22:55:05+01:00</lastmod>
</url>
<url>
<loc>https://test.lan/imprint.html</loc>
<lastmod>2023-01-02T12:18:38+01:00</lastmod>
<loc>https://a-blog.lan/imprint.html</loc>
<lastmod>2023-01-15T22:55:05+01:00</lastmod>
</url>
<url>
<loc>https://test.lan/index.html</loc>
<lastmod>2023-01-02T12:18:38+01:00</lastmod>
<loc>https://a-blog.lan/index.html</loc>
<lastmod>2023-01-15T22:55:05+01:00</lastmod>
</url>
</urlset>

@ -1,46 +1,46 @@
{% extends('layout.njk') %}
{% block main %}
{% set posts = pageQuery.find({ parent: '/', deep: 0, orderBy: [ '-date_published' ], limit: 50, filter: { view: { _eq: 'post.njk' } } }) %}
<div class="">
<blog-posts></blog-posts>
</div>
<noscript>
{% for post in posts %}
<a class="post" href="{{ post.path }}">
<h2 class="post__title">
{{ post.title }}
</h2>
<time>
{{ post.date_published }}
</time>
{% block main %}
<div class="grid justify-center">
<div class="inner">
<div class="m-top-6">
{% for post in posts %}
<article class="post m-bottom-6">
<header class="post__header m-bottom-3">
<h2 class="h4 m-bottom-3 highlight">
<a href="{{ post.path }}">
{{ post.title }}
</a>
</h2>
<span>
<time time="{{ post.date_published }}">
{{ post.date_published }}
</time>
</span>
{% for tag in post.tags %}
<span class="m-left-3">
/ {{ tag }}
</span>
{% endfor %}
</header>
{% if post.excerpt %}
<div class="post__excerpt">
<div class="content">
{{ post.excerpt }}
</div>
</div>
{% endif %}
</article>
{% endfor %}
{% if post.excerpt %}
<div class="post__excerpt">
{{ post.excerpt }}
</div>
{% endif %}
</a>
{% endfor %}
</noscript>
</div>
</div>
{% endblock %}
{% block addFooter %}
<script defer src="{{ asset('/js/blog.js') }}"></script>
<script defer>
$(function() {
riot.register('blog-posts', blogPosts)
// mount component
riot.mount('blog-posts', {
'jobs': {{ posts | raw }},
})
})
</script>
</script>
{% endblock %}

@ -21,9 +21,15 @@
<header class="site-header">
<div class="bar">
<div class="bar__start">
<h1 class="site-header__title">
{{ page.title }}
{% if page.filename == 'index.html' %}
<h1 class="site-header__title h3 m-top-4 m-bottom-4">
{{ site.title }}
</h1>
{% else %}
<a class="site-header__title h3 m-top-4 m-bottom-4" href="/">
{{ site.title }}
</a>
{% endif %}
</div>
</div>
</header>
@ -39,7 +45,7 @@
</main>
<footer class="site-footer">
<div class="container">
<div class="container container-full">
<div class="grid">
<div class="col-12">
MIT License
@ -48,7 +54,7 @@
</div>
</footer>
<script src="{{ asset('/js/app.js') }}"></script>
<script defer src="{{ asset('/js/critical.js') }}"></script>
{% block addFooter %}{% endblock %}
</body>
</html>

@ -1,5 +1,28 @@
{% extends('layout.njk') %}
{% block main %}
{{ page.content | safe }}
<div class="grid justify-center">
<div class="inner">
<div class="m-top-6">
<header>
<h1 class="highlight">
{{ page.title }}
</h1>
<span>
<time time="{ page.date_published }">
{{ page.date_published }}
</time>
</span>
{% for tag in page.tags %}
<span class="m-left-3">
/ <a href="/index.html?tag={{ tag }}" class="underline">{{ tag }}</a>
</span>
{% endfor %}
</header>
<div class="content">
{{ page.content | safe }}
</div>
</div>
</div>
</div>
{% endblock %}

@ -13,6 +13,18 @@ const SiteomatWebpackPlugin = require('@helpers/siteomat-webpack-plugin')
*/
mix.webpackConfig({
module: {
rules: [{
test: /\.riot$/,
use: [{
loader: '@riotjs/webpack-loader',
options: {
hot: false
}
}]
}
]
},
plugins: [
new SiteomatWebpackPlugin(
'./data',
@ -24,4 +36,8 @@ mix.webpackConfig({
]
})
mix.setPublicPath('./public')
mix
.setPublicPath('./public')
.js('assets/js/critical.js', 'public/js')
.js('assets/js/blog.js', 'public/js')
.sass('assets/scss/styles.scss', 'public/css')
Loading…
Cancel
Save