sling-framework

1.12.5 • Public • Published

Sling Framework

The Sling Framework provides the building blocks to create Sling-based web components.

Usage

import { SlingElement, html } from 'sling-framework';

export const StarRating = (Base = class {}) => class extends Base {
  static get properties() {
    return {
      rate: {
        type: Number,
        reflectToAttribute: true,
      },
    };
  }

  render() {
    return html`
      <style>
        button { color: grey; border: none; font-size: 32px; }
        button.selected { color: gold; }
      </style>
      ${[1, 2, 3, 4, 5].map(index => html`
        <button className="${index <= this.rate ? ' selected' : ''}"></button>
      `)}
    `;
  }
}

customElements.define('star-rating', StarRating(SlingElement));

More examples can be found at:

SlingElement

A class based on Google's LitElement that provides attribute/property handling and reflecting.

html

A tagged template literal utility from lit-html that provides an expressive API to dynamically generate html that reacts effectively to the component's state.

withRequest

A decorator that exposes methods, properties and events for handling API requests.

withSetState

A decorator that exposes a method that changes the component state in a functional way.

Versions

Current Tags

VersionDownloads (Last 7 Days)Tag
1.12.514latest

Version History

VersionDownloads (Last 7 Days)Published
1.12.514
1.12.40
1.12.30
1.12.20
1.12.00
1.11.70
1.11.60
1.11.50
1.11.40
1.11.30
1.11.20
1.11.10
1.11.00
1.9.00
1.8.00
1.7.00
1.6.00
1.5.00
1.4.00
1.3.00
1.2.00
1.1.00
1.0.21
1.0.10
1.0.00

Package Sidebar

Install

npm i sling-framework

Weekly Downloads

15

Version

1.12.5

License

none

Unpacked Size

1.29 MB

Total Files

123

Last publish

Collaborators

  • sling-web