@dxc-technology/halstack-react 0.0.0-e904570 → 0.0.0-e961efe

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 (247) hide show
  1. package/README.md +2 -2
  2. package/babel.config.js +5 -2
  3. package/dist/BackgroundColorContext.js +46 -0
  4. package/dist/ThemeContext.js +237 -2
  5. package/dist/V3Select/V3Select.js +549 -0
  6. package/dist/V3Select/index.d.ts +27 -0
  7. package/dist/V3Textarea/V3Textarea.js +264 -0
  8. package/dist/V3Textarea/index.d.ts +27 -0
  9. package/dist/accordion/Accordion.js +170 -81
  10. package/dist/accordion/index.d.ts +28 -0
  11. package/dist/accordion-group/AccordionGroup.js +186 -0
  12. package/dist/accordion-group/index.d.ts +16 -0
  13. package/dist/alert/Alert.js +184 -83
  14. package/dist/alert/index.d.ts +51 -0
  15. package/dist/badge/Badge.js +63 -0
  16. package/dist/box/Box.js +39 -19
  17. package/dist/box/index.d.ts +25 -0
  18. package/dist/button/Button.js +84 -29
  19. package/dist/button/index.d.ts +24 -0
  20. package/dist/card/Card.js +64 -56
  21. package/dist/card/index.d.ts +22 -0
  22. package/dist/checkbox/Checkbox.js +107 -32
  23. package/dist/checkbox/index.d.ts +24 -0
  24. package/dist/chip/Chip.js +135 -40
  25. package/dist/chip/index.d.ts +22 -0
  26. package/dist/common/RequiredComponent.js +2 -8
  27. package/dist/common/utils.js +2 -22
  28. package/dist/common/variables.js +1482 -105
  29. package/dist/date/Date.js +110 -73
  30. package/dist/date/index.d.ts +27 -0
  31. package/dist/date-input/DateInput.js +400 -0
  32. package/dist/date-input/index.d.ts +95 -0
  33. package/dist/dialog/Dialog.js +61 -36
  34. package/dist/dialog/index.d.ts +18 -0
  35. package/dist/dropdown/Dropdown.js +226 -94
  36. package/dist/dropdown/index.d.ts +26 -0
  37. package/dist/file-input/FileInput.js +644 -0
  38. package/dist/file-input/FileItem.js +287 -0
  39. package/dist/file-input/index.d.ts +81 -0
  40. package/dist/footer/Footer.js +125 -45
  41. package/dist/footer/Icons.js +77 -0
  42. package/dist/footer/index.d.ts +25 -0
  43. package/dist/header/Header.js +211 -91
  44. package/dist/header/Icons.js +59 -0
  45. package/dist/header/index.d.ts +25 -0
  46. package/dist/heading/Heading.js +93 -22
  47. package/dist/heading/index.d.ts +17 -0
  48. package/dist/input-text/Icons.js +22 -0
  49. package/dist/input-text/InputText.js +292 -106
  50. package/dist/input-text/index.d.ts +36 -0
  51. package/dist/layout/ApplicationLayout.js +327 -0
  52. package/dist/layout/Icons.js +55 -0
  53. package/dist/link/Link.js +142 -34
  54. package/dist/link/index.d.ts +23 -0
  55. package/dist/main.d.ts +40 -0
  56. package/dist/main.js +112 -16
  57. package/dist/number-input/NumberInput.js +136 -0
  58. package/dist/number-input/NumberInputContext.js +16 -0
  59. package/dist/number-input/index.d.ts +113 -0
  60. package/dist/paginator/Icons.js +66 -0
  61. package/dist/paginator/Paginator.js +184 -57
  62. package/dist/paginator/index.d.ts +20 -0
  63. package/dist/password-input/PasswordInput.js +203 -0
  64. package/dist/password-input/index.d.ts +94 -0
  65. package/dist/progress-bar/ProgressBar.js +97 -44
  66. package/dist/progress-bar/index.d.ts +18 -0
  67. package/dist/radio/Radio.js +39 -21
  68. package/dist/radio/index.d.ts +23 -0
  69. package/dist/resultsetTable/ResultsetTable.js +93 -69
  70. package/dist/resultsetTable/index.d.ts +19 -0
  71. package/dist/select/Select.js +917 -263
  72. package/dist/select/index.d.ts +53 -0
  73. package/dist/sidenav/Sidenav.js +87 -125
  74. package/dist/sidenav/index.d.ts +13 -0
  75. package/dist/slider/Slider.js +219 -73
  76. package/dist/slider/index.d.ts +29 -0
  77. package/dist/spinner/Spinner.js +249 -64
  78. package/dist/spinner/index.d.ts +17 -0
  79. package/dist/stories/Button.js +71 -0
  80. package/dist/stories/Button.stories.js +55 -0
  81. package/dist/stories/Header.js +67 -0
  82. package/dist/stories/Header.stories.js +31 -0
  83. package/dist/stories/Introduction.stories.mdx +211 -0
  84. package/dist/stories/Page.js +68 -0
  85. package/dist/stories/Page.stories.js +39 -0
  86. package/dist/stories/assets/code-brackets.svg +1 -0
  87. package/dist/stories/assets/colors.svg +1 -0
  88. package/dist/stories/assets/comments.svg +1 -0
  89. package/dist/stories/assets/direction.svg +1 -0
  90. package/dist/stories/assets/flow.svg +1 -0
  91. package/dist/stories/assets/plugin.svg +1 -0
  92. package/dist/stories/assets/repo.svg +1 -0
  93. package/dist/stories/assets/stackalt.svg +1 -0
  94. package/dist/stories/button.css +30 -0
  95. package/dist/stories/header.css +26 -0
  96. package/dist/stories/page.css +69 -0
  97. package/dist/switch/Switch.js +52 -25
  98. package/dist/switch/index.d.ts +24 -0
  99. package/dist/table/Table.js +63 -15
  100. package/dist/table/index.d.ts +13 -0
  101. package/dist/tabs/Tabs.js +210 -50
  102. package/dist/tabs/index.d.ts +19 -0
  103. package/dist/tag/Tag.js +100 -35
  104. package/dist/tag/index.d.ts +24 -0
  105. package/dist/text-input/TextInput.js +974 -0
  106. package/dist/text-input/index.d.ts +135 -0
  107. package/dist/textarea/Textarea.js +250 -107
  108. package/dist/textarea/index.d.ts +117 -0
  109. package/dist/toggle/Toggle.js +16 -19
  110. package/dist/toggle/index.d.ts +21 -0
  111. package/dist/toggle-group/ToggleGroup.js +327 -0
  112. package/dist/toggle-group/index.d.ts +21 -0
  113. package/dist/upload/Upload.js +13 -8
  114. package/dist/upload/buttons-upload/ButtonsUpload.js +35 -25
  115. package/dist/upload/buttons-upload/Icons.js +40 -0
  116. package/dist/upload/dragAndDropArea/DragAndDropArea.js +84 -37
  117. package/dist/upload/dragAndDropArea/Icons.js +39 -0
  118. package/dist/upload/file-upload/FileToUpload.js +64 -33
  119. package/dist/upload/file-upload/Icons.js +66 -0
  120. package/dist/upload/files-upload/FilesToUpload.js +16 -16
  121. package/dist/upload/index.d.ts +15 -0
  122. package/dist/upload/transaction/Icons.js +160 -0
  123. package/dist/upload/transaction/Transaction.js +42 -49
  124. package/dist/upload/transactions/Transactions.js +38 -20
  125. package/dist/useTheme.js +22 -0
  126. package/dist/wizard/Icons.js +65 -0
  127. package/dist/wizard/Wizard.js +156 -61
  128. package/dist/wizard/index.d.ts +18 -0
  129. package/package.json +26 -14
  130. package/test/AccordionGroup.test.js +125 -0
  131. package/test/Date.test.js +15 -13
  132. package/test/DateInput.test.js +242 -0
  133. package/test/Dropdown.test.js +19 -4
  134. package/test/FileInput.test.js +201 -0
  135. package/test/Footer.test.js +2 -7
  136. package/test/Header.test.js +5 -10
  137. package/test/Heading.test.js +60 -12
  138. package/test/InputText.test.js +31 -28
  139. package/test/Link.test.js +25 -7
  140. package/test/NumberInput.test.js +259 -0
  141. package/test/Paginator.test.js +76 -60
  142. package/test/PasswordInput.test.js +83 -0
  143. package/test/ResultsetTable.test.js +65 -17
  144. package/test/Select.test.js +371 -147
  145. package/test/Sidenav.test.js +22 -64
  146. package/test/Slider.test.js +24 -15
  147. package/test/Spinner.test.js +5 -0
  148. package/test/Tabs.test.js +21 -0
  149. package/test/TextInput.test.js +732 -0
  150. package/test/Textarea.test.js +193 -0
  151. package/test/ToggleGroup.test.js +85 -0
  152. package/test/Upload.test.js +1 -1
  153. package/test/V3Select.test.js +212 -0
  154. package/test/{TextArea.test.js → V3TextArea.test.js} +6 -7
  155. package/dist/accordion/Accordion.stories.js +0 -207
  156. package/dist/accordion/readme.md +0 -96
  157. package/dist/alert/Alert.stories.js +0 -158
  158. package/dist/alert/close.svg +0 -4
  159. package/dist/alert/error.svg +0 -4
  160. package/dist/alert/info.svg +0 -4
  161. package/dist/alert/readme.md +0 -43
  162. package/dist/alert/success.svg +0 -4
  163. package/dist/alert/warning.svg +0 -4
  164. package/dist/button/Button.stories.js +0 -224
  165. package/dist/button/readme.md +0 -93
  166. package/dist/checkbox/Checkbox.stories.js +0 -144
  167. package/dist/checkbox/readme.md +0 -116
  168. package/dist/common/services/example-service.js +0 -10
  169. package/dist/common/services/example-service.test.js +0 -12
  170. package/dist/date/Date.stories.js +0 -205
  171. package/dist/date/calendar.svg +0 -1
  172. package/dist/date/calendar_dark.svg +0 -1
  173. package/dist/date/readme.md +0 -73
  174. package/dist/dialog/Dialog.stories.js +0 -217
  175. package/dist/dialog/readme.md +0 -32
  176. package/dist/dropdown/Dropdown.stories.js +0 -249
  177. package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
  178. package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
  179. package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
  180. package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
  181. package/dist/dropdown/readme.md +0 -69
  182. package/dist/footer/Footer.stories.js +0 -94
  183. package/dist/footer/dxc_logo_wht.png +0 -0
  184. package/dist/footer/readme.md +0 -41
  185. package/dist/header/Header.stories.js +0 -176
  186. package/dist/header/close_icon.svg +0 -1
  187. package/dist/header/dxc_logo_black.png +0 -0
  188. package/dist/header/dxc_logo_white.png +0 -0
  189. package/dist/header/hamb_menu_black.svg +0 -1
  190. package/dist/header/hamb_menu_white.svg +0 -1
  191. package/dist/header/readme.md +0 -33
  192. package/dist/input-text/InputText.stories.js +0 -209
  193. package/dist/input-text/error.svg +0 -1
  194. package/dist/input-text/readme.md +0 -91
  195. package/dist/link/readme.md +0 -51
  196. package/dist/paginator/images/next.svg +0 -3
  197. package/dist/paginator/images/nextPage.svg +0 -3
  198. package/dist/paginator/images/previous.svg +0 -3
  199. package/dist/paginator/images/previousPage.svg +0 -3
  200. package/dist/paginator/readme.md +0 -50
  201. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  202. package/dist/progress-bar/readme.md +0 -63
  203. package/dist/radio/Radio.stories.js +0 -166
  204. package/dist/radio/readme.md +0 -70
  205. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  206. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  207. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  208. package/dist/select/Select.stories.js +0 -235
  209. package/dist/select/readme.md +0 -72
  210. package/dist/sidenav/arrow_icon.svg +0 -3
  211. package/dist/slider/Slider.stories.js +0 -241
  212. package/dist/slider/readme.md +0 -64
  213. package/dist/spinner/Spinner.stories.js +0 -183
  214. package/dist/spinner/readme.md +0 -65
  215. package/dist/switch/Switch.stories.js +0 -134
  216. package/dist/switch/readme.md +0 -133
  217. package/dist/tabs/Tabs.stories.js +0 -130
  218. package/dist/tabs/readme.md +0 -78
  219. package/dist/tabs-for-sections/TabsForSections.js +0 -107
  220. package/dist/tabs-for-sections/readme.md +0 -78
  221. package/dist/toggle/Toggle.stories.js +0 -297
  222. package/dist/toggle/readme.md +0 -80
  223. package/dist/upload/Upload.stories.js +0 -72
  224. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  225. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  226. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  227. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  228. package/dist/upload/file-upload/audio-icon.svg +0 -4
  229. package/dist/upload/file-upload/close.svg +0 -4
  230. package/dist/upload/file-upload/file-icon.svg +0 -4
  231. package/dist/upload/file-upload/video-icon.svg +0 -4
  232. package/dist/upload/readme.md +0 -37
  233. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  234. package/dist/upload/transaction/audio-icon.svg +0 -4
  235. package/dist/upload/transaction/error-icon.svg +0 -4
  236. package/dist/upload/transaction/file-icon-err.svg +0 -4
  237. package/dist/upload/transaction/file-icon.svg +0 -4
  238. package/dist/upload/transaction/image-icon-err.svg +0 -4
  239. package/dist/upload/transaction/image-icon.svg +0 -4
  240. package/dist/upload/transaction/success-icon.svg +0 -4
  241. package/dist/upload/transaction/video-icon-err.svg +0 -4
  242. package/dist/upload/transaction/video-icon.svg +0 -4
  243. package/dist/wizard/invalid_icon.svg +0 -6
  244. package/dist/wizard/valid_icon.svg +0 -6
  245. package/dist/wizard/validation-wrong.svg +0 -6
  246. package/test/TabsForSections.test.js +0 -34
  247. package/test/Toggle.test.js +0 -43
