@the_dissidents/libemmm 0.0.5 → 0.0.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (125) hide show
  1. package/README.md +28 -15
  2. package/dist/index.d.mts +124 -44
  3. package/dist/index.d.ts +124 -44
  4. package/dist/index.js +547 -227
  5. package/dist/index.js.map +1 -1
  6. package/dist/index.mjs +544 -227
  7. package/dist/index.mjs.map +1 -1
  8. package/package.json +4 -1
  9. package/dist/src/builtin/builtin.d.ts +0 -2
  10. package/dist/src/builtin/builtin.js +0 -18
  11. package/dist/src/builtin/builtin.js.map +0 -1
  12. package/dist/src/builtin/define-modifier.d.ts +0 -12
  13. package/dist/src/builtin/define-modifier.js +0 -129
  14. package/dist/src/builtin/define-modifier.js.map +0 -1
  15. package/dist/src/builtin/define-shorthand.d.ts +0 -14
  16. package/dist/src/builtin/define-shorthand.js +0 -178
  17. package/dist/src/builtin/define-shorthand.js.map +0 -1
  18. package/dist/src/builtin/internal.d.ts +0 -41
  19. package/dist/src/builtin/internal.js +0 -106
  20. package/dist/src/builtin/internal.js.map +0 -1
  21. package/dist/src/builtin/module.d.ts +0 -16
  22. package/dist/src/builtin/module.js +0 -156
  23. package/dist/src/builtin/module.js.map +0 -1
  24. package/dist/src/builtin/slot.d.ts +0 -7
  25. package/dist/src/builtin/slot.js +0 -136
  26. package/dist/src/builtin/slot.js.map +0 -1
  27. package/dist/src/builtin/var.d.ts +0 -12
  28. package/dist/src/builtin/var.js +0 -103
  29. package/dist/src/builtin/var.js.map +0 -1
  30. package/dist/src/debug-print.d.ts +0 -14
  31. package/dist/src/debug-print.js +0 -113
  32. package/dist/src/debug-print.js.map +0 -1
  33. package/dist/src/debug.d.ts +0 -15
  34. package/dist/src/debug.js +0 -47
  35. package/dist/src/debug.js.map +0 -1
  36. package/dist/src/default/bullets.d.ts +0 -4
  37. package/dist/src/default/bullets.js +0 -39
  38. package/dist/src/default/bullets.js.map +0 -1
  39. package/dist/src/default/code.d.ts +0 -6
  40. package/dist/src/default/code.js +0 -13
  41. package/dist/src/default/code.js.map +0 -1
  42. package/dist/src/default/default.d.ts +0 -2
  43. package/dist/src/default/default.js +0 -20
  44. package/dist/src/default/default.js.map +0 -1
  45. package/dist/src/default/headings.d.ts +0 -20
  46. package/dist/src/default/headings.js +0 -125
  47. package/dist/src/default/headings.js.map +0 -1
  48. package/dist/src/default/html-renderer.d.ts +0 -26
  49. package/dist/src/default/html-renderer.js +0 -108
  50. package/dist/src/default/html-renderer.js.map +0 -1
  51. package/dist/src/default/inline-styles.d.ts +0 -4
  52. package/dist/src/default/inline-styles.js +0 -24
  53. package/dist/src/default/inline-styles.js.map +0 -1
  54. package/dist/src/default/misc.d.ts +0 -6
  55. package/dist/src/default/misc.js +0 -112
  56. package/dist/src/default/misc.js.map +0 -1
  57. package/dist/src/default/notes.d.ts +0 -28
  58. package/dist/src/default/notes.js +0 -109
  59. package/dist/src/default/notes.js.map +0 -1
  60. package/dist/src/default/quotes.d.ts +0 -4
  61. package/dist/src/default/quotes.js +0 -36
  62. package/dist/src/default/quotes.js.map +0 -1
  63. package/dist/src/default/vars.d.ts +0 -2
  64. package/dist/src/default/vars.js +0 -39
  65. package/dist/src/default/vars.js.map +0 -1
  66. package/dist/src/index.d.ts +0 -13
  67. package/dist/src/index.js +0 -58
  68. package/dist/src/index.js.map +0 -1
  69. package/dist/src/interface.d.ts +0 -174
  70. package/dist/src/interface.js +0 -93
  71. package/dist/src/interface.js.map +0 -1
  72. package/dist/src/messages.d.ts +0 -165
  73. package/dist/src/messages.js +0 -279
  74. package/dist/src/messages.js.map +0 -1
  75. package/dist/src/modifier-helper.d.ts +0 -6
  76. package/dist/src/modifier-helper.js +0 -113
  77. package/dist/src/modifier-helper.js.map +0 -1
  78. package/dist/src/parser-config.d.ts +0 -44
  79. package/dist/src/parser-config.js +0 -67
  80. package/dist/src/parser-config.js.map +0 -1
  81. package/dist/src/parser.d.ts +0 -3
  82. package/dist/src/parser.js +0 -652
  83. package/dist/src/parser.js.map +0 -1
  84. package/dist/src/renderer.d.ts +0 -49
  85. package/dist/src/renderer.js +0 -81
  86. package/dist/src/renderer.js.map +0 -1
  87. package/dist/src/scanner.d.ts +0 -22
  88. package/dist/src/scanner.js +0 -50
  89. package/dist/src/scanner.js.map +0 -1
  90. package/dist/src/temp.d.ts +0 -1
  91. package/dist/src/temp.js +0 -108
  92. package/dist/src/temp.js.map +0 -1
  93. package/dist/src/typing-helper.d.ts +0 -7
  94. package/dist/src/typing-helper.js +0 -3
  95. package/dist/src/typing-helper.js.map +0 -1
  96. package/dist/src/util.d.ts +0 -29
  97. package/dist/src/util.js +0 -177
  98. package/dist/src/util.js.map +0 -1
  99. package/dist/tests/advanced_syntax.test.d.ts +0 -1
  100. package/dist/tests/advanced_syntax.test.js +0 -180
  101. package/dist/tests/advanced_syntax.test.js.map +0 -1
  102. package/dist/tests/basic_syntax.test.d.ts +0 -1
  103. package/dist/tests/basic_syntax.test.js +0 -431
  104. package/dist/tests/basic_syntax.test.js.map +0 -1
  105. package/dist/tests/default/headings.test.d.ts +0 -1
  106. package/dist/tests/default/headings.test.js +0 -90
  107. package/dist/tests/default/headings.test.js.map +0 -1
  108. package/dist/tests/define_block.test.d.ts +0 -1
  109. package/dist/tests/define_block.test.js +0 -209
  110. package/dist/tests/define_block.test.js.map +0 -1
  111. package/dist/tests/define_inline.test.d.ts +0 -1
  112. package/dist/tests/define_inline.test.js +0 -289
  113. package/dist/tests/define_inline.test.js.map +0 -1
  114. package/dist/tests/modules.test.d.ts +0 -1
  115. package/dist/tests/modules.test.js +0 -137
  116. package/dist/tests/modules.test.js.map +0 -1
  117. package/dist/tests/shorthands.test.d.ts +0 -1
  118. package/dist/tests/shorthands.test.js +0 -79
  119. package/dist/tests/shorthands.test.js.map +0 -1
  120. package/dist/tsup.config.d.ts +0 -2
  121. package/dist/tsup.config.js +0 -12
  122. package/dist/tsup.config.js.map +0 -1
  123. package/dist/vitest.config.d.ts +0 -2
  124. package/dist/vitest.config.js +0 -17
  125. package/dist/vitest.config.js.map +0 -1
