@atlaskit/teams-client 4.0.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 (457) hide show
  1. package/CHANGELOG.md +1061 -0
  2. package/LICENSE.md +11 -0
  3. package/README.md +9 -0
  4. package/client/package.json +15 -0
  5. package/dist/cjs/common/types.js +8 -0
  6. package/dist/cjs/common/utils/ari.js +31 -0
  7. package/dist/cjs/common/utils/error/index.js +182 -0
  8. package/dist/cjs/common/utils/filter-null.js +9 -0
  9. package/dist/cjs/common/utils/http.js +119 -0
  10. package/dist/cjs/common/utils/index.js +37 -0
  11. package/dist/cjs/common/utils/permissions/constants.js +68 -0
  12. package/dist/cjs/common/utils/permissions/has-permission.js +42 -0
  13. package/dist/cjs/common/utils/permissions/index.js +31 -0
  14. package/dist/cjs/common/utils/permissions/types.js +11 -0
  15. package/dist/cjs/common/utils/sort-teams.js +52 -0
  16. package/dist/cjs/common/utils/status-code-handlers-provider.js +30 -0
  17. package/dist/cjs/common/utils/team.js +19 -0
  18. package/dist/cjs/common/utils/ufo/constants.js +22 -0
  19. package/dist/cjs/common/utils/ufo/index.js +69 -0
  20. package/dist/cjs/common/utils/ufo/utils.js +26 -0
  21. package/dist/cjs/index.js +166 -0
  22. package/dist/cjs/mocks/endpoints.js +267 -0
  23. package/dist/cjs/mocks/generate-data.js +115 -0
  24. package/dist/cjs/mocks/index.js +61 -0
  25. package/dist/cjs/mocks/invitations.js +21 -0
  26. package/dist/cjs/mocks/responses.js +480 -0
  27. package/dist/cjs/mocks/team-link.js +26 -0
  28. package/dist/cjs/mocks/team.js +150 -0
  29. package/dist/cjs/mocks/user.js +102 -0
  30. package/dist/cjs/mocks/with-faker.js +16 -0
  31. package/dist/cjs/services/agg-client/index.js +137 -0
  32. package/dist/cjs/services/agg-client/mocks/index.js +71 -0
  33. package/dist/cjs/services/agg-client/types.js +10 -0
  34. package/dist/cjs/services/agg-client/utils/queries/team-membership-query.js +8 -0
  35. package/dist/cjs/services/agg-client/utils/queries/user-query.js +12 -0
  36. package/dist/cjs/services/agg-client/utils/user-type.js +18 -0
  37. package/dist/cjs/services/base-client/index.js +94 -0
  38. package/dist/cjs/services/collaborationgraph-client/index.js +58 -0
  39. package/dist/cjs/services/constants.js +13 -0
  40. package/dist/cjs/services/directory-client/index.js +241 -0
  41. package/dist/cjs/services/graphql-client/index.js +12 -0
  42. package/dist/cjs/services/graphql-client/main.js +69 -0
  43. package/dist/cjs/services/graphql-client/types.js +5 -0
  44. package/dist/cjs/services/graphql-client/utils/index.js +157 -0
  45. package/dist/cjs/services/hooks/use-teams-client-setup.js +44 -0
  46. package/dist/cjs/services/identity-client/index.js +171 -0
  47. package/dist/cjs/services/identity-client/utils.js +183 -0
  48. package/dist/cjs/services/index.js +18 -0
  49. package/dist/cjs/services/invitations-client/index.js +168 -0
  50. package/dist/cjs/services/invitations-client/types.js +1 -0
  51. package/dist/cjs/services/invitations-client/utils/index.js +115 -0
  52. package/dist/cjs/services/invitations-client/utils/types.js +5 -0
  53. package/dist/cjs/services/legion-client/index.js +1160 -0
  54. package/dist/cjs/services/legion-client/types.js +5 -0
  55. package/dist/cjs/services/main.js +1941 -0
  56. package/dist/cjs/services/mutability-client/index.js +97 -0
  57. package/dist/cjs/services/mutability-client/types.js +1 -0
  58. package/dist/cjs/services/object-resolver-client/index.js +60 -0
  59. package/dist/cjs/services/object-resolver-client/types.js +17 -0
  60. package/dist/cjs/services/object-resolver-client/utils.js +67 -0
  61. package/dist/cjs/services/perms-client/index.js +48 -0
  62. package/dist/cjs/services/public-api-client/generated/data-contracts.js +1 -0
  63. package/dist/cjs/services/public-api-client/index.js +264 -0
  64. package/dist/cjs/services/rest-client/index.js +381 -0
  65. package/dist/cjs/services/rest-client/utils/cookie.js +23 -0
  66. package/dist/cjs/services/rest-client/utils/parse-error-message.js +62 -0
  67. package/dist/cjs/services/rest-client/utils/parse-response.js +20 -0
  68. package/dist/cjs/services/rest-client/utils/strip-uuid.js +10 -0
  69. package/dist/cjs/services/sentry/constants.js +15 -0
  70. package/dist/cjs/services/sentry/index.js +67 -0
  71. package/dist/cjs/services/sentry/main.js +196 -0
  72. package/dist/cjs/services/sentry/types.js +5 -0
  73. package/dist/cjs/services/sentry/utils/get-sentry-config.js +45 -0
  74. package/dist/cjs/services/sentry/utils/initialise-sentry.js +55 -0
  75. package/dist/cjs/services/sentry/utils/sentry-client.js +121 -0
  76. package/dist/cjs/services/sentry/utils/use-teams-sentry-client-setup.js +40 -0
  77. package/dist/cjs/services/teams-in-slack-client/index.js +103 -0
  78. package/dist/cjs/services/types.js +1 -0
  79. package/dist/cjs/services/use-query-light/index.js +25 -0
  80. package/dist/cjs/services/use-query-light/main.js +232 -0
  81. package/dist/cjs/services/use-query-light/types.js +52 -0
  82. package/dist/cjs/services/user-info-provider/index.js +18 -0
  83. package/dist/cjs/services/user-info-provider/main.js +72 -0
  84. package/dist/cjs/services/user-preferences-client/index.js +98 -0
  85. package/dist/cjs/types/config.js +1 -0
  86. package/dist/cjs/types/index.js +19 -0
  87. package/dist/cjs/types/links.js +22 -0
  88. package/dist/cjs/types/media.js +1 -0
  89. package/dist/cjs/types/membership.js +24 -0
  90. package/dist/cjs/types/slack.js +1 -0
  91. package/dist/cjs/types/team.js +5 -0
  92. package/dist/cjs/types/user.js +10 -0
  93. package/dist/es2019/common/types.js +2 -0
  94. package/dist/es2019/common/utils/ari.js +21 -0
  95. package/dist/es2019/common/utils/error/index.js +142 -0
  96. package/dist/es2019/common/utils/filter-null.js +3 -0
  97. package/dist/es2019/common/utils/http.js +82 -0
  98. package/dist/es2019/common/utils/index.js +2 -0
  99. package/dist/es2019/common/utils/permissions/constants.js +59 -0
  100. package/dist/es2019/common/utils/permissions/has-permission.js +33 -0
  101. package/dist/es2019/common/utils/permissions/index.js +2 -0
  102. package/dist/es2019/common/utils/permissions/types.js +5 -0
  103. package/dist/es2019/common/utils/sort-teams.js +45 -0
  104. package/dist/es2019/common/utils/status-code-handlers-provider.js +25 -0
  105. package/dist/es2019/common/utils/team.js +6 -0
  106. package/dist/es2019/common/utils/ufo/constants.js +12 -0
  107. package/dist/es2019/common/utils/ufo/index.js +43 -0
  108. package/dist/es2019/common/utils/ufo/utils.js +18 -0
  109. package/dist/es2019/index.js +19 -0
  110. package/dist/es2019/mocks/endpoints.js +250 -0
  111. package/dist/es2019/mocks/generate-data.js +96 -0
  112. package/dist/es2019/mocks/index.js +2 -0
  113. package/dist/es2019/mocks/invitations.js +11 -0
  114. package/dist/es2019/mocks/responses.js +478 -0
  115. package/dist/es2019/mocks/team-link.js +14 -0
  116. package/dist/es2019/mocks/team.js +127 -0
  117. package/dist/es2019/mocks/user.js +79 -0
  118. package/dist/es2019/mocks/with-faker.js +8 -0
  119. package/dist/es2019/services/agg-client/index.js +70 -0
  120. package/dist/es2019/services/agg-client/mocks/index.js +64 -0
  121. package/dist/es2019/services/agg-client/types.js +4 -0
  122. package/dist/es2019/services/agg-client/utils/queries/team-membership-query.js +36 -0
  123. package/dist/es2019/services/agg-client/utils/queries/user-query.js +39 -0
  124. package/dist/es2019/services/agg-client/utils/user-type.js +13 -0
  125. package/dist/es2019/services/base-client/index.js +66 -0
  126. package/dist/es2019/services/collaborationgraph-client/index.js +37 -0
  127. package/dist/es2019/services/constants.js +7 -0
  128. package/dist/es2019/services/directory-client/index.js +155 -0
  129. package/dist/es2019/services/graphql-client/index.js +1 -0
  130. package/dist/es2019/services/graphql-client/main.js +23 -0
  131. package/dist/es2019/services/graphql-client/types.js +1 -0
  132. package/dist/es2019/services/graphql-client/utils/index.js +76 -0
  133. package/dist/es2019/services/hooks/use-teams-client-setup.js +40 -0
  134. package/dist/es2019/services/identity-client/index.js +53 -0
  135. package/dist/es2019/services/identity-client/utils.js +167 -0
  136. package/dist/es2019/services/index.js +1 -0
  137. package/dist/es2019/services/invitations-client/index.js +65 -0
  138. package/dist/es2019/services/invitations-client/types.js +0 -0
  139. package/dist/es2019/services/invitations-client/utils/index.js +101 -0
  140. package/dist/es2019/services/invitations-client/utils/types.js +1 -0
  141. package/dist/es2019/services/legion-client/index.js +484 -0
  142. package/dist/es2019/services/legion-client/types.js +1 -0
  143. package/dist/es2019/services/main.js +541 -0
  144. package/dist/es2019/services/mutability-client/index.js +49 -0
  145. package/dist/es2019/services/mutability-client/types.js +0 -0
  146. package/dist/es2019/services/object-resolver-client/index.js +21 -0
  147. package/dist/es2019/services/object-resolver-client/types.js +12 -0
  148. package/dist/es2019/services/object-resolver-client/utils.js +53 -0
  149. package/dist/es2019/services/perms-client/index.js +25 -0
  150. package/dist/es2019/services/public-api-client/generated/data-contracts.js +0 -0
  151. package/dist/es2019/services/public-api-client/index.js +120 -0
  152. package/dist/es2019/services/rest-client/index.js +177 -0
  153. package/dist/es2019/services/rest-client/utils/cookie.js +13 -0
  154. package/dist/es2019/services/rest-client/utils/parse-error-message.js +20 -0
  155. package/dist/es2019/services/rest-client/utils/parse-response.js +14 -0
  156. package/dist/es2019/services/rest-client/utils/strip-uuid.js +4 -0
  157. package/dist/es2019/services/sentry/constants.js +10 -0
  158. package/dist/es2019/services/sentry/index.js +2 -0
  159. package/dist/es2019/services/sentry/main.js +107 -0
  160. package/dist/es2019/services/sentry/types.js +1 -0
  161. package/dist/es2019/services/sentry/utils/get-sentry-config.js +37 -0
  162. package/dist/es2019/services/sentry/utils/initialise-sentry.js +23 -0
  163. package/dist/es2019/services/sentry/utils/sentry-client.js +57 -0
  164. package/dist/es2019/services/sentry/utils/use-teams-sentry-client-setup.js +14 -0
  165. package/dist/es2019/services/teams-in-slack-client/index.js +32 -0
  166. package/dist/es2019/services/types.js +0 -0
  167. package/dist/es2019/services/use-query-light/index.js +2 -0
  168. package/dist/es2019/services/use-query-light/main.js +162 -0
  169. package/dist/es2019/services/use-query-light/types.js +27 -0
  170. package/dist/es2019/services/user-info-provider/index.js +1 -0
  171. package/dist/es2019/services/user-info-provider/main.js +44 -0
  172. package/dist/es2019/services/user-preferences-client/index.js +19 -0
  173. package/dist/es2019/types/config.js +0 -0
  174. package/dist/es2019/types/index.js +2 -0
  175. package/dist/es2019/types/links.js +16 -0
  176. package/dist/es2019/types/media.js +0 -0
  177. package/dist/es2019/types/membership.js +16 -0
  178. package/dist/es2019/types/slack.js +0 -0
  179. package/dist/es2019/types/team.js +1 -0
  180. package/dist/es2019/types/user.js +4 -0
  181. package/dist/esm/common/types.js +2 -0
  182. package/dist/esm/common/utils/ari.js +25 -0
  183. package/dist/esm/common/utils/error/index.js +176 -0
  184. package/dist/esm/common/utils/filter-null.js +3 -0
  185. package/dist/esm/common/utils/http.js +109 -0
  186. package/dist/esm/common/utils/index.js +2 -0
  187. package/dist/esm/common/utils/permissions/constants.js +61 -0
  188. package/dist/esm/common/utils/permissions/has-permission.js +34 -0
  189. package/dist/esm/common/utils/permissions/index.js +2 -0
  190. package/dist/esm/common/utils/permissions/types.js +5 -0
  191. package/dist/esm/common/utils/sort-teams.js +46 -0
  192. package/dist/esm/common/utils/status-code-handlers-provider.js +23 -0
  193. package/dist/esm/common/utils/team.js +12 -0
  194. package/dist/esm/common/utils/ufo/constants.js +15 -0
  195. package/dist/esm/common/utils/ufo/index.js +62 -0
  196. package/dist/esm/common/utils/ufo/utils.js +20 -0
  197. package/dist/esm/index.js +19 -0
  198. package/dist/esm/mocks/endpoints.js +261 -0
  199. package/dist/esm/mocks/generate-data.js +106 -0
  200. package/dist/esm/mocks/index.js +2 -0
  201. package/dist/esm/mocks/invitations.js +14 -0
  202. package/dist/esm/mocks/responses.js +473 -0
  203. package/dist/esm/mocks/team-link.js +19 -0
  204. package/dist/esm/mocks/team.js +143 -0
  205. package/dist/esm/mocks/user.js +95 -0
  206. package/dist/esm/mocks/with-faker.js +10 -0
  207. package/dist/esm/services/agg-client/index.js +130 -0
  208. package/dist/esm/services/agg-client/mocks/index.js +64 -0
  209. package/dist/esm/services/agg-client/types.js +4 -0
  210. package/dist/esm/services/agg-client/utils/queries/team-membership-query.js +2 -0
  211. package/dist/esm/services/agg-client/utils/queries/user-query.js +5 -0
  212. package/dist/esm/services/agg-client/utils/user-type.js +12 -0
  213. package/dist/esm/services/base-client/index.js +87 -0
  214. package/dist/esm/services/collaborationgraph-client/index.js +51 -0
  215. package/dist/esm/services/constants.js +7 -0
  216. package/dist/esm/services/directory-client/index.js +234 -0
  217. package/dist/esm/services/graphql-client/index.js +1 -0
  218. package/dist/esm/services/graphql-client/main.js +62 -0
  219. package/dist/esm/services/graphql-client/types.js +1 -0
  220. package/dist/esm/services/graphql-client/utils/index.js +149 -0
  221. package/dist/esm/services/hooks/use-teams-client-setup.js +39 -0
  222. package/dist/esm/services/identity-client/index.js +164 -0
  223. package/dist/esm/services/identity-client/utils.js +174 -0
  224. package/dist/esm/services/index.js +1 -0
  225. package/dist/esm/services/invitations-client/index.js +163 -0
  226. package/dist/esm/services/invitations-client/types.js +0 -0
  227. package/dist/esm/services/invitations-client/utils/index.js +108 -0
  228. package/dist/esm/services/invitations-client/utils/types.js +1 -0
  229. package/dist/esm/services/legion-client/index.js +1154 -0
  230. package/dist/esm/services/legion-client/types.js +1 -0
  231. package/dist/esm/services/main.js +1936 -0
  232. package/dist/esm/services/mutability-client/index.js +90 -0
  233. package/dist/esm/services/mutability-client/types.js +0 -0
  234. package/dist/esm/services/object-resolver-client/index.js +53 -0
  235. package/dist/esm/services/object-resolver-client/types.js +12 -0
  236. package/dist/esm/services/object-resolver-client/utils.js +61 -0
  237. package/dist/esm/services/perms-client/index.js +42 -0
  238. package/dist/esm/services/public-api-client/generated/data-contracts.js +0 -0
  239. package/dist/esm/services/public-api-client/index.js +260 -0
  240. package/dist/esm/services/rest-client/index.js +373 -0
  241. package/dist/esm/services/rest-client/utils/cookie.js +14 -0
  242. package/dist/esm/services/rest-client/utils/parse-error-message.js +55 -0
  243. package/dist/esm/services/rest-client/utils/parse-response.js +14 -0
  244. package/dist/esm/services/rest-client/utils/strip-uuid.js +4 -0
  245. package/dist/esm/services/sentry/constants.js +10 -0
  246. package/dist/esm/services/sentry/index.js +2 -0
  247. package/dist/esm/services/sentry/main.js +186 -0
  248. package/dist/esm/services/sentry/types.js +1 -0
  249. package/dist/esm/services/sentry/utils/get-sentry-config.js +38 -0
  250. package/dist/esm/services/sentry/utils/initialise-sentry.js +48 -0
  251. package/dist/esm/services/sentry/utils/sentry-client.js +108 -0
  252. package/dist/esm/services/sentry/utils/use-teams-sentry-client-setup.js +33 -0
  253. package/dist/esm/services/teams-in-slack-client/index.js +96 -0
  254. package/dist/esm/services/types.js +0 -0
  255. package/dist/esm/services/use-query-light/index.js +2 -0
  256. package/dist/esm/services/use-query-light/main.js +225 -0
  257. package/dist/esm/services/use-query-light/types.js +45 -0
  258. package/dist/esm/services/user-info-provider/index.js +1 -0
  259. package/dist/esm/services/user-info-provider/main.js +66 -0
  260. package/dist/esm/services/user-preferences-client/index.js +91 -0
  261. package/dist/esm/types/config.js +0 -0
  262. package/dist/esm/types/index.js +2 -0
  263. package/dist/esm/types/links.js +16 -0
  264. package/dist/esm/types/media.js +0 -0
  265. package/dist/esm/types/membership.js +17 -0
  266. package/dist/esm/types/slack.js +0 -0
  267. package/dist/esm/types/team.js +1 -0
  268. package/dist/esm/types/user.js +4 -0
  269. package/dist/types/common/types.d.ts +4 -0
  270. package/dist/types/common/utils/ari.d.ts +7 -0
  271. package/dist/types/common/utils/error/index.d.ts +91 -0
  272. package/dist/types/common/utils/filter-null.d.ts +1 -0
  273. package/dist/types/common/utils/http.d.ts +31 -0
  274. package/dist/types/common/utils/index.d.ts +2 -0
  275. package/dist/types/common/utils/permissions/constants.d.ts +23 -0
  276. package/dist/types/common/utils/permissions/has-permission.d.ts +31 -0
  277. package/dist/types/common/utils/permissions/index.d.ts +3 -0
  278. package/dist/types/common/utils/permissions/types.d.ts +7 -0
  279. package/dist/types/common/utils/sort-teams.d.ts +2 -0
  280. package/dist/types/common/utils/status-code-handlers-provider.d.ts +17 -0
  281. package/dist/types/common/utils/team.d.ts +5 -0
  282. package/dist/types/common/utils/ufo/constants.d.ts +5 -0
  283. package/dist/types/common/utils/ufo/index.d.ts +6 -0
  284. package/dist/types/common/utils/ufo/utils.d.ts +11 -0
  285. package/dist/types/index.d.ts +15 -0
  286. package/dist/types/mocks/endpoints.d.ts +22 -0
  287. package/dist/types/mocks/generate-data.d.ts +16 -0
  288. package/dist/types/mocks/index.d.ts +2 -0
  289. package/dist/types/mocks/invitations.d.ts +11 -0
  290. package/dist/types/mocks/responses.d.ts +75 -0
  291. package/dist/types/mocks/team-link.d.ts +7 -0
  292. package/dist/types/mocks/team.d.ts +14 -0
  293. package/dist/types/mocks/user.d.ts +15 -0
  294. package/dist/types/mocks/with-faker.d.ts +11 -0
  295. package/dist/types/services/agg-client/index.d.ts +12 -0
  296. package/dist/types/services/agg-client/mocks/index.d.ts +49 -0
  297. package/dist/types/services/agg-client/types.d.ts +13 -0
  298. package/dist/types/services/agg-client/utils/queries/team-membership-query.d.ts +33 -0
  299. package/dist/types/services/agg-client/utils/queries/user-query.d.ts +31 -0
  300. package/dist/types/services/agg-client/utils/user-type.d.ts +7 -0
  301. package/dist/types/services/base-client/index.d.ts +37 -0
  302. package/dist/types/services/collaborationgraph-client/index.d.ts +37 -0
  303. package/dist/types/services/constants.d.ts +2 -0
  304. package/dist/types/services/directory-client/index.d.ts +53 -0
  305. package/dist/types/services/graphql-client/index.d.ts +1 -0
  306. package/dist/types/services/graphql-client/main.d.ts +8 -0
  307. package/dist/types/services/graphql-client/types.d.ts +19 -0
  308. package/dist/types/services/graphql-client/utils/index.d.ts +3 -0
  309. package/dist/types/services/hooks/use-teams-client-setup.d.ts +12 -0
  310. package/dist/types/services/identity-client/index.d.ts +33 -0
  311. package/dist/types/services/identity-client/utils.d.ts +81 -0
  312. package/dist/types/services/index.d.ts +1 -0
  313. package/dist/types/services/invitations-client/index.d.ts +11 -0
  314. package/dist/types/services/invitations-client/types.d.ts +67 -0
  315. package/dist/types/services/invitations-client/utils/index.d.ts +7 -0
  316. package/dist/types/services/invitations-client/utils/types.d.ts +7 -0
  317. package/dist/types/services/legion-client/index.d.ts +133 -0
  318. package/dist/types/services/legion-client/types.d.ts +107 -0
  319. package/dist/types/services/main.d.ts +316 -0
  320. package/dist/types/services/mutability-client/index.d.ts +8 -0
  321. package/dist/types/services/mutability-client/types.d.ts +5 -0
  322. package/dist/types/services/object-resolver-client/index.d.ts +8 -0
  323. package/dist/types/services/object-resolver-client/types.d.ts +38 -0
  324. package/dist/types/services/object-resolver-client/utils.d.ts +18 -0
  325. package/dist/types/services/perms-client/index.d.ts +16 -0
  326. package/dist/types/services/public-api-client/generated/data-contracts.d.ts +112 -0
  327. package/dist/types/services/public-api-client/index.d.ts +41 -0
  328. package/dist/types/services/rest-client/index.d.ts +40 -0
  329. package/dist/types/services/rest-client/utils/cookie.d.ts +5 -0
  330. package/dist/types/services/rest-client/utils/parse-error-message.d.ts +1 -0
  331. package/dist/types/services/rest-client/utils/parse-response.d.ts +1 -0
  332. package/dist/types/services/rest-client/utils/strip-uuid.d.ts +1 -0
  333. package/dist/types/services/sentry/constants.d.ts +5 -0
  334. package/dist/types/services/sentry/index.d.ts +3 -0
  335. package/dist/types/services/sentry/main.d.ts +36 -0
  336. package/dist/types/services/sentry/types.d.ts +36 -0
  337. package/dist/types/services/sentry/utils/get-sentry-config.d.ts +2 -0
  338. package/dist/types/services/sentry/utils/initialise-sentry.d.ts +2 -0
  339. package/dist/types/services/sentry/utils/sentry-client.d.ts +9 -0
  340. package/dist/types/services/sentry/utils/use-teams-sentry-client-setup.d.ts +2 -0
  341. package/dist/types/services/teams-in-slack-client/index.d.ts +27 -0
  342. package/dist/types/services/types.d.ts +10 -0
  343. package/dist/types/services/use-query-light/index.d.ts +3 -0
  344. package/dist/types/services/use-query-light/main.d.ts +4 -0
  345. package/dist/types/services/use-query-light/types.d.ts +57 -0
  346. package/dist/types/services/user-info-provider/index.d.ts +1 -0
  347. package/dist/types/services/user-info-provider/main.d.ts +14 -0
  348. package/dist/types/services/user-preferences-client/index.d.ts +9 -0
  349. package/dist/types/types/config.d.ts +7 -0
  350. package/dist/types/types/index.d.ts +10 -0
  351. package/dist/types/types/links.d.ts +31 -0
  352. package/dist/types/types/media.d.ts +6 -0
  353. package/dist/types/types/membership.d.ts +35 -0
  354. package/dist/types/types/slack.d.ts +7 -0
  355. package/dist/types/types/team.d.ts +117 -0
  356. package/dist/types/types/user.d.ts +41 -0
  357. package/dist/types-ts4.5/common/types.d.ts +4 -0
  358. package/dist/types-ts4.5/common/utils/ari.d.ts +7 -0
  359. package/dist/types-ts4.5/common/utils/error/index.d.ts +91 -0
  360. package/dist/types-ts4.5/common/utils/filter-null.d.ts +1 -0
  361. package/dist/types-ts4.5/common/utils/http.d.ts +31 -0
  362. package/dist/types-ts4.5/common/utils/index.d.ts +2 -0
  363. package/dist/types-ts4.5/common/utils/permissions/constants.d.ts +23 -0
  364. package/dist/types-ts4.5/common/utils/permissions/has-permission.d.ts +31 -0
  365. package/dist/types-ts4.5/common/utils/permissions/index.d.ts +3 -0
  366. package/dist/types-ts4.5/common/utils/permissions/types.d.ts +26 -0
  367. package/dist/types-ts4.5/common/utils/sort-teams.d.ts +2 -0
  368. package/dist/types-ts4.5/common/utils/status-code-handlers-provider.d.ts +17 -0
  369. package/dist/types-ts4.5/common/utils/team.d.ts +5 -0
  370. package/dist/types-ts4.5/common/utils/ufo/constants.d.ts +64 -0
  371. package/dist/types-ts4.5/common/utils/ufo/index.d.ts +6 -0
  372. package/dist/types-ts4.5/common/utils/ufo/utils.d.ts +11 -0
  373. package/dist/types-ts4.5/index.d.ts +15 -0
  374. package/dist/types-ts4.5/mocks/endpoints.d.ts +22 -0
  375. package/dist/types-ts4.5/mocks/generate-data.d.ts +16 -0
  376. package/dist/types-ts4.5/mocks/index.d.ts +2 -0
  377. package/dist/types-ts4.5/mocks/invitations.d.ts +11 -0
  378. package/dist/types-ts4.5/mocks/responses.d.ts +75 -0
  379. package/dist/types-ts4.5/mocks/team-link.d.ts +7 -0
  380. package/dist/types-ts4.5/mocks/team.d.ts +14 -0
  381. package/dist/types-ts4.5/mocks/user.d.ts +15 -0
  382. package/dist/types-ts4.5/mocks/with-faker.d.ts +11 -0
  383. package/dist/types-ts4.5/services/agg-client/index.d.ts +12 -0
  384. package/dist/types-ts4.5/services/agg-client/mocks/index.d.ts +49 -0
  385. package/dist/types-ts4.5/services/agg-client/types.d.ts +13 -0
  386. package/dist/types-ts4.5/services/agg-client/utils/queries/team-membership-query.d.ts +33 -0
  387. package/dist/types-ts4.5/services/agg-client/utils/queries/user-query.d.ts +31 -0
  388. package/dist/types-ts4.5/services/agg-client/utils/user-type.d.ts +7 -0
  389. package/dist/types-ts4.5/services/base-client/index.d.ts +37 -0
  390. package/dist/types-ts4.5/services/collaborationgraph-client/index.d.ts +37 -0
  391. package/dist/types-ts4.5/services/constants.d.ts +2 -0
  392. package/dist/types-ts4.5/services/directory-client/index.d.ts +53 -0
  393. package/dist/types-ts4.5/services/graphql-client/index.d.ts +1 -0
  394. package/dist/types-ts4.5/services/graphql-client/main.d.ts +8 -0
  395. package/dist/types-ts4.5/services/graphql-client/types.d.ts +19 -0
  396. package/dist/types-ts4.5/services/graphql-client/utils/index.d.ts +3 -0
  397. package/dist/types-ts4.5/services/hooks/use-teams-client-setup.d.ts +12 -0
  398. package/dist/types-ts4.5/services/identity-client/index.d.ts +33 -0
  399. package/dist/types-ts4.5/services/identity-client/utils.d.ts +81 -0
  400. package/dist/types-ts4.5/services/index.d.ts +1 -0
  401. package/dist/types-ts4.5/services/invitations-client/index.d.ts +11 -0
  402. package/dist/types-ts4.5/services/invitations-client/types.d.ts +67 -0
  403. package/dist/types-ts4.5/services/invitations-client/utils/index.d.ts +7 -0
  404. package/dist/types-ts4.5/services/invitations-client/utils/types.d.ts +7 -0
  405. package/dist/types-ts4.5/services/legion-client/index.d.ts +133 -0
  406. package/dist/types-ts4.5/services/legion-client/types.d.ts +107 -0
  407. package/dist/types-ts4.5/services/main.d.ts +316 -0
  408. package/dist/types-ts4.5/services/mutability-client/index.d.ts +8 -0
  409. package/dist/types-ts4.5/services/mutability-client/types.d.ts +5 -0
  410. package/dist/types-ts4.5/services/object-resolver-client/index.d.ts +8 -0
  411. package/dist/types-ts4.5/services/object-resolver-client/types.d.ts +38 -0
  412. package/dist/types-ts4.5/services/object-resolver-client/utils.d.ts +18 -0
  413. package/dist/types-ts4.5/services/perms-client/index.d.ts +16 -0
  414. package/dist/types-ts4.5/services/public-api-client/generated/data-contracts.d.ts +112 -0
  415. package/dist/types-ts4.5/services/public-api-client/index.d.ts +41 -0
  416. package/dist/types-ts4.5/services/rest-client/index.d.ts +40 -0
  417. package/dist/types-ts4.5/services/rest-client/utils/cookie.d.ts +5 -0
  418. package/dist/types-ts4.5/services/rest-client/utils/parse-error-message.d.ts +1 -0
  419. package/dist/types-ts4.5/services/rest-client/utils/parse-response.d.ts +1 -0
  420. package/dist/types-ts4.5/services/rest-client/utils/strip-uuid.d.ts +1 -0
  421. package/dist/types-ts4.5/services/sentry/constants.d.ts +5 -0
  422. package/dist/types-ts4.5/services/sentry/index.d.ts +3 -0
  423. package/dist/types-ts4.5/services/sentry/main.d.ts +36 -0
  424. package/dist/types-ts4.5/services/sentry/types.d.ts +36 -0
  425. package/dist/types-ts4.5/services/sentry/utils/get-sentry-config.d.ts +2 -0
  426. package/dist/types-ts4.5/services/sentry/utils/initialise-sentry.d.ts +2 -0
  427. package/dist/types-ts4.5/services/sentry/utils/sentry-client.d.ts +9 -0
  428. package/dist/types-ts4.5/services/sentry/utils/use-teams-sentry-client-setup.d.ts +2 -0
  429. package/dist/types-ts4.5/services/teams-in-slack-client/index.d.ts +27 -0
  430. package/dist/types-ts4.5/services/types.d.ts +10 -0
  431. package/dist/types-ts4.5/services/use-query-light/index.d.ts +3 -0
  432. package/dist/types-ts4.5/services/use-query-light/main.d.ts +7 -0
  433. package/dist/types-ts4.5/services/use-query-light/types.d.ts +57 -0
  434. package/dist/types-ts4.5/services/user-info-provider/index.d.ts +1 -0
  435. package/dist/types-ts4.5/services/user-info-provider/main.d.ts +14 -0
  436. package/dist/types-ts4.5/services/user-preferences-client/index.d.ts +9 -0
  437. package/dist/types-ts4.5/types/config.d.ts +7 -0
  438. package/dist/types-ts4.5/types/index.d.ts +10 -0
  439. package/dist/types-ts4.5/types/links.d.ts +31 -0
  440. package/dist/types-ts4.5/types/media.d.ts +6 -0
  441. package/dist/types-ts4.5/types/membership.d.ts +35 -0
  442. package/dist/types-ts4.5/types/slack.d.ts +7 -0
  443. package/dist/types-ts4.5/types/team.d.ts +117 -0
  444. package/dist/types-ts4.5/types/user.d.ts +51 -0
  445. package/mocks/package.json +15 -0
  446. package/package.json +111 -0
  447. package/permissions/package.json +15 -0
  448. package/public/package.json +15 -0
  449. package/report.api.md +1210 -0
  450. package/scripts/generate-docs.ts +31 -0
  451. package/scripts/utils.ts +269 -0
  452. package/sentry/package.json +15 -0
  453. package/types/package.json +15 -0
  454. package/ufo/package.json +15 -0
  455. package/use-query-light/package.json +15 -0
  456. package/user-info-provider/package.json +15 -0
  457. package/utils/package.json +15 -0
