@quesmed/types 1.5.9 → 1.6.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.
Files changed (377) hide show
  1. package/{gql_input_output_types → dist/cjs/gql_input_output_types}/User.d.ts +0 -0
  2. package/{gql_input_output_types → dist/cjs/gql_input_output_types}/User.js +0 -0
  3. package/{gql_input_output_types → dist/cjs/gql_input_output_types}/index.d.ts +0 -0
  4. package/{gql_input_output_types → dist/cjs/gql_input_output_types}/index.js +0 -0
  5. package/{index.d.ts → dist/cjs/index.d.ts} +0 -0
  6. package/{index.js → dist/cjs/index.js} +0 -0
  7. package/{models → dist/cjs/models}/Author.d.ts +0 -0
  8. package/{models → dist/cjs/models}/Author.js +0 -0
  9. package/{models → dist/cjs/models}/Blog.d.ts +0 -0
  10. package/{models → dist/cjs/models}/Blog.js +0 -0
  11. package/{models → dist/cjs/models}/Book.d.ts +0 -0
  12. package/{models → dist/cjs/models}/Book.js +0 -0
  13. package/{models → dist/cjs/models}/Card.d.ts +0 -0
  14. package/{models → dist/cjs/models}/Card.js +0 -0
  15. package/{models → dist/cjs/models}/Chapter.d.ts +0 -0
  16. package/{models → dist/cjs/models}/Chapter.js +0 -0
  17. package/{models → dist/cjs/models}/Concept.d.ts +0 -0
  18. package/{models → dist/cjs/models}/Concept.js +0 -0
  19. package/{models → dist/cjs/models}/Difficulty.d.ts +0 -0
  20. package/{models → dist/cjs/models}/Difficulty.js +0 -0
  21. package/{models → dist/cjs/models}/Feedback.d.ts +0 -0
  22. package/{models → dist/cjs/models}/Feedback.js +0 -0
  23. package/{models → dist/cjs/models}/File.d.ts +0 -0
  24. package/{models → dist/cjs/models}/File.js +0 -0
  25. package/{models → dist/cjs/models}/Marksheet.d.ts +0 -0
  26. package/{models → dist/cjs/models}/Marksheet.js +0 -0
  27. package/{models → dist/cjs/models}/MockTest.d.ts +0 -0
  28. package/{models → dist/cjs/models}/MockTest.js +0 -0
  29. package/{models → dist/cjs/models}/OsceMarksheet.d.ts +0 -0
  30. package/{models → dist/cjs/models}/OsceMarksheet.js +0 -0
  31. package/{models → dist/cjs/models}/OsceStation.d.ts +0 -0
  32. package/{models → dist/cjs/models}/OsceStation.js +0 -0
  33. package/{models → dist/cjs/models}/Picture.d.ts +0 -0
  34. package/{models → dist/cjs/models}/Picture.js +0 -0
  35. package/{models → dist/cjs/models}/Promo.d.ts +0 -0
  36. package/{models → dist/cjs/models}/Promo.js +0 -0
  37. package/{models → dist/cjs/models}/Question.d.ts +0 -0
  38. package/{models → dist/cjs/models}/Question.js +0 -0
  39. package/{models → dist/cjs/models}/Subscription.d.ts +0 -0
  40. package/{models → dist/cjs/models}/Subscription.js +0 -0
  41. package/{models → dist/cjs/models}/Todo.d.ts +0 -0
  42. package/{models → dist/cjs/models}/Todo.js +0 -0
  43. package/{models → dist/cjs/models}/Token.d.ts +0 -0
  44. package/{models → dist/cjs/models}/Token.js +0 -0
  45. package/{models → dist/cjs/models}/Topic.d.ts +0 -0
  46. package/{models → dist/cjs/models}/Topic.js +0 -0
  47. package/{models → dist/cjs/models}/Type.d.ts +0 -0
  48. package/{models → dist/cjs/models}/Type.js +0 -0
  49. package/{models → dist/cjs/models}/University.d.ts +0 -0
  50. package/{models → dist/cjs/models}/University.js +0 -0
  51. package/{models → dist/cjs/models}/User.d.ts +0 -0
  52. package/{models → dist/cjs/models}/User.js +0 -0
  53. package/{models → dist/cjs/models}/Video.d.ts +0 -0
  54. package/{models → dist/cjs/models}/Video.js +0 -0
  55. package/{models → dist/cjs/models}/index.d.ts +0 -0
  56. package/{models → dist/cjs/models}/index.js +0 -0
  57. package/dist/cjs/package.json +3 -0
  58. package/{resolvers → dist/cjs/resolvers}/apollo.d.ts +0 -0
  59. package/{resolvers → dist/cjs/resolvers}/apollo.js +0 -0
  60. package/{resolvers → dist/cjs/resolvers}/fragments/blog.d.ts +0 -0
  61. package/{resolvers → dist/cjs/resolvers}/fragments/blog.js +0 -0
  62. package/{resolvers → dist/cjs/resolvers}/fragments/chapter.d.ts +0 -0
  63. package/{resolvers → dist/cjs/resolvers}/fragments/chapter.js +0 -0
  64. package/{resolvers → dist/cjs/resolvers}/fragments/concept.d.ts +0 -0
  65. package/{resolvers → dist/cjs/resolvers}/fragments/concept.js +0 -0
  66. package/{resolvers → dist/cjs/resolvers}/fragments/index.d.ts +0 -0
  67. package/{resolvers → dist/cjs/resolvers}/fragments/index.js +0 -0
  68. package/{resolvers → dist/cjs/resolvers}/fragments/osce.d.ts +0 -0
  69. package/{resolvers → dist/cjs/resolvers}/fragments/osce.js +0 -0
  70. package/{resolvers → dist/cjs/resolvers}/fragments/picture.d.ts +0 -0
  71. package/{resolvers → dist/cjs/resolvers}/fragments/picture.js +0 -0
  72. package/{resolvers → dist/cjs/resolvers}/fragments/user.d.ts +0 -0
  73. package/{resolvers → dist/cjs/resolvers}/fragments/user.js +0 -0
  74. package/{resolvers → dist/cjs/resolvers}/fragments/video.d.ts +0 -0
  75. package/{resolvers → dist/cjs/resolvers}/fragments/video.js +0 -0
  76. package/{resolvers → dist/cjs/resolvers}/index.d.ts +0 -0
  77. package/{resolvers → dist/cjs/resolvers}/index.js +0 -0
  78. package/{resolvers → dist/cjs/resolvers}/mutation/admin/algoliaSync.d.ts +0 -0
  79. package/{resolvers → dist/cjs/resolvers}/mutation/admin/algoliaSync.js +0 -0
  80. package/{resolvers → dist/cjs/resolvers}/mutation/admin/index.d.ts +0 -0
  81. package/{resolvers → dist/cjs/resolvers}/mutation/admin/index.js +0 -0
  82. package/{resolvers → dist/cjs/resolvers}/mutation/admin/token.d.ts +0 -0
  83. package/{resolvers → dist/cjs/resolvers}/mutation/admin/token.js +0 -0
  84. package/{resolvers → dist/cjs/resolvers}/mutation/index.d.ts +0 -0
  85. package/{resolvers → dist/cjs/resolvers}/mutation/index.js +0 -0
  86. package/{resolvers → dist/cjs/resolvers}/mutation/restricted/agora.d.ts +0 -0
  87. package/{resolvers → dist/cjs/resolvers}/mutation/restricted/agora.js +0 -0
  88. package/{resolvers → dist/cjs/resolvers}/mutation/restricted/contactUs.d.ts +0 -0
  89. package/{resolvers → dist/cjs/resolvers}/mutation/restricted/contactUs.js +0 -0
  90. package/{resolvers → dist/cjs/resolvers}/mutation/restricted/index.d.ts +0 -0
  91. package/{resolvers → dist/cjs/resolvers}/mutation/restricted/index.js +0 -0
  92. package/{resolvers → dist/cjs/resolvers}/mutation/restricted/marksheet.d.ts +0 -0
  93. package/{resolvers → dist/cjs/resolvers}/mutation/restricted/marksheet.js +0 -0
  94. package/{resolvers → dist/cjs/resolvers}/mutation/restricted/mockTest.d.ts +0 -0
  95. package/{resolvers → dist/cjs/resolvers}/mutation/restricted/mockTest.js +0 -0
  96. package/{resolvers → dist/cjs/resolvers}/mutation/restricted/osce.d.ts +0 -0
  97. package/{resolvers → dist/cjs/resolvers}/mutation/restricted/osce.js +0 -0
  98. package/{resolvers → dist/cjs/resolvers}/mutation/restricted/questionDiscussion.d.ts +0 -0
  99. package/{resolvers → dist/cjs/resolvers}/mutation/restricted/questionDiscussion.js +0 -0
  100. package/{resolvers → dist/cjs/resolvers}/mutation/restricted/todo.d.ts +0 -0
  101. package/{resolvers → dist/cjs/resolvers}/mutation/restricted/todo.js +1 -2
  102. package/{resolvers → dist/cjs/resolvers}/mutation/restricted/token.d.ts +0 -0
  103. package/{resolvers → dist/cjs/resolvers}/mutation/restricted/token.js +0 -0
  104. package/{resolvers → dist/cjs/resolvers}/mutation/restricted/users.d.ts +0 -0
  105. package/{resolvers → dist/cjs/resolvers}/mutation/restricted/users.js +0 -0
  106. package/{resolvers → dist/cjs/resolvers}/mutation/restricted/video.d.ts +0 -0
  107. package/{resolvers → dist/cjs/resolvers}/mutation/restricted/video.js +0 -0
  108. package/{resolvers → dist/cjs/resolvers}/mutation/stripe.d.ts +0 -0
  109. package/{resolvers → dist/cjs/resolvers}/mutation/stripe.js +0 -0
  110. package/{resolvers → dist/cjs/resolvers}/mutation/users.d.ts +0 -0
  111. package/{resolvers → dist/cjs/resolvers}/mutation/users.js +0 -0
  112. package/{resolvers → dist/cjs/resolvers}/mutation/validUserToken/index.d.ts +0 -0
  113. package/{resolvers → dist/cjs/resolvers}/mutation/validUserToken/index.js +0 -0
  114. package/{resolvers → dist/cjs/resolvers}/mutation/validUserToken/user.d.ts +0 -0
  115. package/{resolvers → dist/cjs/resolvers}/mutation/validUserToken/user.js +0 -0
  116. package/{resolvers → dist/cjs/resolvers}/query/admin/getUserToken.d.ts +0 -0
  117. package/{resolvers → dist/cjs/resolvers}/query/admin/getUserToken.js +0 -0
  118. package/{resolvers → dist/cjs/resolvers}/query/admin/index.d.ts +0 -0
  119. package/{resolvers → dist/cjs/resolvers}/query/admin/index.js +0 -0
  120. package/{resolvers → dist/cjs/resolvers}/query/author.d.ts +0 -0
  121. package/{resolvers → dist/cjs/resolvers}/query/author.js +0 -0
  122. package/{resolvers → dist/cjs/resolvers}/query/blog.d.ts +0 -0
  123. package/{resolvers → dist/cjs/resolvers}/query/blog.js +0 -0
  124. package/{resolvers → dist/cjs/resolvers}/query/book.d.ts +0 -0
  125. package/{resolvers → dist/cjs/resolvers}/query/book.js +0 -0
  126. package/{resolvers → dist/cjs/resolvers}/query/feedback.d.ts +0 -0
  127. package/{resolvers → dist/cjs/resolvers}/query/feedback.js +0 -0
  128. package/{resolvers → dist/cjs/resolvers}/query/index.d.ts +0 -0
  129. package/{resolvers → dist/cjs/resolvers}/query/index.js +0 -0
  130. package/{resolvers → dist/cjs/resolvers}/query/restricted/anatomy.d.ts +0 -0
  131. package/{resolvers → dist/cjs/resolvers}/query/restricted/anatomy.js +0 -0
  132. package/{resolvers → dist/cjs/resolvers}/query/restricted/index.d.ts +0 -0
  133. package/{resolvers → dist/cjs/resolvers}/query/restricted/index.js +0 -0
  134. package/{resolvers → dist/cjs/resolvers}/query/restricted/marksheet.d.ts +0 -0
  135. package/{resolvers → dist/cjs/resolvers}/query/restricted/marksheet.js +0 -0
  136. package/{resolvers → dist/cjs/resolvers}/query/restricted/mockTests.d.ts +0 -0
  137. package/{resolvers → dist/cjs/resolvers}/query/restricted/mockTests.js +0 -0
  138. package/{resolvers → dist/cjs/resolvers}/query/restricted/osce.d.ts +0 -0
  139. package/{resolvers → dist/cjs/resolvers}/query/restricted/osce.js +0 -0
  140. package/{resolvers → dist/cjs/resolvers}/query/restricted/quesBook.d.ts +0 -0
  141. package/{resolvers → dist/cjs/resolvers}/query/restricted/quesBook.js +0 -0
  142. package/{resolvers → dist/cjs/resolvers}/query/restricted/replication.d.ts +0 -0
  143. package/{resolvers → dist/cjs/resolvers}/query/restricted/replication.js +6 -6
  144. package/{resolvers → dist/cjs/resolvers}/query/restricted/todos.d.ts +0 -0
  145. package/{resolvers → dist/cjs/resolvers}/query/restricted/todos.js +0 -0
  146. package/{resolvers → dist/cjs/resolvers}/query/restricted/topics.d.ts +0 -0
  147. package/{resolvers → dist/cjs/resolvers}/query/restricted/topics.js +0 -0
  148. package/{resolvers → dist/cjs/resolvers}/query/restricted/university.d.ts +0 -0
  149. package/{resolvers → dist/cjs/resolvers}/query/restricted/university.js +0 -0
  150. package/{resolvers → dist/cjs/resolvers}/query/restricted/user.d.ts +0 -0
  151. package/{resolvers → dist/cjs/resolvers}/query/restricted/user.js +0 -0
  152. package/{resolvers → dist/cjs/resolvers}/query/restricted/video.d.ts +0 -0
  153. package/{resolvers → dist/cjs/resolvers}/query/restricted/video.js +0 -0
  154. package/{resolvers → dist/cjs/resolvers}/query/sample.d.ts +0 -0
  155. package/{resolvers → dist/cjs/resolvers}/query/sample.js +0 -0
  156. package/{resolvers → dist/cjs/resolvers}/query/subscription.d.ts +0 -0
  157. package/{resolvers → dist/cjs/resolvers}/query/subscription.js +0 -0
  158. package/{resolvers → dist/cjs/resolvers}/query/university.d.ts +0 -0
  159. package/{resolvers → dist/cjs/resolvers}/query/university.js +0 -0
  160. package/{resolvers → dist/cjs/resolvers}/query/user.d.ts +0 -0
  161. package/{resolvers → dist/cjs/resolvers}/query/user.js +0 -0
  162. package/{resolvers → dist/cjs/resolvers}/query/video.d.ts +0 -0
  163. package/{resolvers → dist/cjs/resolvers}/query/video.js +0 -0
  164. package/{resolvers → dist/cjs/resolvers}/subscription/index.d.ts +0 -0
  165. package/{resolvers → dist/cjs/resolvers}/subscription/index.js +0 -0
  166. package/{resolvers → dist/cjs/resolvers}/subscription/osce.d.ts +0 -0
  167. package/{resolvers → dist/cjs/resolvers}/subscription/osce.js +0 -0
  168. package/{resolvers → dist/cjs/resolvers}/types.d.ts +0 -0
  169. package/{resolvers → dist/cjs/resolvers}/types.js +0 -0
  170. package/dist/cjs/types.d.ts +1 -0
  171. package/{utils → dist/cjs/utils}/commonFunctions.d.ts +0 -0
  172. package/{utils → dist/cjs/utils}/commonFunctions.js +21 -1
  173. package/{utils → dist/cjs/utils}/index.d.ts +0 -0
  174. package/{utils → dist/cjs/utils}/index.js +0 -0
  175. package/{utils → dist/cjs/utils}/lightgallery.d.ts +0 -0
  176. package/dist/cjs/utils/lightgallery.js +88 -0
  177. package/{utils → dist/cjs/utils}/offlineLink.d.ts +0 -0
  178. package/dist/cjs/utils/offlineLink.js +221 -0
  179. package/{utils → dist/cjs/utils}/random.d.ts +0 -0
  180. package/{utils → dist/cjs/utils}/random.js +0 -0
  181. package/{utils → dist/cjs/utils}/uuid4.d.ts +0 -0
  182. package/{utils → dist/cjs/utils}/uuid4.js +1 -1
  183. package/{utils → dist/cjs/utils}/webSocketLink.d.ts +0 -0
  184. package/{utils → dist/cjs/utils}/webSocketLink.js +1 -1
  185. package/{utils → dist/cjs/utils}/wordsToNumber.d.ts +0 -0
  186. package/{utils → dist/cjs/utils}/wordsToNumber.js +0 -0
  187. package/dist/mjs/gql_input_output_types/User.d.ts +12 -0
  188. package/{gql_input_output_types/User.mjs → dist/mjs/gql_input_output_types/User.js} +0 -0
  189. package/dist/mjs/gql_input_output_types/index.d.ts +75 -0
  190. package/{gql_input_output_types/index.mjs → dist/mjs/gql_input_output_types/index.js} +0 -0
  191. package/dist/mjs/index.d.ts +22 -0
  192. package/{index.mjs → dist/mjs/index.js} +0 -0
  193. package/dist/mjs/models/Author.d.ts +14 -0
  194. package/{models/Author.mjs → dist/mjs/models/Author.js} +0 -0
  195. package/dist/mjs/models/Blog.d.ts +15 -0
  196. package/{models/Blog.mjs → dist/mjs/models/Blog.js} +0 -0
  197. package/dist/mjs/models/Book.d.ts +22 -0
  198. package/{models/Book.mjs → dist/mjs/models/Book.js} +0 -0
  199. package/dist/mjs/models/Card.d.ts +16 -0
  200. package/{models/Card.mjs → dist/mjs/models/Card.js} +0 -0
  201. package/dist/mjs/models/Chapter.d.ts +13 -0
  202. package/{models/Chapter.mjs → dist/mjs/models/Chapter.js} +0 -0
  203. package/dist/mjs/models/Concept.d.ts +23 -0
  204. package/{models/Concept.mjs → dist/mjs/models/Concept.js} +0 -0
  205. package/dist/mjs/models/Difficulty.d.ts +6 -0
  206. package/{models/Difficulty.mjs → dist/mjs/models/Difficulty.js} +0 -0
  207. package/dist/mjs/models/Feedback.d.ts +8 -0
  208. package/{models/Feedback.mjs → dist/mjs/models/Feedback.js} +0 -0
  209. package/dist/mjs/models/File.d.ts +10 -0
  210. package/{models/File.mjs → dist/mjs/models/File.js} +0 -0
  211. package/dist/mjs/models/Marksheet.d.ts +47 -0
  212. package/{models/Marksheet.mjs → dist/mjs/models/Marksheet.js} +0 -0
  213. package/dist/mjs/models/MockTest.d.ts +21 -0
  214. package/{models/MockTest.mjs → dist/mjs/models/MockTest.js} +0 -0
  215. package/dist/mjs/models/OsceMarksheet.d.ts +105 -0
  216. package/{models/OsceMarksheet.mjs → dist/mjs/models/OsceMarksheet.js} +0 -0
  217. package/dist/mjs/models/OsceStation.d.ts +52 -0
  218. package/{models/OsceStation.mjs → dist/mjs/models/OsceStation.js} +0 -0
  219. package/dist/mjs/models/Picture.d.ts +47 -0
  220. package/{models/Picture.mjs → dist/mjs/models/Picture.js} +0 -0
  221. package/dist/mjs/models/Promo.d.ts +14 -0
  222. package/{models/Promo.mjs → dist/mjs/models/Promo.js} +0 -0
  223. package/dist/mjs/models/Question.d.ts +90 -0
  224. package/{models/Question.mjs → dist/mjs/models/Question.js} +0 -0
  225. package/dist/mjs/models/Subscription.d.ts +17 -0
  226. package/{models/Subscription.mjs → dist/mjs/models/Subscription.js} +0 -0
  227. package/dist/mjs/models/Todo.d.ts +24 -0
  228. package/{models/Todo.mjs → dist/mjs/models/Todo.js} +0 -0
  229. package/dist/mjs/models/Token.d.ts +7 -0
  230. package/{models/Token.mjs → dist/mjs/models/Token.js} +0 -0
  231. package/dist/mjs/models/Topic.d.ts +17 -0
  232. package/{models/Topic.mjs → dist/mjs/models/Topic.js} +0 -0
  233. package/dist/mjs/models/Type.d.ts +7 -0
  234. package/{models/Type.mjs → dist/mjs/models/Type.js} +0 -0
  235. package/dist/mjs/models/University.d.ts +5 -0
  236. package/{models/University.mjs → dist/mjs/models/University.js} +0 -0
  237. package/dist/mjs/models/User.d.ts +105 -0
  238. package/{models/User.mjs → dist/mjs/models/User.js} +0 -0
  239. package/dist/mjs/models/Video.d.ts +25 -0
  240. package/{models/Video.mjs → dist/mjs/models/Video.js} +0 -0
  241. package/{models/index.mjs → dist/mjs/models/index.d.ts} +0 -0
  242. package/dist/mjs/models/index.js +24 -0
  243. package/dist/mjs/package.json +3 -0
  244. package/dist/mjs/resolvers/apollo.d.ts +8 -0
  245. package/{resolvers/apollo.mjs → dist/mjs/resolvers/apollo.js} +0 -0
  246. package/dist/mjs/resolvers/fragments/blog.d.ts +1 -0
  247. package/{resolvers/fragments/blog.mjs → dist/mjs/resolvers/fragments/blog.js} +0 -0
  248. package/dist/mjs/resolvers/fragments/chapter.d.ts +2 -0
  249. package/{resolvers/fragments/chapter.mjs → dist/mjs/resolvers/fragments/chapter.js} +0 -0
  250. package/dist/mjs/resolvers/fragments/concept.d.ts +3 -0
  251. package/{resolvers/fragments/concept.mjs → dist/mjs/resolvers/fragments/concept.js} +0 -0
  252. package/{resolvers/fragments/index.mjs → dist/mjs/resolvers/fragments/index.d.ts} +0 -0
  253. package/dist/mjs/resolvers/fragments/index.js +7 -0
  254. package/dist/mjs/resolvers/fragments/osce.d.ts +5 -0
  255. package/{resolvers/fragments/osce.mjs → dist/mjs/resolvers/fragments/osce.js} +0 -0
  256. package/dist/mjs/resolvers/fragments/picture.d.ts +3 -0
  257. package/{resolvers/fragments/picture.mjs → dist/mjs/resolvers/fragments/picture.js} +0 -0
  258. package/dist/mjs/resolvers/fragments/user.d.ts +1 -0
  259. package/{resolvers/fragments/user.mjs → dist/mjs/resolvers/fragments/user.js} +0 -0
  260. package/dist/mjs/resolvers/fragments/video.d.ts +2 -0
  261. package/{resolvers/fragments/video.mjs → dist/mjs/resolvers/fragments/video.js} +0 -0
  262. package/dist/mjs/resolvers/index.d.ts +12 -0
  263. package/{resolvers/index.mjs → dist/mjs/resolvers/index.js} +0 -0
  264. package/dist/mjs/resolvers/mutation/admin/algoliaSync.d.ts +10 -0
  265. package/{resolvers/mutation/admin/algoliaSync.mjs → dist/mjs/resolvers/mutation/admin/algoliaSync.js} +0 -0
  266. package/{resolvers/mutation/admin/index.mjs → dist/mjs/resolvers/mutation/admin/index.d.ts} +0 -0
  267. package/dist/mjs/resolvers/mutation/admin/index.js +2 -0
  268. package/dist/mjs/resolvers/mutation/admin/token.d.ts +24 -0
  269. package/{resolvers/mutation/admin/token.mjs → dist/mjs/resolvers/mutation/admin/token.js} +0 -0
  270. package/{resolvers/mutation/index.mjs → dist/mjs/resolvers/mutation/index.d.ts} +0 -0
  271. package/dist/mjs/resolvers/mutation/index.js +5 -0
  272. package/dist/mjs/resolvers/mutation/restricted/agora.d.ts +10 -0
  273. package/{resolvers/mutation/restricted/agora.mjs → dist/mjs/resolvers/mutation/restricted/agora.js} +0 -0
  274. package/dist/mjs/resolvers/mutation/restricted/contactUs.d.ts +16 -0
  275. package/{resolvers/mutation/restricted/contactUs.mjs → dist/mjs/resolvers/mutation/restricted/contactUs.js} +0 -0
  276. package/{resolvers/mutation/restricted/index.mjs → dist/mjs/resolvers/mutation/restricted/index.d.ts} +0 -0
  277. package/dist/mjs/resolvers/mutation/restricted/index.js +10 -0
  278. package/dist/mjs/resolvers/mutation/restricted/marksheet.d.ts +43 -0
  279. package/{resolvers/mutation/restricted/marksheet.mjs → dist/mjs/resolvers/mutation/restricted/marksheet.js} +0 -0
  280. package/dist/mjs/resolvers/mutation/restricted/mockTest.d.ts +15 -0
  281. package/{resolvers/mutation/restricted/mockTest.mjs → dist/mjs/resolvers/mutation/restricted/mockTest.js} +0 -0
  282. package/dist/mjs/resolvers/mutation/restricted/osce.d.ts +87 -0
  283. package/{resolvers/mutation/restricted/osce.mjs → dist/mjs/resolvers/mutation/restricted/osce.js} +0 -0
  284. package/dist/mjs/resolvers/mutation/restricted/questionDiscussion.d.ts +28 -0
  285. package/{resolvers/mutation/restricted/questionDiscussion.mjs → dist/mjs/resolvers/mutation/restricted/questionDiscussion.js} +0 -0
  286. package/dist/mjs/resolvers/mutation/restricted/todo.d.ts +48 -0
  287. package/{resolvers/mutation/restricted/todo.mjs → dist/mjs/resolvers/mutation/restricted/todo.js} +1 -2
  288. package/dist/mjs/resolvers/mutation/restricted/token.d.ts +21 -0
  289. package/{resolvers/mutation/restricted/token.mjs → dist/mjs/resolvers/mutation/restricted/token.js} +0 -0
  290. package/dist/mjs/resolvers/mutation/restricted/users.d.ts +32 -0
  291. package/{resolvers/mutation/restricted/users.mjs → dist/mjs/resolvers/mutation/restricted/users.js} +0 -0
  292. package/dist/mjs/resolvers/mutation/restricted/video.d.ts +8 -0
  293. package/{resolvers/mutation/restricted/video.mjs → dist/mjs/resolvers/mutation/restricted/video.js} +0 -0
  294. package/dist/mjs/resolvers/mutation/stripe.d.ts +10 -0
  295. package/{resolvers/mutation/stripe.mjs → dist/mjs/resolvers/mutation/stripe.js} +0 -0
  296. package/dist/mjs/resolvers/mutation/users.d.ts +31 -0
  297. package/{resolvers/mutation/users.mjs → dist/mjs/resolvers/mutation/users.js} +0 -0
  298. package/{resolvers/mutation/validUserToken/index.mjs → dist/mjs/resolvers/mutation/validUserToken/index.d.ts} +0 -0
  299. package/dist/mjs/resolvers/mutation/validUserToken/index.js +1 -0
  300. package/dist/mjs/resolvers/mutation/validUserToken/user.d.ts +8 -0
  301. package/{resolvers/mutation/validUserToken/user.mjs → dist/mjs/resolvers/mutation/validUserToken/user.js} +0 -0
  302. package/dist/mjs/resolvers/query/admin/getUserToken.d.ts +4 -0
  303. package/{resolvers/query/admin/getUserToken.mjs → dist/mjs/resolvers/query/admin/getUserToken.js} +0 -0
  304. package/{resolvers/query/admin/index.mjs → dist/mjs/resolvers/query/admin/index.d.ts} +0 -0
  305. package/dist/mjs/resolvers/query/admin/index.js +1 -0
  306. package/dist/mjs/resolvers/query/author.d.ts +3 -0
  307. package/{resolvers/query/author.mjs → dist/mjs/resolvers/query/author.js} +0 -0
  308. package/dist/mjs/resolvers/query/blog.d.ts +15 -0
  309. package/{resolvers/query/blog.mjs → dist/mjs/resolvers/query/blog.js} +0 -0
  310. package/dist/mjs/resolvers/query/book.d.ts +6 -0
  311. package/{resolvers/query/book.mjs → dist/mjs/resolvers/query/book.js} +0 -0
  312. package/dist/mjs/resolvers/query/feedback.d.ts +3 -0
  313. package/{resolvers/query/feedback.mjs → dist/mjs/resolvers/query/feedback.js} +0 -0
  314. package/{resolvers/query/index.mjs → dist/mjs/resolvers/query/index.d.ts} +0 -0
  315. package/dist/mjs/resolvers/query/index.js +11 -0
  316. package/dist/mjs/resolvers/query/restricted/anatomy.d.ts +3 -0
  317. package/{resolvers/query/restricted/anatomy.mjs → dist/mjs/resolvers/query/restricted/anatomy.js} +0 -0
  318. package/{resolvers/query/restricted/index.mjs → dist/mjs/resolvers/query/restricted/index.d.ts} +0 -0
  319. package/dist/mjs/resolvers/query/restricted/index.js +11 -0
  320. package/dist/mjs/resolvers/query/restricted/marksheet.d.ts +61 -0
  321. package/{resolvers/query/restricted/marksheet.mjs → dist/mjs/resolvers/query/restricted/marksheet.js} +0 -0
  322. package/dist/mjs/resolvers/query/restricted/mockTests.d.ts +10 -0
  323. package/{resolvers/query/restricted/mockTests.mjs → dist/mjs/resolvers/query/restricted/mockTests.js} +0 -0
  324. package/dist/mjs/resolvers/query/restricted/osce.d.ts +45 -0
  325. package/{resolvers/query/restricted/osce.mjs → dist/mjs/resolvers/query/restricted/osce.js} +0 -0
  326. package/dist/mjs/resolvers/query/restricted/quesBook.d.ts +7 -0
  327. package/{resolvers/query/restricted/quesBook.mjs → dist/mjs/resolvers/query/restricted/quesBook.js} +0 -0
  328. package/dist/mjs/resolvers/query/restricted/replication.d.ts +33 -0
  329. package/{resolvers/query/restricted/replication.mjs → dist/mjs/resolvers/query/restricted/replication.js} +6 -6
  330. package/dist/mjs/resolvers/query/restricted/todos.d.ts +28 -0
  331. package/{resolvers/query/restricted/todos.mjs → dist/mjs/resolvers/query/restricted/todos.js} +0 -0
  332. package/dist/mjs/resolvers/query/restricted/topics.d.ts +20 -0
  333. package/{resolvers/query/restricted/topics.mjs → dist/mjs/resolvers/query/restricted/topics.js} +0 -0
  334. package/dist/mjs/resolvers/query/restricted/university.d.ts +15 -0
  335. package/{resolvers/query/restricted/university.mjs → dist/mjs/resolvers/query/restricted/university.js} +0 -0
  336. package/dist/mjs/resolvers/query/restricted/user.d.ts +25 -0
  337. package/{resolvers/query/restricted/user.mjs → dist/mjs/resolvers/query/restricted/user.js} +0 -0
  338. package/dist/mjs/resolvers/query/restricted/video.d.ts +10 -0
  339. package/{resolvers/query/restricted/video.mjs → dist/mjs/resolvers/query/restricted/video.js} +0 -0
  340. package/dist/mjs/resolvers/query/sample.d.ts +26 -0
  341. package/{resolvers/query/sample.mjs → dist/mjs/resolvers/query/sample.js} +0 -0
  342. package/dist/mjs/resolvers/query/subscription.d.ts +3 -0
  343. package/{resolvers/query/subscription.mjs → dist/mjs/resolvers/query/subscription.js} +0 -0
  344. package/dist/mjs/resolvers/query/university.d.ts +5 -0
  345. package/{resolvers/query/university.mjs → dist/mjs/resolvers/query/university.js} +0 -0
  346. package/dist/mjs/resolvers/query/user.d.ts +12 -0
  347. package/{resolvers/query/user.mjs → dist/mjs/resolvers/query/user.js} +0 -0
  348. package/dist/mjs/resolvers/query/video.d.ts +14 -0
  349. package/{resolvers/query/video.mjs → dist/mjs/resolvers/query/video.js} +0 -0
  350. package/{resolvers/subscription/index.mjs → dist/mjs/resolvers/subscription/index.d.ts} +0 -0
  351. package/dist/mjs/resolvers/subscription/index.js +1 -0
  352. package/dist/mjs/resolvers/subscription/osce.d.ts +66 -0
  353. package/{resolvers/subscription/osce.mjs → dist/mjs/resolvers/subscription/osce.js} +0 -0
  354. package/dist/mjs/resolvers/types.d.ts +10 -0
  355. package/{resolvers/types.mjs → dist/mjs/resolvers/types.js} +0 -0
  356. package/dist/mjs/types.d.ts +1 -0
  357. package/dist/mjs/utils/commonFunctions.d.ts +9 -0
  358. package/{utils/commonFunctions.mjs → dist/mjs/utils/commonFunctions.js} +21 -1
  359. package/dist/mjs/utils/index.d.ts +9 -0
  360. package/{utils/index.mjs → dist/mjs/utils/index.js} +0 -0
  361. package/dist/mjs/utils/lightgallery.d.ts +9 -0
  362. package/dist/mjs/utils/lightgallery.js +84 -0
  363. package/dist/mjs/utils/offlineLink.d.ts +64 -0
  364. package/dist/mjs/utils/offlineLink.js +220 -0
  365. package/dist/mjs/utils/random.d.ts +1 -0
  366. package/{utils/random.mjs → dist/mjs/utils/random.js} +0 -0
  367. package/dist/mjs/utils/uuid4.d.ts +107 -0
  368. package/{utils/uuid4.mjs → dist/mjs/utils/uuid4.js} +73 -73
  369. package/dist/mjs/utils/webSocketLink.d.ts +7 -0
  370. package/{utils/webSocketLink.mjs → dist/mjs/utils/webSocketLink.js} +2 -1
  371. package/dist/mjs/utils/wordsToNumber.d.ts +1 -0
  372. package/{utils/wordsToNumber.mjs → dist/mjs/utils/wordsToNumber.js} +0 -0
  373. package/package.json +102 -14
  374. package/utils/lightgallery.js +0 -91
  375. package/utils/lightgallery.mjs +0 -87
  376. package/utils/offlineLink.js +0 -237
  377. package/utils/offlineLink.mjs +0 -230
