mdast-util-to-vnode 0.3.1 → 0.3.2

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/index.d.ts CHANGED
@@ -7,4 +7,8 @@ export interface ToVNodeOptions {
7
7
  export declare function toVNode(node: Root, options?: ToVNodeOptions): VNode<import('vue').RendererNode, import('vue').RendererElement, {
8
8
  [key: string]: any;
9
9
  }>;
10
- export declare function createVNode(node: Node, options?: ToVNodeOptions, index?: number): VNode;
10
+ export interface CreateVNodeContext {
11
+ index: number;
12
+ parent: Node | null;
13
+ }
14
+ export declare function createVNode(node: Node, options: ToVNodeOptions | undefined, context: CreateVNodeContext): VNode;
package/dist/index.js CHANGED
@@ -1,95 +1,98 @@
1
- import { h as a, Text as y } from "vue";
2
- function m(r) {
1
+ import { h as t, Comment as O, Text as j } from "vue";
2
+ function p(r) {
3
3
  return Array.isArray(r);
4
4
  }
5
- function v(r) {
5
+ function C(r) {
6
6
  return typeof r == "object" && r !== null;
7
7
  }
8
- function h(r) {
8
+ function y(r) {
9
9
  return typeof r == "function";
10
10
  }
11
- function n(r) {
12
- return v(r) && !m(r) && !h(r);
11
+ function s(r) {
12
+ return C(r) && !p(r) && !y(r);
13
13
  }
14
- function l(r, ...u) {
15
- if (!n(r))
14
+ function i(r, ...l) {
15
+ if (!s(r))
16
16
  return r;
17
- const s = u.filter((t) => n(t));
18
- if (!s.length)
17
+ const c = l.filter((a) => s(a));
18
+ if (!c.length)
19
19
  return r;
20
- const e = s.shift();
21
- for (const t in e)
22
- n(e[t]) ? (Object.prototype.hasOwnProperty.call(r, t) || Object.assign(r, { [t]: {} }), l(r[t], e[t])) : Object.assign(r, { [t]: e[t] });
23
- return l(r, ...s);
20
+ const e = c.shift();
21
+ for (const a in e)
22
+ s(e[a]) ? (Object.prototype.hasOwnProperty.call(r, a) || Object.assign(r, { [a]: {} }), i(r[a], e[a])) : Object.assign(r, { [a]: e[a] });
23
+ return i(r, ...c);
24
24
  }
25
- function i(r, u) {
26
- return u.reduce((s, e) => (s[e] = r[e], s), {});
25
+ function n(r, l) {
26
+ return l.reduce((c, e) => (c[e] = r[e], c), {});
27
27
  }
28
- function p(r, u = {}) {
29
- return b(r, u, 0);
28
+ function N(r, l = {}) {
29
+ return v(r, l, {
30
+ index: 0,
31
+ parent: null
32
+ });
30
33
  }
31
- function b(r, u = {}, s) {
32
- var f;
33
- let e = (f = u.components) == null ? void 0 : f[r.type], t = {};
34
- switch (h(e) && (e = e(r)), m(e) && (t = e[1] ?? {}, e = e[0]), r.type) {
34
+ function v(r, l = {}, c) {
35
+ var f, m, h, b, g;
36
+ let e = (f = l.components) == null ? void 0 : f[r.type], a = {};
37
+ switch (y(e) && (e = e(r)), p(e) && (a = e[1] ?? {}, e = e[0]), r.type) {
35
38
  case "blockquote":
36
- return a(
39
+ return t(
37
40
  e ?? "blockquote",
38
- t,
39
- c(r, u)
41
+ a,
42
+ u(r, l)
40
43
  );
41
44
  case "break":
42
- return a(
45
+ return t(
43
46
  e ?? "br",
44
- t
47
+ a
45
48
  );
46
49
  case "code":
47
- return e ? a(
50
+ return e ? t(
48
51
  e,
49
- l(i(r, ["lang", "meta", "value"]), t)
50
- ) : a(
52
+ i(n(r, ["lang", "meta", "value"]), a)
53
+ ) : t(
51
54
  "pre",
52
55
  {
53
56
  dataLang: r.lang,
54
57
  dataMeta: r.meta
55
58
  },
56
- a("code", r.value)
59
+ t("code", r.value)
57
60
  );
58
61
  case "delete":
59
- return a(
62
+ return t(
60
63
  e ?? "s",
61
- t,
62
- c(r, u)
64
+ a,
65
+ u(r, l)
63
66
  );
64
67
  case "emphasis":
65
- return a(
68
+ return t(
66
69
  e ?? "em",
67
- t,
68
- c(r, u)
70
+ a,
71
+ u(r, l)
69
72
  );
70
73
  case "heading":
71
- return e ? a(
74
+ return e ? t(
72
75
  e,
73
- l(i(r, ["depth"]), t)
74
- ) : a(
76
+ i(n(r, ["depth"]), a)
77
+ ) : t(
75
78
  `h${r.depth}`,
76
- c(r, u)
79
+ u(r, l)
77
80
  );
78
81
  case "html":
79
- return e ? a(
82
+ return e ? t(
80
83
  e,
81
- l(i(r, ["value"]), t)
82
- ) : a(
84
+ i(n(r, ["value"]), a)
85
+ ) : t(
83
86
  "div",
84
87
  {
85
88
  innerHTML: r.value
86
89
  }
87
90
  );
88
91
  case "image":
89
- return e ? a(
92
+ return e ? t(
90
93
  e,
91
- l(i(r, ["url", "alt", "title"]), t)
92
- ) : a(
94
+ i(n(r, ["url", "alt", "title"]), a)
95
+ ) : t(
93
96
  "img",
94
97
  {
95
98
  src: r.url,
@@ -98,117 +101,132 @@ function b(r, u = {}, s) {
98
101
  }
99
102
  );
100
103
  case "inlineCode":
101
- return e ? a(
104
+ return e ? t(
102
105
  e,
103
- l(i(r, ["value"]), t)
104
- ) : a(
106
+ i(n(r, ["value"]), a)
107
+ ) : t(
105
108
  "code",
106
109
  r.value
107
110
  );
108
111
  case "link":
109
- return e ? a(
112
+ return e ? t(
110
113
  e,
111
- l(i(r, ["url", "title"]), t),
112
- c(r, u)
113
- ) : a(
114
+ i(
115
+ {
116
+ target: "_blank"
117
+ },
118
+ n(r, ["url", "title"]),
119
+ a
120
+ ),
121
+ u(r, l)
122
+ ) : t(
114
123
  "a",
115
124
  {
116
- href: r.url
125
+ href: r.url,
126
+ target: "_blank"
117
127
  },
118
- c(r, u)
128
+ u(r, l)
119
129
  );
120
130
  case "list":
121
- return e ? a(
131
+ return e ? t(
122
132
  e,
123
- l(i(r, ["ordered", "spread", "start"]), t),
124
- c(r, u)
125
- ) : a(
133
+ i(n(r, ["ordered", "spread", "start"]), a),
134
+ u(r, l)
135
+ ) : t(
126
136
  r.ordered ? "ol" : "ul",
127
- c(r, u)
137
+ u(r, l)
128
138
  );
129
139
  case "listItem":
130
- return e ? a(
140
+ return e ? t(
131
141
  e,
132
- l(i(r, ["checked", "spread"]), t),
133
- c(r, u)
134
- ) : a(
142
+ i(n(r, ["checked", "spread"]), a),
143
+ u(r, l)
144
+ ) : t(
135
145
  "li",
136
- c(r, u)
146
+ u(r, l)
137
147
  );
138
148
  case "paragraph":
139
- return a(
149
+ return t(
140
150
  e ?? "p",
141
- t,
142
- c(r, u)
151
+ a,
152
+ u(r, l)
143
153
  );
144
154
  case "root":
145
- return a(
155
+ return t(
146
156
  e ?? "div",
147
- t,
148
- c(r, u)
157
+ a,
158
+ u(r, l)
149
159
  );
150
160
  case "strong":
151
- return a(
161
+ return t(
152
162
  e ?? "strong",
153
- t,
154
- c(r, u)
163
+ a,
164
+ u(r, l)
155
165
  );
156
166
  case "table":
157
- return a(
167
+ return t(
158
168
  e ?? "table",
159
- l(i(r, ["align"]), t),
160
- c(r, u)
169
+ a,
170
+ u(r, l)
161
171
  );
162
172
  case "tableRow":
163
- return a(
164
- e ?? (s === 0 ? "th" : "tr"),
165
- l(t, {
166
- index: s
173
+ return e ? t(
174
+ e,
175
+ i(a, {
176
+ index: c.index,
177
+ align: ((m = c.parent.align) == null ? void 0 : m[c.index]) ?? "left"
167
178
  }),
168
- c(r, u)
169
- );
170
- case "tableCell":
171
- return a(
172
- e ?? "td",
173
- t,
174
- c(r, u)
175
- );
179
+ u(r, l)
180
+ ) : t("tr", {
181
+ align: ((h = c.parent.align) == null ? void 0 : h[c.index]) ?? "left"
182
+ }, u(r, l));
183
+ case "tableCell": {
184
+ const k = ((g = (b = c.parent.position) == null ? void 0 : b.start) == null ? void 0 : g.offset) === 0;
185
+ return t(
186
+ e ?? (k ? "th" : "td"),
187
+ a,
188
+ u(r, l)
189
+ );
190
+ }
176
191
  case "text":
177
- return a(
178
- y,
192
+ return t(
193
+ j,
179
194
  r.value
180
195
  );
181
196
  case "thematicBreak":
182
- return a(
197
+ return t(
183
198
  e ?? "hr",
184
- t
199
+ a
185
200
  );
186
201
  case "yaml":
187
- return e ? a(
202
+ return e ? t(
188
203
  e,
189
- l(
204
+ i(
190
205
  {
191
206
  lang: "yaml",
192
207
  value: r.value
193
208
  },
194
- t
209
+ a
195
210
  )
196
- ) : a(
211
+ ) : t(
197
212
  "pre",
198
213
  {
199
214
  dataLang: "yaml"
200
215
  },
201
- a("code", r.value)
216
+ t("code", r.value)
202
217
  );
203
218
  default:
204
- return a(Comment);
219
+ return t(O, JSON.stringify(r));
205
220
  }
206
221
  }
207
- function c(r, u = {}) {
208
- var s;
209
- return ((s = r.children) == null ? void 0 : s.map((e, t) => b(e, u, t))) ?? [];
222
+ function u(r, l = {}) {
223
+ var c;
224
+ return ((c = r.children) == null ? void 0 : c.map((e, a) => v(e, l, {
225
+ index: a,
226
+ parent: r
227
+ }))) ?? [];
210
228
  }
211
229
  export {
212
- b as createVNode,
213
- p as toVNode
230
+ v as createVNode,
231
+ N as toVNode
214
232
  };
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "mdast-util-to-vnode",
3
3
  "type": "module",
4
- "version": "0.3.1",
4
+ "version": "0.3.2",
5
5
  "private": false,
6
6
  "packageManager": "pnpm@10.5.2+sha512.da9dc28cd3ff40d0592188235ab25d3202add8a207afbedc682220e4a0029ffbff4562102b9e6e46b4e3f9e8bd53e6d05de48544b0c57d4b0179e22c76d1199b",
7
7
  "description": "mdast utility to get the vue vnode",