@antscorp/antsomi-ui 2.0.101 → 2.0.102

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 (331) hide show
  1. package/README.md +78 -78
  2. package/es/__mocks__/1000_city.json +802 -802
  3. package/es/assets/css/main.scss +6 -6
  4. package/es/assets/images/components/Login/AuthenSuccess.png +0 -0
  5. package/es/assets/images/feedback.svg +3 -3
  6. package/es/assets/svg/mobile-frame.svg +3 -3
  7. package/es/assets/svg/warning-icon.svg +5 -5
  8. package/es/components/atoms/Alert/Alert.js +28 -28
  9. package/es/components/atoms/ContentEditable/styled.js +16 -16
  10. package/es/components/atoms/DividerPure/styled.js +35 -35
  11. package/es/components/atoms/Icon/index.js +19 -19
  12. package/es/components/atoms/Iframe/Iframe.js +18 -18
  13. package/es/components/atoms/Input/styled.js +104 -104
  14. package/es/components/atoms/InputDynamic/styled.js +284 -284
  15. package/es/components/atoms/MobileBrandingBar/styled.js +21 -21
  16. package/es/components/atoms/MobileFrame/styled.js +30 -30
  17. package/es/components/atoms/MobileFrameV2/styled.js +42 -42
  18. package/es/components/atoms/MobileFrameV3/styled.js +31 -31
  19. package/es/components/atoms/NotificationStatus/NotificationStatus.d.ts +12 -0
  20. package/es/components/atoms/NotificationStatus/NotificationStatus.js +27 -0
  21. package/es/components/atoms/NotificationStatus/constants/index.d.ts +15 -0
  22. package/es/components/atoms/NotificationStatus/constants/index.js +15 -0
  23. package/es/components/atoms/NotificationStatus/index.d.ts +1 -0
  24. package/es/components/atoms/NotificationStatus/index.js +1 -0
  25. package/es/components/atoms/NotificationStatus/styled.d.ts +3 -0
  26. package/es/components/atoms/NotificationStatus/styled.js +14 -0
  27. package/es/components/atoms/PreviewTabs/styled.js +69 -69
  28. package/es/components/atoms/Radio/index.js +16 -16
  29. package/es/components/atoms/ReactIframe/ReactIframe.js +5 -5
  30. package/es/components/atoms/ReactIframe/styled.js +9 -9
  31. package/es/components/atoms/RequiredLabel/styled.js +3 -3
  32. package/es/components/atoms/ScrollBox/index.js +5 -5
  33. package/es/components/atoms/Scrollbars/styled.js +21 -21
  34. package/es/components/atoms/SlideBar/styled.js +194 -194
  35. package/es/components/atoms/Slider/styled.js +31 -31
  36. package/es/components/atoms/Space/Space.js +4 -4
  37. package/es/components/atoms/Spin/styled.js +11 -11
  38. package/es/components/atoms/Steps/styled.js +244 -244
  39. package/es/components/atoms/Switch/styled.js +56 -56
  40. package/es/components/atoms/Tag/Tag.js +10 -10
  41. package/es/components/atoms/Text/styled.js +34 -34
  42. package/es/components/atoms/index.d.ts +1 -0
  43. package/es/components/atoms/index.js +1 -0
  44. package/es/components/icons/DomainManagementIcon.js +1 -1
  45. package/es/components/icons/KeyValueIcon.d.ts +3 -0
  46. package/es/components/icons/KeyValueIcon.js +7 -0
  47. package/es/components/icons/LazyIcon/LazyIcon.d.ts +11 -10
  48. package/es/components/icons/LazyIcon/LazyIcon.js +11 -10
  49. package/es/components/icons/LoadingIcon.js +33 -33
  50. package/es/components/icons/document/styled.js +43 -43
  51. package/es/components/icons/index.d.ts +11 -10
  52. package/es/components/icons/index.js +11 -10
  53. package/es/components/molecules/AccessDenied/styled.js +28 -28
  54. package/es/components/molecules/AccountSelection/styled.js +110 -110
  55. package/es/components/molecules/AddDynamicContent/styled.js +23 -23
  56. package/es/components/molecules/AlignSetting/styled.js +4 -4
  57. package/es/components/molecules/ApplyPopupContent/styled.js +32 -32
  58. package/es/components/molecules/CalendarSelection/components/AutoUpdateTo/styled.js +8 -8
  59. package/es/components/molecules/CalendarSelection/components/CustomPicker/styled.js +79 -79
  60. package/es/components/molecules/CalendarSelection/components/Footer/styled.js +4 -4
  61. package/es/components/molecules/CalendarSelection/components/RangePicker/styled.js +21 -21
  62. package/es/components/molecules/CalendarSelection/components/RangeSelectOptions/components/Option/Option.js +26 -26
  63. package/es/components/molecules/CalendarSelection/components/RangeSelectOptions/styled.js +30 -30
  64. package/es/components/molecules/CalendarSelection/components/TimeRangeDisplay/styled.js +26 -26
  65. package/es/components/molecules/CalendarSelection/styled.js +8 -8
  66. package/es/components/molecules/CaptureScreen/components/CommentBox/styled.js +119 -119
  67. package/es/components/molecules/CaptureScreen/components/Cursor/styled.js +67 -67
  68. package/es/components/molecules/CaptureScreen/styled.js +240 -240
  69. package/es/components/molecules/ChartTab/components/styled.js +24 -24
  70. package/es/components/molecules/ChartTab/styled.js +20 -20
  71. package/es/components/molecules/ChatBox/AntsomiAI.js +8 -8
  72. package/es/components/molecules/ChatBox/ChatBoxInsight/QuestionItem.js +9 -9
  73. package/es/components/molecules/ChatBox/ChatBoxInsight/styled.js +365 -365
  74. package/es/components/molecules/ChatBox/styled.js +324 -324
  75. package/es/components/molecules/CodeStructure/styled.js +5 -5
  76. package/es/components/molecules/ColorPicker/ChromePicker/styled.js +10 -10
  77. package/es/components/molecules/ColorPicker/CustomPicker/styled.js +89 -89
  78. package/es/components/molecules/ColorPicker/SketchPicker/styled.js +5 -5
  79. package/es/components/molecules/ColorPicker/styled.js +7 -7
  80. package/es/components/molecules/ColorSetting/styled.js +39 -39
  81. package/es/components/molecules/DatePicker/components/AdvancedPicker/styled.js +110 -110
  82. package/es/components/molecules/DatePickerV2/styled.js +6 -6
  83. package/es/components/molecules/DisplayFormat/styled.js +12 -12
  84. package/es/components/molecules/DrawerDetail/components/ToggleDrawerSizeButton.js +24 -24
  85. package/es/components/molecules/DrawerDetail/styled.js +109 -109
  86. package/es/components/molecules/Dropdown/style.scss +11 -11
  87. package/es/components/molecules/Dropdown/styled.js +28 -28
  88. package/es/components/molecules/EdgeSetting/styled.js +10 -10
  89. package/es/components/molecules/EditableName/styled.js +70 -70
  90. package/es/components/molecules/EditingList/styled.js +29 -29
  91. package/es/components/molecules/EditorTab/styled.js +156 -156
  92. package/es/components/molecules/EmojiCollections/styled.js +22 -22
  93. package/es/components/molecules/EmojiPopover/styled.js +4 -4
  94. package/es/components/molecules/EmptyData/styled.js +53 -53
  95. package/es/components/molecules/GradientSetting/styled.js +57 -57
  96. package/es/components/molecules/HeaderV2/styled.js +70 -70
  97. package/es/components/molecules/IconSelection/styled.js +69 -69
  98. package/es/components/molecules/ImageEditor/components/ModalShortcut.js +21 -21
  99. package/es/components/molecules/ImageEditor/styled.js +5 -5
  100. package/es/components/molecules/ImagePreview/styled.js +3 -3
  101. package/es/components/molecules/InputNumberWithUnit/styled.js +14 -14
  102. package/es/components/molecules/InputSearch/styled.js +41 -41
  103. package/es/components/molecules/ItemNotFound/styled.js +26 -26
  104. package/es/components/molecules/MatchAnySelect/components/ExtendValuePopup.js +8 -8
  105. package/es/components/molecules/MatchAnySelect/styled.js +247 -247
  106. package/es/components/molecules/Modal/styled.js +63 -63
  107. package/es/components/molecules/ModalSelect/styled.js +152 -152
  108. package/es/components/molecules/ModalV2/styled.js +27 -27
  109. package/es/components/molecules/PopupDraggable/styled.js +57 -57
  110. package/es/components/molecules/PreviewModal/styled.js +26 -26
  111. package/es/components/molecules/ProcessLoading/styled.js +2 -2
  112. package/es/components/molecules/QuillEditor/CustomToolbar.js +3165 -3165
  113. package/es/components/molecules/QuillEditor/EditorToolbar.js +7 -7
  114. package/es/components/molecules/QuillEditor/styled.js +25 -25
  115. package/es/components/molecules/RadioGroup/styled.js +9 -9
  116. package/es/components/molecules/RequestAccess/styled.js +38 -38
  117. package/es/components/molecules/ResizeGrid/components/Cell/styled.js +77 -77
  118. package/es/components/molecules/ResizeGrid/styled.js +50 -50
  119. package/es/components/molecules/RichMenu/RichMenuBlock/RichMenuCell/styled.js +118 -118
  120. package/es/components/molecules/RichMenu/RichMenuBlock/styled.js +13 -13
  121. package/es/components/molecules/RichMenu/RichMenuChatBar/TypingChat/styled.js +40 -40
  122. package/es/components/molecules/RichMenu/RichMenuChatBar/styled.js +27 -27
  123. package/es/components/molecules/RichMenu/RichMenuMobileView/RichMenuMobileView.js +2 -2
  124. package/es/components/molecules/RichMenu/RichMenuMobileView/styled.js +38 -38
  125. package/es/components/molecules/SearchPopover/components/PopoverSelect/styled.js +36 -36
  126. package/es/components/molecules/SearchPopover/components/PopoverSelect/styles.scss +7 -7
  127. package/es/components/molecules/SearchPopover/styled.js +32 -32
  128. package/es/components/molecules/Select/styled.js +32 -32
  129. package/es/components/molecules/SelectAccount/styled.js +147 -147
  130. package/es/components/molecules/SelectEventAttribute/styled.js +8 -8
  131. package/es/components/molecules/SelectMulti/styled.js +62 -62
  132. package/es/components/molecules/SelectV2/styled.js +124 -124
  133. package/es/components/molecules/SettingWrapper/styled.js +12 -12
  134. package/es/components/molecules/ShareAccess/components/GeneralAccess/styled.js +56 -56
  135. package/es/components/molecules/ShareAccess/components/LayoutContent/styled.js +5 -5
  136. package/es/components/molecules/ShareAccess/components/ModalTransferOwnerShip/styled.js +15 -15
  137. package/es/components/molecules/ShareAccess/components/PeopleAccess/styled.js +63 -63
  138. package/es/components/molecules/ShareAccess/components/SearchUser/styled.js +31 -31
  139. package/es/components/molecules/SliderWithInputNumber/styled.js +2 -2
  140. package/es/components/molecules/Tabs/Tabs.js +11 -11
  141. package/es/components/molecules/TagifyInput/TagifyInput.js +50 -50
  142. package/es/components/molecules/TagifyInput/styled.js +37 -37
  143. package/es/components/molecules/TagifyInput/utils.js +13 -13
  144. package/es/components/molecules/TagifyInput/utils.style.js +217 -217
  145. package/es/components/molecules/TemplateSaveAs/components/Category/Category.js +5 -5
  146. package/es/components/molecules/TemplateSaveAs/components/ImageSlider/styled.js +276 -276
  147. package/es/components/molecules/TemplateSaveAs/styled.js +134 -134
  148. package/es/components/molecules/ThumbnailCard/styled.js +92 -92
  149. package/es/components/molecules/Tree/styled.js +38 -38
  150. package/es/components/molecules/UploadImage/styled.js +114 -114
  151. package/es/components/molecules/VirtualizedMenu/styled.js +82 -82
  152. package/es/components/organism/AccountProfile/components/AccountSetting/components/EditableInput/styles.js +98 -98
  153. package/es/components/organism/AccountProfile/components/AccountSetting/components/LanguageSelector/styles.js +18 -18
  154. package/es/components/organism/AccountProfile/components/AccountSetting/styled.js +543 -543
  155. package/es/components/organism/AccountProfile/components/AccountSetting/styles.scss +39 -39
  156. package/es/components/organism/AccountSharing/styled.js +336 -336
  157. package/es/components/organism/ActivityTimeline/components/ActionHistory/styled.js +28 -28
  158. package/es/components/organism/ActivityTimeline/components/CardMember/styled.js +60 -60
  159. package/es/components/organism/ActivityTimeline/components/ItemGroupEvent/styled.js +4 -4
  160. package/es/components/organism/ActivityTimeline/components/List/styled.js +77 -77
  161. package/es/components/organism/ActivityTimeline/components/ListItem/styled.js +37 -37
  162. package/es/components/organism/ActivityTimeline/components/ProductCard/styled.js +92 -92
  163. package/es/components/organism/ActivityTimeline/components/Redeem/styled.js +7 -7
  164. package/es/components/organism/ActivityTimeline/components/Slide/styled.js +20 -20
  165. package/es/components/organism/ActivityTimeline/components/TimeLineTitle/styled.js +7 -7
  166. package/es/components/organism/ActivityTimeline/components/TimelineSection/styled.js +69 -69
  167. package/es/components/organism/ActivityTimeline/styled.js +39 -39
  168. package/es/components/organism/AlgorithmsSetting/styled.js +35 -35
  169. package/es/components/organism/BasicLogin/BasicLogin.d.ts +3 -0
  170. package/es/components/organism/BasicLogin/BasicLogin.js +156 -0
  171. package/es/components/organism/BasicLogin/__tests__/index.spec.d.ts +0 -0
  172. package/es/components/organism/BasicLogin/__tests__/index.spec.js +46 -0
  173. package/es/components/organism/BasicLogin/components/AuthenticateResult/AuthenticateResult.d.ts +8 -0
  174. package/es/components/organism/BasicLogin/components/AuthenticateResult/AuthenticateResult.js +23 -0
  175. package/es/components/organism/BasicLogin/components/AuthenticateResult/index.d.ts +1 -0
  176. package/es/components/organism/BasicLogin/components/AuthenticateResult/index.js +1 -0
  177. package/es/components/organism/BasicLogin/components/ChooseMethod/ChooseMethod.d.ts +9 -0
  178. package/es/components/organism/BasicLogin/components/ChooseMethod/ChooseMethod.js +54 -0
  179. package/es/components/organism/BasicLogin/components/ChooseMethod/Method.d.ts +10 -0
  180. package/es/components/organism/BasicLogin/components/ChooseMethod/Method.js +13 -0
  181. package/es/components/organism/BasicLogin/components/ChooseMethod/index.d.ts +2 -0
  182. package/es/components/organism/BasicLogin/components/ChooseMethod/index.js +2 -0
  183. package/es/components/organism/BasicLogin/components/ChooseMethod/styled.d.ts +10 -0
  184. package/es/components/organism/BasicLogin/components/ChooseMethod/styled.js +24 -0
  185. package/es/components/organism/BasicLogin/components/ChooseMethod/utils.d.ts +1 -0
  186. package/es/components/organism/BasicLogin/components/ChooseMethod/utils.js +1 -0
  187. package/es/components/organism/BasicLogin/components/LoginWithEmail/LoginWithEmail.d.ts +14 -0
  188. package/es/components/organism/BasicLogin/components/LoginWithEmail/LoginWithEmail.js +192 -0
  189. package/es/components/organism/BasicLogin/components/LoginWithEmail/index.d.ts +1 -0
  190. package/es/components/organism/BasicLogin/components/LoginWithEmail/index.js +1 -0
  191. package/es/components/organism/{Login/components/LoginStep2 → BasicLogin/components/LoginWithEmail}/styled.js +3 -3
  192. package/es/components/organism/BasicLogin/components/LoginWithGG/LoginWithGG.d.ts +12 -0
  193. package/es/components/organism/BasicLogin/components/LoginWithGG/LoginWithGG.js +107 -0
  194. package/es/components/organism/BasicLogin/components/LoginWithGG/index.d.ts +1 -0
  195. package/es/components/organism/BasicLogin/components/LoginWithGG/index.js +1 -0
  196. package/es/components/organism/BasicLogin/components/LoginWithGG/styled.d.ts +3 -0
  197. package/es/components/organism/BasicLogin/components/LoginWithGG/styled.js +5 -0
  198. package/es/components/organism/BasicLogin/components/SignIn/SignIn.d.ts +14 -0
  199. package/es/components/organism/BasicLogin/components/SignIn/SignIn.js +66 -0
  200. package/es/components/organism/BasicLogin/components/SignIn/index.d.ts +1 -0
  201. package/es/components/organism/BasicLogin/components/SignIn/index.js +1 -0
  202. package/es/components/organism/BasicLogin/components/SignIn/styled.d.ts +3 -0
  203. package/es/components/organism/BasicLogin/components/SignIn/styled.js +10 -0
  204. package/es/components/organism/BasicLogin/components/WidgetLayout/WidgetLayout.d.ts +13 -0
  205. package/es/components/organism/BasicLogin/components/WidgetLayout/WidgetLayout.js +18 -0
  206. package/es/components/organism/BasicLogin/components/WidgetLayout/index.d.ts +1 -0
  207. package/es/components/organism/BasicLogin/components/WidgetLayout/index.js +1 -0
  208. package/es/components/organism/BasicLogin/components/WidgetLayout/styled.d.ts +5 -0
  209. package/es/components/organism/BasicLogin/components/WidgetLayout/styled.js +22 -0
  210. package/es/components/organism/BasicLogin/components/index.d.ts +5 -0
  211. package/es/components/organism/BasicLogin/components/index.js +5 -0
  212. package/es/components/organism/BasicLogin/constants/index.d.ts +26 -0
  213. package/es/components/organism/BasicLogin/constants/index.js +26 -0
  214. package/es/components/organism/BasicLogin/index.d.ts +2 -0
  215. package/es/components/organism/BasicLogin/index.js +2 -0
  216. package/es/components/organism/BasicLogin/styled.d.ts +50 -0
  217. package/es/components/organism/BasicLogin/styled.js +120 -0
  218. package/es/components/organism/BasicLogin/types/index.d.ts +36 -0
  219. package/es/components/organism/BasicLogin/types/index.js +1 -0
  220. package/es/components/organism/BasicLogin/utils.d.ts +8 -0
  221. package/es/components/organism/BasicLogin/utils.js +18 -0
  222. package/es/components/organism/ContentSources/styled.js +50 -50
  223. package/es/components/organism/DataTable/components/AddButton/index.js +8 -8
  224. package/es/components/organism/DataTable/components/ModifyColumn/styled.js +18 -18
  225. package/es/components/organism/DataTable/components/Pagination/styled.js +26 -26
  226. package/es/components/organism/DataTable/components/Table/styled.js +135 -135
  227. package/es/components/organism/DataTable/components/Toolbar/SearchPopover.js +17 -17
  228. package/es/components/organism/DataTable/components/Toolbar/styled.js +70 -70
  229. package/es/components/organism/DataTable/styled/index.js +84 -84
  230. package/es/components/organism/Filter/components/FilterCondition/styled.js +34 -34
  231. package/es/components/organism/Filter/styled.js +109 -109
  232. package/es/components/organism/FilterSetting/components/common/InputArray/styled.js +5 -5
  233. package/es/components/organism/FilterSetting/components/common/InputOrSelect/index.js +63 -63
  234. package/es/components/organism/FilterSetting/components/common/InputSelectMulti/ColumnSuggestion/index.js +31 -31
  235. package/es/components/organism/FilterSetting/components/common/InputSelectMulti/Tree/index.js +22 -22
  236. package/es/components/organism/FilterSetting/components/common/InputSelectMulti/index.js +55 -55
  237. package/es/components/organism/FilterSetting/styled.js +19 -19
  238. package/es/components/organism/Help/styled.js +267 -267
  239. package/es/components/organism/LeftMenu/components/HomeMenu/styled.js +39 -39
  240. package/es/components/organism/LeftMenu/components/common/ChildMenu/components/MenuItemImage/styled.js +16 -16
  241. package/es/components/organism/LeftMenu/components/common/ChildMenu/styled.js +156 -156
  242. package/es/components/organism/LeftMenu/hooks/usePermission.js +1 -1
  243. package/es/components/organism/LeftMenu/styled.js +214 -214
  244. package/es/components/organism/Login/Login.js +71 -13
  245. package/es/components/organism/Login/components/ChooseMethod/ChooseMethod.d.ts +9 -0
  246. package/es/components/organism/Login/components/ChooseMethod/ChooseMethod.js +54 -0
  247. package/es/components/organism/Login/components/ChooseMethod/Method.d.ts +10 -0
  248. package/es/components/organism/Login/components/ChooseMethod/Method.js +13 -0
  249. package/es/components/organism/Login/components/ChooseMethod/index.d.ts +1 -0
  250. package/es/components/organism/Login/components/ChooseMethod/index.js +1 -0
  251. package/es/components/organism/Login/components/ChooseMethod/styled.d.ts +10 -0
  252. package/es/components/organism/Login/components/ChooseMethod/styled.js +24 -0
  253. package/es/components/organism/Login/components/ChooseMethod/utils.d.ts +1 -0
  254. package/es/components/organism/Login/components/ChooseMethod/utils.js +1 -0
  255. package/es/components/organism/Login/components/ForgotPassword/styled.js +8 -8
  256. package/es/components/organism/Login/components/LoginSelectPortal/Item/styled.js +31 -31
  257. package/es/components/organism/Login/components/LoginSelectPortal/styled.js +3 -3
  258. package/es/components/organism/Login/components/LoginWithEmail/LoginWithEmail.d.ts +15 -0
  259. package/es/components/organism/Login/components/LoginWithEmail/LoginWithEmail.js +211 -0
  260. package/es/components/organism/Login/components/LoginWithEmail/index.d.ts +1 -0
  261. package/es/components/organism/Login/components/LoginWithEmail/index.js +1 -0
  262. package/es/components/organism/Login/components/LoginWithEmail/styled.d.ts +3 -0
  263. package/es/components/organism/Login/components/LoginWithEmail/styled.js +5 -0
  264. package/es/components/organism/Login/components/{LoginStep2/LoginStep2.d.ts → LoginWithGG/LoginWithGG.d.ts} +1 -1
  265. package/es/components/organism/Login/components/{LoginStep2/LoginStep2.js → LoginWithGG/LoginWithGG.js} +6 -20
  266. package/es/components/organism/Login/components/LoginWithGG/index.d.ts +1 -0
  267. package/es/components/organism/Login/components/LoginWithGG/index.js +1 -0
  268. package/es/components/organism/Login/components/LoginWithGG/styled.d.ts +3 -0
  269. package/es/components/organism/Login/components/LoginWithGG/styled.js +5 -0
  270. package/es/components/organism/Login/components/SetupGGAuthenticator/SetupGGAuthenticator.js +1 -1
  271. package/es/components/organism/Login/components/SetupGGAuthenticator/styled.js +7 -7
  272. package/es/components/organism/Login/components/SignIn/styled.js +8 -8
  273. package/es/components/organism/Login/components/VerifyAccount/styled.js +13 -13
  274. package/es/components/organism/Login/components/WidgetLayout/WidgetLayout.js +3 -3
  275. package/es/components/organism/Login/components/WidgetLayout/styled.js +18 -18
  276. package/es/components/organism/Login/components/index.d.ts +3 -1
  277. package/es/components/organism/Login/components/index.js +3 -1
  278. package/es/components/organism/Login/constants/index.d.ts +25 -1
  279. package/es/components/organism/Login/constants/index.js +25 -1
  280. package/es/components/organism/Login/styled.d.ts +2 -1
  281. package/es/components/organism/Login/styled.js +115 -114
  282. package/es/components/organism/Login/types/index.d.ts +7 -0
  283. package/es/components/organism/Login/utils/index.d.ts +1 -0
  284. package/es/components/organism/Login/utils/index.js +8 -0
  285. package/es/components/organism/Menu/styled.js +6 -6
  286. package/es/components/organism/ModifyColumnModal/styled.js +132 -132
  287. package/es/components/organism/Notification/styled.js +155 -155
  288. package/es/components/organism/PreviewCollections/Messages/SkeletonMessage/styled.js +14 -14
  289. package/es/components/organism/PreviewCollections/WhatsappMessage/CarouselMessage/styled.js +63 -63
  290. package/es/components/organism/PreviewCollections/constants.js +50 -50
  291. package/es/components/organism/PreviewCollections/styled.js +16 -16
  292. package/es/components/organism/PreviewTemplateModal/components/Banner/styled.js +78 -78
  293. package/es/components/organism/PreviewTemplateModal/components/Information/styled.js +52 -52
  294. package/es/components/organism/PreviewTemplateModal/components/SimilarTemplate/styled.js +18 -18
  295. package/es/components/organism/PreviewTemplateModal/components/ThumbnailSlider/styled.js +75 -75
  296. package/es/components/organism/PreviewTemplateModal/styled.js +21 -21
  297. package/es/components/organism/Table/CrossTabTable/components/CustomCell/styled.js +11 -11
  298. package/es/components/organism/Table/CrossTabTable/styled.js +11 -11
  299. package/es/components/organism/Table/ExplorePivotTable/components/CustomCell/styled.js +17 -17
  300. package/es/components/organism/Table/ExplorePivotTable/styled.js +11 -11
  301. package/es/components/organism/TicketEditor/styled.js +850 -850
  302. package/es/components/organism/TicketEditorV2/styled.js +839 -839
  303. package/es/components/organism/index.d.ts +1 -0
  304. package/es/components/organism/index.js +1 -0
  305. package/es/components/template/Layout/Layout.js +10 -10
  306. package/es/components/template/Layout/components/RecommendationWorkspace/components/MenuMapping/components/OldLeftMenu/index.js +2 -2
  307. package/es/components/template/Layout/components/RecommendationWorkspace/components/MenuMapping/components/OldLeftMenu/styled.js +73 -73
  308. package/es/components/template/Layout/components/RecommendationWorkspace/components/MenuMapping/styled.js +39 -39
  309. package/es/components/template/Layout/components/RecommendationWorkspace/components/RecommendationImage/styled.js +61 -61
  310. package/es/components/template/Layout/components/RecommendationWorkspace/styled.js +16 -16
  311. package/es/components/template/Layout/styled.js +84 -84
  312. package/es/components/template/TemplateListing/components/BlankTemplate/styled.js +21 -21
  313. package/es/components/template/TemplateListing/components/CategoryListing/styled.js +123 -123
  314. package/es/components/template/TemplateListing/components/Empty/styled.js +20 -20
  315. package/es/components/template/TemplateListing/stories/demo/styled.js +4 -4
  316. package/es/components/template/TemplateListing/styled/index.js +40 -40
  317. package/es/hooks/index.d.ts +1 -0
  318. package/es/hooks/index.js +1 -0
  319. package/es/hooks/useCountdown.d.ts +49 -0
  320. package/es/hooks/useCountdown.js +122 -0
  321. package/es/providers/ConfigProvider/GlobalStyle.js +1142 -1119
  322. package/es/styled/common.js +51 -51
  323. package/es/tests/styled.js +4 -4
  324. package/es/utils/variables.js +7 -7
  325. package/package.json +261 -261
  326. package/CHANGELOG.md +0 -63
  327. package/es/components/organism/ActivityTimeline/__mocks__/event_tracking.json +0 -1290
  328. package/es/components/organism/ActivityTimeline/__mocks__/timeline.json +0 -3059
  329. package/es/components/organism/Login/components/LoginStep2/index.d.ts +0 -1
  330. package/es/components/organism/Login/components/LoginStep2/index.js +0 -1
  331. /package/es/components/organism/{Login/components/LoginStep2 → BasicLogin/components/LoginWithEmail}/styled.d.ts +0 -0
