console-common npm package
Console Common Components and Utilities
Local development
The project comes with yarn 3 configured.
Code generation:
REST API
DIRECTORY_OPENAPI_URL='https://directory.ronen.eng.aserto.com/openapi.json' yarn generate:rest
GraphQL
yarn generate:gql
Building
yarn build
- uses rollup
to build the library, see rollup.config.js
. Everything is bundled in the dist
folder.
yarn push
- uses yalc
to push the library to the local registry. To consume the packages you will need to run yalc link @aserto/console-common
in your project. After you do that you will see a .yalc
folder in the root of your project, that is the local registry that yalc will push to when running yarn push
in the console-common directory.
The library also provides a dev mode where it watches for file changes and updates the package in the local registry.
yarn dev
You can use this command after you have run yalc link @aserto/console-common
in your project
Consuming
To add a dependency to the local package use yalc link @aserto/console-common
in the client application.
import { Directory } from '@aserto/console-common'
Troubleshooting
Module not found: Error: Can't resolve '@aserto/console-common
-> run rm -rf .yalc && yarn link:console-common && yarn install
Examples
Passing a configuration:
<InternalConfigProvider config={config}>{children}</InternalConfigProvider>
Passing an identity:
<GenericIdentityProvider
identity={{
getAccessToken: getAccessToken || (() => Promise.resolve('')),
logout: logout || (() => {}),
}}
>
{children}
</GenericIdentityProvider>
Passing a profile
<InternalProfileProvider profile={{ tenantId: tenant?.id }}>
Testing
This lib uses jest
for testing, see jest.config.js
yarn test
Release
yarn release_prep
- creates a new branch, release_prep/${version}, bumps to the next minor version, commits and pushes changes
yarn release
- tags the latest commit with the version from package.json and pushes the changes