@podlite/schema 0.0.66 → 0.0.68

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 (76) hide show
  1. package/CHANGELOG.podlite +44 -0
  2. package/esm/ast-helpers.d.ts +25 -1
  3. package/esm/ast-helpers.js +101 -2
  4. package/esm/ast-helpers.js.map +1 -1
  5. package/esm/attribute-names.d.ts +5 -0
  6. package/esm/attribute-names.js +36 -0
  7. package/esm/attribute-names.js.map +1 -0
  8. package/esm/block-names.d.ts +1 -0
  9. package/esm/block-names.js +6 -1
  10. package/esm/block-names.js.map +1 -1
  11. package/esm/exportAny.js +2 -2
  12. package/esm/exportAny.js.map +1 -1
  13. package/esm/exportHtml.js +60 -22
  14. package/esm/exportHtml.js.map +1 -1
  15. package/esm/exportMarkdown.js +62 -52
  16. package/esm/exportMarkdown.js.map +1 -1
  17. package/esm/folded-sections.d.ts +1 -0
  18. package/esm/folded-sections.js +80 -0
  19. package/esm/folded-sections.js.map +1 -0
  20. package/esm/grammarfc.js +6099 -15834
  21. package/esm/grammarfc.js.map +1 -1
  22. package/esm/guard.d.ts +5 -0
  23. package/esm/guard.js +39 -0
  24. package/esm/guard.js.map +1 -0
  25. package/esm/helpers/corePlugins.js +9 -3
  26. package/esm/helpers/corePlugins.js.map +1 -1
  27. package/esm/helpers/html-attr.d.ts +1 -0
  28. package/esm/helpers/html-attr.js +6 -0
  29. package/esm/helpers/html-attr.js.map +1 -0
  30. package/esm/index.d.ts +6 -2
  31. package/esm/index.js +6 -2
  32. package/esm/index.js.map +1 -1
  33. package/esm/pluggableParser.d.ts +1 -1
  34. package/esm/pluggableParser.js +7 -1
  35. package/esm/pluggableParser.js.map +1 -1
  36. package/esm/plugin-data-table.js +2 -1
  37. package/esm/plugin-data-table.js.map +1 -1
  38. package/esm/plugin-tables.js +5 -2
  39. package/esm/plugin-tables.js.map +1 -1
  40. package/esm/selectors.d.ts +1 -0
  41. package/esm/selectors.js +42 -19
  42. package/esm/selectors.js.map +1 -1
  43. package/esm/types.d.ts +30 -16
  44. package/esm/version.d.ts +1 -1
  45. package/esm/version.js +1 -1
  46. package/lib/ast-helpers.d.ts +25 -1
  47. package/lib/ast-helpers.js +106 -3
  48. package/lib/attribute-names.d.ts +5 -0
  49. package/lib/attribute-names.js +41 -0
  50. package/lib/block-names.d.ts +1 -0
  51. package/lib/block-names.js +8 -2
  52. package/lib/exportAny.js +1 -1
  53. package/lib/exportHtml.js +62 -24
  54. package/lib/exportMarkdown.js +61 -51
  55. package/lib/folded-sections.d.ts +1 -0
  56. package/lib/folded-sections.js +84 -0
  57. package/lib/grammarfc.js +6099 -15834
  58. package/lib/guard.d.ts +5 -0
  59. package/lib/guard.js +47 -0
  60. package/lib/helpers/corePlugins.js +9 -3
  61. package/lib/helpers/html-attr.d.ts +1 -0
  62. package/lib/helpers/html-attr.js +10 -0
  63. package/lib/index.d.ts +6 -2
  64. package/lib/index.js +11 -1
  65. package/lib/pluggableParser.d.ts +1 -1
  66. package/lib/pluggableParser.js +8 -1
  67. package/lib/plugin-data-table.js +2 -1
  68. package/lib/plugin-tables.js +5 -2
  69. package/lib/selectors.d.ts +1 -0
  70. package/lib/selectors.js +44 -20
  71. package/lib/types.d.ts +30 -16
  72. package/lib/version.d.ts +1 -1
  73. package/lib/version.js +1 -1
  74. package/package.json +1 -1
  75. package/schema/AstTree.json +626 -405
  76. package/schema/PodliteDocument.json +626 -405
@@ -1,10 +1,11 @@
1
1
  import toAny from './exportAny';
2
+ import { isCovered } from './guard';
2
3
  import { subUse, wrapContent, emptyContent, content, setFn, handleNested, maskText, collectText, } from './helpers/handlers';