@@ -0,0 +1,38 @@
1
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
+ import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
+ var _excluded = ["env", "version", "noGlobals"];
4
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
5
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
6
+ import { SENTRY_DSN } from '../constants';
7
+ var DEFAULT_SENTRY_CONFIG = {
8
+ whitelistUrls: [/atl-paas.net/,
9
+ // test local host
10
+ /localhost/],
11
+ ignoreErrors: [/^SentryIgnore:/,
12
+ // Network related errors
13
+ 'The operation was aborted', 'Software caused connection abort', 'GraphQL error: Failed to fetch', 'TypeError: Failed to fetch', 'TypeError: NetworkError when attempting to fetch resource.', 'AbortError: The user aborted a request.', /^network error/i, /^network failure/i, /^NetworkError/i, /^Unexpected token ..*/],
14
+ ignoreUrls: [
15
+ // Chrome extensions
16
+ /extensions\//i, /^chrome:\/\//i],
17
+ dsn: SENTRY_DSN,
18
+ attachStacktrace: true
19
+ };
20
+
21
+ // return value is an Sentry configuration object:
22
+ // https://docs.sentry.io/learn/configuration/?platform=javascript
23
+ export function getSentryConfig(options) {
24
+ var _window$__buildInfo;
25
+ var env = options.env,
26
+ version = options.version,
27
+ _ = options.noGlobals,
28
+ otherOptions = _objectWithoutProperties(options, _excluded);
29
+ return _objectSpread(_objectSpread(_objectSpread({}, otherOptions), DEFAULT_SENTRY_CONFIG), {}, {
30
+ // Standalone __VERSION__ is set from `bin/set-release-version.sh`
31
+ // when building to deploy to production
32
+ release: "".concat("@atlaskit/teams-client", "@").concat("4.0.0") ||
33
+ // @ts-ignore Jira - window.BUILD_KEY
34
+ window.BUILD_KEY || ( // @ts-ignore Confluence - window.__buildInfo
35
+ (_window$__buildInfo = window.__buildInfo) === null || _window$__buildInfo === void 0 ? void 0 : _window$__buildInfo.FRONTEND_VERSION) || '---',
36
+ environment: env || 'prod'
37
+ });
38
+ }
@@ -0,0 +1,48 @@
1
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
+ import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
3
+ import _regeneratorRuntime from "@babel/runtime/regenerator";
4
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
5
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
6
+ import { getSentryConfig } from './get-sentry-config';
7
+ import { sentryClient, setSentryClient } from './sentry-client';
8
+ var DISABLED_INTEGRATIONS = ['onerror', 'onunhandledrejection',
9
+ // In Jira this integration is being initialised twice, resulting in no events being sent to Sentry
10
+ 'Dedupe'];
11
+ export function initialiseSentry(_x, _x2) {
12
+ return _initialiseSentry.apply(this, arguments);
13
+ }
14
+ function _initialiseSentry() {
15
+ _initialiseSentry = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(client, options) {
16
+ var sentryConfig;
17
+ return _regeneratorRuntime.wrap(function _callee$(_context) {
18
+ while (1) switch (_context.prev = _context.next) {
19
+ case 0:
20
+ if (!sentryClient) {
21
+ _context.next = 2;
22
+ break;
23
+ }
24
+ return _context.abrupt("return");
25
+ case 2:
26
+ if (client) {
27
+ _context.next = 4;
28
+ break;
29
+ }
30
+ return _context.abrupt("return");
31
+ case 4:
32
+ setSentryClient(client);
33
+ sentryConfig = getSentryConfig(options);
34
+ sentryClient.init(_objectSpread(_objectSpread({}, sentryConfig), {}, {
35
+ integrations: function integrations(_integrations) {
36
+ return _integrations.filter(function (integration) {
37
+ return DISABLED_INTEGRATIONS.indexOf(integration.name) === -1;
38
+ });
39
+ }
40
+ }));
41
+ case 7:
42
+ case "end":
43
+ return _context.stop();
44
+ }
45
+ }, _callee);
46
+ }));
47
+ return _initialiseSentry.apply(this, arguments);
48
+ }
@@ -0,0 +1,108 @@
1
+ import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
2
+ import _regeneratorRuntime from "@babel/runtime/regenerator";
3
+ import { SENTRY_DSN } from '../constants';
4
+ import { initialiseSentry } from './initialise-sentry';
5
+ export var sentryClient;
6
+ export var setSentryClient = function setSentryClient(client) {
7
+ sentryClient = client;
8
+ };
9
+ export var getSentryClient = /*#__PURE__*/function () {
10
+ var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
11
+ return _regeneratorRuntime.wrap(function _callee$(_context) {
12
+ while (1) switch (_context.prev = _context.next) {
13
+ case 0:
14
+ if (sentryClient) {
15
+ _context.next = 3;
16
+ break;
17
+ }
18
+ _context.next = 3;
19
+ return setupSentryClient({});
20
+ case 3:
21
+ return _context.abrupt("return", sentryClient);
22
+ case 4:
23
+ case "end":
24
+ return _context.stop();
25
+ }
26
+ }, _callee);
27
+ }));
28
+ return function getSentryClient() {
29
+ return _ref.apply(this, arguments);
30
+ };
31
+ }();
32
+ export function setupSentryClient(_x) {
33
+ return _setupSentryClient.apply(this, arguments);
34
+ }
35
+ function _setupSentryClient() {
36
+ _setupSentryClient = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2(_ref2) {
37
+ var _window$__buildInfo;
38
+ var appName, env, sentryClient;
39
+ return _regeneratorRuntime.wrap(function _callee2$(_context2) {
40
+ while (1) switch (_context2.prev = _context2.next) {
41
+ case 0:
42
+ appName = _ref2.appName, env = _ref2.env;
43
+ _context2.next = 3;
44
+ return requireSentryLib();
45
+ case 3:
46
+ sentryClient = _context2.sent;
47
+ if (sentryClient) {
48
+ _context2.next = 6;
49
+ break;
50
+ }
51
+ return _context2.abrupt("return");
52
+ case 6:
53
+ // initialiseSentry sets the sentry client
54
+ initialiseSentry(sentryClient, {
55
+ initialScope: {
56
+ tags: {
57
+ renderMode: appName || 'unknown',
58
+ productBuild:
59
+ // @ts-ignore Jira - window.BUILD_KEY, confluence - window.__buildInfo
60
+ window.BUILD_KEY || ((_window$__buildInfo = window.__buildInfo) === null || _window$__buildInfo === void 0 ? void 0 : _window$__buildInfo.FRONTEND_VERSION) || 'unknown',
61
+ product: getProduct()
62
+ }
63
+ },
64
+ env: env,
65
+ noGlobals: true,
66
+ dsn: SENTRY_DSN,
67
+ attachStacktrace: true
68
+ });
69
+ case 7:
70
+ case "end":
71
+ return _context2.stop();
72
+ }
73
+ }, _callee2);
74
+ }));
75
+ return _setupSentryClient.apply(this, arguments);
76
+ }
77
+ function requireSentryLib() {
78
+ return _requireSentryLib.apply(this, arguments);
79
+ }
80
+ function _requireSentryLib() {
81
+ _requireSentryLib = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee3() {
82
+ return _regeneratorRuntime.wrap(function _callee3$(_context3) {
83
+ while (1) switch (_context3.prev = _context3.next) {
84
+ case 0:
85
+ _context3.prev = 0;
86
+ return _context3.abrupt("return", import( /* webpackChunkName: "teams-client_sentry" */'@sentry/browser'));
87
+ case 4:
88
+ _context3.prev = 4;
89
+ _context3.t0 = _context3["catch"](0);
90
+ // eslint-disable-next-line no-console
91
+ console.warn('Ignoring rejected promise when loading sentry resource.', _context3.t0);
92
+ case 7:
93
+ case "end":
94
+ return _context3.stop();
95
+ }
96
+ }, _callee3, null, [[0, 4]]);
97
+ }));
98
+ return _requireSentryLib.apply(this, arguments);
99
+ }
100
+ function getProduct() {
101
+ var path = window.location.pathname;
102
+ if (path.includes('/jira/people')) {
103
+ return 'jira';
104
+ } else if (path.includes('/wiki/people')) {
105
+ return 'confluence';
106
+ }
107
+ return 'unknown';
108
+ }
@@ -0,0 +1,33 @@
1
+ import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
2
+ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
3
+ import _regeneratorRuntime from "@babel/runtime/regenerator";
4
+ import { useCallback, useEffect, useState } from 'react';
5
+ import { sentryClient, setupSentryClient } from './sentry-client';
6
+ export var useTeamsSentryClientSetup = function useTeamsSentryClientSetup(isSentryEnabled, config) {
7
+ var _useState = useState(false),
8
+ _useState2 = _slicedToArray(_useState, 2),
9
+ sentryInitialised = _useState2[0],
10
+ setSentryInitialised = _useState2[1];
11
+ var setupSentry = useCallback( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
12
+ return _regeneratorRuntime.wrap(function _callee$(_context) {
13
+ while (1) switch (_context.prev = _context.next) {
14
+ case 0:
15
+ if (!(!sentryInitialised && isSentryEnabled && !sentryClient)) {
16
+ _context.next = 3;
17
+ break;
18
+ }
19
+ _context.next = 3;
20
+ return setupSentryClient(config);
21
+ case 3:
22
+ case "end":
23
+ return _context.stop();
24
+ }
25
+ }, _callee);
26
+ })), [config, isSentryEnabled, sentryInitialised]);
27
+ useEffect(function () {
28
+ setupSentry().then(function () {
29
+ return setSentryInitialised(true);
30
+ });
31
+ }, [setupSentry]);
32
+ return sentryClient;
33
+ };
@@ -0,0 +1,96 @@
1
+ import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
2
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
3
+ import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
4
+ import _createClass from "@babel/runtime/helpers/createClass";
5
+ import _possibleConstructorReturn from "@babel/runtime/helpers/possibleConstructorReturn";
6
+ import _getPrototypeOf from "@babel/runtime/helpers/getPrototypeOf";
7
+ import _inherits from "@babel/runtime/helpers/inherits";
8
+ import _regeneratorRuntime from "@babel/runtime/regenerator";
9
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
10
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
11
+ function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); }
12
+ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
13
+ import { DEFAULT_CONFIG } from '../constants';
14
+ import { RestClient } from '../rest-client';
15
+ var defaultConfig = {
16
+ serviceUrl: "".concat(DEFAULT_CONFIG.stargateRoot, "/teamsslack/api/team")
17
+ };
18
+ export var TeamsInSlackClient = /*#__PURE__*/function (_RestClient) {
19
+ function TeamsInSlackClient() {
20
+ var config = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
21
+ _classCallCheck(this, TeamsInSlackClient);
22
+ return _callSuper(this, TeamsInSlackClient, [_objectSpread(_objectSpread({}, defaultConfig), config)]);
23
+ }
24
+ _inherits(TeamsInSlackClient, _RestClient);
25
+ return _createClass(TeamsInSlackClient, [{
26
+ key: "getTeamInSlack",
27
+ value: function () {
28
+ var _getTeamInSlack = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(teamId, teamName) {
29
+ return _regeneratorRuntime.wrap(function _callee$(_context) {
30
+ while (1) switch (_context.prev = _context.next) {
31
+ case 0:
32
+ return _context.abrupt("return", this.getResource("/".concat(teamId, "?teamName=").concat(encodeURIComponent(teamName))).then(function (response) {
33
+ return _objectSpread({
34
+ id: teamId
35
+ }, response);
36
+ }));
37
+ case 1:
38
+ case "end":
39
+ return _context.stop();
40
+ }
41
+ }, _callee, this);
42
+ }));
43
+ function getTeamInSlack(_x, _x2) {
44
+ return _getTeamInSlack.apply(this, arguments);
45
+ }
46
+ return getTeamInSlack;
47
+ }()
48
+ }, {
49
+ key: "disconnectTeamInSlack",
50
+ value: function () {
51
+ var _disconnectTeamInSlack = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2(teamId) {
52
+ return _regeneratorRuntime.wrap(function _callee2$(_context2) {
53
+ while (1) switch (_context2.prev = _context2.next) {
54
+ case 0:
55
+ return _context2.abrupt("return", this.deleteResource("/".concat(teamId)).then(function (response) {
56
+ return _objectSpread({
57
+ id: teamId
58
+ }, response);
59
+ }));
60
+ case 1:
61
+ case "end":
62
+ return _context2.stop();
63
+ }
64
+ }, _callee2, this);
65
+ }));
66
+ function disconnectTeamInSlack(_x3) {
67
+ return _disconnectTeamInSlack.apply(this, arguments);
68
+ }
69
+ return disconnectTeamInSlack;
70
+ }()
71
+ }, {
72
+ key: "updateTeamInSlack",
73
+ value: function () {
74
+ var _updateTeamInSlack = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee3(teamId, channelId, usergroupHandle) {
75
+ return _regeneratorRuntime.wrap(function _callee3$(_context3) {
76
+ while (1) switch (_context3.prev = _context3.next) {
77
+ case 0:
78
+ return _context3.abrupt("return", this.postResource("/".concat(teamId, "?channel=").concat(channelId, "&groupName=").concat(usergroupHandle)).then(function (response) {
79
+ return _objectSpread({
80
+ id: teamId
81
+ }, response);
82
+ }));
83
+ case 1:
84
+ case "end":
85
+ return _context3.stop();
86
+ }
87
+ }, _callee3, this);
88
+ }));
89
+ function updateTeamInSlack(_x4, _x5, _x6) {
90
+ return _updateTeamInSlack.apply(this, arguments);
91
+ }
92
+ return updateTeamInSlack;
93
+ }()
94
+ }]);
95
+ }(RestClient);
96
+ export default new TeamsInSlackClient();
File without changes
@@ -0,0 +1,2 @@
1
+ export { useQueryLight, useLazyQueryLight } from './main';
2
+ export { UseQueryLightError } from './types';
@@ -0,0 +1,225 @@
1
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
+ import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
3
+ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
4
+ import _regeneratorRuntime from "@babel/runtime/regenerator";
5
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
6
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
7
+ import { useCallback, useEffect, useRef, useState } from 'react';
8
+ import { print } from 'graphql';
9
+ import isEqual from 'lodash/isEqual';
10
+ import { fetchWithExponentialBackoff } from '../../common/utils/http';
11
+ import { logException } from '../sentry';
12
+ import { UseQueryLightError } from './types';
13
+ var transformError = function transformError(_ref) {
14
+ var error = _ref.error,
15
+ graphQLErrors = _ref.graphQLErrors;
16
+ var reducedGraphqlErrorMessage = graphQLErrors && graphQLErrors.reduce(function (acc, gqlError) {
17
+ return acc + (acc ? '\n' : '') + (gqlError.message ? gqlError.message : '');
18
+ }, '');
19
+ var reducedGraphqlErrorName = graphQLErrors && graphQLErrors.reduce(function (acc, gqlError) {
20
+ return acc + (acc ? '\n' : '') + (gqlError.name ? gqlError.name : '');
21
+ }, '');
22
+ return new UseQueryLightError(
23
+ // Network error would lead to no graphqlErrors as the query would not be fired. Hence at the front.
24
+ (error === null || error === void 0 ? void 0 : error.message) || reducedGraphqlErrorMessage || 'Unknown error', (error === null || error === void 0 ? void 0 : error.name) || reducedGraphqlErrorName,
25
+ // graphQLErrors in Apollo error is empty array when there is no error.
26
+ // So we follow the same to make sure error handlers are working as expected.
27
+ graphQLErrors || [], error);
28
+ };
29
+ export var useQueryLight = function useQueryLight(query, options) {
30
+ var _useState = useState(true),
31
+ _useState2 = _slicedToArray(_useState, 2),
32
+ loading = _useState2[0],
33
+ setLoading = _useState2[1];
34
+ var _useState3 = useState(undefined),
35
+ _useState4 = _slicedToArray(_useState3, 2),
36
+ error = _useState4[0],
37
+ setError = _useState4[1];
38
+ var _useState5 = useState(undefined),
39
+ _useState6 = _slicedToArray(_useState5, 2),
40
+ data = _useState6[0],
41
+ setData = _useState6[1];
42
+ var variablesRef = useRef(options.variables);
43
+
44
+ // Need this to deep compare variables to avoid infinite loops in useEffect
45
+ if (!isEqual(variablesRef.current, options.variables)) {
46
+ variablesRef.current = options.variables;
47
+ }
48
+
49
+ // Initial fetch, and refetch
50
+ var fetchData = useCallback( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
51
+ var response, responseData;
52
+ return _regeneratorRuntime.wrap(function _callee$(_context) {
53
+ while (1) switch (_context.prev = _context.next) {
54
+ case 0:
55
+ _context.prev = 0;
56
+ setLoading(true);
57
+ _context.next = 4;
58
+ return fetchWithExponentialBackoff("".concat(options.serviceUrl, "?q=").concat(options.operationName), {
59
+ method: 'POST',
60
+ headers: new Headers(_objectSpread({
61
+ 'Content-Type': 'application/json'
62
+ }, options.customHeaders)),
63
+ credentials: 'include',
64
+ body: JSON.stringify({
65
+ query: print(query),
66
+ variables: _objectSpread({}, variablesRef.current)
67
+ })
68
+ });
69
+ case 4:
70
+ response = _context.sent;
71
+ _context.next = 7;
72
+ return response.json();
73
+ case 7:
74
+ responseData = _context.sent;
75
+ if (!response.ok) {
76
+ _context.next = 14;
77
+ break;
78
+ }
79
+ if (responseData.errors) {
80
+ setError(transformError({
81
+ graphQLErrors: responseData.errors
82
+ }));
83
+ }
84
+ setData(responseData.data);
85
+ setLoading(false);
86
+ _context.next = 15;
87
+ break;
88
+ case 14:
89
+ throw new Error("Generic fetch error within useQueryLight, status ".concat(response.status));
90
+ case 15:
91
+ _context.next = 22;
92
+ break;
93
+ case 17:
94
+ _context.prev = 17;
95
+ _context.t0 = _context["catch"](0);
96
+ if (_context.t0 instanceof Error) {
97
+ setError(transformError({
98
+ error: _context.t0
99
+ }));
100
+ } else {
101
+ setError(transformError({
102
+ error: new Error('Unknown error')
103
+ }));
104
+ logException(_context.t0, "useQueryLight - ".concat(options.operationName));
105
+ }
106
+ setData(undefined);
107
+ setLoading(false);
108
+ case 22:
109
+ case "end":
110
+ return _context.stop();
111
+ }
112
+ }, _callee, null, [[0, 17]]);
113
+ })), [query, options.serviceUrl, options.operationName, options.customHeaders]);
114
+
115
+ // Fetch more
116
+ var fetchMore = useCallback( /*#__PURE__*/function () {
117
+ var _ref4 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2(_ref3) {
118
+ var variables, handleDataMerge, response, responseData;
119
+ return _regeneratorRuntime.wrap(function _callee2$(_context2) {
120
+ while (1) switch (_context2.prev = _context2.next) {
121
+ case 0:
122
+ variables = _ref3.variables, handleDataMerge = _ref3.handleDataMerge;
123
+ _context2.prev = 1;
124
+ // reset errors to catch new ones
125
+ setError(undefined);
126
+ _context2.next = 5;
127
+ return fetchWithExponentialBackoff("".concat(options.serviceUrl, "?q=").concat(options.operationName), {
128
+ method: 'POST',
129
+ headers: new Headers(_objectSpread({
130
+ 'Content-Type': 'application/json'
131
+ }, options.customHeaders)),
132
+ credentials: 'include',
133
+ body: JSON.stringify({
134
+ query: print(query),
135
+ variables: _objectSpread(_objectSpread({}, variablesRef.current), variables)
136
+ })
137
+ });
138
+ case 5:
139
+ response = _context2.sent;
140
+ _context2.next = 8;
141
+ return response.json();
142
+ case 8:
143
+ responseData = _context2.sent;
144
+ if (!response.ok) {
145
+ _context2.next = 14;
146
+ break;
147
+ }
148
+ if (responseData.errors) {
149
+ setError(transformError({
150
+ graphQLErrors: responseData.errors
151
+ }));
152
+ }
153
+ setData(function (prevData) {
154
+ return handleDataMerge(prevData, responseData.data);
155
+ });
156
+ _context2.next = 15;
157
+ break;
158
+ case 14:
159
+ throw new Error("Generic fetch error within useQueryLight, status ".concat(response.status));
160
+ case 15:
161
+ _context2.next = 20;
162
+ break;
163
+ case 17:
164
+ _context2.prev = 17;
165
+ _context2.t0 = _context2["catch"](1);
166
+ if (_context2.t0 instanceof Error) {
167
+ setError(transformError({
168
+ error: _context2.t0
169
+ }));
170
+ } else {
171
+ setError(transformError({
172
+ error: new Error('Unknown error')
173
+ }));
174
+ logException(_context2.t0, "useQueryLight fetchMore - ".concat(options.operationName));
175
+ }
176
+ case 20:
177
+ case "end":
178
+ return _context2.stop();
179
+ }
180
+ }, _callee2, null, [[1, 17]]);
181
+ }));
182
+ return function (_x) {
183
+ return _ref4.apply(this, arguments);
184
+ };
185
+ }(), [query, options.serviceUrl, options.operationName, options.customHeaders]);
186
+ useEffect(function () {
187
+ if (!options.skip) {
188
+ fetchData();
189
+ } else {
190
+ setLoading(false);
191
+ }
192
+ }, [options.skip, variablesRef.current]); // eslint-disable-line react-hooks/exhaustive-deps
193
+
194
+ return {
195
+ loading: loading,
196
+ error: error,
197
+ data: data,
198
+ refetch: fetchData,
199
+ fetchMore: fetchMore
200
+ };
201
+ };
202
+ export var useLazyQueryLight = function useLazyQueryLight(query, options) {
203
+ var _useState7 = useState(false),
204
+ _useState8 = _slicedToArray(_useState7, 2),
205
+ fetchTriggered = _useState8[0],
206
+ setFetchTriggered = _useState8[1];
207
+ var _useQueryLight = useQueryLight(query, _objectSpread(_objectSpread({}, options), {}, {
208
+ skip: !fetchTriggered
209
+ })),
210
+ loading = _useQueryLight.loading,
211
+ error = _useQueryLight.error,
212
+ data = _useQueryLight.data,
213
+ refetch = _useQueryLight.refetch,
214
+ fetchMore = _useQueryLight.fetchMore;
215
+ var triggerFetch = useCallback(function () {
216
+ setFetchTriggered(true);
217
+ }, []);
218
+ return [triggerFetch, {
219
+ loading: loading,
220
+ error: error,
221
+ data: data,
222
+ refetch: refetch,
223
+ fetchMore: fetchMore
224
+ }];
225
+ };
@@ -0,0 +1,45 @@
1
+ import _createClass from "@babel/runtime/helpers/createClass";
2
+ import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
3
+ import _possibleConstructorReturn from "@babel/runtime/helpers/possibleConstructorReturn";
4
+ import _getPrototypeOf from "@babel/runtime/helpers/getPrototypeOf";
5
+ import _inherits from "@babel/runtime/helpers/inherits";
6
+ import _wrapNativeSuper from "@babel/runtime/helpers/wrapNativeSuper";
7
+ function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); }
8
+ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
9
+ export var ErrorCategory = /*#__PURE__*/function (ErrorCategory) {
10
+ ErrorCategory["NotFound"] = "NotFound";
11
+ ErrorCategory["NotPermitted"] = "NotPermitted";
12
+ ErrorCategory["MalformedInput"] = "MalformedInput";
13
+ ErrorCategory["Internal"] = "Internal";
14
+ return ErrorCategory;
15
+ }({});
16
+ export var ActualGraphQLError = /*#__PURE__*/function (_Error) {
17
+ // AGG standard
18
+
19
+ function ActualGraphQLError(message) {
20
+ var _this;
21
+ _classCallCheck(this, ActualGraphQLError);
22
+ _this = _callSuper(this, ActualGraphQLError, [message]);
23
+ _this.message = message;
24
+ return _this;
25
+ }
26
+ _inherits(ActualGraphQLError, _Error);
27
+ return _createClass(ActualGraphQLError);
28
+ }( /*#__PURE__*/_wrapNativeSuper(Error));
29
+ export var UseQueryLightError = /*#__PURE__*/function (_Error2) {
30
+ function UseQueryLightError(message, name, graphQLErrors, networkError, extensions, extraInfo) {
31
+ var _this2;
32
+ _classCallCheck(this, UseQueryLightError);
33
+ _this2 = _callSuper(this, UseQueryLightError, [message]);
34
+ _this2.graphQLErrors = graphQLErrors;
35
+ _this2.networkError = networkError;
36
+ _this2.extensions = extensions;
37
+ _this2.extraInfo = extraInfo;
38
+ if (name) {
39
+ _this2.name = name;
40
+ }
41
+ return _this2;
42
+ }
43
+ _inherits(UseQueryLightError, _Error2);
44
+ return _createClass(UseQueryLightError);
45
+ }( /*#__PURE__*/_wrapNativeSuper(Error));
@@ -0,0 +1 @@
1
+ export { userInfoProvider, UserInfoProvider } from './main';
@@ -0,0 +1,66 @@
1
+ import _createClass from "@babel/runtime/helpers/createClass";
2
+ import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
3
+ import _possibleConstructorReturn from "@babel/runtime/helpers/possibleConstructorReturn";
4
+ import _getPrototypeOf from "@babel/runtime/helpers/getPrototypeOf";
5
+ import _inherits from "@babel/runtime/helpers/inherits";
6
+ import _wrapNativeSuper from "@babel/runtime/helpers/wrapNativeSuper";
7
+ function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); }
8
+ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
9
+ import { DEFAULT_CONFIG } from '../constants';
10
+
11
+ // Needs to be declared here to avoid blowing up this earlyInit bundle
12
+ var FetchError = /*#__PURE__*/function (_Error) {
13
+ function FetchError(response) {
14
+ var _this;
15
+ _classCallCheck(this, FetchError);
16
+ _this = _callSuper(this, FetchError, ["Request failed with status ".concat(response.status)]);
17
+ _this.response = response;
18
+ _this.name = _this.constructor.name;
19
+ return _this;
20
+ }
21
+ _inherits(FetchError, _Error);
22
+ return _createClass(FetchError);
23
+ }( /*#__PURE__*/_wrapNativeSuper(Error));
24
+ // export for testing
25
+ export var UserInfoProvider = /*#__PURE__*/function () {
26
+ function UserInfoProvider() {
27
+ _classCallCheck(this, UserInfoProvider);
28
+ }
29
+ return _createClass(UserInfoProvider, [{
30
+ key: "get",
31
+ value: function get() {
32
+ var fetchOp = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : fetch;
33
+ if (this.promise) {
34
+ return this.promise;
35
+ }
36
+ var getJson = function getJson(url) {
37
+ return fetchOp(url, {
38
+ method: 'GET',
39
+ mode: 'cors',
40
+ credentials: 'include',
41
+ headers: {
42
+ 'Content-Type': 'application/json'
43
+ }
44
+ }).then(function (response) {
45
+ if (!response.ok) {
46
+ throw new FetchError(response);
47
+ }
48
+ return response.json();
49
+ });
50
+ };
51
+ this.promise = getJson("".concat(DEFAULT_CONFIG.stargateRoot, "/me")).then(function (me) {
52
+ var _me$extended_profile;
53
+ return {
54
+ userId: me.account_id,
55
+ locale: me.locale,
56
+ fullName: me.name,
57
+ avatarUrl: me.picture,
58
+ email: me.email,
59
+ title: (_me$extended_profile = me.extended_profile) === null || _me$extended_profile === void 0 ? void 0 : _me$extended_profile.job_title
60
+ };
61
+ });
62
+ return this.promise;
63
+ }
64
+ }]);
65
+ }();
66
+ export var userInfoProvider = new UserInfoProvider();