vite-plugin-lit-css
TypeScript icon, indicating that this package has built-in type declarations

2.1.0 • Public • Published

Use Vite styles for your lit components

Plugin to get all the power of Vite styles with lit tagged-template ⚡.

This plugin aims to get work with css lang stylesheet and lit template literals as simply as any other library or front-end framework.

Installation

$ npm install -D vite-plugin-lit-css

# yarn
$ npm install -D vite-plugin-lit-css

# pnpm
$ pnpm add -D vite-plugin-lit-css

Usage

Add vite-plugin-lit-css to your Vite config.

import { defineConfig } from 'vite'
import litCss from 'vite-plugin-lit-css'

export default defineConfig({
  plugins: [litCss({
    // your global and rel="stylesheet" styles must be excluded
    exclude: './src/index.css'
  })],
})

Then, import your stylesheets as any other javascript module in your code.

import { LitElement } from 'lit'
import styles from './styles.css'

export class Element extends LitElement {
  static styles = [styles, queryStyles]

}

Typescript

You can use types definitions inside your vite-env.d.ts. Remember: order is important!

/// <reference types="vite-plugin-lit-css/client" />
/// <reference types="vite/client" />

Options

This plugin will transform all your css like styles by default into constructible library-specific css styles, but you can take control of this transformation with the include and exclude options.

import { defineConfig } from 'vite'
import litCss from 'vite-plugin-lit-css'

export default defineConfig({
  plugins: [litCss({
    include: /\.scss/, // transform only scss files as lit styles
    exclude: [/global.css/, './src/index.css'] // exclude your global styles
  })],
})

// index.ts

import './styles.global.css' // this file will skipped from this plugin

Your index.html will be transformed. You must include your theme or global css files inside exclude option!!.

Caveats

  • Currently, HMR is not supported, and every change made inside your lit imported styles will trigger a full page reload.

  • For vite v4 use vite-plugin-lit-css 1.x

Readme

Keywords

none

Package Sidebar

Install

npm i vite-plugin-lit-css

Weekly Downloads

4,520

Version

2.1.0

License

none

Unpacked Size

129 kB

Total Files

8

Last publish

Collaborators

  • redfox-mx