@patternfly/react-docs 7.6.0-prerelease.6 → 7.6.0-prerelease.8

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 (163) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/package.json +12 -13
  3. package/patternfly-docs/generated/components/about-modal/react.js +149 -0
  4. package/patternfly-docs/generated/components/accordion/react.js +262 -0
  5. package/patternfly-docs/generated/components/action-list/react.js +144 -0
  6. package/patternfly-docs/generated/components/alert/react-demos.js +56 -0
  7. package/patternfly-docs/generated/components/alert/react.js +1433 -0
  8. package/patternfly-docs/generated/components/avatar/react.js +166 -0
  9. package/patternfly-docs/generated/components/back-to-top/react-demos.js +60 -0
  10. package/patternfly-docs/generated/components/back-to-top/react.js +77 -0
  11. package/patternfly-docs/generated/components/backdrop/react.js +64 -0
  12. package/patternfly-docs/generated/components/background-image/react.js +62 -0
  13. package/patternfly-docs/generated/components/badge/react.js +97 -0
  14. package/patternfly-docs/generated/components/banner/react-demos.js +57 -0
  15. package/patternfly-docs/generated/components/banner/react.js +148 -0
  16. package/patternfly-docs/generated/components/brand/react.js +142 -0
  17. package/patternfly-docs/generated/components/breadcrumb/react.js +206 -0
  18. package/patternfly-docs/generated/components/button/react-demos.js +57 -0
  19. package/patternfly-docs/generated/components/button/react.js +826 -0
  20. package/patternfly-docs/generated/components/card/react-demos.js +201 -0
  21. package/patternfly-docs/generated/components/card/react.js +1015 -0
  22. package/patternfly-docs/generated/components/charts/area-chart/-Victory.js +1350 -0
  23. package/patternfly-docs/generated/components/charts/bar-chart/-Victory.js +1334 -0
  24. package/patternfly-docs/generated/components/charts/box-plot-chart/-Victory.js +1282 -0
  25. package/patternfly-docs/generated/components/charts/bullet-chart/-Victory.js +848 -0
  26. package/patternfly-docs/generated/components/charts/colors-for-charts/-Victory.js +192 -0
  27. package/patternfly-docs/generated/components/charts/donut-chart/-Victory.js +426 -0
  28. package/patternfly-docs/generated/components/charts/donut-utilization-chart/-Victory.js +804 -0
  29. package/patternfly-docs/generated/components/charts/legends/-Victory.js +3230 -0
  30. package/patternfly-docs/generated/components/charts/line-chart/-Victory.js +1178 -0
  31. package/patternfly-docs/generated/components/charts/line-chart/ECharts.js +525 -0
  32. package/patternfly-docs/generated/components/charts/patterns/-Victory.js +3382 -0
  33. package/patternfly-docs/generated/components/charts/pie-chart/-Victory.js +377 -0
  34. package/patternfly-docs/generated/components/charts/resize-observer/-Victory.js +2475 -0
  35. package/patternfly-docs/generated/components/charts/sankey-chart/ECharts.js +538 -0
  36. package/patternfly-docs/generated/components/charts/scatter-chart/-Victory.js +1551 -0
  37. package/patternfly-docs/generated/components/charts/skeletons/-Victory.js +4115 -0
  38. package/patternfly-docs/generated/components/charts/sparkline-chart/-Victory.js +955 -0
  39. package/patternfly-docs/generated/components/charts/stack-chart/-Victory.js +1173 -0
  40. package/patternfly-docs/generated/components/charts/threshold-chart/-Victory.js +1166 -0
  41. package/patternfly-docs/generated/components/charts/tooltips/-Victory.js +413 -0
  42. package/patternfly-docs/generated/components/chip/react-deprecated.js +323 -0
  43. package/patternfly-docs/generated/components/clipboard-copy/react.js +373 -0
  44. package/patternfly-docs/generated/components/code-block/react.js +148 -0
  45. package/patternfly-docs/generated/components/code-editor/react.js +659 -0
  46. package/patternfly-docs/generated/components/compass/react-demos.js +147 -0
  47. package/patternfly-docs/generated/components/compass/react.js +440 -0
  48. package/patternfly-docs/generated/components/content/react.js +248 -0
  49. package/patternfly-docs/generated/components/data-list/react-demos.js +90 -0
  50. package/patternfly-docs/generated/components/data-list/react.js +709 -0
  51. package/patternfly-docs/generated/components/date-and-time/calendar-month/react.js +283 -0
  52. package/patternfly-docs/generated/components/date-and-time/date-and-time-picker/react-demos.js +64 -0
  53. package/patternfly-docs/generated/components/date-and-time/date-picker/react-demos.js +83 -0
  54. package/patternfly-docs/generated/components/date-and-time/date-picker/react.js +395 -0
  55. package/patternfly-docs/generated/components/date-and-time/time-picker/react.js +241 -0
  56. package/patternfly-docs/generated/components/description-list/react-demos.js +58 -0
  57. package/patternfly-docs/generated/components/description-list/react.js +743 -0
  58. package/patternfly-docs/generated/components/divider/react.js +126 -0
  59. package/patternfly-docs/generated/components/drag-and-drop/react-demos.js +351 -0
  60. package/patternfly-docs/generated/components/drag-and-drop/react-deprecated.js +184 -0
  61. package/patternfly-docs/generated/components/drag-and-drop/react.js +137 -0
  62. package/patternfly-docs/generated/components/drawer/react.js +598 -0
  63. package/patternfly-docs/generated/components/dual-list-selector/react-deprecated.js +772 -0
  64. package/patternfly-docs/generated/components/dual-list-selector/react.js +594 -0
  65. package/patternfly-docs/generated/components/empty-state/react.js +199 -0
  66. package/patternfly-docs/generated/components/expandable-section/react-demos.js +65 -0
  67. package/patternfly-docs/generated/components/expandable-section/react.js +408 -0
  68. package/patternfly-docs/generated/components/file-upload/multiple-file-upload/react-demos.js +52 -0
  69. package/patternfly-docs/generated/components/file-upload/multiple-file-upload/react.js +398 -0
  70. package/patternfly-docs/generated/components/file-upload/simple-file-upload/react.js +749 -0
  71. package/patternfly-docs/generated/components/forms/checkbox/react.js +222 -0
  72. package/patternfly-docs/generated/components/forms/form/react.js +1106 -0
  73. package/patternfly-docs/generated/components/forms/form-select/react.js +208 -0
  74. package/patternfly-docs/generated/components/forms/radio/react.js +212 -0
  75. package/patternfly-docs/generated/components/forms/text-area/react.js +160 -0
  76. package/patternfly-docs/generated/components/forms/text-input/react.js +216 -0
  77. package/patternfly-docs/generated/components/helper-text/react-demos.js +180 -0
  78. package/patternfly-docs/generated/components/helper-text/react.js +164 -0
  79. package/patternfly-docs/generated/components/hero/react.js +88 -0
  80. package/patternfly-docs/generated/components/hint/react.js +169 -0
  81. package/patternfly-docs/generated/components/icon/react.js +215 -0
  82. package/patternfly-docs/generated/components/input-group/react.js +182 -0
  83. package/patternfly-docs/generated/components/jump-links/react-demos.js +154 -0
  84. package/patternfly-docs/generated/components/jump-links/react.js +212 -0
  85. package/patternfly-docs/generated/components/label/react-demos.js +57 -0
  86. package/patternfly-docs/generated/components/label/react.js +417 -0
  87. package/patternfly-docs/generated/components/list/react.js +175 -0
  88. package/patternfly-docs/generated/components/login-page/react.js +587 -0
  89. package/patternfly-docs/generated/components/masthead/react-demos.js +79 -0
  90. package/patternfly-docs/generated/components/masthead/react.js +291 -0
  91. package/patternfly-docs/generated/components/menus/application-launcher/react-demos.js +769 -0
  92. package/patternfly-docs/generated/components/menus/context-selector/react-demos.js +665 -0
  93. package/patternfly-docs/generated/components/menus/custom-menus/react-demos.js +187 -0
  94. package/patternfly-docs/generated/components/menus/dropdown/react-templates.js +163 -0
  95. package/patternfly-docs/generated/components/menus/dropdown/react.js +998 -0
  96. package/patternfly-docs/generated/components/menus/menu/react.js +1540 -0
  97. package/patternfly-docs/generated/components/menus/menu-toggle/react.js +747 -0
  98. package/patternfly-docs/generated/components/menus/options-menu/react-demos.js +508 -0
  99. package/patternfly-docs/generated/components/menus/select/react-templates.js +257 -0
  100. package/patternfly-docs/generated/components/menus/select/react.js +998 -0
  101. package/patternfly-docs/generated/components/modal/react-deprecated.js +554 -0
  102. package/patternfly-docs/generated/components/modal/react.js +597 -0
  103. package/patternfly-docs/generated/components/navigation/react-demos.js +356 -0
  104. package/patternfly-docs/generated/components/navigation/react.js +409 -0
  105. package/patternfly-docs/generated/components/notification-badge/react.js +196 -0
  106. package/patternfly-docs/generated/components/notification-drawer/react-demos.js +107 -0
  107. package/patternfly-docs/generated/components/notification-drawer/react.js +394 -0
  108. package/patternfly-docs/generated/components/number-input/react.js +210 -0
  109. package/patternfly-docs/generated/components/overflow-menu/react.js +274 -0
  110. package/patternfly-docs/generated/components/page/react-demos.js +149 -0
  111. package/patternfly-docs/generated/components/page/react.js +1352 -0
  112. package/patternfly-docs/generated/components/pagination/react.js +492 -0
  113. package/patternfly-docs/generated/components/panel/react.js +236 -0
  114. package/patternfly-docs/generated/components/popover/react.js +390 -0
  115. package/patternfly-docs/generated/components/progress/react-demos.js +59 -0
  116. package/patternfly-docs/generated/components/progress/react.js +283 -0
  117. package/patternfly-docs/generated/components/progress-stepper/react-demos.js +45 -0
  118. package/patternfly-docs/generated/components/progress-stepper/react.js +219 -0
  119. package/patternfly-docs/generated/components/search-input/react-demos.js +113 -0
  120. package/patternfly-docs/generated/components/search-input/react.js +263 -0
  121. package/patternfly-docs/generated/components/sidebar/react.js +236 -0
  122. package/patternfly-docs/generated/components/simple-list/react.js +200 -0
  123. package/patternfly-docs/generated/components/skeleton/react-demos.js +44 -0
  124. package/patternfly-docs/generated/components/skeleton/react.js +122 -0
  125. package/patternfly-docs/generated/components/skip-to-content/react.js +73 -0
  126. package/patternfly-docs/generated/components/slider/react.js +309 -0
  127. package/patternfly-docs/generated/components/spinner/react.js +111 -0
  128. package/patternfly-docs/generated/components/switch/react.js +163 -0
  129. package/patternfly-docs/generated/components/table/react-demos.js +355 -0
  130. package/patternfly-docs/generated/components/table/react-deprecated.js +1350 -0
  131. package/patternfly-docs/generated/components/table/react.js +3241 -0
  132. package/patternfly-docs/generated/components/tabs/react-demos.js +108 -0
  133. package/patternfly-docs/generated/components/tabs/react.js +1359 -0
  134. package/patternfly-docs/generated/components/text-input-group/react-demos.js +152 -0
  135. package/patternfly-docs/generated/components/text-input-group/react.js +278 -0
  136. package/patternfly-docs/generated/components/tile/react-deprecated.js +242 -0
  137. package/patternfly-docs/generated/components/timestamp/react.js +283 -0
  138. package/patternfly-docs/generated/components/title/react.js +94 -0
  139. package/patternfly-docs/generated/components/toggle-group/react.js +299 -0
  140. package/patternfly-docs/generated/components/toolbar/react-demos.js +66 -0
  141. package/patternfly-docs/generated/components/toolbar/react.js +932 -0
  142. package/patternfly-docs/generated/components/tooltip/react.js +241 -0
  143. package/patternfly-docs/generated/components/tree-view/react.js +429 -0
  144. package/patternfly-docs/generated/components/truncate/react.js +211 -0
  145. package/patternfly-docs/generated/components/wizard/react-demos.js +87 -0
  146. package/patternfly-docs/generated/components/wizard/react-deprecated.js +788 -0
  147. package/patternfly-docs/generated/components/wizard/react.js +986 -0
  148. package/patternfly-docs/generated/developer-guides/open-ui-automation/react.js +285 -0
  149. package/patternfly-docs/generated/foundations-and-styles/layouts/bullseye/react.js +70 -0
  150. package/patternfly-docs/generated/foundations-and-styles/layouts/flex/react.js +506 -0
  151. package/patternfly-docs/generated/foundations-and-styles/layouts/gallery/react.js +94 -0
  152. package/patternfly-docs/generated/foundations-and-styles/layouts/grid/react.js +272 -0
  153. package/patternfly-docs/generated/foundations-and-styles/layouts/level/react.js +87 -0
  154. package/patternfly-docs/generated/foundations-and-styles/layouts/split/react.js +124 -0
  155. package/patternfly-docs/generated/foundations-and-styles/layouts/stack/react.js +112 -0
  156. package/patternfly-docs/generated/index.js +1769 -0
  157. package/patternfly-docs/generated/patterns/card-view/react-demos.js +78 -0
  158. package/patternfly-docs/generated/patterns/filters/react-demos.js +141 -0
  159. package/patternfly-docs/generated/patterns/password-generator/react-demos.js +51 -0
  160. package/patternfly-docs/generated/patterns/password-strength/react-demos.js +61 -0
  161. package/patternfly-docs/generated/patterns/primary-detail/react-demos.js +124 -0
  162. package/patternfly-docs/generated/patterns/right-to-left/react-demos.js +81 -0
  163. package/LICENSE +0 -21
