@hazelcast/ui 1.3.3-next.3 → 1.3.3-next.31
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/lib/Alert.js +1 -1
- package/lib/Alert.js.map +1 -1
- package/lib/Alert.module.scss +1 -0
- package/lib/AppHeader/AppHeader.d.ts +16 -0
- package/lib/AppHeader/AppHeader.js +17 -0
- package/lib/AppHeader/AppHeader.js.map +1 -0
- package/lib/AppHeader/AppHeader.module.scss +29 -0
- package/lib/AppHeader/AppHeaderLogo/AppHeaderLogo.d.ts +12 -0
- package/lib/AppHeader/AppHeaderLogo/AppHeaderLogo.js +7 -0
- package/lib/AppHeader/AppHeaderLogo/AppHeaderLogo.js.map +1 -0
- package/lib/AppHeader/AppHeaderLogo/AppHeaderLogo.module.scss +29 -0
- package/lib/AppHeader/AppHeaderLogo/index.d.ts +1 -0
- package/lib/AppHeader/AppHeaderLogo/index.js +2 -0
- package/lib/AppHeader/AppHeaderLogo/index.js.map +1 -0
- package/lib/AppHeader/AppHeaderMenu/AppHeaderMenu.d.ts +8 -0
- package/lib/AppHeader/AppHeaderMenu/AppHeaderMenu.js +15 -0
- package/lib/AppHeader/AppHeaderMenu/AppHeaderMenu.js.map +1 -0
- package/lib/AppHeader/AppHeaderMenu/AppHeaderMenu.module.scss +20 -0
- package/lib/AppHeader/AppHeaderMenu/index.d.ts +1 -0
- package/lib/AppHeader/AppHeaderMenu/index.js +2 -0
- package/lib/AppHeader/AppHeaderMenu/index.js.map +1 -0
- package/lib/AppHeader/EnvironmentBadge/EnvironmentBadge.d.ts +5 -0
- package/lib/AppHeader/EnvironmentBadge/EnvironmentBadge.js +10 -0
- package/lib/AppHeader/EnvironmentBadge/EnvironmentBadge.js.map +1 -0
- package/lib/AppHeader/EnvironmentBadge/EnvironmentBadge.module.scss +13 -0
- package/lib/AppHeader/EnvironmentBadge/index.d.ts +1 -0
- package/lib/AppHeader/EnvironmentBadge/index.js +2 -0
- package/lib/AppHeader/EnvironmentBadge/index.js.map +1 -0
- package/lib/AppHeader/SelectCluster/SelectCluster.d.ts +9 -0
- package/lib/AppHeader/SelectCluster/SelectCluster.js +37 -0
- package/lib/AppHeader/SelectCluster/SelectCluster.js.map +1 -0
- package/lib/AppHeader/SelectCluster/SelectCluster.module.scss +101 -0
- package/lib/AppHeader/SelectCluster/index.d.ts +1 -0
- package/lib/AppHeader/SelectCluster/index.js +2 -0
- package/lib/AppHeader/SelectCluster/index.js.map +1 -0
- package/lib/AppHeader/index.d.ts +1 -0
- package/lib/AppHeader/index.js +2 -0
- package/lib/AppHeader/index.js.map +1 -0
- package/lib/AppSidebar/AppSidebar.d.ts +12 -0
- package/lib/AppSidebar/AppSidebar.js +31 -0
- package/lib/AppSidebar/AppSidebar.js.map +1 -0
- package/lib/AppSidebar/AppSidebar.module.scss +66 -0
- package/lib/AppSidebar/AppSidebarFavoriteButton/AppSidebarFavoriteButton.d.ts +6 -0
- package/lib/AppSidebar/AppSidebarFavoriteButton/AppSidebarFavoriteButton.js +22 -0
- package/lib/AppSidebar/AppSidebarFavoriteButton/AppSidebarFavoriteButton.js.map +1 -0
- package/lib/AppSidebar/AppSidebarFavoriteButton/AppSidebarFavoriteButton.module.scss +16 -0
- package/lib/AppSidebar/AppSidebarFavoriteButton/index.d.ts +1 -0
- package/lib/AppSidebar/AppSidebarFavoriteButton/index.js +2 -0
- package/lib/AppSidebar/AppSidebarFavoriteButton/index.js.map +1 -0
- package/lib/AppSidebar/AppSidebarFavorites/AppSidebarFavorites.d.ts +7 -0
- package/lib/AppSidebar/AppSidebarFavorites/AppSidebarFavorites.js +11 -0
- package/lib/AppSidebar/AppSidebarFavorites/AppSidebarFavorites.js.map +1 -0
- package/lib/AppSidebar/AppSidebarFavorites/AppSidebarFavorites.module.scss +13 -0
- package/lib/AppSidebar/AppSidebarFavorites/index.d.ts +1 -0
- package/lib/AppSidebar/AppSidebarFavorites/index.js +2 -0
- package/lib/AppSidebar/AppSidebarFavorites/index.js.map +1 -0
- package/lib/AppSidebar/AppSidebarItem/AppSidebarItem.d.ts +28 -0
- package/lib/AppSidebar/AppSidebarItem/AppSidebarItem.js +23 -0
- package/lib/AppSidebar/AppSidebarItem/AppSidebarItem.js.map +1 -0
- package/lib/AppSidebar/AppSidebarItem/AppSidebarItem.module.scss +92 -0
- package/lib/AppSidebar/AppSidebarItem/index.d.ts +1 -0
- package/lib/AppSidebar/AppSidebarItem/index.js +2 -0
- package/lib/AppSidebar/AppSidebarItem/index.js.map +1 -0
- package/lib/AppSidebar/AppSidebarMenuItemCounter/AppSidebarMenuItemCounter.d.ts +6 -0
- package/lib/AppSidebar/AppSidebarMenuItemCounter/AppSidebarMenuItemCounter.js +6 -0
- package/lib/AppSidebar/AppSidebarMenuItemCounter/AppSidebarMenuItemCounter.js.map +1 -0
- package/lib/AppSidebar/AppSidebarMenuItemCounter/AppSidebarMenuItemCounter.module.scss +24 -0
- package/lib/AppSidebar/AppSidebarMenuItemCounter/index.d.ts +1 -0
- package/lib/AppSidebar/AppSidebarMenuItemCounter/index.js +2 -0
- package/lib/AppSidebar/AppSidebarMenuItemCounter/index.js.map +1 -0
- package/lib/AppSidebar/AppSidebarSection/AppSidebarSection.d.ts +13 -0
- package/lib/AppSidebar/AppSidebarSection/AppSidebarSection.js +15 -0
- package/lib/AppSidebar/AppSidebarSection/AppSidebarSection.js.map +1 -0
- package/lib/AppSidebar/AppSidebarSection/AppSidebarSection.module.scss +58 -0
- package/lib/AppSidebar/AppSidebarSection/AppSidebarSectionExpandable.d.ts +12 -0
- package/lib/AppSidebar/AppSidebarSection/AppSidebarSectionExpandable.js +55 -0
- package/lib/AppSidebar/AppSidebarSection/AppSidebarSectionExpandable.js.map +1 -0
- package/lib/AppSidebar/AppSidebarSection/appSidebarSectionContext.d.ts +2 -0
- package/lib/AppSidebar/AppSidebarSection/appSidebarSectionContext.js +3 -0
- package/lib/AppSidebar/AppSidebarSection/appSidebarSectionContext.js.map +1 -0
- package/lib/AppSidebar/AppSidebarSection/index.d.ts +1 -0
- package/lib/AppSidebar/AppSidebarSection/index.js +2 -0
- package/lib/AppSidebar/AppSidebarSection/index.js.map +1 -0
- package/lib/AppSidebar/appSidebarContext.d.ts +10 -0
- package/lib/AppSidebar/appSidebarContext.js +11 -0
- package/lib/AppSidebar/appSidebarContext.js.map +1 -0
- package/lib/AppSidebar/index.d.ts +5 -0
- package/lib/AppSidebar/index.js +6 -0
- package/lib/AppSidebar/index.js.map +1 -0
- package/lib/AutocompleteField.js +3 -3
- package/lib/AutocompleteField.js.map +1 -1
- package/lib/Button.d.ts +8 -8
- package/lib/Button.js +14 -42
- package/lib/Button.js.map +1 -1
- package/lib/Button.module.scss +40 -10
- package/lib/Calendar/Calendar.d.ts +2 -1
- package/lib/Calendar/Calendar.js +4 -4
- package/lib/Calendar/Calendar.js.map +1 -1
- package/lib/Calendar/components/CalendarInput.d.ts +3 -2
- package/lib/Calendar/components/CalendarInput.js +1 -1
- package/lib/Calendar/components/CalendarInput.js.map +1 -1
- package/lib/Calendar/components/CalendarTime.d.ts +3 -2
- package/lib/Calendar/components/CalendarTime.js +5 -5
- package/lib/Calendar/components/CalendarTime.js.map +1 -1
- package/lib/Card.d.ts +2 -0
- package/lib/Card.js +3 -2
- package/lib/Card.js.map +1 -1
- package/lib/Card.module.scss +51 -18
- package/lib/CenteredLoader.d.ts +5 -0
- package/lib/CenteredLoader.js +6 -0
- package/lib/CenteredLoader.js.map +1 -0
- package/lib/CenteredLoader.module.scss +11 -0
- package/lib/Checkbox.js +2 -2
- package/lib/Checkbox.js.map +1 -1
- package/lib/Checkbox.module.scss +2 -2
- package/lib/Dialog.js +22 -18
- package/lib/Dialog.js.map +1 -1
- package/lib/Error.d.ts +2 -1
- package/lib/Error.js +1 -1
- package/lib/Error.js.map +1 -1
- package/lib/Help.d.ts +2 -1
- package/lib/Help.js +2 -2
- package/lib/Help.js.map +1 -1
- package/lib/Icon.d.ts +2 -1
- package/lib/Icon.js +2 -2
- package/lib/Icon.js.map +1 -1
- package/lib/IconButton.js +3 -3
- package/lib/IconButton.js.map +1 -1
- package/lib/InteractiveList.d.ts +6 -5
- package/lib/InteractiveList.js +10 -10
- package/lib/InteractiveList.js.map +1 -1
- package/lib/Label.d.ts +2 -1
- package/lib/Label.js +1 -1
- package/lib/Label.js.map +1 -1
- package/lib/Link.d.ts +1 -1
- package/lib/Link.js +1 -0
- package/lib/Link.js.map +1 -1
- package/lib/Link.module.scss +5 -0
- package/lib/Loader.d.ts +2 -1
- package/lib/Loader.js +2 -2
- package/lib/Loader.js.map +1 -1
- package/lib/Modal.js +4 -4
- package/lib/Modal.js.map +1 -1
- package/lib/Modal.module.scss +2 -1
- package/lib/NumberField.d.ts +1 -0
- package/lib/NumberField.js +27 -10
- package/lib/NumberField.js.map +1 -1
- package/lib/Overlay.js +3 -1
- package/lib/Overlay.js.map +1 -1
- package/lib/Overlay.module.scss +5 -2
- package/lib/Pagination.js +10 -10
- package/lib/Pagination.js.map +1 -1
- package/lib/Pagination.module.scss +4 -4
- package/lib/PasswordField.js +4 -4
- package/lib/PasswordField.js.map +1 -1
- package/lib/Radio.js +3 -3
- package/lib/Radio.js.map +1 -1
- package/lib/RadioGroup.js +3 -3
- package/lib/RadioGroup.js.map +1 -1
- package/lib/Select/Common.js +8 -12
- package/lib/Select/Common.js.map +1 -1
- package/lib/Select/Common.module.scss +1 -1
- package/lib/Select/MultiSelectField.js +4 -5
- package/lib/Select/MultiSelectField.js.map +1 -1
- package/lib/Select/MultiSelectFieldFormik.d.ts +2 -1
- package/lib/Select/MultiSelectFieldFormik.js.map +1 -1
- package/lib/Select/SelectField.d.ts +1 -0
- package/lib/Select/SelectField.js +4 -4
- package/lib/Select/SelectField.js.map +1 -1
- package/lib/Slider.module.scss +6 -6
- package/lib/Table/Cell.d.ts +5 -3
- package/lib/Table/Cell.js +4 -3
- package/lib/Table/Cell.js.map +1 -1
- package/lib/Table/Cell.module.scss +14 -5
- package/lib/Table/CellWrapper.d.ts +6 -6
- package/lib/Table/CellWrapper.js +6 -6
- package/lib/Table/CellWrapper.js.map +1 -1
- package/lib/Table/EnhancedRenderers.d.ts +8 -10
- package/lib/Table/EnhancedRenderers.js +7 -10
- package/lib/Table/EnhancedRenderers.js.map +1 -1
- package/lib/Table/Header.d.ts +9 -5
- package/lib/Table/Header.js +12 -7
- package/lib/Table/Header.js.map +1 -1
- package/lib/Table/Header.module.scss +12 -7
- package/lib/Table/Row.d.ts +5 -3
- package/lib/Table/Row.js +4 -4
- package/lib/Table/Row.js.map +1 -1
- package/lib/Table/Row.module.scss +15 -12
- package/lib/Table/Table.d.ts +21 -36
- package/lib/Table/Table.js +102 -87
- package/lib/Table/Table.js.map +1 -1
- package/lib/Table/Table.module.scss +6 -0
- package/lib/Table/TableContent.d.ts +7 -7
- package/lib/Table/TableContent.js +20 -14
- package/lib/Table/TableContent.js.map +1 -1
- package/lib/Table/helpers.d.ts +2 -0
- package/lib/Table/helpers.js +10 -0
- package/lib/Table/helpers.js.map +1 -0
- package/lib/Table/tableTypes.d.ts +80 -0
- package/lib/Table/tableTypes.js +2 -0
- package/lib/Table/tableTypes.js.map +1 -0
- package/lib/Table/useTrackTableState.d.ts +3 -0
- package/lib/Table/useTrackTableState.js +30 -0
- package/lib/Table/useTrackTableState.js.map +1 -0
- package/lib/Table/utils.d.ts +16 -0
- package/lib/Table/utils.js +121 -0
- package/lib/Table/utils.js.map +1 -0
- package/lib/Tabs/Tab.d.ts +1 -19
- package/lib/Tabs/Tab.js +2 -16
- package/lib/Tabs/Tab.js.map +1 -1
- package/lib/Tabs/Tab.module.scss +0 -4
- package/lib/Tabs/TabPanel.d.ts +2 -1
- package/lib/Tabs/TabPanel.js +2 -2
- package/lib/Tabs/TabPanel.js.map +1 -1
- package/lib/TextArea.js +3 -3
- package/lib/TextArea.js.map +1 -1
- package/lib/TextField.js +5 -5
- package/lib/TextField.js.map +1 -1
- package/lib/TimeField.js +3 -3
- package/lib/TimeField.js.map +1 -1
- package/lib/Toast.d.ts +2 -1
- package/lib/Toast.js +5 -5
- package/lib/Toast.js.map +1 -1
- package/lib/Toggle.js +5 -5
- package/lib/Toggle.js.map +1 -1
- package/lib/Tooltip.d.ts +3 -0
- package/lib/Tooltip.js +21 -15
- package/lib/Tooltip.js.map +1 -1
- package/lib/Tooltip.module.scss +102 -70
- package/lib/TruncatedText.d.ts +4 -1
- package/lib/TruncatedText.js +4 -4
- package/lib/TruncatedText.js.map +1 -1
- package/lib/TruncatedText.module.scss +4 -0
- package/lib/hooks/useOnClickOutside.d.ts +1 -1
- package/lib/hooks/useOnClickOutside.js +7 -1
- package/lib/hooks/useOnClickOutside.js.map +1 -1
- package/package.json +26 -20
- package/styles/constants/_colors.scss +36 -12
- package/styles/constants/_typography.scss +0 -7
- package/styles/helpers/_a11y.scss +8 -0
- package/styles/helpers/_gradients.scss +39 -6
- package/styles/helpers/_text.scss +9 -0
- package/styles/typography/fonts/UbuntuMono-Bold.woff2 +0 -0
- package/styles/typography/fonts/UbuntuMono-BoldItalic.woff2 +0 -0
- package/styles/typography/fonts/UbuntuMono-Italic.woff2 +0 -0
- package/styles/typography/fonts/UbuntuMono-Regular.woff2 +0 -0
- package/styles/typography/ubuntu-mono.css +31 -0
- package/lib/utils/test.d.ts +0 -3
- package/lib/utils/test.js +0 -8
- package/lib/utils/test.js.map +0 -1
package/lib/Checkbox.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Checkbox.js","sourceRoot":"","sources":["../src/Checkbox.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAoD,MAAM,EAAc,UAAU,EAAE,MAAM,OAAO,CAAA;AAC/G,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,eAAe,CAAA;AAE5C,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAClC,OAAO,UAAU,MAAM,YAAY,CAAA;AAEnC,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACxC,OAAO,EAAE,IAAI,EAAa,aAAa,EAAE,MAAM,QAAQ,CAAA;AAEvD,OAAO,MAAM,MAAM,wBAAwB,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AA0B/C;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,UAAU,CAAgC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;IAC/E,MAAM,EACJ,OAAO,EACP,IAAI,EACJ,QAAQ,EACR,MAAM,EACN,SAAS,EACT,cAAc,EACd,kBAAkB,EAClB,KAAK,EACL,aAAa,GAAG,KAAK,EACrB,KAAK,EACL,UAAU,EACV,KAAK,EACL,QAAQ,GAAG,KAAK,EAChB,QAAQ,EACR,WAAW,EAAE,QAAQ,
|
|
1
|
+
{"version":3,"file":"Checkbox.js","sourceRoot":"","sources":["../src/Checkbox.tsx"],"names":[],"mappings":"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"}
|
package/lib/Checkbox.module.scss
CHANGED
package/lib/Dialog.js
CHANGED
|
@@ -13,24 +13,28 @@ export const DIALOG_AFFIRMATION_DEFAULT = 'Are you sure you wish to proceed?';
|
|
|
13
13
|
* - Use affirmation` and `consequences` props to set the content of the Dialog.
|
|
14
14
|
*/
|
|
15
15
|
export const Dialog = ({ modalClassName, consequences, affirmation = DIALOG_AFFIRMATION_DEFAULT, actionChildren, actionDangerous, actionDisabled, actionDisabledTooltip, actionOnConfirm, ...rest }) => {
|
|
16
|
-
const actions = useMemo(() =>
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
16
|
+
const actions = useMemo(() => {
|
|
17
|
+
const props = actionChildren && actionOnConfirm
|
|
18
|
+
? [
|
|
19
|
+
{
|
|
20
|
+
autoFocus: !actionDangerous,
|
|
21
|
+
color: actionDangerous ? 'secondary' : 'primary',
|
|
22
|
+
...(actionDisabled && actionDisabledTooltip
|
|
23
|
+
? {
|
|
24
|
+
disabled: actionDisabled,
|
|
25
|
+
disabledTooltip: actionDisabledTooltip,
|
|
26
|
+
}
|
|
27
|
+
: {
|
|
28
|
+
disabled: undefined,
|
|
29
|
+
disabledTooltip: undefined,
|
|
30
|
+
}),
|
|
31
|
+
onClick: actionOnConfirm,
|
|
32
|
+
children: actionChildren,
|
|
33
|
+
},
|
|
34
|
+
]
|
|
35
|
+
: [];
|
|
36
|
+
return props;
|
|
37
|
+
}, [actionDangerous, actionDisabled, actionDisabledTooltip, actionOnConfirm, actionChildren]);
|
|
34
38
|
return (React.createElement(Modal, { className: cn(styles.dialog, modalClassName), headerClassName: styles.dialogHeader, bodyClassName: styles.dialogBody, contentClassName: styles.dialogConsequences, footerClassName: styles.dialogFooter, actions: actions, title: affirmation, showCloseButton: false, ...rest }, consequences));
|
|
35
39
|
};
|
|
36
40
|
//# sourceMappingURL=Dialog.js.map
|
package/lib/Dialog.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Dialog.js","sourceRoot":"","sources":["../src/Dialog.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAiB,OAAO,EAAE,MAAM,OAAO,CAAA;AACrD,OAAO,EAAE,MAAM,YAAY,CAAA;AAE3B,OAAO,EAAE,KAAK,EAAgC,MAAM,SAAS,CAAA;AAE7D,OAAO,MAAM,MAAM,sBAAsB,CAAA;AAEzC,MAAM,CAAC,MAAM,0BAA0B,GAAG,mCAAmC,CAAA;AAyB7E;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,MAAM,GAAoB,CAAC,EACtC,cAAc,EACd,YAAY,EACZ,WAAW,GAAG,0BAA0B,EACxC,cAAc,EACd,eAAe,EACf,cAAc,EACd,qBAAqB,EACrB,eAAe,EACf,GAAG,IAAI,EACR,EAAE,EAAE;IACH,MAAM,OAAO,
|
|
1
|
+
{"version":3,"file":"Dialog.js","sourceRoot":"","sources":["../src/Dialog.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAiB,OAAO,EAAE,MAAM,OAAO,CAAA;AACrD,OAAO,EAAE,MAAM,YAAY,CAAA;AAE3B,OAAO,EAAE,KAAK,EAAgC,MAAM,SAAS,CAAA;AAE7D,OAAO,MAAM,MAAM,sBAAsB,CAAA;AAEzC,MAAM,CAAC,MAAM,0BAA0B,GAAG,mCAAmC,CAAA;AAyB7E;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,MAAM,GAAoB,CAAC,EACtC,cAAc,EACd,YAAY,EACZ,WAAW,GAAG,0BAA0B,EACxC,cAAc,EACd,eAAe,EACf,cAAc,EACd,qBAAqB,EACrB,eAAe,EACf,GAAG,IAAI,EACR,EAAE,EAAE;IACH,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,EAAE;QAC3B,MAAM,KAAK,GACT,cAAc,IAAI,eAAe;YAC/B,CAAC,CAAC;gBACE;oBACE,SAAS,EAAE,CAAC,eAAe;oBAC3B,KAAK,EAAE,eAAe,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS;oBAChD,GAAG,CAAC,cAAc,IAAI,qBAAqB;wBACzC,CAAC,CAAC;4BACE,QAAQ,EAAE,cAAc;4BACxB,eAAe,EAAE,qBAAqB;yBACvC;wBACH,CAAC,CAAC;4BACE,QAAQ,EAAE,SAAS;4BACnB,eAAe,EAAE,SAAS;yBAC3B,CAAC;oBACN,OAAO,EAAE,eAAe;oBACxB,QAAQ,EAAE,cAAc;iBACzB;aACF;YACH,CAAC,CAAC,EAAE,CAAA;QAER,OAAO,KAAK,CAAA;IACd,CAAC,EAAE,CAAC,eAAe,EAAE,cAAc,EAAE,qBAAqB,EAAE,eAAe,EAAE,cAAc,CAAC,CAAC,CAAA;IAE7F,OAAO,CACL,oBAAC,KAAK,IACJ,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,EAC5C,eAAe,EAAE,MAAM,CAAC,YAAY,EACpC,aAAa,EAAE,MAAM,CAAC,UAAU,EAChC,gBAAgB,EAAE,MAAM,CAAC,kBAAkB,EAC3C,eAAe,EAAE,MAAM,CAAC,YAAY,EACpC,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,WAAW,EAClB,eAAe,EAAE,KAAK,KAClB,IAAI,IAEP,YAAY,CACP,CACT,CAAA;AACH,CAAC,CAAA"}
|
package/lib/Error.d.ts
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { FC } from 'react';
|
|
2
|
+
import { DataTestProp } from '@hazelcast/helpers';
|
|
2
3
|
import { TooltipProps } from './Tooltip';
|
|
3
4
|
export declare const errorId: (inputId: string) => string;
|
|
4
|
-
interface ErrorProps {
|
|
5
|
+
interface ErrorProps extends DataTestProp {
|
|
5
6
|
error?: string;
|
|
6
7
|
className?: string;
|
|
7
8
|
inputId: string;
|
package/lib/Error.js
CHANGED
|
@@ -4,5 +4,5 @@ import { TruncatedText } from './TruncatedText';
|
|
|
4
4
|
import styles from './Error.module.scss';
|
|
5
5
|
export const errorId = (inputId) => `${inputId}-error`;
|
|
6
6
|
/* https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/ARIA_Techniques/Using_the_alert_role */
|
|
7
|
-
export const Error = ({ error, className, inputId, truncated, tooltipPlacement }) => (React.createElement("div", { className: cn(styles.container, error && styles.hasError, className)
|
|
7
|
+
export const Error = ({ error, className, inputId, truncated, tooltipPlacement, 'data-test': dataTest = 'error' }) => (React.createElement("div", { role: "alert", id: errorId(inputId), "data-test": dataTest, className: cn(styles.container, error && styles.hasError, className) }, truncated ? React.createElement(TruncatedText, { text: error || '', tooltipPlacement: tooltipPlacement, hoverAbleTooltip: false }) : error));
|
|
8
8
|
//# sourceMappingURL=Error.js.map
|
package/lib/Error.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Error.js","sourceRoot":"","sources":["../src/Error.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAa,MAAM,OAAO,CAAA;AACjC,OAAO,EAAE,MAAM,YAAY,CAAA;
|
|
1
|
+
{"version":3,"file":"Error.js","sourceRoot":"","sources":["../src/Error.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAa,MAAM,OAAO,CAAA;AACjC,OAAO,EAAE,MAAM,YAAY,CAAA;AAG3B,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAG/C,OAAO,MAAM,MAAM,qBAAqB,CAAA;AAExC,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,OAAe,EAAU,EAAE,CAAC,GAAG,OAAO,QAAQ,CAAA;AAUtE,0GAA0G;AAC1G,MAAM,CAAC,MAAM,KAAK,GAAmB,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,WAAW,EAAE,QAAQ,GAAG,OAAO,EAAE,EAAE,EAAE,CAAC,CACpI,6BAAK,IAAI,EAAC,OAAO,EAAC,EAAE,EAAE,OAAO,CAAC,OAAO,CAAC,eAAa,QAAQ,EAAE,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS,EAAE,KAAK,IAAI,MAAM,CAAC,QAAQ,EAAE,SAAS,CAAC,IAC9H,SAAS,CAAC,CAAC,CAAC,oBAAC,aAAa,IAAC,IAAI,EAAE,KAAK,IAAI,EAAE,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,KAAK,GAAI,CAAC,CAAC,CAAC,KAAK,CAClH,CACP,CAAA"}
|
package/lib/Help.d.ts
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { CSSProperties, FC, ReactElement } from 'react';
|
|
2
|
+
import { DataTestProp } from '@hazelcast/helpers';
|
|
2
3
|
import { IconSize } from './Icon';
|
|
3
4
|
import { TooltipProps } from './Tooltip';
|
|
4
5
|
export declare const helpTooltipId: (inputId: string) => string;
|
|
5
|
-
export interface HelpProps {
|
|
6
|
+
export interface HelpProps extends DataTestProp {
|
|
6
7
|
parentId: string;
|
|
7
8
|
helperText: string | ReactElement;
|
|
8
9
|
placement?: TooltipProps['placement'];
|
package/lib/Help.js
CHANGED
|
@@ -6,9 +6,9 @@ import { Tooltip } from './Tooltip';
|
|
|
6
6
|
import styleConsts from '../styles/constants/export.module.scss';
|
|
7
7
|
import styles from './Help.module.scss';
|
|
8
8
|
export const helpTooltipId = (inputId) => `${inputId}-help`;
|
|
9
|
-
export const Help = ({ helperText, placement = 'top', parentId, className, tooltipWordBreak, popperRef, size = 'small', }) => {
|
|
9
|
+
export const Help = ({ helperText, placement = 'top', parentId, className, tooltipWordBreak, popperRef, size = 'small', 'data-test': dataTest = 'help', }) => {
|
|
10
10
|
const tooltipId = helpTooltipId(parentId);
|
|
11
|
-
return (React.createElement(Tooltip, { placement: placement, content: helperText, id: tooltipId, popperRef: popperRef, wordBreak: tooltipWordBreak }, (ref) => (React.createElement("div", { ref: ref, className: cn(styles.container, className) },
|
|
11
|
+
return (React.createElement(Tooltip, { placement: placement, content: helperText, id: tooltipId, popperRef: popperRef, wordBreak: tooltipWordBreak }, (ref) => (React.createElement("div", { ref: ref, "data-test": dataTest, className: cn(styles.container, className) },
|
|
12
12
|
React.createElement(Icon, { ariaLabel: "Help", "aria-describedby": tooltipId, color: styleConsts.colorPrimary, icon: HelpCircle, className: styles.icon, size: size })))));
|
|
13
13
|
};
|
|
14
14
|
//# sourceMappingURL=Help.js.map
|
package/lib/Help.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Help.js","sourceRoot":"","sources":["../src/Help.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA0C,MAAM,OAAO,CAAA;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAC1C,OAAO,EAAE,MAAM,YAAY,CAAA;
|
|
1
|
+
{"version":3,"file":"Help.js","sourceRoot":"","sources":["../src/Help.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA0C,MAAM,OAAO,CAAA;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAC1C,OAAO,EAAE,MAAM,YAAY,CAAA;AAG3B,OAAO,EAAE,IAAI,EAAY,MAAM,QAAQ,CAAA;AACvC,OAAO,EAAE,OAAO,EAAgB,MAAM,WAAW,CAAA;AAEjD,OAAO,WAAW,MAAM,wCAAwC,CAAA;AAChE,OAAO,MAAM,MAAM,oBAAoB,CAAA;AAEvC,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,OAAe,EAAU,EAAE,CAAC,GAAG,OAAO,OAAO,CAAA;AAY3E,MAAM,CAAC,MAAM,IAAI,GAAkB,CAAC,EAClC,UAAU,EACV,SAAS,GAAG,KAAK,EACjB,QAAQ,EACR,SAAS,EACT,gBAAgB,EAChB,SAAS,EACT,IAAI,GAAG,OAAO,EACd,WAAW,EAAE,QAAQ,GAAG,MAAM,GAC/B,EAAE,EAAE;IACH,MAAM,SAAS,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAA;IAEzC,OAAO,CACL,oBAAC,OAAO,IAAC,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,gBAAgB,IACjH,CAAC,GAAG,EAAE,EAAE,CAAC,CACR,6BAAK,GAAG,EAAE,GAAG,eAAa,QAAQ,EAAE,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS,EAAE,SAAS,CAAC;QAC5E,oBAAC,IAAI,IACH,SAAS,EAAC,MAAM,sBACE,SAAS,EAC3B,KAAK,EAAE,WAAW,CAAC,YAAY,EAC/B,IAAI,EAAE,UAAU,EAChB,SAAS,EAAE,MAAM,CAAC,IAAI,EACtB,IAAI,EAAE,IAAI,GACV,CACE,CACP,CACO,CACX,CAAA;AACH,CAAC,CAAA"}
|
package/lib/Icon.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import React, { FC, SVGAttributes } from 'react';
|
|
2
|
+
import { DataTestProp } from '@hazelcast/helpers';
|
|
2
3
|
export type IconSize = 'small' | 'smallMedium' | 'medium' | 'large' | 'xlarge';
|
|
3
4
|
export type IconAriaProps = {
|
|
4
5
|
ariaLabel: string | undefined;
|
|
@@ -25,5 +26,5 @@ export type IconProps = {
|
|
|
25
26
|
containerClassName?: string;
|
|
26
27
|
bold?: boolean;
|
|
27
28
|
role?: string;
|
|
28
|
-
} & IconAriaProps;
|
|
29
|
+
} & IconAriaProps & DataTestProp;
|
|
29
30
|
export declare const Icon: React.ForwardRefExoticComponent<IconProps & React.RefAttributes<HTMLDivElement>>;
|
package/lib/Icon.js
CHANGED
|
@@ -2,7 +2,7 @@ import React, { forwardRef } from 'react';
|
|
|
2
2
|
import cn from 'classnames';
|
|
3
3
|
import styleConsts from '../styles/constants/export.module.scss';
|
|
4
4
|
import styles from './Icon.module.scss';
|
|
5
|
-
export const Icon = forwardRef(({ color, icon: IconElement, ariaLabel, ariaLabelledBy, ariaHidden, className, containerClassName, size = 'medium', bold = false, role = 'img', }, ref) => {
|
|
5
|
+
export const Icon = forwardRef(({ color, icon: IconElement, ariaLabel, ariaLabelledBy, ariaHidden, className, containerClassName, size = 'medium', bold = false, role = 'img', 'data-test': dataTest, }, ref) => {
|
|
6
6
|
const iconStroke = bold ? styleConsts.iconStrokeWidthBold : styleConsts.iconStrokeWidth;
|
|
7
7
|
const props = {
|
|
8
8
|
'aria-label': ariaLabel || 'icon',
|
|
@@ -20,7 +20,7 @@ export const Icon = forwardRef(({ color, icon: IconElement, ariaLabel, ariaLabel
|
|
|
20
20
|
}, className),
|
|
21
21
|
strokeWidth: iconStroke,
|
|
22
22
|
};
|
|
23
|
-
return (React.createElement("div", { className: cn(styles.iconContainer, containerClassName), ref: ref },
|
|
23
|
+
return (React.createElement("div", { className: cn(styles.iconContainer, containerClassName), "data-test": dataTest, ref: ref },
|
|
24
24
|
React.createElement(IconElement, { role: role, ...props })));
|
|
25
25
|
});
|
|
26
26
|
Icon.displayName = 'Icon';
|
package/lib/Icon.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Icon.js","sourceRoot":"","sources":["../src/Icon.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAM,UAAU,EAA2B,MAAM,OAAO,CAAA;AACtE,OAAO,EAAE,MAAM,YAAY,CAAA;
|
|
1
|
+
{"version":3,"file":"Icon.js","sourceRoot":"","sources":["../src/Icon.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAM,UAAU,EAA2B,MAAM,OAAO,CAAA;AACtE,OAAO,EAAE,MAAM,YAAY,CAAA;AAG3B,OAAO,WAAW,MAAM,wCAAwC,CAAA;AAChE,OAAO,MAAM,MAAM,oBAAoB,CAAA;AAwCvC,MAAM,CAAC,MAAM,IAAI,GAAG,UAAU,CAC5B,CACE,EACE,KAAK,EACL,IAAI,EAAE,WAAW,EACjB,SAAS,EACT,cAAc,EACd,UAAU,EACV,SAAS,EACT,kBAAkB,EAClB,IAAI,GAAG,QAAQ,EACf,IAAI,GAAG,KAAK,EACZ,IAAI,GAAG,KAAK,EACZ,WAAW,EAAE,QAAQ,GACtB,EACD,GAAG,EACH,EAAE;IACF,MAAM,UAAU,GAAG,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,mBAAmB,CAAC,CAAC,CAAC,WAAW,CAAC,eAAe,CAAA;IAEvF,MAAM,KAAK,GAAyB;QAClC,YAAY,EAAE,SAAS,IAAI,MAAM;QACjC,iBAAiB,EAAE,cAAc;QACjC,aAAa,EAAE,UAAU;QACzB,KAAK;QACL,KAAK,EAAE,KAAK;QACZ,MAAM,EAAE,KAAK;QACb,SAAS,EAAE,EAAE,CACX;YACE,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,IAAI,KAAK,OAAO;YAChC,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,IAAI,KAAK,aAAa;YAC5C,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,KAAK,QAAQ;YAClC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,IAAI,KAAK,OAAO;YAChC,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,KAAK,QAAQ;SACnC,EACD,SAAS,CACV;QACD,WAAW,EAAE,UAAU;KACxB,CAAA;IAED,OAAO,CACL,6BAAK,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,aAAa,EAAE,kBAAkB,CAAC,eAAa,QAAQ,EAAE,GAAG,EAAE,GAAG;QACzF,oBAAC,WAAW,IAAC,IAAI,EAAE,IAAI,KAAM,KAAK,GAAI,CAClC,CACP,CAAA;AACH,CAAC,CACF,CAAA;AACD,IAAI,CAAC,WAAW,GAAG,MAAM,CAAA"}
|
package/lib/IconButton.js
CHANGED
|
@@ -8,7 +8,7 @@ import { Loader } from './Loader';
|
|
|
8
8
|
import styles from './IconButton.module.scss';
|
|
9
9
|
export const IconButton = forwardRef(({ component: Component = 'button', icon, iconClassName, iconColor, iconRole, loaderRole, className, size, kind = 'transparent', ariaHidden, ariaLabelledBy, ariaLabel,
|
|
10
10
|
// Disabled tooltip
|
|
11
|
-
disabled, disabledTooltip, disabledTooltipVisible, disabledTooltipPlacement, rel = 'noopener', target, type = 'button', loading, padding, tooltip, tooltipPlacement, tooltipVisible, ...rest }, ref) => {
|
|
11
|
+
disabled, disabledTooltip, disabledTooltipVisible, disabledTooltipPlacement, rel = 'noopener', target, type = 'button', loading, padding, tooltip, tooltipPlacement, tooltipVisible, 'data-test': dataTest = 'icon-button', ...rest }, ref) => {
|
|
12
12
|
const tooltipId = useUID();
|
|
13
13
|
const relFinal = Array.isArray(rel) ? rel.join(' ') : rel;
|
|
14
14
|
const labelledByFinal = [ariaLabelledBy, disabled ? tooltipId : undefined].filter(Boolean).join(' ');
|
|
@@ -16,10 +16,10 @@ disabled, disabledTooltip, disabledTooltipVisible, disabledTooltipPlacement, rel
|
|
|
16
16
|
[styles.primary]: kind === 'primary',
|
|
17
17
|
[styles.transparent]: kind === 'transparent',
|
|
18
18
|
[styles.paddingNormal]: padding === 'normal',
|
|
19
|
-
}, className), "aria-hidden": ariaHidden, "aria-label": ariaLabel, "aria-labelledby": labelledByFinal, disabled: disabled !== null && disabled !== void 0 ? disabled : loading, rel: Component === 'a' ? relFinal : undefined, target: Component === 'a' ? target : undefined, type: Component === 'button' ? type : undefined, ...rest },
|
|
19
|
+
}, className), "aria-hidden": ariaHidden, "aria-label": ariaLabel, "aria-labelledby": labelledByFinal, disabled: disabled !== null && disabled !== void 0 ? disabled : loading, rel: Component === 'a' ? relFinal : undefined, target: Component === 'a' ? target : undefined, type: Component === 'button' ? type : undefined, "data-test": dataTest, ...rest },
|
|
20
20
|
React.createElement("span", { className: styles.body, ref: mergeRefs([ref, tooltipRef]) },
|
|
21
21
|
loading && React.createElement(Loader, { role: loaderRole, size: size }),
|
|
22
|
-
!loading && React.createElement(Icon, { role: iconRole, className: iconClassName, color: iconColor, icon: icon, size: size, ariaHidden: true }))))));
|
|
22
|
+
!loading && (React.createElement(Icon, { role: iconRole, className: iconClassName, color: iconColor, "data-test": `${dataTest}-icon`, icon: icon, size: size, ariaHidden: true })))))));
|
|
23
23
|
});
|
|
24
24
|
IconButton.displayName = 'IconButton';
|
|
25
25
|
//# sourceMappingURL=IconButton.js.map
|
package/lib/IconButton.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IconButton.js","sourceRoot":"","sources":["../src/IconButton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAwB,UAAU,EAAE,MAAM,OAAO,CAAA;AAC/D,OAAO,EAAE,MAAM,YAAY,CAAA;AAE3B,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAClC,OAAO,SAAS,MAAM,kBAAkB,CAAA;AAExC,OAAO,EAAE,IAAI,EAA4B,MAAM,QAAQ,CAAA;AACvD,OAAO,EAAE,OAAO,EAAgB,MAAM,WAAW,CAAA;AAEjD,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AAGjC,OAAO,MAAM,MAAM,0BAA0B,CAAA;AAmD7C,MAAM,CAAC,MAAM,UAAU,GAAG,UAAU,CAClC,CACE,EACE,SAAS,EAAE,SAAS,GAAG,QAAQ,EAC/B,IAAI,EACJ,aAAa,EACb,SAAS,EACT,QAAQ,EACR,UAAU,EACV,SAAS,EACT,IAAI,EACJ,IAAI,GAAG,aAAa,EACpB,UAAU,EACV,cAAc,EACd,SAAS;AACT,mBAAmB;AACnB,QAAQ,EACR,eAAe,EACf,sBAAsB,EACtB,wBAAwB,EACxB,GAAG,GAAG,UAAU,EAChB,MAAM,EACN,IAAI,GAAG,QAAQ,EACf,OAAO,EACP,OAAO,EACP,OAAO,EACP,gBAAgB,EAChB,cAAc,EACd,GAAG,IAAI,EACR,EACD,GAAG,EACH,EAAE;IACF,MAAM,SAAS,GAAG,MAAM,EAAE,CAAA;IAC1B,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAA;IACzD,MAAM,eAAe,GAAG,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAEpG,OAAO,CACL,oBAAC,OAAO,IACN,EAAE,EAAE,SAAS,EACb,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,OAAO,EAC7C,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,gBAAgB,EACjE,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,cAAc,IAE1D,CAAC,UAAU,EAAE,EAAE,CAAC,CACf,oBAAC,SAAS,IACR,SAAS,EAAE,EAAE,CACX,MAAM,CAAC,UAAU,EACjB;YACE,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,IAAI,KAAK,SAAS;YACpC,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,IAAI,KAAK,aAAa;YAC5C,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,OAAO,KAAK,QAAQ;SAC7C,EACD,SAAS,CACV,iBACY,UAAU,gBACX,SAAS,qBACJ,eAAe,EAChC,QAAQ,EAAE,QAAQ,aAAR,QAAQ,cAAR,QAAQ,GAAI,OAAO,EAC7B,GAAG,EAAE,SAAS,KAAK,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,EAC7C,MAAM,EAAE,SAAS,KAAK,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,EAC9C,IAAI,EAAE,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,
|
|
1
|
+
{"version":3,"file":"IconButton.js","sourceRoot":"","sources":["../src/IconButton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAwB,UAAU,EAAE,MAAM,OAAO,CAAA;AAC/D,OAAO,EAAE,MAAM,YAAY,CAAA;AAE3B,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAClC,OAAO,SAAS,MAAM,kBAAkB,CAAA;AAExC,OAAO,EAAE,IAAI,EAA4B,MAAM,QAAQ,CAAA;AACvD,OAAO,EAAE,OAAO,EAAgB,MAAM,WAAW,CAAA;AAEjD,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AAGjC,OAAO,MAAM,MAAM,0BAA0B,CAAA;AAmD7C,MAAM,CAAC,MAAM,UAAU,GAAG,UAAU,CAClC,CACE,EACE,SAAS,EAAE,SAAS,GAAG,QAAQ,EAC/B,IAAI,EACJ,aAAa,EACb,SAAS,EACT,QAAQ,EACR,UAAU,EACV,SAAS,EACT,IAAI,EACJ,IAAI,GAAG,aAAa,EACpB,UAAU,EACV,cAAc,EACd,SAAS;AACT,mBAAmB;AACnB,QAAQ,EACR,eAAe,EACf,sBAAsB,EACtB,wBAAwB,EACxB,GAAG,GAAG,UAAU,EAChB,MAAM,EACN,IAAI,GAAG,QAAQ,EACf,OAAO,EACP,OAAO,EACP,OAAO,EACP,gBAAgB,EAChB,cAAc,EACd,WAAW,EAAE,QAAQ,GAAG,aAAa,EACrC,GAAG,IAAI,EACR,EACD,GAAG,EACH,EAAE;IACF,MAAM,SAAS,GAAG,MAAM,EAAE,CAAA;IAC1B,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAA;IACzD,MAAM,eAAe,GAAG,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAEpG,OAAO,CACL,oBAAC,OAAO,IACN,EAAE,EAAE,SAAS,EACb,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,OAAO,EAC7C,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,gBAAgB,EACjE,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,cAAc,IAE1D,CAAC,UAAU,EAAE,EAAE,CAAC,CACf,oBAAC,SAAS,IACR,SAAS,EAAE,EAAE,CACX,MAAM,CAAC,UAAU,EACjB;YACE,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,IAAI,KAAK,SAAS;YACpC,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,IAAI,KAAK,aAAa;YAC5C,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,OAAO,KAAK,QAAQ;SAC7C,EACD,SAAS,CACV,iBACY,UAAU,gBACX,SAAS,qBACJ,eAAe,EAChC,QAAQ,EAAE,QAAQ,aAAR,QAAQ,cAAR,QAAQ,GAAI,OAAO,EAC7B,GAAG,EAAE,SAAS,KAAK,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,EAC7C,MAAM,EAAE,SAAS,KAAK,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,EAC9C,IAAI,EAAE,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,eACpC,QAAQ,KACf,IAAI;QAER,8BAAM,SAAS,EAAE,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;YAC5D,OAAO,IAAI,oBAAC,MAAM,IAAC,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,GAAI;YACnD,CAAC,OAAO,IAAI,CACX,oBAAC,IAAI,IACH,IAAI,EAAE,QAAQ,EACd,SAAS,EAAE,aAAa,EACxB,KAAK,EAAE,SAAS,eACL,GAAG,QAAQ,OAAO,EAC7B,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,IAAI,EACV,UAAU,SACV,CACH,CACI,CACG,CACb,CACO,CACX,CAAA;AACH,CAAC,CACF,CAAA;AACD,UAAU,CAAC,WAAW,GAAG,YAAY,CAAA"}
|
package/lib/InteractiveList.d.ts
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import React, { FocusEvent } from 'react';
|
|
2
|
-
import {
|
|
2
|
+
import { DataTestProp } from '@hazelcast/helpers';
|
|
3
3
|
import { ExtractKeysOfValueType } from './utils/types';
|
|
4
4
|
import { FieldHeaderProps } from './FieldHeader';
|
|
5
|
+
import { TextFieldExtraProps } from './TextField';
|
|
5
6
|
export type InteractiveListExtraProps = {
|
|
6
7
|
children?: React.ReactNode | React.ReactNode[];
|
|
7
8
|
iconClassName?: string;
|
|
@@ -17,7 +18,7 @@ export type InteractiveListCoreProps<V> = {
|
|
|
17
18
|
setInputValue: (val: string) => void;
|
|
18
19
|
onAddItem: () => Promise<string | undefined>;
|
|
19
20
|
onRemoveItem: (idx: number) => boolean;
|
|
20
|
-
} & InteractiveListExtraProps;
|
|
21
|
+
} & InteractiveListExtraProps & DataTestProp;
|
|
21
22
|
export type InteractiveListProps<V> = InteractiveListExtraProps & InteractiveListCoreProps<V>;
|
|
22
23
|
export type InteractiveListInputRef = {
|
|
23
24
|
setValue: (value: string) => void;
|
|
@@ -29,10 +30,10 @@ export type InteractiveListItemProps = {
|
|
|
29
30
|
error?: string;
|
|
30
31
|
idx: number;
|
|
31
32
|
onRemoveItem: (idx: number) => boolean;
|
|
32
|
-
};
|
|
33
|
-
export declare const InteractiveListItem: ({ onRemoveItem, content, error, idx }: InteractiveListItemProps) => JSX.Element;
|
|
33
|
+
} & DataTestProp;
|
|
34
|
+
export declare const InteractiveListItem: ({ onRemoveItem, content, error, idx, "data-test": dataTest }: InteractiveListItemProps) => JSX.Element;
|
|
34
35
|
/**
|
|
35
36
|
* This component is meant to be used only from InteractiveListFormik
|
|
36
37
|
* @private
|
|
37
38
|
*/
|
|
38
|
-
export declare const InteractiveList: <V>({ label, children, error, name, value, helperText, inputIcon, type, inputValue, setInputValue, onAddItem, onRemoveItem, className, inputClassName, iconClassName, itemClassName, listClassName, }: InteractiveListProps<V>) => JSX.Element;
|
|
39
|
+
export declare const InteractiveList: <V>({ label, children, error, name, value, helperText, inputIcon, type, inputValue, setInputValue, onAddItem, onRemoveItem, className, inputClassName, iconClassName, itemClassName, listClassName, "data-test": dataTest, }: InteractiveListProps<V>) => JSX.Element;
|
package/lib/InteractiveList.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import { TextField } from './TextField';
|
|
3
|
-
import { IconButton } from './IconButton';
|
|
4
2
|
import { Plus, X } from 'react-feather';
|
|
5
|
-
import styles from './InteractiveList.module.scss';
|
|
6
3
|
import { useUID } from 'react-uid';
|
|
7
|
-
import { Error, errorId } from './Error';
|
|
8
4
|
import cn from 'classnames';
|
|
9
|
-
|
|
5
|
+
import { IconButton } from './IconButton';
|
|
6
|
+
import { Error, errorId } from './Error';
|
|
7
|
+
import { TextField } from './TextField';
|
|
8
|
+
import styles from './InteractiveList.module.scss';
|
|
9
|
+
export const InteractiveListItem = ({ onRemoveItem, content, error, idx, 'data-test': dataTest }) => {
|
|
10
10
|
const id = useUID();
|
|
11
11
|
const errorProps = error
|
|
12
12
|
? {
|
|
@@ -15,7 +15,7 @@ export const InteractiveListItem = ({ onRemoveItem, content, error, idx }) => {
|
|
|
15
15
|
}
|
|
16
16
|
: {};
|
|
17
17
|
return (React.createElement(React.Fragment, null,
|
|
18
|
-
React.createElement("div", { className: styles.content },
|
|
18
|
+
React.createElement("div", { "data-test": dataTest, className: styles.content },
|
|
19
19
|
React.createElement("span", { id: id, ...errorProps }, content),
|
|
20
20
|
' ',
|
|
21
21
|
React.createElement(IconButton, { kind: "primary", ariaLabel: "Remove Item", icon: X, size: "medium", className: styles.removeIcon, onClick: () => {
|
|
@@ -27,10 +27,10 @@ export const InteractiveListItem = ({ onRemoveItem, content, error, idx }) => {
|
|
|
27
27
|
* This component is meant to be used only from InteractiveListFormik
|
|
28
28
|
* @private
|
|
29
29
|
*/
|
|
30
|
-
export const InteractiveList = ({ label, children, error, name, value, helperText, inputIcon, type, inputValue, setInputValue, onAddItem, onRemoveItem, className, inputClassName, iconClassName, itemClassName, listClassName, }) => {
|
|
30
|
+
export const InteractiveList = ({ label, children, error, name, value, helperText, inputIcon, type, inputValue, setInputValue, onAddItem, onRemoveItem, className, inputClassName, iconClassName, itemClassName, listClassName, 'data-test': dataTest = 'interactive-list', }) => {
|
|
31
31
|
const id = useUID();
|
|
32
32
|
return (React.createElement(React.Fragment, null,
|
|
33
|
-
React.createElement("div", { className: cn(styles.inputRow, className) },
|
|
33
|
+
React.createElement("div", { "data-test": dataTest, className: cn(styles.inputRow, className) },
|
|
34
34
|
React.createElement(TextField, { id: id, type: type, helperText: helperText, inputIcon: inputIcon, inputClassName: cn(styles.input, inputClassName), inputContainerClassName: styles.inputContainer, inputBorderOverlayClassName: styles.inputBorderOverlay, error: typeof error === 'string' ? error : undefined, label: label, name: name, value: inputValue, onChange: ({ target: { value } }) => {
|
|
35
35
|
setInputValue(value);
|
|
36
36
|
},
|
|
@@ -41,9 +41,9 @@ export const InteractiveList = ({ label, children, error, name, value, helperTex
|
|
|
41
41
|
await onAddItem();
|
|
42
42
|
}
|
|
43
43
|
} },
|
|
44
|
-
React.createElement(IconButton, { "data-test":
|
|
44
|
+
React.createElement(IconButton, { "data-test": `${dataTest}-add-button`, kind: "transparent", ariaLabel: "Add Icon", icon: Plus, className: cn(styles.addIcon, iconClassName), size: "medium", onClick: () => void onAddItem() }))),
|
|
45
45
|
children,
|
|
46
46
|
React.createElement("ul", { className: cn(styles.list, listClassName) }, value.map((str, idx) => (React.createElement("li", { key: str, className: itemClassName },
|
|
47
|
-
React.createElement(InteractiveListItem, { onRemoveItem: onRemoveItem, idx: idx, content: str, error: typeof error === 'object' && error[idx] ? error[idx] : undefined })))))));
|
|
47
|
+
React.createElement(InteractiveListItem, { onRemoveItem: onRemoveItem, idx: idx, content: str, "data-test": `${dataTest}-item`, error: typeof error === 'object' && error[idx] ? error[idx] : undefined })))))));
|
|
48
48
|
};
|
|
49
49
|
//# sourceMappingURL=InteractiveList.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InteractiveList.js","sourceRoot":"","sources":["../src/InteractiveList.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAqB,MAAM,OAAO,CAAA;AACzC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"InteractiveList.js","sourceRoot":"","sources":["../src/InteractiveList.tsx"],"names":[],"mappings":"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"}
|
package/lib/Label.d.ts
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { FC, ReactElement } from 'react';
|
|
2
|
+
import { DataTestProp } from '@hazelcast/helpers';
|
|
2
3
|
export type LabelProps = {
|
|
3
4
|
id: string;
|
|
4
5
|
label: string | ReactElement;
|
|
5
6
|
className?: string;
|
|
6
7
|
variant?: 'primary' | 'secondary';
|
|
7
|
-
};
|
|
8
|
+
} & DataTestProp;
|
|
8
9
|
export declare const Label: FC<LabelProps>;
|
package/lib/Label.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import cn from 'classnames';
|
|
3
3
|
import styles from './Label.module.scss';
|
|
4
|
-
export const Label = ({ id, label, className, variant = 'primary' }) => (React.createElement("label", { htmlFor: id, className: cn(styles.label, styles[variant], className) }, label));
|
|
4
|
+
export const Label = ({ id, label, className, variant = 'primary', 'data-test': dataTest = 'label' }) => (React.createElement("label", { "data-test": dataTest, htmlFor: id, className: cn(styles.label, styles[variant], className) }, label));
|
|
5
5
|
//# sourceMappingURL=Label.js.map
|
package/lib/Label.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Label.js","sourceRoot":"","sources":["../src/Label.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA2B,MAAM,OAAO,CAAA;AAC/C,OAAO,EAAE,MAAM,YAAY,CAAA;
|
|
1
|
+
{"version":3,"file":"Label.js","sourceRoot":"","sources":["../src/Label.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA2B,MAAM,OAAO,CAAA;AAC/C,OAAO,EAAE,MAAM,YAAY,CAAA;AAG3B,OAAO,MAAM,MAAM,qBAAqB,CAAA;AASxC,MAAM,CAAC,MAAM,KAAK,GAAmB,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,GAAG,SAAS,EAAE,WAAW,EAAE,QAAQ,GAAG,OAAO,EAAE,EAAE,EAAE,CAAC,CACvH,4CAAkB,QAAQ,EAAE,OAAO,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE,SAAS,CAAC,IAC7F,KAAK,CACA,CACT,CAAA"}
|
package/lib/Link.d.ts
CHANGED
|
@@ -20,7 +20,7 @@ export type LinkTarget = '_self' | '_blank' | '_parent' | '_top';
|
|
|
20
20
|
export type LinkRel = 'alternate' | 'author' | 'bookmark' | 'dns-prefetch' | 'external' | 'help' | 'license' | 'next' | 'nofollow' | 'noopener' | 'noreferrer' | 'opener' | 'prev' | 'search' | 'tag';
|
|
21
21
|
export type LinkProps = IconProps & {
|
|
22
22
|
size?: keyof typeof sizes;
|
|
23
|
-
kind?: 'primary' | 'secondary';
|
|
23
|
+
kind?: 'primary' | 'secondary' | 'contrast';
|
|
24
24
|
children: ReactNode;
|
|
25
25
|
bold?: boolean;
|
|
26
26
|
onClick?: MouseEventHandler<HTMLButtonElement | HTMLAnchorElement>;
|
package/lib/Link.js
CHANGED
|
@@ -26,6 +26,7 @@ export const Link = forwardRef(({ component = 'a', kind = 'primary', size = 'nor
|
|
|
26
26
|
// kind
|
|
27
27
|
[styles.primary]: kind === 'primary',
|
|
28
28
|
[styles.secondary]: kind === 'secondary',
|
|
29
|
+
[styles.contrast]: kind === 'contrast',
|
|
29
30
|
// bold
|
|
30
31
|
[styles.bold]: bold,
|
|
31
32
|
}, className),
|
package/lib/Link.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Link.js","sourceRoot":"","sources":["../src/Link.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAA8C,UAAU,EAAkD,MAAM,OAAO,CAAA;AAErI,OAAO,EAAE,MAAM,YAAY,CAAA;
|
|
1
|
+
{"version":3,"file":"Link.js","sourceRoot":"","sources":["../src/Link.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAA8C,UAAU,EAAkD,MAAM,OAAO,CAAA;AAErI,OAAO,EAAE,MAAM,YAAY,CAAA;AAG3B,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAE7B,OAAO,MAAM,MAAM,oBAAoB,CAAA;AAEvC,MAAM,KAAK,GAAG;IACZ,MAAM,EAAE,MAAM,CAAC,MAAM;IACrB,KAAK,EAAE,MAAM,CAAC,KAAK;IACnB,OAAO,EAAE,MAAM,CAAC,OAAO;CACxB,CAAA;AA8DD;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,IAAI,GAAG,UAAU,CAC5B,CACE,EACE,SAAS,GAAG,GAAG,EACf,IAAI,GAAG,SAAS,EAChB,IAAI,GAAG,QAAQ,EACf,IAAI,GAAG,KAAK,EACZ,IAAI,EACJ,SAAS,EACT,aAAa,EACb,IAAI,EACJ,GAAG,GAAG,UAAU,EAChB,MAAM,GAAG,OAAO,EAChB,IAAI,GAAG,QAAQ,EACf,OAAO,EACP,SAAS,EACT,QAAQ,EACR,WAAW,EAAE,QAAQ,GAAG,MAAM,GAC/B,EACD,GAAG,EACH,EAAE;IACF,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAA;IAEzD,MAAM,WAAW,GAAG;QAClB,SAAS,EAAE,EAAE,CACX,MAAM,CAAC,IAAI,EACX,MAAM,CAAC,IAAI,CAAC,EACZ;YACE,OAAO;YACP,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,IAAI,KAAK,SAAS;YACpC,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,IAAI,KAAK,WAAW;YACxC,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,IAAI,KAAK,UAAU;YACtC,OAAO;YACP,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI;SACpB,EACD,SAAS,CACV;QACD,IAAI,EAAE,IAAI;QACV,OAAO,EAAE,OAAO;KACjB,CAAA;IAED,MAAM,aAAa,GACjB,IAAI,IAAI,SAAS,CAAC,CAAC,CAAC,CAClB,oBAAC,IAAI,IAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,EAAE,SAAS,EAAE,aAAa,GAAI,CAC/H,CAAC,CAAC,CAAC,SAAS,CAAA;IAEf,OAAO,SAAS,KAAK,GAAG,CAAC,CAAC,CAAC,CACzB,8BAAO,WAAW,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,GAA0C,eAAa,QAAQ;QACpH,QAAQ;QACR,aAAa,CACZ,CACL,CAAC,CAAC,CAAC,CACF,mCAAY,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,GAA0C,eAAa,QAAQ;QACtG,QAAQ;QACR,aAAa,CACP,CACV,CAAA;AACH,CAAC,CACF,CAAA;AACD,IAAI,CAAC,WAAW,GAAG,MAAM,CAAA"}
|
package/lib/Link.module.scss
CHANGED
|
@@ -16,6 +16,7 @@
|
|
|
16
16
|
&.focus,
|
|
17
17
|
&:active,
|
|
18
18
|
&.active {
|
|
19
|
+
/* doiuse-disable text-decoration */
|
|
19
20
|
text-decoration: underline solid;
|
|
20
21
|
outline: transparent solid c.$outlineWidth;
|
|
21
22
|
}
|
|
@@ -32,6 +33,10 @@
|
|
|
32
33
|
&.secondary {
|
|
33
34
|
color: c.$colorTextSecondary;
|
|
34
35
|
}
|
|
36
|
+
|
|
37
|
+
&.contrast {
|
|
38
|
+
color: c.$colorNeutralLighter;
|
|
39
|
+
}
|
|
35
40
|
}
|
|
36
41
|
|
|
37
42
|
.link {
|
package/lib/Loader.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { FC, SVGAttributes } from 'react';
|
|
2
|
+
import { DataTestProp } from '@hazelcast/helpers';
|
|
2
3
|
import { IconSize } from './Icon';
|
|
3
4
|
export type LoaderProps = {
|
|
4
5
|
className?: string;
|
|
@@ -7,5 +8,5 @@ export type LoaderProps = {
|
|
|
7
8
|
children?: never;
|
|
8
9
|
ariaLabel?: string;
|
|
9
10
|
role?: string;
|
|
10
|
-
} & Pick<SVGAttributes<SVGElement>, 'aria-hidden'
|
|
11
|
+
} & Pick<SVGAttributes<SVGElement>, 'aria-hidden'> & DataTestProp;
|
|
11
12
|
export declare const Loader: FC<LoaderProps>;
|
package/lib/Loader.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import cn from 'classnames';
|
|
3
3
|
import styles from './Loader.module.scss';
|
|
4
|
-
export const Loader = ({ className, size = 'medium', kind = 'inherit', role = 'img', ariaLabel, ...props }) => (
|
|
4
|
+
export const Loader = ({ className, size = 'medium', kind = 'inherit', role = 'img', ariaLabel, 'data-test': dataTest = 'loader', ...props }) => (
|
|
5
5
|
// https://github.com/feathericons/feather/blob/a718a7e9c39447202f703783336e8ba1c8e32405/icons/loader.svg#L1
|
|
6
6
|
// We cannot use it directly as it has `line` elements not in a sequential order
|
|
7
7
|
// And we need the sequential order to easily calculate animation delay
|
|
8
|
-
React.createElement("svg", { xmlns: "http://www.w3.org/2000/svg", role: role, className: cn(styles.loader, {
|
|
8
|
+
React.createElement("svg", { xmlns: "http://www.w3.org/2000/svg", role: role, "data-test": dataTest, className: cn(styles.loader, {
|
|
9
9
|
[styles.small]: size === 'small',
|
|
10
10
|
[styles.smallMedium]: size === 'smallMedium',
|
|
11
11
|
[styles.medium]: size === 'medium',
|
package/lib/Loader.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Loader.js","sourceRoot":"","sources":["../src/Loader.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4B,MAAM,OAAO,CAAA;AAChD,OAAO,EAAE,MAAM,YAAY,CAAA;
|
|
1
|
+
{"version":3,"file":"Loader.js","sourceRoot":"","sources":["../src/Loader.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4B,MAAM,OAAO,CAAA;AAChD,OAAO,EAAE,MAAM,YAAY,CAAA;AAK3B,OAAO,MAAM,MAAM,sBAAsB,CAAA;AAYzC,MAAM,CAAC,MAAM,MAAM,GAAoB,CAAC,EACtC,SAAS,EACT,IAAI,GAAG,QAAQ,EACf,IAAI,GAAG,SAAS,EAChB,IAAI,GAAG,KAAK,EACZ,SAAS,EACT,WAAW,EAAE,QAAQ,GAAG,QAAQ,EAChC,GAAG,KAAK,EACT,EAAE,EAAE,CAAC;AACJ,4GAA4G;AAC5G,gFAAgF;AAChF,uEAAuE;AACvE,6BACE,KAAK,EAAC,4BAA4B,EAClC,IAAI,EAAE,IAAI,eACC,QAAQ,EACnB,SAAS,EAAE,EAAE,CACX,MAAM,CAAC,MAAM,EACb;QACE,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,IAAI,KAAK,OAAO;QAChC,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,IAAI,KAAK,aAAa;QAC5C,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,KAAK,QAAQ;QAClC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,IAAI,KAAK,OAAO;QAChC,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,KAAK,QAAQ;QAClC,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,IAAI,KAAK,SAAS;QACpC,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,IAAI,KAAK,UAAU;QACtC,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,IAAI,KAAK,SAAS;KACrC,EACD,SAAS,CACV,EACD,OAAO,EAAC,WAAW,EACnB,IAAI,EAAC,MAAM,EACX,MAAM,EAAC,cAAc,EACrB,WAAW,EAAC,GAAG,EACf,aAAa,EAAC,OAAO,EACrB,cAAc,EAAC,OAAO,gBACV,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,aAAa,KAC7C,KAAK;IAET,8BAAM,EAAE,EAAC,IAAI,EAAC,EAAE,EAAC,GAAG,EAAC,EAAE,EAAC,IAAI,EAAC,EAAE,EAAC,GAAG,GAAG;IACtC,8BAAM,EAAE,EAAC,MAAM,EAAC,EAAE,EAAC,MAAM,EAAC,EAAE,EAAC,MAAM,EAAC,EAAE,EAAC,MAAM,GAAG;IAChD,8BAAM,EAAE,EAAC,GAAG,EAAC,EAAE,EAAC,IAAI,EAAC,EAAE,EAAC,GAAG,EAAC,EAAE,EAAC,IAAI,GAAG;IACtC,8BAAM,EAAE,EAAC,MAAM,EAAC,EAAE,EAAC,OAAO,EAAC,EAAE,EAAC,MAAM,EAAC,EAAE,EAAC,OAAO,GAAG;IAClD,8BAAM,EAAE,EAAC,IAAI,EAAC,EAAE,EAAC,IAAI,EAAC,EAAE,EAAC,IAAI,EAAC,EAAE,EAAC,IAAI,GAAG;IACxC,8BAAM,EAAE,EAAC,OAAO,EAAC,EAAE,EAAC,OAAO,EAAC,EAAE,EAAC,OAAO,EAAC,EAAE,EAAC,OAAO,GAAG;IACpD,8BAAM,EAAE,EAAC,IAAI,EAAC,EAAE,EAAC,IAAI,EAAC,EAAE,EAAC,IAAI,EAAC,EAAE,EAAC,IAAI,GAAG;IACxC,8BAAM,EAAE,EAAC,OAAO,EAAC,EAAE,EAAC,MAAM,EAAC,EAAE,EAAC,OAAO,EAAC,EAAE,EAAC,MAAM,GAAG,CAC9C,CACP,CAAA"}
|
package/lib/Modal.js
CHANGED
|
@@ -21,18 +21,18 @@ export const setAppElement = (appElement) => ReactModal.setAppElement(appElement
|
|
|
21
21
|
* - Content beneath the modal is covered by a "blanket".
|
|
22
22
|
* - To close the Modal, use "Cancel" button in the footer, "X" button in the header, press "Esc" key or click anywhere on the "blanket".
|
|
23
23
|
*/
|
|
24
|
-
export const Modal = ({ 'data-test': dataTest, actions, hideActions = false, autoFocus = true, children, className, closable = true, showCloseButton = true, bodyClassName, headerClassName, contentClassName, footerClassName, icon, iconAriaLabel, onClose, overlayClassName, title, ...rest }) => {
|
|
24
|
+
export const Modal = ({ 'data-test': dataTest = 'modal', actions, hideActions = false, autoFocus = true, children, className, closable = true, showCloseButton = true, bodyClassName, headerClassName, contentClassName, footerClassName, icon, iconAriaLabel, onClose, overlayClassName, title, ...rest }) => {
|
|
25
25
|
const shouldAutoFocusCancelButton = useMemo(() => autoFocus && !(actions === null || actions === void 0 ? void 0 : actions.some((action) => action === null || action === void 0 ? void 0 : action.autoFocus)), [autoFocus, actions]);
|
|
26
|
-
return (React.createElement(ReactModal, { portalClassName: styles.portal, className: cn(styles.modal, className), contentLabel: title,
|
|
26
|
+
return (React.createElement(ReactModal, { portalClassName: styles.portal, className: cn(styles.modal, className), contentLabel: title, onRequestClose: onClose, overlayClassName: cn(styles.overlay, overlayClassName), shouldCloseOnEsc: closable, shouldCloseOnOverlayClick: closable, shouldFocusAfterRender: false, shouldReturnFocusAfterClose: true, ...rest },
|
|
27
27
|
React.createElement("div", { className: styles.outline }),
|
|
28
28
|
React.createElement("div", { className: cn(styles.body, bodyClassName) },
|
|
29
29
|
React.createElement("div", { "data-test": "modal-header", className: cn(styles.header, headerClassName) },
|
|
30
30
|
icon && iconAriaLabel && React.createElement(Icon, { "data-test": "modal-header-icon", className: styles.icon, icon: icon, ariaLabel: iconAriaLabel }),
|
|
31
31
|
React.createElement("h3", { "data-test": "modal-header-title", className: styles.title }, title),
|
|
32
32
|
closable && showCloseButton && (
|
|
33
|
-
// Note: Mostly a Dialog use-case. We want it to be closable but we don't want to show an X button in the corner.
|
|
33
|
+
// Note: Mostly a Dialog use-case. We want it to be closable, but we don't want to show an X button in the corner.
|
|
34
34
|
React.createElement("div", { className: styles.close },
|
|
35
|
-
React.createElement(IconButton, { "data-test":
|
|
35
|
+
React.createElement(IconButton, { "data-test": `${dataTest}-button-close`, kind: "transparent", ariaLabel: "Close icon", icon: X, onClick: onClose })))),
|
|
36
36
|
React.createElement("div", { "data-test": "modal-content", className: cn(styles.content, contentClassName) }, children),
|
|
37
37
|
!hideActions && (React.createElement("div", { "data-test": "modal-footer", className: cn(styles.footer, footerClassName) }, actions === null || actions === void 0 ? void 0 :
|
|
38
38
|
actions.map(({ children, ...actionPropsRest }, key) => (React.createElement(Button, { key: key, "data-test": "modal-button-action", ...actionPropsRest }, children))),
|
package/lib/Modal.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Modal.js","sourceRoot":"","sources":["../src/Modal.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAiB,OAAO,EAAE,MAAM,OAAO,CAAA;AACrD,OAAO,UAAwC,MAAM,aAAa,CAAA;AAClE,OAAO,EAAE,MAAM,YAAY,CAAA;AAE3B,OAAO,EAAE,CAAC,EAAE,MAAM,eAAe,CAAA;AAEjC,OAAO,EAAE,MAAM,EAAsC,MAAM,UAAU,CAAA;AACrE,OAAO,EAAE,IAAI,EAAa,MAAM,QAAQ,CAAA;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAEzC,OAAO,MAAM,MAAM,qBAAqB,CAAA;AAExC,8CAA8C;AAC9C,wBAAwB;AACxB,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,UAAgC,EAAE,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,UAAU,CAAC,CAAA;AA0BvG;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,KAAK,GAAmB,CAAC,EACpC,WAAW,EAAE,QAAQ,
|
|
1
|
+
{"version":3,"file":"Modal.js","sourceRoot":"","sources":["../src/Modal.tsx"],"names":[],"mappings":"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"}
|
package/lib/Modal.module.scss
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
@use 'sass:color';
|
|
1
2
|
@use '../styles/constants' as c;
|
|
2
3
|
@use '../styles/helpers' as h;
|
|
3
4
|
|
|
@@ -14,7 +15,7 @@
|
|
|
14
15
|
.overlay {
|
|
15
16
|
width: 100%;
|
|
16
17
|
height: 100%;
|
|
17
|
-
background-color:
|
|
18
|
+
background-color: color.adjust(c.$colorText, $alpha: -0.2);
|
|
18
19
|
pointer-events: all;
|
|
19
20
|
}
|
|
20
21
|
|
package/lib/NumberField.d.ts
CHANGED
|
@@ -14,6 +14,7 @@ export type NumberFieldExtraProps = Omit<TextFieldProps<'number'>, 'onChange' |
|
|
|
14
14
|
step?: number;
|
|
15
15
|
min?: number;
|
|
16
16
|
max?: number;
|
|
17
|
+
disableChangeOnScroll?: boolean;
|
|
17
18
|
defaultValue?: number;
|
|
18
19
|
numberType?: 'int' | 'float';
|
|
19
20
|
iconPosition?: 'separate' | 'together';
|
package/lib/NumberField.js
CHANGED
|
@@ -1,11 +1,27 @@
|
|
|
1
|
-
import React, { useCallback, useMemo } from 'react';
|
|
1
|
+
import React, { useCallback, useMemo, useRef, useEffect } from 'react';
|
|
2
2
|
import { PlusCircle, MinusCircle } from 'react-feather';
|
|
3
3
|
import useIsomorphicLayoutEffect from 'react-use/lib/useIsomorphicLayoutEffect';
|
|
4
4
|
import cn from 'classnames';
|
|
5
5
|
import { TextField } from './TextField';
|
|
6
6
|
import { IconButton } from './IconButton';
|
|
7
7
|
import styles from './NumberField.module.scss';
|
|
8
|
-
export const NumberField = ({ incrementIconAriaLabel = 'Increment', decrementIconAriaLabel = 'Decrement', step = 1, min, max, value, numberType = 'int', iconPosition = 'together', showIconButtons = true, inputClassName, inputContainerClassName, onChange, disabled, size, ...props }) => {
|
|
8
|
+
export const NumberField = ({ incrementIconAriaLabel = 'Increment', decrementIconAriaLabel = 'Decrement', step = 1, min, max, disableChangeOnScroll, value, numberType = 'int', iconPosition = 'together', showIconButtons = true, inputClassName, inputContainerClassName, onChange, disabled, size, 'data-test': dataTest = 'number-field', ...props }) => {
|
|
9
|
+
const field = useRef(null);
|
|
10
|
+
const handleWheel = useCallback((e) => {
|
|
11
|
+
const target = e.target;
|
|
12
|
+
target.blur();
|
|
13
|
+
}, []);
|
|
14
|
+
useEffect(() => {
|
|
15
|
+
if (disableChangeOnScroll) {
|
|
16
|
+
const current = field.current;
|
|
17
|
+
if (current) {
|
|
18
|
+
current.addEventListener('wheel', handleWheel);
|
|
19
|
+
return () => {
|
|
20
|
+
current.removeEventListener('wheel', handleWheel);
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
}, [disableChangeOnScroll, handleWheel]);
|
|
9
25
|
useIsomorphicLayoutEffect(() => {
|
|
10
26
|
if (min !== undefined && value !== undefined && value < min) {
|
|
11
27
|
onChange(min);
|
|
@@ -88,22 +104,23 @@ export const NumberField = ({ incrementIconAriaLabel = 'Increment', decrementIco
|
|
|
88
104
|
[styles.decrementSmall]: size === 'small',
|
|
89
105
|
[styles.decrementIconsSeparate]: iconPosition === 'separate',
|
|
90
106
|
[styles.disabled]: disabled,
|
|
91
|
-
}), onClick: onDecrement, kind: "transparent", "data-test":
|
|
107
|
+
}), onClick: onDecrement, kind: "transparent", "data-test": `${dataTest}-decrement`, type: "button", ...decrementDisabledProps }),
|
|
92
108
|
React.createElement(IconButton, { size: size === 'small' ? 'small' : 'smallMedium', icon: PlusCircle, ariaLabel: incrementIconAriaLabel, className: cn(styles.increment, {
|
|
93
109
|
[styles.disabled]: disabled,
|
|
94
|
-
}), onClick: onIncrement, kind: "transparent", "data-test":
|
|
110
|
+
}), onClick: onIncrement, kind: "transparent", "data-test": `${dataTest}-increment`, type: "button", ...incrementDisabledProps })));
|
|
95
111
|
}, [
|
|
96
112
|
showIconButtons,
|
|
97
|
-
onIncrement,
|
|
98
|
-
onDecrement,
|
|
99
|
-
decrementIconAriaLabel,
|
|
100
|
-
incrementIconAriaLabel,
|
|
101
113
|
value,
|
|
102
|
-
disabled,
|
|
103
114
|
min,
|
|
115
|
+
disabled,
|
|
104
116
|
max,
|
|
105
117
|
size,
|
|
118
|
+
decrementIconAriaLabel,
|
|
106
119
|
iconPosition,
|
|
120
|
+
onDecrement,
|
|
121
|
+
dataTest,
|
|
122
|
+
incrementIconAriaLabel,
|
|
123
|
+
onIncrement,
|
|
107
124
|
]);
|
|
108
125
|
const onChangeWrapped = useCallback(({ target: { value: newValue } }) => {
|
|
109
126
|
let newValueParsed;
|
|
@@ -118,7 +135,7 @@ export const NumberField = ({ incrementIconAriaLabel = 'Increment', decrementIco
|
|
|
118
135
|
}
|
|
119
136
|
onChange(newValueParsed);
|
|
120
137
|
}, [onChange, numberType, min, max]);
|
|
121
|
-
return (React.createElement(TextField, { ...props, value: value, onChange: onChangeWrapped, type: "number", inputContainerChild: overlay, inputContainerClassName: cn(styles.inputContainer, {
|
|
138
|
+
return (React.createElement(TextField, { ...props, ...(disableChangeOnScroll ? { mRef: field } : {}), value: value, "data-test": dataTest, onChange: onChangeWrapped, type: "number", inputContainerChild: overlay, inputContainerClassName: cn(styles.inputContainer, {
|
|
122
139
|
[styles.buttons]: showIconButtons,
|
|
123
140
|
[styles.buttonsIconsSeparate]: iconPosition === 'separate',
|
|
124
141
|
[styles.buttonsRegularIconsSeparate]: iconPosition === 'separate' && size !== 'small',
|