ec.components
This project contains all sorts of angular components for creating data driven applications. It is mainly used for entrecode admin applications in combination with the entrecode using ec.sdk.
Packages
Main Packages
- @ec.components/core: contains core typescript classes (no angular/datamanager)
- @ec.components/ui: contains core ui components (not datamanager specific)
- @ec.components/data: contains ui components for datamanager.
- @ec.components/style: contains styles for all components, built on x.ui.
The dependencies stack up from core to data (data > ui > core). You could also omit data, using just the ui components.
Optional Packages
- @ec.components/calendar: contains calendar components, uses moment.
- @ec.components/location: wraps angular-google-maps.
- @ec.components/tinymce: wraps tinymce wysiwyg editor.
- @ec.components/medium-editor: wraps medium wysiwyg editor.
- @ec.components/ace: wraps ace code editor.
Documentation
The main documentation is located at entrecode.github.io/ec.components. You can find a getting started guide there.
Demo
A Demo is available at components.entrecode.de.
Developing with Lerna + Yarn Workspaces
The repository is a monorepo, managed by lerna and yarn workspaces. All folders inside dist + packages/style will be used as symlinks in node_modules/@ec.components/*. You can update the symlinks by running yarn (e.g. after adding a new package).
Dev Setup
After a fresh clone of the repo, run this:
yarn install
npm run dev-setup
npm run start
The dev-setup script builds all packages and symlinks them to the node_modules.
Releasing
Run release task and select versions:
npm run release
To publish a new package for the first time, make sure you run npm publish --access=public
before running lerna. See add-new-package for more info on creating a new package.
Also make sure to use Conventional Commits for proper changelogging.