nrb 4.1.0
nrb: ^4.1.0 copied to clipboard
A responsive Flutter table and report builder with local Excel, PDF, Word exports, JSON-to-Excel, nested headers, and editable data grids.
4.1.0 #
- Free Local Excel, PDF & Word: Leaving
apiKeynull or empty now enables all three formats directly on the user device;packageNameis not required in local mode. - Existing Export UI Preserved: Local mode uses the same draggable NRB export FAB,
Share Report/Download Reportactions, and format chooser already used by subscription mode instead of introducing a second UI. - Local Processing Notice: The format chooser tells users that generation happens on-device, can take longer for large reports, and does not send report data to the NRB server.
- Responsive Local Generation: Report widgets are copied to an isolate-safe snapshot in chunks, then XLSX/DOCX/PDF binary construction uses Flutter's background-compute path on native platforms so heavy file assembly does not block UI rendering.
- Server-Compatible Styling Contract: Local exporters reuse the existing NRB payload for row/column spans, colors, foreground colors, alignment, bold/italic header metadata, dynamic widths, report names, and data values.
- Improved Format Fidelity: Local Excel preserves merged/colorized headers and numeric cells; Word carries NRB column widths and merged cells; PDF uses NRB column widths, cell colors, alignment, bold/italic styling, repeated headers, branding, and page footers.
- Bangla PDF: Bundled Noto fonts and Bengali OpenType shaping support conjuncts, reph, vowel signs, and mixed Bengali/Latin text. PDF also supports Greek and Cyrillic; unsupported glyphs report an error. No font network requests are needed.
- Export Robustness: Preserves JSON types and Excel numeric precision, wraps long PDF cells across pages, protects repeated actions through asynchronous callbacks, and handles cancellation. Web generation runs on the browser event loop; large Web exports may pause interaction.
- Standalone JSON → Excel Free Mode:
NRBJsonToExcel(...),NrbJsonToExcel.convert(...), andNRBJsonToExcelButtongenerate Excel locally whenapiKeyis null or blank, with nopackageNamerequirement. - Subscription Compatibility: Supplying a non-empty API key preserves the existing subscription feature lookup and server-side export flow.
- Legacy Compatibility: Deprecated
ReportDesignBuilder/ReportMakerreceive the same local export fallback without requiring a package name in local mode. - Platform-Safe Saving: Local saving now follows conditional native/browser implementations instead of importing
dart:iointo the shared table builder path. - Example & Tests: The pub.dev example now demonstrates 150 rows, charts, complex nested headers, frozen columns, dynamic widths, and the actual local export FAB. Added regression tests for local FAB visibility and styled XLSX/DOCX/PDF generation.
4.0.7 #
- Standalone JSON to Excel: Added
NRBJsonToExcel(...)/NrbJsonToExcel.convert(...)for exporting ordinary JSON without building an NRB table UI. - Reusable Download FAB: Added
NRBJsonToExcelButtonfor one-tap JSON-to-Excel download from any screen. - Automatic Excel Feature Discovery: Reuses the existing NRB feature/subscription endpoint and the existing
process-tablebackend contract. - Generic JSON Normalization: Supports common API list keys, nested object flattening, primitive lists, dynamic columns, and empty datasets.
- Custom Collections: Both APIs accept
dataKeyfor selecting an explicit row list. - Cross-Platform Downloads: Browser downloads and native file saving share safe
.xlsxnaming; Android falls back to app storage when public Downloads rejects a write. - Validation and Lifecycle: Rejects malformed/cyclic JSON and invalid binary responses, preserves server errors, and guards download callbacks after widget disposal.
- Release Validation: Added offline conversion, payload compatibility, download, and widget tests; removed example credentials and aligned SDK constraints with existing dependencies (Flutter 3.32 / Dart 3.8).
4.0.6 #
- Free Native PDF Export: Added a pure Dart native PDF generator for users without a subscription.
- Responsive PDF Layout: Local PDF generator now supports multi-page auto-pagination, header repetition, and adaptive width/font-scaling.
- Branding Support: Added
companyName,companyAddress, andcompanyLogoAssetfor branding local PDF reports. - Improved Android Storage: Enhanced
NrbNativeFileSaverto target the public Downloads folder on Android more reliably.
4.0.5 #
- Invalid argument bug fixed on Server side download issue (UTF-8 encoding fix)
- iOS and Mac scrolling time laggign bug fixed
4.0.3 #
- Column Sorting logic added
- Export for new grid dynamic width logic upgraded
4.0.2 #
- As a form validation tooltip not update bug fixed
- Index wise column width passing logic added
4.0.1 #
- Neck gap bug fixed
4.0.0 #
- Marked ReportMaker as deprecated and continue with NRBTableEngine. Users should Migrate to new NrbTableEngine for better experience
- Solved wrap_content issue in NRBTableEngine for height especially
- Users can now pass textStyle also in TextFieldCell()
- Handled 1 lacs rows easily without freezing UI (Tested on Lab)
3.0.7 #
- NRBMultiBarChart added
3.0.6 #
- Introducing New NrbTableEngine That will replace old ReportMaker in Future
3.0.5 #
- PlaceHolder added for form behaviour
3.0.4 #
- NRB as Form (WOO!!)
3.0.3 #
- MultiDoNutChart, StackedBarChart, ComboChart and TrendCard added
- Custom Widget Passing
3.0.2 #
- Live presentation added
3.0.1 #
- Readme Updated
3.0.0 #
- Complete Documentation
- Graph & Charts added (NRBBarChart, NrbDonutChart, NrbGaugeChart, NrbLineChart, NrbPieChart, NrbScatterPlot)
2.0.3 #
- Readme / Docs updated
2.0.2 #
- Example Updated
2.0.1 #
- Keyboard options & inputFormatters option added in TextFieldCell()
2.0.0 #
- Readme Updated
1.0.16 #
- License Updated
1.0.15 #
- For exporting API key introduced and centralized network call
1.0.14 #
- Excel, PDF, and Word Export support added
1.0.12 #
- Fixed simple mode height calculation bug
- Added Floating action button with download and share features
1.0.11 #
- Negative values number formatting bug fixed
1.0.10 #
- Table as form use case features added
1.0.9 #
- Report layout responsiveness added for all type of device screen sizes and TextFieldCell() for input field
1.0.8 #
- Report download facilities added with Excel Format.
1.0.7 #
- Column auto re-sizing based on long press and double tap reset logic added
1.0.6 #
- A great useful update has available, each column width can be now dynamic. Just add width: some_double_value; Boom! It will magically handle other things by self.
1.0.5 #
- Added isAmount Field in TextCell for internal number formatting
1.0.4 #
- Number format helpers added for reuse.
1.0.3 #
- Sub Headers and Headers height merge logic implemented.
1.0.2 #
- Clickable and Generic TextCell added.
1.0.1 #
- Documentation customized
1.0.0 #
- Customizable report layout builder with nrb