@refrakt-md/runes 0.14.1 → 0.14.3

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/tags/nav.js CHANGED
@@ -7,6 +7,13 @@ import { RenderableNodeCursor } from '../lib/renderable.js';
7
7
  export const NAV_AUTO_SENTINEL = '__nav-auto';
8
8
  /** Marker attribute placed on each NavGroup of a collapsible nav; resolved during postProcess */
9
9
  export const NAV_COLLAPSED_AUTO = 'auto';
10
+ /** True for renderable nodes that count as "list" content within a nav group
11
+ * (lists carry the items themselves). Anything else — paragraph, blockquote,
12
+ * image, nested rune — is a "content block" eligible for the position-based
13
+ * intro / footer slot rule in a menubar group. */
14
+ function isListNode(node) {
15
+ return Markdoc.Tag.isTag(node) && (node.name === 'ul' || node.name === 'ol');
16
+ }
10
17
  const navItem = createContentModelSchema({
11
18
  contentModel: {
12
19
  type: 'sequence',
@@ -26,24 +33,76 @@ const navItem = createContentModelSchema({
26
33
  },
27
34
  },
28
35
  }));
29
- const links = children.tag('a');
36
+ const directLinks = children.tag('a').toArray();
30
37
  const slug = children.tag('span');
31
38
  const nestedItems = children.tag('ul');
