@manuscripts/article-editor 4.9.17 → 4.9.18

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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"}
@@ -18,7 +18,7 @@ const convertNodeNamesToTypes = (nodeNames) => {
18
18
  const getDocumentData = async (projectID, manuscriptID, api) => {
19
19
  const response = await api.getDocument(projectID, manuscriptID);
20
20
  if (!response) {
21
- throw new Error('Document not found');
21
+ return null;
22
22
  }
23
23
  return {
24
24
  doc: transform_1.schema.nodeFromJSON(response.doc),
@@ -71,6 +71,9 @@ const buildData = async (projectID, manuscriptID, api) => {
71
71
  return {};
72
72
  }
73
73
  const doc = await getDocumentData(projectID, manuscriptID, api);
74
+ if (!doc) {
75
+ return { user };
76
+ }
74
77
  const state = await getManuscriptData(doc.doc.attrs.prototype, api);
75
78
  const project = await api.getProject(projectID);
76
79
  const role = project ? (0, roles_1.getUserRole)(project, user.userID) : null;
@@ -1 +1 @@
1
- {"version":3,"file":"buildData.js","sourceRoot":"","sources":["../../../src/api/buildData.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"buildData.js","sourceRoot":"","sources":["../../../src/api/buildData.ts"],"names":[],"mappings":"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"}
@@ -55,10 +55,13 @@ const createStore = async (sources) => {
55
55
  };
56
56
  exports.createStore = createStore;
57
57
  const GenericStoreProvider = ({ children, store }) => {
58
- if (store) {
59
- return (react_1.default.createElement(GenericStoreContext.Provider, { value: store }, store.state?.doc ? children : react_1.default.createElement("p", null, "Project was not found")));
58
+ if (!store) {
59
+ return null;
60
60
  }
61
- return null;
61
+ if (!store.state?.doc) {
62
+ throw new Error('Document not found');
63
+ }
64
+ return (react_1.default.createElement(GenericStoreContext.Provider, { value: store }, children));
62
65
  };
63
66
  exports.GenericStoreProvider = GenericStoreProvider;
64
67
  const useGenericStore = () => (0, react_1.useContext)(GenericStoreContext);
@@ -1 +1 @@
1
- {"version":3,"file":"StoreContext.js","sourceRoot":"","sources":["../../../src/store/StoreContext.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;;;;GAUG;AACH,+CAAwD;AAExD,wBAAyD;AAEzD,MAAM,mBAAmB,GAAG,IAAA,qBAAa,EAAe,IAAI,eAAY,EAAE,CAAC,CAAA;AAEpE,MAAM,WAAW,GAAG,KAAK,EAAE,OAAkC,EAAE,EAAE;IACtE,MAAM,KAAK,GAAG,IAAI,eAAY,EAAE,CAAA;IAChC,MAAM,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IACzB,OAAO,KAAK,CAAA;AACd,CAAC,CAAA;AAJY,QAAA,WAAW,eAIvB;AAOM,MAAM,oBAAoB,GAAoB,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,EAAE;IAC3E,IAAI,KAAK,EAAE,CAAC;QACV,OAAO,CACL,8BAAC,mBAAmB,CAAC,QAAQ,IAAC,KAAK,EAAE,KAAK,IACvC,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,iEAA4B,CAC9B,CAChC,CAAA;IACH,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC,CAAA;AATY,QAAA,oBAAoB,wBAShC;AAEM,MAAM,eAAe,GAAG,GAAG,EAAE,CAAC,IAAA,kBAAU,EAAC,mBAAmB,CAAC,CAAA;AAAvD,QAAA,eAAe,mBAAwC"}
1
+ {"version":3,"file":"StoreContext.js","sourceRoot":"","sources":["../../../src/store/StoreContext.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;;;;GAUG;AACH,+CAAwD;AAExD,wBAAyD;AAEzD,MAAM,mBAAmB,GAAG,IAAA,qBAAa,EAAe,IAAI,eAAY,EAAE,CAAC,CAAA;AAEpE,MAAM,WAAW,GAAG,KAAK,EAAE,OAAkC,EAAE,EAAE;IACtE,MAAM,KAAK,GAAG,IAAI,eAAY,EAAE,CAAA;IAChC,MAAM,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IACzB,OAAO,KAAK,CAAA;AACd,CAAC,CAAA;AAJY,QAAA,WAAW,eAIvB;AAOM,MAAM,oBAAoB,GAAoB,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,EAAE;IAC3E,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,IAAI,CAAA;IACb,CAAC;IACD,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAA;IACvC,CAAC;IACD,OAAO,CACL,8BAAC,mBAAmB,CAAC,QAAQ,IAAC,KAAK,EAAE,KAAK,IACvC,QAAQ,CACoB,CAChC,CAAA;AACH,CAAC,CAAA;AAZY,QAAA,oBAAoB,wBAYhC;AAEM,MAAM,eAAe,GAAG,GAAG,EAAE,CAAC,IAAA,kBAAU,EAAC,mBAAmB,CAAC,CAAA;AAAvD,QAAA,eAAe,mBAAwC"}
@@ -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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"}
@@ -15,7 +15,7 @@ const convertNodeNamesToTypes = (nodeNames) => {
15
15
  const getDocumentData = async (projectID, manuscriptID, api) => {
16
16
  const response = await api.getDocument(projectID, manuscriptID);
17
17
  if (!response) {
18
- throw new Error('Document not found');
18
+ return null;
19
19
  }
20
20
  return {
21
21
  doc: schema.nodeFromJSON(response.doc),
@@ -68,6 +68,9 @@ export const buildData = async (projectID, manuscriptID, api) => {
68
68
  return {};
69
69
  }
70
70
  const doc = await getDocumentData(projectID, manuscriptID, api);
71
+ if (!doc) {
72
+ return { user };
73
+ }
71
74
  const state = await getManuscriptData(doc.doc.attrs.prototype, api);
72
75
  const project = await api.getProject(projectID);
73
76
  const role = project ? getUserRole(project, user.userID) : null;
@@ -1 +1 @@
1
- {"version":3,"file":"buildData.js","sourceRoot":"","sources":["../../../src/api/buildData.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"buildData.js","sourceRoot":"","sources":["../../../src/api/buildData.ts"],"names":[],"mappings":"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"}
@@ -18,10 +18,13 @@ export const createStore = async (sources) => {
18
18
  return store;
19
19
  };
20
20
  export const GenericStoreProvider = ({ children, store }) => {
21
- if (store) {
22
- return (React.createElement(GenericStoreContext.Provider, { value: store }, store.state?.doc ? children : React.createElement("p", null, "Project was not found")));
21
+ if (!store) {
22
+ return null;
23
23
  }
24
- return null;
24
+ if (!store.state?.doc) {
25
+ throw new Error('Document not found');
26
+ }
27
+ return (React.createElement(GenericStoreContext.Provider, { value: store }, children));
25
28
  };
26
29
  export const useGenericStore = () => useContext(GenericStoreContext);
27
30
  //# sourceMappingURL=StoreContext.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"StoreContext.js","sourceRoot":"","sources":["../../../src/store/StoreContext.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,KAAK,EAAE,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,OAAO,CAAA;AAExD,OAAO,EAAE,YAAY,EAA2B,MAAM,GAAG,CAAA;AAEzD,MAAM,mBAAmB,GAAG,aAAa,CAAe,IAAI,YAAY,EAAE,CAAC,CAAA;AAE3E,MAAM,CAAC,MAAM,WAAW,GAAG,KAAK,EAAE,OAAkC,EAAE,EAAE;IACtE,MAAM,KAAK,GAAG,IAAI,YAAY,EAAE,CAAA;IAChC,MAAM,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IACzB,OAAO,KAAK,CAAA;AACd,CAAC,CAAA;AAOD,MAAM,CAAC,MAAM,oBAAoB,GAAoB,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,EAAE;IAC3E,IAAI,KAAK,EAAE,CAAC;QACV,OAAO,CACL,oBAAC,mBAAmB,CAAC,QAAQ,IAAC,KAAK,EAAE,KAAK,IACvC,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,uDAA4B,CAC9B,CAChC,CAAA;IACH,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,eAAe,GAAG,GAAG,EAAE,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAA"}
1
+ {"version":3,"file":"StoreContext.js","sourceRoot":"","sources":["../../../src/store/StoreContext.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,KAAK,EAAE,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,OAAO,CAAA;AAExD,OAAO,EAAE,YAAY,EAA2B,MAAM,GAAG,CAAA;AAEzD,MAAM,mBAAmB,GAAG,aAAa,CAAe,IAAI,YAAY,EAAE,CAAC,CAAA;AAE3E,MAAM,CAAC,MAAM,WAAW,GAAG,KAAK,EAAE,OAAkC,EAAE,EAAE;IACtE,MAAM,KAAK,GAAG,IAAI,YAAY,EAAE,CAAA;IAChC,MAAM,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IACzB,OAAO,KAAK,CAAA;AACd,CAAC,CAAA;AAOD,MAAM,CAAC,MAAM,oBAAoB,GAAoB,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,EAAE;IAC3E,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,IAAI,CAAA;IACb,CAAC;IACD,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAA;IACvC,CAAC;IACD,OAAO,CACL,oBAAC,mBAAmB,CAAC,QAAQ,IAAC,KAAK,EAAE,KAAK,IACvC,QAAQ,CACoB,CAChC,CAAA;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,eAAe,GAAG,GAAG,EAAE,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAA"}
@@ -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"}
@@ -1,2 +1,72 @@
1
+ /*!
2
+ * The contents of this file are subject to the Common Public Attribution License Version 1.0 (the “License”); you may not use this file except in compliance with the License. You may obtain a copy of the License at https://mpapp-public.gitlab.io/manuscripts-frontend/LICENSE. The License is based on the Mozilla Public License Version 1.1 but Sections 14 and 15 have been added to cover use of software over a computer network and provide for limited attribution for the Original Developer. In addition, Exhibit A has been modified to be consistent with Exhibit B.
3
+ *
4
+ * Software distributed under the License is distributed on an “AS IS” basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for the specific language governing rights and limitations under the License.
5
+ *
6
+ * The Original Code is manuscripts-frontend.
7
+ *
8
+ * The Original Developer is the Initial Developer. The Initial Developer of the Original Code is Atypon Systems LLC.
9
+ *
10
+ * All portions of the code written by Atypon Systems LLC are Copyright (c) 2019 Atypon Systems LLC. All Rights Reserved.
11
+ */
12
+ import { UserProfile } from '@manuscripts/json-schema';
1
13
  import { Api } from './Api';
2
- export declare const buildData: (projectID: string, manuscriptID: string, api: Api) => Promise<{}>;
14
+ export declare const buildData: (projectID: string, manuscriptID: string, api: Api) => Promise<{
15
+ user?: undefined;
16
+ } | {
17
+ user: UserProfile;
18
+ } | {
19
+ project: import("@manuscripts/json-schema").Project | undefined;
20
+ doc: import("prosemirror-model").Node;
21
+ initialDocVersion: number;
22
+ snapshots: import("../lib/doc").SnapshotLabel[];
23
+ manuscriptID?: string | undefined;
24
+ projectID?: string | undefined;
25
+ userID?: string | undefined;
26
+ refreshProject?: (() => Promise<void>) | undefined;
27
+ user: UserProfile;
28
+ editor?: {
29
+ state: import("prosemirror-state").EditorState;
30
+ onRender: (el: HTMLDivElement | null) => void;
31
+ isCommandValid: (command: import("prosemirror-state").Command) => boolean;
32
+ doCommand: (command: import("prosemirror-state").Command) => boolean;
33
+ replaceState: (state: import("prosemirror-state").EditorState) => void;
34
+ view: import("prosemirror-view").EditorView | undefined;
35
+ dispatch: (tr: import("prosemirror-state").Transaction) => import("prosemirror-state").EditorState;
36
+ } | undefined;
37
+ trackState?: import("@manuscripts/track-changes-plugin").TrackChangesState | undefined;
38
+ isViewingMode?: boolean | undefined;
39
+ isReadOnly?: boolean | undefined;
40
+ isComparingMode?: boolean | undefined;
41
+ isTrackingChangesVisible?: boolean | undefined;
42
+ view?: import("@manuscripts/transform").ManuscriptEditorView | undefined;
43
+ titleText?: string | undefined;
44
+ fileManagement?: import("@manuscripts/body-editor").FileManagement | undefined;
45
+ files?: import("@manuscripts/body-editor").FileAttachment[] | undefined;
46
+ collaborators?: Map<string, UserProfile> | undefined;
47
+ collaboratorsById: Map<any, any>;
48
+ getSnapshot?: ((id: string) => Promise<import("../lib/doc").ManuscriptSnapshot | undefined>) | undefined;
49
+ permittedActions?: string[] | undefined;
50
+ selectedCommentKey?: import("@manuscripts/body-editor").CommentKey | undefined;
51
+ newCommentID?: string | undefined;
52
+ selectedSuggestionID?: string | undefined;
53
+ selectedAttrsChange?: string | undefined;
54
+ savingProcess?: "saved" | "saving" | "offline" | "failed" | undefined;
55
+ preventUnload?: boolean | undefined;
56
+ beforeUnload?: (() => void) | undefined;
57
+ userRole: import("../lib/roles").ProjectRole | null;
58
+ cslLocale?: string | undefined;
59
+ cslStyle?: string | undefined;
60
+ languages?: import("./types").Language[] | undefined;
61
+ hasPendingSuggestions?: boolean | undefined;
62
+ inconsistencies?: import("@manuscripts/body-editor").Inconsistency[] | undefined;
63
+ sectionCategories?: Map<string, import("@manuscripts/transform").SectionCategory> | undefined;
64
+ originalPmDoc?: JSON | undefined;
65
+ inspectorOpenTabs?: {
66
+ primaryTab: number | null;
67
+ secondaryTab: number | null;
68
+ } | undefined;
69
+ doInspectorTab?: ((action: import("..").InspectorAction) => void) | undefined;
70
+ hiddenNodeTypes?: import("@manuscripts/transform").ManuscriptNodeType[] | undefined;
71
+ pluginInspectorTab?: import("../components/projects/Inspector").PluginInspectorTab | undefined;
72
+ }>;
@@ -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.9.17",
3
+ "version": "4.9.18",
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",