3
4
  import makeAttrs, { codeConfigWithDefaults } from './helpers/config';
4
5
  import { applyImageBase } from './image-base';
5
6
  import writerMarkdown from './writerMarkdown';
6
7
  import clean_plugin from './plugin-clean-location';
7
- import { markdownStyle, restyleAnchors, sameDocTarget } from './ast-helpers';
8
+ import { linkTarget, markdownStyle, restyleAnchors, sameDocTarget, writtenValue } from './ast-helpers';
8
9
  import { readLinkConfig } from './helpers/link-config';
9
10
  // A markdown reader builds the anchor out of the heading itself, by its own rules,
10
11
  // so a link written here has to match what that reader will produce.
@@ -13,10 +14,49 @@ const linkTitle = config => {
13
14
  const { title } = readLinkConfig(config);
14
15
  return title === undefined ? '' : ` "${title.replace(/"/g, '\\"')}"`;
15
16
  };
17
+ // Markdown has no form for a link whose target the author never wrote — an empty
18
+ // address there claims the current document — so the text is written on its own.
19
+ // A bracket or a space inside the address would end it where markdown looks for
20
+ // the closing one, so such an address is written in angle brackets, the form
21
+ // markdown keeps for exactly that. An angle of its own is percent-encoded rather
22
+ // than dropped, so the address survives the round trip — no source text reaches
23
+ // here holding one today, since the parser ends the code on it.
24
+ const markdownAddress = (address) => /[()\s]/.test(address) ? `<${address.replace(/</g, '%3C').replace(/>/g, '%3E')}>` : address;
25
+ const linkWrap = (node, ctx) => {
26
+ const target = linkTarget(node);
27
+ if (target === undefined)
28
+ return wrapContent('', '');
29
+ const resolved = sameDocTarget(target, ctx, markdownAnchors(ctx));
30
+ // Markdown has no anchor without an address either, so a refused link keeps its
31
+ // text and loses the brackets.
32
+ if (resolved === undefined)
33
+ return wrapContent('', '');
34
+ const address = String(resolved);
35
+ return wrapContent(`[`, `](${markdownAddress(address)}${linkTitle(codeConfigWithDefaults(node, ctx))})`);
36
+ };
37
+ // A cell's own text is written whole. Trimming each fragment on its own eats the
38
+ // spaces that sit between them — between a word and a markup code, or around a
39
+ // sign the parser split the text on — so only the cell edges are stripped.
40
+ const writeCellParts = (cell, writer, interator, ctx) => {
41
+ const parts = cell.content || [];
42
+ const last = parts.length - 1;
43
+ parts.forEach((part, i) => {
44
+ if (typeof part !== 'string') {
45
+ interator([part], ctx);
46
+ return;
47
+ }
48
+ let text = part;
49
+ if (i === 0)
50
+ text = text.replace(/^\s+/, '');
51
+ if (i === last)
52
+ text = text.replace(/\s+$/, '');
53
+ writer.write(text);
54
+ });
55
+ };
16
56
  const rules = {
17
57
  ':text': (writer, processor) => (node, ctx, interator) => {
18
58
  if (node.value) {
19
- writer.write(ctx?.maskMode ? maskText(node.value) : node.value);
59
+ writer.write(isCovered(node, ctx) ? maskText(node.value) : node.value);
20
60
  }
21
61
  else {
22
62
  interator(node.content, ctx);
@@ -64,20 +104,8 @@ const rules = {
64
104
  },
65
105
  'H<>': wrapContent('<sup>', '</sup>'),
66
106
  'J<>': wrapContent('<sub>', '</sub>'),
67
- 'L<>': setFn((node, ctx) => {
68
- let { meta } = node;
69
- if (meta === null) {
70
- meta = node.content;
71
- }
72
- return wrapContent(`[`, `](${sameDocTarget(meta, ctx, markdownAnchors(ctx))}${linkTitle(codeConfigWithDefaults(node, ctx))})`);
73
- }),
74
- 'W<>': setFn((node, ctx) => {
75
- let { meta } = node;
76
- if (meta === null) {
77
- meta = node.content;
78
- }
79
- return wrapContent(`[`, `](${sameDocTarget(meta, ctx, markdownAnchors(ctx))}${linkTitle(codeConfigWithDefaults(node, ctx))})`);
80
- }),
107
+ 'L<>': setFn((node, ctx) => linkWrap(node, ctx)),
108
+ 'W<>': setFn((node, ctx) => linkWrap(node, ctx)),
81
109
  'N<>': (writer, processor) => {
82
110
  writer.addListener('end', () => {
83
111
  if (!writer.hasOwnProperty('FOOTNOTES')) {
@@ -145,7 +173,7 @@ const rules = {
145
173
  const conf = makeAttrs(node, ctx);
146
174
  const lang = conf.exists('lang') ? conf.getFirstValue('lang') : '';
147
175
  writer.writeRaw('```' + lang + '\n');
148
- const masked = ctx?.maskMode;
176
+ const masked = isCovered(node, ctx);
149
177
  if (node.content) {
150
178
  node.content.forEach(child => {
151
179
  if (typeof child === 'string') {
@@ -165,7 +193,7 @@ const rules = {
165
193
  const conf = makeAttrs(node, ctx);
166
194
  const lang = conf.exists('lang') ? conf.getFirstValue('lang') : '';
167
195
  writer.writeRaw('```' + lang + '\n');
168
- const masked = ctx?.maskMode;
196
+ const masked = isCovered(node, ctx);
169
197
  if (node.content) {
170
198
  node.content.forEach(child => {
171
199
  if (typeof child === 'string') {
@@ -186,7 +214,7 @@ const rules = {
186
214
  if (node.error) {
187
215
  writer.emit('errors', node.location);
188
216
  }
189
- writer.writeRaw(ctx?.maskMode ? maskText(node.value) : node.value);
217
+ writer.writeRaw(isCovered(node, ctx) ? maskText(node.value) : node.value);
190
218
  },
191
219
  ':blankline': emptyContent,
192
220
  ':ambient': emptyContent,
@@ -328,16 +356,7 @@ const rules = {
328
356
  if (rowspan)
329
357
  attrs += ` rowspan="${rowspan}"`;
330
358
  writer.writeRaw(`<${tag}${attrs}>`);
331
- if (cell.content) {
332
- cell.content.forEach(c => {
333
- if (typeof c === 'string') {
334
- writer.write(c.trim());
335
- }
336
- else {
337
- interator([c], ctx);
338
- }
339
- });
340
- }
359
+ writeCellParts(cell, writer, interator, ctx);
341
360
  writer.writeRaw(`</${tag}>`);
342
361
  });
343
362
  writer.writeRaw('</tr>\n');
@@ -355,15 +374,7 @@ const rules = {
355
374
  return null;
356
375
  writer.output = (str) => parts.push(str);
357
376
  try {
358
- ;
359
- (cell.content || []).forEach(c => {
360
- if (typeof c === 'string') {
361
- writer.write(c.trim());
362
- }
363
- else {
364
- interator([c], ctx);
365
- }
366
- });
377
+ writeCellParts(cell, writer, interator, ctx);
367
378
  }
368
379
  finally {
369
380
  writer.output = original;
@@ -381,16 +392,7 @@ const rules = {
381
392
  writer.writeRaw(' ');
382
393
  const folded = renderCell(cell);
383
394
  if (folded === null) {
384
- if (cell.content) {
385
- cell.content.forEach(c => {
386
- if (typeof c === 'string') {
387
- writer.write(c.trim());
388
- }
389
- else {
390
- interator([c], ctx);
391
- }
392
- });
393
- }
395
+ writeCellParts(cell, writer, interator, ctx);
394
396
  }
395
397
  else {
396
398
  writer.writeRaw(folded);
@@ -425,7 +427,11 @@ const rules = {
425
427
  ':toc-list': emptyContent,
426
428
  ':toc-item': emptyContent,
427
429
  ':image': (writer, processor) => (node, ctx, interator) => {
428
- writer.writeRaw(`![${node.alt || ''}](${applyImageBase(node.src, ctx?.base)})`);
430
+ // the alternative text sits between square brackets, where a `]` of its own
431
+ // would end it, and the address between round ones — the same shape a link has
432
+ const alt = (writtenValue(node.alt) ?? '').replace(/([[\]\\])/g, '\\$1');
433
+ const src = markdownAddress(String(applyImageBase(node.src, ctx?.base) ?? ''));
434
+ writer.writeRaw(`![${alt}](${src})`);
429
435
  },
430
436
  };
431
437
  const toMarkdown = opt => toAny({
@@ -453,15 +459,19 @@ const toMarkdown = opt => toAny({
453
459
  })
454
460
  .use(rules)
455
461
  .use('*', (writer, processor) => (node, ctx, interator, defaultFn) => {
456
- if (!node || node.type !== 'block')
462
+ if (!node)
457
463
  return defaultFn();
458
464
  if (ctx?.maskMode)
459
465
  return defaultFn();
466
+ if (ctx?.renderMode === 'draft')
467
+ return defaultFn();
468
+ if (node.guarded)
469
+ return defaultFn(node, { ...(ctx || {}), maskMode: true }, interator);
470
+ if (node.type !== 'block')
471
+ return defaultFn();
460
472
  const conf = makeAttrs(node, ctx || {});
461
473
  if (!conf.exists('masked') || !conf.getFirstValue('masked'))
462
474
  return defaultFn();
463
- if (ctx?.renderMode === 'draft')
464
- return defaultFn();
465
475
  return defaultFn(node, { ...(ctx || {}), maskMode: true }, interator);
466
476
  });
467
477
  export default toMarkdown;
@@ -1 +1 @@
1
- {"version":3,"file":"exportMarkdown.js","sourceRoot":"","sources":["../src/exportMarkdown.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"exportMarkdown.js","sourceRoot":"","sources":["../src/exportMarkdown.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export declare const applyFoldedSections: (node: any) => any;
@@ -0,0 +1,80 @@
1
+ // Folding of a section belongs to the tree, not to one renderer: the command
2
+ // line and every build-time producer read the same document as the editor does.
3
+ // Moved here from @podlite/to-jsx, where it lived and left exportHtml and
4
+ // exportMarkdown unable to fold anything.
5
+ // `:folded` on a heading folds the whole section — the heading plus every
6
+ // following node up to the next same-or-higher-level heading. Detect the
7
+ // attribute on =head nodes in a container's content array and wrap that
8
+ // range in a synthetic `_folded_section` block so the JSX renderer can emit
9
+ // <details> around it.
10
+ const getFoldedAttr = (node) => {
11
+ const config = node && node.config;
12
+ if (!Array.isArray(config))
13
+ return null;
14
+ const entry = config.find((c) => c && c.name === 'folded');
15
+ return entry ? entry.value : null;
16
+ };
17
+ const isHeadBlock = (node) => node && node.type === 'block' && node.name === 'head' && node.level !== undefined && node.level !== null;
18
+ const headLevel = (node) => Number(node.level);
19
+ const groupFoldedSections = (content) => {
20
+ if (!Array.isArray(content))
21
+ return content;
22
+ const result = [];
23
+ let i = 0;
24
+ while (i < content.length) {
25
+ const node = content[i];
26
+ if (isHeadBlock(node)) {
27
+ const folded = getFoldedAttr(node);
28
+ if (folded !== null) {
29
+ const level = headLevel(node);
30
+ const sectionNodes = [node];
31
+ let j = i + 1;
32
+ while (j < content.length) {
33
+ const next = content[j];
34
+ if (isHeadBlock(next) && headLevel(next) <= level)
35
+ break;
36
+ sectionNodes.push(next);
37
+ j++;
38
+ }
39
+ result.push({
40
+ type: 'block',
41
+ name: '_folded_section',
42
+ content: sectionNodes,
43
+ foldedState: folded,
44
+ location: node.location,
45
+ });
46
+ i = j;
47
+ continue;
48
+ }
49
+ }
50
+ result.push(node);
51
+ i++;
52
+ }
53
+ return result;
54
+ };
55
+ // Walk the AST and apply `groupFoldedSections` to every block's `content`
56
+ // array, so :folded heads inside named blocks, defn, nested etc. fold the
57
+ // same way they do at the pod-level. Inside an already-built
58
+ // `_folded_section`, the first element is the heading the wrapper belongs
59
+ // to — skip it when grouping the rest, otherwise the same head would be
60
+ // re-wrapped on every recursion. Nested folds (a folded heading inside a
61
+ // folded section's body) are still picked up by grouping the remainder.
62
+ export const applyFoldedSections = (node) => {
63
+ if (!node || typeof node !== 'object')
64
+ return node;
65
+ if (Array.isArray(node))
66
+ return node.map(applyFoldedSections);
67
+ if (!Array.isArray(node.content))
68
+ return node;
69
+ if (node.name === '_folded_section') {
70
+ const [head, ...rest] = node.content;
71
+ const grouped = groupFoldedSections(rest);
72
+ return {
73
+ ...node,
74
+ content: [applyFoldedSections(head), ...grouped.map(applyFoldedSections)],
75
+ };
76
+ }
77
+ const grouped = groupFoldedSections(node.content);
78
+ return { ...node, content: grouped.map(applyFoldedSections) };
79
+ };
80
+ //# sourceMappingURL=folded-sections.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"folded-sections.js","sourceRoot":"","sources":["../src/folded-sections.ts"],"names":[],"mappings":"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"}