@zohodesk/dot 1.0.0-temp-157 → 1.0.0-temp-159

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 (464) hide show
  1. package/.cli/MissedPropType_Keys.html +101 -0
  2. package/.cli/PropLessFiles.html +101 -0
  3. package/.cli/PropValidationExcludeFilesArray.js +1 -0
  4. package/.cli/propValidation_report.html +160 -0
  5. package/README.md +67 -30
  6. package/coverage/ExternalLink/ExternalLink.js.html +1 -1
  7. package/coverage/ExternalLink/ExternalLink.module.css.html +1 -1
  8. package/coverage/ExternalLink/index.html +1 -1
  9. package/coverage/ExternalLink/props/defaultProps.js.html +1 -1
  10. package/coverage/ExternalLink/props/index.html +1 -1
  11. package/coverage/ExternalLink/props/propTypes.js.html +1 -1
  12. package/coverage/IconButton/IconButton.js.html +466 -0
  13. package/coverage/IconButton/IconButton.module.css.html +151 -0
  14. package/coverage/IconButton/index.html +131 -0
  15. package/coverage/IconButton/props/defaultProps.js.html +136 -0
  16. package/coverage/IconButton/props/index.html +131 -0
  17. package/coverage/IconButton/props/propTypes.js.html +187 -0
  18. package/coverage/Image/Image.js.html +1 -1
  19. package/coverage/Image/Image.module.css.html +1 -1
  20. package/coverage/Image/index.html +1 -1
  21. package/coverage/Image/props/defaultProps.js.html +1 -1
  22. package/coverage/Image/props/index.html +1 -1
  23. package/coverage/Image/props/propTypes.js.html +1 -1
  24. package/coverage/avatar/AvatarWithTeam/AvatarWithTeam.js.html +1 -1
  25. package/coverage/avatar/AvatarWithTeam/AvatarWithTeam.module.css.html +1 -1
  26. package/coverage/avatar/AvatarWithTeam/index.html +1 -1
  27. package/coverage/avatar/AvatarWithTeam/props/defaultProps.js.html +1 -1
  28. package/coverage/avatar/AvatarWithTeam/props/index.html +1 -1
  29. package/coverage/avatar/AvatarWithTeam/props/propTypes.js.html +1 -1
  30. package/coverage/coverage-final.json +16 -12
  31. package/coverage/coverage-summary.json +17 -13
  32. package/coverage/index.html +40 -10
  33. package/es/ActionButton/ActionButton.js +5 -2
  34. package/es/ActionButton/props/propTypes.js +3 -2
  35. package/es/AlphabeticList/props/propTypes.js +1 -1
  36. package/es/Attachment/props/propTypes.js +2 -1
  37. package/es/Drawer/Drawer.js +13 -12
  38. package/es/Drawer/props/propTypes.js +2 -1
  39. package/es/IconButton/IconButton.js +2 -2
  40. package/es/IconButton/__tests__/IconButton.spec.js +148 -0
  41. package/es/IconButton/__tests__/__snapshots__/IconButton.spec.js.snap +316 -0
  42. package/es/Link/props/propTypes.js +5 -1
  43. package/es/Message/Message.js +4 -2
  44. package/es/Message/props/propTypes.js +11 -4
  45. package/es/Separator/props/propTypes.js +1 -1
  46. package/es/TagWithIcon/props/propTypes.js +3 -2
  47. package/es/ToastMessage/props/propTypes.js +4 -3
  48. package/es/actions/props/propTypes.js +2 -1
  49. package/es/alert/AlertLookup/props/propTypes.js +0 -1
  50. package/es/avatar/AvatarThread/props/propTypes.js +1 -1
  51. package/es/deprecated/SelectDropdown/SelectDropdown.js +3 -8
  52. package/es/dropdown/ToggleDropDown/ToggleDropDown.js +5 -2
  53. package/es/dropdown/ToggleDropDown/props/propTypes.js +4 -1
  54. package/es/emptystate/EditionPage/props/propTypes.js +6 -2
  55. package/es/form/fields/CheckBoxField/props/propTypes.js +1 -1
  56. package/es/form/fields/CurrencyField/props/propTypes.js +4 -1
  57. package/es/form/fields/DateField/props/propTypes.js +1 -1
  58. package/es/form/fields/FieldContainer/props/propTypes.js +18 -4
  59. package/es/form/fields/MultiSelectField/props/propTypes.js +2 -2
  60. package/es/form/fields/PhoneField/props/propTypes.js +8 -1
  61. package/es/form/fields/RadioField/props/propTypes.js +2 -2
  62. package/es/form/fields/SelectField/SelectField.js +1 -2
  63. package/es/form/fields/SelectField/props/propTypes.js +2 -2
  64. package/es/form/fields/TagsMultiSelect/props/propTypes.js +2 -1
  65. package/es/form/fields/TagsMultiSelectField/TagsMultiSelectField.js +7 -3
  66. package/es/form/fields/TagsMultiSelectField/props/propTypes.js +13 -2
  67. package/es/form/fields/TextBoxField/props/propTypes.js +8 -1
  68. package/es/form/fields/TextEditor/props/propTypes.js +7 -1
  69. package/es/form/fields/TextEditorField/props/propTypes.js +13 -1
  70. package/es/form/fields/TextEditorWrapper/props/propTypes.js +2 -1
  71. package/es/form/fields/TextareaField/props/propTypes.js +2 -2
  72. package/es/form/fields/ValidationMessage/props/propTypes.js +4 -2
  73. package/es/form/fields/props/FieldCommonPropTypes.js +16 -22
  74. package/es/form/layout/Section/props/propTypes.js +3 -1
  75. package/es/layout/SubtabLayout/props/propTypes.js +1 -1
  76. package/es/list/Comment/props/propTypes.js +0 -3
  77. package/es/list/GridStencils/props/propTypes.js +2 -1
  78. package/es/list/Icons/props/propTypes.js +0 -2
  79. package/es/list/SecondaryText/props/propTypes.js +0 -1
  80. package/es/list/UserTime/props/propTypes.js +5 -1
  81. package/es/list/status/StatusDropdown/StatusDropdown.js +6 -2
  82. package/es/list/status/StatusDropdown/props/propTypes.js +4 -1
  83. package/es/list/status/StatusListItem/StatusListItem.js +1 -1
  84. package/es/lookup/Lookup/Lookup.js +10 -10
  85. package/es/lookup/Lookup/props/propTypes.js +4 -1
  86. package/es/lookup/header/ViewDropDown/ViewDropDown.js +2 -1
  87. package/es/lookup/header/ViewDropDown/props/propTypes.js +6 -11
  88. package/es/setup/helptips/ListGroup/ListGroup.js +1 -1
  89. package/es/setup/table/TableHead/props/propTypes.js +2 -1
  90. package/es/v1/ActionButton/ActionButton.js +11 -8
  91. package/es/v1/AlphabeticList/AlphabeticList.js +7 -3
  92. package/es/v1/Attachment/Attachment.js +91 -0
  93. package/es/v1/AttachmentViewer/AttachmentImage.js +60 -0
  94. package/es/v1/AttachmentViewer/AttachmentViewer.js +541 -0
  95. package/es/v1/ChannelIcon/ChannelIcon.js +2 -2
  96. package/es/v1/Drawer/Drawer.js +17 -17
  97. package/es/v1/FlipCard/FlipCard.js +7 -7
  98. package/es/v1/FormAction/FormAction.js +1 -1
  99. package/es/v1/FreezeLayer/FreezeLayer.js +74 -0
  100. package/es/v1/{version2/GlobalNotification → GlobalNotification}/GlobalNotification.js +10 -8
  101. package/es/v1/IconButton/IconButton.js +3 -3
  102. package/es/v1/Image/Image.js +39 -0
  103. package/es/v1/ImportantNotes/ImportantNotes.js +1 -1
  104. package/es/v1/Link/Link.js +2 -1
  105. package/es/v1/Loader/Loader.js +15 -0
  106. package/es/v1/Message/Message.js +118 -0
  107. package/es/v1/MessageBanner/MessageBanner.js +2 -2
  108. package/es/v1/NewStar/NewStar.js +1 -1
  109. package/es/v1/PlusIcon/PlusIcon.js +44 -0
  110. package/es/v1/Separator/Separator.js +60 -0
  111. package/es/v1/TagWithIcon/TagWithIcon.js +1 -1
  112. package/es/v1/ToastMessage/ToastMessage.js +203 -0
  113. package/es/v1/Upload/Upload.js +69 -0
  114. package/es/v1/actions/AutoClose.js +43 -0
  115. package/es/v1/{version2 → alert}/AlertClose/AlertClose.js +1 -1
  116. package/es/v1/alert/AlertHeader/AlertHeader.js +58 -49
  117. package/es/v1/alert/AlertLookup/AlertLookup.js +101 -41
  118. package/es/v1/alert/alertIcons/index.js +8 -0
  119. package/es/v1/alert/index.js +2 -0
  120. package/es/v1/avatar/AvatarClose/AvatarClose.js +53 -0
  121. package/es/v1/avatar/AvatarCollision/AvatarCollision.js +62 -0
  122. package/es/v1/avatar/AvatarIcon/AvatarIcon.js +54 -0
  123. package/es/v1/avatar/AvatarStatus/AvatarStatus.js +72 -0
  124. package/es/v1/avatar/AvatarThread/AvatarThread.js +79 -0
  125. package/es/v1/avatar/AvatarUser/AvatarUser.js +116 -0
  126. package/es/v1/avatar/AvatarWithTeam/AvatarWithTeam.js +98 -0
  127. package/es/v1/avatar/index.js +7 -0
  128. package/es/v1/dropdown/ToggleDropDown/ToggleDropDown.js +864 -0
  129. package/es/v1/emptystate/CommonEmptyState/CommonEmptyState.js +1 -0
  130. package/es/v1/{version2/errorstate → errorstate}/Inconvenience/Inconvenience.js +7 -11
  131. package/es/v1/{version2/errorstate → errorstate}/OopsSomethingMiss/OopsSomethingMiss.js +6 -6
  132. package/es/v1/{version2/errorstate → errorstate}/UnableToProcessRequest/UnableToProcessRequest.js +6 -6
  133. package/es/v1/{version2/errorstate → errorstate}/UnauthorizedLogin/UnauthorizedLogin.js +6 -6
  134. package/es/v1/{version2/errorstate → errorstate}/UrlNotFound/UrlNotFound.js +6 -6
  135. package/es/v1/{version2/errorstate → errorstate}/WillBeRightBack/WillBeRightBack.js +6 -6
  136. package/es/v1/form/fields/CheckBoxField/CheckBoxField.js +125 -0
  137. package/es/v1/form/fields/CurrencyField/CurrencyField.js +157 -0
  138. package/es/v1/form/fields/DateField/DateField.js +164 -0
  139. package/es/v1/form/fields/FieldContainer/FieldContainer.js +66 -0
  140. package/es/v1/form/fields/MultiSelectField/MultiSelectField.js +189 -0
  141. package/es/v1/form/fields/PhoneField/PhoneField.js +161 -0
  142. package/es/v1/form/fields/RadioField/RadioField.js +108 -0
  143. package/es/v1/form/fields/SelectField/SelectField.js +168 -0
  144. package/es/v1/form/fields/TagsMultiSelect/TagsMultiSelect.js +292 -0
  145. package/es/v1/form/fields/TagsMultiSelectField/TagsMultiSelectField.js +261 -0
  146. package/es/v1/form/fields/TextBoxField/TextBoxField.js +164 -0
  147. package/es/v1/form/fields/TextEditor/TextEditor.js +418 -0
  148. package/es/v1/form/fields/TextEditorField/TextEditorField.js +178 -0
  149. package/es/v1/form/fields/TextEditorWrapper/TextEditorWrapper.js +203 -0
  150. package/es/v1/form/fields/TextareaField/TextareaField.js +161 -0
  151. package/es/v1/form/fields/ValidationMessage/ValidationMessage.js +58 -0
  152. package/es/v1/form/fields/index.js +16 -0
  153. package/es/v1/form/layout/Field/Field.js +33 -0
  154. package/es/v1/form/layout/Section/Section.js +37 -0
  155. package/es/v1/form/layout/index.js +2 -0
  156. package/es/v1/layout/SetupDetailLayout/SetupDetailLayout.js +217 -0
  157. package/es/v1/layout/SetupDetailLayout/index.js +4 -0
  158. package/es/v1/layout/SubtabLayout/SubtabLayout.js +144 -0
  159. package/es/v1/layout/SubtabLayout/index.js +4 -0
  160. package/es/v1/list/AvatarFlip/AvatarFlip.js +73 -0
  161. package/es/v1/list/BluePrintStatus/BluePrintStatus.js +21 -0
  162. package/es/v1/list/Comment/Comment.js +38 -0
  163. package/es/v1/list/DepartmentDropDown/DepartmentDropDown.js +85 -0
  164. package/es/v1/list/Dot/Dot.js +15 -0
  165. package/es/v1/list/DotNew/DotNew.js +22 -0
  166. package/es/v1/list/GridStencils/GridStencils.js +31 -0
  167. package/es/v1/list/Icons/AddNewIcon.js +25 -0
  168. package/es/v1/list/Icons/CompleteIcon.js +27 -0
  169. package/es/v1/list/Icons/DeleteIcon.js +28 -0
  170. package/es/v1/list/Icons/EditIcon.js +28 -0
  171. package/es/v1/list/Icons/FloatingIcons.js +23 -0
  172. package/es/v1/list/Icons/ReadUnreadIcon.js +32 -0
  173. package/es/v1/list/Icons/SmartIcon.js +25 -0
  174. package/es/v1/list/Icons/index.js +7 -0
  175. package/es/v1/list/ListLayout/ListLayout.js +69 -0
  176. package/es/v1/list/ListStencils/ListStencils.js +44 -0
  177. package/es/v1/list/SecondaryText/AccountName.js +85 -0
  178. package/es/v1/list/SecondaryText/ContactName.js +85 -0
  179. package/es/v1/list/SecondaryText/DepartmentText.js +30 -0
  180. package/es/v1/list/SecondaryText/Email.js +55 -0
  181. package/es/v1/list/SecondaryText/HappinessRating.js +31 -0
  182. package/es/v1/list/SecondaryText/PhoneNumber.js +59 -0
  183. package/es/v1/list/SecondaryText/PriorityText.js +33 -0
  184. package/es/v1/list/SecondaryText/SecondaryText.js +40 -0
  185. package/es/v1/list/SecondaryText/StatusText.js +34 -0
  186. package/es/v1/list/SecondaryText/TicketId.js +53 -0
  187. package/es/v1/list/SecondaryText/Website.js +43 -0
  188. package/es/v1/list/SecondaryText/index.js +11 -0
  189. package/es/v1/list/SecondryPanel/SecondryPanel.js +104 -0
  190. package/es/v1/list/SentimentStatus/SentimentStatus.js +34 -0
  191. package/es/v1/list/Subject/Subject.js +57 -0
  192. package/es/v1/list/TagNew/TagNew.js +33 -0
  193. package/es/v1/list/Thread/Thread.js +43 -0
  194. package/es/v1/list/UserTime/UserTime.js +83 -0
  195. package/es/v1/list/index.js +17 -0
  196. package/es/v1/list/status/StatusDropdown/StatusDropdown.js +374 -0
  197. package/es/v1/list/status/StatusListItem/StatusListItem.js +122 -0
  198. package/es/v1/list/status/index.js +2 -0
  199. package/es/v1/lookup/EmptyPage/EmptyPage.js +65 -0
  200. package/es/v1/lookup/Lookup/Lookup.js +16 -13
  201. package/es/v1/lookup/Section/Section.js +25 -0
  202. package/es/v1/lookup/header/ModuleHeader/ModuleHeader.js +3 -3
  203. package/es/v1/lookup/header/Search/Search.js +5 -5
  204. package/es/v1/lookup/header/TicketHeader/TicketHeader.js +1 -1
  205. package/es/v1/lookup/header/ViewDropDown/ViewDropDown.js +177 -0
  206. package/es/v1/lookup/header/index.js +5 -0
  207. package/es/v1/notification/DesktopNotification/DesktopNotification.js +164 -0
  208. package/es/v1/{version2/notification → notification}/DesktopNotificationHeader/DesktopNotificationHeader.js +6 -6
  209. package/es/v1/setup/header/Button/Button.js +36 -0
  210. package/es/v1/setup/header/Link/Link.js +44 -0
  211. package/es/v1/setup/header/Search/Search.js +81 -0
  212. package/es/v1/setup/header/Views/Views.js +46 -0
  213. package/es/v1/setup/header/index.js +4 -0
  214. package/es/v1/setup/helptips/Description/Description.js +24 -0
  215. package/es/v1/setup/helptips/Link/Link.js +41 -0
  216. package/es/v1/setup/helptips/ListGroup/ListGroup.js +39 -0
  217. package/es/v1/setup/helptips/Title/Title.js +24 -0
  218. package/es/v1/setup/helptips/index.js +4 -0
  219. package/es/v1/setup/index.js +6 -0
  220. package/es/v1/setup/table/Table/Table.js +1 -1
  221. package/es/v1/setup/table/TableBody/TableBody.js +1 -1
  222. package/es/v1/setup/table/TableData/TableData.js +1 -1
  223. package/es/v1/setup/table/TableHead/TableHead.js +1 -1
  224. package/es/v1/setup/table/TableRow/TableRow.js +1 -1
  225. package/es/v1/setup/table/index.js +5 -0
  226. package/es/v1/svg/PlusIcon.js +25 -0
  227. package/es/v1/svg/SnippetIcon.js +27 -0
  228. package/es/v1/svg/TemplateIcon.js +28 -0
  229. package/es/v1/svg/index.js +3 -0
  230. package/es/version2/GlobalNotification/GlobalNotification.js +4 -2
  231. package/es/version2/GlobalNotification/props/propTypes.js +19 -1
  232. package/es/version2/lookup/AlertLookup/props/propTypes.js +0 -1
  233. package/es/version2/notification/DesktopNotification/DesktopNotification.js +2 -1
  234. package/es/version2/notification/DesktopNotification/props/propTypes.js +13 -9
  235. package/lib/ActionButton/ActionButton.js +5 -3
  236. package/lib/ActionButton/props/propTypes.js +3 -2
  237. package/lib/AlphabeticList/props/propTypes.js +1 -1
  238. package/lib/Attachment/props/propTypes.js +2 -1
  239. package/lib/Drawer/Drawer.js +18 -17
  240. package/lib/Drawer/props/propTypes.js +2 -1
  241. package/lib/IconButton/IconButton.js +2 -2
  242. package/lib/IconButton/__tests__/IconButton.spec.js +156 -0
  243. package/lib/IconButton/__tests__/__snapshots__/IconButton.spec.js.snap +316 -0
  244. package/lib/Link/props/propTypes.js +5 -1
  245. package/lib/Message/Message.js +5 -1
  246. package/lib/Message/props/propTypes.js +23 -6
  247. package/lib/Separator/props/propTypes.js +1 -1
  248. package/lib/TagWithIcon/props/propTypes.js +3 -2
  249. package/lib/ToastMessage/props/propTypes.js +4 -3
  250. package/lib/actions/props/propTypes.js +2 -1
  251. package/lib/alert/AlertLookup/props/propTypes.js +0 -1
  252. package/lib/avatar/AvatarThread/props/propTypes.js +1 -1
  253. package/lib/deprecated/SelectDropdown/SelectDropdown.js +3 -7
  254. package/lib/dropdown/ToggleDropDown/ToggleDropDown.js +5 -3
  255. package/lib/dropdown/ToggleDropDown/props/propTypes.js +4 -1
  256. package/lib/emptystate/EditionPage/props/propTypes.js +6 -2
  257. package/lib/form/fields/CheckBoxField/props/propTypes.js +1 -1
  258. package/lib/form/fields/CurrencyField/props/propTypes.js +5 -2
  259. package/lib/form/fields/DateField/props/propTypes.js +1 -1
  260. package/lib/form/fields/FieldContainer/props/propTypes.js +21 -16
  261. package/lib/form/fields/MultiSelectField/props/propTypes.js +3 -3
  262. package/lib/form/fields/PhoneField/props/propTypes.js +8 -1
  263. package/lib/form/fields/RadioField/props/propTypes.js +2 -2
  264. package/lib/form/fields/SelectField/SelectField.js +1 -2
  265. package/lib/form/fields/SelectField/props/propTypes.js +3 -3
  266. package/lib/form/fields/TagsMultiSelect/props/propTypes.js +2 -1
  267. package/lib/form/fields/TagsMultiSelectField/TagsMultiSelectField.js +8 -5
  268. package/lib/form/fields/TagsMultiSelectField/props/propTypes.js +16 -11
  269. package/lib/form/fields/TextBoxField/props/propTypes.js +8 -1
  270. package/lib/form/fields/TextEditor/props/propTypes.js +7 -1
  271. package/lib/form/fields/TextEditorField/props/propTypes.js +51 -49
  272. package/lib/form/fields/TextEditorWrapper/props/propTypes.js +2 -1
  273. package/lib/form/fields/TextareaField/props/propTypes.js +3 -3
  274. package/lib/form/fields/ValidationMessage/props/propTypes.js +4 -2
  275. package/lib/form/fields/props/FieldCommonPropTypes.js +16 -23
  276. package/lib/form/layout/Section/props/propTypes.js +3 -1
  277. package/lib/layout/SubtabLayout/props/propTypes.js +1 -1
  278. package/lib/list/Comment/props/propTypes.js +0 -3
  279. package/lib/list/GridStencils/props/propTypes.js +2 -1
  280. package/lib/list/Icons/props/propTypes.js +0 -2
  281. package/lib/list/SecondaryText/props/propTypes.js +0 -1
  282. package/lib/list/UserTime/props/propTypes.js +5 -1
  283. package/lib/list/status/StatusDropdown/StatusDropdown.js +6 -4
  284. package/lib/list/status/StatusDropdown/props/propTypes.js +1 -1
  285. package/lib/list/status/StatusListItem/StatusListItem.js +1 -1
  286. package/lib/lookup/Lookup/Lookup.js +15 -15
  287. package/lib/lookup/Lookup/props/propTypes.js +4 -1
  288. package/lib/lookup/header/ViewDropDown/ViewDropDown.js +2 -1
  289. package/lib/lookup/header/ViewDropDown/props/propTypes.js +6 -11
  290. package/lib/setup/helptips/ListGroup/ListGroup.js +1 -1
  291. package/lib/setup/table/TableHead/props/propTypes.js +2 -1
  292. package/lib/v1/ActionButton/ActionButton.js +11 -9
  293. package/lib/v1/AlphabeticList/AlphabeticList.js +8 -6
  294. package/lib/v1/Attachment/Attachment.js +105 -0
  295. package/lib/v1/AttachmentViewer/AttachmentImage.js +89 -0
  296. package/lib/v1/AttachmentViewer/AttachmentViewer.js +625 -0
  297. package/lib/v1/ChannelIcon/ChannelIcon.js +2 -2
  298. package/lib/v1/Drawer/Drawer.js +22 -22
  299. package/lib/v1/FlipCard/FlipCard.js +7 -7
  300. package/lib/v1/FormAction/FormAction.js +1 -1
  301. package/lib/v1/FreezeLayer/FreezeLayer.js +94 -0
  302. package/lib/v1/{version2/GlobalNotification → GlobalNotification}/GlobalNotification.js +12 -8
  303. package/lib/v1/IconButton/IconButton.js +3 -3
  304. package/lib/v1/Image/Image.js +89 -0
  305. package/lib/v1/ImportantNotes/ImportantNotes.js +1 -1
  306. package/lib/v1/Link/Link.js +2 -1
  307. package/lib/v1/Loader/Loader.js +27 -0
  308. package/lib/v1/Message/Message.js +170 -0
  309. package/lib/v1/MessageBanner/MessageBanner.js +2 -2
  310. package/lib/v1/NewStar/NewStar.js +1 -1
  311. package/lib/v1/PlusIcon/PlusIcon.js +91 -0
  312. package/lib/v1/Separator/Separator.js +107 -0
  313. package/lib/v1/TagWithIcon/TagWithIcon.js +1 -1
  314. package/lib/v1/ToastMessage/ToastMessage.js +246 -0
  315. package/lib/v1/Upload/Upload.js +83 -0
  316. package/lib/v1/actions/AutoClose.js +75 -0
  317. package/lib/v1/{version2 → alert}/AlertClose/AlertClose.js +1 -1
  318. package/lib/v1/alert/AlertHeader/AlertHeader.js +68 -50
  319. package/lib/v1/alert/AlertLookup/AlertLookup.js +109 -42
  320. package/lib/v1/alert/alertIcons/index.js +71 -0
  321. package/lib/v1/alert/index.js +23 -0
  322. package/lib/v1/avatar/AvatarClose/AvatarClose.js +101 -0
  323. package/lib/v1/avatar/AvatarCollision/AvatarCollision.js +110 -0
  324. package/lib/v1/avatar/AvatarIcon/AvatarIcon.js +106 -0
  325. package/lib/v1/avatar/AvatarStatus/AvatarStatus.js +119 -0
  326. package/lib/v1/avatar/AvatarThread/AvatarThread.js +130 -0
  327. package/lib/v1/avatar/AvatarUser/AvatarUser.js +167 -0
  328. package/lib/v1/avatar/AvatarWithTeam/AvatarWithTeam.js +154 -0
  329. package/lib/v1/avatar/index.js +63 -0
  330. package/lib/v1/dropdown/ToggleDropDown/ToggleDropDown.js +934 -0
  331. package/lib/v1/emptystate/CommonEmptyState/CommonEmptyState.js +1 -0
  332. package/lib/v1/{version2/errorstate → errorstate}/Inconvenience/Inconvenience.js +7 -11
  333. package/lib/v1/{version2/errorstate → errorstate}/OopsSomethingMiss/OopsSomethingMiss.js +6 -6
  334. package/lib/v1/{version2/errorstate → errorstate}/UnableToProcessRequest/UnableToProcessRequest.js +6 -6
  335. package/lib/v1/{version2/errorstate → errorstate}/UnauthorizedLogin/UnauthorizedLogin.js +6 -6
  336. package/lib/v1/{version2/errorstate → errorstate}/UrlNotFound/UrlNotFound.js +6 -6
  337. package/lib/v1/{version2/errorstate → errorstate}/WillBeRightBack/WillBeRightBack.js +6 -6
  338. package/lib/v1/form/fields/CheckBoxField/CheckBoxField.js +145 -0
  339. package/lib/v1/form/fields/CurrencyField/CurrencyField.js +193 -0
  340. package/lib/v1/form/fields/DateField/DateField.js +183 -0
  341. package/lib/v1/form/fields/FieldContainer/FieldContainer.js +87 -0
  342. package/lib/v1/form/fields/MultiSelectField/MultiSelectField.js +208 -0
  343. package/lib/v1/form/fields/PhoneField/PhoneField.js +193 -0
  344. package/lib/v1/form/fields/RadioField/RadioField.js +123 -0
  345. package/lib/v1/form/fields/SelectField/SelectField.js +185 -0
  346. package/lib/v1/form/fields/TagsMultiSelect/TagsMultiSelect.js +346 -0
  347. package/lib/v1/form/fields/TagsMultiSelectField/TagsMultiSelectField.js +302 -0
  348. package/lib/v1/form/fields/TextBoxField/TextBoxField.js +219 -0
  349. package/lib/v1/form/fields/TextEditor/TextEditor.js +463 -0
  350. package/lib/v1/form/fields/TextEditorField/TextEditorField.js +230 -0
  351. package/lib/v1/form/fields/TextEditorWrapper/TextEditorWrapper.js +256 -0
  352. package/lib/v1/form/fields/TextareaField/TextareaField.js +215 -0
  353. package/lib/v1/form/fields/ValidationMessage/ValidationMessage.js +110 -0
  354. package/lib/{docs/formDocs.js → v1/form/fields/index.js} +33 -25
  355. package/lib/v1/form/layout/Field/Field.js +87 -0
  356. package/lib/v1/form/layout/Section/Section.js +86 -0
  357. package/lib/v1/form/layout/index.js +23 -0
  358. package/lib/v1/layout/SetupDetailLayout/SetupDetailLayout.js +305 -0
  359. package/lib/v1/layout/SetupDetailLayout/index.js +37 -0
  360. package/lib/v1/layout/SubtabLayout/SubtabLayout.js +245 -0
  361. package/lib/v1/layout/SubtabLayout/index.js +37 -0
  362. package/lib/v1/list/AvatarFlip/AvatarFlip.js +86 -0
  363. package/lib/v1/list/BluePrintStatus/BluePrintStatus.js +33 -0
  364. package/lib/v1/list/Comment/Comment.js +53 -0
  365. package/lib/v1/list/DepartmentDropDown/DepartmentDropDown.js +102 -0
  366. package/lib/v1/list/Dot/Dot.js +27 -0
  367. package/lib/v1/list/DotNew/DotNew.js +34 -0
  368. package/lib/v1/list/GridStencils/GridStencils.js +42 -0
  369. package/lib/v1/list/Icons/AddNewIcon.js +38 -0
  370. package/lib/v1/list/Icons/CompleteIcon.js +40 -0
  371. package/lib/v1/list/Icons/DeleteIcon.js +41 -0
  372. package/lib/v1/list/Icons/EditIcon.js +41 -0
  373. package/lib/v1/list/Icons/FloatingIcons.js +42 -0
  374. package/lib/v1/list/Icons/ReadUnreadIcon.js +46 -0
  375. package/lib/v1/list/Icons/SmartIcon.js +38 -0
  376. package/lib/v1/list/Icons/index.js +63 -0
  377. package/lib/v1/list/ListLayout/ListLayout.js +82 -0
  378. package/lib/v1/list/ListStencils/ListStencils.js +57 -0
  379. package/lib/v1/list/SecondaryText/AccountName.js +136 -0
  380. package/lib/v1/list/SecondaryText/ContactName.js +144 -0
  381. package/lib/v1/list/SecondaryText/DepartmentText.js +79 -0
  382. package/lib/v1/list/SecondaryText/Email.js +103 -0
  383. package/lib/v1/list/SecondaryText/HappinessRating.js +81 -0
  384. package/lib/v1/list/SecondaryText/PhoneNumber.js +107 -0
  385. package/lib/v1/list/SecondaryText/PriorityText.js +83 -0
  386. package/lib/v1/list/SecondaryText/SecondaryText.js +88 -0
  387. package/lib/v1/list/SecondaryText/StatusText.js +84 -0
  388. package/lib/v1/list/SecondaryText/TicketId.js +104 -0
  389. package/lib/v1/list/SecondaryText/Website.js +91 -0
  390. package/lib/v1/list/SecondaryText/index.js +95 -0
  391. package/lib/v1/list/SecondryPanel/SecondryPanel.js +203 -0
  392. package/lib/v1/list/SentimentStatus/SentimentStatus.js +80 -0
  393. package/lib/v1/list/Subject/Subject.js +108 -0
  394. package/lib/v1/list/TagNew/TagNew.js +83 -0
  395. package/lib/v1/list/Thread/Thread.js +95 -0
  396. package/lib/v1/list/UserTime/UserTime.js +136 -0
  397. package/lib/v1/list/index.js +173 -0
  398. package/lib/v1/list/status/StatusDropdown/StatusDropdown.js +436 -0
  399. package/lib/v1/list/status/StatusListItem/StatusListItem.js +168 -0
  400. package/lib/v1/list/status/index.js +23 -0
  401. package/lib/v1/lookup/EmptyPage/EmptyPage.js +120 -0
  402. package/lib/v1/lookup/Lookup/Lookup.js +22 -18
  403. package/lib/v1/lookup/Section/Section.js +75 -0
  404. package/lib/v1/lookup/header/ModuleHeader/ModuleHeader.js +3 -3
  405. package/lib/v1/lookup/header/Search/Search.js +8 -6
  406. package/lib/v1/lookup/header/TicketHeader/TicketHeader.js +1 -1
  407. package/lib/v1/lookup/header/ViewDropDown/ViewDropDown.js +222 -0
  408. package/lib/v1/lookup/header/index.js +47 -0
  409. package/lib/v1/notification/DesktopNotification/DesktopNotification.js +193 -0
  410. package/lib/v1/{version2/notification → notification}/DesktopNotificationHeader/DesktopNotificationHeader.js +6 -6
  411. package/lib/v1/setup/header/Button/Button.js +83 -0
  412. package/lib/v1/setup/header/Link/Link.js +93 -0
  413. package/lib/v1/setup/header/Search/Search.js +126 -0
  414. package/lib/v1/setup/header/Views/Views.js +93 -0
  415. package/lib/v1/setup/header/index.js +39 -0
  416. package/lib/v1/setup/helptips/Description/Description.js +68 -0
  417. package/lib/v1/setup/helptips/Link/Link.js +88 -0
  418. package/lib/v1/setup/helptips/ListGroup/ListGroup.js +88 -0
  419. package/lib/v1/setup/helptips/Title/Title.js +68 -0
  420. package/lib/v1/setup/helptips/index.js +39 -0
  421. package/lib/v1/setup/index.js +24 -0
  422. package/lib/v1/setup/table/Table/Table.js +1 -1
  423. package/lib/v1/setup/table/TableBody/TableBody.js +1 -1
  424. package/lib/v1/setup/table/TableData/TableData.js +1 -1
  425. package/lib/v1/setup/table/TableHead/TableHead.js +1 -1
  426. package/lib/v1/setup/table/TableRow/TableRow.js +1 -1
  427. package/lib/v1/setup/table/index.js +47 -0
  428. package/lib/v1/svg/PlusIcon.js +37 -0
  429. package/lib/v1/svg/SnippetIcon.js +39 -0
  430. package/lib/v1/svg/TemplateIcon.js +40 -0
  431. package/lib/v1/svg/index.js +31 -0
  432. package/lib/version2/GlobalNotification/GlobalNotification.js +5 -1
  433. package/lib/version2/GlobalNotification/props/propTypes.js +23 -3
  434. package/lib/version2/lookup/AlertLookup/props/propTypes.js +0 -1
  435. package/lib/version2/notification/DesktopNotification/DesktopNotification.js +2 -0
  436. package/lib/version2/notification/DesktopNotification/props/propTypes.js +16 -11
  437. package/package.json +17 -15
  438. package/result.json +1 -1
  439. package/unittest/index.html +1 -1
  440. package/es/docs/formDocs.js +0 -15
  441. package/es/docs/generalDocs.js +0 -63
  442. package/es/docs/lookupDocs.js +0 -17
  443. package/es/docs/setupDocs.js +0 -11
  444. package/es/v1/version2/lookup/AlertLookup/AlertLookup.js +0 -152
  445. package/lib/docs/generalDocs.js +0 -479
  446. package/lib/docs/lookupDocs.js +0 -135
  447. package/lib/docs/setupDocs.js +0 -95
  448. package/lib/v1/version2/lookup/AlertLookup/AlertLookup.js +0 -173
  449. /package/es/v1/{version2 → alert}/alertIcons/AlarmAlertIcon.js +0 -0
  450. /package/es/v1/{version2 → alert}/alertIcons/AlertIcons.js +0 -0
  451. /package/es/v1/{version2 → alert}/alertIcons/DangerAlertIcon.js +0 -0
  452. /package/es/v1/{version2 → alert}/alertIcons/ErrorAlertIcon.js +0 -0
  453. /package/es/v1/{version2 → alert}/alertIcons/InfoAlertIcon.js +0 -0
  454. /package/es/v1/{version2 → alert}/alertIcons/NotificationAlertIcon.js +0 -0
  455. /package/es/v1/{version2 → alert}/alertIcons/SuccessAlertIcon.js +0 -0
  456. /package/es/v1/{version2 → alert}/alertIcons/WarningAlertIcon.js +0 -0
  457. /package/lib/v1/{version2 → alert}/alertIcons/AlarmAlertIcon.js +0 -0
  458. /package/lib/v1/{version2 → alert}/alertIcons/AlertIcons.js +0 -0
  459. /package/lib/v1/{version2 → alert}/alertIcons/DangerAlertIcon.js +0 -0
  460. /package/lib/v1/{version2 → alert}/alertIcons/ErrorAlertIcon.js +0 -0
  461. /package/lib/v1/{version2 → alert}/alertIcons/InfoAlertIcon.js +0 -0
  462. /package/lib/v1/{version2 → alert}/alertIcons/NotificationAlertIcon.js +0 -0
  463. /package/lib/v1/{version2 → alert}/alertIcons/SuccessAlertIcon.js +0 -0
  464. /package/lib/v1/{version2 → alert}/alertIcons/WarningAlertIcon.js +0 -0
