@granite-elements/granite-lit-spectre

0.5.9-2 • Public • Published

granite-lit-spectre

granite-lit-spectre is a wrapping of Spectre CSS CSS as LitElement lit-html CSS TemplateResult to be used in LitElement web components.

Using granite-lit-spectre

To use granite-lit-spectre in an element:

1. Install granite-lit-spectre

Install the component using npm:

$ npm i @granite-elements/granite-lit-spectre --save

2. Import granite-lit-spectre in the element where you want to use it

Once installed, import it in your application. Usually you will simply want to import granite-lit-spectre.js (wrap around spectre.css) or granite-lit-spectre-min.js (wrap around spectre.min.css).

Supossing you want to import granite-lit-spectre.js:

import {spectreStyles} from '@granite-elements/granite-lit-spectre/granite-lit-spectre.js';

3. Inside your component, use granite-lit-spectre in the static styles property

class GraniteSpectreExample extends LitElement {
  static get styles() {
    return [spectreStyles];
  }
  render() {
    return html`
      <div class="label label-rounded label-primary">Styled text</div>
    `;
  }

A complete example

import { html, LitElement } from 'lit-element';
import {spectreStyles} from '../granite-lit-spectre.js';

class GraniteSpectreExample extends LitElement {
  static get styles() {
    return [spectreStyles];
  }
  render() {
    return html`
      <table class="table  table-hover">
          <tr><th>Surname</th><th>Name</th></tr>
          ${this.people.map( (person) => {
            return html`
            <tr>
              <td>${person.lastname}</td>
              <td>${person.firstname}</td>
            </tr>
            `;
          })}
      </table>
    `;
  }

  static get properties() {
    return {
      people: { type: Array },
    };
  }

  constructor() {
    super();
    this.people = [
      { firstname: 'Jack', lastname: 'Aubrey' },
      { firstname: 'Anne', lastname: 'Elliot' },
      { firstname: 'Stephen', lastname: 'Maturin' },
      { firstname: 'Emma', lastname: 'Woodhouse' },
    ];
  }
}
customElements.define('granite-spectre-example', GraniteSpectreExample);

Contributing

  1. Fork it!
  2. Create your feature branch: git checkout -b my-new-feature
  3. Commit your changes: git commit -m 'Add some feature'
  4. Push to the branch: git push origin my-new-feature
  5. Submit a pull request :D

Install dependencies and run the demo

  • Run npm install from the repo directory:

     npm install
    
  • Run the es-dev-server development server from the root project directory:

    npm run serve
    

Note on semver versioning

I'm aligning the versions of this element with Bootstrap version, in order to make easier to choose the right version

License

Apache 2.0

Readme

Keywords

none

Package Sidebar

Install

npm i @granite-elements/granite-lit-spectre

Weekly Downloads

0

Version

0.5.9-2

License

none

Unpacked Size

193 kB

Total Files

14

Last publish

Collaborators

  • lostinbrittany