@nice2dev/erp-adapter
v1.0.5
Published
Adapter layer connecting OmniVerk .NET backend with @nice2dev/* React components
Downloads
448
Maintainers
Readme
@nice2dev/erp-adapter
Adapter layer connecting an OmniVerk .NET backend with @nice2dev/* React components.
Installation
npm install @nice2dev/erp-adapterPeer dependencies: react >= 17.0.0, react-dom >= 17.0.0
Features
- ErpDataAdapter — REST CRUD adapter for NiceDataGrid, NiceList, etc.
- ErpSignalRAdapter — Real-time adapter via SignalR for NiceChat, NiceScheduler
- ErpAuthAdapter — JWT authentication (login, refresh, logout)
- ErpFileAdapter — File upload/download with blob storage
- ErpExportAdapter — Server-side export (xlsx, pdf, csv)
- Control Registries — Pre-built control registrations for NiceViewBuilder
Adapters
| Adapter | Description |
|---------|-------------|
| ErpDataAdapter | Generic REST adapter for list/detail CRUD (supports paging, sorting, filtering) |
| ErpAuthAdapter | JWT login, token refresh, logout |
| ErpFileAdapter | File upload, download, delete against blob storage |
| ErpExportAdapter | Server-side export to xlsx, pdf, csv, json, xml |
| createSignalRAdapter | Real-time SignalR connection with auto-reconnect |
Control Registries
| Registry | Controls |
|----------|----------|
| audioControlRegistry | DAW editor, player, karaoke, playlist, visualizer |
| graphicControlRegistry | Pixel, vector, photo, animation editors |
| threeControlRegistry | 3D model editor |
| gamificationControlRegistry | Game engine, achievements, leaderboards |
| businessControlRegistry | Charts, data grid, scheduler, gantt, pivot |
| authControlRegistry | Login, registration, 2FA, OAuth, captcha |
| socialControlRegistry | Comments, ratings, wiki |
| allControlRegistries | All of the above combined |
Usage
import { ErpDataAdapter, ErpAuthAdapter, allControlRegistries } from '@nice2dev/erp-adapter';
// Set up auth
const auth = new ErpAuthAdapter({ baseUrl: '/api/auth' });
await auth.login({ username: 'admin', password: 'secret' });
// Set up data adapter
const products = new ErpDataAdapter<Product>({
baseUrl: '/api/products',
tokenFactory: auth.tokenFactory,
});
// Load data
const result = await products.load({ skip: 0, take: 20 });SignalR Real-time
import { createSignalRAdapter } from '@nice2dev/erp-adapter';
const signalR = createSignalRAdapter({
url: '/hubs/events',
tokenFactory: auth.tokenFactory,
});
await signalR.start();
signalR.on('ItemUpdated', (item) => console.log('Updated:', item));Types
Key TypeScript types exported:
ErpResponse<T>,ErpFilter,ErpSort,ErpDataRequest— data adapter typesErpUser,ErpLoginRequest,ErpLoginResponse— auth typesErpFileInfo— file adapter typesErpExportFormat,ErpExportRequest,ErpExportResponse— export typesControlRegistryEntry,PropDescriptor,PropType— view builder registry types
License
MIT © NiceToDev
