This change is the start of a refactor to collocate the storybook/playwright environments across the repo (recommended by turbo) into a single development environment (i.e., @iot-app-kit/dev-env). Collocation of the envs provides:
Less envs to manage and align.
Enable whole repo development in a single place.
Make it easy to create stories and playwright tests for every package.
In this change, the dashboard storybook/playwright env is used as the basis of dev-env. In later changes, react-components and scene-composer stories/playwright tests will be migrated.
To build the dev-env, the following additional updates were made:
Using native ESM with node.js via "type": "module" setting in every package.
Creation of non-compiled packages with turbo repo to reuse and share code, including new dev-env, data-mocked, and helpers packages. These packages do not require a build step. Their code is built into their consumer's code.
Also includes:
Fix for type-fest dependency in react-components. Turns out, we don't have a direct dependency on type-fest, yet we are using it. Must be a transitive dependency letting it be imported somehow. Fix was to install it!
Replacement of RecursivePartial utility type with type-fest's PartialDeep.
Overview
This change is the start of a refactor to collocate the storybook/playwright environments across the repo (recommended by turbo) into a single development environment (i.e.,
@iot-app-kit/dev-env
). Collocation of the envs provides:In this change, the dashboard storybook/playwright env is used as the basis of
dev-env
. In later changes, react-components and scene-composer stories/playwright tests will be migrated.To build the
dev-env
, the following additional updates were made:node.js
via"type": "module"
setting in every package.dev-env
,data-mocked
, andhelpers
packages. These packages do not require a build step. Their code is built into their consumer's code.Also includes:
type-fest
dependency in react-components. Turns out, we don't have a direct dependency ontype-fest
, yet we are using it. Must be a transitive dependency letting it be imported somehow. Fix was to install it!RecursivePartial
utility type withtype-fest
'sPartialDeep
.Legal
This project is available under the Apache 2.0 License.