@@ -0,0 +1,54 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ /* eslint-disable react-hooks/exhaustive-deps */
3
+ // Libraries
4
+ import { Button, Flex } from 'antd';
5
+ import { get } from 'lodash';
6
+ import { useMemo } from 'react';
7
+ import { isMobile } from 'react-device-detect';
8
+ import { EmailTemplateIcon, KeyValueIcon } from '@antscorp/antsomi-ui/es/components/icons';
9
+ // Components
10
+ import { WidgetLayout } from '../WidgetLayout';
11
+ import { Method } from './Method';
12
+ // Images
13
+ import verifyImage from '../../../../../assets/images/components/Login/loginStep2.png';
14
+ // Utils
15
+ import { maskEmail } from './utils';
16
+ import { Title } from '../WidgetLayout/styled';
17
+ import { Text } from '../../styled';
18
+ import { LOGIN_METHODS } from '../../constants';
19
+ export const ChooseMethod = props => {
20
+ const { loginData = {}, onChooseMethod, backLogin } = props;
21
+ const handleBack = () => {
22
+ if (backLogin && typeof backLogin === 'function') {
23
+ backLogin();
24
+ }
25
+ };
26
+ const methods = useMemo(() => {
27
+ const options = loginData?.auth_options || [];
28
+ return options.map(opt => {
29
+ switch (opt.provider) {
30
+ case 'google':
31
+ return {
32
+ disable: opt.status !== 1,
33
+ icon: _jsx(KeyValueIcon, { color: "#005eb8" }),
34
+ name: LOGIN_METHODS.GOOGLE_AUTHENTICATOR,
35
+ label: opt.status === 1
36
+ ? 'Use your security code using Google Authenticator.'
37
+ : 'Use your security code using Google Authenticator. Authenticator not available.',
38
+ };
39
+ case 'email':
40
+ return {
41
+ disable: opt.status !== 1,
42
+ icon: _jsx(EmailTemplateIcon, { color: "#005eb8" }),
43
+ name: LOGIN_METHODS.EMAIL,
44
+ label: `Get verification code at ${maskEmail(get(loginData, 'personal.email', ''))}`,
45
+ };
46
+ default:
47
+ return null;
48
+ }
49
+ });
50
+ }, [loginData]);
51
+ return (_jsx(WidgetLayout, { header: null, isShowLogo: false, title: _jsx(Title, { isMobile: isMobile, style: { marginTop: 20 }, children: "Identity Verification" }), gapContent: 30, content: _jsxs(Flex, { vertical: true, gap: 50, style: { marginTop: 20 }, children: [_jsxs(Flex, { vertical: true, gap: 20, align: "center", children: [_jsx("img", { src: verifyImage, alt: "" }), _jsx(Text, { isMobile: isMobile, color: "#595959", children: "For added security, we need to verify your identity." })] }), _jsxs(Flex, { vertical: true, gap: isMobile ? 10 : 13, children: [_jsx(Flex, { gap: 5, align: "center", justify: "center", children: _jsx(Title, { isMobile: isMobile, children: "Choose how you want to sign in:" }) }), _jsx(Flex, { vertical: true, gap: isMobile ? 20 : 11, children: methods.map(({ disable, icon, name, label }) => (_jsx(Method, { disable: disable, onClick: () => onChooseMethod(name), icon: icon, name: name, label: label }, name))) })] })] }), footer: _jsx(Flex, { justify: "center", children: _jsx(Button, { type: "text", onClick: handleBack, style: {
52
+ fontSize: isMobile ? '16px' : '14px',
53
+ }, children: "Sign in with a different account" }) }) }));
54
+ };
@@ -0,0 +1,10 @@
1
+ /// <reference types="react" />
2
+ type TMethod = {
3
+ onClick: (name: string) => void;
4
+ icon: React.ReactNode;
5
+ label: React.ReactNode;
6
+ disable?: boolean;
7
+ name: string;
8
+ };
9
+ export declare const Method: (props: TMethod) => import("react/jsx-runtime").JSX.Element;
10
+ export {};
@@ -0,0 +1,13 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { isMobile } from 'react-device-detect';
3
+ import { BlockMethod } from './styled';
4
+ import { Text } from '../../styled';
5
+ export const Method = (props) => {
6
+ const { onClick, icon, label, disable, name } = props;
7
+ const onChooseMethod = () => {
8
+ if (!disable && onClick) {
9
+ onClick(name);
10
+ }
11
+ };
12
+ return (_jsxs(BlockMethod, { onClick: onChooseMethod, disable: disable, "data-test": name, children: [_jsx("div", { children: icon }), _jsx(Text, { isMobile: isMobile, color: disable ? '#9C9B9B' : '#595959', children: label })] }));
13
+ };
@@ -0,0 +1,2 @@
1
+ export * from './ChooseMethod';
2
+ export * from './utils';
@@ -0,0 +1,2 @@
1
+ export * from './ChooseMethod';
2
+ export * from './utils';
@@ -0,0 +1,10 @@
1
+ /// <reference types="react" />
2
+ export declare const TextInfo: import("styled-components").StyledComponent<"span", any, {
3
+ isMobile: boolean;
4
+ }, never>;
5
+ export declare const SubTitle: import("styled-components").StyledComponent<"span", any, {
6
+ isMobile: boolean;
7
+ }, never>;
8
+ export declare const BlockMethod: import("styled-components").StyledComponent<import("react").ForwardRefExoticComponent<import("antd").FlexProps<import("antd/es/_util/type").AnyObject> & import("react").RefAttributes<HTMLElement>>, any, {
9
+ disable?: boolean | undefined;
10
+ }, never>;
@@ -0,0 +1,24 @@
1
+ import { Flex } from 'antd';
2
+ import styled from 'styled-components';
3
+ export const TextInfo = styled.span `
4
+ color: #7f7f7f;
5
+ font-size: ${(props) => (props.isMobile ? ' 13px !important' : '11px')};
6
+ `;
7
+ export const SubTitle = styled.span `
8
+ color: #005eb8;
9
+ font-size: ${(props) => (props.isMobile ? ' 16px ' : '14px')};
10
+ font-weight: 500;
11
+ `;
12
+ export const BlockMethod = styled(Flex) `
13
+ align-items: center;
14
+ gap: 10px;
15
+ padding: 10px;
16
+ cursor: ${props => (props.disable ? 'not-allowed' : 'pointer')};
17
+ border-radius: 10px;
18
+
19
+ opacity: ${props => (props.disable ? '0.5' : '1')};
20
+
21
+ &:hover {
22
+ background-color: ${props => (props.disable ? '#f2f2f2' : '#e6f0ff')};
23
+ }
24
+ `;
@@ -0,0 +1 @@
1
+ export declare const maskEmail: (email: string) => string;
@@ -0,0 +1 @@
1
+ export const maskEmail = (email) => email.replace(/(.)[^@]*(.@.).*(.)/, '$1****$2*******$3.');
@@ -0,0 +1,14 @@
1
+ import React from 'react';
2
+ import { LoginData } from '../../types';
3
+ interface LoginWithEmailProps {
4
+ domainLogin: string;
5
+ codeKey?: string;
6
+ token?: string;
7
+ onLoginSuccess?: (data: Partial<LoginData>) => void;
8
+ backLogin?: () => void;
9
+ onResendEmail: () => void;
10
+ loginData?: Partial<LoginData>;
11
+ networkId?: string;
12
+ }
13
+ export declare const LoginWithEmail: React.FC<LoginWithEmailProps>;
14
+ export {};
@@ -0,0 +1,192 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useEffect, useRef, useCallback, useState } from 'react';
3
+ import { Button, Flex, Typography } from 'antd';
4
+ import { get, isEmpty } from 'lodash';
5
+ import { useImmer } from 'use-immer';
6
+ import { isMobile } from 'react-device-detect';
7
+ import { useCountdown } from '@antscorp/antsomi-ui/es/hooks';
8
+ // Components
9
+ import { WidgetLayout } from '../WidgetLayout';
10
+ import loginStep2Image from '../../../../../assets/images/components/Login/loginStep2.png';
11
+ import { StyleButton, StyleInput, Text } from '../../styled';
12
+ import { Title } from '../WidgetLayout/styled';
13
+ import { maskEmail } from '../ChooseMethod/utils';
14
+ import { LOGIN_ERROR_TYPES } from '../../../Login/constants';
15
+ import { makeAuthenticationRequest } from '../../utils';
16
+ // Constants
17
+ const COUNTDOWN_SECONDS = 59;
18
+ const CODE_LENGTH = 6;
19
+ const { Text: TextAntsomiUI } = Typography;
20
+ const initialState = {
21
+ code: '',
22
+ isTrust: false,
23
+ codeError: false,
24
+ isLoading: false,
25
+ isShowResend: false,
26
+ isDisableResend: false,
27
+ isTooManyMistakes: false,
28
+ };
29
+ export const LoginWithEmail = ({ loginData, domainLogin, codeKey = 'code', token = '', onLoginSuccess, backLogin, onResendEmail, networkId, }) => {
30
+ const [state, setState] = useImmer(initialState);
31
+ const errorRef = useRef(false);
32
+ const [errorMessageCode, setErrorMessageCode] = useState(null);
33
+ const errorCodeSend = get(loginData, 'errorCode', '');
34
+ const retryAfter = get(loginData, 'retryAfter');
35
+ const userEmail = get(loginData, 'personal.email', '');
36
+ const countdownOptions = {
37
+ autoStart: true,
38
+ onComplete: () => {
39
+ setState(draft => {
40
+ draft.isShowResend = true;
41
+ });
42
+ },
43
+ };
44
+ const countdownIncorrectAttempts = {
45
+ autoStart: false,
46
+ onComplete: () => {
47
+ setState(draft => {
48
+ draft.isDisableResend = false;
49
+ draft.isShowResend = true;
50
+ draft.isTooManyMistakes = false;
51
+ });
52
+ setErrorMessageCode('');
53
+ },
54
+ };
55
+ const { resetAndStartWithTime, seconds } = useCountdown(COUNTDOWN_SECONDS, countdownOptions);
56
+ const { resetAndStartWithTime: resetCountDownIncorrectAttempts } = useCountdown(0, countdownIncorrectAttempts);
57
+ useEffect(() => {
58
+ if (errorCodeSend) {
59
+ if (errorCodeSend === LOGIN_ERROR_TYPES.SEND_LIMIT_REACHED.type) {
60
+ setState(draft => {
61
+ draft.isDisableResend = true;
62
+ draft.isShowResend = true;
63
+ });
64
+ }
65
+ if (errorCodeSend === LOGIN_ERROR_TYPES.TOO_MANY_ATTEMPTS.type && retryAfter > 0) {
66
+ setState(draft => {
67
+ draft.isDisableResend = true;
68
+ draft.isShowResend = true;
69
+ draft.isTooManyMistakes = true;
70
+ });
71
+ resetCountDownIncorrectAttempts(+retryAfter);
72
+ }
73
+ setErrorMessageCode(errorCodeSend);
74
+ }
75
+ if (+retryAfter > 0 && errorCodeSend === LOGIN_ERROR_TYPES.SEND_LIMIT_REACHED.type) {
76
+ resetAndStartWithTime(+retryAfter);
77
+ setState(draft => {
78
+ draft.isShowResend = false;
79
+ });
80
+ }
81
+ if (errorCodeSend === 'RESEND_TOO_SOON' && +retryAfter > 0) {
82
+ resetAndStartWithTime(+retryAfter);
83
+ }
84
+ }, [errorCodeSend, retryAfter, resetAndStartWithTime, resetCountDownIncorrectAttempts, setState]);
85
+ const handleAuthenticationSuccess = useCallback((response) => {
86
+ if (response.code === 200) {
87
+ onLoginSuccess?.(response.data);
88
+ }
89
+ else {
90
+ const errorCode = LOGIN_ERROR_TYPES[response.data.error];
91
+ if (errorCode) {
92
+ if (errorCode.type === LOGIN_ERROR_TYPES.SEND_LIMIT_REACHED.type) {
93
+ setState(draft => {
94
+ draft.isDisableResend = true;
95
+ });
96
+ }
97
+ if (response.data.error === LOGIN_ERROR_TYPES.TOO_MANY_ATTEMPTS.type &&
98
+ response.data.retryAfter > 0) {
99
+ setState(draft => {
100
+ draft.isDisableResend = true;
101
+ draft.isShowResend = true;
102
+ draft.isTooManyMistakes = true;
103
+ });
104
+ resetCountDownIncorrectAttempts(+response.data.retryAfter);
105
+ }
106
+ setErrorMessageCode(errorCode.type);
107
+ }
108
+ }
109
+ }, [onLoginSuccess, setState, resetCountDownIncorrectAttempts]);
110
+ const onChangeLoading = useCallback((isLoading) => {
111
+ setState(draft => {
112
+ draft.isLoading = isLoading;
113
+ });
114
+ }, [setState]);
115
+ const signIn = useCallback(() => {
116
+ errorRef.current = true;
117
+ if (!token) {
118
+ return;
119
+ }
120
+ if (isEmpty(state.code)) {
121
+ setState(draft => {
122
+ draft.codeError = true;
123
+ });
124
+ return;
125
+ }
126
+ const verificationParams = {
127
+ auth_type: 'email',
128
+ [codeKey]: state.code,
129
+ token,
130
+ trust_key: null,
131
+ app_id: networkId,
132
+ };
133
+ onChangeLoading(true);
134
+ makeAuthenticationRequest({
135
+ verificationParams,
136
+ domainLogin,
137
+ onLoading: onChangeLoading,
138
+ handleAuthenticationSuccess,
139
+ });
140
+ }, [
141
+ token,
142
+ state.code,
143
+ codeKey,
144
+ onChangeLoading,
145
+ domainLogin,
146
+ handleAuthenticationSuccess,
147
+ setState,
148
+ networkId,
149
+ ]);
150
+ const handleBack = useCallback(() => {
151
+ backLogin?.();
152
+ }, [backLogin]);
153
+ const onResendCode = useCallback(() => {
154
+ onResendEmail();
155
+ setState(draft => {
156
+ draft.isShowResend = false;
157
+ draft.code = '';
158
+ draft.codeError = false;
159
+ });
160
+ resetAndStartWithTime(COUNTDOWN_SECONDS);
161
+ }, [onResendEmail, setState, resetAndStartWithTime]);
162
+ const handleCodeChange = useCallback((e) => {
163
+ const newCode = e.target.value;
164
+ setState(draft => {
165
+ draft.code = newCode;
166
+ });
167
+ errorRef.current = true;
168
+ }, [setState]);
169
+ const renderErrorMessages = () => {
170
+ let errMsg = null;
171
+ if (state.codeError && isEmpty(state.code)) {
172
+ errMsg = _jsx(TextAntsomiUI, { type: "danger", children: "Invalid code, please try again." });
173
+ }
174
+ if (errorMessageCode && LOGIN_ERROR_TYPES[errorMessageCode]) {
175
+ errMsg = (_jsx(TextAntsomiUI, { type: "danger", children: LOGIN_ERROR_TYPES[errorMessageCode].message }));
176
+ }
177
+ return errMsg;
178
+ };
179
+ const renderResendSection = () => {
180
+ const maskedEmail = maskEmail(userEmail);
181
+ const baseText = `Please enter the 6-digit code send to ${maskedEmail} Haven't received it? `;
182
+ return (_jsx(Flex, { gap: 5, align: "center", children: _jsxs(Text, { isMobile: isMobile, color: "#595959", children: [baseText, state.isShowResend ? (_jsx(Text, { color: state.isDisableResend ? '#a2a2a2' : '#005eb8', onClick: state.isDisableResend ? undefined : onResendCode, isMobile: isMobile, style: { cursor: state.isDisableResend ? 'not-allowed' : 'pointer' }, children: "Resend." })) : (`Resend code in ${seconds}s.`)] }) }));
183
+ };
184
+ const renderCodeInput = () => (_jsxs(Flex, { vertical: true, gap: 10, children: [_jsx(StyleInput, { isMobile: isMobile, maxLength: CODE_LENGTH, placeholder: "Input your code", value: state.code, onChange: handleCodeChange, status: errorRef.current && state.codeError ? 'error' : undefined, disabled: state.isTooManyMistakes }), renderErrorMessages()] }));
185
+ const renderActionButtons = () => (_jsxs(Flex, { vertical: true, gap: isMobile ? 30 : 15, children: [_jsx(StyleButton, { isMobile: isMobile, type: "primary", onClick: signIn, loading: state.isLoading, disabled: state.isTooManyMistakes, children: "Verify" }), _jsx(StyleButton, { isMobile: isMobile, onClick: handleBack, type: "text", children: "Back to login" })] }));
186
+ const renderAlternativeSignIn = () => (_jsx(Flex, { justify: "center", children: _jsx(Button, { type: "text", onClick: handleBack, style: {
187
+ fontSize: isMobile ? '16px' : '14px',
188
+ }, children: "Sign in with a different account" }) }));
189
+ const renderContent = () => (_jsxs(Flex, { vertical: true, gap: 50, style: { marginTop: 20 }, children: [_jsxs(Flex, { vertical: true, gap: 20, align: "center", children: [_jsx("img", { src: loginStep2Image, alt: "Identity Verification" }), _jsx(Text, { isMobile: isMobile, color: "#595959", children: "For added security, we need to verify your identity." })] }), _jsxs(Flex, { vertical: true, gap: isMobile ? 10 : 15, children: [renderResendSection(), _jsx(Flex, { vertical: true, gap: isMobile ? 20 : 11, children: renderCodeInput() }), _jsx(Flex, { vertical: true, gap: isMobile ? 30 : 15, style: { marginTop: isMobile ? 20 : 15 }, children: renderActionButtons() })] })] }));
190
+ const renderFooter = () => renderAlternativeSignIn();
191
+ return (_jsx(WidgetLayout, { header: null, isShowLogo: false, title: _jsx(Title, { isMobile: isMobile, style: { marginTop: 20 }, children: "Identity Verification" }), gapContent: 30, content: renderContent(), footer: renderFooter() }));
192
+ };
@@ -0,0 +1 @@
1
+ export * from './LoginWithEmail';
@@ -0,0 +1 @@
1
+ export * from './LoginWithEmail';
@@ -1,5 +1,5 @@
1
1
  import styled from 'styled-components';
