@atlaskit/teams-public 2.8.0 → 2.9.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 (266) hide show
  1. package/CHANGELOG.md +76 -0
  2. package/confluence-icon/package.json +9 -0
  3. package/dist/cjs/common/hooks/useSpaceInviteScheduler.js +2 -2
  4. package/dist/cjs/common/ui/container-icon/index.js +9 -9
  5. package/dist/cjs/common/ui/loom-avatar/getAvatarText.js +9 -0
  6. package/dist/cjs/common/ui/loom-avatar/hash.js +13 -0
  7. package/dist/cjs/common/ui/loom-avatar/main.js +9 -7
  8. package/dist/cjs/common/ui/loom-avatar/pickContainerColor.js +19 -0
  9. package/dist/cjs/common/ui/loom-avatar/pickTextColor.js +19 -0
  10. package/dist/cjs/common/ui/team-link-card-actions/index.js +12 -12
  11. package/dist/cjs/common/utils/analytics.js +2 -2
  12. package/dist/cjs/common/utils/container-to-new-web-link.js +13 -0
  13. package/dist/cjs/common/utils/get-container-properties.js +6 -6
  14. package/dist/cjs/common/utils/{get-link-domain.js → get-domain-from-link-uri.js} +4 -14
  15. package/dist/cjs/common/utils/get-is-experiment-enabled.js +3 -3
  16. package/dist/cjs/common/utils/is-new-team-web-link.js +9 -0
  17. package/dist/cjs/common/utils/team-web-link-converters.js +1 -34
  18. package/dist/cjs/common/utils/unsafe-get-domain-from-url.js +16 -0
  19. package/dist/cjs/common/utils/web-link-to-container.js +15 -0
  20. package/dist/cjs/common/utils/web-links-to-containers.js +16 -0
  21. package/dist/cjs/controllers/hooks/use-refresh-containers-on-container-created/index.js +1 -1
  22. package/dist/cjs/controllers/hooks/use-team-containers/actions-2.js +488 -0
  23. package/dist/cjs/controllers/hooks/use-team-containers/actions.js +383 -0
  24. package/dist/cjs/controllers/hooks/use-team-containers/connected-teams.js +5 -0
  25. package/dist/cjs/controllers/hooks/use-team-containers/containers-deep-equal.js +23 -0
  26. package/dist/cjs/controllers/hooks/use-team-containers/containers-equal.js +29 -0
  27. package/dist/cjs/controllers/hooks/use-team-containers/fire-analytics-props.js +1 -0
  28. package/dist/cjs/controllers/hooks/use-team-containers/get-error-details.js +14 -0
  29. package/dist/cjs/controllers/hooks/use-team-containers/get-initial-team-state.js +18 -0
  30. package/dist/cjs/controllers/hooks/use-team-containers/index.js +17 -465
  31. package/dist/cjs/controllers/hooks/use-team-containers/initial-connected-teams-state.js +14 -0
  32. package/dist/cjs/controllers/hooks/use-team-containers/multi-team.js +4 -634
  33. package/dist/cjs/controllers/hooks/use-team-containers/normalize-error.js +12 -0
  34. package/dist/cjs/controllers/hooks/use-team-containers/state.js +5 -0
  35. package/dist/cjs/controllers/hooks/use-team-containers/store.js +23 -0
  36. package/dist/cjs/controllers/hooks/use-team-containers/team-containers-state.js +5 -0
  37. package/dist/cjs/controllers/hooks/use-team-containers/team-state.js +5 -0
  38. package/dist/cjs/controllers/hooks/use-team-containers/use-connected-teams-2.js +56 -0
  39. package/dist/cjs/controllers/hooks/use-team-containers/use-connected-teams.js +36 -0
  40. package/dist/cjs/controllers/hooks/use-team-containers/use-team-containers-2.js +86 -0
  41. package/dist/cjs/controllers/hooks/use-team-containers/use-team-containers-hook.js +9 -0
  42. package/dist/cjs/controllers/hooks/use-team-containers/use-team-containers.js +55 -0
  43. package/dist/cjs/controllers/hooks/use-team-links-and-containers/index.js +9 -7
  44. package/dist/cjs/controllers/hooks/use-team-web-links/actions.js +328 -0
  45. package/dist/cjs/controllers/hooks/use-team-web-links/index.js +17 -359
  46. package/dist/cjs/controllers/hooks/use-team-web-links/initial-state.js +19 -0
  47. package/dist/cjs/controllers/hooks/use-team-web-links/store.js +14 -0
  48. package/dist/cjs/controllers/hooks/use-team-web-links/use-team-web-links-actions.js +21 -0
  49. package/dist/cjs/controllers/hooks/use-team-web-links/use-team-web-links.js +19 -0
  50. package/dist/cjs/controllers/index.js +6 -5
  51. package/dist/cjs/controllers/product-permission/getProductPermissionRequestBody.js +28 -0
  52. package/dist/cjs/controllers/product-permission/hasProductPermission.js +23 -0
  53. package/dist/cjs/controllers/product-permission/main.js +4 -3
  54. package/dist/cjs/controllers/product-permission/transformPermissions.js +22 -0
  55. package/dist/cjs/controllers/product-permission/utils.js +19 -51
  56. package/dist/cjs/index.js +8 -6
  57. package/dist/cjs/next/ui/team-containers/team-link-card/index.js +4 -4
  58. package/dist/cjs/ui/team-containers/add-container-card/{index.js → AddContainerCard.js} +8 -52
  59. package/dist/cjs/ui/team-containers/add-container-card/getAddContainerCards.js +54 -0
  60. package/dist/cjs/ui/team-containers/disconnect-dialog/index.js +5 -5
  61. package/dist/cjs/ui/team-containers/main.js +26 -24
  62. package/dist/cjs/ui/team-containers/no-product-access-empty-state/index.js +1 -1
  63. package/dist/cjs/ui/team-containers/team-link-card/index.js +19 -17
  64. package/dist/es2019/common/assets/index.js +10 -0
  65. package/dist/es2019/common/hooks/useSpaceInviteScheduler.js +1 -1
  66. package/dist/es2019/common/ui/container-icon/index.js +5 -5
  67. package/dist/es2019/common/ui/loom-avatar/getAvatarText.js +3 -0
  68. package/dist/es2019/common/ui/loom-avatar/hash.js +6 -0
  69. package/dist/es2019/common/ui/loom-avatar/index.js +4 -0
  70. package/dist/es2019/common/ui/loom-avatar/main.js +5 -3
  71. package/dist/es2019/common/ui/loom-avatar/pickContainerColor.js +13 -0
  72. package/dist/es2019/common/ui/loom-avatar/pickTextColor.js +13 -0
  73. package/dist/es2019/common/ui/team-link-card-actions/index.js +6 -4
  74. package/dist/es2019/common/utils/analytics.js +1 -1
  75. package/dist/es2019/common/utils/container-to-new-web-link.js +7 -0
  76. package/dist/es2019/common/utils/get-container-properties.js +2 -2
  77. package/dist/es2019/common/utils/{get-link-domain.js → get-domain-from-link-uri.js} +2 -11
  78. package/dist/es2019/common/utils/get-is-experiment-enabled.js +1 -1
  79. package/dist/es2019/common/utils/is-new-team-web-link.js +3 -0
  80. package/dist/es2019/common/utils/team-web-link-converters.js +0 -25
  81. package/dist/es2019/common/utils/unsafe-get-domain-from-url.js +10 -0
  82. package/dist/es2019/common/utils/web-link-to-container.js +9 -0
  83. package/dist/es2019/common/utils/web-links-to-containers.js +7 -0
  84. package/dist/es2019/controllers/hooks/use-refresh-containers-on-container-created/index.js +1 -1
  85. package/dist/es2019/controllers/hooks/use-team-containers/actions-2.js +413 -0
  86. package/dist/es2019/controllers/hooks/use-team-containers/actions.js +260 -0
  87. package/dist/es2019/controllers/hooks/use-team-containers/connected-teams.js +1 -0
  88. package/dist/es2019/controllers/hooks/use-team-containers/containers-deep-equal.js +13 -0
  89. package/dist/es2019/controllers/hooks/use-team-containers/containers-equal.js +17 -0
  90. package/dist/es2019/controllers/hooks/use-team-containers/fire-analytics-props.js +0 -0
  91. package/dist/es2019/controllers/hooks/use-team-containers/get-error-details.js +8 -0
  92. package/dist/es2019/controllers/hooks/use-team-containers/get-initial-team-state.js +10 -0
  93. package/dist/es2019/controllers/hooks/use-team-containers/index.js +13 -329
  94. package/dist/es2019/controllers/hooks/use-team-containers/initial-connected-teams-state.js +8 -0
  95. package/dist/es2019/controllers/hooks/use-team-containers/multi-team.js +2 -541
  96. package/dist/es2019/controllers/hooks/use-team-containers/normalize-error.js +6 -0
  97. package/dist/es2019/controllers/hooks/use-team-containers/state.js +1 -0
  98. package/dist/es2019/controllers/hooks/use-team-containers/store.js +17 -0
  99. package/dist/es2019/controllers/hooks/use-team-containers/team-containers-state.js +1 -0
  100. package/dist/es2019/controllers/hooks/use-team-containers/team-state.js +1 -0
  101. package/dist/es2019/controllers/hooks/use-team-containers/use-connected-teams-2.js +44 -0
  102. package/dist/es2019/controllers/hooks/use-team-containers/use-connected-teams.js +20 -0
  103. package/dist/es2019/controllers/hooks/use-team-containers/use-team-containers-2.js +59 -0
  104. package/dist/es2019/controllers/hooks/use-team-containers/use-team-containers-hook.js +3 -0
  105. package/dist/es2019/controllers/hooks/use-team-containers/use-team-containers.js +28 -0
  106. package/dist/es2019/controllers/hooks/use-team-links-and-containers/index.js +5 -3
  107. package/dist/es2019/controllers/hooks/use-team-web-links/actions.js +177 -0
  108. package/dist/es2019/controllers/hooks/use-team-web-links/index.js +13 -217
  109. package/dist/es2019/controllers/hooks/use-team-web-links/initial-state.js +13 -0
  110. package/dist/es2019/controllers/hooks/use-team-web-links/store.js +8 -0
  111. package/dist/es2019/controllers/hooks/use-team-web-links/use-team-web-links-actions.js +15 -0
  112. package/dist/es2019/controllers/hooks/use-team-web-links/use-team-web-links.js +13 -0
  113. package/dist/es2019/controllers/index.js +17 -3
  114. package/dist/es2019/controllers/product-permission/getProductPermissionRequestBody.js +19 -0
  115. package/dist/es2019/controllers/product-permission/hasProductPermission.js +15 -0
  116. package/dist/es2019/controllers/product-permission/main.js +2 -1
  117. package/dist/es2019/controllers/product-permission/transformPermissions.js +15 -0
  118. package/dist/es2019/controllers/product-permission/utils.js +11 -48
  119. package/dist/es2019/i18n/index.js +88 -0
  120. package/dist/es2019/index.js +5 -3
  121. package/dist/es2019/next/index.js +10 -0
  122. package/dist/es2019/next/ui/team-containers/team-link-card/index.js +2 -2
  123. package/dist/es2019/ui/team-containers/add-container-card/{index.js → AddContainerCard.js} +4 -41
  124. package/dist/es2019/ui/team-containers/add-container-card/getAddContainerCards.js +40 -0
  125. package/dist/es2019/ui/team-containers/disconnect-dialog/index.js +2 -2
  126. package/dist/es2019/ui/team-containers/index.js +12 -1
  127. package/dist/es2019/ui/team-containers/main.js +9 -7
  128. package/dist/es2019/ui/team-containers/no-product-access-empty-state/index.js +1 -1
  129. package/dist/es2019/ui/team-containers/team-link-card/index.js +9 -7
  130. package/dist/esm/common/assets/index.js +10 -0
  131. package/dist/esm/common/hooks/useSpaceInviteScheduler.js +1 -1
  132. package/dist/esm/common/ui/container-icon/index.js +5 -5
  133. package/dist/esm/common/ui/loom-avatar/getAvatarText.js +3 -0
  134. package/dist/esm/common/ui/loom-avatar/hash.js +6 -0
  135. package/dist/esm/common/ui/loom-avatar/index.js +4 -0
  136. package/dist/esm/common/ui/loom-avatar/main.js +5 -3
  137. package/dist/esm/common/ui/loom-avatar/pickContainerColor.js +13 -0
  138. package/dist/esm/common/ui/loom-avatar/pickTextColor.js +13 -0
  139. package/dist/esm/common/ui/team-link-card-actions/index.js +6 -4
  140. package/dist/esm/common/utils/analytics.js +1 -1
  141. package/dist/esm/common/utils/container-to-new-web-link.js +7 -0
  142. package/dist/esm/common/utils/get-container-properties.js +2 -2
  143. package/dist/esm/common/utils/{get-link-domain.js → get-domain-from-link-uri.js} +2 -11
  144. package/dist/esm/common/utils/get-is-experiment-enabled.js +1 -1
  145. package/dist/esm/common/utils/is-new-team-web-link.js +3 -0
  146. package/dist/esm/common/utils/team-web-link-converters.js +0 -28
  147. package/dist/esm/common/utils/unsafe-get-domain-from-url.js +10 -0
  148. package/dist/esm/common/utils/web-link-to-container.js +9 -0
  149. package/dist/esm/common/utils/web-links-to-containers.js +10 -0
  150. package/dist/esm/controllers/hooks/use-refresh-containers-on-container-created/index.js +1 -1
  151. package/dist/esm/controllers/hooks/use-team-containers/actions-2.js +481 -0
  152. package/dist/esm/controllers/hooks/use-team-containers/actions.js +376 -0
  153. package/dist/esm/controllers/hooks/use-team-containers/connected-teams.js +1 -0
  154. package/dist/esm/controllers/hooks/use-team-containers/containers-deep-equal.js +16 -0
  155. package/dist/esm/controllers/hooks/use-team-containers/containers-equal.js +22 -0
  156. package/dist/esm/controllers/hooks/use-team-containers/fire-analytics-props.js +0 -0
  157. package/dist/esm/controllers/hooks/use-team-containers/get-error-details.js +8 -0
  158. package/dist/esm/controllers/hooks/use-team-containers/get-initial-team-state.js +12 -0
  159. package/dist/esm/controllers/hooks/use-team-containers/index.js +13 -467
  160. package/dist/esm/controllers/hooks/use-team-containers/initial-connected-teams-state.js +8 -0
  161. package/dist/esm/controllers/hooks/use-team-containers/multi-team.js +2 -631
  162. package/dist/esm/controllers/hooks/use-team-containers/normalize-error.js +6 -0
  163. package/dist/esm/controllers/hooks/use-team-containers/state.js +1 -0
  164. package/dist/esm/controllers/hooks/use-team-containers/store.js +17 -0
  165. package/dist/esm/controllers/hooks/use-team-containers/team-containers-state.js +1 -0
  166. package/dist/esm/controllers/hooks/use-team-containers/team-state.js +1 -0
  167. package/dist/esm/controllers/hooks/use-team-containers/use-connected-teams-2.js +49 -0
  168. package/dist/esm/controllers/hooks/use-team-containers/use-connected-teams.js +29 -0
  169. package/dist/esm/controllers/hooks/use-team-containers/use-team-containers-2.js +79 -0
  170. package/dist/esm/controllers/hooks/use-team-containers/use-team-containers-hook.js +3 -0
  171. package/dist/esm/controllers/hooks/use-team-containers/use-team-containers.js +48 -0
  172. package/dist/esm/controllers/hooks/use-team-links-and-containers/index.js +5 -3
  173. package/dist/esm/controllers/hooks/use-team-web-links/actions.js +321 -0
  174. package/dist/esm/controllers/hooks/use-team-web-links/index.js +13 -361
  175. package/dist/esm/controllers/hooks/use-team-web-links/initial-state.js +13 -0
  176. package/dist/esm/controllers/hooks/use-team-web-links/store.js +8 -0
  177. package/dist/esm/controllers/hooks/use-team-web-links/use-team-web-links-actions.js +15 -0
  178. package/dist/esm/controllers/hooks/use-team-web-links/use-team-web-links.js +13 -0
  179. package/dist/esm/controllers/index.js +17 -3
  180. package/dist/esm/controllers/product-permission/getProductPermissionRequestBody.js +21 -0
  181. package/dist/esm/controllers/product-permission/hasProductPermission.js +17 -0
  182. package/dist/esm/controllers/product-permission/main.js +2 -1
  183. package/dist/esm/controllers/product-permission/transformPermissions.js +15 -0
  184. package/dist/esm/controllers/product-permission/utils.js +11 -49
  185. package/dist/esm/i18n/index.js +88 -0
  186. package/dist/esm/index.js +5 -3
  187. package/dist/esm/next/index.js +10 -0
  188. package/dist/esm/next/ui/team-containers/team-link-card/index.js +2 -2
  189. package/dist/esm/ui/team-containers/add-container-card/{index.js → AddContainerCard.js} +4 -48
  190. package/dist/esm/ui/team-containers/add-container-card/getAddContainerCards.js +47 -0
  191. package/dist/esm/ui/team-containers/disconnect-dialog/index.js +2 -2
  192. package/dist/esm/ui/team-containers/index.js +12 -1
  193. package/dist/esm/ui/team-containers/main.js +9 -7
  194. package/dist/esm/ui/team-containers/no-product-access-empty-state/index.js +1 -1
  195. package/dist/esm/ui/team-containers/team-link-card/index.js +9 -7
  196. package/dist/types/common/assets/index.d.ts +9 -0
  197. package/dist/types/common/ui/loom-avatar/getAvatarText.d.ts +1 -0
  198. package/dist/types/common/ui/loom-avatar/hash.d.ts +1 -0
  199. package/dist/types/common/ui/loom-avatar/index.d.ts +3 -0
  200. package/dist/types/common/ui/loom-avatar/pickContainerColor.d.ts +8 -0
  201. package/dist/types/common/ui/loom-avatar/pickTextColor.d.ts +8 -0
  202. package/dist/types/common/utils/container-to-new-web-link.d.ts +2 -0
  203. package/dist/types/common/utils/{get-link-domain.d.ts → get-domain-from-link-uri.d.ts} +0 -7
  204. package/dist/types/common/utils/is-new-team-web-link.d.ts +2 -0
  205. package/dist/types/common/utils/team-web-link-converters.d.ts +0 -5
  206. package/dist/types/common/utils/unsafe-get-domain-from-url.d.ts +7 -0
  207. package/dist/types/common/utils/web-link-to-container.d.ts +3 -0
  208. package/dist/types/common/utils/web-links-to-containers.d.ts +3 -0
  209. package/dist/types/controllers/hooks/use-team-containers/actions-2.d.ts +13 -0
  210. package/dist/types/controllers/hooks/use-team-containers/actions.d.ts +12 -0
  211. package/dist/types/controllers/hooks/use-team-containers/connected-teams.d.ts +9 -0
  212. package/dist/types/controllers/hooks/use-team-containers/containers-deep-equal.d.ts +12 -0
  213. package/dist/types/controllers/hooks/use-team-containers/containers-equal.d.ts +11 -0
  214. package/dist/types/controllers/hooks/use-team-containers/fire-analytics-props.d.ts +7 -0
  215. package/dist/types/controllers/hooks/use-team-containers/get-error-details.d.ts +4 -0
  216. package/dist/types/controllers/hooks/use-team-containers/get-initial-team-state.d.ts +2 -0
  217. package/dist/types/controllers/hooks/use-team-containers/index.d.ts +12 -59
  218. package/dist/types/controllers/hooks/use-team-containers/initial-connected-teams-state.d.ts +2 -0
  219. package/dist/types/controllers/hooks/use-team-containers/multi-team.d.ts +3 -53
  220. package/dist/types/controllers/hooks/use-team-containers/normalize-error.d.ts +1 -0
  221. package/dist/types/controllers/hooks/use-team-containers/state.d.ts +6 -0
  222. package/dist/types/controllers/hooks/use-team-containers/store.d.ts +4 -0
  223. package/dist/types/controllers/hooks/use-team-containers/team-containers-state.d.ts +16 -0
  224. package/dist/types/controllers/hooks/use-team-containers/team-state.d.ts +11 -0
  225. package/dist/types/controllers/hooks/use-team-containers/use-connected-teams-2.d.ts +11 -0
  226. package/dist/types/controllers/hooks/use-team-containers/use-connected-teams.d.ts +11 -0
  227. package/dist/types/controllers/hooks/use-team-containers/use-team-containers-2.d.ts +15 -0
  228. package/dist/types/controllers/hooks/use-team-containers/use-team-containers-hook.d.ts +12 -0
  229. package/dist/types/controllers/hooks/use-team-containers/use-team-containers.d.ts +21 -0
  230. package/dist/types/controllers/hooks/use-team-web-links/actions.d.ts +12 -0
  231. package/dist/types/controllers/hooks/use-team-web-links/index.d.ts +12 -165
  232. package/dist/types/controllers/hooks/use-team-web-links/initial-state.d.ts +2 -0
  233. package/dist/types/controllers/hooks/use-team-web-links/store.d.ts +4 -0
  234. package/dist/types/controllers/hooks/use-team-web-links/use-team-web-links-actions.d.ts +147 -0
  235. package/dist/types/controllers/hooks/use-team-web-links/use-team-web-links.d.ts +13 -0
  236. package/dist/types/controllers/index.d.ts +16 -3
  237. package/dist/types/controllers/product-permission/getProductPermissionRequestBody.d.ts +2 -0
  238. package/dist/types/controllers/product-permission/hasProductPermission.d.ts +5 -0
  239. package/dist/types/controllers/product-permission/transformPermissions.d.ts +2 -0
  240. package/dist/types/controllers/product-permission/utils.d.ts +10 -5
  241. package/dist/types/i18n/index.d.ts +87 -0
  242. package/dist/types/index.d.ts +5 -3
  243. package/dist/types/next/index.d.ts +9 -0
  244. package/dist/types/ui/team-containers/add-container-card/AddContainerCard.d.ts +12 -0
  245. package/dist/types/ui/team-containers/add-container-card/{index.d.ts → getAddContainerCards.d.ts} +1 -11
  246. package/dist/types/ui/team-containers/index.d.ts +9 -0
  247. package/dist/types/ui/team-containers/types.d.ts +1 -1
  248. package/jira-icon/package.json +9 -0
  249. package/loom-icon/package.json +9 -0
  250. package/package.json +2 -2
  251. package/product-permission/get-product-permission-request-body/package.json +10 -0
  252. package/product-permission/has-product-permission/package.json +10 -0
  253. package/product-permission/transform-permissions/package.json +10 -0
  254. package/use-connected-teams/package.json +10 -0
  255. package/use-team-containers/use-team-containers/package.json +10 -0
  256. package/use-team-containers/use-team-containers-hook/package.json +10 -0
  257. package/use-team-web-links/actions/package.json +10 -0
  258. package/use-team-web-links/use-team-web-links/package.json +10 -0
  259. package/use-team-web-links-actions/package.json +10 -0
  260. package/dist/cjs/common/ui/loom-avatar/utils.js +0 -39
  261. package/dist/es2019/common/ui/loom-avatar/utils.js +0 -33
  262. package/dist/esm/common/ui/loom-avatar/utils.js +0 -33
  263. package/dist/types/common/ui/loom-avatar/utils.d.ts +0 -16
  264. /package/dist/cjs/ui/team-containers/add-container-card/{index.compiled.css → AddContainerCard.compiled.css} +0 -0
  265. /package/dist/es2019/ui/team-containers/add-container-card/{index.compiled.css → AddContainerCard.compiled.css} +0 -0
  266. /package/dist/esm/ui/team-containers/add-container-card/{index.compiled.css → AddContainerCard.compiled.css} +0 -0
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.TeamContainersStore = void 0;
7
+ var _reactSweetState = require("react-sweet-state");
8
+ var _actions = require("./actions");
9
+ var _initialConnectedTeamsState = require("./initial-connected-teams-state");
10
+ var initialState = {
11
+ teamContainers: [],
12
+ loading: true,
13
+ hasLoaded: false,
14
+ error: null,
15
+ unlinkError: null,
16
+ teamId: null,
17
+ connectedTeams: _initialConnectedTeamsState.initialConnectedTeamsState
18
+ };
19
+ var TeamContainersStore = exports.TeamContainersStore = (0, _reactSweetState.createStore)({
20
+ initialState: initialState,
21
+ actions: _actions.actions,
22
+ name: 'teamContainersStore'
23
+ });
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.useConnectedTeams = void 0;
8
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
9
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
10
+ var _react = require("react");
11
+ var _analyticsNext = require("@atlaskit/analytics-next");
12
+ var _teamsAppInternalAnalytics = require("@atlaskit/teams-app-internal-analytics");
13
+ var _analytics = require("../../../common/utils/analytics");
14
+ var _getErrorDetails = require("./get-error-details");
15
+ var _getInitialTeamState = require("./get-initial-team-state");
16
+ var _multiTeam = require("./multi-team");
17
+ 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; }
18
+ 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) { (0, _defineProperty2.default)(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; }
19
+ var useConnectedTeams = exports.useConnectedTeams = function useConnectedTeams(teamId) {
20
+ var _useTeamContainersHoo = (0, _multiTeam.useTeamContainersHook)(),
21
+ _useTeamContainersHoo2 = (0, _slicedToArray2.default)(_useTeamContainersHoo, 2),
22
+ state = _useTeamContainersHoo2[0],
23
+ actions = _useTeamContainersHoo2[1];
24
+ var _usePeopleAndTeamAnal = (0, _analytics.usePeopleAndTeamAnalytics)(),
25
+ fireOperationalEvent = _usePeopleAndTeamAnal.fireOperationalEvent;
26
+ var _useAnalyticsEvents = (0, _analyticsNext.useAnalyticsEvents)(),
27
+ createAnalyticsEvent = _useAnalyticsEvents.createAnalyticsEvent;
28
+ var _useAnalyticsEventsNe = (0, _teamsAppInternalAnalytics.useAnalyticsEvents)(),
29
+ fireEvent = _useAnalyticsEventsNe.fireEvent;
30
+ var fireOperationalAnalytics = (0, _react.useCallback)(function (_ref) {
31
+ var action = _ref.action,
32
+ actionSubject = _ref.actionSubject,
33
+ containerId = _ref.containerId,
34
+ numberOfTeams = _ref.numberOfTeams,
35
+ error = _ref.error;
36
+ fireOperationalEvent(createAnalyticsEvent, {
37
+ action: action,
38
+ actionSubject: actionSubject,
39
+ attributes: _objectSpread({
40
+ containerId: containerId,
41
+ numberOfTeams: numberOfTeams
42
+ }, error && {
43
+ error: (0, _getErrorDetails.getErrorDetails)(error)
44
+ })
45
+ });
46
+ }, [fireOperationalEvent, createAnalyticsEvent]);
47
+ var teamState = state.teams[teamId] || (0, _getInitialTeamState.getInitialTeamState)();
48
+ return _objectSpread(_objectSpread({}, teamState.connectedTeams), {}, {
49
+ fetchNumberOfConnectedTeams: function fetchNumberOfConnectedTeams(containerId) {
50
+ return actions.fetchNumberOfConnectedTeams(teamId, containerId, fireOperationalAnalytics, fireEvent);
51
+ },
52
+ fetchConnectedTeams: function fetchConnectedTeams(containerId) {
53
+ return actions.fetchConnectedTeams(teamId, containerId, fireOperationalAnalytics, fireEvent);
54
+ }
55
+ });
56
+ };
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.useConnectedTeams = void 0;
8
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
9
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
10
+ var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
11
+ var _teamsAppInternalAnalytics = require("@atlaskit/teams-app-internal-analytics");
12
+ var _useConnectedTeams = require("./use-connected-teams-2");
13
+ var _useTeamContainersHook = require("./use-team-containers-hook");
14
+ 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; }
15
+ 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) { (0, _defineProperty2.default)(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; }
16
+ var useConnectedTeams = exports.useConnectedTeams = function useConnectedTeams(teamId) {
17
+ var _useTeamContainersHoo = (0, _useTeamContainersHook.useTeamContainersHook)(),
18
+ _useTeamContainersHoo2 = (0, _slicedToArray2.default)(_useTeamContainersHoo, 2),
19
+ state = _useTeamContainersHoo2[0],
20
+ actions = _useTeamContainersHoo2[1];
21
+ var useMultiTeam = (0, _platformFeatureFlags.fg)('enable_multi_team_containers_state');
22
+ var multiTeamResult = (0, _useConnectedTeams.useConnectedTeams)(useMultiTeam ? teamId || '' : '');
23
+ var _useAnalyticsEvents = (0, _teamsAppInternalAnalytics.useAnalyticsEvents)(),
24
+ fireEvent = _useAnalyticsEvents.fireEvent;
25
+ if (useMultiTeam) {
26
+ return multiTeamResult;
27
+ }
28
+ return _objectSpread(_objectSpread({}, state.connectedTeams), {}, {
29
+ fetchNumberOfConnectedTeams: function fetchNumberOfConnectedTeams(containerId) {
30
+ return actions.fetchNumberOfConnectedTeams(containerId, fireEvent);
31
+ },
32
+ fetchConnectedTeams: function fetchConnectedTeams(containerId) {
33
+ return actions.fetchConnectedTeams(containerId, fireEvent);
34
+ }
35
+ });
36
+ };
@@ -0,0 +1,86 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.useTeamContainers = void 0;
8
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
9
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
10
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
12
+ var _react = require("react");
13
+ var _analyticsNext = require("@atlaskit/analytics-next");
14
+ var _teamsAppInternalAnalytics = require("@atlaskit/teams-app-internal-analytics");
15
+ var _analytics = require("../../../common/utils/analytics");
16
+ var _getErrorDetails = require("./get-error-details");
17
+ var _getInitialTeamState = require("./get-initial-team-state");
18
+ var _multiTeam = require("./multi-team");
19
+ 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; }
20
+ 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) { (0, _defineProperty2.default)(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; }
21
+ var useTeamContainers = exports.useTeamContainers = function useTeamContainers(teamId) {
22
+ var enable = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
23
+ var _useTeamContainersHoo = (0, _multiTeam.useTeamContainersHook)(),
24
+ _useTeamContainersHoo2 = (0, _slicedToArray2.default)(_useTeamContainersHoo, 2),
25
+ state = _useTeamContainersHoo2[0],
26
+ actions = _useTeamContainersHoo2[1];
27
+ var _usePeopleAndTeamAnal = (0, _analytics.usePeopleAndTeamAnalytics)(),
28
+ fireOperationalEvent = _usePeopleAndTeamAnal.fireOperationalEvent;
29
+ var _useAnalyticsEvents = (0, _analyticsNext.useAnalyticsEvents)(),
30
+ createAnalyticsEvent = _useAnalyticsEvents.createAnalyticsEvent;
31
+ var _useAnalyticsEventsNe = (0, _teamsAppInternalAnalytics.useAnalyticsEvents)(),
32
+ fireEvent = _useAnalyticsEventsNe.fireEvent;
33
+ var fireOperationalAnalytics = (0, _react.useCallback)(function (action, actionSubject, error) {
34
+ fireOperationalEvent(createAnalyticsEvent, {
35
+ action: action,
36
+ actionSubject: actionSubject,
37
+ attributes: _objectSpread({
38
+ teamId: teamId
39
+ }, error && {
40
+ error: (0, _getErrorDetails.getErrorDetails)(error)
41
+ })
42
+ });
43
+ }, [fireOperationalEvent, createAnalyticsEvent, teamId]);
44
+ (0, _react.useEffect)(function () {
45
+ if (enable) {
46
+ // Get fresh state to ensure we're checking the correct team
47
+ var currentState = state;
48
+ var _teamState = currentState.teams[teamId];
49
+ // Only fetch if not already loaded or loading
50
+ if (!(_teamState !== null && _teamState !== void 0 && _teamState.hasLoaded) && !(_teamState !== null && _teamState !== void 0 && _teamState.loading)) {
51
+ actions.fetchTeamContainers(teamId, fireOperationalAnalytics, fireEvent);
52
+ }
53
+ }
54
+ // eslint-disable-next-line react-hooks/exhaustive-deps
55
+ }, [teamId, enable]);
56
+ var refetchTeamContainers = (0, _react.useCallback)( /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
57
+ return _regenerator.default.wrap(function (_context) {
58
+ while (1) switch (_context.prev = _context.next) {
59
+ case 0:
60
+ return _context.abrupt("return", actions.refetchTeamContainers(teamId, fireOperationalAnalytics, fireEvent));
61
+ case 1:
62
+ case "end":
63
+ return _context.stop();
64
+ }
65
+ }, _callee);
66
+ })), [teamId, actions, fireOperationalAnalytics, fireEvent]);
67
+
68
+ // Always get the state for the specific teamId to avoid showing wrong team's data
69
+ var teamState = state.teams[teamId] || (0, _getInitialTeamState.getInitialTeamState)();
70
+ return {
71
+ teamContainers: teamState.teamContainers,
72
+ loading: teamState.loading,
73
+ hasLoaded: teamState.hasLoaded,
74
+ error: teamState.error,
75
+ unlinkError: teamState.unlinkError,
76
+ teamId: teamState.teamId,
77
+ connectedTeams: teamState.connectedTeams,
78
+ addTeamContainer: function addTeamContainer(teamContainer) {
79
+ return actions.addTeamContainer(teamId, teamContainer);
80
+ },
81
+ unlinkTeamContainers: function unlinkTeamContainers(containerId) {
82
+ return actions.unlinkTeamContainers(teamId, containerId);
83
+ },
84
+ refetchTeamContainers: refetchTeamContainers
85
+ };
86
+ };
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useTeamContainersHook = void 0;
7
+ var _reactSweetState = require("react-sweet-state");
8
+ var _store = require("./store");
9
+ var useTeamContainersHook = exports.useTeamContainersHook = (0, _reactSweetState.createHook)(_store.TeamContainersStore);
@@ -0,0 +1,55 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.useTeamContainers = void 0;
8
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
9
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
10
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
11
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
12
+ var _react = require("react");
13
+ var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
14
+ var _teamsAppInternalAnalytics = require("@atlaskit/teams-app-internal-analytics");
15
+ var _useTeamContainers = require("./use-team-containers-2");
16
+ var _useTeamContainersHook = require("./use-team-containers-hook");
17
+ 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; }
18
+ 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) { (0, _defineProperty2.default)(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; }
19
+ var useTeamContainers = exports.useTeamContainers = function useTeamContainers(teamId) {
20
+ var enable = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
21
+ var _useTeamContainersHoo = (0, _useTeamContainersHook.useTeamContainersHook)(),
22
+ _useTeamContainersHoo2 = (0, _slicedToArray2.default)(_useTeamContainersHoo, 2),
23
+ state = _useTeamContainersHoo2[0],
24
+ actions = _useTeamContainersHoo2[1];
25
+ var useMultiTeam = (0, _platformFeatureFlags.fg)('enable_multi_team_containers_state');
26
+ var multiTeamResult = (0, _useTeamContainers.useTeamContainers)(teamId, useMultiTeam ? enable : false);
27
+ var _useAnalyticsEvents = (0, _teamsAppInternalAnalytics.useAnalyticsEvents)(),
28
+ fireEvent = _useAnalyticsEvents.fireEvent;
29
+ (0, _react.useEffect)(function () {
30
+ if (enable && !useMultiTeam) {
31
+ actions.fetchTeamContainers(teamId, fireEvent);
32
+ }
33
+ }, [teamId, actions, enable, fireEvent, useMultiTeam]);
34
+ var refetchTeamContainers = (0, _react.useCallback)( /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
35
+ return _regenerator.default.wrap(function (_context) {
36
+ while (1) switch (_context.prev = _context.next) {
37
+ case 0:
38
+ return _context.abrupt("return", actions.refetchTeamContainers(fireEvent));
39
+ case 1:
40
+ case "end":
41
+ return _context.stop();
42
+ }
43
+ }, _callee);
44
+ })), [actions, fireEvent]);
45
+ if (useMultiTeam) {
46
+ return multiTeamResult;
47
+ }
48
+ return _objectSpread(_objectSpread({}, state), {}, {
49
+ addTeamContainer: actions.addTeamContainer,
50
+ unlinkTeamContainers: function unlinkTeamContainers(containerId) {
51
+ return actions.unlinkTeamContainers(teamId, containerId);
52
+ },
53
+ refetchTeamContainers: refetchTeamContainers
54
+ });
55
+ };
@@ -11,9 +11,11 @@ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/
11
11
  var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
