@elliemae/ds-chat 2.3.0-alpha.9 → 2.3.0-next.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 (492) hide show
  1. package/cjs/ChatDataTestids.js +28 -0
  2. package/cjs/index.d.js +2 -0
  3. package/cjs/index.js +44 -0
  4. package/cjs/parts/bubble/ChatBubble.js +74 -0
  5. package/cjs/parts/bubble/ChatBubbleArrow.js +80 -0
  6. package/cjs/parts/bubble/config/useValidateProps.js +31 -0
  7. package/cjs/parts/bubble/index.js +12 -0
  8. package/cjs/parts/bubble/props.js +57 -0
  9. package/cjs/parts/bubble/styled.js +53 -0
  10. package/cjs/parts/chat-card/ChatCard.js +46 -0
  11. package/cjs/parts/chat-card/config/useValidateProps.js +11 -0
  12. package/cjs/parts/chat-card/index.js +10 -0
  13. package/cjs/parts/chat-card/props.js +14 -0
  14. package/cjs/parts/chat-card/styled.js +36 -0
  15. package/cjs/parts/chat-composer/ChatContainerComposer.js +164 -0
  16. package/cjs/parts/chat-composer/config/useValidateProps.js +11 -0
  17. package/cjs/parts/chat-composer/index.js +10 -0
  18. package/cjs/parts/chat-composer/props.js +44 -0
  19. package/cjs/parts/chat-composer/styled.js +34 -0
  20. package/cjs/parts/chat-container/ChatContainer.js +175 -0
  21. package/cjs/parts/chat-container/config/useValidateProps.js +11 -0
  22. package/cjs/parts/chat-container/index.js +10 -0
  23. package/cjs/parts/chat-container/props.js +49 -0
  24. package/cjs/parts/chat-container/styled.js +29 -0
  25. package/cjs/parts/chat-container-header/ChatContainerHeader.js +39 -0
  26. package/cjs/parts/chat-container-header/helpers.js +31 -0
  27. package/cjs/parts/chat-container-header/styled.js +24 -0
  28. package/cjs/parts/chat-container-messages-list/ChatContainerMessagesList.js +369 -0
  29. package/cjs/parts/chat-container-messages-list/config/useValidateProps.js +11 -0
  30. package/cjs/parts/chat-container-messages-list/index.js +10 -0
  31. package/cjs/parts/chat-container-messages-list/props.js +30 -0
  32. package/cjs/parts/chat-container-messages-list/styled.js +38 -0
  33. package/cjs/parts/chat-empty-state/ChatEmptyState.js +54 -0
  34. package/cjs/parts/chat-empty-state/config/useValidateProps.js +11 -0
  35. package/cjs/parts/chat-empty-state/props.js +17 -0
  36. package/cjs/parts/chat-empty-state/styled.js +22 -0
  37. package/cjs/parts/chat-sidebar/SideBarChat.js +99 -0
  38. package/cjs/parts/chat-sidebar/config/useValidateProps.js +11 -0
  39. package/cjs/parts/chat-sidebar/index.js +10 -0
  40. package/cjs/parts/chat-sidebar/props.js +42 -0
  41. package/cjs/parts/chat-sidebar/styled.js +21 -0
  42. package/cjs/parts/floating-button/FloatingButton.js +35 -0
  43. package/cjs/parts/floating-button/index.js +9 -0
  44. package/cjs/parts/floating-button/props.js +20 -0
  45. package/cjs/parts/floating-button/styled.js +18 -0
  46. package/cjs/parts/floating-container/styled.js +17 -0
  47. package/cjs/parts/grid-influencer/InfluencerContainer.js +23 -0
  48. package/cjs/parts/grid-influencer/styled.js +21 -0
  49. package/cjs/parts/message-delimiter/MessageDelimiter.js +41 -0
  50. package/cjs/parts/message-delimiter/config/useValidateProps.js +11 -0
  51. package/cjs/parts/message-delimiter/index.js +10 -0
  52. package/cjs/parts/message-delimiter/props.js +23 -0
  53. package/cjs/parts/message-delimiter/styled.js +24 -0
  54. package/cjs/parts/sidebar-button/SidebarButton.js +56 -0
  55. package/cjs/parts/sidebar-button/index.js +2 -0
  56. package/cjs/parts/sidebar-button/props.js +30 -0
  57. package/cjs/parts/sidebar-button/styled.js +25 -0
  58. package/cjs/parts/system-message/SystemMessage.js +44 -0
  59. package/cjs/parts/system-message/config/useValidateProps.js +11 -0
  60. package/cjs/parts/system-message/index.js +10 -0
  61. package/cjs/parts/system-message/props.js +19 -0
  62. package/cjs/parts/system-message/style.js +32 -0
  63. package/cjs/parts/tile-button/TileButton.js +107 -0
  64. package/cjs/parts/tile-button/config/useValidateProps.js +11 -0
  65. package/cjs/parts/tile-button/index.js +10 -0
  66. package/cjs/parts/tile-button/props.js +55 -0
  67. package/cjs/parts/tile-button/styled.js +95 -0
  68. package/cjs/prop-types.js +33 -0
  69. package/cjs/styled.js +17 -0
  70. package/esm/ChatDataTestids.js +24 -0
  71. package/esm/index.d.js +1 -0
  72. package/esm/index.js +14 -0
  73. package/esm/parts/bubble/ChatBubble.js +64 -0
  74. package/esm/parts/bubble/ChatBubbleArrow.js +72 -0
  75. package/esm/parts/bubble/config/useValidateProps.js +27 -0
  76. package/esm/parts/bubble/index.js +2 -0
  77. package/esm/parts/bubble/props.js +46 -0
  78. package/esm/parts/bubble/styled.js +37 -0
  79. package/esm/parts/chat-card/ChatCard.js +37 -0
  80. package/esm/parts/chat-card/config/useValidateProps.js +7 -0
  81. package/esm/parts/chat-card/index.js +1 -0
  82. package/esm/parts/chat-card/props.js +10 -0
  83. package/esm/parts/chat-card/styled.js +23 -0
  84. package/esm/parts/chat-composer/ChatContainerComposer.js +153 -0
  85. package/esm/parts/chat-composer/config/useValidateProps.js +7 -0
  86. package/esm/parts/chat-composer/index.js +1 -0
  87. package/esm/parts/chat-composer/props.js +39 -0
  88. package/esm/parts/chat-composer/styled.js +22 -0
  89. package/esm/parts/chat-container/ChatContainer.js +162 -0
  90. package/esm/parts/chat-container/config/useValidateProps.js +7 -0
  91. package/esm/parts/chat-container/index.js +1 -0
  92. package/esm/parts/chat-container/props.js +44 -0
  93. package/esm/parts/chat-container/styled.js +18 -0
  94. package/esm/parts/chat-container-header/ChatContainerHeader.js +31 -0
  95. package/esm/parts/chat-container-header/helpers.js +23 -0
  96. package/esm/parts/chat-container-header/styled.js +14 -0
  97. package/esm/parts/chat-container-messages-list/ChatContainerMessagesList.js +357 -0
  98. package/esm/parts/chat-container-messages-list/config/useValidateProps.js +7 -0
  99. package/esm/parts/chat-container-messages-list/index.js +1 -0
  100. package/esm/parts/chat-container-messages-list/props.js +25 -0
  101. package/esm/parts/chat-container-messages-list/styled.js +25 -0
  102. package/esm/parts/chat-empty-state/ChatEmptyState.js +45 -0
  103. package/esm/parts/chat-empty-state/config/useValidateProps.js +7 -0
  104. package/esm/parts/chat-empty-state/props.js +12 -0
  105. package/esm/parts/chat-empty-state/styled.js +12 -0
  106. package/esm/parts/chat-sidebar/SideBarChat.js +88 -0
  107. package/esm/parts/chat-sidebar/config/useValidateProps.js +7 -0
  108. package/esm/parts/chat-sidebar/index.js +1 -0
  109. package/esm/parts/chat-sidebar/props.js +37 -0
  110. package/esm/parts/chat-sidebar/styled.js +12 -0
  111. package/esm/parts/floating-button/FloatingButton.js +27 -0
  112. package/esm/parts/floating-button/index.js +1 -0
  113. package/esm/parts/floating-button/props.js +15 -0
  114. package/esm/parts/floating-button/styled.js +10 -0
  115. package/esm/parts/floating-container/styled.js +9 -0
  116. package/esm/parts/grid-influencer/InfluencerContainer.js +14 -0
  117. package/esm/parts/grid-influencer/styled.js +12 -0
  118. package/esm/parts/message-delimiter/MessageDelimiter.js +32 -0
  119. package/esm/parts/message-delimiter/config/useValidateProps.js +7 -0
  120. package/esm/parts/message-delimiter/index.js +1 -0
  121. package/esm/parts/message-delimiter/props.js +18 -0
  122. package/esm/parts/message-delimiter/styled.js +14 -0
  123. package/esm/parts/sidebar-button/SidebarButton.js +45 -0
  124. package/esm/parts/sidebar-button/index.js +1 -0
  125. package/esm/parts/sidebar-button/props.js +21 -0
  126. package/esm/parts/sidebar-button/styled.js +15 -0
  127. package/esm/parts/system-message/SystemMessage.js +35 -0
  128. package/esm/parts/system-message/config/useValidateProps.js +7 -0
  129. package/esm/parts/system-message/index.js +1 -0
  130. package/esm/parts/system-message/props.js +14 -0
  131. package/esm/parts/system-message/style.js +20 -0
  132. package/esm/parts/tile-button/TileButton.js +97 -0
  133. package/esm/parts/tile-button/config/useValidateProps.js +7 -0
  134. package/esm/parts/tile-button/index.js +1 -0
  135. package/esm/parts/tile-button/props.js +50 -0
  136. package/esm/parts/tile-button/styled.js +78 -0
  137. package/esm/prop-types.js +28 -0
  138. package/esm/styled.js +8 -0
  139. package/package.json +163 -165
  140. package/{dist/types → types}/ChatDataTestids.d.ts +0 -0
  141. package/{dist/types → types}/index.d.d.ts +0 -0
  142. package/{dist/types → types}/index.d.ts +0 -0
  143. package/{dist/types → types}/parts/bubble/ChatBubble.d.ts +0 -0
  144. package/{dist/types → types}/parts/bubble/ChatBubbleArrow.d.ts +0 -0
  145. package/{dist/types → types}/parts/bubble/config/useValidateProps.d.ts +0 -0
  146. package/{dist/types → types}/parts/bubble/index.d.ts +0 -0
  147. package/{dist/types → types}/parts/bubble/props.d.ts +0 -0
  148. package/{dist/types → types}/parts/bubble/styled.d.ts +3 -3
  149. package/{dist/types → types}/parts/bubble/tests/ChatBubble.test.d.ts +0 -0
  150. package/{dist/types → types}/parts/chat-card/ChatCard.d.ts +0 -0
  151. package/{dist/types → types}/parts/chat-card/config/useValidateProps.d.ts +0 -0
  152. package/{dist/types → types}/parts/chat-card/index.d.ts +0 -0
  153. package/{dist/types → types}/parts/chat-card/props.d.ts +0 -0
  154. package/{dist/types → types}/parts/chat-card/styled.d.ts +1 -1
  155. package/{dist/types → types}/parts/chat-composer/ChatContainerComposer.d.ts +3 -0
  156. package/{dist/types → types}/parts/chat-composer/config/useValidateProps.d.ts +0 -0
  157. package/{dist/types → types}/parts/chat-composer/index.d.ts +0 -0
  158. package/types/parts/chat-composer/styled.d.ts +5 -0
  159. package/{dist/types → types}/parts/chat-composer/tests/ChatContainerComposer.test.d.ts +0 -0
  160. package/{dist/types → types}/parts/chat-container/ChatContainer.d.ts +0 -0
  161. package/{dist/types → types}/parts/chat-container/config/useValidateProps.d.ts +0 -0
  162. package/{dist/types → types}/parts/chat-container/index.d.ts +0 -0
  163. package/{dist/types → types}/parts/chat-container/styled.d.ts +2 -2
  164. package/{dist/types → types}/parts/chat-container/tests/ChatContainer.test.d.ts +0 -0
  165. package/{dist/types → types}/parts/chat-container-header/ChatContainerHeader.d.ts +0 -0
  166. package/{dist/types → types}/parts/chat-container-header/helpers.d.ts +0 -0
  167. package/{dist/types → types}/parts/chat-container-header/styled.d.ts +3 -3
  168. package/{dist/types → types}/parts/chat-container-messages-list/ChatContainerMessagesList.d.ts +0 -0
  169. package/{dist/types → types}/parts/chat-container-messages-list/config/useValidateProps.d.ts +0 -0
  170. package/{dist/types → types}/parts/chat-container-messages-list/index.d.ts +0 -0
  171. package/{dist/types → types}/parts/chat-container-messages-list/styled.d.ts +0 -0
  172. package/{dist/types → types}/parts/chat-empty-state/ChatEmptyState.d.ts +0 -0
  173. package/{dist/types → types}/parts/chat-empty-state/config/useValidateProps.d.ts +0 -0
  174. package/{dist/types → types}/parts/chat-empty-state/props.d.ts +0 -0
  175. package/{dist/types → types}/parts/chat-empty-state/styled.d.ts +1 -1
  176. package/{dist/types → types}/parts/chat-sidebar/SideBarChat.d.ts +0 -0
  177. package/{dist/types → types}/parts/chat-sidebar/config/useValidateProps.d.ts +0 -0
  178. package/{dist/types → types}/parts/chat-sidebar/index.d.ts +0 -0
  179. package/{dist/types → types}/parts/chat-sidebar/props.d.ts +0 -0
  180. package/types/parts/chat-sidebar/styled.d.ts +3 -0
  181. package/{dist/types → types}/parts/floating-button/FloatingButton.d.ts +0 -0
  182. package/{dist/types → types}/parts/floating-button/index.d.ts +0 -0
  183. package/{dist/types → types}/parts/floating-button/props.d.ts +0 -0
  184. package/{dist/types → types}/parts/floating-button/styled.d.ts +0 -0
  185. package/types/parts/floating-container/styled.d.ts +1 -0
  186. package/{dist/types → types}/parts/grid-influencer/InfluencerContainer.d.ts +0 -0
  187. package/types/parts/grid-influencer/styled.d.ts +3 -0
  188. package/{dist/types → types}/parts/message-delimiter/MessageDelimiter.d.ts +0 -0
  189. package/{dist/types → types}/parts/message-delimiter/config/useValidateProps.d.ts +0 -0
  190. package/{dist/types → types}/parts/message-delimiter/index.d.ts +0 -0
  191. package/{dist/types → types}/parts/message-delimiter/props.d.ts +0 -0
  192. package/{dist/types → types}/parts/message-delimiter/styled.d.ts +1 -1
  193. package/{dist/types → types}/parts/sidebar-button/SidebarButton.d.ts +0 -0
  194. package/{dist/types → types}/parts/sidebar-button/index.d.ts +0 -0
  195. package/{dist/types → types}/parts/sidebar-button/props.d.ts +0 -0
  196. package/{dist/types → types}/parts/sidebar-button/styled.d.ts +1 -1
  197. package/{dist/types → types}/parts/system-message/SystemMessage.d.ts +0 -0
  198. package/{dist/types → types}/parts/system-message/config/useValidateProps.d.ts +0 -0
  199. package/{dist/types → types}/parts/system-message/index.d.ts +0 -0
  200. package/{dist/types → types}/parts/system-message/props.d.ts +0 -0
  201. package/{dist/types → types}/parts/system-message/style.d.ts +2 -2
  202. package/{dist/types → types}/parts/tile-button/TileButton.d.ts +0 -0
  203. package/{dist/types → types}/parts/tile-button/config/useValidateProps.d.ts +0 -0
  204. package/{dist/types → types}/parts/tile-button/index.d.ts +0 -0
  205. package/{dist/types → types}/parts/tile-button/props.d.ts +0 -0
  206. package/{dist/types → types}/parts/tile-button/styled.d.ts +4 -4
  207. package/{dist/types → types}/prop-types.d.ts +0 -0
  208. package/{dist/types → types}/styled.d.ts +0 -0
  209. package/{dist/types → types}/tests/utils.d.ts +0 -0
  210. package/dist/cjs/ChatDataTestids.js +0 -56
  211. package/dist/cjs/ChatDataTestids.js.map +0 -7
  212. package/dist/cjs/index.d.js +0 -27
  213. package/dist/cjs/index.d.js.map +0 -7
  214. package/dist/cjs/index.js +0 -69
  215. package/dist/cjs/index.js.map +0 -7
  216. package/dist/cjs/parts/bubble/ChatBubble.js +0 -84
  217. package/dist/cjs/parts/bubble/ChatBubble.js.map +0 -7
  218. package/dist/cjs/parts/bubble/ChatBubbleArrow.js +0 -97
  219. package/dist/cjs/parts/bubble/ChatBubbleArrow.js.map +0 -7
  220. package/dist/cjs/parts/bubble/config/useValidateProps.js +0 -54
  221. package/dist/cjs/parts/bubble/config/useValidateProps.js.map +0 -7
  222. package/dist/cjs/parts/bubble/index.js +0 -38
  223. package/dist/cjs/parts/bubble/index.js.map +0 -7
  224. package/dist/cjs/parts/bubble/props.js +0 -69
  225. package/dist/cjs/parts/bubble/props.js.map +0 -7
  226. package/dist/cjs/parts/bubble/styled.js +0 -146
  227. package/dist/cjs/parts/bubble/styled.js.map +0 -7
  228. package/dist/cjs/parts/chat-card/ChatCard.js +0 -62
  229. package/dist/cjs/parts/chat-card/ChatCard.js.map +0 -7
  230. package/dist/cjs/parts/chat-card/config/useValidateProps.js +0 -38
  231. package/dist/cjs/parts/chat-card/config/useValidateProps.js.map +0 -7
  232. package/dist/cjs/parts/chat-card/index.js +0 -36
  233. package/dist/cjs/parts/chat-card/index.js.map +0 -7
  234. package/dist/cjs/parts/chat-card/props.js +0 -41
  235. package/dist/cjs/parts/chat-card/props.js.map +0 -7
  236. package/dist/cjs/parts/chat-card/styled.js +0 -71
  237. package/dist/cjs/parts/chat-card/styled.js.map +0 -7
  238. package/dist/cjs/parts/chat-composer/ChatContainerComposer.js +0 -157
  239. package/dist/cjs/parts/chat-composer/ChatContainerComposer.js.map +0 -7
  240. package/dist/cjs/parts/chat-composer/config/useValidateProps.js +0 -38
  241. package/dist/cjs/parts/chat-composer/config/useValidateProps.js.map +0 -7
  242. package/dist/cjs/parts/chat-composer/index.js +0 -36
  243. package/dist/cjs/parts/chat-composer/index.js.map +0 -7
  244. package/dist/cjs/parts/chat-composer/props.js +0 -79
  245. package/dist/cjs/parts/chat-composer/props.js.map +0 -7
  246. package/dist/cjs/parts/chat-composer/styled.js +0 -102
  247. package/dist/cjs/parts/chat-composer/styled.js.map +0 -7
  248. package/dist/cjs/parts/chat-container/ChatContainer.js +0 -157
  249. package/dist/cjs/parts/chat-container/ChatContainer.js.map +0 -7
  250. package/dist/cjs/parts/chat-container/config/useValidateProps.js +0 -38
  251. package/dist/cjs/parts/chat-container/config/useValidateProps.js.map +0 -7
  252. package/dist/cjs/parts/chat-container/index.js +0 -36
  253. package/dist/cjs/parts/chat-container/index.js.map +0 -7
  254. package/dist/cjs/parts/chat-container/props.js +0 -92
  255. package/dist/cjs/parts/chat-container/props.js.map +0 -7
  256. package/dist/cjs/parts/chat-container/styled.js +0 -110
  257. package/dist/cjs/parts/chat-container/styled.js.map +0 -7
  258. package/dist/cjs/parts/chat-container-header/ChatContainerHeader.js +0 -57
  259. package/dist/cjs/parts/chat-container-header/ChatContainerHeader.js.map +0 -7
  260. package/dist/cjs/parts/chat-container-header/helpers.js +0 -44
  261. package/dist/cjs/parts/chat-container-header/helpers.js.map +0 -7
  262. package/dist/cjs/parts/chat-container-header/styled.js +0 -59
  263. package/dist/cjs/parts/chat-container-header/styled.js.map +0 -7
  264. package/dist/cjs/parts/chat-container-messages-list/ChatContainerMessagesList.js +0 -307
  265. package/dist/cjs/parts/chat-container-messages-list/ChatContainerMessagesList.js.map +0 -7
  266. package/dist/cjs/parts/chat-container-messages-list/config/useValidateProps.js +0 -38
  267. package/dist/cjs/parts/chat-container-messages-list/config/useValidateProps.js.map +0 -7
  268. package/dist/cjs/parts/chat-container-messages-list/index.js +0 -36
  269. package/dist/cjs/parts/chat-container-messages-list/index.js.map +0 -7
  270. package/dist/cjs/parts/chat-container-messages-list/props.js +0 -68
  271. package/dist/cjs/parts/chat-container-messages-list/props.js.map +0 -7
  272. package/dist/cjs/parts/chat-container-messages-list/styled.js +0 -100
  273. package/dist/cjs/parts/chat-container-messages-list/styled.js.map +0 -7
  274. package/dist/cjs/parts/chat-empty-state/ChatEmptyState.js +0 -70
  275. package/dist/cjs/parts/chat-empty-state/ChatEmptyState.js.map +0 -7
  276. package/dist/cjs/parts/chat-empty-state/config/useValidateProps.js +0 -38
  277. package/dist/cjs/parts/chat-empty-state/config/useValidateProps.js.map +0 -7
  278. package/dist/cjs/parts/chat-empty-state/props.js +0 -44
  279. package/dist/cjs/parts/chat-empty-state/props.js.map +0 -7
  280. package/dist/cjs/parts/chat-empty-state/styled.js +0 -48
  281. package/dist/cjs/parts/chat-empty-state/styled.js.map +0 -7
  282. package/dist/cjs/parts/chat-sidebar/SideBarChat.js +0 -100
  283. package/dist/cjs/parts/chat-sidebar/SideBarChat.js.map +0 -7
  284. package/dist/cjs/parts/chat-sidebar/config/useValidateProps.js +0 -38
  285. package/dist/cjs/parts/chat-sidebar/config/useValidateProps.js.map +0 -7
  286. package/dist/cjs/parts/chat-sidebar/index.js +0 -36
  287. package/dist/cjs/parts/chat-sidebar/index.js.map +0 -7
  288. package/dist/cjs/parts/chat-sidebar/props.js +0 -84
  289. package/dist/cjs/parts/chat-sidebar/props.js.map +0 -7
  290. package/dist/cjs/parts/chat-sidebar/styled.js +0 -57
  291. package/dist/cjs/parts/chat-sidebar/styled.js.map +0 -7
  292. package/dist/cjs/parts/floating-button/FloatingButton.js +0 -48
  293. package/dist/cjs/parts/floating-button/FloatingButton.js.map +0 -7
  294. package/dist/cjs/parts/floating-button/index.js +0 -28
  295. package/dist/cjs/parts/floating-button/index.js.map +0 -7
  296. package/dist/cjs/parts/floating-button/props.js +0 -47
  297. package/dist/cjs/parts/floating-button/props.js.map +0 -7
  298. package/dist/cjs/parts/floating-button/styled.js +0 -64
  299. package/dist/cjs/parts/floating-button/styled.js.map +0 -7
  300. package/dist/cjs/parts/floating-container/styled.js +0 -47
  301. package/dist/cjs/parts/floating-container/styled.js.map +0 -7
  302. package/dist/cjs/parts/grid-influencer/InfluencerContainer.js +0 -43
  303. package/dist/cjs/parts/grid-influencer/InfluencerContainer.js.map +0 -7
  304. package/dist/cjs/parts/grid-influencer/styled.js +0 -56
  305. package/dist/cjs/parts/grid-influencer/styled.js.map +0 -7
  306. package/dist/cjs/parts/message-delimiter/MessageDelimiter.js +0 -55
  307. package/dist/cjs/parts/message-delimiter/MessageDelimiter.js.map +0 -7
  308. package/dist/cjs/parts/message-delimiter/config/useValidateProps.js +0 -38
  309. package/dist/cjs/parts/message-delimiter/config/useValidateProps.js.map +0 -7
  310. package/dist/cjs/parts/message-delimiter/index.js +0 -36
  311. package/dist/cjs/parts/message-delimiter/index.js.map +0 -7
  312. package/dist/cjs/parts/message-delimiter/props.js +0 -48
  313. package/dist/cjs/parts/message-delimiter/props.js.map +0 -7
  314. package/dist/cjs/parts/message-delimiter/styled.js +0 -53
  315. package/dist/cjs/parts/message-delimiter/styled.js.map +0 -7
  316. package/dist/cjs/parts/sidebar-button/SidebarButton.js +0 -55
  317. package/dist/cjs/parts/sidebar-button/SidebarButton.js.map +0 -7
  318. package/dist/cjs/parts/sidebar-button/index.js +0 -20
  319. package/dist/cjs/parts/sidebar-button/index.js.map +0 -7
  320. package/dist/cjs/parts/sidebar-button/props.js +0 -53
  321. package/dist/cjs/parts/sidebar-button/props.js.map +0 -7
  322. package/dist/cjs/parts/sidebar-button/styled.js +0 -69
  323. package/dist/cjs/parts/sidebar-button/styled.js.map +0 -7
  324. package/dist/cjs/parts/system-message/SystemMessage.js +0 -59
  325. package/dist/cjs/parts/system-message/SystemMessage.js.map +0 -7
  326. package/dist/cjs/parts/system-message/config/useValidateProps.js +0 -38
  327. package/dist/cjs/parts/system-message/config/useValidateProps.js.map +0 -7
  328. package/dist/cjs/parts/system-message/index.js +0 -36
  329. package/dist/cjs/parts/system-message/index.js.map +0 -7
  330. package/dist/cjs/parts/system-message/props.js +0 -46
  331. package/dist/cjs/parts/system-message/props.js.map +0 -7
  332. package/dist/cjs/parts/system-message/style.js +0 -75
  333. package/dist/cjs/parts/system-message/style.js.map +0 -7
  334. package/dist/cjs/parts/tile-button/TileButton.js +0 -137
  335. package/dist/cjs/parts/tile-button/TileButton.js.map +0 -7
  336. package/dist/cjs/parts/tile-button/config/useValidateProps.js +0 -38
  337. package/dist/cjs/parts/tile-button/config/useValidateProps.js.map +0 -7
  338. package/dist/cjs/parts/tile-button/index.js +0 -36
  339. package/dist/cjs/parts/tile-button/index.js.map +0 -7
  340. package/dist/cjs/parts/tile-button/props.js +0 -93
  341. package/dist/cjs/parts/tile-button/props.js.map +0 -7
  342. package/dist/cjs/parts/tile-button/styled.js +0 -247
  343. package/dist/cjs/parts/tile-button/styled.js.map +0 -7
  344. package/dist/cjs/prop-types.js +0 -60
  345. package/dist/cjs/prop-types.js.map +0 -7
  346. package/dist/cjs/styled.js +0 -45
  347. package/dist/cjs/styled.js.map +0 -7
  348. package/dist/cjs/tests/utils.js +0 -66
  349. package/dist/cjs/tests/utils.js.map +0 -7
  350. package/dist/esm/ChatDataTestids.js +0 -27
  351. package/dist/esm/ChatDataTestids.js.map +0 -7
  352. package/dist/esm/index.d.js +0 -2
  353. package/dist/esm/index.d.js.map +0 -7
  354. package/dist/esm/index.js +0 -40
  355. package/dist/esm/index.js.map +0 -7
  356. package/dist/esm/parts/bubble/ChatBubble.js +0 -64
  357. package/dist/esm/parts/bubble/ChatBubble.js.map +0 -7
  358. package/dist/esm/parts/bubble/ChatBubbleArrow.js +0 -68
  359. package/dist/esm/parts/bubble/ChatBubbleArrow.js.map +0 -7
  360. package/dist/esm/parts/bubble/config/useValidateProps.js +0 -25
  361. package/dist/esm/parts/bubble/config/useValidateProps.js.map +0 -7
  362. package/dist/esm/parts/bubble/index.js +0 -9
  363. package/dist/esm/parts/bubble/index.js.map +0 -7
  364. package/dist/esm/parts/bubble/props.js +0 -40
  365. package/dist/esm/parts/bubble/props.js.map +0 -7
  366. package/dist/esm/parts/bubble/styled.js +0 -117
  367. package/dist/esm/parts/bubble/styled.js.map +0 -7
  368. package/dist/esm/parts/chat-card/ChatCard.js +0 -33
  369. package/dist/esm/parts/chat-card/ChatCard.js.map +0 -7
  370. package/dist/esm/parts/chat-card/config/useValidateProps.js +0 -9
  371. package/dist/esm/parts/chat-card/config/useValidateProps.js.map +0 -7
  372. package/dist/esm/parts/chat-card/index.js +0 -7
  373. package/dist/esm/parts/chat-card/index.js.map +0 -7
  374. package/dist/esm/parts/chat-card/props.js +0 -12
  375. package/dist/esm/parts/chat-card/props.js.map +0 -7
  376. package/dist/esm/parts/chat-card/styled.js +0 -42
  377. package/dist/esm/parts/chat-card/styled.js.map +0 -7
  378. package/dist/esm/parts/chat-composer/ChatContainerComposer.js +0 -134
  379. package/dist/esm/parts/chat-composer/ChatContainerComposer.js.map +0 -7
  380. package/dist/esm/parts/chat-composer/config/useValidateProps.js +0 -9
  381. package/dist/esm/parts/chat-composer/config/useValidateProps.js.map +0 -7
  382. package/dist/esm/parts/chat-composer/index.js +0 -7
  383. package/dist/esm/parts/chat-composer/index.js.map +0 -7
  384. package/dist/esm/parts/chat-composer/props.js +0 -50
  385. package/dist/esm/parts/chat-composer/props.js.map +0 -7
  386. package/dist/esm/parts/chat-composer/styled.js +0 -73
  387. package/dist/esm/parts/chat-composer/styled.js.map +0 -7
  388. package/dist/esm/parts/chat-container/ChatContainer.js +0 -128
  389. package/dist/esm/parts/chat-container/ChatContainer.js.map +0 -7
  390. package/dist/esm/parts/chat-container/config/useValidateProps.js +0 -9
  391. package/dist/esm/parts/chat-container/config/useValidateProps.js.map +0 -7
  392. package/dist/esm/parts/chat-container/index.js +0 -7
  393. package/dist/esm/parts/chat-container/index.js.map +0 -7
  394. package/dist/esm/parts/chat-container/props.js +0 -65
  395. package/dist/esm/parts/chat-container/props.js.map +0 -7
  396. package/dist/esm/parts/chat-container/styled.js +0 -81
  397. package/dist/esm/parts/chat-container/styled.js.map +0 -7
  398. package/dist/esm/parts/chat-container-header/ChatContainerHeader.js +0 -32
  399. package/dist/esm/parts/chat-container-header/ChatContainerHeader.js.map +0 -7
  400. package/dist/esm/parts/chat-container-header/helpers.js +0 -15
  401. package/dist/esm/parts/chat-container-header/helpers.js.map +0 -7
  402. package/dist/esm/parts/chat-container-header/styled.js +0 -30
  403. package/dist/esm/parts/chat-container-header/styled.js.map +0 -7
  404. package/dist/esm/parts/chat-container-messages-list/ChatContainerMessagesList.js +0 -285
  405. package/dist/esm/parts/chat-container-messages-list/ChatContainerMessagesList.js.map +0 -7
  406. package/dist/esm/parts/chat-container-messages-list/config/useValidateProps.js +0 -9
  407. package/dist/esm/parts/chat-container-messages-list/config/useValidateProps.js.map +0 -7
  408. package/dist/esm/parts/chat-container-messages-list/index.js +0 -10
  409. package/dist/esm/parts/chat-container-messages-list/index.js.map +0 -7
  410. package/dist/esm/parts/chat-container-messages-list/props.js +0 -39
  411. package/dist/esm/parts/chat-container-messages-list/props.js.map +0 -7
  412. package/dist/esm/parts/chat-container-messages-list/styled.js +0 -71
  413. package/dist/esm/parts/chat-container-messages-list/styled.js.map +0 -7
  414. package/dist/esm/parts/chat-empty-state/ChatEmptyState.js +0 -41
  415. package/dist/esm/parts/chat-empty-state/ChatEmptyState.js.map +0 -7
  416. package/dist/esm/parts/chat-empty-state/config/useValidateProps.js +0 -9
  417. package/dist/esm/parts/chat-empty-state/config/useValidateProps.js.map +0 -7
  418. package/dist/esm/parts/chat-empty-state/props.js +0 -15
  419. package/dist/esm/parts/chat-empty-state/props.js.map +0 -7
  420. package/dist/esm/parts/chat-empty-state/styled.js +0 -19
  421. package/dist/esm/parts/chat-empty-state/styled.js.map +0 -7
  422. package/dist/esm/parts/chat-sidebar/SideBarChat.js +0 -71
  423. package/dist/esm/parts/chat-sidebar/SideBarChat.js.map +0 -7
  424. package/dist/esm/parts/chat-sidebar/config/useValidateProps.js +0 -9
  425. package/dist/esm/parts/chat-sidebar/config/useValidateProps.js.map +0 -7
  426. package/dist/esm/parts/chat-sidebar/index.js +0 -7
  427. package/dist/esm/parts/chat-sidebar/index.js.map +0 -7
  428. package/dist/esm/parts/chat-sidebar/props.js +0 -55
  429. package/dist/esm/parts/chat-sidebar/props.js.map +0 -7
  430. package/dist/esm/parts/chat-sidebar/styled.js +0 -28
  431. package/dist/esm/parts/chat-sidebar/styled.js.map +0 -7
  432. package/dist/esm/parts/floating-button/FloatingButton.js +0 -19
  433. package/dist/esm/parts/floating-button/FloatingButton.js.map +0 -7
  434. package/dist/esm/parts/floating-button/index.js +0 -3
  435. package/dist/esm/parts/floating-button/index.js.map +0 -7
  436. package/dist/esm/parts/floating-button/props.js +0 -18
  437. package/dist/esm/parts/floating-button/props.js.map +0 -7
  438. package/dist/esm/parts/floating-button/styled.js +0 -35
  439. package/dist/esm/parts/floating-button/styled.js.map +0 -7
  440. package/dist/esm/parts/floating-container/styled.js +0 -18
  441. package/dist/esm/parts/floating-container/styled.js.map +0 -7
  442. package/dist/esm/parts/grid-influencer/InfluencerContainer.js +0 -14
  443. package/dist/esm/parts/grid-influencer/InfluencerContainer.js.map +0 -7
  444. package/dist/esm/parts/grid-influencer/styled.js +0 -27
  445. package/dist/esm/parts/grid-influencer/styled.js.map +0 -7
  446. package/dist/esm/parts/message-delimiter/MessageDelimiter.js +0 -26
  447. package/dist/esm/parts/message-delimiter/MessageDelimiter.js.map +0 -7
  448. package/dist/esm/parts/message-delimiter/config/useValidateProps.js +0 -9
  449. package/dist/esm/parts/message-delimiter/config/useValidateProps.js.map +0 -7
  450. package/dist/esm/parts/message-delimiter/index.js +0 -10
  451. package/dist/esm/parts/message-delimiter/index.js.map +0 -7
  452. package/dist/esm/parts/message-delimiter/props.js +0 -19
  453. package/dist/esm/parts/message-delimiter/props.js.map +0 -7
  454. package/dist/esm/parts/message-delimiter/styled.js +0 -24
  455. package/dist/esm/parts/message-delimiter/styled.js.map +0 -7
  456. package/dist/esm/parts/sidebar-button/SidebarButton.js +0 -26
  457. package/dist/esm/parts/sidebar-button/SidebarButton.js.map +0 -7
  458. package/dist/esm/parts/sidebar-button/index.js +0 -2
  459. package/dist/esm/parts/sidebar-button/index.js.map +0 -7
  460. package/dist/esm/parts/sidebar-button/props.js +0 -24
  461. package/dist/esm/parts/sidebar-button/props.js.map +0 -7
  462. package/dist/esm/parts/sidebar-button/styled.js +0 -40
  463. package/dist/esm/parts/sidebar-button/styled.js.map +0 -7
  464. package/dist/esm/parts/system-message/SystemMessage.js +0 -30
  465. package/dist/esm/parts/system-message/SystemMessage.js.map +0 -7
  466. package/dist/esm/parts/system-message/config/useValidateProps.js +0 -9
  467. package/dist/esm/parts/system-message/config/useValidateProps.js.map +0 -7
  468. package/dist/esm/parts/system-message/index.js +0 -7
  469. package/dist/esm/parts/system-message/index.js.map +0 -7
  470. package/dist/esm/parts/system-message/props.js +0 -17
  471. package/dist/esm/parts/system-message/props.js.map +0 -7
  472. package/dist/esm/parts/system-message/style.js +0 -46
  473. package/dist/esm/parts/system-message/style.js.map +0 -7
  474. package/dist/esm/parts/tile-button/TileButton.js +0 -118
  475. package/dist/esm/parts/tile-button/TileButton.js.map +0 -7
  476. package/dist/esm/parts/tile-button/config/useValidateProps.js +0 -9
  477. package/dist/esm/parts/tile-button/config/useValidateProps.js.map +0 -7
  478. package/dist/esm/parts/tile-button/index.js +0 -7
  479. package/dist/esm/parts/tile-button/index.js.map +0 -7
  480. package/dist/esm/parts/tile-button/props.js +0 -64
  481. package/dist/esm/parts/tile-button/props.js.map +0 -7
  482. package/dist/esm/parts/tile-button/styled.js +0 -218
  483. package/dist/esm/parts/tile-button/styled.js.map +0 -7
  484. package/dist/esm/prop-types.js +0 -31
  485. package/dist/esm/prop-types.js.map +0 -7
  486. package/dist/esm/styled.js +0 -16
  487. package/dist/esm/styled.js.map +0 -7
  488. package/dist/esm/tests/utils.js +0 -37
  489. package/dist/esm/tests/utils.js.map +0 -7
  490. package/dist/types/parts/chat-sidebar/styled.d.ts +0 -3
  491. package/dist/types/parts/floating-container/styled.d.ts +0 -2
  492. package/dist/types/parts/grid-influencer/styled.d.ts +0 -3