package/package.json CHANGED
@@ -1,29 +1,91 @@
1
1
  {
2
2
  "name": "@quesmed/types",
3
- "version": "1.5.9",
3
+ "version": "1.6.0",
4
4
  "description": "Typescript types for Quesmed",
5
- "main": "index.js",
6
- "module": "index.mjs",
7
- "types": "index.d.ts",
8
- "type": "module",
9
- "scripts": {},
10
- "repository": {
11
- "type": "git",
12
- "url": "git+https://github.com/Quesmed/quesmed_types.git"
13
- },
14
5
  "keywords": [
15
6
  "quesmed",
16
7
  "types",
17
8
  "typescript"
18
9
  ],
10
+ "main": "dist/cjs/index.js",
11
+ "module": "dist/mjs/index.js",
12
+ "types": "dist/mjs/index.d.ts",
13
+ "exports": {
14
+ ".": {
15
+ "import": "./dist/mjs/index.js",
16
+ "require": "./dist/cjs/index.js",
17
+ "types": "./dist/mjs/index.d.ts"
18
+ },
19
+ "./models": {
20
+ "import": "./dist/mjs/models/index.js",
21
+ "require": "./dist/cjs/models/index.js",
22
+ "types": "./dist/mjs/models/index.d.ts"
23
+ },
24
+ "./utils": {
25
+ "import": "./dist/mjs/utils/index.js",
26
+ "require": "./dist/cjs/utils/index.js",
27
+ "types": "./dist/mjs/utils/index.d.ts"
28
+ },
29
+ "./resolvers/query": {
30
+ "import": "./dist/mjs/resolvers/query/index.js",
31
+ "require": "./dist/cjs/resolvers/query/index.js",
32
+ "types": "./dist/mjs/resolvers/query/index.d.ts"
33
+ },
34
+ "./resolvers/query/restricted": {
35
+ "import": "./dist/mjs/resolvers/query/restricted/index.js",
36
+ "require": "./dist/cjs/resolvers/query/restricted/index.js",
37
+ "types": "./dist/mjs/resolvers/query/restricted/index.d.ts"
38
+ },
39
+ "./resolvers/query/admin": {
40
+ "import": "./dist/mjs/resolvers/query/admin/index.js",
41
+ "require": "./dist/cjs/resolvers/query/admin/index.js",
42
+ "types": "./dist/mjs/resolvers/query/admin/index.d.ts"
43
+ },
44
+ "./resolvers/mutation": {
45
+ "import": "./dist/mjs/resolvers/mutation/index.js",
46
+ "require": "./dist/cjs/resolvers/mutation/index.js",
47
+ "types": "./dist/mjs/resolvers/mutation/index.d.ts"
48
+ },
49
+ "./resolvers/mutation/validUserToken": {
50
+ "import": "./dist/mjs/resolvers/mutation/validUserToken/index.js",
51
+ "require": "./dist/cjs/resolvers/mutation/validUserToken/index.js",
52
+ "types": "./dist/mjs/resolvers/mutation/validUserToken/index.d.ts"
53
+ },
54
+ "./resolvers/mutation/restricted": {
55
+ "import": "./dist/mjs/resolvers/mutation/restricted/index.js",
56
+ "require": "./dist/cjs/resolvers/mutation/restricted/index.js",
57
+ "types": "./dist/mjs/resolvers/mutation/restricted/index.d.ts"
58
+ },
59
+ "./resolvers/mutation/admin": {
60
+ "import": "./dist/mjs/resolvers/mutation/admin/index.js",
61
+ "require": "./dist/cjs/resolvers/mutation/admin/index.js",
62
+ "types": "./dist/mjs/resolvers/mutation/admin/index.d.ts"
63
+ },
64
+ "./resolvers/subscription": {
65
+ "import": "./dist/mjs/resolvers/subscription/index.js",
66
+ "require": "./dist/cjs/resolvers/subscription/index.js",
67
+ "types": "./dist/mjs/resolvers/subscription/index.d.ts"
68
+ }
69
+ },
19
70
  "author": "stefan@quesmed.com",
20
71
  "license": "ISC",
72
+ "scripts": {
73
+ "test": "jest",
74
+ "clean": "rimraf dist",
75
+ "compile": "yarn pnpify tsc -p tsconfig.json && yarn pnpify tsc -p tsconfig-cjs.json",
76
+ "build": "yarn clean && yarn compile && ./fixup.sh",
77
+ "schema": "rover graph introspect http://localhost:8080/graphql > schema.graphql",
78
+ "schema:local": "node schema.cjs",
79
+ "postversion": "git push && git push --tags"
80
+ },
21
81
  "bugs": {
22
82
  "url": "https://github.com/Quesmed/quesmed_types/issues"
23
83
  },
84
+ "repository": {
85
+ "type": "git",
86
+ "url": "git+https://github.com/Quesmed/quesmed_types.git"
87
+ },
24
88
  "homepage": "https://github.com/Quesmed/quesmed_types#readme",
25
- "devDependencies": {},
26
- "packageManager": "yarn@3.1.1",
27
89
  "dependencies": {
28
90
  "@apollo/client": "^3.5.7",
29
91
  "@react-native-async-storage/async-storage": "^1.15.16",
@@ -32,9 +94,35 @@
32
94
  "react-native": "^0.67.1",
33
95
  "react-native-expo-image-cache": "^4.1.0"
34
96
  },
97
+ "devDependencies": {
98
+ "@babel/core": "^7.16.7",
99
+ "@babel/preset-env": "^7.16.8",
100
+ "@babel/preset-typescript": "^7.16.7",
101
+ "@graphql-tools/load-files": "^6.5.3",
102
+ "@graphql-tools/merge": "^8.2.2",
103
+ "@types/jest": "^27.4.0",
104
+ "@types/node": "^17.0.10",
105
+ "@yarnpkg/pnpify": "^3.1.1-rc.11",
106
+ "babel-jest": "^27.4.6",
107
+ "eslint": "^8.7.0",
108
+ "fmt-obj": "^2.0.0",
109
+ "graphql": "^16.2.0",
110
+ "graphql-ws": "^5.5.5",
111
+ "jest": "^27.4.7",
112
+ "prettier": "^2.5.1",
113
+ "prettier-plugin-organize-imports": "^2.3.4",
114
+ "renamer": "^4.0.0",
115
+ "rimraf": "^3.0.2",
116
+ "ts-node": "^10.4.0",
117
+ "typescript": "^4.5.4"
118
+ },
35
119
  "peerDependencies": {
36
120
  "graphql": "^16.2.0",
37
121
  "graphql-ws": "^5.5.5",
38
122
  "react": "^17"
39
- }
40
- }
123
+ },
124
+ "files": [
125
+ "dist/"
126
+ ],
127
+ "packageManager": "yarn@3.1.1"
128
+ }
@@ -1,91 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.lightgalleryOsceResolve = void 0;
13
- const lightgalleryRegex = /\[lightgallery\]/;
14
- function isOsceMarksheet(data) {
15
- return 'osceStationId' in data;
16
- }
17
- function lightgalleryOsceResolve(data, cache) {
18
- return __awaiter(this, void 0, void 0, function* () {
19
- let station;
20
- if (isOsceMarksheet(data)) {
21
- if (!data.osceStation) {
22
- throw new Error('OsceStation not found on OsceMarksheet');
23
- }
24
- station = data.osceStation;
25
- }
26
- else {
27
- station = data;
28
- }
29
- const upOsceStation = {
30
- candidateBrief: station.candidateBrief,
31
- actorBrief: station.actorBrief,
32
- examinerBrief: station.examinerBrief,
33
- explanation: station.explanation,
34
- };
35
- if (station.candidatePictures && station.candidatePictures.length > 0) {
36
- upOsceStation.candidateBrief = yield lightgalleryMutation(upOsceStation.candidateBrief, station.candidatePictures, cache);
37
- }
38
- if (station.actorPictures && station.actorPictures.length > 0) {
39
- upOsceStation.actorBrief = yield lightgalleryMutation(upOsceStation.actorBrief, station.actorPictures, cache);
40
- }
41
- if (station.examinerPictures && station.examinerPictures.length > 0) {
42
- upOsceStation.examinerBrief = yield lightgalleryMutation(upOsceStation.examinerBrief, station.examinerPictures, cache);
43
- }
44
- if (station.walkthroughPictures && station.walkthroughPictures.length > 0) {
45
- upOsceStation.explanation = yield lightgalleryMutation(upOsceStation.explanation, station.walkthroughPictures, cache);
46
- }
47
- if (isOsceMarksheet(data)) {
48
- return Object.assign(Object.assign({}, data), { osceStation: Object.assign(Object.assign({}, data.osceStation), upOsceStation) });
49
- }
50
- else {
51
- return Object.assign(Object.assign({}, data), upOsceStation);
52
- }
53
- });
54
- }
55
- exports.lightgalleryOsceResolve = lightgalleryOsceResolve;
56
- const lightgalleryMutation = (text, pictures, cache) => __awaiter(void 0, void 0, void 0, function* () {
57
- var _a;
58
- if (pictures.length === 0) {
59
- return text;
60
- }
61
- const picturesHTML = [];
62
- for (const { picture } of pictures) {
63
- const pic = picture.path;
64
- const uri = `https://app.quesmed.com/${pic}`;
65
- let file = '';
66
- if (cache) {
67
- try {
68
- const localPath = yield cache.CacheManager.get(uri, {}).getPath();
69
- if (localPath) {
70
- file =
71
- cache.Platform.OS === 'ios'
72
- ? localPath.replace('file://', '')
73
- : localPath;
74
- }
75
- }
76
- catch (e) {
77
- console.error(e);
78
- }
79
- }
80
- if (((_a = picture.caption) === null || _a === void 0 ? void 0 : _a.length) > 0) {
81
- picturesHTML.push(`![${file}](${uri} "${picture.caption}")`);
82
- }
83
- picturesHTML.push(`![${file}](${uri})`);
84
- }
85
- if (lightgalleryRegex.test(text)) {
86
- return text.replace(lightgalleryRegex, picturesHTML[0]);
87
- }
88
- else {
89
- return text + '\n\n' + picturesHTML[0] + '\n';
90
- }
91
- });
@@ -1,87 +0,0 @@
1
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
- return new (P || (P = Promise))(function (resolve, reject) {
4
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
- step((generator = generator.apply(thisArg, _arguments || [])).next());
8
- });
9
- };
10
- const lightgalleryRegex = /\[lightgallery\]/;
11
- function isOsceMarksheet(data) {
12
- return 'osceStationId' in data;
13
- }
14
- export function lightgalleryOsceResolve(data, cache) {
15
- return __awaiter(this, void 0, void 0, function* () {
16
- let station;
17
- if (isOsceMarksheet(data)) {
18
- if (!data.osceStation) {
19
- throw new Error('OsceStation not found on OsceMarksheet');
20
- }
21
- station = data.osceStation;
22
- }
23
- else {
24
- station = data;
25
- }
26
- const upOsceStation = {
27
- candidateBrief: station.candidateBrief,
28
- actorBrief: station.actorBrief,
29
- examinerBrief: station.examinerBrief,
30
- explanation: station.explanation,
31
- };
32
- if (station.candidatePictures && station.candidatePictures.length > 0) {
33
- upOsceStation.candidateBrief = yield lightgalleryMutation(upOsceStation.candidateBrief, station.candidatePictures, cache);
34
- }
35
- if (station.actorPictures && station.actorPictures.length > 0) {
36
- upOsceStation.actorBrief = yield lightgalleryMutation(upOsceStation.actorBrief, station.actorPictures, cache);
37
- }
38
- if (station.examinerPictures && station.examinerPictures.length > 0) {
39
- upOsceStation.examinerBrief = yield lightgalleryMutation(upOsceStation.examinerBrief, station.examinerPictures, cache);
40
- }
41
- if (station.walkthroughPictures && station.walkthroughPictures.length > 0) {
42
- upOsceStation.explanation = yield lightgalleryMutation(upOsceStation.explanation, station.walkthroughPictures, cache);
43
- }
44
- if (isOsceMarksheet(data)) {
45
- return Object.assign(Object.assign({}, data), { osceStation: Object.assign(Object.assign({}, data.osceStation), upOsceStation) });
46
- }
47
- else {
48
- return Object.assign(Object.assign({}, data), upOsceStation);
49
- }
50
- });
51
- }
52
- const lightgalleryMutation = (text, pictures, cache) => __awaiter(void 0, void 0, void 0, function* () {
53
- var _a;
54
- if (pictures.length === 0) {
55
- return text;
56
- }
57
- const picturesHTML = [];
58
- for (const { picture } of pictures) {
59
- const pic = picture.path;
60
- const uri = `https://app.quesmed.com/${pic}`;
61
- let file = '';
62
- if (cache) {
63
- try {
64
- const localPath = yield cache.CacheManager.get(uri, {}).getPath();
65
- if (localPath) {
66
- file =
67
- cache.Platform.OS === 'ios'
68
- ? localPath.replace('file://', '')
69
- : localPath;
70
- }
71
- }
72
- catch (e) {
73
- console.error(e);
74
- }
75
- }
76
- if (((_a = picture.caption) === null || _a === void 0 ? void 0 : _a.length) > 0) {
77
- picturesHTML.push(`![${file}](${uri} "${picture.caption}")`);
78
- }
79
- picturesHTML.push(`![${file}](${uri})`);
80
- }
81
- if (lightgalleryRegex.test(text)) {
82
- return text.replace(lightgalleryRegex, picturesHTML[0]);
83
- }
84
- else {
85
- return text + '\n\n' + picturesHTML[0] + '\n';
86
- }
87
- });
@@ -1,237 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- var __importDefault = (this && this.__importDefault) || function (mod) {
12
- return (mod && mod.__esModule) ? mod : { "default": mod };
13
- };
14
- Object.defineProperty(exports, "__esModule", { value: true });
15
- exports.OfflineLink = void 0;
16
- const client_1 = require("@apollo/client");
17
- const uuid4_1 = __importDefault(require("./uuid4"));
18
- class OfflineLink extends client_1.ApolloLink {
19
- /**
20
- * storage
21
- * Provider that will persist the mutation queue. This can be any AsyncStorage compatible storage instance.
22
- *
23
- * retryInterval
24
- * Milliseconds between attempts to retry failed mutations. Defaults to 0, which disables automatic retry.
25
- *
26
- * sequential
27
- * Indicates if the attempts should be retried in order. Defaults to false which retries all failed mutations in parallel.
28
- *
29
- * retryOnServerError
30
- * Indicates if mutations should be reattempted if there are server side errors, useful to retry mutations on session expiration. Defaults to false.
31
- */
32
- constructor({ storage, retryInterval = 0, sequential = false, retryOnServerError = false, }) {
33
- super();
34
- this.queue = new Map();
35
- this.prefix = 'offlineLink:';
36
- if (!storage) {
37
- throw new Error('Storage is required, it can be an AsyncStorage compatible storage instance.');
38
- }
39
- this.storage = storage;
40
- this.sequential = sequential;
41
- this.retryInterval = retryInterval;
42
- this.retryOnServerError = retryOnServerError;
43
- }
44
- request(operation, forward) {
45
- const context = operation.getContext();
46
- const { query, variables } = operation || {};
47
- if (!context.optimisticResponse) {
48
- // If the mutation does not have an optimisticResponse then we can't defer it
49
- return forward(operation);
50
- }
51
- return new client_1.Observable((observer) => {
52
- const mutationId = uuid4_1.default.asBase64();
53
- this.add({
54
- mutation: query,
55
- variables,
56
- optimisticResponse: context.optimisticResponse,
57
- }, mutationId);
58
- const subscription = forward(operation).subscribe({
59
- next: (result) => {
60
- this.remove(mutationId);
61
- observer.next(result);
62
- },
63
- error: () => {
64
- // Mutation failed so we try again after a certain amount of time.
65
- this.delayedSync();
66
- // Resolve the mutation with the optimistic response so the UI can be updated
67
- observer.next({
68
- data: context.optimisticResponse,
69
- dataPresent: true,
70
- errors: [],
71
- });
72
- // Say we're all done so the UI is re-rendered.
73
- observer.complete();
74
- },
75
- complete: () => observer.complete(),
76
- });
77
- return () => {
78
- subscription.unsubscribe();
79
- };
80
- });
81
- }
82
- /**
83
- * Obtains the queue of mutations that must be sent to the server.
84
- * These are kept in a Map to preserve the order of the mutations in the queue.
85
- */
86
- getQueue() {
87
- return __awaiter(this, void 0, void 0, function* () {
88
- const map = new Map();
89
- try {
90
- const storedMutations = yield this.storage.getItem(this.prefix + 'Mutations');
91
- if (!storedMutations) {
92
- return map;
93
- }
94
- const mutationIds = storedMutations.split(',');
95
- for (const mutationId of mutationIds) {
96
- const storedMutation = yield this.storage.getItem(this.prefix + mutationId);
97
- if (!storedMutation) {
98
- continue;
99
- }
100
- map.set(mutationId, JSON.parse(storedMutation));
101
- }
102
- return map;
103
- }
104
- catch (e) {
105
- console.error(e);
106
- return map;
107
- }
108
- });
109
- }
110
- /**
111
- * Persist the queue so mutations can be retried at a later point in time.
112
- */
113
- saveQueue(mutationId, mutation) {
114
- return __awaiter(this, void 0, void 0, function* () {
115
- try {
116
- if (mutationId && mutation) {
117
- yield this.storage.setItem(this.prefix + mutationId, JSON.stringify(mutation));
118
- }
119
- yield this.storage.setItem(this.prefix + 'Mutations', [...this.queue.keys()].join());
120
- }
121
- catch (e) {
122
- console.error(e);
123
- }
124
- });
125
- }
126
- /**
127
- * Add a mutation attempt to the queue so that it can be retried at a later point in time.
128
- */
129
- add(item, mutationId) {
130
- return __awaiter(this, void 0, void 0, function* () {
131
- // We give the mutation attempt a random id so that it is easy to remove when needed (in sync loop)
132
- if (!mutationId) {
133
- mutationId = uuid4_1.default.asBase64();
134
- }
135
- this.queue.set(mutationId, item);
136
- yield this.saveQueue(mutationId, item);
137
- return mutationId;
138
- });
139
- }
140
- /**
141
- * Remove a mutation attempt from the queue.
142
- */
143
- remove(mutationId) {
144
- return __awaiter(this, void 0, void 0, function* () {
145
- this.queue.delete(mutationId);
146
- yield this.storage.removeItem(this.prefix + mutationId);
147
- yield this.saveQueue();
148
- });
149
- }
150
- /**
151
- * Takes the mutations in the queue and try to send them to the server again.
152
- */
153
- sync() {
154
- return __awaiter(this, void 0, void 0, function* () {
155
- if (!this.client) {
156
- throw new Error('Offline Link not setup with ApolloClient');
157
- }
158
- if (this.queue.size === 0) {
159
- return;
160
- }
161
- const attempts = Array.from(this.queue);
162
- if (this.sequential) {
163
- for (const [mutationId, attempt] of attempts) {
164
- let serverProcessed = false;
165
- try {
166
- yield this.client.mutate(Object.assign(Object.assign({}, attempt), { optimisticResponse: undefined }));
167
- serverProcessed = true;
168
- }
169
- catch (e) {
170
- const err = e;
171
- const networkError = err.networkError;
172
- if (!this.retryOnServerError && (networkError === null || networkError === void 0 ? void 0 : networkError.response)) {
173
- // There are GraphQL errors, which means the server processed the request so we can remove the mutation from the queue
174
- serverProcessed = true;
175
- }
176
- }
177
- if (serverProcessed) {
178
- try {
179
- yield this.remove(mutationId);
180
- }
181
- catch (e) {
182
- console.error(e);
183
- }
184
- }
185
- }
186
- }
187
- else {
188
- yield Promise.all(attempts.map(([mutationId, attempt]) => __awaiter(this, void 0, void 0, function* () {
189
- var _a;
190
- let serverProcessed = false;
191
- try {
192
- yield ((_a = this.client) === null || _a === void 0 ? void 0 : _a.mutate(Object.assign(Object.assign({}, attempt), { optimisticResponse: undefined })));
193
- serverProcessed = true;
194
- }
195
- catch (e) {
196
- const err = e;
197
- const networkError = err.networkError;
198
- if (!this.retryOnServerError && (networkError === null || networkError === void 0 ? void 0 : networkError.response)) {
199
- serverProcessed = true;
200
- }
201
- }
202
- if (serverProcessed) {
203
- yield this.remove(mutationId);
204
- }
205
- })));
206
- }
207
- // Remaining mutations in the queue are persisted
208
- yield this.saveQueue();
209
- if (this.queue.size !== 0 || this.retryInterval !== 0) {
210
- this.delayedSync();
211
- }
212
- });
213
- }
214
- /**
215
- * Runs sync() after the retryInterval
216
- */
217
- delayedSync() {
218
- if (this.retryInterval === 0) {
219
- return;
220
- }
221
- if (this.timeoutId) {
222
- clearTimeout(this.timeoutId);
223
- }
224
- this.timeoutId = setTimeout(() => this.sync, this.retryInterval);
225
- }
226
- /**
227
- * Configure the link to use Apollo Client and immediately try to sync the queue (if there's anything there).
228
- */
229
- setup(client) {
230
- return __awaiter(this, void 0, void 0, function* () {
231
- this.client = client;
232
- this.queue = yield this.getQueue();
233
- yield this.sync();
234
- });
235
- }
236
- }
237
- exports.OfflineLink = OfflineLink;