@antscorp/antsomi-ui 2.0.114 → 2.0.115

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 (287) hide show
  1. package/CHANGELOG.md +92 -0
  2. package/README.md +78 -78
  3. package/es/__mocks__/1000_city.json +802 -802
  4. package/es/__mocks__/sql-query.json +56 -56
  5. package/es/assets/css/main.scss +8 -8
  6. package/es/assets/images/feedback.svg +3 -3
  7. package/es/assets/svg/mobile-frame.svg +3 -3
  8. package/es/assets/svg/warning-icon.svg +5 -5
  9. package/es/components/atoms/Alert/Alert.js +28 -28
  10. package/es/components/atoms/ContentEditable/styled.js +16 -16
  11. package/es/components/atoms/DividerPure/styled.js +35 -35
  12. package/es/components/atoms/Eyedropper/styled.js +39 -39
  13. package/es/components/atoms/Icon/index.js +19 -19
  14. package/es/components/atoms/Iframe/Iframe.js +18 -18
  15. package/es/components/atoms/Input/styled.js +104 -104
  16. package/es/components/atoms/InputDynamic/styled.js +284 -284
  17. package/es/components/atoms/MobileBrandingBar/styled.js +21 -21
  18. package/es/components/atoms/MobileFrame/styled.js +30 -30
  19. package/es/components/atoms/MobileFrameV2/styled.js +42 -42
  20. package/es/components/atoms/MobileFrameV3/styled.js +31 -31
  21. package/es/components/atoms/NotificationStatus/styled.js +10 -10
  22. package/es/components/atoms/PreviewTabs/styled.js +69 -69
  23. package/es/components/atoms/Radio/index.js +16 -16
  24. package/es/components/atoms/ReactIframe/ReactIframe.js +5 -5
  25. package/es/components/atoms/ReactIframe/styled.js +9 -9
  26. package/es/components/atoms/RequiredLabel/styled.js +3 -3
  27. package/es/components/atoms/ScrollBox/index.js +5 -5
  28. package/es/components/atoms/Scrollbars/styled.js +21 -21
  29. package/es/components/atoms/SelectAssociatedTag/SelectAssociatedTag.d.ts +5 -0
  30. package/es/components/atoms/SelectAssociatedTag/SelectAssociatedTag.js +15 -0
  31. package/es/components/atoms/SelectAssociatedTag/SelectTag.d.ts +4 -0
  32. package/es/components/atoms/SelectAssociatedTag/SelectTag.js +26 -0
  33. package/es/components/atoms/SelectAssociatedTag/constants.d.ts +11 -0
  34. package/es/components/atoms/SelectAssociatedTag/constants.js +42 -0
  35. package/es/components/atoms/SelectAssociatedTag/index.d.ts +3 -0
  36. package/es/components/atoms/SelectAssociatedTag/index.js +2 -0
  37. package/es/components/atoms/SelectAssociatedTag/styled.d.ts +7 -0
  38. package/es/components/atoms/SelectAssociatedTag/styled.js +60 -0
  39. package/es/components/atoms/SelectAssociatedTag/types.d.ts +76 -0
  40. package/es/components/atoms/SelectAssociatedTag/types.js +1 -0
  41. package/es/components/atoms/SlideBar/styled.js +194 -194
  42. package/es/components/atoms/Slider/styled.js +31 -31
  43. package/es/components/atoms/Space/Space.js +4 -4
  44. package/es/components/atoms/Spin/styled.js +11 -11
  45. package/es/components/atoms/Steps/styled.js +244 -244
  46. package/es/components/atoms/Switch/styled.js +56 -56
  47. package/es/components/atoms/Tag/Tag.js +10 -10
  48. package/es/components/atoms/Text/styled.js +34 -34
  49. package/es/components/atoms/index.d.ts +1 -0
  50. package/es/components/atoms/index.js +1 -0
  51. package/es/components/icons/CircleInfoIcon.js +2 -2
  52. package/es/components/icons/DomainManagementIcon.js +1 -1
  53. package/es/components/icons/LazyIcon/LazyIcon.d.ts +2 -0
  54. package/es/components/icons/LazyIcon/LazyIcon.js +2 -0
  55. package/es/components/icons/LoadingIcon.js +33 -33
  56. package/es/components/icons/document/styled.js +43 -43
  57. package/es/components/index.scss +2 -2
  58. package/es/components/molecules/AccessDenied/styled.js +28 -28
  59. package/es/components/molecules/AccountSelection/styled.js +110 -110
  60. package/es/components/molecules/AddDynamicContent/styled.js +23 -23
  61. package/es/components/molecules/AlignSetting/styled.js +4 -4
  62. package/es/components/molecules/ApplyPopupContent/styled.js +32 -32
  63. package/es/components/molecules/CalendarSelection/components/AutoUpdateTo/styled.js +8 -8
  64. package/es/components/molecules/CalendarSelection/components/CustomPicker/styled.js +79 -79
  65. package/es/components/molecules/CalendarSelection/components/Footer/styled.js +4 -4
  66. package/es/components/molecules/CalendarSelection/components/RangePicker/styled.js +21 -21
  67. package/es/components/molecules/CalendarSelection/components/RangeSelectOptions/components/Option/Option.js +26 -26
  68. package/es/components/molecules/CalendarSelection/components/RangeSelectOptions/styled.js +30 -30
  69. package/es/components/molecules/CalendarSelection/components/TimeRangeDisplay/styled.js +26 -26
  70. package/es/components/molecules/CalendarSelection/styled.js +8 -8
  71. package/es/components/molecules/CaptureScreen/components/CommentBox/styled.js +119 -119
  72. package/es/components/molecules/CaptureScreen/components/Cursor/styled.js +67 -67
  73. package/es/components/molecules/CaptureScreen/styled.js +240 -240
  74. package/es/components/molecules/ChartTab/components/styled.js +24 -24
  75. package/es/components/molecules/ChartTab/styled.js +20 -20
  76. package/es/components/molecules/ChatBox/AntsomiAI.js +8 -8
  77. package/es/components/molecules/ChatBox/ChatBoxInsight/QuestionItem.js +9 -9
  78. package/es/components/molecules/ChatBox/ChatBoxInsight/styled.js +365 -365
  79. package/es/components/molecules/ChatBox/styled.js +324 -324
  80. package/es/components/molecules/CodeStructure/styled.js +5 -5
  81. package/es/components/molecules/ColorPicker/ChromePicker/styled.js +10 -10
  82. package/es/components/molecules/ColorPicker/CustomPicker/styled.js +89 -89
  83. package/es/components/molecules/ColorPicker/SketchPicker/styled.js +5 -5
  84. package/es/components/molecules/ColorPicker/styled.js +7 -7
  85. package/es/components/molecules/ColorSetting/styled.js +39 -39
  86. package/es/components/molecules/DatePicker/components/AdvancedPicker/styled.js +110 -110
  87. package/es/components/molecules/DatePickerV2/styled.js +6 -6
  88. package/es/components/molecules/DisplayFormat/styled.js +12 -12
  89. package/es/components/molecules/DrawerDetail/components/ToggleDrawerSizeButton.js +24 -24
  90. package/es/components/molecules/DrawerDetail/styled.js +109 -109
  91. package/es/components/molecules/Dropdown/style.scss +11 -11
  92. package/es/components/molecules/Dropdown/styled.js +28 -28
  93. package/es/components/molecules/EdgeSetting/styled.js +10 -10
  94. package/es/components/molecules/EditableName/styled.js +70 -70
  95. package/es/components/molecules/EditingList/styled.js +29 -29
  96. package/es/components/molecules/EditingListV2/components/List/List.js +9 -9
  97. package/es/components/molecules/EditorTab/styled.js +156 -156
  98. package/es/components/molecules/EmojiCollections/styled.js +22 -22
  99. package/es/components/molecules/EmojiPopover/styled.js +4 -4
  100. package/es/components/molecules/EmptyData/styled.js +53 -53
  101. package/es/components/molecules/EyedropperButton/styled.js +19 -19
  102. package/es/components/molecules/FontSizeInput/index.scss +15 -15
  103. package/es/components/molecules/FontSizeInput/styled.js +31 -31
  104. package/es/components/molecules/GradientSetting/styled.js +57 -57
  105. package/es/components/molecules/HeaderV2/styled.js +70 -70
  106. package/es/components/molecules/IconSelection/styled.js +69 -69
  107. package/es/components/molecules/ImageEditor/components/ModalShortcut.js +21 -21
  108. package/es/components/molecules/ImageEditor/styled.js +5 -5
  109. package/es/components/molecules/ImagePreview/styled.js +3 -3
  110. package/es/components/molecules/InputNumberWithUnit/styled.js +14 -14
  111. package/es/components/molecules/InputSearch/styled.js +41 -41
  112. package/es/components/molecules/InputSelectAttribute/index.d.ts +25 -0
  113. package/es/components/molecules/InputSelectAttribute/index.js +124 -0
  114. package/es/components/molecules/InputSelectAttribute/styled.d.ts +14 -0
  115. package/es/components/molecules/InputSelectAttribute/styled.js +33 -0
  116. package/es/components/molecules/ItemNotFound/styled.js +26 -26
  117. package/es/components/molecules/MatchAnySelect/components/ExtendValuePopup.js +8 -8
  118. package/es/components/molecules/MatchAnySelect/styled.js +247 -247
  119. package/es/components/molecules/Modal/styled.js +63 -63
  120. package/es/components/molecules/ModalSelect/styled.js +152 -152
  121. package/es/components/molecules/ModalV2/styled.js +27 -27
  122. package/es/components/molecules/PopupDraggable/styled.js +57 -57
  123. package/es/components/molecules/PreviewModal/styled.js +26 -26
  124. package/es/components/molecules/ProcessLoading/styled.js +2 -2
  125. package/es/components/molecules/QuillEditor/CustomToolbar.js +3165 -3165
  126. package/es/components/molecules/QuillEditor/EditorToolbar.js +7 -7
  127. package/es/components/molecules/QuillEditor/styled.js +25 -25
  128. package/es/components/molecules/RadioGroup/styled.js +9 -9
  129. package/es/components/molecules/RequestAccess/styled.js +38 -38
  130. package/es/components/molecules/ResizeGrid/components/Cell/styled.js +77 -77
  131. package/es/components/molecules/ResizeGrid/styled.js +50 -50
  132. package/es/components/molecules/RichMenu/RichMenuBlock/RichMenuCell/styled.js +118 -118
  133. package/es/components/molecules/RichMenu/RichMenuBlock/styled.js +13 -13
  134. package/es/components/molecules/RichMenu/RichMenuChatBar/TypingChat/styled.js +40 -40
  135. package/es/components/molecules/RichMenu/RichMenuChatBar/styled.js +27 -27
  136. package/es/components/molecules/RichMenu/RichMenuMobileView/RichMenuMobileView.js +2 -2
  137. package/es/components/molecules/RichMenu/RichMenuMobileView/styled.js +38 -38
  138. package/es/components/molecules/SearchPopover/components/PopoverSelect/styled.js +36 -36
  139. package/es/components/molecules/SearchPopover/components/PopoverSelect/styles.scss +7 -7
  140. package/es/components/molecules/SearchPopover/styled.js +32 -32
  141. package/es/components/molecules/Select/styled.js +32 -32
  142. package/es/components/molecules/SelectAccount/styled.js +147 -147
  143. package/es/components/molecules/SelectEventAttribute/styled.js +8 -8
  144. package/es/components/molecules/SelectMulti/styled.js +62 -62
  145. package/es/components/molecules/SelectV2/styled.d.ts +3 -1
  146. package/es/components/molecules/SelectV2/styled.js +124 -124
  147. package/es/components/molecules/SettingWrapper/styled.js +12 -12
  148. package/es/components/molecules/ShareAccess/components/GeneralAccess/styled.js +56 -56
  149. package/es/components/molecules/ShareAccess/components/LayoutContent/styled.js +5 -5
  150. package/es/components/molecules/ShareAccess/components/ModalTransferOwnerShip/styled.js +15 -15
  151. package/es/components/molecules/ShareAccess/components/PeopleAccess/styled.js +63 -63
  152. package/es/components/molecules/ShareAccess/components/SearchUser/styled.js +31 -31
  153. package/es/components/molecules/SliderWithInputNumber/styled.js +2 -2
  154. package/es/components/molecules/Tabs/Tabs.js +11 -11
  155. package/es/components/molecules/TagifyInput/TagifyInput.js +209 -121
  156. package/es/components/molecules/TagifyInput/constants.d.ts +24 -2
  157. package/es/components/molecules/TagifyInput/constants.js +25 -2
  158. package/es/components/molecules/TagifyInput/patternHandlers.d.ts +12 -6
  159. package/es/components/molecules/TagifyInput/patternHandlers.js +88 -43
  160. package/es/components/molecules/TagifyInput/styled.js +37 -37
  161. package/es/components/molecules/TagifyInput/types.d.ts +24 -3
  162. package/es/components/molecules/TagifyInput/utils.d.ts +10 -1
  163. package/es/components/molecules/TagifyInput/utils.js +94 -16
  164. package/es/components/molecules/TagifyInput/utils.style.js +246 -261
  165. package/es/components/molecules/TemplateSaveAs/components/Category/Category.js +5 -5
  166. package/es/components/molecules/TemplateSaveAs/components/ImageSlider/styled.js +276 -276
  167. package/es/components/molecules/TemplateSaveAs/styled.js +134 -134
  168. package/es/components/molecules/ThumbnailCard/styled.js +92 -92
  169. package/es/components/molecules/Tree/styled.js +38 -38
  170. package/es/components/molecules/UnsubscribePreferences/styled.js +7 -7
  171. package/es/components/molecules/UnsubscribePreview/components/styled.js +53 -53
  172. package/es/components/molecules/UnsubscribePreview/styled.js +48 -48
  173. package/es/components/molecules/UploadImage/styled.js +114 -114
  174. package/es/components/molecules/VirtualizedMenu/styled.js +103 -103
  175. package/es/components/molecules/index.d.ts +1 -0
  176. package/es/components/molecules/index.js +1 -0
  177. package/es/components/molecules/index.scss +1 -1
  178. package/es/components/organism/AccountProfile/components/AccountSetting/components/EditableInput/styles.js +98 -98
  179. package/es/components/organism/AccountProfile/components/AccountSetting/components/LanguageSelector/styles.js +18 -18
  180. package/es/components/organism/AccountProfile/components/AccountSetting/styled.js +543 -543
  181. package/es/components/organism/AccountProfile/components/AccountSetting/styles.scss +39 -39
  182. package/es/components/organism/AccountSharing/AccountSharing.js +18 -10
  183. package/es/components/organism/AccountSharing/styled.js +336 -336
  184. package/es/components/organism/ActivityTimeline/__mocks__/event_tracking.json +1290 -1290
  185. package/es/components/organism/ActivityTimeline/__mocks__/timeline.json +1896 -1896
  186. package/es/components/organism/ActivityTimeline/components/ActionHistory/styled.js +28 -28
  187. package/es/components/organism/ActivityTimeline/components/CardMember/styled.js +60 -60
  188. package/es/components/organism/ActivityTimeline/components/ItemGroupEvent/styled.js +4 -4
  189. package/es/components/organism/ActivityTimeline/components/List/styled.js +77 -77
  190. package/es/components/organism/ActivityTimeline/components/ListItem/styled.js +37 -37
  191. package/es/components/organism/ActivityTimeline/components/ProductCard/styled.js +92 -92
  192. package/es/components/organism/ActivityTimeline/components/Redeem/styled.js +7 -7
  193. package/es/components/organism/ActivityTimeline/components/Slide/styled.js +20 -20
  194. package/es/components/organism/ActivityTimeline/components/TimeLineTitle/styled.js +7 -7
  195. package/es/components/organism/ActivityTimeline/components/TimelineSection/styled.js +69 -69
  196. package/es/components/organism/ActivityTimeline/styled.js +43 -43
  197. package/es/components/organism/ActivityTimeline/utils.js +168 -2
  198. package/es/components/organism/AlgorithmsSetting/styled.js +35 -35
  199. package/es/components/organism/BasicLogin/components/ChooseMethod/styled.js +19 -19
  200. package/es/components/organism/BasicLogin/components/LoginWithEmail/styled.js +3 -3
  201. package/es/components/organism/BasicLogin/components/LoginWithGG/styled.js +3 -3
  202. package/es/components/organism/BasicLogin/components/SignIn/styled.js +8 -8
  203. package/es/components/organism/BasicLogin/components/WidgetLayout/styled.js +18 -18
  204. package/es/components/organism/BasicLogin/styled.js +107 -107
  205. package/es/components/organism/ContentSources/styled.js +50 -50
  206. package/es/components/organism/DataTable/components/AddButton/index.js +8 -8
  207. package/es/components/organism/DataTable/components/ModifyColumn/styled.js +18 -18
  208. package/es/components/organism/DataTable/components/Pagination/styled.js +26 -26
  209. package/es/components/organism/DataTable/components/Table/styled.js +135 -135
  210. package/es/components/organism/DataTable/components/Toolbar/SearchPopover.js +17 -17
  211. package/es/components/organism/DataTable/components/Toolbar/styled.js +70 -70
  212. package/es/components/organism/DataTable/styled/index.js +84 -84
  213. package/es/components/organism/Filter/components/FilterCondition/styled.js +34 -34
  214. package/es/components/organism/Filter/styled.js +109 -109
  215. package/es/components/organism/FilterSetting/components/common/InputArray/styled.js +5 -5
  216. package/es/components/organism/FilterSetting/components/common/InputOrSelect/index.js +63 -63
  217. package/es/components/organism/FilterSetting/components/common/InputSelectMulti/ColumnSuggestion/index.js +31 -31
  218. package/es/components/organism/FilterSetting/components/common/InputSelectMulti/Tree/index.js +22 -22
  219. package/es/components/organism/FilterSetting/components/common/InputSelectMulti/index.js +55 -55
  220. package/es/components/organism/FilterSetting/styled.js +19 -19
  221. package/es/components/organism/Help/styled.js +267 -267
  222. package/es/components/organism/LeftMenu/components/HomeMenu/styled.js +39 -39
  223. package/es/components/organism/LeftMenu/components/common/ChildMenu/components/MenuItemImage/styled.js +16 -16
  224. package/es/components/organism/LeftMenu/components/common/ChildMenu/styled.js +156 -156
  225. package/es/components/organism/LeftMenu/hooks/usePermission.js +1 -1
  226. package/es/components/organism/LeftMenu/styled.js +214 -214
  227. package/es/components/organism/LeftMenu/utils/index.js +1 -1
  228. package/es/components/organism/Login/components/ChooseMethod/styled.js +19 -19
  229. package/es/components/organism/Login/components/ForgotPassword/styled.js +8 -8
  230. package/es/components/organism/Login/components/LoginSelectPortal/Item/styled.js +31 -31
  231. package/es/components/organism/Login/components/LoginSelectPortal/styled.js +3 -3
  232. package/es/components/organism/Login/components/LoginWithEmail/styled.js +3 -3
  233. package/es/components/organism/Login/components/LoginWithGG/styled.js +3 -3
  234. package/es/components/organism/Login/components/SetupGGAuthenticator/styled.js +7 -7
  235. package/es/components/organism/Login/components/SignIn/styled.js +8 -8
  236. package/es/components/organism/Login/components/VerifyAccount/styled.js +13 -13
  237. package/es/components/organism/Login/components/WidgetLayout/styled.js +18 -18
  238. package/es/components/organism/Login/styled.js +115 -115
  239. package/es/components/organism/Menu/styled.js +6 -6
  240. package/es/components/organism/ModifyColumnModal/styled.js +132 -132
  241. package/es/components/organism/Notification/styled.js +155 -155
  242. package/es/components/organism/PreviewCollections/Messages/SkeletonMessage/styled.js +14 -14
  243. package/es/components/organism/PreviewCollections/WhatsappMessage/CarouselMessage/styled.js +63 -63
  244. package/es/components/organism/PreviewCollections/constants.js +50 -50
  245. package/es/components/organism/PreviewCollections/styled.js +16 -16
  246. package/es/components/organism/PreviewTemplateModal/components/Banner/styled.js +78 -78
  247. package/es/components/organism/PreviewTemplateModal/components/Information/styled.js +52 -52
  248. package/es/components/organism/PreviewTemplateModal/components/SimilarTemplate/styled.js +18 -18
  249. package/es/components/organism/PreviewTemplateModal/components/ThumbnailSlider/styled.js +77 -77
  250. package/es/components/organism/PreviewTemplateModal/styled.js +21 -21
  251. package/es/components/organism/SQLGeneration/components/styled.js +354 -354
  252. package/es/components/organism/SQLGeneration/index.scss +1 -1
  253. package/es/components/organism/SQLGeneration/integrations/AceEditor/index.scss +4 -4
  254. package/es/components/organism/Table/CrossTabTable/components/CustomCell/styled.js +11 -11
  255. package/es/components/organism/Table/CrossTabTable/styled.js +11 -11
  256. package/es/components/organism/Table/ExplorePivotTable/components/CustomCell/styled.js +17 -17
  257. package/es/components/organism/Table/ExplorePivotTable/styled.js +11 -11
  258. package/es/components/organism/TextEditor/__mocks__/text-contennt.js +44 -44
  259. package/es/components/organism/TextEditor/index.scss +65 -65
  260. package/es/components/organism/TextEditor/stories/WithOldDynAndLink/froala-legacy-format.settings.json +95 -95
  261. package/es/components/organism/TextEditor/styled.js +54 -54
  262. package/es/components/organism/TextEditor/ui/Button/Button.js +22 -22
  263. package/es/components/organism/TextEditor/ui/DropdownButton/DropdownButton.js +13 -13
  264. package/es/components/organism/TextEditor/ui/FontPopover/styled.js +32 -32
  265. package/es/components/organism/TextEditor/ui/SplitButtonDropdown/styled.js +54 -54
  266. package/es/components/organism/TextEditor/ui/TextAlignSelect/TextAlignSelect.js +9 -9
  267. package/es/components/organism/TextEditor/ui/Toolbar/actions/FontSizeAction.js +11 -11
  268. package/es/components/organism/TicketEditor/styled.js +850 -850
  269. package/es/components/organism/TicketEditorV2/styled.js +839 -839
  270. package/es/components/organism/index.scss +2 -2
  271. package/es/components/template/Layout/Layout.js +10 -10
  272. package/es/components/template/Layout/components/RecommendationWorkspace/components/MenuMapping/components/OldLeftMenu/styled.js +73 -73
  273. package/es/components/template/Layout/components/RecommendationWorkspace/components/MenuMapping/styled.js +39 -39
  274. package/es/components/template/Layout/components/RecommendationWorkspace/components/RecommendationImage/styled.js +61 -61
  275. package/es/components/template/Layout/components/RecommendationWorkspace/styled.js +16 -16
  276. package/es/components/template/Layout/styled.js +84 -84
  277. package/es/components/template/TemplateListing/components/BlankTemplate/styled.js +21 -21
  278. package/es/components/template/TemplateListing/components/CategoryListing/styled.js +123 -123
  279. package/es/components/template/TemplateListing/components/Empty/styled.js +20 -20
  280. package/es/components/template/TemplateListing/stories/demo/styled.js +4 -4
  281. package/es/components/template/TemplateListing/styled/index.js +40 -40
  282. package/es/providers/ConfigProvider/GlobalStyle.js +1249 -1249
  283. package/es/styled/common.js +51 -51
  284. package/es/tests/styled.js +4 -4
  285. package/es/utils/cookie.js +9 -0
  286. package/es/utils/variables.js +7 -7
  287. package/package.json +276 -276
