@rspress/plugin-preview 0.0.2 → 0.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.
@@ -47,7 +47,7 @@ function styleInject(css, ref) {
47
47
  var style_inject_es_default = styleInject;
48
48
 
49
49
  // src/virtual-demo.scss
50
- var css_248z = ":root {\n --modern-iframe-bg: var(--modern-code-block-bg);\n}\n\nbody {\n background-color: var(--modern-iframe-bg);\n}\n\n.preview-nav {\n position: relative;\n display: flex;\n align-items: center;\n justify-content: center;\n height: 56px;\n background-color: var(--modern-c-bg);\n font-weight: 600;\n font-size: 17px;\n}";
50
+ var css_248z = ":root {\n --rp-iframe-bg: var(--rp-code-block-bg);\n}\n\nbody {\n background-color: var(--rp-iframe-bg);\n}\n\n.preview-nav {\n position: relative;\n display: flex;\n align-items: center;\n justify-content: center;\n height: 56px;\n background-color: var(--rp-c-bg);\n font-weight: 600;\n font-size: 17px;\n}";
51
51
  style_inject_es_default(css_248z);
52
52
 
53
53
  // src/virtual-demo.tsx
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rspress/plugin-preview",
3
- "version": "0.0.2",
3
+ "version": "0.0.3",
4
4
  "description": "A plugin for rspress to preview the code block in markdown/mdx file.",
5
5
  "bugs": "https://github.com/web-infra-dev/rspress/issues",
6
6
  "repository": {
@@ -24,7 +24,7 @@
24
24
  "@modern-js/utils": "2.30.0",
25
25
  "qrcode.react": "^3.1.0",
26
26
  "remark-gfm": "3.0.1",
27
- "@rspress/shared": "0.0.2"
27
+ "@rspress/shared": "0.0.3"
28
28
  },
29
29
  "devDependencies": {
30
30
  "@types/mdast": "^3.0.10",
@@ -1,15 +1,14 @@
1
1
  :root {
2
- --modern-preview-button-hover-bg: #e5e6eb;
3
- --modern-preview-button-bg: #e5e6eb
4
-
2
+ --rp-preview-button-hover-bg: #e5e6eb;
3
+ --rp-preview-button-bg: #e5e6eb;
5
4
  }
6
5
 
7
6
  .dark {
8
- --modern-preview-button-hover-bg: #c5c5c5;
9
- --modern-preview-button-bg: #c5c5c5;
7
+ --rp-preview-button-hover-bg: #c5c5c5;
8
+ --rp-preview-button-bg: #c5c5c5;
10
9
  }
11
10
 
12
- .modern-preview {
11
+ .rspress-preview {
13
12
  padding: 16px 0;
14
13
 
15
14
  &-operations {
@@ -20,11 +19,11 @@
20
19
  text-align: center;
21
20
  border-radius: 50%;
22
21
  border: 1px solid transparent;
23
- background-color: var(--modern-c-bg-soft);
22
+ background-color: var(--rp-c-bg-soft);
24
23
  margin-left: 14px;
25
24
 
26
25
  &:hover {
27
- background-color: var(--modern-preview-button-hover-bg);
26
+ background-color: var(--rp-preview-button-hover-bg);
28
27
  }
29
28
  }
30
29
 
@@ -36,18 +36,18 @@ const Container: React.FC<ContainerProps> = props => {
36
36
 
37
37
  return (
38
38
  <NoSSR>
39
- <div className="modern-preview">
39
+ <div className="rspress-preview">
40
40
  {isMobile === 'true' ? (
41
- <div className="modern-preview-wrapper flex">
42
- <div className="modern-preview-code">{children?.[0]}</div>
43
- <div className="modern-preview-device">
41
+ <div className="rspress-preview-wrapper flex">
42
+ <div className="rspress-preview-code">{children?.[0]}</div>
43
+ <div className="rspress-preview-device">
44
44
  <iframe src={getPageUrl()} key={iframeKey}></iframe>
45
45
  <MobileOperation url={url} refresh={refresh} />
46
46
  </div>
47
47
  </div>
48
48
  ) : (
49
49
  <div>
50
- <div className="modern-preview-card">
50
+ <div className="rspress-preview-card">
51
51
  <div
52
52
  style={{
53
53
  overflow: 'auto',
@@ -56,7 +56,7 @@ const Container: React.FC<ContainerProps> = props => {
56
56
  >
57
57
  {children?.[1]}
58
58
  </div>
59
- <div className="modern-preview-operations web">
59
+ <div className="rspress-preview-operations web">
60
60
  <button
61
61
  onClick={toggleCode}
62
62
  aria-label={lang === 'zh' ? '收起代码' : ''}
@@ -69,8 +69,8 @@ const Container: React.FC<ContainerProps> = props => {
69
69
  <div
70
70
  className={`${
71
71
  showCode
72
- ? 'modern-preview-code-show'
73
- : 'modern-preview-code-hide'
72
+ ? 'rspress-preview-code-show'
73
+ : 'rspress-preview-code-hide'
74
74
  }`}
75
75
  >
76
76
  {children?.[0]}
@@ -1,14 +1,14 @@
1
1
  :root {
2
- --modern-demo-block-bg: #f7f8fA;
2
+ --rp-demo-block-bg: #f7f8fa;
3
3
  }
4
4
 
5
5
  .dark {
6
- --modern-demo-block-bg: #1a1a1a
6
+ --rp-demo-block-bg: #1a1a1a;
7
7
  }
8
8
 
9
- .modern-demo-block {
9
+ .rspress-demo-block {
10
10
  padding-bottom: 12px;
11
- background-color: var(--modern-demo-block-bg);
11
+ background-color: var(--rp-demo-block-bg);
12
12
  &-title {
13
13
  padding: 12px 12px 8px;
14
14
  color: #697b8c;
@@ -8,9 +8,9 @@ interface Props {
8
8
  export default (props: Props) => {
9
9
  const { title, children } = props;
10
10
  return (
11
- <div className="modern-demo-block">
12
- <div className="modern-demo-block-title">{title}</div>
13
- <div className="modern-demo-block-main">{children}</div>
11
+ <div className="rspress-demo-block">
12
+ <div className="rspress-demo-block-title">{title}</div>
13
+ <div className="rspress-demo-block-main">{children}</div>
14
14
  </div>
15
15
  );
16
16
  };
@@ -1,46 +1,48 @@
1
1
  .fixed-device {
2
2
  display: none;
3
3
  position: fixed;
4
- top: calc(var(--modern-nav-height) + var(--modern-preview-padding));
4
+ top: calc(var(--rp-nav-height) + var(--rp-preview-padding));
5
5
  overflow: hidden;
6
6
  }
7
7
 
8
8
  .fixed-iframe {
9
- height: var(--modern-device-height);
10
- max-height: calc(100vh - var(--modern-preview-padding) * 2 - var(--modern-nav-height));
9
+ height: var(--rp-device-height);
10
+ max-height: calc(
11
+ 100vh - var(--rp-preview-padding) * 2 - var(--rp-nav-height)
12
+ );
11
13
  width: 360px;
12
14
  pointer-events: auto;
13
- border-radius: var(--modern-device-border-radius) var(--modern-device-border-radius) 0 0;
14
- border: var(--modern-device-border);
15
+ border-radius: var(--rp-device-border-radius) var(--rp-device-border-radius) 0
16
+ 0;
17
+ border: var(--rp-device-border);
15
18
  }
16
19
 
17
20
  .fixed-operation {
18
- border: var(--modern-device-border);
21
+ border: var(--rp-device-border);
19
22
  border-top: 0;
20
- border-radius: 0 0 var(--modern-device-border-radius) var(--modern-device-border-radius);
23
+ border-radius: 0 0 var(--rp-device-border-radius)
24
+ var(--rp-device-border-radius);
21
25
  }
22
26
 
23
27
  :root {
24
- --modern-device-width: 360px;
25
- --modern-device-height: 640px;
26
- --modern-device-border-radius: 20px;
27
- --modern-device-border: 1px solid #e5e6e8;
28
+ --rp-device-width: 360px;
29
+ --rp-device-height: 640px;
30
+ --rp-device-border-radius: 20px;
31
+ --rp-device-border: 1px solid #e5e6e8;
28
32
  }
29
33
 
30
-
31
- @media (min-width: 960px){
34
+ @media (min-width: 960px) {
32
35
  .fixed-device {
33
36
  display: inline;
34
- left: calc(1280px - var(--modern-device-width) - var(--modern-preview-padding));
37
+ left: calc(1280px - var(--rp-device-width) - var(--rp-preview-padding));
35
38
  right: auto;
36
39
  }
37
40
  }
38
41
 
39
- @media (min-width: 1280px){
42
+ @media (min-width: 1280px) {
40
43
  .fixed-device {
41
44
  display: inline;
42
- right: var(--modern-preview-padding);
45
+ right: var(--rp-preview-padding);
43
46
  left: auto;
44
47
  }
45
48
  }
46
-
@@ -38,9 +38,8 @@ export default () => {
38
38
  useEffect(() => {
39
39
  const root = document.querySelector(':root');
40
40
  if (root) {
41
- const defaultAsideWidth = getComputedStyle(root).getPropertyValue(
42
- '--modern-aside-width',
43
- );
41
+ const defaultAsideWidth =
42
+ getComputedStyle(root).getPropertyValue('--rp-aside-width');
44
43
  setAsideWidth(defaultAsideWidth);
45
44
  }
46
45
  const handleResize = () => {
@@ -51,28 +50,28 @@ export default () => {
51
50
  }, []);
52
51
 
53
52
  useEffect(() => {
54
- const node = document.querySelector('.modern-doc-container');
53
+ const node = document.querySelector('.rspress-doc-container');
55
54
  const { style } = document.documentElement;
56
55
  if (haveDemos) {
57
56
  if (innerWidth > 1280) {
58
57
  node?.setAttribute(
59
58
  'style',
60
- 'padding-right: calc(var(--modern-device-width) + var(--modern-preview-padding) * 2)',
59
+ 'padding-right: calc(var(--rp-device-width) + var(--rp-preview-padding) * 2)',
61
60
  );
62
61
  } else if (innerWidth > 960) {
63
62
  node?.setAttribute(
64
63
  'style',
65
64
  `padding-right: calc(${
66
65
  innerWidth - 1280
67
- }px + var(--modern-device-width) + var(--modern-preview-padding) * 2)`,
66
+ }px + var(--rp-device-width) + var(--rp-preview-padding) * 2)`,
68
67
  );
69
68
  } else {
70
69
  node?.removeAttribute('style');
71
70
  }
72
- style.setProperty('--modern-aside-width', '0');
71
+ style.setProperty('--rp-aside-width', '0');
73
72
  } else {
74
73
  node?.removeAttribute('style');
75
- style.setProperty('--modern-aside-width', asideWidth);
74
+ style.setProperty('--rp-aside-width', asideWidth);
76
75
  }
77
76
  }, [haveDemos, asideWidth, innerWidth]);
78
77
 
@@ -84,13 +84,13 @@ export default (props: {
84
84
  }, [showQRCode]);
85
85
 
86
86
  return (
87
- <div className={`modern-preview-operations mobile ${className}`}>
87
+ <div className={`rspress-preview-operations mobile ${className}`}>
88
88
  <button onClick={refresh} aria-label={t.refresh}>
89
89
  <IconRefresh />
90
90
  </button>
91
91
  <div className="relative" ref={triggerRef}>
92
92
  {showQRCode && (
93
- <div className="modern-preview-qrcode">
93
+ <div className="rspress-preview-qrcode">
94
94
  <QRCodeSVG value={getPageUrl()} size={96} />
95
95
  </div>
96
96
  )}
@@ -1,35 +1,35 @@
1
- :root .modern-preview div[class*='language-'] {
1
+ :root .rspress-preview div[class*='language-'] {
2
2
  margin: 0;
3
3
  border-radius: 0;
4
4
  height: 100%;
5
5
  }
6
6
 
7
7
  :root {
8
- --modern-preview-padding: 32px
8
+ --rp-preview-padding: 32px;
9
9
  }
10
10
 
11
11
  @media (min-width: 1280px) {
12
- .modern-doc-layout {
13
- width: calc(100% - var(--modern-preview-padding));
14
- margin-left: var(--modern-preview-padding);
12
+ .rspress-doc-layout {
13
+ width: calc(100% - var(--rp-preview-padding));
14
+ margin-left: var(--rp-preview-padding);
15
15
  }
16
16
 
17
- .modern-sidebar {
18
- margin-left: var(--modern-preview-padding);
17
+ .rspress-sidebar {
18
+ margin-left: var(--rp-preview-padding);
19
19
  }
20
20
 
21
- .modern-doc-nav-container {
21
+ .rspress-doc-nav-container {
22
22
  max-width: 100%;
23
- margin-left: var(--modern-preview-padding);
23
+ margin-left: var(--rp-preview-padding);
24
24
  }
25
25
 
26
- .modern-doc-container {
27
- padding-right: var(--modern-preview-padding);
28
- padding-left: var(--modern-preview-padding);
26
+ .rspress-doc-container {
27
+ padding-right: var(--rp-preview-padding);
28
+ padding-left: var(--rp-preview-padding);
29
29
  }
30
30
 
31
- .modern-doc {
31
+ .rspress-doc {
32
32
  width: 100%;
33
- padding-right: var(--modern-preview-padding);
33
+ padding-right: var(--rp-preview-padding);
34
34
  }
35
35
  }
@@ -1,11 +1,11 @@
1
1
  :root {
2
- --modern-sidebar-width: 210px;
3
- --modern-aside-width: 192px;
4
- --modern-preview-padding: 32px
2
+ --rp-sidebar-width: 210px;
3
+ --rp-aside-width: 192px;
4
+ --rp-preview-padding: 32px;
5
5
  }
6
6
 
7
7
  :root .preview-code div[class*='language-'] {
8
8
  margin: 0;
9
9
  border-radius: 0;
10
- height: 100%
10
+ height: 100%;
11
11
  }