@dxc-technology/halstack-react 0.0.0-d3554d7 → 0.0.0-d3df47e
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/BackgroundColorContext.d.ts +1 -10
- package/BackgroundColorContext.js +5 -22
- package/HalstackContext.d.ts +1221 -0
- package/HalstackContext.js +310 -0
- package/README.md +47 -0
- package/accordion/Accordion.d.ts +1 -1
- package/accordion/Accordion.js +116 -181
- package/accordion/Accordion.stories.tsx +103 -127
- package/accordion/Accordion.test.js +32 -33
- package/accordion/types.d.ts +9 -16
- package/accordion-group/AccordionGroup.d.ts +5 -4
- package/accordion-group/AccordionGroup.js +38 -107
- package/accordion-group/AccordionGroup.stories.tsx +95 -68
- package/accordion-group/AccordionGroup.test.js +55 -90
- package/accordion-group/AccordionGroupAccordion.d.ts +4 -0
- package/accordion-group/AccordionGroupAccordion.js +31 -0
- package/accordion-group/types.d.ts +15 -16
- package/action-icon/ActionIcon.d.ts +4 -0
- package/action-icon/ActionIcon.js +47 -0
- package/action-icon/ActionIcon.stories.tsx +41 -0
- package/action-icon/ActionIcon.test.js +64 -0
- package/action-icon/types.d.ts +26 -0
- package/alert/Alert.js +23 -59
- package/alert/Alert.stories.tsx +28 -0
- package/alert/Alert.test.js +29 -46
- package/alert/types.d.ts +5 -5
- package/badge/Badge.d.ts +1 -1
- package/badge/Badge.js +142 -40
- package/badge/Badge.stories.tsx +210 -0
- package/badge/Badge.test.js +30 -0
- package/badge/types.d.ts +52 -2
- package/bleed/Bleed.js +14 -55
- package/bleed/Bleed.stories.tsx +95 -95
- package/bleed/types.d.ts +26 -2
- package/box/Box.d.ts +1 -1
- package/box/Box.js +30 -81
- package/box/Box.stories.tsx +38 -51
- package/box/Box.test.js +2 -7
- package/box/types.d.ts +3 -14
- package/bulleted-list/BulletedList.d.ts +7 -0
- package/bulleted-list/BulletedList.js +89 -0
- package/bulleted-list/BulletedList.stories.tsx +115 -0
- package/bulleted-list/types.d.ts +38 -0
- package/button/Button.d.ts +1 -1
- package/button/Button.js +62 -113
- package/button/Button.stories.tsx +160 -90
- package/button/Button.test.js +20 -17
- package/button/types.d.ts +12 -8
- package/card/Card.d.ts +1 -1
- package/card/Card.js +58 -102
- package/card/Card.stories.tsx +12 -42
- package/card/Card.test.js +11 -22
- package/card/types.d.ts +6 -11
- package/checkbox/Checkbox.d.ts +2 -2
- package/checkbox/Checkbox.js +144 -182
- package/checkbox/Checkbox.stories.tsx +166 -136
- package/checkbox/Checkbox.test.js +163 -29
- package/checkbox/types.d.ts +18 -6
- package/chip/Chip.js +39 -79
- package/chip/Chip.stories.tsx +121 -26
- package/chip/Chip.test.js +16 -31
- package/chip/types.d.ts +4 -4
- package/common/OpenSans.css +68 -80
- package/common/coreTokens.d.ts +237 -0
- package/common/coreTokens.js +184 -0
- package/common/utils.d.ts +1 -0
- package/common/utils.js +6 -12
- package/common/variables.d.ts +1367 -0
- package/common/variables.js +1002 -1136
- package/container/Container.d.ts +4 -0
- package/container/Container.js +194 -0
- package/container/Container.stories.tsx +214 -0
- package/container/types.d.ts +74 -0
- package/date-input/Calendar.d.ts +4 -0
- package/date-input/Calendar.js +214 -0
- package/date-input/DateInput.js +171 -306
- package/date-input/DateInput.stories.tsx +203 -56
- package/date-input/DateInput.test.js +708 -369
- package/date-input/DatePicker.d.ts +4 -0
- package/date-input/DatePicker.js +115 -0
- package/date-input/Icons.d.ts +6 -0
- package/date-input/Icons.js +58 -0
- package/date-input/YearPicker.d.ts +4 -0
- package/date-input/YearPicker.js +100 -0
- package/date-input/types.d.ts +86 -22
- package/dialog/Dialog.d.ts +1 -1
- package/dialog/Dialog.js +68 -130
- package/dialog/Dialog.stories.tsx +320 -167
- package/dialog/Dialog.test.js +287 -20
- package/dialog/types.d.ts +18 -25
- package/dropdown/Dropdown.d.ts +1 -1
- package/dropdown/Dropdown.js +243 -304
- package/dropdown/Dropdown.stories.tsx +245 -56
- package/dropdown/Dropdown.test.js +575 -165
- package/dropdown/DropdownMenu.d.ts +4 -0
- package/dropdown/DropdownMenu.js +63 -0
- package/dropdown/DropdownMenuItem.d.ts +4 -0
- package/dropdown/DropdownMenuItem.js +67 -0
- package/dropdown/types.d.ts +32 -14
- package/file-input/FileInput.d.ts +2 -2
- package/file-input/FileInput.js +246 -357
- package/file-input/FileInput.stories.tsx +123 -12
- package/file-input/FileInput.test.js +369 -367
- package/file-input/FileItem.d.ts +4 -14
- package/file-input/FileItem.js +50 -99
- package/file-input/types.d.ts +25 -8
- package/flex/Flex.d.ts +4 -0
- package/flex/Flex.js +57 -0
- package/flex/Flex.stories.tsx +112 -0
- package/flex/types.d.ts +97 -0
- package/footer/Footer.d.ts +1 -1
- package/footer/Footer.js +70 -190
- package/footer/Footer.stories.tsx +60 -19
- package/footer/Footer.test.js +33 -57
- package/footer/Icons.d.ts +3 -2
- package/footer/Icons.js +67 -8
- package/footer/types.d.ts +25 -26
- package/grid/Grid.d.ts +7 -0
- package/grid/Grid.js +76 -0
- package/grid/Grid.stories.tsx +219 -0
- package/grid/types.d.ts +115 -0
- package/header/Header.d.ts +4 -3
- package/header/Header.js +99 -203
- package/header/Header.stories.tsx +152 -63
- package/header/Header.test.js +31 -28
- package/header/Icons.d.ts +2 -2
- package/header/Icons.js +4 -9
- package/header/types.d.ts +5 -19
- package/heading/Heading.js +10 -32
- package/heading/Heading.test.js +71 -88
- package/heading/types.d.ts +7 -7
- package/image/Image.d.ts +4 -0
- package/image/Image.js +70 -0
- package/image/Image.stories.tsx +127 -0
- package/image/types.d.ts +72 -0
- package/inset/Inset.js +14 -55
- package/inset/Inset.stories.tsx +37 -36
- package/inset/types.d.ts +26 -2
- package/layout/ApplicationLayout.d.ts +16 -6
- package/layout/ApplicationLayout.js +84 -181
- package/layout/ApplicationLayout.stories.tsx +85 -94
- package/layout/Icons.d.ts +8 -0
- package/layout/Icons.js +51 -48
- package/layout/SidenavContext.d.ts +5 -0
- package/layout/SidenavContext.js +13 -0
- package/layout/types.d.ts +19 -35
- package/link/Link.d.ts +3 -2
- package/link/Link.js +61 -99
- package/link/Link.stories.tsx +155 -53
- package/link/Link.test.js +25 -53
- package/link/types.d.ts +15 -31
- package/main.d.ts +14 -13
- package/main.js +65 -101
- package/nav-tabs/NavTabs.d.ts +8 -0
- package/nav-tabs/NavTabs.js +93 -0
- package/nav-tabs/NavTabs.stories.tsx +276 -0
- package/nav-tabs/NavTabs.test.js +76 -0
- package/nav-tabs/Tab.d.ts +4 -0
- package/nav-tabs/Tab.js +118 -0
- package/nav-tabs/types.d.ts +52 -0
- package/nav-tabs/types.js +5 -0
- package/number-input/NumberInput.d.ts +7 -0
- package/number-input/NumberInput.js +27 -43
- package/number-input/NumberInput.stories.tsx +44 -28
- package/number-input/NumberInput.test.js +703 -381
- package/number-input/types.d.ts +28 -15
- package/package.json +46 -47
- package/paginator/Icons.d.ts +5 -0
- package/paginator/Icons.js +21 -47
- package/paginator/Paginator.js +34 -91
- package/paginator/Paginator.stories.tsx +24 -0
- package/paginator/Paginator.test.js +280 -211
- package/paginator/types.d.ts +3 -3
- package/paragraph/Paragraph.d.ts +5 -0
- package/paragraph/Paragraph.js +22 -0
- package/paragraph/Paragraph.stories.tsx +27 -0
- package/password-input/Icons.d.ts +6 -0
- package/password-input/Icons.js +35 -0
- package/password-input/PasswordInput.js +57 -123
- package/password-input/PasswordInput.stories.tsx +1 -33
- package/password-input/PasswordInput.test.js +162 -147
- package/password-input/types.d.ts +21 -17
- package/progress-bar/ProgressBar.js +65 -91
- package/progress-bar/ProgressBar.stories.tsx +93 -0
- package/progress-bar/ProgressBar.test.js +72 -44
- package/progress-bar/types.d.ts +3 -3
- package/quick-nav/QuickNav.d.ts +4 -0
- package/quick-nav/QuickNav.js +94 -0
- package/quick-nav/QuickNav.stories.tsx +356 -0
- package/quick-nav/types.d.ts +21 -0
- package/quick-nav/types.js +5 -0
- package/radio-group/Radio.d.ts +1 -1
- package/radio-group/Radio.js +59 -76
- package/radio-group/RadioGroup.js +72 -116
- package/radio-group/RadioGroup.stories.tsx +135 -17
- package/radio-group/RadioGroup.test.js +529 -467
- package/radio-group/types.d.ts +86 -9
- package/resultset-table/Icons.d.ts +7 -0
- package/resultset-table/Icons.js +47 -0
- package/{resultsetTable → resultset-table}/ResultsetTable.d.ts +1 -1
- package/resultset-table/ResultsetTable.js +165 -0
- package/{resultsetTable → resultset-table}/ResultsetTable.stories.tsx +69 -25
- package/{resultsetTable → resultset-table}/ResultsetTable.test.js +117 -118
- package/{resultsetTable → resultset-table}/types.d.ts +13 -7
- package/resultset-table/types.js +5 -0
- package/select/Icons.d.ts +10 -0
- package/select/Icons.js +89 -0
- package/select/Listbox.d.ts +4 -0
- package/select/Listbox.js +143 -0
- package/select/Option.d.ts +4 -0
- package/select/Option.js +87 -0
- package/select/Select.js +223 -502
- package/select/Select.stories.tsx +534 -145
- package/select/Select.test.js +2009 -1539
- package/select/types.d.ts +64 -25
- package/sidenav/Icons.d.ts +7 -0
- package/sidenav/Icons.js +47 -0
- package/sidenav/Sidenav.d.ts +6 -5
- package/sidenav/Sidenav.js +131 -71
- package/sidenav/Sidenav.stories.tsx +251 -151
- package/sidenav/Sidenav.test.js +26 -45
- package/sidenav/types.d.ts +52 -26
- package/slider/Slider.d.ts +2 -2
- package/slider/Slider.js +148 -180
- package/slider/Slider.test.js +198 -73
- package/slider/types.d.ts +11 -3
- package/spinner/Spinner.js +31 -75
- package/spinner/{Spinner.stories.jsx → Spinner.stories.tsx} +53 -27
- package/spinner/Spinner.test.js +26 -35
- package/spinner/types.d.ts +3 -3
- package/status-light/StatusLight.d.ts +4 -0
- package/status-light/StatusLight.js +51 -0
- package/status-light/StatusLight.stories.tsx +74 -0
- package/status-light/StatusLight.test.js +25 -0
- package/status-light/types.d.ts +17 -0
- package/status-light/types.js +5 -0
- package/switch/Switch.d.ts +2 -2
- package/switch/Switch.js +149 -114
- package/switch/Switch.stories.tsx +44 -67
- package/switch/Switch.test.js +146 -39
- package/switch/types.d.ts +13 -5
- package/table/Table.d.ts +1 -1
- package/table/Table.js +25 -32
- package/table/{Table.stories.jsx → Table.stories.tsx} +178 -1
- package/table/Table.test.js +3 -8
- package/table/types.d.ts +12 -6
- package/tabs/Tab.d.ts +4 -0
- package/tabs/Tab.js +116 -0
- package/tabs/Tabs.d.ts +1 -1
- package/tabs/Tabs.js +316 -145
- package/tabs/Tabs.stories.tsx +120 -14
- package/tabs/Tabs.test.js +238 -67
- package/tabs/types.d.ts +29 -15
- package/tag/Tag.js +41 -78
- package/tag/Tag.stories.tsx +25 -8
- package/tag/Tag.test.js +20 -31
- package/tag/types.d.ts +7 -7
- package/text-input/Icons.d.ts +8 -0
- package/text-input/Icons.js +56 -0
- package/text-input/Suggestion.d.ts +4 -0
- package/text-input/Suggestion.js +67 -0
- package/text-input/Suggestions.d.ts +4 -0
- package/text-input/Suggestions.js +84 -0
- package/text-input/TextInput.js +324 -548
- package/text-input/TextInput.stories.tsx +272 -281
- package/text-input/TextInput.test.js +1425 -1377
- package/text-input/types.d.ts +70 -24
- package/textarea/Textarea.js +82 -134
- package/textarea/Textarea.stories.tsx +174 -0
- package/textarea/Textarea.test.js +168 -198
- package/textarea/types.d.ts +27 -16
- package/toggle-group/ToggleGroup.d.ts +2 -2
- package/toggle-group/ToggleGroup.js +92 -105
- package/toggle-group/ToggleGroup.stories.tsx +53 -8
- package/toggle-group/ToggleGroup.test.js +78 -66
- package/toggle-group/types.d.ts +34 -17
- package/typography/Typography.d.ts +4 -0
- package/typography/Typography.js +23 -0
- package/typography/Typography.stories.tsx +198 -0
- package/typography/types.d.ts +18 -0
- package/typography/types.js +5 -0
- package/useTheme.d.ts +1119 -1
- package/useTheme.js +4 -11
- package/useTranslatedLabels.d.ts +85 -0
- package/useTranslatedLabels.js +14 -0
- package/utils/BaseTypography.d.ts +21 -0
- package/utils/BaseTypography.js +94 -0
- package/utils/FocusLock.d.ts +13 -0
- package/utils/FocusLock.js +124 -0
- package/wizard/Wizard.d.ts +1 -1
- package/wizard/Wizard.js +70 -101
- package/wizard/Wizard.stories.tsx +48 -19
- package/wizard/Wizard.test.js +73 -87
- package/wizard/types.d.ts +12 -8
- package/ThemeContext.d.ts +0 -10
- package/ThemeContext.js +0 -243
- package/card/ice-cream.jpg +0 -0
- package/common/RequiredComponent.js +0 -32
- package/list/List.d.ts +0 -4
- package/list/List.js +0 -47
- package/list/List.stories.tsx +0 -95
- package/list/types.d.ts +0 -7
- package/number-input/NumberInputContext.d.ts +0 -4
- package/number-input/NumberInputContext.js +0 -19
- package/number-input/numberInputContextTypes.d.ts +0 -19
- package/progress-bar/ProgressBar.stories.jsx +0 -58
- package/radio/Radio.d.ts +0 -4
- package/radio/Radio.js +0 -174
- package/radio/Radio.stories.tsx +0 -192
- package/radio/Radio.test.js +0 -71
- package/radio/types.d.ts +0 -54
- package/resultsetTable/ResultsetTable.js +0 -254
- package/row/Row.d.ts +0 -3
- package/row/Row.js +0 -127
- package/row/Row.stories.tsx +0 -237
- package/row/types.d.ts +0 -10
- package/slider/Slider.stories.tsx +0 -177
- package/stack/Stack.d.ts +0 -3
- package/stack/Stack.js +0 -97
- package/stack/Stack.stories.tsx +0 -164
- package/stack/types.d.ts +0 -9
- package/text/Text.d.ts +0 -7
- package/text/Text.js +0 -30
- package/text/Text.stories.tsx +0 -19
- package/textarea/Textarea.stories.jsx +0 -157
- /package/{list → action-icon}/types.js +0 -0
- /package/{radio → bulleted-list}/types.js +0 -0
- /package/{resultsetTable → container}/types.js +0 -0
- /package/{row → flex}/types.js +0 -0
- /package/{stack → grid}/types.js +0 -0
- /package/{number-input/numberInputContextTypes.js → image/types.js} +0 -0
package/button/Button.js
CHANGED
|
@@ -1,124 +1,84 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
var _typeof3 = require("@babel/runtime/helpers/typeof");
|
|
6
|
-
|
|
7
5
|
Object.defineProperty(exports, "__esModule", {
|
|
8
6
|
value: true
|
|
9
7
|
});
|
|
10
8
|
exports["default"] = void 0;
|
|
11
|
-
|
|
12
9
|
var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
|
|
13
|
-
|
|
14
10
|
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
15
|
-
|
|
16
|
-
var _react = _interopRequireWildcard(require("react"));
|
|
17
|
-
|
|
18
|
-
var _Button = _interopRequireDefault(require("@material-ui/core/Button"));
|
|
19
|
-
|
|
11
|
+
var _react = _interopRequireDefault(require("react"));
|
|
20
12
|
var _styledComponents = _interopRequireWildcard(require("styled-components"));
|
|
21
|
-
|
|
22
|
-
var
|
|
23
|
-
|
|
24
|
-
var _utils = require("../common/utils.js");
|
|
25
|
-
|
|
13
|
+
var _variables = require("../common/variables");
|
|
14
|
+
var _utils = require("../common/utils");
|
|
26
15
|
var _useTheme = _interopRequireDefault(require("../useTheme"));
|
|
27
|
-
|
|
28
|
-
var
|
|
29
|
-
|
|
30
|
-
var _templateObject, _templateObject2, _templateObject3, _templateObject4;
|
|
31
|
-
|
|
32
|
-
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); }
|
|
33
|
-
|
|
34
|
-
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof3(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; }
|
|
35
|
-
|
|
16
|
+
var _templateObject, _templateObject2, _templateObject3;
|
|
17
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
18
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof3(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
|
|
36
19
|
var DxcButton = function DxcButton(_ref) {
|
|
37
20
|
var _ref$label = _ref.label,
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
21
|
+
label = _ref$label === void 0 ? "" : _ref$label,
|
|
22
|
+
_ref$mode = _ref.mode,
|
|
23
|
+
mode = _ref$mode === void 0 ? "primary" : _ref$mode,
|
|
24
|
+
_ref$disabled = _ref.disabled,
|
|
25
|
+
disabled = _ref$disabled === void 0 ? false : _ref$disabled,
|
|
26
|
+
_ref$iconPosition = _ref.iconPosition,
|
|
27
|
+
iconPosition = _ref$iconPosition === void 0 ? "before" : _ref$iconPosition,
|
|
28
|
+
title = _ref.title,
|
|
29
|
+
_ref$type = _ref.type,
|
|
30
|
+
type = _ref$type === void 0 ? "button" : _ref$type,
|
|
31
|
+
icon = _ref.icon,
|
|
32
|
+
_ref$onClick = _ref.onClick,
|
|
33
|
+
_onClick = _ref$onClick === void 0 ? function () {} : _ref$onClick,
|
|
34
|
+
margin = _ref.margin,
|
|
35
|
+
_ref$size = _ref.size,
|
|
36
|
+
size = _ref$size === void 0 ? "fitContent" : _ref$size,
|
|
37
|
+
_ref$tabIndex = _ref.tabIndex,
|
|
38
|
+
tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
|
|
54
39
|
var colorsTheme = (0, _useTheme["default"])();
|
|
55
|
-
var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
|
|
56
40
|
return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
|
|
57
41
|
theme: colorsTheme.button
|
|
58
|
-
}, /*#__PURE__*/_react["default"].createElement(
|
|
59
|
-
|
|
60
|
-
margin: margin,
|
|
61
|
-
mode: mode !== "primary" && mode !== "secondary" && mode !== "text" ? "primary" : mode,
|
|
42
|
+
}, /*#__PURE__*/_react["default"].createElement(Button, {
|
|
43
|
+
"aria-label": title,
|
|
62
44
|
disabled: disabled,
|
|
63
|
-
iconPosition: iconPosition,
|
|
64
|
-
size: size,
|
|
65
|
-
backgroundType: backgroundType,
|
|
66
|
-
icon: icon
|
|
67
|
-
}, /*#__PURE__*/_react["default"].createElement(_Button["default"], {
|
|
68
|
-
type: type,
|
|
69
|
-
disabled: disabled,
|
|
70
|
-
disableRipple: true,
|
|
71
|
-
"aria-disabled": disabled,
|
|
72
|
-
tabIndex: disabled ? -1 : tabIndex,
|
|
73
45
|
onClick: function onClick() {
|
|
74
46
|
_onClick();
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
label:
|
|
81
|
-
|
|
82
|
-
|
|
47
|
+
},
|
|
48
|
+
tabIndex: disabled ? -1 : tabIndex,
|
|
49
|
+
title: title,
|
|
50
|
+
type: type,
|
|
51
|
+
$mode: mode !== "primary" && mode !== "secondary" && mode !== "text" ? "primary" : mode,
|
|
52
|
+
hasLabel: label ? true : false,
|
|
53
|
+
hasIcon: icon ? true : false,
|
|
54
|
+
iconPosition: iconPosition,
|
|
55
|
+
size: size,
|
|
56
|
+
margin: margin
|
|
57
|
+
}, label && /*#__PURE__*/_react["default"].createElement(LabelContainer, null, label), icon && /*#__PURE__*/_react["default"].createElement(IconContainer, null, typeof icon === "string" ? /*#__PURE__*/_react["default"].createElement("img", {
|
|
83
58
|
src: icon
|
|
84
|
-
}) : icon)))
|
|
59
|
+
}) : icon)));
|
|
85
60
|
};
|
|
86
|
-
|
|
87
61
|
var sizes = {
|
|
88
62
|
small: "42px",
|
|
89
63
|
medium: "120px",
|
|
90
64
|
large: "240px",
|
|
91
65
|
fillParent: "100%",
|
|
92
|
-
fitContent: "
|
|
66
|
+
fitContent: "fit-content"
|
|
93
67
|
};
|
|
94
|
-
|
|
95
68
|
var calculateWidth = function calculateWidth(margin, size) {
|
|
96
|
-
|
|
97
|
-
return "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")");
|
|
98
|
-
}
|
|
99
|
-
|
|
100
|
-
return sizes[size];
|
|
69
|
+
return size === "fillParent" ? "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")") : sizes[size];
|
|
101
70
|
};
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
return
|
|
107
|
-
}
|
|
108
|
-
|
|
71
|
+
var getButtonStyles = function getButtonStyles($mode, theme) {
|
|
72
|
+
return "\n border-color: ".concat($mode === "secondary" ? theme.secondaryBorderColor : "", ";\n border-radius: ").concat($mode === "primary" ? theme.primaryBorderRadius : $mode === "secondary" ? theme.secondaryBorderRadius : theme.textBorderRadius, ";\n border-width: ").concat($mode === "primary" ? theme.primaryBorderThickness : $mode === "secondary" ? theme.secondaryBorderThickness : theme.textBorderThickness, ";\n border-style: ").concat($mode === "primary" ? theme.primaryBorderStyle : $mode === "secondary" ? theme.secondaryBorderStyle : theme.textBorderStyle, ";\n font-family: ").concat($mode === "primary" ? theme.primaryFontFamily : $mode === "secondary" ? theme.secondaryFontFamily : theme.textFontFamily, ";\n font-size: ").concat($mode === "primary" ? theme.primaryFontSize : $mode === "secondary" ? theme.secondaryFontSize : theme.textFontSize, ";\n font-weight: ").concat($mode === "primary" ? theme.primaryFontWeight : $mode === "secondary" ? theme.secondaryFontWeight : theme.textFontWeight, ";\n background-color: ").concat($mode === "primary" ? theme.primaryBackgroundColor : $mode === "secondary" ? theme.secondaryBackgroundColor : theme.textBackgroundColor, ";\n color: ").concat($mode === "primary" ? theme.primaryFontColor : $mode === "secondary" ? theme.secondaryFontColor : theme.textFontColor, ";\n ");
|
|
73
|
+
};
|
|
74
|
+
var getButtonStates = function getButtonStates(disabled, $mode, theme) {
|
|
75
|
+
return "\n &:hover {\n background-color: ".concat($mode === "primary" ? theme.primaryHoverBackgroundColor : $mode === "secondary" ? theme.secondaryHoverBackgroundColor : theme.textHoverBackgroundColor, ";\n color: ").concat($mode === "secondary" ? theme.secondaryHoverFontColor : "", ";\n }\n &:focus {\n border-color: ").concat($mode === "secondary" ? "transparent" : "", ";\n }\n &:active {\n background-color: ").concat($mode === "primary" ? theme.primaryActiveBackgroundColor : $mode === "secondary" ? theme.secondaryActiveBackgroundColor : theme.textActiveBackgroundColor, ";\n color: ").concat($mode === "secondary" ? theme.secondaryHoverFontColor : "", ";\n border-color: ").concat($mode === "secondary" ? "transparent" : "", ";\n outline: none;\n box-shadow: ").concat(!disabled ? "0 0 0 2px ".concat(theme.focusBorderColor) : "", ";\n }\n &:disabled {\n cursor: not-allowed;\n background-color: ").concat($mode === "primary" ? theme.primaryDisabledBackgroundColor : $mode === "secondary" ? theme.secondaryDisabledBackgroundColor : theme.textDisabledBackgroundColor, ";\n color: ").concat($mode === "primary" ? theme.primaryDisabledFontColor : $mode === "secondary" ? theme.secondaryDisabledFontColor : theme.textDisabledFontColor, ";\n border-color: ").concat($mode === "secondary" ? theme.secondaryDisabledBorderColor : "", ";\n }\n");
|
|
76
|
+
};
|
|
77
|
+
var Button = _styledComponents["default"].button(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n flex-direction: ", ";\n gap: 0.5rem;\n align-items: center;\n justify-content: center;\n width: ", ";\n height: 40px;\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n padding-top: ", ";\n padding-bottom: ", ";\n padding-left: ", ";\n padding-right: ", ";\n box-shadow: 0 0 0 2px transparent;\n font-family: ", ";\n font-size: ", ";\n font-weight: ", ";\n letter-spacing: ", ";\n cursor: pointer;\n\n &:focus {\n outline: none;\n box-shadow: 0 0 0 2px ", ";\n }\n\n ", "\n ", "\n"])), function (props) {
|
|
78
|
+
return props.iconPosition === "after" ? "row" : "row-reverse";
|
|
109
79
|
}, function (props) {
|
|
110
|
-
return
|
|
111
|
-
});
|
|
112
|
-
|
|
113
|
-
var IconContainer = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n max-height: 24px;\n max-width: 24px;\n margin-left: ", ";\n margin-right: ", ";\n overflow: hidden;\n display: flex;\n img,\n svg {\n height: 100%;\n width: 100%;\n }\n"])), function (props) {
|
|
114
|
-
return !props.label ? "0px" : props.iconPosition === "after" && props.label !== "" && "8px" || "8px";
|
|
80
|
+
return calculateWidth(props.margin, props.size);
|
|
115
81
|
}, function (props) {
|
|
116
|
-
return !props.label ? "0px" : props.iconPosition === "before" && props.label !== "" && "8px" || "8px";
|
|
117
|
-
});
|
|
118
|
-
|
|
119
|
-
var ButtonIcon = _styledComponents["default"].img(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])([""])));
|
|
120
|
-
|
|
121
|
-
var DxCButton = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n\n display: inline-block;\n width: ", ";\n cursor: ", ";\n\n .MuiButtonBase-root {\n padding-left: ", ";\n padding-right: ", ";\n padding-top: ", ";\n padding-bottom: ", ";\n\n .MuiButton-label {\n display: flex;\n flex-direction: ", ";\n align-items: center;\n }\n\n box-shadow: 0 0 0 2px transparent;\n font-family: ", ";\n font-size: ", ";\n font-weight: ", ";\n letter-spacing: ", ";\n min-width: ", ";\n width: 100%;\n height: 40px;\n transition: none !important;\n\n &:focus {\n border-color: transparent;\n box-shadow: 0 0 0 2px\n ", ";\n }\n\n ", "\n }\n"])), function (props) {
|
|
122
82
|
return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
|
|
123
83
|
}, function (props) {
|
|
124
84
|
return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.top ? _variables.spaces[props.margin.top] : "";
|
|
@@ -128,20 +88,14 @@ var DxCButton = _styledComponents["default"].div(_templateObject4 || (_templateO
|
|
|
128
88
|
return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.bottom ? _variables.spaces[props.margin.bottom] : "";
|
|
129
89
|
}, function (props) {
|
|
130
90
|
return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
|
|
131
|
-
}, function (props) {
|
|
132
|
-
return calculateWidth(props.margin, props.size);
|
|
133
|
-
}, function (props) {
|
|
134
|
-
return props.disabled && "not-allowed" || "pointer";
|
|
135
|
-
}, function (props) {
|
|
136
|
-
return props.theme.paddingLeft;
|
|
137
|
-
}, function (props) {
|
|
138
|
-
return props.theme.paddingRight;
|
|
139
91
|
}, function (props) {
|
|
140
92
|
return props.theme.paddingTop;
|
|
141
93
|
}, function (props) {
|
|
142
94
|
return props.theme.paddingBottom;
|
|
143
95
|
}, function (props) {
|
|
144
|
-
return props.
|
|
96
|
+
return props.hasIcon && !props.hasLabel ? props.theme.paddingLeft : "calc(".concat(props.theme.paddingLeft, " + 8px)");
|
|
97
|
+
}, function (props) {
|
|
98
|
+
return props.hasIcon && !props.hasLabel ? props.theme.paddingRight : "calc(".concat(props.theme.paddingRight, " + 8px)");
|
|
145
99
|
}, function (props) {
|
|
146
100
|
return props.theme.fontFamily;
|
|
147
101
|
}, function (props) {
|
|
@@ -151,21 +105,16 @@ var DxCButton = _styledComponents["default"].div(_templateObject4 || (_templateO
|
|
|
151
105
|
}, function (props) {
|
|
152
106
|
return props.theme.labelLetterSpacing;
|
|
153
107
|
}, function (props) {
|
|
154
|
-
return props.
|
|
108
|
+
return props.theme.focusBorderColor;
|
|
155
109
|
}, function (props) {
|
|
156
|
-
return props
|
|
110
|
+
return getButtonStyles(props.$mode, props.theme);
|
|
157
111
|
}, function (props) {
|
|
158
|
-
|
|
159
|
-
backgroundType = props.backgroundType;
|
|
160
|
-
|
|
161
|
-
if (mode === "primary") {
|
|
162
|
-
return "\n border-radius: ".concat(props.theme.primaryBorderRadius, ";\n border-width: ").concat(props.theme.primaryBorderThickness, ";\n border-style: ").concat(props.theme.primaryBorderStyle, ";\n font-family: ").concat(props.theme.primaryFontFamily, ";\n font-size: ").concat(props.theme.primaryFontSize, ";\n font-weight: ").concat(props.theme.primaryFontWeight, ";\n background-color: ").concat(backgroundType === "dark" ? props.theme.primaryBackgroundColorOnDark : props.theme.primaryBackgroundColor, ";\n color: ").concat(backgroundType && backgroundType === "dark" ? props.theme.primaryFontColorOnDark : props.theme.primaryFontColor, " !important;\n\n &:hover {\n background-color: ").concat(backgroundType === "dark" ? props.theme.primaryHoverBackgroundColorOnDark : props.theme.primaryHoverBackgroundColor, ";\n }\n &:active {\n background-color: ").concat(backgroundType === "dark" ? props.theme.primaryActiveBackgroundColorOnDark : props.theme.primaryActiveBackgroundColor, " !important;\n border-color: transparent;\n box-shadow: 0 0 0 2px ").concat(backgroundType === "dark" ? props.theme.focusBorderColorOnDark : props.theme.focusBorderColor, ";\n }\n &:disabled { \n cursor: not-allowed;\n background-color: ").concat(backgroundType === "dark" ? props.theme.primaryDisabledBackgroundColorOnDark : props.theme.primaryDisabledBackgroundColor, ";\n color: ").concat(backgroundType === "dark" ? props.theme.primaryDisabledFontColorOnDark : props.theme.primaryDisabledFontColor, "!important; \n }\n .MuiButton-label {\n z-index: 5;\n }\n ");
|
|
163
|
-
} else if (mode === "secondary") {
|
|
164
|
-
return "\n border-radius: ".concat(props.theme.secondaryBorderRadius, ";\n border-width: ").concat(props.theme.secondaryBorderThickness, ";\n border-style: ").concat(props.theme.secondaryBorderStyle, ";\n font-family: ").concat(props.theme.secondaryFontFamily, ";\n font-size: ").concat(props.theme.secondaryFontSize, ";\n font-weight: ").concat(props.theme.secondaryFontWeight, ";\n background-color: ").concat(backgroundType === "dark" ? props.theme.secondaryBackgroundColorOnDark : props.theme.secondaryBackgroundColor, ";\n color: ").concat(backgroundType === "dark" ? props.theme.secondaryFontColorOnDark : props.theme.secondaryFontColor, " !important;\n border-color: ").concat(backgroundType === "dark" ? props.theme.secondaryBorderColorOnDark : props.theme.secondaryBorderColor, ";\n\n &:hover {\n background-color: ").concat(backgroundType === "dark" ? props.theme.secondaryHoverBackgroundColorOnDark : props.theme.secondaryHoverBackgroundColor, ";\n color: ").concat(backgroundType === "dark" ? props.theme.secondaryHoverFontColorOnDark : props.theme.secondaryHoverFontColor, " !important;\n }\n &:active {\n background-color: ").concat(backgroundType === "dark" ? props.theme.secondaryActiveBackgroundColorOnDark : props.theme.secondaryActiveBackgroundColor, " !important;\n color: ").concat(backgroundType === "dark" ? props.theme.secondaryHoverFontColorOnDark : props.theme.secondaryHoverFontColor, " !important;\n border-color: transparent;\n box-shadow: 0 0 0 2px ").concat(backgroundType === "dark" ? props.theme.focusBorderColorOnDark : props.theme.focusBorderColor, ";\n }\n &:disabled {\n cursor: not-allowed;\n background-color: ").concat(backgroundType === "dark" ? props.theme.secondaryDisabledBackgroundColorOnDark : props.theme.secondaryDisabledBackgroundColor, " !important;\n color: ").concat(backgroundType === "dark" ? props.theme.secondaryDisabledFontColorOnDark : props.theme.secondaryDisabledFontColor, " !important;\n border-color: ").concat(backgroundType === "dark" ? props.theme.secondaryDisabledBorderColorOnDark : props.theme.secondaryDisabledBorderColor, ";\n }\n .MuiButton-label {\n z-index: 5;\n }\n ");
|
|
165
|
-
} else if (mode === "text") {
|
|
166
|
-
return "\n border-radius: ".concat(props.theme.textBorderRadius, ";\n border-width: ").concat(props.theme.textBorderThickness, ";\n border-style: ").concat(props.theme.textBorderStyle, ";\n font-family: ").concat(props.theme.textFontFamily, ";\n font-size: ").concat(props.theme.textFontSize, ";\n font-weight: ").concat(props.theme.textFontWeight, ";\n background-color: ").concat(backgroundType === "dark" ? props.theme.textBackgroundColorOnDark : props.theme.textBackgroundColor, ";\n color: ").concat(backgroundType === "dark" ? props.theme.textFontColorOnDark : props.theme.textFontColor, " !important;\n\n &:hover {\n background-color: ").concat(backgroundType === "dark" ? props.theme.textHoverBackgroundColorOnDark : props.theme.textHoverBackgroundColor, ";\n }\n &:active {\n background-color: ").concat(backgroundType === "dark" ? props.theme.textActiveBackgroundColorOnDark : props.theme.textActiveBackgroundColor, " !important;\n border-color: transparent;\n box-shadow: 0 0 0 2px ").concat(backgroundType === "dark" ? props.theme.focusBorderColorOnDark : props.theme.focusBorderColor, ";\n }\n &:disabled {\n cursor:not-allowed;\n color: ").concat(backgroundType === "dark" ? props.theme.textDisabledFontColorOnDark : props.theme.textDisabledFontColor, " !important;\n background-color: ").concat(backgroundType === "dark" ? props.theme.textDisabledBackgroundColorOnDark : props.theme.textDisabledBackgroundColor, ";\n }\n ");
|
|
167
|
-
}
|
|
112
|
+
return getButtonStates(props.disabled, props.$mode, props.theme);
|
|
168
113
|
});
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
114
|
+
var LabelContainer = _styledComponents["default"].span(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n line-height: ", ";\n font-size: ", ";\n text-overflow: ellipsis;\n overflow: hidden;\n text-transform: none;\n white-space: nowrap;\n"])), function (props) {
|
|
115
|
+
return props.theme.labelFontLineHeight;
|
|
116
|
+
}, function (props) {
|
|
117
|
+
return props.theme.fontSize;
|
|
118
|
+
});
|
|
119
|
+
var IconContainer = _styledComponents["default"].div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n\n img,\n svg {\n height: 24px;\n width: 24px;\n }\n"])));
|
|
120
|
+
var _default = exports["default"] = DxcButton;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import DxcButton from "./Button";
|
|
3
|
-
import
|
|
3
|
+
import DxcFlex from "./../flex/Flex";
|
|
4
4
|
import Title from "../../.storybook/components/Title";
|
|
5
5
|
import ExampleContainer from "../../.storybook/components/ExampleContainer";
|
|
6
|
-
import
|
|
6
|
+
import { HalstackProvider } from "../HalstackContext";
|
|
7
7
|
|
|
8
8
|
export default {
|
|
9
9
|
title: "Button",
|
|
@@ -11,11 +11,50 @@ export default {
|
|
|
11
11
|
};
|
|
12
12
|
|
|
13
13
|
const iconSVG = (
|
|
14
|
-
<svg viewBox="0 0 24 24" fill="currentColor">
|
|
14
|
+
<svg width="24px" height="24px" viewBox="0 0 24 24" fill="currentColor">
|
|
15
15
|
<path d="M0 0h24v24H0z" fill="none" />
|
|
16
16
|
<path d="M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z" />
|
|
17
17
|
</svg>
|
|
18
18
|
);
|
|
19
|
+
|
|
20
|
+
const facebookIcon = (
|
|
21
|
+
<svg
|
|
22
|
+
version="1.1"
|
|
23
|
+
id="Capa_1"
|
|
24
|
+
x="0px"
|
|
25
|
+
y="0px"
|
|
26
|
+
width="438.536px"
|
|
27
|
+
height="438.536px"
|
|
28
|
+
viewBox="0 0 438.536 438.536"
|
|
29
|
+
fill="currentColor"
|
|
30
|
+
>
|
|
31
|
+
<g>
|
|
32
|
+
<path
|
|
33
|
+
d="M414.41,24.123C398.333,8.042,378.963,0,356.315,0H82.228C59.58,0,40.21,8.042,24.126,24.123
|
|
34
|
+
C8.045,40.207,0.003,59.576,0.003,82.225v274.084c0,22.647,8.042,42.018,24.123,58.102c16.084,16.084,35.454,24.126,58.102,24.126
|
|
35
|
+
h274.084c22.648,0,42.018-8.042,58.095-24.126c16.084-16.084,24.126-35.454,24.126-58.102V82.225
|
|
36
|
+
C438.532,59.576,430.49,40.204,414.41,24.123z M373.155,225.548h-49.963V406.84h-74.802V225.548H210.99V163.02h37.401v-37.402
|
|
37
|
+
c0-26.838,6.283-47.107,18.843-60.813c12.559-13.706,33.304-20.555,62.242-20.555h49.963v62.526h-31.401
|
|
38
|
+
c-10.663,0-17.467,1.853-20.417,5.568c-2.949,3.711-4.428,10.23-4.428,19.558v31.119h56.534L373.155,225.548z"
|
|
39
|
+
/>
|
|
40
|
+
</g>
|
|
41
|
+
</svg>
|
|
42
|
+
);
|
|
43
|
+
|
|
44
|
+
const smallIcon = (
|
|
45
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" height="20" width="20" fill="currentColor">
|
|
46
|
+
<path d="m7.646 18.333-.313-2.625q-.208-.125-.458-.27-.25-.146-.458-.271l-2.438 1.021-2.354-4.063 2.083-1.583V9.458L1.625 7.875l2.354-4.063 2.438 1.021q.208-.125.458-.27.25-.146.458-.271l.313-2.625h4.708l.313 2.625q.208.125.458.271.25.145.458.27l2.438-1.021 2.354 4.063-2.063 1.583v1.084l2.063 1.583-2.354 4.063-2.438-1.021q-.208.125-.458.271-.25.145-.458.27l-.313 2.625ZM10 12.979q1.229 0 2.104-.875T12.979 10q0-1.229-.875-2.104T10 7.021q-1.229 0-2.104.875T7.021 10q0 1.229.875 2.104t2.104.875Zm0-1.75q-.5 0-.865-.364-.364-.365-.364-.865t.364-.865q.365-.364.865-.364t.865.364q.364.365.364.865t-.364.865q-.365.364-.865.364ZM10.021 10Zm-.854 6.583h1.666l.25-2.166q.605-.167 1.167-.5.562-.334 1.021-.792l2.021.854.833-1.375-1.771-1.354q.104-.292.146-.604.042-.313.042-.646 0-.292-.042-.594t-.125-.635l1.771-1.375-.834-1.375-2.02.875q-.48-.479-1.032-.802-.552-.323-1.156-.49l-.271-2.187H9.167l-.271 2.187q-.604.167-1.156.49-.552.323-1.011.781l-2.021-.854-.833 1.375 1.75 1.354q-.083.333-.125.646-.042.312-.042.604t.042.594q.042.302.125.635l-1.75 1.375.833 1.375 2.021-.854q.459.458 1.011.781.552.323 1.156.49Z" />
|
|
47
|
+
</svg>
|
|
48
|
+
);
|
|
49
|
+
|
|
50
|
+
const opinionatedTheme = {
|
|
51
|
+
button: {
|
|
52
|
+
baseColor: "#5f249f",
|
|
53
|
+
primaryFontColor: "#ffffff",
|
|
54
|
+
secondaryHoverFontColor: "#ffffff",
|
|
55
|
+
},
|
|
56
|
+
};
|
|
57
|
+
|
|
19
58
|
export const Chromatic = () => (
|
|
20
59
|
<>
|
|
21
60
|
<Title title="Primary" theme="light" level={2} />
|
|
@@ -37,7 +76,7 @@ export const Chromatic = () => (
|
|
|
37
76
|
</ExampleContainer>
|
|
38
77
|
<ExampleContainer>
|
|
39
78
|
<Title title="Disabled" theme="light" level={4} />
|
|
40
|
-
<DxcButton label="Primary disabled" disabled />
|
|
79
|
+
<DxcButton label="Primary disabled" disabled icon={iconSVG} />
|
|
41
80
|
</ExampleContainer>
|
|
42
81
|
<ExampleContainer>
|
|
43
82
|
<Title title="With left icon" theme="light" level={4} />
|
|
@@ -51,6 +90,18 @@ export const Chromatic = () => (
|
|
|
51
90
|
<Title title="Only icon" theme="light" level={4} />
|
|
52
91
|
<DxcButton icon={iconSVG} />
|
|
53
92
|
</ExampleContainer>
|
|
93
|
+
<ExampleContainer>
|
|
94
|
+
<Title title="Big icon (SVG)" theme="light" level={4} />
|
|
95
|
+
<DxcButton icon={facebookIcon} />
|
|
96
|
+
</ExampleContainer>
|
|
97
|
+
<ExampleContainer>
|
|
98
|
+
<Title title="Big icon (image)" theme="light" level={4} />
|
|
99
|
+
<DxcButton icon="https://www.freepnglogos.com/uploads/facebook-logo-design-1.png" />
|
|
100
|
+
</ExampleContainer>
|
|
101
|
+
<ExampleContainer>
|
|
102
|
+
<Title title="Small icon" theme="light" level={4} />
|
|
103
|
+
<DxcButton icon={smallIcon} />
|
|
104
|
+
</ExampleContainer>
|
|
54
105
|
<Title title="Secondary" theme="light" level={2} />
|
|
55
106
|
<ExampleContainer>
|
|
56
107
|
<Title title="Enabled" theme="light" level={4} />
|
|
@@ -70,12 +121,19 @@ export const Chromatic = () => (
|
|
|
70
121
|
</ExampleContainer>
|
|
71
122
|
<ExampleContainer>
|
|
72
123
|
<Title title="Disabled" theme="light" level={4} />
|
|
73
|
-
<DxcButton mode="secondary" disabled label="Secondary disabled" />
|
|
124
|
+
<DxcButton mode="secondary" disabled label="Secondary disabled" icon={iconSVG} />
|
|
74
125
|
</ExampleContainer>
|
|
75
126
|
<ExampleContainer>
|
|
76
127
|
<Title title="With icon" theme="light" level={4} />
|
|
77
128
|
<DxcButton mode="secondary" label="Secondary" icon={iconSVG} />
|
|
78
129
|
</ExampleContainer>
|
|
130
|
+
<ExampleContainer>
|
|
131
|
+
<Title title="Only icon (image)" theme="light" level={4} />
|
|
132
|
+
<DxcButton
|
|
133
|
+
mode="secondary"
|
|
134
|
+
icon="https://www.freepnglogos.com/uploads/facebook-logo-design-1.png"
|
|
135
|
+
/>
|
|
136
|
+
</ExampleContainer>
|
|
79
137
|
<Title title="Text" theme="light" level={2} />
|
|
80
138
|
<ExampleContainer>
|
|
81
139
|
<Title title="Enabled" theme="light" level={4} />
|
|
@@ -95,91 +153,19 @@ export const Chromatic = () => (
|
|
|
95
153
|
</ExampleContainer>
|
|
96
154
|
<ExampleContainer>
|
|
97
155
|
<Title title="Disabled" theme="light" level={4} />
|
|
98
|
-
<DxcButton mode="text" label="Text disabled" disabled />
|
|
156
|
+
<DxcButton mode="text" label="Text disabled" disabled icon={iconSVG} />
|
|
99
157
|
</ExampleContainer>
|
|
100
158
|
<ExampleContainer>
|
|
101
159
|
<Title title="With icon" theme="light" level={4} />
|
|
102
160
|
<DxcButton label="Text" mode="text" icon={iconSVG} />
|
|
103
161
|
</ExampleContainer>
|
|
104
|
-
<
|
|
105
|
-
<
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
<ExampleContainer pseudoState="pseudo-hover">
|
|
112
|
-
<Title title="Hovered" theme="dark" level={4} />
|
|
113
|
-
<DxcButton label="Primary hovered" />
|
|
114
|
-
</ExampleContainer>
|
|
115
|
-
<ExampleContainer pseudoState="pseudo-focus">
|
|
116
|
-
<Title title="Focused" theme="dark" level={4} />
|
|
117
|
-
<DxcButton label="Primary focused" />
|
|
118
|
-
</ExampleContainer>
|
|
119
|
-
<ExampleContainer pseudoState="pseudo-active">
|
|
120
|
-
<Title title="Actived" theme="dark" level={4} />
|
|
121
|
-
<DxcButton label="Primary actived" />
|
|
122
|
-
</ExampleContainer>
|
|
123
|
-
<ExampleContainer>
|
|
124
|
-
<Title title="Disabled" theme="dark" level={4} />
|
|
125
|
-
<DxcButton label="Primary disabled" disabled />
|
|
126
|
-
</ExampleContainer>
|
|
127
|
-
<ExampleContainer>
|
|
128
|
-
<Title title="With icon" theme="dark" level={4} />
|
|
129
|
-
<DxcButton label="Primary" icon={iconSVG} />
|
|
130
|
-
</ExampleContainer>
|
|
131
|
-
<Title title="Secondary" theme="dark" level={2} />
|
|
132
|
-
<ExampleContainer>
|
|
133
|
-
<Title title="Enabled" theme="dark" level={4} />
|
|
134
|
-
<DxcButton mode="secondary" label="Secondary enabled" />
|
|
135
|
-
</ExampleContainer>
|
|
136
|
-
<ExampleContainer pseudoState="pseudo-hover">
|
|
137
|
-
<Title title="Hovered" theme="dark" level={4} />
|
|
138
|
-
<DxcButton mode="secondary" label="Secondary hovered" />
|
|
139
|
-
</ExampleContainer>
|
|
140
|
-
<ExampleContainer pseudoState="pseudo-focus">
|
|
141
|
-
<Title title="Focused" theme="dark" level={4} />
|
|
142
|
-
<DxcButton mode="secondary" label="Secondary focused" />
|
|
143
|
-
</ExampleContainer>
|
|
144
|
-
<ExampleContainer pseudoState="pseudo-active">
|
|
145
|
-
<Title title="Actived" theme="dark" level={4} />
|
|
146
|
-
<DxcButton mode="secondary" label="Secondary actived" />
|
|
147
|
-
</ExampleContainer>
|
|
148
|
-
<ExampleContainer>
|
|
149
|
-
<Title title="Disabled" theme="dark" level={4} />
|
|
150
|
-
<DxcButton mode="secondary" disabled label="Secondary disabled" />
|
|
151
|
-
</ExampleContainer>
|
|
152
|
-
<ExampleContainer>
|
|
153
|
-
<Title title="With icon" theme="dark" level={4} />
|
|
154
|
-
<DxcButton mode="secondary" label="Primary" icon={iconSVG} />
|
|
155
|
-
</ExampleContainer>
|
|
156
|
-
<Title title="Text" theme="dark" level={2} />
|
|
157
|
-
<ExampleContainer>
|
|
158
|
-
<Title title="Enabled" theme="dark" level={4} />
|
|
159
|
-
<DxcButton mode="text" label="Text enabled" />
|
|
160
|
-
</ExampleContainer>
|
|
161
|
-
<ExampleContainer pseudoState="pseudo-hover">
|
|
162
|
-
<Title title="Hovered" theme="dark" level={4} />
|
|
163
|
-
<DxcButton mode="text" label="Text hovered" />
|
|
164
|
-
</ExampleContainer>
|
|
165
|
-
<ExampleContainer pseudoState="pseudo-focus">
|
|
166
|
-
<Title title="Focused" theme="dark" level={4} />
|
|
167
|
-
<DxcButton mode="text" label="Text focused" />
|
|
168
|
-
</ExampleContainer>
|
|
169
|
-
<ExampleContainer pseudoState="pseudo-active">
|
|
170
|
-
<Title title="Actived" theme="dark" level={4} />
|
|
171
|
-
<DxcButton mode="text" label="Text actived" />
|
|
172
|
-
</ExampleContainer>
|
|
173
|
-
<ExampleContainer>
|
|
174
|
-
<Title title="Disabled" theme="dark" level={4} />
|
|
175
|
-
<DxcButton mode="text" label="Text disabled" disabled />
|
|
176
|
-
</ExampleContainer>
|
|
177
|
-
<ExampleContainer>
|
|
178
|
-
<Title title="With icon" theme="dark" level={4} />
|
|
179
|
-
<DxcButton mode="text" label="Primary" icon={iconSVG} />
|
|
180
|
-
</ExampleContainer>
|
|
181
|
-
</DarkContainer>
|
|
182
|
-
</BackgroundColorProvider>
|
|
162
|
+
<ExampleContainer>
|
|
163
|
+
<Title title="Only icon (image)" theme="light" level={4} />
|
|
164
|
+
<DxcButton
|
|
165
|
+
mode="text"
|
|
166
|
+
icon="https://www.freepnglogos.com/uploads/facebook-logo-design-1.png"
|
|
167
|
+
/>
|
|
168
|
+
</ExampleContainer>
|
|
183
169
|
<Title title="Sizes" theme="light" level={2} />
|
|
184
170
|
<ExampleContainer>
|
|
185
171
|
<Title title="Small size" theme="light" level={4} />
|
|
@@ -187,7 +173,7 @@ export const Chromatic = () => (
|
|
|
187
173
|
</ExampleContainer>
|
|
188
174
|
<ExampleContainer>
|
|
189
175
|
<Title title="Medium size" theme="light" level={4} />
|
|
190
|
-
<DxcButton label="
|
|
176
|
+
<DxcButton label="MediumSize" size="medium" />
|
|
191
177
|
</ExampleContainer>
|
|
192
178
|
<ExampleContainer>
|
|
193
179
|
<Title title="Medium size with ellipsis" theme="light" level={4} />
|
|
@@ -195,11 +181,11 @@ export const Chromatic = () => (
|
|
|
195
181
|
</ExampleContainer>
|
|
196
182
|
<ExampleContainer>
|
|
197
183
|
<Title title="Medium size icon after" theme="light" level={4} />
|
|
198
|
-
<DxcButton label="
|
|
184
|
+
<DxcButton label="Medium" iconPosition="after" icon={iconSVG} size="medium" />
|
|
199
185
|
</ExampleContainer>
|
|
200
186
|
<ExampleContainer>
|
|
201
187
|
<Title title="Medium size icon before" theme="light" level={4} />
|
|
202
|
-
<DxcButton label="
|
|
188
|
+
<DxcButton label="Medium" iconPosition="before" icon={iconSVG} size="medium" />
|
|
203
189
|
</ExampleContainer>
|
|
204
190
|
<ExampleContainer>
|
|
205
191
|
<Title title="Medium size icon after with ellipsis" theme="light" level={4} />
|
|
@@ -219,11 +205,11 @@ export const Chromatic = () => (
|
|
|
219
205
|
</ExampleContainer>
|
|
220
206
|
<ExampleContainer>
|
|
221
207
|
<Title title="Large size icon after" theme="light" level={4} />
|
|
222
|
-
<DxcButton label="
|
|
208
|
+
<DxcButton label="LargeSizePrimaryButton" iconPosition="after" icon={iconSVG} size="large" />
|
|
223
209
|
</ExampleContainer>
|
|
224
210
|
<ExampleContainer>
|
|
225
211
|
<Title title="Large size icon before" theme="light" level={4} />
|
|
226
|
-
<DxcButton label="
|
|
212
|
+
<DxcButton label="LargeSizePrimaryButton" iconPosition="before" icon={iconSVG} size="large" />
|
|
227
213
|
</ExampleContainer>
|
|
228
214
|
<ExampleContainer>
|
|
229
215
|
<Title title="Large size icon after with ellipsis" theme="light" level={4} />
|
|
@@ -270,5 +256,89 @@ export const Chromatic = () => (
|
|
|
270
256
|
<Title title="Xxlarge margin" theme="light" level={4} />
|
|
271
257
|
<DxcButton label="Xxlarge margin" margin="xxlarge" />
|
|
272
258
|
</ExampleContainer>
|
|
259
|
+
<Title title="Inside a flex" theme="light" level={2} />
|
|
260
|
+
<ExampleContainer>
|
|
261
|
+
<DxcFlex direction="column" gap="1rem">
|
|
262
|
+
<DxcButton label="Button" />
|
|
263
|
+
<DxcButton label="Button" />
|
|
264
|
+
<DxcButton label="Button" />
|
|
265
|
+
</DxcFlex>
|
|
266
|
+
</ExampleContainer>
|
|
267
|
+
<Title title="Opinionated theme" theme="light" level={2} />
|
|
268
|
+
<Title title="Primary" theme="light" level={3} />
|
|
269
|
+
<ExampleContainer>
|
|
270
|
+
<Title title="Enabled" theme="light" level={4} />
|
|
271
|
+
<HalstackProvider theme={opinionatedTheme}>
|
|
272
|
+
<DxcButton label="Primary" icon={iconSVG} />
|
|
273
|
+
</HalstackProvider>
|
|
274
|
+
</ExampleContainer>
|
|
275
|
+
<ExampleContainer pseudoState="pseudo-hover">
|
|
276
|
+
<Title title="Hovered" theme="light" level={4} />
|
|
277
|
+
<DxcButton label="Primary hovered" icon={iconSVG} />
|
|
278
|
+
</ExampleContainer>
|
|
279
|
+
<ExampleContainer pseudoState="pseudo-focus">
|
|
280
|
+
<Title title="Focused" theme="light" level={4} />
|
|
281
|
+
<DxcButton label="Primary focused" icon={iconSVG} />
|
|
282
|
+
</ExampleContainer>
|
|
283
|
+
<ExampleContainer pseudoState="pseudo-active">
|
|
284
|
+
<Title title="Actived" theme="light" level={4} />
|
|
285
|
+
<DxcButton label="Primary actived" icon={iconSVG} />
|
|
286
|
+
</ExampleContainer>
|
|
287
|
+
<ExampleContainer>
|
|
288
|
+
<Title title="Disabled" theme="light" level={4} />
|
|
289
|
+
<HalstackProvider theme={opinionatedTheme}>
|
|
290
|
+
<DxcButton label="Primary" icon={iconSVG} disabled />
|
|
291
|
+
</HalstackProvider>
|
|
292
|
+
</ExampleContainer>
|
|
293
|
+
<Title title="Secondary" theme="light" level={3} />
|
|
294
|
+
<ExampleContainer>
|
|
295
|
+
<Title title="Enabled" theme="light" level={4} />
|
|
296
|
+
<HalstackProvider theme={opinionatedTheme}>
|
|
297
|
+
<DxcButton mode="secondary" label="Secondary" icon={iconSVG} />
|
|
298
|
+
</HalstackProvider>
|
|
299
|
+
</ExampleContainer>
|
|
300
|
+
<ExampleContainer pseudoState="pseudo-hover">
|
|
301
|
+
<Title title="Hovered" theme="light" level={4} />
|
|
302
|
+
<DxcButton mode="secondary" label="Secondary hovered" icon={iconSVG} />
|
|
303
|
+
</ExampleContainer>
|
|
304
|
+
<ExampleContainer pseudoState="pseudo-focus">
|
|
305
|
+
<Title title="Focused" theme="light" level={4} />
|
|
306
|
+
<DxcButton mode="secondary" label="Secondary focused" icon={iconSVG} />
|
|
307
|
+
</ExampleContainer>
|
|
308
|
+
<ExampleContainer pseudoState="pseudo-active">
|
|
309
|
+
<Title title="Actived" theme="light" level={4} />
|
|
310
|
+
<DxcButton mode="secondary" label="Secondary actived" icon={iconSVG} />
|
|
311
|
+
</ExampleContainer>
|
|
312
|
+
<ExampleContainer>
|
|
313
|
+
<Title title="Disabled" theme="light" level={4} />
|
|
314
|
+
<HalstackProvider theme={opinionatedTheme}>
|
|
315
|
+
<DxcButton mode="secondary" label="Secondary" icon={iconSVG} disabled />
|
|
316
|
+
</HalstackProvider>
|
|
317
|
+
</ExampleContainer>
|
|
318
|
+
<Title title="Text" theme="light" level={3} />
|
|
319
|
+
<ExampleContainer>
|
|
320
|
+
<Title title="Enabled" theme="light" level={4} />
|
|
321
|
+
<HalstackProvider theme={opinionatedTheme}>
|
|
322
|
+
<DxcButton mode="text" label="Text" icon={iconSVG} />
|
|
323
|
+
</HalstackProvider>
|
|
324
|
+
</ExampleContainer>
|
|
325
|
+
<ExampleContainer pseudoState="pseudo-hover">
|
|
326
|
+
<Title title="Hovered" theme="light" level={4} />
|
|
327
|
+
<DxcButton mode="text" label="Text hovered" icon={iconSVG} />
|
|
328
|
+
</ExampleContainer>
|
|
329
|
+
<ExampleContainer pseudoState="pseudo-focus">
|
|
330
|
+
<Title title="Focused" theme="light" level={4} />
|
|
331
|
+
<DxcButton mode="text" label="Text focused" icon={iconSVG} />
|
|
332
|
+
</ExampleContainer>
|
|
333
|
+
<ExampleContainer pseudoState="pseudo-active">
|
|
334
|
+
<Title title="Actived" theme="light" level={4} />
|
|
335
|
+
<DxcButton mode="text" label="Text actived" icon={iconSVG} />
|
|
336
|
+
</ExampleContainer>
|
|
337
|
+
<ExampleContainer>
|
|
338
|
+
<Title title="Disabled" theme="light" level={4} />
|
|
339
|
+
<HalstackProvider theme={opinionatedTheme}>
|
|
340
|
+
<DxcButton mode="text" label="Text disabled" icon={iconSVG} disabled />
|
|
341
|
+
</HalstackProvider>
|
|
342
|
+
</ExampleContainer>
|
|
273
343
|
</>
|
|
274
344
|
);
|