@dxc-technology/halstack-react 0.0.0-eca8a89 → 0.0.0-ecc45e2
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.js +0 -1
- package/HalstackContext.d.ts +12 -0
- package/HalstackContext.js +295 -0
- package/accordion/Accordion.d.ts +1 -1
- package/accordion/Accordion.js +13 -45
- package/accordion/Accordion.stories.tsx +20 -13
- package/accordion/Accordion.test.js +72 -0
- package/accordion/types.d.ts +7 -7
- package/accordion-group/AccordionGroup.d.ts +1 -1
- package/accordion-group/AccordionGroup.js +14 -15
- package/accordion-group/AccordionGroup.stories.tsx +1 -1
- package/accordion-group/AccordionGroup.test.js +151 -0
- package/accordion-group/types.d.ts +7 -7
- package/alert/Alert.js +4 -1
- package/alert/Alert.test.js +92 -0
- package/badge/Badge.d.ts +4 -0
- package/badge/Badge.js +5 -3
- package/badge/types.d.ts +5 -0
- package/{radio → badge}/types.js +0 -0
- package/bleed/Bleed.d.ts +3 -0
- package/bleed/Bleed.js +51 -0
- package/bleed/Bleed.stories.tsx +341 -0
- package/bleed/types.d.ts +37 -0
- package/bleed/types.js +5 -0
- package/box/Box.js +22 -32
- package/box/Box.test.js +18 -0
- package/bulleted-list/BulletedList.d.ts +7 -0
- package/bulleted-list/BulletedList.js +123 -0
- package/bulleted-list/BulletedList.stories.tsx +200 -0
- package/bulleted-list/types.d.ts +11 -0
- package/bulleted-list/types.js +5 -0
- package/button/Button.d.ts +1 -1
- package/button/Button.js +57 -80
- package/button/Button.stories.tsx +15 -8
- package/button/Button.test.js +35 -0
- package/button/types.d.ts +8 -12
- package/card/Card.js +24 -27
- package/card/Card.stories.tsx +1 -1
- package/card/Card.test.js +50 -0
- package/checkbox/Checkbox.d.ts +1 -1
- package/checkbox/Checkbox.js +43 -39
- package/checkbox/Checkbox.stories.tsx +124 -128
- package/checkbox/Checkbox.test.js +78 -0
- package/checkbox/types.d.ts +8 -4
- package/chip/Chip.d.ts +1 -1
- package/chip/Chip.js +16 -54
- package/chip/Chip.stories.tsx +6 -8
- package/chip/Chip.test.js +56 -0
- package/chip/types.d.ts +7 -15
- package/common/variables.js +267 -337
- package/date-input/DateInput.js +62 -48
- package/date-input/DateInput.stories.tsx +7 -7
- package/date-input/DateInput.test.js +479 -0
- package/date-input/types.d.ts +16 -9
- package/dialog/Dialog.js +48 -51
- package/dialog/Dialog.stories.tsx +1 -2
- package/dialog/Dialog.test.js +70 -0
- package/dialog/types.d.ts +2 -2
- package/dropdown/Dropdown.d.ts +1 -1
- package/dropdown/Dropdown.js +242 -272
- package/dropdown/Dropdown.stories.tsx +312 -0
- package/dropdown/Dropdown.test.js +591 -0
- package/dropdown/DropdownMenu.d.ts +4 -0
- package/dropdown/DropdownMenu.js +80 -0
- package/dropdown/DropdownMenuItem.d.ts +4 -0
- package/dropdown/DropdownMenuItem.js +92 -0
- package/dropdown/types.d.ts +29 -18
- package/file-input/FileInput.js +111 -39
- package/file-input/FileInput.stories.tsx +507 -0
- package/file-input/FileInput.test.js +457 -0
- package/file-input/FileItem.js +7 -5
- package/flex/Flex.d.ts +4 -0
- package/flex/Flex.js +57 -0
- package/flex/Flex.stories.tsx +103 -0
- package/flex/types.d.ts +21 -0
- package/flex/types.js +5 -0
- package/footer/Footer.js +24 -99
- package/footer/Footer.test.js +109 -0
- package/footer/Icons.js +1 -1
- package/footer/types.d.ts +1 -1
- package/header/Header.js +95 -114
- package/header/Header.stories.tsx +46 -36
- package/header/Header.test.js +79 -0
- package/header/Icons.js +2 -2
- package/header/types.d.ts +2 -2
- package/heading/Heading.stories.tsx +3 -2
- package/heading/Heading.test.js +186 -0
- package/inset/Inset.d.ts +3 -0
- package/inset/Inset.js +51 -0
- package/inset/Inset.stories.tsx +229 -0
- package/inset/types.d.ts +37 -0
- package/inset/types.js +5 -0
- package/layout/ApplicationLayout.d.ts +16 -6
- package/layout/ApplicationLayout.js +71 -125
- package/layout/ApplicationLayout.stories.tsx +83 -93
- package/layout/Icons.d.ts +5 -0
- package/layout/Icons.js +13 -2
- package/layout/SidenavContext.d.ts +5 -0
- package/layout/SidenavContext.js +19 -0
- package/layout/types.d.ts +18 -33
- package/link/Link.d.ts +3 -2
- package/link/Link.js +60 -85
- package/link/Link.stories.tsx +99 -52
- package/link/Link.test.js +83 -0
- package/link/types.d.ts +9 -29
- package/main.d.ts +11 -15
- package/main.js +53 -79
- package/number-input/NumberInput.js +11 -18
- package/number-input/NumberInput.stories.tsx +5 -5
- package/number-input/NumberInput.test.js +506 -0
- package/number-input/types.d.ts +17 -10
- package/package.json +14 -10
- package/paginator/Paginator.js +17 -38
- package/paginator/Paginator.test.js +308 -0
- package/paragraph/Paragraph.d.ts +6 -0
- package/paragraph/Paragraph.js +38 -0
- package/paragraph/Paragraph.stories.tsx +44 -0
- package/password-input/PasswordInput.js +7 -4
- package/password-input/PasswordInput.stories.tsx +3 -3
- package/password-input/PasswordInput.test.js +180 -0
- package/password-input/types.d.ts +14 -11
- package/progress-bar/ProgressBar.d.ts +2 -2
- package/progress-bar/ProgressBar.js +57 -51
- package/progress-bar/ProgressBar.stories.jsx +13 -11
- package/progress-bar/ProgressBar.test.js +110 -0
- package/progress-bar/types.d.ts +3 -4
- package/quick-nav/QuickNav.d.ts +4 -0
- package/quick-nav/QuickNav.js +118 -0
- package/quick-nav/QuickNav.stories.tsx +264 -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 +141 -0
- package/radio-group/RadioGroup.d.ts +4 -0
- package/radio-group/RadioGroup.js +281 -0
- package/radio-group/RadioGroup.stories.tsx +100 -0
- package/radio-group/RadioGroup.test.js +695 -0
- package/radio-group/types.d.ts +114 -0
- package/radio-group/types.js +5 -0
- package/resultsetTable/ResultsetTable.js +5 -2
- package/resultsetTable/ResultsetTable.stories.tsx +7 -8
- package/resultsetTable/ResultsetTable.test.js +348 -0
- package/select/Icons.d.ts +10 -0
- package/select/Icons.js +93 -0
- package/select/Listbox.d.ts +4 -0
- package/select/Listbox.js +199 -0
- package/select/Option.d.ts +4 -0
- package/select/Option.js +110 -0
- package/select/Select.d.ts +4 -0
- package/select/Select.js +146 -366
- package/select/Select.stories.tsx +231 -176
- package/select/Select.test.js +2175 -0
- package/select/types.d.ts +210 -0
- package/select/types.js +5 -0
- package/sidenav/Sidenav.d.ts +6 -5
- package/sidenav/Sidenav.js +184 -52
- package/sidenav/Sidenav.stories.tsx +154 -139
- package/sidenav/Sidenav.test.js +44 -0
- package/sidenav/types.d.ts +50 -27
- package/slider/Slider.d.ts +1 -1
- package/slider/Slider.js +5 -4
- package/slider/Slider.stories.tsx +8 -8
- package/slider/Slider.test.js +187 -0
- package/slider/types.d.ts +4 -0
- package/spinner/Spinner.js +1 -1
- package/spinner/Spinner.stories.jsx +1 -0
- package/spinner/Spinner.test.js +64 -0
- package/switch/Switch.d.ts +2 -2
- package/switch/Switch.js +127 -55
- package/switch/Switch.stories.tsx +21 -43
- package/switch/Switch.test.js +212 -0
- package/switch/types.d.ts +9 -6
- package/table/Table.stories.jsx +2 -1
- package/table/Table.test.js +26 -0
- package/tabs/Tabs.d.ts +1 -1
- package/tabs/Tabs.js +16 -18
- package/tabs/Tabs.stories.tsx +7 -16
- package/tabs/Tabs.test.js +140 -0
- package/tabs/types.d.ts +27 -15
- package/tabs-nav/NavTabs.d.ts +8 -0
- package/tabs-nav/NavTabs.js +125 -0
- package/tabs-nav/NavTabs.stories.tsx +170 -0
- package/tabs-nav/NavTabs.test.js +82 -0
- package/tabs-nav/Tab.d.ts +4 -0
- package/tabs-nav/Tab.js +130 -0
- package/tabs-nav/types.d.ts +53 -0
- package/tabs-nav/types.js +5 -0
- package/tag/Tag.d.ts +1 -1
- package/tag/Tag.js +17 -27
- package/tag/Tag.stories.tsx +26 -29
- package/tag/Tag.test.js +60 -0
- package/tag/types.d.ts +23 -14
- package/text-input/Suggestion.d.ts +4 -0
- package/text-input/Suggestion.js +55 -0
- package/text-input/TextInput.js +80 -105
- package/text-input/TextInput.stories.tsx +35 -18
- package/text-input/TextInput.test.js +1712 -0
- package/text-input/types.d.ts +32 -13
- package/textarea/Textarea.d.ts +4 -0
- package/textarea/Textarea.js +19 -56
- package/textarea/Textarea.stories.jsx +37 -15
- package/textarea/Textarea.test.js +437 -0
- package/textarea/types.d.ts +137 -0
- package/textarea/types.js +5 -0
- package/toggle-group/ToggleGroup.d.ts +1 -1
- package/toggle-group/ToggleGroup.js +12 -14
- package/toggle-group/ToggleGroup.stories.tsx +27 -32
- package/toggle-group/ToggleGroup.test.js +156 -0
- package/toggle-group/types.d.ts +46 -25
- package/typography/Typography.d.ts +4 -0
- package/typography/Typography.js +131 -0
- package/typography/Typography.stories.tsx +198 -0
- package/typography/types.d.ts +18 -0
- package/typography/types.js +5 -0
- package/useTheme.js +2 -2
- package/useTranslatedLabels.d.ts +2 -0
- package/useTranslatedLabels.js +20 -0
- package/wizard/Wizard.d.ts +1 -1
- package/wizard/Wizard.js +111 -57
- package/wizard/{Wizard.stories.jsx → Wizard.stories.tsx} +33 -24
- package/wizard/Wizard.test.js +141 -0
- package/wizard/types.d.ts +12 -11
- package/ThemeContext.d.ts +0 -15
- package/ThemeContext.js +0 -243
- 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/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/list/List.d.ts +0 -7
- package/list/List.js +0 -37
- package/list/List.stories.tsx +0 -70
- 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/row/Row.d.ts +0 -11
- package/row/Row.js +0 -124
- package/row/Row.stories.tsx +0 -223
- package/select/index.d.ts +0 -131
- package/stack/Stack.d.ts +0 -10
- package/stack/Stack.js +0 -94
- package/stack/Stack.stories.tsx +0 -150
- package/text/Text.d.ts +0 -7
- package/text/Text.js +0 -30
- package/text/Text.stories.tsx +0 -19
- package/textarea/index.d.ts +0 -127
- package/toggle/Toggle.js +0 -186
- package/toggle/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
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
6
|
+
|
|
7
|
+
Object.defineProperty(exports, "__esModule", {
|
|
8
|
+
value: true
|
|
9
|
+
});
|
|
10
|
+
exports["default"] = void 0;
|
|
11
|
+
|
|
12
|
+
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
13
|
+
|
|
14
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
15
|
+
|
|
16
|
+
var _styledComponents = _interopRequireWildcard(require("styled-components"));
|
|
17
|
+
|
|
18
|
+
var _Flex = _interopRequireDefault(require("../flex/Flex"));
|
|
19
|
+
|
|
20
|
+
var _Typography = _interopRequireDefault(require("../typography/Typography"));
|
|
21
|
+
|
|
22
|
+
var _useTheme = _interopRequireDefault(require("../useTheme"));
|
|
23
|
+
|
|
24
|
+
var _BackgroundColorContext = _interopRequireDefault(require("../BackgroundColorContext"));
|
|
25
|
+
|
|
26
|
+
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9;
|
|
27
|
+
|
|
28
|
+
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); }
|
|
29
|
+
|
|
30
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
31
|
+
|
|
32
|
+
var BulletedListItem = function BulletedListItem(_ref) {
|
|
33
|
+
var children = _ref.children;
|
|
34
|
+
return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, children);
|
|
35
|
+
};
|
|
36
|
+
|
|
37
|
+
var DxcBulletedList = function DxcBulletedList(_ref2) {
|
|
38
|
+
var children = _ref2.children,
|
|
39
|
+
_ref2$type = _ref2.type,
|
|
40
|
+
type = _ref2$type === void 0 ? "disc" : _ref2$type,
|
|
41
|
+
_ref2$icon = _ref2.icon,
|
|
42
|
+
icon = _ref2$icon === void 0 ? "" : _ref2$icon;
|
|
43
|
+
var colorsTheme = (0, _useTheme["default"])();
|
|
44
|
+
var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
|
|
45
|
+
return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
|
|
46
|
+
theme: colorsTheme.bulletedList
|
|
47
|
+
}, /*#__PURE__*/_react["default"].createElement(ListContainer, null, /*#__PURE__*/_react["default"].createElement(_Flex["default"], {
|
|
48
|
+
direction: "column",
|
|
49
|
+
as: type === "number" ? "ol" : "ul",
|
|
50
|
+
gap: "0.125rem"
|
|
51
|
+
}, _react["default"].Children.map(children, function (child, index) {
|
|
52
|
+
return /*#__PURE__*/_react["default"].createElement(ListItem, null, /*#__PURE__*/_react["default"].createElement(GeneralContent, null, type === "number" ? /*#__PURE__*/_react["default"].createElement(Number, null, /*#__PURE__*/_react["default"].createElement(_Typography["default"], {
|
|
53
|
+
color: backgroundType && backgroundType === "dark" ? colorsTheme.bulletedList.fontColorOnDark : colorsTheme.bulletedList.fontColor
|
|
54
|
+
}, index + 1, ".")) : type === "square" ? /*#__PURE__*/_react["default"].createElement(Bullet, null, /*#__PURE__*/_react["default"].createElement(Square, {
|
|
55
|
+
backgroundType: backgroundType
|
|
56
|
+
})) : type === "circle" ? /*#__PURE__*/_react["default"].createElement(Bullet, null, /*#__PURE__*/_react["default"].createElement(Circle, {
|
|
57
|
+
backgroundType: backgroundType
|
|
58
|
+
})) : type === "icon" ? /*#__PURE__*/_react["default"].createElement(Bullet, null, /*#__PURE__*/_react["default"].createElement(Icon, {
|
|
59
|
+
backgroundType: backgroundType
|
|
60
|
+
}, icon)) : /*#__PURE__*/_react["default"].createElement(Bullet, null, /*#__PURE__*/_react["default"].createElement(Disc, {
|
|
61
|
+
backgroundType: backgroundType
|
|
62
|
+
})), /*#__PURE__*/_react["default"].createElement(_Typography["default"], {
|
|
63
|
+
color: backgroundType && backgroundType === "dark" ? colorsTheme.bulletedList.fontColorOnDark : colorsTheme.bulletedList.fontColor
|
|
64
|
+
}, child)));
|
|
65
|
+
}))));
|
|
66
|
+
};
|
|
67
|
+
|
|
68
|
+
DxcBulletedList.Item = BulletedListItem;
|
|
69
|
+
|
|
70
|
+
var ListContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n ul,\n ol {\n padding: 0;\n margin: 0;\n }\n"])));
|
|
71
|
+
|
|
72
|
+
var Bullet = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-self: flex-start;\n align-items: center;\n height: 1.5rem;\n"])));
|
|
73
|
+
|
|
74
|
+
var GeneralContent = _styledComponents["default"].div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n display: grid;\n grid-template-columns: auto 1fr;\n align-items: center;\n"])));
|
|
75
|
+
|
|
76
|
+
var Icon = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n height: 1.5rem;\n width: auto;\n margin-right: ", ";\n align-content: center;\n color: ", ";\n & > svg {\n height: ", ";\n width: ", ";\n }\n"])), function (props) {
|
|
77
|
+
return props.theme.bulletMarginRight;
|
|
78
|
+
}, function (props) {
|
|
79
|
+
return props.backgroundType && props.backgroundType === "dark" ? props.theme.fontColorOnDark : props.theme.fontColor;
|
|
80
|
+
}, function (props) {
|
|
81
|
+
return props.theme.bulletIconHeight;
|
|
82
|
+
}, function (props) {
|
|
83
|
+
return props.theme.bulletIconWidth;
|
|
84
|
+
});
|
|
85
|
+
|
|
86
|
+
var Number = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n user-select: none;\n margin-right: ", ";\n display: flex;\n box-sizing: border-box;\n align-self: flex-start;\n min-width: 0;\n"])), function (props) {
|
|
87
|
+
return props.theme.bulletMarginRight;
|
|
88
|
+
});
|
|
89
|
+
|
|
90
|
+
var Square = _styledComponents["default"].div(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n background-color: ", ";\n height: ", ";\n width: ", ";\n margin-right: ", ";\n"])), function (props) {
|
|
91
|
+
return props.backgroundType && props.backgroundType === "dark" ? props.theme.fontColorOnDark : props.theme.fontColor;
|
|
92
|
+
}, function (props) {
|
|
93
|
+
return props.theme.bulletHeight;
|
|
94
|
+
}, function (props) {
|
|
95
|
+
return props.theme.bulletWidth;
|
|
96
|
+
}, function (props) {
|
|
97
|
+
return props.theme.bulletMarginRight;
|
|
98
|
+
});
|
|
99
|
+
|
|
100
|
+
var Circle = _styledComponents["default"].div(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n height: ", ";\n width: ", ";\n border-radius: 50%;\n border: 1px solid;\n border-color: ", ";\n margin-right: ", ";\n"])), function (props) {
|
|
101
|
+
return props.theme.bulletHeight;
|
|
102
|
+
}, function (props) {
|
|
103
|
+
return props.theme.bulletWidth;
|
|
104
|
+
}, function (props) {
|
|
105
|
+
return props.backgroundType && props.backgroundType === "dark" ? props.theme.fontColorOnDark : props.theme.fontColor;
|
|
106
|
+
}, function (props) {
|
|
107
|
+
return props.theme.bulletMarginRight;
|
|
108
|
+
});
|
|
109
|
+
|
|
110
|
+
var Disc = _styledComponents["default"].div(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["\n background-color: ", ";\n height: ", ";\n width: ", ";\n border-radius: 50%;\n margin-right: ", ";\n"])), function (props) {
|
|
111
|
+
return props.backgroundType && props.backgroundType === "dark" ? props.theme.fontColorOnDark : props.theme.fontColor;
|
|
112
|
+
}, function (props) {
|
|
113
|
+
return props.theme.bulletHeight;
|
|
114
|
+
}, function (props) {
|
|
115
|
+
return props.theme.bulletWidth;
|
|
116
|
+
}, function (props) {
|
|
117
|
+
return props.theme.bulletMarginRight;
|
|
118
|
+
});
|
|
119
|
+
|
|
120
|
+
var ListItem = _styledComponents["default"].li(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2["default"])(["\n margin: 0px;\n padding: 0px;\n list-style: none;\n display: flex;\n font-size: 1em;\n"])));
|
|
121
|
+
|
|
122
|
+
var _default = DxcBulletedList;
|
|
123
|
+
exports["default"] = _default;
|
|
@@ -0,0 +1,200 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import styled from "styled-components";
|
|
3
|
+
import Title from "../../.storybook/components/Title";
|
|
4
|
+
import { BackgroundColorProvider } from "../BackgroundColorContext";
|
|
5
|
+
import ExampleContainer from "../../.storybook/components/ExampleContainer";
|
|
6
|
+
import DxcBulletedList from "./BulletedList";
|
|
7
|
+
|
|
8
|
+
export default {
|
|
9
|
+
title: "BulletedList",
|
|
10
|
+
component: DxcBulletedList,
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
const icon = (
|
|
14
|
+
<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
|
|
15
|
+
<path d="M0 0h24v24H0V0z" fill="none" />
|
|
16
|
+
<path d="M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12V1zm3 4H8c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm0 16H8V7h11v14z" />
|
|
17
|
+
</svg>
|
|
18
|
+
);
|
|
19
|
+
|
|
20
|
+
export const Chromatic = () => (
|
|
21
|
+
<>
|
|
22
|
+
<ExampleContainer>
|
|
23
|
+
<Title title="Icon list" level={4} />
|
|
24
|
+
<DxcBulletedList type="icon" icon={icon}>
|
|
25
|
+
<DxcBulletedList.Item>Code</DxcBulletedList.Item>
|
|
26
|
+
<DxcBulletedList.Item>Usage</DxcBulletedList.Item>
|
|
27
|
+
<DxcBulletedList.Item>Specifications</DxcBulletedList.Item>
|
|
28
|
+
</DxcBulletedList>
|
|
29
|
+
<Title title="Number list" level={4} />
|
|
30
|
+
<DxcBulletedList type="number">
|
|
31
|
+
<DxcBulletedList.Item>Code</DxcBulletedList.Item>
|
|
32
|
+
<DxcBulletedList.Item>Usage</DxcBulletedList.Item>
|
|
33
|
+
<DxcBulletedList.Item>Specifications</DxcBulletedList.Item>
|
|
34
|
+
</DxcBulletedList>
|
|
35
|
+
<Title title="Square" level={4} />
|
|
36
|
+
<DxcBulletedList type="square">
|
|
37
|
+
<DxcBulletedList.Item>Code</DxcBulletedList.Item>
|
|
38
|
+
<DxcBulletedList.Item>Usage</DxcBulletedList.Item>
|
|
39
|
+
<DxcBulletedList.Item>Specifications</DxcBulletedList.Item>
|
|
40
|
+
</DxcBulletedList>
|
|
41
|
+
<Title title="Circle" level={4} />
|
|
42
|
+
<DxcBulletedList type="circle">
|
|
43
|
+
<DxcBulletedList.Item>Code</DxcBulletedList.Item>
|
|
44
|
+
<DxcBulletedList.Item>Usage</DxcBulletedList.Item>
|
|
45
|
+
<DxcBulletedList.Item>Specifications</DxcBulletedList.Item>
|
|
46
|
+
</DxcBulletedList>
|
|
47
|
+
<Title title="Disc" level={4} />
|
|
48
|
+
<DxcBulletedList>
|
|
49
|
+
<DxcBulletedList.Item>Code</DxcBulletedList.Item>
|
|
50
|
+
<DxcBulletedList.Item>Usage</DxcBulletedList.Item>
|
|
51
|
+
<DxcBulletedList.Item>Specifications</DxcBulletedList.Item>
|
|
52
|
+
</DxcBulletedList>
|
|
53
|
+
<Title title="Multiple lines" level={4} />
|
|
54
|
+
<Container>
|
|
55
|
+
<Title title="Number" level={4} />
|
|
56
|
+
<DxcBulletedList type="number">
|
|
57
|
+
<DxcBulletedList.Item>
|
|
58
|
+
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et
|
|
59
|
+
dolore magna aliqua.
|
|
60
|
+
</DxcBulletedList.Item>
|
|
61
|
+
<DxcBulletedList.Item>Text 2.</DxcBulletedList.Item>
|
|
62
|
+
</DxcBulletedList>
|
|
63
|
+
</Container>
|
|
64
|
+
<Container>
|
|
65
|
+
<Title title="Square" level={4} />
|
|
66
|
+
<DxcBulletedList type="square">
|
|
67
|
+
<DxcBulletedList.Item>
|
|
68
|
+
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et
|
|
69
|
+
dolore magna aliqua.
|
|
70
|
+
</DxcBulletedList.Item>
|
|
71
|
+
<DxcBulletedList.Item>Text 2.</DxcBulletedList.Item>
|
|
72
|
+
</DxcBulletedList>
|
|
73
|
+
</Container>
|
|
74
|
+
<Container>
|
|
75
|
+
<Title title="Circle" level={4} />
|
|
76
|
+
<DxcBulletedList type="circle">
|
|
77
|
+
<DxcBulletedList.Item>
|
|
78
|
+
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et
|
|
79
|
+
dolore magna aliqua.
|
|
80
|
+
</DxcBulletedList.Item>
|
|
81
|
+
<DxcBulletedList.Item>Text 2.</DxcBulletedList.Item>
|
|
82
|
+
</DxcBulletedList>
|
|
83
|
+
</Container>
|
|
84
|
+
<Title title="Disc" level={4} />
|
|
85
|
+
<Container>
|
|
86
|
+
<DxcBulletedList>
|
|
87
|
+
<DxcBulletedList.Item>
|
|
88
|
+
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et
|
|
89
|
+
dolore magna aliqua.
|
|
90
|
+
</DxcBulletedList.Item>
|
|
91
|
+
<DxcBulletedList.Item>Text 2.</DxcBulletedList.Item>
|
|
92
|
+
</DxcBulletedList>
|
|
93
|
+
</Container>
|
|
94
|
+
<Container>
|
|
95
|
+
<Title title="Icon" level={4} />
|
|
96
|
+
<DxcBulletedList type="icon" icon={icon}>
|
|
97
|
+
<DxcBulletedList.Item>
|
|
98
|
+
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et
|
|
99
|
+
dolore magna aliqua.
|
|
100
|
+
</DxcBulletedList.Item>
|
|
101
|
+
<DxcBulletedList.Item>Text 2.</DxcBulletedList.Item>
|
|
102
|
+
</DxcBulletedList>
|
|
103
|
+
</Container>
|
|
104
|
+
</ExampleContainer>
|
|
105
|
+
<BackgroundColorProvider color="#333333">
|
|
106
|
+
<DarkContainerForBulletedList>
|
|
107
|
+
<Title title="Icon list" theme="dark" level={4} />
|
|
108
|
+
<DxcBulletedList type="icon" icon={icon}>
|
|
109
|
+
<DxcBulletedList.Item>Code</DxcBulletedList.Item>
|
|
110
|
+
<DxcBulletedList.Item>Usage</DxcBulletedList.Item>
|
|
111
|
+
<DxcBulletedList.Item>Specifications</DxcBulletedList.Item>
|
|
112
|
+
</DxcBulletedList>
|
|
113
|
+
<Title title="Number list" theme="dark" level={4} />
|
|
114
|
+
<DxcBulletedList type="number">
|
|
115
|
+
<DxcBulletedList.Item>Code</DxcBulletedList.Item>
|
|
116
|
+
<DxcBulletedList.Item>Usage</DxcBulletedList.Item>
|
|
117
|
+
<DxcBulletedList.Item>Specifications</DxcBulletedList.Item>
|
|
118
|
+
</DxcBulletedList>
|
|
119
|
+
<Title title="Square" theme="dark" level={4} />
|
|
120
|
+
<DxcBulletedList type="square">
|
|
121
|
+
<DxcBulletedList.Item>Code</DxcBulletedList.Item>
|
|
122
|
+
<DxcBulletedList.Item>Usage</DxcBulletedList.Item>
|
|
123
|
+
<DxcBulletedList.Item>Specifications</DxcBulletedList.Item>
|
|
124
|
+
</DxcBulletedList>
|
|
125
|
+
<Title title="Circle" theme="dark" level={4} />
|
|
126
|
+
<DxcBulletedList type="circle">
|
|
127
|
+
<DxcBulletedList.Item>Code</DxcBulletedList.Item>
|
|
128
|
+
<DxcBulletedList.Item>Usage</DxcBulletedList.Item>
|
|
129
|
+
<DxcBulletedList.Item>Specifications</DxcBulletedList.Item>
|
|
130
|
+
</DxcBulletedList>
|
|
131
|
+
<Title title="Disc" theme="dark" level={4} />
|
|
132
|
+
<DxcBulletedList>
|
|
133
|
+
<DxcBulletedList.Item>Code</DxcBulletedList.Item>
|
|
134
|
+
<DxcBulletedList.Item>Usage</DxcBulletedList.Item>
|
|
135
|
+
<DxcBulletedList.Item>Specifications</DxcBulletedList.Item>
|
|
136
|
+
</DxcBulletedList>
|
|
137
|
+
<Title title="Multiple lines" theme="dark" level={4} />
|
|
138
|
+
<Container>
|
|
139
|
+
<Title title="Number" theme="dark" level={4} />
|
|
140
|
+
<DxcBulletedList type="number">
|
|
141
|
+
<DxcBulletedList.Item>
|
|
142
|
+
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et
|
|
143
|
+
dolore magna aliqua.
|
|
144
|
+
</DxcBulletedList.Item>
|
|
145
|
+
<DxcBulletedList.Item>Text 2.</DxcBulletedList.Item>
|
|
146
|
+
</DxcBulletedList>
|
|
147
|
+
</Container>
|
|
148
|
+
<Container>
|
|
149
|
+
<Title title="Square" theme="dark" level={4} />
|
|
150
|
+
<DxcBulletedList type="square">
|
|
151
|
+
<DxcBulletedList.Item>
|
|
152
|
+
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et
|
|
153
|
+
dolore magna aliqua.
|
|
154
|
+
</DxcBulletedList.Item>
|
|
155
|
+
<DxcBulletedList.Item>Text 2.</DxcBulletedList.Item>
|
|
156
|
+
</DxcBulletedList>
|
|
157
|
+
</Container>
|
|
158
|
+
<Container>
|
|
159
|
+
<Title title="Circle" theme="dark" level={4} />
|
|
160
|
+
<DxcBulletedList type="circle">
|
|
161
|
+
<DxcBulletedList.Item>
|
|
162
|
+
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et
|
|
163
|
+
dolore magna aliqua.
|
|
164
|
+
</DxcBulletedList.Item>
|
|
165
|
+
<DxcBulletedList.Item>Text 2.</DxcBulletedList.Item>
|
|
166
|
+
</DxcBulletedList>
|
|
167
|
+
</Container>
|
|
168
|
+
<Title title="Disc" theme="dark" level={4} />
|
|
169
|
+
<Container>
|
|
170
|
+
<DxcBulletedList>
|
|
171
|
+
<DxcBulletedList.Item>
|
|
172
|
+
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et
|
|
173
|
+
dolore magna aliqua.
|
|
174
|
+
</DxcBulletedList.Item>
|
|
175
|
+
<DxcBulletedList.Item>Text 2.</DxcBulletedList.Item>
|
|
176
|
+
</DxcBulletedList>
|
|
177
|
+
</Container>
|
|
178
|
+
<Container>
|
|
179
|
+
<Title title="Icon" theme="dark" level={4} />
|
|
180
|
+
<DxcBulletedList type="icon" icon={icon}>
|
|
181
|
+
<DxcBulletedList.Item>
|
|
182
|
+
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et
|
|
183
|
+
dolore magna aliqua.
|
|
184
|
+
</DxcBulletedList.Item>
|
|
185
|
+
<DxcBulletedList.Item>Text 2.</DxcBulletedList.Item>
|
|
186
|
+
</DxcBulletedList>
|
|
187
|
+
</Container>
|
|
188
|
+
</DarkContainerForBulletedList>
|
|
189
|
+
</BackgroundColorProvider>
|
|
190
|
+
</>
|
|
191
|
+
);
|
|
192
|
+
|
|
193
|
+
const Container = styled.div`
|
|
194
|
+
width: 400px;
|
|
195
|
+
`;
|
|
196
|
+
|
|
197
|
+
const DarkContainerForBulletedList = styled.div`
|
|
198
|
+
background-color: #333333;
|
|
199
|
+
padding: 5px;
|
|
200
|
+
`;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
declare type SVG = React.ReactNode & (React.SVGProps<SVGSVGElement> | React.FunctionComponent<React.SVGProps<SVGSVGElement>>);
|
|
3
|
+
declare type Props = {
|
|
4
|
+
children: React.ReactNode;
|
|
5
|
+
type?: "disc" | "circle" | "square" | "number" | "icon";
|
|
6
|
+
icon?: string | SVG;
|
|
7
|
+
};
|
|
8
|
+
export default Props;
|
|
9
|
+
export declare type BulletedListItemPropsType = {
|
|
10
|
+
children?: React.ReactNode;
|
|
11
|
+
};
|
package/button/Button.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import ButtonPropsType from "./types";
|
|
3
|
-
declare const DxcButton: ({ label, mode, disabled, iconPosition, type, icon,
|
|
3
|
+
declare const DxcButton: ({ label, mode, disabled, iconPosition, type, icon, onClick, margin, size, tabIndex, }: ButtonPropsType) => JSX.Element;
|
|
4
4
|
export default DxcButton;
|
package/button/Button.js
CHANGED
|
@@ -9,13 +9,11 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
9
9
|
});
|
|
10
10
|
exports["default"] = void 0;
|
|
11
11
|
|
|
12
|
-
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
13
|
-
|
|
14
12
|
var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
|
|
15
13
|
|
|
16
|
-
var
|
|
14
|
+
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
17
15
|
|
|
18
|
-
var
|
|
16
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
19
17
|
|
|
20
18
|
var _styledComponents = _interopRequireWildcard(require("styled-components"));
|
|
21
19
|
|
|
@@ -33,6 +31,22 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
|
|
|
33
31
|
|
|
34
32
|
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
33
|
|
|
34
|
+
var sizes = {
|
|
35
|
+
small: "42px",
|
|
36
|
+
medium: "120px",
|
|
37
|
+
large: "240px",
|
|
38
|
+
fillParent: "100%",
|
|
39
|
+
fitContent: "fit-content"
|
|
40
|
+
};
|
|
41
|
+
|
|
42
|
+
var calculateWidth = function calculateWidth(margin, size) {
|
|
43
|
+
if (size === "fillParent") {
|
|
44
|
+
return "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")");
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
return sizes[size];
|
|
48
|
+
};
|
|
49
|
+
|
|
36
50
|
var DxcButton = function DxcButton(_ref) {
|
|
37
51
|
var _ref$label = _ref.label,
|
|
38
52
|
label = _ref$label === void 0 ? "" : _ref$label,
|
|
@@ -45,88 +59,45 @@ var DxcButton = function DxcButton(_ref) {
|
|
|
45
59
|
_ref$type = _ref.type,
|
|
46
60
|
type = _ref$type === void 0 ? "button" : _ref$type,
|
|
47
61
|
icon = _ref.icon,
|
|
48
|
-
_ref$
|
|
49
|
-
|
|
50
|
-
_onClick = _ref.onClick,
|
|
62
|
+
_ref$onClick = _ref.onClick,
|
|
63
|
+
_onClick = _ref$onClick === void 0 ? function () {} : _ref$onClick,
|
|
51
64
|
margin = _ref.margin,
|
|
52
65
|
_ref$size = _ref.size,
|
|
53
66
|
size = _ref$size === void 0 ? "fitContent" : _ref$size,
|
|
54
67
|
_ref$tabIndex = _ref.tabIndex,
|
|
55
68
|
tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
|
|
69
|
+
|
|
56
70
|
var colorsTheme = (0, _useTheme["default"])();
|
|
57
71
|
var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
|
|
72
|
+
|
|
73
|
+
var labelComponent = /*#__PURE__*/_react["default"].createElement(LabelContainer, {
|
|
74
|
+
icon: icon,
|
|
75
|
+
iconPosition: iconPosition
|
|
76
|
+
}, label);
|
|
77
|
+
|
|
58
78
|
return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
|
|
59
79
|
theme: colorsTheme.button
|
|
60
|
-
}, /*#__PURE__*/_react["default"].createElement(
|
|
80
|
+
}, /*#__PURE__*/_react["default"].createElement(Button, {
|
|
61
81
|
type: type,
|
|
62
|
-
margin: margin,
|
|
63
82
|
mode: mode !== "primary" && mode !== "secondary" && mode !== "text" ? "primary" : mode,
|
|
64
83
|
disabled: disabled,
|
|
65
|
-
iconPosition: iconPosition,
|
|
66
|
-
size: size,
|
|
67
|
-
backgroundType: backgroundType,
|
|
68
|
-
icon: icon
|
|
69
|
-
}, /*#__PURE__*/_react["default"].createElement(_Button["default"], {
|
|
70
|
-
type: type,
|
|
71
|
-
disabled: disabled,
|
|
72
|
-
disableRipple: true,
|
|
73
84
|
"aria-disabled": disabled,
|
|
74
85
|
tabIndex: disabled ? -1 : tabIndex,
|
|
86
|
+
backgroundType: backgroundType,
|
|
87
|
+
size: size,
|
|
88
|
+
margin: margin,
|
|
75
89
|
onClick: function onClick() {
|
|
76
90
|
_onClick();
|
|
77
91
|
}
|
|
78
|
-
}, label && /*#__PURE__*/_react["default"].createElement(
|
|
79
|
-
icon: icon,
|
|
80
|
-
iconPosition: iconPosition
|
|
81
|
-
}, label), icon ? /*#__PURE__*/_react["default"].createElement(IconContainer, {
|
|
92
|
+
}, label && iconPosition === "after" && labelComponent, icon && /*#__PURE__*/_react["default"].createElement(IconContainer, {
|
|
82
93
|
label: label,
|
|
83
94
|
iconPosition: iconPosition
|
|
84
|
-
},
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
src: iconSrc
|
|
88
|
-
}))));
|
|
95
|
+
}, typeof icon === "string" ? /*#__PURE__*/_react["default"].createElement(ButtonIcon, {
|
|
96
|
+
src: icon
|
|
97
|
+
}) : icon), label && iconPosition === "before" && labelComponent));
|
|
89
98
|
};
|
|
90
99
|
|
|
91
|
-
var
|
|
92
|
-
small: "42px",
|
|
93
|
-
medium: "120px",
|
|
94
|
-
large: "240px",
|
|
95
|
-
fillParent: "100%",
|
|
96
|
-
fitContent: "unset"
|
|
97
|
-
};
|
|
98
|
-
|
|
99
|
-
var calculateWidth = function calculateWidth(margin, size) {
|
|
100
|
-
if (size === "fillParent") {
|
|
101
|
-
return "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")");
|
|
102
|
-
}
|
|
103
|
-
|
|
104
|
-
return sizes[size];
|
|
105
|
-
};
|
|
106
|
-
|
|
107
|
-
var LabelContainer = _styledComponents["default"].span(_templateObject || (_templateObject = (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 margin-right: ", ";\n margin-left: ", ";\n"])), function (props) {
|
|
108
|
-
return props.theme.labelFontLineHeight;
|
|
109
|
-
}, function (props) {
|
|
110
|
-
return props.theme.fontSize;
|
|
111
|
-
}, function (props) {
|
|
112
|
-
return !props.icon || props.iconPosition === "before" ? "8px" : "0px";
|
|
113
|
-
}, function (props) {
|
|
114
|
-
return !props.icon || props.iconPosition === "after" ? "8px" : "0px";
|
|
115
|
-
});
|
|
116
|
-
|
|
117
|
-
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) {
|
|
118
|
-
return !props.label ? "0px" : props.iconPosition === "after" && props.label !== "" && "8px" || "8px";
|
|
119
|
-
}, function (props) {
|
|
120
|
-
return !props.label ? "0px" : props.iconPosition === "before" && props.label !== "" && "8px" || "8px";
|
|
121
|
-
});
|
|
122
|
-
|
|
123
|
-
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) {
|
|
124
|
-
return props.iconPosition === "after" && props.label !== "" && "10px" || "0px";
|
|
125
|
-
}, function (props) {
|
|
126
|
-
return props.iconPosition === "before" && props.label !== "" && "10px" || "0px";
|
|
127
|
-
});
|
|
128
|
-
|
|
129
|
-
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) {
|
|
100
|
+
var Button = _styledComponents["default"].button(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n display: inline-flex;\n width: ", ";\n height: 40px;\n padding-left: ", ";\n padding-right: ", ";\n padding-top: ", ";\n padding-bottom: ", ";\n align-items: center;\n justify-content: center;\n box-shadow: 0 0 0 2px transparent;\n font-family: ", ";\n font-size: ", ";\n font-weight: ", ";\n letter-spacing: ", ";\n cursor: pointer;\n &:focus {\n outline: none;\n box-shadow: 0 0 0 2px\n ", ";\n }\n ", "\n"])), function (props) {
|
|
130
101
|
return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
|
|
131
102
|
}, function (props) {
|
|
132
103
|
return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.top ? _variables.spaces[props.margin.top] : "";
|
|
@@ -138,8 +109,6 @@ var DxCButton = _styledComponents["default"].div(_templateObject4 || (_templateO
|
|
|
138
109
|
return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
|
|
139
110
|
}, function (props) {
|
|
140
111
|
return calculateWidth(props.margin, props.size);
|
|
141
|
-
}, function (props) {
|
|
142
|
-
return props.disabled && "not-allowed" || "pointer";
|
|
143
112
|
}, function (props) {
|
|
144
113
|
return props.theme.paddingLeft;
|
|
145
114
|
}, function (props) {
|
|
@@ -148,8 +117,6 @@ var DxCButton = _styledComponents["default"].div(_templateObject4 || (_templateO
|
|
|
148
117
|
return props.theme.paddingTop;
|
|
149
118
|
}, function (props) {
|
|
150
119
|
return props.theme.paddingBottom;
|
|
151
|
-
}, function (props) {
|
|
152
|
-
return props.iconPosition === "after" && "row" || "row-reverse";
|
|
153
120
|
}, function (props) {
|
|
154
121
|
return props.theme.fontFamily;
|
|
155
122
|
}, function (props) {
|
|
@@ -158,22 +125,32 @@ var DxCButton = _styledComponents["default"].div(_templateObject4 || (_templateO
|
|
|
158
125
|
return props.theme.fontWeight;
|
|
159
126
|
}, function (props) {
|
|
160
127
|
return props.theme.labelLetterSpacing;
|
|
161
|
-
}, function (props) {
|
|
162
|
-
return props.size === "small" && "calc(100% - 22px)" || "unset";
|
|
163
128
|
}, function (props) {
|
|
164
129
|
return props.backgroundType === "dark" ? props.theme.focusBorderColorOnDark : props.theme.focusBorderColor;
|
|
165
130
|
}, function (props) {
|
|
166
131
|
var mode = props.mode,
|
|
167
|
-
backgroundType = props.backgroundType
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
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 ");
|
|
171
|
-
} else if (mode === "secondary") {
|
|
172
|
-
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 ");
|
|
173
|
-
} else if (mode === "text") {
|
|
174
|
-
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 ");
|
|
175
|
-
}
|
|
132
|
+
backgroundType = props.backgroundType,
|
|
133
|
+
disabled = props.disabled;
|
|
134
|
+
return "\n border-radius: ".concat(props.mode === "primary" ? props.theme.primaryBorderRadius : props.mode === "secondary" ? props.theme.secondaryBorderRadius : props.theme.textBorderRadius, ";\n border-width: ").concat(props.mode === "primary" ? props.theme.primaryBorderThickness : props.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 ");
|
|
176
135
|
});
|
|
177
136
|
|
|
137
|
+
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 margin-right: ", ";\n margin-left: ", ";\n"])), function (props) {
|
|
138
|
+
return props.theme.labelFontLineHeight;
|
|
139
|
+
}, function (props) {
|
|
140
|
+
return props.theme.fontSize;
|
|
141
|
+
}, function (props) {
|
|
142
|
+
return !props.icon || props.iconPosition === "before" ? "8px" : "0px";
|
|
143
|
+
}, function (props) {
|
|
144
|
+
return !props.icon || props.iconPosition === "after" ? "8px" : "0px";
|
|
145
|
+
});
|
|
146
|
+
|
|
147
|
+
var IconContainer = _styledComponents["default"].div(_templateObject3 || (_templateObject3 = (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) {
|
|
148
|
+
return !props.label ? "0px" : props.iconPosition === "after" && props.label !== "" && "8px" || "8px";
|
|
149
|
+
}, function (props) {
|
|
150
|
+
return !props.label ? "0px" : props.iconPosition === "before" && props.label !== "" && "8px" || "8px";
|
|
151
|
+
});
|
|
152
|
+
|
|
153
|
+
var ButtonIcon = _styledComponents["default"].img(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n img,\n svg {\n height: 100%;\n width: 100%;\n }\n"])));
|
|
154
|
+
|
|
178
155
|
var _default = DxcButton;
|
|
179
156
|
exports["default"] = _default;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import DxcButton from "./Button";
|
|
3
|
+
import DxcFlex from "./../flex/Flex";
|
|
3
4
|
import { BackgroundColorProvider } from "../BackgroundColorContext";
|
|
4
5
|
import Title from "../../.storybook/components/Title";
|
|
5
6
|
import ExampleContainer from "../../.storybook/components/ExampleContainer";
|
|
@@ -10,14 +11,12 @@ export default {
|
|
|
10
11
|
component: DxcButton,
|
|
11
12
|
};
|
|
12
13
|
|
|
13
|
-
const iconSVG = (
|
|
14
|
-
|
|
15
|
-
<
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
);
|
|
20
|
-
};
|
|
14
|
+
const iconSVG = (
|
|
15
|
+
<svg viewBox="0 0 24 24" fill="currentColor">
|
|
16
|
+
<path d="M0 0h24v24H0z" fill="none" />
|
|
17
|
+
<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" />
|
|
18
|
+
</svg>
|
|
19
|
+
);
|
|
21
20
|
export const Chromatic = () => (
|
|
22
21
|
<>
|
|
23
22
|
<Title title="Primary" theme="light" level={2} />
|
|
@@ -272,5 +271,13 @@ export const Chromatic = () => (
|
|
|
272
271
|
<Title title="Xxlarge margin" theme="light" level={4} />
|
|
273
272
|
<DxcButton label="Xxlarge margin" margin="xxlarge" />
|
|
274
273
|
</ExampleContainer>
|
|
274
|
+
<Title title="Inside a flex" theme="light" level={2} />
|
|
275
|
+
<ExampleContainer>
|
|
276
|
+
<DxcFlex direction="column" gap="0.75rem">
|
|
277
|
+
<DxcButton label="Button" />
|
|
278
|
+
<DxcButton label="Button" />
|
|
279
|
+
<DxcButton label="Button" />
|
|
280
|
+
</DxcFlex>
|
|
281
|
+
</ExampleContainer>
|
|
275
282
|
</>
|
|
276
283
|
);
|