@@ -1,180 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
- Object.defineProperty(exports, "__esModule", { value: true });
36
- const vitest_1 = require("vitest");
37
- const builtin_1 = require("../src/builtin/builtin");
38
- const scanner_1 = require("../src/scanner");
39
- const Parser = __importStar(require("../src/parser"));
40
- const interface_1 = require("../src/interface");
41
- const debug_1 = require("../src/debug");
42
- const parser_config_1 = require("../src/parser-config");
43
- const TestConfig = parser_config_1.Configuration.from(builtin_1.BuiltinConfiguration);
44
- TestConfig.blockModifiers.add(new interface_1.BlockModifierDefinition('normal', interface_1.ModifierSlotType.Normal));
45
- function parse(src) {
46
- const config = parser_config_1.Configuration.from(TestConfig);
47
- let doc = Parser.parse(new scanner_1.SimpleScanner(src), new parser_config_1.ParseContext(config)).toStripped();
48
- return doc;
49
- }
50
- function parseWithoutStrip(src) {
51
- const config = parser_config_1.Configuration.from(TestConfig);
52
- let doc = Parser.parse(new scanner_1.SimpleScanner(src), new parser_config_1.ParseContext(config));
53
- return doc;
54
- }
55
- debug_1.debug.level = debug_1.DebugLevel.Warning;
56
- (0, vitest_1.describe)('argument parsing', () => {
57
- (0, vitest_1.test)('[/print]', () => {
58
- let doc = parse(`[/print 123:456]`);
59
- vitest_1.expect.soft(doc.messages).toMatchObject([]);
60
- vitest_1.expect.soft(doc.root.content).toMatchObject([
61
- { type: interface_1.NodeType.Paragraph, content: [
62
- { type: interface_1.NodeType.Text, content: '123456' }
63
- ] }
64
- ]);
65
- });
66
- (0, vitest_1.test)('simple', () => {
67
- let doc = parseWithoutStrip(`[.normal 123:456]`);
68
- vitest_1.expect.soft(doc.messages).toMatchObject([]);
69
- vitest_1.expect.soft(doc.root.content).toMatchObject([{
70
- type: interface_1.NodeType.BlockModifier, mod: { name: 'normal' },
71
- arguments: [
72
- { content: [{ content: "123" }] },
73
- { content: [{ content: "456" }] }
74
- ]
75
- }]);
76
- });
77
- (0, vitest_1.test)('multiple lines', () => {
78
- let doc = parseWithoutStrip(`[.normal 123\n456\n\n\n78900:\nab\n\ncdef\n:zzzz]`);
79
- vitest_1.expect.soft(doc.messages).toMatchObject([]);
80
- vitest_1.expect.soft(doc.root.content).toMatchObject([{
81
- type: interface_1.NodeType.BlockModifier, mod: { name: 'normal' },
82
- arguments: [
83
- { content: [{ content: "123\n456\n\n\n78900" }] },
84
- { content: [{ content: "\nab\n\ncdef\n" }] },
85
- { content: [{ content: "zzzz" }] }
86
- ]
87
- }]);
88
- });
89
- (0, vitest_1.test)('escaped', () => {
90
- let doc = parseWithoutStrip(String.raw `[/print \]]`);
91
- vitest_1.expect.soft(doc.messages).toMatchObject([]);
92
- vitest_1.expect.soft(doc.root.content).toMatchObject([{
93
- type: interface_1.NodeType.Paragraph,
94
- content: [{
95
- type: interface_1.NodeType.InlineModifier, mod: { name: 'print' },
96
- arguments: [{ content: [{ type: interface_1.NodeType.Escaped, content: "]" }] }],
97
- expansion: [{ type: interface_1.NodeType.Text, content: ']' }]
98
- }]
99
- }]);
100
- });
101
- (0, vitest_1.test)('variable interpolation: AST', () => {
102
- let doc = parse(`[.normal $(x)]`);
103
- vitest_1.expect.soft(doc.messages).toMatchObject([]);
104
- vitest_1.expect.soft(doc.root.content).toMatchObject([{
105
- type: interface_1.NodeType.BlockModifier, mod: { name: 'normal' },
106
- arguments: [
107
- { content: [{
108
- type: interface_1.NodeType.Interpolation,
109
- argument: { content: [{ type: interface_1.NodeType.Text, content: 'x' }] }
110
- }] }
111
- ],
112
- content: []
113
- }]);
114
- doc = parse(String.raw `[.normal $(\))]`);
115
- vitest_1.expect.soft(doc.messages).toMatchObject([]);
116
- vitest_1.expect.soft(doc.root.content).toMatchObject([{
117
- type: interface_1.NodeType.BlockModifier, mod: { name: 'normal' },
118
- arguments: [
119
- { content: [{
120
- type: interface_1.NodeType.Interpolation,
121
- argument: { content: [{ type: interface_1.NodeType.Escaped, content: ")" }] }
122
- }] }
123
- ],
124
- content: []
125
- }]);
126
- });
127
- (0, vitest_1.test)('variable interpolation: expansion', () => {
128
- let doc = parse(`[-var x:123][/print $(x)]`);
129
- vitest_1.expect.soft(doc.messages).toMatchObject([]);
130
- vitest_1.expect.soft(doc.root.content).toMatchObject([
131
- { type: interface_1.NodeType.Paragraph, content: [{ type: interface_1.NodeType.Text, content: '123' }] }
132
- ]);
133
- });
134
- (0, vitest_1.test)('variable interpolation: nested', () => {
135
- let doc = parse(`[-var x:y][-var xy:123][/print $(x$(x))]`);
136
- vitest_1.expect.soft(doc.messages).toMatchObject([]);
137
- vitest_1.expect.soft(doc.root.content).toMatchObject([
138
- { type: interface_1.NodeType.Paragraph, content: [{ type: interface_1.NodeType.Text, content: '123' }] }
139
- ]);
140
- });
141
- (0, vitest_1.test)('complex argument interpolation (modifier)', () => {
142
- let doc = parse(`[-define-block a:x:y][-define-block $(y):z][/$x][/$y][/$z]\n\n[.a b:c;]\n[.c 1;]`);
143
- vitest_1.expect.soft(doc.messages).toMatchObject([]);
144
- vitest_1.expect.soft(doc.root.content).toMatchObject([
145
- { type: interface_1.NodeType.Paragraph, content: [
146
- { type: interface_1.NodeType.Text, content: 'b' },
147
- { type: interface_1.NodeType.Text, content: 'c' },
148
- { type: interface_1.NodeType.Text, content: '1' }
149
- ] }
150
- ]);
151
- });
152
- (0, vitest_1.test)('complex argument interpolation (interp)', () => {
153
- let doc = parse(`[-define-block a:x:y][-define-block $(y):z][/print $(x)$(y)$(z)]\n\n[.a b:c;]\n[.c 1;]`);
154
- vitest_1.expect.soft(doc.messages).toMatchObject([]);
155
- vitest_1.expect.soft(doc.root.content).toMatchObject([
156
- { type: interface_1.NodeType.Paragraph, content: [
157
- { type: interface_1.NodeType.Text, content: 'bc1' }
158
- ] }
159
- ]);
160
- });
161
- });
162
- (0, vitest_1.describe)('[-var] and [/$]', () => {
163
- (0, vitest_1.test)('simple', () => {
164
- let doc = parse(`[-var x:123][/$x]`);
165
- vitest_1.expect.soft(doc.messages).toMatchObject([]);
166
- vitest_1.expect.soft(doc.root.content).toMatchObject([
167
- { type: interface_1.NodeType.Paragraph, content: [{ type: interface_1.NodeType.Text, content: '123' }] }
168
- ]);
169
- });
170
- (0, vitest_1.test)('warning - undefined reference', () => {
171
- let doc = parse(`[/$x]`);
172
- vitest_1.expect.soft(doc.messages).toMatchObject([
173
- { code: 5, severity: interface_1.MessageSeverity.Warning }
174
- ]);
175
- vitest_1.expect.soft(doc.root.content).toMatchObject([
176
- { type: interface_1.NodeType.Paragraph, content: [] }
177
- ]);
178
- });
179
- });
180
- //# sourceMappingURL=advanced_syntax.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"advanced_syntax.test.js","sourceRoot":"","sources":["../../tests/advanced_syntax.test.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- export {};
@@ -1,431 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
- Object.defineProperty(exports, "__esModule", { value: true });
36
- const vitest_1 = require("vitest");
37
- const scanner_1 = require("../src/scanner");
38
- const Parser = __importStar(require("../src/parser"));
39
- const interface_1 = require("../src/interface");
40
- const parser_config_1 = require("../src/parser-config");
41
- const TestConfig = new parser_config_1.Configuration();
42
- TestConfig.blockModifiers.add(new interface_1.BlockModifierDefinition('normal', interface_1.ModifierSlotType.Normal), new interface_1.BlockModifierDefinition('pre', interface_1.ModifierSlotType.Preformatted), new interface_1.BlockModifierDefinition('marker', interface_1.ModifierSlotType.None));
43
- TestConfig.inlineModifiers.add(new interface_1.InlineModifierDefinition('normal', interface_1.ModifierSlotType.Normal), new interface_1.InlineModifierDefinition('pre', interface_1.ModifierSlotType.Preformatted), new interface_1.InlineModifierDefinition('marker', interface_1.ModifierSlotType.None));
44
- function parse(src) {
45
- return Parser.parse(new scanner_1.SimpleScanner(src), new parser_config_1.ParseContext(TestConfig));
46
- }
47
- (0, vitest_1.describe)('basic syntax', () => {
48
- (0, vitest_1.test)('empty source', () => {
49
- const doc = parse(``);
50
- vitest_1.expect.soft(doc.messages).toHaveLength(0);
51
- vitest_1.expect.soft(doc.root.content).toHaveLength(0);
52
- });
53
- (0, vitest_1.test)('simple paragraphs', () => {
54
- const doc = parse(`aaa\nbbb\n\nccc\n\nddd`);
55
- vitest_1.expect.soft(doc.messages).toHaveLength(0);
56
- vitest_1.expect.soft(doc.root.content).toMatchObject([
57
- { type: interface_1.NodeType.Paragraph, content: [{ type: interface_1.NodeType.Text, content: 'aaa\nbbb' }] },
58
- { type: interface_1.NodeType.Paragraph, content: [{ type: interface_1.NodeType.Text, content: 'ccc' }] },
59
- { type: interface_1.NodeType.Paragraph, content: [{ type: interface_1.NodeType.Text, content: 'ddd' }] }
60
- ]);
61
- });
62
- (0, vitest_1.test)('escaping', () => {
63
- let doc = parse(`a\\[.b]\\`);
64
- vitest_1.expect.soft(doc.messages).toHaveLength(0);
65
- vitest_1.expect.soft(doc.root.content).toMatchObject([
66
- { type: interface_1.NodeType.Paragraph, content: [
67
- { type: interface_1.NodeType.Text, content: 'a' },
68
- { type: interface_1.NodeType.Escaped, content: '[' },
69
- { type: interface_1.NodeType.Text, content: '.b]\\' }
70
- ] },
71
- ]);
72
- });
73
- (0, vitest_1.test)('normal block modifier', () => {
74
- let doc = parse(`[.normal]abc`);
75
- vitest_1.expect.soft(doc.messages).toHaveLength(0);
76
- vitest_1.expect.soft(doc.root.content).toMatchObject([
77
- {
78
- type: interface_1.NodeType.BlockModifier, mod: { name: 'normal' },
79
- content: [{ type: interface_1.NodeType.Paragraph, content: [{ type: interface_1.NodeType.Text, content: 'abc' }] }]
80
- }
81
- ]);
82
- doc = parse(` [.normal] \n abc\n def `);
83
- vitest_1.expect.soft(doc.messages).toHaveLength(0);
84
- vitest_1.expect.soft(doc.root.content).toMatchObject([
85
- {
86
- type: interface_1.NodeType.BlockModifier, mod: { name: 'normal' },
87
- content: [{ type: interface_1.NodeType.Paragraph, content: [{ type: interface_1.NodeType.Text, content: 'abc\ndef' }] }]
88
- }
89
- ]);
90
- doc = parse(`[.normal]\nabc\n\ndef`);
91
- vitest_1.expect.soft(doc.messages).toHaveLength(0);
92
- vitest_1.expect.soft(doc.root.content).toMatchObject([
93
- {
94
- type: interface_1.NodeType.BlockModifier, mod: { name: 'normal' },
95
- content: [{ type: interface_1.NodeType.Paragraph, content: [{ type: interface_1.NodeType.Text, content: 'abc' }] }]
96
- },
97
- { type: interface_1.NodeType.Paragraph, content: [{ type: interface_1.NodeType.Text, content: 'def' }] }
98
- ]);
99
- });
100
- (0, vitest_1.test)('normal groups', () => {
101
- let doc = parse(`:--\nabc\n\ndef\n--:`);
102
- vitest_1.expect.soft(doc.messages).toHaveLength(0);
103
- vitest_1.expect.soft(doc.root.content).toMatchObject([
104
- { type: interface_1.NodeType.Paragraph, content: [{ type: interface_1.NodeType.Text, content: 'abc' }] },
105
- { type: interface_1.NodeType.Paragraph, content: [{ type: interface_1.NodeType.Text, content: 'def' }] }
106
- ]);
107
- doc = parse(`:--\nabc\n\n:--\ndef\n--:\n--:`);
108
- vitest_1.expect.soft(doc.messages).toHaveLength(0);
109
- vitest_1.expect.soft(doc.root.content).toMatchObject([
110
- { type: interface_1.NodeType.Paragraph, content: [{ type: interface_1.NodeType.Text, content: 'abc' }] },
111
- { type: interface_1.NodeType.Paragraph, content: [{ type: interface_1.NodeType.Text, content: 'def' }] }
112
- ]);
113
- doc = parse(`[.normal]:--\nabc\n\ndef\n--:`);
114
- vitest_1.expect.soft(doc.messages).toHaveLength(0);
115
- vitest_1.expect.soft(doc.root.content).toMatchObject([
116
- {
117
- type: interface_1.NodeType.BlockModifier, mod: { name: 'normal' },
118
- content: [
119
- { type: interface_1.NodeType.Paragraph, content: [{ type: interface_1.NodeType.Text, content: 'abc' }] },
120
- { type: interface_1.NodeType.Paragraph, content: [{ type: interface_1.NodeType.Text, content: 'def' }] }
121
- ]
122
- },
123
- ]);
124
- doc = parse(` [.normal] \n :--\n abc \n--:`);
125
- vitest_1.expect.soft(doc.messages).toHaveLength(0);
126
- vitest_1.expect.soft(doc.root.content).toMatchObject([
127
- {
128
- type: interface_1.NodeType.BlockModifier, mod: { name: 'normal' },
129
- content: [{ type: interface_1.NodeType.Paragraph, content: [{ type: interface_1.NodeType.Text, content: 'abc' }] }]
130
- },
131
- ]);
132
- });
133
- (0, vitest_1.test)('preformatted block modifier', () => {
134
- let doc = parse(`[.pre]abc`);
135
- vitest_1.expect.soft(doc.messages).toHaveLength(0);
136
- vitest_1.expect.soft(doc.root.content).toMatchObject([
137
- {
138
- type: interface_1.NodeType.BlockModifier, mod: { name: 'pre' },
139
- content: [{ type: interface_1.NodeType.Preformatted, content: { text: 'abc' } }]
140
- },
141
- ]);
142
- doc = parse(` [.pre] \n abc\n def`);
143
- vitest_1.expect.soft(doc.messages).toHaveLength(0);
144
- vitest_1.expect.soft(doc.root.content).toMatchObject([
145
- {
146
- type: interface_1.NodeType.BlockModifier, mod: { name: 'pre' },
147
- content: [{ type: interface_1.NodeType.Preformatted, content: { text: 'abc\n def' } }]
148
- },
149
- ]);
150
- doc = parse(`[.pre]\nabc\n\ndef`);
151
- vitest_1.expect.soft(doc.messages).toHaveLength(0);
152
- vitest_1.expect.soft(doc.root.content).toMatchObject([
153
- {
154
- type: interface_1.NodeType.BlockModifier, mod: { name: 'pre' },
155
- content: [{ type: interface_1.NodeType.Preformatted, content: { text: 'abc' } }]
156
- },
157
- { type: interface_1.NodeType.Paragraph, content: [{ type: interface_1.NodeType.Text, content: 'def' }] }
158
- ]);
159
- });
160
- (0, vitest_1.test)('preformatted groups', () => {
161
- let doc = parse(`[.pre]:--\n\n\n--:`);
162
- vitest_1.expect.soft(doc.messages).toHaveLength(0);
163
- vitest_1.expect.soft(doc.root.content).toMatchObject([
164
- {
165
- type: interface_1.NodeType.BlockModifier, mod: { name: 'pre' },
166
- content: [{ type: interface_1.NodeType.Preformatted, content: { text: '\n' } }]
167
- }
168
- ]);
169
- doc = parse(`[.pre]:--\nabc\n\ndef\n--:`);
170
- vitest_1.expect.soft(doc.messages).toHaveLength(0);
171
- vitest_1.expect.soft(doc.root.content).toMatchObject([
172
- {
173
- type: interface_1.NodeType.BlockModifier, mod: { name: 'pre' },
174
- content: [{ type: interface_1.NodeType.Preformatted, content: { text: 'abc\n\ndef' } }]
175
- }
176
- ]);
177
- doc = parse(` [.pre] \n :--\n abc\n--:`);
178
- vitest_1.expect.soft(doc.messages).toHaveLength(0);
179
- vitest_1.expect.soft(doc.root.content).toMatchObject([
180
- {
181
- type: interface_1.NodeType.BlockModifier, mod: { name: 'pre' },
182
- content: [{ type: interface_1.NodeType.Preformatted, content: { text: ' abc' } }]
183
- }
184
- ]);
185
- });
186
- (0, vitest_1.test)('empty block modifier', () => {
187
- let doc = parse(`[.normal;]abc`);
188
- vitest_1.expect.soft(doc.messages).toHaveLength(0);
189
- vitest_1.expect.soft(doc.root.content).toMatchObject([
190
- {
191
- type: interface_1.NodeType.BlockModifier, mod: { name: 'normal' },
192
- content: []
193
- },
194
- { type: interface_1.NodeType.Paragraph, content: [{ type: interface_1.NodeType.Text, content: 'abc' }] },
195
- ]);
196
- doc = parse(`[.marker]abc`);
197
- vitest_1.expect.soft(doc.messages).toHaveLength(0);
198
- vitest_1.expect.soft(doc.root.content).toMatchObject([
199
- {
200
- type: interface_1.NodeType.BlockModifier, mod: { name: 'marker' },
201
- content: []
202
- },
203
- { type: interface_1.NodeType.Paragraph, content: [{ type: interface_1.NodeType.Text, content: 'abc' }] },
204
- ]);
205
- doc = parse(`[.normal][.pre]`);
206
- vitest_1.expect.soft(doc.messages).toHaveLength(0);
207
- vitest_1.expect.soft(doc.root.content).toMatchObject([
208
- {
209
- type: interface_1.NodeType.BlockModifier, mod: { name: 'normal' },
210
- content: [{
211
- type: interface_1.NodeType.BlockModifier, mod: { name: 'pre' },
212
- content: []
213
- }]
214
- }
215
- ]);
216
- });
217
- (0, vitest_1.test)('chained block modifiers', () => {
218
- let doc = parse(`[.normal][.normal][.pre]abc`);
219
- vitest_1.expect.soft(doc.messages).toHaveLength(0);
220
- vitest_1.expect.soft(doc.root.content).toMatchObject([{
221
- type: interface_1.NodeType.BlockModifier, mod: { name: 'normal' },
222
- content: [{
223
- type: interface_1.NodeType.BlockModifier, mod: { name: 'normal' },
224
- content: [{
225
- type: interface_1.NodeType.BlockModifier, mod: { name: 'pre' },
226
- content: [{ type: interface_1.NodeType.Preformatted, content: { text: 'abc' } }]
227
- }]
228
- }]
229
- }]);
230
- doc = parse(`[.normal][.normal]abc\n[.pre]def`);
231
- const obj1 = [
232
- {
233
- type: interface_1.NodeType.BlockModifier, mod: { name: 'normal' },
234
- content: [{
235
- type: interface_1.NodeType.BlockModifier, mod: { name: 'normal' },
236
- content: [
237
- { type: interface_1.NodeType.Paragraph, content: [{ type: interface_1.NodeType.Text, content: 'abc' }] }
238
- ]
239
- }]
240
- },
241
- {
242
- type: interface_1.NodeType.BlockModifier, mod: { name: 'pre' },
243
- content: [{ type: interface_1.NodeType.Preformatted, content: { text: 'def' } }]
244
- }
245
- ];
246
- vitest_1.expect.soft(doc.messages).toHaveLength(0);
247
- vitest_1.expect.soft(doc.root.content).toMatchObject(obj1);
248
- });
249
- (0, vitest_1.test)('normal inline modifier', () => {
250
- let doc = parse(`[/normal]abc[;]`);
251
- vitest_1.expect.soft(doc.messages).toHaveLength(0);
252
- vitest_1.expect.soft(doc.root.content).toMatchObject([{
253
- type: interface_1.NodeType.Paragraph,
254
- content: [{
255
- type: interface_1.NodeType.InlineModifier, mod: { name: 'normal' },
256
- content: [{ type: interface_1.NodeType.Text, content: 'abc' }]
257
- }]
258
- }]);
259
- doc = parse(`[/normal] abc [;]`);
260
- vitest_1.expect.soft(doc.messages).toHaveLength(0);
261
- vitest_1.expect.soft(doc.root.content).toMatchObject([{
262
- type: interface_1.NodeType.Paragraph,
263
- content: [{
264
- type: interface_1.NodeType.InlineModifier, mod: { name: 'normal' },
265
- content: [{ type: interface_1.NodeType.Text, content: 'abc' }]
266
- }]
267
- }]);
268
- doc = parse(`[/normal]abc[/normal]def[;][;]`);
269
- vitest_1.expect.soft(doc.messages).toHaveLength(0);
270
- vitest_1.expect.soft(doc.root.content).toMatchObject([{
271
- type: interface_1.NodeType.Paragraph,
272
- content: [{
273
- type: interface_1.NodeType.InlineModifier, mod: { name: 'normal' },
274
- content: [
275
- { type: interface_1.NodeType.Text, content: 'abc' },
276
- {
277
- type: interface_1.NodeType.InlineModifier, mod: { name: 'normal' },
278
- content: [{ type: interface_1.NodeType.Text, content: 'def' }]
279
- }
280
- ]
281
- }]
282
- }]);
283
- });
284
- (0, vitest_1.test)('preformatted inline modifier', () => {
285
- let doc = parse(`[/pre] abc [;]`);
286
- vitest_1.expect.soft(doc.messages).toHaveLength(0);
287
- vitest_1.expect.soft(doc.root.content).toMatchObject([{
288
- type: interface_1.NodeType.Paragraph,
289
- content: [{
290
- type: interface_1.NodeType.InlineModifier, mod: { name: 'pre' },
291
- content: [{ type: interface_1.NodeType.Text, content: ' abc ' }]
292
- }]
293
- }]);
294
- doc = parse(`[/pre][/normal;]ha[;]`);
295
- vitest_1.expect.soft(doc.messages).toHaveLength(0);
296
- vitest_1.expect.soft(doc.root.content).toMatchObject([{
297
- type: interface_1.NodeType.Paragraph,
298
- content: [{
299
- type: interface_1.NodeType.InlineModifier, mod: { name: 'pre' },
300
- content: [{ type: interface_1.NodeType.Text, content: '[/normal;]ha' }]
301
- }]
302
- }]);
303
- doc = parse(`[/normal]abc[/pre][/normal;]ha[;][;]`);
304
- vitest_1.expect.soft(doc.messages).toHaveLength(0);
305
- vitest_1.expect.soft(doc.root.content).toMatchObject([{
306
- type: interface_1.NodeType.Paragraph,
307
- content: [{
308
- type: interface_1.NodeType.InlineModifier, mod: { name: 'normal' },
309
- content: [
310
- { type: interface_1.NodeType.Text, content: 'abc' },
311
- {
312
- type: interface_1.NodeType.InlineModifier, mod: { name: 'pre' },
313
- content: [{ type: interface_1.NodeType.Text, content: '[/normal;]ha' }]
314
- }
315
- ]
316
- }]
317
- }]);
318
- });
319
- (0, vitest_1.test)('empty inline modifier', () => {
320
- let doc = parse(`[/normal;][/pre;][/marker;]`);
321
- vitest_1.expect.soft(doc.messages).toHaveLength(0);
322
- vitest_1.expect.soft(doc.root.content).toMatchObject([{
323
- type: interface_1.NodeType.Paragraph,
324
- content: [
325
- {
326
- type: interface_1.NodeType.InlineModifier, mod: { name: 'normal' },
327
- content: []
328
- }, {
329
- type: interface_1.NodeType.InlineModifier, mod: { name: 'pre' },
330
- content: []
331
- }, {
332
- type: interface_1.NodeType.InlineModifier, mod: { name: 'marker' },
333
- content: []
334
- }
335
- ]
336
- }]);
337
- doc = parse(`[/marker]`);
338
- vitest_1.expect.soft(doc.messages).toHaveLength(0);
339
- vitest_1.expect.soft(doc.root.content).toMatchObject([{
340
- type: interface_1.NodeType.Paragraph,
341
- content: [{
342
- type: interface_1.NodeType.InlineModifier, mod: { name: 'marker' },
343
- content: []
344
- }]
345
- }]);
346
- });
347
- (0, vitest_1.test)('unknown modifiers', () => {
348
- let doc = parse(`[.invalid]aaa[/invalid]bbb[;]ccc`);
349
- vitest_1.expect.soft(doc.messages).toMatchObject([
350
- { severity: interface_1.MessageSeverity.Error, code: 2 },
351
- { severity: interface_1.MessageSeverity.Error, code: 2 }
352
- ]);
353
- vitest_1.expect.soft(doc.root.content).toMatchObject([
354
- {
355
- type: interface_1.NodeType.BlockModifier, mod: { name: 'UNKNOWN' },
356
- content: [{
357
- type: interface_1.NodeType.Paragraph,
358
- content: [
359
- { type: interface_1.NodeType.Text, content: 'aaa' },
360
- {
361
- type: interface_1.NodeType.InlineModifier, mod: { name: 'UNKNOWN' },
362
- content: [{ type: interface_1.NodeType.Text, content: 'bbb' }]
363
- },
364
- { type: interface_1.NodeType.Text, content: 'ccc' },
365
- ]
366
- }]
367
- }
368
- ]);
369
- });
370
- (0, vitest_1.test)('warnings - extra newlines', () => {
371
- let doc = parse(`aaa\nbbb\n\n\nccc\n\nddd`);
372
- vitest_1.expect.soft(doc.messages).toMatchObject([
373
- { severity: interface_1.MessageSeverity.Warning, code: 1 }
374
- ]);
375
- doc = parse(`[.normal]\n\nabc`);
376
- vitest_1.expect.soft(doc.messages).toMatchObject([
377
- { severity: interface_1.MessageSeverity.Warning, code: 1 }
378
- ]);
379
- doc = parse(`[.pre]\n\nabc`);
380
- vitest_1.expect.soft(doc.messages).toMatchObject([
381
- { severity: interface_1.MessageSeverity.Warning, code: 1 }
382
- ]);
383
- doc = parse(`[.normal]abc\n\n\ndef`);
384
- vitest_1.expect.soft(doc.messages).toMatchObject([
385
- { severity: interface_1.MessageSeverity.Warning, code: 1 }
386
- ]);
387
- doc = parse(`[.pre]abc\n\n\ndef`);
388
- vitest_1.expect.soft(doc.messages).toMatchObject([
389
- { severity: interface_1.MessageSeverity.Warning, code: 1 }
390
- ]);
391
- });
392
- (0, vitest_1.test)('warnings - should be newlines', () => {
393
- let doc = parse(`:--abc\n--:`);
394
- vitest_1.expect.soft(doc.messages).toMatchObject([
395
- { severity: interface_1.MessageSeverity.Warning, code: 3 }
396
- ]);
397
- vitest_1.expect.soft(doc.root.content).toMatchObject([
398
- { type: interface_1.NodeType.Paragraph, content: [{ type: interface_1.NodeType.Text, content: 'abc' }] }
399
- ]);
400
- doc = parse(`[.pre]:--abc\n--:`);
401
- vitest_1.expect.soft(doc.messages).toMatchObject([
402
- { severity: interface_1.MessageSeverity.Warning, code: 3 }
403
- ]);
404
- vitest_1.expect.soft(doc.root.content).toMatchObject([
405
- {
406
- type: interface_1.NodeType.BlockModifier, mod: { name: 'pre' },
407
- content: [{ type: interface_1.NodeType.Preformatted, content: { text: 'abc' } }]
408
- },
409
- ]);
410
- doc = parse(`:--\nabc\n--:haha`);
411
- vitest_1.expect.soft(doc.messages).toMatchObject([
412
- { severity: interface_1.MessageSeverity.Warning, code: 3 }
413
- ]);
414
- vitest_1.expect.soft(doc.root.content).toMatchObject([
415
- { type: interface_1.NodeType.Paragraph, content: [{ type: interface_1.NodeType.Text, content: 'abc' }] },
416
- { type: interface_1.NodeType.Paragraph, content: [{ type: interface_1.NodeType.Text, content: 'haha' }] }
417
- ]);
418
- doc = parse(`[.pre]\n:--abc\n--:haha`);
419
- vitest_1.expect.soft(doc.messages).toMatchObject([
420
- { severity: interface_1.MessageSeverity.Warning, code: 3 }
421
- ]);
422
- vitest_1.expect.soft(doc.root.content).toMatchObject([
423
- {
424
- type: interface_1.NodeType.BlockModifier, mod: { name: 'pre' },
425
- content: [{ type: interface_1.NodeType.Preformatted, content: { text: 'abc' } }]
426
- },
427
- { type: interface_1.NodeType.Paragraph, content: [{ type: interface_1.NodeType.Text, content: 'haha' }] }
428
- ]);
429
- });
430
- });
431
- //# sourceMappingURL=basic_syntax.test.js.map