@prismicio/editor-fields 0.4.5 → 0.4.7

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 (57) hide show
  1. package/dist/EditorConfig.d.ts +23 -15
  2. package/dist/fields/BooleanField.d.ts +4 -5
  3. package/dist/fields/ColorField/ColorField.d.ts +3 -3
  4. package/dist/fields/DateField.d.ts +3 -3
  5. package/dist/fields/EmbedField/EmbedField.d.ts +0 -4
  6. package/dist/fields/EmbedField/EmbedFooter.d.ts +8 -0
  7. package/dist/fields/{GeoPointField.d.ts → GeoPointField/GeoPointField.d.ts} +5 -3
  8. package/dist/fields/GeoPointField/geoPointFieldUtils.d.ts +6 -0
  9. package/dist/fields/GeoPointField/index.d.ts +1 -0
  10. package/dist/fields/ImageField/Components/EmptyCardContent.d.ts +8 -0
  11. package/dist/fields/ImageField/Components/ImageAltControl.d.ts +8 -0
  12. package/dist/fields/ImageField/Components/ImageFieldCard.d.ts +23 -0
  13. package/dist/fields/ImageField/CropperDialog/CropperDialog.d.ts +2 -9
  14. package/dist/fields/ImageField/CropperDialog/croppedImage.d.ts +19 -1
  15. package/dist/fields/ImageField/ImageField.d.ts +1 -2
  16. package/dist/fields/ImageField/MediaPicker/externalImage.d.ts +2 -1
  17. package/dist/fields/ImageField/imageFieldUtils.d.ts +6 -0
  18. package/dist/fields/ImageField/useImageField.d.ts +101 -0
  19. package/dist/fields/LinkField/Documents/DocumentsModal.d.ts +2 -0
  20. package/dist/fields/LinkField/Documents/documentsData.d.ts +3 -3
  21. package/dist/fields/LinkField/Documents/filterData.d.ts +2 -0
  22. package/dist/fields/LinkField/LinkFieldActions.d.ts +2 -0
  23. package/dist/fields/LinkField/useLinkField.d.ts +7 -4
  24. package/dist/fields/RichTextField/BubbleMenu/BubbleMenu.d.ts +7 -0
  25. package/dist/fields/RichTextField/BubbleMenu/ExtraItems.d.ts +8 -0
  26. package/dist/fields/RichTextField/BubbleMenu/LinkItems.d.ts +6 -0
  27. package/dist/fields/RichTextField/BubbleMenu/MarkItems.d.ts +8 -0
  28. package/dist/fields/RichTextField/BubbleMenu/NodeItems.d.ts +8 -0
  29. package/dist/fields/RichTextField/BubbleMenu/index.d.ts +1 -0
  30. package/dist/fields/RichTextField/RichTextField.d.ts +4 -5
  31. package/dist/fields/RichTextField/extensions/{Bold.d.ts → Bold/Bold.d.ts} +1 -1
  32. package/dist/fields/RichTextField/extensions/{BulletList.d.ts → BulletList/BulletList.d.ts} +1 -1
  33. package/dist/fields/RichTextField/extensions/{CodeBlock.d.ts → CodeBlock/CodeBlock.d.ts} +1 -1
  34. package/dist/fields/RichTextField/extensions/{Heading.d.ts → Heading/Heading.d.ts} +1 -1
  35. package/dist/fields/RichTextField/extensions/Image/ImageExtension.d.ts +10 -0
  36. package/dist/fields/RichTextField/extensions/Image/ImageView.d.ts +13 -0
  37. package/dist/fields/RichTextField/extensions/Image/useImageView.d.ts +23 -0
  38. package/dist/fields/RichTextField/extensions/{Italic.d.ts → Italic/Italic.d.ts} +1 -1
  39. package/dist/fields/RichTextField/extensions/Link.d.ts +1 -43
  40. package/dist/fields/RichTextField/extensions/{OrderedList.d.ts → OrderedList/OrderedList.d.ts} +1 -1
  41. package/dist/fields/RichTextField/extensions/{Paragraph.d.ts → Paragraph/Paragraph.d.ts} +1 -1
  42. package/dist/fields/RichTextField/extensions/extensions.d.ts +16 -0
  43. package/dist/fields/RichTextField/extensions/index.d.ts +1 -14
  44. package/dist/fields/RichTextField/models/EditorExtension.d.ts +3 -1
  45. package/dist/fields/RichTextField/models/MenuItems.d.ts +5 -4
  46. package/dist/fields/RichTextField/models/RichTextConfig.d.ts +22 -6
  47. package/dist/fields/RichTextField/useEditor.d.ts +4 -0
  48. package/dist/fields/SelectField.d.ts +3 -4
  49. package/dist/fields/TimestampField.d.ts +3 -3
  50. package/dist/fields/utils.d.ts +3 -2
  51. package/dist/index.d.ts +1 -1
  52. package/dist/index.es.js +19724 -18536
  53. package/dist/zones/RepeatableZoneEditor.d.ts +3 -4
  54. package/package.json +5 -6
  55. package/dist/fields/RichTextField/BubbleMenu.d.ts +0 -8
  56. package/dist/fields/RichTextField/extensions/Embed/index.d.ts +0 -10
  57. package/dist/index.umd.js +0 -145
