All notable changes to this library will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Allow event custom range filters in the past #4450.
- Added UiTextStyles.getTextStyleEx helper #4402.
- Added scheme parameter to UrlUtils.fixUrl #4402.
- Added StringUtils.firstNotEmpty helper #4402.
- Cleaned up Image & Audio Result data dispatch #4402.
- Standartized return type of loadUserPhoto and loadUserNamePronunciation #4402.
- Cleaned up social message deep link support #4572.
- Add delete message support to Social BB #534
- Add support for editing messages on the social block #529
- Add deep links for messages #516
- Use Social BB for Posts, Comments and Reactions (task in progress) #498.
- Acknowledge event.notification_settings field and APIs #4478.
- Prepared for directory content access and privacy edit in Core BB #4402.
- Added directory content access and privacy edit in Auth2 #4402.
- Removed voice recording caching in Auth2, improved user profiles coping and merging #4402.
- Added Messages model and service #506.
- Added Socal.loadConversation API #4536.
- Added urls parameter to Auth2.loadDirectoryAccounts API #4558.
- Added URL caching support in DeepLink service, removed it from other services #4561.
- Acknowledge post replies count #531.
- Added reference to app Storage settings in FlexUI #4531.
- Added DateTimeUtils.localDateTimeFileStampToString #4605.
- Added delimiter paramterer to StringUtils.fullName #4605.
- Update Social BB Deeplink to use Conversation instead of Post #518.
- Fix Social service requests for messaging #514.
- Fixed DeepLink.notifyUri API #4561.
- Fixed possible unhandled exception when parsing URLs.
- Upgraded url_launcher plugin to resolve build issue on Xcode 16.
- Survey Card widgets color explicitly set to be white #4385.
- Link / Unlink event to group #481.
- Added Places model and service #475.
- Create a triangle header image widget #488.
- Added deeplinking support to Places #491.
- Show sub-events for group members #474.
- Added new Survey fields #4243.
- Created SurveysQueryParam class for surveys query model #4243.
- Created notification for deletion of survey response #4243.
- Exposed low level APIs in services for accessing My Stored Data #4264.
- Android: crash on startup #4320.
- Upgrade Android app to target API level 34 and upgrade plugin versions to match that requirement #464.
- Use ISO 8601/RFC 3339 strings for survey start & end dates #4243.
- Introduce Groups.acceptMembershipMulti #4268.
- Upgrade to Flutter 3.22.2.
- Upgrade to Flutter 3.19.0 #435.
- Require minimal SDK version 2.17.0 #445.
- Init application services in parallel #408.
- SurveyPanel HeaderBar exposed for overriding #4020.
- Support for Group Report Abuse #4038.
- Extend customization of SliverAppBars #3827.
- Always check if RenderBox has size #4125.
- Upgrade to latest Firebase libraries #4220.
- Added Group post scheduling #4027.
- Added post type paramter to loadGroupPosts API #441.
- Created additional notifications for group post create/update/delete #441.
- Created separate classes for Auth2 permission, role and group, perform more precise permissions detection #445.
- Added isEmpty & isNotEmpty properties to Event2RegistrationDetails #4043.
- Added events2 query deep link #4041.
- Exposed scope in content attributes #4029.
- Implemented conditional content attributes #4134.
- Acknowledge group.topPаrentId field #4049.
- Truncate notification #4050.
- Implement file content cache #456
- Created StringCompareGit4143 extension for non-standard lexicographic sorting #4143.
- Added clearSafariVC API to RokwirePlugin, do not use it for now.
- Add "prompt":"login" parameter to OIDC login URL in Debug mode only.
- Fixed client paramter in loadEventsEx invocation from loadEvents API.
- Make sure to always return successfully refreshed token in Auth2 service.
- Fixed Content service dependency #447.
- Fixed RegExp definition for Git4143 canonical representation #4143.
- Added group stats caching #3829.
- Fixed tappable area of SliverToutHeaderBar back button #3827.
- Fix content service storing files #429.
- Content service upload/retrieve/delete profile voice record #3846.
- Import and use Font Awesome Pro icons #398.
- Favorite and admin entrues to Event2TypeFilter enum #413.
- Added deep copy functionality to ContentAttributes #3828.
- Acknowledged new start_time_after_null_end_time and start_time_before_null_end_time event2 time filter paramters #421.
- Added headerBar paramter to SurveyPanel constructor #3876.
- Added APIs for managing event groups on Groups BB #423.
- Add get file content API #425.
- Possibility for loading individual events #3956.
- Fixed image assets resolution #400.
- Replaced textScaleFactor usage with textScaler #406.
- Notify for success of add to calendar API, make sure to return right return value #3789.
- Cleaned up DeviceCalendar service #415.
- Fixed ContentAttributeRequirements clone #3828.
- Upgrade to Flutter 3.16.0 #402
- Extend AppToast functionality #418
- Allow static access to predefined colors and font styles in Styles #418
- Updated APIs for managing event groups on Groups BB #423.
- Set default preferences when user signs in #393.
- Acknowledged new Groups BB's API person identifier resolving #387.
- Acknowledged new Groups BB's v3 APIs for events #384.
- Acknowledge 'time' field for inbox messages #381.
- Load content attributes JSON from content service #280.
- Load different JSON assets from content service #280.
- Retire Assets service #280.
- Created and acknowledged at different places async versions of JSON encode/decode and collection equality checks #283.
- Move survey and rules logic from models to services #232.
- Cleaned up Explore interface #289.
- Load again content attributes JSON from content service #359.
- Build event time filters in local timezone #377.
- Upgrade to connectivity_plus #45.
- Survey creation tool #263.
- Added support for material icons to styles images #292.
- Events2 model and service, work in progress #288.
- Added client parameter to Events2.loadEvents and Network.post APIs #3401.
- Defined scopes for profile & prefs for transfer anonymous data to existing user account #332.
- Add query params to load surveys #340.
- More dynamic survey response cards #344.
- Added scope to content attributes global requirements #349.
- Initial handling of super and recurring events #351.
- Added progress to SectionSlantHeader #351.
- Added get all survey responses request #354.
- Added "Multi-person" event type #356.
- Added language selection capability to Localization service #361.
- Acknowledge new event2 model for sport events #363.
- Added HEAD request in Network service #3580.
- Added UrlUtils.fixUriAsync helper #3580.
- Added published flag to event #369.
- Added Pinch Zoom support for ModalImagePanel #3305.
- Override survey action summary #373
- Added registrationOccupancy to Event2PersonsResult and relevant utility methods #375.
- Upgrade dependencies for Flutter v3.10 #285
- Survey maximum score JSON encoding error #294
- Only return null on unsuccessful survey responses request #349
- Local notifications repeating weekly #365
- Groups load upcoming events #3645.
- String representation for "Attendance taker" event user role #3656.
- Display raw attribute value as it is if it does not persist as content attribite value #3743.
- Handle exceptions that Geolocator.getCurrentPosition could throw.
- Fixed processing analyticsUrl when sending notifyHttpResponse notification for Analytics #266.
- Fixed taps processing on Read More expandable text #269.
- Content attributes prepared for multiple scopes support #265.
- Use Core Url host to test online status in web panel #271.
- UrlUtis.isHostAvailable exposed to public #3052.
- Updated TZDateTimeUtils #3225.
- Always post "research_group" POST paramter in v2/groups and v2/user/groups API calls #275.
- Added footer widget in ExpandableText #3055.
- Added Uri fix utility #3112.
- Added NotificationService.subscribers getter #3070.
- Added UrlUtils.launchExternal #3129.
- Added UrlUtils.isValidUrl #3193.
- Added DateTimeUtils.min & max #3206.
- Added title parameters to SliverToutHeaderBar #3149.
- Created TZDateTimeUtils #3215.
- Created DateTimeUni extention #3215.
- Exposed DateTimeUni.timezoneUniOrLocal #3222.
- Username authentication #273
- Removed ExploreJsonHandler definition, not used any more #3070.
- Removed Explore.toJson definition, not used any more #3070.
- Switch to xCode 14.2.
- Delete poll notification is not a lifecycle notification any more #2173.
- Improve default handling for UIImages #193.
- Added miscellaneous helpers for GoogleMap plugin #243.
- Group filters renamed to attributes #246.
- Group's category and tags replaced by attributes #246.
- Updated Group's attributes logic #256.
- Updated Group's attributes logic #259.
- Clear unread notifications count when logged out.
- Formatting date times when using device local time zone #240.
- Fixed Groups copy constructor #246.
- Added hint in VerticalTitleValueSection #2892.
- Acknowledge the new group date fields #244.
- Added group filters #246.
- Added filters filter to all groups GET request #246.
- Load poll by id #2645.
- TextStyle acknowledge extends, override and inherit fields. Supports extending of existing styles #2932.
- Added content attributes support to pluging #246.
- Handle multiple encryption keys for limited secret access #254
- Removed category from inbox message model #237.
- Fix launchUrlString LaunchMode #167.
- Move "getContentString" method to Localization service #136.
- Improve SectionSlantHeader #211.
- Crash in header bar widget #2654.
- Crash on tapping image in detail panels #223.
- Survey bug fixes #219
- Privacy level is not getting saved property #222
- Missing close button from ModalImagePanel#227.
- Fixed Groups.notifyGroupCreated notification param #2683.
- Hide "Vote" button after user selectes all options in a poll #2776.
- Improve accessibility for surveys #234
- Image/icon abstraction #145
- Added TextStyle capability to pass custom metadata values like color or height #2311.
- Added TextStyle properties to Styles service. Added: decoration and wordSpacing #2311.
- Search group by name support hidden groups #2403.
- Added answers section to Auth2UserProfile #174.
- Intermediate work on "muted" and "unread" notifications #177.
- Add survey UI components #161.
- Introduce ModalImageHolder widget #2474.
- Introduced research projects #178.
- Survey rules local notifications action #179
- Acknowledge group member's notification preferences #198
- Added researchConfirmation flag to Groups #202.
- Survey rules remote notification action #188
- Added API for loading target audience count in Groups service #2544.
- Implement "Mark all as read" #2570.
- Survey improvements for BESSI #206
- Add additional group settings #2619.
- Delete survey responses request #210.
- Support font family references in text styles #213.
- Added Explore.exploreLocationDescription interface #2633.
- Support for FlexUI-based access widget #229.
- Fire local notification when message is read #2833.
- Optimized Groups /user/login API call #141.
- Android: Upgrade compileSdkVersion to 32 #147.
- Upgrade project to build with flutter 3.3.2 #158.
- Applied preliminary work on multiple brands support #149.
- Updated version of firebase_messaging plugin #2446.
- Store research questionnaire answers in account profile #181.
- Cleaned up group model.
- Hook Notifications BB message model changes #2530.
- Researh Project updates in group model #204.
- Filter open resource projects not to include projects where the current user is member, disable paging until this gets resolved on the backend #2540.
- Acknowledged 'exclude_my_groups' parameter for loading open research projects #2540.
- Omit null title/value in VerticalTitleValueSection #2542.
- ExploreLocation updated from ExplorePOI #220.
- Introduce Surveys BB #230
- Acknowledge the new fields "mute" and "read" for InboxMessage #2778.
- Read messages count from a proper json field #2833.
- Check if user has 'managed_group_admin' permission #2429.
- Show hidden groups only for admins - hide for all others #163.
- Search group by name support hidden groups #2403.
- Load single group post by id #2344.
- Created AppNotification service #143.
- Add reactions to group posts #151
- Acknowledge "can_poll" in nudges data model #2365.
- Fixed text overflow in TabWidget #152.
- Use simple getter for deep link redirect url #2065.
- Properly convert colors that contain adjacent zeros #122.
- Allow referring string values from app config in FlexUI service #118.
- Added Auth2UserPres.setFavorite method; use Iterable inetead of List for muliple favorites paramter #2065.
- FlexUI extended with content entry switch and multiple {content, rules} sets in single source #121.
- Acknowledged new paramters of 'report/abuse' API of Groups BB #2083.
- Refresh Auth2 account object instead of profile and prefs separately #132.
- Updated format of settings APIs in Auth2UserPrefs #2194.
- Do not load all groups on portions (paging) #125.
- Differ multi events and events that last more than one day #126.
- Added Config().appStoreId getter #2162.
- Added MapUtils.get2 helper #2169.
- Check if event ends in the same year as it starts #128.
- Load groups and members on portions (e.g. paging) #125.
- Added system configs in Auth2Account #132.
- Added int settings getter in Auth2UserPrefs #2207.
- Added config settings refs support for FlexUI enabled rules #2210.
- Added GeoFence location rules in FlexUI #62.
- GeoFence service updated to load regions from content BB #91.
- Cleaned up Favorites, prepare for UIUC 4 features #88.
- Preserve the order of Favorite items #88.
- StringUtils.capitalize extended to process sentences #88.
- Removed Group polls hook methods #1679.
- Do not delete automatically empty favorites sections #88.
- Updated Groups.reportAbuse API 1854.
- Update inbox Sent By message #1958.
- Check Post Nudges for list of group names or group with wild card #113.
- Updated format of Favorite.toString #2052.
- Remove check for attendance group for authman sync call #115.
- Fixed auth2AnonymousId storage key #79.
- Handle "leftToRight" horizontal direction in TrianglePainter widget #83.
- Update UserGroups when group firebase message is fired #1605.
- Fixed FlexUI service dependency #88.
- Fixed equality check in Auth2UserProfile.setFavorites #88.
- Send correct "ids" parameter when loading content items #106.
- Acknowledge the field for hidden group #81.
- Update Group API to hook polls #1617.
- Added API call for content items #1636
- Group Attendance #94.
- Cache attended group members #94.
- Added access to FlexUI content source #88.
- Added methods for updating entire category of favorites #88.
- StringUtils.capitalize extended with custom delimters #88.
- Added FavoriteItem class #88.
- Expose getter for user's first name #102.
- Added DayPart parser utility to DateTimeUtils #1822.
- Added Groups.reportAbuse API #1847.
- Added DateTimeUtils util methods #1692.
- Added debugDisplayName getter in Service interface #1869.
- Load group post templates from the backend #108.
- Added ListUtils.entry helper.
- Added delete API to Polls #1954.
- Defined equality operators to Event and Poll #2020.
- Bring back the old Polls BB #76.
- Group service: linkEventToGroup implements members param #1487.
- GroupPost implements members param #1450.
- Group service: implement loadGroupEventMemberSelection #1519.
- Provide possibility for skipping notification when privacy level is changed #63.
- Do not skip sending notification when changing privacy level #65.
- Update favorite icon availability for privacy level 4+ #68.
- Fixed crash on activity destroy in Android native side (#50).
- Image rotation before upload #58.
- Get, Create, Update and Delete user's profile picture #53.
- Send notification when user changes profile picture #61.
- Integrate new Polls BB #70.
- Updated homepage and author details in rokwire_plugin.podspec #34.
- Added miscelanious controls to UI section #2.
- Wait for applyLogin in Auth2.processLoginResponse #46.
- OIDC auth result codes #25.
- Add auth requests to new Core BB endpoints #19.
- Group rules in FlexUI #18.
- Fix issues with account linking #11.
- Added capability to filter staled analytics packets before sending them to log service #4.
- Added miscelanious controls to UI section #2.
- Added progress capability to RoundedButton #29.
- Match Core BB JSON keys in Auth Profile #22.
- Fixed crash in FlexContentWidget when no buttons definition persists.
- Android: plugin initialization #27.
- Do not acknowledge pending membership in FlexUI #31.
- Rokwire plugin moved in own GIT repo #1203.