@@ -19,18 +19,96 @@ var _react = _interopRequireWildcard(require("react"));
19
19
 
20
20
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
21
21
 
22
- var _CircularProgress = _interopRequireDefault(require("@material-ui/core/CircularProgress"));
23
-
24
22
  var _propTypes = _interopRequireDefault(require("prop-types"));
25
23
 
26
- require("../common/OpenSans.css");
27
-
28
24
  var _variables = require("../common/variables.js");
29
25
 
30
- var _ThemeContext = _interopRequireDefault(require("../ThemeContext.js"));
26
+ var _useTheme = _interopRequireDefault(require("../useTheme.js"));
27
+
28
+ var _BackgroundColorContext = _interopRequireDefault(require("../BackgroundColorContext.js"));
29
+
30
+ function _templateObject12() {
31
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n margin: 0;\n width: 100%;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n display: ", ";\n font-family: ", ";\n font-weight: ", ";\n font-size: ", ";\n font-style: ", ";\n color: ", ";\n text-align: ", ";\n letter-spacing: ", ";\n"]);
32
+
33
+ _templateObject12 = function _templateObject12() {
34
+ return data;
35
+ };
36
+
37
+ return data;
38
+ }
39
+
40
+ function _templateObject11() {
41
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n margin: 0;\n width: 100%;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n font-family: ", ";\n font-weight: ", ";\n font-size: ", ";\n font-style: ", ";\n color: ", ";\n text-align: ", ";\n letter-spacing: ", ";\n"]);
42
+
43
+ _templateObject11 = function _templateObject11() {
44
+ return data;
45
+ };
46
+
47
+ return data;
48
+ }
49
+
50
+ function _templateObject10() {
51
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n display: block;\n margin: 0 auto;\n position: absolute;\n text-align: center;\n width: 110px;\n"]);
52
+
53
+ _templateObject10 = function _templateObject10() {
54
+ return data;
55
+ };
56
+
57
+ return data;
58
+ }
59
+
60
+ function _templateObject9() {
61
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n fill: transparent;\n stroke-linecap: initial;\n vector-effect: non-scaling-stroke;\n animation: ", ";\n stroke: ", ";\n transform-origin: ", ";\n stroke-dasharray: ", ";\n stroke-width: ", ";\n stroke-dashoffset: ", ";\n"]);
62
+
63
+ _templateObject9 = function _templateObject9() {
64
+ return data;
65
+ };
66
+
67
+ return data;
68
+ }
69
+
70
+ function _templateObject8() {
71
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n height: inherit;\n width: inherit;\n transform: rotate(-90deg);\n top: 0;\n left: 0;\n transform-origin: center;\n overflow: visible;\n animation: ", ";\n"]);
72
+
73
+ _templateObject8 = function _templateObject8() {
74
+ return data;
75
+ };
76
+
77
+ return data;
78
+ }
79
+
80
+ function _templateObject7() {
81
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n height: inherit;\n width: inherit;\n position: relative;\n z-index: 2;\n"]);
82
+
83
+ _templateObject7 = function _templateObject7() {
84
+ return data;
85
+ };
86
+
87
+ return data;
88
+ }
89
+
90
+ function _templateObject6() {
91
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n animation: none;\n fill: transparent;\n stroke: ", ";\n stroke-dasharray: ", ";\n stroke-linecap: initial;\n stroke-width: ", ";\n transform-origin: 50% 50%;\n vector-effect: non-scaling-stroke;\n"]);
92
+
93
+ _templateObject6 = function _templateObject6() {
94
+ return data;
95
+ };
96
+
97
+ return data;
98
+ }
99
+
100
+ function _templateObject5() {
101
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n height: inherit;\n width: inherit;\n"]);
102
+
103
+ _templateObject5 = function _templateObject5() {
104
+ return data;
105
+ };
106
+
107
+ return data;
108
+ }
31
109
 
