@patternfly/documentation-framework 6.0.0-alpha.8 → 6.0.0-alpha.80

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 (42) hide show
  1. package/CHANGELOG.md +1154 -0
  2. package/app.js +2 -5
  3. package/components/autoLinkHeader/autoLinkHeader.css +2 -2
  4. package/components/autoLinkHeader/autoLinkHeader.js +8 -19
  5. package/components/cssVariables/cssVariables.css +9 -11
  6. package/components/cssVariables/cssVariables.js +19 -32
  7. package/components/example/example.css +14 -58
  8. package/components/example/example.js +149 -78
  9. package/components/example/exampleToolbar.js +3 -2
  10. package/components/footer/footer.css +16 -16
  11. package/components/footer/footer.js +32 -32
  12. package/components/gdprBanner/gdprBanner.css +0 -3
  13. package/components/gdprBanner/gdprBanner.js +22 -16
  14. package/components/inlineAlert/inlineAlert.js +1 -1
  15. package/components/link/link.js +23 -18
  16. package/components/propsTable/propsTable.js +14 -10
  17. package/components/sectionGallery/TextSummary.js +5 -5
  18. package/components/sectionGallery/sectionDataListLayout.js +87 -41
  19. package/components/sectionGallery/sectionGallery.css +6 -39
  20. package/components/sectionGallery/sectionGalleryLayout.js +73 -23
  21. package/components/sectionGallery/sectionGalleryToolbar.js +47 -12
  22. package/components/sideNav/sideNav.js +3 -4
  23. package/components/tableOfContents/tableOfContents.css +26 -35
  24. package/components/tableOfContents/tableOfContents.js +58 -28
  25. package/layouts/sideNavLayout/sideNavLayout.css +1 -36
  26. package/layouts/sideNavLayout/sideNavLayout.js +188 -101
  27. package/package.json +12 -19
  28. package/pages/404/404.css +2 -2
  29. package/pages/404/index.js +23 -36
  30. package/routes.js +3 -1
  31. package/scripts/md/anchor-header.js +1 -1
  32. package/scripts/md/parseMD.js +20 -18
  33. package/scripts/md/styled-tags.js +22 -14
  34. package/scripts/webpack/webpack.base.config.js +7 -18
  35. package/scripts/writeScreenshots.js +2 -2
  36. package/templates/mdx.css +11 -288
  37. package/templates/mdx.js +40 -43
  38. package/templates/patternfly-docs/patternfly-docs.source.js +8 -8
  39. package/versions.json +42 -14
  40. package/components/sideNav/sideNav.css +0 -21
  41. package/pages/global-css-variables.md +0 -109
  42. package/pages/img/component-variable-mapping.png +0 -0
