@manuscripts/article-editor 3.1.45 → 3.1.47-LEAN-3911.0
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.
- package/dist/cjs/components/projects/EditorElement.js +1 -1
- package/dist/cjs/components/projects/EditorElement.js.map +1 -1
- package/dist/cjs/components/track-changes/suggestion-list/SuggestionSnippet.js +174 -26
- package/dist/cjs/components/track-changes/suggestion-list/SuggestionSnippet.js.map +1 -1
- package/dist/cjs/hooks/use-handle-snapshot.js +1 -23
- package/dist/cjs/hooks/use-handle-snapshot.js.map +1 -1
- package/dist/cjs/lib/footnotes.js +49 -0
- package/dist/cjs/lib/footnotes.js.map +1 -0
- package/dist/cjs/lib/tracking.js +18 -1
- package/dist/cjs/lib/tracking.js.map +1 -1
- package/dist/cjs/lib/utils.js +41 -0
- package/dist/cjs/lib/utils.js.map +1 -0
- package/dist/cjs/postgres-data/buildUtilities.js +0 -56
- package/dist/cjs/postgres-data/buildUtilities.js.map +1 -1
- package/dist/cjs/store/Store.js.map +1 -1
- package/dist/es/components/projects/EditorElement.js +1 -1
- package/dist/es/components/projects/EditorElement.js.map +1 -1
- package/dist/es/components/track-changes/suggestion-list/SuggestionSnippet.js +146 -21
- package/dist/es/components/track-changes/suggestion-list/SuggestionSnippet.js.map +1 -1
- package/dist/es/hooks/use-handle-snapshot.js +1 -23
- package/dist/es/hooks/use-handle-snapshot.js.map +1 -1
- package/dist/es/lib/footnotes.js +43 -0
- package/dist/es/lib/footnotes.js.map +1 -0
- package/dist/es/lib/tracking.js +16 -0
- package/dist/es/lib/tracking.js.map +1 -1
- package/dist/es/lib/utils.js +35 -0
- package/dist/es/lib/utils.js.map +1 -0
- package/dist/es/postgres-data/buildUtilities.js +1 -57
- package/dist/es/postgres-data/buildUtilities.js.map +1 -1
- package/dist/es/store/Store.js.map +1 -1
- package/dist/types/components/track-changes/suggestion-list/SuggestionSnippet.d.ts +1 -1
- package/dist/types/lib/footnotes.d.ts +15 -0
- package/dist/types/lib/tracking.d.ts +1 -0
- package/dist/types/lib/utils.d.ts +20 -0
- package/dist/types/store/Store.d.ts +0 -1
- package/package.json +6 -5
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"EditorElement.js","sourceRoot":"","sources":["../../../../src/components/projects/EditorElement.tsx"],"names":[],"mappings":"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
|
1
|
+
{"version":3,"file":"EditorElement.js","sourceRoot":"","sources":["../../../../src/components/projects/EditorElement.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,EAEL,iBAAiB,EACjB,gBAAgB,EAChB,YAAY,GAEb,MAAM,0BAA0B,CAAA;AACjC,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAA;AACtD,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAA;AAC3D,OAAO,EACL,aAAa,EAEb,aAAa,GAEd,MAAM,mCAAmC,CAAA;AAC1C,OAAO,EAEL,UAAU,EAGV,MAAM,GACP,MAAM,wBAAwB,CAAA;AAE/B,OAAO,EAAE,aAAa,EAAe,MAAM,mBAAmB,CAAA;AAC9D,OAAO,EAAE,0BAA0B,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AACvE,OAAO,KAAK,EAAE,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AACpD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAEnC,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AACjE,OAAO,UAAU,MAAM,0BAA0B,CAAA;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,wCAAwC,CAAA;AAElE,MAAM,aAAa,GAAa,GAAG,EAAE;IACnC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAA;IACtC,MAAM,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,GAAG,QAAQ,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QACpD,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,MAAM,EAAE,KAAK,CAAC,MAAM;KACrB,CAAC,CAAC,CAAA;IAEH,MAAM,OAAO,GAAG,UAAU,EAAE,CAAA;IAC5B,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,gBAAgB,EAAE,CAAA;IAEvD,MAAM,CAAC,EAAE,IAAI,CAAC,GAAG,OAAO,CAAC;QACvB,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE;YAC5B,MAAM,MAAM,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAA;YAC9C,IAAI,MAAM,IAAI,MAAM,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,IAAI,IAAI,EAAE;gBAC1C,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,CAAA;gBAClE,6FAA6F;gBAC7F,MAAM,IAAI,GAAG,IAAI,CAAC,IAAsB,CAAA;gBAExC,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE;oBACnC,OAAO,KAAK,CAAA;iBACb;gBAED,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;gBACtD,MAAM,KAAK,GAA4B;oBACrC,GAAG,EAAE,IAAI,CAAC,EAAE;iBACb,CAAA;gBAED,MAAM,UAAU,GACd,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,WAAW,CAAC,MAAM,CAAA;gBACzD,QAAQ,UAAU,CAAC,IAAI,EAAE;oBACvB,KAAK,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;wBACxB,MAAM,MAAM,GAAG,UAAwB,CAAA;wBACvC,IAAI,iBAAiB,CAAC,MAAM,CAAC,EAAE;4BAC7B,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,CAAA;yBAC3D;6BAAM;4BACL,YAAY,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,CAAC,GAAG,GAAG,CAAC,CAAC,CAAA;yBACzD;wBACD,MAAK;qBACN;oBACD,KAAK,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC;oBAC7B,KAAK,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC;oBAC1B,KAAK,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;wBAC/B,6BAA6B,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;wBAC/D,MAAK;qBACN;oBACD,KAAK,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;wBAChC,gCAAgC,CAC9B,MAAM,EACN,WAAW,CAAC,MAAM,EAClB,WAAW,CAAC,GAAG,EACf,KAAK,CACN,CAAA;wBACD,MAAK;qBACN;oBACD,OAAO,CAAC,CAAC;wBACP,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAA;wBACxB,EAAE,CAAC,YAAY,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAA;wBAChD,IAAI,CAAC,KAAK,EAAE,CAAA;wBACZ,QAAQ,CAAC,EAAE,CAAC,CAAA;wBACZ,yKAAyK;wBACzK,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAA;qBACzC;iBACF;gBACD,OAAO,IAAI,CAAA;aACZ;YACD,OAAO,KAAK,CAAA;QACd,CAAC;KACF,CAAC,CAAA;IAEF,MAAM,kBAAkB,GAAG,WAAW,CACpC,CAAC,CAAgB,EAAE,EAAE;QACnB,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;QAClB,IAAI,CAAC,CAAC,IAAI,KAAK,aAAa,EAAE;YAC5B,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;gBAC3B,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;YACpB,CAAC,CAAC,CAAA;SACH;QACD,OAAO,CAAC,aAAa,CAAC,iBAAiB,CAAC,aAAa,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAA;IACvE,CAAC,EACD,CAAC,OAAO,CAAC,CACV,CAAA;IACD,MAAM,kBAAkB,GAAG,WAAW,CACpC,CAAC,CAAgB,EAAE,EAAE;QACnB,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;QAClB,IAAI,CAAC,CAAC,IAAI,KAAK,aAAa,EAAE;YAC5B,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;gBAC3B,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;YACpB,CAAC,CAAC,CAAA;SACH;QACD,OAAO,CAAC,aAAa,CAAC,iBAAiB,CAAC,aAAa,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAA;IACvE,CAAC,EACD,CAAC,OAAO,CAAC,CACV,CAAA;IAED,MAAM,UAAU,GAAG,CAAC,SAAoB,EAAE,QAAgB,EAAE,EAAE;QAC5D,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,QAAQ,CAAC,CAAA;QAC9D,IAAI,MAAM,EAAE;YACV,MAAM,UAAU,GAAG,SAAS,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,IAAI,CAC1D,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,QAAQ,CACxB,CAAA;YACD,OAAO,UAAU,CAAA;SAClB;QACD,OAAO,MAAM,CAAA;IACf,CAAC,CAAA;IAED,MAAM,iBAAiB,GAAG,WAAW,CACnC,CAAC,CAAmB,EAAE,EAAE;QACtB,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAA;QACjC,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,IAAK,CAAC,CAAC,MAAsB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;QACtE,IAAI,CAAC,MAAM,EAAE;YACX,OAAM;SACP;QACD,IAAI,CAAC,UAAU,EAAE;YACf,OAAM;SACP;QACD,MAAM,EAAE,SAAS,EAAE,GAAG,UAAU,CAAA;QAEhC,MAAM,MAAM,GAAG,MAAM,CAAC,YAAY,CAAC,aAAa,CAAC,CAAA;QACjD,MAAM,QAAQ,GAAG,MAAM,CAAC,YAAY,CAAC,eAAe,CAAC,CAAA;QAErD,IAAI,MAAM,IAAI,QAAQ,EAAE;YACtB,MAAM,MAAM,GAAG,UAAU,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAA;YAC9C,IAAI,MAAM,EAAE;gBACV,IAAI,MAAM,KAAK,QAAQ,EAAE;oBACvB,kBAAkB,CAAC,MAAM,CAAC,CAAA;iBAC3B;qBAAM,IAAI,MAAM,KAAK,QAAQ,EAAE;oBAC9B,kBAAkB,CAAC,MAAM,CAAC,CAAA;iBAC3B;gBACD,IACE,MAAM,CAAC,IAAI,KAAK,aAAa;oBAC7B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,SAAS;oBACnC,IAAI;oBACJ,QAAQ,EACR;oBACA,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC,CAAA;iBACzD;aACF;SACF;IACH,CAAC,EACD,CAAC,kBAAkB,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM,CAAC,CAC7D,CAAA;IAED,OAAO,CACL;QACG,KAAK,IAAI,CACR,oBAAC,MAAM,IACL,MAAM,EAAE,IAAI,EACZ,QAAQ,EAAE,QAAQ,CAAC,KAAK,EACxB,MAAM,EAAE,0BAA0B,EAClC,OAAO,EAAE,wCAAwC,EACjD,OAAO,EAAE;gBACP,OAAO,EAAE;oBACP,MAAM,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC;iBAC3B;aACF,GACD,CACH;QACD,oBAAC,SAAS,IAAC,KAAK,EAAC,SAAS,GAAG;QAE7B,6BAAK,EAAE,EAAC,gBAAgB,EAAC,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,iBAAiB;YAC5D,6BAAK,EAAE,EAAC,QAAQ,EAAC,GAAG,EAAE,QAAQ,GAAQ,CAClC,CACL,CACJ,CAAA;AACH,CAAC,CAAA;AAED;;;GAGG;AACH,MAAM,6BAA6B,GAAG,CACpC,MAAoC,EACpC,UAAiC,EACjC,KAA8B,EAC9B,IAAoB,EACpB,EAAE;IACF,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAA;IACjC,IAAI,CAAC,IAAI,EAAE;QACT,OAAM;KACP;IAED,MAAM,WAAW,GAAG,0BAA0B,CAC5C,UAAU,EACV,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC,KAAK,CAAC,cAAc,CACpD,CAAA;IAED,IAAI,WAAW,EAAE;QACf,MAAM,OAAO,GAAG,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,MAAM,CAC9C,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC,KAAK,CAAC,MAAM,CAChD,CAAA;QACD,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAC5C,iBAAiB,CAAC,IAAkB,CAAC,CACtC,CAAA;QAED,IAAI,WAAW,EAAE;YACf,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,CAAA;SACrE;aAAM;YACL,MAAM,SAAS,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;YAChC,YAAY,CACV,IAAI,EACJ,QAAQ,EACR,KAAK,EACL,CAAC,SAAS;gBACR,WAAW,CAAC,GAAG,GAAG,SAAS,CAAC,GAAG,GAAG,SAAS,CAAC,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC;gBAC9D,WAAW,CAAC,GAAG,GAAG,CAAC,CACtB,CAAA;SACF;KACF;SAAM;QACL,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAC5C,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,CAC/B,CAAA;QACD,IAAI,CAAC,KAAK,EAAE,CAAA;QACZ,QAAQ,CAAC,WAAW,CAAC,CAAA;QACrB,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAA;KACzC;AACH,CAAC,CAAA;AAED;;;GAGG;AACH,MAAM,gCAAgC,GAAG,CACvC,MAAoC,EACpC,IAAqB,EACrB,GAAW,EACX,KAA8B,EAC9B,EAAE;IACF,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAA;IACjC,IAAI,CAAC,IAAI,EAAE;QACT,OAAM;KACP;IAED,IAAI,aAAa,GAAG,CAAC,EACnB,gBAAgB,GAAG,CAAC,CAAA;IACtB,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE;QACjC,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC,KAAK,CAAC,UAAU,EAAE;YACzC,aAAa,GAAG,OAAO,CAAA;YACvB,gBAAgB;gBACd,iBAAiB,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,CAAA;SAC3E;IACH,CAAC,CAAC,CAAA;IAEF,MAAM,MAAM,GAAG,gBAAgB,CAC7B,IAAI,EACJ,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CACxC,CAAA;IACf,IAAI,iBAAiB,CAAC,MAAM,CAAC,EAAE;QAC7B,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,CAAA;KAC3D;SAAM;QACL,YAAY,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,aAAa,GAAG,gBAAgB,CAAC,CAAA;KACtE;AACH,CAAC,CAAA;AAED,MAAM,iBAAiB,GAAG,CAAC,MAAkB,EAAE,EAAE,CAC/C,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAA;AAEpC,MAAM,YAAY,GAAG,CACnB,IAA0B,EAC1B,QAAmC,EACnC,KAA8B,EAC9B,GAAW,EACX,EAAE;IACF,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC;QAC1D,GAAG,KAAK;QACR,EAAE,EAAE,UAAU,CAAC,WAAW,CAAC,MAAM,CAAC;KACnC,CAAe,CAAA;IAChB,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;IAC5C,QAAQ,CAAC,EAAE,CAAC,CAAA;AACd,CAAC,CAAA;AAED,eAAe,aAAa,CAAA"}
|
@@ -7,37 +7,162 @@
|
|
7
7
|
*
|
8
8
|
* The Original Developer is the Initial Developer. The Initial Developer of the Original Code is Atypon Systems LLC.
|
9
9
|
*
|
10
|
-
* All portions of the code written by Atypon Systems LLC are Copyright (c)
|
10
|
+
* All portions of the code written by Atypon Systems LLC are Copyright (c) 2024 Atypon Systems LLC. All Rights Reserved.
|
11
11
|
*/
|
12
12
|
import { CHANGE_OPERATION, CHANGE_STATUS, ChangeSet, } from '@manuscripts/track-changes-plugin';
|
13
|
-
import
|
13
|
+
import { schema } from '@manuscripts/transform';
|
14
|
+
import parse from 'html-react-parser';
|
15
|
+
import React, { useEffect, useState } from 'react';
|
14
16
|
import styled from 'styled-components';
|
15
|
-
|
17
|
+
import { getFootnoteText, getInlineFootnoteContent, } from '../../../lib/footnotes';
|
18
|
+
import { changeOperationAlias } from '../../../lib/tracking';
|
19
|
+
import { getParentNode } from '../../../lib/utils';
|
20
|
+
import { useStore } from '../../../store';
|
21
|
+
export const SuggestionSnippet = ({ suggestion, }) => {
|
22
|
+
const [{ doc, view }] = useStore((store) => ({
|
23
|
+
view: store.view,
|
24
|
+
doc: store.doc,
|
25
|
+
}));
|
26
|
+
const [snippet, setSnippet] = useState(null);
|
27
|
+
const [message, setMessage] = useState('');
|
16
28
|
const { dataTracked } = suggestion;
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
29
|
+
useEffect(() => {
|
30
|
+
const getSnippetData = () => {
|
31
|
+
if (ChangeSet.isTextChange(suggestion)) {
|
32
|
+
const parentNode = getParentNode(view.state, suggestion.from);
|
33
|
+
if (parentNode?.type === schema.nodes.footnote) {
|
34
|
+
return {
|
35
|
+
snippet: {
|
36
|
+
operation: changeOperationAlias(dataTracked.operation),
|
37
|
+
nodeName: parentNode.type.name || suggestion.nodeType.name,
|
38
|
+
content: suggestion.text,
|
39
|
+
},
|
40
|
+
message: '',
|
41
|
+
};
|
42
|
+
}
|
43
|
+
else {
|
44
|
+
return { snippet: null, message: suggestion.text };
|
45
|
+
}
|
46
|
+
}
|
47
|
+
if (ChangeSet.isNodeChange(suggestion)) {
|
48
|
+
if (suggestion.node.type === schema.nodes.inline_footnote) {
|
49
|
+
return {
|
50
|
+
snippet: {
|
51
|
+
operation: changeOperationAlias(dataTracked.operation),
|
52
|
+
nodeName: suggestion.node.type.spec.name,
|
53
|
+
content: getInlineFootnoteContent(doc, suggestion.attrs),
|
54
|
+
},
|
55
|
+
message: '',
|
56
|
+
};
|
57
|
+
}
|
58
|
+
else if (suggestion.node.type === schema.nodes.footnote) {
|
59
|
+
return {
|
60
|
+
snippet: {
|
61
|
+
operation: changeOperationAlias(dataTracked.operation),
|
62
|
+
nodeName: suggestion.node.type.name,
|
63
|
+
content: getFootnoteText(view.state, suggestion.node),
|
64
|
+
},
|
65
|
+
message: '',
|
66
|
+
};
|
67
|
+
}
|
68
|
+
else {
|
69
|
+
return {
|
70
|
+
snippet: null,
|
71
|
+
message: `${suggestion.node.type.name
|
72
|
+
.charAt(0)
|
73
|
+
.toUpperCase()}${suggestion.node.type.name.slice(1)} ${dataTracked.operation}`,
|
74
|
+
};
|
75
|
+
}
|
76
|
+
}
|
77
|
+
if (ChangeSet.isNodeAttrChange(suggestion)) {
|
78
|
+
if (suggestion.node.type === schema.nodes.inline_footnote) {
|
79
|
+
return {
|
80
|
+
snippet: {
|
81
|
+
operation: changeOperationAlias(dataTracked.operation),
|
82
|
+
nodeName: suggestion.node.type.spec.name,
|
83
|
+
content: getInlineFootnoteContent(doc, suggestion.newAttrs),
|
84
|
+
},
|
85
|
+
message: '',
|
86
|
+
};
|
87
|
+
}
|
88
|
+
else if (suggestion.node.type === schema.nodes.footnote) {
|
89
|
+
return {
|
90
|
+
snippet: {
|
91
|
+
operation: changeOperationAlias(dataTracked.operation),
|
92
|
+
nodeName: suggestion.node.type.name,
|
93
|
+
content: getFootnoteText(view.state, suggestion.node),
|
94
|
+
},
|
95
|
+
message: '',
|
96
|
+
};
|
97
|
+
}
|
98
|
+
else {
|
99
|
+
return {
|
100
|
+
snippet: null,
|
101
|
+
message: `${suggestion.node.type.name
|
102
|
+
.charAt(0)
|
103
|
+
.toUpperCase()}${suggestion.node.type.name.slice(1)} ${dataTracked.operation}`,
|
104
|
+
};
|
105
|
+
}
|
106
|
+
}
|
107
|
+
return { snippet: null, message: 'Unknown change!' };
|
108
|
+
};
|
109
|
+
const { snippet: newSnippet, message: newMessage } = getSnippetData();
|
110
|
+
setSnippet(newSnippet);
|
111
|
+
setMessage(newMessage);
|
112
|
+
}, [suggestion, doc, view.state, dataTracked.operation]);
|
113
|
+
return (React.createElement(SnippetText, { isRejected: dataTracked.status === CHANGE_STATUS.rejected }, snippet ? (React.createElement(React.Fragment, null,
|
114
|
+
React.createElement(Operation, { color: dataTracked.operation },
|
115
|
+
snippet.operation,
|
116
|
+
":"),
|
117
|
+
React.createElement(NodeName, null,
|
118
|
+
snippet.nodeName,
|
119
|
+
":"),
|
120
|
+
React.createElement(Content, null, parse(snippet.content)))) : dataTracked.operation === CHANGE_OPERATION.delete ? (React.createElement("del", null, message)) : (message)));
|
31
121
|
};
|
32
|
-
const
|
122
|
+
const SnippetText = styled.div `
|
33
123
|
font-size: ${(props) => props.theme.font.size.small};
|
34
124
|
line-height: ${(props) => props.theme.font.lineHeight.normal};
|
35
|
-
`;
|
36
|
-
const SnippetText = styled(Text) `
|
37
125
|
width: 100%;
|
38
126
|
white-space: nowrap;
|
39
127
|
overflow: hidden;
|
40
|
-
text-overflow: ellipsis;
|
41
128
|
color: ${(props) => props.theme.colors.text.primary};
|
129
|
+
display: block;
|
130
|
+
text-overflow: ellipsis;
|
131
|
+
`;
|
132
|
+
const Operation = styled.span `
|
133
|
+
font-family: Lato, sans-serif;
|
134
|
+
font-size: 12px;
|
135
|
+
font-weight: 700;
|
136
|
+
text-transform: capitalize;
|
137
|
+
line-height: 16px;
|
138
|
+
margin-right: 3.2px;
|
139
|
+
color: ${(props) => {
|
140
|
+
switch (props.color) {
|
141
|
+
case 'insert':
|
142
|
+
return '#01872E';
|
143
|
+
case 'delete':
|
144
|
+
return '#F35143';
|
145
|
+
case 'set_attrs':
|
146
|
+
return '#0284B0';
|
147
|
+
default:
|
148
|
+
return '#353535';
|
149
|
+
}
|
150
|
+
}};
|
151
|
+
`;
|
152
|
+
const NodeName = styled.span `
|
153
|
+
text-transform: capitalize;
|
154
|
+
color: #353535;
|
155
|
+
font-family: Lato, sans-serif;
|
156
|
+
font-size: 12px;
|
157
|
+
font-weight: bold;
|
158
|
+
line-height: 16px;
|
159
|
+
margin-right: 3.2px;
|
160
|
+
`;
|
161
|
+
const Content = styled.span `
|
162
|
+
color: #353535;
|
163
|
+
font-family: Lato, sans-serif;
|
164
|
+
font-size: 12px;
|
165
|
+
font-weight: 400;
|
166
|
+
line-height: 16px;
|
42
167
|
`;
|
43
168
|
//# sourceMappingURL=SuggestionSnippet.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"SuggestionSnippet.js","sourceRoot":"","sources":["../../../../../src/components/track-changes/suggestion-list/SuggestionSnippet.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;
|
1
|
+
{"version":3,"file":"SuggestionSnippet.js","sourceRoot":"","sources":["../../../../../src/components/track-changes/suggestion-list/SuggestionSnippet.tsx"],"names":[],"mappings":"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"}
|
@@ -9,19 +9,14 @@
|
|
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 { usePermissions } from '@manuscripts/style-guide';
|
13
12
|
import { trackCommands } from '@manuscripts/track-changes-plugin';
|
14
|
-
import { getDocWithoutTrackContent } from '../quarterback/getDocWithoutTrackContent';
|
15
13
|
import { useStore } from '../store';
|
16
14
|
import useExecCmd from './use-exec-cmd';
|
17
15
|
export const useHandleSnapshot = (view) => {
|
18
|
-
const [{
|
16
|
+
const [{ createSnapshot, beforeUnload }] = useStore((store) => ({
|
19
17
|
createSnapshot: store.createSnapshot,
|
20
|
-
saveDoc: store.saveDoc,
|
21
18
|
beforeUnload: store.beforeUnload,
|
22
19
|
}));
|
23
|
-
const can = usePermissions();
|
24
|
-
const canApplySaveChanges = can.applySaveChanges;
|
25
20
|
const execCmd = useExecCmd();
|
26
21
|
return async () => {
|
27
22
|
if (!view) {
|
@@ -31,23 +26,6 @@ export const useHandleSnapshot = (view) => {
|
|
31
26
|
beforeUnload && beforeUnload();
|
32
27
|
await createSnapshot();
|
33
28
|
execCmd(trackCommands.applyAndRemoveChanges(), view);
|
34
|
-
return new Promise((resolve, reject) => {
|
35
|
-
setTimeout(() => {
|
36
|
-
const state = view.state;
|
37
|
-
if (!state) {
|
38
|
-
reject(new Error('State is not available'));
|
39
|
-
return;
|
40
|
-
}
|
41
|
-
if (!canApplySaveChanges) {
|
42
|
-
return resolve();
|
43
|
-
}
|
44
|
-
saveDoc(getDocWithoutTrackContent(state))
|
45
|
-
.then(() => {
|
46
|
-
resolve();
|
47
|
-
})
|
48
|
-
.catch(() => reject(new Error('Cannot save to api. Check connection.')));
|
49
|
-
}, 900); // to avoid potentially saving before the changes are applied
|
50
|
-
});
|
51
29
|
};
|
52
30
|
};
|
53
31
|
//# sourceMappingURL=use-handle-snapshot.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"use-handle-snapshot.js","sourceRoot":"","sources":["../../../src/hooks/use-handle-snapshot.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,EAAE,
|
1
|
+
{"version":3,"file":"use-handle-snapshot.js","sourceRoot":"","sources":["../../../src/hooks/use-handle-snapshot.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAA;AAGjE,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAA;AACnC,OAAO,UAAU,MAAM,gBAAgB,CAAA;AAEvC,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,IAAiB,EAAE,EAAE;IACrD,MAAM,CAAC,EAAE,cAAc,EAAE,YAAY,EAAE,CAAC,GAAG,QAAQ,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAC9D,cAAc,EAAE,KAAK,CAAC,cAAc;QACpC,YAAY,EAAE,KAAK,CAAC,YAAY;KACjC,CAAC,CAAC,CAAA;IACH,MAAM,OAAO,GAAG,UAAU,EAAE,CAAA;IAE5B,OAAO,KAAK,IAAI,EAAE;QAChB,IAAI,CAAC,IAAI,EAAE;YACT,OAAM;SACP;QACD,iJAAiJ;QACjJ,YAAY,IAAI,YAAY,EAAE,CAAA;QAC9B,MAAM,cAAc,EAAE,CAAA;QACtB,OAAO,CAAC,aAAa,CAAC,qBAAqB,EAAE,EAAE,IAAI,CAAC,CAAA;IACtD,CAAC,CAAA;AACH,CAAC,CAAA"}
|
@@ -0,0 +1,43 @@
|
|
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 { findPluginByKey, getNodeTextContent } from './utils';
|
13
|
+
export const findFootnoteById = (doc, id) => {
|
14
|
+
let footnoteNode = null;
|
15
|
+
doc.descendants((node) => {
|
16
|
+
if (node.type.name === 'footnote' && node.attrs.id === id) {
|
17
|
+
footnoteNode = node;
|
18
|
+
return false; // stop traversal
|
19
|
+
}
|
20
|
+
if (footnoteNode) {
|
21
|
+
return false;
|
22
|
+
}
|
23
|
+
return true; // continue traversal
|
24
|
+
});
|
25
|
+
return footnoteNode;
|
26
|
+
};
|
27
|
+
export const getInlineFootnoteContent = (doc, attrs) => {
|
28
|
+
let footnote = null;
|
29
|
+
if (attrs.rids && attrs.rids.length > 0) {
|
30
|
+
footnote = findFootnoteById(doc, attrs.rids[0]);
|
31
|
+
}
|
32
|
+
return `<sup class="footnote-decoration">${attrs.contents ? attrs.contents : ''}</sup>${footnote ? footnote.textContent : ''}`;
|
33
|
+
};
|
34
|
+
export const getFootnoteText = (state, node) => {
|
35
|
+
const footnotesPlugin = findPluginByKey(state, 'footnotes');
|
36
|
+
const pluginState = footnotesPlugin?.getState(state);
|
37
|
+
let decorationText = '';
|
38
|
+
if (pluginState) {
|
39
|
+
decorationText = pluginState.labels.get(node.attrs.id);
|
40
|
+
}
|
41
|
+
return `<sup class="footnote-decoration">${decorationText ? decorationText : ''}</sup>${getNodeTextContent(node)}`;
|
42
|
+
};
|
43
|
+
//# sourceMappingURL=footnotes.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"footnotes.js","sourceRoot":"","sources":["../../../src/lib/footnotes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAIH,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAA;AAE7D,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC9B,GAAmB,EACnB,EAAU,EACa,EAAE;IACzB,IAAI,YAAY,GAA0B,IAAI,CAAA;IAE9C,GAAG,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,EAAE;QACvB,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,UAAU,IAAI,IAAI,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,EAAE;YACzD,YAAY,GAAG,IAAI,CAAA;YACnB,OAAO,KAAK,CAAA,CAAC,iBAAiB;SAC/B;QACD,IAAI,YAAY,EAAE;YAChB,OAAO,KAAK,CAAA;SACb;QACD,OAAO,IAAI,CAAA,CAAC,qBAAqB;IACnC,CAAC,CAAC,CAAA;IACF,OAAO,YAAY,CAAA;AACrB,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,wBAAwB,GAAG,CACtC,GAAmB,EACnB,KAAuB,EACf,EAAE;IACV,IAAI,QAAQ,GAAG,IAAI,CAAA;IACnB,IAAI,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE;QACvC,QAAQ,GAAG,gBAAgB,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;KAChD;IACD,OAAO,oCACL,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,EACpC,SAAS,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE,CAAA;AACjD,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,eAAe,GAAG,CAC7B,KAA4B,EAC5B,IAAoB,EACpB,EAAE;IACF,MAAM,eAAe,GAAG,eAAe,CAAC,KAAK,EAAE,WAAW,CAAC,CAAA;IAC3D,MAAM,WAAW,GAAG,eAAe,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAA;IACpD,IAAI,cAAc,GAAG,EAAE,CAAA;IACvB,IAAI,WAAW,EAAE;QACf,cAAc,GAAG,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;KACvD;IACD,OAAO,oCACL,cAAc,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,EACpC,SAAS,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAA;AACrC,CAAC,CAAA"}
|
package/dist/es/lib/tracking.js
CHANGED
@@ -20,4 +20,20 @@ export const trackEvent = ({ category, action, label, value }) => {
|
|
20
20
|
});
|
21
21
|
}
|
22
22
|
};
|
23
|
+
export const changeOperationAlias = (operation) => {
|
24
|
+
switch (operation) {
|
25
|
+
case 'delete': {
|
26
|
+
return 'Deleted';
|
27
|
+
}
|
28
|
+
case 'insert': {
|
29
|
+
return 'Inserted';
|
30
|
+
}
|
31
|
+
case 'set_attrs': {
|
32
|
+
return 'Updated';
|
33
|
+
}
|
34
|
+
default: {
|
35
|
+
return 'null';
|
36
|
+
}
|
37
|
+
}
|
38
|
+
};
|
23
39
|
//# sourceMappingURL=tracking.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"tracking.js","sourceRoot":"","sources":["../../../src/lib/tracking.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAqBH,MAAM,CAAC,MAAM,UAAU,GAAe,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE;IAC3E,IAAI,MAAM,CAAC,EAAE,EAAE;QACb,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE;YAChB,OAAO,EAAE,OAAO;YAChB,aAAa,EAAE,QAAQ;YACvB,WAAW,EAAE,MAAM;YACnB,UAAU,EAAE,KAAK;YACjB,UAAU,EAAE,KAAK;SAClB,CAAC,CAAA;KACH;AACH,CAAC,CAAA"}
|
1
|
+
{"version":3,"file":"tracking.js","sourceRoot":"","sources":["../../../src/lib/tracking.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAqBH,MAAM,CAAC,MAAM,UAAU,GAAe,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE;IAC3E,IAAI,MAAM,CAAC,EAAE,EAAE;QACb,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE;YAChB,OAAO,EAAE,OAAO;YAChB,aAAa,EAAE,QAAQ;YACvB,WAAW,EAAE,MAAM;YACnB,UAAU,EAAE,KAAK;YACjB,UAAU,EAAE,KAAK;SAClB,CAAC,CAAA;KACH;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,SAAiB,EAAU,EAAE;IAChE,QAAQ,SAAS,EAAE;QACjB,KAAK,QAAQ,CAAC,CAAC;YACb,OAAO,SAAS,CAAA;SACjB;QACD,KAAK,QAAQ,CAAC,CAAC;YACb,OAAO,UAAU,CAAA;SAClB;QACD,KAAK,WAAW,CAAC,CAAC;YAChB,OAAO,SAAS,CAAA;SACjB;QACD,OAAO,CAAC,CAAC;YACP,OAAO,MAAM,CAAA;SACd;KACF;AACH,CAAC,CAAA"}
|
@@ -0,0 +1,35 @@
|
|
1
|
+
export const getNodeTextContent = (node) => {
|
2
|
+
let textContent = '';
|
3
|
+
// Traverse the node and its descendants
|
4
|
+
node.forEach((child) => {
|
5
|
+
if (child.isText) {
|
6
|
+
// If the child is a text node, add its text content
|
7
|
+
textContent += child.text;
|
8
|
+
}
|
9
|
+
else {
|
10
|
+
// If the child is not a text node, recursively collect text content
|
11
|
+
textContent += getNodeTextContent(child);
|
12
|
+
}
|
13
|
+
});
|
14
|
+
return textContent;
|
15
|
+
};
|
16
|
+
export const findPluginByKey = (state, keyName) => {
|
17
|
+
for (let i = 0; i < state.plugins.length; i++) {
|
18
|
+
const plugin = state.plugins[i];
|
19
|
+
if (plugin.key === keyName + '$') {
|
20
|
+
return plugin;
|
21
|
+
}
|
22
|
+
}
|
23
|
+
return null;
|
24
|
+
};
|
25
|
+
export const getParentNode = (state, pos) => {
|
26
|
+
const resolvedPos = state.doc.resolve(pos);
|
27
|
+
for (let depth = resolvedPos.depth; depth > 0; depth--) {
|
28
|
+
const parent = resolvedPos.node(depth);
|
29
|
+
if (parent.isTextblock === false) {
|
30
|
+
return parent;
|
31
|
+
}
|
32
|
+
}
|
33
|
+
return null;
|
34
|
+
};
|
35
|
+
//# sourceMappingURL=utils.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/lib/utils.ts"],"names":[],"mappings":"AAkBA,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,IAAoB,EAAE,EAAE;IACzD,IAAI,WAAW,GAAG,EAAE,CAAA;IAEpB,wCAAwC;IACxC,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;QACrB,IAAI,KAAK,CAAC,MAAM,EAAE;YAChB,oDAAoD;YACpD,WAAW,IAAI,KAAK,CAAC,IAAI,CAAA;SAC1B;aAAM;YACL,oEAAoE;YACpE,WAAW,IAAI,kBAAkB,CAAC,KAAK,CAAC,CAAA;SACzC;IACH,CAAC,CAAC,CAAA;IAEF,OAAO,WAAW,CAAA;AACpB,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,eAAe,GAAG,CAC7B,KAA4B,EAC5B,OAAe,EACQ,EAAE;IACzB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QAC7C,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAmB,CAAA;QAEjD,IAAI,MAAM,CAAC,GAAG,KAAK,OAAO,GAAG,GAAG,EAAE;YAChC,OAAO,MAAM,CAAA;SACd;KACF;IAED,OAAO,IAAI,CAAA;AACb,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,KAAkB,EAAE,GAAW,EAAE,EAAE;IAC/D,MAAM,WAAW,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;IAE1C,KAAK,IAAI,KAAK,GAAG,WAAW,CAAC,KAAK,EAAE,KAAK,GAAG,CAAC,EAAE,KAAK,EAAE,EAAE;QACtD,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QACtC,IAAI,MAAM,CAAC,WAAW,KAAK,KAAK,EAAE;YAChC,OAAO,MAAM,CAAA;SACd;KACF;IAED,OAAO,IAAI,CAAA;AACb,CAAC,CAAA"}
|
@@ -9,64 +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 {
|
13
|
-
import { encode } from '@manuscripts/transform';
|
12
|
+
import { ObjectTypes } from '@manuscripts/json-schema';
|
14
13
|
import { getUserRole } from '../lib/roles';
|
15
14
|
export const buildUtilities = (projectID, manuscriptID, getState, updateState, api) => {
|
16
|
-
const updateContainerIDs = (model) => {
|
17
|
-
const containerIDs = {
|
18
|
-
containerID: projectID,
|
19
|
-
};
|
20
|
-
if (!model._id) {
|
21
|
-
throw new Error('Model ID required');
|
22
|
-
}
|
23
|
-
if (manuscriptIDTypes.has(model.objectType)) {
|
24
|
-
containerIDs.manuscriptID = manuscriptID;
|
25
|
-
}
|
26
|
-
return {
|
27
|
-
...model,
|
28
|
-
...containerIDs,
|
29
|
-
};
|
30
|
-
};
|
31
|
-
const saveProject = async (models) => {
|
32
|
-
try {
|
33
|
-
const filtered = models.filter((m) => m.objectType !== ObjectTypes.Project);
|
34
|
-
await api.saveProject(projectID, filtered);
|
35
|
-
return true;
|
36
|
-
}
|
37
|
-
catch (e) {
|
38
|
-
return false;
|
39
|
-
}
|
40
|
-
};
|
41
|
-
const saveModels = async (models) => {
|
42
|
-
const state = getState();
|
43
|
-
if (!state.project || !state.manuscript) {
|
44
|
-
throw new Error('Unable to save due to incomplete data');
|
45
|
-
}
|
46
|
-
const modelMap = new Map();
|
47
|
-
for (const model of models) {
|
48
|
-
if (!model._id) {
|
49
|
-
throw new Error('Model ID required');
|
50
|
-
}
|
51
|
-
const updated = updateContainerIDs(model);
|
52
|
-
modelMap.set(model._id, updated);
|
53
|
-
}
|
54
|
-
modelMap.set(state.project._id, state.project);
|
55
|
-
modelMap.set(state.manuscript._id, state.manuscript);
|
56
|
-
updateState({
|
57
|
-
savingProcess: 'saving',
|
58
|
-
preventUnload: true,
|
59
|
-
});
|
60
|
-
const result = await saveProject([...modelMap.values()]);
|
61
|
-
updateState({
|
62
|
-
savingProcess: result ? 'saved' : 'failed',
|
63
|
-
preventUnload: false,
|
64
|
-
});
|
65
|
-
};
|
66
|
-
const saveDoc = async (doc) => {
|
67
|
-
const models = encode(doc);
|
68
|
-
await saveModels([...models.values()]);
|
69
|
-
};
|
70
15
|
const createSnapshot = async () => {
|
71
16
|
const state = getState();
|
72
17
|
const snapshots = state.snapshots;
|
@@ -101,7 +46,6 @@ export const buildUtilities = (projectID, manuscriptID, getState, updateState, a
|
|
101
46
|
});
|
102
47
|
};
|
103
48
|
return {
|
104
|
-
saveDoc,
|
105
49
|
createSnapshot,
|
106
50
|
refreshProject,
|
107
51
|
};
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"buildUtilities.js","sourceRoot":"","sources":["../../../src/postgres-data/buildUtilities.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,
|
1
|
+
{"version":3,"file":"buildUtilities.js","sourceRoot":"","sources":["../../../src/postgres-data/buildUtilities.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,WAAW,EAAW,MAAM,0BAA0B,CAAA;AAE/D,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAI1C,MAAM,CAAC,MAAM,cAAc,GAAG,CAC5B,SAAiB,EACjB,YAAoB,EACpB,QAA8B,EAC9B,WAA4C,EAC5C,GAAQ,EACQ,EAAE;IAClB,MAAM,cAAc,GAAG,KAAK,IAAI,EAAE;QAChC,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAA;QACxB,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAA;QACjC,MAAM,YAAY,GAAG,KAAK,CAAC,YAAY,CAAA;QACvC,IAAI,CAAC,SAAS,IAAI,CAAC,YAAY,EAAE;YAC/B,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAA;SACpE;QACD,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,SAAS,EAAE,YAAY,CAAC,CAAA;QAC9D,MAAM,EAAE,QAAQ,EAAE,GAAG,KAAK,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAA;QAC5C,WAAW,CAAC;YACV,SAAS,EAAE,CAAC,GAAG,SAAS,EAAE,KAAK,CAAC;YAChC,YAAY,EAAE,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC;SACxD,CAAC,CAAA;IACJ,CAAC,CAAA;IAED,MAAM,cAAc,GAAG,KAAK,IAAI,EAAE;QAChC,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAA;QACxB,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAA;QAC3B,IAAI,CAAC,MAAM,EAAE;YACX,OAAM;SACP;QACD,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,aAAa,CAAC,SAAS,EAAE,YAAY,CAAC,CAAA;QAC/D,IAAI,CAAC,MAAM,EAAE;YACX,OAAM;SACP;QACD,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAC3B,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,KAAK,WAAW,CAAC,OAAO,CAC5C,CAAC,CAAC,CAAY,CAAA;QACf,IAAI,CAAC,OAAO,EAAE;YACZ,OAAM;SACP;QACD,WAAW,CAAC;YACV,OAAO;YACP,QAAQ,EAAE,WAAW,CAAC,OAAO,EAAE,MAAM,CAAC;SACvC,CAAC,CAAA;IACJ,CAAC,CAAA;IAED,OAAO;QACL,cAAc;QACd,cAAc;KACf,CAAA;AACH,CAAC,CAAA"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Store.js","sourceRoot":"","sources":["../../../src/store/Store.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAmBH,OAAO,EAAE,qBAAqB,EAA2B,MAAM,GAAG,CAAA;
|
1
|
+
{"version":3,"file":"Store.js","sourceRoot":"","sources":["../../../src/store/Store.ts"],"names":[],"mappings":"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"}
|
@@ -7,7 +7,7 @@
|
|
7
7
|
*
|
8
8
|
* The Original Developer is the Initial Developer. The Initial Developer of the Original Code is Atypon Systems LLC.
|
9
9
|
*
|
10
|
-
* All portions of the code written by Atypon Systems LLC are Copyright (c)
|
10
|
+
* All portions of the code written by Atypon Systems LLC are Copyright (c) 2024 Atypon Systems LLC. All Rights Reserved.
|
11
11
|
*/
|
12
12
|
import { TrackedChange } from '@manuscripts/track-changes-plugin';
|
13
13
|
import React from 'react';
|
@@ -0,0 +1,15 @@
|
|
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 { ManuscriptEditorState, ManuscriptNode } from '@manuscripts/transform';
|
13
|
+
export declare const findFootnoteById: (doc: ManuscriptNode, id: string) => ManuscriptNode | null;
|
14
|
+
export declare const getInlineFootnoteContent: (doc: ManuscriptNode, attrs: Record<any, any>) => string;
|
15
|
+
export declare const getFootnoteText: (state: ManuscriptEditorState, node: ManuscriptNode) => string;
|
@@ -25,4 +25,5 @@ interface ManuscriptsTracking extends Tracking {
|
|
25
25
|
}
|
26
26
|
type TrackEvent = (f: InvitationsTracking | ManuscriptsTracking) => void;
|
27
27
|
export declare const trackEvent: TrackEvent;
|
28
|
+
export declare const changeOperationAlias: (operation: string) => string;
|
28
29
|
export {};
|
@@ -0,0 +1,20 @@
|
|
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) 2024 Atypon Systems LLC. All Rights Reserved.
|
11
|
+
*/
|
12
|
+
import { ManuscriptEditorState, ManuscriptNode } from '@manuscripts/transform';
|
13
|
+
import { EditorState, Plugin } from 'prosemirror-state';
|
14
|
+
interface ExtendedPlugin extends Plugin {
|
15
|
+
key: string;
|
16
|
+
}
|
17
|
+
export declare const getNodeTextContent: (node: ManuscriptNode) => string;
|
18
|
+
export declare const findPluginByKey: (state: ManuscriptEditorState, keyName: string) => ExtendedPlugin | null;
|
19
|
+
export declare const getParentNode: (state: EditorState, pos: number) => import("prosemirror-model").Node | null;
|
20
|
+
export {};
|
@@ -65,7 +65,6 @@ export type state = {
|
|
65
65
|
cslStyle?: string;
|
66
66
|
hasPendingSuggestions?: boolean;
|
67
67
|
sectionCategories: SectionCategory[];
|
68
|
-
saveDoc: (doc: ManuscriptNode) => Promise<void>;
|
69
68
|
originalPmDoc?: JSON;
|
70
69
|
};
|
71
70
|
export type reducer = (payload: any, store: state, action?: string) => state;
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@manuscripts/article-editor",
|
3
|
-
"version": "3.1.
|
3
|
+
"version": "3.1.47-LEAN-3911.0",
|
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",
|
@@ -35,21 +35,22 @@
|
|
35
35
|
"@fontsource/lato": "^4.5.10",
|
36
36
|
"@fontsource/pt-sans": "^4.5.11",
|
37
37
|
"@fontsource/pt-serif": "^4.5.11",
|
38
|
-
"@manuscripts/body-editor": "2.0.
|
38
|
+
"@manuscripts/body-editor": "2.0.57-LEAN-3911.1",
|
39
39
|
"@manuscripts/json-schema": "2.2.11",
|
40
40
|
"@manuscripts/library": "1.3.11",
|
41
41
|
"@manuscripts/style-guide": "2.0.19",
|
42
|
-
"@manuscripts/track-changes-plugin": "1.7.
|
43
|
-
"@manuscripts/transform": "2.3.
|
44
|
-
"prosemirror-utils": "^0.9.6",
|
42
|
+
"@manuscripts/track-changes-plugin": "1.7.22",
|
43
|
+
"@manuscripts/transform": "2.3.37-LEAN-3911.0",
|
45
44
|
"@popperjs/core": "^2.11.8",
|
46
45
|
"@reach/tabs": "^0.18.0",
|
47
46
|
"@types/use-sync-external-store": "^0.0.6",
|
48
47
|
"autotrack": "^2.4.1",
|
49
48
|
"axios": "^1.6.7",
|
49
|
+
"html-react-parser": "^5.1.16",
|
50
50
|
"http-status-codes": "^2.2.0",
|
51
51
|
"jwt-decode": "^3.1.2",
|
52
52
|
"lodash": "^4.17.21",
|
53
|
+
"prosemirror-utils": "^0.9.6",
|
53
54
|
"react": "^18.3.1",
|
54
55
|
"react-dnd": "^16.0.1",
|
55
56
|
"react-dnd-html5-backend": "^16.0.1",
|