• Joined on 2025-04-16

@cyrmex/datagrid (0.5.3)

Published 2026-07-16 11:06:08 +00:00 by fdebef

Installation

@cyrmex:registry=https://gitea.cyrmex.cz/api/packages/fdebef/npm/
npm install @cyrmex/datagrid@0.5.3
"@cyrmex/datagrid": "0.5.3"

About this package

Sdílený DataGrid pro Cyrmex SvelteKit aplikace

@cyrmex/datagrid

Sdílený DataGrid pro Cyrmex SvelteKit aplikace (Svelte 5 runes, Tailwind 4).

Instalace

"@cyrmex/datagrid": "git+ssh://git@gitea.cyrmex.cz:2234/fdebef/cyrmex-datagrid.git#v0.2.0"

Lokální vývoj balíčku:

cd cyrmex-datagrid && npm link
cd farmis-tools && npm link @cyrmex/datagrid

V appce:

  • vite.config.tsresolve.dedupe: ['svelte'], optimizeDeps.exclude: ['@cyrmex/datagrid'], ssr.noExternal: ['@cyrmex/datagrid']
  • @sveltejs/vite-plugin-svelte7.1.2 (fix CSS virtual modulů u excluded ship-source deps v dev)
  • src/app.css@source '../node_modules/@cyrmex/datagrid/src/lib';

Použití

<script lang="ts">
  import { DataGrid } from '@cyrmex/datagrid';
  import type { DataGridColumn } from '@cyrmex/datagrid';
</script>

<DataGrid {columns} {data} storageKey="my-grid" />

Výběr řádků (unified)

Jeden store — store.selection.selected (Set<id>). Checkbox sloupec, mouse i klávesnice mutují stejný Set.

Prop / API Popis
type: 'selection' sloupec Checkbox výběr
enableSelection CTRL/SHIFT/klávesnice (CTRL+A, Esc, Shift+šipky)
enableDragSelection Tažení myší — vybere rozsah, další drag přepíše (default = enableSelection)
suppressRowSelection (sloupec) Buňka blokuje row selection — priorita interakce
Shift+klik / Shift+checkbox Přidá rozsah kotva→klik k existujícímu výběru
onSelectionChange(Set) Callback při změně výběru
store.getSelectedIds() Helper: Array.from(Set)
store.setSelectedIds([...]) Helper: nahradí celý výběr
store.selection.clearSelection() Vymaže výběr

Architektura

  • Ship-source — žádný build, appka kompiluje src/lib přímo
  • Distribuce — git tag v Gitea, ne npm registry
  • App-specifické editory (ATC/PDK) zůstávají v appkách, zapojují se přes renderEditCell

Dependencies

Dependencies

ID Version
clsx ^2.1.1

Development Dependencies

ID Version
@lucide/svelte ^1.0.0
@sveltejs/package ^2.5.8
@sveltejs/vite-plugin-svelte ^7.0.0
svelte ^5.0.0
svelte-check ^4.0.0
typescript ^6.0.0

Peer Dependencies

ID Version
@lucide/svelte ^1.0.0
svelte ^5.0.0
Details
npm
2026-07-16 11:06:08 +00:00
6
UNLICENSED
latest
34 KiB
Assets (1)
Versions (4) View all
0.5.3 2026-07-16
0.5.0 2026-06-24
0.4.1 2026-06-24
0.4.0 2026-06-24