@@ -0,0 +1,37 @@
1
+ import _jsx from '@babel/runtime/helpers/esm/jsx';
2
+ import 'core-js/modules/web.url.to-json.js';
3
+ import 'react';
4
+ import { describe } from 'react-desc';
5
+ import { SimpleTruncatedTooltipText } from '@elliemae/ds-truncated-tooltip-text';
6
+ import { propTypes } from './props.js';
7
+ import { useValidateProps } from './config/useValidateProps.js';
8
+ import { Wrapper, MainContent, Title, Content, Time, RightAddon } from './styled.js';
9
+
10
+ const ChatCard = props => {
11
+ useValidateProps(props, ChatCardWithSchema.toJSON());
12
+ const {
13
+ title,
14
+ content,
15
+ time,
16
+ rightAddon
17
+ } = props;
18
+ return /*#__PURE__*/_jsx(Wrapper, {
19
+ cols: ['1fr', 'auto'],
20
+ "data-testid": "chat-card-wrapper"
21
+ }, void 0, /*#__PURE__*/_jsx(MainContent, {}, void 0, /*#__PURE__*/_jsx(Title, {
22
+ "data-testid": "chat-card-title"
23
+ }, void 0, title), /*#__PURE__*/_jsx(Content, {
24
+ "data-testid": "chat-card-content"
25
+ }, void 0, /*#__PURE__*/_jsx(SimpleTruncatedTooltipText, {
26
+ value: content
27
+ })), time && /*#__PURE__*/_jsx(Time, {
28
+ "data-testid": "chat-card-time"
29
+ }, void 0, time)), rightAddon && /*#__PURE__*/_jsx(RightAddon, {
30
+ "data-testid": "chat-card-right-addon"
31
+ }, void 0, rightAddon));
32
+ };
33
+
34
+ const ChatCardWithSchema = describe(ChatCard);
35
+ ChatCardWithSchema.propTypes = propTypes;
36
+
37
+ export { ChatCard, ChatCardWithSchema };
@@ -0,0 +1,7 @@
1
+ import { useValidatePropTypes } from '@elliemae/ds-props-helpers';
2
+
3
+ const useValidateProps = (props, schema) => {
4
+ useValidatePropTypes(props, schema);
5
+ };
6
+
7
+ export { useValidateProps };
@@ -0,0 +1 @@
1
+ export { ChatCard, ChatCardWithSchema } from './ChatCard.js';
@@ -0,0 +1,10 @@
1
+ import { PropTypes } from 'react-desc';
2
+
3
+ const propTypes = {
4
+ title: PropTypes.string.isRequired.description("Card's title"),
5
+ content: PropTypes.string.description("Card's content"),
6
+ time: PropTypes.string.description('Time'),
7
+ rightAddon: PropTypes.element.description('Right addon, badge or icon')
8
+ };
9
+
10
+ export { propTypes };
@@ -0,0 +1,23 @@
1
+ import styled from 'styled-components';
2
+ import { Grid } from '@elliemae/ds-grid';
3
+
4
+ const Wrapper = /*#__PURE__*/styled(Grid).withConfig({
5
+ componentId: "sc-s0g4hn-0"
6
+ })(["min-width:248px;border:1px;border-bottom:1px solid #ccc;padding:12px 12px;"]);
7
+ const MainContent = /*#__PURE__*/styled.div.withConfig({
8
+ componentId: "sc-s0g4hn-1"
9
+ })([""]);
10
+ const Title = /*#__PURE__*/styled.p.withConfig({
11
+ componentId: "sc-s0g4hn-2"
12
+ })(["font-size:16px;font-weight:600;margin:0;"]);
13
+ const Content = /*#__PURE__*/styled.p.withConfig({
14
+ componentId: "sc-s0g4hn-3"
15
+ })(["font-size:12px;font-weight:400;line-height:1;margin:0;"]);
16
+ const Time = /*#__PURE__*/styled.p.withConfig({
17
+ componentId: "sc-s0g4hn-4"
18
+ })(["font-size:12px;font-weight:100;margin:0;margin-top:8px;font-weight:", ";color:", ";"], props => props.theme.fontWeights.regular, props => props.theme.colors.neutral['500']);
19
+ const RightAddon = /*#__PURE__*/styled.div.withConfig({
20
+ componentId: "sc-s0g4hn-5"
21
+ })(["height:fit-content;margin-left:12px;"]);
22
+
23
+ export { Content, MainContent, RightAddon, Time, Title, Wrapper };
@@ -0,0 +1,153 @@
1
+ import _jsx from '@babel/runtime/helpers/esm/jsx';
2
+ import _defineProperty from '@babel/runtime/helpers/esm/defineProperty';
3
+ import 'core-js/modules/web.url.to-json.js';
4
+ import 'core-js/modules/web.dom-collections.iterator.js';
5
+ import 'core-js/modules/esnext.async-iterator.filter.js';
6
+ import 'core-js/modules/esnext.iterator.constructor.js';
7
+ import 'core-js/modules/esnext.iterator.filter.js';
8
+ import 'core-js/modules/esnext.async-iterator.for-each.js';
9
+ import 'core-js/modules/esnext.iterator.for-each.js';
10
+ import React from 'react';
11
+ import { Grid } from '@elliemae/ds-grid';
12
+ import { describe } from 'react-desc';
13
+ import { PaperAirplane } from '@elliemae/ds-icons';
14
+ import { StyledChatContainerContentComposer, StyledComposerInput, StyledComposerButton, StyledCounterArea, StyledCounterErrorA11y } from './styled.js';
15
+ import { useValidateProps } from './config/useValidateProps.js';
16
+ import { composerProps, defaultComposerPros } from './props.js';
17
+ import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
18
+
19
+ var _PaperAirplane, _Grid;
20
+
21
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
22
+
23
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
24
+
25
+ const ChatComposer = props => {
26
+ var _input$current;
27
+
28
+ useValidateProps(props, ChatComposerWithSchema.toJSON());
29
+ const {
30
+ inputValue,
31
+ onChange,
32
+ onResize,
33
+ onSend,
34
+ onFocus,
35
+ onBlur,
36
+ onKeyDown,
37
+ maxHeight = 300,
38
+ placeholder,
39
+ inputMaxLength,
40
+ maxLengthMessage,
41
+ ariaMaxLengthMessage,
42
+ buttonDisabled,
43
+ dataTestid,
44
+ actionRef
45
+ } = props;
46
+ const COMPOSER_MIN_HEIGHT = 32;
47
+ const input = React.useRef();
48
+ const inputSize = React.useRef();
49
+ const inputSend = React.useRef();
50
+ const [height, setHeight] = React.useState(32);
51
+ const internalMaxHeight = React.useMemo(() => maxHeight - 24, [maxHeight]);
52
+ const [showScroll, setShowScroll] = React.useState(true);
53
+ React.useEffect(() => {
54
+ var _inputSize$current, _inputSize$current2, _inputSize$current3, _inputSize$current4;
55
+
56
+ const newHeight = ((_inputSize$current = inputSize.current) === null || _inputSize$current === void 0 ? void 0 : _inputSize$current.scrollHeight) > internalMaxHeight ? internalMaxHeight : (_inputSize$current2 = inputSize.current) === null || _inputSize$current2 === void 0 ? void 0 : _inputSize$current2.scrollHeight;
57
+ if (newHeight !== height && newHeight > COMPOSER_MIN_HEIGHT) onResize(newHeight);
58
+ setHeight(newHeight);
59
+ setShowScroll(((_inputSize$current3 = inputSize.current) === null || _inputSize$current3 === void 0 ? void 0 : _inputSize$current3.scrollHeight) - ((_inputSize$current4 = inputSize.current) === null || _inputSize$current4 === void 0 ? void 0 : _inputSize$current4.clientHeight) > 5);
60
+ }, [inputValue, internalMaxHeight, height, onResize]);
61
+ React.useEffect(() => {
62
+ if (actionRef && actionRef.current) {
63
+ actionRef.current.focusToComposer = () => {
64
+ input.current.focus();
65
+ };
66
+
67
+ actionRef.current.focusToSend = () => {
68
+ inputSend.current.focus();
69
+ };
70
+ }
71
+ }, [actionRef]);
72
+ const handleChange = React.useCallback(e => {
73
+ onChange(e.target.value);
74
+ }, [onChange]);
75
+ const heightProps = {
76
+ height,
77
+ overflow: showScroll ? 'auto' : 'hidden'
78
+ };
79
+ const inputLength = String(inputValue || '').length;
80
+ const hasError = React.useMemo(() => inputLength > inputMaxLength, [inputLength, inputMaxLength]);
81
+ return /*#__PURE__*/_jsx(StyledChatContainerContentComposer, {
82
+ rows: ['auto', '15px'],
83
+ maxHeight: "".concat(maxHeight, "px"),
84
+ "data-testid": dataTestid
85
+ }, void 0, /*#__PURE__*/_jsx(Grid, {
86
+ cols: ['1fr', '24px'],
87
+ style: {
88
+ height: heightProps.height
89
+ },
90
+ justifyContent: "center",
91
+ alignItems: "flex-end",
92
+ gutter: "xxs"
93
+ }, void 0, /*#__PURE__*/jsx(StyledComposerInput, {
94
+ ref: input,
95
+ onChange: handleChange,
96
+ style: _objectSpread({}, heightProps),
97
+ value: inputValue,
98
+ onFocus: onFocus,
99
+ onBlur: onBlur,
100
+ onKeyDown: onKeyDown,
101
+ placeholder: placeholder,
102
+ "aria-label": "Message to send",
103
+ "data-testid": "chat-composer-textarea",
104
+ name: "chat-composer-textarea",
105
+ id: "chat-composer-textarea"
106
+ }), /*#__PURE__*/_jsx(Grid, {
107
+ height: "32px",
108
+ alignItems: "center"
109
+ }, void 0, /*#__PURE__*/_jsx(StyledComposerButton, {
110
+ buttonType: "text",
111
+ icon: _PaperAirplane || (_PaperAirplane = /*#__PURE__*/_jsx(PaperAirplane, {
112
+ width: 18,
113
+ height: 18
114
+ })),
115
+ onClick: onSend,
116
+ size: "s",
117
+ disabled: !inputValue || buttonDisabled || hasError,
118
+ "data-testid": "chat-composer-send-button",
119
+ "aria-label": "Send",
120
+ innerRef: inputSend
121
+ }))), /*#__PURE__*/jsx(StyledComposerInput, {
122
+ ref: inputSize,
123
+ style: {
124
+ height: 32,
125
+ visibility: 'hidden',
126
+ pointerEvents: 'none',
127
+ position: 'absolute',
128
+ top: 0,
129
+ width: (_input$current = input.current) === null || _input$current === void 0 ? void 0 : _input$current.clientWidth
130
+ },
131
+ onChange: handleChange,
132
+ value: inputValue
133
+ }), /*#__PURE__*/_jsx(Grid, {
134
+ cols: ['1fr', '24px'],
135
+ justifyContent: "flex-end",
136
+ alignItems: "center",
137
+ gutter: "xxs",
138
+ pb: "xxs"
139
+ }, void 0, /*#__PURE__*/_jsx(StyledCounterArea, {
140
+ hasError: hasError,
141
+ "data-testid": "composer-counter-area"
142
+ }, void 0, inputMaxLength && hasError ? /*#__PURE__*/jsxs(Fragment, {
143
+ children: [/*#__PURE__*/_jsx(StyledCounterErrorA11y, {
144
+ role: "alert"
145
+ }, void 0, ariaMaxLengthMessage || "You have entered ".concat(inputLength, " characters and have exceeded the limit by ").concat(inputLength - inputMaxLength, ". Please limit to less than ").concat(inputMaxLength, " characters. ")), maxLengthMessage || "Please limit to less than ".concat(inputMaxLength, " characters. ")]
146
+ }) : '', inputMaxLength ? " ".concat(inputLength, " / ").concat(inputMaxLength) : ''), _Grid || (_Grid = /*#__PURE__*/_jsx(Grid, {}))));
147
+ };
148
+
149
+ ChatComposer.defaultProps = defaultComposerPros;
150
+ const ChatComposerWithSchema = describe(ChatComposer);
151
+ ChatComposerWithSchema.propTypes = composerProps;
152
+
153
+ export { ChatComposer, ChatComposerWithSchema };
@@ -0,0 +1,7 @@
1
+ import { useValidatePropTypes } from '@elliemae/ds-props-helpers';
2
+
3
+ const useValidateProps = (props, schema) => {
4
+ useValidatePropTypes(props, schema);
5
+ };
6
+
7
+ export { useValidateProps };
@@ -0,0 +1 @@
1
+ export { ChatComposer, ChatComposerWithSchema } from './ChatContainerComposer.js';
@@ -0,0 +1,39 @@
1
+ import { PropTypes } from 'react-desc';
2
+ import { noop } from 'lodash';
3
+
4
+ const defaultComposerPros = {
5
+ placeholder: 'Type your message',
6
+ inputValue: '',
7
+ ariaMaxLengthMessage: '',
8
+ onChange: noop,
9
+ onResize: noop,
10
+ onSend: noop,
11
+ onFocus: noop,
12
+ onBlur: noop,
13
+ onKeyDown: noop,
14
+ maxHeight: 0,
15
+ inputMaxLength: undefined,
16
+ maxLengthMessage: undefined,
17
+ buttonDisabled: false,
18
+ dataTestid: 'ds-chat-composer',
19
+ actionRef: noop
20
+ };
21
+ const composerProps = {
22
+ placeholder: PropTypes.string.description('Input Placeholder').defaultValue(defaultComposerPros.placeholder),
23
+ inputValue: PropTypes.string.description('Input value').defaultValue(defaultComposerPros.inputValue),
24
+ ariaMaxLengthMessage: PropTypes.string.description('Aria message for Max length message when exceeded').defaultValue(defaultComposerPros.maxLengthMessage),
25
+ maxLengthMessage: PropTypes.string.description('Max length message').defaultValue(defaultComposerPros.maxLengthMessage),
26
+ onChange: PropTypes.func.description('Called when the user types').defaultValue(defaultComposerPros.onChange),
27
+ onResize: PropTypes.func.description('Called the input changes his height').defaultValue(defaultComposerPros.onResize),
28
+ onSend: PropTypes.func.description('Called when the click send').defaultValue(defaultComposerPros.onSend),
29
+ onFocus: PropTypes.func.description('Input focus').defaultValue(defaultComposerPros.onFocus),
30
+ onBlur: PropTypes.func.description('Input blur').defaultValue(defaultComposerPros.onBlur),
31
+ onKeyDown: PropTypes.func.description('Input on key down').defaultValue(defaultComposerPros.onKeyDown),
32
+ maxHeight: PropTypes.number.description('Max height of the composer. Use 0 for no limit').defaultValue(defaultComposerPros.onBlur),
33
+ inputMaxLength: PropTypes.number.description('Max length of the composer. `undefined` for no limit').defaultValue(defaultComposerPros.inputMaxLength),
34
+ buttonDisabled: PropTypes.bool.description('Control the disabled for the send button').defaultValue(defaultComposerPros.buttonDisabled),
35
+ dataTestid: PropTypes.string.description('Data testid').defaultValue(defaultComposerPros.placeholder),
36
+ actionRef: PropTypes.object.description("Reference: \n { \n scrollToIndex: (n: number) => void,\n getMessagesInView: () => number[],\n focusToIndex: (n: number) => void,\n focusToList: () => void,\n focusToComposer: () => void,\n focusToSend: () => void,\n }\n \n ").defaultValue(defaultComposerPros.actionRef)
37
+ };
38
+
39
+ export { composerProps, defaultComposerPros };
@@ -0,0 +1,22 @@
1
+ import styled from 'styled-components';
2
+ import { Grid } from '@elliemae/ds-grid';
3
+ import { DSButton } from '@elliemae/ds-button';
4
+
5
+ // Composer
6
+ const StyledChatContainerContentComposer = /*#__PURE__*/styled(Grid).withConfig({
7
+ componentId: "sc-1ahwpce-0"
8
+ })(["width:100%;min-height:56px;background:", ";padding:", ";padding-bottom:3px;padding-top:6px;padding-left:", ";max-height:", ";border-top:1px solid #cbcfd7;"], props => props.theme.colors.neutral['050'], props => props.theme.space.xxs, props => props.theme.space.xs, props => props.maxHeight);
9
+ const StyledComposerInput = /*#__PURE__*/styled.textarea.withConfig({
10
+ componentId: "sc-1ahwpce-1"
11
+ })(["padding:", ";resize:none;min-height:32px;border-radius:2px;border:solid 1px #cbcfd7;color:#25292f;height:", ";min-width:244px;overflow-y:auto;font-size:13px;font-weight:400;line-height:1;transition:height 0.05s;&:focus{outline:none;border:1px solid ", ";box-shadow:inset 0 0 0 1px #8cc2ed;border-radius:2px;}"], props => props.theme.space.xxs, props => typeof props.height === 'number' ? "".concat(props.height, "px") : props.height, props => props.theme.colors.brand[600]);
12
+ const StyledComposerButton = /*#__PURE__*/styled(DSButton).withConfig({
13
+ componentId: "sc-1ahwpce-2"
14
+ })(["&:disabled{background:none;svg{fill:#5d6775;}}svg{fill:", ";}&:focus{background:", ";}"], props => props.theme.colors.brand[600], props => props.theme.colors.brand[200]);
15
+ const StyledCounterArea = /*#__PURE__*/styled(Grid).withConfig({
16
+ componentId: "sc-1ahwpce-3"
17
+ })(["text-align:right;font-size:11px;height:15px;align-items:center;font-style:italic;", " position:relative;"], props => props.hasError ? "color:".concat(props.theme.colors.danger[900], ";") : '');
18
+ const StyledCounterErrorA11y = /*#__PURE__*/styled.span.withConfig({
19
+ componentId: "sc-1ahwpce-4"
20
+ })(["width:1px;height:1px;position:absolute;clip:rect(1px,1px,1px,1px);"]);
21
+
22
+ export { StyledChatContainerContentComposer, StyledComposerButton, StyledComposerInput, StyledCounterArea, StyledCounterErrorA11y };
@@ -0,0 +1,162 @@
1
+ import 'core-js/modules/esnext.async-iterator.filter.js';
2
+ import 'core-js/modules/esnext.iterator.constructor.js';
3
+ import 'core-js/modules/esnext.iterator.filter.js';
4
+ import 'core-js/modules/esnext.async-iterator.for-each.js';
5
+ import 'core-js/modules/esnext.iterator.for-each.js';
6
+ import _jsx from '@babel/runtime/helpers/esm/jsx';
7
+ import _defineProperty from '@babel/runtime/helpers/esm/defineProperty';
8
+ import React from 'react';
9
+ import { noop } from 'lodash';
10
+ import { describe } from 'react-desc';
11
+ import DSIndeterminateProgressIndicator from '@elliemae/ds-indeterminate-progress-indicator';
12
+ import DSBanner, { BANNER_TYPES } from '@elliemae/ds-banner';
13
+ import { ChatComposer } from '../chat-composer/ChatContainerComposer.js';
14
+ import { ChatContainerMessagesList } from '../chat-container-messages-list/ChatContainerMessagesList.js';
15
+ import { containerProps, defaultProps } from './props.js';
16
+ import { StyledIndicatorContainer, StyledChatContainerContent, MobileStyledChatContainerContent } from './styled.js';
17
+ import { useValidateProps } from './config/useValidateProps.js';
18
+ import { jsxs, jsx } from 'react/jsx-runtime';
19
+
20
+ var _DSIndeterminateProgr;
21
+
22
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
23
+
24
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
25
+
26
+ const ChatContainer = props => {
27
+ var _messagesListProps$me2, _containerRef$current;
28
+
29
+ useValidateProps(props, containerProps);
30
+ const {
31
+ sendingText,
32
+ sendingMessages,
33
+ bannerPosition,
34
+ bannerProps,
35
+ messagesListProps,
36
+ composerProps,
37
+ composerProps: {
38
+ onResize: onComposerResize,
39
+ onKeyDown: onComposerKeyDown
40
+ },
41
+ actionRef,
42
+ device,
43
+ isLoading,
44
+ hasMoreItems,
45
+ getMoreMessages,
46
+ ariaLabel
47
+ } = props;
48
+ const bannerRef = React.useRef({
49
+ focusOnWrapper: noop,
50
+ focusOnLink: noop
51
+ });
52
+ const containerRef = React.useRef();
53
+ const listRef = React.useRef({
54
+ scrollToIndex: noop
55
+ });
56
+ const onResize = React.useCallback(height => {
57
+ if (onComposerResize) onComposerResize(height);
58
+ /*
59
+ setTimeout is used to equal the animation duration from the
60
+ composer text area when increase its size
61
+ */
62
+
63
+ setTimeout(() => {
64
+ actionRef.current.scrollToIndex(messagesListProps.messages.length - 1, {
65
+ align: 'start'
66
+ });
67
+ }, 50);
68
+ }, [onComposerResize, messagesListProps.messages, actionRef]);
69
+ const Container = device === 'desktop' ? StyledChatContainerContent : MobileStyledChatContainerContent;
70
+ const handleTabs = React.useCallback(e => {
71
+ if (onComposerKeyDown) onComposerKeyDown(e);else {
72
+ const ref = actionRef || listRef;
73
+
74
+ if (e.shiftKey && e.key === 'Tab') {
75
+ var _messagesListProps$me;
76
+
77
+ if (((_messagesListProps$me = messagesListProps.messages) === null || _messagesListProps$me === void 0 ? void 0 : _messagesListProps$me.length) > 0) {
78
+ e.preventDefault();
79
+
80
+ if (['top', 'bottom'].includes(bannerPosition)) {
81
+ bannerRef.current.focusOnWrapper();
82
+ } else {
83
+ var _ref$current;
84
+
85
+ const last = ref.current.getMessagesInView().pop();
86
+ (_ref$current = ref.current) === null || _ref$current === void 0 ? void 0 : _ref$current.focusToIndexWithoutScroll(last);
87
+ }
88
+ }
89
+ }
90
+ }
91
+ }, [actionRef, onComposerKeyDown, bannerPosition, (_messagesListProps$me2 = messagesListProps.messages) === null || _messagesListProps$me2 === void 0 ? void 0 : _messagesListProps$me2.length]); // Map actions
92
+
93
+ React.useEffect(() => {
94
+ if (actionRef && actionRef.current) {
95
+ actionRef.current.focusOnBanner = bannerRef.current.focusOnWrapper;
96
+ actionRef.current.focusOnBannerLink = bannerRef.current.focusOnLink;
97
+ }
98
+ }, [actionRef]);
99
+ return /*#__PURE__*/jsxs(Container, {
100
+ rows: ['minmax(0, 1fr)', 'auto'],
101
+ ref: containerRef,
102
+ role: "region",
103
+ "aria-label": ariaLabel,
104
+ children: [/*#__PURE__*/_jsx("div", {
105
+ style: {
106
+ position: 'relative',
107
+ overflow: 'hidden'
108
+ }
109
+ }, void 0, /*#__PURE__*/jsx(ChatContainerMessagesList, _objectSpread(_objectSpread({}, messagesListProps), {}, {
110
+ actionRef: actionRef || listRef,
111
+ isLoading: isLoading,
112
+ hasMoreItems: hasMoreItems,
113
+ getMoreMessages: getMoreMessages,
114
+ sendingMessages: sendingMessages,
115
+ sendingText: sendingText,
116
+ bannerPosition: bannerPosition,
117
+ bannerRef: bannerRef
118
+ })), ['top', 'bottom'].includes(isLoading) ? /*#__PURE__*/_jsx(StyledIndicatorContainer, {
119
+ isLoading: isLoading,
120
+ "data-testid": "ds-chat-loading-indicator"
121
+ }, void 0, _DSIndeterminateProgr || (_DSIndeterminateProgr = /*#__PURE__*/_jsx(DSIndeterminateProgressIndicator, {
122
+ processing: true,
123
+ title: "Loading"
124
+ }))) : null, /*#__PURE__*/_jsx(StyledIndicatorContainer, {
125
+ linear: true,
126
+ isLoading: bannerPosition
127
+ }, void 0, /*#__PURE__*/_jsx(DSBanner, {
128
+ showCloseButton: true,
129
+ label: bannerProps.label || 'Unread messages',
130
+ containerProps: {
131
+ id: 'ds-chat-banner'
132
+ },
133
+ actionLink: {
134
+ label: bannerProps.viewLabel || 'View',
135
+ onClick: bannerProps.onView
136
+ },
137
+ onClose: bannerProps.onClose,
138
+ isOpen: true,
139
+ type: bannerProps.type || BANNER_TYPES.INFO,
140
+ actionRef: bannerRef
141
+ })), sendingMessages && sendingMessages.length > 0 ? /*#__PURE__*/_jsx(StyledIndicatorContainer, {
142
+ isLoading: "bottom",
143
+ linear: true,
144
+ "data-testid": "ds-chat-loading-indicator"
145
+ }, void 0, /*#__PURE__*/_jsx(DSIndeterminateProgressIndicator, {
146
+ processing: true,
147
+ title: sendingText,
148
+ lineOnly: true
149
+ })) : null), /*#__PURE__*/jsx(ChatComposer, _objectSpread(_objectSpread({}, composerProps), {}, {
150
+ onKeyDown: handleTabs,
151
+ onResize: onResize,
152
+ maxHeight: (((_containerRef$current = containerRef.current) === null || _containerRef$current === void 0 ? void 0 : _containerRef$current.clientHeight) || 0) / 2,
153
+ actionRef: actionRef || listRef
154
+ }))]
155
+ });
156
+ };
157
+
158
+ ChatContainer.defaultProps = defaultProps;
159
+ const ChatContainerWithSchema = describe(ChatContainer);
160
+ ChatContainerWithSchema.propTypes = containerProps;
161
+
162
+ export { ChatContainer, ChatContainerWithSchema };
@@ -0,0 +1,7 @@
1
+ import { useValidateTypescriptPropTypes } from '@elliemae/ds-props-helpers';
2
+
3
+ const useValidateProps = (props, propTypes) => {
4
+ useValidateTypescriptPropTypes(props, propTypes);
5
+ };
6
+
7
+ export { useValidateProps };
@@ -0,0 +1 @@
1
+ export { ChatContainer, ChatContainerWithSchema } from './ChatContainer.js';
@@ -0,0 +1,44 @@
1
+ import { PropTypes } from 'react-desc';
2
+ import { noop } from 'lodash';
3
+ import { BANNER_TYPES } from '@elliemae/ds-banner';
4
+ import { defaultProps as defaultProps$1 } from '../chat-container-messages-list/props.js';
5
+ import { defaultComposerPros } from '../chat-composer/props.js';
6
+
7
+ const defaultProps = {
8
+ messagesListProps: defaultProps$1,
9
+ composerProps: defaultComposerPros,
10
+ actionRef: undefined,
11
+ autoScroll: false,
12
+ device: 'desktop',
13
+ isLoading: undefined,
14
+ hasMoreItems: undefined,
15
+ getMoreMessages: noop,
16
+ bannerPosition: undefined,
17
+ bannerProps: {
18
+ type: BANNER_TYPES.INFO,
19
+ label: 'Unread Messages',
20
+ viewLabel: 'View',
21
+ onView: noop,
22
+ onClose: noop
23
+ },
24
+ sendingMessages: undefined,
25
+ sendingText: 'Sending',
26
+ ariaLabel: 'Chat window'
27
+ };
28
+ const containerProps = {
29
+ messagesListProps: PropTypes.object.description('ChatMessageList props "messages" / "onScrollEnds"').defaultValue(defaultProps.messagesListProps),
30
+ composerProps: PropTypes.object.description('Composer configuration').defaultValue(defaultProps.composerProps),
31
+ autoScroll: PropTypes.bool.description('Auto scroll to bottom on resize').defaultValue(defaultProps.autoScroll),
32
+ device: PropTypes.string.description('Option to render mobile or desktop style composer').defaultValue(defaultProps.device),
33
+ isLoading: PropTypes.oneOf(['top', 'bottom', undefined]).description('Show Loading messages indicator at the `top` or `bottom` of the container'),
34
+ hasMoreItems: PropTypes.oneOf(['top', 'bottom', undefined]).description('Show Load More button at the `top` or `bottom` of the container'),
35
+ getMoreMessages: PropTypes.func.description('Called when the user clicks on load more').defaultValue(defaultProps.getMoreMessages),
36
+ bannerPosition: PropTypes.oneOf(['top', 'bottom', undefined]).description('Show Loading messages indicator at the `top` or `bottom` of the container'),
37
+ bannerProps: PropTypes.object.description("Banner configuration:\n label: string;\n viewLabel: string;\n type: BANNER_TYPES;\n onView: () => void;\n onClose: () => void;\n ").defaultValue(defaultProps.bannerProps),
38
+ sendingMessages: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.string), PropTypes.arrayOf(PropTypes.number)]).description('Array of ids of sending messages').defaultValue(defaultProps.sendingMessages),
39
+ sendingText: PropTypes.string.description('Label description for messages in sending status').defaultValue(defaultProps.sendingText),
40
+ actionRef: PropTypes.object.description("Reference: \n { \n scrollToIndex: (n: number) => void,\n getMessagesInView: () => number[],\n focusToIndex: (n: number) => void,\n focusToList: () => void,\n focusToComposer: () => void,\n focusToSend: () => void,\n }\n \n ").defaultValue(defaultProps.actionRef),
41
+ ariaLabel: PropTypes.string.description('Aria Label description for chat container').defaultValue(defaultProps.ariaLabel)
42
+ };
43
+
44
+ export { containerProps, defaultProps };
@@ -0,0 +1,18 @@
1
+ import styled from 'styled-components';
2
+ import { Grid } from '@elliemae/ds-grid';
3
+ import { StyledTitleLeftBubble, StyleBodyWrapper, StyledTitleRightBubble } from '../bubble/styled.js';
4
+ import { StyledComposerInput } from '../chat-composer/styled.js';
5
+ import { Wrapper, Title, Message, Time } from '../system-message/style.js';
6
+
7
+ const CONTAINER_WIDTH = 300;
8
+ const StyledChatContainerContent = /*#__PURE__*/styled(Grid).withConfig({
9
+ componentId: "sc-d732wo-0"
10
+ })(["height:100%;min-width:", "px;overflow:hidden;background:", ";position:relative;"], CONTAINER_WIDTH, props => props.theme.colors.neutral['050']);
11
+ const StyledIndicatorContainer = /*#__PURE__*/styled.div.withConfig({
12
+ componentId: "sc-d732wo-1"
13
+ })(["transition:0.4s ease-in-out;position:absolute;visibility:hidden;pointer-events:none;width:100%;padding:0 ", ";left:0;right:0;background:", ";", " ", " & div,a{font-size:13px;}"], props => !props.linear ? props.theme.space.xxs : 0, props => props.theme.colors.neutral['000'], props => props.isLoading === 'top' ? "\n top: -41px;\n transform: translate(0, 41px);\n visibility: visible;\n pointer-events: auto;\n " : '', props => props.isLoading === 'bottom' ? "\n bottom: -41px;\n transform: translate(0, -41px);\n visibility: visible;\n pointer-events: auto;\n " : '');
14
+ const MobileStyledChatContainerContent = /*#__PURE__*/styled(StyledChatContainerContent).withConfig({
15
+ componentId: "sc-d732wo-2"
16
+ })(["", ",", "{font-size:16px;}", "{font-size:13px;}", "{background-color:#fff;box-shadow:-0 1px 3px rgba(53,60,70,0.8);}", ",", "{font-size:16px;text-align:left;}", "{font-size:13px;}", "{font-size:16px;}", "{font-size:16px;}"], StyledTitleLeftBubble, StyleBodyWrapper, StyledTitleRightBubble, Wrapper, Title, Message, Time, StyledComposerInput, StyledIndicatorContainer);
17
+
18
+ export { CONTAINER_WIDTH, MobileStyledChatContainerContent, StyledChatContainerContent, StyledIndicatorContainer };
@@ -0,0 +1,31 @@
1
+ import _jsx from '@babel/runtime/helpers/esm/jsx';
2
+ import 'react';
3
+ import { SimpleTruncatedTooltipText } from '@elliemae/ds-truncated-tooltip-text';
4
+ import { StyledChatContainerContentHeader, StyledChatContainerContentHeaderLabel, StyledChatContainerContentHeaderActions } from './styled.js';
5
+ import { validHeaderChilds } from './helpers.js';
6
+
7
+ const ChatContainerHeader = props => {
8
+ const {
9
+ title,
10
+ floating,
11
+ children
12
+ } = props;
13
+ return /*#__PURE__*/_jsx(StyledChatContainerContentHeader, {
14
+ alignItems: "center",
15
+ cols: ['minmax(calc(100% - 64px), 1fr)', children ? 'auto' : '0px'],
16
+ floating: floating,
17
+ role: "heading"
18
+ }, void 0, /*#__PURE__*/_jsx(StyledChatContainerContentHeaderLabel, {
19
+ "data-testid": "chat-container-header-title",
20
+ pl: "xxs",
21
+ pr: "xxs"
22
+ }, void 0, /*#__PURE__*/_jsx(SimpleTruncatedTooltipText, {
23
+ value: title
24
+ })), /*#__PURE__*/_jsx(StyledChatContainerContentHeaderActions, {
25
+ cols: validHeaderChilds(children),
26
+ justifyContent: "flex-end",
27
+ "data-testid": "chat-container-header-children"
28
+ }, void 0, children));
29
+ };
30
+
31
+ export { ChatContainerHeader };
@@ -0,0 +1,23 @@
1
+ import 'core-js/modules/esnext.async-iterator.map.js';
2
+ import 'core-js/modules/esnext.iterator.map.js';
3
+ import 'core-js/modules/esnext.async-iterator.filter.js';
4
+ import 'core-js/modules/esnext.iterator.constructor.js';
5
+ import 'core-js/modules/esnext.iterator.filter.js';
6
+ import 'core-js/modules/esnext.async-iterator.constructor.js';
7
+ import 'core-js/modules/esnext.async-iterator.to-array.js';
8
+ import 'core-js/modules/esnext.iterator.to-array.js';
9
+ import React from 'react';
10
+
11
+ const validHeaderChilds = children => React.Children.toArray(children).filter(e => {
12
+ if (Array.isArray(e.props.children)) {
13
+ return false;
14
+ }
15
+
16
+ if (e.props.children === undefined && e.$$typeof.toString() === 'Symbol(react.element)') {
17
+ return true;
18
+ }
19
+
20
+ return !!e.props.children;
21
+ }).map(() => '32px');
22
+
23
+ export { validHeaderChilds };
@@ -0,0 +1,14 @@
1
+ import styled from 'styled-components';
2
+ import { Grid } from '@elliemae/ds-grid';
3
+
4
+ const StyledChatContainerContentHeaderActions = /*#__PURE__*/styled(Grid).withConfig({
5
+ componentId: "sc-jmynvr-0"
6
+ })(["max-width:80px;"]);
7
+ const StyledChatContainerContentHeader = /*#__PURE__*/styled(Grid).withConfig({
8
+ componentId: "sc-jmynvr-1"
9
+ })(["width:100%;min-height:48px;border-bottom:1px solid ", ";background:", ";", "{& button{background:transparent;}}"], props => props.theme.colors.neutral['200'], props => props.theme.colors.neutral['050'], StyledChatContainerContentHeaderActions);
10
+ const StyledChatContainerContentHeaderLabel = /*#__PURE__*/styled(Grid).withConfig({
11
+ componentId: "sc-jmynvr-2"
12
+ })(["justify-content:center;align-items:center;font-weight:bold;font-size:18px;color:", ";"], props => props.theme.colors.neutral['700']);
13
+
14
+ export { StyledChatContainerContentHeader, StyledChatContainerContentHeaderActions, StyledChatContainerContentHeaderLabel };