@@ -1,44 +1,2 @@
1
1
  import { MarkExtension } from "../models";
2
- declare const EditorLink: MarkExtension<{
3
- __TYPE__: "LinkContent";
4
- value: ({
5
- __TYPE__: "ImageLink";
6
- } & {
7
- id: string;
8
- url: string;
9
- height: string;
10
- width: string;
11
- size: string;
12
- name: string;
13
- kind: string;
14
- } & {
15
- date?: string | null | undefined;
16
- }) | ({
17
- id: string;
18
- url: string;
19
- name: string;
20
- kind: string;
21
- size: string;
22
- } & {
23
- date?: string | null | undefined;
24
- } & {
25
- __TYPE__: "FileLink";
26
- } & {
27
- size?: string | undefined;
28
- }) | ({
29
- __TYPE__: "DocumentLink";
30
- } & {
31
- id: string;
32
- }) | ({
33
- __TYPE__: "ExternalLink";
34
- } & {
35
- url: string;
36
- } & {
37
- kind?: "web" | undefined;
38
- target?: string | null | undefined;
39
- preview?: {
40
- title?: string | undefined;
41
- } | null | undefined;
42
- });
43
- }>;
44
- export default EditorLink;
2
+ export declare const Link: MarkExtension<unknown>;
@@ -1,3 +1,3 @@
1
- import { ListExtension } from "../models";
1
+ import { ListExtension } from "../../models";
2
2
  declare const EditorOrderedList: ListExtension;
3
3
  export default EditorOrderedList;
@@ -1,3 +1,3 @@
1
- import { TextExtension } from "../models";
1
+ import { TextExtension } from "../../models";
2
2
  declare const EditorParagraph: TextExtension;
3
3
  export default EditorParagraph;
@@ -0,0 +1,16 @@
1
+ import type { RichTextNodeType } from "@prismicio/types-internal/lib/customtypes";
2
+ import type { WidgetExtension } from "../models";
3
+ import { default as Bold } from "./Bold/Bold";
4
+ import { default as BulletList } from "./BulletList/BulletList";
5
+ import { default as CodeBlock } from "./CodeBlock/CodeBlock";
6
+ import { default as Embed } from "./Embed/EmbedExtension";
7
+ import { default as Heading } from "./Heading/Heading";
8
+ import { default as Image } from "./Image/ImageExtension";
9
+ import { default as Italic } from "./Italic/Italic";
10
+ import { Link } from "./Link";
11
+ import { default as OrderedList } from "./OrderedList/OrderedList";
12
+ import { default as Paragraph } from "./Paragraph/Paragraph";
13
+ export declare const DefaultTextExtension: import("../models").TextExtension;
14
+ export declare const MarkExtensions: import("../models").MarkExtension<unknown>[];
15
+ export declare function getAllExtensions(nodeTypes?: Set<RichTextNodeType>): WidgetExtension[];
16
+ export { Bold, BulletList, CodeBlock, Embed, Heading, Image, Italic, Link, OrderedList, Paragraph };
@@ -1,14 +1 @@
1
- import type { RichTextNodeType } from "@prismicio/types-internal/lib/customtypes";
2
- import type { WidgetExtension } from "../models";
3
- import { default as Bold } from "./Bold";
4
- import { default as BulletList } from "./BulletList";
5
- import { default as CodeBlock } from "./CodeBlock";
6
- import { default as Embed } from "./Embed/EmbedExtension";
7
- import { default as Heading } from "./Heading";
8
- import { default as Italic } from "./Italic";
9
- import { default as OrderedList } from "./OrderedList";
10
- import { default as Paragraph } from "./Paragraph";
11
- export declare const DefaultExtension: import("../models").TextExtension;
12
- export declare const MarkExtensions: import("../models").MarkExtension<unknown>[];
13
- export declare const Extensions: (nodeTypes?: Set<RichTextNodeType>) => readonly WidgetExtension[];
14
- export { Bold, BulletList, CodeBlock, Embed, Heading, Italic, OrderedList, Paragraph };
1
+ export * from "./extensions";
@@ -4,7 +4,7 @@ import type { Mark, Node } from "@tiptap/core";
4
4
  import type { NonEmptyArray } from "fp-ts/NonEmptyArray";