@@ -0,0 +1,124 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ // Libraries
3
+ import { memo, useCallback, useMemo, useState } from 'react';
4
+ import { get, has, keyBy, upperFirst } from 'lodash';
5
+ import { Flex, Form, Select, Tooltip, Typography } from 'antd';
6
+ // Translations
7
+ import { translate, translations } from '@antscorp/antsomi-ui/es/locales';
8
+ // Components
9
+ import Icon from '@antscorp/icons';
10
+ import { ModalV2 } from '../ModalV2';
11
+ import { StyledTag as Tag } from '@antscorp/antsomi-ui/es/components/molecules/SelectV2/styled';
12
+ import { StyledSelect } from './styled';
13
+ import { EmptyData } from '../EmptyData';
14
+ import { Dashboard30Icon, ErrorIcon } from '../../icons';
15
+ // Constants
16
+ import { THEME } from '@antscorp/antsomi-ui/es/constants';
17
+ import { TAG_TYPE } from '../TagifyInput';
18
+ const InputSelectAttribute = (props) => {
19
+ const { value, errorMsg, label, isErrorTag, sourceOptions = [], mapCodeOptions = {}, onChange, } = props;
20
+ const [form] = Form.useForm();
21
+ const sourceValue = Form.useWatch('source', form);
22
+ // States
23
+ const [openModal, setOpenModal] = useState(false);
24
+ const codeOptions = useMemo(() => {
25
+ if (sourceValue) {
26
+ return get(mapCodeOptions, sourceValue, []);
27
+ }
28
+ return [];
29
+ }, [sourceValue, mapCodeOptions]);
30
+ const initCodeTitleField = useMemo(() => {
31
+ if (sourceValue === TAG_TYPE.PROMOTION_CODE) {
32
+ return 'Allocated Code';
33
+ }
34
+ return upperFirst(translate(translations._ITEM_NAME_ATTRIBUTE, 'attribute'));
35
+ }, [sourceValue]);
36
+ const mapCodeBySource = useMemo(() => {
37
+ if (typeof value === 'string')
38
+ return {};
39
+ return keyBy(get(mapCodeOptions, value?.source, []), 'value');
40
+ }, [mapCodeOptions, value]);
41
+ const mapSourceOptions = useMemo(() => {
42
+ if (typeof value === 'string')
43
+ return {};
44
+ return keyBy(sourceOptions, 'value');
45
+ }, [sourceOptions, value]);
46
+ const getCodeDefaultBySource = useCallback((source) => get(mapCodeOptions, [source, '0', 'value'], ''), [mapCodeOptions]);
47
+ const onOpenModal = useCallback(() => {
48
+ if (value && typeof value !== 'string') {
49
+ const isExistCode = has(mapCodeBySource, [value?.code, 'label']);
50
+ const isExistSource = has(mapSourceOptions, [value?.source]);
51
+ form.setFieldsValue({
52
+ source: isExistSource ? value?.source : undefined,
53
+ code: isExistCode ? value?.code : undefined,
54
+ });
55
+ }
56
+ else {
57
+ const source = sourceOptions[0]?.value || '';
58
+ const code = getCodeDefaultBySource(source);
59
+ form.setFieldsValue({ source, code });
60
+ }
61
+ setOpenModal(true);
62
+ }, [value, mapCodeBySource, form, sourceOptions, mapSourceOptions, getCodeDefaultBySource]);
63
+ const onDeselect = useCallback(() => {
64
+ onChange({ value: '', valueType: 'input' });
65
+ }, [onChange]);
66
+ const onHideModal = useCallback(() => {
67
+ setOpenModal(false);
68
+ }, []);
69
+ const onAfterClose = useCallback(() => {
70
+ form.resetFields();
71
+ }, [form]);
72
+ const onOk = async () => {
73
+ try {
74
+ // Validate form fields before getting values
75
+ const values = await form.validateFields();
76
+ if (typeof values !== 'string') {
77
+ const newValue = {
78
+ source: values?.source,
79
+ code: values?.code,
80
+ };
81
+ onChange({ value: newValue, valueType: 'select' });
82
+ }
83
+ setOpenModal(false);
84
+ }
85
+ catch (errorInfo) {
86
+ // eslint-disable-next-line no-console
87
+ console.error('Validation Failed:', errorInfo);
88
+ }
89
+ };
90
+ const onChangeInput = useCallback((val) => {
91
+ onChange({ value: val, valueType: 'input' });
92
+ }, [onChange]);
93
+ const onValuesChange = useCallback((changedValues) => {
94
+ // If source changed -> set new code based on new source
95
+ if (changedValues?.source) {
96
+ const newCode = getCodeDefaultBySource(changedValues.source);
97
+ form.setFieldValue('code', newCode);
98
+ }
99
+ }, [form, getCodeDefaultBySource]);
100
+ const renderInput = () => {
101
+ let element = null;
102
+ const isObjValue = value && typeof value !== 'string';
103
+ if (openModal || isObjValue) {
104
+ element = (_jsxs("div", { style: {
105
+ display: 'flex',
106
+ alignItems: 'center',
107
+ justifyContent: 'space-between',
108
+ height: 32,
109
+ padding: '4px 12px 4px 4px',
110
+ borderBottom: `1px solid ${errorMsg ? THEME.token?.colorError : THEME.token?.blue1}`,
111
+ }, children: [_jsx("div", { style: { width: '100%', cursor: 'pointer' }, onClick: onOpenModal, children: isObjValue && (_jsx(Tag, { isError: isErrorTag, children: isErrorTag ? (_jsxs(Flex, { gap: 5, align: "center", children: ["Unknown", _jsx(Tooltip, { title: "The used dynamic content is removed", children: _jsx(ErrorIcon, { size: 16 }) })] })) : (_jsx(Typography.Text, { ellipsis: {
112
+ tooltip: get(mapCodeBySource, [value?.code, 'label'], value?.code),
113
+ }, style: { maxWidth: 150 }, children: get(mapCodeBySource, [value?.code, 'label'], value?.code) })) })) }), _jsx(Icon, { type: "icon-ants-remove", style: { fontSize: 10, color: '#222', cursor: 'pointer' }, onClick: onDeselect })] }));
114
+ }
115
+ else {
116
+ element = (_jsx(StyledSelect, { mode: "multiple", options: [{ value: '', label: 'Or select a field' }], notFoundContent: null, onSelect: onOpenModal, style: { width: '100%', borderTop: 'none', borderLeft: 'none', borderRight: 'none' }, onDeselect: onDeselect, autoClearSearchValue: false, searchValue: typeof value === 'string' ? value : '', onSearch: onChangeInput, status: errorMsg ? 'error' : undefined, placeholder: typeof value === 'string' ? value : translate(translations.inputYourValue.title), "$isPlaceholder": !value, "$isError": !!errorMsg, dropdownStyle: {
117
+ ...(openModal ? { display: 'none' } : {}),
118
+ } }));
119
+ }
120
+ return element;
121
+ };
122
+ return (_jsxs(_Fragment, { children: [renderInput(), errorMsg ? (_jsx(Typography.Text, { style: { marginLeft: 8, color: THEME.token?.red8, marginTop: 5 }, children: errorMsg })) : null, _jsx(ModalV2, { title: translate(translations._PREDICT_MODEL_SELECT_ATTRIBUTE, 'Select attribute'), okText: translate(translations._ACT_APPLY, 'Apply'), open: openModal, onOk: onOk, onCancel: onHideModal, afterClose: onAfterClose, destroyOnClose: true, centered: true, children: _jsxs(Form, { colon: false, form: form, onValuesChange: onValuesChange, children: [_jsx(Form.Item, { label: translate(translations._TITL_PERSONALIZATION_TYPE, 'Content Source'), name: "source", required: true, labelCol: { span: 6 }, labelAlign: "left", rules: [{ required: true, message: 'Please select field!' }], children: _jsx(Select, { suffixIcon: _jsx(Icon, { type: "icon-ants-expand-more", style: { fontSize: '20px', color: THEME.token?.colorIcon } }), options: sourceOptions, placeholder: "Please select an item" }) }), _jsx(Form.Item, { label: label || initCodeTitleField, required: true, labelCol: { span: 6 }, labelAlign: "left", name: "code", rules: [{ required: true, message: 'Please select field!' }], children: _jsx(Select, { suffixIcon: _jsx(Icon, { type: "icon-ants-expand-more", style: { fontSize: '20px', color: THEME.token?.colorIcon } }), notFoundContent: _jsx(EmptyData, { size: "small", icon: _jsx(Dashboard30Icon, {}), description: "No personalized content in this journey" }), placeholder: "Please select an item", options: codeOptions }) })] }) })] }));
123
+ };
124
+ export default memo(InputSelectAttribute);
@@ -0,0 +1,14 @@
1
+ export declare const StyledSelect: import("styled-components").StyledComponent<{
2
+ (props: import("@antscorp/antsomi-ui/es/components/molecules").SelectV2Props): import("react/jsx-runtime").JSX.Element;
3
+ defaultProps: {
4
+ suffixIcon: import("react/jsx-runtime").JSX.Element;
5
+ filterOption: (input: any, option: any) => boolean;
6
+ tagRender: (props: any) => import("react/jsx-runtime").JSX.Element;
7
+ containerStyle: {};
8
+ labelStyle: {};
9
+ clearIcon: import("react/jsx-runtime").JSX.Element;
10
+ };
11
+ }, any, {
12
+ $isPlaceholder?: any;
13
+ $isError?: boolean | undefined;
14
+ }, never>;
@@ -0,0 +1,33 @@
1
+ // Libraries
2
+ import styled, { css } from 'styled-components';
3
+ // Components
4
+ import { SelectV2 as Select } from '@antscorp/antsomi-ui/es/components/molecules';
5
+ // Constants
6
+ import { THEME } from '@antscorp/antsomi-ui/es/constants';
7
+ export const StyledSelect = styled(Select) `
8
+ .antsomi-select-selection-overflow .antsomi-select-selection-overflow-item {
9
+ flex: 1;
10
+
11
+ .antsomi-select-selection-search {
12
+ width: fit-content !important;
13
+ flex: 1;
14
+ }
15
+ }
16
+
17
+ ${({ $isError }) => $isError
18
+ ? css `
19
+ .antsomi-select-selector {
20
+ box-shadow: none !important;
21
+ }
22
+ `
23
+ : css ``}
24
+
25
+ .antsomi-select-selection-placeholder {
26
+ ${props => !props.$isPlaceholder
27
+ ? css `
28
+ color: rgba(0, 0, 0, 0.85);
29
+ font-size: ${THEME.token?.fontSize}px;
30
+ `
31
+ : css ``}
32
+ }
33
+ `;
@@ -1,29 +1,29 @@
1
1
  import { Flex } from 'antd';
