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>`); |