@react-email/editor 0.0.0-experimental.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.
@@ -0,0 +1,90 @@
1
+ import { Editor, JSONContent, Node, NodeConfig, NodeType } from "@tiptap/core";
2
+ import { CodeBlockOptions } from "@tiptap/extension-code-block";
3
+ import * as React$1 from "react";
4
+
5
+ //#region src/utils/types.d.ts
6
+
7
+ type KnownThemeComponents = 'reset' | 'body' | 'container' | 'h1' | 'h2' | 'h3' | 'paragraph' | 'nestedList' | 'list' | 'listItem' | 'listParagraph' | 'blockquote' | 'codeBlock' | 'inlineCode' | 'codeTag' | 'link' | 'footer' | 'hr' | 'image' | 'button' | 'section';
8
+ type CssJs = { [K in KnownThemeComponents]: React$1.CSSProperties & {
9
+ align?: 'center' | 'left' | 'right';
10
+ } };
11
+ //#endregion
12
+ //#region src/core/email-node.d.ts
13
+ type RendererComponent = (props: {
14
+ node: JSONContent;
15
+ styles: CssJs;
16
+ children?: React.ReactNode;
17
+ }) => React.ReactNode;
18
+ interface EmailNodeConfig<Options, Storage> extends NodeConfig<Options, Storage> {
19
+ renderToReactEmail: RendererComponent;
20
+ }
21
+ type ConfigParameter<Options, Storage> = Partial<Omit<EmailNodeConfig<Options, Storage>, 'renderToReactEmail'>> & Pick<EmailNodeConfig<Options, Storage>, 'renderToReactEmail'>;
22
+ declare class EmailNode<Options = Record<string, never>, Storage = Record<string, never>> extends Node<Options, Storage> {
23
+ config: EmailNodeConfig<Options, Storage>;
24
+ constructor(config: ConfigParameter<Options, Storage>);
25
+ /**
26
+ * Create a new Node instance
27
+ * @param config - Node configuration object or a function that returns a configuration object
28
+ */
29
+ static create<O = Record<string, never>, S = Record<string, never>>(config: ConfigParameter<O, S> | (() => ConfigParameter<O, S>)): EmailNode<O, S>;
30
+ static from<O, S>(node: Node<O, S>, renderToReactEmail: RendererComponent): EmailNode<O, S>;
31
+ configure(options?: Partial<Options>): EmailNode<Options, Storage>;
32
+ extend<ExtendedOptions = Options, ExtendedStorage = Storage, ExtendedConfig extends NodeConfig<ExtendedOptions, ExtendedStorage> = EmailNodeConfig<ExtendedOptions, ExtendedStorage>>(extendedConfig?: (() => Partial<ExtendedConfig>) | (Partial<ExtendedConfig> & ThisType<{
33
+ name: string;
34
+ options: ExtendedOptions;
35
+ storage: ExtendedStorage;
36
+ editor: Editor;
37
+ type: NodeType;
38
+ }>)): EmailNode<ExtendedOptions, ExtendedStorage>;
39
+ }
40
+ //#endregion
41
+ //#region src/extensions/body.d.ts
42
+ interface BodyOptions {
43
+ HTMLAttributes: Record<string, unknown>;
44
+ }
45
+ declare const Body: EmailNode<BodyOptions, Record<string, never>>;
46
+ //#endregion
47
+ //#region src/extensions/button.d.ts
48
+ interface EditorButtonOptions {
49
+ HTMLAttributes: Record<string, unknown>;
50
+ [key: string]: unknown;
51
+ }
52
+ declare module '@tiptap/core' {
53
+ interface Commands<ReturnType> {
54
+ button: {
55
+ setButton: () => ReturnType;
56
+ updateButton: (attributes: Record<string, unknown>) => ReturnType;
57
+ };
58
+ }
59
+ }
60
+ declare const Button: EmailNode<EditorButtonOptions, Record<string, never>>;
61
+ //#endregion
62
+ //#region src/extensions/code-block.d.ts
63
+ interface CodeBlockPrismOptions extends CodeBlockOptions {
64
+ defaultLanguage: string;
65
+ defaultTheme: string;
66
+ }
67
+ declare const CodeBlockPrism: EmailNode<CodeBlockPrismOptions, any>;
68
+ //#endregion
69
+ //#region src/extensions/div.d.ts
70
+ interface DivOptions {
71
+ HTMLAttributes: Record<string, unknown>;
72
+ }
73
+ declare const Div: EmailNode<DivOptions, Record<string, never>>;
74
+ //#endregion
75
+ //#region src/extensions/section.d.ts
76
+ interface SectionOptions {
77
+ HTMLAttributes: Record<string, unknown>;
78
+ [key: string]: unknown;
79
+ }
80
+ declare module '@tiptap/core' {
81
+ interface Commands<ReturnType> {
82
+ section: {
83
+ insertSection: () => ReturnType;
84
+ };
85
+ }
86
+ }
87
+ declare const Section: EmailNode<SectionOptions, Record<string, never>>;
88
+ //#endregion
89
+ export { Body, BodyOptions, Button, CodeBlockPrism, CodeBlockPrismOptions, Div, DivOptions, EmailNode, EmailNodeConfig, RendererComponent, Section };
90
+ //# sourceMappingURL=index.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.mts","names":[],"sources":["../src/utils/types.ts","../src/core/email-node.ts","../src/extensions/body.tsx","../src/extensions/button.tsx","../src/extensions/code-block.tsx","../src/extensions/div.tsx","../src/extensions/section.tsx"],"sourcesContent":[],"mappings":"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"}
@@ -0,0 +1,90 @@
1
+ import { Editor, JSONContent, Node, NodeConfig, NodeType } from "@tiptap/core";
2
+ import * as React$1 from "react";
3
+ import { CodeBlockOptions } from "@tiptap/extension-code-block";
4
+
5
+ //#region src/utils/types.d.ts
6
+
7
+ type KnownThemeComponents = 'reset' | 'body' | 'container' | 'h1' | 'h2' | 'h3' | 'paragraph' | 'nestedList' | 'list' | 'listItem' | 'listParagraph' | 'blockquote' | 'codeBlock' | 'inlineCode' | 'codeTag' | 'link' | 'footer' | 'hr' | 'image' | 'button' | 'section';
8
+ type CssJs = { [K in KnownThemeComponents]: React$1.CSSProperties & {
9
+ align?: 'center' | 'left' | 'right';
10
+ } };
11
+ //#endregion
12
+ //#region src/core/email-node.d.ts
13
+ type RendererComponent = (props: {
14
+ node: JSONContent;
15
+ styles: CssJs;
16
+ children?: React.ReactNode;
17
+ }) => React.ReactNode;
18
+ interface EmailNodeConfig<Options, Storage> extends NodeConfig<Options, Storage> {
19
+ renderToReactEmail: RendererComponent;
20
+ }
21
+ type ConfigParameter<Options, Storage> = Partial<Omit<EmailNodeConfig<Options, Storage>, 'renderToReactEmail'>> & Pick<EmailNodeConfig<Options, Storage>, 'renderToReactEmail'>;
22
+ declare class EmailNode<Options = Record<string, never>, Storage = Record<string, never>> extends Node<Options, Storage> {
23
+ config: EmailNodeConfig<Options, Storage>;
24
+ constructor(config: ConfigParameter<Options, Storage>);
25
+ /**
26
+ * Create a new Node instance
27
+ * @param config - Node configuration object or a function that returns a configuration object
28
+ */
29
+ static create<O = Record<string, never>, S = Record<string, never>>(config: ConfigParameter<O, S> | (() => ConfigParameter<O, S>)): EmailNode<O, S>;
30
+ static from<O, S>(node: Node<O, S>, renderToReactEmail: RendererComponent): EmailNode<O, S>;
31
+ configure(options?: Partial<Options>): EmailNode<Options, Storage>;
32
+ extend<ExtendedOptions = Options, ExtendedStorage = Storage, ExtendedConfig extends NodeConfig<ExtendedOptions, ExtendedStorage> = EmailNodeConfig<ExtendedOptions, ExtendedStorage>>(extendedConfig?: (() => Partial<ExtendedConfig>) | (Partial<ExtendedConfig> & ThisType<{
33
+ name: string;
34
+ options: ExtendedOptions;
35
+ storage: ExtendedStorage;
36
+ editor: Editor;
37
+ type: NodeType;
38
+ }>)): EmailNode<ExtendedOptions, ExtendedStorage>;
39
+ }
40
+ //#endregion
41
+ //#region src/extensions/body.d.ts
42
+ interface BodyOptions {
43
+ HTMLAttributes: Record<string, unknown>;
44
+ }
45
+ declare const Body: EmailNode<BodyOptions, Record<string, never>>;
46
+ //#endregion
47
+ //#region src/extensions/button.d.ts
48
+ interface EditorButtonOptions {
49
+ HTMLAttributes: Record<string, unknown>;
50
+ [key: string]: unknown;
51
+ }
52
+ declare module '@tiptap/core' {
53
+ interface Commands<ReturnType> {
54
+ button: {
55
+ setButton: () => ReturnType;
56
+ updateButton: (attributes: Record<string, unknown>) => ReturnType;
57
+ };
58
+ }
59
+ }
60
+ declare const Button: EmailNode<EditorButtonOptions, Record<string, never>>;
61
+ //#endregion
62
+ //#region src/extensions/code-block.d.ts
63
+ interface CodeBlockPrismOptions extends CodeBlockOptions {
64
+ defaultLanguage: string;
65
+ defaultTheme: string;
66
+ }
67
+ declare const CodeBlockPrism: EmailNode<CodeBlockPrismOptions, any>;
68
+ //#endregion
69
+ //#region src/extensions/div.d.ts
70
+ interface DivOptions {
71
+ HTMLAttributes: Record<string, unknown>;
72
+ }
73
+ declare const Div: EmailNode<DivOptions, Record<string, never>>;
74
+ //#endregion
75
+ //#region src/extensions/section.d.ts
76
+ interface SectionOptions {
77
+ HTMLAttributes: Record<string, unknown>;
78
+ [key: string]: unknown;
79
+ }
80
+ declare module '@tiptap/core' {
81
+ interface Commands<ReturnType> {
82
+ section: {
83
+ insertSection: () => ReturnType;
84
+ };
85
+ }
86
+ }
87
+ declare const Section: EmailNode<SectionOptions, Record<string, never>>;
88
+ //#endregion
89
+ export { Body, BodyOptions, Button, CodeBlockPrism, CodeBlockPrismOptions, Div, DivOptions, EmailNode, EmailNodeConfig, RendererComponent, Section };
90
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","names":[],"sources":["../src/utils/types.ts","../src/core/email-node.ts","../src/extensions/body.tsx","../src/extensions/button.tsx","../src/extensions/code-block.tsx","../src/extensions/div.tsx","../src/extensions/section.tsx"],"sourcesContent":[],"mappings":"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"}