Skip to content

Commit

Permalink
commit by Octane (#128)
Browse files Browse the repository at this point in the history
* Release 1.2.1 (#85)

* fix: unsubrscribe data provider on component updates

* Release 1.2.1

Co-authored-by: Norbert Nader <nnader@amazon.com>

* fix: resolves #83 (#87)

* fix: resolves #83

* Update index.ts

Co-authored-by: Norbert Nader <nnader@amazon.com>

* feat: improve documentation (#90)

* Run tests on pull request (#91)

* Update reference to code name (#86)

AWS-UI internal code name is mentioned in the readme.

Co-authored-by: Norbert Nader <Norbert.Nader@gmail.com>

* feat: update synchro charts to 3.1.0, update docs (#92)

* feat: Improve documentation formatting (#93)

* feat: Improve resource explorer docs (#95)

* Update README.md (#94)

* feat: support fetchMostRecentBeforeStart (#79)

* Update documentation & make react-components easier to use (#98)

* Utilize lock file in CI (#99)

* build(deps): bump async from 2.6.3 to 2.6.4 (#100)

Bumps [async](https://github.com/caolan/async) from 2.6.3 to 2.6.4.
- [Release notes](https://github.com/caolan/async/releases)
- [Changelog](https://github.com/caolan/async/blob/v2.6.4/CHANGELOG.md)
- [Commits](caolan/async@v2.6.3...v2.6.4)

---
updated-dependencies:
- dependency-name: async
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* feat: support auto-assigning colors for certain components (#96)

* feat: support auto-assigning colors for certain components

* Update package.json

* Update cypress to v9, added stricted linting, fixed linting warnings and errors (#104)

* Add stylelint and enforce via global package.json (#106)

* use most recent synchro-charts version, 4.0.1 (#111)

* build(deps): bump eventsource from 1.1.0 to 1.1.1 (#116)

Bumps [eventsource](https://github.com/EventSource/eventsource) from 1.1.0 to 1.1.1.
- [Release notes](https://github.com/EventSource/eventsource/releases)
- [Changelog](https://github.com/EventSource/eventsource/blob/master/HISTORY.md)
- [Commits](EventSource/eventsource@v1.1.0...v1.1.1)

---
updated-dependencies:
- dependency-name: eventsource
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* feat: expand children in resource explorer (#115)

* feat: expand children in resource explorer

* fix typo

* Fix asset module cache

* Add logic for fetching hierarchies

* Add tests

* Improve insert

* Fix linting

Co-authored-by: Norbert Nader <nnader@amazon.com>

* Update README.md (#121)

Fix test runner status badge

* Bump minor version (#120)

* specify react types package version to be 17 (#134)

Co-authored-by: Xinyi <xinyxu@amazon.com>

* build(deps): bump parse-url from 6.0.0 to 6.0.2 (#142)

Bumps [parse-url](https://github.com/IonicaBizau/parse-url) from 6.0.0 to 6.0.2.
- [Release notes](https://github.com/IonicaBizau/parse-url/releases)
- [Commits](https://github.com/IonicaBizau/parse-url/commits)

---
updated-dependencies:
- dependency-name: parse-url
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Fix: Development Quick Start Docs/Scripts (#148)

* add yarn bootstrap script to replace lerna bootstrap

* specify supported node and yarn engines

* simplify development docs and update build steps

Co-authored-by: Thomas Juranek <thjurane@amazon.com>

* build(deps): bump moment from 2.29.2 to 2.29.4 (#149)

Bumps [moment](https://github.com/moment/moment) from 2.29.2 to 2.29.4.
- [Release notes](https://github.com/moment/moment/releases)
- [Changelog](https://github.com/moment/moment/blob/develop/CHANGELOG.md)
- [Commits](moment/moment@2.29.2...2.29.4)

---
updated-dependencies:
- dependency-name: moment
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix: update @testing-library/react to use create root (#151)

Co-authored-by: Norbert Nader <Norbert.Nader@gmail.com>

* feat(props): adapt props for synchro-charts (#133)

* feat(props): adapt props for synchro-charts

* add testing for new props

* fix(tests): cleanup tests from devwork

* Update changelog

* update tests to wait for intercepts

Co-authored-by: Norbert Nader <Norbert.Nader@gmail.com>

* feat: batch API for historical, aggregated, and latest value data (#137)

* fix: resolve float decimal precision issue on round() function. (#160)

* fix: update @testing-library/react to use create root

* fix: resolve float decimal precision issue on round() function.

* Simplify round() function. Remove managing the negative sign separately.

Co-authored-by: Norbert Nader <Norbert.Nader@gmail.com>

* sync changes with private repo for common files (#150)

* sync changes with private repo for common files

* Revert "fix: update @testing-library/react to use create root (#151)"

This reverts commit 960f53f.

Co-authored-by: Xinyi <xinyxu@amazon.com>

* Update npm packages repository (#161)

* build(deps): bump terser from 4.8.0 to 4.8.1 (#168)

Bumps [terser](https://github.com/terser/terser) from 4.8.0 to 4.8.1.
- [Release notes](https://github.com/terser/terser/releases)
- [Changelog](https://github.com/terser/terser/blob/master/CHANGELOG.md)
- [Commits](https://github.com/terser/terser/commits)

---
updated-dependencies:
- dependency-name: terser
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* docs: Fix KPI docs and explain behavior of querying timer-series data when resolution is omitted

* bump synchro-charts/core version from v5 to v6 (#199)

Co-authored-by: Thomas Juranek <thjurane@amazon.com>

* docs: Add coding guidelines

* organize coding guidelines into sections and reword items (#212)

sentance casing on headings

Co-authored-by: Thomas Juranek <thjurane@amazon.com>

* feat(core)!: Refactor time series data module to  remove unused functionality. Add meta field to data stream.

BREAKING CHANGE: Refactored export from `@iot-app-kit/core` IoTAppKitDataModule to be named TimeSeriesDataModule, and removed the concept of multiple data sources per time series data module

* feat(core): Support caching of dataType, name and other fields describing dataStreams

* feat(core,source-iotsitewise)!: Change time series data modules getRequestsFromQueries to be async

Fix various eslint errors on existing code

* chore: remove unecessary template section

* build: npm workspaces (#231)

* feat(core): Add meta field to requestInfos in TimeSeriesDataModule

* build: npm publish with npm workspaces (#233)

* docs: add documentation for publishing new packages (#236)

* docs: add documentation around data sources and time series data

* feat(core): Add viewportManager to orchestrate viewport syncing within groups

* docs(core): Add documentation for viewportManager; export viewportManager from pkg

* feat: set up table package and add createTableItems method (#124)

- config typescript & rollup
- config jest
- config eslint
- add unit tests for createTableItems method
- updated .eslintrc.js at project root level

fix: update tsconfig path in eslintrc for Table package.

- remove unused variables.

fix: add tests for dataFilters.ts

- update descriptions for tests in createTableItems.spec.ts
- add one test case for getting data point from aggregated datastream

fix: remove unnecessary describe block

fix: use object to replace CellItem class
- add createCellItem function
- add unit tests for createCellItem
- rename SC_DataStream to SynchroChartsDataStream for better consistency

fix: remove unused import
- update createCellItem tests.

* feat(table): create new Table component based on AWSUI Table component (#129)

feat: add helper functions for

- iconUtils.tsx - copied from synchro-charts with changes.
- iconUtils.spec.ts - copied from synchro-charts with changes:
-- add one test cases, that color are provided, compared with the original.
- spinner.tsx - copied from synchro-charts with adjustments for React
- spinner.spec.tsx - copied from synchro-charts with adjustments for React

feat: add the main table component

fix: remove generic types for TableProps

fix: add size to loading spinner

fix: remove unnecessary TS compiler options

update a few things based on comments from PR.

Fix: remove full file eslint disable. Switch to minimal eslint disable.

* fix(table): fix an issue when key in columnDefinition doesn't exist in TableItems (#146)

fix: remove unused variables.

* feat!(component): replace table component in @iot-app-kit/components (#147)

* feat: Replace iot-table with new version.

* Update autogenerated types

* fix import

* another fix for import

* another fix for import

* Remove unused property for Iot.

* Fix a typo

* Code cleanups.

* Code cleanups.

* update type of `ColumnDefinition.formatter`

also added a few use cases in testing-ground.tsx

* update type of `ColumnDefinition.formatter`

also added a few use cases in testing-ground.tsx

* Update asset/property IDs and table examples.

* update: add formatter to filterOptions

Property filtering options now has the same displayed value as table.

* update formatPropertyFilterOptions function to better handle error & loading states.

* update test examples for table component.

* Disable Customized formatter for property filter options.

* update test cases after disabled formatter for filter options

* Remove unused dependency.

* a few bug fixes
- Split sorting and propertyFiltering
- Remove formatting on property filtering options.

* UI adjustment - center icon and string vertically.

* Update styles and unit tests

* Remove unused imports and statements.

* Reformat css file

* Restore testing ground

* chore(table): Merge changes from mainline and other changes: (#169)

* docs(table): update docs and add README.md (#165)

* Update docs. Add README.md for new table component.

* fix(table): add missing brackets. (#183)

* docs(table): update docs / major version bump for breaking changes.(#213)

* feat(table): support messageOverrides (#211)

* chore(table): add missing tests (#215)
- render correct data based on different viewports
- render spinner when a datastream is loading
- render error icon and message when a datastream in error state
- render icon and apply styles when it breaches thresholds

* docs(table): update docs / remove unnecessary jest configuration (#217)

* fix(components): move message merge to componentWillRender()

- clean git history and update doc
- removed unused method in `iot-react-table.tsx`

* build: add table to workspace

- updated docs
- export `dataFilters` from core and removed duplications from table.
- update npm-publish.yml
- update table styles
- iot-table: watch messageOverrides for changes

* docs(table): revert version bumps and doc changes.

* chore: update changelogs & docs / major version bumps to 2.0.0

* fix(components): import missing CSS style sheets.

* doc: update link in Coding Guidelines

* feat(TwinMaker): Add TwinMaker packages (#252)

* build(deps): bump scss-tokenizer from 0.3.0 to 0.4.3

Bumps [scss-tokenizer](https://github.com/sasstools/scss-tokenizer) from 0.3.0 to 0.4.3.
- [Release notes](https://github.com/sasstools/scss-tokenizer/releases)
- [Commits](sasstools/scss-tokenizer@v0.3.0...v0.4.3)

---
updated-dependencies:
- dependency-name: scss-tokenizer
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

* doc(TwinMaker): update TwinMaker docs and link them to the main doc (#256)

* chore: update changelogs & version bump (#257)

* chore(components): reduce concurrent workers in testing

* Fixes the Camera Component Editor for Lens and Clipping planes updates when changing between cameras (#263)

* chore(examples): easier linking for iot-app-kit packages (#265)

* feat(components): support viewport grouping in iot-table using ViewportManager.

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Norbert Nader <Norbert.Nader@gmail.com>
Co-authored-by: Norbert Nader <nnader@amazon.com>
Co-authored-by: db <77755322+diehbria@users.noreply.github.com>
Co-authored-by: Mitchell Lee <mitch@evildev.net>
Co-authored-by: Bowei Han <boweih@amazon.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Xinyi Xu <sheilaxxy@gmail.com>
Co-authored-by: Xinyi <xinyxu@amazon.com>
Co-authored-by: Thomas Juranek <thomas@juranek.com>
Co-authored-by: Thomas Juranek <thjurane@amazon.com>
Co-authored-by: Xiao(Bill) Li <limxiao@amazon.com>
Co-authored-by: jmbuss <107281089+jmbuss@users.noreply.github.com>
Co-authored-by: Brian Diehr <diehbria@amazon.com>
Co-authored-by: Jonathan Wills <65614034+jwills-jdubs@users.noreply.github.com>
  • Loading branch information
15 people committed Oct 5, 2022
1 parent a1a2080 commit 99178c0
Show file tree
Hide file tree
Showing 38 changed files with 19,735 additions and 11,913 deletions.
3 changes: 1 addition & 2 deletions .eslintrc.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
// eslint-disable-next-line no-undef
module.exports = {
env: {
browser: true,
Expand All @@ -10,10 +11,8 @@ module.exports = {
'stencil.config.ts',
'configuration',
'__mocks__',
// <<< Private repo additions
'packages/scene-composer/src/three/tiles3d/*',
'examples/**/*',
// >>>
],
extends: [
'eslint:recommended',
Expand Down
27 changes: 27 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,33 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.

# 2.1.0 (2022-09-30)

### Features

* react-components:
* add VideoPlayer and RequestVideoUpload components ([f08c541](https://github.com/awslabs/iot-app-kit/commit/f08c541f017f4bbefae085e45c2ef2e686eb5919))
* scene-composer:
* add SceneViewer component ([f08c541](https://github.com/awslabs/iot-app-kit/commit/f08c541f017f4bbefae085e45c2ef2e686eb5919))
* source-iottwinmaker:
* add source-iottwinmaker module ([f08c541](https://github.com/awslabs/iot-app-kit/commit/f08c541f017f4bbefae085e45c2ef2e686eb5919))

### Bug Fixes

* components:
* import missing CSS style sheets. ([f2450bc](https://github.com/awslabs/iot-app-kit/commit/f2450bc17906bff2ad4ac065eb26b36726d530d6))

### Documentation

* add SceneViewer, VideoPlayer and AWSIoTTwinMakerSource documentation and link to main ([f08c541](https://github.com/awslabs/iot-app-kit/commit/f08c541f017f4bbefae085e45c2ef2e686eb5919) & [71e59be](https://github.com/awslabs/iot-app-kit/commit/71e59be2ad0abcabb9136cf88c3c6c1d16606390))
* doc: update link in Coding Guidelines ([ea041cd](https://github.com/awslabs/iot-app-kit/commit/ea041cd8aadcb65b08c5bc09e6baf2958dbbdd35))

### Miscellaneous

* update react / react-dom versions from >=16 to ^17 ([f08c541](https://github.com/awslabs/iot-app-kit/commit/f08c541f017f4bbefae085e45c2ef2e686eb5919))
* update jest versions from 28 to 27 to be consistent with other modules ([f08c541](https://github.com/awslabs/iot-app-kit/commit/f08c541f017f4bbefae085e45c2ef2e686eb5919))


# 2.0.0 (2022-09-14)

### BREAKING CHANGES
Expand Down
14 changes: 14 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,9 +27,13 @@ IoT Application Kit is a development library for creating web applications to vi
* [Status timeline](https://github.com/awslabs/iot-app-kit/tree/main/docs/StatusTimeline.md)
* [Resource explorer](https://github.com/awslabs/iot-app-kit/tree/main/docs/ResourceExplorer.md)
* [Table](https://github.com/awslabs/iot-app-kit/tree/main/docs/Table.md)
* [Scene Viewer](https://github.com/awslabs/iot-app-kit/blob/main/docs/SceneViewer.md)
* [Video Player](https://github.com/awslabs/iot-app-kit/blob/main/docs/VideoPlayer.md)

[AWS IoT SiteWise source](https://github.com/awslabs/iot-app-kit/tree/main/docs/AWSIoTSiteWiseSource.md) - Learn how to connect the IoT App Kit components with AWS IoT SiteWise

[AWS IoT TwinMaker source](https://github.com/awslabs/iot-app-kit/blob/main/docs/AWSIoTTwinMakerSource.md) - Learn how to connect the IoT App Kit components with AWS IoT TwinMaker

[Time series data features](https://github.com/awslabs/iot-app-kit/tree/main/docs/TimeSeriesDataFeatures.md) - Learn about what IoT App Kit does for you when managing time series data around caching, TTLs, buffering, etc.

### For IoT App Kit contributors
Expand Down Expand Up @@ -64,11 +68,21 @@ The IoT Application Kit mono-repo containing the following packages:

[Learn more here](https://github.com/awslabs/iot-app-kit/tree/main/docs/AWSIoTSiteWiseSource.md).

### @iot-app-kit/source-iottwinmaker
`@iot-app-kit/source-iottwinmaker` exposes the AWS IoT TwinMaker source, which enables you to visualize and interact with your [AWS IoT TwinMaker](https://docs.aws.amazon.com/iot-twinmaker/latest/guide/what-is-twinmaker.html) data and digital twins.

[Learn more here](https://github.com/awslabs/iot-app-kit/blob/main/docs/AWSIoTTwinMakerSource.md).

### @iot-app-kit/related-table
`@iot-app-kit/related-table` is a tree view table component built over `@awsui/components-react` components providing client-side filtering, sorting and pagination with highly performant and optimistic rendering.

[Learn more here](https://github.com/awslabs/iot-app-kit/blob/main/packages/related-table/README.md).

### @iot-app-kit/scene-composer
`@iot-app-kit/scene-composer` is a 3D rendering component built over `@react-three/fiber` that renders your digital twin and enables you to interact with it.

[Learn more here](https://github.com/awslabs/iot-app-kit/blob/main/docs/SceneViewer.md).

## Security
See [CONTRIBUTING](CONTRIBUTING.md#security-issue-notifications) for more information.

Expand Down
54 changes: 27 additions & 27 deletions docs/AWSIoTTwinMakerSource.md
Original file line number Diff line number Diff line change
Expand Up @@ -104,7 +104,7 @@ const { query } = initialize( ... );

A method that is used to construct the query to process AWS IoT TwinMaker time series data.

- Type: Function
Type: Function
- Parameter: `TwinMakerEntityHistoryQuery` | `TwinMakerComponentHistoryQuery` - the inputs used to send request
- ReturnType: `TimeQuery`

Expand All @@ -116,33 +116,33 @@ The query parameters to get the history data for an entity from AWS IoT TwinMake

The `entityId` field of the AWS IoT TwinMaker entity to be queried

- Type: String
Type: String

`componentName`

The `componentName` field of one of the components of the requested entity to be queried

- Type: String
Type: String

`properties`

One or more properties of the requested component to be queried

- Type: Array
Type: Array

Each property contains the following fields:

- `propertyName`

The name of the property to be queried.

- Type: String
Type: String

- `refId`

(Optional) The reference ID of the style settings. IoT App Kit applies the style settings to the property associated with the reference ID. Every component has different style settings.

- Type: String
Type: String

**Query construction example**

Expand All @@ -162,27 +162,27 @@ The query parameters to get the history data for a component type from AWS IoT T

The ID of the AWS IoT TwinMaker component type to be queried

- Type: String
Type: String

`properties`

One or more properties of the requested component to be queried

- Type: Array
Type: Array

Each property contains the following fields:

- `propertyName`

The name of the property to be queried.

- Type: String
Type: String

- `refId`

(Optional) The reference ID of the style settings. IoT App Kit applies the style settings to the property associated with the reference ID. Every component has different style settings.

- Type: String
Type: String

**Query construction example**

Expand All @@ -207,7 +207,7 @@ import { initialize } from '@iot-app-kit/source-iottwinMaker';
const { s3SceneLoader } = initialize( ... );
```

- Type: Function
Type: Function
- Parameter: `sceneId` - the ID of the AWS IoT TwinMaker scene to be loaded
- ReturnType: `SceneLoader`

Expand All @@ -219,7 +219,7 @@ The interface of the class to load scene metadata and content.

The function to fetch the scene metadata, generate the uri for the scene file and return.

- Type: Function
Type: Function
- ReturnType: `Promise<string | null>`
- Resolves with `null` when data is missing to generate a proper uri
- Example output: `s3://bucket-name/scene.json`
Expand All @@ -228,7 +228,7 @@ The function to fetch the scene metadata, generate the uri for the scene file an

The function to download scene file or objects specified by the `uri` from S3.

- Type: Function
Type: Function
- Parameter: `uri` - the uri of the object to be downloaded from S3.
- ReturnType: `Promise<ArrayBuffer> | null`
- Returns `null` when the `uri` is invalids
Expand All @@ -247,7 +247,7 @@ import { initialize } from '@iot-app-kit/source-iottwinMaker';
const { videoData } = initialize( ... );
```

- Type: Function
Type: Function
- Parameter: `videoDataProps` - this is of type `VideoDataProps` which provides information about the video stream and related AWS IoT TwinMaker component
- ReturnType: `VideoData`

Expand All @@ -257,31 +257,31 @@ const { videoData } = initialize( ... );

The video stream name of the desired Kinesis Video Streams

- Type: String
Type: String

`entityId`

The `entityId` field of the AWS IoT TwinMaker entity having the video component

- Type: String
Type: String

`componentName`

The `componentName` field of one of the video components of the referenced entity

- Type: String
Type: String

`sitewiseAssetId`

The value of the property `sitewiseAssetId` of the AWS IoT SiteWise asset associated with the AWS IoT TwinMaker video component

- Type: String
Type: String

`videoUploadRequestPropertyId`

The value of the property `VideoUploadRequest` of the AWS IoT SiteWise asset associated with the AWS IoT TwinMaker video component

- Type: String
Type: String

### `VideoData`

Expand All @@ -291,7 +291,7 @@ The interface of the class to fetch the video metadata and handle the video sour

The function to fetch the the HTTP Live Streaming (HLS) URL for the video stream.

- Type: Function
Type: Function
- ReturnType: `Promise<string | undefined>`
- Resolves with `undefined` when video stream information is not found
- Example output: `https://example.com/sample-video.m3u8`
Expand All @@ -300,12 +300,12 @@ The function to fetch the the HTTP Live Streaming (HLS) URL for the video stream

The function to get the list of available time ranges for the video streams.

- Type: Function
Type: Function
- Parameter:
- `startTime` - intended start time for the video playback
- Type: Date
Type: Date
- `endTime` - intended end time for the video playback
- Type: Date
Type: Date
- ReturnType: `Promise<[{ start: number; end: number; src: string }[], { start: number; end: number }[]] | undefined>`
- Returns two arrays
- First with the information of all the video sources available in Kinesis Video Streams for playback
Expand All @@ -316,19 +316,19 @@ The function to get the list of available time ranges for the video streams.

The function to trigger the video upload request from edge to Kinesis Video Streams for `LIVE` playback.

- Type: Function
Type: Function
- ReturnType: `Promise<void>`

#### `triggerOnDemandVideoUploadRequest`

The function to trigger the video upload request from edge to Kinesis Video Streams for a specified time range.

- Type: Function
Type: Function
- Parameter:
- `startTimestamp` - intended start timestamp for the video upload request
- Type: String
Type: String
- `endTimestamp` - intended end timestamp for the video upload request
- Type: String
Type: String
- ReturnType: `Promise<void>`

---
2 changes: 1 addition & 1 deletion docs/CodingGuidelines.md
Original file line number Diff line number Diff line change
Expand Up @@ -87,7 +87,7 @@ Guidelines that code authors and code reviewers are expected to adhere to in the

- If the viewport contains start and end dates the component should visualize data between the start and end.

- The widget must subscribe to the viewport group provided within the viewport, through the `viewportManager`. [Learn more about viewportManager in the docs](https://github.com/awslabs/iot-app-kit/tree/main/docs/CustomSources.md).
- The widget must subscribe to the viewport group provided within the viewport, through the `viewportManager`. [Learn more about viewportManager in the docs](https://github.com/awslabs/iot-app-kit/tree/main/docs/ViewportManager.md).

- Example usage of viewport:
```
Expand Down
2 changes: 2 additions & 0 deletions docs/Components.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,4 +10,6 @@ IoT App Kit provides the following components that you can use to interact with
* [Table](https://github.com/awslabs/iot-app-kit/tree/main/docs/Table.md)
* [Status timeline](https://github.com/awslabs/iot-app-kit/tree/main/docs/StatusTimeline.md)
* [Resource explorer](https://github.com/awslabs/iot-app-kit/tree/main/docs/ResourceExplorer.md)
* [Scene Viewer](https://github.com/awslabs/iot-app-kit/blob/main/docs/SceneViewer.md) (React component only)
* [Video Player](https://github.com/awslabs/iot-app-kit/blob/main/docs/VideoPlayer.md) (React component only)

Loading

0 comments on commit 99178c0

Please sign in to comment.