@manuscripts/article-editor 4.13.0 → 4.13.2

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.
@@ -59,6 +59,12 @@ const PlaceholderWrapper = styled_components_1.default.div `
59
59
  `;
60
60
  const EditorApp = ({ manuscriptID, projectID, permittedActions, fileManagement, files, getAuthToken, observer, pluginInspectorTab, isReadOnly, }) => {
61
61
  const [store, setStore] = (0, react_1.useState)();
62
+ const [, setError] = (0, react_1.useState)();
63
+ const throwToErrorBoundary = (0, react_1.useCallback)((error) => {
64
+ setError(() => {
65
+ throw error;
66
+ });
67
+ }, []);
62
68
  const loadedRef = (0, react_1.useRef)(false);
63
69
  const observerSubscribed = (0, react_1.useRef)(false);
64
70
  const api = (0, react_1.useMemo)(() => new Api_1.Api(getAuthToken), [getAuthToken]);
@@ -83,7 +89,7 @@ const EditorApp = ({ manuscriptID, projectID, permittedActions, fileManagement,
83
89
  setStore(s);
84
90
  })
85
91
  .catch((e) => {
86
- console.error(e);
92
+ throwToErrorBoundary(e);
87
93
  });
88
94
  return () => {
89
95
  store?.unmount();
@@ -1 +1 @@
1
- {"version":3,"file":"EditorApp.js","sourceRoot":"","sources":["../../src/EditorApp.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EditorApp.js","sourceRoot":"","sources":["../../src/EditorApp.tsx"],"names":[],"mappings":"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"}
@@ -5,19 +5,25 @@ function buildStateFromSources(builders, setState) {
5
5
  return new Promise((resolve, reject) => {
6
6
  let futureState = {};
7
7
  let i = 0;
8
+ const runBuilder = (builder) => {
9
+ const result = builder.build(futureState, next, setState);
10
+ if (result) {
11
+ result.catch(reject);
12
+ }
13
+ };
8
14
  const next = (resultState) => {
9
15
  if (resultState) {
10
16
  futureState = { ...futureState, ...resultState };
11
17
  }
12
18
  if (builders[++i]) {
13
- builders[i].build(futureState, next, setState);
19
+ runBuilder(builders[i]);
14
20
  }
15
21
  else {
16
22
  resolve(futureState);
17
23
  }
18
24
  };
19
25
  try {
20
- builders[i].build(futureState, next, setState);
26
+ runBuilder(builders[i]);
21
27
  }
22
28
  catch (e) {
23
29
  reject(e);
@@ -1 +1 @@
1
- {"version":3,"file":"buildStateFromSources.js","sourceRoot":"","sources":["../../../src/store/buildStateFromSources.ts"],"names":[],"mappings":";;AAoBA,sDAuBC;AAvBD,SAAgB,qBAAqB,CACnC,QAAmC,EACnC,QAAqB;IAErB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,IAAI,WAAW,GAAG,EAAE,CAAA;QACpB,IAAI,CAAC,GAAG,CAAC,CAAA;QACT,MAAM,IAAI,GAAG,CAAC,WAA2B,EAAE,EAAE;YAC3C,IAAI,WAAW,EAAE,CAAC;gBAChB,WAAW,GAAG,EAAE,GAAG,WAAW,EAAE,GAAG,WAAW,EAAE,CAAA;YAClD,CAAC;YACD,IAAI,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;gBAClB,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAA;YAChD,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,WAAW,CAAC,CAAA;YACtB,CAAC;QACH,CAAC,CAAA;QACD,IAAI,CAAC;YACH,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAA;QAChD,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,MAAM,CAAC,CAAC,CAAC,CAAA;QACX,CAAC;IACH,CAAC,CAAC,CAAA;AACJ,CAAC"}
1
+ {"version":3,"file":"buildStateFromSources.js","sourceRoot":"","sources":["../../../src/store/buildStateFromSources.ts"],"names":[],"mappings":";;AAoBA,sDAgCC;AAhCD,SAAgB,qBAAqB,CACnC,QAAmC,EACnC,QAAqB;IAErB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,IAAI,WAAW,GAAG,EAAE,CAAA;QACpB,IAAI,CAAC,GAAG,CAAC,CAAA;QAET,MAAM,UAAU,GAAG,CAAC,OAAgC,EAAE,EAAE;YACtD,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,WAAW,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAA;YACzD,IAAI,MAAM,EAAE,CAAC;gBACX,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;YACtB,CAAC;QACH,CAAC,CAAA;QAED,MAAM,IAAI,GAAG,CAAC,WAA2B,EAAE,EAAE;YAC3C,IAAI,WAAW,EAAE,CAAC;gBAChB,WAAW,GAAG,EAAE,GAAG,WAAW,EAAE,GAAG,WAAW,EAAE,CAAA;YAClD,CAAC;YACD,IAAI,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;gBAClB,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;YACzB,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,WAAW,CAAC,CAAA;YACtB,CAAC;QACH,CAAC,CAAA;QAED,IAAI,CAAC;YACH,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;QACzB,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,MAAM,CAAC,CAAC,CAAC,CAAA;QACX,CAAC;IACH,CAAC,CAAC,CAAA;AACJ,CAAC"}
@@ -1,4 +1,4 @@
1
- import React, { useEffect, useMemo, useRef, useState } from 'react';
1
+ import React, { useCallback, useEffect, useMemo, useRef, useState } from 'react';
2
2
  import styled from 'styled-components';
3
3
  import { Api, ApiContext } from './api/Api';
4
4
  import { ApiSource } from './api/ApiSource';
@@ -21,6 +21,12 @@ const PlaceholderWrapper = styled.div `
21
21
  `;
22
22
  const EditorApp = ({ manuscriptID, projectID, permittedActions, fileManagement, files, getAuthToken, observer, pluginInspectorTab, isReadOnly, }) => {
23
23
  const [store, setStore] = useState();
24
+ const [, setError] = useState();
25
+ const throwToErrorBoundary = useCallback((error) => {
26
+ setError(() => {
27
+ throw error;
28
+ });
29
+ }, []);
24
30
  const loadedRef = useRef(false);
25
31
  const observerSubscribed = useRef(false);
26
32
  const api = useMemo(() => new Api(getAuthToken), [getAuthToken]);
@@ -45,7 +51,7 @@ const EditorApp = ({ manuscriptID, projectID, permittedActions, fileManagement,
45
51
  setStore(s);
46
52
  })
47
53
  .catch((e) => {
48
- console.error(e);
54
+ throwToErrorBoundary(e);
49
55
  });
50
56
  return () => {
51
57
  store?.unmount();
@@ -1 +1 @@
1
- {"version":3,"file":"EditorApp.js","sourceRoot":"","sources":["../../src/EditorApp.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EditorApp.js","sourceRoot":"","sources":["../../src/EditorApp.tsx"],"names":[],"mappings":"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"}
@@ -2,19 +2,25 @@ export function buildStateFromSources(builders, setState) {
2
2
  return new Promise((resolve, reject) => {
3
3
  let futureState = {};
4
4
  let i = 0;
5
+ const runBuilder = (builder) => {
6
+ const result = builder.build(futureState, next, setState);
7
+ if (result) {
8
+ result.catch(reject);
9
+ }
10
+ };
5
11
  const next = (resultState) => {
6
12
  if (resultState) {
7
13
  futureState = { ...futureState, ...resultState };
8
14
  }
9
15
  if (builders[++i]) {
10
- builders[i].build(futureState, next, setState);
16
+ runBuilder(builders[i]);
11
17
  }
12
18
  else {
13
19
  resolve(futureState);
14
20
  }
15
21
  };
16
22
  try {
17
- builders[i].build(futureState, next, setState);
23
+ runBuilder(builders[i]);
18
24
  }
19
25
  catch (e) {
20
26
  reject(e);
@@ -1 +1 @@
1
- {"version":3,"file":"buildStateFromSources.js","sourceRoot":"","sources":["../../../src/store/buildStateFromSources.ts"],"names":[],"mappings":"AAoBA,MAAM,UAAU,qBAAqB,CACnC,QAAmC,EACnC,QAAqB;IAErB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,IAAI,WAAW,GAAG,EAAE,CAAA;QACpB,IAAI,CAAC,GAAG,CAAC,CAAA;QACT,MAAM,IAAI,GAAG,CAAC,WAA2B,EAAE,EAAE;YAC3C,IAAI,WAAW,EAAE,CAAC;gBAChB,WAAW,GAAG,EAAE,GAAG,WAAW,EAAE,GAAG,WAAW,EAAE,CAAA;YAClD,CAAC;YACD,IAAI,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;gBAClB,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAA;YAChD,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,WAAW,CAAC,CAAA;YACtB,CAAC;QACH,CAAC,CAAA;QACD,IAAI,CAAC;YACH,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAA;QAChD,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,MAAM,CAAC,CAAC,CAAC,CAAA;QACX,CAAC;IACH,CAAC,CAAC,CAAA;AACJ,CAAC"}
1
+ {"version":3,"file":"buildStateFromSources.js","sourceRoot":"","sources":["../../../src/store/buildStateFromSources.ts"],"names":[],"mappings":"AAoBA,MAAM,UAAU,qBAAqB,CACnC,QAAmC,EACnC,QAAqB;IAErB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,IAAI,WAAW,GAAG,EAAE,CAAA;QACpB,IAAI,CAAC,GAAG,CAAC,CAAA;QAET,MAAM,UAAU,GAAG,CAAC,OAAgC,EAAE,EAAE;YACtD,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,WAAW,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAA;YACzD,IAAI,MAAM,EAAE,CAAC;gBACX,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;YACtB,CAAC;QACH,CAAC,CAAA;QAED,MAAM,IAAI,GAAG,CAAC,WAA2B,EAAE,EAAE;YAC3C,IAAI,WAAW,EAAE,CAAC;gBAChB,WAAW,GAAG,EAAE,GAAG,WAAW,EAAE,GAAG,WAAW,EAAE,CAAA;YAClD,CAAC;YACD,IAAI,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;gBAClB,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;YACzB,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,WAAW,CAAC,CAAA;YACtB,CAAC;QACH,CAAC,CAAA;QAED,IAAI,CAAC;YACH,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;QACzB,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,MAAM,CAAC,CAAC,CAAC,CAAA;QACX,CAAC;IACH,CAAC,CAAC,CAAA;AACJ,CAAC"}
@@ -11,5 +11,5 @@
11
11
  */
12
12
  import { state, StoreDataSourceStrategy } from '.';
13
13
  import { stateSetter } from './DataSourceStrategy';
14
- export type builderFn = (boundState: Partial<state>, next: (resultState: Partial<state>) => void, setState: stateSetter) => void;
14
+ export type builderFn = (boundState: Partial<state>, next: (resultState: Partial<state>) => void, setState: stateSetter) => void | Promise<void>;
15
15
  export declare function buildStateFromSources(builders: StoreDataSourceStrategy[], setState: stateSetter): Promise<Partial<state>>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@manuscripts/article-editor",
3
- "version": "4.13.0",
3
+ "version": "4.13.2",
4
4
  "license": "CPAL-1.0",
5
5
  "description": "React components for editing and viewing manuscripts",
6
6
  "repository": "github:Atypon-OpenSource/manuscripts-article-editor",
@@ -32,8 +32,8 @@
32
32
  "@fontsource/pt-sans": "5.2.5",
33
33
  "@fontsource/pt-serif": "5.2.5",
34
34
  "@headlessui/react": "2.2.3",
35
- "@manuscripts/body-editor": "3.12.0",
36
- "@manuscripts/style-guide": "3.5.4",
35
+ "@manuscripts/body-editor": "3.12.1",
36
+ "@manuscripts/style-guide": "3.5.5",
37
37
  "@manuscripts/track-changes-plugin": "2.3.8",
38
38
  "@manuscripts/transform": "4.3.27",
39
39
  "@popperjs/core": "2.11.8",