31 lines
1.5 KiB
Markdown
31 lines
1.5 KiB
Markdown
# aria-grid-demo
|
|
|
|
Live examples of [`@jambotron/aria-grid`](https://gitea.jambotron.com/jambotron_gang/-/packages/npm/@jambotron%2Faria-grid) —
|
|
an Angular data grid on Angular Aria. Three examples and a theme switch:
|
|
|
|
1. **Columns, sorting, paging** — cell templates, a column without sorting, filter and the empty state.
|
|
2. **Selection and bulk actions** — `JtGridBulkService`: an action without confirmation, with a required reason,
|
|
with a dangerous confirmation; "locked" rows fail on purpose to show "done N, failed M".
|
|
3. **Row actions and highlight** — icons in the row, the "⋮" menu, dangerous and disabled actions, the open row highlighted.
|
|
|
|
Themes: **Jambotron light**, **Jambotron dark** (the tokens of jambotron.com) and **Synthwave** (the colors of
|
|
reactive-mail-server's web mail). A theme is one attribute — `<html data-theme="…">`; everything is in `src/styles.scss`.
|
|
The grid language switch (English / Russian) shows `provideJtGridLabels()`.
|
|
|
|
## Run
|
|
|
|
```bash
|
|
npm ci # @jambotron scope comes from the Gitea npm registry (.npmrc), no token needed
|
|
npx ng serve # http://localhost:4200
|
|
```
|
|
|
|
## Deploy on Jambotron
|
|
|
|
Upload the repository (ZIP) as a project, pick `docker-compose.yml` in the deploy wizard, give the `web` service a domain,
|
|
port `80`. The image builds the app (`node:22-bookworm-slim`) and serves it with nginx (`nginx:1.27`, Debian);
|
|
any unknown path falls back to `index.html`.
|
|
|
|
```bash
|
|
docker compose up -d --build
|
|
```
|