easy-email-pro-theme 1.54.2 → 1.55.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.
package/lib/style.css CHANGED
@@ -1758,6 +1758,350 @@ THEMES:
1758
1758
  }
1759
1759
  .StandaloneElementEditorDrawer-header .arco-typography-operation-edit {
1760
1760
  color: var(--color-text-2) !important;
1761
+ }._blocksDrawer_ek6hr_1 {
1762
+ display: flex;
1763
+ flex-direction: column;
1764
+ height: 100%;
1765
+ background-color: var(--color-bg-1);
1766
+ }
1767
+
1768
+ ._content_ek6hr_8 {
1769
+ overflow-y: auto;
1770
+ padding: 0;
1771
+ background-color: var(--color-bg-1);
1772
+ }
1773
+
1774
+ ._category_ek6hr_14 {
1775
+ margin-bottom: 0;
1776
+ }
1777
+ ._category_ek6hr_14:first-child {
1778
+ margin-top: 0;
1779
+ }
1780
+
1781
+ ._categoryHeader_ek6hr_21 {
1782
+ padding: 12px 20px;
1783
+ background-color: var(--color-fill-2);
1784
+ border-bottom: 1px solid var(--color-border-2);
1785
+ }
1786
+
1787
+ ._blockList_ek6hr_27 {
1788
+ background-color: var(--color-bg-1);
1789
+ }
1790
+ ._blockList_ek6hr_27 .arco-list-item {
1791
+ padding: 14px 20px;
1792
+ cursor: pointer;
1793
+ transition: background-color 0.2s ease;
1794
+ border-bottom: 1px solid var(--color-border-2);
1795
+ }
1796
+ ._blockList_ek6hr_27 .arco-list-item:hover {
1797
+ background-color: var(--color-fill-1);
1798
+ }
1799
+ ._blockList_ek6hr_27 .arco-list-item:hover ._addButton_ek6hr_39 {
1800
+ opacity: 1;
1801
+ visibility: visible;
1802
+ }
1803
+ ._blockList_ek6hr_27 .arco-list-item:hover ._badge_ek6hr_43 {
1804
+ opacity: 0;
1805
+ visibility: hidden;
1806
+ }
1807
+ ._blockList_ek6hr_27 .arco-list-item:active {
1808
+ background-color: var(--color-fill-2);
1809
+ }
1810
+ ._blockList_ek6hr_27 .arco-list-item:last-child {
1811
+ border-bottom: none;
1812
+ }
1813
+ ._blockList_ek6hr_27 .arco-list-item-main {
1814
+ flex: 1;
1815
+ }
1816
+
1817
+ ._blockItem_ek6hr_57 {
1818
+ width: 100%;
1819
+ }
1820
+
1821
+ ._blockIcon_ek6hr_61 * {
1822
+ max-width: 24px !important;
1823
+ max-height: 24px !important;
1824
+ }
1825
+ ._blockIcon_ek6hr_61 img {
1826
+ width: 100% !important;
1827
+ height: 100% !important;
1828
+ max-width: 24px !important;
1829
+ max-height: 24px !important;
1830
+ object-fit: contain !important;
1831
+ }
1832
+ ._blockIcon_ek6hr_61 svg {
1833
+ max-width: 24px !important;
1834
+ max-height: 24px !important;
1835
+ }
1836
+ ._blockIcon_ek6hr_61 div {
1837
+ max-width: 24px !important;
1838
+ max-height: 24px !important;
1839
+ }
1840
+
1841
+ ._layoutPreview_ek6hr_81:hover {
1842
+ background-color: var(--color-fill-1);
1843
+ }
1844
+
1845
+ ._layoutAddButton_ek6hr_85 {
1846
+ white-space: nowrap;
1847
+ }
1848
+
1849
+ .LayoutWrapperItemList *, .LayoutItemList * {
1850
+ box-sizing: border-box;
1851
+ }
1852
+
1853
+ ._blockActions_ek6hr_94 {
1854
+ display: flex;
1855
+ align-items: center;
1856
+ gap: 8px;
1857
+ position: relative;
1858
+ }
1859
+
1860
+ ._badge_ek6hr_43 {
1861
+ transition: opacity 0.2s ease, visibility 0.2s ease;
1862
+ opacity: 1;
1863
+ visibility: visible;
1864
+ font-size: 11px;
1865
+ text-transform: uppercase;
1866
+ font-weight: 600;
1867
+ line-height: 1.2;
1868
+ padding: 2px 8px;
1869
+ display: inline-flex;
1870
+ align-items: center;
1871
+ gap: 4px;
1872
+ }
1873
+
1874
+ ._addButton_ek6hr_39 {
1875
+ transition: all 0.2s ease;
1876
+ opacity: 0;
1877
+ visibility: hidden;
1878
+ white-space: nowrap;
1879
+ }._blocksModal_oes30_1 {
1880
+ display: flex;
1881
+ flex-direction: column;
1882
+ height: 70vh;
1883
+ max-height: 600px;
1884
+ background-color: var(--color-bg-1);
1885
+ }
1886
+
1887
+ ._modalHeader_oes30_9 {
1888
+ display: flex;
1889
+ justify-content: space-between;
1890
+ align-items: center;
1891
+ flex-shrink: 0;
1892
+ }
1893
+
1894
+ ._headerActions_oes30_16 {
1895
+ display: flex;
1896
+ align-items: center;
1897
+ gap: 12px;
1898
+ }
1899
+
1900
+ ._searchInput_oes30_22 {
1901
+ width: 240px;
1902
+ }
1903
+
1904
+ ._modalTitle_oes30_26 {
1905
+ font-size: 16px;
1906
+ font-weight: 600;
1907
+ color: var(--color-text-1);
1908
+ }
1909
+
1910
+ ._contentArea_oes30_32 {
1911
+ overflow-y: auto;
1912
+ overflow-x: hidden;
1913
+ flex: 1;
1914
+ }
1915
+
1916
+ ._category_oes30_38 {
1917
+ margin-bottom: 32px;
1918
+ }
1919
+ ._category_oes30_38:first-child {
1920
+ margin-top: 0;
1921
+ }
1922
+
1923
+ ._categoryHeader_oes30_45 {
1924
+ padding: 12px 0;
1925
+ margin-bottom: 16px;
1926
+ font-size: 14px;
1927
+ font-weight: 600;
1928
+ text-transform: uppercase;
1929
+ letter-spacing: 0.5px;
1930
+ color: var(--color-text-2);
1931
+ border-bottom: 1px solid var(--color-border-2);
1932
+ }
1933
+
1934
+ ._gridContainer_oes30_56 {
1935
+ display: grid;
1936
+ grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
1937
+ gap: 16px;
1938
+ width: 100%;
1939
+ box-sizing: border-box;
1940
+ padding: 0 20px;
1941
+ }
1942
+
1943
+ ._gridItem_oes30_65 {
1944
+ position: relative;
1945
+ display: flex;
1946
+ flex-direction: column;
1947
+ align-items: center;
1948
+ justify-content: center;
1949
+ padding: 20px 16px;
1950
+ border: 2px solid var(--color-border-2);
1951
+ border-radius: 8px;
1952
+ background-color: var(--color-bg-1);
1953
+ cursor: pointer;
1954
+ transition: all 0.2s ease;
1955
+ box-sizing: border-box;
1956
+ min-width: 0;
1957
+ }
1958
+ ._gridItem_oes30_65:hover {
1959
+ border-color: rgb(var(--primary-3));
1960
+ background-color: var(--color-fill-1);
1961
+ }
1962
+ ._gridItem_oes30_65._selected_oes30_84 {
1963
+ border: 2px solid rgb(var(--primary-6));
1964
+ }
1965
+
1966
+ ._gridItemIcon_oes30_88 {
1967
+ width: 48px;
1968
+ height: 48px;
1969
+ display: flex;
1970
+ align-items: center;
1971
+ justify-content: center;
1972
+ margin-bottom: 12px;
1973
+ flex-shrink: 0;
1974
+ position: relative;
1975
+ }
1976
+ ._gridItemIcon_oes30_88 * {
1977
+ max-width: 48px !important;
1978
+ max-height: 48px !important;
1979
+ }
1980
+ ._gridItemIcon_oes30_88 img {
1981
+ width: 100% !important;
1982
+ height: 100% !important;
1983
+ max-width: 48px !important;
1984
+ max-height: 48px !important;
1985
+ object-fit: contain !important;
1986
+ }
1987
+ ._gridItemIcon_oes30_88 svg {
1988
+ max-width: 48px !important;
1989
+ max-height: 48px !important;
1990
+ }
1991
+ ._gridItemIcon_oes30_88 div {
1992
+ max-width: 48px !important;
1993
+ max-height: 48px !important;
1994
+ }
1995
+
1996
+ ._gridItemLabel_oes30_118 {
1997
+ font-size: 13px;
1998
+ color: var(--color-text-1);
1999
+ text-align: center;
2000
+ word-break: break-word;
2001
+ line-height: 1.4;
2002
+ }
2003
+
2004
+ ._checkIcon_oes30_126 {
2005
+ position: absolute;
2006
+ bottom: 0px;
2007
+ right: 0px;
2008
+ width: 20px;
2009
+ height: 20px;
2010
+ transform: translate(10px, 5px);
2011
+ display: flex;
2012
+ align-items: center;
2013
+ justify-content: center;
2014
+ background-color: rgb(var(--primary-6));
2015
+ border-radius: 50%;
2016
+ color: white;
2017
+ font-size: 12px;
2018
+ z-index: 1;
2019
+ }
2020
+
2021
+ ._emptyState_oes30_143 {
2022
+ display: flex;
2023
+ flex-direction: column;
2024
+ align-items: center;
2025
+ justify-content: center;
2026
+ padding: 60px 24px;
2027
+ color: var(--color-text-3);
2028
+ font-size: 14px;
2029
+ }
2030
+
2031
+ ._layoutPreview_oes30_153 {
2032
+ border-bottom: 1px solid var(--color-border-2);
2033
+ cursor: pointer;
2034
+ transition: all 0.2s ease;
2035
+ position: relative;
2036
+ border: 1px solid var(--color-border-2);
2037
+ border-radius: 4px;
2038
+ background-color: var(--color-fill-1);
2039
+ padding: 12px;
2040
+ box-sizing: border-box;
2041
+ width: 100%;
2042
+ max-width: 100%;
2043
+ }
2044
+ ._layoutPreview_oes30_153:hover {
2045
+ background-color: var(--color-fill-3);
2046
+ }
2047
+ ._layoutPreview_oes30_153._layoutSelected_oes30_169 {
2048
+ border: 1px solid rgb(var(--primary-6));
2049
+ background-color: rgba(var(--primary-1), 0.3);
2050
+ box-shadow: 0 2px 4px rgba(var(--primary-6), 0.1);
2051
+ }
2052
+
2053
+ ._layoutRowLabel_oes30_175 {
2054
+ font-size: 11px;
2055
+ color: var(--color-text-3);
2056
+ margin-top: 8px;
2057
+ margin-bottom: 8px;
2058
+ font-weight: 500;
2059
+ }
2060
+
2061
+ ._layoutRow_oes30_175 {
2062
+ height: 50px;
2063
+ display: flex;
2064
+ border: 1px solid var(--color-border-2);
2065
+ border-radius: 3px;
2066
+ margin-bottom: 8px;
2067
+ position: relative;
2068
+ background-color: var(--color-bg-1);
2069
+ overflow: hidden;
2070
+ box-sizing: border-box;
2071
+ width: 100%;
2072
+ min-width: 0;
2073
+ }
2074
+ ._layoutRow_oes30_175:last-child {
2075
+ margin-bottom: 0;
2076
+ }
2077
+
2078
+ ._layoutColumn_oes30_200 {
2079
+ height: 100%;
2080
+ display: flex;
2081
+ align-items: center;
2082
+ justify-content: center;
2083
+ font-size: 11px;
2084
+ color: var(--color-text-2);
2085
+ font-weight: 500;
2086
+ transition: all 0.2s ease;
2087
+ box-sizing: border-box;
2088
+ min-width: 0;
2089
+ flex-shrink: 1;
2090
+ }
2091
+ ._layoutColumn_oes30_200:not(:last-child) {
2092
+ border-right: 1px solid var(--color-border-2);
2093
+ }
2094
+
2095
+ ._layoutPreview_oes30_153._layoutSelected_oes30_169 ._layoutRow_oes30_175 {
2096
+ border-color: rgba(var(--primary-6), 0.3);
2097
+ background-color: rgba(var(--primary-1), 0.1);
2098
+ }
2099
+ ._layoutPreview_oes30_153._layoutSelected_oes30_169 ._layoutColumn_oes30_200 {
2100
+ color: rgb(var(--primary-6));
2101
+ font-weight: 600;
2102
+ }
2103
+ ._layoutPreview_oes30_153._layoutSelected_oes30_169 ._layoutColumn_oes30_200:not(:last-child) {
2104
+ border-right-color: rgba(var(--primary-6), 0.2);
1761
2105
  }/*---------------------------------------------------------------------------------------------
1762
2106
  * Copyright (c) Microsoft Corporation. All rights reserved.
1763
2107
  * Licensed under the MIT License. See License.txt in the project root for license information.
@@ -0,0 +1,2 @@
1
+ import React from "react";
2
+ export declare const BlocksDrawer: () => React.JSX.Element | null;
@@ -0,0 +1,2 @@
1
+ import React from "react";
2
+ export declare const BlocksModal: () => React.JSX.Element;
@@ -0,0 +1,5 @@
1
+ import React from "react";
2
+ import { Path } from "slate";
3
+ export declare const PageFooter: ({ nodePath }: {
4
+ nodePath: Path;
5
+ }) => React.JSX.Element;
@@ -0,0 +1,5 @@
1
+ import React from "react";
2
+ import { Path } from "slate";
3
+ export declare const PageHeader: ({ nodePath }: {
4
+ nodePath: Path;
5
+ }) => React.JSX.Element;
@@ -26,3 +26,4 @@ export declare const TreeSelectField: (props: import("./enhancer").EnhancerProps
26
26
  } & import("react").RefAttributes<import("@arco-design/web-react/es/TreeSelect").RefTreeSelectType>, "onChange" | "value">) => import("react").JSX.Element;
27
27
  export declare const GradientGeneratorField: (props: import("./enhancer").EnhancerProps & Omit<import("./GradientGenerator").GradientGeneratorProps, "onChange" | "value">) => import("react").JSX.Element;
28
28
  export { enhancer, SwitchField, ButtonField, ButtonGroupField, WatchField, SyncChildrenField, ColorPickerField, ImageUploaderField, EditPanelListField, EditPanelTabsField, RichTextField, SliderField, PixelField, };
29
+ export * from "./adapter";
@@ -53,6 +53,10 @@ export declare const SharedComponents: {
53
53
  onClose: () => void;
54
54
  }) => import("react").JSX.Element;
55
55
  ConfigurationPanel: ({ height, onClose, }: import("./ConfigurationPanel").ConfigurationPanelProps) => import("react").JSX.Element | null;
56
+ MergetagPopover: import("react").FC<{
57
+ element: import("../easy-email-pro-core/lib/typings").MergetagElement;
58
+ onSave: (val?: string | undefined) => void;
59
+ }> | undefined;
56
60
  CollapseWrapper: import("react").FC<import("./ConfigurationPanel/components/CollapseWrapper/CollapseWrapper").CollapseWrapperProps>;
57
61
  EditorTabs: import("react").FC<{
58
62
  children: import("react").ReactNode;
@@ -146,6 +150,15 @@ export declare const SharedComponents: {
146
150
  target?: string | undefined;
147
151
  anchorProps?: import("react").HTMLProps<HTMLAnchorElement> | undefined;
148
152
  } & Omit<import("react").AnchorHTMLAttributes<any>, "type" | "className" | "onClick">>) => import("react").JSX.Element;
153
+ BlocksDrawer: () => import("react").JSX.Element | null;
154
+ BlocksModal: () => import("react").JSX.Element;
155
+ TableTools: import("react").FC<{
156
+ element: import("../easy-email-pro-core/lib/typings").Element;
157
+ isSelected: boolean;
158
+ isHover: boolean;
159
+ nodeElement: HTMLElement;
160
+ path: import("slate").Path;
161
+ }>;
149
162
  };
150
163
  export { CollapseWrapper } from "./ConfigurationPanel/components/CollapseWrapper";
151
164
  export { AttributesPanelWrapper } from "./ConfigurationPanel/components/AttributesPanelWrapper";
@@ -7,3 +7,4 @@ export { useFontFamily } from "./useFontFamily";
7
7
  export { useEditorThemeState } from "./useEditorThemeState";
8
8
  export { useColorContext } from "./useColorContext";
9
9
  export { useMinimalistContext } from "./useMinimalistContext";
10
+ export { useBlocksDrawer } from "./useBlocksDrawer";
@@ -0,0 +1,9 @@
1
+ import { Path } from "slate";
2
+ import { ElementCategoryType } from "easy-email-pro-core";
3
+ export declare const useBlocksDrawer: () => {
4
+ openBlocksDrawer: (insertPath: Path, parentCategory: ElementCategoryType) => void;
5
+ closeBlocksDrawer: () => void;
6
+ visible: boolean;
7
+ insertPath: Path | undefined;
8
+ parentCategory: ElementCategoryType | undefined;
9
+ };
@@ -6,6 +6,9 @@ export declare const useLastSelectedNode: () => {
6
6
  isChanged: boolean;
7
7
  };
8
8
  export declare const useCopyBlock: () => (path: Path) => void;
9
+ export declare const useAddBlock: () => (block: Partial<Element> & {
10
+ type: Element["type"];
11
+ }, path: Path, toNext?: boolean) => void;
9
12
  export declare const useMoveUp: () => (path: Path) => Path | undefined;
10
13
  export declare const useMoveDown: () => (path: Path) => Path | undefined;
11
14
  export declare const useDeleteBlock: () => (path: Path) => void;
@@ -19,4 +22,7 @@ export declare const useElementInteract: () => {
19
22
  resetSelectedNode: () => void;
20
23
  moveUp: (path: Path) => Path | undefined;
21
24
  moveDown: (path: Path) => Path | undefined;
25
+ addBlock: (block: Partial<Element> & {
26
+ type: Element["type"];
27
+ }, path: Path, toNext?: boolean) => void;
22
28
  };
@@ -3,3 +3,5 @@ export * from "./hooks";
3
3
  export * from "./typings";
4
4
  export * from "./components";
5
5
  export * from "./utils";
6
+ export * from "./components/Form/adapter";
7
+ export declare const IconFontStyle: string;
@@ -2,3 +2,4 @@ export * from "./mjmlToJson";
2
2
  export * from "./previewLoadImage";
3
3
  export * from "./getMergeTagsByType";
4
4
  export * from "./assignIdsToElementTree";
5
+ export * from "./getFallbackValue";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "easy-email-pro-theme",
3
- "version": "1.54.2",
3
+ "version": "1.55.0",
4
4
  "description": "",
5
5
  "files": [
6
6
  "lib"