@dxc-technology/halstack-react 0.0.0-18ada02 → 0.0.0-18ade79

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 (290) hide show
  1. package/BackgroundColorContext.d.ts +1 -10
  2. package/BackgroundColorContext.js +5 -22
  3. package/HalstackContext.d.ts +1229 -6
  4. package/HalstackContext.js +125 -110
  5. package/README.md +47 -0
  6. package/accordion/Accordion.d.ts +1 -1
  7. package/accordion/Accordion.js +116 -160
  8. package/accordion/Accordion.stories.tsx +101 -125
  9. package/accordion/Accordion.test.js +25 -41
  10. package/accordion/types.d.ts +5 -16
  11. package/accordion-group/AccordionGroup.d.ts +4 -3
  12. package/accordion-group/AccordionGroup.js +30 -98
  13. package/accordion-group/AccordionGroup.stories.tsx +94 -67
  14. package/accordion-group/AccordionGroup.test.js +52 -105
  15. package/accordion-group/AccordionGroupAccordion.d.ts +4 -0
  16. package/accordion-group/AccordionGroupAccordion.js +31 -0
  17. package/accordion-group/types.d.ts +11 -16
  18. package/action-icon/ActionIcon.d.ts +4 -0
  19. package/action-icon/ActionIcon.js +43 -0
  20. package/action-icon/types.d.ts +26 -0
  21. package/alert/Alert.js +20 -59
  22. package/alert/Alert.stories.tsx +28 -0
  23. package/alert/Alert.test.js +29 -46
  24. package/alert/types.d.ts +5 -5
  25. package/badge/Badge.js +4 -17
  26. package/badge/types.d.ts +1 -1
  27. package/bleed/Bleed.js +13 -21
  28. package/bleed/Bleed.stories.tsx +1 -0
  29. package/bleed/types.d.ts +2 -2
  30. package/box/Box.d.ts +1 -1
  31. package/box/Box.js +19 -60
  32. package/box/Box.stories.tsx +38 -51
  33. package/box/Box.test.js +2 -7
  34. package/box/types.d.ts +3 -14
  35. package/bulleted-list/BulletedList.js +19 -53
  36. package/bulleted-list/BulletedList.stories.tsx +8 -93
  37. package/bulleted-list/types.d.ts +32 -5
  38. package/button/Button.d.ts +1 -1
  39. package/button/Button.js +69 -105
  40. package/button/Button.stories.tsx +152 -91
  41. package/button/Button.test.js +18 -17
  42. package/button/types.d.ts +8 -4
  43. package/card/Card.d.ts +1 -1
  44. package/card/Card.js +48 -89
  45. package/card/Card.stories.tsx +12 -42
  46. package/card/Card.test.js +11 -22
  47. package/card/types.d.ts +6 -11
  48. package/checkbox/Checkbox.d.ts +2 -2
  49. package/checkbox/Checkbox.js +140 -182
  50. package/checkbox/Checkbox.stories.tsx +128 -94
  51. package/checkbox/Checkbox.test.js +160 -39
  52. package/checkbox/types.d.ts +11 -3
  53. package/chip/Chip.js +39 -79
  54. package/chip/Chip.stories.tsx +121 -26
  55. package/chip/Chip.test.js +16 -31
  56. package/chip/types.d.ts +4 -4
  57. package/common/OpenSans.css +68 -80
  58. package/common/coreTokens.d.ts +237 -0
  59. package/common/coreTokens.js +184 -0
  60. package/common/utils.d.ts +1 -0
  61. package/common/utils.js +6 -12
  62. package/common/variables.d.ts +1381 -0
  63. package/common/variables.js +899 -1150
  64. package/container/Container.d.ts +4 -0
  65. package/container/Container.js +194 -0
  66. package/container/Container.stories.tsx +214 -0
  67. package/container/types.d.ts +74 -0
  68. package/date-input/Calendar.d.ts +4 -0
  69. package/date-input/Calendar.js +214 -0
  70. package/date-input/DateInput.js +150 -299
  71. package/date-input/DateInput.stories.tsx +203 -56
  72. package/date-input/DateInput.test.js +700 -371
  73. package/date-input/DatePicker.d.ts +4 -0
  74. package/date-input/DatePicker.js +115 -0
  75. package/date-input/Icons.d.ts +6 -0
  76. package/date-input/Icons.js +58 -0
  77. package/date-input/YearPicker.d.ts +4 -0
  78. package/date-input/YearPicker.js +100 -0
  79. package/date-input/types.d.ts +72 -15
  80. package/dialog/Dialog.d.ts +1 -1
  81. package/dialog/Dialog.js +60 -118
  82. package/dialog/Dialog.stories.tsx +320 -166
  83. package/dialog/Dialog.test.js +269 -32
  84. package/dialog/types.d.ts +18 -25
  85. package/dropdown/Dropdown.js +72 -125
  86. package/dropdown/Dropdown.stories.tsx +210 -84
  87. package/dropdown/Dropdown.test.js +410 -402
  88. package/dropdown/DropdownMenu.js +20 -37
  89. package/dropdown/DropdownMenuItem.js +10 -35
  90. package/dropdown/types.d.ts +17 -19
  91. package/file-input/FileInput.d.ts +2 -2
  92. package/file-input/FileInput.js +241 -355
  93. package/file-input/FileInput.stories.tsx +123 -12
  94. package/file-input/FileInput.test.js +369 -367
  95. package/file-input/FileItem.d.ts +4 -14
  96. package/file-input/FileItem.js +45 -96
  97. package/file-input/types.d.ts +25 -8
  98. package/flex/Flex.d.ts +1 -1
  99. package/flex/Flex.js +40 -40
  100. package/flex/Flex.stories.tsx +35 -26
  101. package/flex/types.d.ts +84 -8
  102. package/footer/Footer.d.ts +1 -1
  103. package/footer/Footer.js +55 -115
  104. package/footer/Footer.stories.tsx +41 -19
  105. package/footer/Footer.test.js +33 -57
  106. package/footer/Icons.d.ts +2 -2
  107. package/footer/Icons.js +2 -7
  108. package/footer/types.d.ts +21 -28
  109. package/grid/Grid.d.ts +7 -0
  110. package/grid/Grid.js +76 -0
  111. package/grid/Grid.stories.tsx +219 -0
  112. package/grid/types.d.ts +115 -0
  113. package/header/Header.d.ts +4 -3
  114. package/header/Header.js +48 -133
  115. package/header/Header.stories.tsx +118 -39
  116. package/header/Header.test.js +13 -26
  117. package/header/Icons.d.ts +2 -2
  118. package/header/Icons.js +2 -7
  119. package/header/types.d.ts +5 -19
  120. package/heading/Heading.js +10 -32
  121. package/heading/Heading.test.js +71 -88
  122. package/heading/types.d.ts +7 -7
  123. package/image/Image.d.ts +4 -0
  124. package/image/Image.js +70 -0
  125. package/image/Image.stories.tsx +127 -0
  126. package/image/types.d.ts +72 -0
  127. package/image/types.js +5 -0
  128. package/inset/Inset.js +13 -21
  129. package/inset/Inset.stories.tsx +2 -1
  130. package/inset/types.d.ts +2 -2
  131. package/layout/ApplicationLayout.d.ts +5 -5
  132. package/layout/ApplicationLayout.js +29 -66
  133. package/layout/ApplicationLayout.stories.tsx +2 -1
  134. package/layout/Icons.d.ts +8 -5
  135. package/layout/Icons.js +51 -59
  136. package/layout/SidenavContext.d.ts +1 -1
  137. package/layout/SidenavContext.js +3 -9
  138. package/layout/types.d.ts +5 -6
  139. package/link/Link.js +25 -46
  140. package/link/Link.stories.tsx +60 -0
  141. package/link/Link.test.js +24 -44
  142. package/link/types.d.ts +14 -14
  143. package/main.d.ts +7 -4
  144. package/main.js +32 -58
  145. package/{tabs-nav → nav-tabs}/NavTabs.d.ts +2 -2
  146. package/{tabs-nav → nav-tabs}/NavTabs.js +23 -55
  147. package/{tabs-nav → nav-tabs}/NavTabs.stories.tsx +111 -7
  148. package/{tabs-nav → nav-tabs}/NavTabs.test.js +37 -44
  149. package/nav-tabs/Tab.js +117 -0
  150. package/{tabs-nav → nav-tabs}/types.d.ts +14 -15
  151. package/nav-tabs/types.js +5 -0
  152. package/number-input/NumberInput.d.ts +7 -0
  153. package/number-input/NumberInput.js +26 -35
  154. package/number-input/NumberInput.stories.tsx +42 -26
  155. package/number-input/NumberInput.test.js +701 -377
  156. package/number-input/types.d.ts +11 -5
  157. package/package.json +37 -40
  158. package/paginator/Icons.d.ts +5 -0
  159. package/paginator/Icons.js +21 -47
  160. package/paginator/Paginator.js +23 -59
  161. package/paginator/Paginator.stories.tsx +24 -0
  162. package/paginator/Paginator.test.js +253 -226
  163. package/paginator/types.d.ts +3 -3
  164. package/paragraph/Paragraph.d.ts +3 -4
  165. package/paragraph/Paragraph.js +6 -22
  166. package/paragraph/Paragraph.stories.tsx +0 -17
  167. package/password-input/Icons.d.ts +6 -0
  168. package/password-input/Icons.js +35 -0
  169. package/password-input/PasswordInput.js +57 -126
  170. package/password-input/PasswordInput.stories.tsx +1 -33
  171. package/password-input/PasswordInput.test.js +160 -142
  172. package/password-input/types.d.ts +8 -7
  173. package/progress-bar/ProgressBar.d.ts +2 -2
  174. package/progress-bar/ProgressBar.js +23 -55
  175. package/progress-bar/{ProgressBar.stories.jsx → ProgressBar.stories.tsx} +36 -3
  176. package/progress-bar/ProgressBar.test.js +36 -53
  177. package/progress-bar/types.d.ts +4 -3
  178. package/quick-nav/QuickNav.js +15 -39
  179. package/quick-nav/QuickNav.stories.tsx +112 -20
  180. package/quick-nav/types.d.ts +10 -10
  181. package/radio-group/Radio.d.ts +1 -1
  182. package/radio-group/Radio.js +59 -76
  183. package/radio-group/RadioGroup.js +59 -105
  184. package/radio-group/RadioGroup.stories.tsx +132 -18
  185. package/radio-group/RadioGroup.test.js +518 -457
  186. package/radio-group/types.d.ts +10 -10
  187. package/resultset-table/Icons.d.ts +7 -0
  188. package/resultset-table/Icons.js +47 -0
  189. package/resultset-table/ResultsetTable.js +159 -0
  190. package/{resultsetTable → resultset-table}/ResultsetTable.stories.tsx +50 -25
  191. package/{resultsetTable → resultset-table}/ResultsetTable.test.js +101 -144
  192. package/{resultsetTable → resultset-table}/types.d.ts +7 -7
  193. package/resultset-table/types.js +5 -0
  194. package/select/Icons.d.ts +7 -7
  195. package/select/Icons.js +1 -5
  196. package/select/Listbox.d.ts +1 -1
  197. package/select/Listbox.js +17 -73
  198. package/select/Option.js +27 -50
  199. package/select/Select.js +123 -176
  200. package/select/Select.stories.tsx +497 -153
  201. package/select/Select.test.js +1970 -1775
  202. package/select/types.d.ts +16 -17
  203. package/sidenav/Icons.d.ts +7 -0
  204. package/sidenav/Icons.js +47 -0
  205. package/sidenav/Sidenav.d.ts +2 -2
  206. package/sidenav/Sidenav.js +81 -153
  207. package/sidenav/Sidenav.stories.tsx +165 -63
  208. package/sidenav/Sidenav.test.js +3 -10
  209. package/sidenav/types.d.ts +31 -28
  210. package/slider/Slider.d.ts +2 -2
  211. package/slider/Slider.js +83 -131
  212. package/slider/Slider.test.js +108 -104
  213. package/slider/types.d.ts +7 -3
  214. package/spinner/Spinner.js +31 -75
  215. package/spinner/{Spinner.stories.jsx → Spinner.stories.tsx} +53 -27
  216. package/spinner/Spinner.test.js +26 -35
  217. package/spinner/types.d.ts +3 -3
  218. package/status-light/StatusLight.d.ts +4 -0
  219. package/status-light/StatusLight.js +51 -0
  220. package/status-light/StatusLight.stories.tsx +74 -0
  221. package/status-light/StatusLight.test.js +25 -0
  222. package/status-light/types.d.ts +17 -0
  223. package/status-light/types.js +5 -0
  224. package/switch/Switch.d.ts +3 -3
  225. package/switch/Switch.js +113 -150
  226. package/switch/Switch.stories.tsx +33 -34
  227. package/switch/Switch.test.js +70 -102
  228. package/switch/types.d.ts +8 -3
  229. package/table/Table.js +8 -30
  230. package/table/{Table.stories.jsx → Table.stories.tsx} +80 -1
  231. package/table/Table.test.js +3 -8
  232. package/table/types.d.ts +8 -8
  233. package/tabs/Tab.d.ts +4 -0
  234. package/tabs/Tab.js +113 -0
  235. package/tabs/Tabs.js +314 -141
  236. package/tabs/Tabs.stories.tsx +119 -5
  237. package/tabs/Tabs.test.js +223 -69
  238. package/tabs/types.d.ts +28 -18
  239. package/tag/Tag.js +29 -61
  240. package/tag/Tag.stories.tsx +14 -1
  241. package/tag/Tag.test.js +20 -31
  242. package/tag/types.d.ts +7 -7
  243. package/text-input/Icons.d.ts +8 -0
  244. package/text-input/Icons.js +56 -0
  245. package/text-input/Suggestion.js +40 -28
  246. package/text-input/Suggestions.d.ts +4 -0
  247. package/text-input/Suggestions.js +84 -0
  248. package/text-input/TextInput.js +300 -489
  249. package/text-input/TextInput.stories.tsx +266 -274
  250. package/text-input/TextInput.test.js +1402 -1375
  251. package/text-input/types.d.ts +43 -16
  252. package/textarea/Textarea.js +70 -113
  253. package/textarea/Textarea.stories.tsx +174 -0
  254. package/textarea/Textarea.test.js +152 -183
  255. package/textarea/types.d.ts +9 -5
  256. package/toggle-group/ToggleGroup.d.ts +2 -2
  257. package/toggle-group/ToggleGroup.js +92 -106
  258. package/toggle-group/ToggleGroup.stories.tsx +49 -4
  259. package/toggle-group/ToggleGroup.test.js +69 -88
  260. package/toggle-group/types.d.ts +26 -17
  261. package/typography/Typography.d.ts +2 -2
  262. package/typography/Typography.js +15 -123
  263. package/typography/Typography.stories.tsx +1 -1
  264. package/typography/types.d.ts +1 -1
  265. package/useTheme.d.ts +1133 -1
  266. package/useTheme.js +2 -9
  267. package/useTranslatedLabels.d.ts +84 -1
  268. package/useTranslatedLabels.js +1 -7
  269. package/utils/BaseTypography.d.ts +21 -0
  270. package/utils/BaseTypography.js +94 -0
  271. package/utils/FocusLock.d.ts +13 -0
  272. package/utils/FocusLock.js +121 -0
  273. package/wizard/Wizard.js +16 -51
  274. package/wizard/Wizard.stories.tsx +20 -0
  275. package/wizard/Wizard.test.js +54 -81
  276. package/wizard/types.d.ts +8 -9
  277. package/card/ice-cream.jpg +0 -0
  278. package/common/RequiredComponent.js +0 -32
  279. package/number-input/NumberInputContext.d.ts +0 -4
  280. package/number-input/NumberInputContext.js +0 -19
  281. package/number-input/numberInputContextTypes.d.ts +0 -19
  282. package/resultsetTable/ResultsetTable.js +0 -254
  283. package/slider/Slider.stories.tsx +0 -183
  284. package/tabs-nav/Tab.js +0 -130
  285. package/textarea/Textarea.stories.jsx +0 -157
  286. /package/{resultsetTable → action-icon}/types.js +0 -0
  287. /package/{tabs-nav → container}/types.js +0 -0
  288. /package/{number-input/numberInputContextTypes.js → grid/types.js} +0 -0
  289. /package/{tabs-nav → nav-tabs}/Tab.d.ts +0 -0
  290. /package/{resultsetTable → resultset-table}/ResultsetTable.d.ts +0 -0
