@flozy/editor 9.2.8 → 9.3.0

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 (256) hide show
  1. package/dist/Editor/ChatEditor.js +46 -11
  2. package/dist/Editor/CommonEditor.js +165 -29
  3. package/dist/Editor/DialogWrapper.js +31 -25
  4. package/dist/Editor/Editor.css +19 -1
  5. package/dist/Editor/Elements/AI/AIInput.js +5 -3
  6. package/dist/Editor/Elements/AI/CustomSelect.js +9 -5
  7. package/dist/Editor/Elements/AI/PopoverAIInput.js +4 -2
  8. package/dist/Editor/Elements/Accordion/Accordion.js +4 -3
  9. package/dist/Editor/Elements/Accordion/AccordionBtnPopup.js +4 -1
  10. package/dist/Editor/Elements/Accordion/AccordionButton.js +6 -2
  11. package/dist/Editor/Elements/Accordion/AccordionTitlePopup.js +4 -1
  12. package/dist/Editor/Elements/AppHeader/AppHeader.js +3 -3
  13. package/dist/Editor/Elements/AppHeader/AppHeaderButton.js +6 -2
  14. package/dist/Editor/Elements/AppHeader/AppHeaderPopup.js +4 -1
  15. package/dist/Editor/Elements/Attachments/AttachmentsButton.js +4 -1
  16. package/dist/Editor/Elements/Button/ButtonPopup.js +4 -1
  17. package/dist/Editor/Elements/Button/ButtonToolIcon.js +6 -2
  18. package/dist/Editor/Elements/Button/EditorButton.js +31 -14
  19. package/dist/Editor/Elements/Carousel/Carousel.js +5 -4
  20. package/dist/Editor/Elements/Carousel/CarouselButton.js +6 -2
  21. package/dist/Editor/Elements/Carousel/CarouselItem.js +3 -2
  22. package/dist/Editor/Elements/ChipText/ChipTextPopup.js +4 -1
  23. package/dist/Editor/Elements/CodeToText/CodeToText.js +5 -4
  24. package/dist/Editor/Elements/CodeToText/HtmlContextMenu.js +6 -2
  25. package/dist/Editor/Elements/Color Picker/ColorButtons.js +57 -12
  26. package/dist/Editor/Elements/Color Picker/ColorPicker.css +25 -1
  27. package/dist/Editor/Elements/Color Picker/ColorPicker.js +5 -5
  28. package/dist/Editor/Elements/Color Picker/Styles.js +1 -1
  29. package/dist/Editor/Elements/Colorbox/ColorboxButton.js +6 -2
  30. package/dist/Editor/Elements/DataView/DataView.js +5 -2
  31. package/dist/Editor/Elements/DataView/DataViewButton.js +6 -2
  32. package/dist/Editor/Elements/DataView/Layouts/ColumnView.js +4 -1
  33. package/dist/Editor/Elements/DataView/Layouts/DataTypes/Components/Select.js +3 -4
  34. package/dist/Editor/Elements/DataView/Layouts/DataTypes/Components/styles.js +6 -1
  35. package/dist/Editor/Elements/DataView/Layouts/DataTypes/DateType.js +19 -9
  36. package/dist/Editor/Elements/DataView/Layouts/FilterSort/SortOptions/ChooseSort.js +13 -12
  37. package/dist/Editor/Elements/DataView/Layouts/FilterSort/SortOptions/index.js +7 -4
  38. package/dist/Editor/Elements/DataView/Layouts/FilterSort/index.js +7 -5
  39. package/dist/Editor/Elements/DataView/Layouts/FilterView.js +9 -7
  40. package/dist/Editor/Elements/DataView/Layouts/Options/AddOptions.js +3 -2
  41. package/dist/Editor/Elements/DataView/Layouts/Options/AddProperty.js +5 -3
  42. package/dist/Editor/Elements/DataView/Layouts/Options/AllProperties.js +6 -5
  43. package/dist/Editor/Elements/DataView/Layouts/Options/ChangeProperty.js +5 -3
  44. package/dist/Editor/Elements/DataView/Layouts/Options/EditOption.js +7 -6
  45. package/dist/Editor/Elements/DataView/Layouts/Options/EditProperty.js +15 -12
  46. package/dist/Editor/Elements/DataView/Layouts/Options/FilterProperty.js +3 -2
  47. package/dist/Editor/Elements/DataView/Layouts/Options/PropertyList.js +3 -2
  48. package/dist/Editor/Elements/DataView/Layouts/Options/index.js +12 -6
  49. package/dist/Editor/Elements/DataView/Layouts/TableStyles.js +32 -2
  50. package/dist/Editor/Elements/DataView/Layouts/TableView.js +132 -33
  51. package/dist/Editor/Elements/DataView/Layouts/ViewData.js +3 -3
  52. package/dist/Editor/Elements/DataView/Layouts/index.js +3 -1
  53. package/dist/Editor/Elements/DataView/Providers/DataViewProvider.js +6 -3
  54. package/dist/Editor/Elements/DataView/styles.js +8 -8
  55. package/dist/Editor/Elements/Divider/Divider.js +5 -3
  56. package/dist/Editor/Elements/Divider/DividerButton.js +6 -2
  57. package/dist/Editor/Elements/Divider/DividerPopup.js +3 -2
  58. package/dist/Editor/Elements/Embed/Embed.js +4 -1
  59. package/dist/Editor/Elements/Embed/EmbedPopup.js +4 -1
  60. package/dist/Editor/Elements/Embed/Image.js +16 -11
  61. package/dist/Editor/Elements/Embed/Video.js +10 -7
  62. package/dist/Editor/Elements/EmbedScript/Code.js +7 -4
  63. package/dist/Editor/Elements/EmbedScript/EmbedScript.js +6 -2
  64. package/dist/Editor/Elements/EmbedScript/EmbedScriptPopup.js +8 -5
  65. package/dist/Editor/Elements/Emoji/EmojiButton.js +6 -2
  66. package/dist/Editor/Elements/Form/FieldPopup.js +4 -1
  67. package/dist/Editor/Elements/Form/Form.js +12 -9
  68. package/dist/Editor/Elements/Form/FormButton.js +6 -2
  69. package/dist/Editor/Elements/Form/FormPopup.js +3 -2
  70. package/dist/Editor/Elements/Form/Workflow/FormWorkflow.js +18 -12
  71. package/dist/Editor/Elements/Form/Workflow/ListWorkflow.js +13 -8
  72. package/dist/Editor/Elements/Form/Workflow/MoreOptions.js +3 -2
  73. package/dist/Editor/Elements/Form/Workflow/UserInputs.js +4 -2
  74. package/dist/Editor/Elements/Form/Workflow/index.js +15 -9
  75. package/dist/Editor/Elements/FreeGrid/FreeGrid.js +21 -18
  76. package/dist/Editor/Elements/FreeGrid/FreeGridBox.js +6 -2
  77. package/dist/Editor/Elements/FreeGrid/FreeGridButton.js +6 -2
  78. package/dist/Editor/Elements/FreeGrid/FreeGridItem.js +8 -3
  79. package/dist/Editor/Elements/FreeGrid/Options/AddElement.js +3 -2
  80. package/dist/Editor/Elements/FreeGrid/Options/More.js +4 -3
  81. package/dist/Editor/Elements/FreeGrid/styles.js +3 -0
  82. package/dist/Editor/Elements/Grid/Grid.js +13 -10
  83. package/dist/Editor/Elements/Grid/GridButton.js +9 -5
  84. package/dist/Editor/Elements/Grid/GridItem.js +15 -10
  85. package/dist/Editor/Elements/Grid/GridItemPopup.js +4 -1
  86. package/dist/Editor/Elements/Grid/GridPopup.js +4 -1
  87. package/dist/Editor/Elements/Grid/SectionPopup.js +4 -1
  88. package/dist/Editor/Elements/Link/Link.js +79 -45
  89. package/dist/Editor/Elements/Link/LinkButton.js +4 -1
  90. package/dist/Editor/Elements/List/CheckList.js +14 -9
  91. package/dist/Editor/Elements/NewLine/NewLineButton.js +6 -2
  92. package/dist/Editor/Elements/PageSettings/PageSettingsButton.js +16 -5
  93. package/dist/Editor/Elements/PageSettings/PageSettingsPopup.js +4 -1
  94. package/dist/Editor/Elements/Search/SearchButton.js +6 -3
  95. package/dist/Editor/Elements/Search/SearchList.js +7 -3
  96. package/dist/Editor/Elements/Signature/SignatureButton.js +6 -2
  97. package/dist/Editor/Elements/Signature/SignatureOptions/TypeSignature.js +6 -2
  98. package/dist/Editor/Elements/Signature/SignatureOptions/UploadSignature.js +4 -1
  99. package/dist/Editor/Elements/Signature/SignaturePopup.js +17 -16
  100. package/dist/Editor/Elements/SimpleText/index.js +5 -5
  101. package/dist/Editor/Elements/SimpleText/style.js +2 -2
  102. package/dist/Editor/Elements/Table/DragButton.js +4 -2
  103. package/dist/Editor/Elements/Table/Table.js +48 -25
  104. package/dist/Editor/Elements/Table/TableCell.js +6 -27
  105. package/dist/Editor/Elements/Table/TablePopup.js +4 -1
  106. package/dist/Editor/Elements/Table/TableSelector.js +10 -6
  107. package/dist/Editor/Elements/Table/TableTool.js +8 -4
  108. package/dist/Editor/Elements/Title/title.js +10 -0
  109. package/dist/Editor/Elements/TopBanner/TopBannerButton.js +4 -1
  110. package/dist/Editor/Elements/Variables/Style.js +28 -2
  111. package/dist/Editor/Elements/Variables/VariableButton.js +17 -4
  112. package/dist/Editor/MiniEditor.js +9 -3
  113. package/dist/Editor/Styles/EditorStyles.js +5 -5
  114. package/dist/Editor/Toolbar/Basic/index.js +2 -1
  115. package/dist/Editor/Toolbar/FormatTools/BlockButton.js +6 -2
  116. package/dist/Editor/Toolbar/FormatTools/Dropdown.js +27 -3
  117. package/dist/Editor/Toolbar/FormatTools/FontFamilyAutocomplete.js +4 -3
  118. package/dist/Editor/Toolbar/FormatTools/MarkButton.js +8 -4
  119. package/dist/Editor/Toolbar/FormatTools/TextSize.js +7 -15
  120. package/dist/Editor/Toolbar/Mini/MiniToolbar.js +20 -15
  121. package/dist/Editor/Toolbar/PopupTool/AddTemplates.js +19 -13
  122. package/dist/Editor/Toolbar/PopupTool/ButtonTemplatesCard.js +10 -4
  123. package/dist/Editor/Toolbar/PopupTool/FullViewCard.js +10 -4
  124. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/MiniColorPicker.js +6 -2
  125. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/SelectAlignment.js +42 -35
  126. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/SelectFontSize.js +6 -13
  127. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/SelectList.js +58 -51
  128. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/SelectSuperSubscript.js +29 -22
  129. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/SelectTypography.js +226 -87
  130. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/index.js +15 -7
  131. package/dist/Editor/Toolbar/PopupTool/PopperHeader.js +8 -4
  132. package/dist/Editor/Toolbar/PopupTool/PopupToolStyle.js +16 -12
  133. package/dist/Editor/Toolbar/PopupTool/TemplateCard.js +11 -5
  134. package/dist/Editor/Toolbar/PopupTool/TextFormat.js +120 -41
  135. package/dist/Editor/Toolbar/PopupTool/ThemeTextFormat.js +438 -0
  136. package/dist/Editor/Toolbar/PopupTool/index.js +3 -8
  137. package/dist/Editor/Toolbar/Toolbar.js +20 -10
  138. package/dist/Editor/Toolbar/toolbarGroups.js +48 -6
  139. package/dist/Editor/assets/svg/CalenderIconTick.js +1 -0
  140. package/dist/Editor/assets/svg/ThemeIcons.js +291 -0
  141. package/dist/Editor/common/ColorPickerButton.js +35 -9
  142. package/dist/Editor/common/CustomColorPicker/index.js +106 -0
  143. package/dist/Editor/common/CustomColorPicker/style.js +53 -0
  144. package/dist/Editor/common/CustomDialog/index.js +88 -0
  145. package/dist/Editor/common/CustomDialog/styles.js +80 -0
  146. package/dist/Editor/common/CustomDialog2/index.js +94 -0
  147. package/dist/Editor/common/CustomDialog2/style.js +67 -0
  148. package/dist/Editor/common/CustomSelect.js +33 -0
  149. package/dist/Editor/common/DnD/DragHandleButton.js +1 -1
  150. package/dist/Editor/common/DnD/Draggable.js +0 -1
  151. package/dist/Editor/common/FontLoader/FontLoader.js +3 -0
  152. package/dist/Editor/common/Icon.js +28 -0
  153. package/dist/Editor/common/ImageSelector/ImageSelector.js +10 -8
  154. package/dist/Editor/common/ImageSelector/Options/AddLink.js +6 -4
  155. package/dist/Editor/common/ImageSelector/Styles.js +3 -9
  156. package/dist/Editor/common/ImageSelector/UploadStyles.js +0 -1
  157. package/dist/Editor/common/LinkSettings/NavComponents.js +14 -10
  158. package/dist/Editor/common/LinkSettings/index.js +20 -14
  159. package/dist/Editor/common/LinkSettings/navOptions.js +1 -1
  160. package/dist/Editor/common/MentionsPopup/Styles.js +109 -71
  161. package/dist/Editor/common/MentionsPopup/index.js +8 -4
  162. package/dist/Editor/common/RnD/ContextMenu/CMenus.js +22 -22
  163. package/dist/Editor/common/RnD/ContextMenu/index.js +3 -2
  164. package/dist/Editor/common/RnD/ElementOptions/index.js +7 -2
  165. package/dist/Editor/common/RnD/ElementSettings/OtherSettings/SaveAsTemplate.js +8 -3
  166. package/dist/Editor/common/RnD/ElementSettings/OtherSettings/Settings.js +7 -3
  167. package/dist/Editor/common/RnD/ElementSettings/Settings/AppHeaderSettings.js +3 -2
  168. package/dist/Editor/common/RnD/ElementSettings/Settings/BoxSettings.js +3 -2
  169. package/dist/Editor/common/RnD/ElementSettings/Settings/ButtonSettings.js +3 -2
  170. package/dist/Editor/common/RnD/ElementSettings/Settings/CodeSettings.js +3 -2
  171. package/dist/Editor/common/RnD/ElementSettings/Settings/FormSettings.js +7 -4
  172. package/dist/Editor/common/RnD/ElementSettings/Settings/ImageSettings.js +3 -2
  173. package/dist/Editor/common/RnD/ElementSettings/Settings/TableSettings.js +3 -2
  174. package/dist/Editor/common/RnD/ElementSettings/Settings/TextSettings.js +4 -2
  175. package/dist/Editor/common/RnD/ElementSettings/Settings/VideoSettings.js +3 -2
  176. package/dist/Editor/common/RnD/OptionsPopup/index.js +4 -3
  177. package/dist/Editor/common/RnD/SwitchViewport/SwitchViewport.js +11 -4
  178. package/dist/Editor/common/RnD/Theme/MainThemeProvider.js +17 -0
  179. package/dist/Editor/common/RnD/Theme/ViewportStimulator.js +20 -8
  180. package/dist/Editor/common/RnD/Utils/gridDropItem.js +5 -4
  181. package/dist/Editor/common/RnD/Utils/index.js +45 -0
  182. package/dist/Editor/common/RnD/VirtualElement/index.js +1 -2
  183. package/dist/Editor/common/RnD/index.js +34 -7
  184. package/dist/Editor/common/Section/index.js +7 -4
  185. package/dist/Editor/common/Shorthands/elements.js +93 -10
  186. package/dist/Editor/common/StyleBuilder/appHeaderStyle.js +4 -4
  187. package/dist/Editor/common/StyleBuilder/boxStyle.js +2 -2
  188. package/dist/Editor/common/StyleBuilder/buttonStyle.js +6 -4
  189. package/dist/Editor/common/StyleBuilder/dividerStyles.js +2 -2
  190. package/dist/Editor/common/StyleBuilder/embedVideoStyle.js +6 -6
  191. package/dist/Editor/common/StyleBuilder/fieldStyle.js +2 -2
  192. package/dist/Editor/common/StyleBuilder/fieldTypes/alignment.js +13 -9
  193. package/dist/Editor/common/StyleBuilder/fieldTypes/backgroundImage.js +11 -3
  194. package/dist/Editor/common/StyleBuilder/fieldTypes/bannerSpacing.js +19 -5
  195. package/dist/Editor/common/StyleBuilder/fieldTypes/borderRadius.js +22 -10
  196. package/dist/Editor/common/StyleBuilder/fieldTypes/buttonLink.js +6 -3
  197. package/dist/Editor/common/StyleBuilder/fieldTypes/card.js +27 -13
  198. package/dist/Editor/common/StyleBuilder/fieldTypes/color.js +41 -14
  199. package/dist/Editor/common/StyleBuilder/fieldTypes/elementSize.js +10 -6
  200. package/dist/Editor/common/StyleBuilder/fieldTypes/fontSize.js +19 -6
  201. package/dist/Editor/common/StyleBuilder/fieldTypes/gridSize.js +6 -2
  202. package/dist/Editor/common/StyleBuilder/fieldTypes/icons.js +5 -2
  203. package/dist/Editor/common/StyleBuilder/fieldTypes/menusArray.js +9 -6
  204. package/dist/Editor/common/StyleBuilder/fieldTypes/metaDataMapping.js +8 -2
  205. package/dist/Editor/common/StyleBuilder/fieldTypes/saveAsTemplate.js +12 -11
  206. package/dist/Editor/common/StyleBuilder/fieldTypes/selectBox.js +6 -2
  207. package/dist/Editor/common/StyleBuilder/fieldTypes/text.js +8 -4
  208. package/dist/Editor/common/StyleBuilder/fieldTypes/textAlign.js +6 -2
  209. package/dist/Editor/common/StyleBuilder/fieldTypes/textOptions.js +21 -12
  210. package/dist/Editor/common/StyleBuilder/formStyle.js +7 -7
  211. package/dist/Editor/common/StyleBuilder/gridItemStyle.js +6 -6
  212. package/dist/Editor/common/StyleBuilder/gridStyle.js +5 -5
  213. package/dist/Editor/common/StyleBuilder/index.js +8 -5
  214. package/dist/Editor/common/StyleBuilder/pageSettingsStyle.js +5 -7
  215. package/dist/Editor/common/Uploader.js +16 -5
  216. package/dist/Editor/commonStyle.js +114 -69
  217. package/dist/Editor/helper/index.js +8 -12
  218. package/dist/Editor/helper/textIndeces.js +58 -0
  219. package/dist/Editor/helper/theme.js +200 -2
  220. package/dist/Editor/hooks/useDrag.js +16 -10
  221. package/dist/Editor/hooks/useEditorScroll.js +10 -5
  222. package/dist/Editor/hooks/useEditorTheme.js +153 -0
  223. package/dist/Editor/hooks/useMouseMove.js +25 -13
  224. package/dist/Editor/hooks/useTable.js +1 -1
  225. package/dist/Editor/plugins/withEmbeds.js +1 -1
  226. package/dist/Editor/plugins/withHTML.js +19 -14
  227. package/dist/Editor/plugins/withLayout.js +3 -2
  228. package/dist/Editor/plugins/withTable.js +1 -1
  229. package/dist/Editor/theme/ThemeList.js +50 -173
  230. package/dist/Editor/theme/index.js +144 -0
  231. package/dist/Editor/themeSettings/ActiveTheme.js +72 -0
  232. package/dist/Editor/themeSettings/buttons/index.js +283 -0
  233. package/dist/Editor/themeSettings/buttons/style.js +21 -0
  234. package/dist/Editor/themeSettings/colorTheme/index.js +292 -0
  235. package/dist/Editor/themeSettings/colorTheme/style.js +77 -0
  236. package/dist/Editor/themeSettings/fonts/PreviewElement.js +121 -0
  237. package/dist/Editor/themeSettings/fonts/index.js +220 -0
  238. package/dist/Editor/themeSettings/fonts/style.js +44 -0
  239. package/dist/Editor/themeSettings/icons.js +60 -0
  240. package/dist/Editor/themeSettings/index.js +320 -0
  241. package/dist/Editor/themeSettings/style.js +152 -0
  242. package/dist/Editor/themeSettingsAI/icons.js +96 -0
  243. package/dist/Editor/themeSettingsAI/index.js +356 -0
  244. package/dist/Editor/themeSettingsAI/saveTheme.js +197 -0
  245. package/dist/Editor/themeSettingsAI/style.js +250 -0
  246. package/dist/Editor/utils/SlateUtilityFunctions.js +162 -45
  247. package/dist/Editor/utils/button.js +0 -14
  248. package/dist/Editor/utils/chatEditor/SlateUtilityFunctions.js +23 -0
  249. package/dist/Editor/utils/divider.js +8 -0
  250. package/dist/Editor/utils/draftToSlate.js +3 -2
  251. package/dist/Editor/utils/embed.js +9 -4
  252. package/dist/Editor/utils/font.js +40 -37
  253. package/dist/Editor/utils/helper.js +77 -19
  254. package/dist/Editor/utils/link.js +1 -1
  255. package/dist/Editor/utils/table.js +8 -0
  256. package/package.json +5 -2
