@flozy/editor 10.6.6 → 10.6.7
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.
- package/dist/Editor/ChatEditor.js +16 -17
- package/dist/Editor/CommonEditor.js +13 -116
- package/dist/Editor/DialogWrapper.js +25 -31
- package/dist/Editor/Editor.css +11 -31
- package/dist/Editor/Elements/AI/PopoverAIInput.js +3 -11
- package/dist/Editor/Elements/AI/Styles.js +0 -1
- package/dist/Editor/Elements/Accordion/Accordion.js +4 -3
- package/dist/Editor/Elements/Accordion/AccordionSummary.js +1 -2
- package/dist/Editor/Elements/AppHeader/AppHeader.js +3 -3
- package/dist/Editor/Elements/Button/EditorButton.js +9 -25
- package/dist/Editor/Elements/Color Picker/ColorButtons.js +14 -61
- package/dist/Editor/Elements/Color Picker/ColorPicker.css +1 -25
- package/dist/Editor/Elements/Color Picker/ColorPicker.js +7 -10
- package/dist/Editor/Elements/Color Picker/Styles.js +13 -15
- package/dist/Editor/Elements/DataView/Layouts/DataTypes/Components/MultiSelect.js +454 -0
- package/dist/Editor/Elements/DataView/Layouts/Options/EditOption.js +4 -4
- package/dist/Editor/Elements/Embed/Video.js +1 -1
- package/dist/Editor/Elements/Form/FormElements/FormTextArea.js +1 -1
- package/dist/Editor/Elements/Form/FormField.js +1 -1
- package/dist/Editor/Elements/Form/Workflow/Styles.js +22 -24
- package/dist/Editor/Elements/FreeGrid/FreeGrid.js +30 -31
- package/dist/Editor/Elements/FreeGrid/FreeGridBox.js +4 -7
- package/dist/Editor/Elements/FreeGrid/Options/More.js +7 -7
- package/dist/Editor/Elements/FreeGrid/Options/sectionItemOptions.js +1 -1
- package/dist/Editor/Elements/FreeGrid/styles.js +0 -9
- package/dist/Editor/Elements/Grid/GridItem.js +1 -1
- package/dist/Editor/Elements/SimpleText/style.js +2 -2
- package/dist/Editor/Elements/Table/Table.js +3 -3
- package/dist/Editor/Elements/Title/title.js +6 -6
- package/dist/Editor/Elements/Variables/VariableButton.js +1 -10
- package/dist/Editor/MiniEditor.js +1 -2
- package/dist/Editor/Styles/EditorStyles.js +4 -4
- package/dist/Editor/Toolbar/FormatTools/Dropdown.js +3 -27
- package/dist/Editor/Toolbar/FormatTools/FontFamilyAutocomplete.js +3 -4
- package/dist/Editor/Toolbar/FormatTools/MarkButton.js +2 -2
- package/dist/Editor/Toolbar/FormatTools/TextSize.js +13 -10
- package/dist/Editor/Toolbar/Mini/MiniToolbar.js +1 -2
- package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/MiniColorPicker.js +2 -4
- package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/SelectFontSize.js +13 -6
- package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/SelectTypography.js +42 -167
- package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/index.js +4 -7
- package/dist/Editor/Toolbar/PopupTool/PopperHeader.js +1 -2
- package/dist/Editor/Toolbar/PopupTool/PopupToolStyle.js +9 -69
- package/dist/Editor/Toolbar/PopupTool/TextFormat.js +10 -58
- package/dist/Editor/Toolbar/PopupTool/index.js +2 -5
- package/dist/Editor/Toolbar/toolbarGroups.js +6 -48
- package/dist/Editor/common/ColorPickerButton.js +16 -38
- package/dist/Editor/common/DnD/DragHandleButton.js +1 -1
- package/dist/Editor/common/FontLoader/FontLoader.js +0 -3
- package/dist/Editor/common/Icon.js +0 -28
- package/dist/Editor/common/ImageSelector/ImageSelector.js +2 -2
- package/dist/Editor/common/ImageSelector/Styles.js +9 -3
- package/dist/Editor/common/LinkSettings/NavComponents.js +2 -6
- package/dist/Editor/common/RnD/ElementSettings/OtherSettings/Settings.js +1 -2
- package/dist/Editor/common/RnD/ElementSettings/Settings/AppHeaderSettings.js +2 -3
- package/dist/Editor/common/RnD/ElementSettings/Settings/BoxSettings.js +2 -3
- package/dist/Editor/common/RnD/ElementSettings/Settings/ButtonSettings.js +2 -3
- package/dist/Editor/common/RnD/ElementSettings/Settings/CodeSettings.js +2 -3
- package/dist/Editor/common/RnD/ElementSettings/Settings/FormSettings.js +2 -4
- package/dist/Editor/common/RnD/ElementSettings/Settings/ImageSettings.js +2 -3
- package/dist/Editor/common/RnD/ElementSettings/Settings/TableSettings.js +2 -3
- package/dist/Editor/common/RnD/ElementSettings/Settings/TextSettings.js +1 -3
- package/dist/Editor/common/RnD/ElementSettings/Settings/VideoSettings.js +2 -3
- package/dist/Editor/common/RnD/SwitchViewport/SwitchViewport.js +2 -11
- package/dist/Editor/common/RnD/Theme/ViewportStimulator.js +3 -6
- package/dist/Editor/common/RnD/Utils/gridDropItem.js +18 -28
- package/dist/Editor/common/RnD/Utils/index.js +1 -3
- package/dist/Editor/common/RnD/VirtualElement/VirtualTextElement.js +58 -45
- package/dist/Editor/common/RnD/VirtualElement/helper.js +130 -320
- package/dist/Editor/common/RnD/VirtualElement/styles.js +0 -22
- package/dist/Editor/common/RnD/index.js +11 -42
- package/dist/Editor/common/Shorthands/elements.js +0 -54
- package/dist/Editor/common/StyleBuilder/buttonStyle.js +2 -4
- package/dist/Editor/common/StyleBuilder/embedVideoStyle.js +0 -4
- package/dist/Editor/common/StyleBuilder/fieldTypes/backgroundImage.js +0 -5
- package/dist/Editor/common/StyleBuilder/fieldTypes/bannerSpacing.js +2 -12
- package/dist/Editor/common/StyleBuilder/fieldTypes/borderRadius.js +7 -15
- package/dist/Editor/common/StyleBuilder/fieldTypes/card.js +8 -16
- package/dist/Editor/common/StyleBuilder/fieldTypes/color.js +10 -36
- package/dist/Editor/common/StyleBuilder/fieldTypes/fontSize.js +7 -16
- package/dist/Editor/common/StyleBuilder/fieldTypes/index.js +1 -3
- package/dist/Editor/common/StyleBuilder/fieldTypes/menusArray.js +0 -2
- package/dist/Editor/common/StyleBuilder/fieldTypes/textOptions.js +7 -15
- package/dist/Editor/common/Uploader.js +0 -16
- package/dist/Editor/common/iconListV2.js +20 -20
- package/dist/Editor/common/iconslist.js +0 -21
- package/dist/Editor/commonStyle.js +64 -107
- package/dist/Editor/helper/index.js +2 -7
- package/dist/Editor/helper/theme.js +2 -203
- package/dist/Editor/hooks/useMouseMove.js +3 -9
- package/dist/Editor/plugins/withEmbeds.js +1 -1
- package/dist/Editor/plugins/withHTML.js +1 -3
- package/dist/Editor/plugins/withTable.js +1 -1
- package/dist/Editor/theme/ThemeList.js +173 -50
- package/dist/Editor/utils/SlateUtilityFunctions.js +18 -152
- package/dist/Editor/utils/accordion.js +24 -55
- package/dist/Editor/utils/button.js +17 -1
- package/dist/Editor/utils/draftToSlate.js +2 -3
- package/dist/Editor/utils/events.js +1 -1
- package/dist/Editor/utils/font.js +37 -40
- package/dist/Editor/utils/helper.js +24 -99
- package/dist/Editor/utils/insertAppHeader.js +4 -8
- package/package.json +4 -4
- package/dist/Editor/Elements/FreeGrid/helper.js +0 -115
- package/dist/Editor/Toolbar/PopupTool/ThemeTextFormat.js +0 -439
- package/dist/Editor/assets/svg/BackIcon.js +0 -18
- package/dist/Editor/assets/svg/ThemeIcons.js +0 -293
- package/dist/Editor/common/CustomColorPicker/index.js +0 -130
- package/dist/Editor/common/CustomColorPicker/style.js +0 -53
- package/dist/Editor/common/CustomDialog2/index.js +0 -94
- package/dist/Editor/common/CustomDialog2/style.js +0 -67
- package/dist/Editor/common/CustomSelect.js +0 -43
- package/dist/Editor/common/RnD/Theme/MainThemeProvider.js +0 -17
- package/dist/Editor/common/StyleBuilder/fieldTypes/embedUpload.js +0 -115
- package/dist/Editor/helper/textIndeces.js +0 -58
- package/dist/Editor/hooks/useEditorTheme.js +0 -153
- package/dist/Editor/hooks/useThemeValues.js +0 -63
- package/dist/Editor/theme/index.js +0 -149
- package/dist/Editor/themeSettings/ActiveTheme.js +0 -82
- package/dist/Editor/themeSettings/buttons/index.js +0 -300
- package/dist/Editor/themeSettings/buttons/style.js +0 -23
- package/dist/Editor/themeSettings/colorTheme/index.js +0 -310
- package/dist/Editor/themeSettings/colorTheme/style.js +0 -81
- package/dist/Editor/themeSettings/fonts/PreviewElement.js +0 -121
- package/dist/Editor/themeSettings/fonts/index.js +0 -240
- package/dist/Editor/themeSettings/fonts/style.js +0 -62
- package/dist/Editor/themeSettings/icons.js +0 -60
- package/dist/Editor/themeSettings/index.js +0 -380
- package/dist/Editor/themeSettings/style.js +0 -299
- package/dist/Editor/themeSettingsAI/icons.js +0 -96
- package/dist/Editor/themeSettingsAI/index.js +0 -355
- package/dist/Editor/themeSettingsAI/saveTheme.js +0 -202
- package/dist/Editor/themeSettingsAI/style.js +0 -332
@@ -7,43 +7,43 @@ export const sizeMap = {
|
|
7
7
|
export const fontFamilyMap = {
|
8
8
|
PoppinsRegular: "PoppinsRegular",
|
9
9
|
PoppinsBold: "PoppinsBold",
|
10
|
-
sans:
|
11
|
-
serif:
|
12
|
-
monospace:
|
13
|
-
roboto: "Roboto, sans-serif",
|
14
|
-
qwitcher: '
|
15
|
-
garamond: '
|
16
|
-
anton: "Anton, sans-serif",
|
17
|
-
dmserif: '
|
18
|
-
inter: "Inter, sans-serif",
|
19
|
-
libre: '
|
20
|
-
montserrat: "Montserrat, sans-serif",
|
21
|
-
opensans: '
|
22
|
-
publicsans: '
|
23
|
-
raleway: "Raleway, sans-serif",
|
24
|
-
spacemono: '
|
25
|
-
bulgarian: '
|
26
|
-
impact: "Impact, serif",
|
27
|
-
redacted: '
|
28
|
-
greatVibes: '
|
29
|
-
zeyada: "Zeyada, cursive",
|
30
|
-
allura: "Allura, cursive",
|
31
|
-
pinyon: '
|
32
|
-
muellerhoff: '
|
33
|
-
dawning: '
|
10
|
+
sans: "Helvetica,Arial, sans serif",
|
11
|
+
serif: "Georgia, Times New Roaman,serif",
|
12
|
+
monospace: "Monaco, Courier New,monospace",
|
13
|
+
roboto: "'Roboto', sans-serif",
|
14
|
+
qwitcher: "'Qwitcher Grypen', cursive",
|
15
|
+
garamond: "'EB Garamond', serif",
|
16
|
+
anton: "'Anton', sans-serif",
|
17
|
+
dmserif: "'DM Serif Text', serif",
|
18
|
+
inter: "'Inter', sans-serif",
|
19
|
+
libre: "'Libre Baskerville', serif",
|
20
|
+
montserrat: "'Montserrat', sans-serif",
|
21
|
+
opensans: "'Open Sans', sans-serif",
|
22
|
+
publicsans: "'Public Sans', sans-serif",
|
23
|
+
raleway: "'Raleway', sans-serif",
|
24
|
+
spacemono: "'Space Mono', sans-serif",
|
25
|
+
bulgarian: "'Bulgarian Garamond', monospace",
|
26
|
+
impact: "'Impact', serif",
|
27
|
+
redacted: "'Redacted Script', cursive",
|
28
|
+
greatVibes: "'Great Vibes', cursive",
|
29
|
+
zeyada: "'Zeyada', cursive",
|
30
|
+
allura: "'Allura', cursive",
|
31
|
+
pinyon: "'Pinyon Script', cursive",
|
32
|
+
muellerhoff: "'Herr Von Muellerhoff', cursive",
|
33
|
+
dawning: "'Dawning of a New Day', cursive",
|
34
34
|
// New Font Added for Type Signature
|
35
|
-
comingsoon: '
|
36
|
-
dancingScript: '
|
37
|
-
engagement: "Engagement, cursive",
|
38
|
-
gaegu: "Gaegu, cursive",
|
39
|
-
ingridDarling: '
|
40
|
-
kitaOne: "
|
41
|
-
laBelleAurore: '
|
42
|
-
lobster: "Lobster, cursive",
|
43
|
-
meaCulpa: '
|
44
|
-
meddon: "Meddon, cursive",
|
45
|
-
merriWeather: "Merriweather, serif",
|
46
|
-
theGirlNextDoor: '
|
35
|
+
comingsoon: "'Coming Soon', cursive",
|
36
|
+
dancingScript: "'Dancing Script', cursive",
|
37
|
+
engagement: "'Engagement', cursive",
|
38
|
+
gaegu: "'Gaegu', cursive",
|
39
|
+
ingridDarling: "'Ingrid Darling', cursive",
|
40
|
+
kitaOne: "'Kite One', sans - serif",
|
41
|
+
laBelleAurore: "'La Belle Aurore', cursive",
|
42
|
+
lobster: "'Lobster', cursive",
|
43
|
+
meaCulpa: "'Mea Culpa', cursive",
|
44
|
+
meddon: "'Meddon', cursive",
|
45
|
+
merriWeather: "'Merriweather', serif",
|
46
|
+
theGirlNextDoor: "'The Girl Next Door', cursive"
|
47
47
|
};
|
48
48
|
export const fontOptions = Object.keys(fontFamilyMap).map(m => {
|
49
49
|
return {
|
@@ -62,10 +62,7 @@ export const signedTextFonts = Object.keys(fontFamilyMap).slice(-12).map(m => {
|
|
62
62
|
export const headingMap = {
|
63
63
|
headingOne: "32px",
|
64
64
|
headingTwo: "24px",
|
65
|
-
headingThree: "19px"
|
66
|
-
headingFour: "16px",
|
67
|
-
headingFive: "13px",
|
68
|
-
headingSix: "11px"
|
65
|
+
headingThree: "19px"
|
69
66
|
};
|
70
67
|
export const fontWeightOptions = [{
|
71
68
|
text: "Bold",
|
@@ -2,7 +2,6 @@ import { Editor, Node, Transforms, Element, Path, Range, Text } from "slate";
|
|
2
2
|
import { ReactEditor } from "slate-react";
|
3
3
|
import insertNewLine from "./insertNewLine";
|
4
4
|
import { getDevice } from "../helper/theme";
|
5
|
-
import { activeMark, getSelectedElementStyle } from "./SlateUtilityFunctions";
|
6
5
|
import { getCurrentElementText } from "../plugins/withHTML";
|
7
6
|
export const windowVar = {};
|
8
7
|
let ST_TIMEOUT = null;
|
@@ -218,13 +217,9 @@ export const handleInsertLastElement = (event, editor) => {
|
|
218
217
|
};
|
219
218
|
export const isListItem = editor => {
|
220
219
|
const format = ["list-item", "check-list-item", "accordion-summary", "headingOne", "headingTwo", "headingThree"];
|
221
|
-
const [
|
220
|
+
const [node] = Editor.nodes(editor, {
|
222
221
|
match: n => !Editor.isEditor(n) && Element.isElement(n) && format.indexOf(n.type) > -1
|
223
222
|
});
|
224
|
-
let node = node1;
|
225
|
-
if (node2 && node2[0] && node2[0].type === "accordion-summary") {
|
226
|
-
node = node2;
|
227
|
-
}
|
228
223
|
return node;
|
229
224
|
};
|
230
225
|
export const getNode = (editor, path) => {
|
@@ -339,8 +334,9 @@ const handleLinkBtnClick = (e, props, isMobilePreview, metadata) => {
|
|
339
334
|
}
|
340
335
|
}
|
341
336
|
};
|
342
|
-
export const handleLinkType = (url, linkType, readOnly, openInNewTab, onClick = () => {},
|
343
|
-
|
337
|
+
export const handleLinkType = (url, linkType, readOnly, openInNewTab, onClick = () => {}, isEditMode, isCustomMobile,
|
338
|
+
// for drawer in App Header
|
339
|
+
metadata = {}) => {
|
344
340
|
const props = {};
|
345
341
|
if (!readOnly) {
|
346
342
|
return {
|
@@ -496,34 +492,6 @@ export const decodeString = str => {
|
|
496
492
|
console.log(err);
|
497
493
|
}
|
498
494
|
};
|
499
|
-
export const getContrastColor = color => {
|
500
|
-
let r, g, b;
|
501
|
-
|
502
|
-
// Check if the color is in hex format
|
503
|
-
if (color.startsWith("#")) {
|
504
|
-
r = parseInt(color.substring(1, 3), 16);
|
505
|
-
g = parseInt(color.substring(3, 5), 16);
|
506
|
-
b = parseInt(color.substring(5, 7), 16);
|
507
|
-
}
|
508
|
-
// Check if the color is in RGB/RGBA format
|
509
|
-
else if (color.startsWith("rgb")) {
|
510
|
-
const rgbValues = color.replace(/^rgba?\(|\s+|\)$/g, "") // Remove the rgb/rgba and spaces
|
511
|
-
.split(","); // Split the values into an array
|
512
|
-
|
513
|
-
r = parseInt(rgbValues[0]);
|
514
|
-
g = parseInt(rgbValues[1]);
|
515
|
-
b = parseInt(rgbValues[2]);
|
516
|
-
} else {
|
517
|
-
// If the format is not recognized, default to black text
|
518
|
-
return "#000000";
|
519
|
-
}
|
520
|
-
|
521
|
-
// Calculate relative luminance
|
522
|
-
const luminance = (0.299 * r + 0.587 * g + 0.114 * b) / 255;
|
523
|
-
|
524
|
-
// Return black for light colors, white for dark colors
|
525
|
-
return luminance > 0.5 ? "#000000" : "#FFFFFF";
|
526
|
-
};
|
527
495
|
export const onDeleteKey = (event, {
|
528
496
|
editor
|
529
497
|
}) => {
|
@@ -741,10 +709,6 @@ export const isRestrictedNode = (event, editor) => {
|
|
741
709
|
return isNodeRestricted;
|
742
710
|
}
|
743
711
|
};
|
744
|
-
export function capitalizeFirstLetter(str) {
|
745
|
-
if (!str) return str;
|
746
|
-
return str.charAt(0).toUpperCase() + str.slice(1);
|
747
|
-
}
|
748
712
|
export const insertLineBreakAtEndOfPath = (editor, path) => {
|
749
713
|
try {
|
750
714
|
const [node, nodePath] = Editor.node(editor, path); // Get the node at the specified path
|
@@ -763,13 +727,6 @@ export const insertLineBreakAtEndOfPath = (editor, path) => {
|
|
763
727
|
console.log(err);
|
764
728
|
}
|
765
729
|
};
|
766
|
-
export function isHavingSelection(editor) {
|
767
|
-
try {
|
768
|
-
return editor?.selection && !Range.isCollapsed(editor.selection);
|
769
|
-
} catch (err) {
|
770
|
-
console.log(err);
|
771
|
-
}
|
772
|
-
}
|
773
730
|
const omitNodes = ["site-settings", "page-settings"];
|
774
731
|
export function getInitialValue(value = [], readOnly) {
|
775
732
|
if (readOnly === "readonly" && value?.length) {
|
@@ -800,17 +757,20 @@ export function getInitialValue(value = [], readOnly) {
|
|
800
757
|
}
|
801
758
|
return value;
|
802
759
|
}
|
760
|
+
export function capitalizeFirstLetter(str) {
|
761
|
+
if (!str) return str;
|
762
|
+
return str.charAt(0).toUpperCase() + str.slice(1);
|
763
|
+
}
|
764
|
+
export function isHavingSelection(editor) {
|
765
|
+
try {
|
766
|
+
return editor?.selection && !Range.isCollapsed(editor.selection);
|
767
|
+
} catch (err) {
|
768
|
+
console.log(err);
|
769
|
+
}
|
770
|
+
}
|
803
771
|
export function getSelectedCls(defaultCls = "", selected, selectedClsName = "selected") {
|
804
772
|
return `${defaultCls} ${selected ? selectedClsName : ""}`;
|
805
773
|
}
|
806
|
-
export function handleNegativeInteger(val) {
|
807
|
-
return val < 0 ? 0 : val;
|
808
|
-
}
|
809
|
-
export const containsSurrogatePair = text => {
|
810
|
-
// Match surrogate pairs (high and low surrogate)
|
811
|
-
const surrogatePairRegex = /[\uD800-\uDBFF][\uDC00-\uDFFF]/;
|
812
|
-
return surrogatePairRegex.test(text);
|
813
|
-
};
|
814
774
|
export const getNodeWithType = (editor, nodeType = "", otherOptions) => {
|
815
775
|
try {
|
816
776
|
const options = {
|
@@ -824,6 +784,11 @@ export const getNodeWithType = (editor, nodeType = "", otherOptions) => {
|
|
824
784
|
return [];
|
825
785
|
}
|
826
786
|
};
|
787
|
+
export const containsSurrogatePair = text => {
|
788
|
+
// Match surrogate pairs (high and low surrogate)
|
789
|
+
const surrogatePairRegex = /[\uD800-\uDBFF][\uDC00-\uDFFF]/;
|
790
|
+
return surrogatePairRegex.test(text);
|
791
|
+
};
|
827
792
|
export const getSlateDom = (editor, range) => {
|
828
793
|
try {
|
829
794
|
const slateDom = ReactEditor.toDOMRange(editor, range);
|
@@ -864,8 +829,7 @@ export const clearWindowSelection = () => {
|
|
864
829
|
|
865
830
|
export const viewSlateSelection = () => {
|
866
831
|
// if ai is opened, remove the window selection class and open then slate selection, To resolve: focussing on the ai input removes window selection automatically
|
867
|
-
|
868
|
-
|
832
|
+
clearWindowSelection();
|
869
833
|
const selectionBg = "rgba(35, 131, 226, 0.35)";
|
870
834
|
const root = document.documentElement;
|
871
835
|
root.style.setProperty("--slate-highlight-bg", selectionBg);
|
@@ -874,6 +838,9 @@ export const hideSlateSelection = () => {
|
|
874
838
|
const root = document.documentElement;
|
875
839
|
root.style.setProperty("--slate-highlight-bg", "none");
|
876
840
|
};
|
841
|
+
export function handleNegativeInteger(val) {
|
842
|
+
return val < 0 ? 0 : val;
|
843
|
+
}
|
877
844
|
export const insertSlashNode = (editor, insertNode) => {
|
878
845
|
try {
|
879
846
|
// Delete the currently selected text
|
@@ -922,48 +889,6 @@ export const getCurrentNodeText = editor => {
|
|
922
889
|
console.log("Error:", error);
|
923
890
|
}
|
924
891
|
};
|
925
|
-
function convertColorToRgb(color) {
|
926
|
-
if (color?.startsWith("#")) {
|
927
|
-
// HEX to RGB
|
928
|
-
let hex = color.replace("#", "");
|
929
|
-
let r, g, b;
|
930
|
-
if (hex.length === 3) {
|
931
|
-
hex = hex.split("").map(x => x + x).join("");
|
932
|
-
}
|
933
|
-
if (hex.length === 6) {
|
934
|
-
[r, g, b] = [hex.substring(0, 2), hex.substring(2, 4), hex.substring(4, 6)].map(val => parseInt(val, 16));
|
935
|
-
return `rgb(${r}, ${g}, ${b})`;
|
936
|
-
}
|
937
|
-
} else {
|
938
|
-
return color;
|
939
|
-
}
|
940
|
-
}
|
941
|
-
export const getSelectedColor = (selectedColor, theme, hideThemeColors) => {
|
942
|
-
const colorVars = hideThemeColors ? null : theme?.vars?.colors;
|
943
|
-
let selectedValue = selectedColor;
|
944
|
-
if (colorVars) {
|
945
|
-
const convertedColor = convertColorToRgb(selectedColor);
|
946
|
-
Object.entries(theme.colors).forEach(([key, value]) => {
|
947
|
-
const convertedThemeColor = convertColorToRgb(value);
|
948
|
-
if (convertedThemeColor === convertedColor) {
|
949
|
-
selectedValue = colorVars[key];
|
950
|
-
}
|
951
|
-
});
|
952
|
-
}
|
953
|
-
return selectedValue;
|
954
|
-
};
|
955
|
-
const themeTextFormats = ["headingOne", "headingTwo", "headingThree", "headingFour", "headingFive", "headingSix", "paragraphOne", "paragraphTwo", "paragraphThree"];
|
956
|
-
export const getSelectedElementColor = (editor, format, theme) => {
|
957
|
-
const [isThemeText] = Editor.nodes(editor, {
|
958
|
-
at: editor.selection,
|
959
|
-
match: n => themeTextFormats.includes(n?.type)
|
960
|
-
});
|
961
|
-
if (!isThemeText) {
|
962
|
-
return activeMark(editor, "color") || "#000000";
|
963
|
-
}
|
964
|
-
const color = getSelectedElementStyle(format, editor, format);
|
965
|
-
return getSelectedColor(color, theme);
|
966
|
-
};
|
967
892
|
export const isHavingColor = color => {
|
968
893
|
if (!color) {
|
969
894
|
return false;
|
@@ -8,31 +8,27 @@ export const appHeaderNode = ({
|
|
8
8
|
appLogo: "none",
|
9
9
|
menus: menus || [{
|
10
10
|
type: "menu",
|
11
|
-
url: "",
|
12
|
-
placeholder: "home",
|
11
|
+
url: "home",
|
13
12
|
target: "",
|
14
13
|
text: "Home",
|
15
14
|
linkType: "page"
|
16
15
|
}, {
|
17
16
|
type: "menu",
|
18
|
-
url: "",
|
19
|
-
placeholder: "wireframe2",
|
17
|
+
url: "wireframe2",
|
20
18
|
target: "",
|
21
19
|
text: "Wireframe",
|
22
20
|
linkType: "page"
|
23
21
|
}, {
|
24
22
|
type: "menu",
|
25
|
-
url: "",
|
23
|
+
url: "https://www.google.com",
|
26
24
|
target: "",
|
27
|
-
placeholder: "Work",
|
28
25
|
text: "Work",
|
29
26
|
linkType: "webAddress"
|
30
27
|
}, {
|
31
28
|
type: "menu",
|
32
|
-
url: "",
|
29
|
+
url: "https://www.google.com",
|
33
30
|
target: "",
|
34
31
|
text: "Contact",
|
35
|
-
placeholder: "Contact",
|
36
32
|
linkType: "webAddress"
|
37
33
|
}],
|
38
34
|
menuStyle: "stacked",
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@flozy/editor",
|
3
|
-
"version": "10.6.
|
3
|
+
"version": "10.6.7",
|
4
4
|
"description": "An Editor for flozy app brain",
|
5
5
|
"files": [
|
6
6
|
"dist"
|
@@ -38,6 +38,7 @@
|
|
38
38
|
"react-icons": "^4.10.1",
|
39
39
|
"react-katex": "^3.0.1",
|
40
40
|
"react-rnd": "^10.4.11",
|
41
|
+
"react-scripts": "5.0.1",
|
41
42
|
"react-signature-canvas": "^1.0.6",
|
42
43
|
"react-slick": "^0.29.0",
|
43
44
|
"sanitize-html": "^2.13.0",
|
@@ -68,7 +69,7 @@
|
|
68
69
|
"storybook": "storybook dev -p 6006",
|
69
70
|
"build-storybook": "NODE_OPTIONS='--max_old_space_size=4096' storybook build",
|
70
71
|
"publish:npm": "rm -rf dist && mkdir dist && babel src/components -d dist --copy-files",
|
71
|
-
"publish:local": "rm -rf /Users/
|
72
|
+
"publish:local": "rm -rf /Users/agmac03/flozy/client/node_modules/@flozy/editor/dist && babel src/components -d /Users/agmac03/flozy/client/node_modules/@flozy/editor/dist --copy-files",
|
72
73
|
"publish:flozy": "./publish-flozy.sh",
|
73
74
|
"publish:flozy2": "./publish-flozy2.sh",
|
74
75
|
"publish:permission": "chmod +x publish-flozy.sh && chmod +x publish-flozy2.sh"
|
@@ -121,8 +122,7 @@
|
|
121
122
|
"prop-types": "^15.8.1",
|
122
123
|
"source-map-explorer": "^2.5.3",
|
123
124
|
"storybook": "^7.4.0",
|
124
|
-
"webpack": "^5.88.2"
|
125
|
-
"react-scripts": "5.0.1"
|
125
|
+
"webpack": "^5.88.2"
|
126
126
|
},
|
127
127
|
"overrides": {
|
128
128
|
"react-refresh": "0.11.0"
|
@@ -1,115 +0,0 @@
|
|
1
|
-
import { ROW_HEIGHT } from "../../common/RnD/Utils/gridDropItem";
|
2
|
-
import { getElementOffset } from "../../common/RnD/VirtualElement/VirtualTextElement";
|
3
|
-
import { RND_ITEMS } from "../../helper";
|
4
|
-
export const ELEMENT_CASE = {
|
5
|
-
ADD_TEXT: "addText",
|
6
|
-
ADD_BUTTON: "addButton",
|
7
|
-
ADD_SIGNATURE: "addSignature",
|
8
|
-
ADD_IMAGE: "addImage",
|
9
|
-
ADD_VIDEO: "addVideo",
|
10
|
-
ADD_TABLE: "addTable",
|
11
|
-
ADD_CODE: "addCode",
|
12
|
-
ADD_BOX: "addBox",
|
13
|
-
ADD_FORM: "addForm",
|
14
|
-
ADD_APP_HEADER: "addAppHeader",
|
15
|
-
ADD_DIVIDER: "addDivider"
|
16
|
-
};
|
17
|
-
const commonXsValues = {
|
18
|
-
top_xs: 0,
|
19
|
-
marginTop_xs: 12,
|
20
|
-
left_xs: 24,
|
21
|
-
width_xs: 272,
|
22
|
-
xs_updatedOn: new Date().getTime()
|
23
|
-
};
|
24
|
-
const elementXsValues = {
|
25
|
-
[ELEMENT_CASE.ADD_TEXT]: {
|
26
|
-
...commonXsValues,
|
27
|
-
height_xs: 50
|
28
|
-
},
|
29
|
-
[ELEMENT_CASE.ADD_BUTTON]: {
|
30
|
-
...commonXsValues,
|
31
|
-
height_xs: 50
|
32
|
-
},
|
33
|
-
[ELEMENT_CASE.ADD_SIGNATURE]: {
|
34
|
-
...commonXsValues,
|
35
|
-
height_xs: 173
|
36
|
-
},
|
37
|
-
[ELEMENT_CASE.ADD_IMAGE]: {
|
38
|
-
...commonXsValues,
|
39
|
-
height_xs: 80
|
40
|
-
},
|
41
|
-
[ELEMENT_CASE.ADD_VIDEO]: {
|
42
|
-
...commonXsValues,
|
43
|
-
height_xs: 300
|
44
|
-
},
|
45
|
-
[ELEMENT_CASE.ADD_TABLE]: {
|
46
|
-
...commonXsValues,
|
47
|
-
height_xs: 165
|
48
|
-
},
|
49
|
-
[ELEMENT_CASE.ADD_CODE]: {
|
50
|
-
...commonXsValues,
|
51
|
-
height: 300
|
52
|
-
},
|
53
|
-
[ELEMENT_CASE.ADD_BOX]: {
|
54
|
-
...commonXsValues,
|
55
|
-
height_xs: 300
|
56
|
-
},
|
57
|
-
[ELEMENT_CASE.ADD_FORM]: {
|
58
|
-
...commonXsValues,
|
59
|
-
height_xs: 80
|
60
|
-
},
|
61
|
-
[ELEMENT_CASE.ADD_APP_HEADER]: {
|
62
|
-
...commonXsValues,
|
63
|
-
height_xs: 80
|
64
|
-
},
|
65
|
-
[ELEMENT_CASE.ADD_DIVIDER]: {
|
66
|
-
...commonXsValues,
|
67
|
-
height_xs: 24
|
68
|
-
}
|
69
|
-
};
|
70
|
-
export const findMaxYValue = (sectionItems, breakpoint) => {
|
71
|
-
let maxY = 0;
|
72
|
-
sectionItems.forEach(item => {
|
73
|
-
const isHidden = breakpoint === "xs" && item.children.some(c => c.xsHidden);
|
74
|
-
if (item?.type && RND_ITEMS.includes(item.type) && !isHidden) {
|
75
|
-
const {
|
76
|
-
bottom
|
77
|
-
} = getElementOffset(item, breakpoint === "lg" ? "lg" : "xs");
|
78
|
-
maxY = Math.max(maxY, bottom);
|
79
|
-
}
|
80
|
-
});
|
81
|
-
return maxY;
|
82
|
-
};
|
83
|
-
export const convertToGridArea = y => {
|
84
|
-
// Calculate grid position
|
85
|
-
const row = Math.floor(y / ROW_HEIGHT) + 1;
|
86
|
-
|
87
|
-
// to calculate difference inside the grid
|
88
|
-
const marginTop = Math.abs((row - 1) * ROW_HEIGHT - y);
|
89
|
-
|
90
|
-
// Update grid area
|
91
|
-
const gridArea = `${row} / 1 / ${row + 1} / 2`;
|
92
|
-
return {
|
93
|
-
gridArea,
|
94
|
-
marginTop
|
95
|
-
};
|
96
|
-
};
|
97
|
-
export const getNewElementXsValues = (type, sectionItems) => {
|
98
|
-
const values = elementXsValues[type] || {};
|
99
|
-
const y = sectionItems?.length ? findMaxYValue(sectionItems) : 0;
|
100
|
-
const {
|
101
|
-
gridArea,
|
102
|
-
marginTop
|
103
|
-
} = convertToGridArea(y);
|
104
|
-
const BUFFER_MARGIN_TOP = 12;
|
105
|
-
const xsVal = {
|
106
|
-
...values,
|
107
|
-
gridArea_xs: gridArea,
|
108
|
-
marginTop_xs: marginTop + BUFFER_MARGIN_TOP
|
109
|
-
};
|
110
|
-
const sectionHeightXs = y + values?.height_xs + BUFFER_MARGIN_TOP + 12;
|
111
|
-
return {
|
112
|
-
xsVal,
|
113
|
-
sectionHeightXs
|
114
|
-
};
|
115
|
-
};
|