@diplodoc/cli-tests 4.59.13 → 5.0.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 (50) hide show
  1. package/e2e/__snapshots__/include-toc.test.ts.snap +106 -106
  2. package/e2e/__snapshots__/load-custom-resources.spec.ts.snap +297 -344
  3. package/e2e/__snapshots__/metadata.spec.ts.snap +121 -144
  4. package/e2e/__snapshots__/plugin-corner-cases.spec.ts.snap +0 -0
  5. package/e2e/__snapshots__/regression.test.ts.snap +904 -713
  6. package/e2e/__snapshots__/restricted-access.test.ts.snap +234 -0
  7. package/e2e/__snapshots__/rtl.spec.ts.snap +252 -302
  8. package/e2e/__snapshots__/translation.spec.ts.snap +366 -0
  9. package/e2e/errors.spec.ts +31 -0
  10. package/e2e/regression.test.ts +7 -2
  11. package/e2e/restricted-access.test.ts +21 -0
  12. package/e2e/translation.spec.ts +1 -1
  13. package/fixtures/cliAdapter.ts +41 -20
  14. package/fixtures/runners/binary.ts +18 -3
  15. package/fixtures/runners/source.ts +5 -5
  16. package/fixtures/runners/types.ts +7 -1
  17. package/fixtures/utils/file.ts +3 -3
  18. package/fixtures/utils/test.ts +6 -1
  19. package/mocks/errors/unreachable-link/input/exists.md +1 -0
  20. package/mocks/errors/unreachable-link/input/index.md +2 -0
  21. package/mocks/errors/unreachable-link/input/toc.yaml +1 -0
  22. package/mocks/include-toc/test6/input/toc.yaml +1 -0
  23. package/mocks/regression/input/1.md +2 -0
  24. package/mocks/regression/input/generic/1.md +3 -0
  25. package/mocks/regression/input/generic/2.md +3 -0
  26. package/mocks/regression/input/generic/3.md +1 -0
  27. package/mocks/regression/input/generic/Sub notes/1.md +3 -0
  28. package/mocks/regression/input/generic/Sub notes/2.md +3 -0
  29. package/mocks/regression/input/includes/deep.md +1 -0
  30. package/mocks/regression/input/includes.md +3 -0
  31. package/mocks/regression/input/redirects.yaml +6 -0
  32. package/mocks/regression/input/toc.yaml +7 -3
  33. package/mocks/restricted-access/test1/input/index.md +0 -0
  34. package/mocks/restricted-access/test1/input/plugins/index.md +0 -0
  35. package/mocks/restricted-access/test1/input/plugins/index2.md +0 -0
  36. package/mocks/restricted-access/test1/input/plugins/index3.md +0 -0
  37. package/mocks/restricted-access/test1/input/plugins/index4.md +4 -0
  38. package/mocks/restricted-access/test1/input/toc.yaml +28 -0
  39. package/mocks/restricted-access/test2/input/index.md +0 -0
  40. package/mocks/restricted-access/test2/input/plugins/index.md +0 -0
  41. package/mocks/restricted-access/test2/input/project/index.md +0 -0
  42. package/mocks/restricted-access/test2/input/toc.yaml +21 -0
  43. package/mocks/restricted-access/test3/input/a1.md +1 -0
  44. package/mocks/restricted-access/test3/input/folder1/a1.md +1 -0
  45. package/mocks/restricted-access/test3/input/folder1/folder2/a1.md +1 -0
  46. package/mocks/restricted-access/test3/input/folder1/folder2/toc.yaml +8 -0
  47. package/mocks/restricted-access/test3/input/folder1/toc.yaml +10 -0
  48. package/mocks/restricted-access/test3/input/index.md +0 -0
  49. package/mocks/restricted-access/test3/input/toc.yaml +16 -0
  50. package/package.json +3 -2
@@ -2,6 +2,7 @@
2
2
 
3
3
  exports[`Allow load custom resources > md2html with metadata > filelist 1`] = `
4
4
  "[
5
+ "_bundle/search-async-1",
5
6
  "_bundle/search-async-0",
6
7
  "_bundle/app-css-1",
7
8
  "_bundle/app-js-1",
@@ -9,6 +10,8 @@ exports[`Allow load custom resources > md2html with metadata > filelist 1`] = `
9
10
  "_bundle/latex-extension.css",
10
11
  "_bundle/latex-extension.js",
11
12
  "_bundle/mermaid-extension.js",
