Skip to content

Instantly share code, notes, and snippets.

View AleksejDix's full-sized avatar
💚
in love with vue

Dix AleksejDix

💚
in love with vue
View GitHub Profile
{
"testEngine": {
"name": "axe-core",
"version": "4.10.2"
},
"testRunner": {
"name": "axe"
},
"testEnvironment": {
"userAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/133.0.0.0 Safari/537.36",
{
"reportMetadata": {
"reportId": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
"reportGeneratedDate": "2024-07-27T10:30:00Z",
"schemaVersion": "0.1.0",
"product": {
"name": "Example E-commerce Site",
"version": "3.1.4",
"description": "Platform for selling artisanal widgets online."
},
# TypeScript Style Guide (No Interfaces, Classes, or Enums)
## 1. General Principles
✅ Prefer **type aliases** over `interface`.
✅ Use **functional programming** principles.
✅ Avoid **OOP constructs** like `class`, `interface`, and `enum`.
✅ Prefer **tuples, records, and discriminated unions**.
✅ Use `const` and **immutability** wherever possible.
---
# https://browsersl.ist/#q=%3E+0.2%25+in+CH+and+since+2022-06%2C+Firefox+ESR%2C+not+op_mini+all
# https://caniuse.com/?compare=chrome+102,chrome+116,edge+102,safari+15.6,firefox+102,firefox+113,opera+98,and_chr+113,ios_saf+16.4&compareCats=all
# To avoid moving target we have to set the date to the Firefox ESR release date
> 0.2% in CH and since 2022-06, Firefox ESR, not op_mini all
<a role="link" aria-disabled="true">Link</a>
@AleksejDix
AleksejDix / gist:dbbb2c10944e606230c37eba2f043066
Created October 25, 2024 11:48
css character stagering animation
.char {
animation-delay: calc(
sin((var(--index) / var(--total)) * 90deg) *
var(--duration)
);
}
cat ~/.ssh/id_rsa.pub | pbcopy
(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const o of document.querySelectorAll('link[rel="modulepreload"]'))r(o);new MutationObserver(o=>{for(const s of o)if(s.type==="childList")for(const i of s.addedNodes)i.tagName==="LINK"&&i.rel==="modulepreload"&&r(i)}).observe(document,{childList:!0,subtree:!0});function n(o){const s={};return o.integrity&&(s.integrity=o.integrity),o.referrerPolicy&&(s.referrerPolicy=o.referrerPolicy),o.crossOrigin==="use-credentials"?s.credentials="include":o.crossOrigin==="anonymous"?s.credentials="omit":s.credentials="same-origin",s}function r(o){if(o.ep)return;o.ep=!0;const s=n(o);fetch(o.href,s)}})();function go(e,t){const n=Object.create(null),r=e.split(",");for(let o=0;o<r.length;o++)n[r[o]]=!0;return t?o=>!!n[o.toLowerCase()]:o=>!!n[o]}const me={},Qt=[],Ge=()=>{},Ml=()=>!1,$l=/^on[^a-z]/,ur=e=>$l.test(e),vo=e=>e.startsWith("onUpdate:"),_e=Object.assign,mo=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},H
<script lang="ts">
import App from './App.vue'
import { defineCustomElement, createApp, h, getCurrentInstance } from 'vue'
import { plugin as formkit } from '@formkit/vue'
import { formkitConfig } from './formkit.config'
import styles from './assets/style.css?inline'
import pro from './../node_modules/@formkit/pro/genesis.css?inline'
import axios from 'redaxios';
import type { Response } from 'redaxios';
export const API = axios.create();
const request = <T, E>(request: Promise<Response<T>>) =>
request
.then(({ data }) => data)
.catch((error: E) => {
throw error;