32
110
  function _templateObject4() {
33
- var data = (0, _taggedTemplateLiteral2["default"])(["\n margin-top: ", ";\n display: ", ";\n color: ", ";\n font-size: 12px;\n text-align: center;\n"]);
111
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n height: inherit;\n width: inherit;\n position: absolute;\n z-index: 1;\n"]);
34
112
 
35
113
  _templateObject4 = function _templateObject4() {
36
114
  return data;
@@ -40,7 +118,7 @@ function _templateObject4() {
40
118
  }
41
119
 
42
120
  function _templateObject3() {
43
- var data = (0, _taggedTemplateLiteral2["default"])(["\n margin-top: ", ";\n color: ", ";\n text-transform: uppercase;\n font-size: 12px;\n text-align: center;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n"]);
121
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n width: 100vw;\n height: 100vh;\n opacity: 1;\n transition: opacity 225ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;\n position: fixed;\n top: 0;\n left: 0;\n background-color: ", ";\n opacity: ", ";\n"]);
44
122
 
45
123
  _templateObject3 = function _templateObject3() {
46
124
  return data;
@@ -50,7 +128,7 @@ function _templateObject3() {
50
128
  }
51
129
 
52
130
  function _templateObject2() {
53
- var data = (0, _taggedTemplateLiteral2["default"])(["\n font-family: \"Open Sans\", sans-serif;\n border-radius: 80px;\n border: ", ";\n width: ", ";\n height: ", ";\n z-index: ", ";\n\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n\n .MuiCircularProgress-colorPrimary {\n color: ", ";\n width: ", ";\n height: ", ";\n margin-top: ", ";\n margin-left: ", ";\n }\n\n .MuiCircularProgress-circle {\n stroke-width: ", ";\n r: ", ";\n }\n"]);
131
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n align-items: center;\n display: flex;\n height: ", ";\n width: ", ";\n justify-content: center;\n position: relative;\n background-color: transparent;\n\n @keyframes spinner-svg {\n 0% {\n transform: rotateZ(0deg);\n }\n 100% {\n transform: rotateZ(360deg);\n }\n }\n @keyframes svg-circle-large {\n 0% {\n stroke-dashoffset: 400;\n transform: rotate(0);\n }\n\n 50% {\n stroke-dashoffset: 75;\n transform: rotate(45deg);\n }\n\n 100% {\n stroke-dashoffset: 400;\n transform: rotate(360deg);\n }\n }\n @keyframes svg-circle-small {\n 0% {\n stroke-dashoffset: 35;\n transform: rotate(0);\n }\n\n 50% {\n stroke-dashoffset: 8;\n transform: rotate(45deg);\n }\n\n 100% {\n stroke-dashoffset: 35;\n transform: rotate(360deg);\n }\n }\n"]);
54
132
 
55
133
  _templateObject2 = function _templateObject2() {
56
134
  return data;
@@ -60,7 +138,7 @@ function _templateObject2() {
60
138
  }
61
139
 
62
140
  function _templateObject() {
63
- var data = (0, _taggedTemplateLiteral2["default"])(["\n background-color: ", ";\n display: flex;\n flex-wrap: wrap;\n justify-content: ", ";\n align-items: ", ";\n position: ", ";\n top: ", ";\n left: ", ";\n right: ", ";\n bottom: ", ";\n z-index: ", ";\n"]);
141
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n height: ", ";\n width: ", ";\n display: ", ";\n position: ", ";\n top: ", ";\n left: ", ";\n justify-content: ", ";\n align-items: ", ";\n z-index: ", ";\n\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n"]);
64
142
 
65
143
  _templateObject = function _templateObject() {
66
144
  return data;
@@ -72,47 +150,112 @@ function _templateObject() {
72
150
  var DxcSpinner = function DxcSpinner(_ref) {
73
151
  var _ref$label = _ref.label,
74
152
  label = _ref$label === void 0 ? "" : _ref$label,
75
- _ref$theme = _ref.theme,
76
- theme = _ref$theme === void 0 ? "light" : _ref$theme,
77
153
  value = _ref.value,
78
154
  _ref$showValue = _ref.showValue,
79
155
  showValue = _ref$showValue === void 0 ? false : _ref$showValue,
80
156
  _ref$mode = _ref.mode,
81
157
  mode = _ref$mode === void 0 ? "large" : _ref$mode,
82
158
  margin = _ref.margin;
83
-
84
- var colorsTheme = (0, _react.useContext)(_ThemeContext["default"]) || _variables.colors;
85
-
159
+ var colorsTheme = (0, _useTheme["default"])();
160
+ var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
86
161
  return _react["default"].createElement(_styledComponents.ThemeProvider, {
87
- theme: colorsTheme
88
- }, _react["default"].createElement(BackgroundSpinner, {
89
- brightness: theme,
90
- mode: mode
162
+ theme: colorsTheme.spinner
91
163
  }, _react["default"].createElement(DXCSpinner, {
92
164
  margin: margin,
93
- showValue: showValue,
94
- label: label,
95
165
  mode: mode
96
- }, label && mode !== "small" && _react["default"].createElement(SpinnerLabel, {
97
- showValue: showValue,
98
- brightness: theme,
166
+ }, _react["default"].createElement(SpinnerContainer, {
167
+ backgroundType: backgroundType,
168
+ mode: mode
169
+ }, mode === "overlay" && _react["default"].createElement(BackOverlay, null), _react["default"].createElement(BackgroundSpinner, {
170
+ mode: mode
171
+ }, mode !== "small" && _react["default"].createElement(SVGBackground, {
172
+ viewBox: "0 0 140 140"
173
+ }, _react["default"].createElement(CircleBackground, {
174
+ cx: "70",
175
+ cy: "70",
176
+ r: "65",
177
+ mode: mode
178
+ })), mode === "small" && _react["default"].createElement(SVGBackground, {
179
+ viewBox: "0 0 16 16"
180
+ }, _react["default"].createElement(CircleBackground, {
181
+ cx: "8",
182
+ cy: "8",
183
+ r: "6",
99
184
  mode: mode
100
- }, label), value && mode !== "small" && _react["default"].createElement(SpinnerProgress, {
101
- brightness: theme,
185
+ }))), value >= 0 && value <= 100 ? _react["default"].createElement(Spinner, {
186
+ role: "progressbar",
187
+ mode: mode
188
+ }, mode !== "small" && _react["default"].createElement(SVGSpinner, {
189
+ viewBox: "0 0 140 140",
190
+ isDeterminated: true
191
+ }, _react["default"].createElement(CircleSpinner, {
192
+ cx: "70",
193
+ cy: "70",
194
+ r: "65",
195
+ backgroundType: backgroundType,
196
+ mode: mode,
197
+ isDeterminated: true,
198
+ value: value
199
+ })), mode === "small" && _react["default"].createElement(SVGSpinner, {
200
+ viewBox: "0 0 16 16",
201
+ isDeterminated: true
202
+ }, _react["default"].createElement(CircleSpinner, {
203
+ cx: "8",
204
+ cy: "8",
205
+ r: "6",
206
+ backgroundType: backgroundType,
207
+ mode: mode,
208
+ isDeterminated: true,
209
+ value: value
210
+ }))) : _react["default"].createElement(Spinner, {
211
+ role: "progressbar",
212
+ mode: mode
213
+ }, mode !== "small" && _react["default"].createElement(SVGSpinner, {
214
+ viewBox: "0 0 140 140",
215
+ isDeterminated: false
216
+ }, _react["default"].createElement(CircleSpinner, {
217
+ cx: "70",
218
+ cy: "70",
219
+ r: "65",
220
+ backgroundType: backgroundType,
102
221
  mode: mode,
103
- showValue: showValue,
104
- label: label
105
- }, value === "" ? 0 : value >= 0 && value <= 100 ? value : value < 0 ? 0 : 100, "%"), _react["default"].createElement(_CircularProgress["default"], {
106
- variant: showValue ? "static" : "indeterminate",
107
- value: value === "" ? 0 : value >= 0 && value <= 100 ? value : value < 0 ? 0 : 100,
222
+ isDeterminated: false
223
+ })), mode === "small" && _react["default"].createElement(SVGSpinner, {
224
+ viewBox: "0 0 16 16",
225
+ isDeterminated: false
226
+ }, _react["default"].createElement(CircleSpinner, {
227
+ cx: "8",
228
+ cy: "8",
229
+ r: "6",
230
+ backgroundType: backgroundType,
231
+ mode: mode,
232
+ isDeterminated: false
233
+ }))), mode !== "small" && _react["default"].createElement(LabelsContainer, {
234
+ label: label,
235
+ value: value,
236
+ showValue: showValue
237
+ }, _react["default"].createElement(SpinnerLabel, {
238
+ backgroundType: backgroundType,
239
+ mode: mode
240
+ }, label), (value || value === 0) && showValue && _react["default"].createElement(SpinnerProgress, {
241
+ backgroundType: backgroundType,
108
242
  mode: mode,
109
- label: label
110
- }))));
243
+ showValue: showValue
244
+ }, value, "%")))));
245
+ };
246
+
247
+ var determinatedValue = function determinatedValue(props, strokeDashArray) {
248
+ var val = 0;
249
+
250
+ if (props.value >= 0 && props.value <= 100) {
251
+ val = strokeDashArray * (1 - props.value / 100);
252
+ }
253
+
254
+ return val;
111
255
  };
112
256
 
113
257
  DxcSpinner.propTypes = {
114
258
  label: _propTypes["default"].string,
115
- theme: _propTypes["default"].oneOf(["light", "dark"]),
116
259
  value: _propTypes["default"].number,
117
260
  showValue: _propTypes["default"].bool,
118
261
  mode: _propTypes["default"].oneOf(["large", "small", "overlay"]),
@@ -124,12 +267,12 @@ DxcSpinner.propTypes = {
124
267
  }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))])
125
268
  };
126
269
 
127
- var BackgroundSpinner = _styledComponents["default"].div(_templateObject(), function (props) {
128
- return props.mode === "overlay" ? props.theme.mediumBlack : "transparent";
270
+ var DXCSpinner = _styledComponents["default"].div(_templateObject(), function (props) {
271
+ return props.mode === "overlay" ? "100vh" : "";
129
272
  }, function (props) {
130
- return props.mode === "overlay" ? "center" : "";
273
+ return props.mode === "overlay" ? "100vw" : "";
131
274
  }, function (props) {
132
- return props.mode === "overlay" ? "center" : "";
275
+ return props.mode === "overlay" ? "flex" : "";
133
276
  }, function (props) {
134
277
  return props.mode === "overlay" ? "fixed" : "";
135
278
  }, function (props) {
@@ -137,21 +280,11 @@ var BackgroundSpinner = _styledComponents["default"].div(_templateObject(), func
137
280
  }, function (props) {
138
281
  return props.mode === "overlay" ? 0 : "";
139
282
  }, function (props) {
140
- return props.mode === "overlay" ? 0 : "";
141
- }, function (props) {
142
- return props.mode === "overlay" ? 0 : "";
143
- }, function (props) {
144
- return props.mode === "overlay" ? 1000 : "";
145
- });
146
-
147
- var DXCSpinner = _styledComponents["default"].div(_templateObject2(), function (props) {
148
- return props.mode === "small" && "6px solid white" || "8.5px solid white;";
149
- }, function (props) {
150
- return props.mode === "small" && "30px" || "120px";
283
+ return props.mode === "overlay" ? "center" : "";
151
284
  }, function (props) {
152
- return props.mode === "small" && "30px" || "120px";
285
+ return props.mode === "overlay" ? "center" : "";
153
286
  }, function (props) {
154
- return props.mode === "overlay" ? "100" : "";
287
+ return props.mode === "overlay" ? 1300 : "";
155
288
  }, function (props) {
156
289
  return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
157
290
  }, function (props) {
@@ -162,34 +295,86 @@ var DXCSpinner = _styledComponents["default"].div(_templateObject2(), function (
162
295
  return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.bottom ? _variables.spaces[props.margin.bottom] : "";
163
296
  }, function (props) {
164
297
  return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
298
+ });
299
+
300
+ var SpinnerContainer = _styledComponents["default"].div(_templateObject2(), function (props) {
301
+ return props.mode === "small" ? "16px" : "140px";
165
302
  }, function (props) {
166
- return props.theme.yellow;
303
+ return props.mode === "small" ? "16px" : "140px";
304
+ });
305
+
306
+ var BackOverlay = _styledComponents["default"].div(_templateObject3(), function (props) {
307
+ return "".concat(props.theme.overlayBackgroundColor);
167
308
  }, function (props) {
168
- return props.mode === "small" && "44px !important" || "140px !important";
309
+ return "".concat(props.theme.overlayOpacity);
310
+ });
311
+
312
+ var BackgroundSpinner = _styledComponents["default"].div(_templateObject4());
313
+
314
+ var SVGBackground = _styledComponents["default"].svg(_templateObject5());
315
+
316
+ var CircleBackground = _styledComponents["default"].circle(_templateObject6(), function (props) {
317
+ return "".concat(props.theme.totalCircleColor);
318
+ }, function (props) {
319
+ return props.mode !== "small" ? "409" : "38";
169
320
  }, function (props) {
170
- return props.mode === "small" && "44px !important" || "140px !important";
321
+ return props.mode !== "small" ? "8.5px" : "2px";
322
+ });
323
+
324
+ var Spinner = _styledComponents["default"].div(_templateObject7());
325
+
326
+ var SVGSpinner = _styledComponents["default"].svg(_templateObject8(), function (props) {
327
+ return !props.isDeterminated ? "1.4s linear infinite both spinner-svg" : "";
328
+ });
329
+
330
+ var CircleSpinner = _styledComponents["default"].circle(_templateObject9(), function (props) {
331
+ return props.isDeterminated ? "none" : props.mode !== "small" ? "1.4s ease-in-out infinite both svg-circle-large" : "1.4s ease-in-out infinite both svg-circle-small";
171
332
  }, function (props) {
172
- return props.label === "" && props.showValue === false && props.mode === "large" ? "-10px" : props.mode === "small" ? "-7px" : props.label !== "" && props.showValue === false ? "-78.5px" : props.label === "" && props.showValue === true ? "-78.75px" : "-88.5px";
333
+ return props.backgroundType === "dark" ? props.theme.trackCircleColorOnDark : props.theme.trackCircleColor;
173
334
  }, function (props) {
174
- return props.mode === "small" && "-7px !important" || "-10px !important";
335
+ return !props.isDeterminated ? "50% 50%" : "";
175
336
  }, function (props) {
176
- return props.mode === "small" && "6.2px" || "2.7px";
337
+ return props.mode !== "small" ? "409" : "38";
177
338
  }, function (props) {
178
- return props.mode === "small" && "18.2" || "20.2";
339
+ return props.mode !== "small" ? "8.5px" : "2px";
340
+ }, function (props) {
341
+ return props.isDeterminated ? props.mode !== "small" ? determinatedValue(props, 409) : determinatedValue(props, 38) : "";
179
342
  });
180
343
 
181
- var SpinnerLabel = _styledComponents["default"].div(_templateObject3(), function (props) {
182
- return props.showValue === false && "52px" || "45px";
344
+ var LabelsContainer = _styledComponents["default"].div(_templateObject10());
345
+
346
+ var SpinnerLabel = _styledComponents["default"].p(_templateObject11(), function (props) {
347
+ return props.mode === "overlay" ? props.theme.overlayLabelFontFamily : props.theme.labelFontFamily;
348
+ }, function (props) {
349
+ return props.mode === "overlay" ? props.theme.overlayLabelFontWeight : props.theme.labelFontWeight;
350
+ }, function (props) {
351
+ return props.mode === "overlay" ? props.theme.overlayLabelFontSize : props.theme.labelFontSize;
352
+ }, function (props) {
353
+ return props.mode === "overlay" ? props.theme.overlayLabelFontStyle : props.theme.labelFontStyle;
354
+ }, function (props) {
355
+ return props.mode === "overlay" ? props.theme.overlayLabelFontColor : props.backgroundType === "dark" ? props.theme.labelFontColorOnDark : props.theme.labelFontColor;
356
+ }, function (props) {
357
+ return props.mode === "overlay" ? props.theme.overlayLabelTextAlign : props.theme.labelTextAlign;
183
358
  }, function (props) {
184
- return props.brightness === "dark" || props.mode === "overlay" ? props.theme.white : props.theme.black;
359
+ return props.mode === "overlay" ? props.theme.overlayLabelLetterSpacing : props.theme.labelLetterSpacing;
185
360
  });
186
361
 
187
- var SpinnerProgress = _styledComponents["default"].div(_templateObject4(), function (props) {
188
- return props.label === "" && "52px" || "";
189
- }, function (props) {
362
+ var SpinnerProgress = _styledComponents["default"].p(_templateObject12(), function (props) {
190
363
  return props.value !== "" && props.showValue === true && "block" || "none";
191
364
  }, function (props) {
192
- return props.brightness === "dark" || props.mode === "overlay" ? props.theme.white : props.theme.black;
365
+ return props.mode === "overlay" ? props.theme.overlayProgressValueFontFamily : props.theme.progressValueFontFamily;
366
+ }, function (props) {
367
+ return props.mode === "overlay" ? props.theme.overlayProgressValueFontWeight : props.theme.progressValueFontWeight;
368
+ }, function (props) {
369
+ return props.mode === "overlay" ? props.theme.overlayProgressValueFontSize : props.theme.progressValueFontSize;
370
+ }, function (props) {
371
+ return props.mode === "overlay" ? props.theme.overlayProgressValueFontStyle : props.theme.progressValueFontStyle;
372
+ }, function (props) {
373
+ return props.mode === "overlay" ? props.theme.overlayProgressValueFontColor : props.backgroundType === "dark" ? props.theme.progressValueFontColorOnDark : props.theme.progressValueFontColor;
374
+ }, function (props) {
375
+ return props.mode === "overlay" ? props.theme.overlayProgressValueTextAlign : props.theme.progressValueTextAlign;
376
+ }, function (props) {
377
+ return props.mode === "overlay" ? props.theme.overlayProgressValueLetterSpacing : props.theme.progressValueLetterSpacing;
193
378
  });
194
379
 
195
380
  var _default = DxcSpinner;
@@ -0,0 +1,17 @@
1
+ type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
2
+ type Margin = {
3
+ top?: Space;
4
+ bottom?: Space;
5
+ left?: Space;
6
+ right?: Space;
7
+ };
8
+
9
+ type Props = {
10
+ label?: string;
11
+ value?: number;
12
+ showValue?: boolean;
13
+ mode?: "large" | "small" | "overlay";
14
+ margin?: Space | Margin;
15
+ };
16
+
17
+ export default function DxcSpinner(props: Props): JSX.Element;
@@ -0,0 +1,71 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.Button = void 0;
9
+
10
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
+
12
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
13
+
14
+ var _react = _interopRequireDefault(require("react"));
15
+
16
+ var _propTypes = _interopRequireDefault(require("prop-types"));
17
+
18
+ require("./button.css");
19
+
20
+ /**
21
+ * Primary UI component for user interaction
22
+ */
23
+ var Button = function Button(_ref) {
24
+ var primary = _ref.primary,
25
+ backgroundColor = _ref.backgroundColor,
26
+ size = _ref.size,
27
+ label = _ref.label,
28
+ props = (0, _objectWithoutProperties2["default"])(_ref, ["primary", "backgroundColor", "size", "label"]);
29
+ var mode = primary ? 'storybook-button--primary' : 'storybook-button--secondary';
30
+ return _react["default"].createElement("button", (0, _extends2["default"])({
31
+ type: "button",
32
+ className: ['storybook-button', "storybook-button--".concat(size), mode].join(' '),
33
+ style: backgroundColor && {
34
+ backgroundColor: backgroundColor
35
+ }
36
+ }, props), label);
37
+ };
38
+
39
+ exports.Button = Button;
40
+ Button.propTypes = {
41
+ /**
42
+ * Is this the principal call to action on the page?
43
+ */
44
+ primary: _propTypes["default"].bool,
45
+
46
+ /**
47
+ * What background color to use
48
+ */
49
+ backgroundColor: _propTypes["default"].string,
50
+
51
+ /**
52
+ * How large should the button be?
53
+ */
54
+ size: _propTypes["default"].oneOf(['small', 'medium', 'large']),
55
+
56
+ /**
57
+ * Button contents
58
+ */
59
+ label: _propTypes["default"].string.isRequired,
60
+
61
+ /**
62
+ * Optional click handler
63
+ */
64
+ onClick: _propTypes["default"].func
65
+ };
66
+ Button.defaultProps = {
67
+ backgroundColor: null,
68
+ primary: false,
69
+ size: 'medium',
70
+ onClick: undefined
71
+ };
@@ -0,0 +1,55 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.Small = exports.Large = exports.Secondary = exports.Primary = exports["default"] = void 0;
9
+
10
+ var _react = _interopRequireDefault(require("react"));
11
+
12
+ var _Button = require("./Button");
13
+
14
+ // More on default export: https://storybook.js.org/docs/react/writing-stories/introduction#default-export
15
+ var _default = {
16
+ title: 'Example/Button',
17
+ component: _Button.Button,
18
+ // More on argTypes: https://storybook.js.org/docs/react/api/argtypes
19
+ argTypes: {
20
+ backgroundColor: {
21
+ control: 'color'
22
+ }
23
+ }
24
+ }; // More on component templates: https://storybook.js.org/docs/react/writing-stories/introduction#using-args
25
+
26
+ exports["default"] = _default;
27
+
28
+ var Template = function Template(args) {
29
+ return _react["default"].createElement(_Button.Button, args);
30
+ };
31
+
32
+ var Primary = Template.bind({}); // More on args: https://storybook.js.org/docs/react/writing-stories/args
33
+
34
+ exports.Primary = Primary;
35
+ Primary.args = {
36
+ primary: true,
37
+ label: 'Button'
38
+ };
39
+ var Secondary = Template.bind({});
40
+ exports.Secondary = Secondary;
41
+ Secondary.args = {
42
+ label: 'Button'
43
+ };
44
+ var Large = Template.bind({});
45
+ exports.Large = Large;
46
+ Large.args = {
47
+ size: 'large',
48
+ label: 'Button'
49
+ };
50
+ var Small = Template.bind({});
51
+ exports.Small = Small;
52
+ Small.args = {
53
+ size: 'small',
54
+ label: 'Button'
55
+ };
@@ -0,0 +1,67 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.Header = void 0;
9
+
10
+ var _react = _interopRequireDefault(require("react"));
11
+
12
+ var _propTypes = _interopRequireDefault(require("prop-types"));
13
+
14
+ var _Button = require("./Button");
15
+
16
+ require("./header.css");
17
+
18
+ var Header = function Header(_ref) {
19
+ var user = _ref.user,
20
+ onLogin = _ref.onLogin,
21
+ onLogout = _ref.onLogout,
22
+ onCreateAccount = _ref.onCreateAccount;
23
+ return _react["default"].createElement("header", null, _react["default"].createElement("div", {
24
+ className: "wrapper"
25
+ }, _react["default"].createElement("div", null, _react["default"].createElement("svg", {
26
+ width: "32",
27
+ height: "32",
28
+ viewBox: "0 0 32 32",
29
+ xmlns: "http://www.w3.org/2000/svg"
30
+ }, _react["default"].createElement("g", {
31
+ fill: "none",
32
+ fillRule: "evenodd"
33
+ }, _react["default"].createElement("path", {
34
+ d: "M10 0h12a10 10 0 0110 10v12a10 10 0 01-10 10H10A10 10 0 010 22V10A10 10 0 0110 0z",
35
+ fill: "#FFF"
36
+ }), _react["default"].createElement("path", {
37
+ d: "M5.3 10.6l10.4 6v11.1l-10.4-6v-11zm11.4-6.2l9.7 5.5-9.7 5.6V4.4z",
38
+ fill: "#555AB9"
39
+ }), _react["default"].createElement("path", {
40
+ d: "M27.2 10.6v11.2l-10.5 6V16.5l10.5-6zM15.7 4.4v11L6 10l9.7-5.5z",
41
+ fill: "#91BAF8"
42
+ }))), _react["default"].createElement("h1", null, "Acme")), _react["default"].createElement("div", null, user ? _react["default"].createElement(_Button.Button, {
43
+ size: "small",
44
+ onClick: onLogout,
45
+ label: "Log out"
46
+ }) : _react["default"].createElement(_react["default"].Fragment, null, _react["default"].createElement(_Button.Button, {
47
+ size: "small",
48
+ onClick: onLogin,
49
+ label: "Log in"
50
+ }), _react["default"].createElement(_Button.Button, {
51
+ primary: true,
52
+ size: "small",
53
+ onClick: onCreateAccount,
54
+ label: "Sign up"
55
+ })))));
56
+ };
57
+
58
+ exports.Header = Header;
59
+ Header.propTypes = {
60
+ user: _propTypes["default"].shape({}),
61
+ onLogin: _propTypes["default"].func.isRequired,
62
+ onLogout: _propTypes["default"].func.isRequired,
63
+ onCreateAccount: _propTypes["default"].func.isRequired
64
+ };
65
+ Header.defaultProps = {
66
+ user: null
67
+ };
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.LoggedOut = exports.LoggedIn = exports["default"] = void 0;
9
+
10
+ var _react = _interopRequireDefault(require("react"));
11
+
12
+ var _Header = require("./Header");
13
+
14
+ var _default = {
15
+ title: 'Example/Header',
16
+ component: _Header.Header
17
+ };
18
+ exports["default"] = _default;
19
+
20
+ var Template = function Template(args) {
21
+ return _react["default"].createElement(_Header.Header, args);
22
+ };
23
+
24
+ var LoggedIn = Template.bind({});
25
+ exports.LoggedIn = LoggedIn;
26
+ LoggedIn.args = {
27
+ user: {}
28
+ };
29
+ var LoggedOut = Template.bind({});
30
+ exports.LoggedOut = LoggedOut;
31
+ LoggedOut.args = {};