13
+ "_bundle/page-constructor-extension.css",
14
+ "_bundle/page-constructor-extension.js",
12
15
  "_bundle/search-js-0",
13
16
  "_bundle/search-js-1",
14
17
  "_bundle/search-css-0",
@@ -21,152 +24,125 @@ exports[`Allow load custom resources > md2html with metadata > filelist 1`] = `
21
24
  ]"
22
25
  `;
23
26
 
24
- exports[`Allow load custom resources > md2html with metadata > index.html 1`] = `
25
- "
26
- <!DOCTYPE html>
27
- <html lang="ru" dir="ltr">
28
- <head>
29
- <meta charset="utf-8">
30
- <base href="./" />
31
- <meta name="generator" content="Diplodoc Platform vDIPLODOC-VERSION" />
32
- <meta name="test-yfm" content="inline test" />
33
- <meta name="yfm-config" content="config test" />
34
- <meta name="title" content="Documentation" />
35
- <meta name="noIndex" content="true" />
36
-
37
-
38
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
39
- <title>Documentation | Documentation</title>
40
- <style type="text/css">
41
- body {
42
- height: 100vh;
43
- }
44
- </style>
45
- <link type="text/css" rel="stylesheet" href="_bundle/search-css-0" />
46
- <link type="text/css" rel="stylesheet" href="_bundle/app-css-1" />
47
-
48
- </head>
49
- <body class="g-root g-root_theme_light">
50
- <div id="root"></div>
51
- <script type="application/json" id="diplodoc-state">
52
- {"data":{"data":{"title":"Documentation","description":"","meta":{"metadata":[{"name":"generator","content":"Diplodoc Platform vDIPLODOC-VERSION"},{"name":"test-yfm","content":"inline test"},{"name":"yfm-config","content":"config test"}],"title":"Documentation","noIndex":true},"links":[{"title":"Getting started with Documentation","description":"This guide will show you the basics of working with Documentation","href":"page.html"}]},"meta":{"metadata":[{"name":"generator","content":"Diplodoc Platform vDIPLODOC-VERSION"},{"name":"test-yfm","content":"inline test"},{"name":"yfm-config","content":"config test"}],"title":"Documentation","noIndex":true},"title":"Documentation","leading":true},"router":{"pathname":"index","depth":1},"lang":"ru","langs":["ru"]}
53
- </script>
54
- <script type="application/javascript">
55
- function unescapeJsonFromHtml(escaped) {
56
- const unescaped = escaped.replace(/&lt;/g, "<").replace(/&gt;/g, ">").replace(/&amp;/g, "&");
57
- return JSON.parse(unescaped);
58
- }
59
- const data = document.querySelector('script#diplodoc-state');
60
- window.__DATA__ = unescapeJsonFromHtml(data.innerText);
61
- window.STATIC_CONTENT = false;
62
- </script>
63
- <script src="toc.js" type="application/javascript"></script>
64
-
65
- <script type="application/javascript" src="_bundle/search-js-0"></script>
66
- <script type="application/javascript" src="_bundle/app-js-1"></script>
67
- <script type="application/javascript" src="_bundle/search-js-2"></script>
68
- </body>
69
- </html>
70
- "
27
+ exports[`Allow load custom resources > md2html with metadata 1`] = `
28
+ "<!DOCTYPE html>
29
+ <html lang="ru" dir="ltr">
30
+ <head>
31
+ <meta charset="utf-8">
32
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
33
+ <base href="./" />
34
+ <title>Documentation | Documentation</title>
35
+ <meta name="generator" content="Diplodoc Platform vDIPLODOC-VERSION">
36
+ <meta name="test-yfm" content="inline test">
37
+ <meta name="yfm-config" content="config test">
38
+ <meta name="title" content="Documentation">
39
+ <meta name="noIndex" content="true">
40
+
41
+ <style type="text/css">html, body {min-height:100vh; height:100vh;}</style>
42
+
43
+ <link type="text/css" rel="stylesheet" href="_bundle/search-css-0"/>
44
+ <link type="text/css" rel="stylesheet" href="_bundle/app-css-1"/>
45
+ </head>
46
+ <body class="g-root g-root_theme_light">
47
+ <div id="root"></div>
48
+ <script type="application/json" id="diplodoc-state">
49
+ {"data":{"leading":true,"data":{"title":"Documentation","description":"","links":[{"title":"Getting started with Documentation","description":"This guide will show you the basics of working with Documentation","href":"page.html"}]},"meta":{"metadata":[{"name":"generator","content":"Diplodoc Platform vDIPLODOC-VERSION"},{"name":"test-yfm","content":"inline test"},{"name":"yfm-config","content":"config test"}],"title":"Documentation","noIndex":true},"title":"Documentation"},"router":{"pathname":"index","depth":1,"base":"./"},"lang":"ru","langs":["ru"]}
50
+ </script>
51
+ <script type="application/javascript">
52
+ const data = document.querySelector('script#diplodoc-state');
53
+ window.__DATA__ = JSON.parse((function unescape(string) {
54
+ return string.replace(/&lt;/g, "<").replace(/&gt;/g, ">").replace(/&amp;/g, "&");
55
+ })(data.innerText));
56
+ window.STATIC_CONTENT = false;
57
+ </script>
58
+ <script type="application/javascript" defer src="toc.js"></script>
59
+ <script type="application/javascript" defer src="_bundle/search-js-0"></script>
60
+ <script type="application/javascript" defer src="_bundle/app-js-1"></script>
61
+ <script type="application/javascript" defer src="_bundle/search-js-2"></script>
62
+
63
+ </body>
64
+ </html>"
71
65
  `;
72
66
 
73
- exports[`Allow load custom resources > md2html with metadata > page.html 1`] = `
74
- "
75
- <!DOCTYPE html>
76
- <html lang="ru" dir="ltr">
77
- <head>
78
- <meta charset="utf-8">
79
- <base href="./" />
80
- <meta name="generator" content="Diplodoc Platform vDIPLODOC-VERSION" />
81
- <meta name="test-yfm" content="inline test" />
82
- <meta name="yfm-config" content="config test" />
83
- <meta name="yfm" value="builder in page" />
84
-
85
-
86
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
87
- <title>Documentation</title>
88
- <style type="text/css">
89
- body {
90
- height: 100vh;
91
- }
92
- </style>
93
- <link type="text/css" rel="stylesheet" href="_bundle/search-css-0" />
94
- <link type="text/css" rel="stylesheet" href="_bundle/app-css-1" />
95
-
96
- </head>
97
- <body class="g-root g-root_theme_light">
98
- <div id="root"></div>
99
- <script type="application/json" id="diplodoc-state">
100
- {"data":{"meta":{"metadata":[{"name":"generator","content":"Diplodoc Platform vDIPLODOC-VERSION"},{"name":"test-yfm","content":"inline test"},{"name":"yfm-config","content":"config test"},{"name":"yfm","value":"builder in page"}]},"headings":[],"title":"","html":"&lt;p&gt;Lorem&lt;/p&gt;/n","leading":false},"router":{"pathname":"page","depth":1},"lang":"ru","langs":["ru"]}
101
- </script>
102
- <script type="application/javascript">
103
- function unescapeJsonFromHtml(escaped) {
104
- const unescaped = escaped.replace(/&lt;/g, "<").replace(/&gt;/g, ">").replace(/&amp;/g, "&");
105
- return JSON.parse(unescaped);
106
- }
107
- const data = document.querySelector('script#diplodoc-state');
108
- window.__DATA__ = unescapeJsonFromHtml(data.innerText);
109
- window.STATIC_CONTENT = false;
110
- </script>
111
- <script src="toc.js" type="application/javascript"></script>
112
-
113
- <script type="application/javascript" src="_bundle/search-js-0"></script>
114
- <script type="application/javascript" src="_bundle/app-js-1"></script>
115
- <script type="application/javascript" src="_bundle/search-js-2"></script>
116
- </body>
117
- </html>
118
- "
67
+ exports[`Allow load custom resources > md2html with metadata 2`] = `
68
+ "<!DOCTYPE html>
69
+ <html lang="ru" dir="ltr">
70
+ <head>
71
+ <meta charset="utf-8">
72
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
73
+ <base href="./" />
74
+ <title>Documentation</title>
75
+ <meta name="generator" content="Diplodoc Platform vDIPLODOC-VERSION">
76
+ <meta name="test-yfm" content="inline test">
77
+ <meta name="yfm-config" content="config test">
78
+ <meta name="yfm" value="builder in page">
79
+
80
+ <style type="text/css">html, body {min-height:100vh; height:100vh;}</style>
81
+
82
+ <link type="text/css" rel="stylesheet" href="_bundle/search-css-0"/>
83
+ <link type="text/css" rel="stylesheet" href="_bundle/app-css-1"/>
84
+ </head>
85
+ <body class="g-root g-root_theme_light">
86
+ <div id="root"></div>
87
+ <script type="application/json" id="diplodoc-state">
88
+ {"data":{"leading":false,"html":"&lt;p&gt;Lorem&lt;/p&gt;/n","meta":{"metadata":[{"name":"generator","content":"Diplodoc Platform vDIPLODOC-VERSION"},{"name":"test-yfm","content":"inline test"},{"name":"yfm-config","content":"config test"},{"name":"yfm","value":"builder in page"}]},"headings":[],"title":""},"router":{"pathname":"page","depth":1,"base":"./"},"lang":"ru","langs":["ru"]}
89
+ </script>
90
+ <script type="application/javascript">
91
+ const data = document.querySelector('script#diplodoc-state');
92
+ window.__DATA__ = JSON.parse((function unescape(string) {
93
+ return string.replace(/&lt;/g, "<").replace(/&gt;/g, ">").replace(/&amp;/g, "&");
94
+ })(data.innerText));
95
+ window.STATIC_CONTENT = false;
96
+ </script>
97
+ <script type="application/javascript" defer src="toc.js"></script>
98
+ <script type="application/javascript" defer src="_bundle/search-js-0"></script>
99
+ <script type="application/javascript" defer src="_bundle/app-js-1"></script>
100
+ <script type="application/javascript" defer src="_bundle/search-js-2"></script>
101
+
102
+ </body>
103
+ </html>"
119
104
  `;
