@navikt/ds-react 6.5.0 → 6.6.1

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 (200) hide show
  1. package/cjs/collapsible/Collapsible.context.d.ts +48 -0
  2. package/cjs/collapsible/Collapsible.context.js +10 -0
  3. package/cjs/collapsible/Collapsible.context.js.map +1 -0
  4. package/cjs/collapsible/Collapsible.d.ts +48 -0
  5. package/cjs/collapsible/Collapsible.js +91 -0
  6. package/cjs/collapsible/Collapsible.js.map +1 -0
  7. package/cjs/collapsible/Collapsible.types.d.ts +19 -0
  8. package/cjs/collapsible/Collapsible.types.js +3 -0
  9. package/cjs/collapsible/Collapsible.types.js.map +1 -0
  10. package/cjs/collapsible/index.d.ts +3 -0
  11. package/cjs/collapsible/index.js +14 -0
  12. package/cjs/collapsible/index.js.map +1 -0
  13. package/cjs/collapsible/parts/Collapsible.Content.d.ts +10 -0
  14. package/cjs/collapsible/parts/Collapsible.Content.js +48 -0
  15. package/cjs/collapsible/parts/Collapsible.Content.js.map +1 -0
  16. package/cjs/collapsible/parts/Collapsible.Trigger.d.ts +10 -0
  17. package/cjs/collapsible/parts/Collapsible.Trigger.js +49 -0
  18. package/cjs/collapsible/parts/Collapsible.Trigger.js.map +1 -0
  19. package/cjs/form/combobox/FilteredOptions/filteredOptionsContext.js +2 -4
  20. package/cjs/form/combobox/FilteredOptions/filteredOptionsContext.js.map +1 -1
  21. package/cjs/form/combobox/Input/Input.js +6 -1
  22. package/cjs/form/combobox/Input/Input.js.map +1 -1
  23. package/cjs/form/form-summary/FormSummary.d.ts +82 -0
  24. package/cjs/form/form-summary/FormSummary.js +81 -0
  25. package/cjs/form/form-summary/FormSummary.js.map +1 -0
  26. package/cjs/form/form-summary/FormSummaryAnswer.d.ts +11 -0
  27. package/cjs/form/form-summary/FormSummaryAnswer.js +25 -0
  28. package/cjs/form/form-summary/FormSummaryAnswer.js.map +1 -0
  29. package/cjs/form/form-summary/FormSummaryAnswers.d.ts +9 -0
  30. package/cjs/form/form-summary/FormSummaryAnswers.js +48 -0
  31. package/cjs/form/form-summary/FormSummaryAnswers.js.map +1 -0
  32. package/cjs/form/form-summary/FormSummaryEditLink.d.ts +17 -0
  33. package/cjs/form/form-summary/FormSummaryEditLink.js +49 -0
  34. package/cjs/form/form-summary/FormSummaryEditLink.js.map +1 -0
  35. package/cjs/form/form-summary/FormSummaryHeader.d.ts +9 -0
  36. package/cjs/form/form-summary/FormSummaryHeader.js +48 -0
  37. package/cjs/form/form-summary/FormSummaryHeader.js.map +1 -0
  38. package/cjs/form/form-summary/FormSummaryHeading.d.ts +14 -0
  39. package/cjs/form/form-summary/FormSummaryHeading.js +31 -0
  40. package/cjs/form/form-summary/FormSummaryHeading.js.map +1 -0
  41. package/cjs/form/form-summary/FormSummaryLabel.d.ts +6 -0
  42. package/cjs/form/form-summary/FormSummaryLabel.js +45 -0
  43. package/cjs/form/form-summary/FormSummaryLabel.js.map +1 -0
  44. package/cjs/form/form-summary/FormSummaryValue.d.ts +6 -0
  45. package/cjs/form/form-summary/FormSummaryValue.js +49 -0
  46. package/cjs/form/form-summary/FormSummaryValue.js.map +1 -0
  47. package/cjs/form/form-summary/index.d.ts +8 -0
  48. package/cjs/form/form-summary/index.js +24 -0
  49. package/cjs/form/form-summary/index.js.map +1 -0
  50. package/cjs/index.d.ts +3 -2
  51. package/cjs/index.js +5 -3
  52. package/cjs/index.js.map +1 -1
  53. package/cjs/layout/stack/Spacer.js +1 -1
  54. package/cjs/layout/stack/Spacer.js.map +1 -1
  55. package/cjs/util/hooks/descendants/descendant.js +10 -1
  56. package/cjs/util/hooks/descendants/descendant.js.map +1 -1
  57. package/cjs/util/hooks/descendants/useDescendant.js +0 -5
  58. package/cjs/util/hooks/descendants/useDescendant.js.map +1 -1
  59. package/esm/collapsible/Collapsible.context.d.ts +48 -0
  60. package/esm/collapsible/Collapsible.context.js +6 -0
  61. package/esm/collapsible/Collapsible.context.js.map +1 -0
  62. package/esm/collapsible/Collapsible.d.ts +48 -0
  63. package/esm/collapsible/Collapsible.js +62 -0
  64. package/esm/collapsible/Collapsible.js.map +1 -0
  65. package/esm/collapsible/Collapsible.types.d.ts +19 -0
  66. package/esm/collapsible/Collapsible.types.js +2 -0
  67. package/esm/collapsible/Collapsible.types.js.map +1 -0
  68. package/esm/collapsible/index.d.ts +3 -0
  69. package/esm/collapsible/index.js +5 -0
  70. package/esm/collapsible/index.js.map +1 -0
  71. package/esm/collapsible/parts/Collapsible.Content.d.ts +10 -0
  72. package/esm/collapsible/parts/Collapsible.Content.js +22 -0
  73. package/esm/collapsible/parts/Collapsible.Content.js.map +1 -0
  74. package/esm/collapsible/parts/Collapsible.Trigger.d.ts +10 -0
  75. package/esm/collapsible/parts/Collapsible.Trigger.js +23 -0
  76. package/esm/collapsible/parts/Collapsible.Trigger.js.map +1 -0
  77. package/esm/form/combobox/FilteredOptions/filteredOptionsContext.js +2 -4
  78. package/esm/form/combobox/FilteredOptions/filteredOptionsContext.js.map +1 -1
  79. package/esm/form/combobox/Input/Input.js +6 -1
  80. package/esm/form/combobox/Input/Input.js.map +1 -1
  81. package/esm/form/form-summary/FormSummary.d.ts +82 -0
  82. package/esm/form/form-summary/FormSummary.js +52 -0
  83. package/esm/form/form-summary/FormSummary.js.map +1 -0
  84. package/esm/form/form-summary/FormSummaryAnswer.d.ts +11 -0
  85. package/esm/form/form-summary/FormSummaryAnswer.js +19 -0
  86. package/esm/form/form-summary/FormSummaryAnswer.js.map +1 -0
  87. package/esm/form/form-summary/FormSummaryAnswers.d.ts +9 -0
  88. package/esm/form/form-summary/FormSummaryAnswers.js +19 -0
  89. package/esm/form/form-summary/FormSummaryAnswers.js.map +1 -0
  90. package/esm/form/form-summary/FormSummaryEditLink.d.ts +17 -0
  91. package/esm/form/form-summary/FormSummaryEditLink.js +20 -0
  92. package/esm/form/form-summary/FormSummaryEditLink.js.map +1 -0
  93. package/esm/form/form-summary/FormSummaryHeader.d.ts +9 -0
  94. package/esm/form/form-summary/FormSummaryHeader.js +19 -0
  95. package/esm/form/form-summary/FormSummaryHeader.js.map +1 -0
  96. package/esm/form/form-summary/FormSummaryHeading.d.ts +14 -0
  97. package/esm/form/form-summary/FormSummaryHeading.js +5 -0
  98. package/esm/form/form-summary/FormSummaryHeading.js.map +1 -0
  99. package/esm/form/form-summary/FormSummaryLabel.d.ts +6 -0
  100. package/esm/form/form-summary/FormSummaryLabel.js +19 -0
  101. package/esm/form/form-summary/FormSummaryLabel.js.map +1 -0
  102. package/esm/form/form-summary/FormSummaryValue.d.ts +6 -0
  103. package/esm/form/form-summary/FormSummaryValue.js +20 -0
  104. package/esm/form/form-summary/FormSummaryValue.js.map +1 -0
  105. package/esm/form/form-summary/index.d.ts +8 -0
  106. package/esm/form/form-summary/index.js +10 -0
  107. package/esm/form/form-summary/index.js.map +1 -0
  108. package/esm/index.d.ts +3 -2
  109. package/esm/index.js +2 -1
  110. package/esm/index.js.map +1 -1
  111. package/esm/layout/stack/Spacer.js +1 -1
  112. package/esm/layout/stack/Spacer.js.map +1 -1
  113. package/esm/util/hooks/descendants/descendant.js +10 -1
  114. package/esm/util/hooks/descendants/descendant.js.map +1 -1
  115. package/esm/util/hooks/descendants/useDescendant.js +0 -5
  116. package/esm/util/hooks/descendants/useDescendant.js.map +1 -1
  117. package/package.json +15 -4
  118. package/src/collapsible/Collapsible.context.tsx +32 -0
  119. package/src/collapsible/Collapsible.tsx +100 -0
  120. package/src/collapsible/Collapsible.types.ts +19 -0
  121. package/src/collapsible/index.ts +10 -0
  122. package/src/collapsible/parts/Collapsible.Content.tsx +39 -0
  123. package/src/collapsible/parts/Collapsible.Trigger.tsx +42 -0
  124. package/src/form/combobox/FilteredOptions/filteredOptionsContext.tsx +9 -1
  125. package/src/form/combobox/Input/Input.tsx +5 -0
  126. package/src/form/form-summary/FormSummary.tsx +106 -0
  127. package/src/form/form-summary/FormSummaryAnswer.tsx +27 -0
  128. package/src/form/form-summary/FormSummaryAnswers.tsx +25 -0
  129. package/src/form/form-summary/FormSummaryEditLink.tsx +35 -0
  130. package/src/form/form-summary/FormSummaryHeader.tsx +25 -0
  131. package/src/form/form-summary/FormSummaryHeading.tsx +23 -0
  132. package/src/form/form-summary/FormSummaryLabel.tsx +17 -0
  133. package/src/form/form-summary/FormSummaryValue.tsx +24 -0
  134. package/src/form/form-summary/index.ts +30 -0
  135. package/src/index.ts +16 -15
  136. package/src/layout/stack/Spacer.tsx +1 -1
  137. package/src/util/hooks/descendants/descendant.ts +15 -1
  138. package/src/util/hooks/descendants/useDescendant.tsx +0 -5
  139. package/src/accordion/accordion.stories.tsx +0 -286
  140. package/src/alert/alert.stories.tsx +0 -306
  141. package/src/button/button.stories.tsx +0 -185
  142. package/src/chat/chat.stories.tsx +0 -341
  143. package/src/chips/chips.stories.tsx +0 -260
  144. package/src/copybutton/copy-button.stories.tsx +0 -261
  145. package/src/date/datepicker/datepicker.stories.tsx +0 -614
  146. package/src/date/monthpicker/monthpicker.stories.tsx +0 -221
  147. package/src/dropdown/dropdown.stories.tsx +0 -124
  148. package/src/expansion-card/expansion-card.stories.tsx +0 -282
  149. package/src/form/checkbox/checkbox.stories.tsx +0 -281
  150. package/src/form/combobox/combobox.stories.tsx +0 -626
  151. package/src/form/confirmation-panel/confirmation-panel.stories.tsx +0 -128
  152. package/src/form/error-summary/error-summary.stories.tsx +0 -81
  153. package/src/form/fieldset/fieldset.stories.tsx +0 -157
  154. package/src/form/file-upload/file-upload-dropzone.stories.tsx +0 -123
  155. package/src/form/file-upload/file-upload-item.stories.tsx +0 -148
  156. package/src/form/file-upload/file-upload.stories.tsx +0 -248
  157. package/src/form/radio/radio.stories.tsx +0 -230
  158. package/src/form/search/search.stories.tsx +0 -238
  159. package/src/form/select/select.stories.tsx +0 -172
  160. package/src/form/switch/switch.stories.tsx +0 -171
  161. package/src/form/textarea/textarea.stories.tsx +0 -254
  162. package/src/form/textfield/text-field.stories.tsx +0 -143
  163. package/src/guide-panel/guidepanel.stories.tsx +0 -90
  164. package/src/help-text/help-text.stories.tsx +0 -91
  165. package/src/internal-header/header.stories.tsx +0 -229
  166. package/src/layout/bleed/Bleed.stories.tsx +0 -395
  167. package/src/layout/box/Box.stories.tsx +0 -380
  168. package/src/layout/grid/h-grid.stories.tsx +0 -122
  169. package/src/layout/page/Page.stories.tsx +0 -271
  170. package/src/layout/responsive/hide.stories.tsx +0 -80
  171. package/src/layout/responsive/show.stories.tsx +0 -80
  172. package/src/layout/sidemal-test/navno-sidemal.stories.tsx +0 -69
  173. package/src/layout/stack/stack.stories.tsx +0 -183
  174. package/src/link/stories/link.stories.tsx +0 -304
  175. package/src/link-panel/link-panel.stories.tsx +0 -59
  176. package/src/list/list.stories.tsx +0 -280
  177. package/src/loader/loader.stories.tsx +0 -82
  178. package/src/modal/modal.stories.tsx +0 -391
  179. package/src/pagination/pagination.stories.tsx +0 -110
  180. package/src/popover/popover.stories.tsx +0 -113
  181. package/src/portal/Portal.stories.tsx +0 -102
  182. package/src/read-more/readmore.stories.tsx +0 -91
  183. package/src/skeleton/skeleton.stories.tsx +0 -130
  184. package/src/stepper/stepper.stories.tsx +0 -200
  185. package/src/table/stories/table-1.stories.tsx +0 -292
  186. package/src/table/stories/table-2-expandable.stories.tsx +0 -298
  187. package/src/table/stories/table-3-async.stories.tsx +0 -179
  188. package/src/table/stories/tests/table.stories.tsx +0 -102
  189. package/src/tabs/Tabs.stories.tsx +0 -311
  190. package/src/tag/tag.stories.tsx +0 -126
  191. package/src/timeline/timeline.stories.tsx +0 -445
  192. package/src/toggle-group/ToggleGroup.stories.tsx +0 -198
  193. package/src/tooltip/tooltip.stories.tsx +0 -101
  194. package/src/typography/stories/bodylong.stories.tsx +0 -209
  195. package/src/typography/stories/bodyshort.stories.tsx +0 -208
  196. package/src/typography/stories/detail.stories.tsx +0 -115
  197. package/src/typography/stories/error-message.stories.tsx +0 -122
  198. package/src/typography/stories/heading.stories.tsx +0 -169
  199. package/src/typography/stories/label.stories.tsx +0 -131
  200. package/src/util/hooks/descendants/descendant.stories.tsx +0 -147
