@contentful/field-editor-rich-text 1.0.1 → 2.0.0-next.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.
- package/README.md +1 -1
- package/dist/ContentfulEditorProvider.d.ts +8 -0
- package/dist/RichTextEditor.d.ts +19 -60
- package/dist/RichTextEditor.styles.d.ts +7 -0
- package/dist/SdkProvider.d.ts +7 -0
- package/dist/Toolbar/EmbedEntityWidget.d.ts +6 -0
- package/dist/Toolbar/StickyToolbarWrapper.d.ts +6 -11
- package/dist/Toolbar/index.d.ts +6 -20
- package/dist/TrackingProvider.d.ts +11 -0
- package/dist/constants/Schema.d.ts +93 -11
- package/dist/dialogs/openRichTextDialog.d.ts +2 -1
- package/dist/dialogs/renderRichTextDialog.d.ts +3 -1
- package/dist/field-editor-rich-text.cjs.development.js +4243 -5265
- package/dist/field-editor-rich-text.cjs.development.js.map +1 -1
- package/dist/field-editor-rich-text.cjs.production.min.js +1 -1
- package/dist/field-editor-rich-text.cjs.production.min.js.map +1 -1
- package/dist/field-editor-rich-text.esm.js +4275 -5297
- package/dist/field-editor-rich-text.esm.js.map +1 -1
- package/dist/helpers/deserializer.d.ts +3 -0
- package/dist/helpers/editor.d.ts +43 -0
- package/dist/helpers/environment.d.ts +1 -0
- package/dist/helpers/formatDateAndTime.d.ts +15 -0
- package/dist/helpers/getLinkedContentTypeIdsForNodeType.d.ts +26 -2
- package/dist/helpers/newEntitySelectorConfigFromRichTextField.d.ts +5 -1
- package/dist/helpers/sanitizeSlateDoc.d.ts +18 -0
- package/dist/helpers/truncate.d.ts +1 -0
- package/dist/helpers/validations.d.ts +10 -0
- package/dist/plugins/Bold/index.d.ts +12 -64
- package/dist/plugins/Code/index.d.ts +12 -64
- package/dist/plugins/DragAndDrop/index.d.ts +2 -0
- package/dist/plugins/EmbeddedEntity/index.d.ts +10 -0
- package/dist/plugins/EmbeddedEntityBlock/LinkedEntityBlock.d.ts +13 -0
- package/dist/plugins/EmbeddedEntityBlock/ToolbarIcon.d.ts +12 -10
- package/dist/plugins/EmbeddedEntityBlock/Util.d.ts +2 -23
- package/dist/plugins/EmbeddedEntityBlock/index.d.ts +11 -26
- package/dist/plugins/EmbeddedEntityInline/FetchingWrappedInlineEntryCard.d.ts +12 -0
- package/dist/plugins/EmbeddedEntityInline/Util.d.ts +16 -0
- package/dist/plugins/EmbeddedEntityInline/index.d.ts +12 -0
- package/dist/plugins/Heading/index.d.ts +20 -380
- package/dist/plugins/Hr/index.d.ts +13 -61
- package/dist/plugins/Hyperlink/EntryAssetTooltip.d.ts +10 -0
- package/dist/plugins/Hyperlink/HyperlinkModal.d.ts +17 -0
- package/dist/plugins/Hyperlink/index.d.ts +12 -9
- package/dist/plugins/InsertBeforeFirstVoidBlock/index.d.ts +2 -3
- package/dist/plugins/Italic/index.d.ts +12 -64
- package/dist/plugins/List/getListInsertFragment.d.ts +6 -0
- package/dist/plugins/List/index.d.ts +15 -114
- package/dist/plugins/NewLine/index.d.ts +2 -0
- package/dist/plugins/Paragraph/index.d.ts +7 -5
- package/dist/plugins/Paste/index.d.ts +2 -7
- package/dist/plugins/Paste/sanitizers/helpers.d.ts +7 -0
- package/dist/plugins/Paste/sanitizers/index.d.ts +3 -0
- package/dist/plugins/Paste/sanitizers/removeComments.d.ts +2 -0
- package/dist/plugins/Paste/sanitizers/sanitizeEntityBlocks.d.ts +6 -0
- package/dist/plugins/Paste/sanitizers/sanitizeTables.d.ts +2 -0
- package/dist/plugins/Quote/index.d.ts +13 -59
- package/dist/plugins/Table/TableActions.d.ts +5 -0
- package/dist/plugins/Table/actions/addColumn.d.ts +4 -0
- package/dist/plugins/Table/actions/addRow.d.ts +3 -0
- package/dist/plugins/Table/actions/index.d.ts +3 -0
- package/dist/plugins/Table/actions/setHeader.d.ts +2 -0
- package/dist/plugins/Table/helpers.d.ts +4 -0
- package/dist/plugins/Table/index.d.ts +189 -0
- package/dist/plugins/TrailingParagraph/index.d.ts +1 -0
- package/dist/plugins/Underline/index.d.ts +12 -0
- package/dist/plugins/shared/EntityStatusIcon.d.ts +8 -0
- package/dist/plugins/shared/FetchingWrappedAssetCard.d.ts +23 -0
- package/dist/plugins/shared/FetchingWrappedEntryCard.d.ts +13 -0
- package/dist/plugins/shared/ToolbarButton.d.ts +12 -0
- package/dist/types.d.ts +25 -0
- package/package.json +32 -29
- package/CHANGELOG.md +0 -414
- package/LICENSE +0 -21
- package/dist/RichTextEditor.spec.d.ts +0 -1
- package/dist/Toolbar/Toolbar.spec.d.ts +0 -1
- package/dist/helpers/browserSupport.d.ts +0 -1
- package/dist/plugins/CommandPalette/CommandMark.d.ts +0 -12
- package/dist/plugins/CommandPalette/CommandPalette.d.ts +0 -10
- package/dist/plugins/CommandPalette/CommandPaletteService.d.ts +0 -20
- package/dist/plugins/CommandPalette/CommandPanel/CommandPanelMenu.d.ts +0 -43
- package/dist/plugins/CommandPalette/CommandPanel/index.d.ts +0 -37
- package/dist/plugins/CommandPalette/Util.d.ts +0 -5
- package/dist/plugins/CommandPalette/index.d.ts +0 -7
- package/dist/plugins/EmbeddedEntityBlock/EmbeddedEntityBlock.d.ts +0 -20
- package/dist/plugins/EmbeddedEntityBlock/EmbeddedEntityBlock.styles.d.ts +0 -3
- package/dist/plugins/EmbeddedEntityBlock/FetchingWrappedAssetCard.d.ts +0 -15
- package/dist/plugins/EmbeddedEntityBlock/FetchingWrappedEntryCard.d.ts +0 -15
- package/dist/plugins/EmbeddedEntryInline/EmbeddedEntryInline.d.ts +0 -21
- package/dist/plugins/EmbeddedEntryInline/EmbeddedEntryInline.styles.d.ts +0 -4
- package/dist/plugins/EmbeddedEntryInline/FetchingWrappedInlineEntryCard.d.ts +0 -14
- package/dist/plugins/EmbeddedEntryInline/ToolbarIcon.d.ts +0 -11
- package/dist/plugins/EmbeddedEntryInline/Utils.d.ts +0 -4
- package/dist/plugins/EmbeddedEntryInline/index.d.ts +0 -12
- package/dist/plugins/EntryEmbedDropdown/index.d.ts +0 -14
- package/dist/plugins/Heading/HeadingDropdown.d.ts +0 -28
- package/dist/plugins/Heading/HeadingDropdownItem.d.ts +0 -57
- package/dist/plugins/Heading/Paragraph.d.ts +0 -58
- package/dist/plugins/Hyperlink/Hyperlink.d.ts +0 -13
- package/dist/plugins/Hyperlink/ToolbarIcon.d.ts +0 -7
- package/dist/plugins/Hyperlink/Util.d.ts +0 -43
- package/dist/plugins/Hyperlink/styles.d.ts +0 -12
- package/dist/plugins/Hyperlink/truncate.d.ts +0 -1
- package/dist/plugins/Hyperlink/useRequestStatus.d.ts +0 -6
- package/dist/plugins/InsertBeforeFirstVoidBlock/Util.d.ts +0 -14
- package/dist/plugins/List/EditListWrapper.d.ts +0 -2
- package/dist/plugins/List/ToolbarDecorator.d.ts +0 -62
- package/dist/plugins/NewLinePlugin/index.d.ts +0 -3
- package/dist/plugins/Paste/Paste.d.ts +0 -1
- package/dist/plugins/Paste/Paste.spec.d.ts +0 -1
- package/dist/plugins/Paste/index.spec.d.ts +0 -1
- package/dist/plugins/PasteHtml/PasteHtml.spec.d.ts +0 -1
- package/dist/plugins/PasteHtml/Serializer.d.ts +0 -1
- package/dist/plugins/PasteHtml/index.d.ts +0 -3
- package/dist/plugins/PasteText/PasteText.spec.d.ts +0 -1
- package/dist/plugins/PasteText/index.d.ts +0 -3
- package/dist/plugins/Quote/QuotePlugin.d.ts +0 -10
- package/dist/plugins/Quote/Util.d.ts +0 -2
- package/dist/plugins/Underlined/index.d.ts +0 -64
- package/dist/plugins/index.d.ts +0 -1
- package/dist/plugins/shared/BlockSelectDecorator.d.ts +0 -63
- package/dist/plugins/shared/BlockToggleDecorator.d.ts +0 -65
- package/dist/plugins/shared/MarkDecorator.d.ts +0 -12
- package/dist/plugins/shared/MarkPlugin.d.ts +0 -9
- package/dist/plugins/shared/MarkToggleDecorator.d.ts +0 -62
- package/dist/plugins/shared/NodeDecorator.d.ts +0 -15
- package/dist/plugins/shared/PasteTestHelpers.d.ts +0 -35
- package/dist/plugins/shared/PluginApi.d.ts +0 -31
- package/dist/plugins/shared/PropTypes.d.ts +0 -15
- package/dist/plugins/shared/ToolbarDropdownListItem.d.ts +0 -14
- package/dist/plugins/shared/ToolbarIcon.d.ts +0 -16
- package/dist/plugins/shared/Util.d.ts +0 -1
- package/dist/plugins/shared/UtilHave.d.ts +0 -24
- package/dist/setupTests.d.ts +0 -1
- package/dist/validations/index.d.ts +0 -9
- package/dist/validations/validations.spec.d.ts +0 -1
package/README.md
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
npm install @contentful/field-editor-rich-text
|
|
5
5
|
```
|
|
6
6
|
|
|
7
|
-
This package contains
|
|
7
|
+
This package contains the updated rich text editor, currently in an **ALPHA** state (i.e., not suitable for production use and subject to breaking changes).
|
|
8
8
|
|
|
9
9
|
This editor app is built on top of [Slate](https://github.com/ianstormtaylor/slate), a third party framework for building highly customizable rich text editing solutions.
|
|
10
10
|
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { FieldExtensionSDK } from '@contentful/app-sdk';
|
|
3
|
+
export declare function getContentfulEditorId(sdk: FieldExtensionSDK): string;
|
|
4
|
+
interface useContentfulEditorHookProps {
|
|
5
|
+
sdk: FieldExtensionSDK;
|
|
6
|
+
}
|
|
7
|
+
export declare const ContentfulEditorProvider: import("react").FC<useContentfulEditorHookProps>, useContentfulEditor: any;
|
|
8
|
+
export {};
|
package/dist/RichTextEditor.d.ts
CHANGED
|
@@ -1,61 +1,20 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import * as Contentful from '@contentful/rich-text-types';
|
|
3
|
+
import { RichTextTrackingActionHandler } from './TrackingProvider';
|
|
4
|
+
import { FieldExtensionSDK } from '@contentful/app-sdk';
|
|
5
|
+
declare type ConnectedProps = {
|
|
6
|
+
sdk: FieldExtensionSDK;
|
|
7
|
+
onAction?: RichTextTrackingActionHandler;
|
|
8
|
+
minHeight?: string | number;
|
|
9
|
+
value?: object;
|
|
10
|
+
isDisabled?: boolean;
|
|
11
|
+
onChange?: (doc: Contentful.Document) => unknown;
|
|
12
|
+
isToolbarHidden?: boolean;
|
|
13
|
+
actionsDisabled?: boolean;
|
|
14
|
+
};
|
|
15
|
+
export declare const ConnectedRichTextEditor: (props: ConnectedProps) => JSX.Element;
|
|
16
|
+
declare type Props = ConnectedProps & {
|
|
17
|
+
isInitiallyDisabled: boolean;
|
|
18
|
+
};
|
|
19
|
+
declare const RichTextEditor: (props: Props) => JSX.Element;
|
|
7
20
|
export default RichTextEditor;
|
|
8
|
-
export class ConnectedRichTextEditor extends React.Component<any, any, any> {
|
|
9
|
-
static propTypes: {
|
|
10
|
-
minHeight: PropTypes.Requireable<string | number>;
|
|
11
|
-
sdk: PropTypes.Validator<PropTypes.InferProps<{
|
|
12
|
-
field: PropTypes.Validator<PropTypes.InferProps<{
|
|
13
|
-
id: PropTypes.Validator<string>;
|
|
14
|
-
locale: PropTypes.Validator<string>;
|
|
15
|
-
}>>;
|
|
16
|
-
access: PropTypes.Validator<PropTypes.InferProps<{
|
|
17
|
-
can: PropTypes.Validator<(...args: any[]) => any>;
|
|
18
|
-
}>>;
|
|
19
|
-
parameters: PropTypes.Requireable<PropTypes.InferProps<{
|
|
20
|
-
instance: PropTypes.Validator<PropTypes.InferProps<{
|
|
21
|
-
getEntryUrl: PropTypes.Requireable<(...args: any[]) => any>;
|
|
22
|
-
getAssetUrl: PropTypes.Requireable<(...args: any[]) => any>;
|
|
23
|
-
}>>;
|
|
24
|
-
}>>;
|
|
25
|
-
}>>;
|
|
26
|
-
value: PropTypes.Requireable<object>;
|
|
27
|
-
isDisabled: PropTypes.Requireable<boolean>;
|
|
28
|
-
onChange: PropTypes.Requireable<(...args: any[]) => any>;
|
|
29
|
-
onAction: PropTypes.Requireable<(...args: any[]) => any>;
|
|
30
|
-
isToolbarHidden: PropTypes.Requireable<boolean>;
|
|
31
|
-
actionsDisabled: PropTypes.Requireable<boolean>;
|
|
32
|
-
};
|
|
33
|
-
static defaultProps: {
|
|
34
|
-
value: import("@contentful/rich-text-types").Document;
|
|
35
|
-
onChange: (...args: any[]) => void;
|
|
36
|
-
onAction: (...args: any[]) => void;
|
|
37
|
-
isDisabled: boolean;
|
|
38
|
-
isToolbarHidden: boolean;
|
|
39
|
-
actionsDisabled: boolean;
|
|
40
|
-
};
|
|
41
|
-
constructor(props: any);
|
|
42
|
-
constructor(props: any, context: any);
|
|
43
|
-
editor: React.RefObject<any>;
|
|
44
|
-
richTextAPI: {
|
|
45
|
-
sdk: {
|
|
46
|
-
object: any;
|
|
47
|
-
};
|
|
48
|
-
logViewportAction: {
|
|
49
|
-
function: any;
|
|
50
|
-
};
|
|
51
|
-
createActionLogger: {
|
|
52
|
-
function: any;
|
|
53
|
-
};
|
|
54
|
-
};
|
|
55
|
-
slatePlugins: any[];
|
|
56
|
-
onChange: (editor: any) => void;
|
|
57
|
-
callOnChange: import("lodash").DebouncedFunc<() => void>;
|
|
58
|
-
handleKeyDown: (event: any, editor: any, next: any) => any;
|
|
59
|
-
}
|
|
60
|
-
import React from "react";
|
|
61
|
-
import PropTypes from "prop-types";
|
|
@@ -1,12 +1,7 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
declare type StickyToolbarProps = {
|
|
3
|
+
isDisabled?: boolean;
|
|
4
|
+
children: ReactNode;
|
|
5
|
+
};
|
|
6
|
+
declare const StickyToolbarWrapper: ({ isDisabled, children }: StickyToolbarProps) => JSX.Element;
|
|
1
7
|
export default StickyToolbarWrapper;
|
|
2
|
-
declare function StickyToolbarWrapper({ isDisabled, children }: {
|
|
3
|
-
isDisabled: any;
|
|
4
|
-
children: any;
|
|
5
|
-
}): JSX.Element;
|
|
6
|
-
declare namespace StickyToolbarWrapper {
|
|
7
|
-
export namespace propTypes {
|
|
8
|
-
export const isDisabled: PropTypes.Requireable<boolean>;
|
|
9
|
-
export const children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
|
|
10
|
-
}
|
|
11
|
-
}
|
|
12
|
-
import PropTypes from "prop-types";
|
package/dist/Toolbar/index.d.ts
CHANGED
|
@@ -1,20 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
};
|
|
8
|
-
constructor(props: any);
|
|
9
|
-
constructor(props: any, context: any);
|
|
10
|
-
hasMounted: boolean;
|
|
11
|
-
isReadyToSetFocusProgrammatically: boolean;
|
|
12
|
-
onChange: (...args: any[]) => void;
|
|
13
|
-
handleEmbedDropdownOpen: () => void;
|
|
14
|
-
handleEmbedDropdownClose: () => void;
|
|
15
|
-
renderEmbeds: (props: any) => JSX.Element;
|
|
16
|
-
openHeadingMenu: () => void;
|
|
17
|
-
closeHeadingMenu: () => void;
|
|
18
|
-
}
|
|
19
|
-
import React from "react";
|
|
20
|
-
import PropTypes from "prop-types";
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
declare type ToolbarProps = {
|
|
3
|
+
isDisabled?: boolean;
|
|
4
|
+
};
|
|
5
|
+
declare const Toolbar: ({ isDisabled }: ToolbarProps) => JSX.Element;
|
|
6
|
+
export default Toolbar;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
export declare type RichTextTrackingActionName = 'insertTable' | 'insertTableRow' | 'insertTableColumn' | 'removeTable' | 'removeTableRow' | 'removeTableColumn' | 'paste';
|
|
3
|
+
export declare type RichTextTrackingActionHandler = (name: RichTextTrackingActionName, data: Record<string, unknown>) => unknown;
|
|
4
|
+
interface TrackingProviderProps {
|
|
5
|
+
onAction: RichTextTrackingActionHandler;
|
|
6
|
+
}
|
|
7
|
+
export interface TrackingProvider {
|
|
8
|
+
onViewportAction: (actionName: RichTextTrackingActionName, data?: Record<string, unknown>) => ReturnType<TrackingProviderProps['onAction']>;
|
|
9
|
+
}
|
|
10
|
+
export declare const TrackingProvider: React.FC<TrackingProviderProps>, useTrackingContext: any;
|
|
11
|
+
export {};
|
|
@@ -1,29 +1,111 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
import { BLOCKS, INLINES } from '@contentful/rich-text-types';
|
|
2
|
+
declare const _default: {
|
|
3
|
+
document: {
|
|
4
|
+
nodes: {
|
|
5
|
+
types: {
|
|
6
|
+
type: import("@contentful/rich-text-types").TopLevelBlockEnum;
|
|
7
|
+
}[];
|
|
5
8
|
}[];
|
|
6
|
-
}
|
|
7
|
-
|
|
8
|
-
|
|
9
|
+
};
|
|
10
|
+
blocks: {
|
|
11
|
+
blockquote: {
|
|
12
|
+
nodes: {
|
|
13
|
+
match: {
|
|
14
|
+
type: BLOCKS;
|
|
15
|
+
}[][];
|
|
16
|
+
min: number;
|
|
17
|
+
}[];
|
|
18
|
+
normalize: (editor: any, error: any) => any;
|
|
19
|
+
};
|
|
20
|
+
paragraph: {
|
|
21
|
+
nodes: {
|
|
22
|
+
match: ({
|
|
23
|
+
type: INLINES;
|
|
24
|
+
} | {
|
|
25
|
+
object: string;
|
|
26
|
+
})[];
|
|
27
|
+
}[];
|
|
28
|
+
};
|
|
29
|
+
"heading-1": {
|
|
30
|
+
nodes: {
|
|
31
|
+
match: ({
|
|
32
|
+
type: INLINES;
|
|
33
|
+
} | {
|
|
34
|
+
object: string;
|
|
35
|
+
})[];
|
|
36
|
+
}[];
|
|
37
|
+
};
|
|
38
|
+
"heading-2": {
|
|
39
|
+
nodes: {
|
|
40
|
+
match: ({
|
|
41
|
+
type: INLINES;
|
|
42
|
+
} | {
|
|
43
|
+
object: string;
|
|
44
|
+
})[];
|
|
45
|
+
}[];
|
|
46
|
+
};
|
|
47
|
+
"heading-3": {
|
|
48
|
+
nodes: {
|
|
49
|
+
match: ({
|
|
50
|
+
type: INLINES;
|
|
51
|
+
} | {
|
|
52
|
+
object: string;
|
|
53
|
+
})[];
|
|
54
|
+
}[];
|
|
55
|
+
};
|
|
56
|
+
"heading-4": {
|
|
57
|
+
nodes: {
|
|
58
|
+
match: ({
|
|
59
|
+
type: INLINES;
|
|
60
|
+
} | {
|
|
61
|
+
object: string;
|
|
62
|
+
})[];
|
|
63
|
+
}[];
|
|
64
|
+
};
|
|
65
|
+
"heading-5": {
|
|
66
|
+
nodes: {
|
|
67
|
+
match: ({
|
|
68
|
+
type: INLINES;
|
|
69
|
+
} | {
|
|
70
|
+
object: string;
|
|
71
|
+
})[];
|
|
72
|
+
}[];
|
|
73
|
+
};
|
|
74
|
+
"heading-6": {
|
|
75
|
+
nodes: {
|
|
76
|
+
match: ({
|
|
77
|
+
type: INLINES;
|
|
78
|
+
} | {
|
|
79
|
+
object: string;
|
|
80
|
+
})[];
|
|
81
|
+
}[];
|
|
82
|
+
};
|
|
83
|
+
};
|
|
84
|
+
inlines: {
|
|
9
85
|
hyperlink: {
|
|
10
86
|
nodes: {
|
|
11
|
-
|
|
87
|
+
match: {
|
|
88
|
+
object: string;
|
|
89
|
+
}[];
|
|
12
90
|
}[];
|
|
13
91
|
};
|
|
14
92
|
"entry-hyperlink": {
|
|
15
93
|
nodes: {
|
|
16
|
-
|
|
94
|
+
match: {
|
|
95
|
+
object: string;
|
|
96
|
+
}[];
|
|
17
97
|
}[];
|
|
18
98
|
};
|
|
19
99
|
"asset-hyperlink": {
|
|
20
100
|
nodes: {
|
|
21
|
-
|
|
101
|
+
match: {
|
|
102
|
+
object: string;
|
|
103
|
+
}[];
|
|
22
104
|
}[];
|
|
23
105
|
};
|
|
24
106
|
"embedded-entry-inline": {
|
|
25
107
|
isVoid: boolean;
|
|
26
108
|
};
|
|
27
109
|
};
|
|
28
|
-
}
|
|
110
|
+
};
|
|
29
111
|
export default _default;
|
|
@@ -1 +1,2 @@
|
|
|
1
|
-
|
|
1
|
+
import { DialogExtensionSDK } from '@contentful/app-sdk';
|
|
2
|
+
export declare const openRichTextDialog: (sdk: DialogExtensionSDK) => (options: any) => Promise<unknown>;
|