120
105
 
121
- exports[`Allow load custom resources > md2html with metadata > project/config.html 1`] = `
122
- "
123
- <!DOCTYPE html>
124
- <html lang="ru" dir="ltr">
125
- <head>
126
- <meta charset="utf-8">
127
- <base href="../" />
128
- <meta name="generator" content="Diplodoc Platform vDIPLODOC-VERSION" />
129
- <meta name="test-yfm" content="inline test" />
130
- <meta name="yfm-config" content="config test" />
131
- <meta name="yfm" value="builder in config" />
132
-
133
-
134
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
135
- <title>Documentation</title>
136
- <style type="text/css">
137
- body {
138
- height: 100vh;
139
- }
140
- </style>
141
- <link type="text/css" rel="stylesheet" href="_bundle/search-css-0" />
142
- <link type="text/css" rel="stylesheet" href="_bundle/app-css-1" />
143
-
144
- </head>
145
- <body class="g-root g-root_theme_light">
146
- <div id="root"></div>
147
- <script type="application/json" id="diplodoc-state">
148
- {"data":{"meta":{"metadata":[{"name":"generator","content":"Diplodoc Platform vDIPLODOC-VERSION"},{"name":"test-yfm","content":"inline test"},{"name":"yfm-config","content":"config test"},{"name":"yfm","value":"builder in config"}]},"headings":[],"title":"","html":"&lt;p&gt;Lorem&lt;/p&gt;/n","leading":false},"router":{"pathname":"project/config","depth":2},"lang":"ru","langs":["ru"]}
149
- </script>
150
- <script type="application/javascript">
151
- function unescapeJsonFromHtml(escaped) {
152
- const unescaped = escaped.replace(/&lt;/g, "<").replace(/&gt;/g, ">").replace(/&amp;/g, "&");
153
- return JSON.parse(unescaped);
154
- }
155
- const data = document.querySelector('script#diplodoc-state');
156
- window.__DATA__ = unescapeJsonFromHtml(data.innerText);
157
- window.STATIC_CONTENT = false;
158
- </script>
159
- <script src="toc.js" type="application/javascript"></script>
160
-
161
- <script type="application/javascript" src="_bundle/search-js-0"></script>
162
- <script type="application/javascript" src="_bundle/app-js-1"></script>
163
- <script type="application/javascript" src="_bundle/search-js-2"></script>
164
- </body>
165
- </html>
166
- "
106
+ exports[`Allow load custom resources > md2html with metadata 3`] = `
107
+ "<!DOCTYPE html>
108
+ <html lang="ru" dir="ltr">
109
+ <head>
110
+ <meta charset="utf-8">
111
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
112
+ <base href="../" />
113
+ <title>Documentation</title>
114
+ <meta name="generator" content="Diplodoc Platform vDIPLODOC-VERSION">
115
+ <meta name="test-yfm" content="inline test">
116
+ <meta name="yfm-config" content="config test">
117
+ <meta name="yfm" value="builder in config">
118
+
119
+ <style type="text/css">html, body {min-height:100vh; height:100vh;}</style>
120
+
121
+ <link type="text/css" rel="stylesheet" href="_bundle/search-css-0"/>
122
+ <link type="text/css" rel="stylesheet" href="_bundle/app-css-1"/>
123
+ </head>
124
+ <body class="g-root g-root_theme_light">
125
+ <div id="root"></div>
126
+ <script type="application/json" id="diplodoc-state">
127
+ {"data":{"leading":false,"html":"&lt;p&gt;Lorem&lt;/p&gt;/n","meta":{"metadata":[{"name":"generator","content":"Diplodoc Platform vDIPLODOC-VERSION"},{"name":"test-yfm","content":"inline test"},{"name":"yfm-config","content":"config test"},{"name":"yfm","value":"builder in config"}]},"headings":[],"title":""},"router":{"pathname":"project/config","depth":2,"base":"../"},"lang":"ru","langs":["ru"]}
128
+ </script>
129
+ <script type="application/javascript">
130
+ const data = document.querySelector('script#diplodoc-state');
131
+ window.__DATA__ = JSON.parse((function unescape(string) {
132
+ return string.replace(/&lt;/g, "<").replace(/&gt;/g, ">").replace(/&amp;/g, "&");
133
+ })(data.innerText));
134
+ window.STATIC_CONTENT = false;
135
+ </script>
136
+ <script type="application/javascript" defer src="toc.js"></script>
137
+ <script type="application/javascript" defer src="_bundle/search-js-0"></script>
138
+ <script type="application/javascript" defer src="_bundle/app-js-1"></script>
139
+ <script type="application/javascript" defer src="_bundle/search-js-2"></script>
140
+
141
+ </body>
142
+ </html>"
167
143
  `;
168
144
 
169
- exports[`Allow load custom resources > md2html with metadata > toc.js 1`] = `"window.__DATA__.data.toc = {"title":"Documentation","href":"index.html","items":[{"name":"Documentation","href":"page.html","id":"UUID"},{"name":"Config","href":"project/config.html","id":"UUID"}],"id":"UUID"};"`;
145
+ exports[`Allow load custom resources > md2html with metadata 4`] = `"window.__DATA__.data.toc = {"title":"Documentation","href":"index.html","items":[{"name":"Documentation","href":"page.html","id":"UUID"},{"name":"Config","href":"project/config.html","id":"UUID"}],"path":"toc.yaml","id":"UUID"};"`;
170
146
 
171
147
  exports[`Allow load custom resources > md2md with metadata > filelist 1`] = `
