@connectedxm/admin 2.8.20 → 2.8.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/index.cjs CHANGED
@@ -1139,6 +1139,7 @@ __export(index_exports, {
1139
1139
  GetThreadMessageReactions: () => GetThreadMessageReactions,
1140
1140
  GetThreadMessageVideos: () => GetThreadMessageVideos,
1141
1141
  GetThreadMessages: () => GetThreadMessages,
1142
+ GetThreadMessagesPoll: () => GetThreadMessagesPoll,
1142
1143
  GetThreads: () => GetThreads,
1143
1144
  GetTier: () => GetTier,
1144
1145
  GetTierAccounts: () => GetTierAccounts,
@@ -1735,6 +1736,7 @@ __export(index_exports, {
1735
1736
  SET_THREAD_CIRCLE_ACCOUNT_QUERY_DATA: () => SET_THREAD_CIRCLE_ACCOUNT_QUERY_DATA,
1736
1737
  SET_THREAD_CIRCLE_QUERY_DATA: () => SET_THREAD_CIRCLE_QUERY_DATA,
1737
1738
  SET_THREAD_CIRCLE_THREADS_QUERY_DATA: () => SET_THREAD_CIRCLE_THREADS_QUERY_DATA,
1739
+ SET_THREAD_MESSAGES_POLL_QUERY_DATA: () => SET_THREAD_MESSAGES_POLL_QUERY_DATA,
1738
1740
  SET_THREAD_MESSAGES_QUERY_DATA: () => SET_THREAD_MESSAGES_QUERY_DATA,
1739
1741
  SET_THREAD_MESSAGE_FILES_QUERY_DATA: () => SET_THREAD_MESSAGE_FILES_QUERY_DATA,
1740
1742
  SET_THREAD_MESSAGE_IMAGES_QUERY_DATA: () => SET_THREAD_MESSAGE_IMAGES_QUERY_DATA,
@@ -1811,6 +1813,7 @@ __export(index_exports, {
1811
1813
  THREAD_CIRCLE_QUERY_KEY: () => THREAD_CIRCLE_QUERY_KEY,
1812
1814
  THREAD_CIRCLE_THREADS_QUERY_KEY: () => THREAD_CIRCLE_THREADS_QUERY_KEY,
1813
1815
  THREAD_MEMBERS_QUERY_KEY: () => THREAD_MEMBERS_QUERY_KEY,
1816
+ THREAD_MESSAGES_POLL_QUERY_KEY: () => THREAD_MESSAGES_POLL_QUERY_KEY,
1814
1817
  THREAD_MESSAGES_QUERY_KEY: () => THREAD_MESSAGES_QUERY_KEY,
1815
1818
  THREAD_MESSAGE_FILES_QUERY_KEY: () => THREAD_MESSAGE_FILES_QUERY_KEY,
1816
1819
  THREAD_MESSAGE_IMAGES_QUERY_KEY: () => THREAD_MESSAGE_IMAGES_QUERY_KEY,
@@ -2068,6 +2071,7 @@ __export(index_exports, {
2068
2071
  useCancelSubscription: () => useCancelSubscription,
2069
2072
  useCloneEvent: () => useCloneEvent,
2070
2073
  useConfirmAccountLogin: () => useConfirmAccountLogin,
2074
+ useConnectedCursorQuery: () => useConnectedCursorQuery,
2071
2075
  useConnectedInfiniteQuery: () => useConnectedInfiniteQuery,
2072
2076
  useConnectedMutation: () => useConnectedMutation,
2073
2077
  useConnectedSingleQuery: () => useConnectedSingleQuery,
@@ -2781,6 +2785,7 @@ __export(index_exports, {
2781
2785
  useGetThreadMessageReactions: () => useGetThreadMessageReactions,
2782
2786
  useGetThreadMessageVideos: () => useGetThreadMessageVideos,
2783
2787
  useGetThreadMessages: () => useGetThreadMessages,
2788
+ useGetThreadMessagesPoll: () => useGetThreadMessagesPoll,
2784
2789
  useGetThreads: () => useGetThreads,
2785
2790
  useGetTier: () => useGetTier,
2786
2791
  useGetTierAccounts: () => useGetTierAccounts,
@@ -3038,7 +3043,7 @@ module.exports = __toCommonJS(index_exports);
3038
3043
 
3039
3044
  // src/ConnectedXMProvider.tsx
3040
3045
  var import_react2 = __toESM(require("react"), 1);
3041
- var import_react_query3 = require("@tanstack/react-query");
3046
+ var import_react_query4 = require("@tanstack/react-query");
3042
3047
 
3043
3048
  // src/PermissionsWrapper.tsx
3044
3049
  var import_react = __toESM(require("react"), 1);
@@ -20874,6 +20879,71 @@ var useGetThreadMembers = (threadId = "", params = {}, options = {}) => {
20874
20879
  );
20875
20880
  };
20876
20881
 
20882
+ // src/queries/useConnectedCursorQuery.ts
20883
+ var import_react_query3 = require("@tanstack/react-query");
20884
+ var useConnectedCursorQuery = (queryKeys, queryFn, params = {}, options = {
20885
+ shouldRedirect: false
20886
+ }, domain) => {
20887
+ if (typeof params.pageSize === "undefined") params.pageSize = 25;
20888
+ const {
20889
+ onModuleForbidden,
20890
+ onNotAuthorized,
20891
+ onNotFound,
20892
+ apiUrl,
20893
+ getToken,
20894
+ organizationId,
20895
+ getExecuteAs,
20896
+ queryClient
20897
+ } = useConnectedXM();
20898
+ const { allowed } = usePermission_default(domain, domain ? "read" : void 0);
20899
+ const getNextPageParam = (lastPage) => {
20900
+ if (lastPage.cursor) {
20901
+ return lastPage.cursor;
20902
+ }
20903
+ return null;
20904
+ };
20905
+ return (0, import_react_query3.useInfiniteQuery)({
20906
+ staleTime: 60 * 1e3,
20907
+ // 60 Seconds
20908
+ retry: (failureCount, error) => {
20909
+ if (error.response?.status === 404) {
20910
+ if (onNotFound) onNotFound(error, queryKeys, options.shouldRedirect || false);
20911
+ return false;
20912
+ }
20913
+ if (error.response?.status === 403 || error.response?.status === 460 || error.response?.status === 461) {
20914
+ if (onModuleForbidden) onModuleForbidden(error, queryKeys, options.shouldRedirect || false);
20915
+ return false;
20916
+ }
20917
+ if (error.response?.status === 401) {
20918
+ if (onNotAuthorized) onNotAuthorized(error, queryKeys, options.shouldRedirect || false);
20919
+ return false;
20920
+ }
20921
+ if (failureCount < 3) return true;
20922
+ return false;
20923
+ },
20924
+ ...options,
20925
+ queryKey: [
20926
+ ...queryKeys,
20927
+ ...GetBaseInfiniteQueryKeys(params?.search)
20928
+ ],
20929
+ queryFn: ({ pageParam }) => queryFn({
20930
+ ...params,
20931
+ pageSize: params.pageSize || 25,
20932
+ cursor: pageParam,
20933
+ queryClient,
20934
+ adminApiParams: {
20935
+ apiUrl,
20936
+ getToken,
20937
+ organizationId,
20938
+ getExecuteAs
20939
+ }
20940
+ }),
20941
+ initialPageParam: null,
20942
+ getNextPageParam,
20943
+ enabled: (!domain || allowed) && options.enabled
20944
+ });
20945
+ };
20946
+
20877
20947
  // src/utilities/AppendInfiniteQuery.ts
20878
20948
  var import_immer = require("immer");
20879
20949
  var AppendInfiniteQuery = (queryClient, key, newData) => {
@@ -20997,7 +21067,7 @@ var THREAD_MESSAGES_QUERY_KEY = (threadId) => [
20997
21067
  ...THREAD_QUERY_KEY(threadId),
20998
21068
  "MESSAGES"
20999
21069
  ];
21000
- var SET_THREAD_MESSAGES_QUERY_DATA = (client, keyParams, response, baseKeys = ["en"]) => {
21070
+ var SET_THREAD_MESSAGES_QUERY_DATA = (client, keyParams, response, baseKeys = [""]) => {
21001
21071
  client.setQueryData(
21002
21072
  [
21003
21073
  ...THREAD_MESSAGES_QUERY_KEY(...keyParams),
@@ -21008,7 +21078,7 @@ var SET_THREAD_MESSAGES_QUERY_DATA = (client, keyParams, response, baseKeys = ["
21008
21078
  };
21009
21079
  var GetThreadMessages = async ({
21010
21080
  threadId,
21011
- pageParam,
21081
+ cursor,
21012
21082
  pageSize,
21013
21083
  orderBy,
21014
21084
  search,
@@ -21018,7 +21088,7 @@ var GetThreadMessages = async ({
21018
21088
  const adminApi = await GetAdminAPI(adminApiParams);
21019
21089
  const { data } = await adminApi.get(`/threads/${threadId}/messages`, {
21020
21090
  params: {
21021
- page: pageParam || void 0,
21091
+ cursor: cursor || void 0,
21022
21092
  pageSize: pageSize || void 0,
21023
21093
  orderBy: orderBy || void 0,
21024
21094
  search: search || void 0
@@ -21035,7 +21105,7 @@ var GetThreadMessages = async ({
21035
21105
  };
21036
21106
  var useGetThreadMessages = (threadId = "", params = {}, options = {}) => {
21037
21107
  const { authenticated } = useConnectedXM();
21038
- return useConnectedInfiniteQuery(
21108
+ return useConnectedCursorQuery(
21039
21109
  THREAD_MESSAGES_QUERY_KEY(threadId),
21040
21110
  (params2) => GetThreadMessages({ ...params2, threadId }),
21041
21111
  params,
@@ -21266,6 +21336,46 @@ var useGetThreadMessageVideos = (threadId, messageId, params = {}, options = {})
21266
21336
  );
21267
21337
  };
21268
21338
 
21339
+ // src/queries/threads/useGetThreadMessagesPoll.ts
21340
+ var THREAD_MESSAGES_POLL_QUERY_KEY = (threadId, lastMessageId) => [
21341
+ ...THREAD_QUERY_KEY(threadId),
21342
+ "MESSAGES",
21343
+ lastMessageId,
21344
+ "POLL"
21345
+ ];
21346
+ var SET_THREAD_MESSAGES_POLL_QUERY_DATA = (client, keyParams, response) => {
21347
+ client.setQueryData(THREAD_MESSAGES_POLL_QUERY_KEY(...keyParams), response);
21348
+ };
21349
+ var GetThreadMessagesPoll = async ({
21350
+ threadId,
21351
+ lastMessageId,
21352
+ adminApiParams
21353
+ }) => {
21354
+ const adminApi = await GetAdminAPI(adminApiParams);
21355
+ const { data } = await adminApi.get(`/threads/${threadId}/messages/poll`, {
21356
+ params: {
21357
+ lastMessageId: lastMessageId || void 0
21358
+ }
21359
+ });
21360
+ return data;
21361
+ };
21362
+ var useGetThreadMessagesPoll = (threadId = "", lastMessageId = "", options = {}) => {
21363
+ const { authenticated } = useConnectedXM();
21364
+ return useConnectedSingleQuery(
21365
+ THREAD_MESSAGES_POLL_QUERY_KEY(threadId, lastMessageId),
21366
+ (params) => GetThreadMessagesPoll({ ...params, threadId, lastMessageId }),
21367
+ {
21368
+ ...options,
21369
+ enabled: !!authenticated && !!threadId && !!lastMessageId && (options?.enabled ?? true),
21370
+ // Polling configuration - you can adjust these as needed
21371
+ refetchInterval: options.refetchInterval ?? 5e3,
21372
+ // Poll every 5 seconds
21373
+ refetchIntervalInBackground: options.refetchIntervalInBackground ?? false
21374
+ },
21375
+ "threads"
21376
+ );
21377
+ };
21378
+
21269
21379
  // src/queries/tiers/useGetTiers.ts
21270
21380
  var TIERS_QUERY_KEY = (type) => {
21271
21381
  const keys = ["TIERS"];
@@ -21701,7 +21811,7 @@ var ConnectedXMProvider = ({
21701
21811
  setSSR(false);
21702
21812
  }, []);
21703
21813
  if (ssr) {
21704
- return /* @__PURE__ */ import_react2.default.createElement(import_react_query3.QueryClientProvider, { client: queryClient }, /* @__PURE__ */ import_react2.default.createElement(
21814
+ return /* @__PURE__ */ import_react2.default.createElement(import_react_query4.QueryClientProvider, { client: queryClient }, /* @__PURE__ */ import_react2.default.createElement(
21705
21815
  ConnectedXMClientContext.Provider,
21706
21816
  {
21707
21817
  value: {
@@ -21759,15 +21869,15 @@ var useConnectedXM = () => {
21759
21869
  };
21760
21870
 
21761
21871
  // src/mutations/useConnectedMutation.ts
21762
- var import_react_query4 = require("@tanstack/react-query");
21872
+ var import_react_query5 = require("@tanstack/react-query");
21763
21873
  var useConnectedMutation = (mutation, options, permission) => {
21764
21874
  const { apiUrl, getToken, organizationId, getExecuteAs, onMutationError } = useConnectedXM();
21765
- const queryClient = (0, import_react_query4.useQueryClient)();
21875
+ const queryClient = (0, import_react_query5.useQueryClient)();
21766
21876
  const { allowed, enabled } = usePermission_default(
21767
21877
  permission?.domain,
21768
21878
  permission?.type
21769
21879
  );
21770
- return (0, import_react_query4.useMutation)({
21880
+ return (0, import_react_query5.useMutation)({
21771
21881
  mutationFn: (data) => {
21772
21882
  if (!!permission?.domain && !!permission.type) {
21773
21883
  if (!enabled) {
@@ -38864,7 +38974,7 @@ var useDeleteVideoCaption = (options = {}) => {
38864
38974
  };
38865
38975
 
38866
38976
  // src/mutations/videos/useDownloadVideoCaption.ts
38867
- var import_react_query5 = require("@tanstack/react-query");
38977
+ var import_react_query6 = require("@tanstack/react-query");
38868
38978
  var DownloadVideoCaption = async ({
38869
38979
  videoId,
38870
38980
  language,
@@ -38881,7 +38991,7 @@ var DownloadVideoCaption = async ({
38881
38991
  };
38882
38992
  var useDownloadVideoCaption = (options = {}) => {
38883
38993
  const { apiUrl, getToken, organizationId, getExecuteAs } = useConnectedXM();
38884
- return (0, import_react_query5.useMutation)({
38994
+ return (0, import_react_query6.useMutation)({
38885
38995
  mutationFn: (params) => DownloadVideoCaption({
38886
38996
  ...params,
38887
38997
  adminApiParams: {
@@ -40110,6 +40220,7 @@ var useUploadVideoCaptions = (options = {}) => {
40110
40220
  GetThreadMessageReactions,
40111
40221
  GetThreadMessageVideos,
40112
40222
  GetThreadMessages,
40223
+ GetThreadMessagesPoll,
40113
40224
  GetThreads,
40114
40225
  GetTier,
40115
40226
  GetTierAccounts,
@@ -40706,6 +40817,7 @@ var useUploadVideoCaptions = (options = {}) => {
40706
40817
  SET_THREAD_CIRCLE_ACCOUNT_QUERY_DATA,
40707
40818
  SET_THREAD_CIRCLE_QUERY_DATA,
40708
40819
  SET_THREAD_CIRCLE_THREADS_QUERY_DATA,
40820
+ SET_THREAD_MESSAGES_POLL_QUERY_DATA,
40709
40821
  SET_THREAD_MESSAGES_QUERY_DATA,
40710
40822
  SET_THREAD_MESSAGE_FILES_QUERY_DATA,
40711
40823
  SET_THREAD_MESSAGE_IMAGES_QUERY_DATA,
@@ -40782,6 +40894,7 @@ var useUploadVideoCaptions = (options = {}) => {
40782
40894
  THREAD_CIRCLE_QUERY_KEY,
40783
40895
  THREAD_CIRCLE_THREADS_QUERY_KEY,
40784
40896
  THREAD_MEMBERS_QUERY_KEY,
40897
+ THREAD_MESSAGES_POLL_QUERY_KEY,
40785
40898
  THREAD_MESSAGES_QUERY_KEY,
40786
40899
  THREAD_MESSAGE_FILES_QUERY_KEY,
40787
40900
  THREAD_MESSAGE_IMAGES_QUERY_KEY,
@@ -41039,6 +41152,7 @@ var useUploadVideoCaptions = (options = {}) => {
41039
41152
  useCancelSubscription,
41040
41153
  useCloneEvent,
41041
41154
  useConfirmAccountLogin,
41155
+ useConnectedCursorQuery,
41042
41156
  useConnectedInfiniteQuery,
41043
41157
  useConnectedMutation,
41044
41158
  useConnectedSingleQuery,
@@ -41752,6 +41866,7 @@ var useUploadVideoCaptions = (options = {}) => {
41752
41866
  useGetThreadMessageReactions,
41753
41867
  useGetThreadMessageVideos,
41754
41868
  useGetThreadMessages,
41869
+ useGetThreadMessagesPoll,
41755
41870
  useGetThreads,
41756
41871
  useGetTier,
41757
41872
  useGetTierAccounts,