package/templates/mdx.css CHANGED
@@ -1,302 +1,25 @@
1
- #ws-page-content-router {
2
- display: flex;
3
- flex-direction: column;
4
- height: 100%;
5
- }
6
-
7
- .ws-release-notes-toc {
8
- margin-bottom: var(--pf-v5-global--spacer--lg);
9
- }
10
-
11
- .ws-release-notes-toc .pf-v5-c-card {
12
- height: 100%;
13
- }
14
-
15
- .ws-release-notes-toc .pf-v5-c-card__title {
16
- padding-bottom: var(--pf-v5-global--spacer--xs);
17
- }
18
-
19
- .ws-release-notes-toc .pf-v5-c-card__title .pf-v5-c-title {
20
- display: inline;
21
- }
22
-
23
- .ws-release-notes-toc .pf-v5-c-card__title a {
24
- margin-right: var(--pf-v5-global--spacer--sm);
25
- }
26
-
27
- .ws-release-notes-toc .pf-v5-c-card__title .pf-v5-c-badge {
28
- vertical-align: text-top;
29
- }
30
-
31
- .ws-release-notes-toc .pf-v5-c-card__body {
32
- color: #72767B;
33
- font-family: var(--pf-v5-global--FontFamily--text);
34
- font-size: var(--pf-v5-global--FontSize--md);
35
- font-weight: 400;
36
- line-height: 1.5;
1
+ p.pf-v6-c-content--p.ws-p {
2
+ margin: 0;
37
3
  }
38
4
 
39
5
  .ws-code {
40
6
  display: inline-block;
41
- background-color: var(--pf-v5-global--BackgroundColor--100);
42
- padding: 1px var(--pf-v5-global--spacer--sm);
43
- border: var(--pf-v5-global--BorderWidth--sm) solid var(--pf-v5-global--BorderColor--300);
7
+ background-color: var(--pf-t--global--background--color--secondary--default);
8
+ padding: 1px var(--pf-t--global--spacer--sm);
9
+ border: var(--pf-t--global--border--width--regular) solid var(--pf-t--global--border--color--nonstatus--gray--default);
44
10
  white-space: pre-wrap;
45
- font-size: var(--pf-v5-global--FontSize--sm);
46
- font-family: var(--pf-v5-global--FontFamily--monospace);
11
+ font-size: var(--pf-t--global--font--size--body--sm);
12
+ font-family: var(--pf-t--global--font--family--mono);
47
13
  }
48
14
 
49
- .ws-p + .ws-code {
50
- margin-bottom: var(--pf-v5-c-content--MarginBottom);
51
- }
52
-
53
- /* Table styles */
54
- /* Undo patternfly reset to respect MD table styles */
55
- .ws-table td[align="center"],
56
- .ws-table th[align="center"] {
57
- text-align: center;
58
- }
59
- .ws-table td[align="left"],
60
- .ws-table th[align="left"] {
61
- text-align: left;
62
- }
63
- .ws-table td[align="right"],
64
- .ws-table th[align="right"] {
65
- text-align: right;
66
- }
67
15
  .ws-content-table > .ws-table {
68
- table-layout: fixed;
69
- width: 100%;
70
- }
71
- .ws-table td > code,
72
- .ws-table th > code,
73
- .ws-table tr > code {
74
- white-space: normal;
75
- }
76
- .ws-table tbody > tr > td {
77
- vertical-align: top;
16
+ margin-bottom: var(--pf-t--global--spacer--md);
78
17
  }
79
18
 
80
- /*
81
- * Copied from pf-v5-c-content.
82
- */
83
- :root {
84
- --pf-v5-c-content--MarginBottom: var(--pf-v5-global--spacer--md);
85
- --pf-v5-c-content--LineHeight: var(--pf-v5-global--LineHeight--md);
86
- --pf-v5-c-content--FontSize: var(--pf-v5-global--FontSize--md);
87
- --pf-v5-c-content--FontWeight: var(--pf-v5-global--FontWeight--normal);
88
- --pf-v5-c-content--Color: var(--pf-v5-global--Color--100);
89
- --pf-v5-c-content--heading--FontFamily: var(--pf-v5-global--FontFamily--heading);
90
- --pf-v5-c-content--h1--MarginTop: var(--pf-v5-global--spacer--lg);
91
- --pf-v5-c-content--h1--MarginBottom: var(--pf-v5-global--spacer--sm);
92
- --pf-v5-c-content--h1--LineHeight: var(--pf-v5-global--LineHeight--sm);
93
- --pf-v5-c-content--h1--FontSize: var(--pf-v5-global--FontSize--2xl);
94
- --pf-v5-c-content--h1--FontWeight: var(--pf-v5-global--FontWeight--normal);
95
- --pf-v5-c-content--h2--MarginTop: var(--pf-v5-global--spacer--lg);
96
- --pf-v5-c-content--h2--MarginBottom: var(--pf-v5-global--spacer--sm);
97
- --pf-v5-c-content--h2--LineHeight: var(--pf-v5-global--LineHeight--sm);
98
- --pf-v5-c-content--h2--FontSize: var(--pf-v5-global--FontSize--xl);
99
- --pf-v5-c-content--h2--FontWeight: var(--pf-v5-global--FontWeight--normal);
100
- --pf-v5-c-content--h3--MarginTop: var(--pf-v5-global--spacer--lg);
101
- --pf-v5-c-content--h3--MarginBottom: var(--pf-v5-global--spacer--sm);
102
- --pf-v5-c-content--h3--LineHeight: var(--pf-v5-global--LineHeight--md);
103
- --pf-v5-c-content--h3--FontSize: var(--pf-v5-global--FontSize--lg);
104
- --pf-v5-c-content--h3--FontWeight: var(--pf-v5-global--FontWeight--normal);
105
- --pf-v5-c-content--h4--MarginTop: var(--pf-v5-global--spacer--lg);
106
- --pf-v5-c-content--h4--MarginBottom: var(--pf-v5-global--spacer--sm);
107
- --pf-v5-c-content--h4--LineHeight: var(--pf-v5-global--LineHeight--md);
108
- --pf-v5-c-content--h4--FontSize: var(--pf-v5-global--FontSize--md);
109
- --pf-v5-c-content--h4--FontWeight: var(--pf-v5-global--FontWeight--semi-bold);
110
- --pf-v5-c-content--h5--MarginTop: var(--pf-v5-global--spacer--lg);
111
- --pf-v5-c-content--h5--MarginBottom: var(--pf-v5-global--spacer--sm);
112
- --pf-v5-c-content--h5--LineHeight: var(--pf-v5-global--LineHeight--md);
113
- --pf-v5-c-content--h5--FontSize: var(--pf-v5-global--FontSize--md);
114
- --pf-v5-c-content--h5--FontWeight: var(--pf-v5-global--FontWeight--semi-bold);
115
- --pf-v5-c-content--h6--MarginTop: var(--pf-v5-global--spacer--lg);
116
- --pf-v5-c-content--h6--MarginBottom: var(--pf-v5-global--spacer--sm);
117
- --pf-v5-c-content--h6--LineHeight: var(--pf-v5-global--LineHeight--md);
118
- --pf-v5-c-content--h6--FontSize: var(--pf-v5-global--FontSize--md);
119
- --pf-v5-c-content--h6--FontWeight: var(--pf-v5-global--FontWeight--semi-bold);
120
- --pf-v5-c-content--small--MarginBottom: var(--pf-v5-global--spacer--md);
121
- --pf-v5-c-content--small--LineHeight: var(--pf-v5-global--LineHeight--md);
122
- --pf-v5-c-content--small--FontSize: var(--pf-v5-global--FontSize--sm);
123
- --pf-v5-c-content--small--Color: var(--pf-v5-global--Color--200);
124
- --pf-v5-c-content--small--FontWeight: var(--pf-v5-global--FontWeight--semi-bold);
125
- --pf-v5-c-content--a--Color: var(--pf-v5-global--link--Color);
126
- --pf-v5-c-content--a--TextDecoration: var(--pf-v5-global--link--TextDecoration);
127
- --pf-v5-c-content--a--hover--Color: var(--pf-v5-global--link--Color--hover);
128
- --pf-v5-c-content--a--hover--TextDecoration: var(--pf-v5-global--link--TextDecoration--hover);
129
- --pf-v5-c-content--blockquote--PaddingTop: var(--pf-v5-global--spacer--md);
130
- --pf-v5-c-content--blockquote--PaddingRight: var(--pf-v5-global--spacer--md);
131
- --pf-v5-c-content--blockquote--PaddingBottom: var(--pf-v5-global--spacer--md);
132
- --pf-v5-c-content--blockquote--PaddingLeft: var(--pf-v5-global--spacer--md);
133
- --pf-v5-c-content--blockquote--FontWeight: var(--pf-v5-global--FontWeight--light);
134
- --pf-v5-c-content--blockquote--Color: var(--pf-v5-global--Color--200);
135
- --pf-v5-c-content--blockquote--BorderLeftColor: var(--pf-v5-global--BorderColor--100);
136
- --pf-v5-c-content--blockquote--BorderLeftWidth: var(--pf-v5-global--BorderWidth--lg);
137
- --pf-v5-c-content--ol--PaddingLeft: var(--pf-v5-global--spacer--lg);
138
- --pf-v5-c-content--ol--MarginTop: var(--pf-v5-global--spacer--md);
139
- --pf-v5-c-content--ol--MarginLeft: var(--pf-v5-global--spacer--lg);
140
- --pf-v5-c-content--ol--nested--MarginTop: var(--pf-v5-global--spacer--sm);
141
- --pf-v5-c-content--ol--nested--MarginLeft: var(--pf-v5-global--spacer--sm);
142
- --pf-v5-c-content--ul--PaddingLeft: var(--pf-v5-global--spacer--lg);
143
- --pf-v5-c-content--ul--MarginTop: var(--pf-v5-global--spacer--md);
144
- --pf-v5-c-content--ul--MarginLeft: var(--pf-v5-global--spacer--lg);
145
- --pf-v5-c-content--ul--nested--MarginTop: var(--pf-v5-global--spacer--sm);
146
- --pf-v5-c-content--ul--nested--MarginLeft: var(--pf-v5-global--spacer--sm);
147
- --pf-v5-c-content--ul--ListStyle: var(--pf-v5-global--ListStyle);
148
- --pf-v5-c-content--li--MarginTop: var(--pf-v5-global--spacer--sm);
149
- --pf-v5-c-content--dl--ColumnGap: var(--pf-v5-global--spacer--2xl);
150
- --pf-v5-c-content--dl--RowGap: var(--pf-v5-global--spacer--md);
151
- --pf-v5-c-content--dt--FontWeight: var(--pf-v5-global--FontWeight--semi-bold);
152
- --pf-v5-c-content--dt--MarginTop: var(--pf-v5-global--spacer--md);
153
- --pf-v5-c-content--dt--sm--MarginTop: 0;
154
- --pf-v5-c-content--hr--Height: var(--pf-v5-global--BorderWidth--sm);
155
- --pf-v5-c-content--hr--BackgroundColor: var(--pf-v5-global--BorderColor--100);
156
- font-size: var(--pf-v5-c-content--FontSize);
157
- line-height: var(--pf-v5-c-content--LineHeight);
158
- color: var(--pf-v5-c-content--Color); }
159
- .ws-li + li {
160
- margin-top: var(--pf-v5-c-content--li--MarginTop); }
161
- .ws-p:not(:last-child),
162
- .ws-dl:not(:last-child),
163
- .ws-ol:not(:last-child),
164
- .ws-ul:not(:last-child),
165
- .ws-blockquote:not(:last-child),
166
- .ws-small:not(:last-child),
167
- .ws-pre:not(:last-child),
168
- .ws-hr:not(:last-child),
169
- .ws-table:not(:last-child),
170
- .ws-content-table:not(:last-child) {
171
- margin-bottom: var(--pf-v5-c-content--MarginBottom); }
172
- .ws-h1,
173
- .ws-h2,
174
- .ws-h3,
175
- .ws-h4,
176
- .ws-h5,
177
- .ws-h6 {
178
- margin: 0;
179
- font-family: var(--pf-v5-c-content--heading--FontFamily); }
180
- .ws-ol,
181
- .ws-ul {
182
- margin: 0; }
183
- .ws-h1 {
184
- margin-bottom: var(--pf-v5-c-content--h1--MarginBottom);
185
- font-size: var(--pf-v5-c-content--h1--FontSize);
186
- font-weight: var(--pf-v5-c-content--h1--FontWeight);
187
- line-height: var(--pf-v5-c-content--h1--LineHeight); }
188
- .ws-h1:not(:first-child) {
189
- margin-top: var(--pf-v5-c-content--h1--MarginTop); }
190
- .ws-h2 {
191
- margin-bottom: var(--pf-v5-c-content--h2--MarginBottom);
192
- font-size: var(--pf-v5-c-content--h2--FontSize);
193
- font-weight: var(--pf-v5-c-content--h2--FontWeight);
194
- line-height: var(--pf-v5-c-content--h2--LineHeight);
195
- margin-top: var(--pf-v5-c-content--h2--MarginTop); }
196
- .ws-h3 {
197
- margin-bottom: var(--pf-v5-c-content--h3--MarginBottom);
198
- font-size: var(--pf-v5-c-content--h3--FontSize);
199
- font-weight: var(--pf-v5-c-content--h3--FontWeight);
200
- line-height: var(--pf-v5-c-content--h3--LineHeight); }
201
- .ws-h3:not(:first-child) {
202
- margin-top: var(--pf-v5-c-content--h3--MarginTop); }
203
- .ws-h4 {
204
- margin-bottom: var(--pf-v5-c-content--h4--MarginBottom);
205
- font-size: var(--pf-v5-c-content--h4--FontSize);
206
- font-weight: var(--pf-v5-c-content--h4--FontWeight);
207
- line-height: var(--pf-v5-c-content--h4--LineHeight); }
208
- .ws-h4:not(:first-child) {
209
- margin-top: var(--pf-v5-c-content--h4--MarginTop); }
210
- .ws-h5 {
211
- margin-bottom: var(--pf-v5-c-content--h5--MarginBottom);
212
- font-size: var(--pf-v5-c-content--h5--FontSize);
213
- font-weight: var(--pf-v5-c-content--h5--FontWeight);
214
- line-height: var(--pf-v5-c-content--h5--LineHeight); }
215
- .ws-h5:not(:first-child) {
216
- margin-top: var(--pf-v5-c-content--h5--MarginTop); }
217
- .ws-h6 {
218
- margin-bottom: var(--pf-v5-c-content--h6--MarginBottom);
219
- font-size: var(--pf-v5-c-content--h6--FontSize);
220
- font-weight: var(--pf-v5-c-content--h6--FontWeight);
221
- line-height: var(--pf-v5-c-content--h6--LineHeight); }
222
- .ws-h6:not(:first-child) {
223
- margin-top: var(--pf-v5-c-content--h6--MarginTop); }
224
- .ws-small {
225
- display: block;
226
- font-size: var(--pf-v5-c-content--small--FontSize);
227
- line-height: var(--pf-v5-c-content--small--LineHeight);
228
- color: var(--pf-v5-c-content--small--Color); }
229
- .ws-small:not(:last-child) {
230
- margin-bottom: var(--pf-v5-c-content--small--MarginBottom); }
231
- .ws-blockquote {
232
- padding: var(--pf-v5-c-content--blockquote--PaddingTop) var(--pf-v5-c-content--blockquote--PaddingRight) var(--pf-v5-c-content--blockquote--PaddingBottom) var(--pf-v5-c-content--blockquote--PaddingLeft);
233
- font-weight: var(--pf-v5-c-content--blockquote--FontWeight);
234
- color: var(--pf-v5-c-content--blockquote--Color);
235
- border-left: var(--pf-v5-c-content--blockquote--BorderLeftWidth) solid var(--pf-v5-c-content--blockquote--BorderLeftColor); }
236
- .ws-hr {
237
- height: var(--pf-v5-c-content--hr--Height);
238
- background-color: var(--pf-v5-c-content--hr--BackgroundColor);
239
- border: none; }
240
- .ws-ol {
241
- padding-left: var(--pf-v5-c-content--ol--PaddingLeft);
242
- margin-top: var(--pf-v5-c-content--ol--MarginTop);
243
- margin-left: var(--pf-v5-c-content--ol--MarginLeft); }
244
- .ws-ol ul {
245
- --pf-v5-c-content--ul--MarginTop: var(--pf-v5-c-content--ul--nested--MarginTop);
246
- --pf-v5-c-content--ul--MarginLeft: var(--pf-v5-c-content--ul--nested--MarginLeft); }
247
- .ws-ol ol {
248
- --pf-v5-c-content--ol--MarginTop: var(--pf-v5-c-content--ol--nested--MarginTop);
249
- --pf-v5-c-content--ol--MarginLeft: var(--pf-v5-c-content--ol--nested--MarginLeft); }
250
- .ws-ul {
251
- padding-left: var(--pf-v5-c-content--ul--PaddingLeft);
252
- margin-top: var(--pf-v5-c-content--ul--MarginTop);
253
- margin-left: var(--pf-v5-c-content--ul--MarginLeft);
254
- list-style: var(--pf-v5-c-content--ul--ListStyle); }
255
- .ws-ul ul {
256
- --pf-v5-c-content--ul--MarginTop: var(--pf-v5-c-content--ul--nested--MarginTop);
257
- --pf-v5-c-content--ul--MarginLeft: var(--pf-v5-c-content--ul--nested--MarginLeft); }
258
- .ws-ul ol {
259
- --pf-v5-c-content--ol--MarginTop: var(--pf-v5-c-content--ol--nested--MarginTop);
260
- --pf-v5-c-content--ol--MarginLeft: var(--pf-v5-c-content--ol--nested--MarginLeft); }
261
- .ws-dl {
262
- display: grid;
263
- grid-template-columns: 1fr; }
264
- @media screen and (min-width: 576px) {
265
- .ws-dl {
266
- grid-template: auto / auto 1fr;
267
- grid-column-gap: var(--pf-v5-c-content--dl--ColumnGap);
268
- grid-row-gap: var(--pf-v5-c-content--dl--RowGap); } }
269
- .ws-dt {
270
- font-weight: var(--pf-v5-c-content--dt--FontWeight); }
271
- .ws-dt:not(:first-child) {
272
- margin-top: var(--pf-v5-c-content--dt--MarginTop); }
273
- @media screen and (min-width: 576px) {
274
- .ws-dt:not(:first-child) {
275
- --pf-v5-c-content--dt--MarginTop: var(--pf-v5-c-content--dt--sm--MarginTop); } }
276
- @media screen and (min-width: 576px) {
277
- .ws-dt {
278
- grid-column: 1; } }
279
- @media screen and (min-width: 576px) {
280
- .ws-dd {
281
- grid-column: 2; } }
282
-
283
- @media screen and (max-width: 1450px) {
284
- .ws-mdx-child-template {
285
- flex-direction: column;
286
- }
287
- }
288
-
289
- .ws-mdx-content {
290
- flex-grow: 1;
291
- min-width: 0;
292
- }
293
-
294
- /* Design asked for this. A nice side effect is that the TOC doesn't "jump" between pages */
295
- .ws-mdx-content-content {
296
- max-width: 832px;
19
+ .ws-image {
20
+ text-align: center;
297
21
  }
298
22
 
299
- /* Overlay the footer */
300
23
  .ws-back-to-top {
301
- z-index: 2;
24
+ z-index: var(--pf-t--global--z-index--2xl);
302
25
  }
package/templates/mdx.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { PageSection, Title, Tooltip, PageSectionVariants, Button, BackToTop, Flex, FlexItem, PageGroup, Page, Text, TextContent, Label } from '@patternfly/react-core';
2
+ import { PageSection, Title, Tooltip, PageSectionVariants, Button, BackToTop, Flex, FlexItem, PageGroup, Page, Content, Label, Stack, StackItem } from '@patternfly/react-core';
3
3
  import { css } from '@patternfly/react-styles';
4
4
  import ExternalLinkAltIcon from '@patternfly/react-icons/dist/esm/icons/external-link-alt-icon';
5
5
  import { Router, useLocation } from '@reach/router';
@@ -23,6 +23,7 @@ const MDXChildTemplate = ({
23
23
  optIn,
24
24
  beta,
25
25
  deprecated,
26
+ template,
26
27
  newImplementationLink,
27
28
  functionDocumentation = []
28
29
  } = Component.getPageData();
@@ -51,18 +52,11 @@ const MDXChildTemplate = ({
51
52
  }
52
53
  ensureID(toc);
53
54
  }
54
- const innerContentWrapperClass = () => {
55
- if (source === 'landing-pages') {
56
- return 'landing-pages';
57
- }
58
- if (source === 'release-notes') {
59
- return '';
60
- }
61
- return 'ws-mdx-content-content'
62
- };
63
55
 
64
- const InlineAlerts = (
65
- <React.Fragment>
56
+ const isComponentCodeDocs = ['react', 'react-demos', 'html', 'html-demos', 'react-templates'].includes(source);
57
+
58
+ const InlineAlerts = (optIn || beta || deprecated || source === 'react-deprecated' || source === 'html-deprecated' || template || source === 'react-template') && (
59
+ <StackItem>
66
60
  {optIn && (
67
61
  <InlineAlert title="Opt-in feature">
68
62
  {optIn}
@@ -70,7 +64,7 @@ const MDXChildTemplate = ({
70
64
  )}
71
65
  {beta && (
72
66
  <InlineAlert title="Beta feature">
73
- This beta component is currently under review and is still open for further evolution. It is available for use in product. Beta components are considered for promotion on a quarterly basis. Please join in and give us your feedback or submit any questions on the <a href="https://forum.patternfly.org/">PatternFly forum</a> or via <a href="//slack.patternfly.org/" target="_blank" rel="noopener noreferrer">Slack</a>. To learn more about the process, visit our <Link to="/get-started/about#beta-components">about page</Link> or our <a href="https://github.com/patternfly/patternfly-org/tree/main/beta-component-promotion">Beta components</a> page on GitHub.
67
+ This beta component is currently under review and is still open for further evolution. It is available for use in product. Beta components are considered for promotion on a quarterly basis. Please join in and give us your feedback or submit any questions on the <a href="https://forum.patternfly.org/">PatternFly forum</a> or via <a href="//slack.patternfly.org/" target="_blank" rel="noopener noreferrer">Slack</a>. To learn more about the process, visit our <Link to="/get-started/about-patternfly#beta-components">about page</Link> or our <a href="https://github.com/patternfly/patternfly-org/tree/main/beta-component-promotion">Beta components</a> page on GitHub.
74
68
  </InlineAlert>
75
69
  )}
76
70
  {(deprecated || source === 'react-deprecated' || source === 'html-deprecated') && (
@@ -81,32 +75,36 @@ const MDXChildTemplate = ({
81
75
  You can find the <Link to={newImplementationLink}>updated implementation here</Link>.
82
76
  </React.Fragment>
83
77
  )}
84
- {' '}To learn more about the process, visit our <Link to="/get-started/about#major-release-cadence">about page</Link>.
78
+ {' '}To learn more about the process, visit our <Link to="/get-started/about-patternfly#patternfly-release-cadence">about page</Link>.
85
79
  </InlineAlert>
86
80
  )}
87
- </React.Fragment>
81
+ {(template || source === 'react-template') && (
82
+ <InlineAlert title="Templates" variant="info">
83
+ {`This page showcases templates for the ${id.toLowerCase()} component. A template combines a component with logic that supports a specific use case, with a streamlined API that offers additional, limited customization.`}
84
+ </InlineAlert>
85
+ )}
86
+ </StackItem>
88
87
  );
89
88
  // Create dynamic component for @reach/router
90
89
  const ChildComponent = () => (
91
- <div className="pf-v5-u-display-flex ws-mdx-child-template">
90
+ <div className={source !== 'landing-pages' ? 'pf-v6-l-flex' : ''}>
92
91
  {toc.length > 1 && (
93
92
  <TableOfContents items={toc} />
94
93
  )}
95
- <div className="ws-mdx-content">
96
- <div className={innerContentWrapperClass()}>
97
- {InlineAlerts}
94
+ <Stack hasGutter style={{...(source !== 'landing-pages' && {maxWidth: "825px"})}}>
95
+ {InlineAlerts}
98
96
  <Component />
99
97
  {functionDocumentation.length > 0 && (
100
- <React.Fragment>
101
- <AutoLinkHeader size="h2" className="ws-h2" id="functions">
98
+ <StackItem>
99
+ <AutoLinkHeader headingLevel="h2" className="pf-v6-c-content--h2" id="functions">
102
100
  Functions
103
101
  </AutoLinkHeader>
104
102
  <FunctionsTable functionDescriptions={functionDocumentation}/>
105
- </React.Fragment>
103
+ </StackItem>
106
104
  )}
107
105
  {propsTitle && (
108
- <React.Fragment>
109
- <AutoLinkHeader size="h2" className="ws-h2" id="props">
106
+ <StackItem>
107
+ <AutoLinkHeader headingLevel="h2" className="pf-v6-c-content--h2" id="props">
110
108
  {propsTitle}
111
109
  </AutoLinkHeader>
112
110
  {propComponents.map(component => (
@@ -118,26 +116,25 @@ const MDXChildTemplate = ({
118
116
  allPropComponents={propComponents}
119
117
  />
120
118
  ))}
121
- </React.Fragment>
119
+ </StackItem>
122
120
  )}
123
121
  {cssPrefix.length > 0 && (
124
- <React.Fragment>
125
- <AutoLinkHeader size="h2" className="ws-h2" id="css-variables">
122
+ <StackItem>
123
+ <AutoLinkHeader headingLevel="h2" className="pf-v6-c-content--h2" id="css-variables">
126
124
  {cssVarsTitle}
127
125
  </AutoLinkHeader>
128
126
  {cssPrefix.map((prefix, index) => (
129
127
  <CSSVariables key={index} autoLinkHeader={cssPrefix.length > 1} prefix={prefix} />
130
128
  ))}
131
- </React.Fragment>
129
+ </StackItem>
132
130
  )}
133
131
  {sourceLink && (
134
- <React.Fragment>
132
+ <StackItem>
135
133
  <br />
136
134
  <a href={sourceLink} target="_blank" onClick={() => trackEvent('view_source_click', 'click_event', source.toUpperCase())}>View source on GitHub</a>
137
- </React.Fragment>
135
+ </StackItem>
138
136
  )}
139
- </div>
140
- </div>
137
+ </Stack>
141
138
  </div>
142
139
  );
143
140
  ChildComponent.displayName = `MDXChildTemplate${Component.displayName}`;
@@ -152,7 +149,7 @@ export const MDXTemplate = ({
152
149
  componentsData
153
150
  }) => {
154
151
  const isDeprecated = sources.some(source => source.source === "react-deprecated" || source.source === "html-deprecated") && !sources.some(source => source.source === "react" || source.source === "html");
155
- const isBeta = sources.some(source => source.beta)
152
+ const isBeta = sources.some(source => source.beta && source.source !== 'react-next' && source.source !== 'react-templates');
156
153
  const isDemo = sources.some(source => source.source === "react-demos" || source.source === "html-demos") && !sources.some(source => source.source === "react" || source.source === "html");
157
154
  // Build obj mapping source names to text displayed on tabs
158
155
  const tabNames = sources.reduce((acc, curSrc) => {
@@ -252,7 +249,7 @@ export const MDXTemplate = ({
252
249
  variant={!isSinglePage ? PageSectionVariants.light : ""}
253
250
  isWidthLimited
254
251
  >
255
- <TextContent>
252
+ <Content>
256
253
  <Flex alignItems={{ default: 'alignItemsCenter'}}>
257
254
  <FlexItem>
258
255
  <Title headingLevel='h1' size='4xl' id="ws-page-title">
@@ -264,7 +261,7 @@ export const MDXTemplate = ({
264
261
  {isDeprecated && (
265
262
  <FlexItem spacer={{ default: 'spacerSm' }}>
266
263
  <Tooltip content="Deprecated components are available for use but are no longer being maintained or enhanced.">
267
- <Button isInline component="span" variant="link">
264
+ <Button variant="plain" hasNoPadding>
268
265
  <Label color="grey">Deprecated</Label>
269
266
  </Button>
270
267
  </Tooltip>
@@ -273,7 +270,7 @@ export const MDXTemplate = ({
273
270
  {isDemo && (
274
271
  <FlexItem spacer={{ default: 'spacerSm' }}>
275
272
  <Tooltip content="Demos show how multiple components can be used in a single design.">
276
- <Button isInline component="span" variant="link">
273
+ <Button variant="plain" hasNoPadding>
277
274
  <Label color="purple">Demo</Label>
278
275
  </Button>
279
276
  </Tooltip>
@@ -282,7 +279,7 @@ export const MDXTemplate = ({
282
279
  {isBeta && (
283
280
  <FlexItem spacer={{ default: 'spacerSm' }}>
284
281
  <Tooltip content="This beta component is currently under review and is still open for further evolution.">
285
- <Button isInline component="span" variant="link">
282
+ <Button variant="plain" hasNoPadding>
286
283
  <Label color="blue">Beta</Label>
287
284
  </Button>
288
285
  </Tooltip>
@@ -292,23 +289,23 @@ export const MDXTemplate = ({
292
289
  </FlexItem>
293
290
  </Flex>
294
291
  {isComponent && summary && (<SummaryComponent />)}
295
- </TextContent>
292
+ </Content>
296
293
  </PageSection>
297
294
  { showTabs && (
298
295
  <PageSection id="ws-sticky-nav-tabs" stickyOnBreakpoint={{'default':'top'}} type="tabs">
299
- <div className="pf-v5-c-tabs pf-m-page-insets pf-m-no-border-bottom">
300
- <ul className="pf-v5-c-tabs__list">
296
+ <div className="pf-v6-c-tabs pf-m-page-insets pf-m-no-border-bottom">
297
+ <ul className="pf-v6-c-tabs__list">
301
298
  {sourceKeys.map((source, index) => (
302
299
  <li
303
300
  key={source}
304
301
  className={css(
305
- 'pf-v5-c-tabs__item',
302
+ 'pf-v6-c-tabs__item',
306
303
  activeSource === source && 'pf-m-current'
307
304
  )}
308
305
  // Send clicked tab name for analytics
309
306
  onClick={() => trackEvent('tab_click', 'click_event', source.toUpperCase())}
310
307
  >
311
- <Link className="pf-v5-c-tabs__link" to={`${path}${index === 0 ? '' : '/' + source}`}>
308
+ <Link className="pf-v6-c-tabs__link" to={`${path}${index === 0 ? '' : '/' + source}`}>
312
309
  {tabNames[source]}
313
310
  </Link>
314
311
  </li>
@@ -320,7 +317,7 @@ export const MDXTemplate = ({
320
317
  <PageSection id="main-content" isFilled className="pf-m-light-100">
321
318
  {isSinglePage && <MDXChildTemplate {...sources[0]} id={id}/>}
322
319
  {!isSinglePage && (
323
- <Router className="pf-v5-u-h-100" primary={false}>
320
+ <Router className="pf-v6-u-h-100" primary={false}>
324
321
  {sources
325
322
  .map((source, index) => {
326
323
  source.index = index;
@@ -1,16 +1,16 @@
1
- const path = require('path');
1
+ const path = require("path");
2
2
 
3
3
  module.exports = (sourceMD, sourceProps) => {
4
4
  /** Parse source content for props so that we can display them. You must source props before sourcing the markdown
5
5
  files, otherwise the props table won't be rendered.
6
6
  */
7
- const propsIgnore = ['**/*.test.tsx', '**/examples/*.tsx'];
8
- const extensionPath = path.join(__dirname, '../src');
9
- sourceProps(path.join(extensionPath, '/**/*.tsx'), propsIgnore);
7
+ const propsIgnore = ["/**/*.test.tsx", "/**/examples/*.tsx"];
8
+ const extensionPath = path.join(__dirname, "../src");
9
+ sourceProps(path.join(extensionPath, "/**/*.tsx"), propsIgnore);
10
10
 
11
- // Parse md files
12
- const contentBase = path.join(__dirname, './content');
13
- sourceMD(path.join(contentBase, 'extensions/**/*.md'), 'extensions');
11
+ // Parse md files
12
+ const contentBase = path.join(__dirname, "./content");
13
+ sourceMD(path.join(contentBase, "extensions/**/*.md"), "extensions");
14
14
 
15
15
  /**
16
16
  If you want to parse content from node_modules instead of providing a relative/absolute path,
@@ -23,4 +23,4 @@ module.exports = (sourceMD, sourceProps) => {
23
23
  sourceMD(path.join(extensionPath, '../patternfly-docs/**\/demos/*.md'), 'react-demos');
24
24
  sourceMD(path.join(extensionPath, '../patternfly-docs/**\/design-guidelines/*.md'), 'design-guidelines');
25
25
  */
26
- }
26
+ };
package/versions.json CHANGED
@@ -5,24 +5,52 @@
5
5
  "date": "2023-12-03",
6
6
  "latest": true,
7
7
  "versions": {
8
- "@patternfly/patternfly": "6.0.0-alpha.38",
8
+ "@patternfly/patternfly": "6.0.0-alpha.205",
9
+ "@patternfly/react-catalog-view-extension": "6.0.0-alpha.6",
10
+ "@patternfly/react-charts": "8.0.0-alpha.36",
11
+ "@patternfly/react-code-editor": "6.0.0-alpha.94",
12
+ "@patternfly/react-component-groups": "6.0.0-alpha.7",
13
+ "@patternfly/react-core": "6.0.0-alpha.94",
14
+ "@patternfly/react-drag-drop": "6.0.0-alpha.76",
15
+ "@patternfly/react-icons": "6.0.0-alpha.34",
16
+ "@patternfly/react-log-viewer": "6.0.0-alpha.4",
17
+ "@patternfly/react-styles": "6.0.0-alpha.33",
18
+ "@patternfly/react-table": "6.0.0-alpha.95",
19
+ "@patternfly/react-tokens": "6.0.0-alpha.33",
20
+ "@patternfly/react-topology": "6.0.0-alpha.2",
21
+ "@patternfly/react-user-feedback": "6.0.0-alpha.3",
22
+ "@patternfly/react-console": "6.0.0-alpha.4",
23
+ "@patternfly/quickstarts": "6.0.0-alpha.3",
24
+ "@patternfly/react-virtualized-extension": "6.0.0-alpha.2",
25
+ "@patternfly/react-templates": "6.0.0-alpha.33"
26
+ }
27
+ },{
28
+ "name": "5.2.0",
29
+ "date": "2024-01-17",
30
+ "hidden": true,
31
+ "versions": {
32
+ "@patternfly/patternfly": "5.2.0",
33
+ "@patternfly/react-charts": "7.2.0",
34
+ "@patternfly/react-code-editor": "5.2.0",
35
+ "@patternfly/react-core": "5.2.0",
36
+ "@patternfly/react-icons": "5.2.0",
37
+ "@patternfly/react-styles": "5.2.0",
38
+ "@patternfly/react-table": "5.2.0",
39
+ "@patternfly/react-drag-drop": "5.2.0",
40
+ "@patternfly/react-tokens": "5.2.0",
9
41
  "@patternfly/react-catalog-view-extension": "5.0.0",
10
- "@patternfly/react-charts": "8.0.0-alpha.4",
11
- "@patternfly/react-code-editor": "6.0.0-alpha.5",
12
- "@patternfly/react-core": "6.0.0-alpha.5",
13
- "@patternfly/react-icons": "6.0.0-alpha.4",
14
- "@patternfly/react-log-viewer": "5.0.0",
15
- "@patternfly/react-styles": "6.0.0-alpha.4",
16
- "@patternfly/react-table": "6.0.0-alpha.5",
17
- "@patternfly/react-tokens": "5.1.0",
18
- "@patternfly/react-topology": "5.1.0",
19
- "@patternfly/quickstarts": "5.1.0",
20
- "@patternfly/react-virtualized-extension": "5.1.0"
42
+ "@patternfly/react-component-groups": "5.1.0",
43
+ "@patternfly/react-console": "5.0.0",
44
+ "@patternfly/react-log-viewer": "5.2.0",
45
+ "@patternfly/react-topology": "5.2.1",
46
+ "@patternfly/react-user-feedback": "5.0.0",
47
+ "@patternfly/react-virtualized-extension": "5.0.0",
48
+ "@patternfly/quickstarts": "5.0.0"
21
49
  }
22
- },
23
- {
50
+ },{
24
51
  "name": "5.1.0",
25
52
  "date": "2023-10-06",
53
+ "hidden": true,
26
54
  "versions": {
27
55
  "@patternfly/patternfly": "5.1.0",
28
56
  "@patternfly/react-charts": "7.1.1",
@@ -1,21 +0,0 @@
1
- .ws-page-sidebar .pf-v5-c-nav {
2
- --pf-v5-c-nav__link--before--BorderBottomWidth: 0;
3
- --pf-v5-c-nav--m-light__link--hover--BackgroundColor: var(--pf-v5-global--BackgroundColor--light-200);
4
- --pf-v5-c-nav--m-light__link--focus--BackgroundColor: var(--pf-v5-global--BackgroundColor--light-200);
5
- --pf-v5-c-nav--m-light__link--m-current--BackgroundColor: var(--pf-v5-global--BackgroundColor--light-200);
6
- --pf-v5-c-nav--m-light__link--active--BackgroundColor: var(--pf-v5-global--BackgroundColor--light-200);
7
- --pf-v5-c-nav__link--m-current--BackgroundColor: var(--pf-v5-global--BackgroundColor--200);
8
- }
9
-
10
- .ws-side-nav-list .pf-v5-c-nav__item.pf-m-expandable::before {
11
- border-bottom: 0;
12
- }
13
-
14
- .pf-v5-c-nav__subsection-title {
15
- color: var(--ws-toc-link--Color, var(--pf-v5-global--Color--300));
16
- font-size: var(--pf-v5-global--FontSize--sm);
17
- }
18
-
19
- #ws-sticky-nav-tabs {
20
- z-index: var(--pf-v5-global--ZIndex--2xl);
21
- }