172
148
  "[
@@ -177,7 +153,7 @@ exports[`Allow load custom resources > md2md with metadata > filelist 1`] = `
177
153
  ]"
178
154
  `;
179
155
 
180
- exports[`Allow load custom resources > md2md with metadata > index.yaml 1`] = `
156
+ exports[`Allow load custom resources > md2md with metadata 1`] = `
181
157
  "title: Documentation
182
158
  description: ''
183
159
  meta:
@@ -197,7 +173,7 @@ links:
197
173
  "
198
174
  `;
199
175
 
200
- exports[`Allow load custom resources > md2md with metadata > page.md 1`] = `
176
+ exports[`Allow load custom resources > md2md with metadata 2`] = `
201
177
  "---
202
178
  metadata:
203
179
  - name: generator
@@ -213,7 +189,7 @@ metadata:
213
189
  Lorem"
214
190
  `;
215
191
 
216
- exports[`Allow load custom resources > md2md with metadata > project/config.md 1`] = `
192
+ exports[`Allow load custom resources > md2md with metadata 3`] = `
217
193
  "---
218
194
  metadata:
219
195
  - name: generator
@@ -229,7 +205,7 @@ metadata:
229
205
  Lorem"
230
206
  `;
231
207
 
232
- exports[`Allow load custom resources > md2md with metadata > toc.yaml 1`] = `
208
+ exports[`Allow load custom resources > md2md with metadata 4`] = `
233
209
  "title: Documentation
234
210
  href: index.yaml
235
211
  items:
@@ -237,5 +213,6 @@ items:
237
213
  href: page.md
238
214
  - name: Config
239
215
  href: project/config.md
216
+ path: toc.yaml
240
217
  "
241
218
  `;