@ludo.ninja/api 1.0.30 → 1.0.31

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.
Files changed (341) hide show
  1. package/build/graphql_tools/__generated__/schema.d.ts +2 -2
  2. package/build/graphql_tools/__generated__/schema.js +4 -0
  3. package/codegen.yml +22 -22
  4. package/package.json +33 -33
  5. package/src/config/index.ts +199 -199
  6. package/src/config/typePolicies.ts +56 -56
  7. package/src/cookies/index.ts +93 -93
  8. package/src/documents/server-assets/mutations/useDislikeAsset/DislikeAsset.graphql +3 -3
  9. package/src/documents/server-assets/mutations/useLikeAsset/LikeAsset.graphql +3 -3
  10. package/src/documents/server-assets/queries/useFetchAsset/FetchAsset.graphql +82 -81
  11. package/src/documents/server-assets/queries/useFetchAssetByBlockchain/FetchAssetByBlockchain.graphql +80 -79
  12. package/src/documents/server-assets/queries/useFetchAssets/FetchAssets.graphql +78 -78
  13. package/src/documents/server-assets/queries/useFetchDynamicAssetLikes/FetchDynamicAssetLikes.graphql +6 -6
  14. package/src/documents/server-assets/queries/useFetchDynamicAssetsLikes/FetchDynamicAssetsLikes.graphql +7 -7
  15. package/src/documents/server-assets/queries/useFetchLiked/FetchLiked.graphql +3 -3
  16. package/src/documents/server-collection/mutations/useDislikeCollection/DislikeAsset.graphql +3 -3
  17. package/src/documents/server-collection/mutations/useLikeCollection/LikeCollection.graphql +3 -3
  18. package/src/documents/server-collection/queries/useFetchCollection/FetchCollection.graphql +36 -36
  19. package/src/documents/server-collection/queries/useFetchCollections/FetchCollectionAssets.graphql +33 -33
  20. package/src/documents/server-collection/queries/useFetchCollectionsByIds/FetchCollectionsByIds.graphql +35 -35
  21. package/src/documents/server-collection/queries/useFetchDynamicCollectionData/FetchDynamicCollectionData.graphql +38 -38
  22. package/src/documents/server-collection/queries/useFetchDynamicCollectionsData/FetchDynamicCollectionsData.graphql +38 -38
  23. package/src/documents/server-extension/queries/useFetchNFTData/FetchNFTData.graphql +22 -22
  24. package/src/documents/server-galleries/mutations/useAddAssetsToGallery/AddAssetsToGallery.graphql +3 -3
  25. package/src/documents/server-galleries/mutations/useAddAssetsToGallery/AddAssetsToGalleryV2.graphql +3 -3
  26. package/src/documents/server-galleries/mutations/useAddChangeGalleryBanner/UploadGalleryBanner.graphql +3 -3
  27. package/src/documents/server-galleries/mutations/useAddCollectionsToGallery/AddCollectionsToGallery.graphql +3 -3
  28. package/src/documents/server-galleries/mutations/useAddCollectionsToGallery/AddCollectionsToGalleryV2.graphql +3 -3
  29. package/src/documents/server-galleries/mutations/useAddCreationsToGallery/AddCreationsToGallery.graphql +3 -3
  30. package/src/documents/server-galleries/mutations/useAddCreationsToGallery/AddCreationsToGalleryV2.graphql +3 -3
  31. package/src/documents/server-galleries/mutations/useCreateFavorites/CreateFavoriteListV2.graphql +13 -13
  32. package/src/documents/server-galleries/mutations/useCreateFavorites/CreateFavorites.graphql +8 -8
  33. package/src/documents/server-galleries/mutations/useCreateGallery/CreateGallery.graphql +3 -3
  34. package/src/documents/server-galleries/mutations/useCreateGallery/CreateGalleryV2.graphql +8 -8
  35. package/src/documents/server-galleries/mutations/useDeleteGallery/DeleteGallery.graphql +2 -2
  36. package/src/documents/server-galleries/mutations/useDeleteGalleryBanner/DeleteGalleryBanner.graphql +3 -3
  37. package/src/documents/server-galleries/mutations/useEditGallery/EditGallery.graphql +3 -3
  38. package/src/documents/server-galleries/mutations/useRemoveAssetFromGallery/RemoveAssetFromGallery.graphql +3 -3
  39. package/src/documents/server-galleries/mutations/useRemoveAssetFromGallery/RemoveAssetFromGalleryV2.graphql +3 -3
  40. package/src/documents/server-galleries/mutations/useRemoveCollectionFromGallery/RemoveCollectionFromGallery.graphql +3 -3
  41. package/src/documents/server-galleries/mutations/useRemoveCollectionFromGallery/RemoveCollectionFromGalleryV2.graphql +3 -3
  42. package/src/documents/server-galleries/mutations/useRemoveCreationFromGallery/RemoveCreationFromGallery.graphql +3 -3
  43. package/src/documents/server-galleries/mutations/useRemoveCreationFromGallery/RemoveCreationFromGalleryV2.graphql +3 -3
  44. package/src/documents/server-galleries/queries/useFetchGallery/FetchGallery.graphql +17 -17
  45. package/src/documents/server-galleries/queries/useFetchGallery/FetchGalleryCreations.graphql +34 -34
  46. package/src/documents/server-galleries/queries/useFetchGallery/FetchGalleryV2.graphql +18 -18
  47. package/src/documents/server-galleries/queries/useFetchMyFavorites/FetchMyFavorites.graphql +48 -48
  48. package/src/documents/server-galleries/queries/useFetchMyFavorites/FetchMyFavoritesV2.graphql +21 -21
  49. package/src/documents/server-galleries/queries/useFetchMyGalleries/FetchMyGalleriesV2.graphql +21 -21
  50. package/src/documents/server-galleries/queries/useFetchUserFavorites/FetchUserFavorites.graphql +55 -55
  51. package/src/documents/server-galleries/queries/useFetchUserFavorites/FetchUserFavoritesV2.graphql +28 -28
  52. package/src/documents/server-galleries/queries/useFetchUserGalleries/FetchUserGalleries.graphql +55 -55
  53. package/src/documents/server-galleries/queries/useFetchUserGalleries/FetchUserGalleriesV2.graphql +28 -28
  54. package/src/documents/server-identities/mutations/useAddWalletElrond/AddWalletElrond.graphql +3 -3
  55. package/src/documents/server-identities/mutations/useAddWalletFlow/AddWalletFlow.graphql +3 -3
  56. package/src/documents/server-identities/mutations/useAddWalletMetamask/AddWalletMetamask.graphql +3 -3
  57. package/src/documents/server-identities/mutations/useAddWalletSolana/AddWalletSolana.graphql +3 -3
  58. package/src/documents/server-identities/mutations/useAddWalletTezos/AddWalletTezos.graphql +3 -3
  59. package/src/documents/server-identities/mutations/useCreateNonce/CreateNonce.graphql +3 -3
  60. package/src/documents/server-identities/mutations/useGenerateNewInviteCodes/GenerateNewInviteCodes.graphql +7 -7
  61. package/src/documents/server-identities/mutations/useRefrechToken/RefreshToken.graphql +8 -8
  62. package/src/documents/server-identities/mutations/useRevokeToken/RevokeToken.graphql +3 -3
  63. package/src/documents/server-identities/mutations/useSignInElrond/SignInElrond.graphql +9 -9
  64. package/src/documents/server-identities/mutations/useSignInFlow/SignInFlow.graphql +9 -9
  65. package/src/documents/server-identities/mutations/useSignInMetamask/SignInMetamask.graphql +9 -9
  66. package/src/documents/server-identities/mutations/useSignInSolana/SignInSolana.graphql +9 -9
  67. package/src/documents/server-identities/mutations/useSignInTezos/SignInTezos.graphql +9 -9
  68. package/src/documents/server-identities/mutations/useUpdateProfile/UpdateProfile.graphql +18 -18
  69. package/src/documents/server-identities/queries/useFetchProfile/FetchProfile.graphql +31 -31
  70. package/src/documents/server-identities/queries/useFetchWallets/FetchUserWallets.graphql +9 -9
  71. package/src/documents/server-identities/queries/useGetMyInviteCodes/GetMyInviteCodes.graphql +8 -8
  72. package/src/documents/server-medias/queries/useFetchUserPic/FetchUserpic.graphql +3 -3
  73. package/src/documents/server-opportunities/mutations/useCreateOpportunity//320/241reateOpportunity.graphql +3 -3
  74. package/src/documents/server-opportunities/mutations/useOpenOpportunity/OpenOpportunity.graphql +3 -3
  75. package/src/documents/server-opportunities/queries/useFetchOpportunities/FetchOpportunities.graphql +42 -42
  76. package/src/documents/server-preferences/mutations/useSaveUserExpectations/SaveUserExpectations.graphql +3 -3
  77. package/src/documents/server-preferences/mutations/useSaveUserInterests/SaveUserInterests.graphql +3 -3
  78. package/src/documents/server-preferences/queries/useFetchExpectations/FetchExpectations.graphql +6 -6
  79. package/src/documents/server-preferences/queries/useFetchInterests/FetchUserInterests.graphql +6 -6
  80. package/src/documents/server-preferences/queries/useFetchSearchResultTimeSelection/FetchSearchResultTimeSelections.graphql +6 -6
  81. package/src/documents/server-preferences/queries/useFetchUserExpectations/FetchUserExpectations.graphql +7 -7
  82. package/src/documents/server-preferences/queries/useFetchUserInterests/FetchUserInterests.graphql +8 -8
  83. package/src/documents/server-preferences/queries/useSearchResultBlockchainSelections/FetchSearchResultBlockchainSelections.graphql +6 -6
  84. package/src/documents/server-preferences/queries/useSearchResultCategorySelections/FetchSearchResultCategorySelections.graphql +6 -6
  85. package/src/documents/server-preferences/queries/useSearchResultStatusSelections/FetchSearchResultStatusSelection.graphql +6 -6
  86. package/src/documents/server-preferences/queries/useSearchResultTypeSelections/FetchSetsSearchResultTypeSelections.graphql +6 -6
  87. package/src/documents/server-search/queries/useFetchAssetsCount/FetchAssetsCount.graphql +3 -3
  88. package/src/documents/server-search/queries/useFetchCollections/FindCollections.graphql +21 -21
  89. package/src/documents/server-search/queries/useFetchCreations/FetchCreations.graphql +54 -54
  90. package/src/documents/server-search/queries/useFetchCreationsByItemType/FetchCreationsByItemType.graphql +53 -53
  91. package/src/documents/server-search/queries/useFetchFindAllTopEntitiesByName/FindAllTopEntitiesByName.graphql +98 -98
  92. package/src/documents/server-search/queries/useFetchNetWorth/FetchProfile.graphql +6 -6
  93. package/src/documents/server-search/queries/useFindCreations/FindCreations.graphql +54 -54
  94. package/src/documents/server-search/queries/useFindProfilesByName/FindProfilesByName.graphql +14 -14
  95. package/src/documents/server-search/queries/useFindSets/FindSets.graphql +21 -21
  96. package/src/documents/server-search/queries/useFindShowcaseItems/FetchShowcaseItems.graphql +20 -20
  97. package/src/documents/server-search/queries/useFindUserCreations/FindUserCreations.graphql +55 -55
  98. package/src/documents/server-search/queries/useFindUserShowcaseItems/FetchFindUserShowcaseItems.graphql +21 -21
  99. package/src/graphql_tools/__generated__/schema.ts +6 -2
  100. package/src/graphql_tools/schemas/asset/query.graphqls +65 -65
  101. package/src/graphql_tools/schemas/asset/type/asset.graphqls +36 -36
  102. package/src/graphql_tools/schemas/asset/type/assetPage.graphqls +4 -4
  103. package/src/graphql_tools/schemas/asset/type/attribute.graphqls +4 -4
  104. package/src/graphql_tools/schemas/asset/type/media.graphqls +11 -11
  105. package/src/graphql_tools/schemas/assets/asset/mutation.graphqls +11 -11
  106. package/src/graphql_tools/schemas/assets/asset/query.graphqls +14 -14
  107. package/src/graphql_tools/schemas/assets/asset/type/asset.graphqls +36 -36
  108. package/src/graphql_tools/schemas/assets/asset/type/assetGallery.graphqls +4 -4
  109. package/src/graphql_tools/schemas/assets/asset/type/assetMarket.graphqls +6 -6
  110. package/src/graphql_tools/schemas/assets/asset/type/assetPrice.graphqls +4 -4
  111. package/src/graphql_tools/schemas/assets/asset/type/assetsPage.graphqls +4 -4
  112. package/src/graphql_tools/schemas/assets/asset/type/attribute.graphqls +4 -4
  113. package/src/graphql_tools/schemas/assets/asset/type/bannerAsset.graphqls +7 -7
  114. package/src/graphql_tools/schemas/assets/asset/type/bannerAssetsPage.graphqls +4 -4
  115. package/src/graphql_tools/schemas/assets/asset/type/dynamicAssetData.graphqls +5 -5
  116. package/src/graphql_tools/schemas/assets/asset/type/galleries.graphqls +3 -3
  117. package/src/graphql_tools/schemas/assets/asset/type/media.graphqls +11 -11
  118. package/src/graphql_tools/schemas/assets/asset/type/profile.graphqls +15 -15
  119. package/src/graphql_tools/schemas/assets/asset/type/showcaseAsset.graphqls +14 -14
  120. package/src/graphql_tools/schemas/assets/asset/type/showcaseAssetsPage.graphqls +4 -4
  121. package/src/graphql_tools/schemas/assets/scalars.graphqls +2 -2
  122. package/src/graphql_tools/schemas/assets/schema.graphqls +12 -12
  123. package/src/graphql_tools/schemas/auth/auth/mutation.graphqls +4 -4
  124. package/src/graphql_tools/schemas/auth/auth/query.graphqls +4 -4
  125. package/src/graphql_tools/schemas/auth/auth/type/login.graphqls +6 -6
  126. package/src/graphql_tools/schemas/auth/auth/type/loginsPage.graphqls +4 -4
  127. package/src/graphql_tools/schemas/auth/auth/type/tokenPair.graphqls +6 -6
  128. package/src/graphql_tools/schemas/auth/scalars.graphqls +2 -2
  129. package/src/graphql_tools/schemas/auth/schema.graphqls +12 -12
  130. package/src/graphql_tools/schemas/auth/testReponse.graphqls +5 -5
  131. package/src/graphql_tools/schemas/collection/input/dynamicCollectionDataInput.graphqls +5 -5
  132. package/src/graphql_tools/schemas/collection/query.graphqls +8 -8
  133. package/src/graphql_tools/schemas/collection/type/attribute.graphqls +4 -4
  134. package/src/graphql_tools/schemas/collection/type/collection.graphqls +21 -21
  135. package/src/graphql_tools/schemas/collection/type/collectionAsset.graphqls +29 -29
  136. package/src/graphql_tools/schemas/collection/type/collectionAssetsPage.graphqls +4 -4
  137. package/src/graphql_tools/schemas/collection/type/collectionMarket.graphqls +6 -6
  138. package/src/graphql_tools/schemas/collection/type/collectionPage.graphqls +4 -4
  139. package/src/graphql_tools/schemas/collection/type/dynamicCollectionData.graphqls +6 -6
  140. package/src/graphql_tools/schemas/collection/type/media.graphqls +10 -10
  141. package/src/graphql_tools/schemas/collection/type/profile.graphqls +9 -9
  142. package/src/graphql_tools/schemas/collections/collection/mutation.graphqls +4 -4
  143. package/src/graphql_tools/schemas/collections/collection/query.graphqls +4 -4
  144. package/src/graphql_tools/schemas/collections/collection/type/profile.graphqls +9 -9
  145. package/src/graphql_tools/schemas/collections/collection/type/showcaseItem.graphqls +19 -19
  146. package/src/graphql_tools/schemas/collections/collection/type/showcaseItemsPage.graphqls +4 -4
  147. package/src/graphql_tools/schemas/collections/scalars.graphqls +2 -2
  148. package/src/graphql_tools/schemas/collections/schema.graphqls +12 -12
  149. package/src/graphql_tools/schemas/common/input/gallerySearchFilterInput.graphqls +6 -6
  150. package/src/graphql_tools/schemas/common/input/searchFilterInput.graphqls +5 -5
  151. package/src/graphql_tools/schemas/common/input/selectionInput.graphqls +4 -4
  152. package/src/graphql_tools/schemas/common/query.graphqls +21 -21
  153. package/src/graphql_tools/schemas/common/type/topEntitiesPage.graphqls +5 -5
  154. package/src/graphql_tools/schemas/creation/query.graphqls +5 -5
  155. package/src/graphql_tools/schemas/creation/type/creation.graphqls +27 -27
  156. package/src/graphql_tools/schemas/creation/type/creationPage.graphqls +4 -4
  157. package/src/graphql_tools/schemas/extension/query.graphqls +3 -3
  158. package/src/graphql_tools/schemas/extension/scalars.graphqls +1 -1
  159. package/src/graphql_tools/schemas/extension/schema.graphqls +12 -12
  160. package/src/graphql_tools/schemas/extension/type/assetData.graphqls +4 -4
  161. package/src/graphql_tools/schemas/extension/type/collectionData.graphqls +9 -9
  162. package/src/graphql_tools/schemas/extension/type/nftData.graphqls +9 -9
  163. package/src/graphql_tools/schemas/galleries/gallery/input/galleryAsset.graphqls +4 -4
  164. package/src/graphql_tools/schemas/galleries/gallery/input/galleryCreation.graphqls +4 -4
  165. package/src/graphql_tools/schemas/galleries/gallery/mutation.graphqls +29 -29
  166. package/src/graphql_tools/schemas/galleries/gallery/query.graphqls +49 -49
  167. package/src/graphql_tools/schemas/galleries/gallery/type/asset.graphqls +16 -16
  168. package/src/graphql_tools/schemas/galleries/gallery/type/assetsPage.graphqls +4 -4
  169. package/src/graphql_tools/schemas/galleries/gallery/type/attribute.graphqls +4 -4
  170. package/src/graphql_tools/schemas/galleries/gallery/type/galleriesPage.graphqls +5 -5
  171. package/src/graphql_tools/schemas/galleries/gallery/type/galleriesPageV2.graphqls +5 -5
  172. package/src/graphql_tools/schemas/galleries/gallery/type/gallery.graphqlsDuplicate +13 -13
  173. package/src/graphql_tools/schemas/galleries/gallery/type/media.graphqls +9 -9
  174. package/src/graphql_tools/schemas/galleries/gallery/type/profile.graphqls +9 -9
  175. package/src/graphql_tools/schemas/galleries/scalars.graphqls +2 -2
  176. package/src/graphql_tools/schemas/galleries/schema.graphqls +12 -12
  177. package/src/graphql_tools/schemas/gallery/query.graphqls +37 -37
  178. package/src/graphql_tools/schemas/gallery/type/gallery.graphqlsDupicate +16 -16
  179. package/src/graphql_tools/schemas/gallery/type/galleryAsset.graphqls +13 -13
  180. package/src/graphql_tools/schemas/gallery/type/galleryCreation.graphqls +29 -29
  181. package/src/graphql_tools/schemas/gallery/type/galleryCreationsPage.graphqls +4 -4
  182. package/src/graphql_tools/schemas/gallery/type/galleryPage.graphqls +5 -5
  183. package/src/graphql_tools/schemas/gallery/type/profile.graphqls +7 -7
  184. package/src/graphql_tools/schemas/identities/identity/mutation.graphqls +26 -26
  185. package/src/graphql_tools/schemas/identities/identity/query.graphqls +4 -4
  186. package/src/graphql_tools/schemas/identities/identity/type/identity.graphqls +8 -8
  187. package/src/graphql_tools/schemas/identities/identity/type/wallet.graphqls +7 -7
  188. package/src/graphql_tools/schemas/identities/profile/input/inputProfile.graphqls +6 -6
  189. package/src/graphql_tools/schemas/identities/profile/input/inputSocial.graphqls +15 -15
  190. package/src/graphql_tools/schemas/identities/profile/mutation.graphqls +8 -8
  191. package/src/graphql_tools/schemas/identities/profile/query.graphqls +6 -6
  192. package/src/graphql_tools/schemas/identities/profile/type/follower.graphqls +6 -6
  193. package/src/graphql_tools/schemas/identities/profile/type/profile.graphqls +16 -16
  194. package/src/graphql_tools/schemas/identities/profile/type/social.graphqls +6 -6
  195. package/src/graphql_tools/schemas/identities/profile/type/user_invite_code.graphqls +5 -5
  196. package/src/graphql_tools/schemas/identities/scalars.graphqls +2 -2
  197. package/src/graphql_tools/schemas/identities/schema.graphqls +12 -12
  198. package/src/graphql_tools/schemas/images/mutation.graphqls +6 -6
  199. package/src/graphql_tools/schemas/images/query.graphqls +3 -3
  200. package/src/graphql_tools/schemas/images/scalars.graphqls +2 -2
  201. package/src/graphql_tools/schemas/images/schema.graphqls +12 -12
  202. package/src/graphql_tools/schemas/markets/market/query.graphqls +4 -4
  203. package/src/graphql_tools/schemas/markets/market/type/market.graphqls +88 -88
  204. package/src/graphql_tools/schemas/markets/market/type/marketsPage.graphqls +4 -4
  205. package/src/graphql_tools/schemas/markets/scalars.graphqls +2 -2
  206. package/src/graphql_tools/schemas/markets/schema.graphqls +12 -12
  207. package/src/graphql_tools/schemas/moderations/asset/input/assetModerationFilter.graphqls +12 -12
  208. package/src/graphql_tools/schemas/moderations/asset/input/updateAssetModeration.graphqls +5 -5
  209. package/src/graphql_tools/schemas/moderations/asset/mutation.graphqls +10 -10
  210. package/src/graphql_tools/schemas/moderations/asset/query.graphqls +4 -4
  211. package/src/graphql_tools/schemas/moderations/asset/type/assetModeration.graphqls +29 -29
  212. package/src/graphql_tools/schemas/moderations/asset/type/assetModerationsPage.graphqls +4 -4
  213. package/src/graphql_tools/schemas/moderations/asset/type/attribute.graphqls +4 -4
  214. package/src/graphql_tools/schemas/moderations/asset/type/media.graphqls +7 -7
  215. package/src/graphql_tools/schemas/moderations/asset/type/profile.graphqls +9 -9
  216. package/src/graphql_tools/schemas/moderations/common/input/selection.graphqls +4 -4
  217. package/src/graphql_tools/schemas/moderations/scalars.graphqls +2 -2
  218. package/src/graphql_tools/schemas/moderations/schema.graphqls +12 -12
  219. package/src/graphql_tools/schemas/moderations/user/input/updateUserModeration.graphqls +6 -6
  220. package/src/graphql_tools/schemas/moderations/user/input/userModerationFilter.graphqls +8 -8
  221. package/src/graphql_tools/schemas/moderations/user/mutation.graphqls +11 -11
  222. package/src/graphql_tools/schemas/moderations/user/query.graphqls +5 -5
  223. package/src/graphql_tools/schemas/moderations/user/type/userModeration.graphqls +14 -14
  224. package/src/graphql_tools/schemas/moderations/user/type/userModerationsPage.graphqls +4 -4
  225. package/src/graphql_tools/schemas/moderations/user/type/userWallet.graphqls +7 -7
  226. package/src/graphql_tools/schemas/opportunities/opportunity/input/opportunity.graphqls +14 -14
  227. package/src/graphql_tools/schemas/opportunities/opportunity/mutation.graphqls +4 -4
  228. package/src/graphql_tools/schemas/opportunities/opportunity/query.graphqls +3 -3
  229. package/src/graphql_tools/schemas/opportunities/opportunity/type/opportunity.graphqls +18 -18
  230. package/src/graphql_tools/schemas/opportunities/opportunity/type/opportunityPage.graphqls +4 -4
  231. package/src/graphql_tools/schemas/opportunities/scalars.graphqls +1 -1
  232. package/src/graphql_tools/schemas/opportunities/schema.graphqls +12 -12
  233. package/src/graphql_tools/schemas/preferences/mutation.graphqls +5 -5
  234. package/src/graphql_tools/schemas/preferences/query.graphqls +27 -27
  235. package/src/graphql_tools/schemas/preferences/scalars.graphqls +2 -2
  236. package/src/graphql_tools/schemas/preferences/schema.graphqls +12 -12
  237. package/src/graphql_tools/schemas/preferences/type/expectation.graphqls +4 -4
  238. package/src/graphql_tools/schemas/preferences/type/interest.graphqls +4 -4
  239. package/src/graphql_tools/schemas/preferences/type/offer.graphqls +4 -4
  240. package/src/graphql_tools/schemas/preferences/type/selection.graphqls +5 -5
  241. package/src/graphql_tools/schemas/preferences/type/userExpectation.graphqls +5 -5
  242. package/src/graphql_tools/schemas/preferences/type/userInterest.graphqls +6 -6
  243. package/src/graphql_tools/schemas/preferences/type/userOffer.graphqls +4 -4
  244. package/src/graphql_tools/schemas/profile/query.graphqls +18 -18
  245. package/src/graphql_tools/schemas/profile/type/profile.graphqls +9 -9
  246. package/src/graphql_tools/schemas/profile/type/profilePage.graphqls +4 -4
  247. package/src/graphql_tools/schemas/reports/asset/input/assetReportFilter.graphqls +13 -13
  248. package/src/graphql_tools/schemas/reports/asset/input/assetReportRestriction.graphqls +5 -5
  249. package/src/graphql_tools/schemas/reports/asset/mutation.graphqls +11 -11
  250. package/src/graphql_tools/schemas/reports/asset/query.graphqls +3 -3
  251. package/src/graphql_tools/schemas/reports/asset/type/assetReport.graphqls +37 -37
  252. package/src/graphql_tools/schemas/reports/asset/type/assetReportsPage.graphqls +4 -4
  253. package/src/graphql_tools/schemas/reports/asset/type/attribute.graphqls +4 -4
  254. package/src/graphql_tools/schemas/reports/asset/type/media.graphqls +7 -7
  255. package/src/graphql_tools/schemas/reports/common/input/selectionInput.graphqls +4 -4
  256. package/src/graphql_tools/schemas/reports/gallery/input/galleryReportFilter.graphqls +12 -12
  257. package/src/graphql_tools/schemas/reports/gallery/input/galleryReportRestriction.graphqls +5 -5
  258. package/src/graphql_tools/schemas/reports/gallery/mutation.graphqls +11 -11
  259. package/src/graphql_tools/schemas/reports/gallery/query.graphqls +3 -3
  260. package/src/graphql_tools/schemas/reports/gallery/type/galleryAsset.graphqls +17 -17
  261. package/src/graphql_tools/schemas/reports/gallery/type/galleryReport.graphqls +32 -32
  262. package/src/graphql_tools/schemas/reports/gallery/type/galleryReportsPage.graphqls +4 -4
  263. package/src/graphql_tools/schemas/reports/scalars.graphqls +2 -2
  264. package/src/graphql_tools/schemas/reports/schema.graphqls +18 -18
  265. package/src/graphql_tools/schemas/reports/user/input/userReportFilter.graphqls +9 -9
  266. package/src/graphql_tools/schemas/reports/user/input/userReportRestriction.graphqls +6 -6
  267. package/src/graphql_tools/schemas/reports/user/mutation.graphqls +12 -12
  268. package/src/graphql_tools/schemas/reports/user/query.graphqls +3 -3
  269. package/src/graphql_tools/schemas/reports/user/type/profile.graphqls +9 -9
  270. package/src/graphql_tools/schemas/reports/user/type/userReport.graphqls +24 -24
  271. package/src/graphql_tools/schemas/reports/user/type/userReportsPage.graphqls +4 -4
  272. package/src/graphql_tools/schemas/reports/user/type/userWallet.graphqls +7 -7
  273. package/src/graphql_tools/schemas/scalars.graphqls +2 -2
  274. package/src/graphql_tools/schemas/schema.graphqls +15 -15
  275. package/src/graphql_tools/schemas/search/asset/query.graphqls +65 -65
  276. package/src/graphql_tools/schemas/search/asset/type/asset.graphqls +27 -27
  277. package/src/graphql_tools/schemas/search/asset/type/assetPage.graphqls +4 -4
  278. package/src/graphql_tools/schemas/search/asset/type/attribute.graphqls +4 -4
  279. package/src/graphql_tools/schemas/search/asset/type/media.graphqls +9 -9
  280. package/src/graphql_tools/schemas/search/collection/input/collectionFilterInput.graphqls +6 -6
  281. package/src/graphql_tools/schemas/search/collection/query.graphqls +8 -8
  282. package/src/graphql_tools/schemas/search/collection/type/collection.graphqls +11 -11
  283. package/src/graphql_tools/schemas/search/collection/type/collectionPage.graphqls +5 -5
  284. package/src/graphql_tools/schemas/search/common/input/searchFilterInput.graphqls +5 -5
  285. package/src/graphql_tools/schemas/search/common/input/selectionInput.graphqls +4 -4
  286. package/src/graphql_tools/schemas/search/common/query.graphqls +21 -21
  287. package/src/graphql_tools/schemas/search/common/type/topEntitiesPage.graphqls +5 -5
  288. package/src/graphql_tools/schemas/search/creation/input/creationFilterInput.graphqls +7 -7
  289. package/src/graphql_tools/schemas/search/creation/query.graphqls +28 -28
  290. package/src/graphql_tools/schemas/search/creation/type/creation.graphqls +27 -27
  291. package/src/graphql_tools/schemas/search/creation/type/creationPage.graphqls +5 -5
  292. package/src/graphql_tools/schemas/search/creation/type/profile.graphqls +13 -13
  293. package/src/graphql_tools/schemas/search/gallery/query.graphqls +34 -34
  294. package/src/graphql_tools/schemas/search/gallery/type/gallery.graphqls +17 -17
  295. package/src/graphql_tools/schemas/search/gallery/type/galleryAsset.graphqls +19 -19
  296. package/src/graphql_tools/schemas/search/gallery/type/galleryPage.graphqls +4 -4
  297. package/src/graphql_tools/schemas/search/gallery/type/galleryV2.graphqls +17 -17
  298. package/src/graphql_tools/schemas/search/profile/query.graphqls +18 -18
  299. package/src/graphql_tools/schemas/search/profile/type/profile.graphqls +9 -9
  300. package/src/graphql_tools/schemas/search/profile/type/profilePage.graphqls +4 -4
  301. package/src/graphql_tools/schemas/search/scalars.graphqls +2 -2
  302. package/src/graphql_tools/schemas/search/schema.graphqls +15 -15
  303. package/src/graphql_tools/schemas/search/sets/input/galleryProfileFilterInput.graphqls +5 -5
  304. package/src/graphql_tools/schemas/search/sets/input/gallerySearchFilterInput.graphqls +6 -6
  305. package/src/graphql_tools/schemas/search/sets/query.graphqls +20 -20
  306. package/src/graphql_tools/schemas/search/showcase/input/showcaseItemFilterInput.graphqls +8 -8
  307. package/src/graphql_tools/schemas/search/showcase/query.graphqls +14 -14
  308. package/src/graphql_tools/schemas/search/showcase/type/showcaseItem.graphqls +19 -19
  309. package/src/graphql_tools/schemas/search/showcase/type/showcaseItemPage.graphqls +5 -5
  310. package/src/graphql_tools/schemas/showcase/collection/query.graphqls +3 -3
  311. package/src/graphql_tools/schemas/showcase/collection/type/attribute.graphqls +4 -4
  312. package/src/graphql_tools/schemas/showcase/collection/type/collection.graphqls +11 -11
  313. package/src/graphql_tools/schemas/showcase/collection/type/collectionAsset.graphqls +25 -25
  314. package/src/graphql_tools/schemas/showcase/collection/type/collectionsPage.graphqls +4 -4
  315. package/src/graphql_tools/schemas/showcase/collection/type/media.graphqls +10 -10
  316. package/src/graphql_tools/schemas/showcase/collection/type/profile.graphqls +15 -15
  317. package/src/graphql_tools/schemas/showcase/input/showcaseItemFilterInput.graphqls +8 -8
  318. package/src/graphql_tools/schemas/showcase/query.graphqls +14 -14
  319. package/src/graphql_tools/schemas/showcase/scalars.graphqls +2 -2
  320. package/src/graphql_tools/schemas/showcase/schema.graphqls +12 -12
  321. package/src/graphql_tools/schemas/showcase/type/showcaseItem.graphqls +19 -19
  322. package/src/graphql_tools/schemas/showcase/type/showcaseItemPage.graphqls +5 -5
  323. package/src/graphql_tools/schemas/transactions/asset/mutation.graphqls +11 -11
  324. package/src/graphql_tools/schemas/transactions/asset/query.graphqls +10 -10
  325. package/src/graphql_tools/schemas/transactions/asset/type/asset.graphqls +25 -25
  326. package/src/graphql_tools/schemas/transactions/asset/type/assetGallery.graphqls +4 -4
  327. package/src/graphql_tools/schemas/transactions/asset/type/assetsPage.graphqls +4 -4
  328. package/src/graphql_tools/schemas/transactions/asset/type/attribute.graphqls +4 -4
  329. package/src/graphql_tools/schemas/transactions/asset/type/bannerAsset.graphqls +7 -7
  330. package/src/graphql_tools/schemas/transactions/asset/type/bannerAssetsPage.graphqls +4 -4
  331. package/src/graphql_tools/schemas/transactions/asset/type/galleries.graphqls +3 -3
  332. package/src/graphql_tools/schemas/transactions/asset/type/media.graphqls +9 -9
  333. package/src/graphql_tools/schemas/transactions/asset/type/profile.graphqls +9 -9
  334. package/src/graphql_tools/schemas/transactions/asset/type/showcaseAsset.graphqls +13 -13
  335. package/src/graphql_tools/schemas/transactions/asset/type/showcaseAssetsPage.graphqls +4 -4
  336. package/src/graphql_tools/schemas/transactions/scalars.graphqls +2 -2
  337. package/src/graphql_tools/schemas/transactions/schema.graphqls +12 -12
  338. package/src/hosts/index.ts +47 -47
  339. package/src/index.ts +6 -6
  340. package/tsconfig.json +16 -16
  341. package/tsconfig.tsbuildinfo +1 -1
