@player-ui/markdown-plugin 0.8.0--canary.307.9645 → 0.8.0-next.1

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.
@@ -1,40 +1,22 @@
1
- 'use strict';
1
+ // ../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/markdown/core/src/index.ts
2
+ import { resolveDataRefsInString, NodeType as NodeType2 } from "@player-ui/player";
2
3
 
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
+ // ../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/markdown/core/src/utils/markdownParser.ts
5
+ import { NodeType } from "@player-ui/player";
6
+ import { fromMarkdown } from "mdast-util-from-markdown";
4
7
 
5
- var player = require('@player-ui/player');
6
- var mdastUtilFromMarkdown = require('mdast-util-from-markdown');
7
-
8
- var __defProp$1 = Object.defineProperty;
9
- var __defProps$1 = Object.defineProperties;
10
- var __getOwnPropDescs$1 = Object.getOwnPropertyDescriptors;
11
- var __getOwnPropSymbols$1 = Object.getOwnPropertySymbols;
12
- var __hasOwnProp$1 = Object.prototype.hasOwnProperty;
13
- var __propIsEnum$1 = Object.prototype.propertyIsEnumerable;
14
- var __defNormalProp$1 = (obj, key, value) => key in obj ? __defProp$1(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
15
- var __spreadValues$1 = (a, b) => {
16
- for (var prop in b || (b = {}))
17
- if (__hasOwnProp$1.call(b, prop))
18
- __defNormalProp$1(a, prop, b[prop]);
19
- if (__getOwnPropSymbols$1)
20
- for (var prop of __getOwnPropSymbols$1(b)) {
21
- if (__propIsEnum$1.call(b, prop))
22
- __defNormalProp$1(a, prop, b[prop]);
23
- }
24
- return a;
25
- };
26
- var __spreadProps$1 = (a, b) => __defProps$1(a, __getOwnPropDescs$1(b));
8
+ // ../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/markdown/core/src/utils/transformers.ts
27
9
  function swapMarkdownType(asset) {
28
- return __spreadProps$1(__spreadValues$1({}, asset), { type: "text" });
10
+ return { ...asset, type: "text" };
29
11
  }
30
- const textTransformer = ({ astNode, asset, mappers }) => {
12
+ var textTransformer = ({ astNode, asset, mappers }) => {
31
13
  const { value } = astNode;
32
14
  return mappers.text({
33
15
  originalAsset: asset,
34
16
  value
35
17
  });
36
18
  };
37
- const emphasisTransformer = ({
19
+ var emphasisTransformer = ({
38
20
  astNode,
39
21
  asset,
40
22
  mappers,
@@ -42,7 +24,9 @@ const emphasisTransformer = ({
42
24
  }) => {
43
25
  if (mappers.emphasis) {
44
26
  const { children } = astNode;
45
- const value = children.map((node) => transformers2[node.type]({ astNode: node, asset, mappers, transformers: transformers2 }));
27
+ const value = children.map(
28
+ (node) => transformers2[node.type]({ astNode: node, asset, mappers, transformers: transformers2 })
29
+ );
46
30
  return mappers.emphasis({
47
31
  originalAsset: asset,
48
32
  value
@@ -50,7 +34,7 @@ const emphasisTransformer = ({
50
34
  }
51
35
  return swapMarkdownType(asset);
52
36
  };
53
- const strongTransformer = ({
37
+ var strongTransformer = ({
54
38
  astNode,
55
39
  asset,
56
40
  mappers,
@@ -58,7 +42,9 @@ const strongTransformer = ({
58
42
  }) => {
59
43
  if (mappers.strong) {
60
44
  const { children } = astNode;
61
- const value = children.map((node) => transformers2[node.type]({ astNode: node, asset, mappers, transformers: transformers2 }));
45
+ const value = children.map(
46
+ (node) => transformers2[node.type]({ astNode: node, asset, mappers, transformers: transformers2 })
47
+ );
62
48
  return mappers.strong({
63
49
  originalAsset: asset,
64
50
  value
@@ -66,7 +52,7 @@ const strongTransformer = ({
66
52
  }
67
53
  return swapMarkdownType(asset);
68
54
  };
69
- const paragraphTransformer = ({
55
+ var paragraphTransformer = ({
70
56
  astNode,
71
57
  asset,
72
58
  mappers,
@@ -74,7 +60,9 @@ const paragraphTransformer = ({
74
60
  }) => {
75
61
  const { children } = astNode;
76
62
  if (children.every(({ type }) => Boolean(mappers[type]))) {
77
- const value = children.map((node) => transformers2[node.type]({ astNode: node, asset, mappers, transformers: transformers2 }));
63
+ const value = children.map(
64
+ (node) => transformers2[node.type]({ astNode: node, asset, mappers, transformers: transformers2 })
65
+ );
78
66
  return mappers.paragraph({
79
67
  originalAsset: asset,
80
68
  value
@@ -82,7 +70,7 @@ const paragraphTransformer = ({
82
70
  }
83
71
  return swapMarkdownType(asset);
84
72
  };
85
- const listTransformer = ({
73
+ var listTransformer = ({
86
74
  astNode,
87
75
  asset,
88
76
  mappers,
@@ -90,7 +78,9 @@ const listTransformer = ({
90
78
  }) => {
91
79
  if (mappers.list) {
92
80
  const { children, ordered, start } = astNode;
93
- const value = children.map((node) => transformers2[node.type]({ astNode: node, asset, mappers, transformers: transformers2 }));
81
+ const value = children.map(
82
+ (node) => transformers2[node.type]({ astNode: node, asset, mappers, transformers: transformers2 })
83
+ );
94
84
  return mappers.list({
95
85
  originalAsset: asset,
96
86
  value,
@@ -100,21 +90,23 @@ const listTransformer = ({
100
90
  }
101
91
  return swapMarkdownType(asset);
102
92
  };
103
- const listItemTransformer = ({
93
+ var listItemTransformer = ({
104
94
  astNode,
105
95
  asset,
106
96
  mappers,
107
97
  transformers: transformers2
108
98
  }) => {
109
99
  const { children } = astNode;
110
- const value = children.map((node) => transformers2[node.type]({ astNode: node, asset, mappers, transformers: transformers2 }));
100
+ const value = children.map(
101
+ (node) => transformers2[node.type]({ astNode: node, asset, mappers, transformers: transformers2 })
102
+ );
111
103
  const mapper = mappers.listItem || mappers.paragraph;
112
104
  return mapper({
113
105
  originalAsset: asset,
114
106
  value
115
107
  });
116
108
  };
117
- const linkTransformer = ({
109
+ var linkTransformer = ({
118
110
  astNode,
119
111
  asset,
120
112
  mappers,
@@ -122,7 +114,9 @@ const linkTransformer = ({
122
114
  }) => {
123
115
  if (mappers.link) {
124
116
  const { children, url } = astNode;
125
- const value = children.map((node) => transformers2[node.type]({ astNode: node, asset, mappers, transformers: transformers2 }));
117
+ const value = children.map(
118
+ (node) => transformers2[node.type]({ astNode: node, asset, mappers, transformers: transformers2 })
119
+ );
126
120
  return mappers.link({
127
121
  originalAsset: asset,
128
122
  href: url,
@@ -131,7 +125,7 @@ const linkTransformer = ({
131
125
  }
132
126
  return swapMarkdownType(asset);
133
127
  };
134
- const imageTransformer = ({ astNode, asset, mappers }) => {
128
+ var imageTransformer = ({ astNode, asset, mappers }) => {
135
129
  if (mappers.image) {
136
130
  const { title, url, alt } = astNode;
137
131
  return mappers.image({
@@ -142,7 +136,7 @@ const imageTransformer = ({ astNode, asset, mappers }) => {
142
136
  }
143
137
  return swapMarkdownType(asset);
144
138
  };
145
- const blockquoteTransformer = ({
139
+ var blockquoteTransformer = ({
146
140
  astNode,
147
141
  asset,
148
142
  mappers,
@@ -150,7 +144,9 @@ const blockquoteTransformer = ({
150
144
  }) => {
151
145
  if (mappers.blockquote) {
152
146
  const { children } = astNode;
153
- const value = children.map((node) => transformers2[node.type]({ astNode: node, asset, mappers, transformers: transformers2 }));
147
+ const value = children.map(
148
+ (node) => transformers2[node.type]({ astNode: node, asset, mappers, transformers: transformers2 })
149
+ );
154
150
  return mappers.blockquote({
155
151
  originalAsset: asset,
156
152
  value
@@ -158,7 +154,7 @@ const blockquoteTransformer = ({
158
154
  }
159
155
  return swapMarkdownType(asset);
160
156
  };
161
- const inlineCodeTransformer = ({
157
+ var inlineCodeTransformer = ({
162
158
  astNode,
163
159
  asset,
164
160
  mappers
@@ -172,7 +168,7 @@ const inlineCodeTransformer = ({
172
168
  }
173
169
  return swapMarkdownType(asset);
174
170
  };
175
- const codeTransformer = ({ astNode, asset, mappers }) => {
171
+ var codeTransformer = ({ astNode, asset, mappers }) => {
176
172
  if (mappers.code) {
177
173
  const { value, lang } = astNode;
178
174
  return mappers.code({
@@ -183,7 +179,7 @@ const codeTransformer = ({ astNode, asset, mappers }) => {
183
179
  }
184
180
  return swapMarkdownType(asset);
185
181
  };
186
- const horizontalRuleTransformer = ({
182
+ var horizontalRuleTransformer = ({
187
183
  asset,
188
184
  mappers
189
185
  }) => {
@@ -195,7 +191,7 @@ const horizontalRuleTransformer = ({
195
191
  }
196
192
  return swapMarkdownType(asset);
197
193
  };
198
- const headingTransformer = ({
194
+ var headingTransformer = ({
199
195
  astNode,
200
196
  asset,
201
197
  mappers,
@@ -203,7 +199,9 @@ const headingTransformer = ({
203
199
  }) => {
204
200
  if (mappers.heading) {
205
201
  const { children, depth } = astNode;
206
- const value = children.map((node) => transformers2[node.type]({ astNode: node, asset, mappers, transformers: transformers2 }));
202
+ const value = children.map(
203
+ (node) => transformers2[node.type]({ astNode: node, asset, mappers, transformers: transformers2 })
204
+ );
207
205
  return mappers.heading({
208
206
  originalAsset: asset,
209
207
  value,
@@ -212,7 +210,7 @@ const headingTransformer = ({
212
210
  }
213
211
  return swapMarkdownType(asset);
214
212
  };
215
- const transformers = {
213
+ var transformers = {
216
214
  horizontalRule: horizontalRuleTransformer,
217
215
  text: textTransformer,
218
216
  emphasis: emphasisTransformer,
@@ -228,12 +226,13 @@ const transformers = {
228
226
  inlineCode: inlineCodeTransformer
229
227
  };
230
228
 
229
+ // ../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/markdown/core/src/utils/markdownParser.ts
231
230
  function parseAssetMarkdownContent({
232
231
  asset,
233
232
  mappers,
234
233
  parser
235
234
  }) {
236
- const { children } = mdastUtilFromMarkdown.fromMarkdown(asset.value);
235
+ const { children } = fromMarkdown(asset.value);
237
236
  const isMultiParagraph = children.length > 1;
238
237
  if (isMultiParagraph) {
239
238
  const value = children.map((node) => {
@@ -249,7 +248,7 @@ function parseAssetMarkdownContent({
249
248
  originalAsset: asset,
250
249
  value
251
250
  });
252
- return (parser == null ? void 0 : parser(collection, player.NodeType.Asset)) || null;
251
+ return parser?.(collection, NodeType.Asset) || null;
253
252
  }
254
253
  const transformer = transformers[children[0].type];
255
254
  const content = transformer({
@@ -258,46 +257,32 @@ function parseAssetMarkdownContent({
258
257
  mappers,
259
258
  transformers
260
259
  });
261
- return (parser == null ? void 0 : parser(content, player.NodeType.Asset)) || null;
260
+ return parser?.(content, NodeType.Asset) || null;
262
261
  }
263
262
 
264
- var __defProp = Object.defineProperty;
265
- var __defProps = Object.defineProperties;
266
- var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
267
- var __getOwnPropSymbols = Object.getOwnPropertySymbols;
268
- var __hasOwnProp = Object.prototype.hasOwnProperty;
269
- var __propIsEnum = Object.prototype.propertyIsEnumerable;
270
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
271
- var __spreadValues = (a, b) => {
272
- for (var prop in b || (b = {}))
273
- if (__hasOwnProp.call(b, prop))
274
- __defNormalProp(a, prop, b[prop]);
275
- if (__getOwnPropSymbols)
276
- for (var prop of __getOwnPropSymbols(b)) {
277
- if (__propIsEnum.call(b, prop))
278
- __defNormalProp(a, prop, b[prop]);
279
- }
280
- return a;
281
- };
282
- var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
283
- class MarkdownPlugin {
263
+ // ../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/markdown/core/src/index.ts
264
+ var MarkdownPlugin = class {
284
265
  constructor(mappers) {
285
266
  this.name = "MarkdownPlugin";
286
267
  this.mappers = mappers;
287
268
  }
288
- apply(player$1) {
289
- player$1.hooks.view.tap(this.name, (view) => {
269
+ apply(player) {
270
+ player.hooks.view.tap(this.name, (view) => {
290
271
  view.hooks.resolver.tap(this.name, (resolver) => {
291
272
  resolver.hooks.beforeResolve.tap(this.name, (node, options) => {
292
- if ((node == null ? void 0 : node.type) === player.NodeType.Asset && node.value.type === "markdown") {
293
- const resolvedContent = player.resolveDataRefsInString(node.value.value, {
294
- evaluate: options.evaluate,
295
- model: options.data.model
296
- });
273
+ if (node?.type === NodeType2.Asset && node.value.type === "markdown") {
274
+ const resolvedContent = resolveDataRefsInString(
275
+ node.value.value,
276
+ {
277
+ evaluate: options.evaluate,
278
+ model: options.data.model
279
+ }
280
+ );
297
281
  const parsed = parseAssetMarkdownContent({
298
- asset: __spreadProps(__spreadValues({}, node.value), {
282
+ asset: {
283
+ ...node.value,
299
284
  value: resolvedContent
300
- }),
285
+ },
301
286
  mappers: this.mappers,
302
287
  parser: options.parseNode
303
288
  });
@@ -308,7 +293,8 @@ class MarkdownPlugin {
308
293
  });
309
294
  });
310
295
  }
311
- }
312
-
313
- exports.MarkdownPlugin = MarkdownPlugin;
314
- //# sourceMappingURL=index.cjs.js.map
296
+ };
297
+ export {
298
+ MarkdownPlugin
299
+ };
300
+ //# sourceMappingURL=index.mjs.map
package/dist/index.mjs ADDED
@@ -0,0 +1,300 @@
1
+ // ../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/markdown/core/src/index.ts
2
+ import { resolveDataRefsInString, NodeType as NodeType2 } from "@player-ui/player";
3
+
4
+ // ../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/markdown/core/src/utils/markdownParser.ts
5
+ import { NodeType } from "@player-ui/player";
6
+ import { fromMarkdown } from "mdast-util-from-markdown";
7
+
8
+ // ../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/markdown/core/src/utils/transformers.ts
9
+ function swapMarkdownType(asset) {
10
+ return { ...asset, type: "text" };
11
+ }
12
+ var textTransformer = ({ astNode, asset, mappers }) => {
13
+ const { value } = astNode;
14
+ return mappers.text({
15
+ originalAsset: asset,
16
+ value
17
+ });
18
+ };
19
+ var emphasisTransformer = ({
20
+ astNode,
21
+ asset,
22
+ mappers,
23
+ transformers: transformers2
24
+ }) => {
25
+ if (mappers.emphasis) {
26
+ const { children } = astNode;
27
+ const value = children.map(
28
+ (node) => transformers2[node.type]({ astNode: node, asset, mappers, transformers: transformers2 })
29
+ );
30
+ return mappers.emphasis({
31
+ originalAsset: asset,
32
+ value
33
+ });
34
+ }
35
+ return swapMarkdownType(asset);
36
+ };
37
+ var strongTransformer = ({
38
+ astNode,
39
+ asset,
40
+ mappers,
41
+ transformers: transformers2
42
+ }) => {
43
+ if (mappers.strong) {
44
+ const { children } = astNode;
45
+ const value = children.map(
46
+ (node) => transformers2[node.type]({ astNode: node, asset, mappers, transformers: transformers2 })
47
+ );
48
+ return mappers.strong({
49
+ originalAsset: asset,
50
+ value
51
+ });
52
+ }
53
+ return swapMarkdownType(asset);
54
+ };
55
+ var paragraphTransformer = ({
56
+ astNode,
57
+ asset,
58
+ mappers,
59
+ transformers: transformers2
60
+ }) => {
61
+ const { children } = astNode;
62
+ if (children.every(({ type }) => Boolean(mappers[type]))) {
63
+ const value = children.map(
64
+ (node) => transformers2[node.type]({ astNode: node, asset, mappers, transformers: transformers2 })
65
+ );
66
+ return mappers.paragraph({
67
+ originalAsset: asset,
68
+ value
69
+ });
70
+ }
71
+ return swapMarkdownType(asset);
72
+ };
73
+ var listTransformer = ({
74
+ astNode,
75
+ asset,
76
+ mappers,
77
+ transformers: transformers2
78
+ }) => {
79
+ if (mappers.list) {
80
+ const { children, ordered, start } = astNode;
81
+ const value = children.map(
82
+ (node) => transformers2[node.type]({ astNode: node, asset, mappers, transformers: transformers2 })
83
+ );
84
+ return mappers.list({
85
+ originalAsset: asset,
86
+ value,
87
+ ordered: Boolean(ordered),
88
+ start: start || void 0
89
+ });
90
+ }
91
+ return swapMarkdownType(asset);
92
+ };
93
+ var listItemTransformer = ({
94
+ astNode,
95
+ asset,
96
+ mappers,
97
+ transformers: transformers2
98
+ }) => {
99
+ const { children } = astNode;
100
+ const value = children.map(
101
+ (node) => transformers2[node.type]({ astNode: node, asset, mappers, transformers: transformers2 })
102
+ );
103
+ const mapper = mappers.listItem || mappers.paragraph;
104
+ return mapper({
105
+ originalAsset: asset,
106
+ value
107
+ });
108
+ };
109
+ var linkTransformer = ({
110
+ astNode,
111
+ asset,
112
+ mappers,
113
+ transformers: transformers2
114
+ }) => {
115
+ if (mappers.link) {
116
+ const { children, url } = astNode;
117
+ const value = children.map(
118
+ (node) => transformers2[node.type]({ astNode: node, asset, mappers, transformers: transformers2 })
119
+ );
120
+ return mappers.link({
121
+ originalAsset: asset,
122
+ href: url,
123
+ value
124
+ });
125
+ }
126
+ return swapMarkdownType(asset);
127
+ };
128
+ var imageTransformer = ({ astNode, asset, mappers }) => {
129
+ if (mappers.image) {
130
+ const { title, url, alt } = astNode;
131
+ return mappers.image({
132
+ originalAsset: asset,
133
+ src: url,
134
+ value: title || alt || ""
135
+ });
136
+ }
137
+ return swapMarkdownType(asset);
138
+ };
139
+ var blockquoteTransformer = ({
140
+ astNode,
141
+ asset,
142
+ mappers,
143
+ transformers: transformers2
144
+ }) => {
145
+ if (mappers.blockquote) {
146
+ const { children } = astNode;
147
+ const value = children.map(
148
+ (node) => transformers2[node.type]({ astNode: node, asset, mappers, transformers: transformers2 })
149
+ );
150
+ return mappers.blockquote({
151
+ originalAsset: asset,
152
+ value
153
+ });
154
+ }
155
+ return swapMarkdownType(asset);
156
+ };
157
+ var inlineCodeTransformer = ({
158
+ astNode,
159
+ asset,
160
+ mappers
161
+ }) => {
162
+ if (mappers.inlineCode) {
163
+ const { value } = astNode;
164
+ return mappers.inlineCode({
165
+ originalAsset: asset,
166
+ value
167
+ });
168
+ }
169
+ return swapMarkdownType(asset);
170
+ };
171
+ var codeTransformer = ({ astNode, asset, mappers }) => {
172
+ if (mappers.code) {
173
+ const { value, lang } = astNode;
174
+ return mappers.code({
175
+ originalAsset: asset,
176
+ value,
177
+ lang: lang || void 0
178
+ });
179
+ }
180
+ return swapMarkdownType(asset);
181
+ };
182
+ var horizontalRuleTransformer = ({
183
+ asset,
184
+ mappers
185
+ }) => {
186
+ if (mappers.horizontalRule) {
187
+ return mappers.horizontalRule({
188
+ originalAsset: asset,
189
+ value: "---"
190
+ });
191
+ }
192
+ return swapMarkdownType(asset);
193
+ };
194
+ var headingTransformer = ({
195
+ astNode,
196
+ asset,
197
+ mappers,
198
+ transformers: transformers2
199
+ }) => {
200
+ if (mappers.heading) {
201
+ const { children, depth } = astNode;
202
+ const value = children.map(
203
+ (node) => transformers2[node.type]({ astNode: node, asset, mappers, transformers: transformers2 })
204
+ );
205
+ return mappers.heading({
206
+ originalAsset: asset,
207
+ value,
208
+ depth
209
+ });
210
+ }
211
+ return swapMarkdownType(asset);
212
+ };
213
+ var transformers = {
214
+ horizontalRule: horizontalRuleTransformer,
215
+ text: textTransformer,
216
+ emphasis: emphasisTransformer,
217
+ strong: strongTransformer,
218
+ blockquote: blockquoteTransformer,
219
+ list: listTransformer,
220
+ listItem: listItemTransformer,
221
+ link: linkTransformer,
222
+ image: imageTransformer,
223
+ paragraph: paragraphTransformer,
224
+ code: codeTransformer,
225
+ heading: headingTransformer,
226
+ inlineCode: inlineCodeTransformer
227
+ };
228
+
229
+ // ../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/markdown/core/src/utils/markdownParser.ts
230
+ function parseAssetMarkdownContent({
231
+ asset,
232
+ mappers,
233
+ parser
234
+ }) {
235
+ const { children } = fromMarkdown(asset.value);
236
+ const isMultiParagraph = children.length > 1;
237
+ if (isMultiParagraph) {
238
+ const value = children.map((node) => {
239
+ const transformer2 = transformers[node.type];
240
+ return transformer2({
241
+ astNode: node,
242
+ asset,
243
+ mappers,
244
+ transformers
245
+ });
246
+ });
247
+ const collection = mappers.collection({
248
+ originalAsset: asset,
249
+ value
250
+ });
251
+ return parser?.(collection, NodeType.Asset) || null;
252
+ }
253
+ const transformer = transformers[children[0].type];
254
+ const content = transformer({
255
+ astNode: children[0],
256
+ asset,
257
+ mappers,
258
+ transformers
259
+ });
260
+ return parser?.(content, NodeType.Asset) || null;
261
+ }
262
+
263
+ // ../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/markdown/core/src/index.ts
264
+ var MarkdownPlugin = class {
265
+ constructor(mappers) {
266
+ this.name = "MarkdownPlugin";
267
+ this.mappers = mappers;
268
+ }
269
+ apply(player) {
270
+ player.hooks.view.tap(this.name, (view) => {
271
+ view.hooks.resolver.tap(this.name, (resolver) => {
272
+ resolver.hooks.beforeResolve.tap(this.name, (node, options) => {
273
+ if (node?.type === NodeType2.Asset && node.value.type === "markdown") {
274
+ const resolvedContent = resolveDataRefsInString(
275
+ node.value.value,
276
+ {
277
+ evaluate: options.evaluate,
278
+ model: options.data.model
279
+ }
280
+ );
281
+ const parsed = parseAssetMarkdownContent({
282
+ asset: {
283
+ ...node.value,
284
+ value: resolvedContent
285
+ },
286
+ mappers: this.mappers,
287
+ parser: options.parseNode
288
+ });
289
+ return parsed;
290
+ }
291
+ return node;
292
+ });
293
+ });
294
+ });
295
+ }
296
+ };
297
+ export {
298
+ MarkdownPlugin
299
+ };
300
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/markdown/core/src/index.ts","../../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/markdown/core/src/utils/markdownParser.ts","../../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/markdown/core/src/utils/transformers.ts"],"sourcesContent":["import type { Player, PlayerPlugin } from \"@player-ui/player\";\nimport { resolveDataRefsInString, NodeType } from \"@player-ui/player\";\nimport type { Mappers } from \"./types\";\nimport { parseAssetMarkdownContent } from \"./utils\";\n\nexport * from \"./types\";\n\n/**\n * A plugin that parses markdown written into text assets using the given converters for markdown features into existing assets.\n */\nexport class MarkdownPlugin implements PlayerPlugin {\n name = \"MarkdownPlugin\";\n\n private mappers: Mappers;\n\n constructor(mappers: Mappers) {\n this.mappers = mappers;\n }\n\n apply(player: Player) {\n player.hooks.view.tap(this.name, (view) => {\n view.hooks.resolver.tap(this.name, (resolver) => {\n resolver.hooks.beforeResolve.tap(this.name, (node, options) => {\n if (node?.type === NodeType.Asset && node.value.type === \"markdown\") {\n const resolvedContent = resolveDataRefsInString(\n node.value.value as string,\n {\n evaluate: options.evaluate,\n model: options.data.model,\n },\n );\n\n const parsed = parseAssetMarkdownContent({\n asset: {\n ...node.value,\n value: resolvedContent,\n },\n mappers: this.mappers,\n parser: options.parseNode,\n });\n\n return parsed;\n }\n\n return node;\n });\n });\n });\n }\n}\n","import type { Node, ParseObjectOptions } from \"@player-ui/player\";\nimport { NodeType } from \"@player-ui/player\";\nimport type { Asset } from \"@player-ui/types\";\nimport { fromMarkdown } from \"mdast-util-from-markdown\";\nimport type { Mappers } from \"../types\";\nimport { transformers } from \"./transformers\";\n\n/**\n * Parses markdown content using a provided mappers record.\n */\nexport function parseAssetMarkdownContent({\n asset,\n mappers,\n parser,\n}: {\n /**\n * Asset to be parsed\n */\n asset: Asset;\n /**\n * Mappers record of AST Node to Player Content\n *\n * @see {@link Mappers}\n */\n mappers: Mappers;\n /**\n * Parser object to AST\n */\n parser?: (\n obj: object,\n type?: Node.ChildrenTypes,\n options?: ParseObjectOptions,\n ) => Node.Node | null;\n}): Node.Node | null {\n const { children } = fromMarkdown(asset.value as string);\n const isMultiParagraph = children.length > 1;\n\n if (isMultiParagraph) {\n const value = children.map((node) => {\n const transformer = transformers[node.type as keyof typeof transformers];\n return transformer({\n astNode: node as any,\n asset,\n mappers,\n transformers,\n });\n });\n\n const collection = mappers.collection({\n originalAsset: asset,\n value,\n });\n\n return parser?.(collection, NodeType.Asset) || null;\n }\n\n const transformer =\n transformers[children[0].type as keyof typeof transformers];\n const content = transformer({\n astNode: children[0] as any,\n asset,\n mappers,\n transformers,\n });\n\n return parser?.(content, NodeType.Asset) || null;\n}\n","import type { Asset } from \"@player-ui/types\";\nimport type {\n Blockquote,\n Code,\n Emphasis,\n Heading,\n Image,\n InlineCode,\n Link,\n List,\n ListItem,\n Paragraph,\n Strong,\n Text,\n ThematicBreak,\n} from \"mdast-util-from-markdown/lib\";\nimport type { Transformer } from \"../types\";\n\n/**\n * Swap markdown type to text\n */\nfunction swapMarkdownType(asset: Asset): Asset {\n return { ...asset, type: \"text\" };\n}\n\n/**\n * Transforms Text AST Node into Player Content\n */\nconst textTransformer: Transformer<Text> = ({ astNode, asset, mappers }) => {\n const { value } = astNode;\n\n return mappers.text({\n originalAsset: asset,\n value,\n });\n};\n\n/**\n * Transforms Emphasis AST Node into Player Content\n */\nconst emphasisTransformer: Transformer<Emphasis> = ({\n astNode,\n asset,\n mappers,\n transformers,\n}) => {\n if (mappers.emphasis) {\n const { children } = astNode;\n\n const value = children.map((node) =>\n transformers[node.type]({ astNode: node, asset, mappers, transformers }),\n );\n\n return mappers.emphasis({\n originalAsset: asset,\n value,\n });\n }\n\n return swapMarkdownType(asset);\n};\n\n/**\n * Transforms Strong AST Node into Player Content\n */\nconst strongTransformer: Transformer<Strong> = ({\n astNode,\n asset,\n mappers,\n transformers,\n}) => {\n if (mappers.strong) {\n const { children } = astNode;\n\n const value = children.map((node) =>\n transformers[node.type]({ astNode: node, asset, mappers, transformers }),\n );\n\n return mappers.strong({\n originalAsset: asset,\n value,\n });\n }\n\n return swapMarkdownType(asset);\n};\n\n/**\n * Transforms Paragraph AST Node into Player Content\n */\nconst paragraphTransformer: Transformer<Paragraph> = ({\n astNode,\n asset,\n mappers,\n transformers,\n}) => {\n const { children } = astNode;\n\n if (\n children.every(({ type }) => Boolean(mappers[type as keyof typeof mappers]))\n ) {\n const value = children.map((node) =>\n transformers[node.type]({ astNode: node, asset, mappers, transformers }),\n );\n\n return mappers.paragraph({\n originalAsset: asset,\n value,\n });\n }\n\n return swapMarkdownType(asset);\n};\n\n/**\n * Transforms List AST Node into Player Content\n */\nconst listTransformer: Transformer<List> = ({\n astNode,\n asset,\n mappers,\n transformers,\n}) => {\n if (mappers.list) {\n const { children, ordered, start } = astNode;\n\n const value = children.map((node) =>\n transformers[node.type]({ astNode: node, asset, mappers, transformers }),\n );\n\n return mappers.list({\n originalAsset: asset,\n value,\n ordered: Boolean(ordered),\n start: start || undefined,\n });\n }\n\n return swapMarkdownType(asset);\n};\n\n/**\n * Transforms ListItem AST Node into Player Content\n */\nconst listItemTransformer: Transformer<ListItem> = ({\n astNode,\n asset,\n mappers,\n transformers,\n}) => {\n const { children } = astNode;\n\n const value = children.map((node) =>\n transformers[node.type]({ astNode: node, asset, mappers, transformers }),\n );\n\n const mapper = mappers.listItem || mappers.paragraph;\n\n return mapper({\n originalAsset: asset,\n value,\n });\n};\n\n/**\n * Transforms Link AST Node into Player Content\n */\nconst linkTransformer: Transformer<Link> = ({\n astNode,\n asset,\n mappers,\n transformers,\n}) => {\n if (mappers.link) {\n const { children, url } = astNode;\n\n const value = children.map((node) =>\n transformers[node.type]({ astNode: node, asset, mappers, transformers }),\n );\n\n return mappers.link({\n originalAsset: asset,\n href: url,\n value,\n });\n }\n\n return swapMarkdownType(asset);\n};\n\n/**\n * Transforms Image AST Node into Player Content\n */\nconst imageTransformer: Transformer<Image> = ({ astNode, asset, mappers }) => {\n if (mappers.image) {\n const { title, url, alt } = astNode;\n\n return mappers.image({\n originalAsset: asset,\n src: url,\n value: title || alt || \"\",\n });\n }\n\n return swapMarkdownType(asset);\n};\n\n/**\n * Transforms Blockquote AST Node into Player Content\n */\nconst blockquoteTransformer: Transformer<Blockquote> = ({\n astNode,\n asset,\n mappers,\n transformers,\n}) => {\n if (mappers.blockquote) {\n const { children } = astNode;\n\n const value = children.map((node) =>\n transformers[node.type]({ astNode: node, asset, mappers, transformers }),\n );\n\n return mappers.blockquote({\n originalAsset: asset,\n value,\n });\n }\n\n return swapMarkdownType(asset);\n};\n\n/**\n * Transforms InlineCode AST Node into Player Content\n */\nconst inlineCodeTransformer: Transformer<InlineCode> = ({\n astNode,\n asset,\n mappers,\n}) => {\n if (mappers.inlineCode) {\n const { value } = astNode;\n\n return mappers.inlineCode({\n originalAsset: asset,\n value,\n });\n }\n\n return swapMarkdownType(asset);\n};\n\n/**\n * Transforms Code block AST Node into Player Content\n */\nconst codeTransformer: Transformer<Code> = ({ astNode, asset, mappers }) => {\n if (mappers.code) {\n const { value, lang } = astNode;\n\n return mappers.code({\n originalAsset: asset,\n value,\n lang: lang || undefined,\n });\n }\n\n return swapMarkdownType(asset);\n};\n\n/**\n * Transforms Horizontal Rule (Thematic Break) AST Node into Player Content\n */\nconst horizontalRuleTransformer: Transformer<ThematicBreak> = ({\n asset,\n mappers,\n}) => {\n if (mappers.horizontalRule) {\n return mappers.horizontalRule({\n originalAsset: asset,\n value: \"---\",\n });\n }\n\n return swapMarkdownType(asset);\n};\n\n/**\n * Transforms Heading AST Node into Player Content\n */\nconst headingTransformer: Transformer<Heading> = ({\n astNode,\n asset,\n mappers,\n transformers,\n}) => {\n if (mappers.heading) {\n const { children, depth } = astNode;\n\n const value = children.map((node) =>\n transformers[node.type]({ astNode: node, asset, mappers, transformers }),\n );\n\n return mappers.heading({\n originalAsset: asset,\n value,\n depth,\n });\n }\n\n return swapMarkdownType(asset);\n};\n\nexport const transformers: Record<string, Transformer> = {\n horizontalRule: horizontalRuleTransformer,\n text: textTransformer,\n emphasis: emphasisTransformer,\n strong: strongTransformer,\n blockquote: blockquoteTransformer,\n list: listTransformer,\n listItem: listItemTransformer,\n link: linkTransformer,\n image: imageTransformer,\n paragraph: paragraphTransformer,\n code: codeTransformer,\n heading: headingTransformer,\n inlineCode: inlineCodeTransformer,\n};\n"],"mappings":"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","names":["NodeType","transformers","transformer","NodeType"]}