pro-editor-schema 0.0.1-alpha.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.
@@ -0,0 +1,5 @@
1
+ declare const schemas: {
2
+ [k: string]: any;
3
+ };
4
+
5
+ export { schemas };
@@ -0,0 +1,5 @@
1
+ declare const schemas: {
2
+ [k: string]: any;
3
+ };
4
+
5
+ export { schemas };
package/dist/index.js ADDED
@@ -0,0 +1,440 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // src/index.ts
21
+ var index_exports = {};
22
+ __export(index_exports, {
23
+ schemas: () => schemas
24
+ });
25
+ module.exports = __toCommonJS(index_exports);
26
+
27
+ // src/schema/shared/createSchema.ts
28
+ var createSchema = ({
29
+ kind,
30
+ tag,
31
+ role,
32
+ requiredAttributes,
33
+ optionalAttributes,
34
+ allowedChildTagNames
35
+ }) => {
36
+ return {
37
+ kind,
38
+ tag,
39
+ role,
40
+ requiredAttributes,
41
+ optionalAttributes,
42
+ allowedChildTagNames: new Set(allowedChildTagNames)
43
+ };
44
+ };
45
+
46
+ // src/schema/shared/globalAttributes.ts
47
+ var TRACK_CHANGES_ATTR_DATA_USERNAME = "data-username";
48
+ var TRACK_CHANGES_ATTR_DATA_USERID = "data-userid";
49
+ var TRACK_CHANGES_ATTR_DATA_TIME = "data-time";
50
+ var TRACK_CHANGES_ATTR_DATA_DATE = "data-date";
51
+ var TRACK_CHANGES_ATTRS = [
52
+ TRACK_CHANGES_ATTR_DATA_USERNAME,
53
+ TRACK_CHANGES_ATTR_DATA_USERID,
54
+ TRACK_CHANGES_ATTR_DATA_TIME,
55
+ TRACK_CHANGES_ATTR_DATA_DATE
56
+ ];
57
+ var ID_ATTRS = ["store", "ele-id"];
58
+
59
+ // src/schema/elementSchemas/atoms/atomTags.ts
60
+ var B_TAG = "B";
61
+ var I_TAG = "I";
62
+ var U_TAG = "U";
63
+ var SC_TAG = "SC";
64
+ var EMPHASIS_TAG = "EMPHASIS";
65
+ var STRIKE_TAG = "STRIKE";
66
+ var SUB_TAG = "SUB";
67
+ var SUP_TAG = "SUP";
68
+ var HIGHLIGHTMARK_TAG = "HIGHLIGHTMARK";
69
+ var QUERY_TAG = "QUERY";
70
+ var SPAN_TAG = "SPAN";
71
+ var ATOM_TAGS = [
72
+ B_TAG,
73
+ I_TAG,
74
+ U_TAG,
75
+ SC_TAG,
76
+ EMPHASIS_TAG,
77
+ STRIKE_TAG,
78
+ SUB_TAG,
79
+ SUP_TAG,
80
+ HIGHLIGHTMARK_TAG,
81
+ QUERY_TAG,
82
+ SPAN_TAG
83
+ ];
84
+
85
+ // src/schema/elementSchemas/atoms/b.ts
86
+ var B_SCHEMA = createSchema({
87
+ kind: "atom",
88
+ tag: B_TAG,
89
+ requiredAttributes: [...ID_ATTRS],
90
+ optionalAttributes: [...TRACK_CHANGES_ATTRS],
91
+ allowedChildTagNames: ATOM_TAGS
92
+ });
93
+
94
+ // src/schema/elementSchemas/atoms/commentQuerySection.ts
95
+ var COMMENT_QUERY_SECTION_SCHEMA = createSchema({
96
+ kind: "atom",
97
+ tag: SPAN_TAG,
98
+ role: "QUERYCOMMENTSWRAPPER" /* QUERYCOMMENTSWRAPPER */,
99
+ requiredAttributes: [...ID_ATTRS, "id"],
100
+ optionalAttributes: [...TRACK_CHANGES_ATTRS, "title"],
101
+ allowedChildTagNames: ATOM_TAGS
102
+ });
103
+
104
+ // src/schema/elementSchemas/atoms/deletion.ts
105
+ var DELETION_SCHEMA = createSchema({
106
+ kind: "atom",
107
+ tag: SPAN_TAG,
108
+ role: "DEL" /* DEL */,
109
+ requiredAttributes: [...TRACK_CHANGES_ATTRS, ...ID_ATTRS],
110
+ optionalAttributes: [],
111
+ allowedChildTagNames: ATOM_TAGS
112
+ });
113
+
114
+ // src/schema/elementSchemas/atoms/emphasis.ts
115
+ var EMPHASIS_SCHEMA = createSchema({
116
+ kind: "atom",
117
+ tag: EMPHASIS_TAG,
118
+ requiredAttributes: [...ID_ATTRS],
119
+ optionalAttributes: [
120
+ ...TRACK_CHANGES_ATTRS,
121
+ {
122
+ name: "role",
123
+ values: ["lowercase", "uppercase", "initialcaps"],
124
+ defaultValue: "lowercase"
125
+ }
126
+ ],
127
+ allowedChildTagNames: ATOM_TAGS
128
+ });
129
+
130
+ // src/schema/elementSchemas/atoms/highlightmark.ts
131
+ var HIGHLIGHTMARK_SCHEMA = createSchema({
132
+ kind: "atom",
133
+ tag: HIGHLIGHTMARK_TAG,
134
+ requiredAttributes: [...ID_ATTRS],
135
+ optionalAttributes: [...TRACK_CHANGES_ATTRS],
136
+ allowedChildTagNames: ATOM_TAGS
137
+ });
138
+
139
+ // src/schema/elementSchemas/atoms/i.ts
140
+ var I_SCHEMA = createSchema({
141
+ kind: "atom",
142
+ tag: I_TAG,
143
+ requiredAttributes: [...ID_ATTRS],
144
+ optionalAttributes: [...TRACK_CHANGES_ATTRS],
145
+ allowedChildTagNames: ATOM_TAGS
146
+ });
147
+
148
+ // src/schema/elementSchemas/atoms/insertion.ts
149
+ var INSERTION_SCHEMA = createSchema({
150
+ kind: "atom",
151
+ tag: SPAN_TAG,
152
+ role: "INS" /* INS */,
153
+ requiredAttributes: [...TRACK_CHANGES_ATTRS, ...ID_ATTRS],
154
+ optionalAttributes: [],
155
+ allowedChildTagNames: ATOM_TAGS
156
+ });
157
+
158
+ // src/schema/elementSchemas/atoms/sc.ts
159
+ var SC_SCHEMA = createSchema({
160
+ kind: "atom",
161
+ tag: SC_TAG,
162
+ requiredAttributes: [...ID_ATTRS],
163
+ optionalAttributes: [...TRACK_CHANGES_ATTRS],
164
+ allowedChildTagNames: ATOM_TAGS
165
+ });
166
+
167
+ // src/schema/elementSchemas/atoms/strike.ts
168
+ var STRIKE_SCHEMA = createSchema({
169
+ kind: "atom",
170
+ tag: STRIKE_TAG,
171
+ requiredAttributes: [...ID_ATTRS],
172
+ optionalAttributes: [...TRACK_CHANGES_ATTRS],
173
+ allowedChildTagNames: ATOM_TAGS
174
+ });
175
+
176
+ // src/schema/elementSchemas/atoms/sub.ts
177
+ var SUB_SCHEMA = createSchema({
178
+ kind: "atom",
179
+ tag: SUB_TAG,
180
+ requiredAttributes: [...ID_ATTRS],
181
+ optionalAttributes: [...TRACK_CHANGES_ATTRS],
182
+ allowedChildTagNames: ATOM_TAGS
183
+ });
184
+
185
+ // src/schema/elementSchemas/atoms/sup.ts
186
+ var SUP_SCHEMA = createSchema({
187
+ kind: "atom",
188
+ tag: SUP_TAG,
189
+ requiredAttributes: [...ID_ATTRS],
190
+ optionalAttributes: [...TRACK_CHANGES_ATTRS],
191
+ allowedChildTagNames: ATOM_TAGS
192
+ });
193
+
194
+ // src/schema/elementSchemas/atoms/u.ts
195
+ var U_SCHEMA = createSchema({
196
+ kind: "atom",
197
+ tag: U_TAG,
198
+ requiredAttributes: [...ID_ATTRS],
199
+ optionalAttributes: [...TRACK_CHANGES_ATTRS],
200
+ allowedChildTagNames: ATOM_TAGS
201
+ });
202
+
203
+ // src/schema/elementSchemas/atoms/index.ts
204
+ var ATOM_SCHEMAS = [
205
+ B_SCHEMA,
206
+ I_SCHEMA,
207
+ U_SCHEMA,
208
+ SC_SCHEMA,
209
+ EMPHASIS_SCHEMA,
210
+ STRIKE_SCHEMA,
211
+ SUB_SCHEMA,
212
+ SUP_SCHEMA,
213
+ HIGHLIGHTMARK_SCHEMA,
214
+ COMMENT_QUERY_SECTION_SCHEMA,
215
+ INSERTION_SCHEMA,
216
+ DELETION_SCHEMA
217
+ ];
218
+
219
+ // src/schema/elementSchemas/inlineElements/inlineElementsTags.ts
220
+ var COMMENT_TAG = "COMMENT";
221
+ var CONTENT_TAG = "CONTENT";
222
+ var QUERY_TAG2 = "QUERY";
223
+ var REPLY_TAG = "REPLY";
224
+ var FOOTNOTE1_TAG = "FOOTNOTE1";
225
+ var INLINEEQUATION_TAG = "INLINEEQUATION";
226
+ var LINK1_TAG = "LINK1";
227
+ var URI_TAG = "URI";
228
+ var INLINE_TAGS = [
229
+ COMMENT_TAG,
230
+ CONTENT_TAG,
231
+ REPLY_TAG,
232
+ QUERY_TAG2,
233
+ FOOTNOTE1_TAG,
234
+ INLINEEQUATION_TAG,
235
+ LINK1_TAG,
236
+ URI_TAG
237
+ ];
238
+
239
+ // src/schema/elementSchemas/elements/elementsTags.ts
240
+ var PARA_TAG = "PARA";
241
+ var TITLE_TAG = "TITLE1";
242
+
243
+ // src/schema/elementSchemas/elements/para.ts
244
+ var PARA_SCHEMA = createSchema({
245
+ kind: "element",
246
+ tag: PARA_TAG,
247
+ requiredAttributes: [...ID_ATTRS],
248
+ optionalAttributes: [...TRACK_CHANGES_ATTRS],
249
+ allowedChildTagNames: [...ATOM_TAGS, ...INLINE_TAGS]
250
+ });
251
+
252
+ // src/schema/elementSchemas/elements/title.ts
253
+ var TITLE_SCHEMA = createSchema({
254
+ kind: "element",
255
+ tag: TITLE_TAG,
256
+ requiredAttributes: [
257
+ ...ID_ATTRS,
258
+ {
259
+ name: "title",
260
+ values: ["H1", "H2", "H3", "H4", "H5", "H6"],
261
+ defaultValue: "H1"
262
+ }
263
+ ],
264
+ optionalAttributes: [...TRACK_CHANGES_ATTRS],
265
+ allowedChildTagNames: [...ATOM_TAGS, ...INLINE_TAGS]
266
+ });
267
+
268
+ // src/schema/elementSchemas/elements/index.ts
269
+ var ELEMENT_SCHEMAS = [
270
+ PARA_SCHEMA,
271
+ TITLE_SCHEMA
272
+ ];
273
+
274
+ // src/schema/elementSchemas/groupElements/groupElementsTags.ts
275
+ var SECTION_TAG = "SECTION1";
276
+
277
+ // src/schema/elementSchemas/groupElements/section.ts
278
+ var SECTION_SCHEMA = createSchema({
279
+ kind: "group",
280
+ tag: SECTION_TAG,
281
+ role: "HEADING" /* HEADING */,
282
+ requiredAttributes: [
283
+ ...ID_ATTRS,
284
+ "xmlid",
285
+ {
286
+ name: "role",
287
+ values: ["H1", "H2", "H3", "H4", "H5", "H6"],
288
+ defaultValue: "H1"
289
+ }
290
+ ],
291
+ optionalAttributes: [...TRACK_CHANGES_ATTRS],
292
+ allowedChildTagNames: [PARA_TAG, TITLE_TAG, SECTION_TAG]
293
+ });
294
+
295
+ // src/schema/elementSchemas/groupElements/index.ts
296
+ var GROUP_ELEMENT_SCHEMAS = [SECTION_SCHEMA];
297
+
298
+ // src/schema/elementSchemas/inlineElements/comment.ts
299
+ var COMMENT_SCHEMA = createSchema({
300
+ kind: "inline",
301
+ tag: COMMENT_TAG,
302
+ requiredAttributes: [...ID_ATTRS, "id"],
303
+ optionalAttributes: [
304
+ ...TRACK_CHANGES_ATTRS,
305
+ {
306
+ name: "status",
307
+ values: ["marks-done", "marks-open"],
308
+ defaultValue: "marks-open"
309
+ },
310
+ "title",
311
+ "markuser",
312
+ "marktime"
313
+ ],
314
+ allowedChildTagNames: [CONTENT_TAG, REPLY_TAG]
315
+ });
316
+
317
+ // src/schema/elementSchemas/inlineElements/content.ts
318
+ var CONTENT_SCHEMA = createSchema({
319
+ kind: "inline",
320
+ tag: CONTENT_TAG,
321
+ requiredAttributes: [...ID_ATTRS],
322
+ optionalAttributes: [],
323
+ allowedChildTagNames: [
324
+ B_TAG,
325
+ I_TAG,
326
+ U_TAG,
327
+ SC_TAG,
328
+ EMPHASIS_TAG,
329
+ STRIKE_TAG,
330
+ SUB_TAG,
331
+ SUP_TAG
332
+ ]
333
+ });
334
+
335
+ // src/schema/elementSchemas/inlineElements/footnote1.ts
336
+ var FOOTNOTE1_SCHEMA = createSchema({
337
+ kind: "inline",
338
+ tag: FOOTNOTE1_TAG,
339
+ requiredAttributes: [...ID_ATTRS],
340
+ optionalAttributes: ["linkend"],
341
+ allowedChildTagNames: ATOM_TAGS
342
+ });
343
+
344
+ // src/schema/elementSchemas/inlineElements/inlineequation.ts
345
+ var INLINEEQUATION_SCHEMA = createSchema({
346
+ kind: "inline",
347
+ tag: INLINEEQUATION_TAG,
348
+ requiredAttributes: [...ID_ATTRS],
349
+ optionalAttributes: ["linkend"],
350
+ allowedChildTagNames: ATOM_TAGS
351
+ });
352
+
353
+ // src/schema/elementSchemas/inlineElements/link1.ts
354
+ var LINK1_SCHEMA = createSchema({
355
+ kind: "inline",
356
+ tag: LINK1_TAG,
357
+ requiredAttributes: [...ID_ATTRS],
358
+ optionalAttributes: ["linkend"],
359
+ allowedChildTagNames: ATOM_TAGS
360
+ });
361
+
362
+ // src/schema/elementSchemas/inlineElements/query.ts
363
+ var QUERY_SCHEMA = createSchema({
364
+ kind: "inline",
365
+ tag: QUERY_TAG2,
366
+ requiredAttributes: [...ID_ATTRS, "id"],
367
+ optionalAttributes: [
368
+ ...TRACK_CHANGES_ATTRS,
369
+ {
370
+ name: "status",
371
+ values: ["marks-done", "marks-open"],
372
+ defaultValue: "marks-open"
373
+ },
374
+ "title",
375
+ "markuser",
376
+ "marktime"
377
+ ],
378
+ allowedChildTagNames: [CONTENT_TAG, REPLY_TAG]
379
+ });
380
+
381
+ // src/schema/elementSchemas/inlineElements/reply.ts
382
+ var REPLY_SCHEMA = createSchema({
383
+ kind: "inline",
384
+ tag: REPLY_TAG,
385
+ requiredAttributes: [...ID_ATTRS, "id"],
386
+ optionalAttributes: [
387
+ ...TRACK_CHANGES_ATTRS,
388
+ {
389
+ name: "status",
390
+ values: ["marks-done", "marks-open"],
391
+ defaultValue: "marks-open"
392
+ },
393
+ "title",
394
+ "markuser",
395
+ "marktime"
396
+ ],
397
+ allowedChildTagNames: [CONTENT_TAG]
398
+ });
399
+
400
+ // src/schema/elementSchemas/inlineElements/uri.ts
401
+ var URI_SCHEMA = createSchema({
402
+ kind: "inline",
403
+ tag: URI_TAG,
404
+ requiredAttributes: [...ID_ATTRS],
405
+ optionalAttributes: ["linkend"],
406
+ allowedChildTagNames: ATOM_TAGS
407
+ });
408
+
409
+ // src/schema/elementSchemas/inlineElements/index.ts
410
+ var INLINE_ELEMENT_SCHEMAS = [
411
+ URI_SCHEMA,
412
+ FOOTNOTE1_SCHEMA,
413
+ LINK1_SCHEMA,
414
+ INLINEEQUATION_SCHEMA,
415
+ COMMENT_SCHEMA,
416
+ QUERY_SCHEMA,
417
+ CONTENT_SCHEMA,
418
+ REPLY_SCHEMA
419
+ ];
420
+
421
+ // src/schema/schemas.ts
422
+ var SCHEMAS = [
423
+ ...ATOM_SCHEMAS,
424
+ ...ELEMENT_SCHEMAS,
425
+ ...GROUP_ELEMENT_SCHEMAS,
426
+ ...INLINE_ELEMENT_SCHEMAS
427
+ ];
428
+
429
+ // src/index.ts
430
+ var replacer = (_key, value) => value instanceof Set ? { __type: "Set", values: [...value] } : value;
431
+ var schemas = Object.fromEntries(
432
+ SCHEMAS.map((schema) => [
433
+ schema.tag,
434
+ JSON.parse(JSON.stringify(schema, replacer))
435
+ ])
436
+ );
437
+ // Annotate the CommonJS export names for ESM import in node:
438
+ 0 && (module.exports = {
439
+ schemas
440
+ });
package/dist/index.mjs ADDED
@@ -0,0 +1,413 @@
1
+ // src/schema/shared/createSchema.ts
2
+ var createSchema = ({
3
+ kind,
4
+ tag,
5
+ role,
6
+ requiredAttributes,
7
+ optionalAttributes,
8
+ allowedChildTagNames
9
+ }) => {
10
+ return {
11
+ kind,
12
+ tag,
13
+ role,
14
+ requiredAttributes,
15
+ optionalAttributes,
16
+ allowedChildTagNames: new Set(allowedChildTagNames)
17
+ };
18
+ };
19
+
20
+ // src/schema/shared/globalAttributes.ts
21
+ var TRACK_CHANGES_ATTR_DATA_USERNAME = "data-username";
22
+ var TRACK_CHANGES_ATTR_DATA_USERID = "data-userid";
23
+ var TRACK_CHANGES_ATTR_DATA_TIME = "data-time";
24
+ var TRACK_CHANGES_ATTR_DATA_DATE = "data-date";
25
+ var TRACK_CHANGES_ATTRS = [
26
+ TRACK_CHANGES_ATTR_DATA_USERNAME,
27
+ TRACK_CHANGES_ATTR_DATA_USERID,
28
+ TRACK_CHANGES_ATTR_DATA_TIME,
29
+ TRACK_CHANGES_ATTR_DATA_DATE
30
+ ];
31
+ var ID_ATTRS = ["store", "ele-id"];
32
+
33
+ // src/schema/elementSchemas/atoms/atomTags.ts
34
+ var B_TAG = "B";
35
+ var I_TAG = "I";
36
+ var U_TAG = "U";
37
+ var SC_TAG = "SC";
38
+ var EMPHASIS_TAG = "EMPHASIS";
39
+ var STRIKE_TAG = "STRIKE";
40
+ var SUB_TAG = "SUB";
41
+ var SUP_TAG = "SUP";
42
+ var HIGHLIGHTMARK_TAG = "HIGHLIGHTMARK";
43
+ var QUERY_TAG = "QUERY";
44
+ var SPAN_TAG = "SPAN";
45
+ var ATOM_TAGS = [
46
+ B_TAG,
47
+ I_TAG,
48
+ U_TAG,
49
+ SC_TAG,
50
+ EMPHASIS_TAG,
51
+ STRIKE_TAG,
52
+ SUB_TAG,
53
+ SUP_TAG,
54
+ HIGHLIGHTMARK_TAG,
55
+ QUERY_TAG,
56
+ SPAN_TAG
57
+ ];
58
+
59
+ // src/schema/elementSchemas/atoms/b.ts
60
+ var B_SCHEMA = createSchema({
61
+ kind: "atom",
62
+ tag: B_TAG,
63
+ requiredAttributes: [...ID_ATTRS],
64
+ optionalAttributes: [...TRACK_CHANGES_ATTRS],
65
+ allowedChildTagNames: ATOM_TAGS
66
+ });
67
+
68
+ // src/schema/elementSchemas/atoms/commentQuerySection.ts
69
+ var COMMENT_QUERY_SECTION_SCHEMA = createSchema({
70
+ kind: "atom",
71
+ tag: SPAN_TAG,
72
+ role: "QUERYCOMMENTSWRAPPER" /* QUERYCOMMENTSWRAPPER */,
73
+ requiredAttributes: [...ID_ATTRS, "id"],
74
+ optionalAttributes: [...TRACK_CHANGES_ATTRS, "title"],
75
+ allowedChildTagNames: ATOM_TAGS
76
+ });
77
+
78
+ // src/schema/elementSchemas/atoms/deletion.ts
79
+ var DELETION_SCHEMA = createSchema({
80
+ kind: "atom",
81
+ tag: SPAN_TAG,
82
+ role: "DEL" /* DEL */,
83
+ requiredAttributes: [...TRACK_CHANGES_ATTRS, ...ID_ATTRS],
84
+ optionalAttributes: [],
85
+ allowedChildTagNames: ATOM_TAGS
86
+ });
87
+
88
+ // src/schema/elementSchemas/atoms/emphasis.ts
89
+ var EMPHASIS_SCHEMA = createSchema({
90
+ kind: "atom",
91
+ tag: EMPHASIS_TAG,
92
+ requiredAttributes: [...ID_ATTRS],
93
+ optionalAttributes: [
94
+ ...TRACK_CHANGES_ATTRS,
95
+ {
96
+ name: "role",
97
+ values: ["lowercase", "uppercase", "initialcaps"],
98
+ defaultValue: "lowercase"
99
+ }
100
+ ],
101
+ allowedChildTagNames: ATOM_TAGS
102
+ });
103
+
104
+ // src/schema/elementSchemas/atoms/highlightmark.ts
105
+ var HIGHLIGHTMARK_SCHEMA = createSchema({
106
+ kind: "atom",
107
+ tag: HIGHLIGHTMARK_TAG,
108
+ requiredAttributes: [...ID_ATTRS],
109
+ optionalAttributes: [...TRACK_CHANGES_ATTRS],
110
+ allowedChildTagNames: ATOM_TAGS
111
+ });
112
+
113
+ // src/schema/elementSchemas/atoms/i.ts
114
+ var I_SCHEMA = createSchema({
115
+ kind: "atom",
116
+ tag: I_TAG,
117
+ requiredAttributes: [...ID_ATTRS],
118
+ optionalAttributes: [...TRACK_CHANGES_ATTRS],
119
+ allowedChildTagNames: ATOM_TAGS
120
+ });
121
+
122
+ // src/schema/elementSchemas/atoms/insertion.ts
123
+ var INSERTION_SCHEMA = createSchema({
124
+ kind: "atom",
125
+ tag: SPAN_TAG,
126
+ role: "INS" /* INS */,
127
+ requiredAttributes: [...TRACK_CHANGES_ATTRS, ...ID_ATTRS],
128
+ optionalAttributes: [],
129
+ allowedChildTagNames: ATOM_TAGS
130
+ });
131
+
132
+ // src/schema/elementSchemas/atoms/sc.ts
133
+ var SC_SCHEMA = createSchema({
134
+ kind: "atom",
135
+ tag: SC_TAG,
136
+ requiredAttributes: [...ID_ATTRS],
137
+ optionalAttributes: [...TRACK_CHANGES_ATTRS],
138
+ allowedChildTagNames: ATOM_TAGS
139
+ });
140
+
141
+ // src/schema/elementSchemas/atoms/strike.ts
142
+ var STRIKE_SCHEMA = createSchema({
143
+ kind: "atom",
144
+ tag: STRIKE_TAG,
145
+ requiredAttributes: [...ID_ATTRS],
146
+ optionalAttributes: [...TRACK_CHANGES_ATTRS],
147
+ allowedChildTagNames: ATOM_TAGS
148
+ });
149
+
150
+ // src/schema/elementSchemas/atoms/sub.ts
151
+ var SUB_SCHEMA = createSchema({
152
+ kind: "atom",
153
+ tag: SUB_TAG,
154
+ requiredAttributes: [...ID_ATTRS],
155
+ optionalAttributes: [...TRACK_CHANGES_ATTRS],
156
+ allowedChildTagNames: ATOM_TAGS
157
+ });
158
+
159
+ // src/schema/elementSchemas/atoms/sup.ts
160
+ var SUP_SCHEMA = createSchema({
161
+ kind: "atom",
162
+ tag: SUP_TAG,
163
+ requiredAttributes: [...ID_ATTRS],
164
+ optionalAttributes: [...TRACK_CHANGES_ATTRS],
165
+ allowedChildTagNames: ATOM_TAGS
166
+ });
167
+
168
+ // src/schema/elementSchemas/atoms/u.ts
169
+ var U_SCHEMA = createSchema({
170
+ kind: "atom",
171
+ tag: U_TAG,
172
+ requiredAttributes: [...ID_ATTRS],
173
+ optionalAttributes: [...TRACK_CHANGES_ATTRS],
174
+ allowedChildTagNames: ATOM_TAGS
175
+ });
176
+
177
+ // src/schema/elementSchemas/atoms/index.ts
178
+ var ATOM_SCHEMAS = [
179
+ B_SCHEMA,
180
+ I_SCHEMA,
181
+ U_SCHEMA,
182
+ SC_SCHEMA,
183
+ EMPHASIS_SCHEMA,
184
+ STRIKE_SCHEMA,
185
+ SUB_SCHEMA,
186
+ SUP_SCHEMA,
187
+ HIGHLIGHTMARK_SCHEMA,
188
+ COMMENT_QUERY_SECTION_SCHEMA,
189
+ INSERTION_SCHEMA,
190
+ DELETION_SCHEMA
191
+ ];
192
+
193
+ // src/schema/elementSchemas/inlineElements/inlineElementsTags.ts
194
+ var COMMENT_TAG = "COMMENT";
195
+ var CONTENT_TAG = "CONTENT";
196
+ var QUERY_TAG2 = "QUERY";
197
+ var REPLY_TAG = "REPLY";
198
+ var FOOTNOTE1_TAG = "FOOTNOTE1";
199
+ var INLINEEQUATION_TAG = "INLINEEQUATION";
200
+ var LINK1_TAG = "LINK1";
201
+ var URI_TAG = "URI";
202
+ var INLINE_TAGS = [
203
+ COMMENT_TAG,
204
+ CONTENT_TAG,
205
+ REPLY_TAG,
206
+ QUERY_TAG2,
207
+ FOOTNOTE1_TAG,
208
+ INLINEEQUATION_TAG,
209
+ LINK1_TAG,
210
+ URI_TAG
211
+ ];
212
+
213
+ // src/schema/elementSchemas/elements/elementsTags.ts
214
+ var PARA_TAG = "PARA";
215
+ var TITLE_TAG = "TITLE1";
216
+
217
+ // src/schema/elementSchemas/elements/para.ts
218
+ var PARA_SCHEMA = createSchema({
219
+ kind: "element",
220
+ tag: PARA_TAG,
221
+ requiredAttributes: [...ID_ATTRS],
222
+ optionalAttributes: [...TRACK_CHANGES_ATTRS],
223
+ allowedChildTagNames: [...ATOM_TAGS, ...INLINE_TAGS]
224
+ });
225
+
226
+ // src/schema/elementSchemas/elements/title.ts
227
+ var TITLE_SCHEMA = createSchema({
228
+ kind: "element",
229
+ tag: TITLE_TAG,
230
+ requiredAttributes: [
231
+ ...ID_ATTRS,
232
+ {
233
+ name: "title",
234
+ values: ["H1", "H2", "H3", "H4", "H5", "H6"],
235
+ defaultValue: "H1"
236
+ }
237
+ ],
238
+ optionalAttributes: [...TRACK_CHANGES_ATTRS],
239
+ allowedChildTagNames: [...ATOM_TAGS, ...INLINE_TAGS]
240
+ });
241
+
242
+ // src/schema/elementSchemas/elements/index.ts
243
+ var ELEMENT_SCHEMAS = [
244
+ PARA_SCHEMA,
245
+ TITLE_SCHEMA
246
+ ];
247
+
248
+ // src/schema/elementSchemas/groupElements/groupElementsTags.ts
249
+ var SECTION_TAG = "SECTION1";
250
+
251
+ // src/schema/elementSchemas/groupElements/section.ts
252
+ var SECTION_SCHEMA = createSchema({
253
+ kind: "group",
254
+ tag: SECTION_TAG,
255
+ role: "HEADING" /* HEADING */,
256
+ requiredAttributes: [
257
+ ...ID_ATTRS,
258
+ "xmlid",
259
+ {
260
+ name: "role",
261
+ values: ["H1", "H2", "H3", "H4", "H5", "H6"],
262
+ defaultValue: "H1"
263
+ }
264
+ ],
265
+ optionalAttributes: [...TRACK_CHANGES_ATTRS],
266
+ allowedChildTagNames: [PARA_TAG, TITLE_TAG, SECTION_TAG]
267
+ });
268
+
269
+ // src/schema/elementSchemas/groupElements/index.ts
270
+ var GROUP_ELEMENT_SCHEMAS = [SECTION_SCHEMA];
271
+
272
+ // src/schema/elementSchemas/inlineElements/comment.ts
273
+ var COMMENT_SCHEMA = createSchema({
274
+ kind: "inline",
275
+ tag: COMMENT_TAG,
276
+ requiredAttributes: [...ID_ATTRS, "id"],
277
+ optionalAttributes: [
278
+ ...TRACK_CHANGES_ATTRS,
279
+ {
280
+ name: "status",
281
+ values: ["marks-done", "marks-open"],
282
+ defaultValue: "marks-open"
283
+ },
284
+ "title",
285
+ "markuser",
286
+ "marktime"
287
+ ],
288
+ allowedChildTagNames: [CONTENT_TAG, REPLY_TAG]
289
+ });
290
+
291
+ // src/schema/elementSchemas/inlineElements/content.ts
292
+ var CONTENT_SCHEMA = createSchema({
293
+ kind: "inline",
294
+ tag: CONTENT_TAG,
295
+ requiredAttributes: [...ID_ATTRS],
296
+ optionalAttributes: [],
297
+ allowedChildTagNames: [
298
+ B_TAG,
299
+ I_TAG,
300
+ U_TAG,
301
+ SC_TAG,
302
+ EMPHASIS_TAG,
303
+ STRIKE_TAG,
304
+ SUB_TAG,
305
+ SUP_TAG
306
+ ]
307
+ });
308
+
309
+ // src/schema/elementSchemas/inlineElements/footnote1.ts
310
+ var FOOTNOTE1_SCHEMA = createSchema({
311
+ kind: "inline",
312
+ tag: FOOTNOTE1_TAG,
313
+ requiredAttributes: [...ID_ATTRS],
314
+ optionalAttributes: ["linkend"],
315
+ allowedChildTagNames: ATOM_TAGS
316
+ });
317
+
318
+ // src/schema/elementSchemas/inlineElements/inlineequation.ts
319
+ var INLINEEQUATION_SCHEMA = createSchema({
320
+ kind: "inline",
321
+ tag: INLINEEQUATION_TAG,
322
+ requiredAttributes: [...ID_ATTRS],
323
+ optionalAttributes: ["linkend"],
324
+ allowedChildTagNames: ATOM_TAGS
325
+ });
326
+
327
+ // src/schema/elementSchemas/inlineElements/link1.ts
328
+ var LINK1_SCHEMA = createSchema({
329
+ kind: "inline",
330
+ tag: LINK1_TAG,
331
+ requiredAttributes: [...ID_ATTRS],
332
+ optionalAttributes: ["linkend"],
333
+ allowedChildTagNames: ATOM_TAGS
334
+ });
335
+
336
+ // src/schema/elementSchemas/inlineElements/query.ts
337
+ var QUERY_SCHEMA = createSchema({
338
+ kind: "inline",
339
+ tag: QUERY_TAG2,
340
+ requiredAttributes: [...ID_ATTRS, "id"],
341
+ optionalAttributes: [
342
+ ...TRACK_CHANGES_ATTRS,
343
+ {
344
+ name: "status",
345
+ values: ["marks-done", "marks-open"],
346
+ defaultValue: "marks-open"
347
+ },
348
+ "title",
349
+ "markuser",
350
+ "marktime"
351
+ ],
352
+ allowedChildTagNames: [CONTENT_TAG, REPLY_TAG]
353
+ });
354
+
355
+ // src/schema/elementSchemas/inlineElements/reply.ts
356
+ var REPLY_SCHEMA = createSchema({
357
+ kind: "inline",
358
+ tag: REPLY_TAG,
359
+ requiredAttributes: [...ID_ATTRS, "id"],
360
+ optionalAttributes: [
361
+ ...TRACK_CHANGES_ATTRS,
362
+ {
363
+ name: "status",
364
+ values: ["marks-done", "marks-open"],
365
+ defaultValue: "marks-open"
366
+ },
367
+ "title",
368
+ "markuser",
369
+ "marktime"
370
+ ],
371
+ allowedChildTagNames: [CONTENT_TAG]
372
+ });
373
+
374
+ // src/schema/elementSchemas/inlineElements/uri.ts
375
+ var URI_SCHEMA = createSchema({
376
+ kind: "inline",
377
+ tag: URI_TAG,
378
+ requiredAttributes: [...ID_ATTRS],
379
+ optionalAttributes: ["linkend"],
380
+ allowedChildTagNames: ATOM_TAGS
381
+ });
382
+
383
+ // src/schema/elementSchemas/inlineElements/index.ts
384
+ var INLINE_ELEMENT_SCHEMAS = [
385
+ URI_SCHEMA,
386
+ FOOTNOTE1_SCHEMA,
387
+ LINK1_SCHEMA,
388
+ INLINEEQUATION_SCHEMA,
389
+ COMMENT_SCHEMA,
390
+ QUERY_SCHEMA,
391
+ CONTENT_SCHEMA,
392
+ REPLY_SCHEMA
393
+ ];
394
+
395
+ // src/schema/schemas.ts
396
+ var SCHEMAS = [
397
+ ...ATOM_SCHEMAS,
398
+ ...ELEMENT_SCHEMAS,
399
+ ...GROUP_ELEMENT_SCHEMAS,
400
+ ...INLINE_ELEMENT_SCHEMAS
401
+ ];
402
+
403
+ // src/index.ts
404
+ var replacer = (_key, value) => value instanceof Set ? { __type: "Set", values: [...value] } : value;
405
+ var schemas = Object.fromEntries(
406
+ SCHEMAS.map((schema) => [
407
+ schema.tag,
408
+ JSON.parse(JSON.stringify(schema, replacer))
409
+ ])
410
+ );
411
+ export {
412
+ schemas
413
+ };
package/package.json ADDED
@@ -0,0 +1,25 @@
1
+ {
2
+ "name": "pro-editor-schema",
3
+ "version": "0.0.1-alpha.0",
4
+ "description": "Pro Editor XML schemas",
5
+ "main": "dist/index.js",
6
+ "module": "dist/index.mjs",
7
+ "types": "dist/index.d.ts",
8
+ "exports": {
9
+ ".": {
10
+ "import": "./dist/index.mjs",
11
+ "require": "./dist/index.js",
12
+ "types": "./dist/index.d.ts"
13
+ }
14
+ },
15
+ "files": [
16
+ "dist"
17
+ ],
18
+ "scripts": {
19
+ "build": "tsup src/index.ts --format cjs,esm --dts"
20
+ },
21
+ "devDependencies": {
22
+ "tsup": "^8.0.0",
23
+ "typescript": "^5.0.0"
24
+ }
25
+ }