@@ -0,0 +1,91 @@
1
+ /**** Libraries ****/
2
+ import React from 'react';
3
+ import { defaultProps } from '../../Attachment/props/defaultProps';
4
+ import { propTypes } from '../../Attachment/props/propTypes';
5
+ import { Icon } from '@zohodesk/icons';
6
+ import { Container, Box } from '@zohodesk/components/es/v1/Layout';
7
+ import Link from '../Link/Link';
8
+ /**** CSS ****/
9
+
10
+ import style from '../../Attachment/Attachment.module.css';
11
+
12
+ const Attachment = props => {
13
+ const {
14
+ onClick,
15
+ dataId,
16
+ size,
17
+ iconName,
18
+ fileName,
19
+ fileSize,
20
+ downloadLink,
21
+ palette,
22
+ tooltip,
23
+ fileInfo,
24
+ i18nKeys,
25
+ dataSelectorId
26
+ } = props;
27
+ let {
28
+ downloadTitle = 'Download'
29
+ } = i18nKeys;
30
+ return /*#__PURE__*/React.createElement(Container, {
31
+ isInline: true,
32
+ className: `${style.attachment} ${onClick ? style.attachmentHover : ''} ${style[`palette_${palette}`]} ${style[size]}`,
33
+ onClick: onClick,
34
+ dataId: dataId,
35
+ "data-title": tooltip,
36
+ alignBox: "row",
37
+ isCover: false,
38
+ dataSelectorId: dataSelectorId,
39
+ tabIndex: "0"
40
+ }, iconName ? /*#__PURE__*/React.createElement(Box, {
41
+ className: style.attachleft
42
+ }, /*#__PURE__*/React.createElement(Container, {
43
+ align: "both"
44
+ }, /*#__PURE__*/React.createElement(Icon, {
45
+ name: iconName,
46
+ iconClass: style.attachIcon
47
+ }))) : null, /*#__PURE__*/React.createElement(Box, {
48
+ flexible: true,
49
+ className: style.attachright
50
+ }, /*#__PURE__*/React.createElement(Container, {
51
+ align: "horizontal"
52
+ }, fileName ? /*#__PURE__*/React.createElement(Box, {
53
+ className: style.atatchName,
54
+ "data-title": fileName
55
+ }, fileName) : null, /*#__PURE__*/React.createElement(Box, {
56
+ className: style.footer
57
+ }, /*#__PURE__*/React.createElement(Container, {
58
+ alignBox: "row",
59
+ align: "baseline",
60
+ isCover: false
61
+ }, fileSize ? /*#__PURE__*/React.createElement(Box, {
62
+ className: style.attachSize,
63
+ adjust: true,
64
+ shrink: true,
65
+ "data-title": fileSize
66
+ }, fileSize) : null, fileInfo ? /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Box, {
67
+ className: style.dot
68
+ }), /*#__PURE__*/React.createElement(Box, {
69
+ className: style.attachSize,
70
+ adjust: true,
71
+ shrink: true,
72
+ "data-title": fileInfo
73
+ }, fileInfo)) : null)))), downloadLink ? /*#__PURE__*/React.createElement(Link, {
74
+ target: "_self",
75
+ href: downloadLink,
76
+ className: style.attachDownload,
77
+ title: downloadTitle,
78
+ hasReload: true
79
+ }, /*#__PURE__*/React.createElement(Icon, {
80
+ name: "ZD-downloadNew",
81
+ iconClass: style.downIcon
82
+ })) : null);
83
+ };
84
+
85
+ Attachment.propTypes = propTypes;
86
+ Attachment.defaultProps = defaultProps;
87
+ export default Attachment; // if (__DOCS__) {
88
+ // Attachment.docs = {
89
+ // componentGroup: 'Attachment'
90
+ // };
91
+ // }
@@ -0,0 +1,60 @@
1
+ /* eslint-disable css-modules/no-unused-class */
2
+
3
+ /** * Libraries ** */
4
+ import React, { useRef, useEffect, useState } from 'react';
5
+ import { AttachmentImage_defaultProps } from '../../AttachmentViewer/props/defaultProps';
6
+ import { AttachmentImage_propTypes } from '../../AttachmentViewer/props/propTypes';
7
+ import Image from '../Image/Image';
8
+ /** * CSS ** */
9
+
10
+ import style from '../../AttachmentViewer/AttachmentViewer.module.css';
11
+
12
+ const AttachmentImage = props => {
13
+ const {
14
+ isImage,
15
+ onLoad,
16
+ src,
17
+ onClick,
18
+ alt,
19
+ dataId,
20
+ id,
21
+ className,
22
+ isCover
23
+ } = props;
24
+ const imageEle = useRef();
25
+ const [isLoading, setLoading] = useState(true);
26
+
27
+ const imgLoad = () => {
28
+ setLoading(false);
29
+ onLoad && onLoad();
30
+ };
31
+
32
+ useEffect(() => {
33
+ if (isImage) {
34
+ const image = imageEle.current;
35
+ image.addEventListener('load', imgLoad);
36
+ } else {
37
+ setLoading(false);
38
+ }
39
+ }, []);
40
+ return /*#__PURE__*/React.createElement(React.Fragment, null, isLoading ? /*#__PURE__*/React.createElement("div", {
41
+ className: `${style.spinLoad}`,
42
+ "data-id": `${dataId}_loader`,
43
+ "data-test-id": `${dataId}_loader`
44
+ }, /*#__PURE__*/React.createElement("div", {
45
+ className: style.loader
46
+ })) : null, /*#__PURE__*/React.createElement(Image, {
47
+ htmlId: id,
48
+ eleRef: imageEle,
49
+ dataId: dataId,
50
+ src: src,
51
+ onClick: onClick,
52
+ className: `${isLoading ? style.hide : ''} ${className}`,
53
+ alt: alt,
54
+ isCover: isCover
55
+ }));
56
+ };
57
+
58
+ AttachmentImage.propTypes = AttachmentImage_propTypes;
59
+ AttachmentImage.defaultProps = AttachmentImage_defaultProps;
60
+ export default AttachmentImage;
@@ -0,0 +1,541 @@
1
+ import React, { Component } from 'react';
2
+ import { AttachmentViewer_defaultProps } from '../../AttachmentViewer/props/defaultProps';
3
+ import { AttachmentViewer_propTypes } from '../../AttachmentViewer/props/propTypes';
4
+ import { Container, Box } from '@zohodesk/components/es/v1/Layout';
5
+ import { Icon } from '@zohodesk/icons';
6
+ import Avatar from '@zohodesk/components/es/v1/Avatar/Avatar';
7
+ import { ResponsiveReceiver } from '@zohodesk/components/es/v1/Responsive/CustomResponsive';
8
+ import { getUniqueId } from '@zohodesk/components/es/v1/Provider/IdProvider';
9
+ import AttachmentImage from './AttachmentImage';
10
+ import Link from '../Link/Link';
11
+ import IconButton from '../IconButton/IconButton';
12
+ import FreezeLayer from '../FreezeLayer/FreezeLayer';
13
+ import { isAudioFile, getExtensionFromFileName } from '../../AttachmentViewer/Attachment';
14
+ import { shallowDiff } from '../../utils/General';
15
+ import style from '../../AttachmentViewer/AttachmentViewer.module.css';
16
+ export default class AttachmentViewer extends Component {
17
+ constructor(props) {
18
+ super(props);
19
+ this.state = {
20
+ isPViewListOpen: !!(this.props.previewObj && this.props.previewObj.previewData),
21
+ selectedIndex: this.props.previewObj.selectedIndex,
22
+ isZoomed: false,
23
+ data: this.props.previewObj ? this.props.previewObj.previewData : [],
24
+ dataList: this.getUpdateDataList({
25
+ index: this.props.previewObj.selectedIndex,
26
+ data: this.props.previewObj ? this.props.previewObj.previewData : [],
27
+ dataList: []
28
+ })
29
+ };
30
+ this.togglePViewList = this.togglePViewList.bind(this);
31
+ this.changeSelectedIndex = this.changeSelectedIndex.bind(this);
32
+ this.closeAttachmentViewer = this.closeAttachmentViewer.bind(this);
33
+ this.responsiveFunc = this.responsiveFunc.bind(this);
34
+ this.zoomIn = this.zoomIn.bind(this);
35
+ this.zoomOut = this.zoomOut.bind(this);
36
+ this.imgPreviewView = this.imgPreviewView.bind(this);
37
+ this.getNextId = getUniqueId(this);
38
+ this.getUpdateDataList = this.getUpdateDataList.bind(this);
39
+ this.zoomMaintain = this.zoomMaintain.bind(this);
40
+ }
41
+
42
+ componentDidUpdate(prevProps) {
43
+ let {
44
+ previewObj
45
+ } = this.props;
46
+ let indexChanged = previewObj.selectedIndex != prevProps.previewObj.selectedIndex;
47
+
48
+ if (previewObj.previewData.length != prevProps.previewObj.previewData.length || indexChanged) {
49
+ let objChanged = previewObj.previewData.some((value, index) => {
50
+ return shallowDiff(value, prevProps.previewObj[index]);
51
+ });
52
+
53
+ if (objChanged || indexChanged) {
54
+ this.setState({
55
+ selectedIndex: previewObj.selectedIndex,
56
+ data: previewObj ? previewObj.previewData : [],
57
+ dataList: this.getUpdateDataList({
58
+ index: previewObj.selectedIndex,
59
+ data: previewObj ? previewObj.previewData : [],
60
+ dataList: []
61
+ }),
62
+ isPViewListOpen: !!(this.props.previewObj && this.props.previewObj.previewData)
63
+ });
64
+ }
65
+ }
66
+ }
67
+
68
+ togglePViewList() {
69
+ this.setState(prevState => ({
70
+ isPViewListOpen: !prevState.isPViewListOpen
71
+ }), () => {
72
+ this.focusSelectedImg(this.state.selectedIndex);
73
+ });
74
+ }
75
+
76
+ zoomOut(ele) {
77
+ this.setState({
78
+ isZoomed: false
79
+ });
80
+ const img = document.getElementById(`img${ele}`);
81
+
82
+ if (img) {
83
+ img.classList.remove(style.zoomedImg);
84
+ img.classList.add(style.normalImg);
85
+ }
86
+ }
87
+
88
+ zoomIn(event, ele) {
89
+ let moveToPosition = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
90
+ this.setState({
91
+ isZoomed: true
92
+ });
93
+ const img = document.getElementById(`img${ele}`);
94
+ const ratio = 95;
95
+ let imgContainer, imgUnits, imgSize, imgRatio, imgContainerUnits, imgContainerPosition;
96
+
97
+ if (moveToPosition) {
98
+ imgContainer = document.getElementById(`imgBox${ele}`);
99
+ imgUnits = img.getBoundingClientRect();
100
+ imgSize = {
101
+ height: img.naturalHeight,
102
+ width: img.naturalWidth
103
+ };
104
+ imgRatio = {
105
+ height: Math.floor(imgSize.height / imgUnits.height / 100 * ratio),
106
+ width: Math.floor(imgSize.width / imgUnits.width / 100 * ratio)
107
+ };
108
+ imgContainerUnits = imgContainer.getBoundingClientRect();
109
+ imgContainerPosition = imgContainer ? {
110
+ top: imgContainerUnits.top,
111
+ left: imgContainerUnits.left
112
+ } : {
113
+ top: 0,
114
+ left: 0
115
+ };
116
+ }
117
+
118
+ if (img) {
119
+ img.classList.remove(style.normalImg);
120
+ img.classList.add(style.zoomedImg);
121
+ }
122
+
123
+ if (moveToPosition) {
124
+ imgContainer.scrollLeft = (event.pageX - imgContainerPosition.left - imgUnits.left) * imgRatio.width;
125
+ imgContainer.scrollTop = (event.pageY - imgContainerPosition.top - imgUnits.top) * imgRatio.height;
126
+ }
127
+ }
128
+
129
+ zoomMaintain(selectedIndex) {
130
+ let {
131
+ isZoomed
132
+ } = this.state;
133
+ isZoomed ? this.zoomIn({}, selectedIndex) : this.zoomOut(selectedIndex);
134
+ }
135
+
136
+ getUpdateDataList(_ref) {
137
+ let {
138
+ index,
139
+ data,
140
+ dataList
141
+ } = _ref;
142
+ data = data || this.state.data;
143
+ dataList = dataList || this.state.dataList;
144
+ const finalDataList = [...dataList];
145
+
146
+ if (index >= finalDataList.length) {
147
+ for (let i = dataList.length; i <= index; i++) {
148
+ finalDataList.push(data.slice(i)[0]);
149
+ }
150
+ } else if (index + 1 === finalDataList.length && index + 1 < data.length) {
151
+ finalDataList.push(data.slice(index + 1)[0]);
152
+ }
153
+
154
+ return finalDataList;
155
+ }
156
+
157
+ updateDataList(index) {
158
+ this.setState({
159
+ dataList: this.getUpdateDataList({
160
+ index
161
+ })
162
+ });
163
+ }
164
+
165
+ changeSelectedIndex(index) {
166
+ const {
167
+ data,
168
+ selectedIndex
169
+ } = this.state;
170
+ const {
171
+ maintainZoom
172
+ } = this.props;
173
+ maintainZoom ? this.zoomMaintain(index) : this.zoomOut(selectedIndex);
174
+
175
+ if (index <= data.length - 1) {
176
+ this.updateDataList(index);
177
+ }
178
+
179
+ this.setState({
180
+ selectedIndex: index
181
+ }, () => {
182
+ this.focusSelectedImg(index);
183
+ });
184
+ }
185
+
186
+ focusSelectedImg(index) {
187
+ const ele = this[`img_${index}`];
188
+
189
+ if (ele) {
190
+ const cont = this.imgListCont;
191
+ cont.scrollLeft = ele.offsetLeft;
192
+ }
193
+ }
194
+
195
+ closeAttachmentViewer() {
196
+ this.setState({
197
+ isPViewListOpen: false,
198
+ isZoomed: false
199
+ });
200
+ this.props.hideAttachmentViewer();
201
+ }
202
+
203
+ responsiveFunc(_ref2) {
204
+ let {
205
+ mediaQueryOR
206
+ } = _ref2;
207
+ return {
208
+ uptoTablet: mediaQueryOR([{
209
+ maxWidth: 768
210
+ }])
211
+ };
212
+ }
213
+
214
+ imgPreviewView() {
215
+ var _this = this;
216
+
217
+ const {
218
+ dataList,
219
+ selectedIndex,
220
+ isZoomed
221
+ } = this.state;
222
+ const {
223
+ maintainZoom
224
+ } = this.props;
225
+
226
+ const getImgStyle = i => {
227
+ let position;
228
+
229
+ if (selectedIndex < i) {
230
+ position = (i - selectedIndex) * 100;
231
+ return {
232
+ transform: `translateX(${parseInt(position)}%)`,
233
+ opacity: '0'
234
+ };
235
+ }
236
+
237
+ if (i === selectedIndex) {
238
+ return {
239
+ transform: 'translateX(0%)',
240
+ opacity: '1'
241
+ };
242
+ }
243
+
244
+ position = (selectedIndex - i) * 100 * -1;
245
+ return {
246
+ transform: `translateX(${parseInt(position)}%)`,
247
+ opacity: '0'
248
+ };
249
+ };
250
+
251
+ return dataList.length && dataList.map(function () {
252
+ let data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
253
+ let i = arguments.length > 1 ? arguments[1] : undefined;
254
+ const selectedImgUrl = data.viewUrl;
255
+ return /*#__PURE__*/React.createElement(Container, {
256
+ className: style.imgBox,
257
+ id: `imgBox${i}`,
258
+ key: i,
259
+ alignBox: "row",
260
+ align: "both",
261
+ style: getImgStyle(i)
262
+ }, /*#__PURE__*/React.createElement(Box, {
263
+ className: style.imgRef,
264
+ id: `imgPreviewRef${i}`
265
+ }, isAudioFile(data.name) ? selectedIndex == i ? /*#__PURE__*/React.createElement("video", {
266
+ autoPlay: true,
267
+ controls: true,
268
+ className: style.zoomIn
269
+ }, /*#__PURE__*/React.createElement("source", {
270
+ src: data.viewUrl,
271
+ type: `audio/${getExtensionFromFileName(data.name)}`
272
+ })) : null : /*#__PURE__*/React.createElement(AttachmentImage, {
273
+ className: `${style.img} ${selectedIndex == i && maintainZoom ? isZoomed ? style.zoomedImg : style.normalImg : ''}`,
274
+ src: selectedImgUrl,
275
+ onClick: isZoomed ? _this.zoomOut.bind(_this, i) : e => {
276
+ _this.zoomIn(e, i, true);
277
+ },
278
+ alt: "Preview",
279
+ dataId: "attachViewer",
280
+ id: `img${i}`,
281
+ isImage: true,
282
+ isCover: false
283
+ })));
284
+ });
285
+ }
286
+
287
+ render() {
288
+ const {
289
+ isPViewListOpen,
290
+ selectedIndex,
291
+ data,
292
+ isZoomed
293
+ } = this.state;
294
+ const {
295
+ responsiveId,
296
+ needDownload,
297
+ i18nKeys,
298
+ isActive
299
+ } = this.props;
300
+ const totalLen = data.length;
301
+ const selectedAttachment = data[selectedIndex] || {};
302
+ const selectedImgUrl = selectedAttachment.viewUrl;
303
+ const downloadUrl = selectedAttachment.downloadUrl;
304
+ let authorHref;
305
+ let authorName;
306
+ const {
307
+ author
308
+ } = data[selectedIndex] ? data[selectedIndex] : {};
309
+
310
+ if (author) {
311
+ authorHref = author.href;
312
+ authorName = author.name;
313
+ }
314
+
315
+ const ariaId = this.getNextId();
316
+ return /*#__PURE__*/React.createElement(FreezeLayer, {
317
+ isActive: isActive && totalLen >= 1,
318
+ palette: "dark",
319
+ animationName: "expand"
320
+ }, /*#__PURE__*/React.createElement(ResponsiveReceiver, {
321
+ responsiveId: responsiveId,
322
+ query: this.responsiveFunc
323
+ }, _ref3 => {
324
+ let {
325
+ uptoTablet
326
+ } = _ref3;
327
+ return /*#__PURE__*/React.createElement(Container, {
328
+ scroll: "none",
329
+ "data-scroll-palette": "dark"
330
+ }, /*#__PURE__*/React.createElement(Box, null, /*#__PURE__*/React.createElement(Container, {
331
+ alignBox: "row",
332
+ className: style.header,
333
+ align: "between",
334
+ tabindex: "0"
335
+ }, /*#__PURE__*/React.createElement(Box, {
336
+ shrink: true,
337
+ className: style.title,
338
+ "data-title": selectedAttachment.name,
339
+ dataId: "attachName",
340
+ id: ariaId
341
+ }, selectedAttachment.name), /*#__PURE__*/React.createElement(Box, {
342
+ flexible: true,
343
+ className: style.count,
344
+ dataId: "attachCountContainer"
345
+ }, selectedIndex + 1, "/", totalLen), /*#__PURE__*/React.createElement(Box, {
346
+ className: uptoTablet ? style.mbleMenuBar : style.menuBar
347
+ }, /*#__PURE__*/React.createElement(Container, {
348
+ isInline: true,
349
+ alignBox: uptoTablet ? 'column-reverse' : 'row',
350
+ align: uptoTablet ? 'bottom' : 'center',
351
+ wrap: "wrap",
352
+ isCover: false
353
+ }, isZoomed ? /*#__PURE__*/React.createElement("div", {
354
+ className: uptoTablet ? style.mobileMenu : style.menu,
355
+ onClick: this.zoomOut.bind(this, selectedIndex),
356
+ "data-id": "zoomOut",
357
+ "data-test-id": "zoomOut",
358
+ "data-title": i18nKeys.zoomOutText
359
+ }, /*#__PURE__*/React.createElement(IconButton, {
360
+ iconName: "ZD-GN-zoomOut",
361
+ className: style.menuIcon,
362
+ iconSize: "16",
363
+ hoverType: "border",
364
+ a11y: {
365
+ ariaLabel: i18nKeys.zoomOutText
366
+ }
367
+ })) : /*#__PURE__*/React.createElement("div", {
368
+ className: uptoTablet ? style.mobileMenu : style.menu,
369
+ onClick: e => this.zoomIn(e, selectedIndex),
370
+ "data-id": "zoomIn",
371
+ "data-test-id": "zoomIn",
372
+ "data-title": i18nKeys.zoomInText
373
+ }, /*#__PURE__*/React.createElement(IconButton, {
374
+ iconName: "ZD-GN-zoomIn",
375
+ className: style.menuIcon,
376
+ iconSize: "16",
377
+ hoverType: "border",
378
+ a11y: {
379
+ ariaLabel: i18nKeys.zoomInText
380
+ }
381
+ })), /*#__PURE__*/React.createElement("div", {
382
+ className: uptoTablet ? style.mobileMenu : style.menu
383
+ }, /*#__PURE__*/React.createElement(Link, {
384
+ href: selectedImgUrl,
385
+ target: "_blank",
386
+ dataId: "newTabAttach",
387
+ title: i18nKeys.newTabText
388
+ }, /*#__PURE__*/React.createElement(IconButton, {
389
+ iconName: "ZD-GN-newLink",
390
+ className: style.menuIcon,
391
+ iconSize: "16",
392
+ hoverType: "border",
393
+ needButtonTag: false,
394
+ a11y: {
395
+ ariaLabel: i18nKeys.newTabText
396
+ }
397
+ }))), needDownload ? /*#__PURE__*/React.createElement("div", {
398
+ className: uptoTablet ? style.mobileMenu : style.menu
399
+ }, /*#__PURE__*/React.createElement(Link, {
400
+ href: downloadUrl,
401
+ target: "_parent",
402
+ hasReload: true,
403
+ download: true,
404
+ title: i18nKeys.downloadText
405
+ }, /*#__PURE__*/React.createElement(IconButton, {
406
+ iconName: "ZD-GN-download",
407
+ className: style.menuIcon,
408
+ iconSize: "16",
409
+ hoverType: "border",
410
+ needButtonTag: false,
411
+ a11y: {
412
+ ariaLabel: i18nKeys.downloadText
413
+ }
414
+ }))) : null, /*#__PURE__*/React.createElement("div", {
415
+ className: uptoTablet ? style.mobileMenu : style.menu,
416
+ onClick: this.closeAttachmentViewer,
417
+ "data-id": "closeAttach",
418
+ "data-test-id": "closeAttach",
419
+ "data-title": i18nKeys.closeText
420
+ }, /*#__PURE__*/React.createElement(IconButton, {
421
+ iconName: "ZD-cross",
422
+ iconSize: "15",
423
+ hoverType: "border",
424
+ className: style.menuIcon,
425
+ a11y: {
426
+ ariaLabel: i18nKeys.closeText
427
+ },
428
+ title: i18nKeys.closeText
429
+ })))))), /*#__PURE__*/React.createElement(Box, {
430
+ flexible: true,
431
+ role: "toolbar",
432
+ tabindex: "0"
433
+ }, /*#__PURE__*/React.createElement(Container, {
434
+ alignBox: "row"
435
+ }, /*#__PURE__*/React.createElement(Box, {
436
+ className: `${style.arrowBox} ${uptoTablet ? style.mbleArrowBox : style.nrmlArrowBox} ${selectedIndex === 0 ? style.hidden : ''}`,
437
+ onClick: this.changeSelectedIndex.bind(this, selectedIndex - 1),
438
+ "data-title": i18nKeys.previousText,
439
+ "data-title-position": "left"
440
+ }, /*#__PURE__*/React.createElement("button", {
441
+ className: style.btn,
442
+ "aria-label": i18nKeys.previousText
443
+ }, /*#__PURE__*/React.createElement(Icon, {
444
+ name: "ZD-arrowLeft3",
445
+ iconClass: style.arrow,
446
+ dataId: "leftAttachNav",
447
+ isBold: true
448
+ }))), /*#__PURE__*/React.createElement(Box, {
449
+ className: style.previewBox,
450
+ role: "option",
451
+ tabindex: "0",
452
+ "aria-describedby": ariaId,
453
+ isShrink: false,
454
+ eleRef: this.setImgBoxRef,
455
+ scroll: "both",
456
+ flexible: true
457
+ }, this.imgPreviewView()), /*#__PURE__*/React.createElement(Box, {
458
+ className: `${style.arrowBox} ${uptoTablet ? style.mbleArrowBox : style.nrmlArrowBox} ${totalLen === selectedIndex + 1 ? style.hidden : ''}`,
459
+ onClick: this.changeSelectedIndex.bind(this, selectedIndex + 1),
460
+ "data-title": i18nKeys.nextText,
461
+ "data-title-position": "right"
462
+ }, /*#__PURE__*/React.createElement("button", {
463
+ className: style.btn,
464
+ "aria-label": i18nKeys.nextText
465
+ }, /*#__PURE__*/React.createElement(Icon, {
466
+ name: "ZD-arrowRight3",
467
+ iconClass: style.arrow,
468
+ dataId: "rightAttachNav",
469
+ isBold: true
470
+ }))))), /*#__PURE__*/React.createElement(Box, {
471
+ className: `${style.footer} ${isPViewListOpen && totalLen !== 1 ? style.footerHeight : style.footerHide} `
472
+ }, /*#__PURE__*/React.createElement(Container, {
473
+ align: "vertical",
474
+ alignBox: "row",
475
+ className: style.footerHeight
476
+ }, author && /*#__PURE__*/React.createElement(Box, {
477
+ className: style.author
478
+ }, /*#__PURE__*/React.createElement(Container, {
479
+ alignBox: "row",
480
+ align: "both"
481
+ }, /*#__PURE__*/React.createElement(Avatar, {
482
+ name: authorName,
483
+ size: "xmedium",
484
+ src: authorHref,
485
+ palette: "info"
486
+ }), /*#__PURE__*/React.createElement(Box, {
487
+ flexible: true,
488
+ className: style.authorName,
489
+ "data-title": authorName
490
+ }, authorName))), /*#__PURE__*/React.createElement(Box, {
491
+ flexible: true
492
+ }, /*#__PURE__*/React.createElement(Container, {
493
+ align: "vertical",
494
+ alignBox: "row",
495
+ scroll: "horizontal",
496
+ eleRef: el => this.imgListCont = el,
497
+ className: style.listContainer
498
+ }, data.map((item, index) => {
499
+ const {
500
+ name,
501
+ viewUrl
502
+ } = item;
503
+ const isAudio = isAudioFile(name);
504
+ return /*#__PURE__*/React.createElement(Box, {
505
+ className: `${style.imgItem} ${index === selectedIndex ? style.selected : ''} ${isAudio ? style.isAudio : ''}`,
506
+ key: index,
507
+ onClick: this.changeSelectedIndex.bind(this, index),
508
+ eleRef: el => this[`img_${index}`] = el,
509
+ dataId: "attachPreviewList",
510
+ "data-title": name
511
+ }, /*#__PURE__*/React.createElement(AttachmentImage, {
512
+ src: viewUrl,
513
+ size: "small",
514
+ alt: name,
515
+ className: style.image,
516
+ isImage: !isAudio,
517
+ dataId: "AttachmentImage"
518
+ }));
519
+ }))))), totalLen !== 1 && /*#__PURE__*/React.createElement(IconButton, {
520
+ dataId: "attachToggle",
521
+ onClick: this.togglePViewList,
522
+ iconName: "ZD-GN-hideTab",
523
+ iconSize: "14",
524
+ hoverType: "border",
525
+ iconClass: `${style.thumpIcon} ${isPViewListOpen ? style.thumpIconActive : ''}`,
526
+ className: style.button,
527
+ a11y: {
528
+ ariaLabel: i18nKeys.hideText
529
+ },
530
+ title: isPViewListOpen ? i18nKeys.hideText : i18nKeys.showText
531
+ }));
532
+ }));
533
+ }
534
+
535
+ }
536
+ AttachmentViewer.propTypes = AttachmentViewer_propTypes;
537
+ AttachmentViewer.defaultProps = AttachmentViewer_defaultProps; // if (__DOCS__) {
538
+ // AttachmentViewer.docs = {
539
+ // componentGroup: "Molecule"
540
+ // };
541
+ // }
@@ -1,7 +1,7 @@
1
1
  import React, { Component } from 'react';
2
2
  import { Icon } from '@zohodesk/icons';
3
- import Avatar from '@zohodesk/components/lib/Avatar/Avatar';
4
- import AvatarIcon from '../../avatar/AvatarIcon/AvatarIcon';
3
+ import Avatar from '@zohodesk/components/es/v1/Avatar/Avatar';
4
+ import AvatarIcon from '../avatar/AvatarIcon/AvatarIcon';
5
5
  import { defaultProps } from '../../ChannelIcon/props/defaultProps';
6
6
  import { propTypes } from '../../ChannelIcon/props/propTypes';
7
7
  import { getChannelMappingObj } from '../../utils/ChannelIconMapping';