5
5
  import type { ReadonlyNonEmptyArray } from "fp-ts/ReadonlyNonEmptyArray";
6
6
  import type { Mark as ProsemirrorMark, Node as ProsemirrorNode, Schema } from "prosemirror-model";
7
- import type { Level } from "../extensions/Heading";
7
+ import type { Level } from "../extensions/Heading/Heading";
8
8
  export declare enum ExtensionType {
9
9
  Document = "document",
10
10
  Mark = "mark",
@@ -63,6 +63,7 @@ export declare class TextExtension {
63
63
  toPrismic(elmt: ProsemirrorNode): TextBlock | readonly TextBlock[] | undefined;
64
64
  }, placeholder?: ExtensionPlaceholder, lockedFormat?: boolean);
65
65
  }
66
+ export declare function isTextExtension(extension: WidgetExtension): extension is TextExtension;
66
67
  export declare class EmbedExtension {
67
68
  readonly richTextNodeTypes: NonEmptyArray<RichTextNodeType>;
68
69
  readonly name: string;
@@ -106,3 +107,4 @@ export declare class ListExtension extends TextExtension {
106
107
  toPrismic(elmt: ProsemirrorNode): readonly TextBlock[];
107
108
  });
108
109
  }
110
+ export declare function isListExtension(extension: WidgetExtension): extension is ListExtension;
@@ -1,9 +1,9 @@
1
+ import type { IconName } from "@prismicio/editor-ui";
1
2
  import { RichTextNodeType } from "@prismicio/types-internal/lib/customtypes";