@@ -1,286 +0,0 @@
1
- import { StoryObj } from "@storybook/react";
2
- import React, { useState } from "react";
3
- import { Accordion, AccordionProps } from ".";
4
- import AccordionContent from "./AccordionContent";
5
- import AccordionHeader from "./AccordionHeader";
6
- import AccordionItem from "./AccordionItem";
7
-
8
- export default {
9
- title: "ds-react/Accordion",
10
- component: Accordion,
11
- subcomponents: {
12
- AccordionItem,
13
- AccordionContent,
14
- AccordionHeader,
15
- },
16
- parameters: {
17
- chromatic: { disable: true },
18
- },
19
- decorators: [
20
- (Story) => (
21
- <div
22
- style={{
23
- width: "600px",
24
- minHeight: "100vh",
25
- display: "flex",
26
- flexDirection: "column",
27
- gap: "1rem",
28
- }}
29
- >
30
- <Story />
31
- </div>
32
- ),
33
- ],
34
- };
35
-
36
- type Story = StoryObj<typeof Accordion>;
37
-
38
- const Content = () => (
39
- <Accordion.Content>
40
- Magna aliquip aliquip fugiat nostrud nostrud velit pariatur veniam officia
41
- laboris voluptate officia pariatur. <a href="#Lorem">Lorem est</a> ex anim
42
- velit occaecat nisi qui nostrud sit consectetur consectetur officia nostrud
43
- ullamco. Est ex duis proident nostrud elit qui laborum anim minim eu
44
- eiusmod. Veniam in nostrud sunt tempor velit incididunt sint ex dolor qui
45
- velit id eu. Deserunt magna sunt velit in. Est exercitation id cillum qui
46
- do. Minim adipisicing nostrud commodo proident occaecat aliquip nulla anim
47
- proident reprehenderit. Magna ipsum officia veniam cupidatat duis veniam
48
- dolore reprehenderit mollit velit. Ut consequat commodo minim occaecat id
49
- pariatur. Nisi enim tempor laborum commodo. Tempor sit quis nostrud eu
50
- cupidatat sunt commodo reprehenderit irure deserunt eiusmod ipsum.
51
- Exercitation quis commodo cillum eiusmod eiusmod. Do laborum qui proident
52
- commodo adipisicing eiusmod id.
53
- </Accordion.Content>
54
- );
55
-
56
- const SmallContent = () => (
57
- <Accordion.Content>
58
- Magna aliquip aliquip fugiat nostrud <a href="#Lorem">Lorem est</a> pariatur
59
- veniam officia laboris voluptate officia pariatur.ex anim
60
- </Accordion.Content>
61
- );
62
-
63
- const Item = (props) => {
64
- const [open, setOpen] = useState(false);
65
-
66
- if (props.defaultOpen) {
67
- return (
68
- <Accordion.Item
69
- defaultOpen={props.defaultOpen}
70
- onOpenChange={console.log}
71
- >
72
- <Accordion.Header>Accordion header text</Accordion.Header>
73
- <SmallContent />
74
- </Accordion.Item>
75
- );
76
- }
77
-
78
- return props.controlled ? (
79
- <Accordion.Item open={open} onOpenChange={console.log}>
80
- <Accordion.Header onClick={() => setOpen(!open)}>
81
- Accordion header text
82
- </Accordion.Header>
83
- <Content />
84
- </Accordion.Item>
85
- ) : (
86
- <Accordion.Item onOpenChange={console.log}>
87
- <Accordion.Header>Accordion header text</Accordion.Header>
88
- <Content />
89
- </Accordion.Item>
90
- );
91
- };
92
-
93
- export const Controls: Story = {
94
- render: ({ ...props }) => {
95
- return (
96
- <div style={{ width: 500 }}>
97
- <Accordion {...props}>
98
- {[...Array(4)].map((_, y) => (
99
- <Item key={y} {...props} />
100
- ))}
101
- </Accordion>
102
- </div>
103
- );
104
- },
105
- argTypes: {
106
- variant: {
107
- options: ["default", "neutral"],
108
- control: { type: "select" },
109
- },
110
- headingSize: {
111
- options: ["large", "medium", "small", "xsmall"],
112
- control: { type: "select" },
113
- },
114
- size: {
115
- options: ["large", "medium", "small"],
116
- control: { type: "select" },
117
- },
118
- },
119
-
120
- args: {
121
- variant: "default",
122
- headingSize: "medium",
123
- size: "medium",
124
- indent: true,
125
- },
126
- };
127
-
128
- export const DefaultOpen: Story = {
129
- render: () => {
130
- return (
131
- <div style={{ width: 500 }}>
132
- <Accordion>
133
- {[...Array(4)].map((_, y) => (
134
- <Item key={y} defaultOpen={y === 2} />
135
- ))}
136
- </Accordion>
137
- </div>
138
- );
139
- },
140
- };
141
-
142
- export const Variants: Story = {
143
- render: () => {
144
- return (
145
- <div style={{ width: 500 }} className="colgap">
146
- <h3>Default</h3>
147
- <Accordion>
148
- {[...Array(2)].map((_, y) => (
149
- <Item key={y} defaultOpen />
150
- ))}
151
- </Accordion>
152
- <h3>Neutral</h3>
153
- <Accordion variant="neutral">
154
- {[...Array(2)].map((_, y) => (
155
- <Item key={y} defaultOpen />
156
- ))}
157
- </Accordion>
158
- </div>
159
- );
160
- },
161
- };
162
-
163
- export const ControlledState: Story = {
164
- render: () => {
165
- const [open, setOpen] = useState(false);
166
- const [open2, setOpen2] = useState(false);
167
-
168
- return (
169
- <div style={{ width: 500 }}>
170
- <Accordion>
171
- <Accordion.Item open={open}>
172
- <Accordion.Header onClick={() => setOpen(!open)}>
173
- Accordion header text
174
- </Accordion.Header>
175
- <Content />
176
- </Accordion.Item>
177
- <Accordion.Item open={open2}>
178
- <Accordion.Header onClick={() => setOpen2(!open2)}>
179
- Accordion header text
180
- </Accordion.Header>
181
- <Content />
182
- </Accordion.Item>
183
- </Accordion>
184
- </div>
185
- );
186
- },
187
- };
188
-
189
- const SingleHeaderAccordion = ({
190
- size = "medium",
191
- headingSize = "medium",
192
- }: Partial<AccordionProps>) => {
193
- return (
194
- <Accordion size={size} headingSize={headingSize}>
195
- <Accordion.Item>
196
- <Accordion.Header>{`${size} size + ${headingSize} heading`}</Accordion.Header>
197
- <Accordion.Content>a</Accordion.Content>
198
- </Accordion.Item>
199
- <Accordion.Item open>
200
- <Accordion.Header>{`${size} size + ${headingSize} heading`}</Accordion.Header>
201
- <Accordion.Content>
202
- lorem ipsum dolor sit amet, consectetur adipiscing elit.
203
- </Accordion.Content>
204
- </Accordion.Item>
205
- </Accordion>
206
- );
207
- };
208
-
209
- const sizes: AccordionProps["size"][] = ["large", "medium", "small"];
210
- const headingSizes: AccordionProps["headingSize"][] = [
211
- "large",
212
- "medium",
213
- "small",
214
- "xsmall",
215
- ];
216
-
217
- export const Size: Story = {
218
- render: () => (
219
- <div style={{ width: 500 }} className="colgap">
220
- {sizes.map((size) => (
221
- <SingleHeaderAccordion key={size} size={size} />
222
- ))}
223
- </div>
224
- ),
225
- };
226
-
227
- export const HeadingSize: Story = {
228
- render: () => (
229
- <div style={{ width: 500 }} className="colgap">
230
- {headingSizes.map((size) => (
231
- <SingleHeaderAccordion key={size} headingSize={size} />
232
- ))}
233
- </div>
234
- ),
235
- };
236
-
237
- export const Indent: Story = {
238
- render: () => {
239
- return (
240
- <div style={{ width: 500 }} className="colgap">
241
- <h3>No indent</h3>
242
- <Accordion indent>
243
- {[...Array(2)].map((_, y) => (
244
- <Item key={y} defaultOpen />
245
- ))}
246
- </Accordion>
247
- <h3>Indent</h3>
248
- <Accordion indent={false}>
249
- {[...Array(2)].map((_, y) => (
250
- <Item key={y} defaultOpen />
251
- ))}
252
- </Accordion>
253
- </div>
254
- );
255
- },
256
- };
257
-
258
- export const Chromatic: Story = {
259
- render: (...props) => (
260
- <div>
261
- <div>
262
- <h2>Variants</h2>
263
- {Variants.render?.(...props)}
264
- </div>
265
- <div>
266
- <h2>Size</h2>
267
- {Size.render?.(...props)}
268
- </div>
269
- <div>
270
- <h2>HeadingSize</h2>
271
- {HeadingSize.render?.(...props)}
272
- </div>
273
- <div>
274
- <h2>DefaultOpen</h2>
275
- {DefaultOpen.render?.(...props)}
276
- </div>
277
- <div>
278
- <h2>Indent</h2>
279
- {Indent.render?.(...props)}
280
- </div>
281
- </div>
282
- ),
283
- parameters: {
284
- chromatic: { disable: false },
285
- },
286
- };
@@ -1,306 +0,0 @@
1
- import type { Meta, StoryObj } from "@storybook/react";
2
- import React from "react";
3
- import { VStack } from "../layout/stack";
4
- import { Link } from "../link";
5
- import { BodyLong, Heading as DsHeading } from "../typography";
6
- import Alert, { AlertProps } from "./Alert";
7
-
8
- const meta: Meta<typeof Alert> = {
9
- title: "ds-react/Alert",
10
- component: Alert,
11
- parameters: {
12
- chromatic: { disable: true },
13
- },
14
- };
15
-
16
- export default meta;
17
-
18
- type Story = StoryObj<typeof Alert>;
19
-
20
- const variants: AlertProps["variant"][] = [
21
- "error",
22
- "warning",
23
- "info",
24
- "success",
25
- ];
26
-
27
- export const Controls: Story = {
28
- render: (props) => <Alert {...props} />,
29
-
30
- args: {
31
- children: "Id elit esse enim reprehenderit enim nisi veniam nostrud.",
32
- fullWidth: false,
33
- inline: false,
34
- variant: "info",
35
- size: "medium",
36
- closeButton: false,
37
- },
38
- argTypes: {
39
- variant: {
40
- control: { type: "radio" },
41
- options: ["info", "error", "warning", "success"],
42
- },
43
- size: {
44
- control: { type: "radio" },
45
- options: ["medium", "small"],
46
- },
47
- },
48
- };
49
-
50
- export const Variants = () => {
51
- return (
52
- <div className="colgap">
53
- {variants.map((variant, i) => (
54
- <Alert key={variant} variant={variant}>
55
- {new Array(i + 1).fill(
56
- "Id elit esse enim reprehenderit enim nisi veniam nostrud.",
57
- )}
58
- </Alert>
59
- ))}
60
- {variants.map((variant, i) => (
61
- <Alert key={variant} variant={variant} size="small">
62
- {new Array(i + 1).fill(
63
- "Id elit esse enim reprehenderit enim nisi veniam nostrud.",
64
- )}
65
- </Alert>
66
- ))}
67
- </div>
68
- );
69
- };
70
-
71
- export const FullWidth = () => {
72
- return (
73
- <VStack gap="4">
74
- <Alert variant="info" fullWidth>
75
- Id elit esse enim reprehenderit enim nisi veniam nostrud.
76
- </Alert>
77
- <Alert variant="info" fullWidth size="small">
78
- Id elit esse enim reprehenderit enim nisi veniam nostrud.
79
- </Alert>
80
- </VStack>
81
- );
82
- };
83
-
84
- export const Inline = () => {
85
- return (
86
- <VStack gap="4">
87
- <h2>Inline</h2>
88
- <Alert variant="info" inline>
89
- Id elit esse enim reprehenderit enim nisi veniam nostrud.
90
- </Alert>
91
- <Alert variant="info" inline>
92
- Id elit esse enim reprehenderit enim nisi veniam nostrud. Id elit esse
93
- enim reprehenderit enim nisi veniam nostrud. Id elit esse enim
94
- reprehenderit enim nisi veniam nostrud. Id elit esse enim reprehenderit
95
- enim nisi veniam nostrud.
96
- </Alert>
97
- <Alert variant="info" size="small" inline>
98
- Id elit esse enim reprehenderit enim nisi veniam nostrud.
99
- </Alert>
100
- <Alert variant="info" size="small" inline>
101
- Id elit esse enim reprehenderit enim nisi veniam nostrud. Id elit esse
102
- enim reprehenderit enim nisi veniam nostrud. Id elit esse enim
103
- reprehenderit enim nisi veniam nostrud. Id elit esse enim reprehenderit
104
- enim nisi veniam nostrud.
105
- </Alert>
106
- </VStack>
107
- );
108
- };
109
-
110
- export const Heading = () => {
111
- return (
112
- <div className="colgap">
113
- <Alert variant="info">
114
- <DsHeading spacing size="small" level="3">
115
- Aliquip duis est in commodo pariatur
116
- </DsHeading>
117
- <BodyLong>
118
- Ullamco ullamco laborum et commodo sint culpa cupidatat culpa qui
119
- laboris ex. Labore ex occaecat proident qui qui fugiat magna. Fugiat
120
- sint commodo consequat eu aute.
121
- </BodyLong>
122
- </Alert>
123
- <Alert variant="info" size="small">
124
- <DsHeading spacing size="xsmall" level="3">
125
- Aliquip duis est in commodo pariatur
126
- </DsHeading>
127
- <BodyLong>
128
- Ullamco ullamco laborum et commodo sint culpa cupidatat culpa qui
129
- laboris ex. Labore ex occaecat proident qui qui fugiat magna. Fugiat
130
- sint commodo consequat eu aute.
131
- </BodyLong>
132
- </Alert>
133
- </div>
134
- );
135
- };
136
-
137
- export const CloseButton: Story = {
138
- render: () => {
139
- return (
140
- <VStack gap="4">
141
- <h2>CloseButton</h2>
142
- <Alert variant="info" closeButton>
143
- Id elit esse enim reprehenderit enim nisi veniam nostrud.
144
- </Alert>
145
- <Alert variant="info" closeButton>
146
- Id elit esse enim reprehenderit enim nisi veniam nostrud. Id elit esse
147
- enim reprehenderit enim nisi veniam nostrud. Id elit esse enim
148
- reprehenderit enim nisi veniam nostrud. Id elit esse enim
149
- reprehenderit enim nisi veniam nostrud.
150
- </Alert>
151
- <Alert size="small" variant="info" closeButton>
152
- Id elit esse enim reprehenderit enim nisi veniam nostrud.
153
- </Alert>
154
- <Alert size="small" variant="info" closeButton>
155
- Id elit esse enim reprehenderit enim nisi veniam nostrud. Id elit esse
156
- enim reprehenderit enim nisi veniam nostrud. Id elit esse enim
157
- reprehenderit enim nisi veniam nostrud. Id elit esse enim
158
- reprehenderit enim nisi veniam nostrud.
159
- </Alert>
160
- <Alert variant="info" closeButton>
161
- <DsHeading size="small" level="3">
162
- Id elit esse enim reprehenderit
163
- </DsHeading>
164
- <BodyLong>
165
- Id elit esse enim reprehenderit enim nisi veniam nostrud.
166
- </BodyLong>
167
- </Alert>
168
- <Alert variant="info" closeButton size="small">
169
- <DsHeading size="xsmall" level="3">
170
- Id elit esse enim reprehenderit
171
- </DsHeading>
172
- <BodyLong>
173
- Id elit esse enim reprehenderit enim nisi veniam nostrud.
174
- </BodyLong>
175
- </Alert>
176
- </VStack>
177
- );
178
- },
179
- };
180
-
181
- export const Chromatic: Story = {
182
- render: () => (
183
- <VStack gap="6">
184
- <VStack gap="2">
185
- <h2>Variant</h2>
186
- {variants.map((variant, i) => (
187
- <Alert key={variant} variant={variant}>
188
- {new Array(i + 1).fill(
189
- "Id elit esse enim reprehenderit enim nisi veniam nostrud.",
190
- )}
191
- </Alert>
192
- ))}
193
- </VStack>
194
- <VStack gap="2">
195
- <h2>Small</h2>
196
- <Alert variant="info" size="small">
197
- Id elit esse enim reprehenderit enim nisi veniam nostrud.
198
- </Alert>
199
- <Alert variant="info" size="small">
200
- Id elit esse enim reprehenderit enim nisi veniam nostrud. Id elit esse
201
- enim reprehenderit enim nisi veniam nostrud. Id elit esse enim
202
- reprehenderit enim nisi veniam nostrud. Id elit esse enim
203
- reprehenderit enim nisi veniam nostrud.
204
- </Alert>
205
- </VStack>
206
- <VStack gap="2">
207
- <h2>FullWidth</h2>
208
- <Alert variant="info" fullWidth>
209
- Id elit esse enim reprehenderit enim nisi veniam nostrud.
210
- </Alert>
211
- <Alert variant="info" size="small" fullWidth>
212
- Id elit esse enim reprehenderit enim nisi veniam nostrud.
213
- </Alert>
214
- </VStack>
215
- <VStack gap="2">
216
- <h2>Inline</h2>
217
- <Alert variant="info" inline>
218
- Id elit esse enim reprehenderit enim nisi veniam nostrud.
219
- </Alert>
220
- <Alert variant="info" inline>
221
- Id elit esse enim reprehenderit enim nisi veniam nostrud. Id elit esse
222
- enim reprehenderit enim nisi veniam nostrud. Id elit esse enim
223
- reprehenderit enim nisi veniam nostrud. Id elit esse enim
224
- reprehenderit enim nisi veniam nostrud.
225
- </Alert>
226
- <Alert variant="info" size="small" inline>
227
- Id elit esse enim reprehenderit enim nisi veniam nostrud.
228
- </Alert>
229
- <Alert variant="info" size="small" inline>
230
- Id elit esse enim reprehenderit enim nisi veniam nostrud. Id elit esse
231
- enim reprehenderit enim nisi veniam nostrud. Id elit esse enim
232
- reprehenderit enim nisi veniam nostrud. Id elit esse enim
233
- reprehenderit enim nisi veniam nostrud.
234
- </Alert>
235
- </VStack>
236
- <VStack gap="2">
237
- <h2>Heading</h2>
238
- <Alert variant="info">
239
- <DsHeading size="small" level="3">
240
- Id elit esse enim reprehenderit
241
- </DsHeading>
242
- <BodyLong>
243
- Id elit esse enim reprehenderit enim nisi veniam nostrud.
244
- </BodyLong>
245
- </Alert>
246
- <Alert variant="info" size="small">
247
- <DsHeading size="xsmall" level="3">
248
- Id elit esse enim reprehenderit
249
- </DsHeading>
250
- <BodyLong size="small">
251
- Id elit esse enim reprehenderit enim nisi veniam nostrud.
252
- </BodyLong>
253
- </Alert>
254
- </VStack>
255
- <VStack gap="2">
256
- <h2>CloseButton</h2>
257
- <Alert variant="info" closeButton>
258
- Id elit esse enim reprehenderit enim nisi veniam nostrud.
259
- </Alert>
260
- <Alert variant="info" closeButton>
261
- Id elit esse enim reprehenderit enim nisi veniam nostrud. Id elit esse
262
- enim reprehenderit enim nisi veniam nostrud. Id elit esse enim
263
- reprehenderit enim nisi veniam nostrud. Id elit esse enim
264
- reprehenderit enim nisi veniam nostrud.
265
- </Alert>
266
- <Alert size="small" variant="info" closeButton>
267
- Id elit esse enim reprehenderit enim nisi veniam nostrud.
268
- </Alert>
269
- <Alert size="small" variant="info" closeButton>
270
- Id elit esse enim reprehenderit enim nisi veniam nostrud. Id elit esse
271
- enim reprehenderit enim nisi veniam nostrud. Id elit esse enim
272
- reprehenderit enim nisi veniam nostrud. Id elit esse enim
273
- reprehenderit enim nisi veniam nostrud.
274
- </Alert>
275
- <Alert variant="info" closeButton>
276
- <DsHeading size="small" level="3">
277
- Id elit esse enim reprehenderit
278
- </DsHeading>
279
- <BodyLong>
280
- Id elit esse enim reprehenderit enim nisi veniam nostrud.
281
- </BodyLong>
282
- </Alert>
283
- <Alert variant="info" size="small" closeButton>
284
- <DsHeading size="xsmall" level="3">
285
- Id elit esse enim reprehenderit
286
- </DsHeading>
287
- <BodyLong size="small">
288
- Id elit esse enim reprehenderit enim nisi veniam nostrud.
289
- </BodyLong>
290
- </Alert>
291
- </VStack>
292
-
293
- <VStack gap="2">
294
- <h2>Links</h2>
295
- {variants.map((variant) => (
296
- <Alert key={variant} variant={variant}>
297
- <Link href="#">Id elit esse enim reprehenderit</Link>
298
- </Alert>
299
- ))}
300
- </VStack>
301
- </VStack>
302
- ),
303
- parameters: {
304
- chromatic: { disable: false },
305
- },
306
- };