Install Homebrew:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
Install jEnv using Homebrew:
brew install jenv
Add the cask-versions tap to Homebrew:
@supports (padding-top: constant(safe-area-inset-top)) { | |
body { | |
padding: env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left); | |
} | |
} | |
@media (display-mode: fullscreen) { | |
body { | |
padding: 0; | |
} |
import { h, hydrate } from 'preact'; | |
let C = 0; | |
export function Root({ href, data, children }) { | |
let json = data && JSON.stringify(data); | |
let id = 'root:'+++C; | |
return [ | |
h(`!--${id}--`), | |
children, | |
h('component-root', { href, id }, |
<img | |
alt="accessible text" | |
class="fill-color-red" | |
height="16" | |
src="some.svg" | |
width="16" | |
onload="fetchSvgInline(this)" | |
/> |
@use 'sass:math'; | |
@mixin _flex-gap($gap, $row: true) { | |
$margin: math.div($gap, 2); | |
$transform: -$margin; | |
@if $row { | |
margin-left: $transform; | |
margin-right: $transform; | |
} @else { | |
margin-top: $transform; | |
margin-bottom: $transform; |
const { addTailwindPlugin } = require("@ngneat/tailwind"); | |
const tailwindConfig = require("./tailwind.config.js"); | |
module.exports = (config) => { | |
addTailwindPlugin({ | |
webpackConfig: config, | |
tailwindConfig, | |
patchComponentsStyles: true | |
}); | |
return config; |
module.exports = { | |
prefix: '', | |
purge: { | |
content: [ | |
'./src/**/*.{html,ts}', | |
] | |
}, | |
darkMode: 'class', // or 'media' or 'class' | |
theme: { | |
extend: {}, |
/** | |
* Usage: | |
* class FancyButton extends HTMLElement { | |
* constructor() { | |
* super(); | |
* ensureShadowRoot(el); | |
* // if a declarative shadow root was present, it'll be here: | |
* console.log(this.shadowRoot); | |
* } | |
* } |
if (!Element.prototype.getInnerHTML) { | |
Element.prototype.getInnerHTML = function(opts) { | |
var html = this.innerHTML; | |
if (!opts || !opts.includeShadowRoots) return html; | |
var m = new (self.WeakMap || Map)(); | |
for (var c of (opts.closedRoots || [])) m.set(c.host, c); | |
var p = []; | |
function walk(node) { | |
var c, shadow = node.shadowRoot || m.get(node); | |
if (shadow) p.push(node.innerHTML, `<template shadowroot="${shadow.mode}">${shadow.innerHTML}</template>`); |