vite-plugin-react-deck 1.0.1 → 1.0.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.
Files changed (3) hide show
  1. package/index.cjs +23 -15
  2. package/index.mjs +23 -15
  3. package/package.json +3 -2
package/index.cjs CHANGED
@@ -55,6 +55,7 @@ function extractMainCodeAsChildren(source) {
55
55
  }
56
56
 
57
57
  // src/slides.ts
58
+ var import_remark_gfm = __toESM(require("remark-gfm"), 1);
58
59
  async function transformSlidesMdxToReact(sourceContent, {
59
60
  production: isProd,
60
61
  ...options
@@ -63,7 +64,7 @@ async function transformSlidesMdxToReact(sourceContent, {
63
64
  const { content: finalContent, inlineModules } = extractInlineModules(
64
65
  normalizeNewline(content)
65
66
  );
66
- const slides = finalContent.split("---");
67
+ const slides = finalContent.split("---\n");
67
68
  const enrichedSlides = [];
68
69
  const LAYOUT_REGEX = /\S*\nlayout: (.*)/g;
69
70
  let frontmatterForNextSlide = null;
@@ -88,6 +89,7 @@ ${slide}
88
89
  outputFormat: "program",
89
90
  jsx: !isProd,
90
91
  providerImportSource: "@mdx-js/react",
92
+ remarkPlugins: [import_remark_gfm.default],
91
93
  ...options
92
94
  });
93
95
  const mainCode = extractMainCodeAsChildren(result.value.toString());
@@ -101,22 +103,28 @@ ${slide}
101
103
  `
102
104
  import React from 'react';
103
105
  ${isProd ? 'import {Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs} from "react/jsx-runtime";import {useMDXComponents as _provideComponents} from "@mdx-js/react" ' : "import {useMDXComponents as _provideComponents} from '@mdx-js/react';"}
106
+
107
+ ${compiledSlides.map(
108
+ (slide, index) => `
109
+ export function Slide${index}(baseProps) {
110
+ const props = {...baseProps, frontmatter: ${JSON.stringify(slide.metadata)} };
111
+ ${slide.mdxContent}
112
+ }
113
+ `
114
+ ).join("\n")}
104
115
 
105
- export default {
106
- metadata: ${JSON.stringify(metadata)},
107
- slides: [${compiledSlides.map(
108
- (slide) => `{
109
- metadata: ${JSON.stringify(slide.metadata)},
110
- slideComponent: (baseProps) => {
111
- const props = {...baseProps, frontmatter: ${JSON.stringify(
112
- slide.metadata
113
- )} };
114
- ${slide.mdxContent}
115
- }
116
- }`
116
+ export default function Deck() {
117
+ };
118
+ Deck.metadata = ${JSON.stringify(metadata)};
119
+ Deck.slides = [
120
+ ${compiledSlides.map(
121
+ (slide, index) => `{
122
+ metadata: ${JSON.stringify(slide.metadata)},
123
+ slideComponent: Slide${index}
124
+ }`
117
125
  ).join(",")}
118
- ]
119
- };`,
126
+ ]
127
+ `,
120
128
  inlineModules
121
129
  );
122
130
  return output;
package/index.mjs CHANGED
@@ -32,6 +32,7 @@ function extractMainCodeAsChildren(source) {
32
32
  }
33
33
 
34
34
  // src/slides.ts
35
+ import remarkGfm from "remark-gfm";
35
36
  async function transformSlidesMdxToReact(sourceContent, {
36
37
  production: isProd,
37
38
  ...options
@@ -40,7 +41,7 @@ async function transformSlidesMdxToReact(sourceContent, {
40
41
  const { content: finalContent, inlineModules } = extractInlineModules(
41
42
  normalizeNewline(content)
42
43
  );
43
- const slides = finalContent.split("---");
44
+ const slides = finalContent.split("---\n");
44
45
  const enrichedSlides = [];
45
46
  const LAYOUT_REGEX = /\S*\nlayout: (.*)/g;
46
47
  let frontmatterForNextSlide = null;
@@ -65,6 +66,7 @@ ${slide}
65
66
  outputFormat: "program",
66
67
  jsx: !isProd,
67
68
  providerImportSource: "@mdx-js/react",
69
+ remarkPlugins: [remarkGfm],
68
70
  ...options
69
71
  });
70
72
  const mainCode = extractMainCodeAsChildren(result.value.toString());
@@ -78,22 +80,28 @@ ${slide}
78
80
  `
79
81
  import React from 'react';
80
82
  ${isProd ? 'import {Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs} from "react/jsx-runtime";import {useMDXComponents as _provideComponents} from "@mdx-js/react" ' : "import {useMDXComponents as _provideComponents} from '@mdx-js/react';"}
83
+
84
+ ${compiledSlides.map(
85
+ (slide, index) => `
86
+ export function Slide${index}(baseProps) {
87
+ const props = {...baseProps, frontmatter: ${JSON.stringify(slide.metadata)} };
88
+ ${slide.mdxContent}
89
+ }
90
+ `
91
+ ).join("\n")}
81
92
 
82
- export default {
83
- metadata: ${JSON.stringify(metadata)},
84
- slides: [${compiledSlides.map(
85
- (slide) => `{
86
- metadata: ${JSON.stringify(slide.metadata)},
87
- slideComponent: (baseProps) => {
88
- const props = {...baseProps, frontmatter: ${JSON.stringify(
89
- slide.metadata
90
- )} };
91
- ${slide.mdxContent}
92
- }
93
- }`
93
+ export default function Deck() {
94
+ };
95
+ Deck.metadata = ${JSON.stringify(metadata)};
96
+ Deck.slides = [
97
+ ${compiledSlides.map(
98
+ (slide, index) => `{
99
+ metadata: ${JSON.stringify(slide.metadata)},
100
+ slideComponent: Slide${index}
101
+ }`
94
102
  ).join(",")}
95
- ]
96
- };`,
103
+ ]
104
+ `,
97
105
  inlineModules
98
106
  );
99
107
  return output;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vite-plugin-react-deck",
3
- "version": "1.0.1",
3
+ "version": "1.0.3",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "main": "index.cjs",
@@ -25,6 +25,7 @@
25
25
  "@mdx-js/mdx": "^3.0.0",
26
26
  "@mdx-js/react": "^3.0.0",
27
27
  "glob": "^10.3.10",
28
- "gray-matter": "^4.0.3"
28
+ "gray-matter": "^4.0.3",
29
+ "remark-gfm": "^4.0.0"
29
30
  }
30
31
  }