@zohodesk/dot 1.0.0-temp-38 → 1.0.0-temp-39

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 (1008) hide show
  1. package/README.md +883 -906
  2. package/__testUtils__/globals.js +0 -0
  3. package/dubFinder.js +96 -96
  4. package/es/ActionButton/ActionButton.js +2 -2
  5. package/es/ActionButton/ActionButton.module.css +136 -136
  6. package/es/AlphabeticList/AlphabeticList.module.css +57 -57
  7. package/es/Appearance/dark/mode/dotDarkMode.module.css +536 -536
  8. package/es/Appearance/dark/themes/blue/blueDarkDotTheme.module.css +7 -7
  9. package/es/Appearance/dark/themes/green/greenDarkDotTheme.module.css +7 -7
  10. package/es/Appearance/dark/themes/orange/orangeDarkDotTheme.module.css +7 -7
  11. package/es/Appearance/dark/themes/red/redDarkDotTheme.module.css +7 -7
  12. package/es/Appearance/dark/themes/yellow/yellowDarkDotTheme.module.css +7 -7
  13. package/es/Appearance/default/mode/dotDefaultMode.module.css +536 -536
  14. package/es/Appearance/default/themes/blue/blueDefaultDotTheme.module.css +7 -7
  15. package/es/Appearance/default/themes/green/greenDefaultDotTheme.module.css +7 -7
  16. package/es/Appearance/default/themes/orange/orangeDefaultDotTheme.module.css +7 -7
  17. package/es/Appearance/default/themes/red/redDefaultDotTheme.module.css +7 -7
  18. package/es/Appearance/default/themes/yellow/yellowDefaultDotTheme.module.css +7 -7
  19. package/es/Attachment/Attachment.module.css +132 -132
  20. package/es/ChannelIcon/ChannelIcon.module.css +217 -217
  21. package/es/Drawer/Drawer.js +0 -0
  22. package/es/Drawer/Drawer.module.css +151 -151
  23. package/es/ExternalLink/ExternalLink.js +0 -0
  24. package/es/ExternalLink/ExternalLink.module.css +3 -3
  25. package/es/ExternalLink/__tests__/ExternalLink.spec.js +0 -0
  26. package/es/ExternalLink/docs/ExternalLink__default.docs.js +0 -0
  27. package/es/FlipCard/FlipCard.module.css +44 -44
  28. package/es/FormAction/FormAction.module.css +82 -82
  29. package/es/FreezeLayer/FreezeLayer.module.css +42 -42
  30. package/es/IconButton/IconButton.js +2 -2
  31. package/es/IconButton/IconButton.module.css +22 -22
  32. package/es/Image/Image.module.css +10 -10
  33. package/es/ImportantNotes/ImportantNotes.module.css +20 -20
  34. package/es/Link/Link.js +1 -1
  35. package/es/Link/Link.module.css +3 -3
  36. package/es/Link/docs/Link__default.docs.js +0 -0
  37. package/es/Loader/Loader.module.css +46 -46
  38. package/es/Message/Message.js +2 -1
  39. package/es/Message/Message.module.css +102 -102
  40. package/es/Message/docs/Message__default.docs.js +2 -1
  41. package/es/MessageBanner/MessageBanner.module.css +45 -45
  42. package/es/NewStar/NewStar.module.css +110 -110
  43. package/es/NewStar/docs/NewStar__default.docs.js +0 -0
  44. package/es/PlusIcon/PlusIcon.js +0 -0
  45. package/es/PlusIcon/PlusIcon.module.css +16 -16
  46. package/es/PlusIcon/docs/PlusIcon__default.docs.js +0 -0
  47. package/es/Provider.js +35 -88
  48. package/es/ToastMessage/ToastMessage.js +0 -0
  49. package/es/ToastMessage/ToastMessage.module.css +332 -332
  50. package/es/ToastMessage/docs/ToastMessage__information.docs.js +0 -0
  51. package/es/ToastMessage/docs/ToastMessage__primary.docs.js +0 -0
  52. package/es/ToastMessage/docs/ToastMessage__secondary.docs.js +0 -0
  53. package/es/ToastMessage/docs/ToastMessage__success.docs.js +0 -0
  54. package/es/Upload/Upload.module.css +125 -125
  55. package/es/alert/AlertHeader/AlertHeader.module.css +80 -80
  56. package/es/alert/AlertLookup/AlertLookup.module.css +26 -26
  57. package/es/avatar/AvatarClose/AvatarClose.module.css +37 -37
  58. package/es/avatar/AvatarCollision/AvatarCollision.module.css +69 -69
  59. package/es/avatar/AvatarIcon/AvatarIcon.js +1 -1
  60. package/es/avatar/AvatarIcon/AvatarIcon.module.css +58 -58
  61. package/es/avatar/AvatarStatus/AvatarStatus.js +1 -1
  62. package/es/avatar/AvatarStatus/AvatarStatus.module.css +146 -146
  63. package/es/avatar/AvatarStatus/docs/AvatarStatus__size.docs.js +0 -0
  64. package/es/avatar/AvatarStatus/docs/AvatarStatus__state.docs.js +21 -22
  65. package/es/avatar/AvatarThread/AvatarThread.module.css +163 -163
  66. package/es/avatar/AvatarUser/AvatarUser.js +0 -0
  67. package/es/avatar/AvatarUser/AvatarUser.module.css +171 -171
  68. package/es/avatar/AvatarWithTeam/AvatarWithTeam.module.css +23 -23
  69. package/es/deprecated/SelectDropdown/SelectDropdown.module.css +55 -55
  70. package/es/deprecated/Theme/dotDarkTheme.module.css +532 -532
  71. package/es/deprecated/Theme/dotDefaultTheme.module.css +532 -532
  72. package/es/deprecated/Theme/palette/darkPalette.module.css +39 -39
  73. package/es/deprecated/Theme/palette/defaultPalette.module.css +39 -39
  74. package/es/dropdown/ToggleDropDown/ToggleDropDown.js +9 -25
  75. package/es/dropdown/ToggleDropDown/ToggleDropDown.module.css +97 -97
  76. package/es/emptystate/CommonEmptyState/CommonEmptyState.js +0 -0
  77. package/es/emptystate/CommonEmptyState/CommonEmptyState.module.css +85 -85
  78. package/es/emptystate/EditionPage/EditionPage.css +43 -43
  79. package/es/errorstate/EmptyStates.module.css +87 -87
  80. package/es/errorstate/Inconvenience/Inconvenience.module.css +7 -7
  81. package/es/errorstate/LinkText/LinkText.module.css +6 -6
  82. package/es/errorstate/NoRequestFound/NoRequestFound.module.css +3 -3
  83. package/es/errorstate/PermissionPlay/PermissionPlay.module.css +34 -34
  84. package/es/errorstate/RequestUrlNotFound/RequestUrlNotFound.module.css +3 -3
  85. package/es/errorstate/UnableToProcess/UnableToProcess.module.css +3 -3
  86. package/es/errorstate/UnauthorizedLogin/UnauthorizedLogin.module.css +3 -3
  87. package/es/errorstate/WillBack/WillBack.module.css +34 -34
  88. package/es/form/fields/CheckBoxField/CheckBoxField.js +0 -0
  89. package/es/form/fields/Fields.module.css +181 -181
  90. package/es/form/fields/TagsMultiSelect/TagsMultiSelect.module.css +107 -107
  91. package/es/form/fields/TagsMultiSelectField/TagsMultiSelectField.module.css +9 -9
  92. package/es/form/fields/TextEditor/TextEditor.js +4 -9
  93. package/es/form/fields/TextEditor/TextEditor.module.css +634 -654
  94. package/es/form/fields/TextEditorField/TextEditorField.js +3 -5
  95. package/es/form/fields/TextEditorWrapper/TextEditorWrapper.module.css +36 -36
  96. package/es/form/fields/ValidationMessage/ValidationMessage.module.css +12 -12
  97. package/es/form/layout/Field/Field.js +0 -0
  98. package/es/form/layout/Field/Field.module.css +22 -22
  99. package/es/form/layout/Field/docs/Field__default.docs.js +0 -0
  100. package/es/form/layout/Section/ModuleFormSection.module.css +3 -3
  101. package/es/form/layout/Section/Section.js +0 -0
  102. package/es/form/layout/Section/docs/Section__default.docs.js +0 -0
  103. package/es/layout/SetupDetailLayout/SetupDetailLayout.module.css +152 -152
  104. package/es/layout/SubtabLayout/SubtabLayout.module.css +146 -146
  105. package/es/list/AvatarFlip/AvatarFlip.module.css +3 -3
  106. package/es/list/BluePrintStatus/BluePrintStatus.module.css +17 -17
  107. package/es/list/Comment/Comment.module.css +29 -29
  108. package/es/list/DepartmentDropDown/DepartmentDropDown.module.css +9 -9
  109. package/es/list/Dot/Dot.module.css +15 -15
  110. package/es/list/DotNew/DotNew.module.css +22 -22
  111. package/es/list/GridStencils/GridStencils.module.css +156 -156
  112. package/es/list/Icons/FloatingIcons.js +1 -1
  113. package/es/list/Icons/Icons.module.css +15 -15
  114. package/es/list/Icons/docs/FloatingIcons__default.docs.js +1 -7
  115. package/es/list/ListLayout/ListLayout.module.css +33 -33
  116. package/es/list/ListStencils/ListStencils.module.css +67 -67
  117. package/es/list/SecondaryText/SecondaryText.module.css +136 -136
  118. package/es/list/SecondaryText/Website.js +0 -0
  119. package/es/list/SecondryPanel/SecondryPanel.js +0 -0
  120. package/es/list/SecondryPanel/SecondryPanel.module.css +5 -5
  121. package/es/list/SecondryPanel/docs/SecondryPanelDocs.module.css +37 -37
  122. package/es/list/SentimentStatus/SentimentStatus.module.css +12 -12
  123. package/es/list/Subject/Subject.module.css +27 -27
  124. package/es/list/TagNew/TagNew.module.css +115 -115
  125. package/es/list/Thread/Thread.module.css +42 -42
  126. package/es/list/UserTime/UserTime.js +1 -1
  127. package/es/list/UserTime/UserTime.module.css +58 -58
  128. package/es/list/listCommon.module.css +60 -60
  129. package/es/list/status/StatusDropdown/StatusDropdown.js +1 -1
  130. package/es/list/status/StatusDropdown/StatusDropdown.module.css +89 -89
  131. package/es/list/status/StatusListItem/StatusListItem.js +0 -0
  132. package/es/list/status/StatusListItem/StatusListItem.module.css +104 -104
  133. package/es/lookup/EmptyPage/EmptyPage.js +0 -0
  134. package/es/lookup/EmptyPage/LookupEmptyPage.module.css +12 -12
  135. package/es/lookup/Lookup/Lookup.js +0 -0
  136. package/es/lookup/Lookup/Lookup.module.css +26 -26
  137. package/es/lookup/Lookup/docs/Lookup__contact.docs.js +14 -14
  138. package/es/lookup/Section/LookupSection.module.css +8 -8
  139. package/es/lookup/header/Close/LookupClose.module.css +15 -15
  140. package/es/lookup/header/Search/LookupSearch.module.css +57 -57
  141. package/es/lookup/header/TicketHeader/TicketHeader.module.css +22 -22
  142. package/es/lookup/header/Title/LookupTitle.module.css +20 -20
  143. package/es/lookup/header/ViewDropDown/ViewDropDown.module.css +51 -51
  144. package/es/lookup/header/lookupHeaderCommon.module.css +35 -35
  145. package/es/lookup/header/lookupHeaderCommonResponsive.module.css +24 -24
  146. package/es/setup/header/Button/HeaderButton.module.css +5 -5
  147. package/es/setup/header/Link/HeaderLink.module.css +21 -21
  148. package/es/setup/header/Search/Search.module.css +68 -68
  149. package/es/setup/header/Views/Views.module.css +37 -37
  150. package/es/setup/helptips/Description/HelpTipsDescription.module.css +6 -6
  151. package/es/setup/helptips/Description/docs/Description__default.docs.js +0 -0
  152. package/es/setup/helptips/Link/HelpTipsLink.module.css +7 -7
  153. package/es/setup/helptips/Link/Link.js +2 -1
  154. package/es/setup/helptips/Link/docs/Link__default.docs.js +0 -0
  155. package/es/setup/helptips/ListGroup/ListGroup.module.css +22 -22
  156. package/es/setup/helptips/Title/HelpTipsTitle.module.css +5 -5
  157. package/es/setup/helptips/Title/Title.js +0 -0
  158. package/es/setup/helptips/Title/docs/Title__default.docs.js +0 -0
  159. package/es/setup/table/TableData/SetupTableData.module.css +44 -44
  160. package/es/setup/table/TableData/Tablehover.module.css +6 -6
  161. package/es/setup/table/TableHead/SetupTableHead.module.css +12 -12
  162. package/es/setup/table/TableRow/SetupTableRow.module.css +14 -14
  163. package/es/setup/table/Text/TableText.module.css +37 -37
  164. package/es/setup/table/Text/Text.js +0 -0
  165. package/es/setup/table/Text/docs/Text__default.docs.js +0 -0
  166. package/es/svg/PlusIcon.js +1 -1
  167. package/es/svg/SnippetIcon.js +2 -2
  168. package/es/utils/KeyboardApi.js +26 -28
  169. package/es/version2/AlertClose/AlertClose.module.css +42 -42
  170. package/es/version2/GlobalNotification/GlobalNotification.js +2 -1
  171. package/es/version2/GlobalNotification/GlobalNotification.module.css +124 -124
  172. package/es/version2/alertIcons/AlertIcons.module.css +67 -67
  173. package/es/version2/errorstate/Inconvenience/Inconvenience.js +1 -1
  174. package/es/version2/errorstate/{V2_ErrorStates.module.css → Inconvenience/V2_Inconvenience.module.css} +46 -46
  175. package/es/version2/errorstate/OopsSomethingMiss/OopsSomethingMiss.js +2 -3
  176. package/{lib/version2/errorstate/V2_ErrorStates.module.css → es/version2/errorstate/OopsSomethingMiss/V2_OopsSomethingMiss.module.css} +46 -46
  177. package/es/version2/errorstate/UnableToProcessRequest/UnableToProcessRequest.js +1 -1
  178. package/{src/version2/errorstate/V2_ErrorStates.module.css → es/version2/errorstate/UnableToProcessRequest/V2_UnableToProcessRequest.module.css} +46 -46
  179. package/es/version2/errorstate/UnauthorizedLogin/UnauthorizedLogin.js +3 -4
  180. package/es/version2/errorstate/UnauthorizedLogin/V2_UnauthorizedLogin.module.css +46 -0
  181. package/es/version2/errorstate/UrlNotFound/UrlNotFound.js +1 -1
  182. package/es/version2/errorstate/UrlNotFound/V2_UrlNotFound.module.css +46 -0
  183. package/es/version2/errorstate/WillBeRightBack/V2_WillBeRightBack.module.css +46 -0
  184. package/es/version2/errorstate/WillBeRightBack/WillBeRightBack.js +1 -1
  185. package/es/version2/lookup/AlertHeader/AlertHeaderNew.module.css +86 -86
  186. package/es/version2/lookup/AlertLookup/AlertLookup.js +1 -1
  187. package/es/version2/lookup/AlertLookup/AlertLookupNew.module.css +43 -43
  188. package/es/version2/lookup/alertLookupCommonNew.module.css +32 -32
  189. package/es/version2/notification/DesktopNotification/DesktopNotification.module.css +110 -110
  190. package/es/version2/notification/DesktopNotificationHeader/DesktopNotificationHeader.module.css +136 -136
  191. package/lib/ActionButton/ActionButton.js +3 -3
  192. package/lib/ActionButton/ActionButton.module.css +136 -136
  193. package/lib/ActionButton/docs/ActionButton__default.docs.js +1 -1
  194. package/lib/AlphabeticList/AlphabeticList.js +1 -1
  195. package/lib/AlphabeticList/AlphabeticList.module.css +57 -57
  196. package/lib/AlphabeticList/docs/AlphabeticList__default.docs.js +1 -1
  197. package/lib/AlphabeticList/docs/AlphabeticList__horizontal.docs.js +1 -1
  198. package/lib/Appearance/dark/mode/dotDarkMode.module.css +536 -536
  199. package/lib/Appearance/dark/themes/blue/blueDarkDotTheme.module.css +7 -7
  200. package/lib/Appearance/dark/themes/green/greenDarkDotTheme.module.css +7 -7
  201. package/lib/Appearance/dark/themes/orange/orangeDarkDotTheme.module.css +7 -7
  202. package/lib/Appearance/dark/themes/red/redDarkDotTheme.module.css +7 -7
  203. package/lib/Appearance/dark/themes/yellow/yellowDarkDotTheme.module.css +7 -7
  204. package/lib/Appearance/default/mode/dotDefaultMode.module.css +536 -536
  205. package/lib/Appearance/default/themes/blue/blueDefaultDotTheme.module.css +7 -7
  206. package/lib/Appearance/default/themes/green/greenDefaultDotTheme.module.css +7 -7
  207. package/lib/Appearance/default/themes/orange/orangeDefaultDotTheme.module.css +7 -7
  208. package/lib/Appearance/default/themes/red/redDefaultDotTheme.module.css +7 -7
  209. package/lib/Appearance/default/themes/yellow/yellowDefaultDotTheme.module.css +7 -7
  210. package/lib/Attachment/Attachment.js +1 -1
  211. package/lib/Attachment/Attachment.module.css +132 -132
  212. package/lib/Attachment/docs/Attachment__default.docs.js +1 -1
  213. package/lib/ChannelIcon/ChannelIcon.js +1 -1
  214. package/lib/ChannelIcon/ChannelIcon.module.css +217 -217
  215. package/lib/ChannelIcon/docs/ChannelIcon__default.docs.js +1 -1
  216. package/lib/Drawer/Drawer.js +1 -1
  217. package/lib/Drawer/Drawer.module.css +151 -151
  218. package/lib/Drawer/docs/Drawer__default.docs.js +1 -1
  219. package/lib/Drawer/docs/Drawer__multiDrawer.docs.js +1 -1
  220. package/lib/Drawer/docs/Drawer__noFreeze.docs.js +1 -1
  221. package/lib/Drawer/docs/Drawer__withModal.docs.js +1 -1
  222. package/lib/ExternalLink/ExternalLink.js +1 -1
  223. package/lib/ExternalLink/ExternalLink.module.css +3 -3
  224. package/lib/ExternalLink/__tests__/ExternalLink.spec.js +0 -0
  225. package/lib/ExternalLink/docs/ExternalLink__default.docs.js +1 -1
  226. package/lib/FlipCard/FlipCard.js +1 -1
  227. package/lib/FlipCard/FlipCard.module.css +44 -44
  228. package/lib/FlipCard/docs/FlipCard__default.docs.js +1 -1
  229. package/lib/FormAction/FormAction.js +1 -1
  230. package/lib/FormAction/FormAction.module.css +82 -82
  231. package/lib/FormAction/docs/FormAction__default.docs.js +1 -1
  232. package/lib/FreezeLayer/FreezeLayer.js +1 -1
  233. package/lib/FreezeLayer/FreezeLayer.module.css +42 -42
  234. package/lib/FreezeLayer/docs/FreezeLayer__dark.docs.js +1 -1
  235. package/lib/FreezeLayer/docs/FreezeLayer__default.docs.js +1 -1
  236. package/lib/IconButton/IconButton.js +3 -3
  237. package/lib/IconButton/IconButton.module.css +22 -22
  238. package/lib/IconButton/docs/IconButton__default.docs.js +1 -1
  239. package/lib/Image/Image.js +1 -1
  240. package/lib/Image/Image.module.css +10 -10
  241. package/lib/Image/docs/Image__default.docs.js +1 -1
  242. package/lib/ImportantNotes/ImportantNotes.js +1 -1
  243. package/lib/ImportantNotes/ImportantNotes.module.css +20 -20
  244. package/lib/ImportantNotes/docs/ImportantNotes__default.docs.js +1 -1
  245. package/lib/Link/Link.js +2 -2
  246. package/lib/Link/Link.module.css +3 -3
  247. package/lib/Link/docs/Link__default.docs.js +1 -1
  248. package/lib/Loader/Loader.js +1 -1
  249. package/lib/Loader/Loader.module.css +46 -46
  250. package/lib/Loader/docs/Loader__default.docs.js +1 -1
  251. package/lib/Message/Message.js +4 -2
  252. package/lib/Message/Message.module.css +102 -102
  253. package/lib/Message/docs/Message__default.docs.js +3 -2
  254. package/lib/MessageBanner/MessageBanner.js +1 -1
  255. package/lib/MessageBanner/MessageBanner.module.css +45 -45
  256. package/lib/MessageBanner/docs/MessageBanner__default.docs.js +1 -1
  257. package/lib/NewStar/NewStar.js +1 -1
  258. package/lib/NewStar/NewStar.module.css +110 -110
  259. package/lib/NewStar/docs/NewStar__default.docs.js +1 -1
  260. package/lib/PlusIcon/PlusIcon.js +1 -1
  261. package/lib/PlusIcon/PlusIcon.module.css +16 -16
  262. package/lib/PlusIcon/docs/PlusIcon__default.docs.js +1 -1
  263. package/lib/Provider.js +38 -113
  264. package/lib/ToastMessage/ToastMessage.js +1 -1
  265. package/lib/ToastMessage/ToastMessage.module.css +332 -332
  266. package/lib/ToastMessage/docs/ToastMessage__custom.docs.js +1 -1
  267. package/lib/ToastMessage/docs/ToastMessage__information.docs.js +1 -1
  268. package/lib/ToastMessage/docs/ToastMessage__primary.docs.js +1 -1
  269. package/lib/ToastMessage/docs/ToastMessage__secondary.docs.js +1 -1
  270. package/lib/ToastMessage/docs/ToastMessage__success.docs.js +1 -1
  271. package/lib/Upload/Upload.js +1 -1
  272. package/lib/Upload/Upload.module.css +125 -125
  273. package/lib/Upload/docs/Upload__default.docs.js +1 -1
  274. package/lib/actions/AutoClose.js +1 -1
  275. package/lib/alert/AlertHeader/AlertHeader.js +1 -1
  276. package/lib/alert/AlertHeader/AlertHeader.module.css +80 -80
  277. package/lib/alert/AlertHeader/docs/AlertHeader__default.docs.js +1 -1
  278. package/lib/alert/AlertLookup/AlertLookup.js +1 -1
  279. package/lib/alert/AlertLookup/AlertLookup.module.css +26 -26
  280. package/lib/alert/AlertLookup/docs/AlertLookup__default.docs.js +1 -1
  281. package/lib/avatar/AvatarClose/AvatarClose.js +1 -1
  282. package/lib/avatar/AvatarClose/AvatarClose.module.css +37 -37
  283. package/lib/avatar/AvatarClose/docs/AvatarClose__default.docs.js +1 -1
  284. package/lib/avatar/AvatarCollision/AvatarCollision.js +1 -1
  285. package/lib/avatar/AvatarCollision/AvatarCollision.module.css +69 -69
  286. package/lib/avatar/AvatarCollision/docs/AvatarCollision__default.docs.js +1 -1
  287. package/lib/avatar/AvatarIcon/AvatarIcon.js +2 -2
  288. package/lib/avatar/AvatarIcon/AvatarIcon.module.css +58 -58
  289. package/lib/avatar/AvatarIcon/docs/AvatarIcon__palette.docs.js +1 -1
  290. package/lib/avatar/AvatarIcon/docs/AvatarIcon__size.docs.js +1 -1
  291. package/lib/avatar/AvatarStatus/AvatarStatus.js +2 -2
  292. package/lib/avatar/AvatarStatus/AvatarStatus.module.css +146 -146
  293. package/lib/avatar/AvatarStatus/docs/AvatarStatus__size.docs.js +1 -1
  294. package/lib/avatar/AvatarStatus/docs/AvatarStatus__state.docs.js +22 -23
  295. package/lib/avatar/AvatarThread/AvatarThread.js +1 -1
  296. package/lib/avatar/AvatarThread/AvatarThread.module.css +163 -163
  297. package/lib/avatar/AvatarThread/docs/AvatarThread__default.docs.js +1 -1
  298. package/lib/avatar/AvatarUser/AvatarUser.js +1 -1
  299. package/lib/avatar/AvatarUser/AvatarUser.module.css +171 -171
  300. package/lib/avatar/AvatarUser/docs/AvatarUser__default.docs.js +1 -1
  301. package/lib/avatar/AvatarWithTeam/AvatarWithTeam.js +1 -1
  302. package/lib/avatar/AvatarWithTeam/AvatarWithTeam.module.css +23 -23
  303. package/lib/avatar/AvatarWithTeam/docs/AvatarWithTeam__default.docs.js +1 -1
  304. package/lib/deprecated/SelectDropdown/SelectDropdown.js +1 -1
  305. package/lib/deprecated/SelectDropdown/SelectDropdown.module.css +55 -55
  306. package/lib/deprecated/SelectDropdown/docs/SelectDropdown__default.docs.js +1 -1
  307. package/lib/deprecated/Theme/dotDarkTheme.module.css +532 -532
  308. package/lib/deprecated/Theme/dotDefaultTheme.module.css +532 -532
  309. package/lib/deprecated/Theme/palette/darkPalette.module.css +39 -39
  310. package/lib/deprecated/Theme/palette/defaultPalette.module.css +39 -39
  311. package/lib/dropdown/ToggleDropDown/ToggleDropDown.js +68 -84
  312. package/lib/dropdown/ToggleDropDown/ToggleDropDown.module.css +97 -97
  313. package/lib/dropdown/ToggleDropDown/docs/ToggleDropDown__default.docs.js +1 -1
  314. package/lib/emptystate/CommonEmptyState/CommonEmptyState.js +1 -1
  315. package/lib/emptystate/CommonEmptyState/CommonEmptyState.module.css +85 -85
  316. package/lib/emptystate/CommonEmptyState/docs/CommonEmptyState__default.docs.js +1 -1
  317. package/lib/emptystate/EditionPage/EditionPage.css +43 -43
  318. package/lib/emptystate/EditionPage/EditionPage.js +1 -1
  319. package/lib/emptystate/EditionPage/docs/EditionPage__default.docs.js +1 -1
  320. package/lib/errorstate/EmptyStates.module.css +87 -87
  321. package/lib/errorstate/Inconvenience/Inconvenience.js +1 -1
  322. package/lib/errorstate/Inconvenience/Inconvenience.module.css +7 -7
  323. package/lib/errorstate/Inconvenience/docs/Inconvenience__default.docs.js +1 -1
  324. package/lib/errorstate/LinkText/LinkText.js +1 -1
  325. package/lib/errorstate/LinkText/LinkText.module.css +6 -6
  326. package/lib/errorstate/LinkText/docs/LinkText__default.docs.js +1 -1
  327. package/lib/errorstate/NoRequestFound/NoRequestFound.js +1 -1
  328. package/lib/errorstate/NoRequestFound/NoRequestFound.module.css +3 -3
  329. package/lib/errorstate/NoRequestFound/docs/NoRequestFound__default.docs.js +1 -1
  330. package/lib/errorstate/PermissionPlay/PermissionPlay.js +1 -1
  331. package/lib/errorstate/PermissionPlay/PermissionPlay.module.css +34 -34
  332. package/lib/errorstate/PermissionPlay/docs/PermissionPlay__default.docs.js +1 -1
  333. package/lib/errorstate/RequestUrlNotFound/RequestUrlNotFound.js +1 -1
  334. package/lib/errorstate/RequestUrlNotFound/RequestUrlNotFound.module.css +3 -3
  335. package/lib/errorstate/RequestUrlNotFound/docs/RequestUrlNotFound__default.docs.js +1 -1
  336. package/lib/errorstate/UnableToProcess/UnableToProcess.js +1 -1
  337. package/lib/errorstate/UnableToProcess/UnableToProcess.module.css +3 -3
  338. package/lib/errorstate/UnableToProcess/docs/UnableToProcess__default.docs.js +1 -1
  339. package/lib/errorstate/UnauthorizedLogin/UnauthorizedLogin.js +1 -1
  340. package/lib/errorstate/UnauthorizedLogin/UnauthorizedLogin.module.css +3 -3
  341. package/lib/errorstate/UnauthorizedLogin/docs/UnauthorizedLogin__insufficient.docs.js +1 -1
  342. package/lib/errorstate/UnauthorizedLogin/docs/UnauthorizedLogin__unauthorizedLogin.docs.js +1 -1
  343. package/lib/errorstate/WillBack/WillBack.js +1 -1
  344. package/lib/errorstate/WillBack/WillBack.module.css +34 -34
  345. package/lib/errorstate/WillBack/docs/WillBack__default.docs.js +1 -1
  346. package/lib/form/fields/CheckBoxField/CheckBoxField.js +1 -1
  347. package/lib/form/fields/CheckBoxField/docs/CheckBoxField__default.docs.js +1 -1
  348. package/lib/form/fields/CurrencyField/CurrencyField.js +1 -1
  349. package/lib/form/fields/DateField/DateField.js +1 -1
  350. package/lib/form/fields/DateField/docs/DateField__default.docs.js +1 -1
  351. package/lib/form/fields/Fields.module.css +181 -181
  352. package/lib/form/fields/MultiSelectField/MultiSelectField.js +1 -1
  353. package/lib/form/fields/MultiSelectField/docs/MultiSelectField__default.docs.js +1 -1
  354. package/lib/form/fields/PhoneField/PhoneField.js +1 -1
  355. package/lib/form/fields/PhoneField/docs/PhoneField__default.docs.js +1 -1
  356. package/lib/form/fields/RadioField/RadioField.js +1 -1
  357. package/lib/form/fields/SelectField/SelectField.js +1 -1
  358. package/lib/form/fields/SelectField/docs/SelectField__default.docs.js +1 -1
  359. package/lib/form/fields/TagsMultiSelect/TagsMultiSelect.js +1 -1
  360. package/lib/form/fields/TagsMultiSelect/TagsMultiSelect.module.css +107 -107
  361. package/lib/form/fields/TagsMultiSelect/docs/TagsMultiSelect__default.docs.js +1 -1
  362. package/lib/form/fields/TagsMultiSelectField/TagsMultiSelectField.js +1 -1
  363. package/lib/form/fields/TagsMultiSelectField/TagsMultiSelectField.module.css +9 -9
  364. package/lib/form/fields/TextBoxField/TextBoxField.js +1 -1
  365. package/lib/form/fields/TextBoxField/docs/TextBoxField__default.docs.js +1 -1
  366. package/lib/form/fields/TextEditor/TextEditor.js +5 -10
  367. package/lib/form/fields/TextEditor/TextEditor.module.css +634 -654
  368. package/lib/form/fields/TextEditorField/TextEditorField.js +47 -50
  369. package/lib/form/fields/TextEditorField/docs/TextEditorField__default.docs.js +1 -1
  370. package/lib/form/fields/TextEditorWrapper/TextEditorWrapper.js +1 -1
  371. package/lib/form/fields/TextEditorWrapper/TextEditorWrapper.module.css +36 -36
  372. package/lib/form/fields/TextareaField/TextareaField.js +1 -1
  373. package/lib/form/fields/TextareaField/docs/TextareaField__default.docs.js +1 -1
  374. package/lib/form/fields/ValidationMessage/ValidationMessage.js +1 -1
  375. package/lib/form/fields/ValidationMessage/ValidationMessage.module.css +12 -12
  376. package/lib/form/fields/ValidationMessage/docs/ValidationMessage__default.docs.js +1 -1
  377. package/lib/form/layout/Field/Field.js +1 -1
  378. package/lib/form/layout/Field/Field.module.css +22 -22
  379. package/lib/form/layout/Field/docs/Field__default.docs.js +1 -1
  380. package/lib/form/layout/Section/ModuleFormSection.module.css +3 -3
  381. package/lib/form/layout/Section/Section.js +1 -1
  382. package/lib/form/layout/Section/docs/Section__default.docs.js +1 -1
  383. package/lib/layout/SetupDetailLayout/SetupDetailLayout.js +1 -1
  384. package/lib/layout/SetupDetailLayout/SetupDetailLayout.module.css +152 -152
  385. package/lib/layout/SetupDetailLayout/docs/SetupDetailLayout__default.docs.js +1 -1
  386. package/lib/layout/SubtabLayout/SubtabLayout.js +1 -1
  387. package/lib/layout/SubtabLayout/SubtabLayout.module.css +146 -146
  388. package/lib/layout/SubtabLayout/docs/SubtabLayout__default.docs.js +1 -1
  389. package/lib/list/AvatarFlip/AvatarFlip.js +1 -1
  390. package/lib/list/AvatarFlip/AvatarFlip.module.css +3 -3
  391. package/lib/list/AvatarFlip/docs/AvatarFlip__default.docs.js +1 -1
  392. package/lib/list/BluePrintStatus/BluePrintStatus.js +1 -1
  393. package/lib/list/BluePrintStatus/BluePrintStatus.module.css +17 -17
  394. package/lib/list/BluePrintStatus/docs/BluePrintStatus__default.docs.js +1 -1
  395. package/lib/list/Comment/Comment.js +1 -1
  396. package/lib/list/Comment/Comment.module.css +29 -29
  397. package/lib/list/Comment/docs/Comment__default.docs.js +1 -1
  398. package/lib/list/DepartmentDropDown/DepartmentDropDown.js +1 -1
  399. package/lib/list/DepartmentDropDown/DepartmentDropDown.module.css +9 -9
  400. package/lib/list/Dot/Dot.js +1 -1
  401. package/lib/list/Dot/Dot.module.css +15 -15
  402. package/lib/list/DotNew/DotNew.js +1 -1
  403. package/lib/list/DotNew/DotNew.module.css +22 -22
  404. package/lib/list/DotNew/docs/DotNew__default.docs.js +1 -1
  405. package/lib/list/GridStencils/GridStencils.js +1 -1
  406. package/lib/list/GridStencils/GridStencils.module.css +156 -156
  407. package/lib/list/GridStencils/docs/GridStencils__default.docs.js +1 -1
  408. package/lib/list/Icons/AddNewIcon.js +1 -1
  409. package/lib/list/Icons/CompleteIcon.js +1 -1
  410. package/lib/list/Icons/DeleteIcon.js +1 -1
  411. package/lib/list/Icons/EditIcon.js +1 -1
  412. package/lib/list/Icons/FloatingIcons.js +2 -2
  413. package/lib/list/Icons/Icons.module.css +15 -15
  414. package/lib/list/Icons/SmartIcon.js +1 -1
  415. package/lib/list/Icons/docs/FloatingIcons__default.docs.js +2 -9
  416. package/lib/list/ListLayout/ListLayout.js +1 -1
  417. package/lib/list/ListLayout/ListLayout.module.css +33 -33
  418. package/lib/list/ListLayout/docs/ListLayout__default.docs.js +1 -1
  419. package/lib/list/ListStencils/ListStencils.js +1 -1
  420. package/lib/list/ListStencils/ListStencils.module.css +67 -67
  421. package/lib/list/ListStencils/docs/ListStencils__default.docs.js +1 -1
  422. package/lib/list/SecondaryText/AccountName.js +1 -1
  423. package/lib/list/SecondaryText/ContactName.js +1 -1
  424. package/lib/list/SecondaryText/DepartmentText.js +1 -1
  425. package/lib/list/SecondaryText/Email.js +1 -1
  426. package/lib/list/SecondaryText/HappinessRating.js +1 -1
  427. package/lib/list/SecondaryText/PhoneNumber.js +1 -1
  428. package/lib/list/SecondaryText/PriorityText.js +1 -1
  429. package/lib/list/SecondaryText/SecondaryText.js +1 -1
  430. package/lib/list/SecondaryText/SecondaryText.module.css +136 -136
  431. package/lib/list/SecondaryText/StatusText.js +1 -1
  432. package/lib/list/SecondaryText/TicketId.js +1 -1
  433. package/lib/list/SecondaryText/Website.js +1 -1
  434. package/lib/list/SecondaryText/docs/ContactName__default.docs.js +1 -1
  435. package/lib/list/SecondryPanel/SecondryPanel.js +1 -1
  436. package/lib/list/SecondryPanel/SecondryPanel.module.css +5 -5
  437. package/lib/list/SecondryPanel/docs/SecondryPanelDocs.module.css +37 -37
  438. package/lib/list/SecondryPanel/docs/SecondryPanel__default.docs.js +1 -1
  439. package/lib/list/SentimentStatus/SentimentStatus.js +1 -1
  440. package/lib/list/SentimentStatus/SentimentStatus.module.css +12 -12
  441. package/lib/list/SentimentStatus/docs/SentimentStatus__default.docs.js +1 -1
  442. package/lib/list/Subject/Subject.js +1 -1
  443. package/lib/list/Subject/Subject.module.css +27 -27
  444. package/lib/list/Subject/docs/Subject__default.docs.js +1 -1
  445. package/lib/list/TagNew/TagNew.js +1 -1
  446. package/lib/list/TagNew/TagNew.module.css +115 -115
  447. package/lib/list/TagNew/docs/TagNew__default.docs.js +1 -1
  448. package/lib/list/Thread/Thread.js +1 -1
  449. package/lib/list/Thread/Thread.module.css +42 -42
  450. package/lib/list/Thread/docs/Thread__default.docs.js +1 -1
  451. package/lib/list/UserTime/UserTime.js +2 -2
  452. package/lib/list/UserTime/UserTime.module.css +58 -58
  453. package/lib/list/UserTime/docs/UserTime__default.docs.js +1 -1
  454. package/lib/list/listCommon.module.css +60 -60
  455. package/lib/list/status/StatusDropdown/StatusDropdown.js +2 -2
  456. package/lib/list/status/StatusDropdown/StatusDropdown.module.css +89 -89
  457. package/lib/list/status/StatusDropdown/docs/StatusDropdown__default.docs.js +1 -1
  458. package/lib/list/status/StatusListItem/StatusListItem.js +1 -1
  459. package/lib/list/status/StatusListItem/StatusListItem.module.css +104 -104
  460. package/lib/list/status/StatusListItem/docs/StatusListItem__default.docs.js +1 -1
  461. package/lib/lookup/EmptyPage/EmptyPage.js +1 -1
  462. package/lib/lookup/EmptyPage/LookupEmptyPage.module.css +12 -12
  463. package/lib/lookup/EmptyPage/docs/EmptyPage__account.docs.js +1 -1
  464. package/lib/lookup/EmptyPage/docs/EmptyPage__contact.docs.js +1 -1
  465. package/lib/lookup/EmptyPage/docs/EmptyPage__default.docs.js +1 -1
  466. package/lib/lookup/EmptyPage/docs/EmptyPage__product.docs.js +1 -1
  467. package/lib/lookup/Lookup/Lookup.js +1 -1
  468. package/lib/lookup/Lookup/Lookup.module.css +26 -26
  469. package/lib/lookup/Lookup/docs/Lookup__contact.docs.js +15 -15
  470. package/lib/lookup/Lookup/docs/Lookup__default.docs.js +1 -1
  471. package/lib/lookup/Section/LookupSection.module.css +8 -8
  472. package/lib/lookup/Section/Section.js +1 -1
  473. package/lib/lookup/header/Close/Close.js +1 -1
  474. package/lib/lookup/header/Close/LookupClose.module.css +15 -15
  475. package/lib/lookup/header/Close/docs/Close__default.docs.js +1 -1
  476. package/lib/lookup/header/ModuleHeader/ModuleHeader.js +1 -1
  477. package/lib/lookup/header/ModuleHeader/docs/ModuleHeader__default.docs.js +1 -1
  478. package/lib/lookup/header/Search/LookupSearch.module.css +57 -57
  479. package/lib/lookup/header/Search/Search.js +1 -1
  480. package/lib/lookup/header/Search/docs/Search__default.docs.js +1 -1
  481. package/lib/lookup/header/TicketHeader/TicketHeader.js +1 -1
  482. package/lib/lookup/header/TicketHeader/TicketHeader.module.css +22 -22
  483. package/lib/lookup/header/TicketHeader/docs/TicketHeader__default.docs.js +1 -1
  484. package/lib/lookup/header/Title/LookupTitle.module.css +20 -20
  485. package/lib/lookup/header/Title/Title.js +1 -1
  486. package/lib/lookup/header/Title/docs/Title__default.docs.js +1 -1
  487. package/lib/lookup/header/ViewDropDown/ViewDropDown.js +1 -1
  488. package/lib/lookup/header/ViewDropDown/ViewDropDown.module.css +51 -51
  489. package/lib/lookup/header/ViewDropDown/docs/ViewDropDown__default.docs.js +1 -1
  490. package/lib/lookup/header/lookupHeaderCommon.module.css +35 -35
  491. package/lib/lookup/header/lookupHeaderCommonResponsive.module.css +24 -24
  492. package/lib/setup/header/Button/Button.js +1 -1
  493. package/lib/setup/header/Button/HeaderButton.module.css +5 -5
  494. package/lib/setup/header/Button/docs/Button__default.docs.js +1 -1
  495. package/lib/setup/header/Link/HeaderLink.module.css +21 -21
  496. package/lib/setup/header/Link/Link.js +1 -1
  497. package/lib/setup/header/Link/docs/Link__default.docs.js +1 -1
  498. package/lib/setup/header/Search/Search.js +1 -1
  499. package/lib/setup/header/Search/Search.module.css +68 -68
  500. package/lib/setup/header/Search/docs/Search__default.docs.js +1 -1
  501. package/lib/setup/header/Views/Views.js +1 -1
  502. package/lib/setup/header/Views/Views.module.css +37 -37
  503. package/lib/setup/header/Views/docs/Views__default.docs.js +1 -1
  504. package/lib/setup/helptips/Description/Description.js +1 -1
  505. package/lib/setup/helptips/Description/HelpTipsDescription.module.css +6 -6
  506. package/lib/setup/helptips/Description/docs/Description__default.docs.js +1 -1
  507. package/lib/setup/helptips/Link/HelpTipsLink.module.css +7 -7
  508. package/lib/setup/helptips/Link/Link.js +4 -2
  509. package/lib/setup/helptips/Link/docs/Link__default.docs.js +1 -1
  510. package/lib/setup/helptips/ListGroup/ListGroup.js +1 -1
  511. package/lib/setup/helptips/ListGroup/ListGroup.module.css +22 -22
  512. package/lib/setup/helptips/ListGroup/docs/ListGroup__default.docs.js +1 -1
  513. package/lib/setup/helptips/Title/HelpTipsTitle.module.css +5 -5
  514. package/lib/setup/helptips/Title/Title.js +1 -1
  515. package/lib/setup/helptips/Title/docs/Title__default.docs.js +1 -1
  516. package/lib/setup/table/Table/Table.js +1 -1
  517. package/lib/setup/table/Table/docs/Table__default.docs.js +1 -1
  518. package/lib/setup/table/TableBody/TableBody.js +1 -1
  519. package/lib/setup/table/TableData/SetupTableData.module.css +44 -44
  520. package/lib/setup/table/TableData/TableData.js +1 -1
  521. package/lib/setup/table/TableData/Tablehover.module.css +6 -6
  522. package/lib/setup/table/TableHead/SetupTableHead.module.css +12 -12
  523. package/lib/setup/table/TableHead/TableHead.js +1 -1
  524. package/lib/setup/table/TableRow/SetupTableRow.module.css +14 -14
  525. package/lib/setup/table/TableRow/TableRow.js +1 -1
  526. package/lib/setup/table/Text/TableText.module.css +37 -37
  527. package/lib/setup/table/Text/Text.js +1 -1
  528. package/lib/setup/table/Text/docs/Text__default.docs.js +1 -1
  529. package/lib/svg/PlusIcon.js +2 -2
  530. package/lib/svg/SnippetIcon.js +3 -3
  531. package/lib/svg/TemplateIcon.js +1 -1
  532. package/lib/svg/docs/SVG__default.docs.js +1 -1
  533. package/lib/utils/KeyboardApi.js +26 -28
  534. package/lib/version2/AlertClose/AlertClose.js +1 -1
  535. package/lib/version2/AlertClose/AlertClose.module.css +42 -42
  536. package/lib/version2/AlertClose/docs/AlertClose__default.docs.js +1 -1
  537. package/lib/version2/GlobalNotification/GlobalNotification.js +4 -2
  538. package/lib/version2/GlobalNotification/GlobalNotification.module.css +124 -124
  539. package/lib/version2/GlobalNotification/docs/GlobalNotification__default.docs.js +1 -1
  540. package/lib/version2/alertIcons/AlarmAlertIcon.js +1 -1
  541. package/lib/version2/alertIcons/AlertIcons.js +1 -1
  542. package/lib/version2/alertIcons/AlertIcons.module.css +67 -67
  543. package/lib/version2/alertIcons/DangerAlertIcon.js +1 -1
  544. package/lib/version2/alertIcons/ErrorAlertIcon.js +1 -1
  545. package/lib/version2/alertIcons/InfoAlertIcon.js +1 -1
  546. package/lib/version2/alertIcons/NotificationAlertIcon.js +1 -1
  547. package/lib/version2/alertIcons/SuccessAlertIcon.js +1 -1
  548. package/lib/version2/alertIcons/WarningAlertIcon.js +1 -1
  549. package/lib/version2/alertIcons/docs/AlertIcons__default.docs.js +1 -1
  550. package/lib/version2/errorstate/Inconvenience/Inconvenience.js +8 -8
  551. package/lib/version2/errorstate/Inconvenience/V2_Inconvenience.module.css +46 -0
  552. package/lib/version2/errorstate/Inconvenience/docs/Inconvenience__default.docs.js +1 -1
  553. package/lib/version2/errorstate/OopsSomethingMiss/OopsSomethingMiss.js +9 -10
  554. package/lib/version2/errorstate/OopsSomethingMiss/V2_OopsSomethingMiss.module.css +46 -0
  555. package/lib/version2/errorstate/OopsSomethingMiss/docs/OopsSomethingMiss__default.docs.js +1 -1
  556. package/lib/version2/errorstate/UnableToProcessRequest/UnableToProcessRequest.js +8 -8
  557. package/lib/version2/errorstate/UnableToProcessRequest/V2_UnableToProcessRequest.module.css +46 -0
  558. package/lib/version2/errorstate/UnableToProcessRequest/docs/UnableToProcessRequest__default.docs.js +1 -1
  559. package/lib/version2/errorstate/UnauthorizedLogin/UnauthorizedLogin.js +10 -11
  560. package/lib/version2/errorstate/UnauthorizedLogin/V2_UnauthorizedLogin.module.css +46 -0
  561. package/lib/version2/errorstate/UnauthorizedLogin/docs/UnauthorizedLogin__default.docs.js +1 -1
  562. package/lib/version2/errorstate/UrlNotFound/UrlNotFound.js +8 -8
  563. package/lib/version2/errorstate/UrlNotFound/V2_UrlNotFound.module.css +46 -0
  564. package/lib/version2/errorstate/UrlNotFound/docs/UrlNotFound__default.docs.js +1 -1
  565. package/lib/version2/errorstate/WillBeRightBack/V2_WillBeRightBack.module.css +46 -0
  566. package/lib/version2/errorstate/WillBeRightBack/WillBeRightBack.js +8 -8
  567. package/lib/version2/errorstate/WillBeRightBack/docs/WillBeRightBack__default.docs.js +1 -1
  568. package/lib/version2/lookup/AlertHeader/AlertHeader.js +1 -1
  569. package/lib/version2/lookup/AlertHeader/AlertHeaderNew.module.css +86 -86
  570. package/lib/version2/lookup/AlertHeader/docs/AlertHeader__default.docs.js +1 -1
  571. package/lib/version2/lookup/AlertLookup/AlertLookup.js +2 -2
  572. package/lib/version2/lookup/AlertLookup/AlertLookupNew.module.css +43 -43
  573. package/lib/version2/lookup/AlertLookup/docs/AlertLookup__default.docs.js +1 -1
  574. package/lib/version2/lookup/alertLookupCommonNew.module.css +32 -32
  575. package/lib/version2/notification/DesktopNotification/DesktopNotification.module.css +110 -110
  576. package/lib/version2/notification/DesktopNotification/docs/DesktopNotification__default.docs.js +1 -1
  577. package/lib/version2/notification/DesktopNotificationHeader/DesktopNotificationHeader.js +1 -1
  578. package/lib/version2/notification/DesktopNotificationHeader/DesktopNotificationHeader.module.css +136 -136
  579. package/lib/version2/notification/DesktopNotificationHeader/docs/DesktopNotificationHeader__default.docs.js +1 -1
  580. package/package.json +77 -75
  581. package/src/ActionButton/ActionButton.js +197 -197
  582. package/src/ActionButton/ActionButton.module.css +120 -120
  583. package/src/ActionButton/docs/ActionButton__default.docs.js +110 -110
  584. package/src/AlphabeticList/AlphabeticList.js +171 -171
  585. package/src/AlphabeticList/AlphabeticList.module.css +54 -54
  586. package/src/AlphabeticList/docs/AlphabeticList__default.docs.js +36 -36
  587. package/src/AlphabeticList/docs/AlphabeticList__horizontal.docs.js +44 -44
  588. package/src/Appearance/dark/mode/dotDarkMode.module.css +536 -536
  589. package/src/Appearance/dark/themes/blue/blueDarkDotTheme.module.css +7 -7
  590. package/src/Appearance/dark/themes/green/greenDarkDotTheme.module.css +7 -7
  591. package/src/Appearance/dark/themes/orange/orangeDarkDotTheme.module.css +7 -7
  592. package/src/Appearance/dark/themes/red/redDarkDotTheme.module.css +7 -7
  593. package/src/Appearance/dark/themes/yellow/yellowDarkDotTheme.module.css +7 -7
  594. package/src/Appearance/default/mode/dotDefaultMode.module.css +536 -536
  595. package/src/Appearance/default/themes/blue/blueDefaultDotTheme.module.css +7 -7
  596. package/src/Appearance/default/themes/green/greenDefaultDotTheme.module.css +7 -7
  597. package/src/Appearance/default/themes/orange/orangeDefaultDotTheme.module.css +7 -7
  598. package/src/Appearance/default/themes/red/redDefaultDotTheme.module.css +7 -7
  599. package/src/Appearance/default/themes/yellow/yellowDefaultDotTheme.module.css +7 -7
  600. package/src/Attachment/Attachment.js +119 -119
  601. package/src/Attachment/Attachment.module.css +121 -121
  602. package/src/Attachment/docs/Attachment__default.docs.js +63 -63
  603. package/src/ChannelIcon/ChannelIcon.js +154 -154
  604. package/src/ChannelIcon/ChannelIcon.module.css +208 -208
  605. package/src/ChannelIcon/docs/ChannelIcon__default.docs.js +63 -63
  606. package/src/Drawer/Drawer.js +388 -388
  607. package/src/Drawer/Drawer.module.css +103 -103
  608. package/src/Drawer/docs/Drawer__default.docs.js +86 -86
  609. package/src/Drawer/docs/Drawer__multiDrawer.docs.js +111 -111
  610. package/src/Drawer/docs/Drawer__noFreeze.docs.js +20 -20
  611. package/src/Drawer/docs/Drawer__withModal.docs.js +76 -76
  612. package/src/ExternalLink/ExternalLink.js +70 -70
  613. package/src/ExternalLink/ExternalLink.module.css +3 -3
  614. package/src/ExternalLink/__tests__/ExternalLink.spec.js +28 -28
  615. package/src/ExternalLink/docs/ExternalLink__default.docs.js +24 -24
  616. package/src/FlipCard/FlipCard.js +193 -193
  617. package/src/FlipCard/FlipCard.module.css +35 -35
  618. package/src/FlipCard/docs/FlipCard__default.docs.js +76 -76
  619. package/src/FormAction/FormAction.js +126 -126
  620. package/src/FormAction/FormAction.module.css +57 -57
  621. package/src/FormAction/docs/FormAction__default.docs.js +93 -93
  622. package/src/FreezeLayer/FreezeLayer.js +159 -159
  623. package/src/FreezeLayer/FreezeLayer.module.css +38 -38
  624. package/src/FreezeLayer/docs/FreezeLayer__dark.docs.js +52 -52
  625. package/src/FreezeLayer/docs/FreezeLayer__default.docs.js +51 -51
  626. package/src/IconButton/IconButton.js +186 -186
  627. package/src/IconButton/IconButton.module.css +22 -22
  628. package/src/IconButton/docs/IconButton__default.docs.js +158 -158
  629. package/src/Image/Image.js +58 -58
  630. package/src/Image/Image.module.css +10 -10
  631. package/src/Image/docs/Image__default.docs.js +18 -18
  632. package/src/ImportantNotes/ImportantNotes.js +57 -57
  633. package/src/ImportantNotes/ImportantNotes.module.css +15 -15
  634. package/src/ImportantNotes/docs/ImportantNotes__default.docs.js +22 -22
  635. package/src/Link/Link.js +117 -117
  636. package/src/Link/Link.module.css +3 -3
  637. package/src/Link/LinkContext.js +9 -9
  638. package/src/Link/docs/Link__default.docs.js +91 -91
  639. package/src/Loader/Loader.js +21 -21
  640. package/src/Loader/Loader.module.css +25 -25
  641. package/src/Loader/docs/Loader__default.docs.js +21 -21
  642. package/src/Message/Message.js +109 -109
  643. package/src/Message/Message.module.css +69 -69
  644. package/src/Message/docs/Message__default.docs.js +54 -53
  645. package/src/MessageBanner/MessageBanner.js +79 -79
  646. package/src/MessageBanner/MessageBanner.module.css +37 -37
  647. package/src/MessageBanner/docs/MessageBanner__default.docs.js +87 -87
  648. package/src/NewStar/NewStar.js +83 -83
  649. package/src/NewStar/NewStar.module.css +73 -73
  650. package/src/NewStar/docs/NewStar__default.docs.js +39 -39
  651. package/src/PlusIcon/PlusIcon.js +64 -64
  652. package/src/PlusIcon/PlusIcon.module.css +16 -16
  653. package/src/PlusIcon/docs/PlusIcon__default.docs.js +18 -18
  654. package/src/Provider.js +200 -249
  655. package/src/ToastMessage/ToastMessage.js +315 -315
  656. package/src/ToastMessage/ToastMessage.module.css +259 -259
  657. package/src/ToastMessage/docs/ToastMessage__custom.docs.js +97 -97
  658. package/src/ToastMessage/docs/ToastMessage__information.docs.js +57 -57
  659. package/src/ToastMessage/docs/ToastMessage__primary.docs.js +135 -135
  660. package/src/ToastMessage/docs/ToastMessage__secondary.docs.js +40 -40
  661. package/src/ToastMessage/docs/ToastMessage__success.docs.js +68 -68
  662. package/src/Upload/Upload.js +103 -103
  663. package/src/Upload/Upload.module.css +106 -106
  664. package/src/Upload/docs/Upload__default.docs.js +72 -72
  665. package/src/actions/AutoClose.js +51 -51
  666. package/src/actions/index.js +22 -22
  667. package/src/alert/AlertHeader/AlertHeader.js +122 -122
  668. package/src/alert/AlertHeader/AlertHeader.module.css +62 -62
  669. package/src/alert/AlertHeader/docs/AlertHeader__default.docs.js +73 -73
  670. package/src/alert/AlertLookup/AlertLookup.js +211 -211
  671. package/src/alert/AlertLookup/AlertLookup.module.css +22 -22
  672. package/src/alert/AlertLookup/docs/AlertLookup__default.docs.js +124 -124
  673. package/src/avatar/AvatarClose/AvatarClose.js +49 -49
  674. package/src/avatar/AvatarClose/AvatarClose.module.css +31 -31
  675. package/src/avatar/AvatarClose/docs/AvatarClose__default.docs.js +26 -26
  676. package/src/avatar/AvatarCollision/AvatarCollision.js +81 -81
  677. package/src/avatar/AvatarCollision/AvatarCollision.module.css +55 -55
  678. package/src/avatar/AvatarCollision/docs/AvatarCollision__default.docs.js +40 -40
  679. package/src/avatar/AvatarIcon/AvatarIcon.js +99 -99
  680. package/src/avatar/AvatarIcon/AvatarIcon.module.css +59 -59
  681. package/src/avatar/AvatarIcon/docs/AvatarIcon__palette.docs.js +49 -49
  682. package/src/avatar/AvatarIcon/docs/AvatarIcon__size.docs.js +36 -36
  683. package/src/avatar/AvatarStatus/AvatarStatus.js +95 -95
  684. package/src/avatar/AvatarStatus/AvatarStatus.module.css +96 -96
  685. package/src/avatar/AvatarStatus/docs/AvatarStatus__size.docs.js +38 -38
  686. package/src/avatar/AvatarStatus/docs/AvatarStatus__state.docs.js +63 -63
  687. package/src/avatar/AvatarThread/AvatarThread.js +131 -131
  688. package/src/avatar/AvatarThread/AvatarThread.module.css +113 -113
  689. package/src/avatar/AvatarThread/docs/AvatarThread__default.docs.js +167 -167
  690. package/src/avatar/AvatarUser/AvatarUser.js +160 -160
  691. package/src/avatar/AvatarUser/AvatarUser.module.css +100 -100
  692. package/src/avatar/AvatarUser/docs/AvatarUser__default.docs.js +148 -148
  693. package/src/avatar/AvatarWithTeam/AvatarWithTeam.js +134 -134
  694. package/src/avatar/AvatarWithTeam/AvatarWithTeam.module.css +16 -16
  695. package/src/avatar/AvatarWithTeam/__tests__/AvatarWithTeam.spec.js +50 -50
  696. package/src/avatar/AvatarWithTeam/docs/AvatarWithTeam__default.docs.js +28 -28
  697. package/src/deprecated/SelectDropdown/SelectDropdown.js +122 -122
  698. package/src/deprecated/SelectDropdown/SelectDropdown.module.css +47 -47
  699. package/src/deprecated/SelectDropdown/docs/SelectDropdown__default.docs.js +31 -31
  700. package/src/deprecated/Theme/dotDarkTheme.module.css +532 -532
  701. package/src/deprecated/Theme/dotDefaultTheme.module.css +532 -532
  702. package/src/deprecated/Theme/palette/darkPalette.module.css +39 -39
  703. package/src/deprecated/Theme/palette/defaultPalette.module.css +39 -39
  704. package/src/docs/formDocs.js +26 -26
  705. package/src/docs/generalDocs.js +161 -161
  706. package/src/docs/lookupDocs.js +51 -51
  707. package/src/docs/setupDocs.js +27 -27
  708. package/src/dropdown/ToggleDropDown/ToggleDropDown.js +931 -944
  709. package/src/dropdown/ToggleDropDown/ToggleDropDown.module.css +84 -84
  710. package/src/dropdown/ToggleDropDown/docs/ToggleDropDown__default.docs.js +242 -242
  711. package/src/emptystate/CommonEmptyState/CommonEmptyState.js +116 -116
  712. package/src/emptystate/CommonEmptyState/CommonEmptyState.module.css +77 -77
  713. package/src/emptystate/CommonEmptyState/docs/CommonEmptyState__default.docs.js +107 -107
  714. package/src/emptystate/EditionPage/EditionPage.css +37 -37
  715. package/src/emptystate/EditionPage/EditionPage.js +69 -69
  716. package/src/emptystate/EditionPage/docs/EditionPage__default.docs.js +23 -23
  717. package/src/errorstate/EmptyStates.module.css +84 -84
  718. package/src/errorstate/Inconvenience/Inconvenience.js +132 -132
  719. package/src/errorstate/Inconvenience/Inconvenience.module.css +4 -4
  720. package/src/errorstate/Inconvenience/docs/Inconvenience__default.docs.js +19 -19
  721. package/src/errorstate/LinkText/LinkText.js +35 -35
  722. package/src/errorstate/LinkText/LinkText.module.css +6 -6
  723. package/src/errorstate/LinkText/docs/LinkText__default.docs.js +13 -13
  724. package/src/errorstate/NoRequestFound/NoRequestFound.js +132 -132
  725. package/src/errorstate/NoRequestFound/NoRequestFound.module.css +3 -3
  726. package/src/errorstate/NoRequestFound/docs/NoRequestFound__default.docs.js +19 -19
  727. package/src/errorstate/PermissionPlay/PermissionPlay.js +127 -127
  728. package/src/errorstate/PermissionPlay/PermissionPlay.module.css +34 -34
  729. package/src/errorstate/PermissionPlay/docs/PermissionPlay__default.docs.js +20 -20
  730. package/src/errorstate/RequestUrlNotFound/RequestUrlNotFound.js +132 -132
  731. package/src/errorstate/RequestUrlNotFound/RequestUrlNotFound.module.css +3 -3
  732. package/src/errorstate/RequestUrlNotFound/docs/RequestUrlNotFound__default.docs.js +19 -19
  733. package/src/errorstate/UnableToProcess/UnableToProcess.js +130 -130
  734. package/src/errorstate/UnableToProcess/UnableToProcess.module.css +3 -3
  735. package/src/errorstate/UnableToProcess/docs/UnableToProcess__default.docs.js +19 -19
  736. package/src/errorstate/UnauthorizedLogin/UnauthorizedLogin.js +130 -130
  737. package/src/errorstate/UnauthorizedLogin/UnauthorizedLogin.module.css +3 -3
  738. package/src/errorstate/UnauthorizedLogin/docs/UnauthorizedLogin__insufficient.docs.js +20 -20
  739. package/src/errorstate/UnauthorizedLogin/docs/UnauthorizedLogin__unauthorizedLogin.docs.js +19 -19
  740. package/src/errorstate/WillBack/WillBack.js +120 -120
  741. package/src/errorstate/WillBack/WillBack.module.css +36 -36
  742. package/src/errorstate/WillBack/docs/WillBack__default.docs.js +21 -21
  743. package/src/form/fields/CheckBoxField/CheckBoxField.js +220 -220
  744. package/src/form/fields/CheckBoxField/docs/CheckBoxField__default.docs.js +32 -32
  745. package/src/form/fields/CurrencyField/CurrencyField.js +267 -267
  746. package/src/form/fields/DateField/DateField.js +281 -281
  747. package/src/form/fields/DateField/docs/DateField__default.docs.js +24 -24
  748. package/src/form/fields/Fields.module.css +145 -145
  749. package/src/form/fields/MultiSelectField/MultiSelectField.js +311 -311
  750. package/src/form/fields/MultiSelectField/docs/MultiSelectField__default.docs.js +53 -53
  751. package/src/form/fields/PhoneField/PhoneField.js +227 -227
  752. package/src/form/fields/PhoneField/docs/PhoneField__default.docs.js +26 -26
  753. package/src/form/fields/RadioField/RadioField.js +181 -181
  754. package/src/form/fields/SelectField/SelectField.js +296 -296
  755. package/src/form/fields/SelectField/docs/SelectField__default.docs.js +48 -48
  756. package/src/form/fields/TagsMultiSelect/TagsMultiSelect.js +323 -323
  757. package/src/form/fields/TagsMultiSelect/TagsMultiSelect.module.css +95 -95
  758. package/src/form/fields/TagsMultiSelect/docs/TagsMultiSelect__default.docs.js +55 -55
  759. package/src/form/fields/TagsMultiSelectField/TagsMultiSelectField.js +342 -342
  760. package/src/form/fields/TagsMultiSelectField/TagsMultiSelectField.module.css +6 -6
  761. package/src/form/fields/TagsMultiSelectField/docs/TagsMultiSelectField__default.docs.js +58 -58
  762. package/src/form/fields/TextBoxField/TextBoxField.js +274 -274
  763. package/src/form/fields/TextBoxField/docs/TextBoxField__default.docs.js +38 -38
  764. package/src/form/fields/TextEditor/TextEditor.js +430 -436
  765. package/src/form/fields/TextEditor/TextEditor.module.css +568 -582
  766. package/src/form/fields/TextEditorField/TextEditorField.js +280 -286
  767. package/src/form/fields/TextEditorField/docs/TextEditorField__default.docs.js +62 -62
  768. package/src/form/fields/TextEditorWrapper/TextEditorWrapper.js +239 -239
  769. package/src/form/fields/TextEditorWrapper/TextEditorWrapper.module.css +25 -25
  770. package/src/form/fields/TextareaField/TextareaField.js +247 -247
  771. package/src/form/fields/TextareaField/docs/TextareaField__default.docs.js +25 -25
  772. package/src/form/fields/ValidationMessage/ValidationMessage.js +55 -55
  773. package/src/form/fields/ValidationMessage/ValidationMessage.module.css +9 -9
  774. package/src/form/fields/ValidationMessage/docs/ValidationMessage__default.docs.js +19 -19
  775. package/src/form/layout/Field/Field.js +53 -53
  776. package/src/form/layout/Field/Field.module.css +22 -22
  777. package/src/form/layout/Field/docs/Field__default.docs.js +20 -20
  778. package/src/form/layout/Section/ModuleFormSection.module.css +3 -3
  779. package/src/form/layout/Section/Section.js +47 -47
  780. package/src/form/layout/Section/docs/Section__default.docs.js +21 -21
  781. package/src/i18n.js +5498 -5498
  782. package/src/index.js +8 -8
  783. package/src/layout/SetupDetailLayout/SetupDetailLayout.js +274 -274
  784. package/src/layout/SetupDetailLayout/SetupDetailLayout.module.css +116 -116
  785. package/src/layout/SetupDetailLayout/docs/SetupDetailLayout__default.docs.js +34 -34
  786. package/src/layout/SetupDetailLayout/index.js +4 -4
  787. package/src/layout/SubtabLayout/SubtabLayout.js +235 -235
  788. package/src/layout/SubtabLayout/SubtabLayout.module.css +120 -120
  789. package/src/layout/SubtabLayout/docs/SubtabLayout__default.docs.js +53 -53
  790. package/src/layout/SubtabLayout/index.js +4 -4
  791. package/src/list/AvatarFlip/AvatarFlip.js +106 -106
  792. package/src/list/AvatarFlip/AvatarFlip.module.css +3 -3
  793. package/src/list/AvatarFlip/docs/AvatarFlip__default.docs.js +82 -82
  794. package/src/list/BluePrintStatus/BluePrintStatus.js +28 -28
  795. package/src/list/BluePrintStatus/BluePrintStatus.module.css +14 -14
  796. package/src/list/BluePrintStatus/docs/BluePrintStatus__default.docs.js +20 -20
  797. package/src/list/Comment/Comment.js +51 -51
  798. package/src/list/Comment/Comment.module.css +24 -24
  799. package/src/list/Comment/docs/Comment__default.docs.js +22 -22
  800. package/src/list/DepartmentDropDown/DepartmentDropDown.js +119 -119
  801. package/src/list/DepartmentDropDown/DepartmentDropDown.module.css +9 -9
  802. package/src/list/Dot/Dot.js +27 -27
  803. package/src/list/Dot/Dot.module.css +15 -15
  804. package/src/list/DotNew/DotNew.js +29 -29
  805. package/src/list/DotNew/DotNew.module.css +22 -22
  806. package/src/list/DotNew/docs/DotNew__default.docs.js +18 -18
  807. package/src/list/GridStencils/GridStencils.js +46 -46
  808. package/src/list/GridStencils/GridStencils.module.css +102 -102
  809. package/src/list/GridStencils/docs/GridStencils__default.docs.js +30 -30
  810. package/src/list/Icons/AddNewIcon.js +29 -29
  811. package/src/list/Icons/CompleteIcon.js +36 -30
  812. package/src/list/Icons/DeleteIcon.js +37 -31
  813. package/src/list/Icons/EditIcon.js +37 -31
  814. package/src/list/Icons/FloatingIcons.js +32 -32
  815. package/src/list/Icons/Icons.module.css +15 -15
  816. package/src/list/Icons/SmartIcon.js +32 -32
  817. package/src/list/Icons/docs/FloatingIcons__default.docs.js +23 -26
  818. package/src/list/ListLayout/ListLayout.js +111 -111
  819. package/src/list/ListLayout/ListLayout.module.css +36 -36
  820. package/src/list/ListLayout/docs/ListLayout__default.docs.js +54 -54
  821. package/src/list/ListStencils/ListStencils.js +45 -45
  822. package/src/list/ListStencils/ListStencils.module.css +62 -62
  823. package/src/list/ListStencils/docs/ListStencils__default.docs.js +18 -18
  824. package/src/list/SecondaryText/AccountName.js +120 -120
  825. package/src/list/SecondaryText/ContactName.js +128 -128
  826. package/src/list/SecondaryText/DepartmentText.js +34 -34
  827. package/src/list/SecondaryText/Email.js +77 -77
  828. package/src/list/SecondaryText/HappinessRating.js +37 -37
  829. package/src/list/SecondaryText/PhoneNumber.js +84 -84
  830. package/src/list/SecondaryText/PriorityText.js +40 -40
  831. package/src/list/SecondaryText/SecondaryText.js +43 -43
  832. package/src/list/SecondaryText/SecondaryText.module.css +126 -126
  833. package/src/list/SecondaryText/StatusText.js +42 -42
  834. package/src/list/SecondaryText/TicketId.js +69 -69
  835. package/src/list/SecondaryText/Website.js +59 -59
  836. package/src/list/SecondaryText/docs/ContactName__default.docs.js +18 -18
  837. package/src/list/SecondaryText/index.js +11 -11
  838. package/src/list/SecondryPanel/SecondryPanel.js +144 -144
  839. package/src/list/SecondryPanel/SecondryPanel.module.css +5 -5
  840. package/src/list/SecondryPanel/docs/SecondryPanelDocs.module.css +37 -37
  841. package/src/list/SecondryPanel/docs/SecondryPanel__default.docs.js +90 -90
  842. package/src/list/SentimentStatus/SentimentStatus.js +32 -32
  843. package/src/list/SentimentStatus/SentimentStatus.module.css +9 -9
  844. package/src/list/SentimentStatus/docs/SentimentStatus__default.docs.js +20 -20
  845. package/src/list/Subject/Subject.js +80 -80
  846. package/src/list/Subject/Subject.module.css +27 -27
  847. package/src/list/Subject/docs/Subject__default.docs.js +34 -34
  848. package/src/list/TagNew/TagNew.js +40 -40
  849. package/src/list/TagNew/TagNew.module.css +108 -108
  850. package/src/list/TagNew/docs/TagNew__default.docs.js +18 -18
  851. package/src/list/Thread/Thread.js +43 -43
  852. package/src/list/Thread/Thread.module.css +30 -30
  853. package/src/list/Thread/docs/Thread__default.docs.js +18 -18
  854. package/src/list/UserTime/UserTime.js +138 -138
  855. package/src/list/UserTime/UserTime.module.css +52 -52
  856. package/src/list/UserTime/docs/UserTime__default.docs.js +114 -114
  857. package/src/list/listCommon.module.css +52 -52
  858. package/src/list/status/StatusDropdown/StatusDropdown.js +544 -538
  859. package/src/list/status/StatusDropdown/StatusDropdown.module.css +76 -76
  860. package/src/list/status/StatusDropdown/docs/StatusDropdown__default.docs.js +92 -92
  861. package/src/list/status/StatusListItem/StatusListItem.js +149 -149
  862. package/src/list/status/StatusListItem/StatusListItem.module.css +81 -81
  863. package/src/list/status/StatusListItem/docs/StatusListItem__default.docs.js +19 -19
  864. package/src/lookup/EmptyPage/EmptyPage.js +62 -62
  865. package/src/lookup/EmptyPage/LookupEmptyPage.module.css +12 -12
  866. package/src/lookup/EmptyPage/docs/EmptyPage__account.docs.js +17 -17
  867. package/src/lookup/EmptyPage/docs/EmptyPage__contact.docs.js +17 -17
  868. package/src/lookup/EmptyPage/docs/EmptyPage__default.docs.js +16 -16
  869. package/src/lookup/EmptyPage/docs/EmptyPage__product.docs.js +17 -17
  870. package/src/lookup/Lookup/Lookup.js +110 -110
  871. package/src/lookup/Lookup/Lookup.module.css +26 -26
  872. package/src/lookup/Lookup/docs/Lookup__contact.docs.js +184 -184
  873. package/src/lookup/Lookup/docs/Lookup__default.docs.js +59 -59
  874. package/src/lookup/Section/LookupSection.module.css +8 -8
  875. package/src/lookup/Section/Section.js +27 -27
  876. package/src/lookup/header/Close/Close.js +36 -36
  877. package/src/lookup/header/Close/LookupClose.module.css +15 -15
  878. package/src/lookup/header/Close/docs/Close__default.docs.js +17 -17
  879. package/src/lookup/header/ModuleHeader/ModuleHeader.js +97 -97
  880. package/src/lookup/header/ModuleHeader/docs/ModuleHeader__default.docs.js +40 -40
  881. package/src/lookup/header/Search/LookupSearch.module.css +48 -48
  882. package/src/lookup/header/Search/Search.js +249 -249
  883. package/src/lookup/header/Search/docs/Search__default.docs.js +106 -106
  884. package/src/lookup/header/TicketHeader/TicketHeader.js +123 -123
  885. package/src/lookup/header/TicketHeader/TicketHeader.module.css +19 -19
  886. package/src/lookup/header/TicketHeader/docs/TicketHeader__default.docs.js +63 -63
  887. package/src/lookup/header/Title/LookupTitle.module.css +20 -20
  888. package/src/lookup/header/Title/Title.js +38 -38
  889. package/src/lookup/header/Title/docs/Title__default.docs.js +17 -17
  890. package/src/lookup/header/ViewDropDown/ViewDropDown.js +199 -199
  891. package/src/lookup/header/ViewDropDown/ViewDropDown.module.css +46 -46
  892. package/src/lookup/header/ViewDropDown/docs/ViewDropDown__default.docs.js +54 -54
  893. package/src/lookup/header/lookupHeaderCommon.module.css +25 -25
  894. package/src/lookup/header/lookupHeaderCommonResponsive.module.css +15 -15
  895. package/src/setup/header/Button/Button.js +40 -40
  896. package/src/setup/header/Button/HeaderButton.module.css +3 -3
  897. package/src/setup/header/Button/docs/Button__default.docs.js +21 -21
  898. package/src/setup/header/Link/HeaderLink.module.css +15 -15
  899. package/src/setup/header/Link/Link.js +48 -48
  900. package/src/setup/header/Link/docs/Link__default.docs.js +20 -20
  901. package/src/setup/header/Search/Search.js +87 -87
  902. package/src/setup/header/Search/Search.module.css +57 -57
  903. package/src/setup/header/Search/docs/Search__default.docs.js +32 -32
  904. package/src/setup/header/Views/Views.js +62 -62
  905. package/src/setup/header/Views/Views.module.css +27 -27
  906. package/src/setup/header/Views/docs/Views__default.docs.js +20 -20
  907. package/src/setup/helptips/Description/Description.js +22 -22
  908. package/src/setup/helptips/Description/HelpTipsDescription.module.css +6 -6
  909. package/src/setup/helptips/Description/docs/Description__default.docs.js +24 -24
  910. package/src/setup/helptips/Link/HelpTipsLink.module.css +6 -6
  911. package/src/setup/helptips/Link/Link.js +40 -39
  912. package/src/setup/helptips/Link/docs/Link__default.docs.js +27 -27
  913. package/src/setup/helptips/ListGroup/ListGroup.js +42 -42
  914. package/src/setup/helptips/ListGroup/ListGroup.module.css +17 -17
  915. package/src/setup/helptips/ListGroup/docs/ListGroup__default.docs.js +37 -37
  916. package/src/setup/helptips/Title/HelpTipsTitle.module.css +5 -5
  917. package/src/setup/helptips/Title/Title.js +22 -22
  918. package/src/setup/helptips/Title/docs/Title__default.docs.js +22 -22
  919. package/src/setup/table/Table/Table.js +31 -31
  920. package/src/setup/table/Table/docs/Table__default.docs.js +115 -115
  921. package/src/setup/table/TableBody/TableBody.js +37 -37
  922. package/src/setup/table/TableData/SetupTableData.module.css +36 -36
  923. package/src/setup/table/TableData/TableData.js +56 -56
  924. package/src/setup/table/TableData/Tablehover.module.css +6 -6
  925. package/src/setup/table/TableHead/SetupTableHead.module.css +8 -8
  926. package/src/setup/table/TableHead/TableHead.js +53 -53
  927. package/src/setup/table/TableRow/SetupTableRow.module.css +10 -10
  928. package/src/setup/table/TableRow/TableRow.js +60 -60
  929. package/src/setup/table/Text/TableText.module.css +37 -37
  930. package/src/setup/table/Text/Text.js +82 -82
  931. package/src/setup/table/Text/docs/Text__default.docs.js +38 -38
  932. package/src/svg/PlusIcon.js +43 -43
  933. package/src/svg/SnippetIcon.js +50 -50
  934. package/src/svg/TemplateIcon.js +34 -34
  935. package/src/svg/docs/SVG__default.docs.js +46 -46
  936. package/src/utils/ChannelIconMapping.js +130 -130
  937. package/src/utils/Common.js +20 -20
  938. package/src/utils/General.js +58 -58
  939. package/src/utils/KeyboardApi.js +280 -280
  940. package/src/utils/editorUtils.js +189 -189
  941. package/src/version2/AlertClose/AlertClose.js +45 -45
  942. package/src/version2/AlertClose/AlertClose.module.css +42 -42
  943. package/src/version2/AlertClose/docs/AlertClose__default.docs.js +46 -46
  944. package/src/version2/GlobalNotification/GlobalNotification.js +114 -112
  945. package/src/version2/GlobalNotification/GlobalNotification.module.css +89 -89
  946. package/src/version2/GlobalNotification/docs/GlobalNotification__default.docs.js +94 -94
  947. package/src/version2/alertIcons/AlarmAlertIcon.js +32 -32
  948. package/src/version2/alertIcons/AlertIcons.js +60 -60
  949. package/src/version2/alertIcons/AlertIcons.module.css +67 -67
  950. package/src/version2/alertIcons/DangerAlertIcon.js +33 -33
  951. package/src/version2/alertIcons/ErrorAlertIcon.js +34 -34
  952. package/src/version2/alertIcons/InfoAlertIcon.js +35 -35
  953. package/src/version2/alertIcons/NotificationAlertIcon.js +31 -31
  954. package/src/version2/alertIcons/SuccessAlertIcon.js +30 -30
  955. package/src/version2/alertIcons/WarningAlertIcon.js +31 -31
  956. package/src/version2/alertIcons/docs/AlertIcons__default.docs.js +123 -123
  957. package/src/version2/errorstate/Inconvenience/Inconvenience.js +98 -98
  958. package/src/version2/errorstate/Inconvenience/V2_Inconvenience.module.css +46 -0
  959. package/src/version2/errorstate/Inconvenience/docs/Inconvenience__default.docs.js +19 -19
  960. package/src/version2/errorstate/OopsSomethingMiss/OopsSomethingMiss.js +98 -99
  961. package/src/version2/errorstate/OopsSomethingMiss/V2_OopsSomethingMiss.module.css +46 -0
  962. package/src/version2/errorstate/OopsSomethingMiss/docs/OopsSomethingMiss__default.docs.js +21 -21
  963. package/src/version2/errorstate/UnableToProcessRequest/UnableToProcessRequest.js +98 -98
  964. package/src/version2/errorstate/UnableToProcessRequest/V2_UnableToProcessRequest.module.css +46 -0
  965. package/src/version2/errorstate/UnableToProcessRequest/docs/UnableToProcessRequest__default.docs.js +31 -31
  966. package/src/version2/errorstate/UnauthorizedLogin/UnauthorizedLogin.js +101 -102
  967. package/src/version2/errorstate/UnauthorizedLogin/V2_UnauthorizedLogin.module.css +46 -0
  968. package/src/version2/errorstate/UnauthorizedLogin/docs/UnauthorizedLogin__default.docs.js +19 -19
  969. package/src/version2/errorstate/UrlNotFound/UrlNotFound.js +98 -98
  970. package/src/version2/errorstate/UrlNotFound/V2_UrlNotFound.module.css +46 -0
  971. package/src/version2/errorstate/UrlNotFound/docs/UrlNotFound__default.docs.js +21 -21
  972. package/src/version2/errorstate/WillBeRightBack/V2_WillBeRightBack.module.css +46 -0
  973. package/src/version2/errorstate/WillBeRightBack/WillBeRightBack.js +98 -98
  974. package/src/version2/errorstate/WillBeRightBack/docs/WillBeRightBack__default.docs.js +19 -19
  975. package/src/version2/lookup/AlertHeader/AlertHeader.js +100 -100
  976. package/src/version2/lookup/AlertHeader/AlertHeaderNew.module.css +63 -63
  977. package/src/version2/lookup/AlertHeader/docs/AlertHeader__default.docs.js +66 -66
  978. package/src/version2/lookup/AlertLookup/AlertLookup.js +287 -287
  979. package/src/version2/lookup/AlertLookup/AlertLookupNew.module.css +39 -39
  980. package/src/version2/lookup/AlertLookup/docs/AlertLookup__default.docs.js +150 -150
  981. package/src/version2/lookup/alertLookupCommonNew.module.css +25 -25
  982. package/src/version2/notification/DesktopNotification/DesktopNotification.js +251 -251
  983. package/src/version2/notification/DesktopNotification/DesktopNotification.module.css +92 -92
  984. package/src/version2/notification/DesktopNotification/docs/DesktopNotification__default.docs.js +86 -86
  985. package/src/version2/notification/DesktopNotificationHeader/DesktopNotificationHeader.js +92 -92
  986. package/src/version2/notification/DesktopNotificationHeader/DesktopNotificationHeader.module.css +99 -99
  987. package/src/version2/notification/DesktopNotificationHeader/docs/DesktopNotificationHeader__default.docs.js +51 -51
  988. package/es/Appearance/pureDark/mode/dotPureDarkMode.module.css +0 -536
  989. package/es/Appearance/pureDark/themes/blue/bluePureDarkDotTheme.module.css +0 -8
  990. package/es/Appearance/pureDark/themes/green/greenPureDarkDotTheme.module.css +0 -8
  991. package/es/Appearance/pureDark/themes/orange/orangePureDarkDotTheme.module.css +0 -8
  992. package/es/Appearance/pureDark/themes/red/redPureDarkDotTheme.module.css +0 -8
  993. package/es/Appearance/pureDark/themes/yellow/yellowPureDarkDotTheme.module.css +0 -8
  994. package/es/list/Icons/ReadUnreadIcon.js +0 -40
  995. package/lib/Appearance/pureDark/mode/dotPureDarkMode.module.css +0 -536
  996. package/lib/Appearance/pureDark/themes/blue/bluePureDarkDotTheme.module.css +0 -8
  997. package/lib/Appearance/pureDark/themes/green/greenPureDarkDotTheme.module.css +0 -8
  998. package/lib/Appearance/pureDark/themes/orange/orangePureDarkDotTheme.module.css +0 -8
  999. package/lib/Appearance/pureDark/themes/red/redPureDarkDotTheme.module.css +0 -8
  1000. package/lib/Appearance/pureDark/themes/yellow/yellowPureDarkDotTheme.module.css +0 -8
  1001. package/lib/list/Icons/ReadUnreadIcon.js +0 -90
  1002. package/src/Appearance/pureDark/mode/dotPureDarkMode.module.css +0 -536
  1003. package/src/Appearance/pureDark/themes/blue/bluePureDarkDotTheme.module.css +0 -8
  1004. package/src/Appearance/pureDark/themes/green/greenPureDarkDotTheme.module.css +0 -8
  1005. package/src/Appearance/pureDark/themes/orange/orangePureDarkDotTheme.module.css +0 -8
  1006. package/src/Appearance/pureDark/themes/red/redPureDarkDotTheme.module.css +0 -8
  1007. package/src/Appearance/pureDark/themes/yellow/yellowPureDarkDotTheme.module.css +0 -8
  1008. package/src/list/Icons/ReadUnreadIcon.js +0 -41
