pro-editor-schema 0.1.189 → 0.1.191

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/index.d.mts CHANGED
@@ -66,12 +66,12 @@ declare const SPACE_ABOVE_ATTRIBUTE = "data-space-above";
66
66
  declare const SPACE_BELOW_ATTRIBUTE = "data-space-below";
67
67
  declare const INDENT_TYPE_ATTRIBUTE = "data-indent-type";
68
68
  declare const LAYOUT_USER_ATTRIBUTE = "data-layout-user";
69
- declare const LAYOUT_CELL_WIDTH = "data-cell-width";
70
69
  declare const STYLE_NAME_ATTRIBUTE = "data-paragraph-style";
71
- declare const ORIENTATION_ATTRIBUTE = "data-table-orientation";
72
- declare const PLACEMENT_ATTRIBUTE = "data-table-placement";
73
70
  declare const FIGURE_PLACEMENT_ATTRIBUTE = "data-figure-placement";
74
- declare const LAYOUT_ATTRIBUTES: readonly ["data-alignment", "data-left-indent", "data-right-indent", "data-special-indent", "data-space-above", "data-space-below", "data-indent-type", "data-layout-user", "data-cell-width", "data-paragraph-style", "data-table-orientation", "data-table-placement", "data-figure-placement"];
71
+ declare const LAYOUT_CELL_WIDTH_ATTRIBUTE = "data-cell-width";
72
+ declare const LAYOUT_TABLE_ORIENTATION_ATTRIBUTE = "data-table-orientation";
73
+ declare const LAYOUT_TABLE_PLACEMENT_ATTRIBUTE = "data-table-placement";
74
+ declare const LAYOUT_ATTRIBUTES: readonly ["data-alignment", "data-left-indent", "data-right-indent", "data-special-indent", "data-space-above", "data-space-below", "data-indent-type", "data-layout-user", "data-paragraph-style"];
75
75
  declare const TRACK_CHANGES_ATTR_DATA_USERNAME = "data-username";
76
76
  declare const TRACK_CHANGES_ATTR_DATA_USERID = "data-userid";
77
77
  declare const TRACK_CHANGES_ATTR_DATA_TIME = "data-time";
