@oxyhq/services 10.2.11 → 10.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/ui/components/FollowButton.js +107 -1
- package/lib/commonjs/ui/components/FollowButton.js.map +1 -1
- package/lib/commonjs/ui/hooks/useFollow.js +7 -0
- package/lib/commonjs/ui/hooks/useFollow.js.map +1 -1
- package/lib/commonjs/ui/hooks/useFollow.types.js +4 -0
- package/lib/commonjs/ui/stores/followStore.js +68 -0
- package/lib/commonjs/ui/stores/followStore.js.map +1 -1
- package/lib/module/index.js.map +1 -1
- package/lib/module/ui/components/FollowButton.js +109 -3
- package/lib/module/ui/components/FollowButton.js.map +1 -1
- package/lib/module/ui/hooks/useFollow.js +7 -0
- package/lib/module/ui/hooks/useFollow.js.map +1 -1
- package/lib/module/ui/hooks/useFollow.types.js +2 -0
- package/lib/module/ui/stores/followStore.js +68 -0
- package/lib/module/ui/stores/followStore.js.map +1 -1
- package/lib/typescript/commonjs/index.d.ts +1 -0
- package/lib/typescript/commonjs/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/FollowButton.d.ts +24 -4
- package/lib/typescript/commonjs/ui/components/FollowButton.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/hooks/useFollow.d.ts +3 -1
- package/lib/typescript/commonjs/ui/hooks/useFollow.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/hooks/useFollow.types.d.ts +2 -0
- package/lib/typescript/commonjs/ui/hooks/useFollow.types.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/stores/followStore.d.ts +2 -1
- package/lib/typescript/commonjs/ui/stores/followStore.d.ts.map +1 -1
- package/lib/typescript/module/index.d.ts +1 -0
- package/lib/typescript/module/index.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/FollowButton.d.ts +24 -4
- package/lib/typescript/module/ui/components/FollowButton.d.ts.map +1 -1
- package/lib/typescript/module/ui/hooks/useFollow.d.ts +3 -1
- package/lib/typescript/module/ui/hooks/useFollow.d.ts.map +1 -1
- package/lib/typescript/module/ui/hooks/useFollow.types.d.ts +2 -0
- package/lib/typescript/module/ui/hooks/useFollow.types.d.ts.map +1 -1
- package/lib/typescript/module/ui/stores/followStore.d.ts +2 -1
- package/lib/typescript/module/ui/stores/followStore.d.ts.map +1 -1
- package/package.json +2 -2
- package/src/index.ts +1 -0
- package/src/ui/components/FollowButton.tsx +154 -10
- package/src/ui/hooks/useFollow.ts +8 -1
- package/src/ui/hooks/useFollow.types.ts +3 -0
- package/src/ui/stores/followStore.ts +47 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useCallback","useMemo","useEffect","useFollowStore","useOxy","logger","loggerUtil","useShallow","useFollow","userId","oxyServices","canUsePrivateApi","userIds","Array","isArray","isSingleUser","isFollowing","s","followingUsers","isLoading","loadingUsers","error","errors","followerCount","followerCounts","followingCount","followingCounts","isLoadingCounts","loadingCounts","followData","data","uid","multiUserLoadingState","isAnyLoading","hasAnyError","allFollowing","allNotFollowing","some","every","toggleFollow","Error","currentlyFollowing","getState","toggleFollowUser","setFollowStatus","following","setFollowingStatus","fetchStatus","fetchFollowStatus","clearError","clearFollowError","fetchUserCounts","setFollowerCount","count","setFollowingCount","catch","warn","component","toggleFollowForUser","targetUserId","currentState","setFollowStatusForUser","fetchStatusForUser","fetchAllStatuses","store","Promise","all","map","clearErrorForUser","updateCountsFromFollowAction","action","counts","currentUserId","getCurrentUserId","undefined","useFollowForButton","useFollowerCounts"],"sourceRoot":"../../../../src","sources":["ui/hooks/useFollow.ts"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["useCallback","useMemo","useEffect","useFollowStore","useOxy","logger","loggerUtil","useShallow","useFollow","userId","oxyServices","canUsePrivateApi","userIds","Array","isArray","isSingleUser","isFollowing","s","followingUsers","isLoading","loadingUsers","error","errors","followerCount","followerCounts","followingCount","followingCounts","isLoadingCounts","loadingCounts","followData","data","uid","multiUserLoadingState","isAnyLoading","hasAnyError","allFollowing","allNotFollowing","some","every","toggleFollow","Error","currentlyFollowing","getState","toggleFollowUser","setFollowStatus","following","setFollowingStatus","fetchStatus","fetchFollowStatus","clearError","clearFollowError","fetchUserCounts","setFollowerCount","count","setFollowingCount","catch","warn","component","toggleFollowForUser","targetUserId","currentState","setFollowStatusForUser","fetchStatusForUser","fetchAllStatuses","store","Promise","all","map","followAllUsers","followManyUsers","clearErrorForUser","updateCountsFromFollowAction","action","counts","currentUserId","getCurrentUserId","undefined","useFollowForButton","useFollowerCounts"],"sourceRoot":"../../../../src","sources":["ui/hooks/useFollow.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -155,6 +155,74 @@ export const useFollowStore = create((set, get) => ({
|
|
|
155
155
|
}));
|
|
156
156
|
}
|
|
157
157
|
},
|
|
158
|
+
followManyUsers: async (userIds, oxyServices) => {
|
|
159
|
+
set(state => {
|
|
160
|
+
const loadingUsers = {
|
|
161
|
+
...state.loadingUsers
|
|
162
|
+
};
|
|
163
|
+
const errors = {
|
|
164
|
+
...state.errors
|
|
165
|
+
};
|
|
166
|
+
for (const uid of userIds) {
|
|
167
|
+
loadingUsers[uid] = true;
|
|
168
|
+
errors[uid] = null;
|
|
169
|
+
}
|
|
170
|
+
return {
|
|
171
|
+
loadingUsers,
|
|
172
|
+
errors
|
|
173
|
+
};
|
|
174
|
+
});
|
|
175
|
+
try {
|
|
176
|
+
const result = await oxyServices.followUsers(userIds);
|
|
177
|
+
set(state => {
|
|
178
|
+
const followingUsers = {
|
|
179
|
+
...state.followingUsers
|
|
180
|
+
};
|
|
181
|
+
const loadingUsers = {
|
|
182
|
+
...state.loadingUsers
|
|
183
|
+
};
|
|
184
|
+
const errors = {
|
|
185
|
+
...state.errors
|
|
186
|
+
};
|
|
187
|
+
for (const uid of userIds) {
|
|
188
|
+
loadingUsers[uid] = false;
|
|
189
|
+
}
|
|
190
|
+
for (const entry of result.results) {
|
|
191
|
+
if (entry.success || entry.alreadyFollowing) {
|
|
192
|
+
followingUsers[entry.userId] = true;
|
|
193
|
+
errors[entry.userId] = null;
|
|
194
|
+
} else {
|
|
195
|
+
errors[entry.userId] = 'Failed to update follow status';
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
return {
|
|
199
|
+
followingUsers,
|
|
200
|
+
loadingUsers,
|
|
201
|
+
errors
|
|
202
|
+
};
|
|
203
|
+
});
|
|
204
|
+
return result;
|
|
205
|
+
} catch (error) {
|
|
206
|
+
const message = (error instanceof Error ? error.message : null) || 'Failed to update follow status';
|
|
207
|
+
set(state => {
|
|
208
|
+
const loadingUsers = {
|
|
209
|
+
...state.loadingUsers
|
|
210
|
+
};
|
|
211
|
+
const errors = {
|
|
212
|
+
...state.errors
|
|
213
|
+
};
|
|
214
|
+
for (const uid of userIds) {
|
|
215
|
+
loadingUsers[uid] = false;
|
|
216
|
+
errors[uid] = message;
|
|
217
|
+
}
|
|
218
|
+
return {
|
|
219
|
+
loadingUsers,
|
|
220
|
+
errors
|
|
221
|
+
};
|
|
222
|
+
});
|
|
223
|
+
throw error;
|
|
224
|
+
}
|
|
225
|
+
},
|
|
158
226
|
setFollowerCount: (userId, count) => set(state => ({
|
|
159
227
|
followerCounts: {
|
|
160
228
|
...state.followerCounts,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["create","useFollowStore","set","get","followingUsers","loadingUsers","fetchingUsers","errors","followerCounts","followingCounts","loadingCounts","setFollowingStatus","userId","isFollowing","state","clearFollowError","resetFollowState","fetchFollowStatus","oxyServices","response","getFollowStatus","error","Error","message","toggleFollowUser","isCurrentlyFollowing","newFollowState","unfollowUser","followUser","counts","currentUserId","getCurrentUserId","updates","followers","following","setFollowerCount","count","setFollowingCount","updateCountsFromFollowAction","targetUserId","action","fetchUserCounts","user","getUserById","_count"],"sourceRoot":"../../../../src","sources":["ui/stores/followStore.ts"],"mappings":";;AAAA,SAASA,MAAM,QAAQ,SAAS;
|
|
1
|
+
{"version":3,"names":["create","useFollowStore","set","get","followingUsers","loadingUsers","fetchingUsers","errors","followerCounts","followingCounts","loadingCounts","setFollowingStatus","userId","isFollowing","state","clearFollowError","resetFollowState","fetchFollowStatus","oxyServices","response","getFollowStatus","error","Error","message","toggleFollowUser","isCurrentlyFollowing","newFollowState","unfollowUser","followUser","counts","currentUserId","getCurrentUserId","updates","followers","following","followManyUsers","userIds","uid","result","followUsers","entry","results","success","alreadyFollowing","setFollowerCount","count","setFollowingCount","updateCountsFromFollowAction","targetUserId","action","fetchUserCounts","user","getUserById","_count"],"sourceRoot":"../../../../src","sources":["ui/stores/followStore.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -55,6 +55,7 @@ export { OxyAuthPrompt } from './ui/components/OxyAuthPrompt';
|
|
|
55
55
|
export type { OxyAuthPromptProps } from './ui/components/OxyAuthPrompt';
|
|
56
56
|
export { default as OxyLogo } from './ui/components/OxyLogo';
|
|
57
57
|
export { default as FollowButton } from './ui/components/FollowButton';
|
|
58
|
+
export type { FollowButtonProps, SingleFollowButtonProps, MultiFollowButtonProps } from './ui/components/FollowButton';
|
|
58
59
|
export { LogoIcon } from './ui/components/logo/LogoIcon';
|
|
59
60
|
export { LogoText } from './ui/components/logo/LogoText';
|
|
60
61
|
export { default as ActingAsBanner } from './ui/components/ActingAsBanner';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,17 +1,37 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { type ViewStyle, type TextStyle, type StyleProp } from 'react-native';
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
import type { BulkFollowResult } from '@oxyhq/core';
|
|
4
|
+
/** Props shared by both single- and multi-user follow modes. */
|
|
5
|
+
interface FollowButtonBaseProps {
|
|
6
6
|
size?: 'small' | 'medium' | 'large';
|
|
7
|
-
onFollowChange?: (isFollowing: boolean) => void;
|
|
8
7
|
style?: StyleProp<ViewStyle>;
|
|
9
8
|
textStyle?: StyleProp<TextStyle>;
|
|
10
9
|
disabled?: boolean;
|
|
11
10
|
showLoadingState?: boolean;
|
|
12
11
|
preventParentActions?: boolean;
|
|
13
12
|
theme?: 'light' | 'dark';
|
|
13
|
+
onFollowChange?: (isFollowing: boolean) => void;
|
|
14
|
+
}
|
|
15
|
+
/** Single-user mode — follows/unfollows one user (existing behavior). */
|
|
16
|
+
export interface SingleFollowButtonProps extends FollowButtonBaseProps {
|
|
17
|
+
userId: string;
|
|
18
|
+
initiallyFollowing?: boolean;
|
|
19
|
+
userIds?: never;
|
|
20
|
+
}
|
|
21
|
+
/** Multi-user mode — follows MANY users in one "Follow all" action (follow-only). */
|
|
22
|
+
export interface MultiFollowButtonProps extends FollowButtonBaseProps {
|
|
23
|
+
userIds: string[];
|
|
24
|
+
initiallyAllFollowing?: boolean;
|
|
25
|
+
followAllLabel?: string;
|
|
26
|
+
followedAllLabel?: string;
|
|
27
|
+
onBulkFollow?: (result: BulkFollowResult) => void;
|
|
28
|
+
userId?: never;
|
|
14
29
|
}
|
|
30
|
+
/**
|
|
31
|
+
* FollowButton accepts EITHER single-user mode (`userId`) or multi-user mode
|
|
32
|
+
* (`userIds`), never both. Existing `{ userId, ... }` callers remain valid.
|
|
33
|
+
*/
|
|
34
|
+
export type FollowButtonProps = SingleFollowButtonProps | MultiFollowButtonProps;
|
|
15
35
|
declare const FollowButton: React.FC<FollowButtonProps>;
|
|
16
36
|
export { FollowButton };
|
|
17
37
|
export default FollowButton;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FollowButton.d.ts","sourceRoot":"","sources":["../../../../../src/ui/components/FollowButton.tsx"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"FollowButton.d.ts","sourceRoot":"","sources":["../../../../../src/ui/components/FollowButton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA0D,MAAM,OAAO,CAAC;AAC/E,OAAO,EAGL,KAAK,SAAS,EACd,KAAK,SAAS,EACd,KAAK,SAAS,EAGf,MAAM,cAAc,CAAC;AAKtB,OAAO,KAAK,EAAe,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAKjE,gEAAgE;AAChE,UAAU,qBAAqB;IAC7B,IAAI,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;IACpC,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,SAAS,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACjC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IACzB,cAAc,CAAC,EAAE,CAAC,WAAW,EAAE,OAAO,KAAK,IAAI,CAAC;CACjD;AAED,yEAAyE;AACzE,MAAM,WAAW,uBAAwB,SAAQ,qBAAqB;IACpE,MAAM,EAAE,MAAM,CAAC;IACf,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,OAAO,CAAC,EAAE,KAAK,CAAC;CACjB;AAED,qFAAqF;AACrF,MAAM,WAAW,sBAAuB,SAAQ,qBAAqB;IACnE,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAClD,MAAM,CAAC,EAAE,KAAK,CAAC;CAChB;AAED;;;GAGG;AACH,MAAM,MAAM,iBAAiB,GAAG,uBAAuB,GAAG,sBAAsB,CAAC;AAyKjF,QAAA,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAiD7C,CAAC;AAiDF,OAAO,EAAE,YAAY,EAAE,CAAC;AACxB,eAAe,YAAY,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type OxyServices } from '@oxyhq/core';
|
|
1
|
+
import { type OxyServices, type BulkFollowResult } from '@oxyhq/core';
|
|
2
2
|
/**
|
|
3
3
|
* useFollow — Hook for follow state management.
|
|
4
4
|
*
|
|
@@ -31,6 +31,7 @@ export declare const useFollow: (userId?: string | string[]) => {
|
|
|
31
31
|
setFollowStatusForUser?: undefined;
|
|
32
32
|
fetchStatusForUser?: undefined;
|
|
33
33
|
fetchAllStatuses?: undefined;
|
|
34
|
+
followAllUsers?: undefined;
|
|
34
35
|
clearErrorForUser?: undefined;
|
|
35
36
|
isAnyLoading?: undefined;
|
|
36
37
|
hasAnyError?: undefined;
|
|
@@ -46,6 +47,7 @@ export declare const useFollow: (userId?: string | string[]) => {
|
|
|
46
47
|
setFollowStatusForUser: (targetUserId: string, following: boolean) => void;
|
|
47
48
|
fetchStatusForUser: (targetUserId: string) => Promise<void>;
|
|
48
49
|
fetchAllStatuses: () => Promise<void>;
|
|
50
|
+
followAllUsers: () => Promise<BulkFollowResult>;
|
|
49
51
|
clearErrorForUser: (targetUserId: string) => void;
|
|
50
52
|
isAnyLoading: boolean;
|
|
51
53
|
hasAnyError: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useFollow.d.ts","sourceRoot":"","sources":["../../../../../src/ui/hooks/useFollow.ts"],"names":[],"mappings":"AAGA,OAAO,EAAwB,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"useFollow.d.ts","sourceRoot":"","sources":["../../../../../src/ui/hooks/useFollow.ts"],"names":[],"mappings":"AAGA,OAAO,EAAwB,KAAK,WAAW,EAAE,KAAK,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAG5F;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,SAAS,GAAI,SAAS,MAAM,GAAG,MAAM,EAAE;;;;;iCA+DF,OAAO;;;;;;;8BAqBV,MAAM;+BAKL,MAAM;;;;;;;;;;;;;;qBA5DN,OAAO;mBAAa,OAAO;eAAS,MAAM,GAAG,IAAI;;wCA6ElC,MAAM;2CAMT,MAAM,aAAa,OAAO;uCAIxB,MAAM;;0BAYrB,OAAO,CAAC,gBAAgB,CAAC;sCAKjB,MAAM;;;;;;;;;;;;;;;;;;CAwC5D,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,kBAAkB,GAAI,QAAQ,MAAM,EAAE,aAAa,WAAW;;;;;;iCAoBzB,OAAO;;CAiBxD,CAAC;AAGF,eAAO,MAAM,iBAAiB,GAAI,QAAQ,MAAM;;;;;8BAiBD,MAAM;+BAIL,MAAM;CAYrD,CAAC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { BulkFollowResult } from '@oxyhq/core';
|
|
1
2
|
export type SingleFollowResult = {
|
|
2
3
|
isFollowing: boolean;
|
|
3
4
|
isLoading: boolean;
|
|
@@ -23,6 +24,7 @@ export type MultiFollowResult = {
|
|
|
23
24
|
setFollowStatusForUser: (userId: string, following: boolean) => void;
|
|
24
25
|
fetchStatusForUser: (userId: string) => Promise<void>;
|
|
25
26
|
fetchAllStatuses: () => Promise<void>;
|
|
27
|
+
followAllUsers: () => Promise<BulkFollowResult>;
|
|
26
28
|
clearErrorForUser: (userId: string) => void;
|
|
27
29
|
isAnyLoading: boolean;
|
|
28
30
|
hasAnyError: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useFollow.types.d.ts","sourceRoot":"","sources":["../../../../../src/ui/hooks/useFollow.types.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,kBAAkB,GAAG;IAC/B,WAAW,EAAE,OAAO,CAAC;IACrB,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,YAAY,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAClC,eAAe,EAAE,CAAC,SAAS,EAAE,OAAO,KAAK,IAAI,CAAC;IAC9C,WAAW,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACjC,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,eAAe,EAAE,OAAO,CAAC;IACzB,eAAe,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACrC,gBAAgB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1C,iBAAiB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CAC5C,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,WAAW,EAAE,OAAO,CAAC;QAAC,SAAS,EAAE,OAAO,CAAC;QAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC,CAAC;IAC/F,mBAAmB,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACvD,sBAAsB,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,KAAK,IAAI,CAAC;IACrE,kBAAkB,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACtD,gBAAgB,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACtC,iBAAiB,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5C,YAAY,EAAE,OAAO,CAAC;IACtB,WAAW,EAAE,OAAO,CAAC;IACrB,YAAY,EAAE,OAAO,CAAC;IACtB,eAAe,EAAE,OAAO,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,KAAK,kBAAkB,GAAG,iBAAiB,CAAC"}
|
|
1
|
+
{"version":3,"file":"useFollow.types.d.ts","sourceRoot":"","sources":["../../../../../src/ui/hooks/useFollow.types.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEpD,MAAM,MAAM,kBAAkB,GAAG;IAC/B,WAAW,EAAE,OAAO,CAAC;IACrB,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,YAAY,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAClC,eAAe,EAAE,CAAC,SAAS,EAAE,OAAO,KAAK,IAAI,CAAC;IAC9C,WAAW,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACjC,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,eAAe,EAAE,OAAO,CAAC;IACzB,eAAe,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACrC,gBAAgB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1C,iBAAiB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CAC5C,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,WAAW,EAAE,OAAO,CAAC;QAAC,SAAS,EAAE,OAAO,CAAC;QAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC,CAAC;IAC/F,mBAAmB,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACvD,sBAAsB,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,KAAK,IAAI,CAAC;IACrE,kBAAkB,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACtD,gBAAgB,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACtC,cAAc,EAAE,MAAM,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAChD,iBAAiB,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5C,YAAY,EAAE,OAAO,CAAC;IACtB,WAAW,EAAE,OAAO,CAAC;IACrB,YAAY,EAAE,OAAO,CAAC;IACtB,eAAe,EAAE,OAAO,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,KAAK,kBAAkB,GAAG,iBAAiB,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { OxyServices } from '@oxyhq/core';
|
|
1
|
+
import type { OxyServices, BulkFollowResult } from '@oxyhq/core';
|
|
2
2
|
interface FollowState {
|
|
3
3
|
followingUsers: Record<string, boolean>;
|
|
4
4
|
loadingUsers: Record<string, boolean>;
|
|
@@ -12,6 +12,7 @@ interface FollowState {
|
|
|
12
12
|
resetFollowState: () => void;
|
|
13
13
|
fetchFollowStatus: (userId: string, oxyServices: OxyServices) => Promise<void>;
|
|
14
14
|
toggleFollowUser: (userId: string, oxyServices: OxyServices, isCurrentlyFollowing: boolean) => Promise<void>;
|
|
15
|
+
followManyUsers: (userIds: string[], oxyServices: OxyServices) => Promise<BulkFollowResult>;
|
|
15
16
|
setFollowerCount: (userId: string, count: number) => void;
|
|
16
17
|
setFollowingCount: (userId: string, count: number) => void;
|
|
17
18
|
updateCountsFromFollowAction: (targetUserId: string, action: 'follow' | 'unfollow', counts: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"followStore.d.ts","sourceRoot":"","sources":["../../../../../src/ui/stores/followStore.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"followStore.d.ts","sourceRoot":"","sources":["../../../../../src/ui/stores/followStore.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEjE,UAAU,WAAW;IACnB,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACxC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACtC,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACvC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC;IAEtC,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACvC,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAExC,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACvC,kBAAkB,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,KAAK,IAAI,CAAC;IACnE,gBAAgB,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3C,gBAAgB,EAAE,MAAM,IAAI,CAAC;IAC7B,iBAAiB,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/E,gBAAgB,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,oBAAoB,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAE7G,eAAe,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,WAAW,EAAE,WAAW,KAAK,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAE5F,gBAAgB,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1D,iBAAiB,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3D,4BAA4B,EAAE,CAAC,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,GAAG,UAAU,EAAE,MAAM,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,EAAE,aAAa,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IACtK,eAAe,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9E;AAED,eAAO,MAAM,cAAc,0EAuMxB,CAAC"}
|
|
@@ -55,6 +55,7 @@ export { OxyAuthPrompt } from './ui/components/OxyAuthPrompt';
|
|
|
55
55
|
export type { OxyAuthPromptProps } from './ui/components/OxyAuthPrompt';
|
|
56
56
|
export { default as OxyLogo } from './ui/components/OxyLogo';
|
|
57
57
|
export { default as FollowButton } from './ui/components/FollowButton';
|
|
58
|
+
export type { FollowButtonProps, SingleFollowButtonProps, MultiFollowButtonProps } from './ui/components/FollowButton';
|
|
58
59
|
export { LogoIcon } from './ui/components/logo/LogoIcon';
|
|
59
60
|
export { LogoText } from './ui/components/logo/LogoText';
|
|
60
61
|
export { default as ActingAsBanner } from './ui/components/ActingAsBanner';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AASH,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,YAAY,EAAE,SAAS,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAKhF,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAKxD,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EACH,aAAa,EACb,SAAS,IAAI,cAAc,EAC3B,QAAQ,EACR,iBAAiB,EACjB,eAAe,EACf,cAAc,EACd,cAAc,EACd,iBAAiB,EACjB,kBAAkB,EAClB,gBAAgB,GACnB,MAAM,wBAAwB,CAAC;AAKhC,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AACtE,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAKpE,OAAO,EACH,cAAc,EACd,eAAe,EACf,cAAc,EACd,WAAW,EACX,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,GACpB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EACH,WAAW,EACX,UAAU,EACV,iBAAiB,EACjB,cAAc,EACd,eAAe,EACf,sBAAsB,GACzB,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EACH,mBAAmB,EACnB,yBAAyB,EACzB,2BAA2B,GAC9B,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EACH,mBAAmB,EACnB,eAAe,EACf,aAAa,EACb,yBAAyB,GAC5B,MAAM,sCAAsC,CAAC;AAG9C,YAAY,EACR,YAAY,EACZ,gBAAgB,EAChB,kBAAkB,EAClB,oBAAoB,EACpB,OAAO,EACP,MAAM,EACN,iBAAiB,EACjB,qBAAqB,EACrB,uBAAuB,EACvB,gBAAgB,EAChB,0BAA0B,GAC7B,MAAM,iCAAiC,CAAC;AAKzC,OAAO,EACH,gBAAgB,EAChB,eAAe,EACf,wBAAwB,EACxB,wBAAwB,EACxB,gCAAgC,EAChC,wBAAwB,EACxB,sBAAsB,EACtB,aAAa,GAChB,MAAM,0CAA0C,CAAC;AAClD,OAAO,EACH,gBAAgB,EAChB,gBAAgB,EAChB,YAAY,EACZ,mBAAmB,EACnB,eAAe,GAClB,MAAM,2CAA2C,CAAC;AACnD,OAAO,EACH,qBAAqB,EACrB,qBAAqB,GACxB,MAAM,sCAAsC,CAAC;AAC9C,YAAY,EACR,qBAAqB,EACrB,qBAAqB,GACxB,MAAM,sCAAsC,CAAC;AAG9C,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AAQjE,OAAO,EACH,SAAS,EACT,wBAAwB,EACxB,qBAAqB,EACrB,wBAAwB,EACxB,uBAAuB,EACvB,wBAAwB,EACxB,yBAAyB,EACzB,wBAAwB,EACxB,yBAAyB,EACzB,8BAA8B,GACjC,MAAM,8BAA8B,CAAC;AAGtC,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,YAAY,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAKnE,OAAO,EACH,eAAe,EACf,qBAAqB,EACrB,uBAAuB,EACvB,mBAAmB,GACtB,MAAM,0BAA0B,CAAC;AAClC,YAAY,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAKvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,YAAY,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAK/E,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAC3D,YAAY,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,YAAY,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACxE,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAGzD,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAG3E,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,6BAA6B,CAAC;AACrE,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AACvF,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACjF,YAAY,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAC;AAIhF,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,YAAY,EACR,aAAa,EACb,iBAAiB,EACjB,uBAAuB,GAC1B,MAAM,8BAA8B,CAAC;AAGtC,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAClF,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAClF,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAKlF,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AACvF,YAAY,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAKxD,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,17 +1,37 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { type ViewStyle, type TextStyle, type StyleProp } from 'react-native';
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
import type { BulkFollowResult } from '@oxyhq/core';
|
|
4
|
+
/** Props shared by both single- and multi-user follow modes. */
|
|
5
|
+
interface FollowButtonBaseProps {
|
|
6
6
|
size?: 'small' | 'medium' | 'large';
|
|
7
|
-
onFollowChange?: (isFollowing: boolean) => void;
|
|
8
7
|
style?: StyleProp<ViewStyle>;
|
|
9
8
|
textStyle?: StyleProp<TextStyle>;
|
|
10
9
|
disabled?: boolean;
|
|
11
10
|
showLoadingState?: boolean;
|
|
12
11
|
preventParentActions?: boolean;
|
|
13
12
|
theme?: 'light' | 'dark';
|
|
13
|
+
onFollowChange?: (isFollowing: boolean) => void;
|
|
14
|
+
}
|
|
15
|
+
/** Single-user mode — follows/unfollows one user (existing behavior). */
|
|
16
|
+
export interface SingleFollowButtonProps extends FollowButtonBaseProps {
|
|
17
|
+
userId: string;
|
|
18
|
+
initiallyFollowing?: boolean;
|
|
19
|
+
userIds?: never;
|
|
20
|
+
}
|
|
21
|
+
/** Multi-user mode — follows MANY users in one "Follow all" action (follow-only). */
|
|
22
|
+
export interface MultiFollowButtonProps extends FollowButtonBaseProps {
|
|
23
|
+
userIds: string[];
|
|
24
|
+
initiallyAllFollowing?: boolean;
|
|
25
|
+
followAllLabel?: string;
|
|
26
|
+
followedAllLabel?: string;
|
|
27
|
+
onBulkFollow?: (result: BulkFollowResult) => void;
|
|
28
|
+
userId?: never;
|
|
14
29
|
}
|
|
30
|
+
/**
|
|
31
|
+
* FollowButton accepts EITHER single-user mode (`userId`) or multi-user mode
|
|
32
|
+
* (`userIds`), never both. Existing `{ userId, ... }` callers remain valid.
|
|
33
|
+
*/
|
|
34
|
+
export type FollowButtonProps = SingleFollowButtonProps | MultiFollowButtonProps;
|
|
15
35
|
declare const FollowButton: React.FC<FollowButtonProps>;
|
|
16
36
|
export { FollowButton };
|
|
17
37
|
export default FollowButton;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FollowButton.d.ts","sourceRoot":"","sources":["../../../../../src/ui/components/FollowButton.tsx"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"FollowButton.d.ts","sourceRoot":"","sources":["../../../../../src/ui/components/FollowButton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA0D,MAAM,OAAO,CAAC;AAC/E,OAAO,EAGL,KAAK,SAAS,EACd,KAAK,SAAS,EACd,KAAK,SAAS,EAGf,MAAM,cAAc,CAAC;AAKtB,OAAO,KAAK,EAAe,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAKjE,gEAAgE;AAChE,UAAU,qBAAqB;IAC7B,IAAI,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;IACpC,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,SAAS,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACjC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IACzB,cAAc,CAAC,EAAE,CAAC,WAAW,EAAE,OAAO,KAAK,IAAI,CAAC;CACjD;AAED,yEAAyE;AACzE,MAAM,WAAW,uBAAwB,SAAQ,qBAAqB;IACpE,MAAM,EAAE,MAAM,CAAC;IACf,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,OAAO,CAAC,EAAE,KAAK,CAAC;CACjB;AAED,qFAAqF;AACrF,MAAM,WAAW,sBAAuB,SAAQ,qBAAqB;IACnE,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAClD,MAAM,CAAC,EAAE,KAAK,CAAC;CAChB;AAED;;;GAGG;AACH,MAAM,MAAM,iBAAiB,GAAG,uBAAuB,GAAG,sBAAsB,CAAC;AAyKjF,QAAA,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAiD7C,CAAC;AAiDF,OAAO,EAAE,YAAY,EAAE,CAAC;AACxB,eAAe,YAAY,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type OxyServices } from '@oxyhq/core';
|
|
1
|
+
import { type OxyServices, type BulkFollowResult } from '@oxyhq/core';
|
|
2
2
|
/**
|
|
3
3
|
* useFollow — Hook for follow state management.
|
|
4
4
|
*
|
|
@@ -31,6 +31,7 @@ export declare const useFollow: (userId?: string | string[]) => {
|
|
|
31
31
|
setFollowStatusForUser?: undefined;
|
|
32
32
|
fetchStatusForUser?: undefined;
|
|
33
33
|
fetchAllStatuses?: undefined;
|
|
34
|
+
followAllUsers?: undefined;
|
|
34
35
|
clearErrorForUser?: undefined;
|
|
35
36
|
isAnyLoading?: undefined;
|
|
36
37
|
hasAnyError?: undefined;
|
|
@@ -46,6 +47,7 @@ export declare const useFollow: (userId?: string | string[]) => {
|
|
|
46
47
|
setFollowStatusForUser: (targetUserId: string, following: boolean) => void;
|
|
47
48
|
fetchStatusForUser: (targetUserId: string) => Promise<void>;
|
|
48
49
|
fetchAllStatuses: () => Promise<void>;
|
|
50
|
+
followAllUsers: () => Promise<BulkFollowResult>;
|
|
49
51
|
clearErrorForUser: (targetUserId: string) => void;
|
|
50
52
|
isAnyLoading: boolean;
|
|
51
53
|
hasAnyError: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useFollow.d.ts","sourceRoot":"","sources":["../../../../../src/ui/hooks/useFollow.ts"],"names":[],"mappings":"AAGA,OAAO,EAAwB,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"useFollow.d.ts","sourceRoot":"","sources":["../../../../../src/ui/hooks/useFollow.ts"],"names":[],"mappings":"AAGA,OAAO,EAAwB,KAAK,WAAW,EAAE,KAAK,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAG5F;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,SAAS,GAAI,SAAS,MAAM,GAAG,MAAM,EAAE;;;;;iCA+DF,OAAO;;;;;;;8BAqBV,MAAM;+BAKL,MAAM;;;;;;;;;;;;;;qBA5DN,OAAO;mBAAa,OAAO;eAAS,MAAM,GAAG,IAAI;;wCA6ElC,MAAM;2CAMT,MAAM,aAAa,OAAO;uCAIxB,MAAM;;0BAYrB,OAAO,CAAC,gBAAgB,CAAC;sCAKjB,MAAM;;;;;;;;;;;;;;;;;;CAwC5D,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,kBAAkB,GAAI,QAAQ,MAAM,EAAE,aAAa,WAAW;;;;;;iCAoBzB,OAAO;;CAiBxD,CAAC;AAGF,eAAO,MAAM,iBAAiB,GAAI,QAAQ,MAAM;;;;;8BAiBD,MAAM;+BAIL,MAAM;CAYrD,CAAC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { BulkFollowResult } from '@oxyhq/core';
|
|
1
2
|
export type SingleFollowResult = {
|
|
2
3
|
isFollowing: boolean;
|
|
3
4
|
isLoading: boolean;
|
|
@@ -23,6 +24,7 @@ export type MultiFollowResult = {
|
|
|
23
24
|
setFollowStatusForUser: (userId: string, following: boolean) => void;
|
|
24
25
|
fetchStatusForUser: (userId: string) => Promise<void>;
|
|
25
26
|
fetchAllStatuses: () => Promise<void>;
|
|
27
|
+
followAllUsers: () => Promise<BulkFollowResult>;
|
|
26
28
|
clearErrorForUser: (userId: string) => void;
|
|
27
29
|
isAnyLoading: boolean;
|
|
28
30
|
hasAnyError: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useFollow.types.d.ts","sourceRoot":"","sources":["../../../../../src/ui/hooks/useFollow.types.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,kBAAkB,GAAG;IAC/B,WAAW,EAAE,OAAO,CAAC;IACrB,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,YAAY,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAClC,eAAe,EAAE,CAAC,SAAS,EAAE,OAAO,KAAK,IAAI,CAAC;IAC9C,WAAW,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACjC,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,eAAe,EAAE,OAAO,CAAC;IACzB,eAAe,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACrC,gBAAgB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1C,iBAAiB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CAC5C,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,WAAW,EAAE,OAAO,CAAC;QAAC,SAAS,EAAE,OAAO,CAAC;QAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC,CAAC;IAC/F,mBAAmB,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACvD,sBAAsB,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,KAAK,IAAI,CAAC;IACrE,kBAAkB,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACtD,gBAAgB,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACtC,iBAAiB,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5C,YAAY,EAAE,OAAO,CAAC;IACtB,WAAW,EAAE,OAAO,CAAC;IACrB,YAAY,EAAE,OAAO,CAAC;IACtB,eAAe,EAAE,OAAO,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,KAAK,kBAAkB,GAAG,iBAAiB,CAAC"}
|
|
1
|
+
{"version":3,"file":"useFollow.types.d.ts","sourceRoot":"","sources":["../../../../../src/ui/hooks/useFollow.types.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEpD,MAAM,MAAM,kBAAkB,GAAG;IAC/B,WAAW,EAAE,OAAO,CAAC;IACrB,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,YAAY,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAClC,eAAe,EAAE,CAAC,SAAS,EAAE,OAAO,KAAK,IAAI,CAAC;IAC9C,WAAW,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACjC,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,eAAe,EAAE,OAAO,CAAC;IACzB,eAAe,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACrC,gBAAgB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1C,iBAAiB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CAC5C,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,WAAW,EAAE,OAAO,CAAC;QAAC,SAAS,EAAE,OAAO,CAAC;QAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC,CAAC;IAC/F,mBAAmB,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACvD,sBAAsB,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,KAAK,IAAI,CAAC;IACrE,kBAAkB,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACtD,gBAAgB,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACtC,cAAc,EAAE,MAAM,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAChD,iBAAiB,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5C,YAAY,EAAE,OAAO,CAAC;IACtB,WAAW,EAAE,OAAO,CAAC;IACrB,YAAY,EAAE,OAAO,CAAC;IACtB,eAAe,EAAE,OAAO,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,KAAK,kBAAkB,GAAG,iBAAiB,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { OxyServices } from '@oxyhq/core';
|
|
1
|
+
import type { OxyServices, BulkFollowResult } from '@oxyhq/core';
|
|
2
2
|
interface FollowState {
|
|
3
3
|
followingUsers: Record<string, boolean>;
|
|
4
4
|
loadingUsers: Record<string, boolean>;
|
|
@@ -12,6 +12,7 @@ interface FollowState {
|
|
|
12
12
|
resetFollowState: () => void;
|
|
13
13
|
fetchFollowStatus: (userId: string, oxyServices: OxyServices) => Promise<void>;
|
|
14
14
|
toggleFollowUser: (userId: string, oxyServices: OxyServices, isCurrentlyFollowing: boolean) => Promise<void>;
|
|
15
|
+
followManyUsers: (userIds: string[], oxyServices: OxyServices) => Promise<BulkFollowResult>;
|
|
15
16
|
setFollowerCount: (userId: string, count: number) => void;
|
|
16
17
|
setFollowingCount: (userId: string, count: number) => void;
|
|
17
18
|
updateCountsFromFollowAction: (targetUserId: string, action: 'follow' | 'unfollow', counts: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"followStore.d.ts","sourceRoot":"","sources":["../../../../../src/ui/stores/followStore.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"followStore.d.ts","sourceRoot":"","sources":["../../../../../src/ui/stores/followStore.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEjE,UAAU,WAAW;IACnB,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACxC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACtC,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACvC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC;IAEtC,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACvC,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAExC,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACvC,kBAAkB,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,KAAK,IAAI,CAAC;IACnE,gBAAgB,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3C,gBAAgB,EAAE,MAAM,IAAI,CAAC;IAC7B,iBAAiB,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/E,gBAAgB,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,oBAAoB,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAE7G,eAAe,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,WAAW,EAAE,WAAW,KAAK,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAE5F,gBAAgB,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1D,iBAAiB,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3D,4BAA4B,EAAE,CAAC,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,GAAG,UAAU,EAAE,MAAM,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,EAAE,aAAa,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IACtK,eAAe,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9E;AAED,eAAO,MAAM,cAAc,0EAuMxB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@oxyhq/services",
|
|
3
|
-
"version": "10.
|
|
3
|
+
"version": "10.3.0",
|
|
4
4
|
"description": "OxyHQ Expo/React Native SDK — UI components, screens, and native features",
|
|
5
5
|
"main": "lib/commonjs/index.js",
|
|
6
6
|
"module": "lib/module/index.js",
|
|
@@ -161,7 +161,7 @@
|
|
|
161
161
|
"peerDependencies": {
|
|
162
162
|
"@expo/vector-icons": "^15.0.3",
|
|
163
163
|
"@oxyhq/bloom": ">=0.5.0",
|
|
164
|
-
"@oxyhq/core": "^3.
|
|
164
|
+
"@oxyhq/core": "^3.5.0",
|
|
165
165
|
"@react-native-community/netinfo": "^11.4.1",
|
|
166
166
|
"@tanstack/query-async-storage-persister": "^5.100",
|
|
167
167
|
"@tanstack/query-sync-storage-persister": "^5.100",
|
package/src/index.ts
CHANGED
|
@@ -193,6 +193,7 @@ export { OxyAuthPrompt } from './ui/components/OxyAuthPrompt';
|
|
|
193
193
|
export type { OxyAuthPromptProps } from './ui/components/OxyAuthPrompt';
|
|
194
194
|
export { default as OxyLogo } from './ui/components/OxyLogo';
|
|
195
195
|
export { default as FollowButton } from './ui/components/FollowButton';
|
|
196
|
+
export type { FollowButtonProps, SingleFollowButtonProps, MultiFollowButtonProps } from './ui/components/FollowButton';
|
|
196
197
|
export { LogoIcon } from './ui/components/logo/LogoIcon';
|
|
197
198
|
export { LogoText } from './ui/components/logo/LogoText';
|
|
198
199
|
|