@@ -12,7 +12,8 @@ const EditProperty = props => {
12
12
  classes,
13
13
  onClose,
14
14
  mode,
15
- onEvent
15
+ onEvent,
16
+ translation
16
17
  } = props;
17
18
  const [edit, setEdit] = useState({
18
19
  ...(mode?.edit || {})
@@ -120,7 +121,7 @@ const EditProperty = props => {
120
121
  children: /*#__PURE__*/_jsx(Icon, {
121
122
  icon: 'leftArrow'
122
123
  })
123
- }), "Edit Property"]
124
+ }), translation("Edit Property")]
124
125
  }), /*#__PURE__*/_jsx(IconButton, {
125
126
  className: "tv-act-ico bg br1",
126
127
  size: "small",
@@ -137,7 +138,7 @@ const EditProperty = props => {
137
138
  }), /*#__PURE__*/_jsxs(Box, {
138
139
  className: "fe-dv-ap-opt-content",
139
140
  children: [/*#__PURE__*/_jsx(FormControlLabel, {
140
- label: "Field Name",
141
+ label: translation("Field Name"),
141
142
  labelPlacement: "top",
142
143
  sx: {
143
144
  '& .MuiFormControl-root': {
@@ -149,7 +150,7 @@ const EditProperty = props => {
149
150
  value: edit?.label,
150
151
  onChange: onChange("label"),
151
152
  fullWidth: true,
152
- placeholder: "Field Name"
153
+ placeholder: translation("Field Name")
153
154
  })
154
155
  }), /*#__PURE__*/_jsx(List, {
155
156
  className: "fe-dv-opt-list st",
@@ -159,7 +160,7 @@ const EditProperty = props => {
159
160
  },
160
161
  onClick: onChangeProperty,
161
162
  children: [/*#__PURE__*/_jsx(ListItemText, {
162
- children: "Type"
163
+ children: translation("Type")
163
164
  }), /*#__PURE__*/_jsxs(ListItemIcon, {
164
165
  sx: {
165
166
  display: 'flex',
@@ -183,7 +184,7 @@ const EditProperty = props => {
183
184
  })
184
185
  }), /*#__PURE__*/_jsx("span", {
185
186
  className: "label-tp",
186
- children: TYPE_LABELS[edit?.type]
187
+ children: translation(TYPE_LABELS[edit?.type])
187
188
  }), /*#__PURE__*/_jsx(Icon, {
188
189
  icon: 'rightArrow'
189
190
  })]
@@ -194,11 +195,13 @@ const EditProperty = props => {
194
195
  }), /*#__PURE__*/_jsx(AddOptions, {
195
196
  edit: edit,
196
197
  onUpdate: onUpdate,
197
- onEvent: onEvent
198
+ onEvent: onEvent,
199
+ translation: translation
198
200
  }), /*#__PURE__*/_jsx(FilterProperty, {
199
201
  edit: edit,
200
202
  onUpdate: onUpdate,
201
- onEvent: onEvent
203
+ onEvent: onEvent,
204
+ translation: translation
202
205
  }), /*#__PURE__*/_jsxs(List, {
203
206
  className: "fe-dv-opt-list",
204
207
  children: [/*#__PURE__*/_jsxs(ListItemButton, {
@@ -209,8 +212,8 @@ const EditProperty = props => {
209
212
  }) : /*#__PURE__*/_jsx(Icon, {
210
213
  icon: 'eyeIcon'
211
214
  })
212
- }), /*#__PURE__*/_jsxs(ListItemText, {
213
- children: [edit?.visible ? "Hide" : "Show", " in View"]
215
+ }), /*#__PURE__*/_jsx(ListItemText, {
216
+ children: `${edit?.visible ? translation("Hide") : translation("Show")} ${translation("in View")}`
214
217
  })]
215
218
  }), /*#__PURE__*/_jsxs(ListItemButton, {
216
219
  onClick: onAction("Duplicate"),
@@ -219,7 +222,7 @@ const EditProperty = props => {
219
222
  icon: 'duplicateIcon'
220
223
  })
221
224
  }), /*#__PURE__*/_jsx(ListItemText, {
222
- children: "Duplicate Property"
225
+ children: translation("Duplicate Property")
223
226
  })]
224
227
  }), /*#__PURE__*/_jsxs(ListItemButton, {
225
228
  onClick: onAction("Delete"),
@@ -228,7 +231,7 @@ const EditProperty = props => {
228
231
  icon: 'trashIcon'
229
232
  })
230
233
  }), /*#__PURE__*/_jsx(ListItemText, {
231
- children: "Delete Property"
234
+ children: translation("Delete Property")
232
235
  })]
