@manuscripts/article-editor 3.0.0 → 3.0.1-JSR-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.
Files changed (164) hide show
  1. package/dist/cjs/EditorApp.js +4 -7
  2. package/dist/cjs/EditorApp.js.map +1 -1
  3. package/dist/cjs/components/Page.js +1 -2
  4. package/dist/cjs/components/Page.js.map +1 -1
  5. package/dist/cjs/components/inspector/SectionInspector.js +43 -18
  6. package/dist/cjs/components/inspector/SectionInspector.js.map +1 -1
  7. package/dist/cjs/components/projects/ContentTab.js +35 -16
  8. package/dist/cjs/components/projects/ContentTab.js.map +1 -1
  9. package/dist/cjs/components/projects/EditorElement.js +5 -3
  10. package/dist/cjs/components/projects/EditorElement.js.map +1 -1
  11. package/dist/cjs/components/projects/Inspector.js +2 -8
  12. package/dist/cjs/components/projects/Inspector.js.map +1 -1
  13. package/dist/cjs/components/projects/ManuscriptMenus.js +9 -2
  14. package/dist/cjs/components/projects/ManuscriptMenus.js.map +1 -1
  15. package/dist/cjs/components/projects/ManuscriptPageContainer.js +22 -118
  16. package/dist/cjs/components/projects/ManuscriptPageContainer.js.map +1 -1
  17. package/dist/cjs/components/projects/ManuscriptSidebar.js +8 -2
  18. package/dist/cjs/components/projects/ManuscriptSidebar.js.map +1 -1
  19. package/dist/cjs/components/projects/ManuscriptToolbar.js +8 -1
  20. package/dist/cjs/components/projects/ManuscriptToolbar.js.map +1 -1
  21. package/dist/cjs/components/track-changes/TrackChangesPanel.js +27 -41
  22. package/dist/cjs/components/track-changes/TrackChangesPanel.js.map +1 -1
  23. package/dist/cjs/components/track-changes/TrackModal.js +20 -8
  24. package/dist/cjs/components/track-changes/TrackModal.js.map +1 -1
  25. package/dist/cjs/components/track-changes/suggestion-list/Suggestion.js +3 -1
  26. package/dist/cjs/components/track-changes/suggestion-list/Suggestion.js.map +1 -1
  27. package/dist/cjs/components/track-changes/suggestion-list/SuggestionList.js +1 -1
  28. package/dist/cjs/components/track-changes/suggestion-list/SuggestionList.js.map +1 -1
  29. package/dist/cjs/components/track-changes/utils.js +28 -5
  30. package/dist/cjs/components/track-changes/utils.js.map +1 -1
  31. package/dist/cjs/hooks/use-connect-editor.js +74 -0
  32. package/dist/cjs/hooks/use-connect-editor.js.map +1 -0
  33. package/dist/cjs/hooks/use-create-editor.js +7 -4
  34. package/dist/cjs/hooks/use-create-editor.js.map +1 -1
  35. package/dist/cjs/hooks/use-exec-cmd.js +6 -4
  36. package/dist/cjs/hooks/use-exec-cmd.js.map +1 -1
  37. package/dist/cjs/lib/attrs-change-filter.js +7 -7
  38. package/dist/cjs/lib/attrs-change-filter.js.map +1 -1
  39. package/dist/cjs/lib/deeper-equal.js +19 -17
  40. package/dist/cjs/lib/deeper-equal.js.map +1 -1
  41. package/dist/cjs/lib/section-categories.js +6 -6
  42. package/dist/cjs/lib/section-categories.js.map +1 -1
  43. package/dist/cjs/postgres-data/PsSource.js +19 -2
  44. package/dist/cjs/postgres-data/PsSource.js.map +1 -1
  45. package/dist/cjs/postgres-data/buildData.js +11 -27
  46. package/dist/cjs/postgres-data/buildData.js.map +1 -1
  47. package/dist/cjs/postgres-data/buildUtilities.js +0 -53
  48. package/dist/cjs/postgres-data/buildUtilities.js.map +1 -1
  49. package/dist/cjs/quarterback/api/loadDoc.js +104 -0
  50. package/dist/cjs/quarterback/api/loadDoc.js.map +1 -0
  51. package/dist/cjs/store/Store.js.map +1 -1
  52. package/dist/cjs/store/StoreContext.js +1 -1
  53. package/dist/cjs/store/StoreContext.js.map +1 -1
  54. package/dist/cjs/store/useStore.js +7 -1
  55. package/dist/cjs/store/useStore.js.map +1 -1
  56. package/dist/es/EditorApp.js +4 -7
  57. package/dist/es/EditorApp.js.map +1 -1
  58. package/dist/es/components/Page.js +1 -2
  59. package/dist/es/components/Page.js.map +1 -1
  60. package/dist/es/components/inspector/SectionInspector.js +43 -18
  61. package/dist/es/components/inspector/SectionInspector.js.map +1 -1
  62. package/dist/es/components/projects/ContentTab.js +13 -14
  63. package/dist/es/components/projects/ContentTab.js.map +1 -1
  64. package/dist/es/components/projects/EditorElement.js +5 -3
  65. package/dist/es/components/projects/EditorElement.js.map +1 -1
  66. package/dist/es/components/projects/Inspector.js +2 -8
  67. package/dist/es/components/projects/Inspector.js.map +1 -1
  68. package/dist/es/components/projects/ManuscriptMenus.js +9 -2
  69. package/dist/es/components/projects/ManuscriptMenus.js.map +1 -1
  70. package/dist/es/components/projects/ManuscriptPageContainer.js +22 -95
  71. package/dist/es/components/projects/ManuscriptPageContainer.js.map +1 -1
  72. package/dist/es/components/projects/ManuscriptSidebar.js +8 -2
  73. package/dist/es/components/projects/ManuscriptSidebar.js.map +1 -1
  74. package/dist/es/components/projects/ManuscriptToolbar.js +8 -1
  75. package/dist/es/components/projects/ManuscriptToolbar.js.map +1 -1
  76. package/dist/es/components/track-changes/TrackChangesPanel.js +28 -42
  77. package/dist/es/components/track-changes/TrackChangesPanel.js.map +1 -1
  78. package/dist/es/components/track-changes/TrackModal.js +21 -9
  79. package/dist/es/components/track-changes/TrackModal.js.map +1 -1
  80. package/dist/es/components/track-changes/suggestion-list/Suggestion.js +3 -1
  81. package/dist/es/components/track-changes/suggestion-list/Suggestion.js.map +1 -1
  82. package/dist/es/components/track-changes/suggestion-list/SuggestionList.js +1 -1
  83. package/dist/es/components/track-changes/suggestion-list/SuggestionList.js.map +1 -1
  84. package/dist/es/components/track-changes/utils.js +25 -3
  85. package/dist/es/components/track-changes/utils.js.map +1 -1
  86. package/dist/es/hooks/use-connect-editor.js +70 -0
  87. package/dist/es/hooks/use-connect-editor.js.map +1 -0
  88. package/dist/es/hooks/use-create-editor.js +7 -4
  89. package/dist/es/hooks/use-create-editor.js.map +1 -1
  90. package/dist/es/hooks/use-exec-cmd.js +7 -5
  91. package/dist/es/hooks/use-exec-cmd.js.map +1 -1
  92. package/dist/es/lib/attrs-change-filter.js +7 -7
  93. package/dist/es/lib/attrs-change-filter.js.map +1 -1
  94. package/dist/es/lib/deeper-equal.js +19 -17
  95. package/dist/es/lib/deeper-equal.js.map +1 -1
  96. package/dist/es/lib/section-categories.js +6 -6
  97. package/dist/es/lib/section-categories.js.map +1 -1
  98. package/dist/es/postgres-data/PsSource.js +19 -2
  99. package/dist/es/postgres-data/PsSource.js.map +1 -1
  100. package/dist/es/postgres-data/buildData.js +12 -28
  101. package/dist/es/postgres-data/buildData.js.map +1 -1
  102. package/dist/es/postgres-data/buildUtilities.js +1 -54
  103. package/dist/es/postgres-data/buildUtilities.js.map +1 -1
  104. package/dist/es/quarterback/api/loadDoc.js +77 -0
  105. package/dist/es/quarterback/api/loadDoc.js.map +1 -0
  106. package/dist/es/store/Store.js.map +1 -1
  107. package/dist/es/store/StoreContext.js +1 -1
  108. package/dist/es/store/StoreContext.js.map +1 -1
  109. package/dist/es/store/useStore.js +5 -0
  110. package/dist/es/store/useStore.js.map +1 -1
  111. package/dist/types/components/Page.d.ts +1 -3
  112. package/dist/types/components/inspector/SectionInspector.d.ts +1 -15
  113. package/dist/types/components/projects/ContentTab.d.ts +1 -5
  114. package/dist/types/components/projects/EditorElement.d.ts +1 -16
  115. package/dist/types/components/projects/Inspector.d.ts +1 -5
  116. package/dist/types/components/projects/ManuscriptMenus.d.ts +1 -6
  117. package/dist/types/components/projects/ManuscriptPageContainer.d.ts +1 -1
  118. package/dist/types/components/projects/ManuscriptSidebar.d.ts +1 -9
  119. package/dist/types/components/projects/ManuscriptToolbar.d.ts +1 -7
  120. package/dist/types/components/track-changes/suggestion-list/SuggestionList.d.ts +1 -1
  121. package/dist/types/components/track-changes/utils.d.ts +6 -2
  122. package/dist/types/hooks/use-connect-editor.d.ts +9 -0
  123. package/dist/types/lib/attrs-change-filter.d.ts +2 -3
  124. package/dist/types/lib/deeper-equal.d.ts +1 -1
  125. package/dist/types/lib/section-categories.d.ts +3 -2
  126. package/dist/types/postgres-data/buildData.d.ts +2 -1
  127. package/dist/types/quarterback/{useLoadDoc.d.ts → api/loadDoc.d.ts} +2 -2
  128. package/dist/types/store/Store.d.ts +4 -12
  129. package/dist/types/store/useStore.d.ts +1 -0
  130. package/package.json +5 -5
  131. package/dist/cjs/components/inspector/StyleFields.js +0 -18
  132. package/dist/cjs/components/inspector/StyleFields.js.map +0 -1
  133. package/dist/cjs/lib/sort.js +0 -17
  134. package/dist/cjs/lib/sort.js.map +0 -1
  135. package/dist/cjs/quarterback/QuarterBackDataSource.js +0 -29
  136. package/dist/cjs/quarterback/QuarterBackDataSource.js.map +0 -1
  137. package/dist/cjs/quarterback/useLoadDoc.js +0 -106
  138. package/dist/cjs/quarterback/useLoadDoc.js.map +0 -1
  139. package/dist/cjs/tracked-models/adapt-tracked-data.js +0 -100
  140. package/dist/cjs/tracked-models/adapt-tracked-data.js.map +0 -1
  141. package/dist/cjs/tracked-models/creators.js +0 -129
  142. package/dist/cjs/tracked-models/creators.js.map +0 -1
  143. package/dist/cjs/tracked-models/use-tracked-model-management.js +0 -129
  144. package/dist/cjs/tracked-models/use-tracked-model-management.js.map +0 -1
  145. package/dist/es/components/inspector/StyleFields.js +0 -14
  146. package/dist/es/components/inspector/StyleFields.js.map +0 -1
  147. package/dist/es/lib/sort.js +0 -13
  148. package/dist/es/lib/sort.js.map +0 -1
  149. package/dist/es/quarterback/QuarterBackDataSource.js +0 -26
  150. package/dist/es/quarterback/QuarterBackDataSource.js.map +0 -1
  151. package/dist/es/quarterback/useLoadDoc.js +0 -79
  152. package/dist/es/quarterback/useLoadDoc.js.map +0 -1
  153. package/dist/es/tracked-models/adapt-tracked-data.js +0 -95
  154. package/dist/es/tracked-models/adapt-tracked-data.js.map +0 -1
  155. package/dist/es/tracked-models/creators.js +0 -120
  156. package/dist/es/tracked-models/creators.js.map +0 -1
  157. package/dist/es/tracked-models/use-tracked-model-management.js +0 -127
  158. package/dist/es/tracked-models/use-tracked-model-management.js.map +0 -1
  159. package/dist/types/components/inspector/StyleFields.d.ts +0 -14
  160. package/dist/types/lib/sort.d.ts +0 -17
  161. package/dist/types/quarterback/QuarterBackDataSource.d.ts +0 -23
  162. package/dist/types/tracked-models/adapt-tracked-data.d.ts +0 -13
  163. package/dist/types/tracked-models/creators.d.ts +0 -21
  164. package/dist/types/tracked-models/use-tracked-model-management.d.ts +0 -21
