npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@meveo-org/mv-table

v1.0.34

Published

MvTable is a Meveo table component (based on lit-element) that renders a table component given data in JSON format.

Downloads

35

Readme

mv-table

MvTable is a Meveo table component (based on lit-element) that renders a table component given data in JSON format.

Features

  • Renders the table a single component tag
  • Can render dynamic table data based on pre-defined column schema

Dependencies

Quick Start

To experiment with the MvTable component.

  1. Clone this repo.
  2. Serve the project from the root directory with some http server (best served with meveo itself)
  3. Update the table in the demo.js file

You can also check this demo

Sample usage

<mv-table-options
  .columns="${this.columns}"                           // the columns list for the table
  .isButtonVisible="${this.isButtonVisible}"           // TODO
  @changeRowsPerPage="${this.changeRowPerPage}"        // custom event when number of rows per page is updated
  @changeColumnsDiplayed=${this.changeColumnsDiplayed} // custom event when displayed columns are changed
>
  <mv-pagination slot="pagination"></mv-pagination> // Optional pagination inside table option
</mv-table-options>

<mv-table
  .columns="${this.columns}"              // the columns list for the table
  .rows="${this.list}"                    // list containing the table data
  .action-column="${this.actionColumn}"   // optional action column that is rendered as the last column of the table
  @row-click="${this.handleRowClick}"     // custom event when a row is clicked
  @cell-click="${this.handleCellClick}"   // custom event when a cell is clicked
  @select-row="${this.handleRowSelect}"   // custom event when a row is selected (either by checkbox or if selectable is enabled)
  with-checkbox                           // enable checkboxes
  selectable                              // enable selectable rows
></mv-table>

<mv-pagination
  .page="${this.page}"                    // Current pagination number 
  .pages="${this.pages}"                  // Max pagination number
  @change-page="${this.gotoPage}"         // custom event to handle pagination 
></mv-pagination>

The column schema has the following properties:

{
  name,           // attribute/property name of the column
  title,          // text for column header
  tooltip,        // tooltip text on column header
  type,           // valid types: ARRAY, DATE, TEXT, URL
  hrefProp,       // required for URL type
  target          // optional for URL type
  displayed       // Whether the column should be displayed
  render          // Optional custom renderer for the given cell
}

Acknowledgements