@@ -109,4 +109,4 @@ type ValidationError = {
109
109
  */
110
110
  declare const validateXml: (xml: Element, elementsLinkedTo: readonly string[], schemasToValidateAgainst: SchemaCode[]) => ValidationError[];
111
111
 
112
- export { ALIGNMENT_ATTRIBUTE, ATOM_SCHEMAS, type AllowedChildren, type AtomSchemaCode, type AttributeDefinition, ELEMENT_SCHEMAS, ELE_ID_ATTRIBUTE, ElementLabel, type ElementSchemaCode, FIGURE_PLACEMENT_ATTRIBUTE, type ForbiddenElement, type FreeAttribute, ID_ATTRS, IGNORED_ATTRIBUTES, IGNORED_ATTRIBUTES_STARTS_WITH, IGNORED_ELEMENT_SELECTORS, INDENT_TYPE_ATTRIBUTE, INLINE_ELEMENT_SCHEMAS, type InlineSchemaCode, LAYOUT_ATTRIBUTES, LAYOUT_CELL_WIDTH, LAYOUT_USER_ATTRIBUTE, LEFT_INDENT_ATTRIBUTE, ORIENTATION_ATTRIBUTE, PLACEMENT_ATTRIBUTE, RIGHT_INDENT_ATTRIBUTE, type ResolveTo, type RestrictedAttribute, SCHEMAS, SPACE_ABOVE_ATTRIBUTE, SPACE_BELOW_ATTRIBUTE, SPECIAL_INDENT_ATTRIBUTE, STORE_ATTRIBUTE, STYLE_NAME_ATTRIBUTE, type Schema, type SchemaCode, type SchemaKind, TRACK_CHANGES_ATTRS, TRACK_CHANGES_ATTR_DATA_DATE, TRACK_CHANGES_ATTR_DATA_TIME, TRACK_CHANGES_ATTR_DATA_USERID, TRACK_CHANGES_ATTR_DATA_USERNAME, type ValidationError, type ValidationErrorKind, type ValidationErrorLevel, createElement, findAttributeDefinitionByName, findSchemaByCode, findSchemaByElement, getAttributeName, isAttributeRestricted, isIgnoredAttribute, isIgnoredElement, validateXml };
112
+ export { ALIGNMENT_ATTRIBUTE, ATOM_SCHEMAS, type AllowedChildren, type AtomSchemaCode, type AttributeDefinition, ELEMENT_SCHEMAS, ELE_ID_ATTRIBUTE, ElementLabel, type ElementSchemaCode, FIGURE_PLACEMENT_ATTRIBUTE, type ForbiddenElement, type FreeAttribute, ID_ATTRS, IGNORED_ATTRIBUTES, IGNORED_ATTRIBUTES_STARTS_WITH, IGNORED_ELEMENT_SELECTORS, INDENT_TYPE_ATTRIBUTE, INLINE_ELEMENT_SCHEMAS, type InlineSchemaCode, LAYOUT_ATTRIBUTES, LAYOUT_CELL_WIDTH_ATTRIBUTE, LAYOUT_TABLE_ORIENTATION_ATTRIBUTE, LAYOUT_TABLE_PLACEMENT_ATTRIBUTE, LAYOUT_USER_ATTRIBUTE, LEFT_INDENT_ATTRIBUTE, RIGHT_INDENT_ATTRIBUTE, type ResolveTo, type RestrictedAttribute, SCHEMAS, SPACE_ABOVE_ATTRIBUTE, SPACE_BELOW_ATTRIBUTE, SPECIAL_INDENT_ATTRIBUTE, STORE_ATTRIBUTE, STYLE_NAME_ATTRIBUTE, type Schema, type SchemaCode, type SchemaKind, TRACK_CHANGES_ATTRS, TRACK_CHANGES_ATTR_DATA_DATE, TRACK_CHANGES_ATTR_DATA_TIME, TRACK_CHANGES_ATTR_DATA_USERID, TRACK_CHANGES_ATTR_DATA_USERNAME, type ValidationError, type ValidationErrorKind, type ValidationErrorLevel, createElement, findAttributeDefinitionByName, findSchemaByCode, findSchemaByElement, getAttributeName, isAttributeRestricted, isIgnoredAttribute, isIgnoredElement, validateXml };
package/dist/index.d.ts CHANGED
@@ -66,12 +66,12 @@ declare const SPACE_ABOVE_ATTRIBUTE = "data-space-above";
66
66
  declare const SPACE_BELOW_ATTRIBUTE = "data-space-below";
67
67
  declare const INDENT_TYPE_ATTRIBUTE = "data-indent-type";
68
68
  declare const LAYOUT_USER_ATTRIBUTE = "data-layout-user";
69
- declare const LAYOUT_CELL_WIDTH = "data-cell-width";
70
69
  declare const STYLE_NAME_ATTRIBUTE = "data-paragraph-style";
71
- declare const ORIENTATION_ATTRIBUTE = "data-table-orientation";
72
- declare const PLACEMENT_ATTRIBUTE = "data-table-placement";
73
70
  declare const FIGURE_PLACEMENT_ATTRIBUTE = "data-figure-placement";
74
- declare const LAYOUT_ATTRIBUTES: readonly ["data-alignment", "data-left-indent", "data-right-indent", "data-special-indent", "data-space-above", "data-space-below", "data-indent-type", "data-layout-user", "data-cell-width", "data-paragraph-style", "data-table-orientation", "data-table-placement", "data-figure-placement"];
71
+ declare const LAYOUT_CELL_WIDTH_ATTRIBUTE = "data-cell-width";
72
+ declare const LAYOUT_TABLE_ORIENTATION_ATTRIBUTE = "data-table-orientation";
73
+ declare const LAYOUT_TABLE_PLACEMENT_ATTRIBUTE = "data-table-placement";
74
+ declare const LAYOUT_ATTRIBUTES: readonly ["data-alignment", "data-left-indent", "data-right-indent", "data-special-indent", "data-space-above", "data-space-below", "data-indent-type", "data-layout-user", "data-paragraph-style"];
75
75
  declare const TRACK_CHANGES_ATTR_DATA_USERNAME = "data-username";
76
76
  declare const TRACK_CHANGES_ATTR_DATA_USERID = "data-userid";
77
77
  declare const TRACK_CHANGES_ATTR_DATA_TIME = "data-time";
@@ -109,4 +109,4 @@ type ValidationError = {
109
109
  */
110
110
  declare const validateXml: (xml: Element, elementsLinkedTo: readonly string[], schemasToValidateAgainst: SchemaCode[]) => ValidationError[];
111
111
 
112
- export { ALIGNMENT_ATTRIBUTE, ATOM_SCHEMAS, type AllowedChildren, type AtomSchemaCode, type AttributeDefinition, ELEMENT_SCHEMAS, ELE_ID_ATTRIBUTE, ElementLabel, type ElementSchemaCode, FIGURE_PLACEMENT_ATTRIBUTE, type ForbiddenElement, type FreeAttribute, ID_ATTRS, IGNORED_ATTRIBUTES, IGNORED_ATTRIBUTES_STARTS_WITH, IGNORED_ELEMENT_SELECTORS, INDENT_TYPE_ATTRIBUTE, INLINE_ELEMENT_SCHEMAS, type InlineSchemaCode, LAYOUT_ATTRIBUTES, LAYOUT_CELL_WIDTH, LAYOUT_USER_ATTRIBUTE, LEFT_INDENT_ATTRIBUTE, ORIENTATION_ATTRIBUTE, PLACEMENT_ATTRIBUTE, RIGHT_INDENT_ATTRIBUTE, type ResolveTo, type RestrictedAttribute, SCHEMAS, SPACE_ABOVE_ATTRIBUTE, SPACE_BELOW_ATTRIBUTE, SPECIAL_INDENT_ATTRIBUTE, STORE_ATTRIBUTE, STYLE_NAME_ATTRIBUTE, type Schema, type SchemaCode, type SchemaKind, TRACK_CHANGES_ATTRS, TRACK_CHANGES_ATTR_DATA_DATE, TRACK_CHANGES_ATTR_DATA_TIME, TRACK_CHANGES_ATTR_DATA_USERID, TRACK_CHANGES_ATTR_DATA_USERNAME, type ValidationError, type ValidationErrorKind, type ValidationErrorLevel, createElement, findAttributeDefinitionByName, findSchemaByCode, findSchemaByElement, getAttributeName, isAttributeRestricted, isIgnoredAttribute, isIgnoredElement, validateXml };
112
+ export { ALIGNMENT_ATTRIBUTE, ATOM_SCHEMAS, type AllowedChildren, type AtomSchemaCode, type AttributeDefinition, ELEMENT_SCHEMAS, ELE_ID_ATTRIBUTE, ElementLabel, type ElementSchemaCode, FIGURE_PLACEMENT_ATTRIBUTE, type ForbiddenElement, type FreeAttribute, ID_ATTRS, IGNORED_ATTRIBUTES, IGNORED_ATTRIBUTES_STARTS_WITH, IGNORED_ELEMENT_SELECTORS, INDENT_TYPE_ATTRIBUTE, INLINE_ELEMENT_SCHEMAS, type InlineSchemaCode, LAYOUT_ATTRIBUTES, LAYOUT_CELL_WIDTH_ATTRIBUTE, LAYOUT_TABLE_ORIENTATION_ATTRIBUTE, LAYOUT_TABLE_PLACEMENT_ATTRIBUTE, LAYOUT_USER_ATTRIBUTE, LEFT_INDENT_ATTRIBUTE, RIGHT_INDENT_ATTRIBUTE, type ResolveTo, type RestrictedAttribute, SCHEMAS, SPACE_ABOVE_ATTRIBUTE, SPACE_BELOW_ATTRIBUTE, SPECIAL_INDENT_ATTRIBUTE, STORE_ATTRIBUTE, STYLE_NAME_ATTRIBUTE, type Schema, type SchemaCode, type SchemaKind, TRACK_CHANGES_ATTRS, TRACK_CHANGES_ATTR_DATA_DATE, TRACK_CHANGES_ATTR_DATA_TIME, TRACK_CHANGES_ATTR_DATA_USERID, TRACK_CHANGES_ATTR_DATA_USERNAME, type ValidationError, type ValidationErrorKind, type ValidationErrorLevel, createElement, findAttributeDefinitionByName, findSchemaByCode, findSchemaByElement, getAttributeName, isAttributeRestricted, isIgnoredAttribute, isIgnoredElement, validateXml };
package/dist/index.js CHANGED
@@ -33,11 +33,11 @@ __export(index_exports, {
33
33
  INDENT_TYPE_ATTRIBUTE: () => INDENT_TYPE_ATTRIBUTE,
34
34
  INLINE_ELEMENT_SCHEMAS: () => INLINE_ELEMENT_SCHEMAS,
35
35
  LAYOUT_ATTRIBUTES: () => LAYOUT_ATTRIBUTES,
36
- LAYOUT_CELL_WIDTH: () => LAYOUT_CELL_WIDTH,
36
+ LAYOUT_CELL_WIDTH_ATTRIBUTE: () => LAYOUT_CELL_WIDTH_ATTRIBUTE,
37
+ LAYOUT_TABLE_ORIENTATION_ATTRIBUTE: () => LAYOUT_TABLE_ORIENTATION_ATTRIBUTE,
38
+ LAYOUT_TABLE_PLACEMENT_ATTRIBUTE: () => LAYOUT_TABLE_PLACEMENT_ATTRIBUTE,
37
39
  LAYOUT_USER_ATTRIBUTE: () => LAYOUT_USER_ATTRIBUTE,
38
40
  LEFT_INDENT_ATTRIBUTE: () => LEFT_INDENT_ATTRIBUTE,
39
- ORIENTATION_ATTRIBUTE: () => ORIENTATION_ATTRIBUTE,
40
- PLACEMENT_ATTRIBUTE: () => PLACEMENT_ATTRIBUTE,
41
41
  RIGHT_INDENT_ATTRIBUTE: () => RIGHT_INDENT_ATTRIBUTE,
42
42
  SCHEMAS: () => SCHEMAS,
43
43
  SPACE_ABOVE_ATTRIBUTE: () => SPACE_ABOVE_ATTRIBUTE,
@@ -94,11 +94,11 @@ var SPACE_ABOVE_ATTRIBUTE = "data-space-above";
94
94
  var SPACE_BELOW_ATTRIBUTE = "data-space-below";
95
95
  var INDENT_TYPE_ATTRIBUTE = "data-indent-type";
96
96
  var LAYOUT_USER_ATTRIBUTE = "data-layout-user";
97
- var LAYOUT_CELL_WIDTH = "data-cell-width";
98
97
  var STYLE_NAME_ATTRIBUTE = "data-paragraph-style";
99
- var ORIENTATION_ATTRIBUTE = "data-table-orientation";
100
- var PLACEMENT_ATTRIBUTE = "data-table-placement";
101
98
  var FIGURE_PLACEMENT_ATTRIBUTE = "data-figure-placement";
99
+ var LAYOUT_CELL_WIDTH_ATTRIBUTE = "data-cell-width";
100
+ var LAYOUT_TABLE_ORIENTATION_ATTRIBUTE = "data-table-orientation";
101
+ var LAYOUT_TABLE_PLACEMENT_ATTRIBUTE = "data-table-placement";
102
102
  var LAYOUT_ATTRIBUTES = [
103
103
  ALIGNMENT_ATTRIBUTE,
104
104
  LEFT_INDENT_ATTRIBUTE,
@@ -108,11 +108,7 @@ var LAYOUT_ATTRIBUTES = [
108
108
  SPACE_BELOW_ATTRIBUTE,
109
109
  INDENT_TYPE_ATTRIBUTE,
110
110
  LAYOUT_USER_ATTRIBUTE,
111
- LAYOUT_CELL_WIDTH,
112
- STYLE_NAME_ATTRIBUTE,
113
- ORIENTATION_ATTRIBUTE,
114
- PLACEMENT_ATTRIBUTE,
115
- FIGURE_PLACEMENT_ATTRIBUTE
111
+ STYLE_NAME_ATTRIBUTE
116
112
  ];
117
113
  var TRACK_CHANGES_ATTR_DATA_USERNAME = "data-username";
118
114
  var TRACK_CHANGES_ATTR_DATA_USERID = "data-userid";
@@ -408,8 +404,8 @@ var INDEX_TERM_ENTRY_REQUIRED_ATTRIBUTES = [
408
404
  "secondEntry",
409
405
  "thirdEntry",
410
406
  "entry",
411
- STORE_ATTRIBUTE,
412
- "linkend"
407
+ "linkend",
408
+ ...ID_ATTRS
413
409
  ];
414
410
  var BOOKMARK_INDEX_POSITION_ATTRIBUTE = {
415
411
  name: "index-position",
@@ -425,7 +421,7 @@ var SEE_REQUIRED_ATTRIBUTES = [
425
421
  values: ["see", "see-also"],
426
422
  defaultValue: ""
427
423
  },
428
- STORE_ATTRIBUTE,
424
+ ...ID_ATTRS,
429
425
  "data-date",
430
426
  "crossref-firstEntry",
431
427
  "crossref-secondEntry",
@@ -463,7 +459,7 @@ var INDEXTERM_SCHEMA = createSchema({
463
459
  values: ["PRIMARY", "SECONDARY", "TERTIARY", "QUATERNARY"],
464
460
  defaultValue: "PRIMARY"
465
461
  },
466
- STORE_ATTRIBUTE
462
+ ...ID_ATTRS
467
463
  ],
468
464
  optionalAttributes: [],
469
465
  allowedChildTagNames: [
@@ -1306,7 +1302,8 @@ var FIGURE_SCHEMA = createSchema({
1306
1302
  requiredAttributes: [...ID_ATTRS, "xmlid"],
1307
1303
  optionalAttributes: [
1308
1304
  ...TRACK_CHANGES_ATTRS,
1309
- ...LAYOUT_ATTRIBUTES,
1305
+ ...FIGURE_PLACEMENT_ATTRIBUTE,
1306
+ ...ALIGNMENT_ATTRIBUTE,
1310
1307
  "linkend_fig",
1311
1308
  "data-anchor-id"
1312
1309
  ],
@@ -1653,7 +1650,7 @@ var TD_SCHEMA = createSchema({
1653
1650
  kind: "element",
1654
1651
  tag: TD_TAG,
1655
1652
  requiredAttributes: [...ID_ATTRS],
1656
- optionalAttributes: [...TRACK_CHANGES_ATTRS, "data-cell-width"],
1653
+ optionalAttributes: [...TRACK_CHANGES_ATTRS, LAYOUT_CELL_WIDTH_ATTRIBUTE],
1657
1654
  allowedChildTagNames: [
1658
1655
  { tagName: TP_TAG, required: false },
1659
1656
  { tagName: UL_TAG, required: false },
@@ -1742,14 +1739,24 @@ var TABLE_SCHEMA = createSchema({
1742
1739
  code: "table1",
1743
1740
  kind: "element",
1744
1741
  tag: TABLE_TAG,
1745
- requiredAttributes: [...ID_ATTRS, "xmlid", "role"],
1742
+ requiredAttributes: [
1743
+ ...ID_ATTRS,
1744
+ {
1745
+ name: "role",
1746
+ values: ["inline", "float"],
1747
+ defaultValue: "inline"
1748
+ }
1749
+ ],
1746
1750
  optionalAttributes: [
1747
- ...LAYOUT_ATTRIBUTES,
1748
1751
  ...TRACK_CHANGES_ATTRS,
1749
- "linkend_tbl",
1752
+ ...ALIGNMENT_ATTRIBUTE,
1753
+ ...LAYOUT_TABLE_ORIENTATION_ATTRIBUTE,
1754
+ ...LAYOUT_TABLE_PLACEMENT_ATTRIBUTE,
1750
1755
  "data-anchor-id",
1756
+ "linkend_tbl",
1751
1757
  "id",
1752
- "orient"
1758
+ "orient",
1759
+ "xmlid"
1753
1760
  ],
1754
1761
  allowedChildTagNames: [
1755
1762
  { tagName: LABEL_TAG, required: false },
@@ -2379,20 +2386,28 @@ var findSchemaByElement = (element) => {
2379
2386
  const isDeletion = element.classList.contains("del");
2380
2387
  const isQueryComment = element.classList.contains("cmtQurySection");
2381
2388
  const role = element.getAttribute("role");
2382
- if (isQueryComment && tagName === SPAN_TAG) {
2383
- return findSchemaByCode("commentQuerySection");
2384
- }
2385
- if (isInsertion && tagName === SPAN_TAG) {
2386
- return findSchemaByCode("insertion");
2387
- }
2388
- if (isDeletion && tagName === SPAN_TAG) {
2389
- return findSchemaByCode("deletion");
2389
+ if (tagName === SPAN_TAG) {
2390
+ if (isQueryComment) {
2391
+ return findSchemaByCode("commentQuerySection");
2392
+ }
2393
+ if (isInsertion) {
2394
+ return findSchemaByCode("insertion");
2395
+ }
2396
+ if (isDeletion) {
2397
+ return findSchemaByCode("deletion");
2398
+ }
2390
2399
  }
2391
- if (role && tagName === SECTION_TAG) {
2392
- if (role.startsWith("H")) {
2393
- return findSchemaByCode("heading");
2400
+ if (tagName === SECTION_TAG) {
2401
+ if (role) {
2402
+ if (role.startsWith("H")) {
2403
+ return findSchemaByCode("heading");
2404
+ }
2405
+ if (role === "ch" || role === "bk") {
2406
+ return findSchemaByCode("footnoteSection");
2407
+ }
2394
2408
  }
2395
- if (role === "ch" || role === "bk") {
2409
+ const isFootnoteSectionWithoutRole = element.querySelector(FOOTNOTE_TAG);
2410
+ if (isFootnoteSectionWithoutRole) {
2396
2411
  return findSchemaByCode("footnoteSection");
2397
2412
  }
2398
2413
  }
@@ -2866,11 +2881,11 @@ var validateXml = (xml, elementsLinkedTo, schemasToValidateAgainst) => {
2866
2881
  INDENT_TYPE_ATTRIBUTE,
2867
2882
  INLINE_ELEMENT_SCHEMAS,
2868
2883
  LAYOUT_ATTRIBUTES,
2869
- LAYOUT_CELL_WIDTH,
2884
+ LAYOUT_CELL_WIDTH_ATTRIBUTE,
2885
+ LAYOUT_TABLE_ORIENTATION_ATTRIBUTE,
2886
+ LAYOUT_TABLE_PLACEMENT_ATTRIBUTE,
2870
2887
  LAYOUT_USER_ATTRIBUTE,
2871
2888
  LEFT_INDENT_ATTRIBUTE,
2872
- ORIENTATION_ATTRIBUTE,
2873
- PLACEMENT_ATTRIBUTE,
2874
2889
  RIGHT_INDENT_ATTRIBUTE,
2875
2890
  SCHEMAS,
2876
2891
  SPACE_ABOVE_ATTRIBUTE,
package/dist/index.mjs CHANGED
@@ -30,11 +30,11 @@ var SPACE_ABOVE_ATTRIBUTE = "data-space-above";
30
30
  var SPACE_BELOW_ATTRIBUTE = "data-space-below";
31
31
  var INDENT_TYPE_ATTRIBUTE = "data-indent-type";
32
32
  var LAYOUT_USER_ATTRIBUTE = "data-layout-user";
33
- var LAYOUT_CELL_WIDTH = "data-cell-width";
34
33
  var STYLE_NAME_ATTRIBUTE = "data-paragraph-style";
35
- var ORIENTATION_ATTRIBUTE = "data-table-orientation";
36
- var PLACEMENT_ATTRIBUTE = "data-table-placement";
37
34
  var FIGURE_PLACEMENT_ATTRIBUTE = "data-figure-placement";
35
+ var LAYOUT_CELL_WIDTH_ATTRIBUTE = "data-cell-width";
36
+ var LAYOUT_TABLE_ORIENTATION_ATTRIBUTE = "data-table-orientation";
37
+ var LAYOUT_TABLE_PLACEMENT_ATTRIBUTE = "data-table-placement";
38
38
  var LAYOUT_ATTRIBUTES = [
39
39
  ALIGNMENT_ATTRIBUTE,
40
40
  LEFT_INDENT_ATTRIBUTE,
@@ -44,11 +44,7 @@ var LAYOUT_ATTRIBUTES = [
44
44
  SPACE_BELOW_ATTRIBUTE,
45
45
  INDENT_TYPE_ATTRIBUTE,
46
46
  LAYOUT_USER_ATTRIBUTE,
47
- LAYOUT_CELL_WIDTH,
48
- STYLE_NAME_ATTRIBUTE,
49
- ORIENTATION_ATTRIBUTE,
50
- PLACEMENT_ATTRIBUTE,
51
- FIGURE_PLACEMENT_ATTRIBUTE
47
+ STYLE_NAME_ATTRIBUTE
52
48
  ];
53
49
  var TRACK_CHANGES_ATTR_DATA_USERNAME = "data-username";
54
50
  var TRACK_CHANGES_ATTR_DATA_USERID = "data-userid";
@@ -344,8 +340,8 @@ var INDEX_TERM_ENTRY_REQUIRED_ATTRIBUTES = [
344
340
  "secondEntry",
345
341
  "thirdEntry",
346
342
  "entry",
347
- STORE_ATTRIBUTE,
348
- "linkend"
343
+ "linkend",
344
+ ...ID_ATTRS
349
345
  ];
350
346
  var BOOKMARK_INDEX_POSITION_ATTRIBUTE = {
351
347
  name: "index-position",
@@ -361,7 +357,7 @@ var SEE_REQUIRED_ATTRIBUTES = [
361
357
  values: ["see", "see-also"],
362
358
  defaultValue: ""
363
359
  },
364
- STORE_ATTRIBUTE,
360
+ ...ID_ATTRS,
365
361
  "data-date",
366
362
  "crossref-firstEntry",
367
363
  "crossref-secondEntry",
@@ -399,7 +395,7 @@ var INDEXTERM_SCHEMA = createSchema({
399
395
  values: ["PRIMARY", "SECONDARY", "TERTIARY", "QUATERNARY"],
400
396
  defaultValue: "PRIMARY"
401
397
  },
402
- STORE_ATTRIBUTE
398
+ ...ID_ATTRS
403
399
  ],
404
400
  optionalAttributes: [],
405
401
  allowedChildTagNames: [
@@ -1242,7 +1238,8 @@ var FIGURE_SCHEMA = createSchema({
1242
1238
  requiredAttributes: [...ID_ATTRS, "xmlid"],
1243
1239
  optionalAttributes: [
1244
1240
  ...TRACK_CHANGES_ATTRS,
1245
- ...LAYOUT_ATTRIBUTES,
1241
+ ...FIGURE_PLACEMENT_ATTRIBUTE,
1242
+ ...ALIGNMENT_ATTRIBUTE,
1246
1243
  "linkend_fig",
1247
1244
  "data-anchor-id"
1248
1245
  ],
@@ -1589,7 +1586,7 @@ var TD_SCHEMA = createSchema({
1589
1586
  kind: "element",
1590
1587
  tag: TD_TAG,
1591
1588
  requiredAttributes: [...ID_ATTRS],
1592
- optionalAttributes: [...TRACK_CHANGES_ATTRS, "data-cell-width"],
1589
+ optionalAttributes: [...TRACK_CHANGES_ATTRS, LAYOUT_CELL_WIDTH_ATTRIBUTE],
1593
1590
  allowedChildTagNames: [
1594
1591
  { tagName: TP_TAG, required: false },
1595
1592
  { tagName: UL_TAG, required: false },
@@ -1678,14 +1675,24 @@ var TABLE_SCHEMA = createSchema({
1678
1675
  code: "table1",
1679
1676
  kind: "element",
1680
1677
  tag: TABLE_TAG,
1681
- requiredAttributes: [...ID_ATTRS, "xmlid", "role"],
1678
+ requiredAttributes: [
1679
+ ...ID_ATTRS,
1680
+ {
1681
+ name: "role",
1682
+ values: ["inline", "float"],
1683
+ defaultValue: "inline"
1684
+ }
1685
+ ],
1682
1686
  optionalAttributes: [
1683
- ...LAYOUT_ATTRIBUTES,
1684
1687
  ...TRACK_CHANGES_ATTRS,
1685
- "linkend_tbl",
1688
+ ...ALIGNMENT_ATTRIBUTE,
1689
+ ...LAYOUT_TABLE_ORIENTATION_ATTRIBUTE,
1690
+ ...LAYOUT_TABLE_PLACEMENT_ATTRIBUTE,
1686
1691
  "data-anchor-id",
1692
+ "linkend_tbl",
1687
1693
  "id",
1688
- "orient"
1694
+ "orient",
1695
+ "xmlid"
1689
1696
  ],
1690
1697
  allowedChildTagNames: [
1691
1698
  { tagName: LABEL_TAG, required: false },
@@ -2315,20 +2322,28 @@ var findSchemaByElement = (element) => {
2315
2322
  const isDeletion = element.classList.contains("del");
2316
2323
  const isQueryComment = element.classList.contains("cmtQurySection");
2317
2324
  const role = element.getAttribute("role");
2318
- if (isQueryComment && tagName === SPAN_TAG) {
2319
- return findSchemaByCode("commentQuerySection");
2320
- }
2321
- if (isInsertion && tagName === SPAN_TAG) {
2322
- return findSchemaByCode("insertion");
2323
- }
2324
- if (isDeletion && tagName === SPAN_TAG) {
2325
- return findSchemaByCode("deletion");
2325
+ if (tagName === SPAN_TAG) {
2326
+ if (isQueryComment) {
2327
+ return findSchemaByCode("commentQuerySection");
2328
+ }
2329
+ if (isInsertion) {
2330
+ return findSchemaByCode("insertion");
2331
+ }
2332
+ if (isDeletion) {
2333
+ return findSchemaByCode("deletion");
2334
+ }
2326
2335
  }
2327
- if (role && tagName === SECTION_TAG) {
2328
- if (role.startsWith("H")) {
2329
- return findSchemaByCode("heading");
2336
+ if (tagName === SECTION_TAG) {
2337
+ if (role) {
2338
+ if (role.startsWith("H")) {
2339
+ return findSchemaByCode("heading");
2340
+ }
2341
+ if (role === "ch" || role === "bk") {
2342
+ return findSchemaByCode("footnoteSection");
2343
+ }
2330
2344
  }
2331
- if (role === "ch" || role === "bk") {
2345
+ const isFootnoteSectionWithoutRole = element.querySelector(FOOTNOTE_TAG);
2346
+ if (isFootnoteSectionWithoutRole) {
2332
2347
  return findSchemaByCode("footnoteSection");
2333
2348
  }
2334
2349
  }
@@ -2801,11 +2816,11 @@ export {
2801
2816
  INDENT_TYPE_ATTRIBUTE,
2802
2817
  INLINE_ELEMENT_SCHEMAS,
2803
2818
  LAYOUT_ATTRIBUTES,
2804
- LAYOUT_CELL_WIDTH,
2819
+ LAYOUT_CELL_WIDTH_ATTRIBUTE,
2820
+ LAYOUT_TABLE_ORIENTATION_ATTRIBUTE,
2821
+ LAYOUT_TABLE_PLACEMENT_ATTRIBUTE,
2805
2822
  LAYOUT_USER_ATTRIBUTE,
2806
2823
  LEFT_INDENT_ATTRIBUTE,
2807
- ORIENTATION_ATTRIBUTE,
2808
- PLACEMENT_ATTRIBUTE,
2809
2824
  RIGHT_INDENT_ATTRIBUTE,
2810
2825
  SCHEMAS,
2811
2826
  SPACE_ABOVE_ATTRIBUTE,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pro-editor-schema",
3
- "version": "0.1.189",
3
+ "version": "0.1.191",
4
4
  "description": "Pro Editor XML schemas",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.mjs",