32
- // Explicit links (e.g., [Label](/path)) pass through as-is no slug resolution needed
33
- if (links.count() > 0) {
34
- return createComponentRenderable({ rune: 'nav-item',
39
+ const badges = children.toArray().filter(n => Markdoc.Tag.isTag(n) && n.attributes?.['data-rune'] === 'badge');
40
+ // SPEC-054 paragraphs that appear under a list item (CommonMark
41
+ // indented continuation) become per-item descriptions. In a CommonMark
42
+ // *loose* list, the link itself is wrapped in a paragraph too, so we
43
+ // separate link-wrapping paragraphs (extract their <a> child) from
44
+ // pure-description paragraphs.
45
+ const paragraphs = children.tag('p').toArray();
46
+ const linkParagraphs = [];
47
+ const descriptionParagraphs = [];
48
+ for (const p of paragraphs) {
49
+ const hasLink = p.children.some(c => Markdoc.Tag.isTag(c) && c.name === 'a');
50
+ if (hasLink)
51
+ linkParagraphs.push(p);
52
+ else
53
+ descriptionParagraphs.push(p);
54
+ }
55
+ const linksFromParagraphs = linkParagraphs.flatMap(p => p.children.filter((c) => Markdoc.Tag.isTag(c) && c.name === 'a'));
56
+ const allLinks = [...directLinks, ...linksFromParagraphs];
57
+ const descriptionText = descriptionParagraphs.flatMap(p => p.children);
58
+ const description = descriptionText.length > 0
59
+ ? new Markdoc.Tag('span', {
60
+ 'data-name': 'description',
61
+ class: 'rf-nav-item__description',
62
+ }, descriptionText)
63
+ : undefined;
64
+ // Explicit links (e.g., [Label](/path)) pass through — slug resolution
65
+ // happens at postProcess time (SPEC-055). The per-item description is
66
+ // appended *inside* the <a> so the whole item is one click target,
67
+ // matching the shape produced by auto=true frontmatter enrichment.
68
+ if (allLinks.length > 0) {
69
+ const enrichedLinks = description
70
+ ? allLinks.map(a => ({
71
+ ...a,
72
+ children: [...(a.children ?? []), description],
73
+ }))
74
+ : allLinks;
75
+ const extraChildren = [];
76
+ if (badges.length > 0) {
77
+ for (const b of badges)
78
+ b.attributes['data-name'] = 'badge';
79
+ extraChildren.push(...badges);
80
+ }
81
+ return createComponentRenderable({
82
+ rune: 'nav-item',
35
83
  tag: 'li',
36
- properties: {},
37
- children: links.toArray(),
84
+ properties: description ? { description } : {},
85
+ children: [...enrichedLinks, ...extraChildren],
38
86
  });
39
87
  }
40
- const itemChildren = nestedItems.count() > 0
41
- ? [...slug.toArray(), ...nestedItems.toArray()]
42
- : slug.toArray();
43
- return createComponentRenderable({ rune: 'nav-item',
88
+ const itemChildren = [];
89
+ if (slug.count() > 0)
90
+ itemChildren.push(...slug.toArray());
91
+ if (description)
92
+ itemChildren.push(description);
93
+ if (badges.length > 0) {
94
+ for (const b of badges)
95
+ b.attributes['data-name'] = 'badge';
96
+ itemChildren.push(...badges);
97
+ }
98
+ if (nestedItems.count() > 0)
99
+ itemChildren.push(...nestedItems.toArray());
100
+ return createComponentRenderable({
101
+ rune: 'nav-item',
44
102
  tag: 'li',
45
103
  properties: {
46
104
  slug,
105
+ ...(description ? { description } : {}),
47
106
  children: nestedItems.count() > 0
48
107
  ? nestedItems.flatten().tag('li')
49
108
  : undefined,
@@ -52,46 +111,192 @@ const navItem = createContentModelSchema({
52
111
  });
53
112
  },
54
113
  });
55
- function buildGroups(allNodes) {
114
+ /** Parse the nav's transformed children into top-level items, group sections,
115
+ * and column-break markers. Preserves all non-list content inside groups so
116
+ * the menubar slot rule and the columns flow rule can both operate on the
117
+ * same parse output. */
118
+ function parseNavStructure(allNodes) {
56
119
  const topLevel = [];
57
- const groups = [];
58
- let currentHeading = null;
59
- let currentItems = [];
120
+ const sequence = [];
121
+ let currentGroup = null;
60
122
  const flush = () => {
61
- if (!currentHeading)
62
- return;
63
- groups.push(createComponentRenderable({ rune: 'nav-group',
64
- tag: 'section',
65
- properties: {
66
- title: currentHeading,
67
- item: currentItems.flatMap(ul => ul.children.filter((c) => Markdoc.Tag.isTag(c) && c.name === 'li')),
68
- },
69
- children: [currentHeading, ...currentItems], }));
123
+ if (currentGroup) {
124
+ sequence.push(currentGroup);
125
+ currentGroup = null;
126
+ }
70
127
  };
71
128
  for (const node of allNodes) {
72
- if (node instanceof Markdoc.Tag && /^h[1-6]$/.test(node.name)) {
129
+ // Headings open a new group section.
130
+ if (Markdoc.Tag.isTag(node) && /^h[1-6]$/.test(node.name)) {
73
131
  flush();
74
- currentHeading = node;
75
- currentItems = [];
132
+ currentGroup = { kind: 'group', heading: node, children: [] };
133
+ continue;
76
134
  }
77
- else if (node instanceof Markdoc.Tag && node.name === 'ul') {
78
- if (!currentHeading) {
79
- // Items before the first heading become top-level items
80
- topLevel.push(...node.children.filter((c) => Markdoc.Tag.isTag(c) && c.name === 'li'));
135
+ // <hr> between groups (at the nav top level) is a column-break marker
136
+ // for the columns layout. Other layouts ignore it.
137
+ if (Markdoc.Tag.isTag(node) && node.name === 'hr') {
138
+ if (currentGroup) {
139
+ flush();
81
140
  }
82
- else {
83
- currentItems.push(node);
141
+ sequence.push({ kind: 'column-break' });
142
+ continue;
143
+ }
144
+ // Lists before the first heading become the top-level item row.
145
+ if (!currentGroup) {
146
+ if (Markdoc.Tag.isTag(node) && isListNode(node)) {
147
+ topLevel.push(...node.children.filter((c) => Markdoc.Tag.isTag(c) && c.name === 'li'));
84
148
  }
149
+ continue;
85
150
  }
151
+ // Inside a group: keep every child in source order (list or otherwise).
152
+ currentGroup.children.push(node);
86
153
  }
87
154
  flush();
88
- return { topLevel, groups };
155
+ return { topLevel, sequence };
156
+ }
157
+ /** Classify a group's children into intro / footer / body slots per SPEC-054.
158
+ *
159
+ * Body content = lists and nested rune blocks (e.g. a `{% nav layout="columns" %}`
160
+ * inside the group). They carry their own structure and always render in
161
+ * the panel body. Slot material = prose (paragraphs, blockquotes, images,
162
+ * etc.) that wraps the body.
163
+ *
164
+ * Position rule: a slot candidate that appears before any body block is
165
+ * intro; one that appears after all body blocks is footer. Middle slot
166
+ * candidates fall back to body in source order. With no body at all, a
167
+ * single slot becomes intro; two or more get split into intro+footer. */
168
+ function partitionGroupChildren(children) {
169
+ const isBodyBlock = (c) => {
170
+ if (!Markdoc.Tag.isTag(c))
171
+ return false;
172
+ if (c.name === 'ul' || c.name === 'ol')
173
+ return true;
174
+ return Boolean(c.attributes?.['data-rune']);
175
+ };
176
+ const isSlotCandidate = (c) => {
177
+ return Markdoc.Tag.isTag(c) && !isBodyBlock(c);
178
+ };
179
+ let firstBodyIdx = -1;
180
+ let lastBodyIdx = -1;
181
+ children.forEach((c, i) => {
182
+ if (isBodyBlock(c)) {
183
+ if (firstBodyIdx === -1)
184
+ firstBodyIdx = i;
185
+ lastBodyIdx = i;
186
+ }
187
+ });
188
+ let introIdx;
189
+ let footerIdx;
190
+ if (firstBodyIdx !== -1) {
191
+ // Intro: first slot candidate before the first body block.
192
+ for (let i = 0; i < firstBodyIdx; i++) {
193
+ if (isSlotCandidate(children[i])) {
194
+ introIdx = i;
195
+ break;
196
+ }
197
+ }
198
+ // Footer: last slot candidate after the last body block.
199
+ for (let i = children.length - 1; i > lastBodyIdx; i--) {
200
+ if (isSlotCandidate(children[i])) {
201
+ footerIdx = i;
202
+ break;
203
+ }
204
+ }
205
+ }
206
+ else {
207
+ // No body. Preserve the prior simple-group behaviour: a lone slot
208
+ // becomes intro, two or more split into intro + footer.
209
+ const slots = [];
210
+ children.forEach((c, i) => {
211
+ if (isSlotCandidate(c))
212
+ slots.push(i);
213
+ });
214
+ if (slots.length === 1) {
215
+ introIdx = slots[0];
216
+ }
217
+ else if (slots.length >= 2) {
218
+ introIdx = slots[0];
219
+ footerIdx = slots[slots.length - 1];
220
+ }
221
+ }
222
+ const intro = introIdx !== undefined ? children[introIdx] : undefined;
223
+ const footer = footerIdx !== undefined ? children[footerIdx] : undefined;
224
+ const body = [];
225
+ children.forEach((c, i) => {
226
+ if (i === introIdx || i === footerIdx)
227
+ return;
228
+ body.push(c);
229
+ });
230
+ return { intro, body, footer };
231
+ }
232
+ /** Build a NavGroup renderable from a parsed group, wrapping the intro and
233
+ * footer slots in `data-name`-stamped divs so the engine emits
234
+ * `.rf-nav-group__intro` / `.rf-nav-group__footer` classes. Everything
235
+ * except the heading is further wrapped in a `<div data-name="panel">`
236
+ * container so layouts that treat the panel as a single positioned box
237
+ * (menubar dropdowns, mega panels) can target one selector regardless of
238
+ * whether the panel contains a flat list, a nested nav, or rich slot
239
+ * content. */
240
+ function buildGroupTag(group) {
241
+ const { intro, body, footer } = partitionGroupChildren(group.children);
242
+ // Collect items property: every <li> across every list child.
243
+ const items = [];
244
+ for (const c of body) {
245
+ if (Markdoc.Tag.isTag(c) && isListNode(c)) {
246
+ items.push(...c.children.filter((x) => Markdoc.Tag.isTag(x) && x.name === 'li'));
247
+ }
248
+ }
249
+ const panelChildren = [];
250
+ if (intro) {
251
+ panelChildren.push(new Markdoc.Tag('div', { 'data-name': 'intro' }, [intro]));
252
+ }
253
+ panelChildren.push(...body);
254
+ if (footer) {
255
+ panelChildren.push(new Markdoc.Tag('div', { 'data-name': 'footer' }, [footer]));
256
+ }
257
+ const groupChildren = [group.heading];
258
+ if (panelChildren.length > 0) {
259
+ groupChildren.push(new Markdoc.Tag('div', { 'data-name': 'panel' }, panelChildren));
260
+ }
261
+ return createComponentRenderable({
262
+ rune: 'nav-group',
263
+ tag: 'section',
264
+ properties: {
265
+ title: group.heading,
266
+ item: items,
267
+ },
268
+ children: groupChildren,
269
+ });
270
+ }
271
+ /** Bucket a NavSequence into columns separated by column-break markers.
272
+ * Used by the columns layout. Empty leading / trailing buckets are dropped. */
273
+ function bucketColumns(sequence) {
274
+ const columns = [];
275
+ let current = [];
276
+ for (const entry of sequence) {
277
+ if (entry.kind === 'column-break') {
278
+ if (current.length > 0)
279
+ columns.push(current);
280
+ current = [];
281
+ }
282
+ else {
283
+ current.push(entry);
284
+ }
285
+ }
286
+ if (current.length > 0)
287
+ columns.push(current);
288
+ return columns;
89
289
  }
90
290
  export const nav = createContentModelSchema({
91
291
  attributes: {
92
292
  ordered: { type: Boolean, required: false, description: 'Use numbered list for navigation items' },
93
293
  auto: { type: Boolean, required: false, description: 'Automatically generate from child pages' },
94
- layout: { type: String, required: false, matches: ['vertical', 'menubar', 'columns', 'cards'], description: 'Presentation layout: sidebar (vertical), horizontal menubar (header), column grid (footer), or cards (section landing). Defaults to vertical.' },
294
+ layout: {
295
+ type: String,
296
+ required: false,
297
+ matches: ['vertical', 'menubar', 'columns', 'cards', 'strip'],
298
+ description: 'Presentation layout: sidebar (vertical), horizontal menubar (header), column grid (footer), cards (section landing), or strip (compact secondary nav). Defaults to vertical.',
299
+ },
95
300
  collapsible: { type: Boolean, required: false, description: 'Make each group collapsible. The group containing the current page auto-expands; others start collapsed. Only meaningful for vertical layout.' },
96
301
  defaultOpen: { type: String, required: false, description: 'Comma-separated group titles to expand by default, overriding the URL-driven auto-open behaviour.' },
97
302
  },
@@ -102,9 +307,14 @@ export const nav = createContentModelSchema({
102
307
  },
103
308
  transform(resolved, attrs, config) {
104
309
  const collapsible = Boolean(attrs.collapsible);
310
+ const sourcePath = config.variables?.__sourcePath;
105
311
  const forwardLayout = (tag) => {
106
312
  if (attrs.layout)
107
313
  tag.attributes.layout = attrs.layout;
314
+ if (sourcePath)
315
+ tag.attributes['data-source-path'] = sourcePath;
316
+ if (attrs.auto)
317
+ tag.attributes['data-auto'] = 'true';
108
318
  if (collapsible) {
109
319
  tag.attributes['data-collapsible'] = 'true';
110
320
  const existing = tag.attributes.class ?? '';
@@ -131,7 +341,8 @@ export const nav = createContentModelSchema({
131
341
  // Emit a placeholder with an empty nav and a sentinel meta tag.
132
342
  // The core post-process hook will replace this with resolved child page items.
133
343
  const sentinelMeta = new Markdoc.Tag('meta', { 'data-field': NAV_AUTO_SENTINEL, content: 'true' });
134
- return forwardLayout(createComponentRenderable({ rune: 'nav',
344
+ return forwardLayout(createComponentRenderable({
345
+ rune: 'nav',
135
346
  tag: 'nav',
136
347
  properties: {
137
348
  group: [],
@@ -152,39 +363,131 @@ export const nav = createContentModelSchema({
152
363
  },
153
364
  },
154
365
  }));
155
- const hasGroups = children.headings().count() > 0;
156
- if (hasGroups) {
157
- const { topLevel, groups } = buildGroups(children.toArray());
158
- if (collapsible) {
159
- for (const group of groups) {
160
- group.attributes['data-collapsed'] = NAV_COLLAPSED_AUTO;
366
+ // Strip layout flat list of items, no groups, no top-level container.
367
+ // Headings are silently rendered as plain children (the warning lives
368
+ // downstream if needed; the schema doesn't have a ctx hook here).
369
+ if (attrs.layout === 'strip') {
370
+ const flatItems = children.flatten().tag('li');
371
+ return forwardLayout(createComponentRenderable({
372
+ rune: 'nav',
373
+ tag: 'nav',
374
+ class: attrs.ordered ? 'ordered' : undefined,
375
+ properties: {
376
+ group: [],
377
+ item: flatItems,
378
+ },
379
+ children: children.toArray(),
380
+ }));
381
+ }
382
+ const { topLevel, sequence } = parseNavStructure(children.toArray());
383
+ const groups = sequence.filter((s) => s.kind === 'group');
384
+ const hasGroups = groups.length > 0;
385
+ const hasColumnBreaks = sequence.some(s => s.kind === 'column-break');
386
+ // Headingless mode: no `##` sections. If `<hr>`s are present and the
387
+ // layout is columns, bucket the flat items at the top level into
388
+ // columns. Otherwise fall through to the existing flat-list path.
389
+ if (!hasGroups) {
390
+ if (attrs.layout === 'columns' && hasColumnBreaks) {
391
+ // Walk the original children, splitting by hr; each segment's
392
+ // items become a column.
393
+ const columns = [];
394
+ let buf = [];
395
+ const flushColumn = () => {
396
+ if (buf.length > 0) {
397
+ columns.push([new Markdoc.Tag('ul', {}, buf)]);
398
+ buf = [];
399
+ }
400
+ };
401
+ for (const node of children.toArray()) {
402
+ if (Markdoc.Tag.isTag(node) && node.name === 'hr') {
403
+ flushColumn();
404
+ continue;
405
+ }
406
+ if (Markdoc.Tag.isTag(node) && isListNode(node)) {
407
+ buf.push(...node.children.filter((c) => Markdoc.Tag.isTag(c) && c.name === 'li'));
408
+ }
161
409
  }
410
+ flushColumn();
411
+ const columnTags = columns.map(col => new Markdoc.Tag('div', { 'data-name': 'column' }, col));
412
+ const allItems = children.flatten().tag('li');
413
+ return forwardLayout(createComponentRenderable({
414
+ rune: 'nav',
415
+ tag: 'nav',
416
+ class: attrs.ordered ? 'ordered' : undefined,
417
+ properties: {
418
+ group: [],
419
+ item: allItems,
420
+ },
421
+ children: maybeWithTrigger(columnTags),
422
+ }));
162
423
  }
163
- const topLevelContainer = topLevel.length > 0
164
- ? new Markdoc.Tag('div', { 'data-name': 'top-level' }, [new Markdoc.Tag('ul', {}, topLevel)])
165
- : null;
166
- const allGroupItems = groups.flatMap(g => g.children.filter((c) => Markdoc.Tag.isTag(c) && c.name === 'ul')
167
- .flatMap(ul => ul.children.filter((c) => Markdoc.Tag.isTag(c) && c.name === 'li')));
168
- return forwardLayout(createComponentRenderable({ rune: 'nav',
424
+ // Flat list (no groups, no column breaks).
425
+ const allItems = children.flatten().tag('li');
426
+ return forwardLayout(createComponentRenderable({
427
+ rune: 'nav',
428
+ tag: 'nav',
429
+ class: attrs.ordered ? 'ordered' : undefined,
430
+ properties: {
431
+ group: [],
432
+ item: allItems,
433
+ },
434
+ children: maybeWithTrigger(children.toArray()),
435
+ }));
436
+ }
437
+ // Has groups. Build group tags with intro/footer slot detection.
438
+ const groupTags = groups.map(buildGroupTag);
439
+ if (collapsible) {
440
+ for (const group of groupTags) {
441
+ group.attributes['data-collapsed'] = NAV_COLLAPSED_AUTO;
442
+ }
443
+ }
444
+ const topLevelContainer = topLevel.length > 0
445
+ ? new Markdoc.Tag('div', { 'data-name': 'top-level' }, [new Markdoc.Tag('ul', {}, topLevel)])
446
+ : null;
447
+ const allGroupItems = groupTags.flatMap(g => {
448
+ // Lists now live inside the group's `<div data-name="panel">` wrapper
449
+ // (added by buildGroupTag). Walk the group's descendants once to
450
+ // collect every <li> regardless of nesting depth.
451
+ const items = [];
452
+ const walk = (n) => {
453
+ if (!Markdoc.Tag.isTag(n))
454
+ return;
455
+ if (n.name === 'li') {
456
+ items.push(n);
457
+ return;
458
+ }
459
+ for (const c of n.children)
460
+ walk(c);
461
+ };
462
+ for (const c of g.children)
463
+ walk(c);
464
+ return items;
465
+ });
466
+ // Columns layout with `<hr>`s between sections: bucket groups into columns.
467
+ if (attrs.layout === 'columns' && hasColumnBreaks) {
468
+ const columns = bucketColumns(sequence);
469
+ const groupTagByRef = new Map(groups.map((g, i) => [g, groupTags[i]]));
470
+ const columnTags = columns.map(col => new Markdoc.Tag('div', { 'data-name': 'column' }, col.map(g => groupTagByRef.get(g)).filter(Boolean)));
471
+ return forwardLayout(createComponentRenderable({
472
+ rune: 'nav',
169
473
  tag: 'nav',
170
474
  class: attrs.ordered ? 'ordered' : undefined,
171
475
  properties: {
172
- group: groups,
476
+ group: groupTags,
173
477
  item: [...topLevel, ...allGroupItems],
174
478
  },
175
- children: maybeWithTrigger(topLevelContainer ? [topLevelContainer, ...groups] : groups),
479
+ children: maybeWithTrigger(topLevelContainer ? [topLevelContainer, ...columnTags] : columnTags),
176
480
  }));
177
481
  }
178
- // Flat list (no groups)
179
- const allItems = children.flatten().tag('li');
180
- return forwardLayout(createComponentRenderable({ rune: 'nav',
482
+ return forwardLayout(createComponentRenderable({
483
+ rune: 'nav',
181
484
  tag: 'nav',
182
485
  class: attrs.ordered ? 'ordered' : undefined,
183
486
  properties: {
184
- group: [],
185
- item: allItems,
487
+ group: groupTags,
488
+ item: [...topLevel, ...allGroupItems],
186
489
  },
187
- children: maybeWithTrigger(children.toArray()),
490
+ children: maybeWithTrigger(topLevelContainer ? [topLevelContainer, ...groupTags] : groupTags),
188
491
  }));
189
492
  },
190
493
  });
@@ -1 +1 @@
1
- {"version":3,"file":"nav.js","sourceRoot":"","sources":["../../src/tags/nav.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"nav.js","sourceRoot":"","sources":["../../src/tags/nav.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@refrakt-md/runes",
3
3
  "description": "Semantic Markdoc runes for refrakt.md",
4
- "version": "0.14.1",
4
+ "version": "0.14.3",
5
5
  "type": "module",
6
6
  "license": "MIT",
7
7
  "repository": {
@@ -29,8 +29,8 @@
29
29
  "build": "tsc"
30
30
  },
31
31
  "dependencies": {
32
- "@refrakt-md/types": "0.14.1",
33
- "@refrakt-md/transform": "0.14.1",
32
+ "@refrakt-md/types": "0.14.3",
33
+ "@refrakt-md/transform": "0.14.3",
34
34
  "@markdoc/markdoc": "0.4.0",
35
35
  "reflect-metadata": "^0.2.0",
36
36
  "fast-xml-parser": "4.5.1",