@@ -0,0 +1,248 @@
1
+ import React from 'react';
2
+ import { AutoLinkHeader, Example, Link as PatternflyThemeLink } from '@patternfly/documentation-framework/components';
3
+
4
+ const pageData = {
5
+ "id": "Content",
6
+ "section": "components",
7
+ "subsection": "",
8
+ "deprecated": false,
9
+ "template": false,
10
+ "beta": false,
11
+ "demo": false,
12
+ "newImplementationLink": false,
13
+ "source": "react",
14
+ "tabName": null,
15
+ "slug": "/components/content/react",
16
+ "sourceLink": "https://github.com/patternfly/patternfly-react/blob/main/packages/react-core/src/components/Content/examples/Content.md",
17
+ "relPath": "packages/react-core/src/components/Content/examples/Content.md",
18
+ "propComponents": [
19
+ {
20
+ "name": "Content",
21
+ "description": "",
22
+ "props": [
23
+ {
24
+ "name": "children",
25
+ "type": "React.ReactNode",
26
+ "description": "Children rendered within the Content."
27
+ },
28
+ {
29
+ "name": "className",
30
+ "type": "string",
31
+ "description": "Additional classes added to the Content.",
32
+ "defaultValue": "''"
33
+ },
34
+ {
35
+ "name": "component",
36
+ "type": "| 'h1'\n| 'h2'\n| 'h3'\n| 'h4'\n| 'h5'\n| 'h6'\n| 'p'\n| 'a'\n| 'small'\n| 'blockquote'\n| 'pre'\n| 'hr'\n| 'ul'\n| 'ol'\n| 'dl'\n| 'li'\n| 'dt'\n| 'dd'",
37
+ "description": "The content component. If none provided, it will be a 'div' and styling will be applied to all its child components."
38
+ },
39
+ {
40
+ "name": "isEditorial",
41
+ "type": "boolean",
42
+ "description": "Flag to indicate the content has editorial styling. This styling increases the font size of body text and small text by one tier, increasing body text to large and small text to the previous body text size.",
43
+ "defaultValue": "false"
44
+ },
45
+ {
46
+ "name": "isPlainList",
47
+ "type": "boolean",
48
+ "description": "Modifies the list (ul, ol and dl components) to have plain styling.",
49
+ "defaultValue": "false"
50
+ },
51
+ {
52
+ "name": "isVisitedLink",
53
+ "type": "boolean",
54
+ "description": "Flag to indicate the link (or all links within the content) has visited styles applied if the browser determines the link has been visited.",
55
+ "defaultValue": "false"
56
+ },
57
+ {
58
+ "name": "ouiaId",
59
+ "type": "number | string",
60
+ "description": "Value to overwrite the randomly generated data-ouia-component-id."
61
+ },
62
+ {
63
+ "name": "ouiaSafe",
64
+ "type": "boolean",
65
+ "description": "Set the value of data-ouia-safe. Only set to true when the component is in a static state, i.e. no animations are occurring. At all other times, this value must be false.",
66
+ "defaultValue": "true"
67
+ }
68
+ ]
69
+ }
70
+ ],
71
+ "cssPrefix": [
72
+ "pf-v6-c-content"
73
+ ],
74
+ "examples": [
75
+ "Content as a wrapper",
76
+ "Headings",
77
+ "Body",
78
+ "Unordered list",
79
+ "Ordered list",
80
+ "Plain list",
81
+ "Description list",
82
+ "Link and visited link",
83
+ "Editorial content"
84
+ ]
85
+ };
86
+ pageData.examples = {
87
+ 'Content as a wrapper': props =>
88
+ <Example {...pageData} {...props} {...{"code":"import { Content, ContentVariants } from '@patternfly/react-core';\n\nexport const ContentWrapper: React.FunctionComponent = () => (\n <Content>\n <Content component={ContentVariants.p}>\n Content with a component of type \"p\" still renders the same when wrapped with a Content.\n </Content>\n <p>If located within a wrapping Content, html elements are styled as well!</p>\n </Content>\n);\n","title":"Content as a wrapper","lang":"ts","className":""}}>
89
+
90
+ </Example>,
91
+ 'Headings': props =>
92
+ <Example {...pageData} {...props} {...{"code":"import { Content, ContentVariants } from '@patternfly/react-core';\n\nexport const ContentHeadings: React.FunctionComponent = () => (\n <>\n <Content component={ContentVariants.h1}>Hello World</Content>\n <Content component={ContentVariants.h2}>Second level</Content>\n <Content component={ContentVariants.h3}>Third level</Content>\n <Content component={ContentVariants.h4}>Fourth level</Content>\n <Content component={ContentVariants.h5}>Fifth level</Content>\n <Content component={ContentVariants.h6}>Sixth level</Content>\n </>\n);\n","title":"Headings","lang":"ts","className":""}}>
93
+
94
+ </Example>,
95
+ 'Body': props =>
96
+ <Example {...pageData} {...props} {...{"code":"import { Content, ContentVariants } from '@patternfly/react-core';\n\nexport const ContentBody: React.FunctionComponent = () => (\n <>\n <Content component={ContentVariants.p}>\n Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla accumsan, metus ultrices eleifend gravida, nulla\n nunc varius lectus, nec rutrum justo nibh eu lectus. Ut vulputate semper dui. Fusce erat odio, sollicitudin vel\n erat vel, interdum mattis neque. Sub works as well!\n </Content>\n <Content component={ContentVariants.p}>\n Quisque ante lacus, malesuada ac auctor vitae, congue{' '}\n <Content component={ContentVariants.a} href=\"#\">\n non ante\n </Content>\n . Phasellus lacus ex, semper ac tortor nec, fringilla condimentum orci. Fusce eu rutrum tellus.\n </Content>\n <Content component={ContentVariants.blockquote}>\n Ut venenatis, nisl scelerisque sollicitudin fermentum, quam libero hendrerit ipsum, ut blandit est tellus sit amet\n turpis.\n </Content>\n <Content component={ContentVariants.small}>\n Sometimes you need small text to display things like date created\n </Content>\n </>\n);\n","title":"Body","lang":"ts","className":""}}>
97
+
98
+ </Example>,
99
+ 'Unordered list': props =>
100
+ <Example {...pageData} {...props} {...{"code":"import { Content, ContentVariants } from '@patternfly/react-core';\n\nexport const ContentUnorderedList: React.FunctionComponent = () => (\n <Content component={ContentVariants.ul}>\n <Content component={ContentVariants.li}>In fermentum leo eu lectus mollis, quis dictum mi aliquet.</Content>\n <Content component={ContentVariants.li}>Morbi eu nulla lobortis, lobortis est in, fringilla felis.</Content>\n <Content component={ContentVariants.li}>\n Aliquam nec felis in sapien venenatis viverra fermentum nec lectus.\n <Content component={ContentVariants.ul}>\n <Content component={ContentVariants.li}>In fermentum leo eu lectus mollis, quis dictum mi aliquet.</Content>\n <Content component={ContentVariants.li}>Morbi eu nulla lobortis, lobortis est in, fringilla felis.</Content>\n </Content>\n </Content>\n <Content component={ContentVariants.li}>Ut non enim metus.</Content>\n </Content>\n);\n","title":"Unordered list","lang":"ts","className":""}}>
101
+
102
+ </Example>,
103
+ 'Ordered list': props =>
104
+ <Example {...pageData} {...props} {...{"code":"import { Content, ContentVariants } from '@patternfly/react-core';\n\nexport const ContentOrderedList: React.FunctionComponent = () => (\n <Content component={ContentVariants.ol}>\n <Content component={ContentVariants.li}>Donec blandit a lorem id convallis.</Content>\n <Content component={ContentVariants.li}>Cras gravida arcu at diam gravida gravida.</Content>\n <Content component={ContentVariants.li}>Integer in volutpat libero.</Content>\n <Content component={ContentVariants.li}>Donec a diam tellus.</Content>\n <Content component={ContentVariants.li}>Aenean nec tortor orci.</Content>\n <Content component={ContentVariants.li}>Quisque aliquam cursus urna, non bibendum massa viverra eget.</Content>\n <Content component={ContentVariants.li}>Vivamus maximus ultricies pulvinar.</Content>\n </Content>\n);\n","title":"Ordered list","lang":"ts","className":""}}>
105
+
106
+ </Example>,
107
+ 'Plain list': props =>
108
+ <Example {...pageData} {...props} {...{"code":"import { Content, ContentVariants } from '@patternfly/react-core';\n\nexport const ContentPlainList: React.FunctionComponent = () => (\n <>\n <Content component={ContentVariants.h3}>Plain unordered list</Content>\n <Content component={ContentVariants.ul} isPlainList>\n <Content component={ContentVariants.li}>In fermentum leo eu lectus mollis, quis dictum mi aliquet.</Content>\n <Content component={ContentVariants.li}>Morbi eu nulla lobortis, lobortis est in, fringilla felis.</Content>\n <Content component={ContentVariants.li}>\n Aliquam nec felis in sapien venenatis viverra fermentum nec lectus.\n </Content>\n <Content component={ContentVariants.li}>Ut non enim metus.</Content>\n </Content>\n <Content component={ContentVariants.h3}>Plain ordered list</Content>\n <Content component={ContentVariants.ol} isPlainList>\n <Content component={ContentVariants.li}>Donec blandit a lorem id convallis.</Content>\n <Content component={ContentVariants.li}>\n {' '}\n component={ContentVariants.li}Cras gravida arcu at diam gravida gravida.\n </Content>\n <Content component={ContentVariants.li}>Integer in volutpat libero.</Content>\n <Content component={ContentVariants.li}>Aenean nec tortor orci.</Content>\n <Content component={ContentVariants.li}>Quisque aliquam cursus urna, non bibendum massa viverra eget.</Content>\n <Content component={ContentVariants.li}>Vivamus maximus ultricies pulvinar.</Content>\n </Content>\n </>\n);\n","title":"Plain list","lang":"ts","className":""}}>
109
+
110
+ </Example>,
111
+ 'Description list': props =>
112
+ <Example {...pageData} {...props} {...{"code":"import { Content, ContentVariants } from '@patternfly/react-core';\n\nexport const ContentDescriptionList: React.FunctionComponent = () => (\n <Content component={ContentVariants.dl}>\n <Content component={ContentVariants.dt}>Web</Content>\n <Content component={ContentVariants.dd}>The part of the Internet that contains websites and web pages</Content>\n <Content component={ContentVariants.dt}>HTML</Content>\n <Content component={ContentVariants.dd}>A markup language for creating web pages</Content>\n <Content component={ContentVariants.dt}>CSS</Content>\n <Content component={ContentVariants.dd}>A technology to make HTML look better</Content>\n </Content>\n);\n","title":"Description list","lang":"ts","className":""}}>
113
+
114
+ </Example>,
115
+ 'Link and visited link': props =>
116
+ <Example {...pageData} {...props} {...{"code":"import { Content, ContentVariants } from '@patternfly/react-core';\n\nexport const ContentVisited: React.FunctionComponent = () => (\n <>\n <Content>\n <Content component={ContentVariants.h3}>Link example</Content>\n <Content component={ContentVariants.p}>\n <Content component={ContentVariants.a} isVisitedLink href=\"#\">\n Click to visit link\n </Content>\n </Content>\n </Content>\n <br />\n <Content isVisitedLink>\n <Content component={ContentVariants.h3}>Link content example</Content>\n <Content component={ContentVariants.p}>\n <Content component={ContentVariants.a} href=\"#\">\n content link 1\n </Content>\n </Content>\n <Content component={ContentVariants.p}>\n <Content component={ContentVariants.a} href=\"#\">\n content link 2\n </Content>\n </Content>\n <Content component={ContentVariants.p}>\n <Content component={ContentVariants.a} href=\"#\">\n content link 3\n </Content>\n </Content>\n </Content>\n </>\n);\n","title":"Link and visited link","lang":"ts","className":""}}>
117
+
118
+ </Example>,
119
+ 'Editorial content': props =>
120
+ <Example {...pageData} {...props} {...{"code":"import { Content, ContentVariants } from '@patternfly/react-core';\n\nexport const ContentEditorial: React.FunctionComponent = () => (\n <>\n <Content component={ContentVariants.h1} isEditorial>\n Example of editorial content via components\n </Content>\n <Content component={ContentVariants.p} isEditorial>\n Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla accumsan, metus ultrices eleifend gravida, nulla\n nunc varius lectus, nec rutrum justo nibh eu lectus. Ut vulputate semper dui. Fusce erat odio, sollicitudin vel\n erat vel, interdum mattis neque. Sub works as well!\n </Content>\n <br />\n <Content isEditorial>\n <h1>Example of editorial content via wrapper</h1>\n <p>\n Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla accumsan, metus ultrices eleifend gravida, nulla\n nunc varius lectus, nec rutrum justo nibh eu lectus. Ut vulputate semper dui. Fusce erat odio, sollicitudin vel\n erat vel, interdum mattis neque. Sub works as well!\n </p>\n </Content>\n </>\n);\n","title":"Editorial content","lang":"ts","className":""}}>
121
+
122
+ <p {...{"className":"pf-v6-c-content--p pf-m-editorial ws-p "}}>
123
+ {`Editorial styling increases the font size of body text and small text by 1 tier, where body text becomes "lg" and small text becomes "md". To applying editorial styling, use `}
124
+
125
+ <code {...{"className":"ws-code "}}>
126
+ {`isEditorial`}
127
+ </code>
128
+ {`.`}
129
+ </p>
130
+ </Example>
131
+ };
132
+
133
+ const Component = () => (
134
+ <React.Fragment>
135
+ <p {...{"className":"pf-v6-c-content--p pf-m-editorial ws-p "}}>
136
+ {`The `}
137
+ <code {...{"className":"ws-code "}}>
138
+ {`<Content>`}
139
+ </code>
140
+ {` component allows you to establish a block of HTML content and apply simple, built-in styling. `}
141
+ <code {...{"className":"ws-code "}}>
142
+ {`<Content>`}
143
+ </code>
144
+ {` can be used for any element supported by the `}
145
+ <code {...{"className":"ws-code "}}>
146
+ {`component`}
147
+ </code>
148
+ {` property (including `}
149
+ <code {...{"className":"ws-code "}}>
150
+ {`h1`}
151
+ </code>
152
+ {` through `}
153
+ <code {...{"className":"ws-code "}}>
154
+ {`h6`}
155
+ </code>
156
+ {`, `}
157
+ <code {...{"className":"ws-code "}}>
158
+ {`hr`}
159
+ </code>
160
+ {`, `}
161
+ <code {...{"className":"ws-code "}}>
162
+ {`p`}
163
+ </code>
164
+ {`, `}
165
+ <code {...{"className":"ws-code "}}>
166
+ {`a`}
167
+ </code>
168
+ {`, `}
169
+ <code {...{"className":"ws-code "}}>
170
+ {`small`}
171
+ </code>
172
+ {`, `}
173
+ <code {...{"className":"ws-code "}}>
174
+ {`blockquote`}
175
+ </code>
176
+ {`, and `}
177
+ <code {...{"className":"ws-code "}}>
178
+ {`pre`}
179
+ </code>
180
+ {`).`}
181
+ </p>
182
+ <p {...{"className":"pf-v6-c-content--p pf-m-editorial ws-p "}}>
183
+ {`You cannot nest other components within `}
184
+ <code {...{"className":"ws-code "}}>
185
+ {`<Content>`}
186
+ </code>
187
+ {`, and doing so can cause styling overrides or other conflicts. Instead, you can use the `}
188
+ <code {...{"className":"ws-code "}}>
189
+ {`<Content>`}
190
+ </code>
191
+ {` component's properties to achieve the same results.`}
192
+ </p>
193
+ <p {...{"className":"pf-v6-c-content--p pf-m-editorial ws-p "}}>
194
+ {`For example, to create a level 1 heading, you should pass `}
195
+ <code {...{"className":"ws-code "}}>
196
+ {`component="h1"`}
197
+ </code>
198
+ {` to `}
199
+ <code {...{"className":"ws-code "}}>
200
+ {`<Content>`}
201
+ </code>
202
+ {`, instead of nesting a `}
203
+ <code {...{"className":"ws-code "}}>
204
+ {`<Title>`}
205
+ </code>
206
+ {` component within `}
207
+ <code {...{"className":"ws-code "}}>
208
+ {`<Content>`}
209
+ </code>
210
+ {`. Similarly, when you need to add a divider to a page, you should utilize the `}
211
+ <code {...{"className":"ws-code "}}>
212
+ {`hr`}
213
+ </code>
214
+ {` property of `}
215
+ <code {...{"className":"ws-code "}}>
216
+ {`<Content>`}
217
+ </code>
218
+ {` (which is styled as a divider), rather than using a separate `}
219
+ <code {...{"className":"ws-code "}}>
220
+ {`<Divider>`}
221
+ </code>
222
+ {` component.`}
223
+ </p>
224
+ <AutoLinkHeader {...{"id":"examples","headingLevel":"h2","className":"ws-title ws-h2"}}>
225
+ {`Examples`}
226
+ </AutoLinkHeader>
227
+ <p {...{"className":"pf-v6-c-content--p pf-m-editorial ws-p "}}>
228
+ {`HTML elements wrapped by `}
229
+ <code {...{"className":"ws-code "}}>
230
+ {`<Content>`}
231
+ </code>
232
+ {` are styled by the content component.`}
233
+ </p>
234
+ {React.createElement(pageData.examples["Content as a wrapper"])}
235
+ {React.createElement(pageData.examples["Headings"])}
236
+ {React.createElement(pageData.examples["Body"])}
237
+ {React.createElement(pageData.examples["Unordered list"])}
238
+ {React.createElement(pageData.examples["Ordered list"])}
239
+ {React.createElement(pageData.examples["Plain list"])}
240
+ {React.createElement(pageData.examples["Description list"])}
241
+ {React.createElement(pageData.examples["Link and visited link"])}
242
+ {React.createElement(pageData.examples["Editorial content"])}
243
+ </React.Fragment>
244
+ );
245
+ Component.displayName = 'ComponentsContentReactDocs';
246
+ Component.pageData = pageData;
247
+
248
+ export default Component;
@@ -0,0 +1,90 @@
1
+ import React from 'react';
2
+ import { AutoLinkHeader, Example, Link as PatternflyThemeLink } from '@patternfly/documentation-framework/components';
3
+ import { Fragment, useState } from 'react';
4
+ import RhUiBranchFillIcon from '@patternfly/react-icons/dist/esm/icons/rh-ui-branch-fill-icon';
5
+ import RhMicronsCaretDownIcon from '@patternfly/react-icons/dist/esm/icons/rh-microns-caret-down-icon';
6
+ import RhMicronsCaretRightIcon from '@patternfly/react-icons/dist/esm/icons/rh-microns-caret-right-icon';
7
+ import RhUiEllipsisVerticalFillIcon from '@patternfly/react-icons/dist/esm/icons/rh-ui-ellipsis-vertical-fill-icon';
8
+ import { css } from '@patternfly/react-styles';
9
+ import RhUiCodeIcon from '@patternfly/react-icons/dist/esm/icons/rh-ui-code-icon';
10
+ import CubeIcon from '@patternfly/react-icons/dist/esm/icons/cube-icon';
11
+ import RhUiWarningFillIcon from '@patternfly/react-icons/dist/esm/icons/rh-ui-warning-fill-icon';
12
+ import RhUiCheckCircleFillIcon from '@patternfly/react-icons/dist/esm/icons/rh-ui-check-circle-fill-icon';
13
+ import RhUiErrorFillIcon from '@patternfly/react-icons/dist/esm/icons/rh-ui-error-fill-icon';
14
+ import { DashboardWrapper } from '@patternfly/react-core/dist/js/demos/DashboardWrapper';
15
+ import { rows } from '@patternfly/react-core/dist/esm/demos/sampleData';
16
+ import srcImportactionable from './react-demos/actionable.png';
17
+ import srcImportbasic from './react-demos/basic.png';
18
+ import srcImportexpandablecontrolintoolbar from './react-demos/expandable-control-in-toolbar.png';
19
+ import srcImportstaticbottompagination from './react-demos/static-bottom-pagination.png';
20
+ const pageData = {
21
+ "id": "Data list",
22
+ "section": "components",
23
+ "subsection": "",
24
+ "deprecated": false,
25
+ "template": false,
26
+ "beta": false,
27
+ "demo": false,
28
+ "newImplementationLink": false,
29
+ "source": "react-demos",
30
+ "tabName": null,
31
+ "slug": "/components/data-list/react-demos",
32
+ "sourceLink": "https://github.com/patternfly/patternfly-react/blob/main/packages/react-core/src/demos/DataListDemo.md",
33
+ "relPath": "packages/react-core/src/demos/DataListDemo.md",
34
+ "fullscreenExamples": [
35
+ "Basic",
36
+ "Expandable control in toolbar",
37
+ "Actionable",
38
+ "Static bottom pagination"
39
+ ]
40
+ };
41
+ pageData.liveContext = {
42
+ Fragment,
43
+ useState,
44
+ RhUiBranchFillIcon,
45
+ RhMicronsCaretDownIcon,
46
+ RhMicronsCaretRightIcon,
47
+ RhUiEllipsisVerticalFillIcon,
48
+ css,
49
+ RhUiCodeIcon,
50
+ CubeIcon,
51
+ RhUiWarningFillIcon,
52
+ RhUiCheckCircleFillIcon,
53
+ RhUiErrorFillIcon,
54
+ DashboardWrapper,
55
+ rows
56
+ };
57
+ pageData.examples = {
58
+ 'Basic': props =>
59
+ <Example {...pageData} {...props} thumbnail={srcImportbasic} {...{"code":"import { Fragment } from 'react';\nimport {\n Button,\n Content,\n DataList,\n DataListItem,\n DataListCell,\n DataListItemRow,\n DataListItemCells,\n Flex,\n FlexItem,\n Icon,\n MenuToggle,\n MenuToggleCheckbox,\n OverflowMenu,\n OverflowMenuControl,\n OverflowMenuItem,\n PageSection,\n Pagination,\n Toolbar,\n ToolbarItem,\n ToolbarContent\n} from '@patternfly/react-core';\nimport RhUiEllipsisVerticalFillIcon from '@patternfly/react-icons/dist/esm/icons/rh-ui-ellipsis-vertical-fill-icon';\nimport { DashboardWrapper } from '@patternfly/react-core/dist/js/demos/DashboardWrapper';\n\nimport RhUiCodeIcon from '@patternfly/react-icons/dist/esm/icons/rh-ui-code-icon';\nimport RhUiBranchFillIcon from '@patternfly/react-icons/dist/esm/icons/rh-ui-branch-fill-icon';\nimport CubeIcon from '@patternfly/react-icons/dist/esm/icons/cube-icon';\nimport RhUiWarningFillIcon from '@patternfly/react-icons/dist/esm/icons/rh-ui-warning-fill-icon';\nimport RhUiCheckCircleFillIcon from '@patternfly/react-icons/dist/esm/icons/rh-ui-check-circle-fill-icon';\nimport RhUiErrorFillIcon from '@patternfly/react-icons/dist/esm/icons/rh-ui-error-fill-icon';\n\nexport const DataListBasic: React.FunctionComponent = () => {\n const renderPagination = () => <Pagination itemCount={5} page={1} variant=\"top\" isCompact />;\n\n const toolbarItems = (\n <Fragment>\n <ToolbarItem variant=\"bulk-select\">\n <MenuToggle\n aria-label=\"Select cards\"\n splitButtonItems={[\n <MenuToggleCheckbox\n id=\"split-dropdown-checkbox\"\n key=\"split-dropdown-checkbox\"\n aria-label={'Select all cards'}\n />\n ]}\n ></MenuToggle>\n </ToolbarItem>\n <ToolbarItem>\n <MenuToggle>Filter by creator name</MenuToggle>\n </ToolbarItem>\n <ToolbarItem variant=\"overflow-menu\">\n <OverflowMenu breakpoint=\"md\">\n <OverflowMenuItem>\n <Button variant=\"primary\">Create instance</Button>\n </OverflowMenuItem>\n <OverflowMenuControl hasAdditionalOptions>\n <MenuToggle\n aria-label=\"Toolbar kebab overflow menu\"\n variant=\"plain\"\n icon={<RhUiEllipsisVerticalFillIcon />}\n />\n </OverflowMenuControl>\n </OverflowMenu>\n </ToolbarItem>\n <ToolbarItem variant=\"pagination\" align={{ default: 'alignEnd' }}>\n {renderPagination()}\n </ToolbarItem>\n </Fragment>\n );\n\n return (\n <Fragment>\n <DashboardWrapper mainContainerId=\"main-content-datalist-view-default-nav\" breadcrumb={null}>\n <PageSection aria-labelledby=\"projects\">\n <Content>\n <h1 id=\"projects\">Projects</h1>\n <p>This is a demo that showcases PatternFly data list</p>\n </Content>\n </PageSection>\n <PageSection isFilled>\n <Toolbar id=\"toolbar-group-types\">\n <ToolbarContent>{toolbarItems}</ToolbarContent>\n </Toolbar>\n <DataList aria-label=\"Demo data list\">\n <DataListItem aria-labelledby=\"Demo-item1\">\n <DataListItemRow>\n <DataListItemCells\n dataListCells={[\n <DataListCell isFilled={false} key=\"buttons1\">\n <Flex direction={{ default: 'column' }}>\n <FlexItem>\n <Content component=\"p\">patternfly</Content>\n </FlexItem>\n <FlexItem>\n <Content component=\"small\">\n Working repo for\n <a href=\"http://www.patternfly.org/\">PatternFly</a>\n </Content>\n </FlexItem>\n <FlexItem>\n <Flex spaceItems={{ default: 'spaceItemsSm' }}>\n <FlexItem>\n <Icon>\n <RhUiBranchFillIcon />\n </Icon>\n 10 <span className=\"pf-v6-screen-reader\">Branches</span>\n </FlexItem>\n <FlexItem>\n <Icon>\n <RhUiCodeIcon />\n </Icon>\n 4 <span className=\"pf-v6-screen-reader\">Code blocks</span>\n </FlexItem>\n <FlexItem>\n <Icon>\n <CubeIcon />\n </Icon>\n 5 <span className=\"pf-v6-screen-reader\">Workspaces</span>\n </FlexItem>\n <FlexItem> Updated 2 days ago</FlexItem>\n </Flex>\n </FlexItem>\n </Flex>\n </DataListCell>,\n <DataListCell isFilled={false} alignRight key=\"secondary content align\">\n <Flex>\n <FlexItem>\n <Button variant=\"secondary\">Action</Button>\n </FlexItem>\n <FlexItem>\n <a href=\"#\">Link</a>\n </FlexItem>\n </Flex>\n </DataListCell>\n ]}\n />\n </DataListItemRow>\n </DataListItem>\n <DataListItem aria-labelledby=\"Demo-item2\">\n <DataListItemRow>\n <DataListItemCells\n dataListCells={[\n <DataListCell isFilled={false} key=\"buttons2\">\n <Flex direction={{ default: 'column' }}>\n <FlexItem>\n <Content component=\"small\">patternfly-elements</Content>\n </FlexItem>\n <FlexItem>\n <Content component=\"small\">PatternFly elements</Content>\n </FlexItem>\n <FlexItem>\n <Flex spaceItems={{ default: 'spaceItemsSm' }}>\n <FlexItem>\n <Icon>\n <RhUiBranchFillIcon />\n </Icon>\n 5 <span className=\"pf-v6-screen-reader\">Branches</span>\n </FlexItem>\n <FlexItem>\n <Icon>\n <RhUiCodeIcon />\n </Icon>\n 9 <span className=\"pf-v6-screen-reader\">Code blocks</span>\n </FlexItem>\n <FlexItem>\n <Icon>\n <CubeIcon />\n </Icon>\n 2 <span className=\"pf-v6-screen-reader\">Workspaces</span>\n </FlexItem>\n <FlexItem>\n <Icon status=\"success\">\n <RhUiCheckCircleFillIcon />\n </Icon>\n 11\n <span className=\"pf-v6-screen-reader\">Completed</span>\n </FlexItem>\n <FlexItem>\n <Icon status=\"warning\">\n <RhUiWarningFillIcon />\n </Icon>\n 4 <span className=\"pf-v6-screen-reader\">Warnings</span>\n </FlexItem>\n <FlexItem>\n <Icon status=\"danger\">\n <RhUiErrorFillIcon />\n </Icon>\n 1 <span className=\"pf-v6-screen-reader\">Error</span>\n </FlexItem>\n <FlexItem> Updated 2 days ago</FlexItem>\n </Flex>\n </FlexItem>\n </Flex>\n </DataListCell>,\n <DataListCell isFilled={false} alignRight key=\"secondary content align\">\n <Flex>\n <FlexItem>\n <Button variant=\"secondary\">Action</Button>\n </FlexItem>\n <FlexItem>\n <a href=\"#\">Link</a>\n </FlexItem>\n </Flex>\n </DataListCell>\n ]}\n />\n </DataListItemRow>\n </DataListItem>\n <DataListItem>\n <DataListItemRow>\n <DataListItemCells\n dataListCells={[\n <DataListCell isFilled={false} key=\"Demo-item3\">\n <Flex direction={{ default: 'column' }}>\n <FlexItem>\n <Content component=\"small\">patternfly-unified-design-kit</Content>\n </FlexItem>\n </Flex>\n </DataListCell>,\n <DataListCell isFilled={false} alignRight key=\"buttons3\">\n <Flex>\n <FlexItem>\n <Button variant=\"secondary\">Action</Button>\n </FlexItem>\n <FlexItem>\n <a href=\"#\">Link</a>\n </FlexItem>\n </Flex>\n </DataListCell>\n ]}\n />\n </DataListItemRow>\n </DataListItem>\n <DataListItem aria-labelledby=\"Demo-item4\">\n <DataListItemRow>\n <DataListItemCells\n dataListCells={[\n <DataListCell isFilled={false} key=\"buttons4\">\n <Flex direction={{ default: 'column' }}>\n <FlexItem>\n <Content component=\"small\">patternfly</Content>\n </FlexItem>\n <FlexItem>\n <Content component=\"small\">\n Working repo for\n <a href=\"http://www.patternfly.org/\">PatternFly</a>\n </Content>\n </FlexItem>\n <FlexItem>\n <Flex spaceItems={{ default: 'spaceItemsSm' }}>\n <FlexItem>\n <Icon>\n <RhUiBranchFillIcon />\n </Icon>\n 10\n <span className=\"pf-v6-screen-reader\">Branches</span>\n </FlexItem>\n <FlexItem>\n <Icon>\n <RhUiCodeIcon />\n </Icon>\n 4 <span className=\"pf-v6-screen-reader\">Code blocks</span>\n </FlexItem>\n <FlexItem>\n <Icon>\n <CubeIcon />\n </Icon>\n 5 <span className=\"pf-v6-screen-reader\">Workspaces</span>\n </FlexItem>\n <FlexItem> Updated 2 days ago</FlexItem>\n </Flex>\n </FlexItem>\n </Flex>\n </DataListCell>,\n <DataListCell isFilled={false} alignRight key=\"secondary content align\">\n <Flex>\n <FlexItem>\n <Button variant=\"secondary\">Action</Button>\n </FlexItem>\n <FlexItem>\n <a href=\"#\">Link</a>\n </FlexItem>\n </Flex>\n </DataListCell>\n ]}\n />\n </DataListItemRow>\n </DataListItem>\n <DataListItem aria-labelledby=\"Demo-item5\">\n <DataListItemRow>\n <DataListItemCells\n dataListCells={[\n <DataListCell isFilled={false} key=\"buttons5\">\n <Flex direction={{ default: 'column' }}>\n <FlexItem>\n <Content component=\"small\">patternfly-elements</Content>\n </FlexItem>\n <FlexItem>\n <Content component=\"small\">PatternFly elements</Content>\n </FlexItem>\n <FlexItem>\n <Flex spaceItems={{ default: 'spaceItemsSm' }}>\n <FlexItem>\n <Icon>\n <RhUiBranchFillIcon />\n </Icon>\n 5 <span className=\"pf-v6-screen-reader\">Branches</span>\n </FlexItem>\n <FlexItem>\n <Icon>\n <RhUiCodeIcon />\n </Icon>\n 9 <span className=\"pf-v6-screen-reader\">Code blocks</span>\n </FlexItem>\n <FlexItem>\n <Icon>\n <CubeIcon />\n </Icon>\n 2 <span className=\"pf-v6-screen-reader\">Workspaces</span>\n </FlexItem>\n <FlexItem>\n <Icon status=\"success\">\n <RhUiCheckCircleFillIcon />\n </Icon>\n 11 <span className=\"pf-v6-screen-reader\">Completed</span>\n </FlexItem>\n <FlexItem>\n <Icon status=\"warning\">\n <RhUiWarningFillIcon />\n </Icon>\n 4 <span className=\"pf-v6-screen-reader\">Warnings</span>\n </FlexItem>\n <FlexItem>\n <Icon status=\"danger\">\n <RhUiErrorFillIcon />\n </Icon>\n 1 <span className=\"pf-v6-screen-reader\">Error</span>\n </FlexItem>\n <FlexItem> Updated 2 days ago</FlexItem>\n </Flex>\n </FlexItem>\n </Flex>\n </DataListCell>,\n <DataListCell isFilled={false} alignRight key=\"secondary content align\">\n <Flex>\n <FlexItem>\n <Button variant=\"secondary\">Action</Button>\n </FlexItem>\n <FlexItem>\n <a href=\"#\">Link</a>\n </FlexItem>\n </Flex>\n </DataListCell>\n ]}\n />\n </DataListItemRow>\n </DataListItem>\n </DataList>\n </PageSection>\n </DashboardWrapper>\n </Fragment>\n );\n};\n","title":"Basic","lang":"ts","isFullscreen":true,"className":""}}>
60
+
61
+ </Example>,
62
+ 'Expandable control in toolbar': props =>
63
+ <Example {...pageData} {...props} thumbnail={srcImportexpandablecontrolintoolbar} {...{"code":"import { Fragment, useState } from 'react';\nimport {\n Button,\n Content,\n DataList,\n DataListItem,\n DataListItemRow,\n DataListCell,\n DataListAction,\n DataListToggle,\n DataListContent,\n DataListItemCells,\n Dropdown,\n DropdownItem,\n DropdownList,\n Icon,\n MenuToggle,\n MenuToggleElement,\n Toolbar,\n ToolbarGroup,\n ToolbarItem,\n ToolbarExpandIconWrapper,\n ToolbarContent,\n SearchInput,\n Tooltip,\n PageSection\n} from '@patternfly/react-core';\n\nimport { DashboardWrapper } from '@patternfly/react-core/src/demos/DashboardWrapper';\n\nimport RhUiBranchFillIcon from '@patternfly/react-icons/dist/esm/icons/rh-ui-branch-fill-icon';\nimport RhMicronsCaretDownIcon from '@patternfly/react-icons/dist/esm/icons/rh-microns-caret-down-icon';\nimport RhUiEllipsisVerticalFillIcon from '@patternfly/react-icons/dist/esm/icons/rh-ui-ellipsis-vertical-fill-icon';\n\nexport const DataListExpandableControlInToolbar: React.FunctionComponent = () => {\n const [expanded, setExpanded] = useState(['ex-toggle1', 'ex-toggle3']);\n const [isOpen1, setIsOpen1] = useState(false);\n const [isOpen2, setIsOpen2] = useState(false);\n const [isOpen3, setIsOpen3] = useState(false);\n const [allExpanded, setAllExpanded] = useState(false);\n const [searchValue, setSearchValue] = useState('');\n\n const onToggleAll = () => {\n setAllExpanded((prevAllExpanded) => !prevAllExpanded);\n\n if (!allExpanded) {\n setExpanded(['ex-toggle1', 'ex-toggle2', 'ex-toggle3']);\n } else {\n setExpanded([]);\n }\n };\n\n const onToggle1 = () => {\n setIsOpen1(!isOpen1);\n };\n\n const onToggle2 = () => {\n setIsOpen2(!isOpen2);\n };\n\n const onToggle3 = () => {\n setIsOpen3(!isOpen3);\n };\n\n const onSelect1 = () => {\n setIsOpen1(false);\n };\n\n const onSelect2 = () => {\n setIsOpen2(false);\n };\n\n const onSelect3 = () => {\n setIsOpen3(false);\n };\n\n const renderToolbar = () => (\n <Fragment>\n <Toolbar>\n <ToolbarContent>\n <ToolbarGroup>\n <ToolbarItem variant=\"expand-all\" isAllExpanded={allExpanded}>\n <Tooltip\n position=\"right\"\n content={\n <div>\n {allExpanded && 'Collapse all rows'}\n {!allExpanded && 'Expand all rows'}\n </div>\n }\n >\n <Button\n onClick={onToggleAll}\n variant=\"plain\"\n aria-label={allExpanded ? 'Collapse all rows' : 'Expand all rows'}\n icon={\n <Icon shouldMirrorRTL>\n <ToolbarExpandIconWrapper>\n <RhMicronsCaretDownIcon />\n </ToolbarExpandIconWrapper>\n </Icon>\n }\n />\n </Tooltip>\n </ToolbarItem>\n <ToolbarItem>\n <SearchInput\n aria-label=\"search input example\"\n value={searchValue}\n onChange={(_event, value) => setSearchValue(value)}\n onClear={() => setSearchValue('')}\n />\n </ToolbarItem>\n <ToolbarItem>\n <Button variant=\"secondary\">Action</Button>\n </ToolbarItem>\n <ToolbarItem variant=\"separator\" />\n <ToolbarItem>\n <Button variant=\"primary\">Action</Button>\n </ToolbarItem>\n </ToolbarGroup>\n </ToolbarContent>\n </Toolbar>\n </Fragment>\n );\n\n const toggle = (id: string) => {\n const index = expanded.indexOf(id);\n const newExpanded =\n index >= 0 ? [...expanded.slice(0, index), ...expanded.slice(index + 1, expanded.length)] : [...expanded, id];\n setExpanded(newExpanded);\n if (newExpanded.length === 3) {\n setAllExpanded(true);\n } else if (newExpanded.length === 0) {\n setAllExpanded(false);\n }\n };\n\n return (\n <Fragment>\n <DashboardWrapper mainContainerId=\"main-content-datalist-view-default-nav\" breadcrumb={null}>\n <PageSection aria-labelledby=\"projects\">\n <Content>\n <h1 id=\"projects\">Projects</h1>\n <p>This is a demo that showcases PatternFly data list</p>\n </Content>\n </PageSection>\n <PageSection isFilled>\n {renderToolbar()}\n\n <DataList aria-label=\"Expandable data list example\">\n <DataListItem aria-labelledby=\"ex-item1\" isExpanded={expanded.includes('ex-toggle1')}>\n <DataListItemRow>\n <DataListToggle\n onClick={() => toggle('ex-toggle1')}\n isExpanded={expanded.includes('ex-toggle1')}\n id=\"ex-toggle1\"\n aria-controls=\"ex-expand1\"\n />\n <DataListItemCells\n dataListCells={[\n <DataListCell isIcon key=\"icon\">\n <RhUiBranchFillIcon />\n </DataListCell>,\n <DataListCell key=\"primary content\">\n <div id=\"ex-item1\">Primary content</div>\n <span>Lorem ipsum dolor sit amet, consectetur adipiscing elit. </span>\n <a href=\"#\">Link</a>\n </DataListCell>,\n <DataListCell key=\"secondary content\">\n <span>Lorem ipsum dolor sit amet, consectetur adipiscing elit.</span>\n </DataListCell>,\n <DataListCell key=\"secondary content 2\">\n <span>Lorem ipsum dolor sit amet, consectetur adipiscing elit.</span>\n </DataListCell>\n ]}\n />\n <DataListAction aria-labelledby=\"ex-item1 ex-action1\" id=\"ex-action1\" aria-label=\"Actions\">\n <Dropdown\n isOpen={isOpen1}\n onSelect={onSelect1}\n popperProps={{ position: 'right' }}\n onOpenChange={(isOpen: boolean) => setIsOpen1(isOpen)}\n toggle={(toggleRef: React.Ref<MenuToggleElement>) => (\n <MenuToggle\n ref={toggleRef}\n onClick={onToggle1}\n isExpanded={isOpen1}\n variant=\"plain\"\n aria-label=\"Primary content kebab toggle\"\n icon={<RhUiEllipsisVerticalFillIcon />}\n />\n )}\n >\n <DropdownList>\n <DropdownItem value={0} key=\"action1\">\n Action\n </DropdownItem>\n <DropdownItem\n value={1}\n key=\"link1\"\n to=\"#default-link2\"\n // Prevent the default onClick functionality for example purposes\n onClick={(ev: React.MouseEvent) => ev.preventDefault()}\n >\n Link\n </DropdownItem>\n <DropdownItem value={2} isDisabled key=\"disabled action1\">\n Disabled Action\n </DropdownItem>\n <DropdownItem value={3} isDisabled key=\"disabled link1\" to=\"#default-link4\">\n Disabled Link\n </DropdownItem>\n </DropdownList>\n </Dropdown>\n </DataListAction>\n </DataListItemRow>\n <DataListContent\n aria-label=\"Primary Content Details\"\n id=\"ex-expand1\"\n isHidden={!expanded.includes('ex-toggle1')}\n >\n <p>\n Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore\n et dolore magna aliqua.\n </p>\n </DataListContent>\n </DataListItem>\n <DataListItem aria-labelledby=\"ex-item2\" isExpanded={expanded.includes('ex-toggle2')}>\n <DataListItemRow>\n <DataListToggle\n onClick={() => toggle('ex-toggle2')}\n isExpanded={expanded.includes('ex-toggle2')}\n id=\"ex-toggle2\"\n aria-controls=\"ex-expand2\"\n />\n <DataListItemCells\n dataListCells={[\n <DataListCell isIcon key=\"icon\">\n <RhUiBranchFillIcon />\n </DataListCell>,\n <DataListCell key=\"secondary content\">\n <div id=\"ex-item2\">Secondary content</div>\n <span>Lorem ipsum dolor sit amet, consectetur adipiscing elit.</span>\n </DataListCell>,\n <DataListCell key=\"secondary content 2\">\n <span>Lorem ipsum dolor sit amet.</span>\n </DataListCell>,\n <DataListCell key=\"secondary content3\">\n <span>Lorem ipsum dolor sit amet, consectetur adipiscing elit.</span>\n </DataListCell>\n ]}\n />\n <DataListAction aria-labelledby=\"ex-item2 ex-action2\" id=\"ex-action2\" aria-label=\"Actions\">\n <Dropdown\n isOpen={isOpen2}\n onSelect={onSelect2}\n popperProps={{ position: 'right' }}\n onOpenChange={(isOpen: boolean) => setIsOpen2(isOpen)}\n toggle={(toggleRef: React.Ref<MenuToggleElement>) => (\n <MenuToggle\n ref={toggleRef}\n onClick={onToggle2}\n isExpanded={isOpen2}\n variant=\"plain\"\n aria-label=\"Secondary content kebab toggle\"\n icon={<RhUiEllipsisVerticalFillIcon />}\n />\n )}\n >\n <DropdownList>\n <DropdownItem value={0} key=\"action2\">\n Action\n </DropdownItem>\n <DropdownItem\n value={1}\n key=\"link2\"\n to=\"#default-link2\"\n // Prevent the default onClick functionality for example purposes\n onClick={(ev: React.MouseEvent) => ev.preventDefault()}\n >\n Link\n </DropdownItem>\n <DropdownItem value={2} isDisabled key=\"disabled action2\">\n Disabled Action\n </DropdownItem>\n <DropdownItem value={3} isDisabled key=\"disabled link2\" to=\"#default-link4\">\n Disabled Link\n </DropdownItem>\n </DropdownList>\n </Dropdown>\n </DataListAction>\n </DataListItemRow>\n <DataListContent\n aria-label=\"Primary Content Details\"\n id=\"ex-expand2\"\n isHidden={!expanded.includes('ex-toggle2')}\n >\n <p>\n Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore\n et dolore magna aliqua.\n </p>\n </DataListContent>\n </DataListItem>\n <DataListItem aria-labelledby=\"ex-item3\" isExpanded={expanded.includes('ex-toggle3')}>\n <DataListItemRow>\n <DataListToggle\n onClick={() => toggle('ex-toggle3')}\n isExpanded={expanded.includes('ex-toggle3')}\n id=\"ex-toggle3\"\n aria-controls=\"ex-expand3\"\n />\n <DataListItemCells\n dataListCells={[\n <DataListCell isIcon key=\"icon\">\n <RhUiBranchFillIcon />\n </DataListCell>,\n <DataListCell key=\"tertiary content\">\n <div id=\"ex-item3\">Tertiary content</div>\n <span>Lorem ipsum dolor sit amet, consectetur adipiscing elit.</span>\n </DataListCell>,\n <DataListCell key=\"secondary content\">\n <span>Lorem ipsum dolor sit amet.</span>\n </DataListCell>,\n <DataListCell key=\"secondary content 2\">\n <span>Lorem ipsum dolor sit amet, consectetur adipiscing elit.</span>\n </DataListCell>\n ]}\n />\n <DataListAction aria-labelledby=\"ex-item3 ex-action3\" id=\"ex-action3\" aria-label=\"Actions\">\n <Dropdown\n isOpen={isOpen3}\n onSelect={onSelect3}\n popperProps={{ position: 'right' }}\n onOpenChange={(isOpen: boolean) => setIsOpen3(isOpen)}\n toggle={(toggleRef: React.Ref<MenuToggleElement>) => (\n <MenuToggle\n ref={toggleRef}\n onClick={onToggle3}\n isExpanded={isOpen3}\n variant=\"plain\"\n aria-label=\"Tertiary content kebab toggle\"\n icon={<RhUiEllipsisVerticalFillIcon />}\n />\n )}\n >\n <DropdownList>\n <DropdownItem value={0} key=\"action3\">\n Action\n </DropdownItem>\n <DropdownItem\n value={1}\n key=\"link3\"\n to=\"#default-link2\"\n // Prevent the default onClick functionality for example purposes\n onClick={(ev: React.MouseEvent) => ev.preventDefault()}\n >\n Link\n </DropdownItem>\n <DropdownItem value={2} isDisabled key=\"disabled action3\">\n Disabled Action\n </DropdownItem>\n <DropdownItem value={3} isDisabled key=\"disabled link3\" to=\"#default-link4\">\n Disabled Link\n </DropdownItem>\n </DropdownList>\n </Dropdown>\n </DataListAction>\n </DataListItemRow>\n <DataListContent\n aria-label=\"Primary Content Details\"\n id=\"ex-expand3\"\n isHidden={!expanded.includes('ex-toggle3')}\n hasNoPadding\n >\n This expanded section has no padding.\n </DataListContent>\n </DataListItem>\n </DataList>\n </PageSection>\n </DashboardWrapper>\n </Fragment>\n );\n};\n","title":"Expandable control in toolbar","lang":"ts","isFullscreen":true,"className":""}}>
64
+
65
+ </Example>,
66
+ 'Actionable': props =>
67
+ <Example {...pageData} {...props} thumbnail={srcImportactionable} {...{"code":"import { useState } from 'react';\nimport {\n Button,\n Content,\n DataList,\n DataListItem,\n DataListCell,\n DataListItemRow,\n DataListItemCells,\n DataListAction,\n Dropdown,\n DropdownList,\n DropdownItem,\n MenuToggle,\n MenuToggleElement,\n PageSection,\n Title\n} from '@patternfly/react-core';\nimport RhUiEllipsisVerticalFillIcon from '@patternfly/react-icons/dist/esm/icons/rh-ui-ellipsis-vertical-fill-icon';\nimport { DashboardWrapper } from '@patternfly/react-core/dist/js/demos/DashboardWrapper';\n\nexport const DataListActionable: React.FunctionComponent = () => {\n const [isOpen, setIsOpen] = useState(false);\n const [isDeleted, setIsDeleted] = useState(false);\n\n const onToggle = () => {\n setIsOpen(!isOpen);\n };\n\n const onSelect = () => {\n setIsOpen(!isOpen);\n };\n\n return (\n <DashboardWrapper mainContainerId=\"main-content-datalist-view-actions\" breadcrumb={null}>\n <PageSection aria-labelledby=\"projects\">\n <Content>\n <Title headingLevel=\"h1\" id=\"projects\">\n Projects\n </Title>\n <Content component=\"p\">This is a demo that showcases PatternFly Data List</Content>\n </Content>\n </PageSection>\n <PageSection aria-label=\"Data list of projects\">\n <DataList aria-label=\"single action data list example \">\n {!isDeleted && (\n <DataListItem aria-labelledby=\"single-action-item1\">\n <DataListItemRow>\n <DataListItemCells\n dataListCells={[\n <DataListCell key=\"primary content\">\n <span id=\"single-action-item1\">Single actionable Primary content</span>\n </DataListCell>,\n <DataListCell key=\"secondary content\">Single actionable Secondary content</DataListCell>\n ]}\n />\n <DataListAction\n aria-labelledby=\"single-action-item1 single-action-action1\"\n id=\"single-action-action1\"\n aria-label=\"Actions\"\n >\n <Button\n onClick={() => {\n if (confirm('Are you sure?')) {\n setIsDeleted(true);\n }\n }}\n variant=\"primary\"\n key=\"delete-action\"\n >\n Delete\n </Button>\n </DataListAction>\n </DataListItemRow>\n </DataListItem>\n )}\n <DataListItem aria-labelledby=\"multi-actions-item1\">\n <DataListItemRow>\n <DataListItemCells\n dataListCells={[\n <DataListCell key=\"primary content\">\n <span id=\"multi-actions-item1\">Multi actions Primary content</span>\n </DataListCell>,\n <DataListCell key=\"secondary content\">Multi actions Secondary content</DataListCell>\n ]}\n />\n <DataListAction\n aria-labelledby=\"multi-actions-item1 multi-actions-action1\"\n id=\"multi-actions-action1\"\n aria-label=\"Actions\"\n >\n <Dropdown\n popperProps={{ position: 'right' }}\n onSelect={onSelect}\n toggle={(toggleRef: React.Ref<MenuToggleElement>) => (\n <MenuToggle\n ref={toggleRef}\n isExpanded={isOpen}\n onClick={onToggle}\n variant=\"plain\"\n aria-label=\"Data list with actions example kebab toggle\"\n >\n <RhUiEllipsisVerticalFillIcon aria-hidden=\"true\" />\n </MenuToggle>\n )}\n isOpen={isOpen}\n onOpenChange={(isOpen: boolean) => setIsOpen(isOpen)}\n >\n <DropdownList>\n <DropdownItem key=\"action\">Action</DropdownItem>\n {/* Prevent default onClick functionality for example\n purposes */}\n <DropdownItem key=\"link\" to=\"#\" onClick={(event: any) => event.preventDefault()}>\n Link\n </DropdownItem>\n <DropdownItem key=\"disabled action\" isDisabled>\n Disabled Action\n </DropdownItem>\n <DropdownItem\n key=\"disabled link\"\n isDisabled\n to=\"#\"\n onClick={(event: any) => event.preventDefault()}\n >\n Disabled Link\n </DropdownItem>\n </DropdownList>\n </Dropdown>\n </DataListAction>\n </DataListItemRow>\n </DataListItem>\n </DataList>\n </PageSection>\n </DashboardWrapper>\n );\n};\n","title":"Actionable","lang":"ts","isFullscreen":true,"className":""}}>
68
+
69
+ </Example>,
70
+ 'Static bottom pagination': props =>
71
+ <Example {...pageData} {...props} thumbnail={srcImportstaticbottompagination} {...{"code":"import { Fragment, useState } from 'react';\nimport {\n Button,\n Content,\n ContentVariants,\n DataList,\n DataListItem,\n DataListCell,\n DataListItemRow,\n DataListItemCells,\n Flex,\n FlexItem,\n Icon,\n MenuToggle,\n MenuToggleCheckbox,\n OverflowMenu,\n OverflowMenuControl,\n OverflowMenuItem,\n PageSection,\n Pagination,\n Toolbar,\n ToolbarItem,\n ToolbarContent,\n PaginationVariant\n} from '@patternfly/react-core';\nimport RhUiEllipsisVerticalFillIcon from '@patternfly/react-icons/dist/esm/icons/rh-ui-ellipsis-vertical-fill-icon';\nimport { DashboardWrapper } from '@patternfly/react-core/dist/js/demos/DashboardWrapper';\n\nimport RhUiCodeIcon from '@patternfly/react-icons/dist/esm/icons/rh-ui-code-icon';\nimport RhUiBranchFillIcon from '@patternfly/react-icons/dist/esm/icons/rh-ui-branch-fill-icon';\nimport CubeIcon from '@patternfly/react-icons/dist/esm/icons/cube-icon';\nimport { rows } from '@patternfly/react-core/dist/esm/demos/sampleData';\n\nexport const DataListStaticBottomPagination: React.FunctionComponent = () => {\n const [page, setPage] = useState<number | undefined>(1);\n const [perPage, setPerPage] = useState<number>(10);\n const [paginatedRows, setPaginatedRows] = useState(rows.slice(0, 10));\n\n const handleSetPage = (\n _evt: React.MouseEvent | React.KeyboardEvent | MouseEvent,\n newPage: number,\n _perPage: number | undefined,\n startIdx: number | undefined,\n endIdx: number | undefined\n ) => {\n setPaginatedRows(rows?.slice(startIdx, endIdx));\n setPage(newPage);\n };\n\n const handlePerPageSelect = (\n _evt: React.MouseEvent | React.KeyboardEvent | MouseEvent,\n newPerPage: number,\n newPage: number | undefined,\n startIdx: number | undefined,\n endIdx: number | undefined\n ) => {\n setPaginatedRows(rows.slice(startIdx, endIdx));\n setPage(newPage);\n setPerPage(newPerPage);\n };\n\n const renderPagination = (variant: PaginationVariant, isCompact: boolean, isSticky: boolean, isStatic: boolean) => (\n <Pagination\n id={`datalist-${variant}-pagination`}\n variant={variant}\n itemCount={rows.length}\n page={page}\n perPage={perPage}\n isCompact={isCompact}\n isSticky={isSticky}\n isStatic={isStatic}\n onSetPage={handleSetPage}\n onPerPageSelect={handlePerPageSelect}\n titles={{\n paginationAriaLabel: `${variant} pagination`\n }}\n />\n );\n\n const toolbarItems = (\n <Fragment>\n <ToolbarItem>\n <MenuToggle\n aria-label=\"Select data list items\"\n splitButtonItems={[\n <MenuToggleCheckbox\n id=\"split-dropdown-checkbox\"\n key=\"split-dropdown-checkbox\"\n aria-label={'Select all data list items'}\n />\n ]}\n ></MenuToggle>\n </ToolbarItem>\n <ToolbarItem>\n <MenuToggle>Filter by creator name</MenuToggle>\n </ToolbarItem>\n <ToolbarItem>\n <OverflowMenu breakpoint=\"md\">\n <OverflowMenuItem>\n <Button variant=\"primary\">Create instance</Button>\n </OverflowMenuItem>\n <OverflowMenuControl hasAdditionalOptions>\n <MenuToggle aria-label=\"Toolbar kebab overflow menu\" variant=\"plain\">\n <RhUiEllipsisVerticalFillIcon />\n </MenuToggle>\n </OverflowMenuControl>\n </OverflowMenu>\n </ToolbarItem>\n <ToolbarItem variant=\"pagination\" align={{ default: 'alignEnd' }}>\n {renderPagination(PaginationVariant.top, true, false, false)}\n </ToolbarItem>\n </Fragment>\n );\n\n return (\n <DashboardWrapper mainContainerId=\"main-content-datalist-view-pagination\" breadcrumb={null}>\n <PageSection aria-labelledby=\"projects\">\n <Content>\n <Content component=\"h1\" id=\"projects\">\n Projects\n </Content>\n <Content component=\"p\">This is a demo that showcases PatternFly Data List</Content>\n </Content>\n </PageSection>\n <PageSection isFilled>\n <Toolbar id=\"toolbar-group-types\">\n <ToolbarContent>{toolbarItems}</ToolbarContent>\n </Toolbar>\n <DataList aria-label=\"Demo data list\">\n {paginatedRows.map((row, rowIndex) => {\n const { name, threads, applications, workspaces, lastModified } = row;\n return (\n <DataListItem aria-labelledby={`Demo-item-${rowIndex}`} key={rowIndex}>\n <DataListItemRow>\n <DataListItemCells\n dataListCells={[\n <DataListCell isFilled={false} key=\"buttons1\">\n <Flex direction={{ default: 'column' }} spaceItems={{ default: 'spaceItemsMd' }}>\n <Flex direction={{ default: 'column' }} spaceItems={{ default: 'spaceItemsNone' }}>\n <FlexItem>\n <Content id={`Demo-item-${rowIndex}`} component={ContentVariants.p}>\n {name}\n </Content>\n </FlexItem>\n <FlexItem>\n <Content component={ContentVariants.small}>\n Working repo for\n <a href=\"http://www.patternfly.org/\">PatternFly</a>\n </Content>\n </FlexItem>\n </Flex>\n <Flex flexWrap={{ default: 'wrap' }}>\n <Flex spaceItems={{ default: 'spaceItemsSm' }}>\n <FlexItem>\n <Icon>\n <RhUiBranchFillIcon />\n </Icon>{' '}\n {threads}\n <span className=\"pf-v6-screen-reader\">Branches</span>\n </FlexItem>\n </Flex>\n <Flex spaceItems={{ default: 'spaceItemsSm' }}>\n <FlexItem>\n <Icon>\n <RhUiCodeIcon />\n </Icon>{' '}\n {applications}\n <span className=\"pf-v6-screen-reader\">Code blocks</span>\n </FlexItem>\n </Flex>\n <Flex spaceItems={{ default: 'spaceItemsSm' }}>\n <FlexItem>\n <Icon>\n <CubeIcon />\n </Icon>{' '}\n {workspaces}\n <span className=\"pf-v6-screen-reader\">Workspaces</span>\n </FlexItem>\n </Flex>\n <FlexItem> Updated {lastModified}</FlexItem>\n </Flex>\n </Flex>\n </DataListCell>,\n <DataListCell isFilled={false} alignRight key=\"secondary content align\">\n <Flex>\n <FlexItem>\n <Button variant=\"secondary\">Action</Button>\n </FlexItem>\n <FlexItem>\n <a href=\"#\">Link</a>\n </FlexItem>\n </Flex>\n </DataListCell>\n ]}\n />\n </DataListItemRow>\n </DataListItem>\n );\n })}\n </DataList>\n {renderPagination(PaginationVariant.bottom, false, false, true)}\n </PageSection>\n </DashboardWrapper>\n );\n};\n","title":"Static bottom pagination","lang":"ts","isFullscreen":true,"className":""}}>
72
+
73
+ </Example>
74
+ };
75
+
76
+ const Component = () => (
77
+ <React.Fragment>
78
+ <AutoLinkHeader {...{"id":"demos","headingLevel":"h2","className":"ws-title ws-h2"}}>
79
+ {`Demos`}
80
+ </AutoLinkHeader>
81
+ {React.createElement(pageData.examples["Basic"])}
82
+ {React.createElement(pageData.examples["Expandable control in toolbar"])}
83
+ {React.createElement(pageData.examples["Actionable"])}
84
+ {React.createElement(pageData.examples["Static bottom pagination"])}
85
+ </React.Fragment>
86
+ );
87
+ Component.displayName = 'ComponentsDataListReactDemosDocs';
88
+ Component.pageData = pageData;
89
+
90
+ export default Component;