2
2
  import styled from 'styled-components';
3
- export const ContainerModule = styled(Flex) `
4
- height: ${props => (props.$height ? props.$height : '100%')};
5
- align-items: center;
6
- justify-content: center;
7
- flex-direction: column;
8
- gap: 5px;
9
- .item-title {
10
- display: flex;
11
-
12
- .content-title {
13
- font-size: 20px;
14
- font-weight: bold;
15
- color: #f29100;
16
- margin-right: 5px;
17
- }
18
-
19
- .icon-title {
20
- font-size: 24px;
21
- color: #666666;
22
- }
23
- }
24
-
25
- .item-body {
26
- font-size: 12px;
27
- color: #595959;
28
- }
3
+ export const ContainerModule = styled(Flex) `
4
+ height: ${props => (props.$height ? props.$height : '100%')};
5
+ align-items: center;
6
+ justify-content: center;
7
+ flex-direction: column;
8
+ gap: 5px;
9
+ .item-title {
10
+ display: flex;
11
+
12
+ .content-title {
13
+ font-size: 20px;
14
+ font-weight: bold;
15
+ color: #f29100;
16
+ margin-right: 5px;
17
+ }
18
+
19
+ .icon-title {
20
+ font-size: 24px;
21
+ color: #666666;
22
+ }
23
+ }
24
+
25
+ .item-body {
26
+ font-size: 12px;
27
+ color: #595959;
28
+ }
29
29
  `;
@@ -15,14 +15,14 @@ import { splitTextByNewline } from '@antscorp/antsomi-ui/es/utils';
15
15
  const { borderRadius, blue1 } = globalToken || {};
16
16
  const { t } = i18nInstance;
17
17
  // Styled
18
- const TextArea = styled(props => _jsx(Input.TextArea, { ...props })) `
19
- &.antsomi-input-borderless {
20
- border: 1px solid ${blue1} !important;
21
- border-radius: ${borderRadius}px;
22
- }
23
- ::-webkit-input-placeholder {
24
- opacity: 1 !important;
25
- }
18
+ const TextArea = styled(props => _jsx(Input.TextArea, { ...props })) `
19
+ &.antsomi-input-borderless {
20
+ border: 1px solid ${blue1} !important;
21
+ border-radius: ${borderRadius}px;
22
+ }
23
+ ::-webkit-input-placeholder {
24
+ opacity: 1 !important;
25
+ }
26
26
  `;
27
27
  export const ExtendValuePopup = props => {
28
28
  // Props