uae_pass_kit 0.0.2
uae_pass_kit: ^0.0.2 copied to clipboard
Unofficial UAE Pass Flutter plugin: app-to-app sign-in, profile retrieval, document sharing, PDF e-signature, token refresh and logout in pure Dart.
Changelog #
All notable changes to this project are documented in this file. The format is based on Keep a Changelog.
0.0.2 #
- New
UaePassKitconstructor shortcuts,clientSecretandsigningClientSecret— a single-parameter alternative to implementingUaePassTokenExchanger/UaePassSigningTokenExchangeryourself, building the direct exchangers for you against eitherstagingorproduction. Passing both a shortcut and its exchanger, or neither, now throws aUaePassConfigurationExceptionimmediately instead of failing silently. - Fixed a real dependency bug: the
url_launcherlower bound (>=6.0.0) allowed versions that predate thecanLaunchUrl/launchUrl/LaunchModefunctional API this plugin actually calls; raised to>=6.1.0. - Bumped all dependency version constraints to their current latest releases (
web,plugin_platform_interface,webview_flutter,app_links,http,crypto,url_launcher,webview_flutter_platform_interface). - Relicensed from MIT to Apache-2.0.
- Raised Android
compileSdkto 37 andminSdkto 28; raised the iOS deployment target from 15.0 to 16.0 (podspec,Package.swift, and the example Xcode project). - Removed the
mockitoandmocktailtest dependencies in favor of hand-written fakes; removed a stale Kotlin plugin test that exercised a method (getPlatformVersion) no longer present in the plugin. - Trimmed the
pubspec.yamldescription to pub.dev's recommended 60–180 character range. - README: moved Quick start to the top of the page; added an Environments section documenting how every URL/package-ID/scheme is derived per environment and cross-referencing the test coverage that guards against a staging/production mixup.
- Example app: added an install-detection status indicator, a working refresh-token demo, a working e-signature demo against the public sandbox, and a wired-up (but backend-less) document-sharing demo that surfaces the real
UaePassConfigurationException.
0.0.1 #
Initial release. Full feature set, no staged/partial functionality:
- App-to-app sign-in via the documented WebView-interception flow, in pure Dart (no vendored native SDKs), with graceful cancel/decline handling.
- Pluggable token exchange (
UaePassTokenExchanger) soclient_secretnever has to ship in a mobile/web build; a direct sandbox-only implementation is included for local development. - Full profile retrieval (
getProfile) covering the complete 37-field union found across both official native SDKs, including Arabic/English name pairs and home-address decomposition. - Token refresh (
refreshAccessToken) — a capability neither official native SDK implements despite capturingrefresh_token. - Real logout (
logout) that clears local WebView session state and notifies UAE Pass's/idshub/logoutendpoint. - Document sharing / proof-of-presentation (
requestDocumentShare) as a cancelableStream<DocumentShareStatus>, delegating the HMAC-signed backend calls to your own server viaUaePassDocumentShareBackend. - PDF e-signature (
signDocument) wrapping theesignsp/v2flow, including multi-signer field placement and Emirates ID signature-image embedding. - Native install detection (
isUaePassAppInstalled) with correct Android 11+ package-visibility manifest declarations shipped in the plugin itself. - Environment configuration limited to exactly
stagingandproduction— the only two UAE Pass issues credentials for. - Auto-generated, cryptographically random
stateper sign-in attempt. - Full public API documentation coverage.