@@ -9,28 +9,30 @@
9
9
  *
10
10
  * All portions of the code written by Atypon Systems LLC are Copyright (c) 2019 Atypon Systems LLC. All Rights Reserved.
11
11
  */
12
- const deeperEqual = (prev, next) => {
12
+ const deeperEqual = (next, prev) => {
13
13
  // checking only one level deeper is enough to provide render relevenat equality
14
- if (!prev) {
14
+ if (!next) {
15
15
  return false;
16
16
  }
17
- switch (prev.constructor.name) {
17
+ if (typeof prev == 'undefined' && typeof next !== 'undefined') {
18
+ return false;
19
+ }
20
+ switch (next.constructor.name) {
18
21
  case 'Object':
19
- // @ts-ignore
20
- return !Object.keys(prev).find((i) => {
21
- if (next[i] !== prev[i]) {
22
+ return !Object.keys(next).find((i) => {
23
+ if (prev[i] !== next[i]) {
22
24
  return true;
23
25
  }
24
26
  return false;
25
27
  });
26
- case 'Map': // important for modelMap
27
- if (prev == next) {
28
+ case 'Map':
29
+ if (next == prev) {
28
30
  return true;
29
31
  }
30
- if (prev.size == next.size) {
31
- for (const [key, value] of prev) {
32
- const nextPeer = next.get(key);
33
- if (!nextPeer || nextPeer !== value) {
32
+ if (next.size == prev.size) {
33
+ for (const [key, value] of next) {
34
+ const prevPeer = prev.get(key);
35
+ if (!prevPeer || prevPeer !== value) {
34
36
  return false;
35
37
  }
36
38
  }
@@ -38,12 +40,12 @@ const deeperEqual = (prev, next) => {
38
40
  }
39
41
  return false;
40
42
  case 'Array':
41
- if (Array.isArray(next)) {
42
- if (prev.length !== next.length) {
43
+ if (Array.isArray(prev)) {
44
+ if (next.length !== prev.length) {
43
45
  return false;
44
46
  }
45
- for (let i = 0; i < prev.length; i++) {
46
- if (prev[i] !== next[i]) {
47
+ for (let i = 0; i < next.length; i++) {
48
+ if (next[i] !== prev[i]) {
47
49
  return false;
48
50
  }
49
51
  }
@@ -51,7 +53,7 @@ const deeperEqual = (prev, next) => {
51
53
  }
52
54
  return false;
53
55
  default:
54
- return prev === next;
56
+ return next === prev;
55
57
  }
56
58
  };
57
59
  export default deeperEqual;
@@ -1 +1 @@
1
- {"version":3,"file":"deeper-equal.js","sourceRoot":"","sources":["../../../src/lib/deeper-equal.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,MAAM,WAAW,GAAG,CAAC,IAAS,EAAE,IAAS,EAAE,EAAE;IAC3C,gFAAgF;IAChF,IAAI,CAAC,IAAI,EAAE;QACT,OAAO,KAAK,CAAA;KACb;IACD,QAAQ,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE;QAC7B,KAAK,QAAQ;YACX,aAAa;YACb,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;gBACnC,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE;oBACvB,OAAO,IAAI,CAAA;iBACZ;gBACD,OAAO,KAAK,CAAA;YACd,CAAC,CAAC,CAAA;QAEJ,KAAK,KAAK,EAAE,yBAAyB;YACnC,IAAI,IAAI,IAAI,IAAI,EAAE;gBAChB,OAAO,IAAI,CAAA;aACZ;YACD,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE;gBAC1B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,IAAI,EAAE;oBAC/B,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;oBAC9B,IAAI,CAAC,QAAQ,IAAI,QAAQ,KAAK,KAAK,EAAE;wBACnC,OAAO,KAAK,CAAA;qBACb;iBACF;gBACD,OAAO,IAAI,CAAA;aACZ;YACD,OAAO,KAAK,CAAA;QACd,KAAK,OAAO;YACV,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;gBACvB,IAAI,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,EAAE;oBAC/B,OAAO,KAAK,CAAA;iBACb;gBACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;oBACpC,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE;wBACvB,OAAO,KAAK,CAAA;qBACb;iBACF;gBAED,OAAO,IAAI,CAAA;aACZ;YACD,OAAO,KAAK,CAAA;QACd;YACE,OAAO,IAAI,KAAK,IAAI,CAAA;KACvB;AACH,CAAC,CAAA;AAED,eAAe,WAAW,CAAA"}
1
+ {"version":3,"file":"deeper-equal.js","sourceRoot":"","sources":["../../../src/lib/deeper-equal.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,MAAM,WAAW,GAAG,CAAC,IAAS,EAAE,IAAS,EAAE,EAAE;IAC3C,gFAAgF;IAChF,IAAI,CAAC,IAAI,EAAE;QACT,OAAO,KAAK,CAAA;KACb;IACD,IAAI,OAAO,IAAI,IAAI,WAAW,IAAI,OAAO,IAAI,KAAK,WAAW,EAAE;QAC7D,OAAO,KAAK,CAAA;KACb;IACD,QAAQ,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE;QAC7B,KAAK,QAAQ;YACX,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;gBACnC,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE;oBACvB,OAAO,IAAI,CAAA;iBACZ;gBACD,OAAO,KAAK,CAAA;YACd,CAAC,CAAC,CAAA;QAEJ,KAAK,KAAK;YACR,IAAI,IAAI,IAAI,IAAI,EAAE;gBAChB,OAAO,IAAI,CAAA;aACZ;YACD,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE;gBAC1B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,IAAI,EAAE;oBAC/B,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;oBAC9B,IAAI,CAAC,QAAQ,IAAI,QAAQ,KAAK,KAAK,EAAE;wBACnC,OAAO,KAAK,CAAA;qBACb;iBACF;gBACD,OAAO,IAAI,CAAA;aACZ;YACD,OAAO,KAAK,CAAA;QACd,KAAK,OAAO;YACV,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;gBACvB,IAAI,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,EAAE;oBAC/B,OAAO,KAAK,CAAA;iBACb;gBACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;oBACpC,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE;wBACvB,OAAO,KAAK,CAAA;qBACb;iBACF;gBAED,OAAO,IAAI,CAAA;aACZ;YACD,OAAO,KAAK,CAAA;QACd;YACE,OAAO,IAAI,KAAK,IAAI,CAAA;KACvB;AACH,CAAC,CAAA;AAED,eAAe,WAAW,CAAA"}
@@ -23,13 +23,13 @@ export const uniqueSectionCategories = [
23
23
  export const isEditableSectionCategoryID = (id) => !uneditableSectionCategories.includes(id);
24
24
  export const isEditableSectionCategory = (sectionCategory) => isEditableSectionCategoryID(sectionCategory._id);
25
25
  export const sortSectionCategories = (sectionCategories) => sectionCategories.sort((a, b) => a.priority - b.priority);
26
- export const chooseSectionCategory = (section) => {
27
- if (section.category) {
28
- return section.category;
26
+ export const chooseSectionCategory = (section, isSubSection) => {
27
+ if (section.attrs.category) {
28
+ return section.attrs.category;
29
29
  }
30
- return section.path.length === 1
31
- ? 'MPSectionCategory:section'
32
- : 'MPSectionCategory:subsection';
30
+ return isSubSection
31
+ ? 'MPSectionCategory:subsection'
32
+ : 'MPSectionCategory:section';
33
33
  };
34
34
  export const isUnique = (categoryId) => {
35
35
  return uniqueSectionCategories.includes(categoryId);
@@ -1 +1 @@
1
- {"version":3,"file":"section-categories.js","sourceRoot":"","sources":["../../../src/lib/section-categories.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAIH,MAAM,CAAC,MAAM,2BAA2B,GAAa;IACnD,gCAAgC;IAChC,4BAA4B;IAC5B,mCAAmC;IACnC,kCAAkC;IAClC,uBAAuB;CACxB,CAAA;AAED,MAAM,CAAC,MAAM,uBAAuB,GAAa;IAC/C,sCAAsC;IACtC,4BAA4B;CAC7B,CAAA;AAED,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,EAAU,EAAE,EAAE,CACxD,CAAC,2BAA2B,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;AAE3C,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,eAAgC,EAAE,EAAE,CAC5E,2BAA2B,CAAC,eAAe,CAAC,GAAG,CAAC,CAAA;AAElD,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,iBAAoC,EAAE,EAAE,CAC5E,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAA;AAE3D,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,OAAgB,EAAU,EAAE;IAChE,IAAI,OAAO,CAAC,QAAQ,EAAE;QACpB,OAAO,OAAO,CAAC,QAAQ,CAAA;KACxB;IAED,OAAO,OAAO,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC;QAC9B,CAAC,CAAC,2BAA2B;QAC7B,CAAC,CAAC,8BAA8B,CAAA;AACpC,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,UAAkB,EAAE,EAAE;IAC7C,OAAO,uBAAuB,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAA;AACrD,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,eAAe,GAAG,CAC7B,UAAkB,EAClB,iBAAyB,EACzB,EAAE;IACF,OAAO,UAAU,KAAK,iBAAiB,CAAA;AACzC,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,eAAe,GAAG,CAC7B,GAAoB,EACpB,YAAuC,EACvC,EAAE;IACF,OAAO,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;AACzE,CAAC,CAAA"}
1
+ {"version":3,"file":"section-categories.js","sourceRoot":"","sources":["../../../src/lib/section-categories.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAKH,MAAM,CAAC,MAAM,2BAA2B,GAAa;IACnD,gCAAgC;IAChC,4BAA4B;IAC5B,mCAAmC;IACnC,kCAAkC;IAClC,uBAAuB;CACxB,CAAA;AAED,MAAM,CAAC,MAAM,uBAAuB,GAAa;IAC/C,sCAAsC;IACtC,4BAA4B;CAC7B,CAAA;AAED,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,EAAU,EAAE,EAAE,CACxD,CAAC,2BAA2B,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;AAE3C,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,eAAgC,EAAE,EAAE,CAC5E,2BAA2B,CAAC,eAAe,CAAC,GAAG,CAAC,CAAA;AAElD,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,iBAAoC,EAAE,EAAE,CAC5E,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAA;AAE3D,MAAM,CAAC,MAAM,qBAAqB,GAAG,CACnC,OAAoB,EACpB,YAAsB,EACd,EAAE;IACV,IAAI,OAAO,CAAC,KAAK,CAAC,QAAQ,EAAE;QAC1B,OAAO,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAA;KAC9B;IAED,OAAO,YAAY;QACjB,CAAC,CAAC,8BAA8B;QAChC,CAAC,CAAC,2BAA2B,CAAA;AACjC,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,UAAkB,EAAE,EAAE;IAC7C,OAAO,uBAAuB,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAA;AACrD,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,eAAe,GAAG,CAC7B,UAAkB,EAClB,iBAAyB,EACzB,EAAE;IACF,OAAO,UAAU,KAAK,iBAAiB,CAAA;AACzC,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,eAAe,GAAG,CAC7B,GAAoB,EACpB,YAAuC,EACvC,EAAE;IACF,OAAO,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;AACzE,CAAC,CAAA"}
@@ -9,6 +9,7 @@
9
9
  *
10
10
  * All portions of the code written by Atypon Systems LLC are Copyright (c) 2019 Atypon Systems LLC. All Rights Reserved.
11
11
  */
12
+ import { loadDoc } from '../quarterback/api/loadDoc';
12
13
  import Api from './Api';
13
14
  import { buildData } from './buildData';
14
15
  import { buildUtilities } from './buildUtilities';
@@ -23,8 +24,24 @@ export default class PsSource {
23
24
  }
24
25
  const projectID = state.projectID;
25
26
  const manuscriptID = state.manuscriptID;
26
- if (manuscriptID && projectID) {
27
- this.data = await buildData(projectID, manuscriptID, this.api);
27
+ if (state.projectID && state.manuscriptID && state.authToken) {
28
+ const res = await loadDoc(state.manuscriptID, state.projectID, state.authToken, state.doc);
29
+ if (res?.doc && res.version >= 0) {
30
+ this.data = {
31
+ ...this.data,
32
+ doc: res.doc,
33
+ initialDocVersion: res.version,
34
+ snapshots: res.snapshots,
35
+ snapshotsMap: new Map(),
36
+ };
37
+ }
38
+ }
39
+ if (manuscriptID && projectID && this.data.doc) {
40
+ const data = await buildData(projectID, manuscriptID, this.data.doc, this.api);
41
+ this.data = {
42
+ ...this.data,
43
+ ...data,
44
+ };
28
45
  this.utilities = buildUtilities(projectID, manuscriptID, () => this.data, setState, this.api);
29
46
  }
30
47
  next({ ...state, ...this.data, ...this.utilities });
@@ -1 +1 @@
1
- {"version":3,"file":"PsSource.js","sourceRoot":"","sources":["../../../src/postgres-data/PsSource.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAMH,OAAO,GAAG,MAAM,OAAO,CAAA;AACvB,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAEjD,MAAM,CAAC,OAAO,OAAO,QAAQ;IAM3B,YAAY,KAAuB;QASnC,gBAAW,GAAG,CAAC,KAAqB,EAAE,EAAE;YACtC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC,KAAK,CAAC,CAAA;QACzD,CAAC,CAAA;QAED,UAAK,GAAc,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;YACjD,IAAI,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,SAAS,EAAE;gBACnC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;aACnC;YACD,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAA;YACjC,MAAM,YAAY,GAAG,KAAK,CAAC,YAAY,CAAA;YACvC,IAAI,YAAY,IAAI,SAAS,EAAE;gBAC7B,IAAI,CAAC,IAAI,GAAG,MAAM,SAAS,CAAC,SAAS,EAAE,YAAY,EAAE,IAAI,CAAC,GAAG,CAAC,CAAA;gBAC9D,IAAI,CAAC,SAAS,GAAG,cAAc,CAC7B,SAAS,EACT,YAAY,EACZ,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,EACf,QAAQ,EACR,IAAI,CAAC,GAAG,CACT,CAAA;aACF;YACD,IAAI,CAAC,EAAE,GAAG,KAAK,EAAE,GAAG,IAAI,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC,CAAA;QACrD,CAAC,CAAA;QACD,gBAAW,GAAG,CAAC,KAAY,EAAE,EAAE;YAC7B,IAAI,CAAC,IAAI,GAAG,KAAK,CAAA,CAAC,uCAAuC;QAC3D,CAAC,CAAA;QACD,gBAAW,GAAG,CAAC,QAAqB,EAAE,EAAE;YACtC,IAAI,CAAC,WAAW,GAAG,QAAQ,CAAA;QAC7B,CAAC,CAAA;QAnCC,IAAI,CAAC,GAAG,GAAG,IAAI,GAAG,EAAE,CAAA;QACpB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;QAClB,aAAa;QACb,4BAA4B;QAC5B,oGAAoG;QACpG,yBAAyB;IAC3B,CAAC;CA8BF"}
1
+ {"version":3,"file":"PsSource.js","sourceRoot":"","sources":["../../../src/postgres-data/PsSource.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAIH,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AAIpD,OAAO,GAAG,MAAM,OAAO,CAAA;AACvB,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAEjD,MAAM,CAAC,OAAO,OAAO,QAAQ;IAM3B,YAAY,KAAuB;QASnC,gBAAW,GAAG,CAAC,KAAqB,EAAE,EAAE;YACtC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC,KAAK,CAAC,CAAA;QACzD,CAAC,CAAA;QAED,UAAK,GAAc,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;YACjD,IAAI,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,SAAS,EAAE;gBACnC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;aACnC;YACD,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAA;YACjC,MAAM,YAAY,GAAG,KAAK,CAAC,YAAY,CAAA;YAEvC,IAAI,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,YAAY,IAAI,KAAK,CAAC,SAAS,EAAE;gBAC5D,MAAM,GAAG,GAAG,MAAM,OAAO,CACvB,KAAK,CAAC,YAAY,EAClB,KAAK,CAAC,SAAS,EACf,KAAK,CAAC,SAAS,EACf,KAAK,CAAC,GAAG,CACV,CAAA;gBACD,IAAI,GAAG,EAAE,GAAG,IAAI,GAAG,CAAC,OAAO,IAAI,CAAC,EAAE;oBAChC,IAAI,CAAC,IAAI,GAAG;wBACV,GAAG,IAAI,CAAC,IAAI;wBACZ,GAAG,EAAE,GAAG,CAAC,GAAG;wBACZ,iBAAiB,EAAE,GAAG,CAAC,OAAO;wBAC9B,SAAS,EAAE,GAAG,CAAC,SAAS;wBACxB,YAAY,EAAE,IAAI,GAAG,EAA8B;qBACpD,CAAA;iBACF;aACF;YAED,IAAI,YAAY,IAAI,SAAS,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBAC9C,MAAM,IAAI,GAAG,MAAM,SAAS,CAC1B,SAAS,EACT,YAAY,EACZ,IAAI,CAAC,IAAI,CAAC,GAAG,EACb,IAAI,CAAC,GAAG,CACT,CAAA;gBACD,IAAI,CAAC,IAAI,GAAG;oBACV,GAAG,IAAI,CAAC,IAAI;oBACZ,GAAG,IAAI;iBACR,CAAA;gBACD,IAAI,CAAC,SAAS,GAAG,cAAc,CAC7B,SAAS,EACT,YAAY,EACZ,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,EACf,QAAQ,EACR,IAAI,CAAC,GAAG,CACT,CAAA;aACF;YACD,IAAI,CAAC,EAAE,GAAG,KAAK,EAAE,GAAG,IAAI,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC,CAAA;QACrD,CAAC,CAAA;QACD,gBAAW,GAAG,CAAC,KAAY,EAAE,EAAE;YAC7B,IAAI,CAAC,IAAI,GAAG,KAAK,CAAA,CAAC,uCAAuC;QAC3D,CAAC,CAAA;QACD,gBAAW,GAAG,CAAC,QAAqB,EAAE,EAAE;YACtC,IAAI,CAAC,WAAW,GAAG,QAAQ,CAAA;QAC7B,CAAC,CAAA;QA/DC,IAAI,CAAC,GAAG,GAAG,IAAI,GAAG,EAAE,CAAA;QACpB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;QAClB,aAAa;QACb,4BAA4B;QAC5B,oGAAoG;QACpG,yBAAyB;IAC3B,CAAC;CA0DF"}
@@ -9,30 +9,27 @@
9
9
  *
10
10
  * All portions of the code written by Atypon Systems LLC are Copyright (c) 2019 Atypon Systems LLC. All Rights Reserved.
11
11
  */
12
- import { getModelMap, ObjectTypes, } from '@manuscripts/json-schema';
13
- import { Decoder, isManuscript } from '@manuscripts/transform';
12
+ import { ObjectTypes } from '@manuscripts/json-schema';
14
13
  import { getUserRole } from '../lib/roles';
15
14
  import { TokenData } from '../store/TokenData';
16
- const getManuscriptData = async (projectID, manuscriptID, api) => {
15
+ const getProject = async (api, projectID, manuscriptID) => {
17
16
  const models = await api.getManuscript(projectID, manuscriptID);
18
17
  if (!models) {
19
18
  throw new Error('Models are wrong.');
20
19
  }
21
- const data = {};
22
20
  for (const model of models) {
23
21
  if (model.objectType === ObjectTypes.Project) {
24
- data.project = model;
25
- }
26
- else if (isManuscript(model)) {
27
- data.manuscript = model;
22
+ return model;
28
23
  }
29
24
  }
30
- data.modelMap = getModelMap(models || []);
25
+ };
26
+ const getManuscriptData = async (api, prototype) => {
27
+ const data = {};
31
28
  const [sectionCategories, cslLocale, template] = await Promise.all([
32
29
  api.getSectionCategories(),
33
30
  // TODO:: config this!
34
31
  api.getCSLLocale('en-US'),
35
- api.getTemplate(data.manuscript?.prototype),
32
+ api.getTemplate(prototype),
36
33
  ]);
37
34
  const bundle = await api.getBundle(template);
38
35
  data.sectionCategories = sectionCategories || [];
@@ -55,35 +52,22 @@ const getUserData = async (projectID, user, api) => {
55
52
  collaboratorsById: profilesById,
56
53
  };
57
54
  };
58
- const createDoc = (modelMap) => {
59
- try {
60
- const decoder = new Decoder(modelMap, true);
61
- return decoder.createArticleNode();
62
- }
63
- catch (e) {
64
- console.warn('Unable to produce a document from the json models with error: ' + e);
65
- return null;
66
- }
67
- };
68
- export const buildData = async (projectID, manuscriptID, api) => {
55
+ export const buildData = async (projectID, manuscriptID, doc, api) => {
69
56
  const user = await api.getUser();
70
57
  if (!user) {
71
58
  return {};
72
59
  }
73
- const state = await getManuscriptData(projectID, manuscriptID, api);
74
- const manuscript = state.manuscript;
75
- const project = state.project;
60
+ const manuscript = doc;
61
+ const state = await getManuscriptData(api, manuscript.attrs.prototype);
62
+ const project = await getProject(api, projectID, manuscriptID);
76
63
  const role = project ? getUserRole(project, user.userID) : null;
77
64
  const users = await getUserData(projectID, user, api);
78
- const doc = state.modelMap ? createDoc(state.modelMap) : null;
79
65
  return {
80
66
  user,
81
- manuscriptID: manuscript?._id,
82
- projectID: project?._id,
83
67
  userRole: role,
84
68
  ...users,
85
69
  ...state,
86
- doc,
70
+ project,
87
71
  tokenData: new TokenData(),
88
72
  };
89
73
  };
@@ -1 +1 @@
1
- {"version":3,"file":"buildData.js","sourceRoot":"","sources":["../../../src/postgres-data/buildData.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"buildData.js","sourceRoot":"","sources":["../../../src/postgres-data/buildData.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,EAAE,WAAW,EAAwB,MAAM,0BAA0B,CAAA;AAG5E,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAE1C,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAG9C,MAAM,UAAU,GAAG,KAAK,EACtB,GAAQ,EACR,SAAiB,EACjB,YAAoB,EACpB,EAAE;IACF,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,aAAa,CAAC,SAAS,EAAE,YAAY,CAAC,CAAA;IAC/D,IAAI,CAAC,MAAM,EAAE;QACX,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAA;KACrC;IACD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;QAC1B,IAAI,KAAK,CAAC,UAAU,KAAK,WAAW,CAAC,OAAO,EAAE;YAC5C,OAAO,KAAgB,CAAA;SACxB;KACF;AACH,CAAC,CAAA;AAED,MAAM,iBAAiB,GAAG,KAAK,EAAE,GAAQ,EAAE,SAAiB,EAAE,EAAE;IAC9D,MAAM,IAAI,GAAmB,EAAE,CAAA;IAC/B,MAAM,CAAC,iBAAiB,EAAE,SAAS,EAAE,QAAQ,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QACjE,GAAG,CAAC,oBAAoB,EAAE;QAC1B,sBAAsB;QACtB,GAAG,CAAC,YAAY,CAAC,OAAO,CAAC;QACzB,GAAG,CAAC,WAAW,CAAC,SAAS,CAAC;KAC3B,CAAC,CAAA;IAEF,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAA;IAC5C,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,IAAI,EAAE,CAAA;IAChD,IAAI,CAAC,QAAQ,GAAG,MAAM,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;IAC7C,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;IAE1B,OAAO,IAAI,CAAA;AACb,CAAC,CAAA;AAED,MAAM,WAAW,GAAG,KAAK,EAAE,SAAiB,EAAE,IAAiB,EAAE,GAAQ,EAAE,EAAE;IAC3E,MAAM,YAAY,GAAG,IAAI,GAAG,EAAE,CAAA;IAC9B,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IAChC,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,eAAe,CAAC,SAAS,CAAC,CAAA;IACrD,IAAI,QAAQ,EAAE;QACZ,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE;YAC9B,IAAI,OAAO,EAAE;gBACX,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;aACvC;SACF;KACF;IACD,OAAO;QACL,iBAAiB,EAAE,YAAY;KAChC,CAAA;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,SAAS,GAAG,KAAK,EAC5B,SAAiB,EACjB,YAAoB,EACpB,GAAmB,EACnB,GAAQ,EACR,EAAE;IACF,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,OAAO,EAAE,CAAA;IAChC,IAAI,CAAC,IAAI,EAAE;QACT,OAAO,EAAE,CAAA;KACV;IAED,MAAM,UAAU,GAAG,GAA2B,CAAA;IAC9C,MAAM,KAAK,GAAG,MAAM,iBAAiB,CAAC,GAAG,EAAE,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;IACtE,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,GAAG,EAAE,SAAS,EAAE,YAAY,CAAC,CAAA;IAC9D,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;IAC/D,MAAM,KAAK,GAAG,MAAM,WAAW,CAAC,SAAS,EAAE,IAAI,EAAE,GAAG,CAAC,CAAA;IAErD,OAAO;QACL,IAAI;QACJ,QAAQ,EAAE,IAAI;QACd,GAAG,KAAK;QACR,GAAG,KAAK;QACR,OAAO;QACP,SAAS,EAAE,IAAI,SAAS,EAAE;KAC3B,CAAA;AACH,CAAC,CAAA"}
@@ -9,9 +9,8 @@
9
9
  *
10
10
  * All portions of the code written by Atypon Systems LLC are Copyright (c) 2019 Atypon Systems LLC. All Rights Reserved.
11
11
  */
12
- import { manuscriptIDTypes, ObjectTypes, } from '@manuscripts/json-schema';
12
+ import { manuscriptIDTypes, ObjectTypes } from '@manuscripts/json-schema';
13
13
  import { encode } from '@manuscripts/transform';
14
- import { getUserRole } from '../lib/roles';
15
14
  export const buildUtilities = (projectID, manuscriptID, getState, updateState, api) => {
16
15
  const nonPMModelsTypes = new Set([
17
16
  ObjectTypes.Manuscript,
@@ -42,13 +41,6 @@ export const buildUtilities = (projectID, manuscriptID, getState, updateState, a
42
41
  return false;
43
42
  }
44
43
  };
45
- const getModel = (id) => {
46
- const state = getState();
47
- if (!state.modelMap) {
48
- return;
49
- }
50
- return state.modelMap.get(id);
51
- };
52
44
  const saveModels = async (models, excludeIDs) => {
53
45
  const state = getState();
54
46
  if (!state.modelMap) {
@@ -78,26 +70,6 @@ export const buildUtilities = (projectID, manuscriptID, getState, updateState, a
78
70
  preventUnload: false,
79
71
  });
80
72
  };
81
- const saveModel = async (model) => {
82
- await saveModels([model]);
83
- //is this actually needed?
84
- return model;
85
- };
86
- const deleteModel = async (id) => {
87
- await saveModels([], new Set([id]));
88
- return id;
89
- };
90
- const saveManuscript = async (manuscript) => {
91
- const state = getState();
92
- if (!state.modelMap) {
93
- throw new Error('Unable to save manuscript due to incomplete data');
94
- }
95
- const previous = state.modelMap.get(manuscriptID);
96
- await saveModel({
97
- ...previous,
98
- ...manuscript,
99
- });
100
- };
101
73
  const saveDoc = async (doc) => {
102
74
  const models = encode(doc);
103
75
  await saveModels([...models.values()]);
@@ -116,34 +88,9 @@ export const buildUtilities = (projectID, manuscriptID, getState, updateState, a
116
88
  snapshotsMap: snapshotsMap.set(label.id, data.snapshot),
117
89
  });
118
90
  };
119
- const refreshProject = async () => {
120
- const state = getState();
121
- const userID = state.userID;
122
- if (!userID) {
123
- return;
124
- }
125
- const models = await api.getManuscript(projectID, manuscriptID);
126
- if (!models) {
127
- return;
128
- }
129
- const project = models.filter((m) => m.objectType === ObjectTypes.Project)[0];
130
- if (!project) {
131
- return;
132
- }
133
- updateState({
134
- project,
135
- userRole: getUserRole(project, userID),
136
- });
137
- };
138
91
  return {
139
- saveModel,
140
- deleteModel,
141
- saveManuscript,
142
- getModel,
143
- saveModels,
144
92
  saveDoc,
145
93
  createSnapshot,
146
- refreshProject,
147
94
  };
148
95
  };
149
96
  //# sourceMappingURL=buildUtilities.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"buildUtilities.js","sourceRoot":"","sources":["../../../src/postgres-data/buildUtilities.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"buildUtilities.js","sourceRoot":"","sources":["../../../src/postgres-data/buildUtilities.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,77 @@
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) 2022 Atypon Systems LLC. All Rights Reserved.
11
+ */
12
+ import { getVersion, schema } from '@manuscripts/transform';
13
+ import { updateDocument } from './document';
14
+ import * as docApi from './document';
15
+ export async function loadDoc(manuscriptID, projectID, authToken, existingDoc) {
16
+ const found = await docApi.getDocument(projectID, manuscriptID, authToken);
17
+ let doc;
18
+ let version = 0;
19
+ let snapshots = [];
20
+ if ('data' in found) {
21
+ let empty = true;
22
+ for (const _ in found.data.doc) {
23
+ empty = false;
24
+ break;
25
+ }
26
+ if (empty) {
27
+ if (!existingDoc) {
28
+ throw new Error('Unable to produce valid doc as neither model based verions nor history have a valid version');
29
+ }
30
+ await updateDocument(projectID, manuscriptID, authToken, {
31
+ doc: existingDoc.toJSON(),
32
+ schema_version: getVersion(),
33
+ });
34
+ }
35
+ snapshots = found.data.snapshots;
36
+ doc = found.data.doc;
37
+ version = found.data.version;
38
+ }
39
+ else if ('err' in found && found.code === 404) {
40
+ // Create an empty doc that will be replaced with whatever document is currently being edited
41
+ const res = await docApi.createDocument({
42
+ manuscript_model_id: manuscriptID,
43
+ project_model_id: projectID,
44
+ doc: {},
45
+ schema_version: getVersion(),
46
+ }, authToken);
47
+ if ('data' in res) {
48
+ doc = res.data.doc;
49
+ version = res.data.version;
50
+ snapshots = res.data.snapshots;
51
+ }
52
+ if ('err' in res) {
53
+ console.error('Unable to create new document: ' + res.err);
54
+ }
55
+ const update = await updateDocument(projectID, manuscriptID, authToken, {
56
+ doc: existingDoc?.toJSON(),
57
+ schema_version: getVersion(),
58
+ });
59
+ if ('err' in update) {
60
+ console.error('Unable to create new document: ' + update.err);
61
+ }
62
+ else {
63
+ const found = await docApi.getDocument(projectID, manuscriptID, authToken);
64
+ if ('data' in found && found.data.doc && found.data.version >= 0) {
65
+ doc = found.data.doc;
66
+ version = found.data.version;
67
+ }
68
+ }
69
+ }
70
+ if (doc !== null &&
71
+ typeof doc === 'object' &&
72
+ Object.keys(doc).length !== 0) {
73
+ return { doc: schema.nodeFromJSON(doc), version, snapshots };
74
+ }
75
+ return undefined;
76
+ }
77
+ //# sourceMappingURL=loadDoc.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loadDoc.js","sourceRoot":"","sources":["../../../../src/quarterback/api/loadDoc.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Store.js","sourceRoot":"","sources":["../../../src/store/Store.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAuBH,OAAO,EAAE,qBAAqB,EAA2B,MAAM,GAAG,CAAA;AA0ElE,MAAM,cAAc,GAAG,GAAG,CAAA,CAAC,0BAA0B;AAErD,MAAM,cAAc,GAAG,CAAC,OAAY,EAAE,KAAY,EAAE,MAAe,EAAE,EAAE;IACrE,OAAO,EAAE,GAAG,KAAK,EAAE,GAAG,OAAO,EAAE,CAAA;AACjC,CAAC,CAAA;AAqBD,MAAM,OAAO,YAAY;IAWvB,YACE,OAAO,GAAG,cAAc,EACxB,cAAuC,EACvC,KAAK,GAAG,EAAE;QAmBZ,UAAK,GAA6C,IAAI,GAAG,EAAE,CAAA;QAa3D,SAAI,GAAG,KAAK,EAAE,OAAkC,EAAE,EAAE;YAClD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;YAEtB,MAAM,KAAK,GAAG,MAAM,qBAAqB,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAA;YACjE,IAAI,CAAC,QAAQ,CAAC,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,GAAI,KAAe,EAAE,CAAC,CAAA;YACrD,4CAA4C;YAC5C,IAAI,CAAC,YAAY,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;gBACvD,qEAAqE;gBACrE,0DAA0D;gBAC1D,IAAI,CAAC,OAAO,CAAC,GAAG,CACd,CAAC,MAAM,EAAE,EAAE,CACT,MAAM,CAAC,YAAY;oBACnB,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,CAAC,CACxD,CAAA;gBACD,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,CAAA;YAC5B,CAAC,CAAA;YACD,IAAI,CAAC,OAAO,CAAC,OAAO;YAClB,wHAAwH;YACxH,oHAAoH;YACpH,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,WAAW,IAAI,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CACpE,CAAA;YACD,2CAA2C;YAC3C,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;gBAC1B,IAAI,MAAM,CAAC,WAAW,EAAE;oBACtB,IAAI,CAAC,SAAS,CACZ,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,CACnB,MAAM,CAAC,WAAW;wBAClB,MAAM,CAAC,WAAW,CAAC,KAAM,EAAE,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,CACvD,CAAA;iBACF;YACH,CAAC,CAAC,CAAA;QACJ,CAAC,CAAA;QA7DC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QAEtB,IAAI,KAAK,EAAE;YACT,IAAI,CAAC,KAAK,GAAG,KAAc,CAAA;SAC5B;QAED,IAAI,cAAc,EAAE;YAClB,IAAI,CAAC,cAAc,GAAG,cAAc,CAAA;SACrC;QACD,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAClD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC1C,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACpD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACxC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAExC,6CAA6C;IAC/C,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,KAAM,CAAA;IACpB,CAAC;IACD,QAAQ,CAAC,KAAwC;QAC/C,MAAM,SAAS,GAAG,EAAE,GAAG,IAAI,CAAC,KAAM,EAAE,CAAA;QACpC,IAAI,OAAO,KAAK,KAAK,UAAU,EAAE;YAC/B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,KAAM,CAAC,CAAA;SAChC;aAAM;YACL,IAAI,CAAC,KAAK,GAAG,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,GAAG,KAAK,EAAE,CAAA;SACzC;QACD,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAA;IAC/B,CAAC;IAiCD,aAAa,CAAC,SAAgB;QAC5B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,KAAM,EAAE,SAAS,CAAC,CAAC,CAAA;IACxD,CAAC;IACD,SAAS,CAAC,EAAuC;QAC/C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAA;QACxB,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QACb,OAAO,SAAS,WAAW;YACzB,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;QAClB,CAAC,CAAA;IACH,CAAC;IACD,cAAc,CAAC,EAAE,MAAM,GAAG,cAAc,EAAE,GAAG,OAAO,EAAE;QACpD,MAAM,kBAAkB,GAAG,IAAI,CAAC,YAAY,CAC1C,MAAM,EACN,OAAO,EACP,IAAI,CAAC,KAAM,EACX,IAAI,CAAC,QAAQ,CACd,CAAA;QACD,IAAI,kBAAkB,EAAE;YACtB,IAAI,CAAC,QAAQ,CACX,IAAI,CAAC,OAAO,CACV,kBAAkB,CAAC,OAAO,EAC1B,IAAI,CAAC,KAAM,EACX,kBAAkB,CAAC,MAAM,IAAI,EAAE,CAChC,CACF,CAAA;SACF;IACH,CAAC;IACD,OAAO;QACL,IAAI,IAAI,CAAC,cAAc,EAAE;YACvB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,KAAM,CAAC,CAAA;SACjC;QACD,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC,CAAA;SACrE;QACD,IAAI,CAAC,OAAO,GAAG,EAAE,CAAA;QACjB,IAAI,CAAC,KAAK,GAAG,EAAW,CAAA;QACxB,IAAI,CAAC,KAAK,GAAG,IAAI,GAAG,EAAE,CAAA;IACxB,CAAC;CACF"}
1
+ {"version":3,"file":"Store.js","sourceRoot":"","sources":["../../../src/store/Store.ts"],"names":[],"mappings":"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"}
@@ -22,7 +22,7 @@ export const GenericStoreProvider = ({ children, store }) => {
22
22
  return () => store.unmount();
23
23
  }, [store]);
24
24
  if (store) {
25
- return (React.createElement(GenericStoreContext.Provider, { value: store }, store.state?.project ? children : React.createElement("p", null, "Project was not found")));
25
+ return (React.createElement(GenericStoreContext.Provider, { value: store }, store.state?.doc ? children : React.createElement("p", null, "Project was not found")));
26
26
  }
27
27
  return null;
28
28
  };
@@ -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,SAAS,EAAE,MAAM,OAAO,CAAA;AAEnE,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,SAAS,CAAC,GAAG,EAAE;QACb,OAAO,GAAG,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,CAAA;IAC9B,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAA;IAEX,IAAI,KAAK,EAAE;QACT,OAAO,CACL,oBAAC,mBAAmB,CAAC,QAAQ,IAAC,KAAK,EAAE,KAAK,IACvC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,uDAA4B,CAClC,CAChC,CAAA;KACF;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,SAAS,EAAE,MAAM,OAAO,CAAA;AAEnE,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,SAAS,CAAC,GAAG,EAAE;QACb,OAAO,GAAG,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,CAAA;IAC9B,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAA;IAEX,IAAI,KAAK,EAAE;QACT,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;KACF;IACD,OAAO,IAAI,CAAA;AACb,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,eAAe,GAAG,GAAG,EAAE,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAA"}
@@ -18,4 +18,9 @@ export const useStore = (selector) => {
18
18
  const state = useSyncExternalStoreWithSelector(store.subscribe, () => store.getState(), undefined, init, deeperEqual);
19
19
  return [state, store.dispatchAction, store.getState, store.subscribe];
20
20
  };
21
+ // Allows to get store's state on demand rather than subscribing to it
22
+ export const useGetState = () => {
23
+ const store = useGenericStore();
24
+ return store.getState;
25
+ };
21
26
  //# sourceMappingURL=useStore.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useStore.js","sourceRoot":"","sources":["../../../src/store/useStore.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,gCAAgC,EAAE,MAAM,uCAAuC,CAAA;AAExF,OAAO,WAAW,MAAM,qBAAqB,CAAA;AAE7C,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAIhD,MAAM,CAAC,MAAM,QAAQ,GAAG,CACtB,QAAsB,EACiC,EAAE;IACzD,MAAM,KAAK,GAAG,eAAe,EAAE,CAAA;IAC/B,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAM,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,KAAK,CAAA;IACxE,MAAM,KAAK,GAAG,gCAAgC,CAC5C,KAAK,CAAC,SAAS,EACf,GAAG,EAAE,CAAC,KAAK,CAAC,QAAQ,EAAE,EACtB,SAAS,EACT,IAAI,EACJ,WAAW,CACZ,CAAA;IAED,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC,CAAA;AACvE,CAAC,CAAA"}
1
+ {"version":3,"file":"useStore.js","sourceRoot":"","sources":["../../../src/store/useStore.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,gCAAgC,EAAE,MAAM,uCAAuC,CAAA;AAExF,OAAO,WAAW,MAAM,qBAAqB,CAAA;AAE7C,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAIhD,MAAM,CAAC,MAAM,QAAQ,GAAG,CACtB,QAAsB,EACiC,EAAE;IACzD,MAAM,KAAK,GAAG,eAAe,EAAE,CAAA;IAC/B,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAM,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,KAAK,CAAA;IACxE,MAAM,KAAK,GAAG,gCAAgC,CAC5C,KAAK,CAAC,SAAS,EACf,GAAG,EAAE,CAAC,KAAK,CAAC,QAAQ,EAAE,EACtB,SAAS,EACT,IAAI,EACJ,WAAW,CACZ,CAAA;IAED,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC,CAAA;AACvE,CAAC,CAAA;AAED,sEAAsE;AACtE,MAAM,CAAC,MAAM,WAAW,GAAG,GAAG,EAAE;IAC9B,MAAM,KAAK,GAAG,eAAe,EAAE,CAAA;IAC/B,OAAO,KAAK,CAAC,QAAQ,CAAA;AACvB,CAAC,CAAA"}
@@ -9,11 +9,9 @@
9
9
  *
10
10
  * All portions of the code written by Atypon Systems LLC are Copyright (c) 2019 Atypon Systems LLC. All Rights Reserved.
11
11
  */
12
- import { Project } from '@manuscripts/json-schema';
13
12
  import React from 'react';
14
13
  export declare const Main: import("styled-components").StyledComponent<"main", import("styled-components").DefaultTheme, {}, never>;
15
14
  export declare const Centered: import("styled-components").StyledComponent<"main", import("styled-components").DefaultTheme, {}, never>;
16
- export declare const Page: React.FunctionComponent<{
15
+ export declare const Page: React.FC<{
17
16
  children: React.ReactNode;
18
- project?: Project;
19
17
  }>;
@@ -1,22 +1,8 @@
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 { Section } from '@manuscripts/json-schema';
13
1
  import { SectionNode } from '@manuscripts/transform';
14
2
  import { EditorState, Transaction } from 'prosemirror-state';
15
3
  import React from 'react';
16
4
  export declare const SectionInspector: React.FC<{
17
5
  dispatchNodeAttrs: (id: string, attrs: Record<string, unknown>, nodispatch?: boolean) => Transaction | undefined;
18
- section: Section;
19
- sectionNode?: SectionNode;
6
+ section: SectionNode;
20
7
  state: EditorState;
21
- dispatch: (tr: Transaction) => EditorState | void;
22
8
  }>;
@@ -1,6 +1,2 @@
1
- import { EditorState, Transaction } from 'prosemirror-state';
2
1
  import React from 'react';
3
- export declare const ContentTab: React.FC<{
4
- state: EditorState;
5
- dispatch: (tr: Transaction) => EditorState;
6
- }>;
2
+ export declare const ContentTab: React.FC;
@@ -1,18 +1,3 @@
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) 2021 Atypon Systems LLC. All Rights Reserved.
11
- */
12
- import { useEditor } from '@manuscripts/body-editor';
13
1
  import React from 'react';
14
- interface Props {
15
- editor: ReturnType<typeof useEditor>;
16
- }
17
- declare const EditorElement: React.FC<Props>;
2
+ declare const EditorElement: React.FC;
18
3
  export default EditorElement;
@@ -10,9 +10,5 @@
10
10
  * All portions of the code written by Atypon Systems LLC are Copyright (c) 2023 Atypon Systems LLC. All Rights Reserved.
11
11
  */
12
12
  import React from 'react';
13
- import { useCreateEditor } from '../../hooks/use-create-editor';
14
- interface Props {
15
- editor: ReturnType<typeof useCreateEditor>;
16
- }
17
- declare const Inspector: React.FC<Props>;
13
+ declare const Inspector: React.FC;
18
14
  export default Inspector;
@@ -9,10 +9,5 @@
9
9
  *
10
10
  * All portions of the code written by Atypon Systems LLC are Copyright (c) 2019 Atypon Systems LLC. All Rights Reserved.
11
11
  */
12
- import { useEditor } from '@manuscripts/body-editor';
13
12
  import React from 'react';
14
- interface ApplicationMenusProps {
15
- editor: ReturnType<typeof useEditor>;
16
- }
17
- export declare const ManuscriptMenus: React.FC<ApplicationMenusProps>;
18
- export {};
13
+ export declare const ManuscriptMenus: React.FC;
@@ -14,7 +14,7 @@ import '@manuscripts/body-editor/styles/AdvancedEditor.css';
14
14
  import '@manuscripts/body-editor/styles/popper.css';
15
15
  import '@reach/tabs/styles.css';
16
16
  import React from 'react';
17
+ declare const ManuscriptPageContainer: React.FC;
17
18
  export declare const ManuscriptMenusContainer: import("styled-components").StyledComponent<"div", import("styled-components").DefaultTheme, {}, never>;
18
19
  export declare const ManuscriptMenusContainerInner: import("styled-components").StyledComponent<"div", import("styled-components").DefaultTheme, {}, never>;
19
- declare const ManuscriptPageContainer: React.FC;
20
20
  export default ManuscriptPageContainer;
@@ -9,14 +9,6 @@
9
9
  *
10
10
  * All portions of the code written by Atypon Systems LLC are Copyright (c) 2019 Atypon Systems LLC. All Rights Reserved.
11
11
  */
12
- import { useEditor } from '@manuscripts/body-editor';
13
- import { Manuscript } from '@manuscripts/json-schema';
14
- import { ManuscriptEditorView } from '@manuscripts/transform';
15
12
  import React from 'react';
16
- interface Props {
17
- state: ReturnType<typeof useEditor>['state'];
18
- manuscript: Manuscript;
19
- view?: ManuscriptEditorView;
20
- }
21
- declare const ManuscriptSidebar: React.FC<Props>;
13
+ declare const ManuscriptSidebar: React.FC;
22
14
  export default ManuscriptSidebar;