@@ -1880,7 +1880,7 @@ export type IFetchAssetQuery = {
1880
1880
  totalVolumes?: Maybe<Array<Maybe<Pick<ICurrencyAmountPair, 'currency' | 'amount'>>>>;
1881
1881
  markets?: Maybe<Array<Maybe<Pick<IAssetMarket, 'marketId' | 'marketName' | 'marketDomain' | 'marketUrl'>>>>;
1882
1882
  collectionMedias?: Maybe<Array<Maybe<Pick<IMedia, 'originalUrl' | 'url' | 'previewUrl' | 'mimeType' | 'sizeRatio' | 'fileSize'>>>>;
1883
- medias?: Maybe<Array<Maybe<Pick<IMedia, 'originalUrl' | 'url' | 'mimeType' | 'sizeRatio' | 'fileSize' | 'previewUrl'>>>>;
1883
+ medias?: Maybe<Array<Maybe<Pick<IMedia, 'originalUrl' | 'url' | 'mimeType' | 'sizeRatio' | 'fileSize' | 'originalMime' | 'previewUrl'>>>>;
1884
1884
  ownersProfiles?: Maybe<Array<Maybe<Pick<IProfile, 'userId' | 'username' | 'about' | 'userpic' | 'followers' | 'followings' | 'visible'>>>>;
1885
1885
  creatorsProfiles?: Maybe<Array<Maybe<Pick<IProfile, 'userId' | 'username' | 'about' | 'userpic' | 'followers' | 'followings' | 'visible'>>>>;
1886
1886
  attributes?: Maybe<Array<Maybe<Pick<IAttribute, 'name' | 'value'>>>>;
@@ -1897,7 +1897,7 @@ export type IFetchAssetByBlockchainQuery = {
1897
1897
  totalVolumes?: Maybe<Array<Maybe<Pick<ICurrencyAmountPair, 'currency' | 'amount'>>>>;
1898
1898
  markets?: Maybe<Array<Maybe<Pick<IAssetMarket, 'marketId' | 'marketName' | 'marketDomain' | 'marketUrl'>>>>;
1899
1899
  collectionMedias?: Maybe<Array<Maybe<Pick<IMedia, 'originalUrl' | 'url' | 'previewUrl' | 'mimeType' | 'sizeRatio' | 'fileSize'>>>>;
1900
- medias?: Maybe<Array<Maybe<Pick<IMedia, 'originalUrl' | 'url' | 'mimeType' | 'previewUrl' | 'sizeRatio' | 'fileSize'>>>>;
1900
+ medias?: Maybe<Array<Maybe<Pick<IMedia, 'originalUrl' | 'url' | 'mimeType' | 'originalMime' | 'previewUrl' | 'sizeRatio' | 'fileSize'>>>>;
1901
1901
  ownersProfiles?: Maybe<Array<Maybe<Pick<IProfile, 'userId' | 'username' | 'about' | 'userpic' | 'followers' | 'followings' | 'visible'>>>>;
1902
1902
  creatorsProfiles?: Maybe<Array<Maybe<Pick<IProfile, 'userId' | 'username' | 'about' | 'userpic' | 'followers' | 'followings' | 'visible'>>>>;
1903
1903
  attributes?: Maybe<Array<Maybe<Pick<IAttribute, 'name' | 'value'>>>>;
@@ -123,6 +123,7 @@ exports.FetchAssetDocument = (0, client_1.gql) `
123
123
  mimeType
124
124
  sizeRatio
125
125
  fileSize
126
+ originalMime
126
127
  previewUrl
127
128
  }
128
129
  ownersAddresses
@@ -154,6 +155,7 @@ exports.FetchAssetDocument = (0, client_1.gql) `
154
155
  blurred
155
156
  medias {
156
157
  originalUrl
158
+ originalMime
157
159
  url
158
160
  previewUrl
159
161
  mimeType
@@ -234,6 +236,7 @@ exports.FetchAssetByBlockchainDocument = (0, client_1.gql) `
234
236
  originalUrl
235
237
  url
236
238
  mimeType
239
+ originalMime
237
240
  previewUrl
238
241
  sizeRatio
239
242
  fileSize
@@ -267,6 +270,7 @@ exports.FetchAssetByBlockchainDocument = (0, client_1.gql) `
267
270
  blurred
268
271
  medias {
269
272
  originalUrl
273
+ originalMime
270
274
  url
271
275
  previewUrl
272
276
  mimeType
package/codegen.yml CHANGED
@@ -1,22 +1,22 @@
1
- overwrite: true
2
- schema:
3
- - "./src/graphql_tools/schemas/**/*.graphqls"
4
- documents: "src/documents/**/*.graphql"
5
- generates:
6
- src/graphql_tools/__generated__/schema.ts:
7
- plugins:
8
- - "add": { content: "/* eslint-disable */" }
9
- - "typescript"
10
- - "typescript-operations"
11
- - "typescript-react-apollo"
12
- config:
13
- withHOC: false
14
- withHooks: true
15
- skipTypename: true
16
- typeNames: change-case#pascalCase
17
- transformUnderscore: true
18
- typesPrefix: I
19
-
20
- src/graphql_tools/__generated__/schema.graphql:
21
- plugins:
22
- - schema-ast
1
+ overwrite: true
2
+ schema:
3
+ - "./src/graphql_tools/schemas/**/*.graphqls"
4
+ documents: "src/documents/**/*.graphql"
5
+ generates:
6
+ src/graphql_tools/__generated__/schema.ts:
7
+ plugins:
8
+ - "add": { content: "/* eslint-disable */" }
9
+ - "typescript"
10
+ - "typescript-operations"
11
+ - "typescript-react-apollo"
12
+ config:
13
+ withHOC: false
14
+ withHooks: true
15
+ skipTypename: true
16
+ typeNames: change-case#pascalCase
17
+ transformUnderscore: true
18
+ typesPrefix: I
19
+
20
+ src/graphql_tools/__generated__/schema.graphql:
21
+ plugins:
22
+ - schema-ast
package/package.json CHANGED
@@ -1,33 +1,33 @@
1
- {
2
- "name": "@ludo.ninja/api",
3
- "version": "1.0.30",
4
- "main": "./build/index.js",
5
- "scripts": {
6
- "test": "jest",
7
- "build": "tsc --build",
8
- "graphql:codegen": "graphql-codegen --config codegen.yml"
9
- },
10
- "keywords": [],
11
- "author": "Dan Akenford",
12
- "license": "ISC",
13
- "dependencies": {
14
- "@apollo/client": "^3.7.3",
15
- "@types/lodash.isequal": "^4.5.8",
16
- "apollo-upload-client": "^17.0.0",
17
- "deepmerge": "^4.3.1",
18
- "graphql": "^15.7.2",
19
- "lodash.isequal": "^4.5.0",
20
- "nookies": "^2.5.2"
21
- },
22
- "devDependencies": {
23
- "@graphql-codegen/add": "2.0.2",
24
- "@graphql-codegen/cli": "1.17.8",
25
- "@graphql-codegen/schema-ast": "1.18.1",
26
- "@graphql-codegen/typescript": "1.21.0",
27
- "@graphql-codegen/typescript-operations": "1.17.12",
28
- "@graphql-codegen/typescript-react-apollo": "2.2.1",
29
- "@types/apollo-upload-client": "^17.0.2"
30
- },
31
- "types": "./build/index.d.ts",
32
- "description": ""
33
- }
1
+ {
2
+ "name": "@ludo.ninja/api",
3
+ "version": "1.0.31",
4
+ "main": "./build/index.js",
5
+ "scripts": {
6
+ "test": "jest",
7
+ "build": "tsc --build",
8
+ "graphql:codegen": "graphql-codegen --config codegen.yml"
9
+ },
10
+ "keywords": [],
11
+ "author": "Dan Akenford",
12
+ "license": "ISC",
13
+ "dependencies": {
14
+ "@apollo/client": "^3.7.3",
15
+ "@types/lodash.isequal": "^4.5.8",
16
+ "apollo-upload-client": "^17.0.0",
17
+ "deepmerge": "^4.3.1",
18
+ "graphql": "^15.7.2",
19
+ "lodash.isequal": "^4.5.0",
20
+ "nookies": "^2.5.2"
21
+ },
22
+ "devDependencies": {
23
+ "@graphql-codegen/add": "2.0.2",
24
+ "@graphql-codegen/cli": "1.17.8",
25
+ "@graphql-codegen/schema-ast": "1.18.1",
26
+ "@graphql-codegen/typescript": "1.21.0",
27
+ "@graphql-codegen/typescript-operations": "1.17.12",
28
+ "@graphql-codegen/typescript-react-apollo": "2.2.1",
29
+ "@types/apollo-upload-client": "^17.0.2"
30
+ },
31
+ "types": "./build/index.d.ts",
32
+ "description": ""
33
+ }
@@ -1,199 +1,199 @@
1
- import { ApolloClient, InMemoryCache, from, NormalizedCacheObject, fromPromise } from "@apollo/client";
2
- import { authHost } from "../hosts";
3
- import { RefreshTokenDocument, RevokeTokenDocument } from "../graphql_tools/__generated__/schema";
4
- import { onError } from "@apollo/client/link/error";
5
- import { setContext } from "@apollo/client/link/context";
6
- import { createUploadLink } from "apollo-upload-client";
7
- import merge from "deepmerge";
8
- import isEqual from "lodash.isequal";
9
- import { destroyCookies, getCookies, refreshCookies } from "../cookies";
10
- import { typePoliciesPortal } from "./typePolicies";
11
-
12
- let isRefreshing = false;
13
- let pendingRequests: never[] = [];
14
- let mainDomain = "";
15
-
16
- const resolvePendingRequests = () => {
17
- pendingRequests.map((callback: any) => callback());
18
- pendingRequests = [];
19
- };
20
-
21
- let apolloClient: ApolloClient<NormalizedCacheObject> | undefined;
22
-
23
- const errorLink = onError(({ graphQLErrors, networkError, operation, forward }) => {
24
- const { authToken, refreshToken } = getCookies();
25
-
26
- // console.log(graphQLErrors, "graphQLErrors");
27
-
28
- if (graphQLErrors) {
29
- graphQLErrors.forEach(({ message, locations, path }) =>
30
- console.warn(`[GraphQL error]: Message: ${message}, Location: ${locations}, Path: ${path}`),
31
- );
32
-
33
- for (const err of graphQLErrors) {
34
- if (err.message.includes("Auth token not found") && authToken) {
35
- let forward$;
36
- const client = apolloClient ?? createApolloClient();
37
- if (!isRefreshing) {
38
- isRefreshing = true;
39
- forward$ = fromPromise(
40
- client
41
- .mutate({
42
- context: { uri: authHost },
43
- variables: { refreshToken },
44
- mutation: RefreshTokenDocument,
45
- })
46
- .then(
47
- ({
48
- data: {
49
- refreshToken: { tokenAuth, tokenRefresh },
50
- },
51
- }) => {
52
- refreshCookies(tokenAuth, tokenRefresh, mainDomain);
53
- resolvePendingRequests();
54
- return true;
55
- },
56
- )
57
- .catch(async () => {
58
- await apolloClient?.mutate({
59
- context: { uri: authHost },
60
- mutation: RevokeTokenDocument,
61
- });
62
-
63
- destroyCookies(mainDomain);
64
- pendingRequests = [];
65
- window.location.reload();
66
- return false;
67
- })
68
- .finally(() => {
69
- isRefreshing = false;
70
- }),
71
- ).filter((value) => Boolean(value));
72
- } else {
73
- forward$ = fromPromise(
74
- new Promise((resolve) => {
75
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
76
- // @ts-ignore
77
- pendingRequests.push(() => resolve());
78
- }),
79
- );
80
- }
81
- return forward$.flatMap(() => forward(operation));
82
- }
83
- }
84
- }
85
-
86
- if (networkError) {
87
- console.warn(`[Network error]: ${networkError}`);
88
-
89
- if (networkError.message.includes("401") && authToken) {
90
- let forward$;
91
- const client = apolloClient ?? createApolloClient();
92
- if (!isRefreshing) {
93
- isRefreshing = true;
94
- forward$ = fromPromise(
95
- client
96
- .mutate({
97
- context: { uri: authHost },
98
- variables: { refreshToken },
99
- mutation: RefreshTokenDocument,
100
- })
101
- .then(
102
- ({
103
- data: {
104
- refreshToken: { tokenAuth, tokenRefresh },
105
- },
106
- }) => {
107
- refreshCookies(tokenAuth, tokenRefresh, mainDomain);
108
- resolvePendingRequests();
109
- return true;
110
- },
111
- )
112
- .catch(async () => {
113
- await apolloClient?.mutate({
114
- context: { uri: authHost },
115
- mutation: RevokeTokenDocument,
116
- });
117
-
118
- destroyCookies(mainDomain);
119
- pendingRequests = [];
120
- window.location.reload();
121
- return false;
122
- })
123
- .finally(() => {
124
- isRefreshing = false;
125
- }),
126
- ).filter((value) => Boolean(value));
127
- } else {
128
- forward$ = fromPromise(
129
- new Promise((resolve) => {
130
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
131
- // @ts-ignore
132
- pendingRequests.push(() => resolve());
133
- }),
134
- );
135
- }
136
- return forward$.flatMap(() => forward(operation));
137
- }
138
- }
139
- });
140
-
141
- const authLink = setContext(async (operation, { headers }) => {
142
- const { authToken } = getCookies();
143
-
144
- const header = authToken
145
- ? {
146
- headers: { ...headers, "x-client-authorization": `${authToken}` },
147
- }
148
- : { headers: { ...headers } };
149
-
150
- return {
151
- headers: header.headers,
152
- };
153
- });
154
-
155
- const httpLink = createUploadLink({
156
- uri: authHost,
157
- });
158
-
159
- function createApolloClient() {
160
- return new ApolloClient({
161
- ssrMode: typeof window === "undefined",
162
- link: from([errorLink, authLink, httpLink]),
163
- cache: new InMemoryCache({
164
- typePolicies: typePoliciesPortal,
165
- addTypename: true,
166
- resultCaching: true,
167
- }),
168
- });
169
- }
170
-
171
- export function initializeApollo(initialState = null, domain = "ludo.ninja") {
172
- const _apolloClient = apolloClient ?? createApolloClient();
173
- mainDomain = domain;
174
-
175
- // If your page has Next.js data fetching methods that use Apollo Client, the initial state
176
- // gets hydrated here
177
- if (initialState) {
178
- // Get existing cache, loaded during client side data fetching
179
- const existingCache = _apolloClient.extract();
180
-
181
- // Merge the initialState from getStaticProps/getServerSideProps in the existing cache
182
- const data = merge(existingCache, initialState, {
183
- // combine arrays using object equality (like in sets)
184
- arrayMerge: (destinationArray, sourceArray) => [
185
- ...sourceArray,
186
- ...destinationArray.filter((d) => sourceArray.every((s) => !isEqual(d, s))),
187
- ],
188
- });
189
-
190
- // Restore the cache with the merged data
191
- _apolloClient.cache.restore(data);
192
- }
193
- // For SSG and SSR always create a new Apollo Client
194
- if (typeof window === "undefined") return _apolloClient;
195
- // Create the Apollo Client once in the client
196
- if (!apolloClient) apolloClient = _apolloClient;
197
-
198
- return _apolloClient;
199
- }
1
+ import { ApolloClient, InMemoryCache, from, NormalizedCacheObject, fromPromise } from "@apollo/client";
2
+ import { authHost } from "../hosts";
3
+ import { RefreshTokenDocument, RevokeTokenDocument } from "../graphql_tools/__generated__/schema";
4
+ import { onError } from "@apollo/client/link/error";
5
+ import { setContext } from "@apollo/client/link/context";
6
+ import { createUploadLink } from "apollo-upload-client";
7
+ import merge from "deepmerge";
8
+ import isEqual from "lodash.isequal";
9
+ import { destroyCookies, getCookies, refreshCookies } from "../cookies";
10
+ import { typePoliciesPortal } from "./typePolicies";
11
+
12
+ let isRefreshing = false;
13
+ let pendingRequests: never[] = [];
14
+ let mainDomain = "";
15
+
16
+ const resolvePendingRequests = () => {
17
+ pendingRequests.map((callback: any) => callback());
18
+ pendingRequests = [];
19
+ };
20
+
21
+ let apolloClient: ApolloClient<NormalizedCacheObject> | undefined;
22
+
23
+ const errorLink = onError(({ graphQLErrors, networkError, operation, forward }) => {
24
+ const { authToken, refreshToken } = getCookies();
25
+
26
+ // console.log(graphQLErrors, "graphQLErrors");
27
+
28
+ if (graphQLErrors) {
29
+ graphQLErrors.forEach(({ message, locations, path }) =>
30
+ console.warn(`[GraphQL error]: Message: ${message}, Location: ${locations}, Path: ${path}`),
31
+ );
32
+
33
+ for (const err of graphQLErrors) {
34
+ if (err.message.includes("Auth token not found") && authToken) {
35
+ let forward$;
36
+ const client = apolloClient ?? createApolloClient();
37
+ if (!isRefreshing) {
38
+ isRefreshing = true;
39
+ forward$ = fromPromise(
40
+ client
41
+ .mutate({
42
+ context: { uri: authHost },
43
+ variables: { refreshToken },
44
+ mutation: RefreshTokenDocument,
45
+ })
46
+ .then(
47
+ ({
48
+ data: {
49
+ refreshToken: { tokenAuth, tokenRefresh },
50
+ },
51
+ }) => {
52
+ refreshCookies(tokenAuth, tokenRefresh, mainDomain);
53
+ resolvePendingRequests();
54
+ return true;
55
+ },
56
+ )
57
+ .catch(async () => {
58
+ await apolloClient?.mutate({
59
+ context: { uri: authHost },
60
+ mutation: RevokeTokenDocument,
61
+ });
62
+
63
+ destroyCookies(mainDomain);
64
+ pendingRequests = [];
65
+ window.location.reload();
66
+ return false;
67
+ })
68
+ .finally(() => {
69
+ isRefreshing = false;
70
+ }),
71
+ ).filter((value) => Boolean(value));
72
+ } else {
73
+ forward$ = fromPromise(
74
+ new Promise((resolve) => {
75
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
76
+ // @ts-ignore
77
+ pendingRequests.push(() => resolve());
78
+ }),
79
+ );
80
+ }
81
+ return forward$.flatMap(() => forward(operation));
82
+ }
83
+ }
84
+ }
85
+
86
+ if (networkError) {
87
+ console.warn(`[Network error]: ${networkError}`);
88
+
89
+ if (networkError.message.includes("401") && authToken) {
90
+ let forward$;
91
+ const client = apolloClient ?? createApolloClient();
92
+ if (!isRefreshing) {
93
+ isRefreshing = true;
94
+ forward$ = fromPromise(
95
+ client
96
+ .mutate({
97
+ context: { uri: authHost },
98
+ variables: { refreshToken },
99
+ mutation: RefreshTokenDocument,
100
+ })
101
+ .then(
102
+ ({
103
+ data: {
104
+ refreshToken: { tokenAuth, tokenRefresh },
105
+ },
106
+ }) => {
107
+ refreshCookies(tokenAuth, tokenRefresh, mainDomain);
108
+ resolvePendingRequests();
109
+ return true;
110
+ },
111
+ )
112
+ .catch(async () => {
113
+ await apolloClient?.mutate({
114
+ context: { uri: authHost },
115
+ mutation: RevokeTokenDocument,
116
+ });
117
+
118
+ destroyCookies(mainDomain);
119
+ pendingRequests = [];
120
+ window.location.reload();
121
+ return false;
122
+ })
123
+ .finally(() => {
124
+ isRefreshing = false;
125
+ }),
126
+ ).filter((value) => Boolean(value));
127
+ } else {
128
+ forward$ = fromPromise(
129
+ new Promise((resolve) => {
130
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
131
+ // @ts-ignore
132
+ pendingRequests.push(() => resolve());
133
+ }),
134
+ );
135
+ }
136
+ return forward$.flatMap(() => forward(operation));
137
+ }
138
+ }
139
+ });
140
+
141
+ const authLink = setContext(async (operation, { headers }) => {
142
+ const { authToken } = getCookies();
143
+
144
+ const header = authToken
145
+ ? {
146
+ headers: { ...headers, "x-client-authorization": `${authToken}` },
147
+ }
148
+ : { headers: { ...headers } };
149
+
150
+ return {
151
+ headers: header.headers,
152
+ };
153
+ });
154
+
155
+ const httpLink = createUploadLink({
156
+ uri: authHost,
157
+ });
158
+
159
+ function createApolloClient() {
160
+ return new ApolloClient({
161
+ ssrMode: typeof window === "undefined",
162
+ link: from([errorLink, authLink, httpLink]),
163
+ cache: new InMemoryCache({
164
+ typePolicies: typePoliciesPortal,
165
+ addTypename: true,
166
+ resultCaching: true,
167
+ }),
168
+ });
169
+ }
170
+
171
+ export function initializeApollo(initialState = null, domain = "ludo.ninja") {
172
+ const _apolloClient = apolloClient ?? createApolloClient();
173
+ mainDomain = domain;
174
+
175
+ // If your page has Next.js data fetching methods that use Apollo Client, the initial state
176
+ // gets hydrated here
177
+ if (initialState) {
178
+ // Get existing cache, loaded during client side data fetching
179
+ const existingCache = _apolloClient.extract();
180
+
181
+ // Merge the initialState from getStaticProps/getServerSideProps in the existing cache
182
+ const data = merge(existingCache, initialState, {
183
+ // combine arrays using object equality (like in sets)
184
+ arrayMerge: (destinationArray, sourceArray) => [
185
+ ...sourceArray,
186
+ ...destinationArray.filter((d) => sourceArray.every((s) => !isEqual(d, s))),
187
+ ],
188
+ });
189
+
190
+ // Restore the cache with the merged data
191
+ _apolloClient.cache.restore(data);
192
+ }
193
+ // For SSG and SSR always create a new Apollo Client
194
+ if (typeof window === "undefined") return _apolloClient;
195
+ // Create the Apollo Client once in the client
196
+ if (!apolloClient) apolloClient = _apolloClient;
197
+
198
+ return _apolloClient;
199
+ }