@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,91 @@
1
+ import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
2
+ import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
3
+ import _createClass from "@babel/runtime/helpers/createClass";
4
+ import _possibleConstructorReturn from "@babel/runtime/helpers/possibleConstructorReturn";
5
+ import _getPrototypeOf from "@babel/runtime/helpers/getPrototypeOf";
6
+ import _inherits from "@babel/runtime/helpers/inherits";
7
+ import _regeneratorRuntime from "@babel/runtime/regenerator";
8
+ function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); }
9
+ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
10
+ import { DEFAULT_CONFIG } from '../constants';
11
+ import { RestClient } from '../rest-client';
12
+ var buildGetReadTokenURL = function buildGetReadTokenURL(accountId) {
13
+ return "/api/user-image/".concat(accountId, "/header-image/read");
14
+ };
15
+ export var UserPreferencesClient = /*#__PURE__*/function (_RestClient) {
16
+ function UserPreferencesClient() {
17
+ _classCallCheck(this, UserPreferencesClient);
18
+ return _callSuper(this, UserPreferencesClient, arguments);
19
+ }
20
+ _inherits(UserPreferencesClient, _RestClient);
21
+ return _createClass(UserPreferencesClient, [{
22
+ key: "getReadMediaToken",
23
+ value: function () {
24
+ var _getReadMediaToken = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(accountId) {
25
+ return _regeneratorRuntime.wrap(function _callee$(_context) {
26
+ while (1) switch (_context.prev = _context.next) {
27
+ case 0:
28
+ return _context.abrupt("return", this.getResource(buildGetReadTokenURL(accountId)).then(function (response) {
29
+ return response;
30
+ }));
31
+ case 1:
32
+ case "end":
33
+ return _context.stop();
34
+ }
35
+ }, _callee, this);
36
+ }));
37
+ function getReadMediaToken(_x) {
38
+ return _getReadMediaToken.apply(this, arguments);
39
+ }
40
+ return getReadMediaToken;
41
+ }()
42
+ }, {
43
+ key: "getWriteMediaToken",
44
+ value: function () {
45
+ var _getWriteMediaToken = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2() {
46
+ return _regeneratorRuntime.wrap(function _callee2$(_context2) {
47
+ while (1) switch (_context2.prev = _context2.next) {
48
+ case 0:
49
+ return _context2.abrupt("return", this.getResource('/api/user-image/header-image/write').then(function (response) {
50
+ return response;
51
+ }));
52
+ case 1:
53
+ case "end":
54
+ return _context2.stop();
55
+ }
56
+ }, _callee2, this);
57
+ }));
58
+ function getWriteMediaToken() {
59
+ return _getWriteMediaToken.apply(this, arguments);
60
+ }
61
+ return getWriteMediaToken;
62
+ }()
63
+ }, {
64
+ key: "updateUserHeaderImage",
65
+ value: function () {
66
+ var _updateUserHeaderImage = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee3(headerImageId) {
67
+ return _regeneratorRuntime.wrap(function _callee3$(_context3) {
68
+ while (1) switch (_context3.prev = _context3.next) {
69
+ case 0:
70
+ _context3.next = 2;
71
+ return this.putResource('/api/user-image/self/header-image', {
72
+ headerImageId: headerImageId
73
+ });
74
+ case 2:
75
+ return _context3.abrupt("return", _context3.sent);
76
+ case 3:
77
+ case "end":
78
+ return _context3.stop();
79
+ }
80
+ }, _callee3, this);
81
+ }));
82
+ function updateUserHeaderImage(_x2) {
83
+ return _updateUserHeaderImage.apply(this, arguments);
84
+ }
85
+ return updateUserHeaderImage;
86
+ }()
87
+ }]);
88
+ }(RestClient);
89
+ export default new UserPreferencesClient({
90
+ serviceUrl: DEFAULT_CONFIG.stargateRoot
91
+ });
File without changes
@@ -0,0 +1,2 @@
1
+ export { isEditableUserField } from './user';
2
+ export { isResultWithPageInfo } from '../services/agg-client/types';
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Used to synchronise these field names to forms used to create/edit links e.g. TeamLinkForm
3
+ */
4
+ export var LINK_FIELDS = {
5
+ CONTENT_TITLE: 'contentTitle',
6
+ DESCRIPTION: 'description',
7
+ LINK_URI: 'linkUri'
8
+ };
9
+
10
+ /**
11
+ * Type for uncreated team links. These don't have link IDs
12
+ */
13
+
14
+ /**
15
+ * Type for order of team links.
16
+ */
File without changes
@@ -0,0 +1,17 @@
1
+ import _typeof from "@babel/runtime/helpers/typeof";
2
+ /**
3
+ * @private
4
+ * @deprecated INVITED is deprecated
5
+ */
6
+
7
+ /**
8
+ * @param membershipId - The team IDZ
9
+ */
10
+
11
+ // Currently an agent is just a user, they may diverge if we need more agent specific fields
12
+
13
+ // The minimal user required to invited someone
14
+
15
+ export function isTeamMembershipWithUser(membership) {
16
+ return _typeof(membership.user) === 'object';
17
+ }
File without changes
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,4 @@
1
+ var EditableUserFieldList = ['title', 'department', 'companyName', 'location', 'phoneNumber', 'fullName', 'nickname', 'locale', 'email'];
2
+ export var isEditableUserField = function isEditableUserField(key) {
3
+ return EditableUserFieldList.includes(key);
4
+ };
@@ -0,0 +1,4 @@
1
+ export declare const USER_ARI_PREFIX: "ari:cloud:identity::user/";
2
+ export type UserARI = `${typeof USER_ARI_PREFIX}${string}`;
3
+ export declare const TEAM_ARI_PREFIX: "ari:cloud:identity::team/";
4
+ export type TeamARI = `${typeof TEAM_ARI_PREFIX}${string}`;
@@ -0,0 +1,7 @@
1
+ import { type TeamARI, type UserARI } from '../types';
2
+ export declare const isUserARI: (ari: string) => ari is `ari:cloud:identity::user/${string}`;
3
+ export declare const toUserId: (ari: UserARI | string) => string;
4
+ export declare const toUserARI: (userId: string) => UserARI;
5
+ export declare const isTeamARI: (ari: string) => ari is `ari:cloud:identity::team/${string}`;
6
+ export declare const toTeamId: (ari: TeamARI | string) => string;
7
+ export declare const toTeamARI: (teamId: string) => TeamARI;
@@ -0,0 +1,91 @@
1
+ export declare enum ErrorCategory {
2
+ NotFound = "NotFound",
3
+ NotPermitted = "NotPermitted",
4
+ MalformedInput = "MalformedInput",
5
+ Internal = "Internal"
6
+ }
7
+ export declare enum StatusCode {
8
+ UNAUTHORIZED = 401,
9
+ FORBIDDEN = 403,
10
+ TIMEOUT = 408,
11
+ GONE = 410,
12
+ PAYLOAD_TOO_LARGE = 413
13
+ }
14
+ export declare function isAuthError(error?: Error | HttpError): boolean;
15
+ export declare function isErrorStatusCode(statusCode: number, error?: Error | HttpError): boolean;
16
+ export declare function doesErrorContainStatus(statusCode: number, message: string): boolean;
17
+ export type DirectoryErrorCode = 'MISSING_ERROR_MESSAGE';
18
+ export declare enum TeamErrorType {
19
+ TEAM_NOT_ACTIVE = "Team must be active"
20
+ }
21
+ export type ErrorObjectType = {
22
+ code?: string;
23
+ message?: TeamErrorType;
24
+ };
25
+ export type SingleError = {
26
+ status?: number;
27
+ error?: string;
28
+ };
29
+ export type RestJsonErrorResponse = {
30
+ errors: (TeamErrorType | ErrorObjectType)[];
31
+ timestamp?: string;
32
+ } & SingleError;
33
+ declare class CommonError extends Error {
34
+ message: string;
35
+ name: string;
36
+ stack: string;
37
+ constructor(message?: string);
38
+ }
39
+ export declare class DefaultError extends CommonError {
40
+ constructor({ message }: {
41
+ message?: string;
42
+ });
43
+ }
44
+ /**
45
+ * These errors will not fail UFO experiences
46
+ */
47
+ export declare class SLOIgnoreError extends CommonError {
48
+ constructor({ message }: {
49
+ message?: string;
50
+ });
51
+ }
52
+ interface HttpErrorArguments {
53
+ message: string;
54
+ status: number;
55
+ traceId?: string;
56
+ path?: string;
57
+ }
58
+ export declare class HttpError extends CommonError {
59
+ status: number;
60
+ traceId?: string;
61
+ path?: string;
62
+ constructor({ message, status, traceId, path }: HttpErrorArguments);
63
+ }
64
+ /**
65
+ * These errors will not fail UFO experiences
66
+ */
67
+ export declare class SLOIgnoreHttpError extends HttpError {
68
+ constructor(props: HttpErrorArguments);
69
+ }
70
+ interface ResultErrorData {
71
+ category: string;
72
+ message: string;
73
+ fields?: object;
74
+ }
75
+ interface FieldError {
76
+ message: string;
77
+ field: string;
78
+ }
79
+ export interface ErrorData {
80
+ category: string;
81
+ message: string;
82
+ fields?: FieldError[];
83
+ }
84
+ export declare class GraphQLError extends CommonError {
85
+ fields?: any;
86
+ category?: string;
87
+ constructor({ message, category, fields }: Partial<ResultErrorData>);
88
+ static from: (rawErrors: ErrorData[]) => GraphQLError;
89
+ }
90
+ export declare function isNetworkError(error: Error): boolean;
91
+ export {};
@@ -0,0 +1 @@
1
+ export declare function filterNull<T>(x?: T): x is Exclude<T, null>;
@@ -0,0 +1,31 @@
1
+ export declare const EXPONENTIAL_BACKOFF_RETRY_POLICY: {
2
+ INITIAL_DELAY: number;
3
+ MAX_RETRIES: number;
4
+ JITTER: boolean;
5
+ };
6
+ /**
7
+ * Checks whether a status code is a 5xx HTTP code.
8
+ * @param {number} status HTTP status code
9
+ */
10
+ export declare function is5xx(status: number): boolean;
11
+ export declare function isFetchResponse(data: unknown): data is {
12
+ response: Response;
13
+ };
14
+ type ToTryFunctionArgs = any[];
15
+ type ToTryFunction<T> = (...args: ToTryFunctionArgs) => Promise<T>;
16
+ type RetryIfCallback<T> = (a: T) => boolean;
17
+ interface WithExponentialBackoffOptions<T> {
18
+ initial: number;
19
+ jitter?: boolean;
20
+ max: number;
21
+ retryIf?: RetryIfCallback<T>;
22
+ }
23
+ /**
24
+ * Transparently wrap a function so that it is retried until it succeeds or reaches a max retry limit.
25
+ * The returned function has the same signature as the wrapped function.
26
+ *
27
+ * Modified from https://jsfiddle.net/pajtai/pLka0ow9/
28
+ */
29
+ export declare function withExponentialBackoff<ResponseType>(toTry: ToTryFunction<ResponseType>, hofOptions?: WithExponentialBackoffOptions<ResponseType>): (...args: ToTryFunctionArgs) => Promise<ResponseType>;
30
+ export declare const fetchWithExponentialBackoff: (...args: ToTryFunctionArgs) => Promise<Response>;
31
+ export {};
@@ -0,0 +1,2 @@
1
+ export { sortMembersByType } from './sort-teams';
2
+ export { isInvited, isMember, isNonMember, isRequestingJoin } from './team';
@@ -0,0 +1,23 @@
1
+ import { type TeamMembershipSettings, type TeamPermission } from '../../../types/team';
2
+ import { type TeamAction } from './types';
3
+ export type PermissionMap = Required<Record<TeamAction, boolean>>;
4
+ export declare const allPermissions: (defaultPermission: boolean, isMember: boolean) => PermissionMap;
5
+ export declare const vanityActions: TeamAction[];
6
+ export declare const openPermissions: (permission: TeamPermission | undefined) => {
7
+ JOIN_TEAM: boolean;
8
+ REQUEST_TO_JOIN: boolean;
9
+ CANCEL_JOIN_REQUEST: boolean;
10
+ APPROVE_JOIN_REQUEST: boolean;
11
+ REJECT_JOIN_REQUEST: boolean;
12
+ };
13
+ export declare const inviteOnlyPermissions: (permission: TeamPermission | undefined) => {
14
+ REQUEST_TO_JOIN: boolean;
15
+ CANCEL_JOIN_REQUEST: boolean;
16
+ };
17
+ export declare const SCIMSyncTeamPermissions: (isMember: boolean, isOrgAdmin: boolean) => {
18
+ EDIT_DESCRIPTION: boolean;
19
+ EDIT_TEAM_SETTINGS: boolean;
20
+ EDIT_TEAM_LINK: boolean;
21
+ EDIT_TEAM_NAME: boolean;
22
+ };
23
+ export declare const getPermissionMap: (settings: TeamMembershipSettings, permission: TeamPermission | undefined, isMember: boolean, isOrgAdmin: boolean) => PermissionMap;
@@ -0,0 +1,31 @@
1
+ import { type TeamMembership } from '../../../types/membership';
2
+ import { type TeamMembershipSettings, type TeamPermission } from '../../../types/team';
3
+ import { type TeamAction, type TeamPermissions } from './types';
4
+ export declare function hasPermission(action: TeamAction, settings: TeamMembershipSettings, permission: TeamPermission | undefined, isPeopleBrowseEnabled: boolean, currentUserMembership: TeamMembership | undefined, teamVisibilityPermissions?: TeamPermissions): boolean;
5
+ type PermissionOptions = {
6
+ /**
7
+ * The teams membership settings, "OPEN" | "MEMBER_INVITE" | "EXTERNAL"
8
+ */
9
+ membershipSettings: TeamMembershipSettings;
10
+ /**
11
+ * The users permission for the team, "FULL_WRITE" | "FULL_READ" | "NONE"
12
+ */
13
+ teamPermission: TeamPermission | undefined;
14
+ /**
15
+ * Is the user a member of the team
16
+ */
17
+ isMemberOfTeam: boolean;
18
+ /**
19
+ * Is the user an org admin
20
+ */
21
+ isOrgAdmin: boolean;
22
+ };
23
+ /**
24
+ * Determines if a user has permission perform a given action on a team
25
+ */
26
+ export declare function userCan(action: TeamAction, options: PermissionOptions): boolean;
27
+ /**
28
+ * @deprecated Use `userCan` instead, it gives better visibility into the option mappings
29
+ */
30
+ export declare function hasPermissionForAction(action: TeamAction, settings: TeamMembershipSettings, permission: TeamPermission | undefined, isMemberOfTeam: boolean, isOrgAdmin?: boolean): boolean;
31
+ export {};
@@ -0,0 +1,3 @@
1
+ export { hasPermission, hasPermissionForAction, userCan } from './has-permission';
2
+ export { AllTeamActions } from './types';
3
+ export type { TeamAction } from './types';
@@ -0,0 +1,7 @@
1
+ export declare const AllTeamActions: readonly ["ADD_MEMBER_TO_TEAM", "JOIN_TEAM", "REQUEST_TO_JOIN", "CANCEL_JOIN_REQUEST", "APPROVE_JOIN_REQUEST", "REJECT_JOIN_REQUEST", "REMOVE_MEMBER_FROM_TEAM", "CANCEL_INVITE", "LEAVE_TEAM", "REMOVE_AGENT_FROM_TEAM", "ADD_AGENT_TO_TEAM", "EDIT_TEAM_NAME", "EDIT_DESCRIPTION", "EDIT_PROFILE_HEADER", "EDIT_TEAM_LINK", "EDIT_TEAM_SETTINGS", "EDIT_TEAM_MEMBERSHIP", "DELETE_TEAM"];
2
+ export type TeamAction = (typeof AllTeamActions)[number];
3
+ export type TeamPermissions = {
4
+ canCreateTeams: boolean;
5
+ canViewTeams: boolean;
6
+ canAdminTeams?: boolean;
7
+ };
@@ -0,0 +1,2 @@
1
+ import { type TeamMembership } from '../../types';
2
+ export declare const sortMembersByType: (members: TeamMembership[], currentAccountId?: string) => TeamMembership[];
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Our REST clients are initialised when their module loads which makes it tricky for them to consume the `statusCodeHandlers` prop passed to App from the host application.
3
+ * This is a temporary measure to enable the clients to consume `statusCodeHandlers`.
4
+ * The long term solution is to replace our REST clients with Apollo client custom resolvers
5
+ * This will unify all remote data handling under the apollo-client module which is able to easily receive `statusCodeHandlers` as it is initialised within the React portion of our app.
6
+ */
7
+ type StatusCodeHandler = (response: Response) => void;
8
+ export interface StatusCodeHandlerMap {
9
+ [statusCode: number]: StatusCodeHandler;
10
+ }
11
+ export declare const statusCodeHandlersProvider: {
12
+ handlers: StatusCodeHandlerMap;
13
+ get(): StatusCodeHandlerMap;
14
+ setHandlers(handlers: StatusCodeHandlerMap): void;
15
+ };
16
+ export declare function handleResponse(response: Response): void;
17
+ export {};
@@ -0,0 +1,5 @@
1
+ import { type TeamMembership } from '../../types';
2
+ export declare function isInvited(member?: TeamMembership): member is TeamMembership & boolean;
3
+ export declare const isNonMember: (member?: TeamMembership) => boolean;
4
+ export declare const isRequestingJoin: (member?: TeamMembership) => boolean;
5
+ export declare const isMember: (member?: TeamMembership) => boolean;
@@ -0,0 +1,5 @@
1
+ import { TeamsUFOExperience } from './index';
2
+ declare const TeamsClientExperienceKeyList: readonly ["getAllTeams", "getTeamById", "updateTeamById", "querySettings", "queryFeatureFlags", "queryTeamMemberships", "queryUser", "inviteUsersToTeam", "getMyTeamMembership", "getTeamLinksByTeamId", "createTeamLink", "updateTeamLink", "deleteTeamLink", "reorderTeamLink", "acceptTeamInvitation", "declineTeamInvitation", "selfJoinTeam", "cancelJoinRequest", "acceptJoinRequest", "declineJoinRequest", "deleteTeamMembership", "revokeTeamInvite", "deleteTeam", "isSingleFullMemberTeam", "createTeam", "createExternalTeam", "getProfileWithMutability", "getIsSiteAdmin", "addUsersToTeam", "removeTeamMemberships", "getRecommendedProducts", "joinOrRequestDefaultAccessToProductsBulk", "getReadMediaToken", "getWriteUserMediaToken", "updateUserHeaderImage", "getWriteTeamMediaToken", "getSoftDeletedTeamById", "restoreTeam", "getUserInSiteUserBase", "getLinkedTeamsBulk", "getTeamProfileDetails", "getUserContainers", "getPermissions", "getUserManageConfig", "getMyAvatarUploadedStatus", "deleteUserAvatar", "getTeamLinkIcons", "getTeamInSlack", "getOrgScope", "restoreTeamToSyncedGroup", "getTeamAndGroupDiff", "linkExistingTeamToGroup", "fetchUserAvatarInfo", "getOrgEligibilityForManagedTeams", "updateUser", "updateUserAvatar", "disconnectTeamInSlack", "updateTeamInSlack"];
3
+ export type TeamsClientExperienceKeys = (typeof TeamsClientExperienceKeyList)[number];
4
+ export declare const TEAMS_CLIENT_EXPERIENCES: Map<"getAllTeams" | "getOrgEligibilityForManagedTeams" | "createTeam" | "getPermissions" | "getLinkedTeamsBulk" | "getTeamProfileDetails" | "getOrgScope" | "getTeamById" | "updateTeamById" | "querySettings" | "queryFeatureFlags" | "queryTeamMemberships" | "queryUser" | "inviteUsersToTeam" | "getMyTeamMembership" | "getTeamLinksByTeamId" | "createTeamLink" | "updateTeamLink" | "deleteTeamLink" | "reorderTeamLink" | "acceptTeamInvitation" | "declineTeamInvitation" | "selfJoinTeam" | "cancelJoinRequest" | "acceptJoinRequest" | "declineJoinRequest" | "deleteTeamMembership" | "revokeTeamInvite" | "deleteTeam" | "isSingleFullMemberTeam" | "createExternalTeam" | "getProfileWithMutability" | "getIsSiteAdmin" | "addUsersToTeam" | "removeTeamMemberships" | "getRecommendedProducts" | "joinOrRequestDefaultAccessToProductsBulk" | "getReadMediaToken" | "getWriteUserMediaToken" | "updateUserHeaderImage" | "getWriteTeamMediaToken" | "getSoftDeletedTeamById" | "restoreTeam" | "getUserInSiteUserBase" | "getUserContainers" | "getUserManageConfig" | "getMyAvatarUploadedStatus" | "deleteUserAvatar" | "getTeamLinkIcons" | "getTeamInSlack" | "restoreTeamToSyncedGroup" | "getTeamAndGroupDiff" | "linkExistingTeamToGroup" | "fetchUserAvatarInfo" | "updateUser" | "updateUserAvatar" | "disconnectTeamInSlack" | "updateTeamInSlack", TeamsUFOExperience>;
5
+ export {};
@@ -0,0 +1,6 @@
1
+ import { UFOExperience } from '@atlaskit/ufo';
2
+ import { type HttpError } from '../error';
3
+ export declare class TeamsUFOExperience extends UFOExperience {
4
+ abortWithError(error: Error | HttpError, reason: string): Promise<boolean | null>;
5
+ failWithError(error: Error | HttpError | unknown): Promise<boolean | null>;
6
+ }
@@ -0,0 +1,11 @@
1
+ import { HttpError } from '../error';
2
+ export declare const createErrorMetadata: (error: Error | HttpError) => {
3
+ error: {
4
+ name: string;
5
+ message: string;
6
+ stack: string | undefined;
7
+ traceId: string | undefined;
8
+ status: number | undefined;
9
+ };
10
+ };
11
+ export declare const isIgnoredError: (error: Error) => boolean;
@@ -0,0 +1,15 @@
1
+ export { HttpError } from './common/utils/error';
2
+ export type { AllTeamsQuery, OriginQuery } from './services/legion-client';
3
+ export { isTeamMembershipWithUser } from './types/membership';
4
+ export { teamsClient, TeamsClient } from './services';
5
+ export { useTeamsClientSetup, useTeamsClientSetupNext, } from './services/hooks/use-teams-client-setup';
6
+ export { AllTeamActions, hasPermission } from './common/utils/permissions';
7
+ export type { TeamAction } from './common/utils/permissions';
8
+ export { initialiseSentry } from './services/sentry/utils/initialise-sentry';
9
+ export { logException, logInfoMessage } from './services/sentry/main';
10
+ export type { SentryClient } from './services/sentry/types';
11
+ export { userInfoProvider, UserInfoProvider } from './services/user-info-provider';
12
+ export { sortMembersByType, isInvited, isMember, isNonMember, isRequestingJoin, } from './common/utils';
13
+ export { toUserARI, toUserId, toTeamARI, toTeamId } from './common/utils/ari';
14
+ export { useLazyQueryLight, useQueryLight, UseQueryLightError, type ActualGraphQLError, } from './services/use-query-light';
15
+ export type { FetchMoreArgs, QueryOptions } from './services/use-query-light';
@@ -0,0 +1,22 @@
1
+ import type FakerType from 'faker';
2
+ import type fetchMockType from 'fetch-mock/cjs/client';
3
+ type MockConfig = {
4
+ fetchMock: typeof fetchMockType;
5
+ delay?: number;
6
+ faker?: typeof FakerType;
7
+ restoreFetchMock?: boolean;
8
+ endpointConfig?: {
9
+ teamMembership?: MockTeamMembershipConfig;
10
+ teamType?: 'open' | 'inviteOnly' | 'external';
11
+ memberStatus?: 'requestingToJoin' | 'notMember' | 'fullMember';
12
+ };
13
+ };
14
+ type MockTeamMembershipConfig = {
15
+ count?: number;
16
+ };
17
+ export declare const mockTeamsClientEndpoints: (config: MockConfig) => void;
18
+ export declare const mockTeamsClientRequestingToJoinEndpoints: (config: MockConfig) => void;
19
+ export declare const mockTeamsClientNotMemberEndpoints: (config: MockConfig) => void;
20
+ export declare const mockTeamsClientAdminEndpoints: (config: MockConfig) => void;
21
+ export declare const mockTeamsClientInviteOnlyMemberEndpoints: (config: MockConfig) => void;
22
+ export {};
@@ -0,0 +1,16 @@
1
+ import type FakerType from 'faker';
2
+ import { type TeamMembershipQueryResponse } from '../services/agg-client/utils/queries/team-membership-query';
3
+ import { type Team, type TeamMembership } from '../types';
4
+ type MockConfig = {
5
+ faker: typeof FakerType;
6
+ };
7
+ export declare const randomTeamMembership: ({ faker }: MockConfig, customProps?: {}) => TeamMembership;
8
+ export declare const randomTeamMemberships: (config: MockConfig, n?: number, customProps?: {}) => TeamMembership[];
9
+ export declare const fixedTeamMemberships: (n?: number) => TeamMembership[];
10
+ export declare function randomReturnedNewTeamData({ faker }: MockConfig, customProps?: Partial<Team>): Team;
11
+ export declare const mockTeamMembershipResponseWithNEdges: ({ faker }: MockConfig, n: number) => {
12
+ data: {
13
+ team: TeamMembershipQueryResponse;
14
+ };
15
+ };
16
+ export {};
@@ -0,0 +1,2 @@
1
+ export { mockTeamsClientEndpoints, mockTeamsClientRequestingToJoinEndpoints, mockTeamsClientAdminEndpoints, mockTeamsClientNotMemberEndpoints, mockTeamsClientInviteOnlyMemberEndpoints, } from './endpoints';
2
+ export { randomReturnedNewTeamData, randomTeamMembership, randomTeamMemberships, fixedTeamMemberships, } from './generate-data';
@@ -0,0 +1,11 @@
1
+ export declare const getJoinOrRequestDefaultAccessToProductsBulkSuccessResponse: (aris: string[]) => {
2
+ ari: string;
3
+ result: string;
4
+ resultsV2: {
5
+ [x: string]: {
6
+ accessMode: string;
7
+ role: string;
8
+ }[];
9
+ };
10
+ errorReason: null;
11
+ }[];
@@ -0,0 +1,75 @@
1
+ import { type TeamMembershipQueryResponse } from '../services/agg-client/utils/queries/team-membership-query';
2
+ import { type RecommendationsResponse } from '../services/invitations-client/types';
3
+ import { type LegionTeamGetResponseV4 } from '../services/legion-client/types';
4
+ import { type TeamMembership } from '../types';
5
+ export declare const MOCK_ME_RESPONSE: {
6
+ email: string;
7
+ nickname: string;
8
+ characteristics: {
9
+ not_mentionable: null;
10
+ };
11
+ extended_profile: {
12
+ job_title: string;
13
+ organization: string;
14
+ department: string;
15
+ location: string;
16
+ };
17
+ account_id: string;
18
+ name: string;
19
+ zoneinfo: string;
20
+ locale: string;
21
+ privacy_settings: {
22
+ name: string;
23
+ nickname: string;
24
+ picture: string;
25
+ job_title: string;
26
+ department: string;
27
+ organization: string;
28
+ location: string;
29
+ zoneinfo: string;
30
+ email: string;
31
+ phone_number: string;
32
+ team_type: string;
33
+ };
34
+ picture: any;
35
+ account_type: string;
36
+ account_status: string;
37
+ };
38
+ export declare const MOCK_PROFILE_MUTABILITY_RESPONSE: {
39
+ account_id: string;
40
+ account_type: string;
41
+ account_status: string;
42
+ characteristics: {
43
+ not_mentionable: null;
44
+ };
45
+ email: string;
46
+ extended_profile: {
47
+ job_title: string;
48
+ organization: string;
49
+ department: string;
50
+ location: string;
51
+ };
52
+ locale: string;
53
+ last_updated: string;
54
+ name: string;
55
+ nickname: string;
56
+ not_editable: {
57
+ field: string;
58
+ reason: string;
59
+ }[];
60
+ picture: any;
61
+ };
62
+ export declare const MOCK_MEMBERS_ME_MEMBER_RESPONSE: TeamMembership;
63
+ export declare const MOCK_MEMBERS_ME_ADMIN_RESPONSE: TeamMembership;
64
+ export declare const MOCK_MEMBERS_ME_REQUESTING_RESPONSE: TeamMembership;
65
+ export declare const MOCK_TEAM_MEMBERSHIP_RESPONSE: {
66
+ data: {
67
+ team: TeamMembershipQueryResponse;
68
+ };
69
+ };
70
+ export declare const MOCK_INVITE_ONLY_TEAM_RESPONSE: LegionTeamGetResponseV4;
71
+ export declare const MOCK_EXTERNAL_TEAM_RESPONSE: LegionTeamGetResponseV4;
72
+ export declare const MOCK_INVITE_ONLY_TEAM_WRITE_PERMISSION_RESPONSE: LegionTeamGetResponseV4;
73
+ export declare const MOCK_OPEN_TEAM_RESPONSE: LegionTeamGetResponseV4;
74
+ export declare const MOCK_OPEN_TEAM_WRITE_PERMISSION_RESPONSE: LegionTeamGetResponseV4;
75
+ export declare const MOCK_PRODUCT_RECOMMENDATIONS_RESPONSE: RecommendationsResponse;
@@ -0,0 +1,7 @@
1
+ import type FakerType from 'faker';
2
+ import { type TeamLink } from '../types';
3
+ type MockConfig = {
4
+ faker: typeof FakerType;
5
+ };
6
+ export declare const randomTeamLinks: ({ faker }: MockConfig) => (n?: number, customProps?: {}) => TeamLink[];
7
+ export {};
@@ -0,0 +1,14 @@
1
+ import type FakerType from 'faker';
2
+ import { type TeamMembership, type TeamWithMemberships } from '../types/membership';
3
+ import { type Team, type TeamAvatarImage, type TeamWithImageUrls } from '../types/team';
4
+ type MockConfig = {
5
+ faker: typeof FakerType;
6
+ };
7
+ export declare const randomTeamMembership: ({ faker }: MockConfig) => (customProps?: {}) => TeamMembership;
8
+ export declare const randomTeamMemberships: (config: MockConfig) => (n?: number, customProps?: {}) => TeamMembership[];
9
+ export declare const randomHeaderImage: ({ faker }: MockConfig) => () => string;
10
+ export declare const randomTeamImages: ({ faker }: MockConfig) => (customImage?: string) => TeamAvatarImage;
11
+ export declare const randomBasicTeam: ({ faker }: MockConfig) => (customProps?: {}) => Team;
12
+ export declare const randomFullTeam: ({ faker }: MockConfig) => (customProps?: {}) => TeamWithImageUrls;
13
+ export declare const randomTeamWithMemberships: ({ faker }: MockConfig) => (team: TeamWithImageUrls, customProps?: {}) => TeamWithMemberships;
14
+ export {};
@@ -0,0 +1,15 @@
1
+ import type FakerType from 'faker';
2
+ import { type TeamsClientUser as User } from '../types/user';
3
+ type MockConfig = {
4
+ faker: typeof FakerType;
5
+ };
6
+ export declare const createUser: (id: string, customProps?: {}) => User;
7
+ export declare const randomUser: ({ faker }: MockConfig, customProps?: {}) => User;
8
+ export declare const randomUsers: (n: number | undefined, config: MockConfig) => User[];
9
+ export declare const fixedUsers: (n?: number) => User[];
10
+ export declare const JohnWick: User;
11
+ export declare const DenzelWashington: User;
12
+ export declare const ClosedUser: User;
13
+ export declare const InactiveUser: User;
14
+ export declare const AgentUser: User;
15
+ export {};
@@ -0,0 +1,11 @@
1
+ import type FakerType from 'faker';
2
+ type MockConfig = {
3
+ faker: typeof FakerType;
4
+ };
5
+ export declare const teamsClientMocks: (config: MockConfig) => {
6
+ randomBasicTeam: (customProps?: {}) => import("../types").Team;
7
+ randomFullTeam: (customProps?: {}) => import("../types").TeamWithImageUrls;
8
+ randomTeamWithMemberships: (team: import("../types").TeamWithImageUrls, customProps?: {}) => import("../types").TeamWithMemberships;
9
+ randomTeamLinks: (n?: number, customProps?: {}) => import("../types").TeamLink[];
10
+ };
11
+ export {};
@@ -0,0 +1,12 @@
1
+ import { type MembershipState, type TeamMembership } from '../../types';
2
+ import { type ClientConfig } from '../base-client';
3
+ import { BaseGraphQlClient } from '../graphql-client';
4
+ import { type AGGPageInfoVariables, type ResultWithPageInfo } from './types';
5
+ import { type TeamsUserQueryResponse } from './utils/queries/user-query';
6
+ export declare class AGGClient extends BaseGraphQlClient {
7
+ constructor(baseUrl: string, config: ClientConfig);
8
+ setBaseUrl(baseUrl: string): void;
9
+ queryTeamMemberships(teamId: string, membershipState?: MembershipState[], pageInfo?: AGGPageInfoVariables): Promise<ResultWithPageInfo<TeamMembership>>;
10
+ queryAGGUser(userId: string): Promise<TeamsUserQueryResponse>;
11
+ }
12
+ export declare const aggClient: AGGClient;