12
12
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
13
13
  var _react = require("react");
14
- var _teamWebLinkConverters = require("../../../common/utils/team-web-link-converters");
15
- var _useTeamContainers2 = require("../use-team-containers");
16
- var _useTeamWebLinks3 = require("../use-team-web-links");
14
+ var _containerToNewWebLink = require("../../../common/utils/container-to-new-web-link");
15
+ var _isNewTeamWebLink = require("../../../common/utils/is-new-team-web-link");
16
+ var _webLinksToContainers = require("../../../common/utils/web-links-to-containers");
17
+ var _useTeamContainers2 = require("../use-team-containers/use-team-containers");
18
+ var _useTeamWebLinks3 = require("../use-team-web-links/use-team-web-links");
17
19
  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; }
18
20
  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) { (0, _defineProperty2.default)(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; }
19
21
  var MAX_LINKS_LIMIT = 10;
@@ -45,7 +47,7 @@ var useTeamLinksAndContainers = exports.useTeamLinksAndContainers = function use
45
47
  getTeamWebLinks(teamId);
46
48
  }, [getTeamWebLinks, teamId]);
47
49
  var webLinkContainers = (0, _react.useMemo)(function () {
48
- return (0, _teamWebLinkConverters.webLinksToContainers)(links, linkIcons);
50
+ return (0, _webLinksToContainers.webLinksToContainers)(links, linkIcons);
49
51
  }, [links, linkIcons]);