233
236
  })]
234
237
  })]
@@ -11,7 +11,8 @@ const FilterProperty = props => {
11
11
  } = useDataView();
12
12
  const {
13
13
  edit,
14
- onEvent
14
+ onEvent,
15
+ translation
15
16
  } = props;
16
17
  const handleChangeOption = m => () => {
17
18
  onEvent("addSort", {
@@ -33,7 +34,7 @@ const FilterProperty = props => {
33
34
  icon: m?.Icon
34
35
  })
35
36
  }), /*#__PURE__*/_jsx(ListItemText, {
36
- primary: m.label
37
+ primary: translation(m.label)
37
38
  })]
38
39
  }, i);
39
40
  })
@@ -7,7 +7,8 @@ import { jsxs as _jsxs } from "react/jsx-runtime";
7
7
  const PropertyList = props => {
8
8
  const {
9
9
  onSelect,
10
- selected
10
+ selected,
11
+ translation
11
12
  } = props;
12
13
  return /*#__PURE__*/_jsx(List, {
13
14
  children: PROPERTY_TYPES?.map(({
@@ -22,7 +23,7 @@ const PropertyList = props => {
22
23
  icon: rest?.Icon
23
24
  })
24
25
  }), /*#__PURE__*/_jsx(ListItemText, {
25
- primary: rest?.label
26
+ primary: translation(rest?.label)
26
27
  })]
27
28
  }, i);
