Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1355 commits
Select commit Hold shift + click to select a range
8f1add2
fix onRemoveReaction test in flutter package
sachaarbonel Oct 6, 2021
1446b4c
cleanup some parameters in ReactionToggleIcon test
sachaarbonel Oct 6, 2021
c5d7eb6
fix onAddReaction test in *flutter package
sachaarbonel Oct 6, 2021
129b0d3
remove widget test OnAddChildReaction from core
sachaarbonel Oct 6, 2021
fa20508
fix goldens + StreamFeedApp debugShowCheckedModeBanner
sachaarbonel Oct 7, 2021
75547a9
remove unused golden icon grid
sachaarbonel Oct 7, 2021
f1805ba
chore: add chewie package dependency
GroovinChip Oct 7, 2021
156d3d1
feat: add video_package.dart
GroovinChip Oct 7, 2021
b394947
feat: basic video preview and player
GroovinChip Oct 7, 2021
883ce32
delete golden child reaction_toggle_icon_grid
sachaarbonel Oct 8, 2021
ef1b834
chore: add docs and debug property to MediaWidget
GroovinChip Oct 8, 2021
6215f0c
chore: remove print
GroovinChip Oct 8, 2021
109c4f7
chore: add a missing trailing comma to textarea.dart
GroovinChip Oct 8, 2021
cb39ff9
chore: run flutter format
GroovinChip Oct 8, 2021
fcce4bd
refactor Map<String, BehaviorSubject> to a controller
sachaarbonel Oct 8, 2021
1995955
chore: ignore some lints
GroovinChip Oct 8, 2021
89c4b6f
update docs
sachaarbonel Oct 11, 2021
b56a727
onAddChildReaction test wip
sachaarbonel Oct 12, 2021
6c6b0a8
wip onRemoveChildReaction test
sachaarbonel Oct 13, 2021
7260fe5
improve onAddChildReaction test
sachaarbonel Oct 13, 2021
8c184c2
onRemoveChildReaction test passes
sachaarbonel Oct 13, 2021
a801145
fix some lints
sachaarbonel Oct 14, 2021
af3be0c
const lint fix
sachaarbonel Oct 14, 2021
81ca1b0
fix some lints in core
sachaarbonel Oct 14, 2021
515db09
chore: show/hide GalleryHeader for video based on long press
GroovinChip Oct 14, 2021
9627f5f
delete commented code
sachaarbonel Oct 15, 2021
cda7d68
remove widget test on add child reaction test
sachaarbonel Oct 15, 2021
a0b6e8f
fix onRemoveChildReaction test flutter package
sachaarbonel Oct 15, 2021
9287886
format
sachaarbonel Oct 15, 2021
03ea783
fix child reaction onAddChildReaction test
sachaarbonel Oct 15, 2021
6256376
fix buildActivityToken test
sachaarbonel Oct 15, 2021
90225b9
fix CommentField debugFillProperties
sachaarbonel Oct 15, 2021
5168089
fix unshiftByKind Map<String, int> in/decrement
sachaarbonel Oct 15, 2021
9e2dbee
format
sachaarbonel Oct 15, 2021
1693237
Merge branch 'develop' into refactor-to-bloc
sachaarbonel Oct 18, 2021
0b0d61d
feat(flutter): make onAddActivity reactive
GroovinChip Oct 15, 2021
5b4dad0
chore(flutter): add todo
GroovinChip Oct 15, 2021
21c9b83
test(core): add test for reactive onAddedActivity
GroovinChip Oct 15, 2021
fa59a24
test(core): verify that addActivity was called
GroovinChip Oct 15, 2021
d3ed27f
chore(core): slight tweak to how activities get added to the stream
GroovinChip Oct 15, 2021
a025eaa
test(core): update activities test
GroovinChip Oct 15, 2021
134dcef
feat(core): add `List<FeedId>? to` to onAddActivity
GroovinChip Oct 18, 2021
ae5e10a
fix(core): fixed a bug that caused duplicate activity entries when te…
GroovinChip Oct 18, 2021
ad492e6
test(core): update activity bloc test
GroovinChip Oct 18, 2021
844435a
chore(core): run flutter format
GroovinChip Oct 18, 2021
18ce9a5
Remove stale TODO
GroovinChip Oct 18, 2021
c8d7d0d
Merge pull request #146 from GetStream/groovin_core_changes
sachaarbonel Oct 18, 2021
421cf7d
chore(flutter sample): add material design icons package
GroovinChip Oct 18, 2021
379ab54
feat(flutter sample): add basic feed
GroovinChip Oct 18, 2021
9ec3d49
feat(flutter sample): tweak drawer header
GroovinChip Oct 16, 2021
9f50174
feat(flutter sample): add compose screen
GroovinChip Oct 18, 2021
d2d5a9f
chore(flutter sample): minor changes
GroovinChip Oct 16, 2021
195597b
chore(flutter sample): minor cleanup from cherry-pick
GroovinChip Oct 18, 2021
3a89eb7
feat(flutter sample): add google fonts
GroovinChip Oct 18, 2021
fefa056
chore(flutter): run flutter format
GroovinChip Oct 18, 2021
6331bdf
feat(flutter sample): add basic profile
GroovinChip Oct 16, 2021
76cd382
feat(flutter sample): pop drawer on profile navigation
GroovinChip Oct 18, 2021
f442258
feat(flutter sample): Add follow/unfollow button to profile screen
GroovinChip Oct 19, 2021
761540f
feat(flutter sample): create FeedClient InheritedWidget and refactor
GroovinChip Oct 19, 2021
6400b09
Merge pull request #147 from GetStream/sample_app_add_new_activity
GroovinChip Oct 19, 2021
0b80136
feat(core): add currentUser getter
GroovinChip Oct 19, 2021
ef79d4e
chore(flutter sample): refactor out FeedClient InheritedWidget in fav…
GroovinChip Oct 19, 2021
74c9445
chore(flutter sample): refactor out FeedClient InheritedWidget part 2
GroovinChip Oct 19, 2021
f1b5ec7
feat(flutter sample): post activities to user and timeline feeds
GroovinChip Oct 19, 2021
fe7792a
feat(flutter): make CommentField Avatar show current user's avatar
GroovinChip Oct 19, 2021
4abe7fe
chore(flutter): revert showing the activity's actor avatar
GroovinChip Oct 19, 2021
6977c0e
feat(core): show the current user's avatar in CommentField
GroovinChip Oct 19, 2021
e220991
chore(core): remove dead line
GroovinChip Oct 19, 2021
7910cc7
chore(flutter sample): update apiKey comment
GroovinChip Oct 19, 2021
630b827
chore(flutter sample): address PR feedback
GroovinChip Oct 19, 2021
c21eae2
chore(flutter sample): cleanup after codespaces changes
GroovinChip Oct 19, 2021
913c5ae
Merge branch 'refactor-to-bloc' into sample_app_profile_page
GroovinChip Oct 19, 2021
e39e773
Merge pull request #148 from GetStream/sample_app_profile_page
sachaarbonel Oct 19, 2021
ecdae27
feat(core): added follow, unfollow, and isFollowingUser functions
GroovinChip Oct 19, 2021
b75f651
test(core): added placeholder tests for follow, unfollow, and isFollo…
GroovinChip Oct 19, 2021
bf7d530
Merge branch 'refactor-to-bloc' into core_comment_field_avatar
GroovinChip Oct 19, 2021
a341756
Update build.yaml
sachaarbonel Oct 19, 2021
a4ec9eb
Merge pull request #145 from GetStream/video
sachaarbonel Oct 19, 2021
1c88b29
test(core): added tests for follow, unfollow, and isFollowingUser fun…
GroovinChip Oct 19, 2021
d49533d
test(core): clean up reactions_bloc_test.dart by extracting user ID's…
GroovinChip Oct 19, 2021
8183e45
chore(flutter sample): refactor to use the new functions from core
GroovinChip Oct 19, 2021
133aa19
chore(core): run flutter format
GroovinChip Oct 19, 2021
7de088b
test(flutter): fix failing tests
GroovinChip Oct 21, 2021
23fc44a
Merge branch 'core_comment_field_avatar' into core_follows
GroovinChip Oct 21, 2021
bdc1051
test(flutter): fix failing tests part 2
GroovinChip Oct 21, 2021
37eae54
Merge branch 'core_comment_field_avatar' into core_follows
GroovinChip Oct 21, 2021
f83221c
chore(flutter): run flutter format
GroovinChip Oct 21, 2021
8eaca1d
Merge branch 'core_comment_field_avatar' into core_follows
GroovinChip Oct 21, 2021
746faf8
chore(flutter): commented test code
GroovinChip Oct 21, 2021
056f1a7
Merge branch 'core_comment_field_avatar' into core_follows
GroovinChip Oct 21, 2021
b81ed94
Merge pull request #149 from GetStream/core_comment_field_avatar
sachaarbonel Oct 21, 2021
5b7f7a8
Merge pull request #150 from GetStream/core_follows
sachaarbonel Oct 21, 2021
19a57ad
chore: temporarily remove public_member_api_docs
HayesGordon Oct 22, 2021
1dcd209
refactor: StreamFeedApp and type definition names
HayesGordon Oct 22, 2021
22748cb
fix analyzer errors
sachaarbonel Oct 22, 2021
3f16620
format
sachaarbonel Oct 22, 2021
b316f33
fix casting in inherited widget
sachaarbonel Oct 22, 2021
5f5919f
fix Open the dialog and tap "yes" test
sachaarbonel Oct 22, 2021
5f227a2
refactor: rename FeedBlocProvider to FeedProvider
HayesGordon Oct 22, 2021
238fe0d
feat(llc): refactor setUser so that the user token can be reset at an…
GroovinChip Oct 22, 2021
8b49951
feat(flutter sample): add stream_logo.png image asset
GroovinChip Oct 22, 2021
3f9715a
chore(core): make GenericFeedBloc not take a final StreamFeedClient
GroovinChip Oct 22, 2021
48c5da9
feat(llc): introduce the `reauthenticate` function
GroovinChip Oct 24, 2021
43e2596
chore(flutter): add missing userId field
GroovinChip Oct 24, 2021
4b9f135
chore(core): make client final again
GroovinChip Oct 24, 2021
cde5fe6
chore(flutter sample): null safety updates, use new reauthenticate fu…
GroovinChip Oct 24, 2021
a8d5fe8
chore(flutter sample): pass userId in timeline feed
GroovinChip Oct 24, 2021
27245fe
fix FlatFeedCore test
sachaarbonel Oct 25, 2021
20581ab
chore(core): remove useless reauthenticate method
GroovinChip Oct 25, 2021
6519e4c
feat(flutter sample): clear activities on "logout"
GroovinChip Oct 25, 2021
a193802
feat(core): add clear activities function
GroovinChip Oct 25, 2021
a1f8a8d
refactor(core): refactor how following/unfollowing works
GroovinChip Oct 25, 2021
7ef391c
chore(flutter): add missing feedGroup to CommentView
GroovinChip Oct 25, 2021
3c22d66
chore(flutter sample): add stream mixin to compose screen
GroovinChip Oct 25, 2021
86ab9cc
chore(flutter sample): add stream mixin to profile screen
GroovinChip Oct 25, 2021
9ccc9da
chore(flutter sample): remove 'to' field when posting an activity
GroovinChip Oct 25, 2021
5d14c10
chore(flutter sample): use a BackButton to override navigator behavior
GroovinChip Oct 25, 2021
6500dcd
chore(flutter sample): use bloc.currentUser.id if widget.user.id is null
GroovinChip Oct 25, 2021
698543d
chore(core): attempt to fix activity duplication issue
GroovinChip Oct 25, 2021
ea0503e
refactor(flutter) Rename FlatActivityListPage to FlatFeedListView
GroovinChip Oct 25, 2021
178f3fd
chore(flutter) Add missing trailing comma
GroovinChip Oct 25, 2021
96cfa9e
Merge branch 'refactor-to-bloc' into flutter_rename_flat_activity_lis…
GroovinChip Oct 25, 2021
0dc7761
activities controller to handle feedGroup
sachaarbonel Oct 25, 2021
39a1c70
missing init method
sachaarbonel Oct 25, 2021
a7024ed
use init method
sachaarbonel Oct 25, 2021
602097d
typo
sachaarbonel Oct 25, 2021
d31b8e3
clearAllActivities +addError
sachaarbonel Oct 25, 2021
8ba69af
clearAllActivities in bloc
sachaarbonel Oct 25, 2021
4351203
chore(core): go back to caching
GroovinChip Oct 25, 2021
c1812d3
chore(flutter sample): use new clearAllActivities
GroovinChip Oct 25, 2021
a7afbef
chore(flutter sample): remove deprecated back button
GroovinChip Oct 25, 2021
85b58b5
init controller if no value
sachaarbonel Oct 25, 2021
42c0acb
Revert "init controller if no value"
GroovinChip Oct 25, 2021
c0a4525
chore(core): remove deprecated lists
GroovinChip Oct 25, 2021
f001ff9
fix(core) fix isFollowingUser
GroovinChip Oct 25, 2021
f554547
refactor(core) refactor how follow/unfollow works
GroovinChip Oct 25, 2021
8ca9f24
chore(flutter sample): use refactored follow/unfollow functions
GroovinChip Oct 25, 2021
43e907f
test(core): fix follow/unfollow tests
GroovinChip Oct 25, 2021
6370fac
refactor(core): remove navigator key from InheritedWidget
GroovinChip Oct 25, 2021
68260c7
fix debugFillProperties ActivityWidget
sachaarbonel Oct 25, 2021
a1b68cc
fix activity test
sachaarbonel Oct 25, 2021
36314d4
fix some debugFillProperties tests
sachaarbonel Oct 25, 2021
5eb500d
fix AlertDialog tests
sachaarbonel Oct 25, 2021
34e10d2
fix CommentField test
sachaarbonel Oct 25, 2021
c1a67d3
fix ReactionListPage test
sachaarbonel Oct 25, 2021
1d7b178
fix(core): fix ReactionsListCore not being reactive
GroovinChip Oct 25, 2021
0029455
refactor(flutter): rename ReactionListPage to ReactionListView
GroovinChip Oct 25, 2021
7db123f
feat(flutter): ensure users can only delete their own activities
GroovinChip Oct 25, 2021
02cb116
chore(core): minor formatting updates to activities_bloc.dart
GroovinChip Oct 25, 2021
eb8e020
specify generics in inheritedwidget error message
sachaarbonel Oct 26, 2021
7b5d5b6
chore(core): fix spacing issue from previous commit
GroovinChip Oct 26, 2021
06d8192
fix generics in reaction list core
sachaarbonel Oct 26, 2021
280cc3f
fix(core): fix broken ReactionListCore
GroovinChip Oct 26, 2021
1d0e25d
fix(flutter): fix LikeButton not being reactive
GroovinChip Oct 26, 2021
0a6bf1e
fix(flutter sample): use nameJsonKey in flat feeds
GroovinChip Oct 26, 2021
6b2b13f
refactor(flutter sample): refactor SampeUser class
GroovinChip Oct 26, 2021
8df0469
chore(flutter sample): turn off logs
GroovinChip Oct 26, 2021
bc39f1c
feat(flutter sample) add more to theme
GroovinChip Oct 26, 2021
374c710
feat(flutter sample): use 'full_name' in drawer header
GroovinChip Oct 26, 2021
86b87ac
fix(flutter): pass nameJsonKey to CommentView
GroovinChip Oct 26, 2021
4a89776
test(flutter): fix failing tests in activity_test.dart
GroovinChip Oct 26, 2021
0e29d73
test(flutter): fix failing tests in comment_test.dart
GroovinChip Oct 26, 2021
fbfafaa
test(flutter): fix failing tests in user_bar_test.dart
GroovinChip Oct 26, 2021
2edc306
fix Cannot remove from an unmodifiable list
sachaarbonel Oct 26, 2021
63668f7
Merge branch 'core_refactor_setuser' of github.com:GetStream/stream-f…
GroovinChip Oct 26, 2021
dbbf66e
test(flutter): fix failing tests in button_test.dart
GroovinChip Oct 26, 2021
eeb10e3
fix AlertDialog Comment test
sachaarbonel Oct 26, 2021
91526da
test(flutter): fix failing tests in dialogs_test.dart
GroovinChip Oct 26, 2021
f18ef84
test(core): fix failing tests in flat_feed_core_test.dart
GroovinChip Oct 26, 2021
dd1fc40
test(core): fix failing tests in reactions_list_core_test.dart
GroovinChip Oct 26, 2021
298cb30
chore(core): make activitiesController late
GroovinChip Oct 26, 2021
406648f
test(core): fix failing tests in reactions_bloc_test.dart
GroovinChip Oct 26, 2021
7e68768
chore(core): clean up reactions_bloc_test.dart
GroovinChip Oct 26, 2021
fdcf8d8
Merge branch 'flutter_rename_flat_activity_list_page' into core_refac…
GroovinChip Oct 26, 2021
bf5ac1c
Merge branch 'refactor-to-bloc' into core_refactor_setuser
GroovinChip Oct 26, 2021
e9d4976
chore(core): run flutter format
GroovinChip Oct 26, 2021
669209e
chore(flutter) run flutter format
GroovinChip Oct 26, 2021
19acd5d
cleanup a bit
sachaarbonel Oct 26, 2021
b4c0dbc
remove unused debug utility
sachaarbonel Oct 27, 2021
84e07d6
Merge pull request #153 from GetStream/core_refactor_setuser
sachaarbonel Oct 27, 2021
d637de9
Merge branch 'develop' into refactor-to-bloc
sachaarbonel Oct 27, 2021
017c24e
fix duplicate key in pubspec
sachaarbonel Oct 27, 2021
f96a651
clean up some comments
sachaarbonel Oct 27, 2021
130fefc
fix hardcoded trackAnalytics label in onAddActivity
sachaarbonel Oct 27, 2021
c94d4b2
clean up example
sachaarbonel Oct 27, 2021
08a91fa
core: bloc folder with provider and controllers
sachaarbonel Oct 27, 2021
130a64c
visibleForTesting on extensions
sachaarbonel Oct 27, 2021
af2adb2
rename ReactionsControllers to ReactionsController
sachaarbonel Oct 27, 2021
deb4cd5
rename ActivitiesControllers to ActivitiesController
sachaarbonel Oct 27, 2021
d5624cb
rename some test files
sachaarbonel Oct 27, 2021
c5af363
rename folder state in test to states
sachaarbonel Oct 27, 2021
07c0dae
document some internal methods
sachaarbonel Oct 27, 2021
b9a4415
const lint
sachaarbonel Oct 27, 2021
fb76830
reorganize methods order
sachaarbonel Oct 27, 2021
01eb4d9
update some docs and todo
sachaarbonel Oct 27, 2021
223d1c8
make onRemoveActivity reactive
sachaarbonel Oct 27, 2021
306c5ef
oupsy
sachaarbonel Oct 27, 2021
fcf73cd
format
sachaarbonel Oct 27, 2021
4c3273e
format flutter example
sachaarbonel Oct 27, 2021
48bf941
remove some comments
sachaarbonel Oct 27, 2021
68e611a
wip snippet in README
sachaarbonel Oct 27, 2021
a989c32
fix typo
sachaarbonel Oct 27, 2021
d5ea496
fix typo in README
sachaarbonel Oct 27, 2021
12f9cc8
Merge pull request #140 from GetStream/refactor-to-bloc
sachaarbonel Oct 28, 2021
8a9d2b8
llc: remove connect keyword from factory method
sachaarbonel Oct 28, 2021
49ef74c
fix analyzer
sachaarbonel Oct 28, 2021
a8a287d
Merge branch 'master' into merge
sachaarbonel Oct 28, 2021
2aec61c
fix duplicate key
sachaarbonel Oct 28, 2021
9870995
fix duplicate keys issue in pubspec
sachaarbonel Oct 28, 2021
fd4b92e
format
sachaarbonel Oct 28, 2021
33e6aaf
Merge pull request #158 from GetStream/merge
sachaarbonel Oct 28, 2021
6f9b5bc
Merge branch 'develop' into release-0.4.0
sachaarbonel Oct 29, 2021
8962fca
fix merge conflict
sachaarbonel Oct 29, 2021
32224e9
remove stream_feed_flutter entry from build.yaml
sachaarbonel Oct 29, 2021
34a541c
update readme
sachaarbonel Oct 29, 2021
5050e8d
update code docs typo
sachaarbonel Oct 29, 2021
ad10423
update links in README
sachaarbonel Oct 29, 2021
99fca54
add time now field in onAddActivity
sachaarbonel Oct 29, 2021
4c4537d
update code docs
sachaarbonel Oct 29, 2021
16d2c10
update docs
sachaarbonel Oct 29, 2021
ff5bf44
update root README to reflect the connect BC
sachaarbonel Oct 29, 2021
0f5b67d
renme generic file name to feed_bloc
sachaarbonel Oct 29, 2021
6c00106
update typedef docs
sachaarbonel Oct 29, 2021
30a7c86
update core changelog
sachaarbonel Oct 29, 2021
c0cafa6
update core readme docs
sachaarbonel Oct 29, 2021
4beb44f
llc changelog wip
sachaarbonel Oct 29, 2021
f26b64f
llc: update changelog
sachaarbonel Oct 29, 2021
980e48b
update changelog
sachaarbonel Oct 29, 2021
8eb6b1c
typo in README
sachaarbonel Oct 29, 2021
b828ffb
fix typo
sachaarbonel Oct 29, 2021
819df06
llc: bump version
sachaarbonel Oct 29, 2021
540add3
get rid of occurences of connect in README
sachaarbonel Oct 29, 2021
75ceee2
core + llc: bump constraints
sachaarbonel Oct 29, 2021
7879f90
rearrange llc scaffold + export EnrichedActivity typedef
sachaarbonel Oct 29, 2021
dda3ea8
update some docs
sachaarbonel Oct 29, 2021
c35c998
add some code snipets
sachaarbonel Oct 29, 2021
4b54145
Update packages/stream_feed_flutter_core/README.md
sachaarbonel Oct 29, 2021
de112a0
Update packages/stream_feed/CHANGELOG.md
sachaarbonel Oct 29, 2021
652d0b0
modify changelog entry
sachaarbonel Oct 29, 2021
448dd6a
put the accent on docs convenient typedefs instead of generics
sachaarbonel Oct 29, 2021
b006118
docs: genericParameters macro
sachaarbonel Oct 29, 2021
69e0d6a
more docs
sachaarbonel Oct 29, 2021
316e5c4
more doc updates
sachaarbonel Oct 29, 2021
6f732ae
format
sachaarbonel Oct 29, 2021
23849e3
revert time onAddActivity
sachaarbonel Oct 29, 2021
b107cad
update date in changelog
sachaarbonel Oct 29, 2021
aa670de
remove occurences of chat
sachaarbonel Oct 29, 2021
942c56d
replace dart test with flutter_test
sachaarbonel Oct 29, 2021
6a6bf23
change date in changelog
sachaarbonel Oct 29, 2021
4da6036
update pubspec with published v0.4.0 of llc
sachaarbonel Oct 29, 2021
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 8 additions & 4 deletions .github/workflows/build.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -57,12 +57,16 @@ jobs:

