easy-email-pro-theme 1.52.0 → 1.53.1

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 (28) hide show
  1. package/lib/index.js +651 -113
  2. package/lib/style.css +30 -14
  3. package/lib/typings/components/ConfigurationPanel/Schemas/Blockquote.d.ts +2 -0
  4. package/lib/typings/components/ConfigurationPanel/Schemas/Button.d.ts +2 -0
  5. package/lib/typings/components/ConfigurationPanel/Schemas/Column.d.ts +2 -0
  6. package/lib/typings/components/ConfigurationPanel/Schemas/Divider.d.ts +2 -0
  7. package/lib/typings/components/ConfigurationPanel/Schemas/Group.d.ts +2 -0
  8. package/lib/typings/components/ConfigurationPanel/Schemas/Hero.d.ts +2 -0
  9. package/lib/typings/components/ConfigurationPanel/Schemas/Image.d.ts +2 -0
  10. package/lib/typings/components/ConfigurationPanel/Schemas/Navbar.d.ts +2 -0
  11. package/lib/typings/components/ConfigurationPanel/Schemas/Page.d.ts +2 -0
  12. package/lib/typings/components/ConfigurationPanel/Schemas/Section.d.ts +2 -0
  13. package/lib/typings/components/ConfigurationPanel/Schemas/Social.d.ts +2 -0
  14. package/lib/typings/components/ConfigurationPanel/Schemas/Spacer.d.ts +2 -0
  15. package/lib/typings/components/ConfigurationPanel/Schemas/Table.d.ts +2 -0
  16. package/lib/typings/components/ConfigurationPanel/Schemas/Table2.d.ts +2 -0
  17. package/lib/typings/components/ConfigurationPanel/Schemas/Text.d.ts +2 -0
  18. package/lib/typings/components/ConfigurationPanel/Schemas/Wrapper.d.ts +2 -0
  19. package/lib/typings/components/ConfigurationPanel/Schemas/index.d.ts +7 -0
  20. package/lib/typings/components/ConfigurationPanel/components/SchemaPanelRenderer.d.ts +9 -0
  21. package/lib/typings/components/EditorContainer/index.d.ts +5 -0
  22. package/lib/typings/components/Form/ImageUploaderField/index.d.ts +1 -0
  23. package/lib/typings/components/index.d.ts +1 -0
  24. package/lib/typings/constants/index.d.ts +1 -0
  25. package/lib/typings/typings/custom-types.d.ts +1 -0
  26. package/lib/typings/typings/index.d.ts +1 -0
  27. package/lib/typings/typings/schema.d.ts +46 -0
  28. package/package.json +1 -1
package/lib/style.css CHANGED
@@ -197,14 +197,14 @@
197
197
  .block-list-grid-item:nth-last-child(2),
198
198
  .block-list-grid-item:nth-last-child(3) {
199
199
  margin-bottom: 0px;
200
- }._item_14paa_1 {
200
+ }._item_7uv5l_1 {
201
201
  display: flex;
202
202
  justify-content: space-between;
203
203
  flex-direction: column;
204
204
  width: 100%;
205
205
  }
206
206
 
