@zohodesk/dot 1.0.0-beta.212 → 1.0.0-beta.215

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 (526) hide show
  1. package/README.md +15 -1
  2. package/es/ActionButton/ActionButton.js +169 -0
  3. package/es/ActionButton/ActionButton.module.css +120 -0
  4. package/es/AlphabeticList/AlphabeticList.js +138 -0
  5. package/es/AlphabeticList/AlphabeticList.module.css +54 -0
  6. package/es/Attachment/Attachment.js +104 -0
  7. package/es/Attachment/Attachment.module.css +121 -0
  8. package/es/ChannelIcon/ChannelIcon.js +126 -0
  9. package/es/ChannelIcon/ChannelIcon.module.css +208 -0
  10. package/es/Drawer/Drawer.js +314 -0
  11. package/es/Drawer/Drawer.module.css +103 -0
  12. package/es/ExternalLink/ExternalLink.js +66 -0
  13. package/es/ExternalLink/ExternalLink.module.css +4 -0
  14. package/es/ExternalLink/__tests__/ExternalLink.spec.js +27 -0
  15. package/es/FlipCard/FlipCard.js +183 -0
  16. package/es/FlipCard/FlipCard.module.css +35 -0
  17. package/es/FormAction/FormAction.js +83 -0
  18. package/es/FormAction/FormAction.module.css +57 -0
  19. package/es/FreezeLayer/FreezeLayer.js +161 -0
  20. package/es/FreezeLayer/FreezeLayer.module.css +38 -0
  21. package/es/IconButton/IconButton.js +188 -0
  22. package/es/IconButton/IconButton.module.css +22 -0
  23. package/es/Image/Image.js +53 -0
  24. package/es/Image/Image.module.css +11 -0
  25. package/es/ImportantNotes/ImportantNotes.js +60 -0
  26. package/es/ImportantNotes/ImportantNotes.module.css +15 -0
  27. package/es/Link/Link.js +118 -0
  28. package/es/Link/Link.module.css +4 -0
  29. package/es/Link/LinkContext.js +9 -0
  30. package/es/Loader/Loader.js +27 -0
  31. package/es/Loader/Loader.module.css +25 -0
  32. package/es/Message/Message.js +124 -0
  33. package/es/Message/Message.module.css +70 -0
  34. package/es/MessageBanner/MessageBanner.js +75 -0
  35. package/es/MessageBanner/MessageBanner.module.css +38 -0
  36. package/es/NewStar/NewStar.js +75 -0
  37. package/es/NewStar/NewStar.module.css +73 -0
  38. package/es/PlusIcon/PlusIcon.js +60 -0
  39. package/es/PlusIcon/PlusIcon.module.css +16 -0
  40. package/es/Provider/Config.js +12 -0
  41. package/es/Provider.js +205 -0
  42. package/es/ToastMessage/ToastMessage.js +257 -0
  43. package/es/ToastMessage/ToastMessage.module.css +257 -0
  44. package/es/Upload/Upload.js +92 -0
  45. package/es/Upload/Upload.module.css +106 -0
  46. package/es/actions/AutoClose.js +54 -0
  47. package/es/actions/index.js +28 -0
  48. package/es/alert/AlertHeader/AlertHeader.js +94 -0
  49. package/es/alert/AlertHeader/AlertHeader.module.css +63 -0
  50. package/es/alert/AlertLookup/AlertLookup.js +196 -0
  51. package/es/alert/AlertLookup/AlertLookup.module.css +23 -0
  52. package/es/avatar/AvatarClose/AvatarClose.js +67 -0
  53. package/es/avatar/AvatarClose/AvatarClose.module.css +31 -0
  54. package/es/avatar/AvatarCollision/AvatarCollision.js +80 -0
  55. package/es/avatar/AvatarCollision/AvatarCollision.module.css +55 -0
  56. package/es/avatar/AvatarIcon/AvatarIcon.js +84 -0
  57. package/es/avatar/AvatarIcon/AvatarIcon.module.css +59 -0
  58. package/es/avatar/AvatarStatus/AvatarStatus.js +95 -0
  59. package/es/avatar/AvatarStatus/AvatarStatus.module.css +96 -0
  60. package/es/avatar/AvatarThread/AvatarThread.js +111 -0
  61. package/es/avatar/AvatarThread/AvatarThread.module.css +113 -0
  62. package/es/avatar/AvatarUser/AvatarUser.js +148 -0
  63. package/es/avatar/AvatarUser/AvatarUser.module.css +100 -0
  64. package/es/avatar/AvatarWithTeam/AvatarWithTeam.js +121 -0
  65. package/es/avatar/AvatarWithTeam/AvatarWithTeam.module.css +16 -0
  66. package/es/avatar/AvatarWithTeam/__tests__/AvatarWithTeam.spec.js +47 -0
  67. package/es/deprecated/SelectDropdown/SelectDropdown.js +129 -0
  68. package/es/deprecated/SelectDropdown/SelectDropdown.module.css +47 -0
  69. package/es/deprecated/utils/General.js +19 -0
  70. package/es/dropdown/ToggleDropDown/ToggleDropDown.js +912 -0
  71. package/es/dropdown/ToggleDropDown/ToggleDropDown.module.css +84 -0
  72. package/es/emptystate/CommonEmptyState/CommonEmptyState.js +94 -0
  73. package/es/emptystate/CommonEmptyState/CommonEmptyState.module.css +77 -0
  74. package/es/emptystate/EditionPage/EditionPage.css +37 -0
  75. package/es/emptystate/EditionPage/EditionPage.js +65 -0
  76. package/es/errorstate/EmptyStates.module.css +85 -0
  77. package/es/errorstate/Inconvenience/Inconvenience.js +97 -0
  78. package/es/errorstate/Inconvenience/Inconvenience.module.css +4 -0
  79. package/es/errorstate/LinkText/LinkText.js +39 -0
  80. package/es/errorstate/LinkText/LinkText.module.css +6 -0
  81. package/es/errorstate/NoRequestFound/NoRequestFound.js +97 -0
  82. package/es/errorstate/NoRequestFound/NoRequestFound.module.css +3 -0
  83. package/es/errorstate/PermissionPlay/PermissionPlay.js +96 -0
  84. package/es/errorstate/PermissionPlay/PermissionPlay.module.css +34 -0
  85. package/es/errorstate/RequestUrlNotFound/RequestUrlNotFound.js +97 -0
  86. package/es/errorstate/RequestUrlNotFound/RequestUrlNotFound.module.css +3 -0
  87. package/es/errorstate/UnableToProcess/UnableToProcess.js +97 -0
  88. package/es/errorstate/UnableToProcess/UnableToProcess.module.css +3 -0
  89. package/es/errorstate/UnauthorizedLogin/UnauthorizedLogin.js +97 -0
  90. package/es/errorstate/UnauthorizedLogin/UnauthorizedLogin.module.css +3 -0
  91. package/es/errorstate/WillBack/WillBack.js +82 -0
  92. package/es/errorstate/WillBack/WillBack.module.css +36 -0
  93. package/es/form/fields/CheckBoxField/CheckBoxField.js +189 -0
  94. package/es/form/fields/CurrencyField/CurrencyField.js +246 -0
  95. package/es/form/fields/DateField/DateField.js +256 -0
  96. package/es/form/fields/Fields.module.css +148 -0
  97. package/es/form/fields/MultiSelectField/MultiSelectField.js +287 -0
  98. package/es/form/fields/PhoneField/PhoneField.js +240 -0
  99. package/es/form/fields/RadioField/RadioField.js +153 -0
  100. package/es/form/fields/SelectField/SelectField.js +254 -0
  101. package/es/form/fields/TagsMultiSelect/TagsMultiSelect.js +297 -0
  102. package/es/form/fields/TagsMultiSelect/TagsMultiSelect.module.css +95 -0
  103. package/es/form/fields/TagsMultiSelectField/TagsMultiSelectField.js +320 -0
  104. package/es/form/fields/TagsMultiSelectField/TagsMultiSelectField.module.css +6 -0
  105. package/es/form/fields/TextBoxField/TextBoxField.js +234 -0
  106. package/es/form/fields/TextEditor/TextEditor.js +458 -0
  107. package/es/form/fields/TextEditor/TextEditor.module.css +589 -0
  108. package/es/form/fields/TextEditorField/TextEditorField.js +254 -0
  109. package/es/form/fields/TextEditorWrapper/TextEditorWrapper.js +244 -0
  110. package/es/form/fields/TextEditorWrapper/TextEditorWrapper.module.css +26 -0
  111. package/es/form/fields/TextareaField/TextareaField.js +215 -0
  112. package/es/form/fields/ValidationMessage/ValidationMessage.js +73 -0
  113. package/es/form/fields/ValidationMessage/ValidationMessage.module.css +22 -0
  114. package/es/form/layout/Field/Field.js +44 -0
  115. package/es/form/layout/Field/Field.module.css +22 -0
  116. package/es/form/layout/Section/ModuleFormSection.module.css +3 -0
  117. package/es/form/layout/Section/Section.js +44 -0
  118. package/es/i18n.js +4349 -0
  119. package/es/index.js +8 -0
  120. package/es/layout/SetupDetailLayout/SetupDetailLayout.js +243 -0
  121. package/es/layout/SetupDetailLayout/SetupDetailLayout.module.css +116 -0
  122. package/es/layout/SetupDetailLayout/index.js +4 -0
  123. package/es/layout/SubtabLayout/SubtabLayout.js +201 -0
  124. package/es/layout/SubtabLayout/SubtabLayout.module.css +120 -0
  125. package/es/layout/SubtabLayout/index.js +4 -0
  126. package/es/list/AvatarFlip/AvatarFlip.js +105 -0
  127. package/es/list/AvatarFlip/AvatarFlip.module.css +3 -0
  128. package/es/list/BluePrintStatus/BluePrintStatus.js +32 -0
  129. package/es/list/BluePrintStatus/BluePrintStatus.module.css +14 -0
  130. package/es/list/Comment/Comment.js +52 -0
  131. package/es/list/Comment/Comment.module.css +24 -0
  132. package/es/list/DepartmentDropDown/DepartmentDropDown.js +129 -0
  133. package/es/list/DepartmentDropDown/DepartmentDropDown.module.css +9 -0
  134. package/es/list/Dot/Dot.js +27 -0
  135. package/es/list/Dot/Dot.module.css +15 -0
  136. package/es/list/DotNew/DotNew.js +36 -0
  137. package/es/list/DotNew/DotNew.module.css +22 -0
  138. package/es/list/GridStencils/GridStencils.js +41 -0
  139. package/es/list/GridStencils/GridStencils.module.css +102 -0
  140. package/es/list/Icons/AddNewIcon.js +32 -0
  141. package/es/list/Icons/CompleteIcon.js +35 -0
  142. package/es/list/Icons/DeleteIcon.js +35 -0
  143. package/es/list/Icons/EditIcon.js +35 -0
  144. package/es/list/Icons/FloatingIcons.js +36 -0
  145. package/es/list/Icons/Icons.module.css +16 -0
  146. package/es/list/Icons/ReadUnreadIcon.js +42 -0
  147. package/es/list/Icons/SmartIcon.js +34 -0
  148. package/es/list/ListLayout/ListLayout.js +117 -0
  149. package/es/list/ListLayout/ListLayout.module.css +50 -0
  150. package/es/list/ListStencils/ListStencils.js +52 -0
  151. package/es/list/ListStencils/ListStencils.module.css +62 -0
  152. package/es/list/SecondaryText/AccountName.js +109 -0
  153. package/es/list/SecondaryText/ContactName.js +117 -0
  154. package/es/list/SecondaryText/DepartmentText.js +37 -0
  155. package/es/list/SecondaryText/Email.js +74 -0
  156. package/es/list/SecondaryText/HappinessRating.js +38 -0
  157. package/es/list/SecondaryText/PhoneNumber.js +81 -0
  158. package/es/list/SecondaryText/PriorityText.js +42 -0
  159. package/es/list/SecondaryText/SecondaryText.js +51 -0
  160. package/es/list/SecondaryText/SecondaryText.module.css +126 -0
  161. package/es/list/SecondaryText/StatusText.js +45 -0
  162. package/es/list/SecondaryText/TicketId.js +71 -0
  163. package/es/list/SecondaryText/Website.js +54 -0
  164. package/es/list/SecondaryText/index.js +11 -0
  165. package/es/list/SecondryPanel/SecondryPanel.js +142 -0
  166. package/es/list/SecondryPanel/SecondryPanel.module.css +6 -0
  167. package/es/list/SentimentStatus/SentimentStatus.js +39 -0
  168. package/es/list/SentimentStatus/SentimentStatus.module.css +9 -0
  169. package/es/list/Subject/Subject.js +80 -0
  170. package/es/list/Subject/Subject.module.css +27 -0
  171. package/es/list/TagNew/TagNew.js +42 -0
  172. package/es/list/TagNew/TagNew.module.css +108 -0
  173. package/es/list/Thread/Thread.js +50 -0
  174. package/es/list/Thread/Thread.module.css +31 -0
  175. package/es/list/UserTime/UserTime.js +95 -0
  176. package/es/list/UserTime/UserTime.module.css +52 -0
  177. package/es/list/listCommon.module.css +52 -0
  178. package/es/list/status/StatusDropdown/StatusDropdown.js +495 -0
  179. package/es/list/status/StatusDropdown/StatusDropdown.module.css +76 -0
  180. package/es/list/status/StatusListItem/StatusListItem.js +161 -0
  181. package/es/list/status/StatusListItem/StatusListItem.module.css +81 -0
  182. package/es/lookup/EmptyPage/EmptyPage.js +71 -0
  183. package/es/lookup/EmptyPage/LookupEmptyPage.module.css +12 -0
  184. package/es/lookup/Lookup/Lookup.js +112 -0
  185. package/es/lookup/Lookup/Lookup.module.css +26 -0
  186. package/es/lookup/Section/LookupSection.module.css +8 -0
  187. package/es/lookup/Section/Section.js +29 -0
  188. package/es/lookup/header/Close/Close.js +37 -0
  189. package/es/lookup/header/Close/LookupClose.module.css +15 -0
  190. package/es/lookup/header/ModuleHeader/ModuleHeader.js +89 -0
  191. package/es/lookup/header/Search/LookupSearch.module.css +48 -0
  192. package/es/lookup/header/Search/Search.js +260 -0
  193. package/es/lookup/header/TicketHeader/TicketHeader.js +116 -0
  194. package/es/lookup/header/TicketHeader/TicketHeader.module.css +20 -0
  195. package/es/lookup/header/Title/LookupTitle.module.css +20 -0
  196. package/es/lookup/header/Title/Title.js +34 -0
  197. package/es/lookup/header/ViewDropDown/ViewDropDown.js +183 -0
  198. package/es/lookup/header/ViewDropDown/ViewDropDown.module.css +45 -0
  199. package/es/lookup/header/lookupHeaderCommon.module.css +25 -0
  200. package/es/lookup/header/lookupHeaderCommonResponsive.module.css +15 -0
  201. package/es/setup/header/Button/Button.js +45 -0
  202. package/es/setup/header/Button/HeaderButton.module.css +3 -0
  203. package/es/setup/header/Link/HeaderLink.module.css +15 -0
  204. package/es/setup/header/Link/Link.js +54 -0
  205. package/es/setup/header/Search/Search.js +95 -0
  206. package/es/setup/header/Search/Search.module.css +57 -0
  207. package/es/setup/header/Views/Views.js +59 -0
  208. package/es/setup/header/Views/Views.module.css +27 -0
  209. package/es/setup/helptips/Description/Description.js +28 -0
  210. package/es/setup/helptips/Description/HelpTipsDescription.module.css +6 -0
  211. package/es/setup/helptips/Link/HelpTipsLink.module.css +6 -0
  212. package/es/setup/helptips/Link/Link.js +48 -0
  213. package/es/setup/helptips/ListGroup/ListGroup.js +44 -0
  214. package/es/setup/helptips/ListGroup/ListGroup.module.css +17 -0
  215. package/es/setup/helptips/Title/HelpTipsTitle.module.css +5 -0
  216. package/es/setup/helptips/Title/Title.js +28 -0
  217. package/es/setup/table/Table/Table.js +33 -0
  218. package/es/setup/table/TableBody/TableBody.js +37 -0
  219. package/es/setup/table/TableData/SetupTableData.module.css +36 -0
  220. package/es/setup/table/TableData/TableData.js +49 -0
  221. package/es/setup/table/TableData/Tablehover.module.css +6 -0
  222. package/es/setup/table/TableHead/SetupTableHead.module.css +8 -0
  223. package/es/setup/table/TableHead/TableHead.js +47 -0
  224. package/es/setup/table/TableRow/SetupTableRow.module.css +10 -0
  225. package/es/setup/table/TableRow/TableRow.js +56 -0
  226. package/es/setup/table/Text/TableText.module.css +37 -0
  227. package/es/setup/table/Text/Text.js +70 -0
  228. package/es/svg/PlusIcon.js +41 -0
  229. package/es/svg/SnippetIcon.js +43 -0
  230. package/es/svg/TemplateIcon.js +44 -0
  231. package/es/utils/ChannelIconMapping.js +129 -0
  232. package/es/utils/Common.js +24 -0
  233. package/es/utils/General.js +45 -0
  234. package/es/utils/KeyboardApi.js +294 -0
  235. package/es/utils/editorUtils.js +193 -0
  236. package/es/version2/AlertClose/AlertClose.js +47 -0
  237. package/es/version2/AlertClose/AlertClose.module.css +43 -0
  238. package/es/version2/GlobalNotification/GlobalNotification.js +149 -0
  239. package/es/version2/GlobalNotification/GlobalNotification.module.css +90 -0
  240. package/es/version2/alertIcons/AlarmAlertIcon.js +72 -0
  241. package/es/version2/alertIcons/AlertIcons.js +65 -0
  242. package/es/version2/alertIcons/AlertIcons.module.css +67 -0
  243. package/es/version2/alertIcons/DangerAlertIcon.js +73 -0
  244. package/es/version2/alertIcons/ErrorAlertIcon.js +77 -0
  245. package/es/version2/alertIcons/InfoAlertIcon.js +81 -0
  246. package/es/version2/alertIcons/NotificationAlertIcon.js +77 -0
  247. package/es/version2/alertIcons/SuccessAlertIcon.js +72 -0
  248. package/es/version2/alertIcons/WarningAlertIcon.js +72 -0
  249. package/es/version2/errorstate/Inconvenience/Inconvenience.js +93 -0
  250. package/es/version2/errorstate/OopsSomethingMiss/OopsSomethingMiss.js +94 -0
  251. package/es/version2/errorstate/UnableToProcessRequest/UnableToProcessRequest.js +93 -0
  252. package/es/version2/errorstate/UnauthorizedLogin/UnauthorizedLogin.js +97 -0
  253. package/es/version2/errorstate/UrlNotFound/UrlNotFound.js +93 -0
  254. package/es/version2/errorstate/V2_ErrorStates.module.css +46 -0
  255. package/es/version2/errorstate/WillBeRightBack/WillBeRightBack.js +93 -0
  256. package/es/version2/lookup/AlertHeader/AlertHeader.js +78 -0
  257. package/es/version2/lookup/AlertHeader/AlertHeaderNew.module.css +64 -0
  258. package/es/version2/lookup/AlertLookup/AlertLookup.js +254 -0
  259. package/es/version2/lookup/AlertLookup/AlertLookupNew.module.css +40 -0
  260. package/es/version2/lookup/alertLookupCommonNew.module.css +26 -0
  261. package/es/version2/notification/DesktopNotification/DesktopNotification.js +209 -0
  262. package/es/version2/notification/DesktopNotification/DesktopNotification.module.css +90 -0
  263. package/es/version2/notification/DesktopNotificationHeader/DesktopNotificationHeader.js +75 -0
  264. package/es/version2/notification/DesktopNotificationHeader/DesktopNotificationHeader.module.css +100 -0
  265. package/lib/ActionButton/ActionButton.js +226 -0
  266. package/lib/ActionButton/ActionButton.module.css +137 -0
  267. package/lib/AlphabeticList/AlphabeticList.js +213 -0
  268. package/lib/AlphabeticList/AlphabeticList.module.css +57 -0
  269. package/lib/Attachment/Attachment.js +155 -0
  270. package/lib/Attachment/Attachment.module.css +132 -0
  271. package/lib/ChannelIcon/ChannelIcon.js +179 -0
  272. package/lib/ChannelIcon/ChannelIcon.module.css +217 -0
  273. package/lib/Drawer/Drawer.js +420 -0
  274. package/lib/Drawer/Drawer.module.css +151 -0
  275. package/lib/ExternalLink/ExternalLink.js +113 -0
  276. package/lib/ExternalLink/ExternalLink.module.css +4 -0
  277. package/lib/ExternalLink/__tests__/ExternalLink.spec.js +37 -0
  278. package/lib/FlipCard/FlipCard.js +240 -0
  279. package/lib/FlipCard/FlipCard.module.css +44 -0
  280. package/lib/FormAction/FormAction.js +146 -0
  281. package/lib/FormAction/FormAction.module.css +82 -0
  282. package/lib/FreezeLayer/FreezeLayer.js +189 -0
  283. package/lib/FreezeLayer/FreezeLayer.module.css +42 -0
  284. package/lib/IconButton/IconButton.js +236 -0
  285. package/lib/IconButton/IconButton.module.css +22 -0
  286. package/lib/Image/Image.js +102 -0
  287. package/lib/Image/Image.module.css +11 -0
  288. package/lib/ImportantNotes/ImportantNotes.js +107 -0
  289. package/lib/ImportantNotes/ImportantNotes.module.css +20 -0
  290. package/lib/Link/Link.js +169 -0
  291. package/lib/Link/Link.module.css +4 -0
  292. package/lib/Link/LinkContext.js +23 -0
  293. package/lib/Loader/Loader.js +76 -0
  294. package/lib/Loader/Loader.module.css +46 -0
  295. package/lib/Message/Message.js +173 -0
  296. package/lib/Message/Message.module.css +103 -0
  297. package/lib/MessageBanner/MessageBanner.js +127 -0
  298. package/lib/MessageBanner/MessageBanner.module.css +46 -0
  299. package/lib/NewStar/NewStar.js +126 -0
  300. package/lib/NewStar/NewStar.module.css +110 -0
  301. package/lib/PlusIcon/PlusIcon.js +106 -0
  302. package/lib/PlusIcon/PlusIcon.module.css +16 -0
  303. package/lib/Provider.js +309 -0
  304. package/lib/ToastMessage/ToastMessage.js +298 -0
  305. package/lib/ToastMessage/ToastMessage.module.css +328 -0
  306. package/lib/Upload/Upload.js +143 -0
  307. package/lib/Upload/Upload.module.css +125 -0
  308. package/lib/actions/AutoClose.js +85 -0
  309. package/lib/actions/index.js +37 -0
  310. package/lib/alert/AlertHeader/AlertHeader.js +151 -0
  311. package/lib/alert/AlertHeader/AlertHeader.module.css +81 -0
  312. package/lib/alert/AlertLookup/AlertLookup.js +249 -0
  313. package/lib/alert/AlertLookup/AlertLookup.module.css +27 -0
  314. package/lib/avatar/AvatarClose/AvatarClose.js +114 -0
  315. package/lib/avatar/AvatarClose/AvatarClose.module.css +37 -0
  316. package/lib/avatar/AvatarCollision/AvatarCollision.js +127 -0
  317. package/lib/avatar/AvatarCollision/AvatarCollision.module.css +69 -0
  318. package/lib/avatar/AvatarIcon/AvatarIcon.js +135 -0
  319. package/lib/avatar/AvatarIcon/AvatarIcon.module.css +58 -0
  320. package/lib/avatar/AvatarStatus/AvatarStatus.js +141 -0
  321. package/lib/avatar/AvatarStatus/AvatarStatus.module.css +146 -0
  322. package/lib/avatar/AvatarThread/AvatarThread.js +161 -0
  323. package/lib/avatar/AvatarThread/AvatarThread.module.css +163 -0
  324. package/lib/avatar/AvatarUser/AvatarUser.js +198 -0
  325. package/lib/avatar/AvatarUser/AvatarUser.module.css +171 -0
  326. package/lib/avatar/AvatarWithTeam/AvatarWithTeam.js +176 -0
  327. package/lib/avatar/AvatarWithTeam/AvatarWithTeam.module.css +23 -0
  328. package/lib/avatar/AvatarWithTeam/__tests__/AvatarWithTeam.spec.js +53 -0
  329. package/lib/deprecated/SelectDropdown/SelectDropdown.js +186 -0
  330. package/lib/deprecated/SelectDropdown/SelectDropdown.module.css +55 -0
  331. package/lib/dropdown/ToggleDropDown/ToggleDropDown.js +982 -0
  332. package/lib/dropdown/ToggleDropDown/ToggleDropDown.module.css +97 -0
  333. package/lib/emptystate/CommonEmptyState/CommonEmptyState.js +148 -0
  334. package/lib/emptystate/CommonEmptyState/CommonEmptyState.module.css +85 -0
  335. package/lib/emptystate/EditionPage/EditionPage.css +43 -0
  336. package/lib/emptystate/EditionPage/EditionPage.js +115 -0
  337. package/lib/errorstate/EmptyStates.module.css +88 -0
  338. package/lib/errorstate/Inconvenience/Inconvenience.js +147 -0
  339. package/lib/errorstate/Inconvenience/Inconvenience.module.css +7 -0
  340. package/lib/errorstate/LinkText/LinkText.js +89 -0
  341. package/lib/errorstate/LinkText/LinkText.module.css +6 -0
  342. package/lib/errorstate/NoRequestFound/NoRequestFound.js +147 -0
  343. package/lib/errorstate/NoRequestFound/NoRequestFound.module.css +3 -0
  344. package/lib/errorstate/PermissionPlay/PermissionPlay.js +146 -0
  345. package/lib/errorstate/PermissionPlay/PermissionPlay.module.css +34 -0
  346. package/lib/errorstate/RequestUrlNotFound/RequestUrlNotFound.js +147 -0
  347. package/lib/errorstate/RequestUrlNotFound/RequestUrlNotFound.module.css +3 -0
  348. package/lib/errorstate/UnableToProcess/UnableToProcess.js +147 -0
  349. package/lib/errorstate/UnableToProcess/UnableToProcess.module.css +3 -0
  350. package/lib/errorstate/UnauthorizedLogin/UnauthorizedLogin.js +147 -0
  351. package/lib/errorstate/UnauthorizedLogin/UnauthorizedLogin.module.css +3 -0
  352. package/lib/errorstate/WillBack/WillBack.js +131 -0
  353. package/lib/errorstate/WillBack/WillBack.module.css +34 -0
  354. package/lib/form/fields/CheckBoxField/CheckBoxField.js +242 -0
  355. package/lib/form/fields/CurrencyField/CurrencyField.js +293 -0
  356. package/lib/form/fields/DateField/DateField.js +307 -0
  357. package/lib/form/fields/Fields.module.css +183 -0
  358. package/lib/form/fields/MultiSelectField/MultiSelectField.js +339 -0
  359. package/lib/form/fields/PhoneField/PhoneField.js +286 -0
  360. package/lib/form/fields/RadioField/RadioField.js +205 -0
  361. package/lib/form/fields/SelectField/SelectField.js +306 -0
  362. package/lib/form/fields/TagsMultiSelect/TagsMultiSelect.js +353 -0
  363. package/lib/form/fields/TagsMultiSelect/TagsMultiSelect.module.css +107 -0
  364. package/lib/form/fields/TagsMultiSelectField/TagsMultiSelectField.js +362 -0
  365. package/lib/form/fields/TagsMultiSelectField/TagsMultiSelectField.module.css +9 -0
  366. package/lib/form/fields/TextBoxField/TextBoxField.js +287 -0
  367. package/lib/form/fields/TextEditor/TextEditor.js +503 -0
  368. package/lib/form/fields/TextEditor/TextEditor.module.css +655 -0
  369. package/lib/form/fields/TextEditorField/TextEditorField.js +306 -0
  370. package/lib/form/fields/TextEditorWrapper/TextEditorWrapper.js +296 -0
  371. package/lib/form/fields/TextEditorWrapper/TextEditorWrapper.module.css +37 -0
  372. package/lib/form/fields/TextareaField/TextareaField.js +266 -0
  373. package/lib/form/fields/ValidationMessage/ValidationMessage.js +124 -0
  374. package/lib/form/fields/ValidationMessage/ValidationMessage.module.css +27 -0
  375. package/lib/form/layout/Field/Field.js +97 -0
  376. package/lib/form/layout/Field/Field.module.css +22 -0
  377. package/lib/form/layout/Section/ModuleFormSection.module.css +3 -0
  378. package/lib/form/layout/Section/Section.js +93 -0
  379. package/lib/i18n.js +3417 -0
  380. package/lib/index.js +101 -0
  381. package/lib/layout/SetupDetailLayout/SetupDetailLayout.js +331 -0
  382. package/lib/layout/SetupDetailLayout/SetupDetailLayout.module.css +152 -0
  383. package/lib/layout/SetupDetailLayout/index.js +37 -0
  384. package/lib/layout/SubtabLayout/SubtabLayout.js +301 -0
  385. package/lib/layout/SubtabLayout/SubtabLayout.module.css +146 -0
  386. package/lib/layout/SubtabLayout/index.js +37 -0
  387. package/lib/list/AvatarFlip/AvatarFlip.js +159 -0
  388. package/lib/list/AvatarFlip/AvatarFlip.module.css +3 -0
  389. package/lib/list/BluePrintStatus/BluePrintStatus.js +77 -0
  390. package/lib/list/BluePrintStatus/BluePrintStatus.module.css +17 -0
  391. package/lib/list/Comment/Comment.js +104 -0
  392. package/lib/list/Comment/Comment.module.css +29 -0
  393. package/lib/list/DepartmentDropDown/DepartmentDropDown.js +184 -0
  394. package/lib/list/DepartmentDropDown/DepartmentDropDown.module.css +9 -0
  395. package/lib/list/Dot/Dot.js +76 -0
  396. package/lib/list/Dot/Dot.module.css +15 -0
  397. package/lib/list/DotNew/DotNew.js +85 -0
  398. package/lib/list/DotNew/DotNew.module.css +22 -0
  399. package/lib/list/GridStencils/GridStencils.js +90 -0
  400. package/lib/list/GridStencils/GridStencils.module.css +156 -0
  401. package/lib/list/Icons/AddNewIcon.js +82 -0
  402. package/lib/list/Icons/CompleteIcon.js +85 -0
  403. package/lib/list/Icons/DeleteIcon.js +85 -0
  404. package/lib/list/Icons/EditIcon.js +85 -0
  405. package/lib/list/Icons/FloatingIcons.js +92 -0
  406. package/lib/list/Icons/Icons.module.css +16 -0
  407. package/lib/list/Icons/ReadUnreadIcon.js +92 -0
  408. package/lib/list/Icons/SmartIcon.js +88 -0
  409. package/lib/list/ListLayout/ListLayout.js +179 -0
  410. package/lib/list/ListLayout/ListLayout.module.css +58 -0
  411. package/lib/list/ListStencils/ListStencils.js +100 -0
  412. package/lib/list/ListStencils/ListStencils.module.css +67 -0
  413. package/lib/list/SecondaryText/AccountName.js +159 -0
  414. package/lib/list/SecondaryText/ContactName.js +175 -0
  415. package/lib/list/SecondaryText/DepartmentText.js +86 -0
  416. package/lib/list/SecondaryText/Email.js +121 -0
  417. package/lib/list/SecondaryText/HappinessRating.js +88 -0
  418. package/lib/list/SecondaryText/PhoneNumber.js +128 -0
  419. package/lib/list/SecondaryText/PriorityText.js +91 -0
  420. package/lib/list/SecondaryText/SecondaryText.js +98 -0
  421. package/lib/list/SecondaryText/SecondaryText.module.css +136 -0
  422. package/lib/list/SecondaryText/StatusText.js +94 -0
  423. package/lib/list/SecondaryText/TicketId.js +121 -0
  424. package/lib/list/SecondaryText/Website.js +101 -0
  425. package/lib/list/SecondaryText/index.js +95 -0
  426. package/lib/list/SecondryPanel/SecondryPanel.js +241 -0
  427. package/lib/list/SecondryPanel/SecondryPanel.module.css +6 -0
  428. package/lib/list/SentimentStatus/SentimentStatus.js +85 -0
  429. package/lib/list/SentimentStatus/SentimentStatus.module.css +12 -0
  430. package/lib/list/Subject/Subject.js +130 -0
  431. package/lib/list/Subject/Subject.module.css +27 -0
  432. package/lib/list/TagNew/TagNew.js +91 -0
  433. package/lib/list/TagNew/TagNew.module.css +115 -0
  434. package/lib/list/Thread/Thread.js +101 -0
  435. package/lib/list/Thread/Thread.module.css +43 -0
  436. package/lib/list/UserTime/UserTime.js +147 -0
  437. package/lib/list/UserTime/UserTime.module.css +58 -0
  438. package/lib/list/listCommon.module.css +60 -0
  439. package/lib/list/status/StatusDropdown/StatusDropdown.js +538 -0
  440. package/lib/list/status/StatusDropdown/StatusDropdown.module.css +89 -0
  441. package/lib/list/status/StatusListItem/StatusListItem.js +206 -0
  442. package/lib/list/status/StatusListItem/StatusListItem.module.css +104 -0
  443. package/lib/lookup/EmptyPage/EmptyPage.js +125 -0
  444. package/lib/lookup/EmptyPage/LookupEmptyPage.module.css +12 -0
  445. package/lib/lookup/Lookup/Lookup.js +159 -0
  446. package/lib/lookup/Lookup/Lookup.module.css +26 -0
  447. package/lib/lookup/Section/LookupSection.module.css +8 -0
  448. package/lib/lookup/Section/Section.js +79 -0
  449. package/lib/lookup/header/Close/Close.js +87 -0
  450. package/lib/lookup/header/Close/LookupClose.module.css +15 -0
  451. package/lib/lookup/header/ModuleHeader/ModuleHeader.js +144 -0
  452. package/lib/lookup/header/Search/LookupSearch.module.css +57 -0
  453. package/lib/lookup/header/Search/Search.js +315 -0
  454. package/lib/lookup/header/TicketHeader/TicketHeader.js +169 -0
  455. package/lib/lookup/header/TicketHeader/TicketHeader.module.css +23 -0
  456. package/lib/lookup/header/Title/LookupTitle.module.css +20 -0
  457. package/lib/lookup/header/Title/Title.js +84 -0
  458. package/lib/lookup/header/ViewDropDown/ViewDropDown.js +229 -0
  459. package/lib/lookup/header/ViewDropDown/ViewDropDown.module.css +50 -0
  460. package/lib/lookup/header/lookupHeaderCommon.module.css +35 -0
  461. package/lib/lookup/header/lookupHeaderCommonResponsive.module.css +24 -0
  462. package/lib/setup/header/Button/Button.js +91 -0
  463. package/lib/setup/header/Button/HeaderButton.module.css +5 -0
  464. package/lib/setup/header/Link/HeaderLink.module.css +21 -0
  465. package/lib/setup/header/Link/Link.js +102 -0
  466. package/lib/setup/header/Search/Search.js +139 -0
  467. package/lib/setup/header/Search/Search.module.css +68 -0
  468. package/lib/setup/header/Views/Views.js +105 -0
  469. package/lib/setup/header/Views/Views.module.css +37 -0
  470. package/lib/setup/helptips/Description/Description.js +72 -0
  471. package/lib/setup/helptips/Description/HelpTipsDescription.module.css +6 -0
  472. package/lib/setup/helptips/Link/HelpTipsLink.module.css +7 -0
  473. package/lib/setup/helptips/Link/Link.js +95 -0
  474. package/lib/setup/helptips/ListGroup/ListGroup.js +93 -0
  475. package/lib/setup/helptips/ListGroup/ListGroup.module.css +22 -0
  476. package/lib/setup/helptips/Title/HelpTipsTitle.module.css +5 -0
  477. package/lib/setup/helptips/Title/Title.js +72 -0
  478. package/lib/setup/table/Table/Table.js +82 -0
  479. package/lib/setup/table/TableBody/TableBody.js +87 -0
  480. package/lib/setup/table/TableData/SetupTableData.module.css +44 -0
  481. package/lib/setup/table/TableData/TableData.js +95 -0
  482. package/lib/setup/table/TableData/Tablehover.module.css +6 -0
  483. package/lib/setup/table/TableHead/SetupTableHead.module.css +12 -0
  484. package/lib/setup/table/TableHead/TableHead.js +93 -0
  485. package/lib/setup/table/TableRow/SetupTableRow.module.css +14 -0
  486. package/lib/setup/table/TableRow/TableRow.js +102 -0
  487. package/lib/setup/table/Text/TableText.module.css +37 -0
  488. package/lib/setup/table/Text/Text.js +121 -0
  489. package/lib/svg/PlusIcon.js +90 -0
  490. package/lib/svg/SnippetIcon.js +92 -0
  491. package/lib/svg/TemplateIcon.js +93 -0
  492. package/lib/utils/ChannelIconMapping.js +138 -0
  493. package/lib/utils/Common.js +33 -0
  494. package/lib/utils/General.js +82 -0
  495. package/lib/utils/KeyboardApi.js +299 -0
  496. package/lib/utils/editorUtils.js +223 -0
  497. package/lib/version2/AlertClose/AlertClose.js +101 -0
  498. package/lib/version2/AlertClose/AlertClose.module.css +43 -0
  499. package/lib/version2/GlobalNotification/GlobalNotification.js +202 -0
  500. package/lib/version2/GlobalNotification/GlobalNotification.module.css +125 -0
  501. package/lib/version2/alertIcons/AlarmAlertIcon.js +125 -0
  502. package/lib/version2/alertIcons/AlertIcons.js +127 -0
  503. package/lib/version2/alertIcons/AlertIcons.module.css +67 -0
  504. package/lib/version2/alertIcons/DangerAlertIcon.js +126 -0
  505. package/lib/version2/alertIcons/ErrorAlertIcon.js +130 -0
  506. package/lib/version2/alertIcons/InfoAlertIcon.js +134 -0
  507. package/lib/version2/alertIcons/NotificationAlertIcon.js +130 -0
  508. package/lib/version2/alertIcons/SuccessAlertIcon.js +125 -0
  509. package/lib/version2/alertIcons/WarningAlertIcon.js +125 -0
  510. package/lib/version2/errorstate/Inconvenience/Inconvenience.js +146 -0
  511. package/lib/version2/errorstate/OopsSomethingMiss/OopsSomethingMiss.js +147 -0
  512. package/lib/version2/errorstate/UnableToProcessRequest/UnableToProcessRequest.js +146 -0
  513. package/lib/version2/errorstate/UnauthorizedLogin/UnauthorizedLogin.js +150 -0
  514. package/lib/version2/errorstate/UrlNotFound/UrlNotFound.js +146 -0
  515. package/lib/version2/errorstate/V2_ErrorStates.module.css +46 -0
  516. package/lib/version2/errorstate/WillBeRightBack/WillBeRightBack.js +146 -0
  517. package/lib/version2/lookup/AlertHeader/AlertHeader.js +134 -0
  518. package/lib/version2/lookup/AlertHeader/AlertHeaderNew.module.css +87 -0
  519. package/lib/version2/lookup/AlertLookup/AlertLookup.js +316 -0
  520. package/lib/version2/lookup/AlertLookup/AlertLookupNew.module.css +44 -0
  521. package/lib/version2/lookup/alertLookupCommonNew.module.css +33 -0
  522. package/lib/version2/notification/DesktopNotification/DesktopNotification.js +236 -0
  523. package/lib/version2/notification/DesktopNotification/DesktopNotification.module.css +106 -0
  524. package/lib/version2/notification/DesktopNotificationHeader/DesktopNotificationHeader.js +128 -0
  525. package/lib/version2/notification/DesktopNotificationHeader/DesktopNotificationHeader.module.css +137 -0
  526. package/package.json +4 -4