2
- export const TextInfo = styled.span `
3
- color: #7f7f7f;
4
- font-size: ${(props) => (props.isMobile ? ' 13px !important' : '11px')};
2
+ export const TextInfo = styled.span `
3
+ color: #7f7f7f;
4
+ font-size: ${(props) => (props.isMobile ? ' 13px !important' : '11px')};
5
5
  `;
@@ -0,0 +1,12 @@
1
+ import React from 'react';
2
+ import { LoginData } from '../../types';
3
+ interface LoginWithGGProps {
4
+ domainLogin: string;
5
+ codeKey?: string;
6
+ token?: string;
7
+ onLoginSuccess?: (data: Partial<LoginData>) => void;
8
+ backLogin?: () => void;
9
+ networkId?: string;
10
+ }
11
+ export declare const LoginWithGG: React.FC<LoginWithGGProps>;
12
+ export {};
@@ -0,0 +1,107 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useEffect, useRef, useCallback } from 'react';
3
+ import { Button, Flex, Typography } from 'antd';
4
+ import { useImmer } from 'use-immer';
5
+ import { isMobile } from 'react-device-detect';
6
+ // Components
7
+ import { WidgetLayout } from '../WidgetLayout';
8
+ import { IconInfo } from '../../../Login/components/IconInfo';
9
+ // Images
10
+ import step2 from '../../../../../assets/images/components/Login/step2.png';
11
+ import loginStep2Image from '../../../../../assets/images/components/Login/loginStep2.png';
12
+ import { StyleButton, StyleInput, Text } from '../../styled';
13
+ import { Title } from '../WidgetLayout/styled';
14
+ import { makeAuthenticationRequest } from '../../utils';
15
+ // Constants
16
+ const CODE_LENGTH = 6;
17
+ const { Text: TextAntsomiUI } = Typography;
18
+ const initialState = {
19
+ code: '',
20
+ isTrust: false,
21
+ codeError: true,
22
+ isLoading: false,
23
+ count: 0,
24
+ };
25
+ export const LoginWithGG = ({ domainLogin, codeKey = 'code', token = '', onLoginSuccess, backLogin, networkId, }) => {
26
+ const [state, setState] = useImmer(initialState);
27
+ const errorRef = useRef(false);
28
+ const handleAuthenticationSuccess = useCallback((response) => {
29
+ if (response.code === 200) {
30
+ onLoginSuccess?.(response.data);
31
+ }
32
+ else {
33
+ setState(draft => {
34
+ draft.codeError = true;
35
+ });
36
+ }
37
+ }, [onLoginSuccess, setState]);
38
+ const onChangeLoading = useCallback((isLoading) => {
39
+ setState(draft => {
40
+ draft.isLoading = isLoading;
41
+ });
42
+ }, [setState]);
43
+ const signIn = useCallback(() => {
44
+ errorRef.current = true;
45
+ setState(draft => {
46
+ draft.count += 1;
47
+ });
48
+ if (!token || state.codeError) {
49
+ return;
50
+ }
51
+ const verificationParams = {
52
+ [codeKey]: state.code,
53
+ token,
54
+ trust_key: null,
55
+ app_id: networkId,
56
+ };
57
+ setState(draft => {
58
+ draft.isLoading = true;
59
+ });
60
+ makeAuthenticationRequest({
61
+ verificationParams,
62
+ domainLogin,
63
+ onLoading: onChangeLoading,
64
+ handleAuthenticationSuccess,
65
+ });
66
+ }, [
67
+ token,
68
+ state.codeError,
69
+ state.code,
70
+ codeKey,
71
+ networkId,
72
+ setState,
73
+ domainLogin,
74
+ onChangeLoading,
75
+ handleAuthenticationSuccess,
76
+ ]);
77
+ const handleBack = useCallback(() => {
78
+ backLogin?.();
79
+ }, [backLogin]);
80
+ const handleCodeChange = useCallback((e) => {
81
+ const newCode = e.target.value;
82
+ setState(draft => {
83
+ draft.code = newCode;
84
+ });
85
+ errorRef.current = true;
86
+ }, [setState]);
87
+ // Validate code on change
88
+ useEffect(() => {
89
+ setState(draft => {
90
+ draft.codeError = !state.code?.trim();
91
+ });
92
+ }, [state.code, setState]);
93
+ const renderInstructionSection = () => (_jsxs(Flex, { gap: 5, align: "center", children: [_jsx(Text, { isMobile: isMobile, color: "#595959", children: "Please enter the 6-digit code registered to your device." }), _jsx(IconInfo, { image: step2, title: _jsx(TextAntsomiUI, { style: {
94
+ marginTop: 20,
95
+ textAlign: 'center',
96
+ }, children: _jsxs(Text, { isMobile: isMobile, children: ["Open Google Authenticator and enter the code from ", _jsx("b", { children: "antsomi.com" })] }) }) })] }));
97
+ const renderCodeInput = () => (_jsxs(Flex, { vertical: true, gap: 10, children: [_jsx(StyleInput, { isMobile: isMobile, maxLength: CODE_LENGTH, placeholder: "Input your code", value: state.code, onChange: handleCodeChange, status: errorRef.current && state.codeError ? 'error' : undefined }), errorRef.current && state.codeError && (_jsx(TextAntsomiUI, { type: "danger", children: "Invalid code, please try again" }))] }));
98
+ const renderActionButtons = () => (_jsxs(Flex, { vertical: true, gap: isMobile ? 30 : 15, children: [_jsx(StyleButton, { isMobile: isMobile, type: "primary", onClick: signIn, loading: state.isLoading, children: "Verify" }), _jsx(StyleButton, { isMobile: isMobile, onClick: handleBack, type: "text", children: "Back to login" })] }));
99
+ const renderAlternativeSignIn = () => (_jsx(Flex, { justify: "center", children: _jsx(Button, { type: "text", onClick: handleBack, style: {
100
+ fontSize: isMobile ? '16px' : '14px',
101
+ }, children: "Sign in with a different account" }) }));
102
+ const renderHeaderSection = () => (_jsxs(Flex, { vertical: true, gap: 20, align: "center", children: [_jsx("img", { src: loginStep2Image, alt: "Identity Verification Step" }), _jsx(Text, { isMobile: isMobile, color: "#595959", children: "For added security, we need to verify your identity." })] }));
103
+ const renderInputSection = () => (_jsxs(Flex, { vertical: true, gap: isMobile ? 10 : 15, children: [renderInstructionSection(), _jsx(Flex, { vertical: true, gap: isMobile ? 20 : 11, children: renderCodeInput() }), _jsx(Flex, { vertical: true, gap: isMobile ? 30 : 15, style: { marginTop: isMobile ? 20 : 15 }, children: renderActionButtons() })] }));
104
+ const renderContent = () => (_jsxs(Flex, { vertical: true, gap: 50, style: { marginTop: 20 }, children: [renderHeaderSection(), renderInputSection()] }));
105
+ const renderFooter = () => renderAlternativeSignIn();
106
+ return (_jsx(WidgetLayout, { header: null, isShowLogo: false, title: _jsx(Title, { isMobile: isMobile, style: { marginTop: 20 }, children: "Identity Verification" }), gapContent: 30, content: renderContent(), footer: renderFooter() }));
107
+ };
@@ -0,0 +1 @@
1
+ export * from './LoginWithGG';
@@ -0,0 +1 @@
1
+ export * from './LoginWithGG';
@@ -0,0 +1,3 @@
1
+ export declare const TextInfo: import("styled-components").StyledComponent<"span", any, {
2
+ isMobile: boolean;
3
+ }, never>;
@@ -0,0 +1,5 @@
1
+ import styled from 'styled-components';
2
+ export const TextInfo = styled.span `
3
+ color: #7f7f7f;
4
+ font-size: ${(props) => (props.isMobile ? ' 13px !important' : '11px')};
5
+ `;
@@ -0,0 +1,14 @@
1
+ import React from 'react';
2
+ import { LoginData } from '../../types';
3
+ type TSignIn = {
4
+ domainLogin: string;
5
+ networkId?: string;
6
+ onLoginSuccess?: (data: Partial<LoginData>) => void;
7
+ userNameKey?: string;
8
+ passwordKey?: string;
9
+ setAuthenInfo: (info: {
10
+ email: string;
11
+ }) => void;
12
+ };
13
+ export declare const SignIn: React.FC<TSignIn>;
14
+ export {};
@@ -0,0 +1,66 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ // Libraries
3
+ import { useState } from 'react';
4
+ import { Flex, Form } from 'antd';
5
+ // Styled
6
+ import { StyleButton, StyledForm, StyleInput, WrapperImage } from '../../styled';
7
+ // Images
8
+ import logoAntsomi from '../../../../../assets/images/logo/antsomi_logo.png';
9
+ import { Wrapper } from './styled';
10
+ import { isMobile } from 'react-device-detect';
11
+ import Icon from '@antscorp/icons';
12
+ export const SignIn = props => {
13
+ const { domainLogin, networkId, onLoginSuccess, userNameKey = 'user_name', passwordKey = 'password', setAuthenInfo, } = props;
14
+ const [form] = Form.useForm();
15
+ const loginUrl = `${domainLogin}api/account/authenticate`;
16
+ const [loginError, setLoginError] = useState(false);
17
+ const [isLoading, setLoading] = useState(false);
18
+ const onFinish = values => {
19
+ const { password, email } = values;
20
+ const params = {
21
+ [userNameKey]: email,
22
+ [passwordKey]: password,
23
+ app_id: networkId,
24
+ };
25
+ setAuthenInfo({
26
+ email,
27
+ });
28
+ setLoading(true);
29
+ const xhr = new XMLHttpRequest();
30
+ xhr.open('POST', loginUrl, true);
31
+ // Send the proper header information along with the request
32
+ xhr.setRequestHeader('Content-Type', 'application/json');
33
+ xhr.withCredentials = false;
34
+ xhr.onreadystatechange = () => {
35
+ if (xhr.readyState === XMLHttpRequest.DONE) {
36
+ setLoading(false);
37
+ }
38
+ if (xhr.readyState === XMLHttpRequest.DONE && xhr.status === 200) {
39
+ const response = JSON.parse(xhr.responseText);
40
+ if (response?.data?.token) {
41
+ if (onLoginSuccess && typeof onLoginSuccess === 'function') {
42
+ onLoginSuccess({ ...response.data, isCheckG2FA: true, password });
43
+ }
44
+ }
45
+ else {
46
+ setLoginError(true);
47
+ }
48
+ }
49
+ };
50
+ xhr.send(JSON.stringify(params));
51
+ };
52
+ return (_jsxs(Wrapper, { isMobile: isMobile, children: [_jsx(Flex, { align: "center", justify: "center", children: _jsx(WrapperImage, { src: logoAntsomi, alt: "logosaS" }) }), _jsxs(StyledForm, { form: form, name: "login_form", onFinish: onFinish, scrollToFirstError: true, style: { width: '100%' }, isMobile: isMobile, validateTrigger: "onSubmit", children: [_jsx(Form.Item, { name: "email", rules: [
53
+ {
54
+ required: true,
55
+ message: 'Please enter your email',
56
+ pattern: /^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/,
57
+ },
58
+ ], children: _jsx(StyleInput, { "data-test-id": "email", isMobile: isMobile, placeholder: "Email" }) }), _jsx(Form.Item, { name: "password", rules: [
59
+ { required: true, message: 'Please enter your password' },
60
+ { min: 6, message: 'Password must be at least 6 characters long' },
61
+ ], style: { marginTop: 15 }, children: _jsx(StyleInput.Password, { placeholder: "Password", "data-test-id": "password", iconRender: visible => visible ? (_jsx(Icon, { type: "icon-ants-eye", style: {
62
+ color: '#595959',
63
+ } })) : (_jsx(Icon, { type: "icon-ants-invisible", style: {
64
+ color: '#595959',
65
+ } })) }) }), loginError && (_jsx("span", { style: { color: 'red', fontSize: 11 }, children: "Email or password is invalid" })), _jsx(Flex, { style: { width: '100%', marginTop: '40px' }, vertical: true, className: "", children: _jsx(Form.Item, { children: _jsx(StyleButton, { isMobile: isMobile, type: "primary", htmlType: "submit", style: { width: '100%', marginBottom: isMobile ? 15 : 0 }, loading: isLoading, "data-test-id": "button__sign-in", children: "Sign in" }) }) })] })] }));
66
+ };
@@ -0,0 +1 @@
1
+ export * from './SignIn';
@@ -0,0 +1 @@
1
+ export * from './SignIn';
@@ -0,0 +1,3 @@
1
+ export declare const Wrapper: import("styled-components").StyledComponent<"div", any, {
2
+ isMobile: boolean;
3
+ }, never>;
@@ -0,0 +1,10 @@
1
+ import styled from 'styled-components';
2
+ export const Wrapper = styled.div `
3
+ display: flex;
4
+ flex-direction: column;
5
+ gap: 40px;
6
+
7
+ width: 100%;
8
+
9
+ ${(props) => !props.isMobile ? 'padding: 100px 50px' : ' padding: 100px 30px'}
10
+ `;
@@ -0,0 +1,13 @@
1
+ import React from 'react';
2
+ type TWidgetLayout = {
3
+ header?: React.ReactNode | string;
4
+ title?: React.ReactNode | string;
5
+ content?: React.ReactNode | string;
6
+ isShowLogo?: boolean;
7
+ footer?: React.ReactNode;
8
+ urlLogo?: string;
9
+ gapContent?: number;
10
+ paddingContent?: string | number;
11
+ };
12
+ export declare const WidgetLayout: React.FC<TWidgetLayout>;
13
+ export {};
@@ -0,0 +1,18 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ // Libraries
3
+ import { Flex } from 'antd';
4
+ import { isEmpty } from 'lodash';
5
+ import { isMobile } from 'react-device-detect';
6
+ // Styled
7
+ import { Title, WidgetLayoutMain } from './styled';
8
+ import { WrapperImage } from '../../styled';
9
+ // Images
10
+ import logoAntsomi from '../../../../../assets/images/logo/antsomi_logo.png';
11
+ export const WidgetLayout = props => {
12
+ const { header, title, content, isShowLogo = true, footer, urlLogo, gapContent = 40, paddingContent = '0 30px', } = props;
13
+ return (_jsxs(WidgetLayoutMain, { vertical: true, gap: 40, children: [isShowLogo && (_jsx(Flex, { align: "center", justify: "center", children: !isEmpty(urlLogo) ? (_jsx(WrapperImage, { src: urlLogo, alt: "" })) : typeof LOGO_NETWORK_DOMAIN !== 'undefined' && LOGO_NETWORK_DOMAIN !== '' ? (_jsx(WrapperImage, { src: LOGO_NETWORK_DOMAIN, alt: "" })) : (_jsx(WrapperImage, { src: logoAntsomi, alt: "logosaS" })) })), _jsxs(Flex, { vertical: true, gap: gapContent, style: { height: '100%', padding: paddingContent }, children: [_jsx(Flex, { align: "center", justify: "center", style: {
14
+ paddingTop: '40px',
15
+ }, children: header }), _jsx(Title, { isMobile: isMobile, children: title }), _jsxs(Flex, { vertical: true, justify: "space-between", flex: 1, gap: gapContent, children: [content, _jsx(Flex, { vertical: true, style: {
16
+ paddingBottom: '40px',
17
+ }, children: footer })] })] })] }));
18
+ };
@@ -0,0 +1 @@
1
+ export * from './WidgetLayout';
@@ -0,0 +1 @@
1
+ export * from './WidgetLayout';