@@ -1,944 +1,931 @@
1
- import React, { Component, Fragment } from 'react';
2
- import PropTypes from 'prop-types';
3
- import Icon from '@zohodesk/icons/lib/Icon';
4
- import DropBox from '@zohodesk/components/lib/DropBox/DropBox';
5
- import Popup from '@zohodesk/components/lib/Popup/Popup';
6
- import { Box, Container } from '@zohodesk/components/lib/Layout';
7
- import ListItem from '@zohodesk/components/lib/ListItem/ListItem';
8
- import ListItemWithIcon from '@zohodesk/components/lib/ListItem/ListItemWithIcon';
9
- import DropDownHeading from '@zohodesk/components/lib/DropDown/DropDownHeading';
10
- import TextBoxIcon from '@zohodesk/components/lib/TextBoxIcon/TextBoxIcon';
11
- import Loader from '@zohodesk/svg/lib/svg/Loader';
12
- import CommonEmptyState from '../../emptystate/CommonEmptyState/CommonEmptyState';
13
- import EmptySearch from '@zohodesk/svg/lib/svg/EmptySearch';
14
- import CssProvider from '@zohodesk/components/lib/Provider/CssProvider';
15
- import { scrollTo } from '@zohodesk/components/lib/utils/Common';
16
- import { getUniqueId } from '@zohodesk/components/lib/Provider/IdProvider';
17
- import btnStyle from '@zohodesk/components/lib/semantic/Button/semanticButton.module.css';
18
- import RippleEffect from '@zohodesk/components/lib/RippleEffect/RippleEffect';
19
- import { shallowDiff } from '../../utils/General';
20
- import style from './ToggleDropDown.module.css';
21
-
22
- export class ToggleDropDown extends Component {
23
- constructor(props) {
24
- super(props);
25
- this.state = {
26
- searchValue: '',
27
- selectedIndex: -1,
28
- options: props.options
29
- };
30
- this.handleChange = this.handleChange.bind(this);
31
- this.handleKeyDown = this.handleKeyDown.bind(this);
32
- this.onSelect = this.onSelect.bind(this);
33
- this.handleTogglePopup = this.handleTogglePopup.bind(this);
34
- this.showTogglePopup = this.showTogglePopup.bind(this);
35
- this.hideTogglePopup = this.hideTogglePopup.bind(this);
36
- this.onSearchAPI = this.onSearchAPI.bind(this);
37
- this.onSearchClear = this.onSearchClear.bind(this);
38
- this.handleFilterSuggestions = this.handleFilterSuggestions.bind(this);
39
- this.scrollContentRef = this.scrollContentRef.bind(this);
40
- this.handleMouseEnter = this.handleMouseEnter.bind(this);
41
- this.searchInputRef = this.searchInputRef.bind(this);
42
- this.itemRef = this.itemRef.bind(this);
43
- this.inputRef = this.inputRef.bind(this);
44
- this.handleScroll = this.handleScroll.bind(this);
45
- this.getOptionsArray = this.getOptionsArray.bind(this);
46
- this.emptySearchSVG = this.emptySearchSVG.bind(this);
47
- this.getAriaId = getUniqueId(this);
48
- this.getSelectedIndex = this.getSelectedIndex.bind(this);
49
- }
50
-
51
- emptySearchSVG() {
52
- return <EmptySearch size='small' />;
53
- }
54
-
55
- inputRef(el) {
56
- this.hiddenInput = el;
57
- }
58
-
59
- itemRef(ele, index, id) {
60
- this[`suggestion_${id}`] = ele;
61
- }
62
-
63
- searchInputRef(el) {
64
- this.searchInput = el;
65
- }
66
-
67
- handleTogglePopup(e) {
68
- const { togglePopup, boxPosition, onSelectLabel, isPopupOpen, removeClose } = this.props;
69
- removeClose && removeClose(e);
70
- !isPopupOpen && onSelectLabel && onSelectLabel(e);
71
- togglePopup(e, boxPosition);
72
- }
73
-
74
- showTogglePopup(e) {
75
- const { togglePopup, boxPosition, onSelectLabel, isPopupOpen } = this.props;
76
- !isPopupOpen && onSelectLabel && onSelectLabel(e);
77
- !isPopupOpen && togglePopup(e, boxPosition);
78
- }
79
-
80
- hideTogglePopup(e) {
81
- const { togglePopup, boxPosition, onSelectLabel, isPopupOpen } = this.props;
82
- !isPopupOpen && onSelectLabel && onSelectLabel(e);
83
- isPopupOpen && togglePopup(e, boxPosition);
84
- }
85
-
86
- scrollContentRef(el) {
87
- const { isPopupOpen } = this.props;
88
- if (isPopupOpen) {
89
- this.optionsContainer = el;
90
- }
91
- }
92
-
93
- componentWillReceiveProps(nextProps) {
94
- // if (nextProps.options.length != this.props.options.length) {
95
- // this.setState({
96
- // options: nextProps.options
97
- // });
98
- // }
99
- if (shallowDiff(this.props.options, nextProps.options)) {
100
- this.setState({
101
- options: nextProps.options
102
- });
103
- }
104
- }
105
-
106
- onSelect(element, e) {
107
- const { onClick, togglePopup, preventPopupClose } = this.props;
108
- onClick && onClick(e, element);
109
- !preventPopupClose && togglePopup(e);
110
- }
111
-
112
- componentDidUpdate(prevProps) {
113
- const {
114
- isPopupOpen,
115
- isPopupReady,
116
- isSearch,
117
- idName,
118
- options,
119
- onDropDownOpen,
120
- onDropDownClose
121
- } = this.props;
122
- const { selectedIndex, searchValue } = this.state;
123
- if (prevProps.isPopupReady !== isPopupReady) {
124
- setTimeout(() => {
125
- isPopupReady
126
- ? isSearch
127
- ? this.searchInput.focus()
128
- : this.hiddenInput.focus()
129
- : this.hiddenInput.focus();
130
- }, 10);
131
- }
132
- const optionsArr = this.getOptionsArray();
133
- const option = optionsArr[selectedIndex];
134
- const id = (option && option[idName]) || {};
135
- const selSuggestion = this[`suggestion_${id}`];
136
- if (isPopupOpen) {
137
- this.optionsContainer && scrollTo(this.optionsContainer, selSuggestion);
138
- }
139
- if (!prevProps.isPopupOpen && isPopupOpen && searchValue.length) {
140
- this.onSearchClear();
141
- }
142
-
143
- if (this.props.from == 'activityFilter') {
144
- //Temproary
145
- const results = this.props.options.filter(
146
- ({ isDisabled: id1 }) =>
147
- !prevProps.options.some(({ isDisabled: id2 }) => id2 === id1)
148
- );
149
- if (results.length > 0) {
150
- this.setState({ options: options });
151
- }
152
- }
153
-
154
- if (prevProps.isPopupOpen !== isPopupOpen) {
155
- if (isPopupOpen) {
156
- onDropDownOpen && onDropDownOpen();
157
- } else {
158
- onDropDownClose && onDropDownClose();
159
- }
160
- this.getSelectedIndex(optionsArr);
161
- }
162
- }
163
-
164
- handleFilterSuggestions(searchValue) {
165
- const {
166
- options,
167
- keyName,
168
- isGroupDropDown,
169
- groupOptionsKey,
170
- groupNameKey
171
- } = this.props;
172
- searchValue = searchValue.trim().toLowerCase();
173
- let result = [];
174
- if (isGroupDropDown) {
175
- const filteredGroups = [];
176
- options.map((group) => {
177
- const { needDivider } = group;
178
- const name = group[groupNameKey];
179
- const groupOptions = group[groupOptionsKey];
180
- const datas = groupOptions.filter((list) => {
181
- const value = list[keyName];
182
- return value.toLowerCase().includes(searchValue);
183
- });
184
- if (datas.length) {
185
- filteredGroups.push({
186
- [groupNameKey]: name,
187
- [groupOptionsKey]: datas,
188
- needDivider
189
- });
190
- }
191
- });
192
- result = filteredGroups;
193
- } else {
194
- let filteredOptions = options.filter((item, i) => {
195
- if (item.needDivider) {
196
- return true;
197
- }
198
- return item[keyName].toLowerCase().includes(searchValue);
199
- });
200
- if (filteredOptions.length) {
201
- // to avoid more than one dividers consecutively comes as one by one
202
- let needDividerCount = 0;
203
- const orderedOptions = filteredOptions.filter((item) => {
204
- if (item.needDivider && needDividerCount === 0) {
205
- needDividerCount++;
206
- return true;
207
- } else if (!item.needDivider) {
208
- needDividerCount = 0;
209
- return true;
210
- }
211
- });
212
- // remove divider if it placed in first or last index
213
- filteredOptions = [];
214
- filteredOptions = orderedOptions.filter((item, i) => {
215
- if (i == 0 || i == orderedOptions.length - 1) {
216
- if (!item.needDivider) {
217
- return true;
218
- }
219
- } else {
220
- return true;
221
- }
222
- });
223
- result = filteredOptions;
224
- }
225
- }
226
- return result;
227
- }
228
-
229
- getOptionsArray() {
230
- const { searchValue } = this.state;
231
- const { isGroupDropDown, groupOptionsKey } = this.props;
232
-
233
- const options = searchValue.length
234
- ? this.handleFilterSuggestions(searchValue)
235
- : this.props.options;
236
- let optionsArr = [];
237
- if (isGroupDropDown) {
238
- for (let i = 0; i < options.length; i++) {
239
- const groupOptions = options[i][groupOptionsKey];
240
- Array.prototype.push.apply(optionsArr, groupOptions);
241
- }
242
- } else {
243
- optionsArr = options.filter((item) => !item.needDivider);
244
- }
245
- return optionsArr;
246
- }
247
-
248
- handleKeyDown(e) {
249
- const { keyCode } = e;
250
- const { selectedIndex, searchValue } = this.state;
251
- const optionsArr = this.getOptionsArray();
252
- const totalIndex = optionsArr.length;
253
- const {
254
- togglePopup,
255
- onClick,
256
- boxPosition,
257
- isPopupReady,
258
- isNextOptions,
259
- getNextOptions,
260
- value,
261
- keyName,
262
- idName,
263
- preventPopupClose,
264
- isSearch
265
- } = this.props;
266
- if (isPopupReady && (keyCode === 38 || keyCode === 40) && e.preventDefault) {
267
- e.preventDefault(); //prevent body scroll
268
- }
269
- if (isPopupReady) {
270
- switch (keyCode) {
271
- case 40:
272
- if (selectedIndex === totalIndex - 1) {
273
- this.setState({ selectedIndex: 0 });
274
- } else {
275
- if (selectedIndex === totalIndex - 3) {
276
- isNextOptions &&
277
- getNextOptions &&
278
- getNextOptions(e, { searchValue });
279
- }
280
- this.setState({
281
- selectedIndex: selectedIndex + 1
282
- });
283
- }
284
- break;
285
- case 38:
286
- if (selectedIndex === 0) {
287
- this.setState({ selectedIndex: totalIndex - 1 });
288
- } else {
289
- this.setState({
290
- selectedIndex: selectedIndex - 1
291
- });
292
- }
293
- break;
294
- case 13:
295
- const selectedId = optionsArr[selectedIndex][idName] || '';
296
- onClick && onClick(selectedId, optionsArr[selectedIndex]);
297
- if(!preventPopupClose) {
298
- togglePopup(e, boxPosition);
299
- }
300
- else if(isSearch) {
301
- this.searchInput.focus();
302
- }
303
- else {
304
- this.hiddenInput.focus();
305
- }
306
- break;
307
- }
308
- } else {
309
- if (keyCode === 13 || keyCode === 40) {
310
- togglePopup(e, boxPosition);
311
- }
312
- }
313
- }
314
-
315
- getSelectedIndex(optionsArr) {
316
- const { selectedId, idName } = this.props;
317
- if(selectedId) {
318
- for (let i = 0; i < optionsArr.length; i++) {
319
- const indexId = optionsArr[i][idName];
320
- if (selectedId === indexId) {
321
- this.setState({
322
- selectedIndex: i
323
- });
324
- break;
325
- }
326
- }
327
- }
328
- else {
329
- this.setState({
330
- selectedIndex: -1
331
- })
332
- }
333
- }
334
-
335
- onSearchAPI() {
336
- const { searchValue } = this.state;
337
- const { needSearchFetching, onSearch } = this.props;
338
- if (needSearchFetching && onSearch) {
339
- onSearch(searchValue);
340
- }
341
- }
342
-
343
- handleChange(value, e) {
344
- const filteredOptions = this.handleFilterSuggestions(value);
345
- this.setState(
346
- {
347
- searchValue: value,
348
- selectedIndex: -1,
349
- options: filteredOptions
350
- },
351
- () => {
352
- this.onSearchAPI();
353
- }
354
- );
355
- }
356
-
357
- onSearchClear() {
358
- const filteredOptions = this.handleFilterSuggestions('');
359
- this.setState(
360
- {
361
- searchValue: '',
362
- options: filteredOptions
363
- },
364
- () => {
365
- this.onSearchAPI();
366
- }
367
- );
368
- }
369
-
370
- handleMouseEnter(id, value, index, e) {
371
- this.setState({
372
- selectedIndex: index
373
- });
374
- }
375
-
376
- handleScroll(e) {
377
- const { isNextOptions, getNextOptions } = this.props;
378
- const { searchValue } = this.state;
379
- if (
380
- e.target.scrollTop + e.target.offsetHeight >
381
- e.target.scrollHeight - 1
382
- ) {
383
- isNextOptions && getNextOptions && getNextOptions(e, { searchValue });
384
- }
385
- }
386
-
387
- render() {
388
- const { options, selectedIndex } = this.state;
389
- const {
390
- value,
391
- removeClose,
392
- boxSize,
393
- keyName,
394
- idName,
395
- title,
396
- isSearch,
397
- isArrow,
398
- placeHolderText,
399
- className,
400
- right,
401
- left,
402
- top,
403
- bottom,
404
- isPopupOpen: isOpen,
405
- isPopupActive,
406
- needExternalPopupState,
407
- isPopupReady,
408
- position,
409
- getTargetRef,
410
- getContainerRef,
411
- dataId,
412
- searchBoxSize,
413
- searchEmptyHint,
414
- searchErrorText,
415
- activeStyle,
416
- showOnHover,
417
- isDisabled,
418
- showIconOnHover,
419
- isReadOnly,
420
- hoverStyle,
421
- isEditable,
422
- iconName,
423
- iconSize,
424
- needTick,
425
- dataTitle,
426
- isDataLoaded,
427
- children,
428
- needResponsive,
429
- arrowIconPosition,
430
- isGroupDropDown,
431
- groupOptionsKey,
432
- groupNameKey,
433
- isToggleStateNeeded,
434
- selectedId,
435
- isPadding,
436
- isNeedEffect,
437
- hoverType,
438
- palette,
439
- getFooter,
440
- customProps
441
- } = this.props;
442
- let {ToggleDropDownProps={},DropBoxProps={},TextBoxIconProps={},ListItemWithIconProps={},ListItemProps={}}=customProps;
443
- const isPopupOpen = needExternalPopupState
444
- ? isPopupActive && isOpen
445
- : isOpen;
446
- const Component = isToggleStateNeeded ? children.type : null,
447
- componentProps = isToggleStateNeeded ? children.props : null;
448
- const { searchValue } = this.state;
449
-
450
- const commonClass = `${className ? className : ''} ${
451
- isPopupReady ? (activeStyle ? activeStyle : '') : ''
452
- } ${
453
- isDisabled
454
- ? CssProvider('isDisable')
455
- : isReadOnly || !isEditable
456
- ? style.cursorDefault
457
- : !showOnHover
458
- ? `${style.cursor} ${hoverStyle ? hoverStyle : ''}`
459
- : `${hoverStyle ? hoverStyle : ''} ${style.cursorDefault}`
460
- }`;
461
- let listIndex = -1;
462
- const ariaTitleId = this.getAriaId();
463
- const allyOptionsArr = this.getOptionsArray();
464
-
465
- return (
466
- <div
467
- className={style.wrapper}
468
- onMouseEnter={
469
- showOnHover && !isDisabled && !isReadOnly && isEditable
470
- ? this.showTogglePopup
471
- : undefined
472
- }
473
- onMouseLeave={
474
- showOnHover && !isDisabled && !isReadOnly && isEditable
475
- ? this.hideTogglePopup
476
- : undefined
477
- }
478
- {...ToggleDropDownProps}
479
- >
480
- <Container
481
- alignBox='row'
482
- onClick={
483
- !showOnHover &&
484
- !isDisabled &&
485
- !isReadOnly &&
486
- isEditable &&
487
- this.handleTogglePopup
488
- }
489
- eleRef={getTargetRef}
490
- align='vertical'
491
- isCover={false}
492
- dataId={dataId}
493
- >
494
- <div className={style.hiddenInput}>
495
- <input
496
- type='text'
497
- ref={this.inputRef}
498
- onKeyDown={this.handleKeyDown}
499
- tabIndex='-1'
500
- className={style.hiddenInputElement}
501
- />
502
- </div>
503
- {children ? (
504
- isToggleStateNeeded ? (
505
- <Component {...componentProps} isActive={isPopupOpen} />
506
- ) : (
507
- children
508
- )
509
- ) : (
510
- <RippleEffect
511
- hoverType={hoverType}
512
- isActive={isPopupOpen}
513
- isNeedEffect={isEditable && isNeedEffect}
514
- >
515
- <Container
516
- className={`${btnStyle.buttonReset} ${commonClass} ${
517
- !isPopupOpen && showIconOnHover ? style.hoverIcon : ''
518
- }`}
519
- isCover={false}
520
- alignBox='row'
521
- align='vertical'
522
- tagName='button'
523
- aria-labelledby={ariaTitleId}
524
- aria-haspopup={true}
525
- aria-expanded={isPopupOpen ? true : false}
526
- >
527
- {iconName ? (
528
- <Box className={value ? style.iconBox : ''}>
529
- <Icon name={iconName} size={iconSize} />
530
- </Box>
531
- ) : null}
532
- {value && (
533
- <React.Fragment>
534
- <Box
535
- id={ariaTitleId}
536
- aria-hidden={true}
537
- className={`${style.value} toggleDropText`}
538
- shrink
539
- tagName='span'
540
- data-title={dataTitle}
541
- >
542
- {value}
543
- </Box>
544
- {isEditable ? (
545
- <Icon
546
- aria-hidden={true}
547
- size='6'
548
- name='ZD-down'
549
- iconClass={`${'toggleDropIcon'} ${style.arrow} ${
550
- style[`${arrowIconPosition}_arrow`]
551
- }`}
552
- dataId='statusdownarrow'
553
- />
554
- ) : null}
555
- </React.Fragment>
556
- )}
557
- </Container>
558
- </RippleEffect>
559
- )}
560
- </Container>
561
-
562
- {isPopupOpen ? (
563
- <DropBox
564
- boxPosition={position}
565
- isActive={isPopupReady}
566
- onClick={removeClose}
567
- size={boxSize}
568
- right={right}
569
- left={left}
570
- top={top}
571
- bottom={bottom}
572
- isArrow={isArrow}
573
- isAnimate
574
- getRef={getContainerRef}
575
- customClass={{
576
- customDropBoxWrap: style.dropBoxContainer
577
- }}
578
- needResponsive={needResponsive}
579
- isPadding={isPadding}
580
- tabindex='0'
581
- a11y={{
582
- role: !isSearch ? 'menu' : undefined,
583
- ariaLabelledby: !isSearch ? ariaTitleId : undefined
584
- }}
585
- palette={palette}
586
- {...DropBoxProps}
587
- >
588
- <Fragment>
589
- {isSearch ? (
590
- <div className={style.search}>
591
- <TextBoxIcon
592
- placeHolder={placeHolderText}
593
- onChange={this.handleChange}
594
- value={searchValue}
595
- onClear={this.onSearchClear}
596
- size={searchBoxSize}
597
- inputRef={this.searchInputRef}
598
- onKeyDown={this.handleKeyDown}
599
- a11y={{
600
- role: 'combobox',
601
- ariaOwns: ariaTitleId,
602
- ariaActivedescendant:
603
- allyOptionsArr[selectedIndex] &&
604
- allyOptionsArr[selectedIndex][keyName],
605
- ariaAutocomplete: 'list',
606
- ariaHaspopup: true,
607
- ariaExpanded: true
608
- }}
609
- {...TextBoxIconProps}
610
- />
611
- </div>
612
- ) : null}
613
- {title && options.length != 0 && (
614
- <div className={style.title}>
615
- <DropDownHeading
616
- text={title}
617
- htmlId={ariaTitleId}
618
- palette={palette}
619
- a11y={{
620
- role: 'heading'
621
- }}
622
- customClass={style.dropdown}
623
- />
624
- </div>
625
- )}
626
- <Box
627
- id={ariaTitleId}
628
- scroll='vertical'
629
- dataId={`${dataId}_list`}
630
- className={style.maxHgt}
631
- eleRef={this.scrollContentRef}
632
- onScroll={this.handleScroll}
633
- role={isSearch ? 'listbox' : undefined}
634
- aria-labelledby={isSearch ? ariaTitleId : undefined}
635
- >
636
- {isDataLoaded ? (
637
- options && options.length != 0 ? (
638
- isGroupDropDown ? (
639
- <Fragment>
640
- {options.map((group) => {
641
- const groupName = group[groupNameKey];
642
- const groupOptions = group[groupOptionsKey];
643
- const { needDivider } = group;
644
- return (
645
- <Fragment key={`index${groupName}`}>
646
- {needDivider && (
647
- <div className={style.seperatedLine} />
648
- )}
649
- {groupName && (
650
- <div className={style.groupName}>
651
- <DropDownHeading
652
- text={groupName}
653
- palette={palette}
654
- a11y={{
655
- role: 'heading'
656
- }}
657
- />
658
- </div>
659
- )}
660
- {groupOptions &&
661
- groupOptions.map((item) => {
662
- const {
663
- iconName,
664
- iconSize,
665
- iconClass,
666
- title,
667
- disableTitle = '',
668
- isDisabled = false
669
- } = item;
670
- listIndex += 1;
671
- return iconName ? (
672
- <ListItemWithIcon
673
- key={listIndex}
674
- dataId={item[keyName]}
675
- value={item[keyName]}
676
- id={item[idName]}
677
- active={selectedId === item[idName]}
678
- onClick={this.onSelect.bind(this, item)}
679
- index={listIndex}
680
- highlight={selectedIndex === listIndex}
681
- disableTitle={disableTitle}
682
- isDisabled={isDisabled}
683
- iconName={iconName}
684
- iconClass={iconClass}
685
- iconSize={iconSize}
686
- needTick={needTick}
687
- needBorder={false}
688
- onMouseEnter={this.handleMouseEnter}
689
- getRef={this.itemRef}
690
- title={title ? title : item[keyName]}
691
- palette={palette}
692
- a11y={{
693
- role: isSearch ? 'option' : 'menuitem',
694
- ariaSelected:
695
- selectedId === item[idName]
696
- }}
697
- {...ListItemWithIconProps}
698
- />
699
- ) : (
700
- <ListItem
701
- key={listIndex}
702
- dataId={item[keyName]}
703
- value={item[keyName]}
704
- id={item[idName]}
705
- active={selectedId === item[idName]}
706
- onClick={this.onSelect.bind(this, item)}
707
- isDisabled={isDisabled}
708
- disableTitle={disableTitle}
709
- index={listIndex}
710
- highlight={selectedIndex === listIndex}
711
- needTick={needTick}
712
- needBorder={false}
713
- onMouseEnter={this.handleMouseEnter}
714
- getRef={this.itemRef}
715
- title={title ? title : item[keyName]}
716
- palette={palette}
717
- a11y={{
718
- role: isSearch ? 'option' : 'menuitem',
719
- ariaSelected:
720
- selectedId === item[idName]
721
- }}
722
- {...ListItemProps}
723
- />
724
- );
725
- })}
726
- </Fragment>
727
- );
728
- })}
729
- </Fragment>
730
- ) : (
731
- <Fragment>
732
- {options.map((item, i) => {
733
- const {
734
- iconName,
735
- iconSize,
736
- iconClass,
737
- title,
738
- needDivider,
739
- isDisabled = false,
740
- disableTitle = ''
741
- } = item;
742
- if (!needDivider) {
743
- listIndex += 1;
744
- }
745
- return (
746
- <Fragment key={i}>
747
- {needDivider ? (
748
- <div className={style.seperatedLine} />
749
- ) : iconName ? (
750
- <ListItemWithIcon
751
- dataId={item[keyName]}
752
- value={item[keyName]}
753
- id={item[idName]}
754
- active={selectedId === item[idName]}
755
- onClick={this.onSelect.bind(this, item)}
756
- index={listIndex}
757
- disableTitle={disableTitle}
758
- isDisabled={isDisabled}
759
- highlight={selectedIndex === listIndex}
760
- iconName={iconName}
761
- iconClass={iconClass}
762
- iconSize={iconSize}
763
- needTick={needTick}
764
- needBorder={false}
765
- onMouseEnter={this.handleMouseEnter}
766
- getRef={this.itemRef}
767
- title={title ? title : item[keyName]}
768
- key={listIndex}
769
- palette={palette}
770
- a11y={{
771
- role: isSearch ? 'option' : 'menuitem',
772
- ariaSelected: selectedId === item[idName]
773
- }}
774
- {...ListItemWithIconProps}
775
- />
776
- ) : (
777
- <ListItem
778
- key={listIndex}
779
- dataId={item[keyName]}
780
- value={item[keyName]}
781
- id={item[idName]}
782
- disableTitle={disableTitle}
783
- isDisabled={isDisabled}
784
- active={selectedId === item[idName]}
785
- onClick={this.onSelect.bind(this, item)}
786
- index={listIndex}
787
- highlight={selectedIndex === listIndex}
788
- needTick={needTick}
789
- needBorder={false}
790
- onMouseEnter={this.handleMouseEnter}
791
- getRef={this.itemRef}
792
- title={title ? title : item[keyName]}
793
- palette={palette}
794
- a11y={{
795
- role: isSearch ? 'option' : 'menuitem',
796
- ariaSelected: selectedId === item[idName]
797
- }}
798
- {...ListItemProps}
799
- />
800
- )}
801
- </Fragment>
802
- );
803
- })}
804
- </Fragment>
805
- )
806
- ) : (
807
- <CommonEmptyState
808
- className={style.svgWrapper}
809
- title={searchErrorText || 'oops !'}
810
- description={searchEmptyHint}
811
- size='small'
812
- getEmptyState={this.emptySearchSVG}
813
- />
814
- )
815
- ) : (
816
- <div className={style.loader}>
817
- <Loader />
818
- </div>
819
- )}
820
- </Box>
821
- {getFooter ? (
822
- <div>{getFooter()}</div>
823
- ) : null}
824
- </Fragment>
825
- </DropBox>
826
- ) : null}
827
- </div>
828
- );
829
- }
830
- }
831
- ToggleDropDown.defaultProps = {
832
- keyName: 'value',
833
- idName: 'id',
834
- isArrow: true,
835
- searchBoxSize: 'small',
836
- isDisabled: false,
837
- showIconOnHover: false,
838
- showOnHover: false,
839
- isReadOnly: false,
840
- isEditable: true,
841
- isDataLoaded: true,
842
- needTick: true,
843
- needResponsive: true,
844
- arrowIconPosition: 'default',
845
- groupOptionsKey: 'items',
846
- groupNameKey: 'name',
847
- isPadding: true,
848
- isToggleStateNeeded: false,
849
- isNeedEffect: true,
850
- hoverType: 'default',
851
- needExternalPopupState: false,
852
- customProps:{},
853
- preventPopupClose: false
854
- };
855
-
856
- ToggleDropDown.propTypes = {
857
- activeStyle: PropTypes.string,
858
- arrowIconPosition: PropTypes.oneOf(['default', 'overlay']),
859
- bottom: PropTypes.number,
860
- boxPosition: PropTypes.oneOf([
861
- 'bottomRight',
862
- 'bottomLeft',
863
- 'bottomCenter',
864
- 'topRight',
865
- 'topLeft',
866
- 'topCenter',
867
- 'rightTop',
868
- 'rightBottom',
869
- 'rightCenter',
870
- 'leftTop',
871
- 'leftBottom',
872
- 'leftCenter'
873
- ]),
874
- boxSize: PropTypes.oneOf(['xsmall', 'small', 'medium', 'mlarge', 'large']),
875
- children: PropTypes.node,
876
- className: PropTypes.string,
877
- dataId: PropTypes.string,
878
- dataTitle: PropTypes.string,
879
- getContainerRef: PropTypes.func,
880
- getNextOptions: PropTypes.func,
881
- getTargetRef: PropTypes.func,
882
- groupNameKey: PropTypes.string,
883
- groupOptionsKey: PropTypes.string,
884
- hoverStyle: PropTypes.string,
885
- hoverType: PropTypes.oneOf(['default', 'border', 'bg']),
886
- iconName: PropTypes.string,
887
- iconSize: PropTypes.string,
888
- idName: PropTypes.string,
889
- isArrow: PropTypes.bool,
890
- isDataLoaded: PropTypes.bool,
891
- isDisabled: PropTypes.bool,
892
- isEditable: PropTypes.bool,
893
- isGroupDropDown: PropTypes.bool,
894
- isNeedEffect: PropTypes.bool,
895
- isNextOptions: PropTypes.bool,
896
- isPadding: PropTypes.bool,
897
- isPopupActive: PropTypes.bool,
898
- isPopupOpen: PropTypes.bool,
899
- isPopupReady: PropTypes.bool,
900
- isReadOnly: PropTypes.bool,
901
- isSearch: PropTypes.bool,
902
- isToggleStateNeeded: PropTypes.bool,
903
- keyName: PropTypes.string,
904
- left: PropTypes.number,
905
- needExternalPopupState: PropTypes.bool,
906
- needResponsive: PropTypes.bool,
907
- needSearchFetching: PropTypes.bool,
908
- needTick: PropTypes.bool,
909
- onClick: PropTypes.func,
910
- onSearch: PropTypes.func,
911
- options: PropTypes.array.isRequired,
912
- palette: PropTypes.oneOf(['dark']),
913
- placeHolderText: PropTypes.string,
914
- position: PropTypes.string,
915
- removeClose: PropTypes.func,
916
- right: PropTypes.number,
917
- searchBoxSize: PropTypes.oneOf(['small', 'medium', 'xmedium']),
918
- searchEmptyHint: PropTypes.string,
919
- searchErrorText: PropTypes.string,
920
- selectedId: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),
921
- showIconOnHover: PropTypes.bool,
922
- showOnHover: PropTypes.bool,
923
- title: PropTypes.string,
924
- togglePopup: PropTypes.func,
925
- value: PropTypes.node,
926
- onDropDownOpen: PropTypes.func,
927
- onDropDownClose: PropTypes.func,
928
- getFooter: PropTypes.func,
929
- customProps:PropTypes.shape({
930
- ToggleDropDownProps: PropTypes.object,
931
- DropBoxProps: PropTypes.object,
932
- TextBoxIconProps: PropTypes.object,
933
- ListItemWithIconProps: PropTypes.object,
934
- ListItemProps: PropTypes.object
935
- }),
936
- preventPopupClose: PropTypes.bool
937
- };
938
-
939
- if (__DOCS__) {
940
- ToggleDropDown.docs = {
941
- componentGroup: 'Molecule'
942
- };
943
- }
944
- export default Popup(ToggleDropDown);
1
+ import React, { Component, Fragment } from 'react';
2
+ import PropTypes from 'prop-types';
3
+ import Icon from '@zohodesk/icons/lib/Icon';
4
+ import DropBox from '@zohodesk/components/lib/DropBox/DropBox';
5
+ import Popup from '@zohodesk/components/lib/Popup/Popup';
6
+ import { Box, Container } from '@zohodesk/components/lib/Layout';
7
+ import ListItem from '@zohodesk/components/lib/ListItem/ListItem';
8
+ import ListItemWithIcon from '@zohodesk/components/lib/ListItem/ListItemWithIcon';
9
+ import DropDownHeading from '@zohodesk/components/lib/DropDown/DropDownHeading';
10
+ import TextBoxIcon from '@zohodesk/components/lib/TextBoxIcon/TextBoxIcon';
11
+ import Loader from '@zohodesk/svg/lib/svg/Loader';
12
+ import CommonEmptyState from '../../emptystate/CommonEmptyState/CommonEmptyState';
13
+ import EmptySearch from '@zohodesk/svg/lib/svg/EmptySearch';
14
+ import CssProvider from '@zohodesk/components/lib/Provider/CssProvider';
15
+ import { scrollTo } from '@zohodesk/components/lib/utils/Common';
16
+ import { getUniqueId } from '@zohodesk/components/lib/Provider/IdProvider';
17
+ import btnStyle from '@zohodesk/components/lib/semantic/Button/semanticButton.module.css';
18
+ import RippleEffect from '@zohodesk/components/lib/RippleEffect/RippleEffect';
19
+ import { shallowDiff } from '../../utils/General';
20
+ import style from './ToggleDropDown.module.css';
21
+
22
+ export class ToggleDropDown extends Component {
23
+ constructor(props) {
24
+ super(props);
25
+ this.state = {
26
+ searchValue: '',
27
+ selectedIndex: -1,
28
+ options: props.options
29
+ };
30
+ this.handleChange = this.handleChange.bind(this);
31
+ this.handleKeyDown = this.handleKeyDown.bind(this);
32
+ this.onSelect = this.onSelect.bind(this);
33
+ this.handleTogglePopup = this.handleTogglePopup.bind(this);
34
+ this.showTogglePopup = this.showTogglePopup.bind(this);
35
+ this.hideTogglePopup = this.hideTogglePopup.bind(this);
36
+ this.onSearchAPI = this.onSearchAPI.bind(this);
37
+ this.onSearchClear = this.onSearchClear.bind(this);
38
+ this.handleFilterSuggestions = this.handleFilterSuggestions.bind(this);
39
+ this.scrollContentRef = this.scrollContentRef.bind(this);
40
+ this.handleMouseEnter = this.handleMouseEnter.bind(this);
41
+ this.searchInputRef = this.searchInputRef.bind(this);
42
+ this.itemRef = this.itemRef.bind(this);
43
+ this.inputRef = this.inputRef.bind(this);
44
+ this.handleScroll = this.handleScroll.bind(this);
45
+ this.getOptionsArray = this.getOptionsArray.bind(this);
46
+ this.emptySearchSVG = this.emptySearchSVG.bind(this);
47
+ this.getAriaId = getUniqueId(this);
48
+ }
49
+
50
+ emptySearchSVG() {
51
+ return <EmptySearch size='small' />;
52
+ }
53
+
54
+ inputRef(el) {
55
+ this.hiddenInput = el;
56
+ }
57
+
58
+ itemRef(ele, index, id) {
59
+ this[`suggestion_${id}`] = ele;
60
+ }
61
+
62
+ searchInputRef(el) {
63
+ this.searchInput = el;
64
+ }
65
+
66
+ handleTogglePopup(e) {
67
+ const { togglePopup, boxPosition, onSelectLabel, isPopupOpen, removeClose } = this.props;
68
+ removeClose && removeClose(e);
69
+ !isPopupOpen && onSelectLabel && onSelectLabel(e);
70
+ togglePopup(e, boxPosition);
71
+ }
72
+
73
+ showTogglePopup(e) {
74
+ const { togglePopup, boxPosition, onSelectLabel, isPopupOpen } = this.props;
75
+ !isPopupOpen && onSelectLabel && onSelectLabel(e);
76
+ !isPopupOpen && togglePopup(e, boxPosition);
77
+ }
78
+
79
+ hideTogglePopup(e) {
80
+ const { togglePopup, boxPosition, onSelectLabel, isPopupOpen } = this.props;
81
+ !isPopupOpen && onSelectLabel && onSelectLabel(e);
82
+ isPopupOpen && togglePopup(e, boxPosition);
83
+ }
84
+
85
+ scrollContentRef(el) {
86
+ const { isPopupOpen } = this.props;
87
+ if (isPopupOpen) {
88
+ this.optionsContainer = el;
89
+ }
90
+ }
91
+
92
+ componentWillReceiveProps(nextProps) {
93
+ // if (nextProps.options.length != this.props.options.length) {
94
+ // this.setState({
95
+ // options: nextProps.options
96
+ // });
97
+ // }
98
+ if (shallowDiff(this.props.options, nextProps.options)) {
99
+ this.setState({
100
+ options: nextProps.options
101
+ });
102
+ }
103
+ }
104
+
105
+ onSelect(element, e) {
106
+ const { onClick, togglePopup, preventPopupClose } = this.props;
107
+ onClick && onClick(e, element);
108
+ !preventPopupClose && togglePopup(e);
109
+ }
110
+
111
+ componentDidUpdate(prevProps) {
112
+ const {
113
+ isPopupOpen,
114
+ isPopupReady,
115
+ isSearch,
116
+ idName,
117
+ options,
118
+ onDropDownOpen,
119
+ onDropDownClose
120
+ } = this.props;
121
+ const { selectedIndex, searchValue } = this.state;
122
+ if (prevProps.isPopupReady !== isPopupReady) {
123
+ setTimeout(() => {
124
+ isPopupReady
125
+ ? isSearch
126
+ ? this.searchInput.focus()
127
+ : this.hiddenInput.focus()
128
+ : this.hiddenInput.focus();
129
+ }, 10);
130
+ }
131
+ const optionsArr = this.getOptionsArray();
132
+ const option = optionsArr[selectedIndex];
133
+ const id = (option && option[idName]) || {};
134
+ const selSuggestion = this[`suggestion_${id}`];
135
+ if (isPopupOpen) {
136
+ this.optionsContainer && scrollTo(this.optionsContainer, selSuggestion);
137
+ }
138
+ if (!prevProps.isPopupOpen && isPopupOpen && searchValue.length) {
139
+ this.onSearchClear();
140
+ }
141
+
142
+ if (this.props.from == 'activityFilter') {
143
+ //Temproary
144
+ const results = this.props.options.filter(
145
+ ({ isDisabled: id1 }) =>
146
+ !prevProps.options.some(({ isDisabled: id2 }) => id2 === id1)
147
+ );
148
+ if (results.length > 0) {
149
+ this.setState({ options: options });
150
+ }
151
+ }
152
+
153
+ if (prevProps.isPopupOpen !== isPopupOpen) {
154
+ if (isPopupOpen) {
155
+ onDropDownOpen && onDropDownOpen();
156
+ } else {
157
+ onDropDownClose && onDropDownClose();
158
+ }
159
+ }
160
+ }
161
+
162
+ handleFilterSuggestions(searchValue) {
163
+ const {
164
+ options,
165
+ keyName,
166
+ isGroupDropDown,
167
+ groupOptionsKey,
168
+ groupNameKey
169
+ } = this.props;
170
+ searchValue = searchValue.trim().toLowerCase();
171
+ let result = [];
172
+ if (isGroupDropDown) {
173
+ const filteredGroups = [];
174
+ options.map((group) => {
175
+ const { needDivider } = group;
176
+ const name = group[groupNameKey];
177
+ const groupOptions = group[groupOptionsKey];
178
+ const datas = groupOptions.filter((list) => {
179
+ const value = list[keyName];
180
+ return value.toLowerCase().includes(searchValue);
181
+ });
182
+ if (datas.length) {
183
+ filteredGroups.push({
184
+ [groupNameKey]: name,
185
+ [groupOptionsKey]: datas,
186
+ needDivider
187
+ });
188
+ }
189
+ });
190
+ result = filteredGroups;
191
+ } else {
192
+ let filteredOptions = options.filter((item, i) => {
193
+ if (item.needDivider) {
194
+ return true;
195
+ }
196
+ return item[keyName].toLowerCase().includes(searchValue);
197
+ });
198
+ if (filteredOptions.length) {
199
+ // to avoid more than one dividers consecutively comes as one by one
200
+ let needDividerCount = 0;
201
+ const orderedOptions = filteredOptions.filter((item) => {
202
+ if (item.needDivider && needDividerCount === 0) {
203
+ needDividerCount++;
204
+ return true;
205
+ } else if (!item.needDivider) {
206
+ needDividerCount = 0;
207
+ return true;
208
+ }
209
+ });
210
+ // remove divider if it placed in first or last index
211
+ filteredOptions = [];
212
+ filteredOptions = orderedOptions.filter((item, i) => {
213
+ if (i == 0 || i == orderedOptions.length - 1) {
214
+ if (!item.needDivider) {
215
+ return true;
216
+ }
217
+ } else {
218
+ return true;
219
+ }
220
+ });
221
+ result = filteredOptions;
222
+ }
223
+ }
224
+ return result;
225
+ }
226
+
227
+ getOptionsArray() {
228
+ const { searchValue } = this.state;
229
+ const { isGroupDropDown, groupOptionsKey } = this.props;
230
+
231
+ const options = searchValue.length
232
+ ? this.handleFilterSuggestions(searchValue)
233
+ : this.props.options;
234
+ let optionsArr = [];
235
+ if (isGroupDropDown) {
236
+ for (let i = 0; i < options.length; i++) {
237
+ const groupOptions = options[i][groupOptionsKey];
238
+ Array.prototype.push.apply(optionsArr, groupOptions);
239
+ }
240
+ } else {
241
+ optionsArr = options.filter((item) => !item.needDivider);
242
+ }
243
+ return optionsArr;
244
+ }
245
+
246
+ handleKeyDown(e) {
247
+ const { keyCode } = e;
248
+ const { selectedIndex, searchValue } = this.state;
249
+ const optionsArr = this.getOptionsArray();
250
+ const totalIndex = optionsArr.length;
251
+ const {
252
+ togglePopup,
253
+ onClick,
254
+ boxPosition,
255
+ isPopupReady,
256
+ isNextOptions,
257
+ getNextOptions,
258
+ value,
259
+ keyName,
260
+ idName,
261
+ preventPopupClose,
262
+ isSearch
263
+ } = this.props;
264
+ if (isPopupReady && (keyCode === 38 || keyCode === 40) && e.preventDefault) {
265
+ e.preventDefault(); //prevent body scroll
266
+ }
267
+ if (isPopupReady) {
268
+ switch (keyCode) {
269
+ case 40:
270
+ if (selectedIndex === totalIndex - 1) {
271
+ this.setState({ selectedIndex: 0 });
272
+ } else {
273
+ if (selectedIndex === totalIndex - 3) {
274
+ isNextOptions &&
275
+ getNextOptions &&
276
+ getNextOptions(e, { searchValue });
277
+ }
278
+ this.setState({
279
+ selectedIndex: selectedIndex + 1
280
+ });
281
+ }
282
+ break;
283
+ case 38:
284
+ if (selectedIndex === 0) {
285
+ this.setState({ selectedIndex: totalIndex - 1 });
286
+ } else {
287
+ this.setState({
288
+ selectedIndex: selectedIndex - 1
289
+ });
290
+ }
291
+ break;
292
+ case 13:
293
+ const selectedId = optionsArr[selectedIndex][idName] || '';
294
+ onClick && onClick(selectedId, optionsArr[selectedIndex]);
295
+ if(!preventPopupClose) {
296
+ togglePopup(e, boxPosition);
297
+ }
298
+ else if(isSearch) {
299
+ this.searchInput.focus();
300
+ }
301
+ else {
302
+ this.hiddenInput.focus();
303
+ }
304
+ break;
305
+ }
306
+ } else {
307
+ if (keyCode === 13 || keyCode === 40) {
308
+ togglePopup(e, boxPosition);
309
+ for (let i = 0; i < optionsArr.length; i++) {
310
+ const selectedValue = optionsArr[i][keyName];
311
+ if (value === selectedValue) {
312
+ this.setState({
313
+ selectedIndex: i
314
+ });
315
+ break;
316
+ }
317
+ }
318
+ }
319
+ }
320
+ }
321
+
322
+ onSearchAPI() {
323
+ const { searchValue } = this.state;
324
+ const { needSearchFetching, onSearch } = this.props;
325
+ if (needSearchFetching && onSearch) {
326
+ onSearch(searchValue);
327
+ }
328
+ }
329
+
330
+ handleChange(value, e) {
331
+ const filteredOptions = this.handleFilterSuggestions(value);
332
+ this.setState(
333
+ {
334
+ searchValue: value,
335
+ selectedIndex: -1,
336
+ options: filteredOptions
337
+ },
338
+ () => {
339
+ this.onSearchAPI();
340
+ }
341
+ );
342
+ }
343
+
344
+ onSearchClear() {
345
+ const filteredOptions = this.handleFilterSuggestions('');
346
+ this.setState(
347
+ {
348
+ searchValue: '',
349
+ options: filteredOptions
350
+ },
351
+ () => {
352
+ this.onSearchAPI();
353
+ }
354
+ );
355
+ }
356
+
357
+ handleMouseEnter(id, value, index, e) {
358
+ this.setState({
359
+ selectedIndex: index
360
+ });
361
+ }
362
+
363
+ handleScroll(e) {
364
+ const { isNextOptions, getNextOptions } = this.props;
365
+ const { searchValue } = this.state;
366
+ if (
367
+ e.target.scrollTop + e.target.offsetHeight >
368
+ e.target.scrollHeight - 1
369
+ ) {
370
+ isNextOptions && getNextOptions && getNextOptions(e, { searchValue });
371
+ }
372
+ }
373
+
374
+ render() {
375
+ const { options, selectedIndex } = this.state;
376
+ const {
377
+ value,
378
+ removeClose,
379
+ boxSize,
380
+ keyName,
381
+ idName,
382
+ title,
383
+ isSearch,
384
+ isArrow,
385
+ placeHolderText,
386
+ className,
387
+ right,
388
+ left,
389
+ top,
390
+ bottom,
391
+ isPopupOpen: isOpen,
392
+ isPopupActive,
393
+ needExternalPopupState,
394
+ isPopupReady,
395
+ position,
396
+ getTargetRef,
397
+ getContainerRef,
398
+ dataId,
399
+ searchBoxSize,
400
+ searchEmptyHint,
401
+ searchErrorText,
402
+ activeStyle,
403
+ showOnHover,
404
+ isDisabled,
405
+ showIconOnHover,
406
+ isReadOnly,
407
+ hoverStyle,
408
+ isEditable,
409
+ iconName,
410
+ iconSize,
411
+ needTick,
412
+ dataTitle,
413
+ isDataLoaded,
414
+ children,
415
+ needResponsive,
416
+ arrowIconPosition,
417
+ isGroupDropDown,
418
+ groupOptionsKey,
419
+ groupNameKey,
420
+ isToggleStateNeeded,
421
+ selectedId,
422
+ isPadding,
423
+ isNeedEffect,
424
+ hoverType,
425
+ palette,
426
+ getFooter,
427
+ customProps
428
+ } = this.props;
429
+ let {ToggleDropDownProps={},DropBoxProps={},TextBoxIconProps={},ListItemWithIconProps={},ListItemProps={}}=customProps;
430
+ const isPopupOpen = needExternalPopupState
431
+ ? isPopupActive && isOpen
432
+ : isOpen;
433
+ const Component = isToggleStateNeeded ? children.type : null,
434
+ componentProps = isToggleStateNeeded ? children.props : null;
435
+ const { searchValue } = this.state;
436
+
437
+ const commonClass = `${className ? className : ''} ${
438
+ isPopupReady ? (activeStyle ? activeStyle : '') : ''
439
+ } ${
440
+ isDisabled
441
+ ? CssProvider('isDisable')
442
+ : isReadOnly || !isEditable
443
+ ? style.cursorDefault
444
+ : !showOnHover
445
+ ? `${style.cursor} ${hoverStyle ? hoverStyle : ''}`
446
+ : `${hoverStyle ? hoverStyle : ''} ${style.cursorDefault}`
447
+ }`;
448
+ let listIndex = -1;
449
+ const ariaTitleId = this.getAriaId();
450
+ const allyOptionsArr = this.getOptionsArray();
451
+
452
+ return (
453
+ <div
454
+ className={style.wrapper}
455
+ onMouseEnter={
456
+ showOnHover && !isDisabled && !isReadOnly && isEditable
457
+ ? this.showTogglePopup
458
+ : undefined
459
+ }
460
+ onMouseLeave={
461
+ showOnHover && !isDisabled && !isReadOnly && isEditable
462
+ ? this.hideTogglePopup
463
+ : undefined
464
+ }
465
+ {...ToggleDropDownProps}
466
+ >
467
+ <Container
468
+ alignBox='row'
469
+ onClick={
470
+ !showOnHover &&
471
+ !isDisabled &&
472
+ !isReadOnly &&
473
+ isEditable &&
474
+ this.handleTogglePopup
475
+ }
476
+ eleRef={getTargetRef}
477
+ align='vertical'
478
+ isCover={false}
479
+ dataId={dataId}
480
+ >
481
+ <div className={style.hiddenInput}>
482
+ <input
483
+ type='text'
484
+ ref={this.inputRef}
485
+ onKeyDown={this.handleKeyDown}
486
+ tabindex='-1'
487
+ className={style.hiddenInputElement}
488
+ />
489
+ </div>
490
+ {children ? (
491
+ isToggleStateNeeded ? (
492
+ <Component {...componentProps} isActive={isPopupOpen} />
493
+ ) : (
494
+ children
495
+ )
496
+ ) : (
497
+ <RippleEffect
498
+ hoverType={hoverType}
499
+ isActive={isPopupOpen}
500
+ isNeedEffect={isEditable && isNeedEffect}
501
+ >
502
+ <Container
503
+ className={`${btnStyle.buttonReset} ${commonClass} ${
504
+ !isPopupOpen && showIconOnHover ? style.hoverIcon : ''
505
+ }`}
506
+ isCover={false}
507
+ alignBox='row'
508
+ align='vertical'
509
+ tagName='button'
510
+ aria-labelledby={ariaTitleId}
511
+ aria-haspopup={true}
512
+ aria-expanded={isPopupOpen ? true : false}
513
+ >
514
+ {iconName ? (
515
+ <Box className={value ? style.iconBox : ''}>
516
+ <Icon name={iconName} size={iconSize} />
517
+ </Box>
518
+ ) : null}
519
+ {value && (
520
+ <React.Fragment>
521
+ <Box
522
+ id={ariaTitleId}
523
+ aria-hidden={true}
524
+ className={`${style.value} toggleDropText`}
525
+ shrink
526
+ tagName='span'
527
+ data-title={dataTitle}
528
+ >
529
+ {value}
530
+ </Box>
531
+ {isEditable ? (
532
+ <Icon
533
+ aria-hidden={true}
534
+ size='6'
535
+ name='ZD-down'
536
+ iconClass={`${'toggleDropIcon'} ${style.arrow} ${
537
+ style[`${arrowIconPosition}_arrow`]
538
+ }`}
539
+ dataId='statusdownarrow'
540
+ />
541
+ ) : null}
542
+ </React.Fragment>
543
+ )}
544
+ </Container>
545
+ </RippleEffect>
546
+ )}
547
+ </Container>
548
+
549
+ {isPopupOpen ? (
550
+ <DropBox
551
+ boxPosition={position}
552
+ isActive={isPopupReady}
553
+ onClick={removeClose}
554
+ size={boxSize}
555
+ right={right}
556
+ left={left}
557
+ top={top}
558
+ bottom={bottom}
559
+ isArrow={isArrow}
560
+ isAnimate
561
+ getRef={getContainerRef}
562
+ customClass={{
563
+ customDropBoxWrap: style.dropBoxContainer
564
+ }}
565
+ needResponsive={needResponsive}
566
+ isPadding={isPadding}
567
+ tabindex='0'
568
+ a11y={{
569
+ role: !isSearch ? 'menu' : undefined,
570
+ ariaLabelledby: !isSearch ? ariaTitleId : undefined
571
+ }}
572
+ palette={palette}
573
+ {...DropBoxProps}
574
+ >
575
+ <Fragment>
576
+ {isSearch ? (
577
+ <div className={style.search}>
578
+ <TextBoxIcon
579
+ placeHolder={placeHolderText}
580
+ onChange={this.handleChange}
581
+ value={searchValue}
582
+ onClear={this.onSearchClear}
583
+ size={searchBoxSize}
584
+ inputRef={this.searchInputRef}
585
+ onKeyDown={this.handleKeyDown}
586
+ a11y={{
587
+ role: 'combobox',
588
+ ariaOwns: ariaTitleId,
589
+ ariaActivedescendant:
590
+ allyOptionsArr[selectedIndex] &&
591
+ allyOptionsArr[selectedIndex][keyName],
592
+ ariaAutocomplete: 'list',
593
+ ariaHaspopup: true,
594
+ ariaExpanded: true
595
+ }}
596
+ {...TextBoxIconProps}
597
+ />
598
+ </div>
599
+ ) : null}
600
+ {title && options.length != 0 && (
601
+ <div className={style.title}>
602
+ <DropDownHeading
603
+ text={title}
604
+ htmlId={ariaTitleId}
605
+ palette={palette}
606
+ a11y={{
607
+ role: 'heading'
608
+ }}
609
+ customClass={style.dropdown}
610
+ />
611
+ </div>
612
+ )}
613
+ <Box
614
+ id={ariaTitleId}
615
+ scroll='vertical'
616
+ dataId={`${dataId}_list`}
617
+ className={style.maxHgt}
618
+ eleRef={this.scrollContentRef}
619
+ onScroll={this.handleScroll}
620
+ role={isSearch ? 'listbox' : undefined}
621
+ aria-labelledby={isSearch ? ariaTitleId : undefined}
622
+ >
623
+ {isDataLoaded ? (
624
+ options && options.length != 0 ? (
625
+ isGroupDropDown ? (
626
+ <Fragment>
627
+ {options.map((group) => {
628
+ const groupName = group[groupNameKey];
629
+ const groupOptions = group[groupOptionsKey];
630
+ const { needDivider } = group;
631
+ return (
632
+ <Fragment key={`index${groupName}`}>
633
+ {needDivider && (
634
+ <div className={style.seperatedLine} />
635
+ )}
636
+ {groupName && (
637
+ <div className={style.groupName}>
638
+ <DropDownHeading
639
+ text={groupName}
640
+ palette={palette}
641
+ a11y={{
642
+ role: 'heading'
643
+ }}
644
+ />
645
+ </div>
646
+ )}
647
+ {groupOptions &&
648
+ groupOptions.map((item) => {
649
+ const {
650
+ iconName,
651
+ iconSize,
652
+ iconClass,
653
+ title,
654
+ disableTitle = '',
655
+ isDisabled = false
656
+ } = item;
657
+ listIndex += 1;
658
+ return iconName ? (
659
+ <ListItemWithIcon
660
+ key={listIndex}
661
+ dataId={item[keyName]}
662
+ value={item[keyName]}
663
+ id={item[idName]}
664
+ active={selectedId === item[idName]}
665
+ onClick={this.onSelect.bind(this, item)}
666
+ index={listIndex}
667
+ highlight={selectedIndex === listIndex}
668
+ disableTitle={disableTitle}
669
+ isDisabled={isDisabled}
670
+ iconName={iconName}
671
+ iconClass={iconClass}
672
+ iconSize={iconSize}
673
+ needTick={needTick}
674
+ needBorder={false}
675
+ onMouseEnter={this.handleMouseEnter}
676
+ getRef={this.itemRef}
677
+ title={title ? title : item[keyName]}
678
+ palette={palette}
679
+ a11y={{
680
+ role: isSearch ? 'option' : 'menuitem',
681
+ ariaSelected:
682
+ selectedId === item[idName]
683
+ }}
684
+ {...ListItemWithIconProps}
685
+ />
686
+ ) : (
687
+ <ListItem
688
+ key={listIndex}
689
+ dataId={item[keyName]}
690
+ value={item[keyName]}
691
+ id={item[idName]}
692
+ active={selectedId === item[idName]}
693
+ onClick={this.onSelect.bind(this, item)}
694
+ isDisabled={isDisabled}
695
+ disableTitle={disableTitle}
696
+ index={listIndex}
697
+ highlight={selectedIndex === listIndex}
698
+ needTick={needTick}
699
+ needBorder={false}
700
+ onMouseEnter={this.handleMouseEnter}
701
+ getRef={this.itemRef}
702
+ title={title ? title : item[keyName]}
703
+ palette={palette}
704
+ a11y={{
705
+ role: isSearch ? 'option' : 'menuitem',
706
+ ariaSelected:
707
+ selectedId === item[idName]
708
+ }}
709
+ {...ListItemProps}
710
+ />
711
+ );
712
+ })}
713
+ </Fragment>
714
+ );
715
+ })}
716
+ </Fragment>
717
+ ) : (
718
+ <Fragment>
719
+ {options.map((item, i) => {
720
+ const {
721
+ iconName,
722
+ iconSize,
723
+ iconClass,
724
+ title,
725
+ needDivider,
726
+ isDisabled = false,
727
+ disableTitle = ''
728
+ } = item;
729
+ if (!needDivider) {
730
+ listIndex += 1;
731
+ }
732
+ return (
733
+ <Fragment key={i}>
734
+ {needDivider ? (
735
+ <div className={style.seperatedLine} />
736
+ ) : iconName ? (
737
+ <ListItemWithIcon
738
+ dataId={item[keyName]}
739
+ value={item[keyName]}
740
+ id={item[idName]}
741
+ active={selectedId === item[idName]}
742
+ onClick={this.onSelect.bind(this, item)}
743
+ index={listIndex}
744
+ disableTitle={disableTitle}
745
+ isDisabled={isDisabled}
746
+ highlight={selectedIndex === listIndex}
747
+ iconName={iconName}
748
+ iconClass={iconClass}
749
+ iconSize={iconSize}
750
+ needTick={needTick}
751
+ needBorder={false}
752
+ onMouseEnter={this.handleMouseEnter}
753
+ getRef={this.itemRef}
754
+ title={title ? title : item[keyName]}
755
+ key={listIndex}
756
+ palette={palette}
757
+ a11y={{
758
+ role: isSearch ? 'option' : 'menuitem',
759
+ ariaSelected: selectedId === item[idName]
760
+ }}
761
+ {...ListItemWithIconProps}
762
+ />
763
+ ) : (
764
+ <ListItem
765
+ key={listIndex}
766
+ dataId={item[keyName]}
767
+ value={item[keyName]}
768
+ id={item[idName]}
769
+ disableTitle={disableTitle}
770
+ isDisabled={isDisabled}
771
+ active={selectedId === item[idName]}
772
+ onClick={this.onSelect.bind(this, item)}
773
+ index={listIndex}
774
+ highlight={selectedIndex === listIndex}
775
+ needTick={needTick}
776
+ needBorder={false}
777
+ onMouseEnter={this.handleMouseEnter}
778
+ getRef={this.itemRef}
779
+ title={title ? title : item[keyName]}
780
+ palette={palette}
781
+ a11y={{
782
+ role: isSearch ? 'option' : 'menuitem',
783
+ ariaSelected: selectedId === item[idName]
784
+ }}
785
+ {...ListItemProps}
786
+ />
787
+ )}
788
+ </Fragment>
789
+ );
790
+ })}
791
+ </Fragment>
792
+ )
793
+ ) : (
794
+ <CommonEmptyState
795
+ className={style.svgWrapper}
796
+ title={searchErrorText || 'oops !'}
797
+ description={searchEmptyHint}
798
+ size='small'
799
+ getEmptyState={this.emptySearchSVG}
800
+ />
801
+ )
802
+ ) : (
803
+ <div className={style.loader}>
804
+ <Loader />
805
+ </div>
806
+ )}
807
+ </Box>
808
+ {getFooter ? (
809
+ <div>{getFooter()}</div>
810
+ ) : null}
811
+ </Fragment>
812
+ </DropBox>
813
+ ) : null}
814
+ </div>
815
+ );
816
+ }
817
+ }
818
+ ToggleDropDown.defaultProps = {
819
+ keyName: 'value',
820
+ idName: 'id',
821
+ isArrow: true,
822
+ searchBoxSize: 'small',
823
+ isDisabled: false,
824
+ showIconOnHover: false,
825
+ showOnHover: false,
826
+ isReadOnly: false,
827
+ isEditable: true,
828
+ isDataLoaded: true,
829
+ needTick: true,
830
+ needResponsive: true,
831
+ arrowIconPosition: 'default',
832
+ groupOptionsKey: 'items',
833
+ groupNameKey: 'name',
834
+ isPadding: true,
835
+ isToggleStateNeeded: false,
836
+ isNeedEffect: true,
837
+ hoverType: 'default',
838
+ needExternalPopupState: false,
839
+ customProps:{},
840
+ preventPopupClose: false
841
+ };
842
+
843
+ ToggleDropDown.propTypes = {
844
+ activeStyle: PropTypes.string,
845
+ arrowIconPosition: PropTypes.oneOf(['default', 'overlay']),
846
+ bottom: PropTypes.number,
847
+ boxPosition: PropTypes.oneOf([
848
+ 'bottomRight',
849
+ 'bottomLeft',
850
+ 'bottomCenter',
851
+ 'topRight',
852
+ 'topLeft',
853
+ 'topCenter',
854
+ 'rightTop',
855
+ 'rightBottom',
856
+ 'rightCenter',
857
+ 'leftTop',
858
+ 'leftBottom',
859
+ 'leftCenter'
860
+ ]),
861
+ boxSize: PropTypes.oneOf(['xsmall', 'small', 'medium', 'mlarge', 'large']),
862
+ children: PropTypes.node,
863
+ className: PropTypes.string,
864
+ dataId: PropTypes.string,
865
+ dataTitle: PropTypes.string,
866
+ getContainerRef: PropTypes.func,
867
+ getNextOptions: PropTypes.func,
868
+ getTargetRef: PropTypes.func,
869
+ groupNameKey: PropTypes.string,
870
+ groupOptionsKey: PropTypes.string,
871
+ hoverStyle: PropTypes.string,
872
+ hoverType: PropTypes.oneOf(['default', 'border', 'bg']),
873
+ iconName: PropTypes.string,
874
+ iconSize: PropTypes.string,
875
+ idName: PropTypes.string,
876
+ isArrow: PropTypes.bool,
877
+ isDataLoaded: PropTypes.bool,
878
+ isDisabled: PropTypes.bool,
879
+ isEditable: PropTypes.bool,
880
+ isGroupDropDown: PropTypes.bool,
881
+ isNeedEffect: PropTypes.bool,
882
+ isNextOptions: PropTypes.bool,
883
+ isPadding: PropTypes.bool,
884
+ isPopupActive: PropTypes.bool,
885
+ isPopupOpen: PropTypes.bool,
886
+ isPopupReady: PropTypes.bool,
887
+ isReadOnly: PropTypes.bool,
888
+ isSearch: PropTypes.bool,
889
+ isToggleStateNeeded: PropTypes.bool,
890
+ keyName: PropTypes.string,
891
+ left: PropTypes.number,
892
+ needExternalPopupState: PropTypes.bool,
893
+ needResponsive: PropTypes.bool,
894
+ needSearchFetching: PropTypes.bool,
895
+ needTick: PropTypes.bool,
896
+ onClick: PropTypes.func,
897
+ onSearch: PropTypes.func,
898
+ options: PropTypes.array.isRequired,
899
+ palette: PropTypes.oneOf(['dark']),
900
+ placeHolderText: PropTypes.string,
901
+ position: PropTypes.string,
902
+ removeClose: PropTypes.func,
903
+ right: PropTypes.number,
904
+ searchBoxSize: PropTypes.oneOf(['small', 'medium', 'xmedium']),
905
+ searchEmptyHint: PropTypes.string,
906
+ searchErrorText: PropTypes.string,
907
+ selectedId: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),
908
+ showIconOnHover: PropTypes.bool,
909
+ showOnHover: PropTypes.bool,
910
+ title: PropTypes.string,
911
+ togglePopup: PropTypes.func,
912
+ value: PropTypes.node,
913
+ onDropDownOpen: PropTypes.func,
914
+ onDropDownClose: PropTypes.func,
915
+ getFooter: PropTypes.func,
916
+ customProps:PropTypes.shape({
917
+ ToggleDropDownProps: PropTypes.object,
918
+ DropBoxProps: PropTypes.object,
919
+ TextBoxIconProps: PropTypes.object,
920
+ ListItemWithIconProps: PropTypes.object,
921
+ ListItemProps: PropTypes.object
922
+ }),
923
+ preventPopupClose: PropTypes.bool
924
+ };
925
+
926
+ if (__DOCS__) {
927
+ ToggleDropDown.docs = {
928
+ componentGroup: 'Molecule'
929
+ };
930
+ }
931
+ export default Popup(ToggleDropDown);