bfs_manager 0.0.23
bfs_manager: ^0.0.23 copied to clipboard
Offline-first Flutter sync SDK for SQLite ↔ server. Simple API: init, register/login, save/edit/remove, and sync.
0.0.23 #
- Easy DB:
init(tables: {...})auto-creates SQLite tables (uuidPK added automatically). - Added
BfsDbHelper/BfsManager.openDatabase()and demo inexample/README.md.
0.0.22 #
- Docs: added multiple-file upload examples (List + JSON string) in README, developer guide, and example.
0.0.21 #
- Developer-friendly API:
init,register/login/logout/deleteAccount,save/edit/remove, and singlesync(type:). - Added
BfsSyncType(sync,all,push,latest) andisLoggedIn. - Optimization: debounced auto-push, batched push (default 10), push lock, pull write transactions, table column cache.
- Added
socialLoginhelper.
0.0.20 #
- Pull-updates: deleted rows moved to separate
deleteDataarray (table_name+uuid);datanow only contains upsert rows.
0.0.19 #
- Breaking: Pull-all API now uses input
{ "page", "limit" }and flat output withcurrent_page,limit,has_more,total_records,latest_server_time, anddata[](tb_name+uuid+ columns).
0.0.18 #
- Breaking: Pull-updates API now uses input
{ "serverTime" }and flat output{ "latest_server_time", "data": [ { "tb_name", "uuid", ...columns } ] }. - Deleted rows in pull-updates are returned as
{ "tb_name", "uuid", "action": "delete" }inside the samedataarray.
0.0.17 #
- Breaking: Push API payload changed from nested
changes[table][insert|update|delete]to flatdata[]items with fixed keystb_name,action,uuidplus table columns. - Push API response now returns
{ "data": [ { "tb_name", "action", "uuid" } ] }for successfully synced rows. - File multipart keys remain unchanged:
files[table][uuid][column].
0.0.16 #
- Added local sync queue optimization/compaction rules in
insertLocalto merge redundant pending insert, update, and delete tasks. - Added
getTaskByUuid,updateTask, anddeleteByIdtoSyncTaskDb.
0.0.15 #
- Added a shared
checkFileExistshelper utility. - Converted file checking and extraction to asynchronous
await file.exists()validation.
0.0.14 #
- Updated
_extractSyncFilesinApiServiceto support extracting multiple file paths represented as a List or JSON array of strings in sync payload.
0.0.13 #
- Made
_parseResponseasynchronous andawaitall SharedPreferences write operations forusersprofile data to guarantee profile fields are fully updated and readable before API resolution.
0.0.12 #
- Added
logoutLocalmethod to clear all sqlite tables, reset API tokens/sync state, and wipe cached SharedPreferences keys. - Automatically invoke
logoutLocalon successfulapiLogoutandapiDeleteAccountresponses. - Added generic typed preferences setters and getters (
setBool/getBool,setString/getString,setDouble/getDouble,setInt/getInt,setStringList/getStringList,setMap/getMap) with dynamic fallback default parameter options.
0.0.11 #
- Added
getPreferencemethod toBfsManagerto directly retrieve cached user profile preferences by column name or key.
0.0.10 #
- Automatically cache dynamic
userstable columns (user profile data) as key/value format in SharedPreferences from register, login, socialLogin, pull, and pullAll API responses.
0.0.9 #
- Added token check in
ApiService.postto throw an Exception immediately if a protected API endpoint is called when the Bearer token is null or empty. - Added validation checks in
BfsManager.pushChangesandBfsManager.pullUpdatesto return early without calling the server if the Bearer token is missing.
0.0.8 #
- Added
apiLogoutmethod to call the/logoutendpoint, clear cached auth tokens, and clear the local sync task queue and database tables. - Added
apiDeleteAccountmethod to call the/delete-accountendpoint, clear cached auth tokens, and wipe local database tables for user privacy. - Added
clearLocalDatabasehelper method to dynamically find and truncate all user database tables. - Added
clearAllTaskstoSyncTaskDb.
0.0.7 #
- Removed the UNIQUE constraint from the
uuidcolumn in thetb_sync_tasktable and added database upgrade support to version 2. - Updated the
insertLocalmethod to extract and use the record's actualuuidfrom the data payload map.
0.0.6 #
- Added serverTime response tracking in pullAll initial sync to cache the lastSyncTime correctly for subsequent pullUpdates.
0.0.5 #
- Updated package home page README.md with the latest step-by-step Gujarati integration guide.
0.0.4 #
- Added support for dynamic column file detection on nested push sync payloads.
- Scoped sync status responses to boolean true/false.
- Added PRAGMA table_info verification checks on insertions to ignore missing server columns dynamically.
- Added native support for JWT Register, Login, and Social Login tokens caching.
0.0.3 #
- Restructured step-by-step Gujarati integration guide in README.md.
0.0.2 #
- Added complete Gujarati integration and usage documentation to README.md.
0.0.1 #
- Initial release of the bfs_manager SQLite-to-Server synchronization package.