@@ -0,0 +1,153 @@
1
+ function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
+
3
+ /**** Libraries ****/
4
+ import React, { PureComponent } from 'react';
5
+ import PropTypes from 'prop-types';
6
+ /**** Components ****/
7
+
8
+ import Label from '@zohodesk/components/lib/Label/Label';
9
+ import Radio from '@zohodesk/components/lib/Radio/Radio';
10
+ import ValidationMessage from '../ValidationMessage/ValidationMessage';
11
+ /** Css */
12
+
13
+ import style from '../Fields.module.css';
14
+ export default class RadioField extends PureComponent {
15
+ constructor(props) {
16
+ super(props);
17
+ this.handleChange = this.handleChange.bind(this);
18
+ }
19
+
20
+ handleChange(value) {
21
+ let {
22
+ id,
23
+ onChange
24
+ } = this.props;
25
+ onChange && onChange(id, value);
26
+ }
27
+
28
+ render() {
29
+ let {
30
+ labelName,
31
+ id,
32
+ isMandatory,
33
+ options,
34
+ validationMessage,
35
+ validationPalette,
36
+ errorType,
37
+ isDisabled,
38
+ title,
39
+ labelPalette,
40
+ labelSize,
41
+ size,
42
+ selectedValue,
43
+ isActive,
44
+ dataId,
45
+ validationRuleMessage,
46
+ validationRulePalette,
47
+ isReadOnly,
48
+ variant,
49
+ customProps
50
+ } = this.props;
51
+ const {
52
+ LabelProps = {},
53
+ RadioProps = {},
54
+ ValidationMessageProps1 = {},
55
+ ValidationMessageProps2 = {}
56
+ } = customProps;
57
+ return /*#__PURE__*/React.createElement("div", {
58
+ className: `${style.container} ${isDisabled ? style.disabled : isReadOnly ? style.readonly : ''}`,
59
+ "data-title": isDisabled ? title : null
60
+ }, labelName && /*#__PURE__*/React.createElement(Label, _extends({
61
+ text: labelName,
62
+ size: "medium",
63
+ id: id,
64
+ palette: isMandatory ? 'mandatory' : isDisabled ? 'primary' : 'default',
65
+ customClass: `${style.fieldLabel} ${isMandatory ? style.labelMandatory : ''}`,
66
+ dataId: isDisabled ? `${dataId}_label_disabled` : isMandatory ? `${dataId}_label_mandatory` : `${dataId}_label`
67
+ }, LabelProps)), /*#__PURE__*/React.createElement("div", {
68
+ className: `${style.fieldContainer} ${labelName ? style.fieldMargin_medium : ''} ${style.radioContainer}`
69
+ }, options.map((option, index) => {
70
+ let {
71
+ text,
72
+ value
73
+ } = option;
74
+ return /*#__PURE__*/React.createElement("span", {
75
+ key: index,
76
+ className: `${style.radio}`
77
+ }, /*#__PURE__*/React.createElement(Radio, _extends({
78
+ id: index,
79
+ value: value,
80
+ name: id,
81
+ text: text,
82
+ labelPalette: labelPalette,
83
+ labelSize: labelSize,
84
+ active: isActive,
85
+ disabled: isDisabled,
86
+ onChange: this.handleChange,
87
+ size: size,
88
+ checked: selectedValue == value,
89
+ dataId: dataId,
90
+ isReadOnly: isReadOnly,
91
+ variant: variant
92
+ }, RadioProps)));
93
+ })), validationMessage && /*#__PURE__*/React.createElement(ValidationMessage, _extends({
94
+ text: validationMessage,
95
+ palette: validationPalette,
96
+ type: errorType,
97
+ dataId: `${dataId}_ValidationMessage`
98
+ }, ValidationMessageProps1)), validationRuleMessage && /*#__PURE__*/React.createElement(ValidationMessage, _extends({
99
+ text: validationRuleMessage,
100
+ palette: validationRulePalette,
101
+ type: errorType,
102
+ dataId: `${dataId}_ValidationRuleMessage`
103
+ }, ValidationMessageProps2)));
104
+ }
105
+
106
+ }
107
+ RadioField.propTypes = {
108
+ dataId: PropTypes.string,
109
+ errorType: PropTypes.oneOf(['primary', 'secondary']),
110
+ id: PropTypes.string,
111
+ isActive: PropTypes.bool,
112
+ isDisabled: PropTypes.bool,
113
+ isMandatory: PropTypes.bool,
114
+ isReadOnly: PropTypes.bool,
115
+ labelName: PropTypes.string,
116
+ labelPalette: PropTypes.oneOf(['default', 'primary', 'secondary', 'danger', 'mandatory']),
117
+ labelSize: PropTypes.oneOf(['small', 'medium', 'large']),
118
+ onChange: PropTypes.func,
119
+ options: PropTypes.array,
120
+ selectedValue: PropTypes.string,
121
+ size: PropTypes.string,
122
+ title: PropTypes.string,
123
+ validationMessage: PropTypes.string,
124
+ validationPalette: PropTypes.string,
125
+ validationRuleMessage: PropTypes.string,
126
+ validationRulePalette: PropTypes.string,
127
+ valueField: PropTypes.string,
128
+ variant: PropTypes.oneOf(['primary', 'default', 'secondary']),
129
+ customProps: PropTypes.shape({
130
+ LabelProps: PropTypes.object,
131
+ RadioProps: PropTypes.object,
132
+ ValidationMessageProps1: PropTypes.object,
133
+ ValidationMessageProps2: PropTypes.object
134
+ })
135
+ };
136
+ RadioField.defaultProps = {
137
+ errorType: 'primary',
138
+ isMandatory: false,
139
+ isDisabled: false,
140
+ isReadOnly: false,
141
+ variant: 'primary',
142
+ labelSize: 'medium',
143
+ labelPalette: 'default',
144
+ isActive: false,
145
+ customProps: {}
146
+ };
147
+
148
+ if (false) {
149
+ RadioField.docs = {
150
+ componentGroup: 'Form Fields',
151
+ folderName: 'General'
152
+ };
153
+ }
@@ -0,0 +1,254 @@
1
+ function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
+
3
+ /**** Libraries ****/
4
+ import React, { PureComponent } from 'react';
5
+ import PropTypes from 'prop-types';
6
+ /**** Components ****/
7
+
8
+ import Label from '@zohodesk/components/lib/Label/Label';
9
+ import Select from '@zohodesk/components/lib/Select/Select';
10
+ import ValidationMessage from '../ValidationMessage/ValidationMessage';
11
+ import { getUniqueId } from '@zohodesk/components/lib/Provider/IdProvider';
12
+ /**** Icons ****/
13
+
14
+ import Icon from '@zohodesk/icons/lib/Icon';
15
+ /** CSS */
16
+
17
+ import style from '../Fields.module.css';
18
+ export default class SelectField extends PureComponent {
19
+ constructor(props) {
20
+ super(props);
21
+ this.handleChange = this.handleChange.bind(this);
22
+ this.handleGetRef = this.handleGetRef.bind(this); // this.handleLabelClick = this.handleLabelClick.bind(this);
23
+
24
+ this.getNextId = getUniqueId(this);
25
+ }
26
+
27
+ handleChange(selctedId, selectedValue) {
28
+ let {
29
+ id: fieldId,
30
+ onChange,
31
+ selectedValue: propValue
32
+ } = this.props;
33
+ onChange && propValue !== selctedId && onChange(fieldId, selctedId, selectedValue);
34
+ }
35
+
36
+ handleGetRef(el) {
37
+ let {
38
+ getRef,
39
+ id
40
+ } = this.props;
41
+ this.selectBox = el;
42
+ getRef && getRef(el, id);
43
+ } // handleLabelClick() {
44
+ // let { isFocusOnLabelClick } = this.props;
45
+ // if (isFocusOnLabelClick && this.selectBox && this.selectBox.focus) {
46
+ // this.selectBox.focus();
47
+ // }
48
+ // }
49
+
50
+
51
+ render() {
52
+ let {
53
+ labelName,
54
+ id,
55
+ isMandatory,
56
+ options,
57
+ selectedValue,
58
+ needSearch,
59
+ emptyMessage,
60
+ animationStyle,
61
+ textBoxSize,
62
+ textBoxVariant,
63
+ searchBoxSize,
64
+ searchBoxPlaceHolder,
65
+ validationMessage,
66
+ validationPalette,
67
+ isReadOnly,
68
+ valueField,
69
+ textField,
70
+ excludeOptions,
71
+ errorType,
72
+ isDisabled,
73
+ title,
74
+ dataId,
75
+ fieldClass,
76
+ validationRuleMessage,
77
+ validationRulePalette,
78
+ onKeyDown,
79
+ infoText,
80
+ isLocked,
81
+ lockedInfoText,
82
+ borderColor,
83
+ fieldSize,
84
+ isNextOptions,
85
+ getNextOptions,
86
+ popupGroup,
87
+ onSearch,
88
+ labelPalette,
89
+ labelCustomClass,
90
+ htmlId,
91
+ needLocalSearch,
92
+ isDefaultSelectValue,
93
+ placeHolder,
94
+ children,
95
+ onFocus,
96
+ iconOnHover,
97
+ customProps
98
+ } = this.props;
99
+ const {
100
+ LabelProps = {},
101
+ SelectProps = {},
102
+ ValidationMessageProps1 = {},
103
+ ValidationMessageProps2 = {}
104
+ } = customProps;
105
+ let uniqueId = htmlId ? htmlId : this.getNextId();
106
+ return /*#__PURE__*/React.createElement("div", {
107
+ className: `${style.container} ${isDisabled ? style.disabled : isReadOnly ? style.readonly : ''}`,
108
+ "data-title": isDisabled ? title : null
109
+ }, labelName && /*#__PURE__*/React.createElement("div", {
110
+ className: style.labelContainer
111
+ }, /*#__PURE__*/React.createElement(Label, _extends({
112
+ text: labelName,
113
+ size: fieldSize === 'small' ? 'small' : 'medium',
114
+ palette: isMandatory ? 'mandatory' : isDisabled ? 'primary' : labelPalette,
115
+ customClass: `${style.fieldLabel} ${labelCustomClass} ${isMandatory ? style.labelMandatory : ''}`,
116
+ htmlFor: uniqueId,
117
+ dataId: isDisabled ? `${dataId}_label_disabled` : isMandatory ? `${dataId}_label_mandatory` : `${dataId}_label`
118
+ }, LabelProps)), infoText ? /*#__PURE__*/React.createElement(Icon, {
119
+ name: "ZD-GN-info",
120
+ iconClass: style.infoIcon,
121
+ title: infoText,
122
+ size: "15"
123
+ }) : null, isLocked ? /*#__PURE__*/React.createElement(Icon, {
124
+ name: "ZD-GN-lock",
125
+ size: "13",
126
+ iconClass: style.lockIcon,
127
+ title: lockedInfoText
128
+ }) : null), /*#__PURE__*/React.createElement("div", {
129
+ className: `${style.fieldContainer} ${labelName ? style[`fieldMargin_${fieldSize}`] : ''} ${fieldClass ? fieldClass : ''}`
130
+ }, /*#__PURE__*/React.createElement(Select, _extends({
131
+ options: options,
132
+ selectedValue: selectedValue,
133
+ onChange: this.handleChange,
134
+ onFocus: onFocus,
135
+ getRef: this.handleGetRef,
136
+ needSearch: needSearch,
137
+ emptyMessage: emptyMessage,
138
+ animationStyle: animationStyle,
139
+ textBoxSize: fieldSize === 'medium' ? textBoxSize : 'xsmall',
140
+ textBoxVariant: textBoxVariant,
141
+ searchBoxSize: searchBoxSize,
142
+ searchBoxPlaceHolder: searchBoxPlaceHolder,
143
+ valueField: valueField,
144
+ textField: textField,
145
+ excludeOptions: excludeOptions,
146
+ dataId: dataId,
147
+ onKeyDown: onKeyDown,
148
+ borderColor: borderColor,
149
+ isDisabled: isDisabled,
150
+ isReadOnly: isReadOnly,
151
+ isNextOptions: isNextOptions,
152
+ getNextOptions: getNextOptions,
153
+ popupGroup: popupGroup,
154
+ onSearch: onSearch,
155
+ htmlId: uniqueId,
156
+ needLocalSearch: needLocalSearch,
157
+ isDefaultSelectValue: isDefaultSelectValue,
158
+ placeHolder: placeHolder,
159
+ iconOnHover: iconOnHover
160
+ }, SelectProps), children ? children : null)), validationMessage && /*#__PURE__*/React.createElement(ValidationMessage, _extends({
161
+ text: validationMessage,
162
+ palette: validationPalette,
163
+ type: errorType,
164
+ htmlFor: uniqueId,
165
+ dataId: `${dataId}_ValidationMessage`
166
+ }, ValidationMessageProps1)), validationRuleMessage && /*#__PURE__*/React.createElement(ValidationMessage, _extends({
167
+ text: validationRuleMessage,
168
+ palette: validationRulePalette,
169
+ type: errorType,
170
+ htmlFor: uniqueId,
171
+ dataId: `${dataId}_ValidationRuleMessage`
172
+ }, ValidationMessageProps2)));
173
+ }
174
+
175
+ }
176
+ SelectField.propTypes = {
177
+ animationStyle: PropTypes.string,
178
+ borderColor: PropTypes.oneOf(['transparent', 'default']),
179
+ dataId: PropTypes.string,
180
+ emptyMessage: PropTypes.string,
181
+ errorType: PropTypes.oneOf(['primary', 'secondary']),
182
+ excludeOptions: PropTypes.array,
183
+ fieldClass: PropTypes.string,
184
+ fieldSize: PropTypes.oneOf(['small', 'medium']),
185
+ getNextOptions: PropTypes.func,
186
+ getRef: PropTypes.func,
187
+ id: PropTypes.string,
188
+ infoText: PropTypes.string,
189
+ isDisabled: PropTypes.bool,
190
+ isFocusOnLabelClick: PropTypes.bool,
191
+ isLocked: PropTypes.bool,
192
+ isMandatory: PropTypes.bool,
193
+ isNextOptions: PropTypes.bool,
194
+ isReadOnly: PropTypes.bool,
195
+ labelCustomClass: PropTypes.string,
196
+ labelName: PropTypes.string,
197
+ labelPalette: PropTypes.string,
198
+ lockedInfoText: PropTypes.string,
199
+ needLocalSearch: PropTypes.bool,
200
+ needSearch: PropTypes.bool,
201
+ onChange: PropTypes.func,
202
+ onKeyDown: PropTypes.func,
203
+ onSearch: PropTypes.func,
204
+ options: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.string), PropTypes.arrayOf(PropTypes.object)]).isRequired,
205
+ popupGroup: PropTypes.string,
206
+ searchBoxPlaceHolder: PropTypes.string,
207
+ searchBoxSize: PropTypes.string,
208
+ selectedValue: PropTypes.string,
209
+ textBoxSize: PropTypes.string,
210
+ textBoxVariant: PropTypes.string,
211
+ textField: PropTypes.string,
212
+ title: PropTypes.string,
213
+ validationMessage: PropTypes.string,
214
+ validationPalette: PropTypes.string,
215
+ validationRuleMessage: PropTypes.string,
216
+ validationRulePalette: PropTypes.string,
217
+ valueField: PropTypes.string,
218
+ isDefaultSelectValue: PropTypes.bool,
219
+ placeHolder: PropTypes.string,
220
+ children: PropTypes.node,
221
+ onFocus: PropTypes.func,
222
+ iconOnHover: PropTypes.bool,
223
+ customProps: PropTypes.shape({
224
+ LabelProps: PropTypes.object,
225
+ SelectProps: PropTypes.object,
226
+ ValidationMessageProps1: PropTypes.object,
227
+ ValidationMessageProps2: PropTypes.object
228
+ })
229
+ };
230
+ SelectField.defaultProps = {
231
+ errorType: 'primary',
232
+ isMandatory: false,
233
+ needSearch: false,
234
+ searchBoxSize: 'small',
235
+ textBoxSize: 'xmedium',
236
+ textBoxVariant: 'primary',
237
+ borderColor: 'default',
238
+ isDisabled: false,
239
+ isReadOnly: false,
240
+ fieldSize: 'medium',
241
+ isFocusOnLabelClick: true,
242
+ labelPalette: 'default',
243
+ labelCustomClass: '',
244
+ isDefaultSelectValue: true,
245
+ placeHolder: '',
246
+ customProps: {}
247
+ };
248
+
249
+ if (false) {
250
+ SelectField.docs = {
251
+ componentGroup: 'Form Fields',
252
+ folderName: 'General'
253
+ };
254
+ }
@@ -0,0 +1,297 @@
1
+ import React from 'react';
2
+ import PropTypes from 'prop-types';
3
+ import { Container, Box } from '@zohodesk/components/lib/Layout';
4
+ import Tag from '@zohodesk/components/lib/Tag/Tag';
5
+ import TextBoxIcon from '@zohodesk/components/lib/TextBoxIcon/TextBoxIcon';
6
+ import DropBox from '@zohodesk/components/lib/DropBox/DropBox';
7
+ import EmptySearch from '@zohodesk/svg/lib/svg/EmptySearch';
8
+ import ListItem from '@zohodesk/components/lib/ListItem/ListItem';
9
+ import Loader from '@zohodesk/svg/lib/svg/Loader';
10
+ import DropDownSeparator from '@zohodesk/components/lib/DropDown/DropDownSeparator';
11
+ import CommonEmptyState from '../../../emptystate/CommonEmptyState/CommonEmptyState';
12
+ import { findScrollEnd, stopBubbling } from '../../../utils/Common';
13
+ import { scrollTo } from '@zohodesk/components/lib/utils/Common.js';
14
+ import style from './TagsMultiSelect.module.css';
15
+ export default class TagsMultiSelect extends React.Component {
16
+ constructor(props) {
17
+ super(props);
18
+ this.state = {
19
+ showAll: false
20
+ };
21
+ this.textBoxRef = /*#__PURE__*/React.createRef();
22
+ this.emptySearchSVG = this.emptySearchSVG.bind(this);
23
+ this.onShowAllClick = this.onShowAllClick.bind(this);
24
+ this.getContainerRef = this.getContainerRef.bind(this);
25
+ this.onScroll = this.onScroll.bind(this);
26
+ this.getSelectedItemRef = this.getSelectedItemRef.bind(this);
27
+ }
28
+
29
+ onScroll() {
30
+ let {
31
+ onScroll,
32
+ name,
33
+ noMoreData,
34
+ searchList
35
+ } = this.props;
36
+ let {
37
+ containerRef
38
+ } = this;
39
+
40
+ if (findScrollEnd(this.containerRef) && !noMoreData) {
41
+ onScroll(name);
42
+ let selectItemRef = this[`selectedList_${searchList.length - 1}`];
43
+ scrollTo(containerRef, selectItemRef);
44
+ }
45
+ }
46
+
47
+ getSelectedItemRef(el, index) {
48
+ this[`selectedList_${index}`] = el;
49
+ }
50
+
51
+ componentDidUpdate(prevProps) {
52
+ let {
53
+ isTagListLoading,
54
+ tagsList,
55
+ isPopupReady,
56
+ selectSearchIndex
57
+ } = this.props;
58
+
59
+ if (prevProps.isTagListLoading !== isTagListLoading && !isTagListLoading || isPopupReady && prevProps.tagsList.length !== tagsList.length) {
60
+ setTimeout(() => {
61
+ let textBoxElementRef = this.textBoxRef.current;
62
+
63
+ if (textBoxElementRef && typeof textBoxElementRef.handleFocus === 'function') {
64
+ this.textBoxRef.current.handleFocus();
65
+ }
66
+ }, 300);
67
+ }
68
+
69
+ if (selectSearchIndex != prevProps.selectSearchIndex) {
70
+ let selectItemRef = this[`selectedList_${selectSearchIndex}`];
71
+ let {
72
+ containerRef
73
+ } = this;
74
+ scrollTo(containerRef, selectItemRef);
75
+ }
76
+ }
77
+
78
+ emptySearchSVG() {
79
+ return /*#__PURE__*/React.createElement(EmptySearch, {
80
+ size: "small"
81
+ });
82
+ }
83
+
84
+ onShowAllClick() {
85
+ this.setState({
86
+ showAll: !this.state.showAll
87
+ });
88
+ }
89
+
90
+ getContainerRef(ele) {
91
+ this.containerRef = ele;
92
+ }
93
+
94
+ render() {
95
+ let {
96
+ searchList,
97
+ selectSearchIndex,
98
+ tagsList,
99
+ deleteTag,
100
+ name,
101
+ isReadOnly,
102
+ className,
103
+ handleKeyUp,
104
+ handleChange,
105
+ addTag,
106
+ isTagListLoading,
107
+ getContainerRef,
108
+ getTargetRef,
109
+ isPopupReady,
110
+ isPopupOpen,
111
+ boxPosition,
112
+ handleTogglePopup,
113
+ listDisabled,
114
+ chipNeedToShow,
115
+ i18nKeys,
116
+ dataId,
117
+ needBorder,
118
+ borderColor,
119
+ getTextBoxChildren,
120
+ htmlId
121
+ } = this.props;
122
+ let {
123
+ showAll
124
+ } = this.state;
125
+ let chipLimit = !isPopupReady ? showAll ? tagsList.length : chipNeedToShow : tagsList.length;
126
+ return /*#__PURE__*/React.createElement("div", {
127
+ className: ` ${!isReadOnly ? ` ${needBorder ? style.hasBorder : ''}
128
+ ${needBorder ? style[`borderColor_${borderColor}`] : style.borderColor_transparent} ${isPopupReady && needBorder ? style.active : ''}` : ''} ${className}`,
129
+ onClick: stopBubbling,
130
+ "data-id": `${dataId}_tagsContainer`
131
+ }, /*#__PURE__*/React.createElement(Container, {
132
+ alignBox: "row",
133
+ align: "vertical",
134
+ isCover: false,
135
+ className: style.tagDiv,
136
+ wrap: "wrap",
137
+ eleRef: getTargetRef,
138
+ scroll: "vertical"
139
+ }, tagsList.length ? /*#__PURE__*/React.createElement(React.Fragment, null, tagsList.map((tag, index) => {
140
+ let {
141
+ name,
142
+ tagType
143
+ } = tag;
144
+ return index < chipLimit ? /*#__PURE__*/React.createElement(Box, {
145
+ className: style.tag,
146
+ key: index
147
+ }, /*#__PURE__*/React.createElement(Tag, {
148
+ text: name,
149
+ onRemove: isReadOnly ? null : deleteTag.bind(this, name),
150
+ closeTitle: i18nKeys.deleteText,
151
+ palette: tagType === 'SYSTEM' ? 'primary' : 'default',
152
+ isReadOnly: isReadOnly
153
+ })) : null;
154
+ }), tagsList.length > chipNeedToShow && !isPopupReady ? /*#__PURE__*/React.createElement(Box, {
155
+ className: style.moreLess,
156
+ dataId: `${dataId}_tagsMore`,
157
+ onClick: this.onShowAllClick
158
+ }, showAll ? `${i18nKeys.lessText}` : `+${tagsList.length - chipNeedToShow} ${i18nKeys.moreText}`) : null) : null, /*#__PURE__*/React.createElement(Box, {
159
+ flexible: true,
160
+ adjust: true,
161
+ shrnik: true,
162
+ className: style.inputWrapper
163
+ }, /*#__PURE__*/React.createElement("span", {
164
+ className: style.custmSpan
165
+ }, name), /*#__PURE__*/React.createElement(TextBoxIcon, {
166
+ htmlId: htmlId,
167
+ dataId: `${dataId}_tagInp`,
168
+ value: name,
169
+ onKeyUp: handleKeyUp,
170
+ onChange: handleChange,
171
+ maxLength: 50,
172
+ isReadOnly: isReadOnly,
173
+ ref: this.textBoxRef,
174
+ needBorder: false,
175
+ placeHolder: tagsList.length ? '' : i18nKeys.placeholderText || '-',
176
+ onClick: !isReadOnly ? handleTogglePopup : undefined,
177
+ customClass: {
178
+ customTBoxWrap: style.custmInp,
179
+ customTextBox: style.input
180
+ },
181
+ size: "xsmall"
182
+ }, getTextBoxChildren ? getTextBoxChildren() : null))), isPopupOpen ? /*#__PURE__*/React.createElement(DropBox, {
183
+ isAnimate: true,
184
+ isActive: isPopupReady,
185
+ isArrow: false,
186
+ getRef: getContainerRef,
187
+ isBoxPaddingNeed: true,
188
+ size: "default",
189
+ boxPosition: boxPosition,
190
+ isPadding: false,
191
+ customClass: {
192
+ customDropBoxWrap: style.dropdown
193
+ },
194
+ dataId: `${dataId}_dropbox`
195
+ }, isTagListLoading ? /*#__PURE__*/React.createElement(Container, {
196
+ align: "both",
197
+ className: style.viewpopNew
198
+ }, /*#__PURE__*/React.createElement(Loader, null)) : /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Container, {
199
+ scroll: "vertical",
200
+ className: style.viewpopNew,
201
+ onScroll: this.onScroll,
202
+ eleRef: this.getContainerRef
203
+ }, searchList.length ? /*#__PURE__*/React.createElement(Box, {
204
+ flexible: true
205
+ }, searchList.map((item, index) => {
206
+ let {
207
+ name,
208
+ isNew
209
+ } = item;
210
+ return /*#__PURE__*/React.createElement(React.Fragment, null, searchList.length > 1 && isNew ? /*#__PURE__*/React.createElement(DropDownSeparator, null) : null, /*#__PURE__*/React.createElement(ListItem, {
211
+ key: index,
212
+ index: index,
213
+ autoHover: true,
214
+ value: isNew ? '' : name,
215
+ title: isNew ? '' : name,
216
+ onClick: addTag.bind(this, item),
217
+ needTick: true,
218
+ highlight: selectSearchIndex === index,
219
+ getRef: this.getSelectedItemRef,
220
+ isDisabled: listDisabled
221
+ }, isNew ? /*#__PURE__*/React.createElement(Container, {
222
+ alignBox: "row",
223
+ align: "vertical"
224
+ }, /*#__PURE__*/React.createElement(Box, {
225
+ className: style.newTagLabel
226
+ }, i18nKeys.newTagText, ":"), /*#__PURE__*/React.createElement(Box, {
227
+ shrink: true,
228
+ "data-title": name,
229
+ className: `${style.dotted} ${style.newTagText} `,
230
+ dataId: `${dataId}_new_tag_text`
231
+ }, name)) : null));
232
+ })) : /*#__PURE__*/React.createElement(Box, {
233
+ flexible: true,
234
+ dataId: `${dataId}_empty`
235
+ }, /*#__PURE__*/React.createElement(Container, {
236
+ className: style.searchEmpty
237
+ }, /*#__PURE__*/React.createElement(CommonEmptyState, {
238
+ title: i18nKeys.emptyTitleText,
239
+ description: i18nKeys.emptyDescription,
240
+ size: "small",
241
+ getEmptyState: this.emptySearchSVG
242
+ })))))) : null);
243
+ }
244
+
245
+ }
246
+ TagsMultiSelect.propTypes = {
247
+ addTag: PropTypes.func,
248
+ boxPosition: PropTypes.string,
249
+ className: PropTypes.string,
250
+ deleteTag: PropTypes.func,
251
+ getContainerRef: PropTypes.func,
252
+ getTargetRef: PropTypes.func,
253
+ handleChange: PropTypes.func,
254
+ handleKeyUp: PropTypes.func,
255
+ handleTogglePopup: PropTypes.func,
256
+ isPopupOpen: PropTypes.bool,
257
+ isPopupReady: PropTypes.bool,
258
+ isReadOnly: PropTypes.bool,
259
+ isTagListLoading: PropTypes.bool,
260
+ name: PropTypes.string,
261
+ noMoreData: PropTypes.bool,
262
+ onScroll: PropTypes.func,
263
+ searchList: PropTypes.array,
264
+ selectSearchIndex: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),
265
+ tagsList: PropTypes.array,
266
+ chipNeedToShow: PropTypes.string,
267
+ listDisabled: PropTypes.bool,
268
+ dataId: PropTypes.string,
269
+ i18nKeys: PropTypes.shape({
270
+ newTagText: PropTypes.string.isRequired,
271
+ emptyTitleText: PropTypes.string.isRequired,
272
+ emptyDescription: PropTypes.string.isRequired,
273
+ errorMessage: PropTypes.string.isRequired,
274
+ deleteText: PropTypes.string.isRequired,
275
+ lessText: PropTypes.string.isRequired,
276
+ moreText: PropTypes.string.isRequired,
277
+ placeholderText: PropTypes.string
278
+ }),
279
+ borderColor: PropTypes.oneOf(['transparent', 'default', 'dark']),
280
+ needBorder: PropTypes.bool,
281
+ getTextBoxChildren: PropTypes.func,
282
+ htmlId: PropTypes.string
283
+ };
284
+ TagsMultiSelect.defaultProps = {
285
+ className: '',
286
+ i18nKeys: {},
287
+ chipNeedToShow: '5',
288
+ borderColor: 'default',
289
+ needBorder: true,
290
+ dataId: ''
291
+ };
292
+
293
+ if (false) {
294
+ TagsMultiSelect.docs = {
295
+ componentGroup: 'TagsMultiSelect'
296
+ };
297
+ }