@quadrats/react 0.5.2 → 0.5.3

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.
@@ -1,6 +1,6 @@
1
1
  /// <reference types="react" />
2
2
  import { BlockquoteElement, Blockquote } from '@quadrats/common/blockquote';
3
- import { WithCreateHandlers, WithCreateRenderElement, RenderElementProps } from '@quadrats/react';
3
+ import { WithCreateHandlers, WithCreateRenderElement, RenderElementProps, ReactEditor } from '@quadrats/react';
4
4
  export declare type RenderBlockquoteElementProps = RenderElementProps<BlockquoteElement>;
5
5
  export interface ReactBlockquoteCreateHandlersOptions {
6
6
  /**
@@ -11,5 +11,5 @@ export interface ReactBlockquoteCreateHandlersOptions {
11
11
  export interface ReactBlockquoteCreateRenderElementOptions {
12
12
  render?: (props: RenderBlockquoteElementProps) => JSX.Element | null | undefined;
13
13
  }
14
- export interface ReactBlockquote extends Blockquote, WithCreateHandlers<[ReactBlockquoteCreateHandlersOptions?]>, WithCreateRenderElement<[ReactBlockquoteCreateRenderElementOptions?]> {
14
+ export interface ReactBlockquote extends Blockquote<ReactEditor>, WithCreateHandlers<[ReactBlockquoteCreateHandlersOptions?]>, WithCreateRenderElement<[ReactBlockquoteCreateRenderElementOptions?]> {
15
15
  }
@@ -1,6 +1,6 @@
1
1
  function createEventHandler(editor, handlers) {
2
2
  const [handler, ...restHandlers] = handlers;
3
- return (event) => handler(event, editor, () => {
3
+ return event => handler(event, editor, () => {
4
4
  const next = restHandlers.length > 0 ? createEventHandler(editor, restHandlers) : () => { };
5
5
  next(event);
6
6
  });
@@ -24,7 +24,7 @@ function composeHandlers(handlersList) {
24
24
  return acc;
25
25
  }, {});
26
26
  const handlersEntries = Object.entries(handlersListRecord);
27
- return (editor) => handlersEntries.reduce((acc, [name, handlers]) => {
27
+ return editor => handlersEntries.reduce((acc, [name, handlers]) => {
28
28
  acc[name] = createEventHandler(editor, handlers);
29
29
  return acc;
30
30
  }, {});
@@ -6,7 +6,7 @@ import DefaultElement from './components/DefaultElement.js';
6
6
  * To compose sequential `renderElement`s to single.
7
7
  */
8
8
  function composeRenderElements(renderElements) {
9
- return composeRenderElementsBase((props) => React.createElement(DefaultElement, Object.assign({}, props)), renderElements);
9
+ return composeRenderElementsBase(props => React.createElement(DefaultElement, Object.assign({}, props)), renderElements);
10
10
  }
11
11
 
12
12
  export { composeRenderElements };
@@ -6,7 +6,7 @@ import DefaultLeaf from './components/DefaultLeaf.js';
6
6
  * To compose sequential `renderLeaf`s or `renderMark`s to single.
7
7
  */
8
8
  function composeRenderLeafs(renderLeafs) {
9
- return composeRenderLeafsBase((props) => React.createElement(DefaultLeaf, Object.assign({}, props)), renderLeafs);
9
+ return composeRenderLeafsBase(props => React.createElement(DefaultLeaf, Object.assign({}, props)), renderLeafs);
10
10
  }
11
11
 
12
12
  export { composeRenderLeafs };
@@ -1,9 +1,9 @@
1
1
  /// <reference types="react" />
2
2
  import { Divider, DividerElement } from '@quadrats/common/divider';
3
- import { WithCreateRenderElement, RenderElementProps } from '@quadrats/react';
3
+ import { WithCreateRenderElement, RenderElementProps, ReactEditor } from '@quadrats/react';
4
4
  export declare type RenderDividerElementProps = RenderElementProps<DividerElement>;
5
5
  export interface ReactDividerCreateRenderElementOptions {
6
6
  render?: (props: RenderDividerElementProps) => JSX.Element | null | undefined;
7
7
  }
8
- export interface ReactDivider extends Divider, WithCreateRenderElement<[ReactDividerCreateRenderElementOptions?]> {
8
+ export interface ReactDivider extends Divider<ReactEditor>, WithCreateRenderElement<[ReactDividerCreateRenderElementOptions?]> {
9
9
  }
@@ -15,12 +15,12 @@ function useEmbedTool(controller, providers, getPlaceholder, startToolInput) {
15
15
  const editor = react.useSlateStatic();
16
16
  const defaultStartToolInput = toolbar.useStartToolInput();
17
17
  const start = startToolInput
18
- ? (inputConfig) => startToolInput(editor, inputConfig)
18
+ ? inputConfig => startToolInput(editor, inputConfig)
19
19
  : defaultStartToolInput;
20
20
  return {
21
21
  onClick: () => start({
22
22
  getPlaceholder,
23
- confirm: (embedCode) => controller.insertEmbed(editor, providers, embedCode),
23
+ confirm: embedCode => controller.insertEmbed(editor, providers, embedCode),
24
24
  }),
25
25
  };
26
26
  }
@@ -1,6 +1,6 @@
1
- import { Editor } from '@quadrats/core';
2
1
  import { InputWidgetConfig } from '@quadrats/common/input-widget';
2
+ import { ReactEditor } from '@quadrats/react';
3
3
  import { ReactEmbed } from '@quadrats/react/embed';
4
- export declare function useEmbedTool<P extends string>(controller: ReactEmbed<P>, providers: P[], getPlaceholder: InputWidgetConfig['getPlaceholder'], startToolInput?: (editor: Editor, inputConfig: InputWidgetConfig) => void): {
4
+ export declare function useEmbedTool<P extends string>(controller: ReactEmbed<P>, providers: P[], getPlaceholder: InputWidgetConfig['getPlaceholder'], startToolInput?: (editor: ReactEditor, inputConfig: InputWidgetConfig) => void): {
5
5
  onClick: () => void;
6
6
  };
@@ -5,12 +5,12 @@ function useEmbedTool(controller, providers, getPlaceholder, startToolInput) {
5
5
  const editor = useSlateStatic();
6
6
  const defaultStartToolInput = useStartToolInput();
7
7
  const start = startToolInput
8
- ? (inputConfig) => startToolInput(editor, inputConfig)
8
+ ? inputConfig => startToolInput(editor, inputConfig)
9
9
  : defaultStartToolInput;
10
10
  return {
11
11
  onClick: () => start({
12
12
  getPlaceholder,
13
- confirm: (embedCode) => controller.insertEmbed(editor, providers, embedCode),
13
+ confirm: embedCode => controller.insertEmbed(editor, providers, embedCode),
14
14
  }),
15
15
  };
16
16
  }
@@ -1,6 +1,6 @@
1
1
  /// <reference types="react" />
2
2
  import { Embed, EmbedElement } from '@quadrats/common/embed';
3
- import { WithCreateRenderElement, RenderElementProps } from '@quadrats/react';
3
+ import { WithCreateRenderElement, RenderElementProps, ReactEditor } from '@quadrats/react';
4
4
  export interface WithEmbedRenderData<RenderData> {
5
5
  /**
6
6
  * The data deserialized from element by corresponding strategy.
@@ -10,5 +10,5 @@ export interface WithEmbedRenderData<RenderData> {
10
10
  export interface RenderEmbedElementProps<EmbedData extends Record<string, unknown>, RenderData> extends RenderElementProps<EmbedElement & EmbedData>, WithEmbedRenderData<RenderData> {
11
11
  }
12
12
  export declare type ReactEmbedCreateRenderElementOptions<Provider extends string> = Record<Provider, (props: RenderEmbedElementProps<any, any>) => JSX.Element | null | undefined>;
13
- export interface ReactEmbed<Provider extends string> extends Embed<Provider>, WithCreateRenderElement<[ReactEmbedCreateRenderElementOptions<Provider>]> {
13
+ export interface ReactEmbed<Provider extends string> extends Embed<Provider, ReactEditor>, WithCreateRenderElement<[ReactEmbedCreateRenderElementOptions<Provider>]> {
14
14
  }
@@ -1,9 +1,9 @@
1
1
  /// <reference types="react" />
2
2
  import { FileUploader, FileUploaderElement } from '@quadrats/common/file-uploader';
3
- import { RenderElementProps, WithCreateRenderElement } from '@quadrats/react';
3
+ import { ReactEditor, RenderElementProps, WithCreateRenderElement } from '@quadrats/react';
4
4
  export declare type RenderFileUploaderElementProps = RenderElementProps<FileUploaderElement>;
5
5
  export declare type RenderFileUploaderElement = (props: RenderFileUploaderElementProps) => JSX.Element | null | undefined;
6
6
  export interface FileUploaderCreateRenderElementOptions {
7
7
  render?: RenderFileUploaderElement;
8
8
  }
9
- export declare type ReactFileUploader = FileUploader & WithCreateRenderElement<[FileUploaderCreateRenderElementOptions?]>;
9
+ export declare type ReactFileUploader = FileUploader<ReactEditor> & WithCreateRenderElement<[FileUploaderCreateRenderElementOptions?]>;
@@ -34,13 +34,13 @@ function createReactFootnote(options = {}) {
34
34
  function useFootnotes(editor) {
35
35
  const footnoteNodes = Array.from(core.getNodes(editor, {
36
36
  at: [],
37
- match: (node) => node.type === footnote.FOOTNOTE_TYPE,
37
+ match: node => node.type === footnote.FOOTNOTE_TYPE,
38
38
  }));
39
39
  const footnotes = footnoteNodes.map((node) => {
40
40
  var _a, _b;
41
41
  const nodeData = node === null || node === void 0 ? void 0 : node[0];
42
42
  return {
43
- wrapperText: (_b = (_a = (nodeData === null || nodeData === void 0 ? void 0 : nodeData.children)) === null || _a === void 0 ? void 0 : _a.map((childNode) => childNode.text).join('')) !== null && _b !== void 0 ? _b : '',
43
+ wrapperText: (_b = (_a = (nodeData === null || nodeData === void 0 ? void 0 : nodeData.children)) === null || _a === void 0 ? void 0 : _a.map(childNode => childNode.text).join('')) !== null && _b !== void 0 ? _b : '',
44
44
  footnote: nodeData === null || nodeData === void 0 ? void 0 : nodeData.footnote,
45
45
  index: nodeData === null || nodeData === void 0 ? void 0 : nodeData.index,
46
46
  };
@@ -61,10 +61,10 @@ function deepSearchFootnoteFromNodes(nodes) {
61
61
  }
62
62
  function useFootnotesFromNodes(nodes) {
63
63
  const filter = deepSearchFootnoteFromNodes(nodes);
64
- return filter.map((element) => {
64
+ return filter.map(element => {
65
65
  var _a;
66
66
  return ({
67
- wrapperText: (_a = (element === null || element === void 0 ? void 0 : element.children)) === null || _a === void 0 ? void 0 : _a.map((childNode) => childNode.text).join(''),
67
+ wrapperText: (_a = (element === null || element === void 0 ? void 0 : element.children)) === null || _a === void 0 ? void 0 : _a.map(childNode => childNode.text).join(''),
68
68
  footnote: element.footnote,
69
69
  index: element.index,
70
70
  });
@@ -1,9 +1,9 @@
1
1
  /// <reference types="react" />
2
2
  import { Footnote, FootnoteElement } from '@quadrats/common/footnote';
3
- import { RenderElementProps, ReactWithable, WithCreateRenderElement } from '@quadrats/react';
3
+ import { RenderElementProps, ReactWithable, WithCreateRenderElement, ReactEditor } from '@quadrats/react';
4
4
  export declare type RenderFootnoteElementProps = RenderElementProps<FootnoteElement>;
5
5
  export interface ReactFootnoteCreateRenderElementOptions {
6
6
  render?: (props: RenderFootnoteElementProps) => JSX.Element | null | undefined;
7
7
  }
8
- export interface ReactFootnote extends Omit<Footnote, 'with'>, WithCreateRenderElement<[ReactFootnoteCreateRenderElementOptions?]>, ReactWithable {
8
+ export interface ReactFootnote extends Omit<Footnote<ReactEditor>, 'with'>, WithCreateRenderElement<[ReactFootnoteCreateRenderElementOptions?]>, ReactWithable {
9
9
  }
@@ -1,4 +1,4 @@
1
- import { Editor } from '@quadrats/core';
2
1
  import { FootnoteData } from '@quadrats/common/footnote';
3
- export declare function useFootnotes(editor: Editor): FootnoteData[];
2
+ import { ReactEditor } from 'slate-react';
3
+ export declare function useFootnotes(editor: ReactEditor): FootnoteData[];
4
4
  export default useFootnotes;
@@ -4,13 +4,13 @@ import { FOOTNOTE_TYPE } from '@quadrats/common/footnote';
4
4
  function useFootnotes(editor) {
5
5
  const footnoteNodes = Array.from(getNodes(editor, {
6
6
  at: [],
7
- match: (node) => node.type === FOOTNOTE_TYPE,
7
+ match: node => node.type === FOOTNOTE_TYPE,
8
8
  }));
9
9
  const footnotes = footnoteNodes.map((node) => {
10
10
  var _a, _b;
11
11
  const nodeData = node === null || node === void 0 ? void 0 : node[0];
12
12
  return {
13
- wrapperText: (_b = (_a = (nodeData === null || nodeData === void 0 ? void 0 : nodeData.children)) === null || _a === void 0 ? void 0 : _a.map((childNode) => childNode.text).join('')) !== null && _b !== void 0 ? _b : '',
13
+ wrapperText: (_b = (_a = (nodeData === null || nodeData === void 0 ? void 0 : nodeData.children)) === null || _a === void 0 ? void 0 : _a.map(childNode => childNode.text).join('')) !== null && _b !== void 0 ? _b : '',
14
14
  footnote: nodeData === null || nodeData === void 0 ? void 0 : nodeData.footnote,
15
15
  index: nodeData === null || nodeData === void 0 ? void 0 : nodeData.index,
16
16
  };
@@ -14,10 +14,10 @@ function deepSearchFootnoteFromNodes(nodes) {
14
14
  }
15
15
  function useFootnotesFromNodes(nodes) {
16
16
  const filter = deepSearchFootnoteFromNodes(nodes);
17
- return filter.map((element) => {
17
+ return filter.map(element => {
18
18
  var _a;
19
19
  return ({
20
- wrapperText: (_a = (element === null || element === void 0 ? void 0 : element.children)) === null || _a === void 0 ? void 0 : _a.map((childNode) => childNode.text).join(''),
20
+ wrapperText: (_a = (element === null || element === void 0 ? void 0 : element.children)) === null || _a === void 0 ? void 0 : _a.map(childNode => childNode.text).join(''),
21
21
  footnote: element.footnote,
22
22
  index: element.index,
23
23
  });
@@ -1,6 +1,6 @@
1
1
  /// <reference types="react" />
2
2
  import { Heading, HeadingElement, HeadingLevel } from '@quadrats/common/heading';
3
- import { WithCreateHandlers, WithCreateRenderElement, RenderElementProps } from '@quadrats/react';
3
+ import { WithCreateHandlers, WithCreateRenderElement, RenderElementProps, ReactEditor } from '@quadrats/react';
4
4
  export declare type RenderHeadingElementProps = RenderElementProps<HeadingElement>;
5
5
  export interface ReactHeadingCreateHandlersOptions {
6
6
  /**
@@ -11,5 +11,5 @@ export interface ReactHeadingCreateHandlersOptions {
11
11
  export interface ReactHeadingCreateRenderElementOptions {
12
12
  render?: (props: RenderHeadingElementProps) => JSX.Element | null | undefined;
13
13
  }
14
- export interface ReactHeading<Level extends HeadingLevel> extends Heading<Level>, WithCreateHandlers<[ReactHeadingCreateHandlersOptions?]>, WithCreateRenderElement<[ReactHeadingCreateRenderElementOptions?]> {
14
+ export interface ReactHeading<Level extends HeadingLevel> extends Heading<Level, ReactEditor>, WithCreateHandlers<[ReactHeadingCreateHandlersOptions?]>, WithCreateRenderElement<[ReactHeadingCreateRenderElementOptions?]> {
15
15
  }
@@ -7,9 +7,7 @@ function Image(props) {
7
7
  const { attributes, children, element, resizeImage, src, } = props;
8
8
  const editor = useSlateStatic();
9
9
  const { focusedAndSelected, imageRef, onResizeStart } = useImageResizer(element, resizeImage);
10
- return (
11
- // eslint-disable-next-line jsx-a11y/click-events-have-key-events,jsx-a11y/no-noninteractive-element-interactions
12
- React.createElement("div", Object.assign({}, attributes, { className: "qdr-image", onClick: () => Transforms.select(editor, ReactEditor.findPath(editor, element)), onMouseDown: (event) => event.preventDefault(), role: "img" }),
10
+ return (React.createElement("div", Object.assign({}, attributes, { className: "qdr-image", onClick: () => Transforms.select(editor, ReactEditor.findPath(editor, element)), onMouseDown: event => event.preventDefault(), role: "img" }),
13
11
  React.createElement("div", { className: "qdr-image__spacer" }, children),
14
12
  React.createElement("div", { contentEditable: false },
15
13
  focusedAndSelected && (React.createElement(React.Fragment, null,
@@ -85,7 +85,7 @@ function createReactImage(options = {}) {
85
85
  })
86
86
  .reduce((prev, imageFile) => __awaiter(this, void 0, void 0, function* () {
87
87
  yield prev;
88
- return readFileAsDataURL(imageFile).then((dataURL) => core.insertImage(editor, dataURL));
88
+ return readFileAsDataURL(imageFile).then(dataURL => core.insertImage(editor, dataURL));
89
89
  }), Promise.resolve());
90
90
  return;
91
91
  }
@@ -78,11 +78,11 @@ function useImageResizer(element, resizeImage) {
78
78
  function onCancelResize() {
79
79
  setStartPoint(undefined);
80
80
  }
81
- moveEvents.forEach((moveEvent) => document.addEventListener(moveEvent, onResize));
82
- endEvents.forEach((endEvent) => document.addEventListener(endEvent, onCancelResize));
81
+ moveEvents.forEach(moveEvent => document.addEventListener(moveEvent, onResize));
82
+ endEvents.forEach(endEvent => document.addEventListener(endEvent, onCancelResize));
83
83
  return () => {
84
- moveEvents.forEach((moveEvent) => document.removeEventListener(moveEvent, onResize));
85
- endEvents.forEach((endEvent) => document.removeEventListener(endEvent, onCancelResize));
84
+ moveEvents.forEach(moveEvent => document.removeEventListener(moveEvent, onResize));
85
+ endEvents.forEach(endEvent => document.removeEventListener(endEvent, onCancelResize));
86
86
  };
87
87
  }, [editor, element, focusedAndSelected, resizeImage, startPoint]);
88
88
  return {
@@ -104,11 +104,11 @@ function useImageResizer(element, resizeImage) {
104
104
  function onCancelResize() {
105
105
  setStartPoint(undefined);
106
106
  }
107
- moveEvents.forEach((moveEvent) => document.addEventListener(moveEvent, onResize));
108
- endEvents.forEach((endEvent) => document.addEventListener(endEvent, onCancelResize));
107
+ moveEvents.forEach(moveEvent => document.addEventListener(moveEvent, onResize));
108
+ endEvents.forEach(endEvent => document.addEventListener(endEvent, onCancelResize));
109
109
  return () => {
110
- moveEvents.forEach((moveEvent) => document.removeEventListener(moveEvent, onResize));
111
- endEvents.forEach((endEvent) => document.removeEventListener(endEvent, onCancelResize));
110
+ moveEvents.forEach(moveEvent => document.removeEventListener(moveEvent, onResize));
111
+ endEvents.forEach(endEvent => document.removeEventListener(endEvent, onCancelResize));
112
112
  };
113
113
  }, [editor, element, focusedAndSelected, resizeImage, startPoint]);
114
114
  return {
@@ -122,9 +122,7 @@ function Image(props) {
122
122
  const { attributes, children, element, resizeImage, src, } = props;
123
123
  const editor = react.useSlateStatic();
124
124
  const { focusedAndSelected, imageRef, onResizeStart } = useImageResizer(element, resizeImage);
125
- return (
126
- // eslint-disable-next-line jsx-a11y/click-events-have-key-events,jsx-a11y/no-noninteractive-element-interactions
127
- React__default.createElement("div", Object.assign({}, attributes, { className: "qdr-image", onClick: () => core.Transforms.select(editor, react.ReactEditor.findPath(editor, element)), onMouseDown: (event) => event.preventDefault(), role: "img" }),
125
+ return (React__default.createElement("div", Object.assign({}, attributes, { className: "qdr-image", onClick: () => core.Transforms.select(editor, react.ReactEditor.findPath(editor, element)), onMouseDown: event => event.preventDefault(), role: "img" }),
128
126
  React__default.createElement("div", { className: "qdr-image__spacer" }, children),
129
127
  React__default.createElement("div", { contentEditable: false },
130
128
  focusedAndSelected && (React__default.createElement(React__default.Fragment, null,
@@ -233,7 +231,7 @@ function createReactImage(options = {}) {
233
231
  })
234
232
  .reduce((prev, imageFile) => tslib.__awaiter(this, void 0, void 0, function* () {
235
233
  yield prev;
236
- return utils.readFileAsDataURL(imageFile).then((dataURL) => core$1.insertImage(editor, dataURL));
234
+ return utils.readFileAsDataURL(imageFile).then(dataURL => core$1.insertImage(editor, dataURL));
237
235
  }), Promise.resolve());
238
236
  return;
239
237
  }
@@ -1,6 +1,6 @@
1
1
  /// <reference types="react" />
2
2
  import { Image, ImageCaptionElement, ImageCaptionTypeKey, ImageElement, ImageFigureElement, ImageFigureTypeKey, ImageTypeKey } from '@quadrats/common/image';
3
- import { WithCreateHandlers, WithCreateRenderElement, RenderElementProps, ReactWithable } from '@quadrats/react';
3
+ import { WithCreateHandlers, WithCreateRenderElement, RenderElementProps, ReactWithable, ReactEditor } from '@quadrats/react';
4
4
  export interface RenderImageFigureElementProps extends RenderElementProps<ImageFigureElement> {
5
5
  style?: {
6
6
  width: string;
@@ -15,5 +15,5 @@ export declare type ImageRenderElements = Record<ImageFigureTypeKey, (props: Ren
15
15
  export declare type ReactImageCreateRenderElementOptions = {
16
16
  [K in ImageFigureTypeKey | ImageTypeKey | ImageCaptionTypeKey]?: ImageRenderElements[K];
17
17
  };
18
- export interface ReactImage<Hosting extends string> extends Omit<Image<Hosting>, 'with'>, WithCreateHandlers, WithCreateRenderElement<[ReactImageCreateRenderElementOptions?]>, ReactWithable {
18
+ export interface ReactImage<Hosting extends string> extends Omit<Image<Hosting, ReactEditor>, 'with'>, WithCreateHandlers, WithCreateRenderElement<[ReactImageCreateRenderElementOptions?]>, ReactWithable {
19
19
  }
package/index.cjs.js CHANGED
@@ -74,7 +74,7 @@ function Quadrats(props) {
74
74
 
75
75
  function createEventHandler(editor, handlers) {
76
76
  const [handler, ...restHandlers] = handlers;
77
- return (event) => handler(event, editor, () => {
77
+ return event => handler(event, editor, () => {
78
78
  const next = restHandlers.length > 0 ? createEventHandler(editor, restHandlers) : () => { };
79
79
  next(event);
80
80
  });
@@ -98,7 +98,7 @@ function composeHandlers(handlersList) {
98
98
  return acc;
99
99
  }, {});
100
100
  const handlersEntries = Object.entries(handlersListRecord);
101
- return (editor) => handlersEntries.reduce((acc, [name, handlers]) => {
101
+ return editor => handlersEntries.reduce((acc, [name, handlers]) => {
102
102
  acc[name] = createEventHandler(editor, handlers);
103
103
  return acc;
104
104
  }, {});
@@ -108,14 +108,14 @@ function composeHandlers(handlersList) {
108
108
  * To compose sequential `renderElement`s to single.
109
109
  */
110
110
  function composeRenderElements(renderElements) {
111
- return _internal.composeRenderElementsBase((props) => React__default.createElement(DefaultElement, Object.assign({}, props)), renderElements);
111
+ return _internal.composeRenderElementsBase(props => React__default.createElement(DefaultElement, Object.assign({}, props)), renderElements);
112
112
  }
113
113
 
114
114
  /**
115
115
  * To compose sequential `renderLeaf`s or `renderMark`s to single.
116
116
  */
117
117
  function composeRenderLeafs(renderLeafs) {
118
- return _internal.composeRenderLeafsBase((props) => React__default.createElement(DefaultLeaf, Object.assign({}, props)), renderLeafs);
118
+ return _internal.composeRenderLeafsBase(props => React__default.createElement(DefaultLeaf, Object.assign({}, props)), renderLeafs);
119
119
  }
120
120
 
121
121
  function createReactEditor() {
@@ -6,7 +6,7 @@ export declare type RenderInputBlockElement = (props: RenderInputBlockElementPro
6
6
  export interface ReactInputBlockCreateRenderElementOptions {
7
7
  render?: RenderInputBlockElement;
8
8
  }
9
- export interface ReactInputBlock extends Omit<InputBlock, 'remove' | 'confirm'>, WithCreateRenderElement<[ReactInputBlockCreateRenderElementOptions?]> {
9
+ export interface ReactInputBlock extends Omit<InputBlock<ReactEditor>, 'remove' | 'confirm'>, WithCreateRenderElement<[ReactInputBlockCreateRenderElementOptions?]> {
10
10
  remove(editor: ReactEditor, element: InputBlockElement): void;
11
11
  confirm(editor: ReactEditor, element: InputBlockElement, value: string): void;
12
12
  }
package/link/typings.d.ts CHANGED
@@ -1,9 +1,9 @@
1
1
  /// <reference types="react" />
2
2
  import { Link, LinkElement } from '@quadrats/common/link';
3
- import { RenderElementProps, ReactWithable, WithCreateRenderElement } from '@quadrats/react';
3
+ import { RenderElementProps, ReactWithable, WithCreateRenderElement, ReactEditor } from '@quadrats/react';
4
4
  export declare type RenderLinkElementProps = RenderElementProps<LinkElement>;
5
5
  export interface ReactLinkCreateRenderElementOptions {
6
6
  render?: (props: RenderLinkElementProps) => JSX.Element | null | undefined;
7
7
  }
8
- export interface ReactLink extends Omit<Link, 'with'>, WithCreateRenderElement<[ReactLinkCreateRenderElementOptions?]>, ReactWithable {
8
+ export interface ReactLink extends Omit<Link<ReactEditor>, 'with'>, WithCreateRenderElement<[ReactLinkCreateRenderElementOptions?]>, ReactWithable {
9
9
  }
@@ -4,7 +4,7 @@ import { defaultRenderListElements } from './defaultRenderListElements.js';
4
4
 
5
5
  function createReactList(options = {}) {
6
6
  const core = createList(options);
7
- return Object.assign(Object.assign({}, core), { createRenderElement: (options = {}) => createRenderElements(['ol', 'ul', 'li'].map((key) => ({
7
+ return Object.assign(Object.assign({}, core), { createRenderElement: (options = {}) => createRenderElements(['ol', 'ul', 'li'].map(key => ({
8
8
  type: core.types[key],
9
9
  render: options[key] || defaultRenderListElements[key],
10
10
  }))), createHandlers: () => ({
package/list/index.cjs.js CHANGED
@@ -18,7 +18,7 @@ const defaultRenderListElements = {
18
18
 
19
19
  function createReactList(options = {}) {
20
20
  const core = list.createList(options);
21
- return Object.assign(Object.assign({}, core), { createRenderElement: (options = {}) => react.createRenderElements(['ol', 'ul', 'li'].map((key) => ({
21
+ return Object.assign(Object.assign({}, core), { createRenderElement: (options = {}) => react.createRenderElements(['ol', 'ul', 'li'].map(key => ({
22
22
  type: core.types[key],
23
23
  render: options[key] || defaultRenderListElements[key],
24
24
  }))), createHandlers: () => ({
package/list/typings.d.ts CHANGED
@@ -1,9 +1,9 @@
1
1
  /// <reference types="react" />
2
2
  import { List, ListElement, ListTypeKey } from '@quadrats/common/list';
3
- import { WithCreateHandlers, WithCreateRenderElement, RenderElementProps } from '@quadrats/react';
3
+ import { WithCreateHandlers, WithCreateRenderElement, RenderElementProps, ReactEditor } from '@quadrats/react';
4
4
  export declare type RenderListElementProps = RenderElementProps<ListElement>;
5
5
  export declare type ReactListCreateRenderElementOptions = {
6
6
  [key in ListTypeKey]?: (props: RenderListElementProps) => JSX.Element | null | undefined;
7
7
  };
8
- export interface ReactList extends List, WithCreateHandlers, WithCreateRenderElement<[ReactListCreateRenderElementOptions?]> {
8
+ export interface ReactList extends List<ReactEditor>, WithCreateHandlers, WithCreateRenderElement<[ReactListCreateRenderElementOptions?]> {
9
9
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@quadrats/react",
3
- "version": "0.5.2",
3
+ "version": "0.5.3",
4
4
  "description": "",
5
5
  "author": "Rytass",
6
6
  "homepage": "https://github.com/Quadrats/quadrats#readme",
@@ -20,7 +20,7 @@
20
20
  "url": "https://github.com/Quadrats/quadrats/issues"
21
21
  },
22
22
  "dependencies": {
23
- "@quadrats/common": "^0.5.2",
23
+ "@quadrats/common": "^0.5.3",
24
24
  "@quadrats/core": "^0.5.2",
25
25
  "@quadrats/icons": "^0.5.0",
26
26
  "@quadrats/locales": "^0.5.0",
@@ -1,9 +1,9 @@
1
1
  /// <reference types="react" />
2
2
  import { ReadMore, ReadMoreElement } from '@quadrats/common/read-more';
3
- import { WithCreateRenderElement, RenderElementProps } from '@quadrats/react';
3
+ import { WithCreateRenderElement, RenderElementProps, ReactEditor } from '@quadrats/react';
4
4
  export declare type RenderReadMoreElementProps = RenderElementProps<ReadMoreElement>;
5
5
  export interface ReactReadMoreCreateRenderElementOptions {
6
6
  render?: (props: RenderReadMoreElementProps) => JSX.Element | null | undefined;
7
7
  }
8
- export interface ReactReadMore extends ReadMore, WithCreateRenderElement<[ReactReadMoreCreateRenderElementOptions?]> {
8
+ export interface ReactReadMore extends ReadMore<ReactEditor>, WithCreateRenderElement<[ReactReadMoreCreateRenderElementOptions?]> {
9
9
  }
@@ -1,5 +1,5 @@
1
1
  import { ToggleMark } from '@quadrats/common/toggle-mark';
2
- import { CreateRenderMarkOptions, RenderMarkProps, WithCreateHandlers, WithCreateRenderLeaf } from '@quadrats/react';
2
+ import { CreateRenderMarkOptions, ReactEditor, RenderMarkProps, WithCreateHandlers, WithCreateRenderLeaf } from '@quadrats/react';
3
3
  export declare type RenderToggleMarkProps = RenderMarkProps<boolean>;
4
4
  export interface ReactToggleMarkCreateHandlersOptions {
5
5
  /**
@@ -8,5 +8,5 @@ export interface ReactToggleMarkCreateHandlersOptions {
8
8
  hotkey?: string;
9
9
  }
10
10
  export declare type ReactToggleMarkCreateRenderLeafOptions = Partial<Omit<CreateRenderMarkOptions<boolean>, 'type'>>;
11
- export interface ReactToggleMark extends ToggleMark, WithCreateHandlers<[ReactToggleMarkCreateHandlersOptions?]>, WithCreateRenderLeaf<[ReactToggleMarkCreateRenderLeafOptions?]> {
11
+ export interface ReactToggleMark extends ToggleMark<ReactEditor>, WithCreateHandlers<[ReactToggleMarkCreateHandlersOptions?]>, WithCreateRenderLeaf<[ReactToggleMarkCreateRenderLeafOptions?]> {
12
12
  }
@@ -35,7 +35,7 @@ function Toolbar(props) {
35
35
  const focused = ReactEditor.isFocused(editor);
36
36
  const { selection } = editor;
37
37
  const [toolInput, setToolInput] = useState();
38
- const startToolInput = useCallback((inputConfig) => setToolInput(Object.assign(Object.assign({}, inputConfig), { currentSelection: selection })), [selection]);
38
+ const startToolInput = useCallback(inputConfig => setToolInput(Object.assign(Object.assign({}, inputConfig), { currentSelection: selection })), [selection]);
39
39
  let renderExpandedStatus;
40
40
  if (toolInput) {
41
41
  const { currentSelection } = toolInput;
@@ -19,9 +19,7 @@ function ToolbarInput({ exit, toolInput }) {
19
19
  const locale = useLocale();
20
20
  const placeholder = getPlaceholder(locale);
21
21
  return (React.createElement("div", { className: "qdr-toolbar__input__wrapper" },
22
- React.createElement("input", { defaultValue: toolInput.defaultValue,
23
- // eslint-disable-next-line jsx-a11y/no-autofocus
24
- autoFocus: true, className: "qdr-toolbar__input", placeholder: placeholder, onKeyDown: onKeyDown, onBlur: exit }),
22
+ React.createElement("input", { defaultValue: toolInput.defaultValue, autoFocus: true, className: "qdr-toolbar__input", placeholder: placeholder, onKeyDown: onKeyDown, onBlur: exit }),
25
23
  React.createElement("svg", { className: "qdr-toolbar__input__cross", viewBox: "0 0 320 512", onMouseDown: onExit },
26
24
  React.createElement("path", {
27
25
  // eslint-disable-next-line max-len
@@ -39,9 +39,7 @@ function ToolbarInput({ exit, toolInput }) {
39
39
  const locale = react.useLocale();
40
40
  const placeholder = getPlaceholder(locale);
41
41
  return (React__default.createElement("div", { className: "qdr-toolbar__input__wrapper" },
42
- React__default.createElement("input", { defaultValue: toolInput.defaultValue,
43
- // eslint-disable-next-line jsx-a11y/no-autofocus
44
- autoFocus: true, className: "qdr-toolbar__input", placeholder: placeholder, onKeyDown: onKeyDown, onBlur: exit }),
42
+ React__default.createElement("input", { defaultValue: toolInput.defaultValue, autoFocus: true, className: "qdr-toolbar__input", placeholder: placeholder, onKeyDown: onKeyDown, onBlur: exit }),
45
43
  React__default.createElement("svg", { className: "qdr-toolbar__input__cross", viewBox: "0 0 320 512", onMouseDown: onExit },
46
44
  React__default.createElement("path", {
47
45
  // eslint-disable-next-line max-len
@@ -77,7 +75,7 @@ function Toolbar(props) {
77
75
  const focused = react.ReactEditor.isFocused(editor);
78
76
  const { selection } = editor;
79
77
  const [toolInput, setToolInput] = React.useState();
80
- const startToolInput = React.useCallback((inputConfig) => setToolInput(Object.assign(Object.assign({}, inputConfig), { currentSelection: selection })), [selection]);
78
+ const startToolInput = React.useCallback(inputConfig => setToolInput(Object.assign(Object.assign({}, inputConfig), { currentSelection: selection })), [selection]);
81
79
  let renderExpandedStatus;
82
80
  if (toolInput) {
83
81
  const { currentSelection } = toolInput;