- name: Post Codecov report
run: bash <(curl -s https://codecov.io/bash) -t ${{ secrets.CODECOV_TOKEN }}

- uses: VeryGoodOpenSource/very_good_coverage@v1.1.1
- uses: VeryGoodOpenSource/very_good_coverage@v1.2.0
with:
path: packages/stream_feed/coverage/lcov.info
min_coverage: 82
- uses: VeryGoodOpenSource/very_good_coverage@v1.1.1
min_coverage: 81
- uses: VeryGoodOpenSource/very_good_coverage@v1.2.0
with:
path: packages/faye_dart/coverage/lcov.info
min_coverage: 49
- uses: VeryGoodOpenSource/very_good_coverage@v1.2.0
with:
path: packages/stream_feed_flutter_core/coverage/lcov.info
min_coverage: 65
4 changes: 3 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -29,4 +29,6 @@
build/
example/pubspec.lock
coverage.lcov
coverage/
coverage/
packages/stream_feed_flutter/example/.flutter-plugins-dependencies
packages/stream_feed_flutter/example/.flutter-plugins-dependencies
8 changes: 4 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -50,10 +50,10 @@ const apiKey = 'my-API-key';
const secret = 'my-API-secret';

// Instantiate a new client (server side)
var client = StreamFeedClient.connect(apiKey, secret: secret);
var client = StreamFeedClient(apiKey, secret: secret);

// Optionally supply the app identifier and an options object specifying the data center to use and timeout for requests (15s)
client = StreamFeedClient.connect(apiKey,
client = StreamFeedClient(apiKey,
secret: secret,
appId: 'yourappid',
options: StreamHttpClientOptions(
Expand All @@ -70,7 +70,7 @@ final userToken = client.frontendToken('the-user-id');

```dart
// Instantiate new client with a user token
var client = StreamFeedClient.connect(apiKey, token: Token('userToken'));
var client = StreamFeedClient(apiKey, token: Token('userToken'));
```

### 🔮 Examples
Expand Down Expand Up @@ -235,7 +235,7 @@ Stream uses [Faye](https://faye.jcoglan.com) for realtime notifications. Below i
```dart

// ⚠️ userToken is generated server-side (see previous section)
final client = StreamFeedClient.connect('YOUR_API_KEY', token: userToken,appId: 'APP_ID');
final client = StreamFeedClient('YOUR_API_KEY', token: userToken,appId: 'APP_ID');
final user1 = client.flatFeed('user', '1');

// subscribe to the changes
Expand Down
4 changes: 1 addition & 3 deletions analysis_options.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,6 @@ linter:
- use_key_in_widget_constructors
- valid_regexps
- always_declare_return_types
- always_put_required_named_parameters_first
- always_require_non_null_named_parameters
- annotate_overrides
- avoid_bool_literals_in_conditional_expressions
Expand Down Expand Up @@ -96,7 +95,6 @@ linter:
- prefer_constructors_over_static_methods
- prefer_contains
- prefer_equal_for_default_values
- prefer_expression_function_bodies
- prefer_final_fields
- prefer_final_in_for_each
- prefer_final_locals
Expand All @@ -116,7 +114,7 @@ linter:
- prefer_spread_collections
- prefer_typing_uninitialized_variables
- provide_deprecation_message
- public_member_api_docs
# - public_member_api_docs
- recursive_getters
- sized_box_for_whitespace
- slash_for_doc_comments
Expand Down
34 changes: 23 additions & 11 deletions example/lib/activity_item.dart
Original file line number Diff line number Diff line change
@@ -1,20 +1,26 @@
import 'package:example/app_user.dart';
import 'package:flutter/foundation.dart';
import 'package:flutter/material.dart';
import 'package:stream_feed/stream_feed.dart';
import 'package:timeago/timeago.dart' as timeago;

import 'app_user.dart';

//ignore: public_member_api_docs
class ActivityCard extends StatelessWidget {
final Activity activity;
//ignore: public_member_api_docs
const ActivityCard({
required this.activity,
Key? key,
}) : super(key: key);

const ActivityCard({Key? key, required this.activity}) : super(key: key);
//ignore: public_member_api_docs
final Activity activity;

@override
Widget build(BuildContext context) {
final user = appUsers
.firstWhere((it) => createUserReference(it.id) == activity.actor);
return Padding(
padding: const EdgeInsets.symmetric(horizontal: 16.0, vertical: 8),
padding: const EdgeInsets.symmetric(horizontal: 16, vertical: 8),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Expand All @@ -23,14 +29,14 @@ class ActivityCard extends StatelessWidget {
CircleAvatar(
child: Text(user.name[0]),
),
SizedBox(width: 16),
const SizedBox(width: 16),
Expanded(
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Text(
user.name,
style: TextStyle(
style: const TextStyle(
fontSize: 18,
),
),
Expand All @@ -39,7 +45,7 @@ class ActivityCard extends StatelessWidget {
activity.time!,
allowFromNow: true,
)}',
style: TextStyle(
style: const TextStyle(
fontWeight: FontWeight.w300,
),
),
Expand All @@ -48,15 +54,21 @@ class ActivityCard extends StatelessWidget {
)
],
),
SizedBox(height: 16),
const SizedBox(height: 16),
Text(
activity.extraData!['tweet'] as String,
style: TextStyle(
activity.extraData!['tweet'].toString(),
style: const TextStyle(
fontSize: 24,
),
),
],
),
);
}

@override
void debugFillProperties(DiagnosticPropertiesBuilder properties) {
super.debugFillProperties(properties);
properties.add(DiagnosticsProperty<Activity>('activity', activity));
}
}
19 changes: 13 additions & 6 deletions example/lib/add_activity_dialog.dart
Original file line number Diff line number Diff line change
@@ -1,6 +1,10 @@
import 'package:flutter/material.dart';

//ignore: public_member_api_docs
class AddActivityDialog extends StatefulWidget {
//ignore: public_member_api_docs
const AddActivityDialog({Key? key}) : super(key: key);

@override
_AddActivityDialogState createState() => _AddActivityDialogState();
}
Expand All @@ -9,28 +13,31 @@ class _AddActivityDialogState extends State<AddActivityDialog> {
final _activityController = TextEditingController();

@override
//ignore: prefer_expression_function_bodies
Widget build(BuildContext context) {
return Dialog(
child: Padding(
padding: const EdgeInsets.all(24.0),
padding: const EdgeInsets.all(24),
child: Column(
mainAxisSize: MainAxisSize.min,
children: [
TextField(
controller: _activityController,
decoration: const InputDecoration(
hintText: "What's happening?",
border: const OutlineInputBorder(),
border: OutlineInputBorder(),
),
),
SizedBox(height: 12),
RaisedButton(
const SizedBox(height: 12),
ElevatedButton(
onPressed: () {
final message = _activityController.text;
Navigator.pop<String>(context, message);
},
color: Colors.blue,
child: Text(
style: ElevatedButton.styleFrom(
primary: Colors.blue,
),
child: const Text(
'POST ACTIVITY',
style: TextStyle(
color: Colors.white,
Expand Down
33 changes: 26 additions & 7 deletions example/lib/app_user.dart
Original file line number Diff line number Diff line change
@@ -1,26 +1,43 @@
//ignore: public_member_api_docs
class AppUser {
final String id;
final String name;
final String token;

//ignore: public_member_api_docs
const AppUser.sahil()
: id = 'sahil-kumar',
name = 'Sahil Kumar',
token =
'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyX2lkIjoic2FoaWwta3VtYXIifQ.d6RW5eZedEl949w-IeZ40Ukji3yXfFnMw3baLsow028';
'''eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyX2lkIjoic2FoaWwta3VtYXIifQ.d6RW5eZedEl949w-IeZ40Ukji3yXfFnMw3baLsow028''';

//ignore: public_member_api_docs
const AppUser.sacha()
: id = 'sacha-arbonel',
name = 'Sacha Arbonel',
token =
'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyX2lkIjoic2FjaGEtYXJib25lbCJ9.fzDKEyiQ40J4YYgtZxpeQhn6ajX-GEnKZOOmcb-xa7M';
'''eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyX2lkIjoic2FjaGEtYXJib25lbCJ9.fzDKEyiQ40J4YYgtZxpeQhn6ajX-GEnKZOOmcb-xa7M''';

//ignore: public_member_api_docs
const AppUser.nash()
: id = 'neevash-ramdial',
name = 'Neevash Ramdial',
token =
'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyX2lkIjoibmVldmFzaC1yYW1kaWFsIn0.yKqSehu_O5WJGh3-aa5qipnBRs7Qtue-1T9TZhT2ejw';
'''eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyX2lkIjoibmVldmFzaC1yYW1kaWFsIn0.yKqSehu_O5WJGh3-aa5qipnBRs7Qtue-1T9TZhT2ejw'''; //ignore: public_member_api_docs

//ignore: public_member_api_docs
const AppUser.reuben()
: id = 'groovin',
name = 'Reuben Turner',
token =
'''eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyX2lkIjoiZ3Jvb3ZpbiJ9.6uMlHDLHpiHubWbcTztZO7NbFFZozuhwgNdrGgObgTE''';

//ignore: public_member_api_docs
final String id;

//ignore: public_member_api_docs
final String name;

//ignore: public_member_api_docs
final String token;

//ignore: public_member_api_docs
Map<String, Object> get data {
final parts = name.split(' ');
return {
Expand All @@ -31,8 +48,10 @@ class AppUser {
}
}

//ignore: public_member_api_docs
const appUsers = [
AppUser.sahil(),
AppUser.sacha(),
AppUser.nash(),
AppUser.reuben(),
];
7 changes: 5 additions & 2 deletions example/lib/extension.dart
Original file line number Diff line number Diff line change
@@ -1,13 +1,16 @@
import 'package:example/client_provider.dart';
import 'package:flutter/material.dart';
import 'package:stream_feed/stream_feed.dart';

import 'client_provider.dart';

//ignore: public_member_api_docs
extension ProviderX on BuildContext {
//ignore: public_member_api_docs
StreamFeedClient get client => ClientProvider.of(this).client;
}

//ignore: public_member_api_docs
extension Snackbar on BuildContext {
//ignore: public_member_api_docs
void showSnackBar(final String message) {
ScaffoldMessenger.of(this).showSnackBar(SnackBar(content: Text(message)));
}
Expand Down
26 changes: 19 additions & 7 deletions example/lib/home.dart
Original file line number Diff line number Diff line change
@@ -1,27 +1,41 @@
import 'package:example/people_screen.dart';
import 'package:example/profile_screen.dart';
import 'package:example/timeline_screen.dart';
import 'package:flutter/foundation.dart';
import 'package:flutter/material.dart';
import 'package:stream_feed/stream_feed.dart';

//ignore: public_member_api_docs
class HomeScreen extends StatefulWidget {
final StreamUser currentUser;
//ignore: public_member_api_docs
const HomeScreen({
required this.currentUser,
Key? key,
}) : super(key: key);

const HomeScreen({Key? key, required this.currentUser}) : super(key: key);
//ignore: public_member_api_docs
final StreamUser currentUser;

@override
_HomeScreenState createState() => _HomeScreenState();

@override
void debugFillProperties(DiagnosticPropertiesBuilder properties) {
super.debugFillProperties(properties);
properties.add(DiagnosticsProperty<StreamUser>('currentUser', currentUser));
}
}

class _HomeScreenState extends State<HomeScreen> {
int _currentIndex = 0;

@override
//ignore: prefer_expression_function_bodies
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Row(
children: [
children: const [
Icon(Icons.bike_scooter_rounded),
SizedBox(width: 16),
Text('Tweet It!'),
Expand All @@ -38,14 +52,12 @@ class _HomeScreenState extends State<HomeScreen> {
),
bottomNavigationBar: BottomNavigationBar(
selectedItemColor: Colors.blue,
elevation: 16.0,
elevation: 16,
type: BottomNavigationBarType.fixed,
iconSize: 22,
selectedFontSize: 14,
unselectedFontSize: 12,
currentIndex: _currentIndex,
onTap: (index) => setState(() => _currentIndex = index),
items: [
items: const [
BottomNavigationBarItem(
backgroundColor: Colors.black,
icon: Icon(Icons.timeline),
Expand Down
Loading