@czi-sds/mcp 0.3.0 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/data/component-props/Accordion.json +14 -15
- package/data/component-props/Alert.json +2 -44
- package/data/component-props/Autocomplete.json +14 -32
- package/data/component-props/Banner.json +11 -12
- package/data/component-props/Button.json +17 -82
- package/data/component-props/ButtonDropdown.json +26 -0
- package/data/component-props/ButtonIcon.json +4 -60
- package/data/component-props/ButtonToggle.json +2 -66
- package/data/component-props/Callout.json +11 -65
- package/data/component-props/CellBasic.json +28 -56
- package/data/component-props/CellComponent.json +4 -32
- package/data/component-props/CellHeader.json +13 -49
- package/data/component-props/ComplexFilter.json +24 -4
- package/data/component-props/ContentCard.json +66 -2
- package/data/component-props/Dialog.json +26 -0
- package/data/component-props/Dropdown.json +29 -67
- package/data/component-props/DropdownMenu.json +16 -56
- package/data/component-props/HeatmapChart.json +6 -87
- package/data/component-props/Icon.json +3 -8
- package/data/component-props/InputCheckbox.json +5 -53
- package/data/component-props/InputDropdown.json +11 -33
- package/data/component-props/InputRadio.json +5 -53
- package/data/component-props/InputSearch.json +6 -70
- package/data/component-props/InputSlider.json +21 -35
- package/data/component-props/InputText.json +7 -63
- package/data/component-props/InputToggle.json +5 -54
- package/data/component-props/Link.json +18 -0
- package/data/component-props/LoadingIndicator.json +1 -2
- package/data/component-props/MenuItem.json +11 -41
- package/data/component-props/MenuSelect.json +4 -67
- package/data/component-props/NavigationFooter.json +0 -8
- package/data/component-props/NavigationHeader.json +14 -65
- package/data/component-props/NavigationJumpTo.json +0 -40
- package/data/component-props/Notification.json +14 -58
- package/data/component-props/Pagination.json +8 -33
- package/data/component-props/Panel.json +4 -54
- package/data/component-props/SegmentedControl.json +0 -55
- package/data/component-props/TableRow.json +10 -38
- package/data/component-props/Tabs.json +18 -0
- package/data/component-props/Tag.json +10 -56
- package/data/component-props/TagFilter.json +0 -47
- package/data/component-props/Tooltip.json +12 -61
- package/data/component-props/TooltipCondensed.json +18 -0
- package/data/component-props/TooltipTable.json +0 -4
- package/data/zeroheight-exports/Accordion.md +167 -125
- package/data/zeroheight-exports/Banner.md +71 -48
- package/data/zeroheight-exports/Borders.md +72 -73
- package/data/zeroheight-exports/Buttons.md +375 -330
- package/data/zeroheight-exports/Callout.md +138 -116
- package/data/zeroheight-exports/Colors.md +254 -255
- package/data/zeroheight-exports/Content-Card.md +36 -37
- package/data/zeroheight-exports/Contributing-to-SDS.md +34 -35
- package/data/zeroheight-exports/Control-Inputs.md +289 -234
- package/data/zeroheight-exports/Corners.md +63 -64
- package/data/zeroheight-exports/Cover-page.md +0 -1
- package/data/zeroheight-exports/Dialog.md +237 -179
- package/data/zeroheight-exports/Downloads.md +10 -11
- package/data/zeroheight-exports/Drop-Shadows.md +40 -41
- package/data/zeroheight-exports/Dropdown-Input.md +158 -127
- package/data/zeroheight-exports/Dropdown-Menu.md +814 -718
- package/data/zeroheight-exports/Element-Status-Tracker.md +191 -192
- package/data/zeroheight-exports/Field-Inputs.md +149 -130
- package/data/zeroheight-exports/Filters.md +114 -94
- package/data/zeroheight-exports/Getting-Started.md +112 -249
- package/data/zeroheight-exports/Hero.md +43 -37
- package/data/zeroheight-exports/Icons.md +205 -206
- package/data/zeroheight-exports/Intent.md +6 -7
- package/data/zeroheight-exports/Introduction-to-Bases.md +8 -9
- package/data/zeroheight-exports/Introduction-to-Cells.md +11 -12
- package/data/zeroheight-exports/Introduction-to-DNA.md +8 -9
- package/data/zeroheight-exports/Introduction-to-Genes.md +8 -9
- package/data/zeroheight-exports/Introduction.md +52 -53
- package/data/zeroheight-exports/Link.md +50 -37
- package/data/zeroheight-exports/Lists.md +78 -63
- package/data/zeroheight-exports/Loading-Indicator.md +7 -8
- package/data/zeroheight-exports/Navigation.md +163 -142
- package/data/zeroheight-exports/Notification.md +132 -102
- package/data/zeroheight-exports/Panel.md +231 -115
- package/data/zeroheight-exports/Responsive-Design.md +35 -32
- package/data/zeroheight-exports/Search-Input.md +9 -10
- package/data/zeroheight-exports/Search.md +87 -104
- package/data/zeroheight-exports/Segmented-Control.md +68 -45
- package/data/zeroheight-exports/Spacing.md +210 -211
- package/data/zeroheight-exports/Table.md +414 -302
- package/data/zeroheight-exports/Tabs.md +126 -98
- package/data/zeroheight-exports/Tags.md +148 -118
- package/data/zeroheight-exports/Text-Link.md +32 -33
- package/data/zeroheight-exports/Theming.md +48 -29
- package/data/zeroheight-exports/Tooltips.md +253 -237
- package/data/zeroheight-exports/Typography.md +463 -464
- package/dist/stdio.js +44 -132
- package/package.json +3 -4
- package/data/component-props/Chip.json +0 -73
- package/data/component-props/List.json +0 -43
- package/data/component-props/Menu.json +0 -48
- package/data/component-props/Table.json +0 -26
- package/data/component-props-storybook/Accordion-storybook.json +0 -45
- package/data/component-props-storybook/Alert-storybook.json +0 -30
- package/data/component-props-storybook/Autocomplete-storybook.json +0 -67
- package/data/component-props-storybook/Banner-storybook.json +0 -78
- package/data/component-props-storybook/Button-storybook.json +0 -115
- package/data/component-props-storybook/ButtonDropdown-storybook.json +0 -73
- package/data/component-props-storybook/ButtonIcon-storybook.json +0 -60
- package/data/component-props-storybook/ButtonToggle-storybook.json +0 -68
- package/data/component-props-storybook/Callout-storybook.json +0 -90
- package/data/component-props-storybook/CellBasic-storybook.json +0 -138
- package/data/component-props-storybook/CellComponent-storybook.json +0 -48
- package/data/component-props-storybook/CellHeader-storybook.json +0 -71
- package/data/component-props-storybook/Chip-storybook.json +0 -26
- package/data/component-props-storybook/ComplexFilter-storybook.json +0 -60
- package/data/component-props-storybook/ContentCard-storybook.json +0 -175
- package/data/component-props-storybook/Dialog-storybook.json +0 -56
- package/data/component-props-storybook/Dropdown-storybook.json +0 -93
- package/data/component-props-storybook/DropdownMenu-storybook.json +0 -73
- package/data/component-props-storybook/HeatmapChart-storybook.json +0 -55
- package/data/component-props-storybook/Icon-storybook.json +0 -75
- package/data/component-props-storybook/InputCheckbox-storybook.json +0 -57
- package/data/component-props-storybook/InputDropdown-storybook.json +0 -80
- package/data/component-props-storybook/InputRadio-storybook.json +0 -56
- package/data/component-props-storybook/InputSearch-storybook.json +0 -55
- package/data/component-props-storybook/InputSlider-storybook.json +0 -55
- package/data/component-props-storybook/InputText-storybook.json +0 -59
- package/data/component-props-storybook/InputToggle-storybook.json +0 -42
- package/data/component-props-storybook/Link-storybook.json +0 -50
- package/data/component-props-storybook/List-storybook.json +0 -26
- package/data/component-props-storybook/LoadingIndicator-storybook.json +0 -34
- package/data/component-props-storybook/Menu-storybook.json +0 -26
- package/data/component-props-storybook/MenuItem-storybook.json +0 -74
- package/data/component-props-storybook/MenuSelect-storybook.json +0 -38
- package/data/component-props-storybook/NavigationFooter-storybook.json +0 -67
- package/data/component-props-storybook/NavigationHeader-storybook.json +0 -115
- package/data/component-props-storybook/NavigationJumpTo-storybook.json +0 -41
- package/data/component-props-storybook/Notification-storybook.json +0 -89
- package/data/component-props-storybook/Pagination-storybook.json +0 -50
- package/data/component-props-storybook/Panel-storybook.json +0 -52
- package/data/component-props-storybook/SegmentedControl-storybook.json +0 -30
- package/data/component-props-storybook/Table-storybook.json +0 -26
- package/data/component-props-storybook/TableHeader-storybook.json +0 -26
- package/data/component-props-storybook/TableRow-storybook.json +0 -62
- package/data/component-props-storybook/Tabs-storybook.json +0 -45
- package/data/component-props-storybook/Tag-storybook.json +0 -78
- package/data/component-props-storybook/TagFilter-storybook.json +0 -30
- package/data/component-props-storybook/Tooltip-storybook.json +0 -85
- package/data/component-props-storybook/TooltipCondensed-storybook.json +0 -38
- package/data/component-props-storybook/TooltipTable-storybook.json +0 -47
|
@@ -6,27 +6,27 @@ Panels are elements that contain supplementary information or actions for the pa
|
|
|
6
6
|
|
|
7
7
|
## Basic Panel
|
|
8
8
|
|
|
9
|
-
|
|
|
10
|
-
| --- |
|
|
9
|
+
| | In Figma | | | Meets Accessibility | | | In CZ GEN EPI Codebase |
|
|
10
|
+
| --- | -------- | --- | --- | ------------------- | --- | --- | ---------------------- |
|
|
11
11
|
|
|
12
|
-
Panels are comprised of containers within which other elements are placed. Use the Basic Panel when the elements contained within it are able to functionally adjust the content on the page next to it. In CZ GEN EPI's case, the Basic Panel is positioned on the left-hand side of the screen and contains Filters.
|
|
12
|
+
Panels are comprised of containers within which other elements are placed. Use the Basic Panel when the elements contained within it are able to functionally adjust the content on the page next to it. In CZ GEN EPI's case, the Basic Panel is positioned on the left-hand side of the screen and contains Filters.
|
|
13
13
|
|
|
14
14
|
### Basic Panel Example
|
|
15
15
|
|
|
16
16
|
The example below shows where in CZ GEN EPI the Basic Panel is used.
|
|
17
17
|
|
|
18
|
-
|
|
18
|
+
|
|
19
19
|
|
|
20
20
|
## Code
|
|
21
21
|
|
|
22
22
|
## Panel Components
|
|
23
23
|
|
|
24
|
-
| Below you will find an interactive Storybook iframe for Panels.
|
|
25
|
-
|
|
|
24
|
+
| Below you will find an interactive Storybook iframe for Panels. Tabs within each iframe provide a different set of tools: The Controls tab allows you to see and adjust all available props. The Actions tab shows you data displayed by event handler arguments. | | **Jump to component:** PanelBasic |
|
|
25
|
+
| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --- | --------------------------------- |
|
|
26
26
|
|
|
27
27
|
---
|
|
28
28
|
|
|
29
|
-
>This component appears as it is in the default SDS codebase. Once imported into the CZ GEN EPI codebase, use a theme file to enable the CZ GEN EPI visual appearance customization.
|
|
29
|
+
> This component appears as it is in the default SDS codebase. Once imported into the CZ GEN EPI codebase, use a theme file to enable the CZ GEN EPI visual appearance customization.
|
|
30
30
|
|
|
31
31
|
### PanelBasic (coming soon)
|
|
32
32
|
|
|
@@ -38,15 +38,15 @@ Panels are elements that contain supplementary information or actions for the pa
|
|
|
38
38
|
|
|
39
39
|
## Panel Variants
|
|
40
40
|
|
|
41
|
-
| Panels are comprised of containers within which other elements are placed. They come in two different variants for designers to use depending on the type of content and elements contained within them. These variants also establish how the Panel functions and appears on the page, whether within the flow of the page's content or outside of it, on top of other elements.
|
|
42
|
-
|
|
|
41
|
+
| Panels are comprised of containers within which other elements are placed. They come in two different variants for designers to use depending on the type of content and elements contained within them. These variants also establish how the Panel functions and appears on the page, whether within the flow of the page's content or outside of it, on top of other elements. Follow the usage criteria accompanying each variant as a guide for selecting the correct Panel for any given use case. | | **Jump to variant:** Basic Overlay |
|
|
42
|
+
| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --- | ---------------------------------- |
|
|
43
43
|
|
|
44
44
|
---
|
|
45
45
|
|
|
46
46
|
## Basic Panel
|
|
47
47
|
|
|
48
|
-
|
|
|
49
|
-
| --- |
|
|
48
|
+
| | In Figma | | | Meets Accessibility | | | In CZ ID Codebase |
|
|
49
|
+
| --- | -------- | --- | --- | ------------------- | --- | --- | ----------------- |
|
|
50
50
|
|
|
51
51
|
### Basic Panel
|
|
52
52
|
|
|
@@ -66,8 +66,8 @@ The examples below show where in CZ ID the Basic Panel is currently being used.
|
|
|
66
66
|
|
|
67
67
|
## Overlay Panel
|
|
68
68
|
|
|
69
|
-
|
|
|
70
|
-
| --- |
|
|
69
|
+
| | In Figma | | | Meets Accessibility | | | In CZ ID Codebase |
|
|
70
|
+
| --- | -------- | --- | --- | ------------------- | --- | --- | ----------------- |
|
|
71
71
|
|
|
72
72
|
### Overlay Panel
|
|
73
73
|
|
|
@@ -77,7 +77,7 @@ Overlay Panels can be positioned on the bottom or right side of the screen using
|
|
|
77
77
|
|
|
78
78
|
Although Overlay Panels can be designed to contain a wide range of elements, there are a few common configurations used within the products today that have been turned into templates: Sample Details, Taxon Details, Genes Details, and Pipeline Information (templates coming soon).
|
|
79
79
|
|
|
80
|
-
|
|
80
|
+
|
|
81
81
|
|
|
82
82
|
### Overlay Panel Examples
|
|
83
83
|
|
|
@@ -89,20 +89,20 @@ The examples below show where in CZ ID the Overlay Panel is currently being used
|
|
|
89
89
|
|
|
90
90
|
## Panel Components
|
|
91
91
|
|
|
92
|
-
| Below you will find an interactive Storybook iframe for Panels.
|
|
93
|
-
|
|
|
92
|
+
| Below you will find an interactive Storybook iframe for Panels. Tabs within each iframe provide a different set of tools: The Controls tab allows you to see and adjust all available props. The Actions tab shows you data displayed by event handler arguments. | | **Jump to component:** PanelBasic PanelOverlay |
|
|
93
|
+
| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --- | ---------------------------------------------- |
|
|
94
94
|
|
|
95
95
|
---
|
|
96
96
|
|
|
97
97
|
### PanelBasic (coming soon)
|
|
98
98
|
|
|
99
|
-
|
|
99
|
+
|
|
100
100
|
|
|
101
101
|
---
|
|
102
102
|
|
|
103
103
|
### PanelOverlay (coming soon)
|
|
104
104
|
|
|
105
|
-
|
|
105
|
+
|
|
106
106
|
|
|
107
107
|
---
|
|
108
108
|
|
|
@@ -112,15 +112,15 @@ Panels are elements that contain supplementary information or actions for the pa
|
|
|
112
112
|
|
|
113
113
|
## Panel Components
|
|
114
114
|
|
|
115
|
-
| Panels contain containers within which other elements are placed. They come in two different variants depending on the type of content and elements contained within them and their functionality, whether appearing on the page, within the flow of the page's content or outside of it, on top of other elements. |
|
|
116
|
-
|
|
|
115
|
+
| Panels contain containers within which other elements are placed. They come in two different variants depending on the type of content and elements contained within them and their functionality, whether appearing on the page, within the flow of the page's content or outside of it, on top of other elements. | | **Jump to variant:** Basic Overlay |
|
|
116
|
+
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --- | ---------------------------------- |
|
|
117
117
|
|
|
118
118
|
---
|
|
119
119
|
|
|
120
120
|
## Panel – Basic
|
|
121
121
|
|
|
122
|
-
|
|
|
123
|
-
| --- |
|
|
122
|
+
| | In Figma | | | Meets Accessibility | | | In Code |
|
|
123
|
+
| --- | -------- | --- | --- | ------------------- | --- | --- | ------- |
|
|
124
124
|
|
|
125
125
|
### Panel – Basic Anatomy
|
|
126
126
|
|
|
@@ -133,7 +133,7 @@ Use Panel – Basic when the elements contained within it are able to make adjus
|
|
|
133
133
|
Panel – Basic can be positioned on the left or right side of the screen. Both sides can be open at the same time.
|
|
134
134
|
|
|
135
135
|
| Left | Right |
|
|
136
|
-
|
|
|
136
|
+
| :--: | :---: |
|
|
137
137
|
|
|
138
138
|
---
|
|
139
139
|
|
|
@@ -145,8 +145,8 @@ These rules establish how much margin should exist to the left or right of an op
|
|
|
145
145
|
|
|
146
146
|
## Panel – Overlay
|
|
147
147
|
|
|
148
|
-
|
|
|
149
|
-
| --- |
|
|
148
|
+
| | In Figma | | | Meets Accessibility | | | In Code |
|
|
149
|
+
| --- | -------- | --- | --- | ------------------- | --- | --- | ------- |
|
|
150
150
|
|
|
151
151
|
### Panel – Overlay Anatomy
|
|
152
152
|
|
|
@@ -159,11 +159,11 @@ Use Panel – Overlay when needing to display supplementary information about a
|
|
|
159
159
|
Panel – Overlay can be positioned on the bottom, left, or right side of the screen; use the bottom-positioned Panel – Overlay when the content contained on it is wider than it is tall. A page can contain as many Panel - Overlays per page as needed, but only one can be open at a time. If one is currently open and another is triggered to open, the currently opened Panel – Overlay will close before the newly triggered one opens.
|
|
160
160
|
|
|
161
161
|
| Bottom | Left | Right |
|
|
162
|
-
|
|
|
162
|
+
| :----: | :--: | :---: |
|
|
163
163
|
|
|
164
164
|
## Code
|
|
165
165
|
|
|
166
|
-
|
|
166
|
+
> **Note:** The code examples below must install dependencies before displaying and may take extra time to load
|
|
167
167
|
|
|
168
168
|
## Panel
|
|
169
169
|
|
|
@@ -175,16 +175,16 @@ The component's source code in the SDS codebase can be found here.
|
|
|
175
175
|
|
|
176
176
|
The SDS `Panel` component is built upon the MUI `Drawer` component, but with several key differences:
|
|
177
177
|
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
178
|
+
- **Variant vs sdsType:** In MUI’s Drawer, the `variant` prop determines the type of drawer (e.g., persistent, temporary). However, in SDS’s Panel, this is replaced by the `sdsType` prop, which takes two values: `"basic"` and `"overlay"`.
|
|
179
|
+
- `"basic"` corresponds to MUI’s persistent drawer.
|
|
180
|
+
- `"overlay"` corresponds to MUI’s temporary drawer.
|
|
181
|
+
- **Position vs Anchor**: Unlike MUI’s Drawer, which uses the `anchor` prop to determine the placement of the drawer (left, right, top, or bottom), the SDS Panel uses a `position` prop.
|
|
182
|
+
- The `"basic"` Panel can only be positioned to the `left` or `right`.
|
|
183
|
+
- The `"overlay"` Panel can be positioned to the `left`, `right`, or `bottom`.
|
|
184
|
+
- **Width Prop:** The SDS Panel allows control over the width of the panel using the width prop.
|
|
185
|
+
- The default width is **240px** for the `"basic"` panel.
|
|
186
|
+
- The default width is **320px** for the `"overlay"` panel.
|
|
187
|
+
- **Custom Header and Close Button Components:** The `"overlay"` Panel in SDS introduces two additional props that are not available in MUI’s Drawer: `headerComponent` and `closeButtonComponent`. These allow for custom components to be rendered in the panel’s header section, providing greater flexibility for design and functionality.
|
|
188
188
|
|
|
189
189
|
### MUI Documentation
|
|
190
190
|
|
|
@@ -194,14 +194,14 @@ Documentation for the underlying MUI component can be found here.
|
|
|
194
194
|
|
|
195
195
|
Any custom SDS props and MUI props required for implementation are found on the table below. See the MUI documentation for additional optional props.
|
|
196
196
|
|
|
197
|
-
| Name
|
|
198
|
-
|
|
|
199
|
-
| `sdsType`
|
|
200
|
-
| `position`
|
|
201
|
-
| `width`
|
|
202
|
-
| `headerComponent`
|
|
203
|
-
| `closeButtonComponent` | `React.ReactNode`
|
|
204
|
-
| `closeButtonOnClick`
|
|
197
|
+
| Name | Type | Default | Description |
|
|
198
|
+
| ---------------------- | ----------------------------------------- | ------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------ |
|
|
199
|
+
| `sdsType` | `"basic"` | `"overlay"` | `"basic"` | `"basic"` corresponds to a persistent drawer, and `"overlay"` corresponds to a temporary drawer. |
|
|
200
|
+
| `position` | `"left"` | `"right"` | `"bottom"` (only for overlay) | `"left"` | Determines the panel’s position. The `"basic"` panel supports only `"left"` and `"right"`, while the `"overlay"` panel also supports `"bottom"`. |
|
|
201
|
+
| `width` | `number` | `string` | `"240px"` (basic) | `"320px"` (overlay) | Specifies the `width` of the panel. |
|
|
202
|
+
| `headerComponent` | `React.ReactNode` | `undefined` | For the `"overlay"` panel only, this prop allows you to pass a custom component to be rendered as the panel’s header. |
|
|
203
|
+
| `closeButtonComponent` | `React.ReactNode` | <Button sdsStyle="icon" sdsType="tertiary" icon="XMark" aria-label="Panel Toggle" /> | For the `"overlay"` panel only, this prop allows you to pass a custom component to be rendered as the close button. |
|
|
204
|
+
| `closeButtonOnClick` | `React.MouseEventHandler<HTMLDivElement>` | `undefined` | For the `"overlay"` panel only, this is the onClick event handler for the close button. |
|
|
205
205
|
|
|
206
206
|
### Code examples
|
|
207
207
|
|
|
@@ -234,13 +234,11 @@ h1 {
|
|
|
234
234
|
|
|
235
235
|
```json
|
|
236
236
|
{
|
|
237
|
-
"include": [
|
|
238
|
-
"./**/*"
|
|
239
|
-
],
|
|
237
|
+
"include": ["./**/*"],
|
|
240
238
|
"compilerOptions": {
|
|
241
239
|
"strict": true,
|
|
242
240
|
"esModuleInterop": true,
|
|
243
|
-
"lib": [
|
|
241
|
+
"lib": ["dom", "es2015"],
|
|
244
242
|
"jsx": "react-jsx"
|
|
245
243
|
}
|
|
246
244
|
}
|
|
@@ -257,13 +255,11 @@ import "./styles.css";
|
|
|
257
255
|
function App() {
|
|
258
256
|
const [open, setOpen] = useState(true);
|
|
259
257
|
|
|
260
|
-
const Main = (
|
|
261
|
-
props: { open: boolean; children?: React.ReactNode }
|
|
262
|
-
) => {
|
|
258
|
+
const Main = (props: { open: boolean; children?: React.ReactNode }) => {
|
|
263
259
|
const { open, children } = props;
|
|
264
|
-
|
|
260
|
+
|
|
265
261
|
const margin = "0 0 0 250px";
|
|
266
|
-
|
|
262
|
+
|
|
267
263
|
return (
|
|
268
264
|
<Box
|
|
269
265
|
sx={{
|
|
@@ -274,7 +270,7 @@ function App() {
|
|
|
274
270
|
</Box>
|
|
275
271
|
);
|
|
276
272
|
};
|
|
277
|
-
|
|
273
|
+
|
|
278
274
|
return (
|
|
279
275
|
<div className="app">
|
|
280
276
|
<Main open={open}>
|
|
@@ -287,11 +283,33 @@ function App() {
|
|
|
287
283
|
>
|
|
288
284
|
Toggle Panel
|
|
289
285
|
</Button>
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
286
|
+
<p>
|
|
287
|
+
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus
|
|
288
|
+
facilisis tortor et pellentesque pulvinar. Ut at convallis ipsum.
|
|
289
|
+
Nullam scelerisque tempor arcu, quis pretium magna semper eu. Nam
|
|
290
|
+
hendrerit lectus in enim scelerisque, sed ornare sapien consequat.
|
|
291
|
+
Proin sed congue quam. Integer consequat elit tristique sodales
|
|
292
|
+
rhoncus. In bibendum dolor sit amet erat porta, nec posuere nibh
|
|
293
|
+
consectetur. Cras scelerisque interdum eros ut porta. Pellentesque
|
|
294
|
+
habitant morbi tristique senectus et netus et malesuada fames ac
|
|
295
|
+
turpis egestas. Ut in lacus et mi efficitur scelerisque. Pellentesque
|
|
296
|
+
congue purus eu feugiat cursus. Phasellus urna massa, sollicitudin id
|
|
297
|
+
elit et, efficitur faucibus nibh.
|
|
298
|
+
</p>
|
|
299
|
+
<p>
|
|
300
|
+
Nam sit amet tortor varius, lacinia velit quis, lacinia metus. Quisque
|
|
301
|
+
dictum, nulla at luctus fringilla, ligula diam fringilla nisl, non
|
|
302
|
+
consequat nulla turpis at ex. Donec hendrerit facilisis nisl at
|
|
303
|
+
fringilla. Pellentesque posuere tortor ac ante luctus, at euismod
|
|
304
|
+
augue vulputate. Vivamus pretium pretium nisi, non convallis nunc
|
|
305
|
+
volutpat ac. Nam finibus justo leo, vel pellentesque velit gravida
|
|
306
|
+
vel. Sed in turpis non sem efficitur eleifend vel ac lacus. Sed
|
|
307
|
+
volutpat feugiat dictum. Pellentesque tristique mollis magna sit amet
|
|
308
|
+
vestibulum. Nulla ac tellus eu orci volutpat congue. In vitae dolor et
|
|
309
|
+
est feugiat fringilla. Sed varius neque nunc, sed pulvinar neque
|
|
310
|
+
lobortis posuere.
|
|
311
|
+
</p>
|
|
312
|
+
<Panel open={open}>[Panel Content]</Panel>
|
|
295
313
|
</Main>
|
|
296
314
|
</div>
|
|
297
315
|
);
|
|
@@ -337,13 +355,12 @@ root.render(
|
|
|
337
355
|
<RootApp />
|
|
338
356
|
</React.StrictMode>
|
|
339
357
|
);
|
|
340
|
-
|
|
341
358
|
```
|
|
342
359
|
|
|
343
360
|
**/public/index.html**
|
|
344
361
|
|
|
345
362
|
```html
|
|
346
|
-
<!
|
|
363
|
+
<!doctype html>
|
|
347
364
|
<html lang="en">
|
|
348
365
|
<head>
|
|
349
366
|
<meta charset="UTF-8" />
|
|
@@ -364,13 +381,24 @@ root.render(
|
|
|
364
381
|
<div id="root"></div>
|
|
365
382
|
</body>
|
|
366
383
|
</html>
|
|
367
|
-
|
|
368
384
|
```
|
|
369
385
|
|
|
370
386
|
**/package.json**
|
|
371
387
|
|
|
372
388
|
```json
|
|
373
|
-
{
|
|
389
|
+
{
|
|
390
|
+
"dependencies": {
|
|
391
|
+
"react": "^18.0.0",
|
|
392
|
+
"react-dom": "^18.0.0",
|
|
393
|
+
"react-scripts": "^4.0.0"
|
|
394
|
+
},
|
|
395
|
+
"devDependencies": {
|
|
396
|
+
"@types/react": "^18.0.0",
|
|
397
|
+
"@types/react-dom": "^18.0.0",
|
|
398
|
+
"typescript": "^4.0.0"
|
|
399
|
+
},
|
|
400
|
+
"main": "/index.tsx"
|
|
401
|
+
}
|
|
374
402
|
```
|
|
375
403
|
|
|
376
404
|
---
|
|
@@ -404,13 +432,11 @@ h1 {
|
|
|
404
432
|
|
|
405
433
|
```json
|
|
406
434
|
{
|
|
407
|
-
"include": [
|
|
408
|
-
"./**/*"
|
|
409
|
-
],
|
|
435
|
+
"include": ["./**/*"],
|
|
410
436
|
"compilerOptions": {
|
|
411
437
|
"strict": true,
|
|
412
438
|
"esModuleInterop": true,
|
|
413
|
-
"lib": [
|
|
439
|
+
"lib": ["dom", "es2015"],
|
|
414
440
|
"jsx": "react-jsx"
|
|
415
441
|
}
|
|
416
442
|
}
|
|
@@ -426,7 +452,7 @@ import "./styles.css";
|
|
|
426
452
|
|
|
427
453
|
function App() {
|
|
428
454
|
const [open, setOpen] = useState(true);
|
|
429
|
-
|
|
455
|
+
|
|
430
456
|
return (
|
|
431
457
|
<div className="app">
|
|
432
458
|
<Button
|
|
@@ -438,9 +464,36 @@ function App() {
|
|
|
438
464
|
>
|
|
439
465
|
Toggle Panel
|
|
440
466
|
</Button>
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
467
|
+
<p>
|
|
468
|
+
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus
|
|
469
|
+
facilisis tortor et pellentesque pulvinar. Ut at convallis ipsum. Nullam
|
|
470
|
+
scelerisque tempor arcu, quis pretium magna semper eu. Nam hendrerit
|
|
471
|
+
lectus in enim scelerisque, sed ornare sapien consequat. Proin sed
|
|
472
|
+
congue quam. Integer consequat elit tristique sodales rhoncus. In
|
|
473
|
+
bibendum dolor sit amet erat porta, nec posuere nibh consectetur. Cras
|
|
474
|
+
scelerisque interdum eros ut porta. Pellentesque habitant morbi
|
|
475
|
+
tristique senectus et netus et malesuada fames ac turpis egestas. Ut in
|
|
476
|
+
lacus et mi efficitur scelerisque. Pellentesque congue purus eu feugiat
|
|
477
|
+
cursus. Phasellus urna massa, sollicitudin id elit et, efficitur
|
|
478
|
+
faucibus nibh.
|
|
479
|
+
</p>
|
|
480
|
+
<p>
|
|
481
|
+
Nam sit amet tortor varius, lacinia velit quis, lacinia metus. Quisque
|
|
482
|
+
dictum, nulla at luctus fringilla, ligula diam fringilla nisl, non
|
|
483
|
+
consequat nulla turpis at ex. Donec hendrerit facilisis nisl at
|
|
484
|
+
fringilla. Pellentesque posuere tortor ac ante luctus, at euismod augue
|
|
485
|
+
vulputate. Vivamus pretium pretium nisi, non convallis nunc volutpat ac.
|
|
486
|
+
Nam finibus justo leo, vel pellentesque velit gravida vel. Sed in turpis
|
|
487
|
+
non sem efficitur eleifend vel ac lacus. Sed volutpat feugiat dictum.
|
|
488
|
+
Pellentesque tristique mollis magna sit amet vestibulum. Nulla ac tellus
|
|
489
|
+
eu orci volutpat congue. In vitae dolor et est feugiat fringilla. Sed
|
|
490
|
+
varius neque nunc, sed pulvinar neque lobortis posuere.
|
|
491
|
+
</p>
|
|
492
|
+
<Panel
|
|
493
|
+
open={open}
|
|
494
|
+
sdsType="overlay"
|
|
495
|
+
closeButtonOnClick={() => setOpen(false)}
|
|
496
|
+
>
|
|
444
497
|
[Panel Content]
|
|
445
498
|
</Panel>
|
|
446
499
|
</div>
|
|
@@ -487,13 +540,12 @@ root.render(
|
|
|
487
540
|
<RootApp />
|
|
488
541
|
</React.StrictMode>
|
|
489
542
|
);
|
|
490
|
-
|
|
491
543
|
```
|
|
492
544
|
|
|
493
545
|
**/public/index.html**
|
|
494
546
|
|
|
495
547
|
```html
|
|
496
|
-
<!
|
|
548
|
+
<!doctype html>
|
|
497
549
|
<html lang="en">
|
|
498
550
|
<head>
|
|
499
551
|
<meta charset="UTF-8" />
|
|
@@ -514,13 +566,24 @@ root.render(
|
|
|
514
566
|
<div id="root"></div>
|
|
515
567
|
</body>
|
|
516
568
|
</html>
|
|
517
|
-
|
|
518
569
|
```
|
|
519
570
|
|
|
520
571
|
**/package.json**
|
|
521
572
|
|
|
522
573
|
```json
|
|
523
|
-
{
|
|
574
|
+
{
|
|
575
|
+
"dependencies": {
|
|
576
|
+
"react": "^18.0.0",
|
|
577
|
+
"react-dom": "^18.0.0",
|
|
578
|
+
"react-scripts": "^4.0.0"
|
|
579
|
+
},
|
|
580
|
+
"devDependencies": {
|
|
581
|
+
"@types/react": "^18.0.0",
|
|
582
|
+
"@types/react-dom": "^18.0.0",
|
|
583
|
+
"typescript": "^4.0.0"
|
|
584
|
+
},
|
|
585
|
+
"main": "/index.tsx"
|
|
586
|
+
}
|
|
524
587
|
```
|
|
525
588
|
|
|
526
589
|
---
|
|
@@ -554,13 +617,11 @@ h1 {
|
|
|
554
617
|
|
|
555
618
|
```json
|
|
556
619
|
{
|
|
557
|
-
"include": [
|
|
558
|
-
"./**/*"
|
|
559
|
-
],
|
|
620
|
+
"include": ["./**/*"],
|
|
560
621
|
"compilerOptions": {
|
|
561
622
|
"strict": true,
|
|
562
623
|
"esModuleInterop": true,
|
|
563
|
-
"lib": [
|
|
624
|
+
"lib": ["dom", "es2015"],
|
|
564
625
|
"jsx": "react-jsx"
|
|
565
626
|
}
|
|
566
627
|
}
|
|
@@ -577,12 +638,8 @@ import "./styles.css";
|
|
|
577
638
|
function App() {
|
|
578
639
|
const [open, setOpen] = useState(true);
|
|
579
640
|
|
|
580
|
-
const HeaderComponent =
|
|
581
|
-
|
|
582
|
-
Panel Header
|
|
583
|
-
</Typography>
|
|
584
|
-
);
|
|
585
|
-
|
|
641
|
+
const HeaderComponent = <Typography variant="h2">Panel Header</Typography>;
|
|
642
|
+
|
|
586
643
|
return (
|
|
587
644
|
<div className="app">
|
|
588
645
|
<Button
|
|
@@ -594,11 +651,34 @@ function App() {
|
|
|
594
651
|
>
|
|
595
652
|
Toggle Panel
|
|
596
653
|
</Button>
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
654
|
+
<p>
|
|
655
|
+
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus
|
|
656
|
+
facilisis tortor et pellentesque pulvinar. Ut at convallis ipsum. Nullam
|
|
657
|
+
scelerisque tempor arcu, quis pretium magna semper eu. Nam hendrerit
|
|
658
|
+
lectus in enim scelerisque, sed ornare sapien consequat. Proin sed
|
|
659
|
+
congue quam. Integer consequat elit tristique sodales rhoncus. In
|
|
660
|
+
bibendum dolor sit amet erat porta, nec posuere nibh consectetur. Cras
|
|
661
|
+
scelerisque interdum eros ut porta. Pellentesque habitant morbi
|
|
662
|
+
tristique senectus et netus et malesuada fames ac turpis egestas. Ut in
|
|
663
|
+
lacus et mi efficitur scelerisque. Pellentesque congue purus eu feugiat
|
|
664
|
+
cursus. Phasellus urna massa, sollicitudin id elit et, efficitur
|
|
665
|
+
faucibus nibh.
|
|
666
|
+
</p>
|
|
667
|
+
<p>
|
|
668
|
+
Nam sit amet tortor varius, lacinia velit quis, lacinia metus. Quisque
|
|
669
|
+
dictum, nulla at luctus fringilla, ligula diam fringilla nisl, non
|
|
670
|
+
consequat nulla turpis at ex. Donec hendrerit facilisis nisl at
|
|
671
|
+
fringilla. Pellentesque posuere tortor ac ante luctus, at euismod augue
|
|
672
|
+
vulputate. Vivamus pretium pretium nisi, non convallis nunc volutpat ac.
|
|
673
|
+
Nam finibus justo leo, vel pellentesque velit gravida vel. Sed in turpis
|
|
674
|
+
non sem efficitur eleifend vel ac lacus. Sed volutpat feugiat dictum.
|
|
675
|
+
Pellentesque tristique mollis magna sit amet vestibulum. Nulla ac tellus
|
|
676
|
+
eu orci volutpat congue. In vitae dolor et est feugiat fringilla. Sed
|
|
677
|
+
varius neque nunc, sed pulvinar neque lobortis posuere.
|
|
678
|
+
</p>
|
|
679
|
+
<Panel
|
|
680
|
+
open={open}
|
|
681
|
+
sdsType="overlay"
|
|
602
682
|
closeButtonOnClick={() => setOpen(false)}
|
|
603
683
|
HeaderComponent={HeaderComponent}
|
|
604
684
|
position="right"
|
|
@@ -649,13 +729,12 @@ root.render(
|
|
|
649
729
|
<RootApp />
|
|
650
730
|
</React.StrictMode>
|
|
651
731
|
);
|
|
652
|
-
|
|
653
732
|
```
|
|
654
733
|
|
|
655
734
|
**/public/index.html**
|
|
656
735
|
|
|
657
736
|
```html
|
|
658
|
-
<!
|
|
737
|
+
<!doctype html>
|
|
659
738
|
<html lang="en">
|
|
660
739
|
<head>
|
|
661
740
|
<meta charset="UTF-8" />
|
|
@@ -676,13 +755,24 @@ root.render(
|
|
|
676
755
|
<div id="root"></div>
|
|
677
756
|
</body>
|
|
678
757
|
</html>
|
|
679
|
-
|
|
680
758
|
```
|
|
681
759
|
|
|
682
760
|
**/package.json**
|
|
683
761
|
|
|
684
762
|
```json
|
|
685
|
-
{
|
|
763
|
+
{
|
|
764
|
+
"dependencies": {
|
|
765
|
+
"react": "^18.0.0",
|
|
766
|
+
"react-dom": "^18.0.0",
|
|
767
|
+
"react-scripts": "^4.0.0"
|
|
768
|
+
},
|
|
769
|
+
"devDependencies": {
|
|
770
|
+
"@types/react": "^18.0.0",
|
|
771
|
+
"@types/react-dom": "^18.0.0",
|
|
772
|
+
"typescript": "^4.0.0"
|
|
773
|
+
},
|
|
774
|
+
"main": "/index.tsx"
|
|
775
|
+
}
|
|
686
776
|
```
|
|
687
777
|
|
|
688
778
|
---
|
|
@@ -716,13 +806,11 @@ h1 {
|
|
|
716
806
|
|
|
717
807
|
```json
|
|
718
808
|
{
|
|
719
|
-
"include": [
|
|
720
|
-
"./**/*"
|
|
721
|
-
],
|
|
809
|
+
"include": ["./**/*"],
|
|
722
810
|
"compilerOptions": {
|
|
723
811
|
"strict": true,
|
|
724
812
|
"esModuleInterop": true,
|
|
725
|
-
"lib": [
|
|
813
|
+
"lib": ["dom", "es2015"],
|
|
726
814
|
"jsx": "react-jsx"
|
|
727
815
|
}
|
|
728
816
|
}
|
|
@@ -739,11 +827,7 @@ import "./styles.css";
|
|
|
739
827
|
function App() {
|
|
740
828
|
const [open, setOpen] = useState(true);
|
|
741
829
|
|
|
742
|
-
const HeaderComponent =
|
|
743
|
-
<Typography variant="h2">
|
|
744
|
-
Panel Header
|
|
745
|
-
</Typography>
|
|
746
|
-
);
|
|
830
|
+
const HeaderComponent = <Typography variant="h2">Panel Header</Typography>;
|
|
747
831
|
|
|
748
832
|
const CloseButton = (
|
|
749
833
|
<Button
|
|
@@ -754,7 +838,7 @@ function App() {
|
|
|
754
838
|
aria-label="Panel Toggle"
|
|
755
839
|
/>
|
|
756
840
|
);
|
|
757
|
-
|
|
841
|
+
|
|
758
842
|
return (
|
|
759
843
|
<div className="app">
|
|
760
844
|
<Button
|
|
@@ -766,11 +850,34 @@ function App() {
|
|
|
766
850
|
>
|
|
767
851
|
Toggle Panel
|
|
768
852
|
</Button>
|
|
769
|
-
|
|
770
|
-
|
|
771
|
-
|
|
772
|
-
|
|
773
|
-
|
|
853
|
+
<p>
|
|
854
|
+
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus
|
|
855
|
+
facilisis tortor et pellentesque pulvinar. Ut at convallis ipsum. Nullam
|
|
856
|
+
scelerisque tempor arcu, quis pretium magna semper eu. Nam hendrerit
|
|
857
|
+
lectus in enim scelerisque, sed ornare sapien consequat. Proin sed
|
|
858
|
+
congue quam. Integer consequat elit tristique sodales rhoncus. In
|
|
859
|
+
bibendum dolor sit amet erat porta, nec posuere nibh consectetur. Cras
|
|
860
|
+
scelerisque interdum eros ut porta. Pellentesque habitant morbi
|
|
861
|
+
tristique senectus et netus et malesuada fames ac turpis egestas. Ut in
|
|
862
|
+
lacus et mi efficitur scelerisque. Pellentesque congue purus eu feugiat
|
|
863
|
+
cursus. Phasellus urna massa, sollicitudin id elit et, efficitur
|
|
864
|
+
faucibus nibh.
|
|
865
|
+
</p>
|
|
866
|
+
<p>
|
|
867
|
+
Nam sit amet tortor varius, lacinia velit quis, lacinia metus. Quisque
|
|
868
|
+
dictum, nulla at luctus fringilla, ligula diam fringilla nisl, non
|
|
869
|
+
consequat nulla turpis at ex. Donec hendrerit facilisis nisl at
|
|
870
|
+
fringilla. Pellentesque posuere tortor ac ante luctus, at euismod augue
|
|
871
|
+
vulputate. Vivamus pretium pretium nisi, non convallis nunc volutpat ac.
|
|
872
|
+
Nam finibus justo leo, vel pellentesque velit gravida vel. Sed in turpis
|
|
873
|
+
non sem efficitur eleifend vel ac lacus. Sed volutpat feugiat dictum.
|
|
874
|
+
Pellentesque tristique mollis magna sit amet vestibulum. Nulla ac tellus
|
|
875
|
+
eu orci volutpat congue. In vitae dolor et est feugiat fringilla. Sed
|
|
876
|
+
varius neque nunc, sed pulvinar neque lobortis posuere.
|
|
877
|
+
</p>
|
|
878
|
+
<Panel
|
|
879
|
+
open={open}
|
|
880
|
+
sdsType="overlay"
|
|
774
881
|
closeButtonOnClick={() => setOpen(false)}
|
|
775
882
|
HeaderComponent={HeaderComponent}
|
|
776
883
|
CloseButtonComponent={CloseButton}
|
|
@@ -822,13 +929,12 @@ root.render(
|
|
|
822
929
|
<RootApp />
|
|
823
930
|
</React.StrictMode>
|
|
824
931
|
);
|
|
825
|
-
|
|
826
932
|
```
|
|
827
933
|
|
|
828
934
|
**/public/index.html**
|
|
829
935
|
|
|
830
936
|
```html
|
|
831
|
-
<!
|
|
937
|
+
<!doctype html>
|
|
832
938
|
<html lang="en">
|
|
833
939
|
<head>
|
|
834
940
|
<meta charset="UTF-8" />
|
|
@@ -849,14 +955,24 @@ root.render(
|
|
|
849
955
|
<div id="root"></div>
|
|
850
956
|
</body>
|
|
851
957
|
</html>
|
|
852
|
-
|
|
853
958
|
```
|
|
854
959
|
|
|
855
960
|
**/package.json**
|
|
856
961
|
|
|
857
962
|
```json
|
|
858
|
-
{
|
|
963
|
+
{
|
|
964
|
+
"dependencies": {
|
|
965
|
+
"react": "^18.0.0",
|
|
966
|
+
"react-dom": "^18.0.0",
|
|
967
|
+
"react-scripts": "^4.0.0"
|
|
968
|
+
},
|
|
969
|
+
"devDependencies": {
|
|
970
|
+
"@types/react": "^18.0.0",
|
|
971
|
+
"@types/react-dom": "^18.0.0",
|
|
972
|
+
"typescript": "^4.0.0"
|
|
973
|
+
},
|
|
974
|
+
"main": "/index.tsx"
|
|
975
|
+
}
|
|
859
976
|
```
|
|
860
977
|
|
|
861
978
|
---
|
|
862
|
-
|