@zohodesk/dot 1.0.0-beta.18 → 1.0.0-beta.180

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