mail-editor-pancake 0.0.8 → 0.1.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 (48) hide show
  1. package/README.md +498 -218
  2. package/package.json +2 -2
  3. package/packages/blocks/dist/index.d.ts +12 -0
  4. package/packages/blocks/dist/index.js +187 -145
  5. package/packages/blocks/dist/index.js.map +1 -1
  6. package/packages/blocks/src/html.ts +11 -3
  7. package/packages/blocks/src/index.ts +2 -0
  8. package/packages/blocks/src/social.ts +8 -11
  9. package/packages/blocks/src/socialGroup.ts +8 -11
  10. package/packages/blocks/src/socialShared.ts +52 -0
  11. package/packages/blocks/src/text.ts +8 -3
  12. package/packages/core/dist/index.d.ts +275 -12
  13. package/packages/core/dist/index.js +4099 -2194
  14. package/packages/core/dist/index.js.map +1 -1
  15. package/packages/core/dist/style.css +1 -1
  16. package/packages/core/package.json +1 -1
  17. package/packages/core/src/editor/BlockCodeModal.ts +84 -2
  18. package/packages/core/src/editor/Canvas.ts +191 -26
  19. package/packages/core/src/editor/Editor.ts +589 -76
  20. package/packages/core/src/editor/ExportModal.ts +1 -1
  21. package/packages/core/src/editor/ImportDocModal.ts +129 -0
  22. package/packages/core/src/editor/InlineEditor.ts +246 -22
  23. package/packages/core/src/editor/LeftPanel.ts +55 -14
  24. package/packages/core/src/editor/Modal.ts +20 -1
  25. package/packages/core/src/editor/PreviewModal.ts +2 -2
  26. package/packages/core/src/editor/RichTextToolbar.ts +125 -18
  27. package/packages/core/src/editor/RightPanel.ts +165 -7
  28. package/packages/core/src/editor/Topbar.ts +306 -132
  29. package/packages/core/src/editor/VariablePickerPanel.ts +145 -0
  30. package/packages/core/src/editor/styles.css +458 -59
  31. package/packages/core/src/index.ts +43 -2
  32. package/packages/core/src/renderer/index.ts +9 -1
  33. package/packages/core/src/renderer/mjml.ts +4 -5
  34. package/packages/core/src/store/store.ts +13 -2
  35. package/packages/core/src/types.ts +67 -2
  36. package/packages/core/src/utils/docClipboard.ts +89 -0
  37. package/packages/core/src/utils/dynamicVariantHtml.ts +45 -0
  38. package/packages/core/src/utils/dynamicVariantKey.ts +24 -0
  39. package/packages/core/src/utils/dynamicVariantSection.ts +98 -0
  40. package/packages/core/src/utils/emailListStyles.ts +188 -0
  41. package/packages/core/src/utils/inlineListEditing.ts +774 -0
  42. package/packages/core/src/utils/lockedMjml.ts +146 -12
  43. package/packages/core/src/utils/modalSize.ts +27 -0
  44. package/packages/core/src/utils/richHtmlEmpty.ts +43 -0
  45. package/packages/core/src/utils/richHtmlInsert.ts +16 -0
  46. package/packages/core/src/utils/sectionLayout.ts +2 -2
  47. package/packages/core/src/variables/index.ts +90 -0
  48. package/playground/vanilla/src/main.ts +26 -1
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "mail-editor-pancake",
3
- "version": "0.0.8",
3
+ "version": "0.1.0",
4
4
  "private": false,
5
- "description": "面向运营的轻量邮件可视化编辑器(monorepo 根)",
5
+ "description": "面向运营的轻量邮件可视化编辑器",
6
6
  "devDependencies": {
7
7
  "@biomejs/biome": "^1.9.4",
8
8
  "@types/node": "^25.6.0",
@@ -108,6 +108,9 @@ declare interface LogoProps {
108
108
  align: 'left' | 'center' | 'right';
109
109
  }
110
110
 
111
+ /** 画布预览用默认图标 URL(与 MJML `name` 映射一致;无内置图时返回 null) */
112
+ export declare function mjSocialDefaultIconSrc(network: string): string | null;
113
+
111
114
  /** 生成 mj-social-element 的 name 属性(与 MJML 内置图标对齐;未知平台退化为 web)。 */
112
115
  export declare function mjSocialElementName(network: string): string;
113
116
 
@@ -120,6 +123,15 @@ export declare function paddingQuad(p: {
120
123
  paddingLeft: number;
121
124
  }): string;
122
125
 
126
+ /** 画布 / renderPreview 社交图标 HTML(优先自定义 URL,其次 MJML 内置图,最后文字占位) */
127
+ export declare function renderSocialIconPreviewHtml(opts: {
128
+ network: string;
129
+ iconSize: number;
130
+ iconBorderRadius: number;
131
+ iconSrc?: string;
132
+ backgroundColor?: string;
133
+ }): string;
134
+
123
135
  /** 社交平台与 MJML mj-social-element 的 name 对齐(含常用内置名)。 */
124
136
  export declare const SOCIAL_NETWORK_OPTIONS: {
125
137
  label: string;