@manuscripts/transform 1.5.7-LIT-528106 → 1.5.7

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.
@@ -15,7 +15,7 @@
15
15
  * limitations under the License.
16
16
  */
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
- exports.modelsEqual = exports.getTrimmedTextContent = exports.findParentNodeClosestToPos = exports.isInAbstractsSection = exports.isInBibliographySection = exports.isInGraphicalAbstractSection = exports.findNodePositions = exports.iterateChildren = void 0;
18
+ exports.getTrimmedTextContent = exports.findParentNodeClosestToPos = exports.isInAbstractsSection = exports.isInBibliographySection = exports.isInGraphicalAbstractSection = exports.findNodePositions = exports.iterateChildren = void 0;
19
19
  const bibliography_section_1 = require("../schema/nodes/bibliography_section");
20
20
  const graphical_abstract_section_1 = require("../schema/nodes/graphical_abstract_section");
21
21
  function* iterateChildren(node, recurse = false) {
@@ -94,16 +94,3 @@ const getTrimmedTextContent = (node, querySelector) => {
94
94
  return (_b = (_a = node.querySelector(querySelector)) === null || _a === void 0 ? void 0 : _a.textContent) === null || _b === void 0 ? void 0 : _b.trim();
95
95
  };
96
96
  exports.getTrimmedTextContent = getTrimmedTextContent;
97
- function modelsEqual(model, model2) {
98
- for (const v in model) {
99
- for (const v2 in model2) {
100
- const prepV = typeof v == 'object' ? JSON.stringify(v) : v;
101
- const prepV2 = typeof v2 == 'object' ? JSON.stringify(v2) : v2;
102
- if (prepV !== prepV2) {
103
- return false;
104
- }
105
- }
106
- }
107
- return true;
108
- }
109
- exports.modelsEqual = modelsEqual;
@@ -25,7 +25,6 @@ const utils_1 = require("../lib/utils");
25
25
  const schema_1 = require("../schema");
26
26
  const builders_1 = require("./builders");
27
27
  const highlight_markers_1 = require("./highlight-markers");
28
- const id_1 = require("./id");
29
28
  const node_types_1 = require("./node-types");
30
29
  const section_category_1 = require("./section-category");
31
30
  const serializer = prosemirror_model_1.DOMSerializer.fromSchema(schema_1.schema);
@@ -578,7 +577,7 @@ const modelFromNode = (node, parent, path, priority) => {
578
577
  return { model, comments };
579
578
  };
580
579
  exports.modelFromNode = modelFromNode;
581
- const encode = (node, preserveWithRepeatedID = false) => {
580
+ const encode = (node) => {
582
581
  const models = new Map();
583
582
  const priority = {
584
583
  value: 1,
@@ -598,14 +597,8 @@ const encode = (node, preserveWithRepeatedID = false) => {
598
597
  return;
599
598
  }
600
599
  const { model, comments } = (0, exports.modelFromNode)(child, parent, path, priority);
601
- const existingModel = models.get(model._id);
602
- if (existingModel) {
603
- if (preserveWithRepeatedID && !(0, utils_1.modelsEqual)(model, existingModel)) {
604
- model._id = (0, id_1.generateID)(model.objectType);
605
- }
606
- else {
607
- throw Error(`Encountered duplicate ids in models map while encoding: ${model._id}`);
608
- }
600
+ if (models.has(model._id)) {
601
+ throw Error(`Encountered duplicate ids in models map while encoding: ${model._id}`);
609
602
  }
610
603
  comments.forEach((comment) => {
611
604
  const proseMirrorComment = models.get(comment._id);
@@ -84,15 +84,3 @@ export const getTrimmedTextContent = (node, querySelector) => {
84
84
  }
85
85
  return (_b = (_a = node.querySelector(querySelector)) === null || _a === void 0 ? void 0 : _a.textContent) === null || _b === void 0 ? void 0 : _b.trim();
86
86
  };
87
- export function modelsEqual(model, model2) {
88
- for (const v in model) {
89
- for (const v2 in model2) {
90
- const prepV = typeof v == 'object' ? JSON.stringify(v) : v;
91
- const prepV2 = typeof v2 == 'object' ? JSON.stringify(v2) : v2;
92
- if (prepV !== prepV2) {
93
- return false;
94
- }
95
- }
96
- }
97
- return true;
98
- }
@@ -15,11 +15,10 @@
15
15
  */
16
16
  import { DOMSerializer } from 'prosemirror-model';
17
17
  import serializeToXML from 'w3c-xmlserializer';
18
- import { iterateChildren, modelsEqual } from '../lib/utils';
18
+ import { iterateChildren } from '../lib/utils';
19
19
  import { hasGroup, isHighlightMarkerNode, isSectionNode, schema, } from '../schema';
20
20
  import { buildAttribution } from './builders';
21
21
  import { extractHighlightMarkers, isHighlightableModel, } from './highlight-markers';
22
- import { generateID } from './id';
23
22
  import { nodeTypesMap } from './node-types';
24
23
  import { buildSectionCategory } from './section-category';
25
24
  const serializer = DOMSerializer.fromSchema(schema);
@@ -569,7 +568,7 @@ export const modelFromNode = (node, parent, path, priority) => {
569
568
  const comments = [...commentAnnotationsMap.values()];
570
569
  return { model, comments };
571
570
  };
572
- export const encode = (node, preserveWithRepeatedID = false) => {
571
+ export const encode = (node) => {
573
572
  const models = new Map();
574
573
  const priority = {
575
574
  value: 1,
@@ -589,14 +588,8 @@ export const encode = (node, preserveWithRepeatedID = false) => {
589
588
  return;
590
589
  }
591
590
  const { model, comments } = modelFromNode(child, parent, path, priority);
592
- const existingModel = models.get(model._id);
593
- if (existingModel) {
594
- if (preserveWithRepeatedID && !modelsEqual(model, existingModel)) {
595
- model._id = generateID(model.objectType);
596
- }
597
- else {
598
- throw Error(`Encountered duplicate ids in models map while encoding: ${model._id}`);
599
- }
591
+ if (models.has(model._id)) {
592
+ throw Error(`Encountered duplicate ids in models map while encoding: ${model._id}`);
600
593
  }
601
594
  comments.forEach((comment) => {
602
595
  const proseMirrorComment = models.get(comment._id);
@@ -13,7 +13,6 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
- import { Model } from '@manuscripts/json-schema';
17
16
  import { Node as ProsemirrorNode, ResolvedPos } from 'prosemirror-model';
18
17
  import { ManuscriptEditorState, ManuscriptNode } from '../schema';
19
18
  export declare function iterateChildren(node: ManuscriptNode, recurse?: boolean): Iterable<ManuscriptNode>;
@@ -28,4 +27,3 @@ export declare const findParentNodeClosestToPos: ($pos: ResolvedPos, predicate:
28
27
  node: ProsemirrorNode;
29
28
  } | undefined;
30
29
  export declare const getTrimmedTextContent: (node: Element | Document, querySelector: string) => string | null | undefined;
31
- export declare function modelsEqual(model: Model, model2: Model): boolean;
@@ -25,5 +25,5 @@ export declare const modelFromNode: (node: ManuscriptNode, parent: ManuscriptNod
25
25
  interface PrioritizedValue {
26
26
  value: number;
27
27
  }
28
- export declare const encode: (node: ManuscriptNode, preserveWithRepeatedID?: boolean) => Map<string, Model>;
28
+ export declare const encode: (node: ManuscriptNode) => Map<string, Model>;
29
29
  export {};
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@manuscripts/transform",
3
3
  "description": "ProseMirror transformer for Manuscripts applications",
4
- "version": "1.5.7-LIT-528106",
4
+ "version": "1.5.7",
5
5
  "repository": "github:Atypon-OpenSource/manuscripts-transform",
6
6
  "license": "Apache-2.0",
7
7
  "main": "dist/cjs",