nodemon
ts-node
https://github.com/TypeStrong/ts-node#paths-and-baseurl
@mixin theme($theme) { | |
@at-root #{selector-nest(':root[data-theme=#{$theme}]', &)} { | |
@content; | |
} | |
} | |
:root { | |
--bg-color: lightcoral; | |
} |
/* ! tailwindcss v3.2.4 | MIT License | https://tailwindcss.com */ | |
*, | |
::before, | |
::after { | |
box-sizing: border-box; | |
border-width: 0; | |
border-style: solid; | |
border-color: #e5e7eb; | |
content: ''; |
import { chromium, LaunchOptions } from 'playwright' | |
import type { Browser, BrowserContext, Page } from 'playwright' | |
/** */ | |
type UsePlaywrightCallback = (opt: { browser: Browser, ctx: BrowserContext, page: Page }) => Promise<void> | |
/** Expose a `playwright` browser, context and page to a callback that automatically close after finishing */ | |
export async function usePlaywright(cb: UsePlaywrightCallback): Promise<void> { |
nodemon
ts-node
https://github.com/TypeStrong/ts-node#paths-and-baseurl
<header class="counter-header"> | |
<h2>NGXS: Reactive Counter</h2> | |
</header> | |
<main class="counter-container"> | |
<h2 class="counter-number">The button has been clicked <b>{{ counter }}</b> times</h2> | |
</main> | |
<button class="counter-button" (click)="increment()"></button> |
<ion-content padding> | |
<h3 ion-text color="primary" text-center>Swipe remove directive</h3> | |
<ion-list> | |
<button ion-item *ngFor="let item of items; let i=index" (click)="onClick(item)" (swipe-remove)="removeItem($event, i)"> | |
<ion-thumbnail item-start> | |
<img src="http://placehold.it/100"> | |
</ion-thumbnail> | |
<h2>My Neighbor Totoro</h2> | |
<p>Hayao Miyazaki • 1988</p> |