@svgrid/enterprise
v3.1.13
Published
Enterprise feature pack for SvGrid: the server-side row model (lazy grouping, tree, pivot, transactions, selection across unloaded rows), Excel (xlsx) and PDF export, Excel/CSV/JSON import, pivot tables with a drag-and-drop designer, paginated print, Kanb
Maintainers
Readme
@svgrid/enterprise layers production export, printing, analytics, extra grid views, and a full data-app layer on top of the MIT @svgrid/grid core. It attaches to the grid's public API without changing it - the same api object you already hold simply gains new methods.
What it adds
- Server-Side Row Model -
createServerRowModelover the free datasource contract: lazy grouping and tree data one level at a time with a block cache per level, aggregates, child counts and grand totals, server-side pivot with the designer in server mode, transactions on loaded rows, paging over the tree, and a selection kept as a rule so select-all reaches rows the grid never loaded, with a bulk edit by rule. Flat paging and infinite scroll stay free in@svgrid/grid. - Data export - Excel (
.xlsx), PDF, styled HTML and XML, with theme-matched styling, headers/footers, and image support. CSV, TSV and JSON export (and copy-to-clipboard) are free in@svgrid/grid; Enterprise adds the paid formats and a singleexportGrid()entry point over all of them. - Data import - read Excel / CSV / TSV / JSON into typed rows with column auto-mapping, type inference, and per-row validation, plus a ready-made
SvImportDialog. - Paginated print - opens a clean, paginated, printable view of the grid with title and page breaks.
- Pivot tables - drag-and-drop pivot Designer with row/column/value fields, aggregation, drill-through to source rows, and pivot-to-chart.
- Kanban board view -
enableBoardView()lets<SvGrid board={...}>render the rows as cards in lanes, with drag-and-drop, swimlanes, WIP limits and a card drawer. - Scheduler / calendar view - a Month/Week/Day/Agenda calendar rendered as a view of the grid:
enableSchedulerView()lets<SvGrid scheduler={...}>show events with resources, recurrence, and drag/resize. - Staged editing - collect edits into a reviewable change set before committing.
- Scheduling automation - a client-side cron / one-off scheduler (
createScheduler,parseCron,CRON_PRESETS) to drive recurring exports and alerts with no backend. - Spreadsheet (Suite) -
<SvSheet>and the<sv-sheet>custom element over a built-in formula engine: around 185 functions, cross-sheet references, named ranges, absolute and relative refs, dynamic arrays with spill, iterative calculation with convergence, circular-reference detection, volatile-function tracking, and dependency-graph recalculation. In-house, with no runtime dependency. - Spreadsheet file formats (Suite) - read and write
.xlsx,.xls(BIFF8) and.ods, plus.csv. Formulas, tables, named ranges, merges, frozen panes, sparklines, charts and images survive an.xlsxround trip. Pivot tables round-trip as their computed cells, not as live PivotTable parts, and.xlskeeps the BIFF8 row and column ceilings. - SvGrid Base (Suite) -
<SvBase>from@svgrid/enterprise/base: a table database inside your app. Typed fields (select, user, attachment, rating, linked record, lookup, rollup, formula and more), a primary field, saved views (grid, Kanban, calendar, gallery, form) each with its own filter, sorts, groups and row colors, and an expanded record with changes and comments. - SvGrid Studio (Suite) - a schema-driven data-app layer:
EntitySchema, memory / SQL / Supabase / REST data sources, a SvelteKit adapter, edit panels, master/detail, schema charts + KPI dashboards, and the project model + codegen behind the visual designer. See@svgrid/studio.
Install
npm install @svgrid/enterpriseFormat engines are optional peer dependencies - install only the ones you use:
npm install jszip # Excel (.xlsx) export + import
npm install pdfmake # PDF exportUsage
import { setLicenseKey, installEnterprise } from '@svgrid/enterprise'
setLicenseKey('YOUR-LICENSE-KEY') // your Enterprise key
// Inside <SvGrid onApiReady={(api) => { ... }}>:
const pro = installEnterprise(api)
// Export / print
await pro.exportData({ format: 'xlsx', filename: 'orders' })
pro.print({ title: 'Q2 Orders' })
// Import
const result = await pro.importData({ file, format: 'xlsx' })
// Pivot - returns { rows, columns } for a second <SvGrid>
const { rows, columns } = pro.pivot.build({
rows: ['region'],
values: [{ field: 'total', agg: 'sum' }],
})The AI helpers are not in this package. Natural-language filter,
smart fill, summarize, classify, anomaly detection, and "chart this" are
built in and free in @svgrid/grid.
Installing Enterprise only adds the Excel/PDF export engine that
AI-planned exports write through.
installEnterprise returns the same grid API with the enterprise methods (exportData, copyExport, print, importData, pivot.*) added on top, so the rest of your integration is unchanged. It also registers the Kanban board, scheduler / calendar and Gantt views, so <SvGrid board={...}>, <SvGrid scheduler={...}> and <SvGrid gantt={...}> render.
Licensing
Commercial, in two editions, both covering unlimited production apps:
| Edition | Covers | | --------- | ----------------------------------------------------------------- | | Grid | Everything above except the spreadsheet, the file formats and Studio | | Suite | All of it |
Purchase a key at svgrid.com/pricing.
The gate is soft. Every feature runs without a key, and under a key whose edition does not cover it. You get a small watermark on the grid and a one-time console notice; nothing throws and nothing is disabled, so you can evaluate any of this in your own app before buying. A key that is not your license key gets the same treatment as no key.
import { setLicenseKey } from '@svgrid/enterprise'
setLicenseKey(import.meta.env.VITE_SVPRO_KEY)Every customer receives the same license key; it covers every edition and carries no expiry. Your edition (Grid or Suite), seats and updates term are set by your order and the EULA, not by the key. A key that is not the license key runs like no key: watermark, one console warning, nothing thrown.
OEM and redistribution. A developer seat covers your own application, including a SaaS product
your customers pay for. It does not cover shipping this package to third parties as a component, an
SDK, or an app builder they build with. That needs an OEM license, priced separately from seats.
Section 4A of the EULA has the
exact test; [email protected] will tell you which side you are on.
OSS projects under an OSI-approved license qualify for a free Suite key.
The source in this package is published for evaluation and for paying customers; visibility does not grant a license. See LICENSE.
Support
Enterprise licenses include commercial and priority support. Open an issue at github.com/sv-grid/sv-grid or reach the team via svgrid.com.
Trademark
SvGrid™ and sv-grid™ are trademarks of jQWidgets Ltd.
