@hartings/la-timeline-timestamp
TypeScript icon, indicating that this package has built-in type declarations

1.0.4 • Public • Published

<la-timeline-timestamp>

This webcomponent follows the open-wc recommendation. It is designed to render an interactive timeline chart that dynamically updates to show the passage of time for various data points.

Installation

yarn add "@hartings/la-timeline-timestamp"

Usage

The default export provides the Web Component class and does not register the web component itself. This approach prevents side-effects and gives you direct access to the Web Component. To use the Web Component in your HTML, you need to register it yourself. The following code provides a simple example:

<script type="module">
  import { LaTimelineTimestamp } from '@hartings/la-timeline-timestamp';
  window.customElements.define('la-timeline-timestamp', LaTimelineTimestamp);
</script>

<la-timeline-timestamp></la-timeline-timestamp>

If you prefer to use the web component without defining it yourself, you can adjust the import as follows:

<script type="module">
  import '@hartings/la-timeline-timestamp/la-timeline-timestamp.js';
</script>

<la-timeline-timestamp></la-timeline-timestamp>

API Properties

The la-timeline-seconds Web Component uses reactive properties for configuration

  • config: Object -> Configuration object with the following optional properties:
    • title: string - Title of the timeline.
    • subtitle: string - Subtitle of the timeline.
    • secondsToShow: number - Number of seconds to show on the timeline.
    • lineColor: string - Color of the timeline line.
    • pointBorderColor: string - Border color of the timeline points.
    • timelineUpdateInterval: number - Interval in milliseconds for updating the timeline.
    • downloadFileName: string - Filename for downloading the timeline data.
  • data: Array -> Array of data objects with the following structure:
    • info: string - Information about the data point.
    • value: string - Timestamp associated with the data point.
<script type="module">
import { LaTimelineTimestamp } from '@hartings/la-timeline-timestamp';
window.customElements.define('la-timeline-timestamp', LaTimelineTimestamp);

const timeline = document.getElementById('demo-timeline');

const config = {
  title: "Example Timeline Timestamp",
  subtitle: "Example Subtitle",
  secondsToShow: 30,
  lineColor: 'green',
  pointBorderColor: 'blue',
  timelineUpdateInterval: 1000,
  downloadFileName: 'example-timeline-timestamp',
}

const data = [
  {info: "First Entry", value: new Date().toISOString()},
  {info: "Second Entry", value: new Date().toISOString()},
  {info: "Thrird Entry", value: new Date().toISOString()},
]

timeline.data = data;
timeline.config = config;
</script>

<la-timeline-timestamp id="demo-timeline"></la-timeline-timestamp>

Styling

The Web Component has a default height set, if you want to override it, please use the following css

la-timeline-seconds::part(chart) {
  height: 400px;
}

Troubleshooting

  • tslib not found: please add this to your dev dependencies
yarn add tslib --dev

Testing with Web Test Runner

To execute a single test run:

yarn test

To run the tests in interactive watch mode run:

yarn test:watch

The test coverage does not function currently, as it inspects the bundle and not the single element.

Local Demo with web-dev-server

yarn start

To run a local development server that serves the basic demo located in demo/index.html

Package Sidebar

Install

npm i @hartings/la-timeline-timestamp

Weekly Downloads

78

Version

1.0.4

License

MIT

Unpacked Size

91.9 kB

Total Files

25

Last publish

Collaborators

  • hartings