@refrakt-md/runes 0.1.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.
Files changed (217) hide show
  1. package/dist/attributes.d.ts +15 -0
  2. package/dist/attributes.d.ts.map +1 -0
  3. package/dist/attributes.js +46 -0
  4. package/dist/attributes.js.map +1 -0
  5. package/dist/documents/doc.d.ts +4 -0
  6. package/dist/documents/doc.d.ts.map +1 -0
  7. package/dist/documents/doc.js +4 -0
  8. package/dist/documents/doc.js.map +1 -0
  9. package/dist/documents/footer.d.ts +2 -0
  10. package/dist/documents/footer.d.ts.map +1 -0
  11. package/dist/documents/footer.js +60 -0
  12. package/dist/documents/footer.js.map +1 -0
  13. package/dist/documents/menu.d.ts +2 -0
  14. package/dist/documents/menu.d.ts.map +1 -0
  15. package/dist/documents/menu.js +40 -0
  16. package/dist/documents/menu.js.map +1 -0
  17. package/dist/documents/page.d.ts +10 -0
  18. package/dist/documents/page.d.ts.map +1 -0
  19. package/dist/documents/page.js +30 -0
  20. package/dist/documents/page.js.map +1 -0
  21. package/dist/documents/summary.d.ts +3 -0
  22. package/dist/documents/summary.d.ts.map +1 -0
  23. package/dist/documents/summary.js +63 -0
  24. package/dist/documents/summary.js.map +1 -0
  25. package/dist/hljs-markdoc.d.ts +3 -0
  26. package/dist/hljs-markdoc.d.ts.map +1 -0
  27. package/dist/hljs-markdoc.js +37 -0
  28. package/dist/hljs-markdoc.js.map +1 -0
  29. package/dist/index.d.ts +131 -0
  30. package/dist/index.d.ts.map +1 -0
  31. package/dist/index.js +295 -0
  32. package/dist/index.js.map +1 -0
  33. package/dist/interfaces.d.ts +44 -0
  34. package/dist/interfaces.d.ts.map +1 -0
  35. package/dist/interfaces.js +11 -0
  36. package/dist/interfaces.js.map +1 -0
  37. package/dist/layouts/grid.d.ts +23 -0
  38. package/dist/layouts/grid.d.ts.map +1 -0
  39. package/dist/layouts/grid.js +30 -0
  40. package/dist/layouts/grid.js.map +1 -0
  41. package/dist/layouts/index.d.ts +3 -0
  42. package/dist/layouts/index.d.ts.map +1 -0
  43. package/dist/layouts/index.js +3 -0
  44. package/dist/layouts/index.js.map +1 -0
  45. package/dist/layouts/split.d.ts +15 -0
  46. package/dist/layouts/split.d.ts.map +1 -0
  47. package/dist/layouts/split.js +26 -0
  48. package/dist/layouts/split.js.map +1 -0
  49. package/dist/lib/annotations/annotation.d.ts +11 -0
  50. package/dist/lib/annotations/annotation.d.ts.map +1 -0
  51. package/dist/lib/annotations/annotation.js +21 -0
  52. package/dist/lib/annotations/annotation.js.map +1 -0
  53. package/dist/lib/annotations/attribute.d.ts +12 -0
  54. package/dist/lib/annotations/attribute.d.ts.map +1 -0
  55. package/dist/lib/annotations/attribute.js +17 -0
  56. package/dist/lib/annotations/attribute.js.map +1 -0
  57. package/dist/lib/annotations/decoration.d.ts +10 -0
  58. package/dist/lib/annotations/decoration.d.ts.map +1 -0
  59. package/dist/lib/annotations/decoration.js +46 -0
  60. package/dist/lib/annotations/decoration.js.map +1 -0
  61. package/dist/lib/annotations/group.d.ts +24 -0
  62. package/dist/lib/annotations/group.d.ts.map +1 -0
  63. package/dist/lib/annotations/group.js +78 -0
  64. package/dist/lib/annotations/group.js.map +1 -0
  65. package/dist/lib/annotations/id.d.ts +19 -0
  66. package/dist/lib/annotations/id.d.ts.map +1 -0
  67. package/dist/lib/annotations/id.js +32 -0
  68. package/dist/lib/annotations/id.js.map +1 -0
  69. package/dist/lib/annotations/interfaces.d.ts +27 -0
  70. package/dist/lib/annotations/interfaces.d.ts.map +1 -0
  71. package/dist/lib/annotations/interfaces.js +2 -0
  72. package/dist/lib/annotations/interfaces.js.map +1 -0
  73. package/dist/lib/component.d.ts +26 -0
  74. package/dist/lib/component.d.ts.map +1 -0
  75. package/dist/lib/component.js +28 -0
  76. package/dist/lib/component.js.map +1 -0
  77. package/dist/lib/index.d.ts +10 -0
  78. package/dist/lib/index.d.ts.map +1 -0
  79. package/dist/lib/index.js +25 -0
  80. package/dist/lib/index.js.map +1 -0
  81. package/dist/lib/model.d.ts +13 -0
  82. package/dist/lib/model.d.ts.map +1 -0
  83. package/dist/lib/model.js +33 -0
  84. package/dist/lib/model.js.map +1 -0
  85. package/dist/lib/node.d.ts +18 -0
  86. package/dist/lib/node.d.ts.map +1 -0
  87. package/dist/lib/node.js +49 -0
  88. package/dist/lib/node.js.map +1 -0
  89. package/dist/lib/renderable.d.ts +22 -0
  90. package/dist/lib/renderable.d.ts.map +1 -0
  91. package/dist/lib/renderable.js +52 -0
  92. package/dist/lib/renderable.js.map +1 -0
  93. package/dist/lib/types.d.ts +8 -0
  94. package/dist/lib/types.d.ts.map +1 -0
  95. package/dist/lib/types.js +14 -0
  96. package/dist/lib/types.js.map +1 -0
  97. package/dist/nodes.d.ts +18 -0
  98. package/dist/nodes.d.ts.map +1 -0
  99. package/dist/nodes.js +181 -0
  100. package/dist/nodes.js.map +1 -0
  101. package/dist/registry.d.ts +47 -0
  102. package/dist/registry.d.ts.map +1 -0
  103. package/dist/registry.js +60 -0
  104. package/dist/registry.js.map +1 -0
  105. package/dist/rune.d.ts +34 -0
  106. package/dist/rune.d.ts.map +1 -0
  107. package/dist/rune.js +29 -0
  108. package/dist/rune.js.map +1 -0
  109. package/dist/tags/accordion.d.ts +4 -0
  110. package/dist/tags/accordion.d.ts.map +1 -0
  111. package/dist/tags/accordion.js +98 -0
  112. package/dist/tags/accordion.js.map +1 -0
  113. package/dist/tags/breadcrumb.d.ts +3 -0
  114. package/dist/tags/breadcrumb.d.ts.map +1 -0
  115. package/dist/tags/breadcrumb.js +76 -0
  116. package/dist/tags/breadcrumb.js.map +1 -0
  117. package/dist/tags/changelog.d.ts +4 -0
  118. package/dist/tags/changelog.d.ts.map +1 -0
  119. package/dist/tags/changelog.js +124 -0
  120. package/dist/tags/changelog.js.map +1 -0
  121. package/dist/tags/codegroup.d.ts +2 -0
  122. package/dist/tags/codegroup.d.ts.map +1 -0
  123. package/dist/tags/codegroup.js +60 -0
  124. package/dist/tags/codegroup.js.map +1 -0
  125. package/dist/tags/common.d.ts +17 -0
  126. package/dist/tags/common.d.ts.map +1 -0
  127. package/dist/tags/common.js +61 -0
  128. package/dist/tags/common.js.map +1 -0
  129. package/dist/tags/compare.d.ts +3 -0
  130. package/dist/tags/compare.d.ts.map +1 -0
  131. package/dist/tags/compare.js +61 -0
  132. package/dist/tags/compare.js.map +1 -0
  133. package/dist/tags/cta.d.ts +3 -0
  134. package/dist/tags/cta.d.ts.map +1 -0
  135. package/dist/tags/cta.js +75 -0
  136. package/dist/tags/cta.js.map +1 -0
  137. package/dist/tags/details.d.ts +3 -0
  138. package/dist/tags/details.d.ts.map +1 -0
  139. package/dist/tags/details.js +55 -0
  140. package/dist/tags/details.js.map +1 -0
  141. package/dist/tags/embed.d.ts +3 -0
  142. package/dist/tags/embed.d.ts.map +1 -0
  143. package/dist/tags/embed.js +130 -0
  144. package/dist/tags/embed.js.map +1 -0
  145. package/dist/tags/error.d.ts +3 -0
  146. package/dist/tags/error.d.ts.map +1 -0
  147. package/dist/tags/error.js +50 -0
  148. package/dist/tags/error.js.map +1 -0
  149. package/dist/tags/feature.d.ts +16 -0
  150. package/dist/tags/feature.d.ts.map +1 -0
  151. package/dist/tags/feature.js +98 -0
  152. package/dist/tags/feature.js.map +1 -0
  153. package/dist/tags/figure.d.ts +3 -0
  154. package/dist/tags/figure.d.ts.map +1 -0
  155. package/dist/tags/figure.js +64 -0
  156. package/dist/tags/figure.js.map +1 -0
  157. package/dist/tags/grid.d.ts +2 -0
  158. package/dist/tags/grid.d.ts.map +1 -0
  159. package/dist/tags/grid.js +56 -0
  160. package/dist/tags/grid.js.map +1 -0
  161. package/dist/tags/hero.d.ts +3 -0
  162. package/dist/tags/hero.d.ts.map +1 -0
  163. package/dist/tags/hero.js +75 -0
  164. package/dist/tags/hero.js.map +1 -0
  165. package/dist/tags/hint.d.ts +3 -0
  166. package/dist/tags/hint.d.ts.map +1 -0
  167. package/dist/tags/hint.js +41 -0
  168. package/dist/tags/hint.js.map +1 -0
  169. package/dist/tags/layout.d.ts +3 -0
  170. package/dist/tags/layout.d.ts.map +1 -0
  171. package/dist/tags/layout.js +32 -0
  172. package/dist/tags/layout.js.map +1 -0
  173. package/dist/tags/music-playlist.d.ts +3 -0
  174. package/dist/tags/music-playlist.d.ts.map +1 -0
  175. package/dist/tags/music-playlist.js +80 -0
  176. package/dist/tags/music-playlist.js.map +1 -0
  177. package/dist/tags/music-recording.d.ts +17 -0
  178. package/dist/tags/music-recording.d.ts.map +1 -0
  179. package/dist/tags/music-recording.js +99 -0
  180. package/dist/tags/music-recording.js.map +1 -0
  181. package/dist/tags/nav.d.ts +3 -0
  182. package/dist/tags/nav.d.ts.map +1 -0
  183. package/dist/tags/nav.js +114 -0
  184. package/dist/tags/nav.js.map +1 -0
  185. package/dist/tags/pricing.d.ts +12 -0
  186. package/dist/tags/pricing.d.ts.map +1 -0
  187. package/dist/tags/pricing.js +78 -0
  188. package/dist/tags/pricing.js.map +1 -0
  189. package/dist/tags/region.d.ts +3 -0
  190. package/dist/tags/region.d.ts.map +1 -0
  191. package/dist/tags/region.js +37 -0
  192. package/dist/tags/region.js.map +1 -0
  193. package/dist/tags/steps.d.ts +4 -0
  194. package/dist/tags/steps.d.ts.map +1 -0
  195. package/dist/tags/steps.js +71 -0
  196. package/dist/tags/steps.js.map +1 -0
  197. package/dist/tags/tabs.d.ts +4 -0
  198. package/dist/tags/tabs.d.ts.map +1 -0
  199. package/dist/tags/tabs.js +119 -0
  200. package/dist/tags/tabs.js.map +1 -0
  201. package/dist/tags/testimonial.d.ts +3 -0
  202. package/dist/tags/testimonial.d.ts.map +1 -0
  203. package/dist/tags/testimonial.js +99 -0
  204. package/dist/tags/testimonial.js.map +1 -0
  205. package/dist/tags/timeline.d.ts +4 -0
  206. package/dist/tags/timeline.d.ts.map +1 -0
  207. package/dist/tags/timeline.js +125 -0
  208. package/dist/tags/timeline.js.map +1 -0
  209. package/dist/tags/toc.d.ts +3 -0
  210. package/dist/tags/toc.d.ts.map +1 -0
  211. package/dist/tags/toc.js +53 -0
  212. package/dist/tags/toc.js.map +1 -0
  213. package/dist/util.d.ts +21 -0
  214. package/dist/util.d.ts.map +1 -0
  215. package/dist/util.js +99 -0
  216. package/dist/util.js.map +1 -0
  217. package/package.json +37 -0