2
- import type { Editor, Range } from "@tiptap/core";
3
- import type { ReactNode } from "react";
3
+ import type { ChainedCommands, Editor, Range } from "@tiptap/core";
4
4
  export declare type MenuItem = Readonly<{
5
5
  nodeType: RichTextNodeType;
6
- icon: ReactNode;
6
+ icon: IconName;
7
7
  isActive: (editor: Editor) => boolean;
8
8
  runCommands: (editor: Editor, options?: RunCommandsOptions) => boolean;
9
9
  } & ({
@@ -20,5 +20,6 @@ declare type RunCommandsOptions = Readonly<{
20
20
  export declare const ALL_NODE_ITEMS: readonly MenuItem[];
21
21
  export declare const ALL_MARK_ITEMS: readonly MenuItem[];
22
22
  export declare const ALL_EXTRA_ITEMS: readonly MenuItem[];
23
- export declare function filterMenuItems(menuItems: readonly MenuItem[], nodeTypes: readonly string[]): readonly MenuItem[];
23
+ export declare function createRunCommandsFn(chainCommands: (commands: ChainedCommands, editor: Editor) => ChainedCommands): (editor: Editor, options?: RunCommandsOptions) => boolean;
24
+ export declare function filterMenuItems(menuItems: readonly MenuItem[], nodeTypes: readonly string[]): MenuItem[];
24
25
  export {};
@@ -1,10 +1,26 @@
1
- import type { TextBlock } from "@prismicio/types-internal/lib/content";
2
1
  import { RichTextConfig } from "@prismicio/types-internal/lib/customtypes";
3
2
  import type { Node as ProsemirrorNode, Schema } from "prosemirror-model";
4
3
  import { type WidgetExtension } from "./EditorExtension";
5
- declare type TextConverter = (text: TextBlock) => ProsemirrorNode | undefined;
6
- export declare function composeExtensions(config: RichTextConfig | undefined): {
7
- defaultTextConverter: ((schema: Schema<any, any>) => TextConverter) | undefined;
8
- extensions: readonly WidgetExtension[];
4
+ export declare function composeExtensions(config?: RichTextConfig): {
5
+ extensions: WidgetExtension[];
6
+ defaultTextConverter: undefined;
7
+ } | {
8
+ extensions: WidgetExtension[];
9
+ defaultTextConverter: (schema: Schema<any, any>) => (block: {
10
+ type: "em" | "embed" | "strong" | "image" | "paragraph" | "list-item" | "o-list-item" | "heading1" | "heading2" | "heading3" | "heading4" | "heading5" | "heading6" | "preformatted" | "hyperlink" | "rtl";
11
+ content: {
12
+ text: string;
13
+ } & {
14
+ spans?: ({
15
+ data?: unknown;
16
+ } & {
17
+ start: number;
18
+ end: number;
19
+ type: "label" | "em" | "embed" | "strong" | "image" | "paragraph" | "list-item" | "o-list-item" | "heading1" | "heading2" | "heading3" | "heading4" | "heading5" | "heading6" | "preformatted" | "hyperlink" | "rtl";
20
+ })[] | undefined;
21
+ };
22
+ } & {
23
+ label?: string | undefined;
24
+ direction?: string | undefined;
25
+ }) => ProsemirrorNode | undefined;
9
26
  };
10
- export {};
@@ -0,0 +1,4 @@
1
+ import type { EditorOptions } from "@tiptap/core";
2
+ import { Editor } from "@tiptap/react";
3
+ import { DependencyList } from "react";
4
+ export declare function useEditor(options?: Partial<EditorOptions>, deps?: DependencyList): Editor | undefined;
@@ -1,12 +1,11 @@
1
1
  import type { SelectContent } from "@prismicio/types-internal/lib/content";
2
2
  import type { Select as SelectT } from "@prismicio/types-internal/lib/customtypes";
3
- import type { FC } from "react";
4
- declare type SelectFieldProps = Readonly<{
3
+ interface Props {
5
4
  content: SelectContent | undefined;
6
5
  field: SelectT;
7
6
  id: string;
8
7
  onContentChange: (content: SelectContent | undefined) => void;
9
8
  readOnly: boolean;
10
- }>;
11
- export declare const SelectField: FC<SelectFieldProps>;
9
+ }
10
+ export declare function SelectField(props: Props): JSX.Element;
12
11
  export {};
@@ -1,11 +1,11 @@
1
1
  import type { TimestampContent } from "@prismicio/types-internal/lib/content";
2
2
  import type { Timestamp } from "@prismicio/types-internal/lib/customtypes";
3
- declare type Props = Readonly<{
3
+ interface Props {
4
4
  id: string;
5
5
  readOnly: boolean;
6
6
  field: Timestamp;
7
7
  content?: TimestampContent;
8
8
  onContentChange: (content?: TimestampContent) => void;
9
- }>;
10
- export declare const TimestampField: ({ id, readOnly, field, content, onContentChange }: Props) => JSX.Element;
9
+ }
10
+ export declare function TimestampField(props: Props): JSX.Element;
11
11
  export {};
@@ -1,7 +1,8 @@
1
- import type { BooleanField, NestableWidget, Separator, UID } from "@prismicio/types-internal/lib/customtypes";
1
+ import type { BooleanField, GeoPoint, NestableWidget, Separator, UID } from "@prismicio/types-internal/lib/customtypes";
2
2
  declare type Widgets = NestableWidget | UID;
3
- declare type Field = Exclude<Widgets, Separator>;
3
+ declare type Field = Exclude<Widgets, Separator | GeoPoint>;
4
4
  export declare function getFieldLabel(field: Widgets): string;
5
+ export declare const DEFAULT_PLACEHOLDER = "...";
5
6
  export declare function getFieldPlaceholder(field: Exclude<Field, BooleanField>): string;
6
7
  export declare function getFieldPlaceholder(field: BooleanField, value: boolean): string;
7
8
  export {};
package/dist/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
1
  export { DocumentEditor } from "./DocumentEditor";
2
- export type { EditorConfig } from "./EditorConfig";
2
+ export { type EditorConfig, suppressConfigErrors, throwConfigError } from "./EditorConfig";
3
3
  export type { Selection } from "./Selection";
4
4
  export { SharedSliceEditor } from "./slices/SharedSliceEditor";