easy-email-extensions 4.12.0 → 4.12.2
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/AttributePanel/components/attributes/AttributesPanelWrapper/index.d.ts +1 -0
- package/lib/AttributePanel/components/attributes/CollapseWrapper/index.d.ts +1 -0
- package/lib/AttributePanel/components/provider/PresetColorsProvider/index.d.ts +3 -1
- package/lib/AttributePanel/components/provider/SelectionRangeProvider/index.d.ts +3 -1
- package/lib/ConfigurationPanel/index.d.ts +2 -1
- package/lib/EditPanel/ConfigurationDrawer/index.d.ts +2 -1
- package/lib/EditPanel/index.d.ts +2 -1
- package/lib/ShortcutToolbar/components/BlockMaskWrapper/index.d.ts +1 -0
- package/lib/ShortcutToolbar/components/BlocksPanel/index.d.ts +3 -1
- package/lib/SimpleLayout/SimpleLayout.d.ts +2 -0
- package/lib/SourceCodePanel/index.d.ts +3 -1
- package/lib/components/FullHeightOverlayScrollbars/index.d.ts +1 -0
- package/lib/components/Providers/ExtensionProvider.d.ts +2 -0
- package/lib/index2.js +48 -21
- package/lib/index2.js.map +1 -1
- package/package.json +8 -8
- package/readme.md +3 -1
@@ -3,4 +3,6 @@ export declare const PresetColorsContext: React.Context<{
|
|
3
3
|
colors: string[];
|
4
4
|
addCurrentColor: (color: string) => void;
|
5
5
|
}>;
|
6
|
-
export declare const PresetColorsProvider: React.FC<{
|
6
|
+
export declare const PresetColorsProvider: React.FC<{
|
7
|
+
children: React.ReactNode | React.ReactElement;
|
8
|
+
}>;
|
@@ -3,4 +3,6 @@ export declare const SelectionRangeContext: React.Context<{
|
|
3
3
|
selectionRange: Range | null;
|
4
4
|
setSelectionRange: React.Dispatch<React.SetStateAction<Range | null>>;
|
5
5
|
}>;
|
6
|
-
export declare const SelectionRangeProvider: React.FC<{
|
6
|
+
export declare const SelectionRangeProvider: React.FC<{
|
7
|
+
children: React.ReactNode | React.ReactElement;
|
8
|
+
}>;
|
@@ -1,7 +1,8 @@
|
|
1
1
|
export interface ConfigurationPanelProps {
|
2
2
|
showSourceCode: boolean;
|
3
|
+
mjmlReadOnly: boolean;
|
3
4
|
height: string;
|
4
5
|
onBack?: () => void;
|
5
6
|
compact?: boolean;
|
6
7
|
}
|
7
|
-
export declare function ConfigurationPanel({ showSourceCode, height, onBack, compact, }: ConfigurationPanelProps): JSX.Element | null;
|
8
|
+
export declare function ConfigurationPanel({ showSourceCode, height, onBack, compact, mjmlReadOnly, }: ConfigurationPanelProps): JSX.Element | null;
|
@@ -1,5 +1,6 @@
|
|
1
|
-
export declare function ConfigurationDrawer({ height, compact, showSourceCode, }: {
|
1
|
+
export declare function ConfigurationDrawer({ height, compact, showSourceCode, mjmlReadOnly, }: {
|
2
2
|
height: string;
|
3
3
|
compact: boolean;
|
4
4
|
showSourceCode: boolean;
|
5
|
+
mjmlReadOnly: boolean;
|
5
6
|
}): JSX.Element;
|
package/lib/EditPanel/index.d.ts
CHANGED
@@ -2,5 +2,7 @@ import React from 'react';
|
|
2
2
|
import { BlockLayerProps } from '../BlockLayer';
|
3
3
|
export declare const SimpleLayout: React.FC<{
|
4
4
|
showSourceCode?: boolean;
|
5
|
+
mjmlReadOnly?: boolean;
|
5
6
|
defaultShowLayer?: boolean;
|
7
|
+
children: React.ReactNode | React.ReactElement;
|
6
8
|
} & BlockLayerProps>;
|
@@ -1,6 +1,7 @@
|
|
1
1
|
import { BlockLayerProps } from '../../BlockLayer';
|
2
2
|
import React from 'react';
|
3
3
|
export interface ExtensionProps extends BlockLayerProps {
|
4
|
+
children?: React.ReactNode | React.ReactElement;
|
4
5
|
categories: Array<{
|
5
6
|
label: string;
|
6
7
|
active?: boolean;
|
@@ -32,6 +33,7 @@ export interface ExtensionProps extends BlockLayerProps {
|
|
32
33
|
displayType: 'custom';
|
33
34
|
}>;
|
34
35
|
showSourceCode?: boolean;
|
36
|
+
mjmlReadOnly?: boolean;
|
35
37
|
compact?: boolean;
|
36
38
|
}
|
37
39
|
export declare const ExtensionContext: React.Context<ExtensionProps>;
|
package/lib/index2.js
CHANGED
@@ -33061,6 +33061,13 @@ function ColorPickerContent(props) {
|
|
33061
33061
|
const presetColorList = useMemo(() => {
|
33062
33062
|
return [...presetColors.filter((item2) => item2 !== transparentColor$1).slice(-14)];
|
33063
33063
|
}, [presetColors]);
|
33064
|
+
let adapterColor = color2;
|
33065
|
+
try {
|
33066
|
+
if (Color$2(color2).hex()) {
|
33067
|
+
adapterColor = Color$2(color2).hex();
|
33068
|
+
}
|
33069
|
+
} catch (error2) {
|
33070
|
+
}
|
33064
33071
|
return /* @__PURE__ */ React__default.createElement("div", {
|
33065
33072
|
className: styles$7.colorPicker,
|
33066
33073
|
style: { width: 202, paddingTop: 12, paddingBottom: 12 }
|
@@ -33113,7 +33120,7 @@ function ColorPickerContent(props) {
|
|
33113
33120
|
opacity: 0
|
33114
33121
|
},
|
33115
33122
|
type: "color",
|
33116
|
-
value:
|
33123
|
+
value: adapterColor,
|
33117
33124
|
onChange: (e) => onChange(e.target.value)
|
33118
33125
|
}))), /* @__PURE__ */ React__default.createElement("style", null, `
|
33119
33126
|
.form-alpha-picker {
|
@@ -36297,13 +36304,13 @@ function AttributePanel() {
|
|
36297
36304
|
style: { position: "absolute" }
|
36298
36305
|
}, /* @__PURE__ */ React__default.createElement(RichTextField, {
|
36299
36306
|
idx: focusIdx2
|
36300
|
-
})), shadowRoot && ReactDOM.createPortal(/* @__PURE__ */ React__default.createElement("style", null, `
|
36307
|
+
})), /* @__PURE__ */ React__default.createElement(React__default.Fragment, null, shadowRoot && ReactDOM.createPortal(/* @__PURE__ */ React__default.createElement("style", null, `
|
36301
36308
|
.email-block [contentEditable="true"],
|
36302
36309
|
.email-block [contentEditable="true"] * {
|
36303
36310
|
outline: none;
|
36304
36311
|
cursor: text;
|
36305
36312
|
}
|
36306
|
-
`), shadowRoot)));
|
36313
|
+
`), shadowRoot))));
|
36307
36314
|
}
|
36308
36315
|
function MergeTags(props) {
|
36309
36316
|
const { execCommand } = props;
|
@@ -39788,7 +39795,7 @@ const BlocksPanel = (props) => {
|
|
39788
39795
|
style: { position: "relative" }
|
39789
39796
|
}, /* @__PURE__ */ React__default.createElement("div", {
|
39790
39797
|
onClick: toggleVisible
|
39791
|
-
}, props.children), ele && visible && createPortal(/* @__PURE__ */ React__default.createElement("div", {
|
39798
|
+
}, props.children), /* @__PURE__ */ React__default.createElement(React__default.Fragment, null, ele && visible && createPortal(/* @__PURE__ */ React__default.createElement("div", {
|
39792
39799
|
className: styles$6.BlocksPanel,
|
39793
39800
|
style: {
|
39794
39801
|
pointerEvents: isDragging ? "none" : void 0,
|
@@ -39828,7 +39835,7 @@ const BlocksPanel = (props) => {
|
|
39828
39835
|
}, category.title)
|
39829
39836
|
}, /* @__PURE__ */ React__default.createElement(BlockPanelItem, {
|
39830
39837
|
category
|
39831
|
-
})))))), ele)), [filterCategories, ele, isDragging, props.children, toggleVisible, visible]);
|
39838
|
+
})))))), ele))), [filterCategories, ele, isDragging, props.children, toggleVisible, visible]);
|
39832
39839
|
};
|
39833
39840
|
const BlockPanelItem = React__default.memo((props) => {
|
39834
39841
|
return /* @__PURE__ */ React__default.createElement(Tabs$1, {
|
@@ -40038,7 +40045,7 @@ function MjmlToJson(data) {
|
|
40038
40045
|
headAttributes,
|
40039
40046
|
headStyles,
|
40040
40047
|
fonts,
|
40041
|
-
breakpoint: breakpoint == null ? void 0 : breakpoint.attributes.
|
40048
|
+
breakpoint: breakpoint == null ? void 0 : breakpoint.attributes.width
|
40042
40049
|
}, metaData)
|
40043
40050
|
}
|
40044
40051
|
});
|
@@ -40134,7 +40141,7 @@ function formatPadding(attributes, attributeName) {
|
|
40134
40141
|
attributes[attributeName] = newPadding;
|
40135
40142
|
}
|
40136
40143
|
}
|
40137
|
-
function SourceCodePanel() {
|
40144
|
+
function SourceCodePanel({ mjmlReadOnly }) {
|
40138
40145
|
const { setValueByIdx, focusBlock, values } = useBlock();
|
40139
40146
|
const { focusIdx } = useFocusIdx();
|
40140
40147
|
const [mjmlText, setMjmlText] = useState("");
|
@@ -40209,7 +40216,8 @@ function SourceCodePanel() {
|
|
40209
40216
|
value: mjmlText,
|
40210
40217
|
autoSize: { maxRows: 25 },
|
40211
40218
|
onChange: onChangeMjmlText,
|
40212
|
-
onBlur: onMjmlChange
|
40219
|
+
onBlur: onMjmlChange,
|
40220
|
+
readOnly: mjmlReadOnly
|
40213
40221
|
})));
|
40214
40222
|
}
|
40215
40223
|
function Toolbar() {
|
@@ -40949,7 +40957,7 @@ function MergeTagBadgePrompt() {
|
|
40949
40957
|
}
|
40950
40958
|
const SimpleLayout = (props) => {
|
40951
40959
|
const { height: containerHeight } = useEditorProps();
|
40952
|
-
const { showSourceCode = true, defaultShowLayer = true } = props;
|
40960
|
+
const { showSourceCode = true, defaultShowLayer = true, mjmlReadOnly: mjmlReadOnly2 = true } = props;
|
40953
40961
|
const [collapsed, setCollapsed] = useState(!defaultShowLayer);
|
40954
40962
|
return /* @__PURE__ */ React__default.createElement(ConfigProvider, {
|
40955
40963
|
locale: enUS
|
@@ -41031,7 +41039,9 @@ const SimpleLayout = (props) => {
|
|
41031
41039
|
title: /* @__PURE__ */ React__default.createElement("div", {
|
41032
41040
|
style: { height: 31, lineHeight: "31px" }
|
41033
41041
|
}, t("Source code"))
|
41034
|
-
}, /* @__PURE__ */ React__default.createElement(SourceCodePanel,
|
41042
|
+
}, /* @__PURE__ */ React__default.createElement(SourceCodePanel, {
|
41043
|
+
mjmlReadOnly: mjmlReadOnly2
|
41044
|
+
}))))), /* @__PURE__ */ React__default.createElement(InteractivePrompt, null), /* @__PURE__ */ React__default.createElement(MergeTagBadgePrompt, null)));
|
41035
41045
|
};
|
41036
41046
|
const StandardLayout$1 = "_StandardLayout_xv0bc_1";
|
41037
41047
|
var styles$3 = {
|
@@ -46088,7 +46098,8 @@ function ConfigurationPanel({
|
|
46088
46098
|
showSourceCode,
|
46089
46099
|
height,
|
46090
46100
|
onBack,
|
46091
|
-
compact
|
46101
|
+
compact,
|
46102
|
+
mjmlReadOnly: mjmlReadOnly2
|
46092
46103
|
}) {
|
46093
46104
|
const [inited, setInited] = useState(false);
|
46094
46105
|
useEffect(() => {
|
@@ -46133,12 +46144,15 @@ function ConfigurationPanel({
|
|
46133
46144
|
}, t("Source code"))
|
46134
46145
|
}, /* @__PURE__ */ React__default.createElement(FullHeightOverlayScrollbars, {
|
46135
46146
|
height: `calc(${height} - 60px)`
|
46136
|
-
}, /* @__PURE__ */ React__default.createElement(SourceCodePanel,
|
46147
|
+
}, /* @__PURE__ */ React__default.createElement(SourceCodePanel, {
|
46148
|
+
mjmlReadOnly: mjmlReadOnly2
|
46149
|
+
})))) : /* @__PURE__ */ React__default.createElement(AttributePanel, null));
|
46137
46150
|
}
|
46138
46151
|
function ConfigurationDrawer({
|
46139
46152
|
height,
|
46140
46153
|
compact,
|
46141
|
-
showSourceCode
|
46154
|
+
showSourceCode,
|
46155
|
+
mjmlReadOnly: mjmlReadOnly2
|
46142
46156
|
}) {
|
46143
46157
|
const refWrapper = useRef(null);
|
46144
46158
|
const { focusIdx: focusIdx2, setFocusIdx } = useFocusIdx();
|
@@ -46173,12 +46187,16 @@ function ConfigurationDrawer({
|
|
46173
46187
|
compact,
|
46174
46188
|
showSourceCode,
|
46175
46189
|
height,
|
46176
|
-
onBack: onClose
|
46190
|
+
onBack: onClose,
|
46191
|
+
mjmlReadOnly: mjmlReadOnly2
|
46177
46192
|
})));
|
46178
46193
|
}, [visible, onClose, compact, showSourceCode, height]);
|
46179
46194
|
}
|
46180
46195
|
const TabPane = Tabs$1.TabPane;
|
46181
|
-
function EditPanel({
|
46196
|
+
function EditPanel({
|
46197
|
+
showSourceCode,
|
46198
|
+
mjmlReadOnly: mjmlReadOnly2
|
46199
|
+
}) {
|
46182
46200
|
const { height } = useEditorProps();
|
46183
46201
|
const { compact = true } = useExtensionProps();
|
46184
46202
|
return /* @__PURE__ */ React__default.createElement(Layout$1.Sider, {
|
@@ -46210,7 +46228,8 @@ function EditPanel({ showSourceCode }) {
|
|
46210
46228
|
}, /* @__PURE__ */ React__default.createElement(BlockLayer, null))))), !compact && /* @__PURE__ */ React__default.createElement(ConfigurationDrawer, {
|
46211
46229
|
height,
|
46212
46230
|
showSourceCode,
|
46213
|
-
compact: Boolean(compact)
|
46231
|
+
compact: Boolean(compact),
|
46232
|
+
mjmlReadOnly: mjmlReadOnly2
|
46214
46233
|
}));
|
46215
46234
|
}
|
46216
46235
|
const defaultCategories = [
|
@@ -46280,14 +46299,19 @@ const defaultCategories = [
|
|
46280
46299
|
get title() {
|
46281
46300
|
return t("4 columns");
|
46282
46301
|
},
|
46283
|
-
payload: [[
|
46302
|
+
payload: [["25%", "25%", "25%", "25%"]]
|
46284
46303
|
}
|
46285
46304
|
]
|
46286
46305
|
}
|
46287
46306
|
];
|
46288
46307
|
const StandardLayout = (props) => {
|
46289
46308
|
const { height: containerHeight } = useEditorProps();
|
46290
|
-
const {
|
46309
|
+
const {
|
46310
|
+
showSourceCode = true,
|
46311
|
+
compact = true,
|
46312
|
+
categories = defaultCategories,
|
46313
|
+
mjmlReadOnly: mjmlReadOnly2 = true
|
46314
|
+
} = props;
|
46291
46315
|
const { setFocusIdx } = useFocusIdx();
|
46292
46316
|
useEffect(() => {
|
46293
46317
|
if (!compact) {
|
@@ -46313,11 +46337,13 @@ const StandardLayout = (props) => {
|
|
46313
46337
|
overflow: "hidden"
|
46314
46338
|
}
|
46315
46339
|
}, compact && /* @__PURE__ */ React__default.createElement(EditPanel, {
|
46316
|
-
showSourceCode
|
46340
|
+
showSourceCode,
|
46341
|
+
mjmlReadOnly: mjmlReadOnly2
|
46317
46342
|
}), /* @__PURE__ */ React__default.createElement(Layout$1, {
|
46318
46343
|
style: { height: containerHeight, flex: 1 }
|
46319
46344
|
}, props.children), !compact && /* @__PURE__ */ React__default.createElement(EditPanel, {
|
46320
|
-
showSourceCode
|
46345
|
+
showSourceCode,
|
46346
|
+
mjmlReadOnly: mjmlReadOnly2
|
46321
46347
|
}), compact ? /* @__PURE__ */ React__default.createElement(Layout$1.Sider, {
|
46322
46348
|
style: {
|
46323
46349
|
height: containerHeight,
|
@@ -46328,7 +46354,8 @@ const StandardLayout = (props) => {
|
|
46328
46354
|
}, /* @__PURE__ */ React__default.createElement(ConfigurationPanel, {
|
46329
46355
|
compact,
|
46330
46356
|
height: containerHeight,
|
46331
|
-
showSourceCode
|
46357
|
+
showSourceCode,
|
46358
|
+
mjmlReadOnly: mjmlReadOnly2
|
46332
46359
|
})) : /* @__PURE__ */ React__default.createElement(Layout$1.Sider, {
|
46333
46360
|
style: { width: 0, overflow: "hidden" }
|
46334
46361
|
}))), /* @__PURE__ */ React__default.createElement(InteractivePrompt, null), /* @__PURE__ */ React__default.createElement(MergeTagBadgePrompt, null)));
|