@@ -0,0 +1,14 @@
1
+ import { AbstractElementWrapper } from '@refract-md/types';
2
+ import { Tag } from '@markdoc/markdoc';
3
+ export class TagWrapper extends AbstractElementWrapper {
4
+ get children() {
5
+ return this.elem.children.filter(c => Tag.isTag(c)).map(t => new TagWrapper(t));
6
+ }
7
+ get attributes() {
8
+ return this.elem.attributes;
9
+ }
10
+ get text() {
11
+ return this.elem.children.filter(c => !Tag.isTag(c)).join(' ');
12
+ }
13
+ }
14
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/lib/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAC;AAEvC,MAAM,OAAO,UAAW,SAAQ,sBAA2B;IACzD,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;IAClF,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC;IAC9B,CAAC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACjE,CAAC;CACF"}
@@ -0,0 +1,18 @@
1
+ import Markdoc from '@markdoc/markdoc';
2
+ import type { Schema } from '@markdoc/markdoc';
3
+ export interface TargetFile {
4
+ _id: string;
5
+ content: string;
6
+ }
7
+ export declare const heading: Schema;
8
+ export declare const paragraph: Schema;
9
+ export declare const fence: Schema;
10
+ export declare const list: Schema;
11
+ export declare const item: Schema;
12
+ export declare const em: Schema;
13
+ export declare const strong: Schema;
14
+ export declare const text: Schema;
15
+ export declare const link: Schema;
16
+ export declare const hardbreak: Markdoc.Schema;
17
+ export declare const image: Schema;
18
+ //# sourceMappingURL=nodes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nodes.d.ts","sourceRoot":"","sources":["../src/nodes.ts"],"names":[],"mappings":"AACA,OAAO,OAAO,MAAM,kBAAkB,CAAC;AACvC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAU/C,MAAM,WAAW,UAAU;IACzB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,eAAO,MAAM,OAAO,EAAE,MAyBrB,CAAA;AAED,eAAO,MAAM,SAAS,EAAE,MAMvB,CAAA;AAED,eAAO,MAAM,KAAK,EAAE,MAkBnB,CAAA;AAED,eAAO,MAAM,IAAI,EAAE,MAclB,CAAA;AAED,eAAO,MAAM,IAAI,EAAE,MAkBlB,CAAC;AAEF,eAAO,MAAM,EAAE,EAAE,MAMhB,CAAC;AAEF,eAAO,MAAM,MAAM,EAAE,MAMpB,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,MAalB,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,MAqBlB,CAAA;AAED,eAAO,MAAM,SAAS,gBAA0B,CAAC;AAEjD,eAAO,MAAM,KAAK,EAAE,MAkCnB,CAAC"}
package/dist/nodes.js ADDED
@@ -0,0 +1,181 @@
1
+ import pb from 'path-browserify';
2
+ import Markdoc from '@markdoc/markdoc';
3
+ import * as xml from 'fast-xml-parser';
4
+ import hljs from 'highlight.js';
5
+ import { markdoc } from './hljs-markdoc.js';
6
+ hljs.registerLanguage('markdoc', markdoc);
7
+ const { dirname, join, isAbsolute } = pb;
8
+ const { Tag } = Markdoc;
9
+ export const heading = {
10
+ children: ['inline'],
11
+ attributes: {
12
+ level: { type: 'Number', required: true, render: false },
13
+ property: { type: String, required: false },
14
+ },
15
+ transform(node, config) {
16
+ const attributes = node.transformAttributes(config);
17
+ const children = node.transformChildren(config);
18
+ if (!attributes.id || typeof attributes.id !== 'string') {
19
+ attributes.id = children
20
+ .filter((child) => typeof child === 'string')
21
+ .join(' ')
22
+ .replace(/[?]/g, '')
23
+ .replace(/\s+/g, '-')
24
+ .toLowerCase();
25
+ }
26
+ return new Tag(`h${node.attributes['level']}`, attributes, children);
27
+ }
28
+ };
29
+ export const paragraph = {
30
+ children: ['inline'],
31
+ attributes: {
32
+ property: { type: String, required: false },
33
+ },
34
+ render: 'p',
35
+ };
36
+ export const fence = {
37
+ render: 'fence',
38
+ attributes: {
39
+ content: {
40
+ type: String,
41
+ render: false,
42
+ },
43
+ process: { type: Boolean, render: false, default: false },
44
+ language: { type: String, render: 'data-language', default: 'shell' },
45
+ },
46
+ transform(node, config) {
47
+ const attributes = node.transformAttributes(config);
48
+ const content = hljs.highlight(node.attributes.content, { language: attributes['data-language'] });
49
+ return new Tag('pre', attributes, [
50
+ new Tag('code', { 'data-codeblock': true, content: '' }, [content.value])
51
+ ]);
52
+ }
53
+ };
54
+ export const list = {
55
+ children: ['item'],
56
+ attributes: {
57
+ ordered: { type: Boolean, render: false, required: true },
58
+ start: { type: Number },
59
+ marker: { type: String, render: false },
60
+ },
61
+ transform(node, config) {
62
+ return new Tag(node.attributes.ordered ? 'ol' : 'ul', node.transformAttributes(config), node.transformChildren(config));
63
+ },
64
+ };
65
+ export const item = {
66
+ render: 'li',
67
+ children: [
68
+ 'inline',
69
+ 'heading',
70
+ 'paragraph',
71
+ 'image',
72
+ 'table',
73
+ 'tag',
74
+ 'fence',
75
+ 'blockquote',
76
+ 'list',
77
+ 'hr',
78
+ ],
79
+ attributes: {
80
+ property: { type: String, required: false },
81
+ typeof: { type: String, required: false },
82
+ }
83
+ };
84
+ export const em = {
85
+ render: 'em',
86
+ children: ['strong', 's', 'link', 'code', 'text', 'tag'],
87
+ attributes: {
88
+ marker: { type: String, render: true },
89
+ },
90
+ };
91
+ export const strong = {
92
+ render: 'strong',
93
+ children: ['em', 's', 'link', 'code', 'text', 'tag'],
94
+ attributes: {
95
+ marker: { type: String, render: true },
96
+ },
97
+ };
98
+ export const text = {
99
+ attributes: {
100
+ content: { type: String, required: true },
101
+ property: { type: String, required: false },
102
+ },
103
+ transform(node, config) {
104
+ const attr = node.transformAttributes(config);
105
+ if (attr.property) {
106
+ return new Tag('span', { property: attr.property }, [node.attributes.content]);
107
+ }
108
+ return node.attributes.content;
109
+ },
110
+ };
111
+ export const link = {
112
+ children: ['strong', 'em', 's', 'code', 'text', 'tag'],
113
+ attributes: {
114
+ href: { type: String, required: true },
115
+ title: { type: String },
116
+ },
117
+ render: 'a',
118
+ transform(node, config) {
119
+ const { urls, path } = config.variables || {};
120
+ const dirName = dirname(path);
121
+ let attributes = node.attributes;
122
+ const absPath = dirName !== '/'
123
+ ? join(dirName, node.attributes.href)
124
+ : node.attributes.href;
125
+ if (absPath in (urls || {})) {
126
+ const href = urls[absPath];
127
+ attributes = { ...attributes, href };
128
+ }
129
+ return new Tag(this.render, attributes, node.transformChildren(config));
130
+ }
131
+ };
132
+ export const hardbreak = Markdoc.nodes.hardbreak;
133
+ export const image = {
134
+ render: 'img',
135
+ attributes: {
136
+ src: { type: String, required: true },
137
+ alt: { type: String },
138
+ title: { type: String },
139
+ property: { type: String },
140
+ },
141
+ transform(node, config) {
142
+ const attr = node.transformAttributes(config);
143
+ const svgFiles = config.variables?.svg || [];
144
+ let src = node.attributes.src;
145
+ if (!isAbsolute(src)) {
146
+ src = join('/', dirname(config.variables?.path), src);
147
+ }
148
+ const svg = svgFiles.find(file => file._id === src);
149
+ if (svg) {
150
+ const parser = new xml.XMLParser({ ignoreAttributes: false });
151
+ let jObj = parser.parse(svg.content);
152
+ const tag = jObjToTag('svg', jObj.svg);
153
+ if (attr.property) {
154
+ tag.attributes.property = attr.property;
155
+ }
156
+ tag.attributes.xmlns = undefined;
157
+ return tag;
158
+ }
159
+ return new Tag(this.render, attr, node.transformChildren(config));
160
+ },
161
+ };
162
+ function jObjToTag(tagName, content) {
163
+ if (Array.isArray(content)) {
164
+ return content.map(c => jObjToTag(tagName, c));
165
+ }
166
+ let children = [];
167
+ let attr = {};
168
+ for (const [k, v] of Object.entries(content)) {
169
+ if (k.startsWith('@_')) {
170
+ attr[k.slice(2)] = v;
171
+ }
172
+ else if (k === '#text') {
173
+ children.push(v);
174
+ }
175
+ else {
176
+ children.push(jObjToTag(k, v));
177
+ }
178
+ }
179
+ return new Tag(tagName, attr, children);
180
+ }
181
+ //# sourceMappingURL=nodes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nodes.js","sourceRoot":"","sources":["../src/nodes.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,47 @@
1
+ import { PageComponent, PageSectionComponent, DocPageComponent, HeadingsComponent, HintComponent, NavComponent, NavGroupComponent, NavItemComponent, SequentialPaginationComponent, StepsComponent, StepComponent, TabGroupComponent, TabComponent, TabPanelComponent, MusicPlaylistComponent, MusicRecordingComponent, CallToActionComponent, LinkItemComponent, CommandComponent, FeatureComponent, FeatureDefinitionComponent, EditorComponent, PricingComponent, TierComponent, GridComponent, ErrorComponent, DebugInfoComponent, DetailsComponent, FigureComponent, AccordionComponent, AccordionItemComponent, TableOfContentsComponent, HeroComponent, TestimonialComponent, TimelineComponent, TimelineEntryComponent, ChangelogComponent, ChangelogReleaseComponent, EmbedComponent, BreadcrumbComponent, BreadcrumbItemComponent, CompareComponent } from '@refrakt-md/types';
2
+ export declare const schema: {
3
+ Page: import("@refrakt-md/types").Type<PageComponent>;
4
+ PageSection: import("@refrakt-md/types").Type<PageSectionComponent>;
5
+ DocPage: import("@refrakt-md/types").Type<DocPageComponent>;
6
+ Headings: import("@refrakt-md/types").Type<HeadingsComponent>;
7
+ Hint: import("@refrakt-md/types").Type<HintComponent>;
8
+ SequentialPagination: import("@refrakt-md/types").Type<SequentialPaginationComponent>;
9
+ Steps: import("@refrakt-md/types").Type<StepsComponent>;
10
+ Step: import("@refrakt-md/types").Type<StepComponent>;
11
+ TabGroup: import("@refrakt-md/types").Type<TabGroupComponent>;
12
+ Tab: import("@refrakt-md/types").Type<TabComponent>;
13
+ TabPanel: import("@refrakt-md/types").Type<TabPanelComponent>;
14
+ MusicPlaylist: import("@refrakt-md/types").Type<MusicPlaylistComponent>;
15
+ MusicRecording: import("@refrakt-md/types").Type<MusicRecordingComponent>;
16
+ CallToAction: import("@refrakt-md/types").Type<CallToActionComponent>;
17
+ LinkItem: import("@refrakt-md/types").Type<LinkItemComponent>;
18
+ Command: import("@refrakt-md/types").Type<CommandComponent>;
19
+ Feature: import("@refrakt-md/types").Type<FeatureComponent>;
20
+ FeatureDefinition: import("@refrakt-md/types").Type<FeatureDefinitionComponent>;
21
+ Editor: import("@refrakt-md/types").Type<EditorComponent>;
22
+ Pricing: import("@refrakt-md/types").Type<PricingComponent>;
23
+ Tier: import("@refrakt-md/types").Type<TierComponent>;
24
+ FeaturedTier: import("@refrakt-md/types").Type<TierComponent>;
25
+ Grid: import("@refrakt-md/types").Type<GridComponent>;
26
+ Error: import("@refrakt-md/types").Type<ErrorComponent>;
27
+ DebugInfo: import("@refrakt-md/types").Type<DebugInfoComponent>;
28
+ Nav: import("@refrakt-md/types").Type<NavComponent>;
29
+ NavGroup: import("@refrakt-md/types").Type<NavGroupComponent>;
30
+ NavItem: import("@refrakt-md/types").Type<NavItemComponent>;
31
+ Details: import("@refrakt-md/types").Type<DetailsComponent>;
32
+ Figure: import("@refrakt-md/types").Type<FigureComponent>;
33
+ Accordion: import("@refrakt-md/types").Type<AccordionComponent>;
34
+ AccordionItem: import("@refrakt-md/types").Type<AccordionItemComponent>;
35
+ TableOfContents: import("@refrakt-md/types").Type<TableOfContentsComponent>;
36
+ Hero: import("@refrakt-md/types").Type<HeroComponent>;
37
+ Testimonial: import("@refrakt-md/types").Type<TestimonialComponent>;
38
+ Timeline: import("@refrakt-md/types").Type<TimelineComponent>;
39
+ TimelineEntry: import("@refrakt-md/types").Type<TimelineEntryComponent>;
40
+ Changelog: import("@refrakt-md/types").Type<ChangelogComponent>;
41
+ ChangelogRelease: import("@refrakt-md/types").Type<ChangelogReleaseComponent>;
42
+ Embed: import("@refrakt-md/types").Type<EmbedComponent>;
43
+ Breadcrumb: import("@refrakt-md/types").Type<BreadcrumbComponent>;
44
+ BreadcrumbItem: import("@refrakt-md/types").Type<BreadcrumbItemComponent>;
45
+ Compare: import("@refrakt-md/types").Type<CompareComponent>;
46
+ };
47
+ //# sourceMappingURL=registry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"AAAA,OAAO,EAEC,aAAa,EAAE,oBAAoB,EAChC,gBAAgB,EACf,iBAAiB,EACrB,aAAa,EACd,YAAY,EACP,iBAAiB,EAClB,gBAAgB,EACH,6BAA6B,EAC5C,cAAc,EACf,aAAa,EACT,iBAAiB,EACtB,YAAY,EACP,iBAAiB,EACZ,sBAAsB,EACrB,uBAAuB,EACzB,qBAAqB,EACzB,iBAAiB,EAClB,gBAAgB,EAChB,gBAAgB,EACN,0BAA0B,EACrC,eAAe,EACd,gBAAgB,EACnB,aAAa,EACb,aAAa,EACZ,cAAc,EACV,kBAAkB,EAEpB,gBAAgB,EACjB,eAAe,EACZ,kBAAkB,EACd,sBAAsB,EACpB,wBAAwB,EACnC,aAAa,EACN,oBAAoB,EACvB,iBAAiB,EACZ,sBAAsB,EAC1B,kBAAkB,EACX,yBAAyB,EACpC,cAAc,EACT,mBAAmB,EACf,uBAAuB,EAC9B,gBAAgB,EAC1B,MAAM,mBAAmB,CAAC;AAE3B,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyDlB,CAAA"}
@@ -0,0 +1,60 @@
1
+ import { useSchema, Page, DocPage, Headings, Hint, Nav, NavGroup, NavItem, SequentialPagination, Steps, Step, TabGroup, Tab, TabPanel, MusicPlaylist, MusicRecording, CallToAction, LinkItem, Command, Feature, FeatureDefinition, Editor, Pricing, Tier, Grid, Error, DebugInfo, PageSection, Details, Figure, Accordion, AccordionItem, TableOfContents, Hero, Testimonial, Timeline, TimelineEntry, Changelog, ChangelogRelease, Embed, Breadcrumb, BreadcrumbItem, Compare, } from '@refrakt-md/types';
2
+ export const schema = {
3
+ Page: useSchema(Page).defineType('Page'),
4
+ PageSection: useSchema(PageSection).defineType('PageSection'),
5
+ DocPage: useSchema(DocPage).defineType('DocPage'),
6
+ Headings: useSchema(Headings).defineType('Headings'),
7
+ Hint: useSchema(Hint).defineType('Hint'),
8
+ SequentialPagination: useSchema(SequentialPagination).defineType('SequentialPagination'),
9
+ Steps: useSchema(Steps).defineType('Steps'),
10
+ Step: useSchema(Step).defineType('Step'),
11
+ TabGroup: useSchema(TabGroup).defineType('TabGroup'),
12
+ Tab: useSchema(Tab).defineType('Tab'),
13
+ TabPanel: useSchema(TabPanel).defineType('TabPanel'),
14
+ MusicPlaylist: useSchema(MusicPlaylist).defineType('MusicPlaylist', {
15
+ schema: 'http://schema.org/',
16
+ MusicPlaylist: 'schema:MusicPlaylist',
17
+ headline: 'schema:name schema:headline',
18
+ image: 'schema:image',
19
+ track: 'schema:track',
20
+ }),
21
+ MusicRecording: useSchema(MusicRecording).defineType('MusicRecording', {
22
+ schema: 'http://schema.org/',
23
+ MusicRecording: 'schema:MusicRecording',
24
+ name: 'schema:name',
25
+ byArtist: 'schema:byArtist',
26
+ duration: 'schema:duration',
27
+ copyrightYear: 'schema:copyrightYear',
28
+ }),
29
+ CallToAction: useSchema(CallToAction).defineType('CallToAction'),
30
+ LinkItem: useSchema(LinkItem).defineType('LinkItem'),
31
+ Command: useSchema(Command).defineType('Command'),
32
+ Feature: useSchema(Feature).defineType('Feature'),
33
+ FeatureDefinition: useSchema(FeatureDefinition).defineType('FeatureDefinition'),
34
+ Editor: useSchema(Editor).defineType('Editor'),
35
+ Pricing: useSchema(Pricing).defineType('Pricing'),
36
+ Tier: useSchema(Tier).defineType('Tier'),
37
+ FeaturedTier: useSchema(Tier).defineType('FeaturedTier'),
38
+ Grid: useSchema(Grid).defineType('Grid'),
39
+ Error: useSchema(Error).defineType('Error'),
40
+ DebugInfo: useSchema(DebugInfo).defineType('DebugInfo'),
41
+ Nav: useSchema(Nav).defineType('Nav'),
42
+ NavGroup: useSchema(NavGroup).defineType('NavGroup'),
43
+ NavItem: useSchema(NavItem).defineType('NavItem'),
44
+ Details: useSchema(Details).defineType('Details'),
45
+ Figure: useSchema(Figure).defineType('Figure'),
46
+ Accordion: useSchema(Accordion).defineType('Accordion'),
47
+ AccordionItem: useSchema(AccordionItem).defineType('AccordionItem'),
48
+ TableOfContents: useSchema(TableOfContents).defineType('TableOfContents'),
49
+ Hero: useSchema(Hero).defineType('Hero'),
50
+ Testimonial: useSchema(Testimonial).defineType('Testimonial'),
51
+ Timeline: useSchema(Timeline).defineType('Timeline'),
52
+ TimelineEntry: useSchema(TimelineEntry).defineType('TimelineEntry'),
53
+ Changelog: useSchema(Changelog).defineType('Changelog'),
54
+ ChangelogRelease: useSchema(ChangelogRelease).defineType('ChangelogRelease'),
55
+ Embed: useSchema(Embed).defineType('Embed'),
56
+ Breadcrumb: useSchema(Breadcrumb).defineType('Breadcrumb'),
57
+ BreadcrumbItem: useSchema(BreadcrumbItem).defineType('BreadcrumbItem'),
58
+ Compare: useSchema(Compare).defineType('Compare'),
59
+ };
60
+ //# sourceMappingURL=registry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"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"}
package/dist/rune.d.ts ADDED
@@ -0,0 +1,34 @@
1
+ import type { Schema } from '@markdoc/markdoc';
2
+ import { Type, ComponentType } from '@refrakt-md/types';
3
+ export interface RuneDescriptor {
4
+ /** The primary tag name used in Markdoc (e.g., 'cta') */
5
+ name: string;
6
+ /** Alternative tag names (e.g., ['call-to-action']) */
7
+ aliases?: string[];
8
+ /** The Markdoc Schema this rune produces */
9
+ schema: Schema;
10
+ /** Human-readable description for docs and AI theme generation */
11
+ description?: string;
12
+ /** How this rune reinterprets standard Markdown primitives */
13
+ reinterprets?: Record<string, string>;
14
+ /** Schema.org type for SEO JSON-LD generation */
15
+ seoType?: string;
16
+ /** The Type from the registry this rune renders as */
17
+ type?: Type<ComponentType<object>>;
18
+ }
19
+ export declare class Rune {
20
+ readonly name: string;
21
+ readonly aliases: string[];
22
+ readonly schema: Schema;
23
+ readonly description: string;
24
+ readonly reinterprets: Record<string, string>;
25
+ readonly seoType: string | undefined;
26
+ readonly type: Type<ComponentType<object>> | undefined;
27
+ constructor(descriptor: RuneDescriptor);
28
+ /** All names this rune can be referenced by (primary + aliases) */
29
+ get names(): string[];
30
+ }
31
+ export declare function defineRune(descriptor: RuneDescriptor): Rune;
32
+ /** Build a Markdoc-compatible tags record from a collection of runes */
33
+ export declare function runeTagMap(runes: Record<string, Rune>): Record<string, Schema>;
34
+ //# sourceMappingURL=rune.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rune.d.ts","sourceRoot":"","sources":["../src/rune.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAExD,MAAM,WAAW,cAAc;IAC7B,yDAAyD;IACzD,IAAI,EAAE,MAAM,CAAC;IAEb,uDAAuD;IACvD,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IAEnB,4CAA4C;IAC5C,MAAM,EAAE,MAAM,CAAC;IAEf,kEAAkE;IAClE,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,8DAA8D;IAC9D,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEtC,iDAAiD;IACjD,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,sDAAsD;IACtD,IAAI,CAAC,EAAE,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC;CACpC;AAED,qBAAa,IAAI;IACf,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9C,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;IACrC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,GAAG,SAAS,CAAC;gBAE3C,UAAU,EAAE,cAAc;IAUtC,mEAAmE;IACnE,IAAI,KAAK,IAAI,MAAM,EAAE,CAEpB;CACF;AAED,wBAAgB,UAAU,CAAC,UAAU,EAAE,cAAc,GAAG,IAAI,CAE3D;AAED,wEAAwE;AACxE,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAQ9E"}
package/dist/rune.js ADDED
@@ -0,0 +1,29 @@
1
+ export class Rune {
2
+ constructor(descriptor) {
3
+ this.name = descriptor.name;
4
+ this.aliases = descriptor.aliases ?? [];
5
+ this.schema = descriptor.schema;
6
+ this.description = descriptor.description ?? '';
7
+ this.reinterprets = descriptor.reinterprets ?? {};
8
+ this.seoType = descriptor.seoType;
9
+ this.type = descriptor.type;
10
+ }
11
+ /** All names this rune can be referenced by (primary + aliases) */
12
+ get names() {
13
+ return [this.name, ...this.aliases];
14
+ }
15
+ }
16
+ export function defineRune(descriptor) {
17
+ return new Rune(descriptor);
18
+ }
19
+ /** Build a Markdoc-compatible tags record from a collection of runes */
20
+ export function runeTagMap(runes) {
21
+ const tags = {};
22
+ for (const rune of Object.values(runes)) {
23
+ for (const name of rune.names) {
24
+ tags[name] = rune.schema;
25
+ }
26
+ }
27
+ return tags;
28
+ }
29
+ //# sourceMappingURL=rune.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rune.js","sourceRoot":"","sources":["../src/rune.ts"],"names":[],"mappings":"AA0BA,MAAM,OAAO,IAAI;IASf,YAAY,UAA0B;QACpC,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC;QAC5B,IAAI,CAAC,OAAO,GAAG,UAAU,CAAC,OAAO,IAAI,EAAE,CAAC;QACxC,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;QAChC,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC,WAAW,IAAI,EAAE,CAAC;QAChD,IAAI,CAAC,YAAY,GAAG,UAAU,CAAC,YAAY,IAAI,EAAE,CAAC;QAClD,IAAI,CAAC,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC;QAClC,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC;IAC9B,CAAC;IAED,mEAAmE;IACnE,IAAI,KAAK;QACP,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;IACtC,CAAC;CACF;AAED,MAAM,UAAU,UAAU,CAAC,UAA0B;IACnD,OAAO,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC;AAC9B,CAAC;AAED,wEAAwE;AACxE,MAAM,UAAU,UAAU,CAAC,KAA2B;IACpD,MAAM,IAAI,GAA2B,EAAE,CAAC;IACxC,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;QACxC,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YAC9B,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -0,0 +1,4 @@
1
+ import Markdoc from '@markdoc/markdoc';
2
+ export declare const accordionItem: Markdoc.Schema;
3
+ export declare const accordion: Markdoc.Schema;
4
+ //# sourceMappingURL=accordion.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"accordion.d.ts","sourceRoot":"","sources":["../../src/tags/accordion.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,kBAAkB,CAAC;AAuFvC,eAAO,MAAM,aAAa,gBAAmC,CAAC;AAE9D,eAAO,MAAM,SAAS,gBAA+B,CAAC"}
@@ -0,0 +1,98 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ import Markdoc from '@markdoc/markdoc';
11
+ const { Ast, Tag } = Markdoc;
12
+ import { headingsToList } from '../util.js';
13
+ import { schema } from '../registry.js';
14
+ import { NodeStream } from '../lib/node.js';
15
+ import { attribute, group, Model, createComponentRenderable, createSchema } from '../lib/index.js';
16
+ import { pageSectionProperties } from './common.js';
17
+ class AccordionItemModel extends Model {
18
+ transform() {
19
+ const nameTag = new Tag('span', {}, [this.name]);
20
+ const body = this.transformChildren().wrap('div');
21
+ return createComponentRenderable(schema.AccordionItem, {
22
+ tag: 'div',
23
+ properties: {
24
+ name: nameTag,
25
+ },
26
+ refs: {
27
+ body: body.tag('div'),
28
+ },
29
+ children: [nameTag, body.next()],
30
+ });
31
+ }
32
+ }
33
+ __decorate([
34
+ attribute({ type: String, required: true }),
35
+ __metadata("design:type", String)
36
+ ], AccordionItemModel.prototype, "name", void 0);
37
+ class AccordionModel extends Model {
38
+ constructor() {
39
+ super(...arguments);
40
+ this.headingLevel = undefined;
41
+ this.multiple = true;
42
+ }
43
+ convertHeadings(nodes) {
44
+ const converted = headingsToList({ level: this.headingLevel })(nodes);
45
+ const n = converted.length - 1;
46
+ const tags = converted[n].children.map(item => {
47
+ const heading = item.children[0];
48
+ const name = Array.from(heading.walk()).filter(n => n.type === 'text').map(t => t.attributes.content).join(' ');
49
+ return new Ast.Node('tag', { name }, item.children.slice(1), 'accordion-item');
50
+ });
51
+ converted.splice(n, 1, ...tags);
52
+ return converted;
53
+ }
54
+ processChildren(nodes) {
55
+ if (this.headingLevel !== undefined) {
56
+ return super.processChildren(this.convertHeadings(nodes));
57
+ }
58
+ return super.processChildren(nodes);
59
+ }
60
+ transform() {
61
+ const header = this.header.transform();
62
+ const itemStream = this.itemgroup.transform();
63
+ const items = itemStream.tag('div').typeof('AccordionItem');
64
+ const itemsContainer = items.wrap('div');
65
+ const children = header.count() > 0
66
+ ? [header.wrap('header').next(), itemsContainer.next()]
67
+ : [itemsContainer.next()];
68
+ return createComponentRenderable(schema.Accordion, {
69
+ tag: 'section',
70
+ property: 'contentSection',
71
+ properties: {
72
+ ...pageSectionProperties(header),
73
+ item: items,
74
+ },
75
+ refs: { items: itemsContainer },
76
+ children,
77
+ });
78
+ }
79
+ }
80
+ __decorate([
81
+ attribute({ type: Number, required: false }),
82
+ __metadata("design:type", Object)
83
+ ], AccordionModel.prototype, "headingLevel", void 0);
84
+ __decorate([
85
+ attribute({ type: Boolean, required: false }),
86
+ __metadata("design:type", Boolean)
87
+ ], AccordionModel.prototype, "multiple", void 0);
88
+ __decorate([
89
+ group({ include: ['heading', 'paragraph'] }),
90
+ __metadata("design:type", NodeStream)
91
+ ], AccordionModel.prototype, "header", void 0);
92
+ __decorate([
93
+ group({ include: ['tag'] }),
94
+ __metadata("design:type", NodeStream)
95
+ ], AccordionModel.prototype, "itemgroup", void 0);
96
+ export const accordionItem = createSchema(AccordionItemModel);
97
+ export const accordion = createSchema(AccordionModel);
98
+ //# sourceMappingURL=accordion.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"accordion.js","sourceRoot":"","sources":["../../src/tags/accordion.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import Markdoc from '@markdoc/markdoc';
2
+ export declare const breadcrumb: Markdoc.Schema;
3
+ //# sourceMappingURL=breadcrumb.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"breadcrumb.d.ts","sourceRoot":"","sources":["../../src/tags/breadcrumb.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,kBAAkB,CAAC;AA0EvC,eAAO,MAAM,UAAU,gBAAgC,CAAC"}
@@ -0,0 +1,76 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ import Markdoc from '@markdoc/markdoc';
11
+ const { Tag } = Markdoc;
12
+ import { schema } from '../registry.js';
13
+ import { attribute, Model, createComponentRenderable, createSchema } from '../lib/index.js';
14
+ class BreadcrumbModel extends Model {
15
+ constructor() {
16
+ super(...arguments);
17
+ this.separator = '/';
18
+ }
19
+ transform() {
20
+ const separatorMeta = new Tag('meta', { content: this.separator });
21
+ const children = this.transformChildren();
22
+ // Extract list items from children — each <li> with an <a> becomes a breadcrumb item
23
+ const listItems = [];
24
+ for (const node of children.toArray()) {
25
+ if (Tag.isTag(node) && (node.name === 'ul' || node.name === 'ol')) {
26
+ for (const li of node.children) {
27
+ if (Tag.isTag(li) && li.name === 'li') {
28
+ // Find the link inside the list item
29
+ const link = li.children.find((c) => Tag.isTag(c) && c.name === 'a');
30
+ if (link) {
31
+ const nameSpan = new Tag('span', {}, link.children);
32
+ const urlLink = new Tag('a', { href: link.attributes.href }, link.children);
33
+ listItems.push(createComponentRenderable(schema.BreadcrumbItem, {
34
+ tag: 'li',
35
+ properties: {
36
+ name: nameSpan,
37
+ url: urlLink,
38
+ },
39
+ children: [nameSpan, urlLink],
40
+ }));
41
+ }
42
+ else {
43
+ // Last item (no link) — current page
44
+ const text = li.children.filter((c) => typeof c === 'string').join('').trim();
45
+ const nameSpan = new Tag('span', {}, text ? [text] : li.children);
46
+ listItems.push(createComponentRenderable(schema.BreadcrumbItem, {
47
+ tag: 'li',
48
+ properties: {
49
+ name: nameSpan,
50
+ },
51
+ children: [nameSpan],
52
+ }));
53
+ }
54
+ }
55
+ }
56
+ }
57
+ }
58
+ const itemsList = new Tag('ol', {}, listItems);
59
+ return createComponentRenderable(schema.Breadcrumb, {
60
+ tag: 'nav',
61
+ properties: {
62
+ separator: separatorMeta,
63
+ },
64
+ refs: {
65
+ items: itemsList,
66
+ },
67
+ children: [separatorMeta, itemsList],
68
+ });
69
+ }
70
+ }
71
+ __decorate([
72
+ attribute({ type: String, required: false }),
73
+ __metadata("design:type", String)
74
+ ], BreadcrumbModel.prototype, "separator", void 0);
75
+ export const breadcrumb = createSchema(BreadcrumbModel);
76
+ //# sourceMappingURL=breadcrumb.js.map