207
- ._itemContent_14paa_8 {
207
+ ._itemContent_7uv5l_8 {
208
208
  display: flex;
209
209
  width: 100%;
210
210
  padding: 5px 10px 5px 5px;
@@ -219,27 +219,40 @@
219
219
  color: #222;
220
220
  box-sizing: border-box;
221
221
  }
222
- ._itemContent_14paa_8:hover {
222
+ ._itemContent_7uv5l_8:hover {
223
223
  background-color: #f5f5f5;
224
224
  }
225
- ._itemContent_14paa_8:hover ._itemActions_14paa_26 {
225
+ ._itemContent_7uv5l_8:hover ._itemActions_7uv5l_26 {
226
226
  opacity: 1;
227
227
  }
228
228
 
229
- ._itemLabelWrapper_14paa_30 {
229
+ ._itemHovered_7uv5l_30 ._itemContent_7uv5l_8 {
230
+ background-color: rgba(var(--primary-6), 0.1);
231
+ }
232
+
233
+ ._itemSelected_7uv5l_34 ._itemContent_7uv5l_8 {
234
+ background-color: rgba(var(--primary-6), 0.1);
235
+ border-left: 3px solid var(--primary-6);
236
+ }
237
+
238
+ ._itemSelected_7uv5l_34._itemHovered_7uv5l_30 ._itemContent_7uv5l_8 {
239
+ background-color: #d4e9f0;
240
+ }
241
+
242
+ ._itemLabelWrapper_7uv5l_43 {
230
243
  display: flex;
231
244
  align-items: center;
232
245
  gap: 10px;
233
246
  }
234
247
 
235
- ._itemLabel_14paa_30 {
248
+ ._itemLabel_7uv5l_43 {
236
249
  overflow: hidden;
237
250
  text-overflow: ellipsis;
238
251
  white-space: nowrap;
239
252
  width: 200px;
240
253
  }
241
254
 
242
- ._action_14paa_43 {
255
+ ._action_7uv5l_56 {
243
256
  display: flex;
244
257
  width: 30px;
245
258
  height: 30px;
@@ -248,21 +261,21 @@
248
261
  cursor: pointer;
249
262
  border-radius: 4px;
250
263
  }
251
- ._action_14paa_43 svg {
264
+ ._action_7uv5l_56 svg {
252
265
  width: 16px;
253
266
  height: 16px;
254
267
  }
255
- ._action_14paa_43:hover {
268
+ ._action_7uv5l_56:hover {
256
269
  background-color: rgba(0, 0, 0, 0.05);
257
270
  }
258
271
 
259
- ._itemTitle_14paa_60 {
272
+ ._itemTitle_7uv5l_73 {
260
273
  display: flex;
261
274
  align-items: center;
262
275
  width: 100%;
263
276
  }
264
277
 
265
- ._itemCollapse_14paa_66 {
278
+ ._itemCollapse_7uv5l_79 {
266
279
  display: flex;
267
280
  width: 30px;
268
281
  height: 30px;
@@ -271,11 +284,11 @@
271
284
  cursor: pointer;
272
285
  border-radius: 4px;
273
286
  }
274
- ._itemCollapse_14paa_66:hover {
287
+ ._itemCollapse_7uv5l_79:hover {
275
288
  background-color: rgba(0, 0, 0, 0.05);
276
289
  }
277
290
 
278
- ._itemActions_14paa_26 {
291
+ ._itemActions_7uv5l_26 {
279
292
  display: flex;
280
293
  align-items: center;
281
294
  opacity: 0;
@@ -283,7 +296,7 @@
283
296
  right: 10px;
284
297
  }
285
298
 
286
- ._itemChildren_14paa_87 {
299
+ ._itemChildren_7uv5l_100 {
287
300
  display: flex;
288
301
  flex-direction: column;
289
302
  padding-left: 20px;
@@ -1056,6 +1069,9 @@ THEMES:
1056
1069
  z-index: 1;
1057
1070
  top: -10000px;
1058
1071
  left: -10000px;
1072
+ }
1073
+
1074
+ .HoveringToolbar-list {
1059
1075
  padding: 3px;
1060
1076
  display: flex;
1061
1077
  align-items: center;
@@ -0,0 +1,2 @@
1
+ import { BlockSchema } from "../../../typings";
2
+ export declare const BlockquoteSchema: BlockSchema;
@@ -0,0 +1,2 @@
1
+ import { BlockSchema } from "../../../typings";
2
+ export declare const ButtonSchema: BlockSchema;
@@ -0,0 +1,2 @@
1
+ import { BlockSchema } from "../../../typings";
2
+ export declare const ColumnSchema: BlockSchema;
@@ -0,0 +1,2 @@
1
+ import { BlockSchema } from "../../../typings";
2
+ export declare const DividerSchema: BlockSchema;
@@ -0,0 +1,2 @@
1
+ import { BlockSchema } from "../../../typings";
2
+ export declare const GroupSchema: BlockSchema;
@@ -0,0 +1,2 @@
1
+ import { BlockSchema } from "../../../typings";
2
+ export declare const HeroSchema: BlockSchema;
@@ -0,0 +1,2 @@
1
+ import { BlockSchema } from "../../../typings";
2
+ export declare const ImageSchema: BlockSchema;
@@ -0,0 +1,2 @@
1
+ import { BlockSchema } from "../../../typings";
2
+ export declare const NavbarSchema: BlockSchema;
@@ -0,0 +1,2 @@
1
+ import { BlockSchema } from "../../../typings";
2
+ export declare const PageSchema: BlockSchema;
@@ -0,0 +1,2 @@
1
+ import { BlockSchema } from "../../../typings";
2
+ export declare const SectionSchema: BlockSchema;
@@ -0,0 +1,2 @@
1
+ import { BlockSchema } from "../../../typings";
2
+ export declare const SocialSchema: BlockSchema;
@@ -0,0 +1,2 @@
1
+ import { BlockSchema } from "../../../typings";
2
+ export declare const SpacerSchema: BlockSchema;
@@ -0,0 +1,2 @@
1
+ import { BlockSchema } from "../../../typings";
2
+ export declare const TableSchema: BlockSchema;
@@ -0,0 +1,2 @@
1
+ import { BlockSchema } from "../../../typings";
2
+ export declare const Table2Schema: BlockSchema;
@@ -0,0 +1,2 @@
1
+ import { BlockSchema } from "../../../typings";
2
+ export declare const TextSchema: BlockSchema;
@@ -0,0 +1,2 @@
1
+ import { BlockSchema } from "../../../typings";
2
+ export declare const WrapperSchema: BlockSchema;
@@ -0,0 +1,7 @@
1
+ import { BlockSchema } from "../../../typings";
2
+ /**
3
+ * BlockSchemasMap stores schema definitions for each block
4
+ * If a block has a schema definition, it will be used to render the configuration panel
5
+ * If no schema exists, it will fallback to ConfigPanelsMap
6
+ */
7
+ export declare const BlockSchemasMap: Record<string, BlockSchema>;
@@ -0,0 +1,9 @@
1
+ import React from "react";
2
+ import { Path } from "slate";
3
+ import { BlockSchema } from "../../../typings";
4
+ interface SchemaPanelRendererProps {
5
+ schema: BlockSchema;
6
+ nodePath: Path;
7
+ }
8
+ export declare const SchemaPanelRenderer: React.FC<SchemaPanelRendererProps>;
9
+ export {};
@@ -0,0 +1,5 @@
1
+ import React from "react";
2
+ export declare const EditorContainer: ({ children, style, }: {
3
+ children: React.ReactNode;
4
+ style?: React.CSSProperties | undefined;
5
+ }) => React.JSX.Element;
@@ -20,6 +20,7 @@ export interface ImageUploaderProps {
20
20
  enablePreview?: boolean;
21
21
  onlyPreview?: boolean;
22
22
  colSpan?: number;
23
+ pinToParent?: boolean;
23
24
  }
24
25
  declare function ImageUploader(props: ImageUploaderProps): React.JSX.Element;
25
26
  export declare const ImageUploaderField: (props: import("../enhancer").EnhancerProps & Omit<ImageUploaderProps, "onChange" | "value">) => React.JSX.Element;
@@ -149,6 +149,7 @@ export { CollapseWrapper } from "./ConfigurationPanel/components/CollapseWrapper
149
149
  export { AttributesPanelWrapper } from "./ConfigurationPanel/components/AttributesPanelWrapper";
150
150
  export { AttributeField } from "./ConfigurationPanel/components/AttributeField";
151
151
  export { ConfigPanelsMap } from "./ConfigurationPanel/Elements";
152
+ export { BlockSchemasMap } from "./ConfigurationPanel/Schemas";
152
153
  export { WidgetTypeOptions };
153
154
  export { ElementStyles } from "./ElementStyleGallery";
154
155
  export { ResponsiveField, ResponsiveTabs, } from "./ConfigurationPanel/components/ResponsiveTabs";
@@ -0,0 +1 @@
1
+ export declare const EDITOR_CONTAINER = "EditorContainer";
@@ -156,6 +156,7 @@ export interface PluginsCustomEditorTypes {
156
156
  enabledPreviewEmailSubjectEdit?: boolean;
157
157
  enabledGradientImage?: boolean;
158
158
  enabledButtonIcon?: boolean;
159
+ layerDefaultCollapsed?: boolean;
159
160
  hideSectionBackgroundImage?: boolean;
160
161
  layerConfig?: {
161
162
  scrollWhenSelect?: boolean;
@@ -1 +1,2 @@
1
1
  export * from "./custom-types";
2
+ export * from "./schema";
@@ -0,0 +1,46 @@
1
+ import { Element } from "easy-email-pro-core";
2
+ import { ActiveTabKeys } from "easy-email-pro-editor";
3
+ import React from "react";
4
+ export type BasicFieldType = "TextField" | "NumberField" | "ColorPickerField" | "SelectField" | "SwitchField" | "SliderField" | "PixelField" | "ImageUploaderField" | "RichTextField" | "TextAreaField" | "ButtonGroupField" | "GradientGeneratorField" | "MergeTagSelectInputField" | "EditPanelListField" | "EditPanelTabsField" | "PixelAndPercentField" | "SyncChildrenField" | "FieldItem";
5
+ export type CompositeFieldType = "Typography" | "Padding" | "Border" | "BackgroundColor" | "TextAlign" | "Height" | "Width" | "Link" | "ButtonContent" | "BorderRadius" | "BackgroundImage" | "FontFamily" | "FontSize" | "Heading" | "ButtonIcon" | "Buttons" | "ImageUrl" | "VerticalAlign" | "Direction" | "DisplayOptions" | "Columns" | "BackgroundGradient" | "LetterSpacing" | "LineHeight" | "FontWeight" | "TextAndHeadingStyle" | "GlobalLink" | "ButtonCategory" | "BackgroundPosition" | "StackOnMobile" | "DividerLine" | "RTLDirection" | "TableLayout" | "Preheader" | "ImageWidth" | "TextAndHeadingList" | "WebFonts" | "PixelAndPercentField" | "SyncChildrenField" | "FieldItem";
6
+ export interface BasicFieldSchema {
7
+ type: BasicFieldType;
8
+ name: string;
9
+ label?: string;
10
+ path?: string;
11
+ responsive?: boolean;
12
+ options?: Array<{
13
+ label: string;
14
+ value: any;
15
+ }>;
16
+ formItem?: any;
17
+ [key: string]: any;
18
+ }
19
+ export interface CompositeFieldSchema {
20
+ type: CompositeFieldType;
21
+ name?: string;
22
+ label?: string;
23
+ path?: string;
24
+ responsive?: boolean;
25
+ fieldName?: string;
26
+ mode?: ActiveTabKeys | "desktop" | "mobile";
27
+ elementType?: Element["type"];
28
+ hidePadding?: boolean;
29
+ [key: string]: any;
30
+ }
31
+ export interface CollapseGroupSchema {
32
+ type: "CollapseGroup";
33
+ name: string;
34
+ header: string;
35
+ defaultActive?: boolean;
36
+ extra?: React.ReactNode;
37
+ children: SchemaField[];
38
+ }
39
+ export interface ResponsiveTabsSchema {
40
+ type: "ResponsiveTabs";
41
+ responsive: true;
42
+ desktop: SchemaField[];
43
+ mobile?: SchemaField[];
44
+ }
45
+ export type SchemaField = BasicFieldSchema | CompositeFieldSchema | CollapseGroupSchema;
46
+ export type BlockSchema = SchemaField[] | ResponsiveTabsSchema;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "easy-email-pro-theme",
3
- "version": "1.52.0",
3
+ "version": "1.53.1",
4
4
  "description": "",
5
5
  "files": [
6
6
  "lib"