@dxc-technology/halstack-react 0.0.0-b39a2d8 → 0.0.0-b3b8a35
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 +10 -0
- package/BackgroundColorContext.js +7 -22
- package/HalstackContext.d.ts +1353 -0
- package/HalstackContext.js +310 -0
- package/README.md +47 -0
- package/accordion/Accordion.d.ts +1 -1
- package/accordion/Accordion.js +119 -192
- package/accordion/Accordion.stories.tsx +283 -0
- package/accordion/Accordion.test.js +56 -0
- package/accordion/types.d.ts +12 -23
- package/accordion-group/AccordionGroup.d.ts +5 -4
- package/accordion-group/AccordionGroup.js +39 -108
- package/accordion-group/AccordionGroup.stories.tsx +252 -0
- package/accordion-group/AccordionGroup.test.js +98 -0
- package/accordion-group/AccordionGroupAccordion.d.ts +4 -0
- package/accordion-group/AccordionGroupAccordion.js +31 -0
- package/accordion-group/types.d.ts +18 -23
- package/alert/Alert.js +24 -57
- package/alert/Alert.stories.tsx +28 -0
- package/alert/Alert.test.js +75 -0
- package/alert/types.d.ts +5 -5
- package/badge/Badge.d.ts +4 -0
- package/badge/Badge.js +9 -20
- package/badge/types.d.ts +5 -0
- package/bleed/Bleed.d.ts +3 -0
- package/bleed/Bleed.js +43 -0
- package/bleed/Bleed.stories.tsx +342 -0
- package/bleed/types.d.ts +37 -0
- package/bleed/types.js +5 -0
- package/box/Box.d.ts +1 -1
- package/box/Box.js +31 -79
- package/box/Box.stories.tsx +38 -51
- package/box/Box.test.js +13 -0
- package/box/types.d.ts +3 -14
- package/bulleted-list/BulletedList.d.ts +7 -0
- package/bulleted-list/BulletedList.js +99 -0
- package/bulleted-list/BulletedList.stories.tsx +116 -0
- package/bulleted-list/types.d.ts +38 -0
- package/bulleted-list/types.js +5 -0
- package/button/Button.d.ts +1 -1
- package/button/Button.js +64 -120
- package/button/Button.stories.tsx +164 -96
- package/button/Button.test.js +36 -0
- package/button/types.d.ts +14 -14
- package/card/Card.d.ts +1 -1
- package/card/Card.js +59 -103
- package/card/Card.stories.tsx +13 -43
- package/card/Card.test.js +39 -0
- package/card/types.d.ts +6 -11
- package/checkbox/Checkbox.d.ts +2 -2
- package/checkbox/Checkbox.js +147 -180
- package/checkbox/Checkbox.stories.tsx +166 -136
- package/checkbox/Checkbox.test.js +199 -0
- package/checkbox/types.d.ts +19 -7
- package/chip/Chip.d.ts +4 -0
- package/chip/Chip.js +48 -148
- package/chip/Chip.stories.tsx +123 -30
- package/chip/Chip.test.js +41 -0
- package/chip/types.d.ts +45 -0
- package/chip/types.js +5 -0
- 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 +1499 -0
- package/common/variables.js +1119 -1325
- package/container/Container.d.ts +4 -0
- package/container/Container.js +187 -0
- package/container/Container.stories.tsx +214 -0
- package/container/types.d.ts +74 -0
- package/container/types.js +5 -0
- package/date-input/Calendar.d.ts +4 -0
- package/date-input/Calendar.js +214 -0
- package/date-input/DateInput.js +175 -313
- package/date-input/DateInput.stories.tsx +203 -56
- package/date-input/DateInput.test.js +808 -0
- 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 +72 -130
- package/dialog/Dialog.stories.tsx +154 -171
- package/dialog/Dialog.test.js +307 -0
- package/dialog/types.d.ts +18 -25
- package/dropdown/Dropdown.d.ts +1 -1
- package/dropdown/Dropdown.js +245 -328
- package/dropdown/Dropdown.stories.tsx +438 -0
- package/dropdown/Dropdown.test.js +599 -0
- 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 +37 -28
- package/file-input/FileInput.d.ts +2 -2
- package/file-input/FileInput.js +236 -289
- package/file-input/FileInput.stories.tsx +618 -0
- package/file-input/FileInput.test.js +408 -0
- package/file-input/FileItem.d.ts +4 -14
- package/file-input/FileItem.js +53 -100
- package/file-input/types.d.ts +53 -11
- 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/flex/types.js +5 -0
- package/footer/Footer.d.ts +1 -1
- package/footer/Footer.js +61 -192
- package/footer/{Footer.stories.jsx → Footer.stories.tsx} +38 -37
- package/footer/Footer.test.js +85 -0
- package/footer/Icons.d.ts +2 -0
- package/footer/Icons.js +4 -9
- package/footer/types.d.ts +36 -33
- 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/grid/types.js +5 -0
- package/header/Header.d.ts +4 -3
- package/header/Header.js +106 -199
- package/header/Header.stories.tsx +152 -63
- package/header/Header.test.js +66 -0
- package/header/Icons.d.ts +2 -0
- package/header/Icons.js +4 -9
- package/header/types.d.ts +5 -20
- package/heading/Heading.js +11 -33
- package/heading/Heading.stories.tsx +54 -0
- package/heading/Heading.test.js +169 -0
- 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/image/types.js +5 -0
- package/inset/Inset.d.ts +3 -0
- package/inset/Inset.js +43 -0
- package/inset/Inset.stories.tsx +230 -0
- package/inset/types.d.ts +37 -0
- package/inset/types.js +5 -0
- package/layout/ApplicationLayout.d.ts +20 -0
- package/layout/ApplicationLayout.js +83 -184
- package/layout/ApplicationLayout.stories.tsx +162 -0
- 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 +41 -0
- package/layout/types.js +5 -0
- package/link/Link.d.ts +3 -2
- package/link/Link.js +65 -111
- package/link/Link.stories.tsx +159 -52
- package/link/Link.test.js +63 -0
- package/link/types.d.ts +15 -35
- package/main.d.ts +16 -13
- package/main.js +71 -91
- package/nav-tabs/NavTabs.d.ts +8 -0
- package/nav-tabs/NavTabs.js +90 -0
- package/nav-tabs/NavTabs.stories.tsx +274 -0
- package/nav-tabs/NavTabs.test.js +75 -0
- package/nav-tabs/Tab.d.ts +4 -0
- package/nav-tabs/Tab.js +117 -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 +28 -47
- package/number-input/NumberInput.stories.tsx +44 -28
- package/number-input/NumberInput.test.js +830 -0
- package/number-input/types.d.ts +28 -15
- package/package.json +45 -44
- package/paginator/Icons.d.ts +5 -0
- package/paginator/Icons.js +21 -47
- package/paginator/Paginator.js +35 -95
- package/paginator/Paginator.stories.tsx +24 -0
- package/paginator/Paginator.test.js +335 -0
- package/paginator/types.d.ts +3 -3
- package/paragraph/Paragraph.d.ts +5 -0
- package/paragraph/Paragraph.js +27 -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 +60 -125
- package/password-input/PasswordInput.stories.tsx +3 -34
- package/password-input/PasswordInput.test.js +198 -0
- package/password-input/types.d.ts +35 -24
- package/progress-bar/ProgressBar.js +69 -89
- package/progress-bar/ProgressBar.stories.tsx +93 -0
- package/progress-bar/ProgressBar.test.js +93 -0
- 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 +4 -0
- package/radio-group/Radio.js +124 -0
- package/radio-group/RadioGroup.d.ts +4 -0
- package/radio-group/RadioGroup.js +235 -0
- package/radio-group/RadioGroup.stories.tsx +214 -0
- package/radio-group/RadioGroup.test.js +756 -0
- package/radio-group/types.d.ts +114 -0
- package/radio-group/types.js +5 -0
- package/resultset-table/Icons.d.ts +7 -0
- package/resultset-table/Icons.js +47 -0
- package/resultset-table/ResultsetTable.d.ts +4 -0
- package/resultset-table/ResultsetTable.js +159 -0
- package/resultset-table/ResultsetTable.stories.tsx +300 -0
- package/resultset-table/ResultsetTable.test.js +305 -0
- package/resultset-table/types.d.ts +67 -0
- 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 +80 -0
- package/select/Select.d.ts +4 -0
- package/select/Select.js +221 -504
- package/select/Select.stories.tsx +603 -204
- package/select/Select.test.js +2334 -0
- package/select/types.d.ts +209 -0
- package/select/types.js +5 -0
- package/sidenav/Icons.d.ts +7 -0
- package/sidenav/Icons.js +47 -0
- package/sidenav/Sidenav.d.ts +6 -5
- package/sidenav/Sidenav.js +135 -72
- package/sidenav/Sidenav.stories.tsx +282 -0
- package/sidenav/Sidenav.test.js +37 -0
- package/sidenav/types.d.ts +52 -26
- package/slider/Slider.d.ts +2 -2
- package/slider/Slider.js +146 -169
- package/slider/Slider.test.js +254 -0
- package/slider/types.d.ts +11 -3
- package/spinner/Spinner.js +30 -66
- package/spinner/{Spinner.stories.jsx → Spinner.stories.tsx} +53 -26
- package/spinner/Spinner.test.js +55 -0
- package/spinner/types.d.ts +3 -3
- package/switch/Switch.d.ts +2 -2
- package/switch/Switch.js +154 -114
- package/switch/Switch.stories.tsx +45 -68
- package/switch/Switch.test.js +180 -0
- package/switch/types.d.ts +13 -5
- package/table/Table.js +10 -29
- package/table/{Table.stories.jsx → Table.stories.tsx} +81 -1
- package/table/Table.test.js +21 -0
- package/table/types.d.ts +8 -8
- package/tabs/Tab.d.ts +4 -0
- package/tabs/Tab.js +113 -0
- package/tabs/Tabs.d.ts +1 -1
- package/tabs/Tabs.js +319 -145
- package/tabs/Tabs.stories.tsx +226 -0
- package/tabs/Tabs.test.js +294 -0
- package/tabs/types.d.ts +46 -24
- package/tag/Tag.d.ts +1 -1
- package/tag/Tag.js +44 -86
- package/tag/Tag.stories.tsx +38 -28
- package/tag/Tag.test.js +49 -0
- package/tag/types.d.ts +25 -16
- 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 +89 -0
- package/text-input/TextInput.d.ts +4 -0
- package/text-input/TextInput.js +310 -543
- package/text-input/TextInput.stories.tsx +465 -0
- package/text-input/TextInput.test.js +1739 -0
- package/text-input/types.d.ts +205 -0
- package/text-input/types.js +5 -0
- package/textarea/Textarea.d.ts +4 -0
- package/textarea/Textarea.js +94 -171
- package/textarea/Textarea.stories.tsx +175 -0
- package/textarea/Textarea.test.js +406 -0
- package/textarea/types.d.ts +141 -0
- package/textarea/types.js +5 -0
- package/toggle-group/ToggleGroup.d.ts +4 -0
- package/toggle-group/ToggleGroup.js +103 -142
- package/toggle-group/ToggleGroup.stories.tsx +76 -36
- package/toggle-group/ToggleGroup.test.js +137 -0
- package/toggle-group/types.d.ts +114 -0
- package/toggle-group/types.js +5 -0
- 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 +1252 -0
- 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 +114 -0
- package/wizard/Wizard.d.ts +1 -1
- package/wizard/Wizard.js +123 -104
- package/wizard/{Wizard.stories.jsx → Wizard.stories.tsx} +48 -19
- package/wizard/Wizard.test.js +114 -0
- package/wizard/types.d.ts +14 -14
- package/ThemeContext.js +0 -246
- package/V3Select/V3Select.js +0 -455
- package/V3Select/index.d.ts +0 -27
- package/V3Textarea/V3Textarea.js +0 -260
- package/V3Textarea/index.d.ts +0 -27
- package/card/ice-cream.jpg +0 -0
- package/chip/index.d.ts +0 -22
- package/common/RequiredComponent.js +0 -32
- package/date/Date.js +0 -373
- package/date/index.d.ts +0 -27
- package/input-text/Icons.js +0 -22
- package/input-text/InputText.js +0 -611
- package/input-text/index.d.ts +0 -36
- package/number-input/NumberInputContext.js +0 -16
- 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/types.d.ts +0 -54
- package/resultsetTable/ResultsetTable.js +0 -274
- package/resultsetTable/index.d.ts +0 -19
- package/select/index.d.ts +0 -131
- package/slider/Slider.stories.tsx +0 -177
- package/text-input/index.d.ts +0 -135
- package/textarea/Textarea.stories.jsx +0 -135
- package/textarea/index.d.ts +0 -117
- package/toggle/Toggle.js +0 -186
- package/toggle/index.d.ts +0 -21
- package/toggle-group/index.d.ts +0 -21
- package/upload/Upload.js +0 -201
- package/upload/buttons-upload/ButtonsUpload.js +0 -111
- package/upload/buttons-upload/Icons.js +0 -40
- package/upload/dragAndDropArea/DragAndDropArea.js +0 -225
- package/upload/dragAndDropArea/Icons.js +0 -39
- package/upload/file-upload/FileToUpload.js +0 -115
- package/upload/file-upload/Icons.js +0 -66
- package/upload/files-upload/FilesToUpload.js +0 -109
- package/upload/index.d.ts +0 -15
- package/upload/transaction/Icons.js +0 -160
- package/upload/transaction/Transaction.js +0 -104
- package/upload/transactions/Transactions.js +0 -94
- package/wizard/Icons.js +0 -65
- /package/{radio → badge}/types.js +0 -0
package/button/Button.js
CHANGED
|
@@ -1,130 +1,87 @@
|
|
|
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
|
-
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
13
|
-
|
|
14
9
|
var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
|
|
15
|
-
|
|
10
|
+
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
16
11
|
var _react = _interopRequireWildcard(require("react"));
|
|
17
|
-
|
|
18
|
-
var _Button = _interopRequireDefault(require("@material-ui/core/Button"));
|
|
19
|
-
|
|
20
12
|
var _styledComponents = _interopRequireWildcard(require("styled-components"));
|
|
21
|
-
|
|
22
|
-
var
|
|
23
|
-
|
|
24
|
-
var
|
|
25
|
-
|
|
26
|
-
var
|
|
27
|
-
|
|
28
|
-
var _BackgroundColorContext = _interopRequireDefault(require("../BackgroundColorContext.js"));
|
|
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
|
-
|
|
13
|
+
var _variables = require("../common/variables");
|
|
14
|
+
var _utils = require("../common/utils");
|
|
15
|
+
var _useTheme = _interopRequireDefault(require("../useTheme"));
|
|
16
|
+
var _BackgroundColorContext = _interopRequireDefault(require("../BackgroundColorContext"));
|
|
17
|
+
var _templateObject, _templateObject2, _templateObject3;
|
|
18
|
+
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); }
|
|
19
|
+
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
20
|
var DxcButton = function DxcButton(_ref) {
|
|
37
21
|
var _ref$label = _ref.label,
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
22
|
+
label = _ref$label === void 0 ? "" : _ref$label,
|
|
23
|
+
_ref$mode = _ref.mode,
|
|
24
|
+
mode = _ref$mode === void 0 ? "primary" : _ref$mode,
|
|
25
|
+
_ref$disabled = _ref.disabled,
|
|
26
|
+
disabled = _ref$disabled === void 0 ? false : _ref$disabled,
|
|
27
|
+
_ref$iconPosition = _ref.iconPosition,
|
|
28
|
+
iconPosition = _ref$iconPosition === void 0 ? "before" : _ref$iconPosition,
|
|
29
|
+
title = _ref.title,
|
|
30
|
+
_ref$type = _ref.type,
|
|
31
|
+
type = _ref$type === void 0 ? "button" : _ref$type,
|
|
32
|
+
icon = _ref.icon,
|
|
33
|
+
_ref$onClick = _ref.onClick,
|
|
34
|
+
_onClick = _ref$onClick === void 0 ? function () {} : _ref$onClick,
|
|
35
|
+
margin = _ref.margin,
|
|
36
|
+
_ref$size = _ref.size,
|
|
37
|
+
size = _ref$size === void 0 ? "fitContent" : _ref$size,
|
|
38
|
+
_ref$tabIndex = _ref.tabIndex,
|
|
39
|
+
tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
|
|
56
40
|
var colorsTheme = (0, _useTheme["default"])();
|
|
57
41
|
var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
|
|
58
42
|
return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
|
|
59
43
|
theme: colorsTheme.button
|
|
60
|
-
}, /*#__PURE__*/_react["default"].createElement(
|
|
61
|
-
|
|
62
|
-
margin: margin,
|
|
63
|
-
mode: mode !== "primary" && mode !== "secondary" && mode !== "text" ? "primary" : mode,
|
|
64
|
-
disabled: disabled,
|
|
65
|
-
iconPosition: iconPosition,
|
|
66
|
-
size: size,
|
|
67
|
-
backgroundType: backgroundType,
|
|
68
|
-
icon: icon
|
|
69
|
-
}, /*#__PURE__*/_react["default"].createElement(_Button["default"], {
|
|
70
|
-
type: type,
|
|
44
|
+
}, /*#__PURE__*/_react["default"].createElement(Button, {
|
|
45
|
+
"aria-label": title,
|
|
71
46
|
disabled: disabled,
|
|
72
|
-
|
|
73
|
-
|
|
47
|
+
onClick: function onClick() {
|
|
48
|
+
_onClick();
|
|
49
|
+
},
|
|
74
50
|
tabIndex: disabled ? -1 : tabIndex,
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
label: label,
|
|
81
|
-
iconPosition: iconPosition
|
|
82
|
-
}, (0, _typeof2["default"])(icon) === "object" ? icon : /*#__PURE__*/_react["default"].createElement(icon)) : iconSrc && /*#__PURE__*/_react["default"].createElement(ButtonIcon, {
|
|
83
|
-
label: label,
|
|
51
|
+
title: title,
|
|
52
|
+
type: type,
|
|
53
|
+
$mode: mode !== "primary" && mode !== "secondary" && mode !== "text" ? "primary" : mode,
|
|
54
|
+
hasLabel: label ? true : false,
|
|
55
|
+
hasIcon: icon ? true : false,
|
|
84
56
|
iconPosition: iconPosition,
|
|
85
|
-
|
|
86
|
-
|
|
57
|
+
backgroundType: backgroundType,
|
|
58
|
+
size: size,
|
|
59
|
+
margin: margin
|
|
60
|
+
}, label && /*#__PURE__*/_react["default"].createElement(LabelContainer, null, label), icon && /*#__PURE__*/_react["default"].createElement(IconContainer, null, typeof icon === "string" ? /*#__PURE__*/_react["default"].createElement("img", {
|
|
61
|
+
src: icon
|
|
62
|
+
}) : icon)));
|
|
87
63
|
};
|
|
88
|
-
|
|
89
64
|
var sizes = {
|
|
90
65
|
small: "42px",
|
|
91
66
|
medium: "120px",
|
|
92
67
|
large: "240px",
|
|
93
68
|
fillParent: "100%",
|
|
94
|
-
fitContent: "
|
|
69
|
+
fitContent: "fit-content"
|
|
95
70
|
};
|
|
96
|
-
|
|
97
71
|
var calculateWidth = function calculateWidth(margin, size) {
|
|
98
|
-
|
|
99
|
-
return "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")");
|
|
100
|
-
}
|
|
101
|
-
|
|
102
|
-
return sizes[size];
|
|
72
|
+
return size === "fillParent" ? "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")") : sizes[size];
|
|
103
73
|
};
|
|
104
|
-
|
|
105
|
-
var
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
return props.theme.
|
|
109
|
-
}
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
return !props.icon || props.iconPosition === "after" ? "8px" : "0px";
|
|
113
|
-
});
|
|
114
|
-
|
|
115
|
-
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) {
|
|
116
|
-
return !props.label ? "0px" : props.iconPosition === "after" && props.label !== "" && "8px" || "8px";
|
|
74
|
+
var getButtonStyles = function getButtonStyles(props) {
|
|
75
|
+
var $mode = props.$mode,
|
|
76
|
+
backgroundType = props.backgroundType,
|
|
77
|
+
disabled = props.disabled;
|
|
78
|
+
return "\n border-radius: ".concat($mode === "primary" ? props.theme.primaryBorderRadius : $mode === "secondary" ? props.theme.secondaryBorderRadius : props.theme.textBorderRadius, ";\n border-width: ").concat($mode === "primary" ? props.theme.primaryBorderThickness : $mode === "secondary" ? props.theme.secondaryBorderThickness : props.theme.textBorderThickness, ";\n border-style: ").concat($mode === "primary" ? props.theme.primaryBorderStyle : $mode === "secondary" ? props.theme.secondaryBorderStyle : props.theme.textBorderStyle, ";\n font-family: ").concat($mode === "primary" ? props.theme.primaryFontFamily : $mode === "secondary" ? props.theme.secondaryFontFamily : props.theme.textFontFamily, ";\n font-size: ").concat($mode === "primary" ? props.theme.primaryFontSize : $mode === "secondary" ? props.theme.secondaryFontSize : props.theme.textFontSize, ";\n font-weight: ").concat($mode === "primary" ? props.theme.primaryFontWeight : $mode === "secondary" ? props.theme.secondaryFontWeight : props.theme.textFontWeight, ";\n background-color: ").concat($mode === "primary" ? backgroundType === "dark" ? props.theme.primaryBackgroundColorOnDark : props.theme.primaryBackgroundColor : $mode === "secondary" ? backgroundType === "dark" ? props.theme.secondaryBackgroundColorOnDark : props.theme.secondaryBackgroundColor : backgroundType === "dark" ? props.theme.textBackgroundColorOnDark : props.theme.textBackgroundColor, ";\n color: ").concat($mode === "primary" ? backgroundType === "dark" ? props.theme.primaryFontColorOnDark : props.theme.primaryFontColor : $mode === "secondary" ? backgroundType === "dark" ? props.theme.secondaryFontColorOnDark : props.theme.secondaryFontColor : backgroundType === "dark" ? props.theme.textFontColorOnDark : props.theme.textFontColor, ";\n border-color: ").concat($mode === "secondary" ? backgroundType === "dark" ? props.theme.secondaryBorderColorOnDark : props.theme.secondaryBorderColor : "", ";\n &:hover {\n background-color: ").concat($mode === "primary" ? backgroundType === "dark" ? props.theme.primaryHoverBackgroundColorOnDark : props.theme.primaryHoverBackgroundColor : $mode === "secondary" ? backgroundType === "dark" ? props.theme.secondaryHoverBackgroundColorOnDark : props.theme.secondaryHoverBackgroundColor : backgroundType === "dark" ? props.theme.textHoverBackgroundColorOnDark : props.theme.textHoverBackgroundColor, ";\n color: ").concat($mode === "secondary" ? backgroundType === "dark" ? props.theme.secondaryHoverFontColorOnDark : props.theme.secondaryHoverFontColor : "", ";\n }\n &:focus {\n border-color: ").concat($mode === "secondary" ? "transparent" : "", ";\n }\n &:active {\n background-color: ").concat($mode === "primary" ? backgroundType === "dark" ? props.theme.primaryActiveBackgroundColorOnDark : props.theme.primaryActiveBackgroundColor : $mode === "secondary" ? backgroundType === "dark" ? props.theme.secondaryActiveBackgroundColorOnDark : props.theme.secondaryActiveBackgroundColor : backgroundType === "dark" ? props.theme.textActiveBackgroundColorOnDark : props.theme.textActiveBackgroundColor, ";\n color: ").concat($mode === "secondary" ? backgroundType === "dark" ? props.theme.secondaryHoverFontColorOnDark : props.theme.secondaryHoverFontColor : "", ";\n border-color: ").concat($mode === "secondary" ? "transparent" : "", ";\n outline: none;\n box-shadow: ").concat(!disabled ? "0 0 0 2px ".concat(backgroundType === "dark" ? props.theme.focusBorderColorOnDark : props.theme.focusBorderColor) : "", ";\n }\n &:disabled {\n cursor: not-allowed;\n background-color: ").concat($mode === "primary" ? backgroundType === "dark" ? props.theme.primaryDisabledBackgroundColorOnDark : props.theme.primaryDisabledBackgroundColor : $mode === "secondary" ? backgroundType === "dark" ? props.theme.secondaryDisabledBackgroundColorOnDark : props.theme.secondaryDisabledBackgroundColor : backgroundType === "dark" ? props.theme.textDisabledBackgroundColorOnDark : props.theme.textDisabledBackgroundColor, ";\n color: ").concat($mode === "primary" ? backgroundType === "dark" ? props.theme.primaryDisabledFontColorOnDark : props.theme.primaryDisabledFontColor : $mode === "secondary" ? backgroundType === "dark" ? props.theme.secondaryDisabledFontColorOnDark : props.theme.secondaryDisabledFontColor : backgroundType === "dark" ? props.theme.textDisabledFontColorOnDark : props.theme.textDisabledFontColor, ";\n border-color: ").concat($mode === "secondary" ? backgroundType === "dark" ? props.theme.secondaryDisabledBorderColorOnDark : props.theme.secondaryDisabledBorderColor : "", ";\n }\n ");
|
|
79
|
+
};
|
|
80
|
+
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) {
|
|
81
|
+
return props.iconPosition === "after" ? "row" : "row-reverse";
|
|
117
82
|
}, function (props) {
|
|
118
|
-
return
|
|
119
|
-
});
|
|
120
|
-
|
|
121
|
-
var ButtonIcon = _styledComponents["default"].img(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n max-height: 24px;\n max-width: 24px;\n margin-left: ", ";\n margin-right: ", ";\n"])), function (props) {
|
|
122
|
-
return props.iconPosition === "after" && props.label !== "" && "10px" || "0px";
|
|
83
|
+
return calculateWidth(props.margin, props.size);
|
|
123
84
|
}, function (props) {
|
|
124
|
-
return props.iconPosition === "before" && props.label !== "" && "10px" || "0px";
|
|
125
|
-
});
|
|
126
|
-
|
|
127
|
-
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) {
|
|
128
85
|
return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
|
|
129
86
|
}, function (props) {
|
|
130
87
|
return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.top ? _variables.spaces[props.margin.top] : "";
|
|
@@ -134,20 +91,14 @@ var DxCButton = _styledComponents["default"].div(_templateObject4 || (_templateO
|
|
|
134
91
|
return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.bottom ? _variables.spaces[props.margin.bottom] : "";
|
|
135
92
|
}, function (props) {
|
|
136
93
|
return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
|
|
137
|
-
}, function (props) {
|
|
138
|
-
return calculateWidth(props.margin, props.size);
|
|
139
|
-
}, function (props) {
|
|
140
|
-
return props.disabled && "not-allowed" || "pointer";
|
|
141
|
-
}, function (props) {
|
|
142
|
-
return props.theme.paddingLeft;
|
|
143
|
-
}, function (props) {
|
|
144
|
-
return props.theme.paddingRight;
|
|
145
94
|
}, function (props) {
|
|
146
95
|
return props.theme.paddingTop;
|
|
147
96
|
}, function (props) {
|
|
148
97
|
return props.theme.paddingBottom;
|
|
149
98
|
}, function (props) {
|
|
150
|
-
return props.
|
|
99
|
+
return props.hasIcon && !props.hasLabel ? props.theme.paddingLeft : "calc(".concat(props.theme.paddingLeft, " + 8px)");
|
|
100
|
+
}, function (props) {
|
|
101
|
+
return props.hasIcon && !props.hasLabel ? props.theme.paddingRight : "calc(".concat(props.theme.paddingRight, " + 8px)");
|
|
151
102
|
}, function (props) {
|
|
152
103
|
return props.theme.fontFamily;
|
|
153
104
|
}, function (props) {
|
|
@@ -156,22 +107,15 @@ var DxCButton = _styledComponents["default"].div(_templateObject4 || (_templateO
|
|
|
156
107
|
return props.theme.fontWeight;
|
|
157
108
|
}, function (props) {
|
|
158
109
|
return props.theme.labelLetterSpacing;
|
|
159
|
-
}, function (props) {
|
|
160
|
-
return props.size === "small" && "calc(100% - 22px)" || "unset";
|
|
161
110
|
}, function (props) {
|
|
162
111
|
return props.backgroundType === "dark" ? props.theme.focusBorderColorOnDark : props.theme.focusBorderColor;
|
|
163
112
|
}, function (props) {
|
|
164
|
-
|
|
165
|
-
backgroundType = props.backgroundType;
|
|
166
|
-
|
|
167
|
-
if (mode === "primary") {
|
|
168
|
-
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 ");
|
|
169
|
-
} else if (mode === "secondary") {
|
|
170
|
-
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 ");
|
|
171
|
-
} else if (mode === "text") {
|
|
172
|
-
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 ");
|
|
173
|
-
}
|
|
113
|
+
return getButtonStyles(props);
|
|
174
114
|
});
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
115
|
+
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) {
|
|
116
|
+
return props.theme.labelFontLineHeight;
|
|
117
|
+
}, function (props) {
|
|
118
|
+
return props.theme.fontSize;
|
|
119
|
+
});
|
|
120
|
+
var IconContainer = _styledComponents["default"].div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n img,\n svg {\n height: 24px;\n width: 24px;\n }\n"])));
|
|
121
|
+
var _default = exports["default"] = DxcButton;
|
|
@@ -1,23 +1,60 @@
|
|
|
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",
|
|
10
10
|
component: DxcButton,
|
|
11
11
|
};
|
|
12
12
|
|
|
13
|
-
const iconSVG = (
|
|
14
|
-
|
|
15
|
-
<
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
13
|
+
const iconSVG = (
|
|
14
|
+
<svg width="24px" height="24px" viewBox="0 0 24 24" fill="currentColor">
|
|
15
|
+
<path d="M0 0h24v24H0z" fill="none" />
|
|
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
|
+
</svg>
|
|
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
|
+
},
|
|
20
56
|
};
|
|
57
|
+
|
|
21
58
|
export const Chromatic = () => (
|
|
22
59
|
<>
|
|
23
60
|
<Title title="Primary" theme="light" level={2} />
|
|
@@ -39,7 +76,7 @@ export const Chromatic = () => (
|
|
|
39
76
|
</ExampleContainer>
|
|
40
77
|
<ExampleContainer>
|
|
41
78
|
<Title title="Disabled" theme="light" level={4} />
|
|
42
|
-
<DxcButton label="Primary disabled" disabled />
|
|
79
|
+
<DxcButton label="Primary disabled" disabled icon={iconSVG} />
|
|
43
80
|
</ExampleContainer>
|
|
44
81
|
<ExampleContainer>
|
|
45
82
|
<Title title="With left icon" theme="light" level={4} />
|
|
@@ -53,6 +90,18 @@ export const Chromatic = () => (
|
|
|
53
90
|
<Title title="Only icon" theme="light" level={4} />
|
|
54
91
|
<DxcButton icon={iconSVG} />
|
|
55
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>
|
|
56
105
|
<Title title="Secondary" theme="light" level={2} />
|
|
57
106
|
<ExampleContainer>
|
|
58
107
|
<Title title="Enabled" theme="light" level={4} />
|
|
@@ -72,12 +121,19 @@ export const Chromatic = () => (
|
|
|
72
121
|
</ExampleContainer>
|
|
73
122
|
<ExampleContainer>
|
|
74
123
|
<Title title="Disabled" theme="light" level={4} />
|
|
75
|
-
<DxcButton mode="secondary" disabled label="Secondary disabled" />
|
|
124
|
+
<DxcButton mode="secondary" disabled label="Secondary disabled" icon={iconSVG} />
|
|
76
125
|
</ExampleContainer>
|
|
77
126
|
<ExampleContainer>
|
|
78
127
|
<Title title="With icon" theme="light" level={4} />
|
|
79
128
|
<DxcButton mode="secondary" label="Secondary" icon={iconSVG} />
|
|
80
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>
|
|
81
137
|
<Title title="Text" theme="light" level={2} />
|
|
82
138
|
<ExampleContainer>
|
|
83
139
|
<Title title="Enabled" theme="light" level={4} />
|
|
@@ -97,91 +153,19 @@ export const Chromatic = () => (
|
|
|
97
153
|
</ExampleContainer>
|
|
98
154
|
<ExampleContainer>
|
|
99
155
|
<Title title="Disabled" theme="light" level={4} />
|
|
100
|
-
<DxcButton mode="text" label="Text disabled" disabled />
|
|
156
|
+
<DxcButton mode="text" label="Text disabled" disabled icon={iconSVG} />
|
|
101
157
|
</ExampleContainer>
|
|
102
158
|
<ExampleContainer>
|
|
103
159
|
<Title title="With icon" theme="light" level={4} />
|
|
104
160
|
<DxcButton label="Text" mode="text" icon={iconSVG} />
|
|
105
161
|
</ExampleContainer>
|
|
106
|
-
<
|
|
107
|
-
<
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
<ExampleContainer pseudoState="pseudo-hover">
|
|
114
|
-
<Title title="Hovered" theme="dark" level={4} />
|
|
115
|
-
<DxcButton label="Primary hovered" />
|
|
116
|
-
</ExampleContainer>
|
|
117
|
-
<ExampleContainer pseudoState="pseudo-focus">
|
|
118
|
-
<Title title="Focused" theme="dark" level={4} />
|
|
119
|
-
<DxcButton label="Primary focused" />
|
|
120
|
-
</ExampleContainer>
|
|
121
|
-
<ExampleContainer pseudoState="pseudo-active">
|
|
122
|
-
<Title title="Actived" theme="dark" level={4} />
|
|
123
|
-
<DxcButton label="Primary actived" />
|
|
124
|
-
</ExampleContainer>
|
|
125
|
-
<ExampleContainer>
|
|
126
|
-
<Title title="Disabled" theme="dark" level={4} />
|
|
127
|
-
<DxcButton label="Primary disabled" disabled />
|
|
128
|
-
</ExampleContainer>
|
|
129
|
-
<ExampleContainer>
|
|
130
|
-
<Title title="With icon" theme="dark" level={4} />
|
|
131
|
-
<DxcButton label="Primary" icon={iconSVG} />
|
|
132
|
-
</ExampleContainer>
|
|
133
|
-
<Title title="Secondary" theme="dark" level={2} />
|
|
134
|
-
<ExampleContainer>
|
|
135
|
-
<Title title="Enabled" theme="dark" level={4} />
|
|
136
|
-
<DxcButton mode="secondary" label="Secondary enabled" />
|
|
137
|
-
</ExampleContainer>
|
|
138
|
-
<ExampleContainer pseudoState="pseudo-hover">
|
|
139
|
-
<Title title="Hovered" theme="dark" level={4} />
|
|
140
|
-
<DxcButton mode="secondary" label="Secondary hovered" />
|
|
141
|
-
</ExampleContainer>
|
|
142
|
-
<ExampleContainer pseudoState="pseudo-focus">
|
|
143
|
-
<Title title="Focused" theme="dark" level={4} />
|
|
144
|
-
<DxcButton mode="secondary" label="Secondary focused" />
|
|
145
|
-
</ExampleContainer>
|
|
146
|
-
<ExampleContainer pseudoState="pseudo-active">
|
|
147
|
-
<Title title="Actived" theme="dark" level={4} />
|
|
148
|
-
<DxcButton mode="secondary" label="Secondary actived" />
|
|
149
|
-
</ExampleContainer>
|
|
150
|
-
<ExampleContainer>
|
|
151
|
-
<Title title="Disabled" theme="dark" level={4} />
|
|
152
|
-
<DxcButton mode="secondary" disabled label="Secondary disabled" />
|
|
153
|
-
</ExampleContainer>
|
|
154
|
-
<ExampleContainer>
|
|
155
|
-
<Title title="With icon" theme="dark" level={4} />
|
|
156
|
-
<DxcButton mode="secondary" label="Primary" icon={iconSVG} />
|
|
157
|
-
</ExampleContainer>
|
|
158
|
-
<Title title="Text" theme="dark" level={2} />
|
|
159
|
-
<ExampleContainer>
|
|
160
|
-
<Title title="Enabled" theme="dark" level={4} />
|
|
161
|
-
<DxcButton mode="text" label="Text enabled" />
|
|
162
|
-
</ExampleContainer>
|
|
163
|
-
<ExampleContainer pseudoState="pseudo-hover">
|
|
164
|
-
<Title title="Hovered" theme="dark" level={4} />
|
|
165
|
-
<DxcButton mode="text" label="Text hovered" />
|
|
166
|
-
</ExampleContainer>
|
|
167
|
-
<ExampleContainer pseudoState="pseudo-focus">
|
|
168
|
-
<Title title="Focused" theme="dark" level={4} />
|
|
169
|
-
<DxcButton mode="text" label="Text focused" />
|
|
170
|
-
</ExampleContainer>
|
|
171
|
-
<ExampleContainer pseudoState="pseudo-active">
|
|
172
|
-
<Title title="Actived" theme="dark" level={4} />
|
|
173
|
-
<DxcButton mode="text" label="Text actived" />
|
|
174
|
-
</ExampleContainer>
|
|
175
|
-
<ExampleContainer>
|
|
176
|
-
<Title title="Disabled" theme="dark" level={4} />
|
|
177
|
-
<DxcButton mode="text" label="Text disabled" disabled />
|
|
178
|
-
</ExampleContainer>
|
|
179
|
-
<ExampleContainer>
|
|
180
|
-
<Title title="With icon" theme="dark" level={4} />
|
|
181
|
-
<DxcButton mode="text" label="Primary" icon={iconSVG} />
|
|
182
|
-
</ExampleContainer>
|
|
183
|
-
</DarkContainer>
|
|
184
|
-
</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>
|
|
185
169
|
<Title title="Sizes" theme="light" level={2} />
|
|
186
170
|
<ExampleContainer>
|
|
187
171
|
<Title title="Small size" theme="light" level={4} />
|
|
@@ -189,7 +173,7 @@ export const Chromatic = () => (
|
|
|
189
173
|
</ExampleContainer>
|
|
190
174
|
<ExampleContainer>
|
|
191
175
|
<Title title="Medium size" theme="light" level={4} />
|
|
192
|
-
<DxcButton label="
|
|
176
|
+
<DxcButton label="MediumSize" size="medium" />
|
|
193
177
|
</ExampleContainer>
|
|
194
178
|
<ExampleContainer>
|
|
195
179
|
<Title title="Medium size with ellipsis" theme="light" level={4} />
|
|
@@ -197,11 +181,11 @@ export const Chromatic = () => (
|
|
|
197
181
|
</ExampleContainer>
|
|
198
182
|
<ExampleContainer>
|
|
199
183
|
<Title title="Medium size icon after" theme="light" level={4} />
|
|
200
|
-
<DxcButton label="
|
|
184
|
+
<DxcButton label="Medium" iconPosition="after" icon={iconSVG} size="medium" />
|
|
201
185
|
</ExampleContainer>
|
|
202
186
|
<ExampleContainer>
|
|
203
187
|
<Title title="Medium size icon before" theme="light" level={4} />
|
|
204
|
-
<DxcButton label="
|
|
188
|
+
<DxcButton label="Medium" iconPosition="before" icon={iconSVG} size="medium" />
|
|
205
189
|
</ExampleContainer>
|
|
206
190
|
<ExampleContainer>
|
|
207
191
|
<Title title="Medium size icon after with ellipsis" theme="light" level={4} />
|
|
@@ -221,11 +205,11 @@ export const Chromatic = () => (
|
|
|
221
205
|
</ExampleContainer>
|
|
222
206
|
<ExampleContainer>
|
|
223
207
|
<Title title="Large size icon after" theme="light" level={4} />
|
|
224
|
-
<DxcButton label="
|
|
208
|
+
<DxcButton label="LargeSizePrimaryButton" iconPosition="after" icon={iconSVG} size="large" />
|
|
225
209
|
</ExampleContainer>
|
|
226
210
|
<ExampleContainer>
|
|
227
211
|
<Title title="Large size icon before" theme="light" level={4} />
|
|
228
|
-
<DxcButton label="
|
|
212
|
+
<DxcButton label="LargeSizePrimaryButton" iconPosition="before" icon={iconSVG} size="large" />
|
|
229
213
|
</ExampleContainer>
|
|
230
214
|
<ExampleContainer>
|
|
231
215
|
<Title title="Large size icon after with ellipsis" theme="light" level={4} />
|
|
@@ -272,5 +256,89 @@ export const Chromatic = () => (
|
|
|
272
256
|
<Title title="Xxlarge margin" theme="light" level={4} />
|
|
273
257
|
<DxcButton label="Xxlarge margin" margin="xxlarge" />
|
|
274
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>
|
|
275
343
|
</>
|
|
276
344
|
);
|