50
52
  var allContainers = (0, _react.useMemo)(function () {
51
53
  return [].concat((0, _toConsumableArray2.default)(teamContainers), (0, _toConsumableArray2.default)(webLinkContainers));
@@ -59,7 +61,7 @@ var useTeamLinksAndContainers = exports.useTeamLinksAndContainers = function use
59
61
  return _regenerator.default.wrap(function (_context) {
60
62
  while (1) switch (_context.prev = _context.next) {
61
63
  case 0:
62
- if (!(0, _teamWebLinkConverters.isNewTeamWebLink)(containerOrWebLink)) {
64
+ if (!(0, _isNewTeamWebLink.isNewTeamWebLink)(containerOrWebLink)) {
63
65
  _context.next = 2;
64
66
  break;
65
67
  }
@@ -72,7 +74,7 @@ var useTeamLinksAndContainers = exports.useTeamLinksAndContainers = function use
72
74
  _context.next = 4;
73
75
  break;
74
76
  }
75
- webLink = (0, _teamWebLinkConverters.containerToNewWebLink)(containerOrWebLink);
77
+ webLink = (0, _containerToNewWebLink.containerToNewWebLink)(containerOrWebLink);
76
78
  _context.next = 3;
77
79
  return createTeamWebLink(teamId, webLink);
78
80
  case 3:
@@ -109,7 +111,7 @@ var useTeamLinksAndContainers = exports.useTeamLinksAndContainers = function use
109
111
  _context2.next = 3;
110
112
  break;
111
113
  }
112
- currentWebLink = (0, _teamWebLinkConverters.containerToNewWebLink)(container);
114
+ currentWebLink = (0, _containerToNewWebLink.containerToNewWebLink)(container);
113
115
  updatedWebLink = _objectSpread(_objectSpread({}, currentWebLink), updatedFields);
114
116
  _context2.next = 2;
115
117
  return updateTeamWebLink(teamId, linkId, updatedWebLink);
@@ -0,0 +1,328 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.actions = void 0;
8
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
9
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
10
+ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
11
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
12
+ var _teamsClient = require("@atlaskit/teams-client");
13
+ var _initialState2 = require("./initial-state");
14
+ 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; }
15
+ 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) { (0, _defineProperty2.default)(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; }
16
+ var actions = exports.actions = {
17
+ getTeamWebLinks: function getTeamWebLinks(teamId) {
18
+ return /*#__PURE__*/function () {
19
+ var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(_ref) {
20
+ var getState, setState, dispatch, _getState, links, currentTeamId, hasLoaded, isLoading, initialLinks, _yield$teamsClient$ge, entities, _t;
21
+ return _regenerator.default.wrap(function (_context) {
22
+ while (1) switch (_context.prev = _context.next) {
23
+ case 0:
24
+ getState = _ref.getState, setState = _ref.setState, dispatch = _ref.dispatch;
25
+ _getState = getState(), links = _getState.links, currentTeamId = _getState.teamId, hasLoaded = _getState.hasLoaded, isLoading = _getState.isLoading;
26
+ if (!(isLoading || teamId === currentTeamId && hasLoaded && links.length > 0)) {
27
+ _context.next = 1;
28
+ break;
29
+ }
30
+ return _context.abrupt("return");
31
+ case 1:
32
+ initialLinks = teamId === currentTeamId ? links : [];
33
+ setState({
34
+ teamId: teamId,
35
+ isLoading: true,
36
+ hasLoaded: false,
37
+ hasError: false,
38
+ shouldReload: false,
39
+ links: initialLinks
40
+ });
41
+ _context.prev = 2;
42
+ _context.next = 3;
43
+ return _teamsClient.teamsClient.getTeamLinksByTeamId(teamId);
44
+ case 3:
45
+ _yield$teamsClient$ge = _context.sent;
46
+ entities = _yield$teamsClient$ge.entities;
47
+ if (!(getState().teamId !== teamId)) {
48
+ _context.next = 4;
49
+ break;
50
+ }
51
+ return _context.abrupt("return");
52
+ case 4:
53
+ setState({
54
+ isLoading: false,
55
+ hasLoaded: true,
56
+ hasError: false,
57
+ shouldReload: false,
58
+ links: entities
59
+ });
60
+ if (entities.length > 0) {
61
+ dispatch(actions.getTeamWebLinkIcons(teamId));
62
+ }
63
+ _context.next = 7;
64
+ break;
65
+ case 5:
66
+ _context.prev = 5;
67
+ _t = _context["catch"](2);
68
+ if (!(getState().teamId !== teamId)) {
69
+ _context.next = 6;
70
+ break;
71
+ }
72
+ return _context.abrupt("return");
73
+ case 6:
74
+ setState({
75
+ isLoading: false,
76
+ hasLoaded: true,
77
+ hasError: true,
78
+ errorType: _t instanceof Error ? _t : undefined,
79
+ shouldReload: false,
80
+ links: []
81
+ });
82
+ case 7:
83
+ case "end":
84
+ return _context.stop();
85
+ }
86
+ }, _callee, null, [[2, 5]]);
87
+ }));
88
+ return function (_x) {
89
+ return _ref2.apply(this, arguments);
90
+ };
91
+ }();
92
+ },
93
+ getTeamWebLinkIcons: function getTeamWebLinkIcons(teamId) {
94
+ return /*#__PURE__*/function () {
95
+ var _ref4 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(_ref3) {
96
+ var getState, setState, _getState2, links, currentIcons, linkUrls, uncachedUrls, newIconData, _t2;
97
+ return _regenerator.default.wrap(function (_context2) {
98
+ while (1) switch (_context2.prev = _context2.next) {
99
+ case 0:
100
+ getState = _ref3.getState, setState = _ref3.setState;
101
+ _getState2 = getState(), links = _getState2.links, currentIcons = _getState2.linkIcons;
102
+ if (!(links.length === 0)) {
103
+ _context2.next = 1;
104
+ break;
105
+ }
106
+ return _context2.abrupt("return");
107
+ case 1:
108
+ linkUrls = links.map(function (link) {
109
+ return link.linkUri;
110
+ });
111
+ uncachedUrls = linkUrls.filter(function (url) {
112
+ return !currentIcons.some(function (icon) {
113
+ return icon.linkUrl === url;
114
+ });
115
+ });
116
+ if (!(uncachedUrls.length > 0)) {
117
+ _context2.next = 6;
118
+ break;
119
+ }
120
+ _context2.prev = 2;
121
+ setState({
122
+ iconsLoading: true,
123
+ iconsError: false
124
+ });
125
+ _context2.next = 3;
126
+ return _teamsClient.teamsClient.getTeamLinkIcons(uncachedUrls);
127
+ case 3:
128
+ newIconData = _context2.sent;
129
+ if (getState().teamId === teamId) {
130
+ setState({
131
+ linkIcons: [].concat((0, _toConsumableArray2.default)(currentIcons), (0, _toConsumableArray2.default)(newIconData || [])),
132
+ iconsLoading: false,
133
+ iconsError: false,
134
+ iconHasLoaded: true
135
+ });
136
+ }
137
+ _context2.next = 5;
138
+ break;
139
+ case 4:
140
+ _context2.prev = 4;
141
+ _t2 = _context2["catch"](2);
142
+ if (getState().teamId === teamId) {
143
+ setState({
144
+ iconsLoading: false,
145
+ iconsError: true,
146
+ iconHasLoaded: true
147
+ });
148
+ }
149
+ case 5:
150
+ _context2.next = 7;
151
+ break;
152
+ case 6:
153
+ setState({
154
+ iconsLoading: false,
155
+ iconsError: false,
156
+ iconHasLoaded: true
157
+ });
158
+ case 7:
159
+ case "end":
160
+ return _context2.stop();
161
+ }
162
+ }, _callee2, null, [[2, 4]]);
163
+ }));
164
+ return function (_x2) {
165
+ return _ref4.apply(this, arguments);
166
+ };
167
+ }();
168
+ },
169
+ createTeamWebLink: function createTeamWebLink(teamId, newLink) {
170
+ return /*#__PURE__*/function () {
171
+ var _ref6 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3(_ref5) {
172
+ var getState, setState, dispatch, result, currentState;
173
+ return _regenerator.default.wrap(function (_context3) {
174
+ while (1) switch (_context3.prev = _context3.next) {
175
+ case 0:
176
+ getState = _ref5.getState, setState = _ref5.setState, dispatch = _ref5.dispatch;
177
+ _context3.next = 1;
178
+ return _teamsClient.teamsClient.createTeamLink(teamId, newLink);
179
+ case 1:
180
+ result = _context3.sent;
181
+ currentState = getState();
182
+ if (!(currentState.teamId !== teamId)) {
183
+ _context3.next = 2;
184
+ break;
185
+ }
186
+ return _context3.abrupt("return", result);
187
+ case 2:
188
+ setState({
189
+ links: [].concat((0, _toConsumableArray2.default)(currentState.links), [result])
190
+ });
191
+ dispatch(actions.getTeamWebLinkIcons(teamId));
192
+ return _context3.abrupt("return", result);
193
+ case 3:
194
+ case "end":
195
+ return _context3.stop();
196
+ }
197
+ }, _callee3);
198
+ }));
199
+ return function (_x3) {
200
+ return _ref6.apply(this, arguments);
201
+ };
202
+ }();
203
+ },
204
+ updateTeamWebLink: function updateTeamWebLink(teamId, linkId, newLink) {
205
+ return /*#__PURE__*/function () {
206
+ var _ref8 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee4(_ref7) {
207
+ var getState, setState, dispatch, result, currentState, oldLink, urlChanged, updatedIcons;
208
+ return _regenerator.default.wrap(function (_context4) {
209
+ while (1) switch (_context4.prev = _context4.next) {
210
+ case 0:
211
+ getState = _ref7.getState, setState = _ref7.setState, dispatch = _ref7.dispatch;
212
+ _context4.next = 1;
213
+ return _teamsClient.teamsClient.updateTeamLink(teamId, linkId, newLink);
214
+ case 1:
215
+ result = _context4.sent;
216
+ currentState = getState();
217
+ if (!(currentState.teamId !== teamId)) {
218
+ _context4.next = 2;
219
+ break;
220
+ }
221
+ return _context4.abrupt("return", result);
222
+ case 2:
223
+ oldLink = currentState.links.find(function (link) {
224
+ return link.linkId === linkId;
225
+ });
226
+ urlChanged = oldLink && oldLink.linkUri !== result.linkUri;
227
+ setState({
228
+ links: currentState.links.map(function (link) {
229
+ return link.linkId === linkId ? result : link;
230
+ })
231
+ });
232
+ if (urlChanged) {
233
+ updatedIcons = currentState.linkIcons.filter(function (icon) {
234
+ return icon.linkUrl !== oldLink.linkUri;
235
+ });
236
+ setState({
237
+ linkIcons: updatedIcons
238
+ });
239
+ dispatch(actions.getTeamWebLinkIcons(teamId));
240
+ }
241
+ return _context4.abrupt("return", result);
242
+ case 3:
243
+ case "end":
244
+ return _context4.stop();
245
+ }
246
+ }, _callee4);
247
+ }));
248
+ return function (_x4) {
249
+ return _ref8.apply(this, arguments);
250
+ };
251
+ }();
252
+ },
253
+ removeWebLink: function removeWebLink(teamId, linkId) {
254
+ return /*#__PURE__*/function () {
255
+ var _ref0 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee5(_ref9) {
256
+ var getState, setState, currentState;
257
+ return _regenerator.default.wrap(function (_context5) {
258
+ while (1) switch (_context5.prev = _context5.next) {
259
+ case 0:
260
+ getState = _ref9.getState, setState = _ref9.setState;
261
+ currentState = getState();
262
+ if (!(currentState.teamId !== teamId)) {
263
+ _context5.next = 1;
264
+ break;
265
+ }
266
+ return _context5.abrupt("return");
267
+ case 1:
268
+ _context5.next = 2;
269
+ return _teamsClient.teamsClient.deleteTeamLink(teamId, linkId);
270
+ case 2:
271
+ setState({
272
+ links: currentState.links.filter(function (link) {
273
+ return link.linkId !== linkId;
274
+ })
275
+ });
276
+ case 3:
277
+ case "end":
278
+ return _context5.stop();
279
+ }
280
+ }, _callee5);
281
+ }));
282
+ return function (_x5) {
283
+ return _ref0.apply(this, arguments);
284
+ };
285
+ }();
286
+ },
287
+ fetchWebLinkTitle: function fetchWebLinkTitle(url) {
288
+ return /*#__PURE__*/function () {
289
+ var _ref10 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee6(_ref1) {
290
+ var setState, title, _t3;
291
+ return _regenerator.default.wrap(function (_context6) {
292
+ while (1) switch (_context6.prev = _context6.next) {
293
+ case 0:
294
+ setState = _ref1.setState;
295
+ if (url) {
296
+ _context6.next = 1;
297
+ break;
298
+ }
299
+ return _context6.abrupt("return", undefined);
300
+ case 1:
301
+ _context6.prev = 1;
302
+ _context6.next = 2;
303
+ return _teamsClient.teamsClient.getWebLinkTitle(url);
304
+ case 2:
305
+ title = _context6.sent;
306
+ return _context6.abrupt("return", title);
307
+ case 3:
308
+ _context6.prev = 3;
309
+ _t3 = _context6["catch"](1);
310
+ return _context6.abrupt("return", undefined);
311
+ case 4:
312
+ case "end":
313
+ return _context6.stop();
314
+ }
315
+ }, _callee6, null, [[1, 3]]);
316
+ }));
317
+ return function (_x6) {
318
+ return _ref10.apply(this, arguments);
319
+ };
320
+ }();
321
+ },
322
+ initialState: function initialState(state) {
323
+ return function (_ref11) {
324
+ var setState = _ref11.setState;
325
+ setState(_objectSpread(_objectSpread({}, _initialState2.initialState), state));
326
+ };
327
+ }
328
+ };