@@ -1,183 +0,0 @@
1
- import React from "react";
2
- import DxcSlider from "./Slider";
3
- import { BackgroundColorProvider } from "../BackgroundColorContext";
4
- import Title from "../../.storybook/components/Title";
5
- import ExampleContainer from "../../.storybook/components/ExampleContainer";
6
- import DarkContainer from "../../.storybook/components/DarkSection";
7
-
8
- export default {
9
- title: "Slider",
10
- component: DxcSlider,
11
- };
12
-
13
- const labelFormat = (value) => `${value}E100000000000000000000000`;
14
-
15
- export const Chromatic = () => (
16
- <>
17
- <Title title="States" theme="light" level={2} />
18
- <ExampleContainer pseudoState="pseudo-hover">
19
- <Title title="Hovered" theme="light" level={4} />
20
- <DxcSlider label="Slider" helperText="Help message" showLimitsValues />
21
- </ExampleContainer>
22
- <ExampleContainer pseudoState="pseudo-active">
23
- <Title title="Active" theme="light" level={4} />
24
- <DxcSlider label="Slider" helperText="Help message" showLimitsValues />
25
- </ExampleContainer>
26
- <ExampleContainer pseudoState="pseudo-focus">
27
- <Title title="Focused" theme="light" level={4} />
28
- <DxcSlider label="Slider" helperText="Help message" showLimitsValues />
29
- </ExampleContainer>
30
- <ExampleContainer>
31
- <Title title="Disabled" theme="light" level={4} />
32
- <DxcSlider label="Slider" helperText="Help message" disabled showLimitsValues />
33
- </ExampleContainer>
34
- <ExampleContainer>
35
- <Title title="Disabled discrete slider with input" theme="light" level={4} />
36
- <DxcSlider
37
- label="Slider"
38
- helperText="Help message"
39
- disabled
40
- defaultValue={40}
41
- minValue={0}
42
- maxValue={50}
43
- showLimitsValues
44
- showInput
45
- marks
46
- step={10}
47
- />
48
- </ExampleContainer>
49
- <Title title="Variants" theme="light" level={2} />
50
- <ExampleContainer>
51
- <Title title="Continuous slider" theme="light" level={4} />
52
- <DxcSlider defaultValue={65} label="Slider" helperText="Help message" showLimitsValues />
53
- </ExampleContainer>
54
- <ExampleContainer>
55
- <Title title="Discrete slider" theme="light" level={4} />
56
- <DxcSlider defaultValue={20} label="Slider" helperText="Help message" showLimitsValues marks step={5} />
57
- </ExampleContainer>
58
- <ExampleContainer>
59
- <Title title="Discrete slider with input" theme="light" level={4} />
60
- <DxcSlider
61
- defaultValue={20}
62
- minValue={0}
63
- maxValue={50}
64
- label="Slider"
65
- helperText="Help message"
66
- showLimitsValues
67
- showInput
68
- marks
69
- step={10}
70
- />
71
- </ExampleContainer>
72
- <BackgroundColorProvider color="#333333">
73
- <DarkContainer>
74
- <Title title="Dark" theme="dark" level={2} />
75
- <ExampleContainer pseudoState="pseudo-hover">
76
- <Title title="Hovered" theme="dark" level={4} />
77
- <DxcSlider label="Slider" helperText="Help message" showLimitsValues />
78
- </ExampleContainer>
79
- <ExampleContainer pseudoState="pseudo-active">
80
- <Title title="Active" theme="dark" level={4} />
81
- <DxcSlider label="Slider" helperText="Help message" showLimitsValues />
82
- </ExampleContainer>
83
- <ExampleContainer pseudoState="pseudo-focus">
84
- <Title title="Focused" theme="dark" level={4} />
85
- <DxcSlider label="Slider" helperText="Help message" showLimitsValues />
86
- </ExampleContainer>
87
- <ExampleContainer>
88
- <Title title="Disabled" theme="dark" level={4} />
89
- <DxcSlider label="Slider" helperText="Help message" disabled showLimitsValues />
90
- </ExampleContainer>
91
- <ExampleContainer>
92
- <Title title="Disabled discrete slider with input" theme="dark" level={4} />
93
- <DxcSlider
94
- label="Slider"
95
- helperText="Help message"
96
- disabled
97
- defaultValue={40}
98
- minValue={0}
99
- maxValue={50}
100
- showLimitsValues
101
- showInput
102
- marks
103
- step={5}
104
- />
105
- </ExampleContainer>
106
- <ExampleContainer>
107
- <Title title="Continuous slider" theme="dark" level={4} />
108
- <DxcSlider defaultValue={65} label="Slider" helperText="Help message" showLimitsValues />
109
- </ExampleContainer>
110
- <ExampleContainer>
111
- <Title title="Discrete slider" theme="dark" level={4} />
112
- <DxcSlider defaultValue={20} label="Slider" helperText="Help message" showLimitsValues marks step={5} />
113
- </ExampleContainer>
114
- <ExampleContainer>
115
- <Title title="Discrete slider with input" theme="dark" level={4} />
116
- <DxcSlider
117
- defaultValue={20}
118
- minValue={0}
119
- maxValue={50}
120
- label="Slider"
121
- helperText="Help message"
122
- showLimitsValues
123
- showInput
124
- marks
125
- step={10}
126
- />
127
- </ExampleContainer>
128
- </DarkContainer>
129
- </BackgroundColorProvider>
130
- <Title title="Margins" theme="light" level={2} />
131
- <ExampleContainer>
132
- <Title title="Xxsmall" theme="light" level={4} />
133
- <DxcSlider label="Xxsmall" margin="xxsmall" />
134
- </ExampleContainer>
135
- <ExampleContainer>
136
- <Title title="Xsmall" theme="light" level={4} />
137
- <DxcSlider label="Xsmall" margin="xsmall" />
138
- </ExampleContainer>
139
- <ExampleContainer>
140
- <Title title="Small" theme="light" level={4} />
141
- <DxcSlider label="Small" margin="small" />
142
- </ExampleContainer>
143
- <ExampleContainer>
144
- <Title title="Medium" theme="light" level={4} />
145
- <DxcSlider label="Medium" margin="medium" />
146
- </ExampleContainer>
147
- <ExampleContainer>
148
- <Title title="Large" theme="light" level={4} />
149
- <DxcSlider label="Large" margin="large" />
150
- </ExampleContainer>
151
- <ExampleContainer>
152
- <Title title="Xlarge" theme="light" level={4} />
153
- <DxcSlider label="Xlarge" margin="xlarge" />
154
- </ExampleContainer>
155
- <ExampleContainer>
156
- <Title title="Xxlarge" theme="light" level={4} />
157
- <DxcSlider label="Xxlarge" margin="xxlarge" />
158
- </ExampleContainer>
159
- <Title title="Sizes" theme="light" level={2} />
160
- <ExampleContainer>
161
- <Title title="Medium" theme="light" level={4} />
162
- <DxcSlider label="Medium" size="medium" />
163
- </ExampleContainer>
164
- <ExampleContainer>
165
- <Title title="Large" theme="light" level={4} />
166
- <DxcSlider label="Large" size="large" />
167
- </ExampleContainer>
168
- <ExampleContainer>
169
- <Title title="FillParent" theme="light" level={4} />
170
- <DxcSlider label="FillParent" size="fillParent" />
171
- </ExampleContainer>
172
- <ExampleContainer>
173
- <Title title="Large limit values labels" theme="light" level={4} />
174
- <DxcSlider
175
- label="Slider"
176
- helperText="Help message"
177
- showLimitsValues
178
- labelFormatCallback={labelFormat}
179
- size="large"
180
- />
181
- </ExampleContainer>
182
- </>
183
- );
package/tabs-nav/Tab.js DELETED
@@ -1,130 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- var _typeof = require("@babel/runtime/helpers/typeof");
6
-
7
- Object.defineProperty(exports, "__esModule", {
8
- value: true
9
- });
10
- exports["default"] = void 0;
11
-
12
- var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
13
-
14
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
15
-
16
- var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
17
-
18
- var _react = _interopRequireWildcard(require("react"));
19
-
20
- var _styledComponents = _interopRequireDefault(require("styled-components"));
21
-
22
- var _Badge = _interopRequireDefault(require("../badge/Badge"));
23
-
24
- var _NavTabs = require("./NavTabs");
25
-
26
- var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6;
27
-
28
- var _excluded = ["href", "active", "icon", "disabled", "notificationNumber", "children"];
29
-
30
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
31
-
32
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
33
-
34
- var DxcTab = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, _ref2) {
35
- var href = _ref.href,
36
- _ref$active = _ref.active,
37
- active = _ref$active === void 0 ? false : _ref$active,
38
- icon = _ref.icon,
39
- _ref$disabled = _ref.disabled,
40
- disabled = _ref$disabled === void 0 ? false : _ref$disabled,
41
- _ref$notificationNumb = _ref.notificationNumber,
42
- notificationNumber = _ref$notificationNumb === void 0 ? false : _ref$notificationNumb,
43
- children = _ref.children,
44
- otherProps = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
45
- var tabRef = /*#__PURE__*/(0, _react.createRef)();
46
-
47
- var _useContext = (0, _react.useContext)(_NavTabs.NavTabsContext),
48
- iconPosition = _useContext.iconPosition,
49
- tabIndex = _useContext.tabIndex,
50
- hasIcons = _useContext.hasIcons,
51
- focusedLabel = _useContext.focusedLabel;
52
-
53
- (0, _react.useLayoutEffect)(function () {
54
- var _tabRef$current;
55
-
56
- focusedLabel === children.toString() && (tabRef === null || tabRef === void 0 ? void 0 : (_tabRef$current = tabRef.current) === null || _tabRef$current === void 0 ? void 0 : _tabRef$current.focus());
57
- }, [focusedLabel]);
58
-
59
- var handleOnKeyDown = function handleOnKeyDown(event) {
60
- var _tabRef$current2;
61
-
62
- switch (event.key) {
63
- case "Enter":
64
- case "Space":
65
- tabRef === null || tabRef === void 0 ? void 0 : (_tabRef$current2 = tabRef.current) === null || _tabRef$current2 === void 0 ? void 0 : _tabRef$current2.click();
66
- event.preventDefault();
67
- break;
68
- }
69
- };
70
-
71
- return /*#__PURE__*/_react["default"].createElement(TabContainer, {
72
- active: active,
73
- role: "tab",
74
- "aria-selected": active
75
- }, /*#__PURE__*/_react["default"].createElement(Tab, (0, _extends2["default"])({
76
- href: !disabled && href ? href : undefined,
77
- disabled: disabled,
78
- iconPosition: iconPosition,
79
- hasIcon: hasIcons,
80
- ref: function ref(anchorRef) {
81
- tabRef.current = anchorRef;
82
-
83
- if (_ref2) {
84
- if (typeof _ref2 === "function") _ref2(anchorRef);else {
85
- _ref2.current = anchorRef;
86
- }
87
- }
88
- },
89
- onKeyDown: handleOnKeyDown,
90
- tabIndex: active ? tabIndex : -1
91
- }, otherProps), icon && /*#__PURE__*/_react["default"].createElement(TabIconContainer, {
92
- iconPosition: iconPosition
93
- }, typeof icon === "string" ? /*#__PURE__*/_react["default"].createElement(TabIcon, {
94
- src: icon
95
- }) : icon), /*#__PURE__*/_react["default"].createElement(LabelContainer, null, children, notificationNumber && /*#__PURE__*/_react["default"].createElement(BadgeContainer, null, /*#__PURE__*/_react["default"].createElement(_Badge["default"], {
96
- notificationText: notificationNumber > 99 ? "+99" : notificationNumber,
97
- disabled: disabled
98
- })))));
99
- });
100
-
101
- var TabContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n border-bottom: 2px solid ", ";\n"])), function (props) {
102
- return props.active ? "#6f2c91" : "#0000001a";
103
- });
104
-
105
- var Tab = _styledComponents["default"].a(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: ", ";\n justify-content: center;\n align-items: center;\n\n font-family: \"Open Sans\";\n font-style: normal;\n font-weight: 400;\n font-size: 1rem;\n color: ", ";\n text-decoration-color: transparent;\n cursor: ", ";\n\n height: ", ";\n min-width: 164px;\n margin: 0.5rem;\n padding: 0.375rem;\n\n border-radius: 4px;\n\n ", "\n"])), function (props) {
106
- return props.hasIcon && props.iconPosition === "top" ? "column" : "row";
107
- }, function (props) {
108
- return props.disabled ? "#0000004D" : "#333333";
109
- }, function (props) {
110
- return props.disabled ? "not-allowed" : "pointer";
111
- }, function (props) {
112
- return props.hasIcon && props.iconPosition === "top" ? "66px" : "32px";
113
- }, function (props) {
114
- return !props.disabled && ":hover {\n background: #0000000D;\n }\n\n :focus {\n outline: 2px solid #33aaff};\n }\n\n :active {\n background: #0000001A;\n outline: 2px solid #33aaff};\n }";
115
- });
116
-
117
- var TabIcon = _styledComponents["default"].img(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])([""])));
118
-
119
- var TabIconContainer = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n max-height: 24px;\n max-width: 24px;\n margin-bottom: ", ";\n margin-right: ", ";\n overflow: hidden;\n display: flex;\n align-items: center;\n img,\n svg {\n height: 100%;\n width: 100%;\n }\n"])), function (props) {
120
- return props.iconPosition === "top" && "0.375rem";
121
- }, function (props) {
122
- return props.iconPosition === "left" && "0.625rem";
123
- });
124
-
125
- var LabelContainer = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-items: center;\n"])));
126
-
127
- var BadgeContainer = _styledComponents["default"].div(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n margin-left: 0.5rem;\n"])));
128
-
129
- var _default = DxcTab;
130
- exports["default"] = _default;
@@ -1,157 +0,0 @@
1
- import React from "react";
2
- import DxcTextarea from "./Textarea";
3
- import Title from "../../.storybook/components/Title";
4
- import ExampleContainer from "../../.storybook/components/ExampleContainer";
5
- import { BackgroundColorProvider } from "../BackgroundColorContext";
6
- import DarkContainer from "../../.storybook/components/DarkSection";
7
-
8
- export default {
9
- title: "Textarea",
10
- component: DxcTextarea,
11
- };
12
-
13
- export const Chromatic = () => (
14
- <>
15
- <>
16
- <ExampleContainer pseudoState="pseudo-hover">
17
- <Title title="Hovered" theme="light" level={4} />
18
- <DxcTextarea label="Hovered" />
19
- </ExampleContainer>
20
- <ExampleContainer pseudoState="pseudo-focus">
21
- <Title title="Focused" theme="light" level={4} />
22
- <DxcTextarea label="Focused" />
23
- </ExampleContainer>
24
- <ExampleContainer>
25
- <Title title="Disabled" theme="light" level={4} />
26
- <DxcTextarea
27
- label="Disabled"
28
- optional
29
- helperText="Sample text"
30
- placeholder="Enter your text here..."
31
- disabled
32
- />
33
- </ExampleContainer>
34
- <ExampleContainer>
35
- <Title title="Disabled with value" theme="light" level={4} />
36
- <DxcTextarea label="Disabled" defaultValue="Example text" disabled />
37
- </ExampleContainer>
38
- <ExampleContainer>
39
- <Title title="With error" theme="light" level={4} />
40
- <DxcTextarea
41
- label="Textarea with error"
42
- helperText="Helper text"
43
- placeholder="Enter your text here..."
44
- error="Error message."
45
- />
46
- </ExampleContainer>
47
- <ExampleContainer pseudoState="pseudo-hover">
48
- <Title title="Hovered with error" theme="light" level={4} />
49
- <DxcTextarea
50
- label="Hovered textarea with error"
51
- helperText="Helper text"
52
- placeholder="Enter your text here..."
53
- error="Error message."
54
- />
55
- </ExampleContainer>
56
- <ExampleContainer>
57
- <Title title="Helper text and optional with value" theme="light" level={4} />
58
- <DxcTextarea label="Helper & optional" defaultValue="Some text" helperText="Sample text" optional />
59
- </ExampleContainer>
60
- <ExampleContainer>
61
- <Title title="Resizable" theme="light" level={4} />
62
- <DxcTextarea label="With resizer" helperText="Helper text" verticalGrow="manual" />
63
- </ExampleContainer>
64
- <ExampleContainer>
65
- <Title title="Grow manual" theme="light" level={4} />
66
- <DxcTextarea
67
- label="Manual vertical grow"
68
- verticalGrow="manual"
69
- defaultValue="Long textttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttt"
70
- />
71
- </ExampleContainer>
72
- </>
73
- <BackgroundColorProvider color="#333333">
74
- <DarkContainer>
75
- <ExampleContainer>
76
- <Title title="Helper text and optional with value" theme="dark" level={4} />
77
- <DxcTextarea label="Helper & optional" defaultValue="Some text" helperText="Sample text" optional />
78
- </ExampleContainer>
79
- <ExampleContainer>
80
- <Title title="Disabled" theme="dark" level={4} />
81
- <DxcTextarea
82
- label="Disabled"
83
- optional
84
- helperText="Sample text"
85
- placeholder="Enter your text here..."
86
- disabled
87
- />
88
- </ExampleContainer>
89
- <ExampleContainer>
90
- <Title title="Disabled with value" theme="dark" level={4} />
91
- <DxcTextarea label="Disabled" defaultValue="Example text" disabled />
92
- </ExampleContainer>
93
- <ExampleContainer>
94
- <Title title="With error" theme="dark" level={4} />
95
- <DxcTextarea
96
- label="Textarea with error"
97
- helperText="Helper text"
98
- placeholder="Enter your text here..."
99
- error="Error message."
100
- />
101
- </ExampleContainer>
102
- <ExampleContainer pseudoState="pseudo-hover">
103
- <Title title="Hovered with error" theme="dark" level={4} />
104
- <DxcTextarea
105
- label="Hovered textarea with error"
106
- helperText="Helper text"
107
- placeholder="Enter your text here..."
108
- error="Error message."
109
- />
110
- </ExampleContainer>
111
- </DarkContainer>
112
- </BackgroundColorProvider>
113
- <Title title="Sizes" theme="light" level={2} />
114
- <ExampleContainer>
115
- <DxcTextarea label="Small" size="small" />
116
- </ExampleContainer>
117
- <ExampleContainer>
118
- <DxcTextarea label="Medium" size="medium" />
119
- </ExampleContainer>
120
- <ExampleContainer>
121
- <DxcTextarea label="Large" size="large" />
122
- </ExampleContainer>
123
- <ExampleContainer>
124
- <DxcTextarea label="Fill parent" size="fillParent" />
125
- </ExampleContainer>
126
- <Title title="Margins" theme="light" level={2} />
127
- <ExampleContainer>
128
- <Title title="Xxsmall margin" theme="light" level={4} />
129
- <DxcTextarea label="Xxsmall" margin="xxsmall" />
130
- </ExampleContainer>
131
- <ExampleContainer>
132
- <Title title="Xsmall margin" theme="light" level={4} />
133
- <DxcTextarea label="xsmall" margin="xsmall" />
134
- </ExampleContainer>
135
- <ExampleContainer>
136
- <Title title="Small margin" theme="light" level={4} />
137
- <DxcTextarea label="small" margin="small" />
138
- </ExampleContainer>
139
- <ExampleContainer>
140
- <Title title="Medium margin" theme="light" level={4} />
141
- <DxcTextarea label="medium" margin="medium" />
142
- </ExampleContainer>
143
- <ExampleContainer>
144
- <Title title="Large margin" theme="light" level={4} />
145
- <DxcTextarea label="Large" margin="large" />
146
- </ExampleContainer>
147
- <ExampleContainer>
148
- <Title title="Xlarge margin" theme="light" level={4} />
149
- <DxcTextarea label="Xlarge" margin="xlarge" />
150
- </ExampleContainer>
151
- <ExampleContainer>
152
- <Title title="Xxlarge margin" theme="light" level={4} />
153
- <DxcTextarea label="Xxlarge" margin="xxlarge" />
154
- <hr />
155
- </ExampleContainer>
156
- </>
157
- );
File without changes
File without changes
File without changes