@singi-labs/sifa-sdk 0.9.19 → 0.9.21
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/dist/feed-DHTy7fUN.d.cts +254 -0
- package/dist/feed-DHTy7fUN.d.ts +254 -0
- package/dist/{index-DCpMh2Ny.d.cts → index-DYUYJxOs.d.cts} +1 -1
- package/dist/{index-DCpMh2Ny.d.ts → index-DYUYJxOs.d.ts} +1 -1
- package/dist/index.cjs +132 -4
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +4 -3
- package/dist/index.d.ts +4 -3
- package/dist/index.js +121 -5
- package/dist/index.js.map +1 -1
- package/dist/keys-D-vNPzXx.d.ts +1085 -0
- package/dist/keys-DRD79nDE.d.cts +1085 -0
- package/dist/query/fetchers/index.cjs +155 -1
- package/dist/query/fetchers/index.cjs.map +1 -1
- package/dist/query/fetchers/index.d.cts +6 -933
- package/dist/query/fetchers/index.d.ts +6 -933
- package/dist/query/fetchers/index.js +146 -2
- package/dist/query/fetchers/index.js.map +1 -1
- package/dist/query/hooks/index.cjs +2268 -0
- package/dist/query/hooks/index.cjs.map +1 -0
- package/dist/query/hooks/index.d.cts +479 -0
- package/dist/query/hooks/index.d.ts +479 -0
- package/dist/query/hooks/index.js +2178 -0
- package/dist/query/hooks/index.js.map +1 -0
- package/dist/query/index.cjs +340 -1
- package/dist/query/index.cjs.map +1 -1
- package/dist/query/index.d.cts +9 -352
- package/dist/query/index.d.ts +9 -352
- package/dist/query/index.js +322 -3
- package/dist/query/index.js.map +1 -1
- package/dist/schemas/index.cjs +102 -1
- package/dist/schemas/index.cjs.map +1 -1
- package/dist/schemas/index.d.cts +28 -2
- package/dist/schemas/index.d.ts +28 -2
- package/dist/schemas/index.js +91 -2
- package/dist/schemas/index.js.map +1 -1
- package/package.json +11 -1
package/dist/query/index.cjs
CHANGED
|
@@ -631,6 +631,141 @@ async function fetchFollowing(config, opts = {}) {
|
|
|
631
631
|
return { follows: [] };
|
|
632
632
|
}
|
|
633
633
|
}
|
|
634
|
+
function followUser(config, handle, opts = {}) {
|
|
635
|
+
const { note, ...rest } = opts;
|
|
636
|
+
return apiWrite(
|
|
637
|
+
config,
|
|
638
|
+
`/api/follow/${encodeURIComponent(handle)}`,
|
|
639
|
+
"POST",
|
|
640
|
+
{
|
|
641
|
+
body: note !== void 0 ? { note } : void 0,
|
|
642
|
+
...rest
|
|
643
|
+
}
|
|
644
|
+
);
|
|
645
|
+
}
|
|
646
|
+
function unfollowUser(config, handle, opts = {}) {
|
|
647
|
+
return apiWrite(config, `/api/follow/${encodeURIComponent(handle)}`, "DELETE", opts);
|
|
648
|
+
}
|
|
649
|
+
function buildListPath(prefix, opts) {
|
|
650
|
+
const params = new URLSearchParams();
|
|
651
|
+
if (opts.cursor) params.set("cursor", opts.cursor);
|
|
652
|
+
if (opts.limit) params.set("limit", String(opts.limit));
|
|
653
|
+
const qs = params.toString();
|
|
654
|
+
return `${prefix}${qs ? `?${qs}` : ""}`;
|
|
655
|
+
}
|
|
656
|
+
async function getFollowers(config, handle, opts = {}) {
|
|
657
|
+
const headers = { ...opts.headers ?? {} };
|
|
658
|
+
if (opts.cookieHeader) headers.cookie = opts.cookieHeader;
|
|
659
|
+
try {
|
|
660
|
+
const res = await apiFetch(
|
|
661
|
+
config,
|
|
662
|
+
buildListPath(`/api/profile/${encodeURIComponent(handle)}/followers`, opts),
|
|
663
|
+
{ credentials: "include", cache: "no-store", ...opts, headers }
|
|
664
|
+
);
|
|
665
|
+
return { follows: res.follows, cursor: res.cursor ?? null };
|
|
666
|
+
} catch {
|
|
667
|
+
return { follows: [], cursor: null };
|
|
668
|
+
}
|
|
669
|
+
}
|
|
670
|
+
async function getFollowing(config, handle, opts = {}) {
|
|
671
|
+
const headers = { ...opts.headers ?? {} };
|
|
672
|
+
if (opts.cookieHeader) headers.cookie = opts.cookieHeader;
|
|
673
|
+
try {
|
|
674
|
+
const res = await apiFetch(
|
|
675
|
+
config,
|
|
676
|
+
buildListPath(`/api/profile/${encodeURIComponent(handle)}/following`, opts),
|
|
677
|
+
{ credentials: "include", cache: "no-store", ...opts, headers }
|
|
678
|
+
);
|
|
679
|
+
return { follows: res.follows, cursor: res.cursor ?? null };
|
|
680
|
+
} catch {
|
|
681
|
+
return { follows: [], cursor: null };
|
|
682
|
+
}
|
|
683
|
+
}
|
|
684
|
+
async function getFollowingFeed(config, opts = {}) {
|
|
685
|
+
const params = new URLSearchParams();
|
|
686
|
+
if (opts.cursor) params.set("cursor", opts.cursor);
|
|
687
|
+
if (opts.limit) params.set("limit", String(opts.limit));
|
|
688
|
+
if (opts.categories && opts.categories.length > 0) {
|
|
689
|
+
params.set("categories", opts.categories.join(","));
|
|
690
|
+
}
|
|
691
|
+
const qs = params.toString();
|
|
692
|
+
const headers = { ...opts.headers ?? {} };
|
|
693
|
+
if (opts.cookieHeader) headers.cookie = opts.cookieHeader;
|
|
694
|
+
try {
|
|
695
|
+
const res = await apiFetch(
|
|
696
|
+
config,
|
|
697
|
+
`/api/following/feed${qs ? `?${qs}` : ""}`,
|
|
698
|
+
{ credentials: "include", cache: "no-store", ...opts, headers }
|
|
699
|
+
);
|
|
700
|
+
return { items: res.items ?? [], cursor: res.cursor ?? null };
|
|
701
|
+
} catch {
|
|
702
|
+
return { items: [], cursor: null };
|
|
703
|
+
}
|
|
704
|
+
}
|
|
705
|
+
|
|
706
|
+
// src/query/fetchers/follow-extras.ts
|
|
707
|
+
function buildListPath2(prefix, opts) {
|
|
708
|
+
const params = new URLSearchParams();
|
|
709
|
+
if (opts.cursor) params.set("cursor", opts.cursor);
|
|
710
|
+
if (opts.limit) params.set("limit", String(opts.limit));
|
|
711
|
+
const qs = params.toString();
|
|
712
|
+
return `${prefix}${qs ? `?${qs}` : ""}`;
|
|
713
|
+
}
|
|
714
|
+
async function fetchFollowProfilePage(config, path, opts) {
|
|
715
|
+
const headers = { ...opts.headers ?? {} };
|
|
716
|
+
if (opts.cookieHeader) headers.cookie = opts.cookieHeader;
|
|
717
|
+
try {
|
|
718
|
+
const res = await apiFetch(
|
|
719
|
+
config,
|
|
720
|
+
path,
|
|
721
|
+
{ credentials: "include", cache: "no-store", ...opts, headers }
|
|
722
|
+
);
|
|
723
|
+
return { items: res.items ?? [], cursor: res.cursor ?? null };
|
|
724
|
+
} catch {
|
|
725
|
+
return { items: [], cursor: null };
|
|
726
|
+
}
|
|
727
|
+
}
|
|
728
|
+
async function getMutuals(config, handleOrDid, opts = {}) {
|
|
729
|
+
return fetchFollowProfilePage(
|
|
730
|
+
config,
|
|
731
|
+
buildListPath2(`/api/profile/${encodeURIComponent(handleOrDid)}/mutuals`, opts),
|
|
732
|
+
opts
|
|
733
|
+
);
|
|
734
|
+
}
|
|
735
|
+
async function getBlueskySuggestions(config, opts = {}) {
|
|
736
|
+
return fetchFollowProfilePage(config, buildListPath2("/api/me/bluesky-suggestions", opts), opts);
|
|
737
|
+
}
|
|
738
|
+
|
|
739
|
+
// src/query/fetchers/admin-feature-allowlists.ts
|
|
740
|
+
async function listFeatureAllowlist(config, flag, opts = {}) {
|
|
741
|
+
const headers = { ...opts.headers ?? {} };
|
|
742
|
+
if (opts.cookieHeader) headers.cookie = opts.cookieHeader;
|
|
743
|
+
try {
|
|
744
|
+
const res = await apiFetch(
|
|
745
|
+
config,
|
|
746
|
+
`/api/admin/feature-allowlists/${encodeURIComponent(flag)}`,
|
|
747
|
+
{ credentials: "include", cache: "no-store", ...opts, headers }
|
|
748
|
+
);
|
|
749
|
+
return { items: res.items ?? [] };
|
|
750
|
+
} catch {
|
|
751
|
+
return { items: [] };
|
|
752
|
+
}
|
|
753
|
+
}
|
|
754
|
+
function addFeatureAllowlist(config, flag, did, opts = {}) {
|
|
755
|
+
const { note, ...rest } = opts;
|
|
756
|
+
return apiWrite(config, `/api/admin/feature-allowlists/${encodeURIComponent(flag)}`, "POST", {
|
|
757
|
+
body: note !== void 0 ? { did, note } : { did },
|
|
758
|
+
...rest
|
|
759
|
+
});
|
|
760
|
+
}
|
|
761
|
+
function removeFeatureAllowlist(config, flag, did, opts = {}) {
|
|
762
|
+
return apiWrite(
|
|
763
|
+
config,
|
|
764
|
+
`/api/admin/feature-allowlists/${encodeURIComponent(flag)}/${encodeURIComponent(did)}`,
|
|
765
|
+
"DELETE",
|
|
766
|
+
opts
|
|
767
|
+
);
|
|
768
|
+
}
|
|
634
769
|
|
|
635
770
|
// src/query/fetchers/activity.ts
|
|
636
771
|
async function fetchHeatmapData(config, handleOrDid, days, options = {}) {
|
|
@@ -946,7 +1081,16 @@ var sifaQueryKeys = {
|
|
|
946
1081
|
},
|
|
947
1082
|
follow: {
|
|
948
1083
|
all: () => ["sifa", "follow"],
|
|
949
|
-
following: (opts) => ["sifa", "follow", "following", opts]
|
|
1084
|
+
following: (opts) => ["sifa", "follow", "following", opts],
|
|
1085
|
+
followers: (handle) => ["sifa", "follow", "followers", handle],
|
|
1086
|
+
followingOf: (handle) => ["sifa", "follow", "following-of", handle],
|
|
1087
|
+
feed: (opts) => ["sifa", "follow", "feed", opts],
|
|
1088
|
+
mutuals: (handle) => ["sifa", "follow", "mutuals", handle],
|
|
1089
|
+
blueskySuggestions: () => ["sifa", "follow", "bluesky-suggestions"]
|
|
1090
|
+
},
|
|
1091
|
+
admin: {
|
|
1092
|
+
all: () => ["sifa", "admin"],
|
|
1093
|
+
featureAllowlist: (flag) => ["sifa", "admin", "feature-allowlist", flag]
|
|
950
1094
|
},
|
|
951
1095
|
stats: {
|
|
952
1096
|
all: () => ["sifa", "stats"],
|
|
@@ -1717,6 +1861,181 @@ function useFollowing(opts = {}, options) {
|
|
|
1717
1861
|
...options
|
|
1718
1862
|
});
|
|
1719
1863
|
}
|
|
1864
|
+
function useFollow(options) {
|
|
1865
|
+
const config = useSifaConfig();
|
|
1866
|
+
const queryClient = reactQuery.useQueryClient();
|
|
1867
|
+
return reactQuery.useMutation({
|
|
1868
|
+
mutationFn: ({ handle, note }) => followUser(config, handle, { note }),
|
|
1869
|
+
onSuccess: async (result, variables, onMutateResult, context) => {
|
|
1870
|
+
if (result.success) {
|
|
1871
|
+
await queryClient.invalidateQueries({ queryKey: sifaQueryKeys.follow.all() });
|
|
1872
|
+
}
|
|
1873
|
+
await options?.onSuccess?.(result, variables, onMutateResult, context);
|
|
1874
|
+
},
|
|
1875
|
+
onError: async (error, variables, onMutateResult, context) => {
|
|
1876
|
+
await queryClient.invalidateQueries({ queryKey: sifaQueryKeys.follow.all() });
|
|
1877
|
+
await options?.onError?.(error, variables, onMutateResult, context);
|
|
1878
|
+
},
|
|
1879
|
+
...options
|
|
1880
|
+
});
|
|
1881
|
+
}
|
|
1882
|
+
function useUnfollow(options) {
|
|
1883
|
+
const config = useSifaConfig();
|
|
1884
|
+
const queryClient = reactQuery.useQueryClient();
|
|
1885
|
+
return reactQuery.useMutation({
|
|
1886
|
+
mutationFn: ({ handle }) => unfollowUser(config, handle),
|
|
1887
|
+
onSuccess: async (result, variables, onMutateResult, context) => {
|
|
1888
|
+
if (result.success) {
|
|
1889
|
+
await queryClient.invalidateQueries({ queryKey: sifaQueryKeys.follow.all() });
|
|
1890
|
+
}
|
|
1891
|
+
await options?.onSuccess?.(result, variables, onMutateResult, context);
|
|
1892
|
+
},
|
|
1893
|
+
onError: async (error, variables, onMutateResult, context) => {
|
|
1894
|
+
await queryClient.invalidateQueries({ queryKey: sifaQueryKeys.follow.all() });
|
|
1895
|
+
await options?.onError?.(error, variables, onMutateResult, context);
|
|
1896
|
+
},
|
|
1897
|
+
...options
|
|
1898
|
+
});
|
|
1899
|
+
}
|
|
1900
|
+
function useFollowers(handle, opts = {}, options) {
|
|
1901
|
+
const config = useSifaConfig();
|
|
1902
|
+
return reactQuery.useInfiniteQuery({
|
|
1903
|
+
queryKey: sifaQueryKeys.follow.followers(handle),
|
|
1904
|
+
queryFn: ({ pageParam }) => getFollowers(config, handle, { ...opts, cursor: pageParam }),
|
|
1905
|
+
initialPageParam: void 0,
|
|
1906
|
+
getNextPageParam: (lastPage) => lastPage.cursor ?? void 0,
|
|
1907
|
+
enabled: handle.length > 0,
|
|
1908
|
+
...options
|
|
1909
|
+
});
|
|
1910
|
+
}
|
|
1911
|
+
function useFollowingList(handle, opts = {}, options) {
|
|
1912
|
+
const config = useSifaConfig();
|
|
1913
|
+
return reactQuery.useInfiniteQuery({
|
|
1914
|
+
queryKey: sifaQueryKeys.follow.followingOf(handle),
|
|
1915
|
+
queryFn: ({ pageParam }) => getFollowing(config, handle, { ...opts, cursor: pageParam }),
|
|
1916
|
+
initialPageParam: void 0,
|
|
1917
|
+
getNextPageParam: (lastPage) => lastPage.cursor ?? void 0,
|
|
1918
|
+
enabled: handle.length > 0,
|
|
1919
|
+
...options
|
|
1920
|
+
});
|
|
1921
|
+
}
|
|
1922
|
+
function useFollowingFeed(opts = {}, options) {
|
|
1923
|
+
const config = useSifaConfig();
|
|
1924
|
+
const keyOpts = {
|
|
1925
|
+
limit: opts.limit,
|
|
1926
|
+
categories: opts.categories
|
|
1927
|
+
};
|
|
1928
|
+
return reactQuery.useInfiniteQuery({
|
|
1929
|
+
queryKey: sifaQueryKeys.follow.feed(keyOpts),
|
|
1930
|
+
queryFn: ({ pageParam }) => getFollowingFeed(config, { ...opts, cursor: pageParam }),
|
|
1931
|
+
initialPageParam: void 0,
|
|
1932
|
+
getNextPageParam: (lastPage) => lastPage.cursor ?? void 0,
|
|
1933
|
+
...options
|
|
1934
|
+
});
|
|
1935
|
+
}
|
|
1936
|
+
function useMutuals(handleOrDid, opts = {}, options) {
|
|
1937
|
+
const config = useSifaConfig();
|
|
1938
|
+
return reactQuery.useInfiniteQuery({
|
|
1939
|
+
queryKey: sifaQueryKeys.follow.mutuals(handleOrDid),
|
|
1940
|
+
queryFn: ({ pageParam }) => getMutuals(config, handleOrDid, { ...opts, cursor: pageParam }),
|
|
1941
|
+
initialPageParam: void 0,
|
|
1942
|
+
getNextPageParam: (lastPage) => lastPage.cursor ?? void 0,
|
|
1943
|
+
enabled: handleOrDid.length > 0,
|
|
1944
|
+
...options
|
|
1945
|
+
});
|
|
1946
|
+
}
|
|
1947
|
+
function useBlueskySuggestions(opts = {}, options) {
|
|
1948
|
+
const config = useSifaConfig();
|
|
1949
|
+
return reactQuery.useInfiniteQuery({
|
|
1950
|
+
queryKey: sifaQueryKeys.follow.blueskySuggestions(),
|
|
1951
|
+
queryFn: ({ pageParam }) => getBlueskySuggestions(config, { ...opts, cursor: pageParam }),
|
|
1952
|
+
initialPageParam: void 0,
|
|
1953
|
+
getNextPageParam: (lastPage) => lastPage.cursor ?? void 0,
|
|
1954
|
+
...options
|
|
1955
|
+
});
|
|
1956
|
+
}
|
|
1957
|
+
function useFeatureAllowlist(flag, options) {
|
|
1958
|
+
const config = useSifaConfig();
|
|
1959
|
+
return reactQuery.useQuery({
|
|
1960
|
+
queryKey: sifaQueryKeys.admin.featureAllowlist(flag),
|
|
1961
|
+
queryFn: () => listFeatureAllowlist(config, flag),
|
|
1962
|
+
...options
|
|
1963
|
+
});
|
|
1964
|
+
}
|
|
1965
|
+
function useAddFeatureAllowlist(flag, options) {
|
|
1966
|
+
const config = useSifaConfig();
|
|
1967
|
+
const queryClient = reactQuery.useQueryClient();
|
|
1968
|
+
const key = sifaQueryKeys.admin.featureAllowlist(flag);
|
|
1969
|
+
return reactQuery.useMutation({
|
|
1970
|
+
mutationFn: ({ did, note }) => addFeatureAllowlist(config, flag, did, { note }),
|
|
1971
|
+
onMutate: async ({ did, note }) => {
|
|
1972
|
+
await queryClient.cancelQueries({ queryKey: key });
|
|
1973
|
+
const previous = queryClient.getQueryData(key);
|
|
1974
|
+
const optimisticEntry = {
|
|
1975
|
+
did,
|
|
1976
|
+
addedAt: (/* @__PURE__ */ new Date()).toISOString(),
|
|
1977
|
+
note: note ?? null
|
|
1978
|
+
};
|
|
1979
|
+
const next = previous ? { items: [optimisticEntry, ...previous.items.filter((e) => e.did !== did)] } : { items: [optimisticEntry] };
|
|
1980
|
+
queryClient.setQueryData(key, next);
|
|
1981
|
+
return { previous };
|
|
1982
|
+
},
|
|
1983
|
+
onSuccess: async (result, variables, onMutateResult, context) => {
|
|
1984
|
+
if (!result.success && onMutateResult?.previous) {
|
|
1985
|
+
queryClient.setQueryData(key, onMutateResult.previous);
|
|
1986
|
+
}
|
|
1987
|
+
await options?.onSuccess?.(result, variables, onMutateResult, context);
|
|
1988
|
+
},
|
|
1989
|
+
onError: async (error, variables, onMutateResult, context) => {
|
|
1990
|
+
if (onMutateResult?.previous) {
|
|
1991
|
+
queryClient.setQueryData(key, onMutateResult.previous);
|
|
1992
|
+
}
|
|
1993
|
+
await options?.onError?.(error, variables, onMutateResult, context);
|
|
1994
|
+
},
|
|
1995
|
+
onSettled: async (result, error, variables, onMutateResult, context) => {
|
|
1996
|
+
await queryClient.invalidateQueries({ queryKey: key });
|
|
1997
|
+
await options?.onSettled?.(result, error, variables, onMutateResult, context);
|
|
1998
|
+
},
|
|
1999
|
+
...options
|
|
2000
|
+
});
|
|
2001
|
+
}
|
|
2002
|
+
function useRemoveFeatureAllowlist(flag, options) {
|
|
2003
|
+
const config = useSifaConfig();
|
|
2004
|
+
const queryClient = reactQuery.useQueryClient();
|
|
2005
|
+
const key = sifaQueryKeys.admin.featureAllowlist(flag);
|
|
2006
|
+
return reactQuery.useMutation(
|
|
2007
|
+
{
|
|
2008
|
+
mutationFn: ({ did }) => removeFeatureAllowlist(config, flag, did),
|
|
2009
|
+
onMutate: async ({ did }) => {
|
|
2010
|
+
await queryClient.cancelQueries({ queryKey: key });
|
|
2011
|
+
const previous = queryClient.getQueryData(key);
|
|
2012
|
+
if (previous) {
|
|
2013
|
+
queryClient.setQueryData(key, {
|
|
2014
|
+
items: previous.items.filter((e) => e.did !== did)
|
|
2015
|
+
});
|
|
2016
|
+
}
|
|
2017
|
+
return { previous };
|
|
2018
|
+
},
|
|
2019
|
+
onSuccess: async (result, variables, onMutateResult, context) => {
|
|
2020
|
+
if (!result.success && onMutateResult?.previous) {
|
|
2021
|
+
queryClient.setQueryData(key, onMutateResult.previous);
|
|
2022
|
+
}
|
|
2023
|
+
await options?.onSuccess?.(result, variables, onMutateResult, context);
|
|
2024
|
+
},
|
|
2025
|
+
onError: async (error, variables, onMutateResult, context) => {
|
|
2026
|
+
if (onMutateResult?.previous) {
|
|
2027
|
+
queryClient.setQueryData(key, onMutateResult.previous);
|
|
2028
|
+
}
|
|
2029
|
+
await options?.onError?.(error, variables, onMutateResult, context);
|
|
2030
|
+
},
|
|
2031
|
+
onSettled: async (result, error, variables, onMutateResult, context) => {
|
|
2032
|
+
await queryClient.invalidateQueries({ queryKey: key });
|
|
2033
|
+
await options?.onSettled?.(result, error, variables, onMutateResult, context);
|
|
2034
|
+
},
|
|
2035
|
+
...options
|
|
2036
|
+
}
|
|
2037
|
+
);
|
|
2038
|
+
}
|
|
1720
2039
|
function useHeatmapData(handleOrDid, days, options) {
|
|
1721
2040
|
const config = useSifaConfig();
|
|
1722
2041
|
return reactQuery.useQuery({
|
|
@@ -1888,6 +2207,7 @@ exports.HIDDEN_ITEM_SOURCES = HIDDEN_ITEM_SOURCES;
|
|
|
1888
2207
|
exports.HIDDEN_ITEM_TYPES = HIDDEN_ITEM_TYPES;
|
|
1889
2208
|
exports.QUOTED_POSTS_BATCH_MAX = QUOTED_POSTS_BATCH_MAX;
|
|
1890
2209
|
exports.SifaProvider = SifaProvider;
|
|
2210
|
+
exports.addFeatureAllowlist = addFeatureAllowlist;
|
|
1891
2211
|
exports.apiFetch = apiFetch;
|
|
1892
2212
|
exports.apiFetchOrNull = apiFetchOrNull;
|
|
1893
2213
|
exports.apiWrite = apiWrite;
|
|
@@ -1939,6 +2259,12 @@ exports.fetchSkillSuggestions = fetchSkillSuggestions;
|
|
|
1939
2259
|
exports.fetchStats = fetchStats;
|
|
1940
2260
|
exports.fetchSuggestionCount = fetchSuggestionCount;
|
|
1941
2261
|
exports.fetchSuggestions = fetchSuggestions;
|
|
2262
|
+
exports.followUser = followUser;
|
|
2263
|
+
exports.getBlueskySuggestions = getBlueskySuggestions;
|
|
2264
|
+
exports.getFollowers = getFollowers;
|
|
2265
|
+
exports.getFollowing = getFollowing;
|
|
2266
|
+
exports.getFollowingFeed = getFollowingFeed;
|
|
2267
|
+
exports.getMutuals = getMutuals;
|
|
1942
2268
|
exports.hideKeytraceClaim = hideKeytraceClaim;
|
|
1943
2269
|
exports.hideOrcidPublication = hideOrcidPublication;
|
|
1944
2270
|
exports.hideProfileItem = hideProfileItem;
|
|
@@ -1947,8 +2273,10 @@ exports.hideStandardPublication = hideStandardPublication;
|
|
|
1947
2273
|
exports.initiateNetworkMapGeneration = initiateNetworkMapGeneration;
|
|
1948
2274
|
exports.isNetworkMapResponse = isNetworkMapResponse;
|
|
1949
2275
|
exports.linkSkillToPosition = linkSkillToPosition;
|
|
2276
|
+
exports.listFeatureAllowlist = listFeatureAllowlist;
|
|
1950
2277
|
exports.refreshOrcidPublications = refreshOrcidPublications;
|
|
1951
2278
|
exports.refreshPds = refreshPds;
|
|
2279
|
+
exports.removeFeatureAllowlist = removeFeatureAllowlist;
|
|
1952
2280
|
exports.resetProfile = resetProfile;
|
|
1953
2281
|
exports.resolveQuotedPosts = resolveQuotedPosts;
|
|
1954
2282
|
exports.retractRoadmapVote = retractRoadmapVote;
|
|
@@ -1956,6 +2284,7 @@ exports.searchSkills = searchSkills;
|
|
|
1956
2284
|
exports.setExternalAccountPrimary = setExternalAccountPrimary;
|
|
1957
2285
|
exports.setPositionPrimary = setPositionPrimary;
|
|
1958
2286
|
exports.sifaQueryKeys = sifaQueryKeys;
|
|
2287
|
+
exports.unfollowUser = unfollowUser;
|
|
1959
2288
|
exports.unhideKeytraceClaim = unhideKeytraceClaim;
|
|
1960
2289
|
exports.unhideOrcidPublication = unhideOrcidPublication;
|
|
1961
2290
|
exports.unhideProfileItem = unhideProfileItem;
|
|
@@ -1975,9 +2304,11 @@ exports.updateSkill = updateSkill;
|
|
|
1975
2304
|
exports.uploadAvatar = uploadAvatar;
|
|
1976
2305
|
exports.useActivityFeed = useActivityFeed;
|
|
1977
2306
|
exports.useActivityTeaser = useActivityTeaser;
|
|
2307
|
+
exports.useAddFeatureAllowlist = useAddFeatureAllowlist;
|
|
1978
2308
|
exports.useAppAccountCheck = useAppAccountCheck;
|
|
1979
2309
|
exports.useAppsRegistry = useAppsRegistry;
|
|
1980
2310
|
exports.useAtFundLink = useAtFundLink;
|
|
2311
|
+
exports.useBlueskySuggestions = useBlueskySuggestions;
|
|
1981
2312
|
exports.useBulkHideProfileItems = useBulkHideProfileItems;
|
|
1982
2313
|
exports.useBulkHideStandardPublications = useBulkHideStandardPublications;
|
|
1983
2314
|
exports.useBulkUnhideProfileItems = useBulkUnhideProfileItems;
|
|
@@ -2003,8 +2334,13 @@ exports.useDeleteRecord = useDeleteRecord;
|
|
|
2003
2334
|
exports.useDeleteSkill = useDeleteSkill;
|
|
2004
2335
|
exports.useEndorsementCount = useEndorsementCount;
|
|
2005
2336
|
exports.useExternalAccounts = useExternalAccounts;
|
|
2337
|
+
exports.useFeatureAllowlist = useFeatureAllowlist;
|
|
2006
2338
|
exports.useFeaturedProfile = useFeaturedProfile;
|
|
2339
|
+
exports.useFollow = useFollow;
|
|
2340
|
+
exports.useFollowers = useFollowers;
|
|
2007
2341
|
exports.useFollowing = useFollowing;
|
|
2342
|
+
exports.useFollowingFeed = useFollowingFeed;
|
|
2343
|
+
exports.useFollowingList = useFollowingList;
|
|
2008
2344
|
exports.useHeatmapData = useHeatmapData;
|
|
2009
2345
|
exports.useHiddenApps = useHiddenApps;
|
|
2010
2346
|
exports.useHideKeytraceClaim = useHideKeytraceClaim;
|
|
@@ -2013,12 +2349,14 @@ exports.useHideProfileItem = useHideProfileItem;
|
|
|
2013
2349
|
exports.useHideSifaPublication = useHideSifaPublication;
|
|
2014
2350
|
exports.useHideStandardPublication = useHideStandardPublication;
|
|
2015
2351
|
exports.useLinkSkillToPosition = useLinkSkillToPosition;
|
|
2352
|
+
exports.useMutuals = useMutuals;
|
|
2016
2353
|
exports.useMyRoadmapVotes = useMyRoadmapVotes;
|
|
2017
2354
|
exports.useNetworkStreamCount = useNetworkStreamCount;
|
|
2018
2355
|
exports.useProfile = useProfile;
|
|
2019
2356
|
exports.useReactionStatus = useReactionStatus;
|
|
2020
2357
|
exports.useRefreshOrcidPublications = useRefreshOrcidPublications;
|
|
2021
2358
|
exports.useRefreshPds = useRefreshPds;
|
|
2359
|
+
exports.useRemoveFeatureAllowlist = useRemoveFeatureAllowlist;
|
|
2022
2360
|
exports.useResetProfile = useResetProfile;
|
|
2023
2361
|
exports.useRetractRoadmapVote = useRetractRoadmapVote;
|
|
2024
2362
|
exports.useRoadmapVotes = useRoadmapVotes;
|
|
@@ -2032,6 +2370,7 @@ exports.useSkillSuggestions = useSkillSuggestions;
|
|
|
2032
2370
|
exports.useStats = useStats;
|
|
2033
2371
|
exports.useSuggestionCount = useSuggestionCount;
|
|
2034
2372
|
exports.useSuggestions = useSuggestions;
|
|
2373
|
+
exports.useUnfollow = useUnfollow;
|
|
2035
2374
|
exports.useUnhideKeytraceClaim = useUnhideKeytraceClaim;
|
|
2036
2375
|
exports.useUnhideOrcidPublication = useUnhideOrcidPublication;
|
|
2037
2376
|
exports.useUnhideProfileItem = useUnhideProfileItem;
|