28
29
  })
@@ -41,7 +41,8 @@ const PropertySettings = props => {
41
41
  anchorEl,
42
42
  mode,
43
43
  onClose,
44
- onEvent
44
+ onEvent,
45
+ translation
45
46
  } = props;
46
47
  const classes = useOptionsStyles(theme, appTheme);
47
48
  const isMobile = window.matchMedia("(max-width: 899px)")?.matches || false;
@@ -53,35 +54,40 @@ const PropertySettings = props => {
53
54
  classes: classes,
54
55
  onClose: onClose,
55
56
  onEvent: onEvent,
56
- mode: mode
57
+ mode: mode,
58
+ translation: translation
57
59
  });
58
60
  case "editProperty":
59
61
  return /*#__PURE__*/_jsx(EditProperty, {
60
62
  classes: classes,
61
63
  onClose: onClose,
62
64
  onEvent: onEvent,
63
- mode: mode
65
+ mode: mode,
66
+ translation: translation
64
67
  });
65
68
  case "changeProperty":
66
69
  return /*#__PURE__*/_jsx(ChangeProperty, {
67
70
  classes: classes,
68
71
  onClose: onClose,
69
72
  onEvent: onEvent,
70
- mode: mode
73
+ mode: mode,
74
+ translation: translation
71
75
  });
