@dxc-technology/halstack-react 0.0.0-f54247d → 0.0.0-f6290b3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/BackgroundColorContext.d.ts +1 -10
- package/BackgroundColorContext.js +5 -22
- package/HalstackContext.d.ts +1243 -6
- package/HalstackContext.js +121 -105
- package/README.md +47 -0
- package/accordion/Accordion.d.ts +1 -1
- package/accordion/Accordion.js +37 -100
- package/accordion/Accordion.stories.tsx +101 -124
- package/accordion/Accordion.test.js +19 -34
- package/accordion/types.d.ts +5 -17
- package/accordion-group/AccordionGroup.d.ts +4 -3
- package/accordion-group/AccordionGroup.js +29 -77
- package/accordion-group/AccordionGroup.stories.tsx +78 -77
- package/accordion-group/AccordionGroup.test.js +44 -72
- package/accordion-group/AccordionGroupAccordion.d.ts +4 -0
- package/accordion-group/AccordionGroupAccordion.js +31 -0
- package/accordion-group/types.d.ts +6 -18
- package/action-icon/ActionIcon.d.ts +4 -0
- package/action-icon/ActionIcon.js +47 -0
- package/action-icon/ActionIcon.stories.tsx +41 -0
- package/action-icon/ActionIcon.test.js +64 -0
- package/action-icon/types.d.ts +26 -0
- package/alert/Alert.js +19 -58
- package/alert/Alert.stories.tsx +28 -0
- package/alert/Alert.test.js +29 -46
- package/alert/types.d.ts +5 -5
- package/badge/Badge.d.ts +1 -1
- package/badge/Badge.js +141 -43
- package/badge/Badge.stories.tsx +210 -0
- package/badge/Badge.test.js +30 -0
- package/badge/types.d.ts +52 -3
- package/bleed/Bleed.js +13 -21
- package/bleed/Bleed.stories.tsx +1 -0
- package/bleed/types.d.ts +2 -2
- package/box/Box.d.ts +1 -1
- package/box/Box.js +18 -59
- package/box/Box.stories.tsx +38 -51
- package/box/Box.test.js +2 -7
- package/box/types.d.ts +3 -15
- package/bulleted-list/BulletedList.js +19 -53
- package/bulleted-list/BulletedList.stories.tsx +8 -93
- package/bulleted-list/types.d.ts +32 -5
- package/button/Button.d.ts +1 -1
- package/button/Button.js +69 -105
- package/button/Button.stories.tsx +152 -91
- package/button/Button.test.js +20 -17
- package/button/types.d.ts +8 -4
- package/card/Card.d.ts +1 -1
- package/card/Card.js +48 -89
- package/card/Card.stories.tsx +12 -42
- package/card/Card.test.js +11 -22
- package/card/types.d.ts +6 -12
- package/checkbox/Checkbox.js +87 -122
- package/checkbox/Checkbox.stories.tsx +68 -54
- package/checkbox/Checkbox.test.js +108 -64
- package/checkbox/types.d.ts +8 -4
- package/chip/Chip.js +39 -79
- package/chip/Chip.stories.tsx +121 -26
- package/chip/Chip.test.js +16 -31
- package/chip/types.d.ts +4 -4
- package/common/OpenSans.css +68 -80
- package/common/coreTokens.d.ts +237 -0
- package/common/coreTokens.js +184 -0
- package/common/utils.d.ts +1 -0
- package/common/utils.js +6 -12
- package/common/variables.d.ts +1395 -0
- package/common/variables.js +910 -1155
- package/container/Container.d.ts +4 -0
- package/container/Container.js +194 -0
- package/container/Container.stories.tsx +214 -0
- package/container/types.d.ts +74 -0
- package/contextual-menu/ContextualMenu.d.ts +7 -0
- package/contextual-menu/ContextualMenu.js +71 -0
- package/contextual-menu/ContextualMenu.stories.tsx +182 -0
- package/contextual-menu/ContextualMenu.test.js +71 -0
- package/contextual-menu/MenuItemAction.d.ts +4 -0
- package/contextual-menu/MenuItemAction.js +46 -0
- package/contextual-menu/types.d.ts +22 -0
- package/date-input/Calendar.d.ts +1 -1
- package/date-input/Calendar.js +52 -96
- package/date-input/DateInput.js +103 -107
- package/date-input/DateInput.stories.tsx +194 -60
- package/date-input/DateInput.test.js +676 -620
- package/date-input/DatePicker.js +47 -92
- package/date-input/Icons.d.ts +6 -0
- package/date-input/Icons.js +58 -0
- package/date-input/YearPicker.d.ts +1 -1
- package/date-input/YearPicker.js +29 -44
- package/date-input/types.d.ts +32 -28
- package/dialog/Dialog.d.ts +1 -1
- package/dialog/Dialog.js +61 -119
- package/dialog/Dialog.stories.tsx +310 -212
- package/dialog/Dialog.test.js +269 -32
- package/dialog/types.d.ts +18 -26
- package/divider/Divider.d.ts +4 -0
- package/divider/Divider.js +36 -0
- package/divider/Divider.stories.tsx +223 -0
- package/divider/Divider.test.js +38 -0
- package/divider/types.d.ts +19 -0
- package/divider/types.js +5 -0
- package/dropdown/Dropdown.js +53 -108
- package/dropdown/Dropdown.stories.tsx +210 -84
- package/dropdown/Dropdown.test.js +393 -379
- package/dropdown/DropdownMenu.js +20 -37
- package/dropdown/DropdownMenuItem.js +9 -34
- package/dropdown/types.d.ts +18 -20
- package/file-input/FileInput.js +184 -256
- package/file-input/FileInput.stories.tsx +86 -3
- package/file-input/FileInput.test.js +356 -395
- package/file-input/FileItem.js +15 -41
- package/file-input/types.d.ts +10 -10
- package/flex/Flex.js +27 -39
- package/flex/Flex.stories.tsx +35 -26
- package/flex/types.d.ts +74 -9
- package/footer/Footer.d.ts +1 -1
- package/footer/Footer.js +70 -117
- package/footer/Footer.stories.tsx +55 -21
- package/footer/Footer.test.js +33 -57
- package/footer/Icons.d.ts +3 -2
- package/footer/Icons.js +66 -7
- package/footer/types.d.ts +25 -27
- 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 +48 -133
- package/header/Header.stories.tsx +115 -36
- package/header/Header.test.js +13 -26
- package/header/Icons.d.ts +2 -2
- package/header/Icons.js +2 -7
- package/header/types.d.ts +7 -22
- package/heading/Heading.js +10 -32
- package/heading/Heading.test.js +71 -88
- package/heading/types.d.ts +7 -7
- package/image/Image.d.ts +4 -0
- package/image/Image.js +70 -0
- package/image/Image.stories.tsx +129 -0
- package/image/types.d.ts +72 -0
- package/image/types.js +5 -0
- package/inset/Inset.js +13 -21
- package/inset/Inset.stories.tsx +2 -1
- package/inset/types.d.ts +2 -2
- package/layout/ApplicationLayout.d.ts +5 -5
- package/layout/ApplicationLayout.js +29 -66
- package/layout/ApplicationLayout.stories.tsx +1 -1
- package/layout/Icons.d.ts +8 -5
- package/layout/Icons.js +51 -59
- package/layout/SidenavContext.d.ts +1 -1
- package/layout/SidenavContext.js +3 -9
- package/layout/types.d.ts +5 -6
- package/link/Link.js +24 -45
- package/link/Link.stories.tsx +60 -0
- package/link/Link.test.js +24 -44
- package/link/types.d.ts +14 -14
- package/main.d.ts +9 -5
- package/main.js +40 -59
- package/{tabs-nav → nav-tabs}/NavTabs.d.ts +2 -2
- package/{tabs-nav → nav-tabs}/NavTabs.js +23 -55
- package/{tabs-nav → nav-tabs}/NavTabs.stories.tsx +115 -9
- package/{tabs-nav → nav-tabs}/NavTabs.test.js +39 -45
- package/nav-tabs/Tab.js +118 -0
- package/{tabs-nav → nav-tabs}/types.d.ts +14 -15
- package/nav-tabs/types.js +5 -0
- package/number-input/NumberInput.d.ts +7 -0
- package/number-input/NumberInput.js +47 -37
- package/number-input/NumberInput.stories.tsx +42 -26
- package/number-input/NumberInput.test.js +860 -413
- package/number-input/types.d.ts +11 -5
- package/package.json +31 -29
- package/paginator/Icons.d.ts +5 -0
- package/paginator/Icons.js +21 -47
- package/paginator/Paginator.js +22 -58
- package/paginator/Paginator.stories.tsx +24 -0
- package/paginator/Paginator.test.js +252 -225
- package/paginator/types.d.ts +3 -3
- package/paragraph/Paragraph.d.ts +3 -4
- package/paragraph/Paragraph.js +6 -22
- package/paragraph/Paragraph.stories.tsx +0 -17
- package/password-input/Icons.d.ts +6 -0
- package/password-input/Icons.js +35 -0
- package/password-input/PasswordInput.js +57 -126
- package/password-input/PasswordInput.stories.tsx +1 -33
- package/password-input/PasswordInput.test.js +158 -141
- package/password-input/types.d.ts +8 -7
- package/progress-bar/ProgressBar.d.ts +2 -2
- package/progress-bar/ProgressBar.js +23 -55
- package/progress-bar/{ProgressBar.stories.jsx → ProgressBar.stories.tsx} +36 -3
- package/progress-bar/ProgressBar.test.js +36 -53
- package/progress-bar/types.d.ts +4 -3
- package/quick-nav/QuickNav.js +4 -27
- package/quick-nav/QuickNav.stories.tsx +15 -1
- package/quick-nav/types.d.ts +10 -10
- package/radio-group/Radio.d.ts +1 -1
- package/radio-group/Radio.js +31 -63
- package/radio-group/RadioGroup.js +45 -93
- package/radio-group/RadioGroup.stories.tsx +131 -18
- package/radio-group/RadioGroup.test.js +505 -471
- package/radio-group/types.d.ts +8 -8
- package/resultset-table/Icons.d.ts +7 -0
- package/{resultsetTable → resultset-table}/Icons.js +1 -5
- package/resultset-table/ResultsetTable.d.ts +7 -0
- package/{resultsetTable → resultset-table}/ResultsetTable.js +37 -66
- package/{resultsetTable → resultset-table}/ResultsetTable.stories.tsx +102 -5
- package/{resultsetTable → resultset-table}/ResultsetTable.test.js +155 -114
- package/{resultsetTable → resultset-table}/types.d.ts +13 -7
- package/resultset-table/types.js +5 -0
- package/select/Icons.d.ts +7 -7
- package/select/Icons.js +1 -5
- package/select/Listbox.d.ts +1 -1
- package/select/Listbox.js +17 -72
- package/select/Option.js +27 -50
- package/select/Select.js +120 -175
- package/select/Select.stories.tsx +495 -148
- package/select/Select.test.js +1974 -1837
- package/select/types.d.ts +16 -17
- package/sidenav/Icons.d.ts +7 -0
- package/sidenav/Icons.js +47 -0
- package/sidenav/Sidenav.d.ts +2 -2
- package/sidenav/Sidenav.js +82 -153
- package/sidenav/Sidenav.stories.tsx +165 -63
- package/sidenav/Sidenav.test.js +3 -10
- package/sidenav/types.d.ts +31 -28
- package/slider/Slider.js +73 -131
- package/slider/Slider.test.js +108 -104
- package/slider/types.d.ts +4 -4
- package/spinner/Spinner.js +31 -75
- package/spinner/{Spinner.stories.jsx → Spinner.stories.tsx} +53 -27
- package/spinner/Spinner.test.js +26 -35
- package/spinner/types.d.ts +3 -3
- package/status-light/StatusLight.d.ts +4 -0
- package/status-light/StatusLight.js +51 -0
- package/status-light/StatusLight.stories.tsx +74 -0
- package/status-light/StatusLight.test.js +25 -0
- package/status-light/types.d.ts +17 -0
- package/status-light/types.js +5 -0
- package/switch/Switch.js +52 -100
- package/switch/Switch.stories.tsx +33 -34
- package/switch/Switch.test.js +52 -97
- package/switch/types.d.ts +4 -4
- package/table/DropdownTheme.js +62 -0
- package/table/Table.d.ts +6 -2
- package/table/Table.js +87 -35
- package/table/Table.stories.tsx +658 -0
- package/table/Table.test.js +94 -7
- package/table/types.d.ts +48 -6
- package/tabs/Tab.js +26 -45
- package/tabs/Tabs.js +62 -145
- package/tabs/Tabs.stories.tsx +46 -6
- package/tabs/Tabs.test.js +66 -123
- package/tabs/types.d.ts +19 -19
- package/tag/Tag.js +28 -60
- package/tag/Tag.stories.tsx +14 -1
- package/tag/Tag.test.js +20 -31
- package/tag/types.d.ts +7 -7
- package/text-input/Icons.d.ts +5 -5
- package/text-input/Icons.js +1 -5
- package/text-input/Suggestion.js +35 -25
- package/text-input/Suggestions.d.ts +1 -1
- package/text-input/Suggestions.js +15 -65
- package/text-input/TextInput.js +220 -332
- package/text-input/TextInput.stories.tsx +139 -155
- package/text-input/TextInput.test.js +1289 -1157
- package/text-input/types.d.ts +25 -17
- package/textarea/Textarea.js +70 -113
- package/textarea/Textarea.stories.tsx +174 -0
- package/textarea/Textarea.test.js +152 -183
- package/textarea/types.d.ts +9 -5
- package/toggle-group/ToggleGroup.d.ts +2 -2
- package/toggle-group/ToggleGroup.js +92 -106
- package/toggle-group/ToggleGroup.stories.tsx +49 -4
- package/toggle-group/ToggleGroup.test.js +69 -88
- package/toggle-group/types.d.ts +26 -17
- package/typography/Typography.d.ts +2 -2
- package/typography/Typography.js +15 -123
- package/typography/Typography.stories.tsx +1 -1
- package/typography/types.d.ts +1 -1
- package/useTheme.d.ts +1147 -1
- package/useTheme.js +2 -9
- package/useTranslatedLabels.d.ts +84 -1
- package/useTranslatedLabels.js +1 -7
- package/utils/BaseTypography.d.ts +21 -0
- package/utils/BaseTypography.js +94 -0
- package/utils/FocusLock.d.ts +13 -0
- package/utils/FocusLock.js +124 -0
- package/wizard/Wizard.js +16 -51
- package/wizard/Wizard.stories.tsx +20 -0
- package/wizard/Wizard.test.js +54 -81
- package/wizard/types.d.ts +9 -10
- package/card/ice-cream.jpg +0 -0
- package/number-input/NumberInputContext.d.ts +0 -4
- package/number-input/NumberInputContext.js +0 -19
- package/number-input/numberInputContextTypes.d.ts +0 -19
- package/resultsetTable/Icons.d.ts +0 -7
- package/resultsetTable/ResultsetTable.d.ts +0 -4
- package/slider/Slider.stories.tsx +0 -183
- package/table/Table.stories.jsx +0 -277
- package/tabs-nav/Tab.js +0 -130
- package/textarea/Textarea.stories.jsx +0 -157
- /package/{resultsetTable → action-icon}/types.js +0 -0
- /package/{tabs-nav → container}/types.js +0 -0
- /package/{number-input/numberInputContextTypes.js → contextual-menu/types.js} +0 -0
- /package/{tabs-nav → nav-tabs}/Tab.d.ts +0 -0
package/radio-group/types.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export
|
|
1
|
+
export type Option = {
|
|
2
2
|
/**
|
|
3
3
|
* Label of the option placed next to the radio input.
|
|
4
4
|
*/
|
|
@@ -14,11 +14,11 @@ export declare type Option = {
|
|
|
14
14
|
*/
|
|
15
15
|
disabled?: boolean;
|
|
16
16
|
};
|
|
17
|
-
|
|
17
|
+
type RadioGroupProps = {
|
|
18
18
|
/**
|
|
19
19
|
* Text to be placed above the radio group.
|
|
20
20
|
*/
|
|
21
|
-
label
|
|
21
|
+
label?: string;
|
|
22
22
|
/**
|
|
23
23
|
* Name attribute of the input element. This attribute will allow users
|
|
24
24
|
* to find the component's value during the submit event.
|
|
@@ -49,9 +49,9 @@ declare type RadioGroupProps = {
|
|
|
49
49
|
*/
|
|
50
50
|
optionalItemLabel?: string;
|
|
51
51
|
/**
|
|
52
|
-
* If true, the component will be
|
|
52
|
+
* If true, the component will not be mutable, meaning the user can not edit the control.
|
|
53
53
|
*/
|
|
54
|
-
|
|
54
|
+
readOnly?: boolean;
|
|
55
55
|
/**
|
|
56
56
|
* Sets the orientation of the options within the radio group.
|
|
57
57
|
*/
|
|
@@ -97,18 +97,18 @@ declare type RadioGroupProps = {
|
|
|
97
97
|
/**
|
|
98
98
|
* Reference to the component.
|
|
99
99
|
*/
|
|
100
|
-
export
|
|
100
|
+
export type RefType = HTMLDivElement;
|
|
101
101
|
/**
|
|
102
102
|
* Single radio prop types.
|
|
103
103
|
*/
|
|
104
|
-
export
|
|
104
|
+
export type RadioProps = {
|
|
105
105
|
label: string;
|
|
106
106
|
checked: boolean;
|
|
107
107
|
onClick: () => void;
|
|
108
108
|
error?: string;
|
|
109
109
|
disabled: boolean;
|
|
110
110
|
focused: boolean;
|
|
111
|
-
|
|
111
|
+
readOnly: boolean;
|
|
112
112
|
tabIndex: number;
|
|
113
113
|
};
|
|
114
114
|
export default RadioGroupProps;
|
|
@@ -1,14 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
7
6
|
});
|
|
8
7
|
exports["default"] = void 0;
|
|
9
|
-
|
|
10
8
|
var _react = _interopRequireDefault(require("react"));
|
|
11
|
-
|
|
12
9
|
var icons = {
|
|
13
10
|
arrowUp: /*#__PURE__*/_react["default"].createElement("svg", {
|
|
14
11
|
xmlns: "http://www.w3.org/2000/svg",
|
|
@@ -47,5 +44,4 @@ var icons = {
|
|
|
47
44
|
d: "M12 5.83L15.17 9l1.41-1.41L12 3 7.41 7.59 8.83 9 12 5.83zm0 12.34L8.83 15l-1.41 1.41L12 21l4.59-4.59L15.17 15 12 18.17z"
|
|
48
45
|
}))
|
|
49
46
|
};
|
|
50
|
-
var _default = icons;
|
|
51
|
-
exports["default"] = _default;
|
|
47
|
+
var _default = exports["default"] = icons;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import ResultsetTablePropsType from "./types";
|
|
3
|
+
declare const DxcResultsetTable: {
|
|
4
|
+
({ columns, rows, showGoToPage, itemsPerPage, itemsPerPageOptions, itemsPerPageFunction, margin, tabIndex, mode, }: ResultsetTablePropsType): JSX.Element;
|
|
5
|
+
ActionsCell: ({ actions }: import("../table/types").ActionCellsPropsType) => JSX.Element;
|
|
6
|
+
};
|
|
7
|
+
export default DxcResultsetTable;
|
|
@@ -1,52 +1,34 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
var _typeof3 = require("@babel/runtime/helpers/typeof");
|
|
6
|
-
|
|
7
5
|
Object.defineProperty(exports, "__esModule", {
|
|
8
6
|
value: true
|
|
9
7
|
});
|
|
10
8
|
exports["default"] = void 0;
|
|
11
|
-
|
|
12
9
|
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
13
|
-
|
|
14
10
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
15
|
-
|
|
16
11
|
var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
|
|
17
|
-
|
|
18
12
|
var _react = _interopRequireWildcard(require("react"));
|
|
19
|
-
|
|
20
13
|
var _styledComponents = _interopRequireWildcard(require("styled-components"));
|
|
21
|
-
|
|
22
|
-
var _variables = require("../common/variables.js");
|
|
23
|
-
|
|
24
|
-
var _Table = _interopRequireDefault(require("../table/Table"));
|
|
25
|
-
|
|
14
|
+
var _variables = require("../common/variables");
|
|
26
15
|
var _Paginator = _interopRequireDefault(require("../paginator/Paginator"));
|
|
27
|
-
|
|
16
|
+
var _Table = _interopRequireWildcard(require("../table/Table"));
|
|
28
17
|
var _useTheme = _interopRequireDefault(require("../useTheme"));
|
|
29
|
-
|
|
30
18
|
var _Icons = _interopRequireDefault(require("./Icons"));
|
|
31
|
-
|
|
32
|
-
var
|
|
33
|
-
|
|
19
|
+
var _utils = require("../common/utils");
|
|
20
|
+
var _coreTokens = _interopRequireDefault(require("../common/coreTokens"));
|
|
34
21
|
var _templateObject, _templateObject2, _templateObject3;
|
|
35
|
-
|
|
36
|
-
function
|
|
37
|
-
|
|
38
|
-
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; }
|
|
39
|
-
|
|
22
|
+
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); }
|
|
23
|
+
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; }
|
|
40
24
|
var normalizeSortValue = function normalizeSortValue(sortValue) {
|
|
41
25
|
return typeof sortValue === "string" ? sortValue.toUpperCase() : sortValue;
|
|
42
26
|
};
|
|
43
|
-
|
|
44
27
|
var sortArray = function sortArray(index, order, resultset) {
|
|
45
28
|
return resultset.slice().sort(function (element1, element2) {
|
|
46
29
|
var sortValueA = normalizeSortValue(element1[index].sortValue || element1[index].displayValue);
|
|
47
30
|
var sortValueB = normalizeSortValue(element2[index].sortValue || element2[index].displayValue);
|
|
48
31
|
var comparison = 0;
|
|
49
|
-
|
|
50
32
|
if ((0, _typeof2["default"])(sortValueA) === "object") {
|
|
51
33
|
comparison = -1;
|
|
52
34
|
} else if ((0, _typeof2["default"])(sortValueB) === "object") {
|
|
@@ -56,48 +38,42 @@ var sortArray = function sortArray(index, order, resultset) {
|
|
|
56
38
|
} else if (sortValueA < sortValueB) {
|
|
57
39
|
comparison = -1;
|
|
58
40
|
}
|
|
59
|
-
|
|
60
41
|
return order === "descending" ? comparison * -1 : comparison;
|
|
61
42
|
});
|
|
62
43
|
};
|
|
63
|
-
|
|
64
44
|
var getMinItemsPerPageIndex = function getMinItemsPerPageIndex(currentPageInternal, itemsPerPage, page) {
|
|
65
45
|
return currentPageInternal === 1 ? 0 : itemsPerPage * (page - 1);
|
|
66
46
|
};
|
|
67
|
-
|
|
68
47
|
var getMaxItemsPerPageIndex = function getMaxItemsPerPageIndex(minItemsPerPageIndex, itemsPerPage, resultset, page) {
|
|
69
48
|
return minItemsPerPageIndex + itemsPerPage > resultset.length ? resultset.length : itemsPerPage * page - 1;
|
|
70
49
|
};
|
|
71
|
-
|
|
72
50
|
var DxcResultsetTable = function DxcResultsetTable(_ref) {
|
|
73
51
|
var columns = _ref.columns,
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
52
|
+
rows = _ref.rows,
|
|
53
|
+
_ref$showGoToPage = _ref.showGoToPage,
|
|
54
|
+
showGoToPage = _ref$showGoToPage === void 0 ? true : _ref$showGoToPage,
|
|
55
|
+
_ref$itemsPerPage = _ref.itemsPerPage,
|
|
56
|
+
itemsPerPage = _ref$itemsPerPage === void 0 ? 5 : _ref$itemsPerPage,
|
|
57
|
+
itemsPerPageOptions = _ref.itemsPerPageOptions,
|
|
58
|
+
itemsPerPageFunction = _ref.itemsPerPageFunction,
|
|
59
|
+
margin = _ref.margin,
|
|
60
|
+
_ref$tabIndex = _ref.tabIndex,
|
|
61
|
+
tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex,
|
|
62
|
+
_ref$mode = _ref.mode,
|
|
63
|
+
mode = _ref$mode === void 0 ? "default" : _ref$mode;
|
|
84
64
|
var colorsTheme = (0, _useTheme["default"])();
|
|
85
|
-
|
|
86
65
|
var _useState = (0, _react.useState)(1),
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
66
|
+
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
|
67
|
+
page = _useState2[0],
|
|
68
|
+
changePage = _useState2[1];
|
|
91
69
|
var _useState3 = (0, _react.useState)(-1),
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
70
|
+
_useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
|
|
71
|
+
sortColumnIndex = _useState4[0],
|
|
72
|
+
changeSortColumnIndex = _useState4[1];
|
|
96
73
|
var _useState5 = (0, _react.useState)("ascending"),
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
74
|
+
_useState6 = (0, _slicedToArray2["default"])(_useState5, 2),
|
|
75
|
+
sortOrder = _useState6[0],
|
|
76
|
+
changeSortOrder = _useState6[1];
|
|
101
77
|
var minItemsPerPageIndex = (0, _react.useMemo)(function () {
|
|
102
78
|
return getMinItemsPerPageIndex(page, itemsPerPage, page);
|
|
103
79
|
}, [itemsPerPage, page]);
|
|
@@ -110,17 +86,14 @@ var DxcResultsetTable = function DxcResultsetTable(_ref) {
|
|
|
110
86
|
var filteredResultset = (0, _react.useMemo)(function () {
|
|
111
87
|
return sortedResultset && sortedResultset.slice(minItemsPerPageIndex, maxItemsPerPageIndex + 1);
|
|
112
88
|
}, [sortedResultset, minItemsPerPageIndex, maxItemsPerPageIndex]);
|
|
113
|
-
|
|
114
89
|
var goToPage = function goToPage(newPage) {
|
|
115
90
|
changePage(newPage);
|
|
116
91
|
};
|
|
117
|
-
|
|
118
92
|
var changeSorting = function changeSorting(columnIndex) {
|
|
119
93
|
changePage(1);
|
|
120
94
|
changeSortColumnIndex(columnIndex);
|
|
121
95
|
changeSortOrder(sortColumnIndex === -1 || sortColumnIndex !== columnIndex ? "ascending" : sortOrder === "ascending" ? "descending" : "ascending");
|
|
122
96
|
};
|
|
123
|
-
|
|
124
97
|
(0, _react.useEffect)(function () {
|
|
125
98
|
rows.length > 0 ? changePage(1) : changePage(0);
|
|
126
99
|
}, [rows]);
|
|
@@ -128,7 +101,9 @@ var DxcResultsetTable = function DxcResultsetTable(_ref) {
|
|
|
128
101
|
theme: colorsTheme.table
|
|
129
102
|
}, /*#__PURE__*/_react["default"].createElement(DxcResultsetTableContainer, {
|
|
130
103
|
margin: margin
|
|
131
|
-
}, /*#__PURE__*/_react["default"].createElement(_Table["default"],
|
|
104
|
+
}, /*#__PURE__*/_react["default"].createElement(_Table["default"], {
|
|
105
|
+
mode: mode
|
|
106
|
+
}, /*#__PURE__*/_react["default"].createElement("thead", null, /*#__PURE__*/_react["default"].createElement("tr", null, columns.map(function (column, index) {
|
|
132
107
|
return /*#__PURE__*/_react["default"].createElement("th", {
|
|
133
108
|
key: "tableHeader_".concat(index),
|
|
134
109
|
"aria-sort": column.isSortable ? sortColumnIndex === index ? sortOrder : "none" : undefined
|
|
@@ -139,11 +114,12 @@ var DxcResultsetTable = function DxcResultsetTable(_ref) {
|
|
|
139
114
|
column.isSortable && changeSorting(index);
|
|
140
115
|
},
|
|
141
116
|
tabIndex: column.isSortable ? tabIndex : -1,
|
|
142
|
-
isSortable: column.isSortable
|
|
117
|
+
isSortable: column.isSortable,
|
|
118
|
+
mode: mode
|
|
143
119
|
}, /*#__PURE__*/_react["default"].createElement("span", null, column.displayValue), column.isSortable && /*#__PURE__*/_react["default"].createElement(SortIcon, null, sortColumnIndex === index ? sortOrder === "ascending" ? _Icons["default"].arrowUp : _Icons["default"].arrowDown : _Icons["default"].bothArrows)));
|
|
144
120
|
}))), /*#__PURE__*/_react["default"].createElement("tbody", null, filteredResultset.map(function (cells, index) {
|
|
145
121
|
return /*#__PURE__*/_react["default"].createElement("tr", {
|
|
146
|
-
key: "resultSetTableCell_".concat(index)
|
|
122
|
+
key: "resultSetTableCell_".concat(page, "_").concat(index)
|
|
147
123
|
}, cells.map(function (cellContent, index) {
|
|
148
124
|
return /*#__PURE__*/_react["default"].createElement("td", {
|
|
149
125
|
key: "resultSetTableCellContent_".concat(index)
|
|
@@ -160,11 +136,9 @@ var DxcResultsetTable = function DxcResultsetTable(_ref) {
|
|
|
160
136
|
tabIndex: tabIndex
|
|
161
137
|
})));
|
|
162
138
|
};
|
|
163
|
-
|
|
164
139
|
var calculateWidth = function calculateWidth(margin) {
|
|
165
140
|
return "calc(100% - ".concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")");
|
|
166
141
|
};
|
|
167
|
-
|
|
168
142
|
var DxcResultsetTableContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n width: ", ";\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n"])), function (props) {
|
|
169
143
|
return calculateWidth(props.margin);
|
|
170
144
|
}, function (props) {
|
|
@@ -178,18 +152,15 @@ var DxcResultsetTableContainer = _styledComponents["default"].div(_templateObjec
|
|
|
178
152
|
}, function (props) {
|
|
179
153
|
return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
|
|
180
154
|
});
|
|
181
|
-
|
|
182
|
-
var HeaderContainer = _styledComponents["default"].span(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-items: center;\n justify-content: ", ";\n gap: 8px;\n width: fit-content;\n border: 1px solid transparent;\n border-radius: 2px;\n padding: 3px;\n cursor: ", ";\n\n ", "\n"])), function (props) {
|
|
155
|
+
var HeaderContainer = _styledComponents["default"].span(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-items: center;\n justify-content: ", ";\n gap: ", ";\n width: fit-content;\n border: 1px solid transparent;\n border-radius: 2px;\n cursor: ", ";\n\n ", "\n"])), function (props) {
|
|
183
156
|
return props.theme.headerTextAlign === "center" ? "center" : props.theme.headerTextAlign === "right" ? "flex-end" : "flex-start";
|
|
184
|
-
}, function (props) {
|
|
157
|
+
}, _coreTokens["default"].spacing_8, function (props) {
|
|
185
158
|
return props.isSortable ? "pointer" : "default";
|
|
186
159
|
}, function (props) {
|
|
187
160
|
return props.isSortable && "&:focus {\n outline: #0095ff solid 2px;\n }";
|
|
188
161
|
});
|
|
189
|
-
|
|
190
162
|
var SortIcon = _styledComponents["default"].span(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n height: 14px;\n width: 14px;\n color: ", ";\n\n svg {\n height: 100%;\n width: 100%;\n }\n"])), function (props) {
|
|
191
163
|
return props.theme.sortIconColor;
|
|
192
164
|
});
|
|
193
|
-
|
|
194
|
-
var _default = DxcResultsetTable;
|
|
195
|
-
exports["default"] = _default;
|
|
165
|
+
DxcResultsetTable.ActionsCell = _Table.DxcActionsCell;
|
|
166
|
+
var _default = exports["default"] = DxcResultsetTable;
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import DxcResultsetTable from "./ResultsetTable";
|
|
3
|
-
import DxcButton from "../button/Button";
|
|
4
3
|
import Title from "../../.storybook/components/Title";
|
|
5
4
|
import ExampleContainer from "../../.storybook/components/ExampleContainer";
|
|
6
5
|
import { userEvent, within } from "@storybook/testing-library";
|
|
7
6
|
import styled from "styled-components";
|
|
7
|
+
import { HalstackProvider } from "../HalstackContext";
|
|
8
8
|
|
|
9
9
|
export default {
|
|
10
10
|
title: "Resultset Table",
|
|
@@ -13,7 +13,7 @@ export default {
|
|
|
13
13
|
|
|
14
14
|
const deleteIcon = (
|
|
15
15
|
<svg xmlns="http://www.w3.org/2000/svg" height="24" viewBox="0 0 24 24" width="24">
|
|
16
|
-
<path d="M6 19c0 1.1.9 2 2 2h8c1.1 0 2-.9 2-2V7H6v12zM19 4h-3.5l-1-1h-5l-1 1H5v2h14V4z" />
|
|
16
|
+
<path fill="currentColor" d="M6 19c0 1.1.9 2 2 2h8c1.1 0 2-.9 2-2V7H6v12zM19 4h-3.5l-1-1h-5l-1 1H5v2h14V4z" />
|
|
17
17
|
<path d="M0 0h24v24H0z" fill="none" />
|
|
18
18
|
</svg>
|
|
19
19
|
);
|
|
@@ -29,17 +29,77 @@ const rows = [
|
|
|
29
29
|
[{ displayValue: "006" }, { displayValue: "Cris" }, { displayValue: "Paris" }],
|
|
30
30
|
];
|
|
31
31
|
|
|
32
|
+
const advancedTheme = {
|
|
33
|
+
table: {
|
|
34
|
+
actionIconColor: "#1B75BB",
|
|
35
|
+
hoverActionIconColor: "#1B75BB",
|
|
36
|
+
activeActionIconColor: "#1B75BB",
|
|
37
|
+
focusActionIconColor: "#1B75BB",
|
|
38
|
+
disabledActionIconColor: "#666666",
|
|
39
|
+
hoverButtonBackgroundColor: "#cccccc",
|
|
40
|
+
},
|
|
41
|
+
};
|
|
42
|
+
|
|
43
|
+
const actions = [
|
|
44
|
+
{
|
|
45
|
+
title: "icon",
|
|
46
|
+
onClick: (value?) => {
|
|
47
|
+
console.log(value);
|
|
48
|
+
},
|
|
49
|
+
options: [
|
|
50
|
+
{
|
|
51
|
+
value: "1",
|
|
52
|
+
label: "Amazon with a very long text",
|
|
53
|
+
},
|
|
54
|
+
{
|
|
55
|
+
value: "2",
|
|
56
|
+
label: "Ebay",
|
|
57
|
+
},
|
|
58
|
+
{
|
|
59
|
+
value: "3",
|
|
60
|
+
label: "Apple",
|
|
61
|
+
},
|
|
62
|
+
],
|
|
63
|
+
},
|
|
64
|
+
{
|
|
65
|
+
icon: "https://www.freepnglogos.com/uploads/facebook-logo-design-1.png",
|
|
66
|
+
title: "icon",
|
|
67
|
+
onClick: () => {},
|
|
68
|
+
},
|
|
69
|
+
{
|
|
70
|
+
icon: deleteIcon,
|
|
71
|
+
title: "icon",
|
|
72
|
+
onClick: () => {},
|
|
73
|
+
disabled: true,
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
icon: deleteIcon,
|
|
77
|
+
title: "icon",
|
|
78
|
+
onClick: () => {},
|
|
79
|
+
},
|
|
80
|
+
];
|
|
81
|
+
|
|
32
82
|
const rowsIcon = [
|
|
33
83
|
[
|
|
34
84
|
{ displayValue: "001", sortValue: "001" },
|
|
35
85
|
{ displayValue: "Peter" },
|
|
36
|
-
{
|
|
86
|
+
{
|
|
87
|
+
displayValue: <DxcResultsetTable.ActionsCell actions={actions} />,
|
|
88
|
+
},
|
|
89
|
+
],
|
|
90
|
+
[
|
|
91
|
+
{ displayValue: "002", sortValue: "002" },
|
|
92
|
+
{ displayValue: "Louis" },
|
|
93
|
+
{
|
|
94
|
+
displayValue: <DxcResultsetTable.ActionsCell actions={actions} />,
|
|
95
|
+
},
|
|
37
96
|
],
|
|
38
|
-
[{ displayValue: "002", sortValue: "002" }, { displayValue: "Louis" }, { displayValue: "" }],
|
|
39
97
|
[
|
|
40
98
|
{ displayValue: "003", sortValue: "003" },
|
|
41
99
|
{ displayValue: "Mark" },
|
|
42
|
-
{
|
|
100
|
+
{
|
|
101
|
+
displayValue: <DxcResultsetTable.ActionsCell actions={actions} />,
|
|
102
|
+
},
|
|
43
103
|
],
|
|
44
104
|
];
|
|
45
105
|
|
|
@@ -206,6 +266,25 @@ export const Chromatic = () => (
|
|
|
206
266
|
<DxcResultsetTable columns={columnsSortable} rows={longValues} />
|
|
207
267
|
</SmallContainer>
|
|
208
268
|
</ExampleContainer>
|
|
269
|
+
<ExampleContainer>
|
|
270
|
+
<Title title="Reduced sortable table" theme="light" level={4} />
|
|
271
|
+
<DxcResultsetTable columns={columnsSortable} rows={rowsSortable} mode="reduced" />
|
|
272
|
+
</ExampleContainer>
|
|
273
|
+
{/* PENDING SMALL ICON VERSION */}
|
|
274
|
+
<ExampleContainer>
|
|
275
|
+
<Title title="Reduced with items per page option" theme="light" level={4} />
|
|
276
|
+
<DxcResultsetTable columns={columns} rows={rows} itemsPerPage={2} itemsPerPageOptions={[2, 3]} mode="reduced" />
|
|
277
|
+
</ExampleContainer>
|
|
278
|
+
<ExampleContainer>
|
|
279
|
+
<Title title="Reduced scroll resultset table" theme="light" level={4} />
|
|
280
|
+
<DxcResultsetTable columns={longColumns} rows={longRows} mode="reduced" />
|
|
281
|
+
</ExampleContainer>
|
|
282
|
+
<ExampleContainer>
|
|
283
|
+
<SmallContainer>
|
|
284
|
+
<Title title="Reduced small container and text overflow" theme="light" level={4} />
|
|
285
|
+
<DxcResultsetTable columns={columnsSortable} rows={longValues} mode="reduced" />
|
|
286
|
+
</SmallContainer>
|
|
287
|
+
</ExampleContainer>
|
|
209
288
|
<Title title="Margins" theme="light" level={2} />
|
|
210
289
|
<ExampleContainer>
|
|
211
290
|
<Title title="Xxsmall" theme="light" level={4} />
|
|
@@ -298,3 +377,21 @@ LastPage.play = async ({ canvasElement }) => {
|
|
|
298
377
|
const nextButton = canvas.getAllByRole("button")[3];
|
|
299
378
|
await userEvent.click(nextButton);
|
|
300
379
|
};
|
|
380
|
+
|
|
381
|
+
const ResultsetActionsCellDropdown = () => (
|
|
382
|
+
<ExampleContainer>
|
|
383
|
+
<Title title="Dropdown Action" theme="light" level={4} />
|
|
384
|
+
<DxcResultsetTable columns={columns} rows={rowsIcon} itemsPerPage={2} />
|
|
385
|
+
<Title title="Custom theme actions cell" theme="light" level={4} />
|
|
386
|
+
<HalstackProvider advancedTheme={advancedTheme}>
|
|
387
|
+
<DxcResultsetTable columns={columns} rows={rowsIcon} itemsPerPage={2} />
|
|
388
|
+
</HalstackProvider>
|
|
389
|
+
</ExampleContainer>
|
|
390
|
+
);
|
|
391
|
+
|
|
392
|
+
export const DropdownAction = ResultsetActionsCellDropdown.bind({});
|
|
393
|
+
DropdownAction.play = async ({ canvasElement }) => {
|
|
394
|
+
const canvas = within(canvasElement);
|
|
395
|
+
const dropdown = canvas.getAllByRole("button")[5];
|
|
396
|
+
await userEvent.click(dropdown);
|
|
397
|
+
};
|