nutrient_flutter_web 2.0.0
nutrient_flutter_web: ^2.0.0 copied to clipboard
Web implementation of the nutrient_flutter plugin.
2.0.0 29 Jul 2026 #
- Implements
NutrientDocumentInterface.getPageInfoon web viaInstance.pageInfoForIndex, returningPageInfowith width, height (pixels at 100% zoom), rotation (degrees), and label. (J#HYB-951) - Fixes
BookmarkOperations.removeBookmarkraisingPSPDFKitError: No object with id '<name>' foundon the legacy "match by name" fallback. The Web SDK'sinstance.delete(...)only resolves bookmarks by their SDK-assignedpdfBookmarkIdor by passing the liveImmutable.Recorditself — the name string is not a valid id. We now keep matching bypdfBookmarkId/name/ page index but always hand the matched live record todelete(...), sincepdfBookmarkIdis not surfaced on freshly-created (unpersisted) bookmarks either. (J#HYB-951) - Implements seven view-scoped methods on
NutrientWebAdapter.zoomToRect,getZoomScale,enterAnnotationCreationMode, andexitAnnotationCreationModehave full JS-interop implementations;getVisibleRect,convertViewPointToPdfPoint, andconvertPdfPointToViewPointthrowUnimplementedError(the Web SDK does not expose these at this layer), matching the legacy web controller. (J#HYB-952) - Adds
utils/annotation_tool_web_mapping.dartwithwebInteractionModeForandannotationPresetForTextMarkupToolhelpers, replacing the legacyAnnotationToolWebExtensionlookups so the web adapter no longer depends on pigeon-generated enums. (J#HYB-952) - Wires
NutrientWebAdapterto drive the cross-platformeventsstream from the Web SDK'sinstance.addEventListener(...). Cross-platform events fire fromannotations.create/update/delete/focus/blur,viewState.currentPageIndex.change,page.press,textSelection.change,formFieldValues.update, anddocument.saveStateChange.DocumentLoadedEventis emitted synchronously at the end ofonInstanceLoadedsince the Web SDK delivers a fully-loaded instance up front. (J#HYB-957) - Adds
NutrientWebEventData(type, payload)carrier and awebEventsbroadcast stream onNutrientWebAdapterthat mirrors all 73 events from the Web SDK'sNutrientViewer.EventNameenum (sourced canonically fromweb/web/src/enums/EventName.tsin the monorepo). Web-only events are registered with 0-arg JS callbacks because the Web SDK fires events with varying arity (0, 1, or 2 args) and Dart's.toJSenforces exact arity — a 1-arg listener crashes on annotation-save events that fire with no payload. (J#HYB-957) - Updates to Nutrient Web SDK 1.17.0 and regenerates the
dart:js_interopbindings from its TypeScript declarations.
1.1.0 09 Apr 2026 #
- Fixes
baseUrlnot being applied from the user's configuration before the firstNutrientViewer.load()call, which caused an assertion error on subsequent loads. (J#HYB-910) - Adds
WebConfigurationBuilderto convertNutrientViewConfigurationinto the Nutrient Web SDK configuration object. (J#HYB-988)
1.0.0 13 Feb 2026 #
- Initial release as standalone pub.dev package.
- Web platform bindings using
dart:js_interopandpackage:webfor Nutrient Web SDK integration. - Provides platform adapter to extend
nutrient_flutterwith native bindings. - Implements
nutrient_flutter_platform_interfacefor the federated plugin architecture.