72
76
  case "allProperties":
73
77
  return /*#__PURE__*/_jsx(AllProperties, {
74
78
  classes: classes,
75
79
  onClose: onClose,
76
80
  onEvent: onEvent,
77
- mode: mode
81
+ mode: mode,
82
+ translation: translation
78
83
  });
79
84
  case "editOption":
80
85
  return /*#__PURE__*/_jsx(EditOption, {
81
86
  classes: classes,
82
87
  onClose: onClose,
83
88
  onEvent: onEvent,
84
- mode: mode
89
+ mode: mode,
90
+ translation: translation
85
91
  });
86
92
  default:
87
93
  return null;
@@ -10,12 +10,16 @@ const useTableStyles = (theme, appTheme) => ({
10
10
  borderSpacing: 0,
11
11
  borderRadius: "7px 7px 0px 0px",
12
12
  overflow: "hidden",
13
+ width: "auto !important",
14
+ minWidth: "100%",
13
15
  border: `1px solid ${appTheme?.palette?.editor?.tv_border}`,
16
+ tableLayout: "fixed",
14
17
  "& thead": {
15
18
  background: appTheme?.palette?.editor?.tv_header,
16
19
  height: "40px"
17
20
  },
18
21
  "& th": {
22
+ position: "relative",
19
23
  "& svg": {
20
24
  "& .fillStroke": {
21
25
  stroke: appTheme?.palette?.editor?.tv_stroke
@@ -27,6 +31,8 @@ const useTableStyles = (theme, appTheme) => ({
27
31
  },
28
32
  "& td": {
29
33
  height: "40px",
34
+ maxWidth: "0px !important",
35
+ minWidth: "0px !important",
30
36
  "& input": {
31
37
  color: appTheme?.palette?.editor?.tv_text_primary,
32
38
  background: "transparent",
@@ -39,6 +45,11 @@ const useTableStyles = (theme, appTheme) => ({
39
45
  "& th, tr, td": {
40
46
  border: `1px solid ${appTheme?.palette?.editor?.tv_border}`
41
47
  },
48
+ "& th, & td": {
49
+ overflowX: "clip",
50
+ textOverflow: "ellipsis",
51
+ whiteSpace: "nowrap"
52
+ },
42
53
  "& .tv-act-btn": {
43
54
  color: appTheme?.palette?.editor?.tv_text,
44
55
  textTransform: "none",
@@ -85,13 +96,18 @@ const useTableStyles = (theme, appTheme) => ({
85
96
  paddingTop: "3px",
86
97
  paddingBottom: "3px",
87
98
  paddingLeft: "3px",
88
- maxWidth: "250px",
99
+ // maxWidth: "250px",
89
100
  overflow: "hidden",
90
101
  position: "relative",
91
102
  "& .tv-ms-tag-wrpr": {
92
103
  display: "flex",
93
104
  flexWrap: "nowrap",
94
- overflow: "auto"
105
+ overflow: "auto",
106
+ minWidth: "58px",
107
+ "& .MuiChip-deleteIcon": {
108
+ minWidth: "22px",
109
+ minHeight: "22px"
110
+ }
95
111
  },
96
112
  "&.Mui-disabled": {
97
113
  "& input": {
@@ -129,6 +145,20 @@ const useTableStyles = (theme, appTheme) => ({
129
145
  opacity: 1
130
146
  }
131
147
  }
148
+ },
149
+ cellResizer: {
150
+ position: "absolute",
151
+ cursor: "col-resize",
152
+ right: "0px",
153
+ top: 0,
154
+ width: "3px",
155
+ borderRadius: "0px",
156
+ zIndex: 1,
157
+ background: "transparent",
158
+ height: "100%",
159
+ "&:hover, &.active": {
160
+ background: "#2563EB"
161
+ }
132
162
  }
133
163
  });
134
164
  export default useTableStyles;
@@ -1,4 +1,4 @@
1
- import React, { useState } from "react";
1
+ import React, { useEffect, useRef, useState } from "react";
2
2
  import { Box, Button, useTheme } from "@mui/material";
3
3
  import { useDataView } from "../Providers/DataViewProvider";
4
4
  import PropertySettings from "./Options";
@@ -7,47 +7,139 @@ import useTableStyles from "./TableStyles";
7
7
  import { GridSettingsIcon, GridAddSectionIcon } from "../../../common/iconslist";
8
8
  import { useEditorContext } from "../../../hooks/useMouseMove";
9
9
  import Icon from "../../../common/Icon";
10
+ import useTableResize from "../../../utils/customHooks/useTableResize";
10
11
  import { jsx as _jsx } from "react/jsx-runtime";
11
12
  import { Fragment as _Fragment } from "react/jsx-runtime";
12
13
  import { jsxs as _jsxs } from "react/jsx-runtime";
14
+ const Resizer = ({
15
+ classes,
16
+ onMouseDown,
17
+ height,
18
+ resizing
19
+ }) => {
20
+ return /*#__PURE__*/_jsx(_Fragment, {
21
+ children: /*#__PURE__*/_jsx(Box, {
22
+ component: "div",
23
+ className: `cell-resizer ${resizing ? "active" : ""}`,
24
+ contentEditable: false,
25
+ onPointerDown: onMouseDown,
26
+ sx: classes.cellResizer,
27
+ style: {
28
+ height: `${height}px`
29
+ }
30
+ })
31
+ });
32
+ };
13
33
  const SortIcon = props => {
14
34
  const {
15
35
  sortBy
16
36
  } = props;
17
37
  return sortBy ? sortBy === "asc" ? /*#__PURE__*/_jsx(Box, {
18
38
  sx: {
19
- '& svg': {
20
- '& path': {
39
+ "& svg": {
40
+ "& path": {
21
41
  stroke: "rgba(37, 99, 235, 1) !important"
22
42
  }
23
43
  }
24
44
  },
25
45
  children: /*#__PURE__*/_jsx(Icon, {
26
- icon: 'chervUp'
46
+ icon: "chervUp"
27
47
  })
28
48
  }) : /*#__PURE__*/_jsx(Box, {
29
49
  sx: {
30
- '& svg': {
31
- '& path': {
50
+ "& svg": {
51
+ "& path": {
32
52
  stroke: "rgba(37, 99, 235, 1) !important"
33
53
  }
34
54
  }
35
55
  },
36
56
  children: /*#__PURE__*/_jsx(Icon, {
37
- icon: 'chervDown'
57
+ icon: "chervDown"
38
58
  })
39
59
  }) : null;
40
60
  };
61
+ const THead = props => {
62
+ const thRef = useRef(null);
63
+ const [headerTextWidth, setHeaderTextWidth] = useState(200);
64
+ const {
65
+ iconType,
66
+ isSort,
67
+ classes,
68
+ onEditProperty,
69
+ m,
70
+ tableRef,
71
+ handleResize
72
+ } = props;
73
+ // do not remove extra coma it will lead to swap of variable
74
+ const [size, onMouseDown, resizing,, isDone] = useTableResize({
75
+ parentDOM: thRef?.current,
76
+ size: m?.size,
77
+ minMaxProps: {
78
+ minWidth: 30
79
+ }
80
+ });
81
+ const finalWidth = size?.width < headerTextWidth ? headerTextWidth : size?.width || 200;
82
+ useEffect(() => {
83
+ if (thRef?.current) {
84
+ const tw = (thRef?.current?.querySelectorAll(".dht-text")[0]?.getBoundingClientRect()?.width || 0) + 16 + 30;
85
+ setHeaderTextWidth(tw);
86
+ }
87
+ }, [thRef?.current, m?.label]);
88
+ useEffect(() => {
89
+ if (isDone) {
90
+ handleResize({
91
+ ...m,
92
+ size: size
93
+ });
94
+ }
95
+ }, [isDone]);
96
+ return /*#__PURE__*/_jsxs("th", {
97
+ style: {
98
+ minWidth: finalWidth,
99
+ maxWidth: finalWidth,
100
+ width: finalWidth
101
+ },
102
+ ref: thRef,
103
+ children: [/*#__PURE__*/_jsx(Box, {
104
+ sx: {
105
+ maxWidth: "100%",
106
+ overflow: "hidden"
107
+ },
108
+ children: /*#__PURE__*/_jsx(Button, {
109
+ className: "tv-act-btn la",
110
+ startIcon: /*#__PURE__*/_jsx(Icon, {
111
+ icon: iconType
112
+ }),
113
+ endIcon: /*#__PURE__*/_jsx(SortIcon, {
114
+ sortBy: isSort
115
+ }),
116
+ fullWidth: true,
117
+ onClick: onEditProperty(m),
118
+ children: /*#__PURE__*/_jsx("span", {
119
+ className: "dht-text",
120
+ children: m.label
121
+ })
122
+ })
123
+ }), /*#__PURE__*/_jsx(Resizer, {
124
+ classes: classes,
125
+ onMouseDown: onMouseDown,
126
+ height: tableRef?.current?.getBoundingClientRect()?.height,
127
+ resizing: resizing
128
+ })]
129
+ });
130
+ };
41
131
  const TableView = props => {
42
132
  const {
43
133
  theme: appTheme
44
134
  } = useEditorContext();
45
135
  const {
46
136
  children,
47
- readOnly
137
+ readOnly,
138
+ translation
48
139
  } = props;
49
140
  const theme = useTheme();
50
141
  const classes = useTableStyles(theme, appTheme);
142
+ const tableRef = useRef(null);
51
143
  const {
52
144
  properties,
53
145
  onAddProperty,
@@ -75,7 +167,7 @@ const TableView = props => {
75
167
  case "addProperty":
76
168
  const np = onAddProperty({
77
169
  type: data?.type
78
- }, data?.overrides || {});
170
+ }, data?.overrides || {}, translation);
79
171
  if (navToEdit) {
80
172
  setMode({
81
173
  type: "editProperty",
@@ -164,6 +256,9 @@ const TableView = props => {
164
256
  setMode({});
165
257
  setAnchorEl(null);
166
258
  };
259
+ const handleResize = data => {
260
+ onUpdateProperty(data);
261
+ };
167
262
  return /*#__PURE__*/_jsxs(_Fragment, {
168
263
  children: [/*#__PURE__*/_jsx(Box, {
169
264
  component: "div",
@@ -173,6 +268,7 @@ const TableView = props => {
173
268
  children: /*#__PURE__*/_jsxs(Box, {
174
269
  component: "table",
175
270
  sx: classes.table,
271
+ ref: tableRef,
176
272
  children: [/*#__PURE__*/_jsx("thead", {
177
273
  children: /*#__PURE__*/_jsxs("tr", {
178
274
  children: [shownProperties?.map((m, i) => {
@@ -180,26 +276,23 @@ const TableView = props => {
180
276
  Icon: iconType
181
277
  } = PROPERTY_TYPES?.find(f => f.type === m.type) || {};
182
278
  const isSort = sortBy?.key === m.key ? sortBy?.operator : null;
183
- return /*#__PURE__*/_jsx("th", {
184
- style: {
185
- minWidth: "200px"
186
- },
187
- children: /*#__PURE__*/_jsx(Button, {
188
- className: "tv-act-btn la",
189
- startIcon: /*#__PURE__*/_jsx(Icon, {
190
- icon: iconType
191
- }),
192
- endIcon: /*#__PURE__*/_jsx(SortIcon, {
193
- sortBy: isSort
194
- }),
195
- fullWidth: true,
196
- onClick: onEditProperty(m),
197
- children: m.label
198
- })
279
+ return /*#__PURE__*/_jsx(THead, {
280
+ iconType: iconType,
281
+ isSort: isSort,
282
+ onEditProperty: onEditProperty,
283
+ m: m,
284
+ classes: classes,
285
+ tableRef: tableRef,
286
+ handleResize: handleResize
199
287
  }, i);
200
288
  }), !readOnly ? /*#__PURE__*/_jsxs(_Fragment, {
201
289
  children: [/*#__PURE__*/_jsx("th", {
202
290
  className: "tv-act-btn ico",
291
+ style: {
292
+ maxWidth: "80px",
293
+ minWidth: "80px",
294
+ width: "auto"
295
+ },
203
296
  children: /*#__PURE__*/_jsx(Button, {
204
297
  onClick: onAddClick,
205
298
  fullWidth: true,
@@ -207,6 +300,11 @@ const TableView = props => {
207
300
  })
208
301
  }), /*#__PURE__*/_jsx("th", {
209
302
  className: "tv-act-btn ico",
303
+ style: {
304
+ maxWidth: "80px",
305
+ minWidth: "80px",
306
+ width: "auto"
307
+ },
210
308
  children: /*#__PURE__*/_jsx(Button, {
211
309
  onClick: onSettings,
212
310
  fullWidth: true,
@@ -226,27 +324,28 @@ const TableView = props => {
226
324
  textTransform: "none",
227
325
  justifyContent: "start",
228
326
  color: appTheme?.palette?.editor?.activeColor,
229
- '& svg': {
230
- width: '18px',
231
- height: '18px',
327
+ "& svg": {
328
+ width: "18px",
329
+ height: "18px",
232
330
  strokeWidth: 1.2,
233
- '& path': {
331
+ "& path": {
234
332
  stroke: appTheme?.palette?.editor?.activeColor
235
333
  }
236
334
  },
237
- fontFamily: 'inter'
335
+ fontFamily: "inter"
238
336
  },
239
337
  startIcon: /*#__PURE__*/_jsx(Icon, {
240
- icon: 'addRounded'
338
+ icon: "addRounded"
241
339
  }),
242
- children: "Add new row"
340
+ children: translation("Add new row")
243
341
  }) : null, open && !readOnly ? /*#__PURE__*/_jsx(PropertySettings, {
244
342
  open: open,
245
343
  anchorEl: anchorEl,
246
344
  mode: mode,
247
345
  properties: properties,
248
346
  onClose: onClose,
249
- onEvent: onEvent
347
+ onEvent: onEvent,
348
+ translation: translation
250
349
  }) : null]
251
350
  });
252
351
  };
@@ -58,17 +58,17 @@ const ViewData = props => {
58
58
  }
59
59
  },
60
60
  children: [rows?.map((row, i) => {
61
- return /*#__PURE__*/_jsx(Box, {
61
+ return /*#__PURE__*/_jsxs(Box, {
62
62
  component: "tr",
63
63
  className: "tv-act-row",
64
- children: /*#__PURE__*/_jsx(RenderRow, {
64
+ children: [/*#__PURE__*/_jsx(RenderRow, {
65
65
  rowIndex: row?.id,
66
66
  row: row,
67
67
  properties: properties,
68
68
  onSelect: onSelect,
69
69
  selected: selectedRows?.includes(row?.id),
70
70
  readOnly: readOnly
71
- })
71
+ }), /*#__PURE__*/_jsx("td", {}), /*#__PURE__*/_jsx("td", {})]
72
72
  }, i);
73
73
  }), /*#__PURE__*/_jsx("tr", {
74
74
  style: {
@@ -9,7 +9,8 @@ const LAYOUT_COMPONENT = {
9
9
  const LayoutView = props => {
10
10
  const {
11
11
  readOnly,
12
- children
12
+ children,
13
+ translation
13
14
  } = props;
14
15
  const {
15
16
  layoutType
@@ -18,6 +19,7 @@ const LayoutView = props => {
18
19
  return /*#__PURE__*/_jsx(_Fragment, {
19
20
  children: /*#__PURE__*/_jsx(Layout, {
20
21
  readOnly: readOnly,
22
+ translation: translation,
21
23
  children: children
22
24
  })
23
25
  });
@@ -1,5 +1,5 @@
1
1
  import React, { createContext, useContext, useEffect, useState } from "react";
2
- import { Editor, Transforms, Node } from "slate";
2
+ import { Transforms, Node } from "slate";
3
3
  import { PROPERTY_DEFAULTS } from "../Layouts/Options/Constants";
4
4
  import multiSortRows from "../Utils/multiSortRows";
5
5
  import globalSearch from "../Utils/globalSearch";
@@ -67,15 +67,18 @@ export const DataViewProvider = ({
67
67
  setRows(globalSearch(initialData?.rows || [], search));
68
68
  }
69
69
  }, [sort, search]);
70
- const onAddProperty = (data, overrides = {}) => {
70
+ const onAddProperty = (data, overrides = {}, translation) => {
71
71
  try {
72
72
  const {
73
73
  type
74
74
  } = data;
75
75
  const key = `col_${new Date().getTime()}`;
76
+ const defaultProperty = PROPERTY_DEFAULTS[type] || {};
77
+ const translatedLabel = translation ? translation(defaultProperty.label) : defaultProperty.label;
76
78
  const newProperty = {
77
- ...(PROPERTY_DEFAULTS[type] || {}),
79
+ ...defaultProperty,
78
80
  ...overrides,
81
+ label: translatedLabel,
79
82
  key: key,
80
83
  type
81
84
  };
@@ -11,7 +11,7 @@ const useDataViewStyles = (theme, appTheme) => ({
11
11
  },
12
12
  "& table th": {
13
13
  cursor: "pointer",
14
- width: "200px"
14
+ minWidth: "200px"
15
15
  },
16
16
  "& table, th, td": {
17
17
  border: "1px solid black",
@@ -48,7 +48,7 @@ const useDataViewStyles = (theme, appTheme) => ({
48
48
  "& .tv-ck-box": {
49
49
  "& svg": {
50
50
  color: appTheme?.palette?.editor?.tv_border,
51
- '& rect': {
51
+ "& rect": {
52
52
  fill: appTheme?.palette?.editor?.tv_chk_box_fill,
53
53
  stroke: appTheme?.palette?.editor?.tv_chk_box_stroke
54
54
  }
@@ -56,9 +56,9 @@ const useDataViewStyles = (theme, appTheme) => ({
56
56
  "&.Mui-checked": {
57
57
  "& svg": {
58
58
  color: "rgba(37, 99, 235, 1)",
59
- '& rect': {
59
+ "& rect": {
60
60
  fill: appTheme?.palette?.editor?.activeColor,
61
- stroke: 'none'
61
+ stroke: "none"
62
62
  }
63
63
  }
64
64
  }
@@ -94,7 +94,7 @@ const useDataViewStyles = (theme, appTheme) => ({
94
94
  border: `1px solid ${appTheme?.palette?.editor?.tv_border}`,
95
95
  boxShadow: "0px 4px 18px 0px #0000000D",
96
96
  borderRadius: "8px",
97
- minWidth: '148px'
97
+ minWidth: "148px"
98
98
  },
99
99
  "& input": {
100
100
  paddingBottom: "0px",
@@ -140,12 +140,12 @@ const useDataViewStyles = (theme, appTheme) => ({
140
140
  width: "150px",
141
141
  border: `1px solid ${appTheme?.palette?.editor?.tv_border}`,
142
142
  borderRadius: "8px",
143
- fontFamily: 'Inter !important',
143
+ fontFamily: "Inter !important",
144
144
  background: appTheme?.palette?.editor?.tv_pop_bg,
145
145
  color: appTheme?.palette?.editor?.tv_text_primary,
146
146
  "& .MuiButtonBase-root": {
147
147
  fontSize: "14px",
148
- padding: '6px 8px',
148
+ padding: "6px 8px",
149
149
  "& svg": {
150
150
  width: "16px",
151
151
  height: "16px",
@@ -157,7 +157,7 @@ const useDataViewStyles = (theme, appTheme) => ({
157
157
  color: `${appTheme?.palette?.editor?.tv_hover_text} !important`,
158
158
  "& svg": {
159
159
  color: `${appTheme?.palette?.editor?.tv_hover_text} !important`,
160
- '& path': {
160
+ "& path": {
161
161
  stroke: `${appTheme?.palette?.editor?.tv_hover_text} !important`
162
162
  }
163
163
  }