@pingux/astro 2.143.0-alpha.0 → 2.143.0-alpha.2
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/cjs/components/AccordionGridGroup/AccordionGrid.styles.js +1 -2
- package/lib/cjs/components/AccordionGridGroup/AccordionGridGroup.stories.js +86 -5
- package/lib/cjs/components/AccordionGridItem/AccordionGridItemHeader.js +7 -5
- package/lib/cjs/components/AccordionGroup/AccordionGroup.js +5 -3
- package/lib/cjs/components/AccordionGroup/AccordionGroup.stories.js +3 -6
- package/lib/cjs/components/AccordionItem/AccordionItem.js +8 -4
- package/lib/cjs/components/AstroProvider/AstroProvider.js +3 -3
- package/lib/cjs/components/Breadcrumbs/Breadcrumbs.js +6 -2
- package/lib/cjs/components/Button/Button.stories.js +6 -3
- package/lib/cjs/components/Button/Buttons.styles.d.ts +40 -0
- package/lib/cjs/components/Button/Buttons.styles.js +2 -0
- package/lib/cjs/components/CollapsiblePanel/CollapsiblePanel.stories.js +5 -1
- package/lib/cjs/components/CopyText/CopyButton.js +4 -1
- package/lib/cjs/components/CopyText/CopyText.js +2 -1
- package/lib/cjs/components/GridList/GridList.stories.js +0 -1
- package/lib/cjs/components/Icon/Icon.js +2 -1
- package/lib/cjs/components/Icon/Icon.stories.js +1 -1
- package/lib/cjs/components/IconBadge/IconBadge.js +4 -4
- package/lib/cjs/components/IconBadge/IconBadge.stories.js +2 -2
- package/lib/cjs/components/Input/Input.styles.js +3 -0
- package/lib/cjs/components/ListBox/ListBox.js +4 -2
- package/lib/cjs/components/ListBox/Option.js +8 -4
- package/lib/cjs/components/ListView/ListView.stories.js +27 -10
- package/lib/cjs/components/ListView/ListViewItem.js +1 -1
- package/lib/cjs/components/Loader/Loader.js +71 -5
- package/lib/cjs/components/Loader/Loader.stories.js +17 -2
- package/lib/cjs/components/Loader/Loader.styles.d.ts +7 -0
- package/lib/cjs/components/Loader/Loader.styles.js +11 -1
- package/lib/cjs/components/MultivaluesField/CondensedMultivaluesField.js +6 -4
- package/lib/cjs/components/MultivaluesField/DefaultMultivaluesField.js +26 -15
- package/lib/cjs/components/PageHeader/PageHeader.js +5 -2
- package/lib/cjs/components/PanelHeader/PanelHeader.js +43 -10
- package/lib/cjs/components/PanelHeader/PanelHeader.stories.js +9 -4
- package/lib/cjs/components/PanelHeader/PanelHeader.styles.js +5 -0
- package/lib/cjs/components/PanelHeader/PanelHeader.test.js +22 -0
- package/lib/cjs/components/RequirementsList/RequirementsList.js +11 -8
- package/lib/cjs/components/SearchField/SearchAutoComplete.d.ts +3 -0
- package/lib/cjs/components/SearchField/SearchAutoComplete.js +168 -0
- package/lib/cjs/components/SearchField/SearchField.d.ts +2 -2
- package/lib/cjs/components/SearchField/SearchField.js +20 -78
- package/lib/cjs/components/SearchField/SearchField.stories.d.ts +8 -7
- package/lib/cjs/components/SearchField/SearchField.stories.js +43 -3
- package/lib/cjs/components/SearchField/SearchField.test.js +132 -0
- package/lib/cjs/components/SearchField/SearchFieldBase.d.ts +3 -0
- package/lib/cjs/components/SearchField/SearchFieldBase.js +91 -0
- package/lib/cjs/components/Stepper/Step.js +1 -1
- package/lib/cjs/components/Stepper/Stepper.styles.js +1 -0
- package/lib/cjs/components/Switch/Switch.js +12 -2
- package/lib/cjs/components/Switch/Switch.styles.js +1 -1
- package/lib/cjs/components/SwitchField/SwitchField.js +7 -2
- package/lib/cjs/components/Tabs/Tabs.stories.js +23 -7
- package/lib/cjs/components/Text/Text.stories.d.ts +1 -0
- package/lib/cjs/components/Text/Text.stories.js +354 -1
- package/lib/cjs/components/Text/Text.styles.d.ts +10 -0
- package/lib/cjs/components/Text/Text.styles.js +5 -0
- package/lib/cjs/components/TextField/TextField.stories.js +12 -2
- package/lib/cjs/hooks/useCircularLoader/useCircularLoader.d.ts +23 -0
- package/lib/cjs/hooks/useCircularLoader/useCircularLoader.js +80 -0
- package/lib/cjs/hooks/useCircularLoader/useCircularLoader.test.d.ts +1 -0
- package/lib/cjs/hooks/useCircularLoader/useCircularLoader.test.js +136 -0
- package/lib/cjs/hooks/useField/useField.d.ts +6 -6
- package/lib/cjs/hooks/useGetTheme/useGetTheme.d.ts +75 -0
- package/lib/cjs/hooks/usePagination/usePagination.d.ts +4 -4
- package/lib/cjs/styles/colors.d.ts +6 -0
- package/lib/cjs/styles/colors.js +4 -1
- package/lib/cjs/styles/themeOverrides/nextGenDarkMode/colors.d.ts +36 -0
- package/lib/cjs/styles/themeOverrides/nextGenDarkMode/colors.js +23 -2
- package/lib/cjs/styles/themeOverrides/nextGenDarkMode/customProperties/icons.d.ts +5 -0
- package/lib/cjs/styles/themeOverrides/nextGenDarkMode/customProperties/index.d.ts +17 -0
- package/lib/cjs/styles/themeOverrides/nextGenDarkMode/customProperties/index.js +7 -1
- package/lib/cjs/styles/themeOverrides/nextGenDarkMode/variants/buttons.d.ts +66 -0
- package/lib/cjs/styles/themeOverrides/nextGenDarkMode/variants/buttons.js +18 -0
- package/lib/cjs/styles/themeOverrides/nextGenDarkMode/variants/forms.d.ts +15 -0
- package/lib/cjs/styles/themeOverrides/nextGenDarkMode/variants/forms.js +18 -1
- package/lib/cjs/styles/themeOverrides/nextGenDarkMode/variants/input.d.ts +0 -8
- package/lib/cjs/styles/themeOverrides/nextGenDarkMode/variants/input.js +9 -9
- package/lib/cjs/styles/themeOverrides/nextGenDarkMode/variants/links.d.ts +14 -0
- package/lib/cjs/styles/themeOverrides/nextGenDarkMode/variants/links.js +15 -0
- package/lib/cjs/styles/themeOverrides/nextGenDarkMode/variants/variants.d.ts +5 -0
- package/lib/cjs/styles/themeOverrides/nextGenDarkMode/variants/variants.js +5 -0
- package/lib/cjs/styles/themes/astro/customProperties/icons.d.ts +5 -0
- package/lib/cjs/styles/themes/astro/customProperties/icons.js +11 -4
- package/lib/cjs/styles/themes/astro/customProperties/index.d.ts +18 -0
- package/lib/cjs/styles/themes/astro/customProperties/index.js +26 -1
- package/lib/cjs/styles/themes/next-gen/codeView/codeView.d.ts +2 -0
- package/lib/cjs/styles/themes/next-gen/codeView/codeView.js +4 -2
- package/lib/cjs/styles/themes/next-gen/colors/colors.d.ts +37 -0
- package/lib/cjs/styles/themes/next-gen/colors/colors.js +5 -2
- package/lib/cjs/styles/themes/next-gen/colors/iconWrapper.js +14 -35
- package/lib/cjs/styles/themes/next-gen/colors/twoTone.d.ts +37 -0
- package/lib/cjs/styles/themes/next-gen/colors/twoTone.js +46 -0
- package/lib/cjs/styles/themes/next-gen/convertedComponentList.d.ts +4 -1
- package/lib/cjs/styles/themes/next-gen/convertedComponentList.js +6 -3
- package/lib/cjs/styles/themes/next-gen/customProperties/customSizes.d.ts +10 -0
- package/lib/cjs/styles/themes/next-gen/customProperties/customSizes.js +22 -0
- package/lib/cjs/styles/themes/next-gen/customProperties/icons.d.ts +5 -0
- package/lib/cjs/styles/themes/next-gen/customProperties/icons.js +10 -3
- package/lib/cjs/styles/themes/next-gen/customProperties/index.d.ts +17 -0
- package/lib/cjs/styles/themes/next-gen/customProperties/index.js +26 -4
- package/lib/cjs/styles/themes/next-gen/customProperties/tShirtSizes.js +4 -4
- package/lib/cjs/styles/themes/next-gen/forms.d.ts +42 -0
- package/lib/cjs/styles/themes/next-gen/forms.js +5 -0
- package/lib/cjs/styles/themes/next-gen/next-gen.d.ts +1151 -857
- package/lib/cjs/styles/themes/next-gen/next-gen.js +1 -1
- package/lib/cjs/styles/themes/next-gen/text.js +2 -2
- package/lib/cjs/styles/themes/next-gen/variants/accordion.d.ts +16 -0
- package/lib/cjs/styles/themes/next-gen/variants/accordion.js +26 -0
- package/lib/cjs/styles/themes/next-gen/variants/badges.d.ts +0 -17
- package/lib/cjs/styles/themes/next-gen/variants/badges.js +1 -3
- package/lib/cjs/styles/themes/next-gen/variants/button.d.ts +151 -105
- package/lib/cjs/styles/themes/next-gen/variants/button.js +38 -7
- package/lib/cjs/styles/themes/next-gen/variants/cards.js +1 -1
- package/lib/cjs/styles/themes/next-gen/variants/input.js +16 -5
- package/lib/cjs/styles/themes/next-gen/variants/label.js +5 -3
- package/lib/cjs/styles/themes/next-gen/variants/links.d.ts +4 -2
- package/lib/cjs/styles/themes/next-gen/variants/listview.js +1 -1
- package/lib/cjs/styles/themes/next-gen/variants/panelHeader.d.ts +16 -0
- package/lib/cjs/styles/themes/next-gen/variants/panelHeader.js +26 -0
- package/lib/cjs/styles/themes/next-gen/variants/stepper.d.ts +66 -0
- package/lib/cjs/styles/themes/next-gen/variants/stepper.js +74 -0
- package/lib/cjs/styles/themes/next-gen/variants/switch.d.ts +36 -0
- package/lib/cjs/styles/themes/next-gen/variants/switch.js +44 -0
- package/lib/cjs/styles/themes/next-gen/variants/text.d.ts +62 -0
- package/lib/cjs/styles/themes/next-gen/variants/text.js +67 -7
- package/lib/cjs/styles/themes/next-gen/variants/variants.d.ts +900 -743
- package/lib/cjs/styles/themes/next-gen/variants/variants.js +88 -38
- package/lib/cjs/types/listBox.d.ts +2 -0
- package/lib/cjs/types/loader.d.ts +5 -2
- package/lib/cjs/types/searchField.d.ts +11 -1
- package/lib/cjs/types/shared/style.d.ts +2 -0
- package/lib/components/AccordionGridGroup/AccordionGrid.styles.js +1 -2
- package/lib/components/AccordionGridGroup/AccordionGridGroup.stories.js +86 -5
- package/lib/components/AccordionGridItem/AccordionGridItemHeader.js +6 -4
- package/lib/components/AccordionGroup/AccordionGroup.js +5 -3
- package/lib/components/AccordionGroup/AccordionGroup.stories.js +3 -6
- package/lib/components/AccordionItem/AccordionItem.js +8 -4
- package/lib/components/AstroProvider/AstroProvider.js +3 -3
- package/lib/components/Breadcrumbs/Breadcrumbs.js +7 -3
- package/lib/components/Button/Button.stories.js +4 -1
- package/lib/components/Button/Buttons.styles.js +2 -0
- package/lib/components/CollapsiblePanel/CollapsiblePanel.stories.js +5 -1
- package/lib/components/CopyText/CopyButton.js +4 -1
- package/lib/components/CopyText/CopyText.js +2 -1
- package/lib/components/GridList/GridList.stories.js +0 -1
- package/lib/components/Icon/Icon.js +2 -1
- package/lib/components/Icon/Icon.stories.js +1 -1
- package/lib/components/IconBadge/IconBadge.js +4 -4
- package/lib/components/IconBadge/IconBadge.stories.js +2 -2
- package/lib/components/Input/Input.styles.js +3 -0
- package/lib/components/ListBox/ListBox.js +4 -2
- package/lib/components/ListBox/Option.js +8 -4
- package/lib/components/ListView/ListView.stories.js +28 -11
- package/lib/components/ListView/ListViewItem.js +1 -1
- package/lib/components/Loader/Loader.js +71 -3
- package/lib/components/Loader/Loader.stories.js +13 -0
- package/lib/components/Loader/Loader.styles.js +11 -1
- package/lib/components/MultivaluesField/CondensedMultivaluesField.js +6 -4
- package/lib/components/MultivaluesField/DefaultMultivaluesField.js +27 -16
- package/lib/components/PageHeader/PageHeader.js +5 -2
- package/lib/components/PanelHeader/PanelHeader.js +44 -11
- package/lib/components/PanelHeader/PanelHeader.stories.js +9 -4
- package/lib/components/PanelHeader/PanelHeader.styles.js +5 -0
- package/lib/components/PanelHeader/PanelHeader.test.js +23 -1
- package/lib/components/RequirementsList/RequirementsList.js +7 -4
- package/lib/components/SearchField/SearchAutoComplete.js +156 -0
- package/lib/components/SearchField/SearchField.js +18 -78
- package/lib/components/SearchField/SearchField.stories.js +41 -3
- package/lib/components/SearchField/SearchField.test.js +132 -0
- package/lib/components/SearchField/SearchFieldBase.js +79 -0
- package/lib/components/Stepper/Step.js +1 -1
- package/lib/components/Stepper/Stepper.styles.js +1 -0
- package/lib/components/Switch/Switch.js +12 -2
- package/lib/components/Switch/Switch.styles.js +1 -1
- package/lib/components/SwitchField/SwitchField.js +7 -2
- package/lib/components/Tabs/Tabs.stories.js +23 -7
- package/lib/components/Text/Text.stories.js +352 -0
- package/lib/components/Text/Text.styles.js +5 -0
- package/lib/components/TextField/TextField.stories.js +12 -2
- package/lib/hooks/useCircularLoader/useCircularLoader.js +71 -0
- package/lib/hooks/useCircularLoader/useCircularLoader.test.js +129 -0
- package/lib/styles/colors.js +4 -1
- package/lib/styles/themeOverrides/nextGenDarkMode/colors.js +23 -2
- package/lib/styles/themeOverrides/nextGenDarkMode/customProperties/index.js +7 -1
- package/lib/styles/themeOverrides/nextGenDarkMode/variants/buttons.js +18 -0
- package/lib/styles/themeOverrides/nextGenDarkMode/variants/forms.js +18 -1
- package/lib/styles/themeOverrides/nextGenDarkMode/variants/input.js +9 -9
- package/lib/styles/themeOverrides/nextGenDarkMode/variants/links.js +15 -0
- package/lib/styles/themeOverrides/nextGenDarkMode/variants/variants.js +5 -0
- package/lib/styles/themes/astro/customProperties/icons.js +12 -5
- package/lib/styles/themes/astro/customProperties/index.js +26 -1
- package/lib/styles/themes/next-gen/codeView/codeView.js +4 -2
- package/lib/styles/themes/next-gen/colors/colors.js +5 -2
- package/lib/styles/themes/next-gen/colors/iconWrapper.js +14 -35
- package/lib/styles/themes/next-gen/colors/twoTone.js +38 -0
- package/lib/styles/themes/next-gen/convertedComponentList.js +6 -3
- package/lib/styles/themes/next-gen/customProperties/customSizes.js +14 -0
- package/lib/styles/themes/next-gen/customProperties/icons.js +10 -3
- package/lib/styles/themes/next-gen/customProperties/index.js +26 -2
- package/lib/styles/themes/next-gen/customProperties/tShirtSizes.js +4 -4
- package/lib/styles/themes/next-gen/forms.js +5 -0
- package/lib/styles/themes/next-gen/next-gen.js +1 -1
- package/lib/styles/themes/next-gen/text.js +2 -2
- package/lib/styles/themes/next-gen/variants/accordion.js +18 -0
- package/lib/styles/themes/next-gen/variants/badges.js +1 -3
- package/lib/styles/themes/next-gen/variants/button.js +38 -7
- package/lib/styles/themes/next-gen/variants/cards.js +1 -1
- package/lib/styles/themes/next-gen/variants/input.js +16 -5
- package/lib/styles/themes/next-gen/variants/label.js +5 -3
- package/lib/styles/themes/next-gen/variants/listview.js +1 -1
- package/lib/styles/themes/next-gen/variants/panelHeader.js +18 -0
- package/lib/styles/themes/next-gen/variants/stepper.js +66 -0
- package/lib/styles/themes/next-gen/variants/switch.js +36 -0
- package/lib/styles/themes/next-gen/variants/text.js +67 -7
- package/lib/styles/themes/next-gen/variants/variants.js +82 -37
- package/package.json +2 -1
@@ -69,4 +69,17 @@ export var CustomSize = function CustomSize(args) {
|
|
69
69
|
return ___EmotionJSX(Loader, _extends({}, args, {
|
70
70
|
size: 32
|
71
71
|
}));
|
72
|
+
};
|
73
|
+
export var Circular = function Circular(args) {
|
74
|
+
return ___EmotionJSX(Loader, _extends({}, args, {
|
75
|
+
size: 120,
|
76
|
+
isCircle: true
|
77
|
+
}));
|
78
|
+
};
|
79
|
+
export var CustomCircular = function CustomCircular(args) {
|
80
|
+
return ___EmotionJSX(Loader, _extends({}, args, {
|
81
|
+
size: "lg",
|
82
|
+
isCircle: true,
|
83
|
+
strokeColor: "magenta"
|
84
|
+
}));
|
72
85
|
};
|
@@ -8,7 +8,7 @@ import _Object$defineProperties from "@babel/runtime-corejs3/core-js-stable/obje
|
|
8
8
|
import _Object$defineProperty from "@babel/runtime-corejs3/core-js-stable/object/define-property";
|
9
9
|
import _defineProperty from "@babel/runtime-corejs3/helpers/esm/defineProperty";
|
10
10
|
import _taggedTemplateLiteral from "@babel/runtime-corejs3/helpers/esm/taggedTemplateLiteral";
|
11
|
-
var _templateObject, _templateObject2, _context, _context2, _context3, _context4, _context5;
|
11
|
+
var _templateObject, _templateObject2, _context, _context2, _context3, _context4, _context5, _templateObject3;
|
12
12
|
import _concatInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/concat";
|
13
13
|
function ownKeys(object, enumerableOnly) { var keys = _Object$keys(object); if (_Object$getOwnPropertySymbols) { var symbols = _Object$getOwnPropertySymbols(object); enumerableOnly && (symbols = _filterInstanceProperty(symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
14
14
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var _context6, _context7; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty(_context6 = ownKeys(Object(source), !0)).call(_context6, function (key) { _defineProperty(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(target, _Object$getOwnPropertyDescriptors(source)) : _forEachInstanceProperty(_context7 = ownKeys(Object(source))).call(_context7, function (key) { _Object$defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } return target; }
|
@@ -56,7 +56,17 @@ var dotCenter = _objectSpread(_objectSpread({}, dot), {}, {
|
|
56
56
|
var dotRight = _objectSpread(_objectSpread({}, dot), {}, {
|
57
57
|
animation: _concatInstanceProperty(_context4 = _concatInstanceProperty(_context5 = "".concat(wait, " 0.4s, ")).call(_context5, pulse, " ")).call(_context4, animationSettings, " 0.4s")
|
58
58
|
});
|
59
|
+
var spin = keyframes(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n"])));
|
60
|
+
var circleContainer = {
|
61
|
+
justifyContent: 'center',
|
62
|
+
alignItems: 'center'
|
63
|
+
};
|
64
|
+
var circleSpinner = {
|
65
|
+
animation: "".concat(spin, " .75s linear infinite")
|
66
|
+
};
|
59
67
|
export default {
|
68
|
+
circleContainer: circleContainer,
|
69
|
+
circleSpinner: circleSpinner,
|
60
70
|
dotLeft: dotLeft,
|
61
71
|
dotCenter: dotCenter,
|
62
72
|
dotRight: dotRight,
|
@@ -20,8 +20,6 @@ import _reduceInstanceProperty from "@babel/runtime-corejs3/core-js-stable/insta
|
|
20
20
|
import _flatMapInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/flat-map";
|
21
21
|
import React, { forwardRef, useCallback, useEffect, useImperativeHandle, useRef, useState } from 'react';
|
22
22
|
import { DismissButton, FocusScope, mergeProps, useOverlayPosition } from 'react-aria';
|
23
|
-
import MenuDown from '@pingux/mdi-react/MenuDownIcon';
|
24
|
-
import MenuUp from '@pingux/mdi-react/MenuUpIcon';
|
25
23
|
import { useFilter } from '@react-aria/i18n';
|
26
24
|
import { useFocusWithin } from '@react-aria/interactions';
|
27
25
|
import { useLayoutEffect, useResizeObserver } from '@react-aria/utils';
|
@@ -30,7 +28,7 @@ import { useListState } from '@react-stately/list';
|
|
30
28
|
import PropTypes from 'prop-types';
|
31
29
|
import { Box, Button, Icon, Loader, PopoverContainer, ScrollBox, Text, TextField } from '../..';
|
32
30
|
import { MultivaluesContext } from '../../context/MultivaluesContext';
|
33
|
-
import { useInputLoader, usePropWarning } from '../../hooks';
|
31
|
+
import { useGetTheme, useInputLoader, usePropWarning } from '../../hooks';
|
34
32
|
import loadingStates from '../../utils/devUtils/constants/loadingStates';
|
35
33
|
import { getPendoID } from '../../utils/devUtils/constants/pendoID';
|
36
34
|
import { isIterableProp } from '../../utils/devUtils/props/isIterable';
|
@@ -100,6 +98,10 @@ var CondensedMultivaluesField = /*#__PURE__*/forwardRef(function (props, ref) {
|
|
100
98
|
var inputWrapperRef = useRef();
|
101
99
|
var inputRef = useRef();
|
102
100
|
var buttonRef = useRef();
|
101
|
+
var _useGetTheme = useGetTheme(),
|
102
|
+
icons = _useGetTheme.icons;
|
103
|
+
var MenuDown = icons.MenuDown,
|
104
|
+
MenuUp = icons.MenuUp;
|
103
105
|
var _useFocusWithin = useFocusWithin({
|
104
106
|
onFocusWithinChange: setFocusWithin
|
105
107
|
}),
|
@@ -302,7 +304,7 @@ var CondensedMultivaluesField = /*#__PURE__*/forwardRef(function (props, ref) {
|
|
302
304
|
var listbox = ___EmotionJSX(FocusScope, null, filterString === '' && !hasNoSelectAll && ___EmotionJSX(Button, {
|
303
305
|
onPress: handleSelection,
|
304
306
|
ref: buttonRef,
|
305
|
-
variant: "
|
307
|
+
variant: "listBoxLink",
|
306
308
|
mt: "sm",
|
307
309
|
ml: "14px",
|
308
310
|
sx: {
|
@@ -32,7 +32,7 @@ import { useListState } from '@react-stately/list';
|
|
32
32
|
import PropTypes from 'prop-types';
|
33
33
|
import { Badge, Box, Icon, IconButton, Loader, PopoverContainer, ScrollBox, Text, TextField } from '../..';
|
34
34
|
import { MultivaluesContext } from '../../context/MultivaluesContext';
|
35
|
-
import { useInputLoader, usePropWarning } from '../../hooks';
|
35
|
+
import { useGetTheme, useInputLoader, usePropWarning } from '../../hooks';
|
36
36
|
import loadingStates from '../../utils/devUtils/constants/loadingStates';
|
37
37
|
import { getPendoID } from '../../utils/devUtils/constants/pendoID';
|
38
38
|
import { isIterableProp } from '../../utils/devUtils/props/isIterable';
|
@@ -100,6 +100,9 @@ var DefaultMultivaluesField = /*#__PURE__*/forwardRef(function (props, ref) {
|
|
100
100
|
_useState10 = _slicedToArray(_useState9, 2),
|
101
101
|
activeDescendant = _useState10[0],
|
102
102
|
setActiveDescendant = _useState10[1];
|
103
|
+
var _useGetTheme = useGetTheme(),
|
104
|
+
themeState = _useGetTheme.themeState;
|
105
|
+
var isOnyx = themeState.isOnyx;
|
103
106
|
useEffect(function () {
|
104
107
|
if (mode !== 'non-restrictive') {
|
105
108
|
setItems(initialItems);
|
@@ -334,6 +337,15 @@ var DefaultMultivaluesField = /*#__PURE__*/forwardRef(function (props, ref) {
|
|
334
337
|
inputRef.current.focus();
|
335
338
|
}
|
336
339
|
};
|
340
|
+
var readOnlyFieldBadge = function readOnlyFieldBadge(key, name) {
|
341
|
+
return ___EmotionJSX(Badge, {
|
342
|
+
key: key,
|
343
|
+
label: name,
|
344
|
+
variant: "readOnlyFieldBadge",
|
345
|
+
bg: "gray-700",
|
346
|
+
tabIndex: 0
|
347
|
+
});
|
348
|
+
};
|
337
349
|
var readOnlyTextItem = function readOnlyTextItem(key, name) {
|
338
350
|
return ___EmotionJSX(Text, {
|
339
351
|
key: key,
|
@@ -362,6 +374,12 @@ var DefaultMultivaluesField = /*#__PURE__*/forwardRef(function (props, ref) {
|
|
362
374
|
}) : _mapInstanceProperty(initialItems).call(initialItems, function (item) {
|
363
375
|
return readOnlyTextItem(item.key, item.name);
|
364
376
|
}));
|
377
|
+
var onyxReadOnlyInputEntry = isReadOnly && ___EmotionJSX(Box, {
|
378
|
+
isRow: true,
|
379
|
+
gap: "xs"
|
380
|
+
}, _mapInstanceProperty(initialItems).call(initialItems, function (item) {
|
381
|
+
return readOnlyFieldBadge(item.key, item.name);
|
382
|
+
}));
|
365
383
|
var readOnlyItems = !isReadOnly && _mapInstanceProperty(readOnlyKeys).call(readOnlyKeys, function (key) {
|
366
384
|
var item = _findInstanceProperty(initialItems).call(initialItems, function (el) {
|
367
385
|
return el.key === key;
|
@@ -371,13 +389,6 @@ var DefaultMultivaluesField = /*#__PURE__*/forwardRef(function (props, ref) {
|
|
371
389
|
key: item.key,
|
372
390
|
label: item.name,
|
373
391
|
variant: "readOnlyBadge",
|
374
|
-
bg: "white",
|
375
|
-
textProps: {
|
376
|
-
sx: {
|
377
|
-
color: 'text.primary',
|
378
|
-
tabIndex: '-1'
|
379
|
-
}
|
380
|
-
},
|
381
392
|
as: "li",
|
382
393
|
tabIndex: 0
|
383
394
|
});
|
@@ -409,7 +420,6 @@ var DefaultMultivaluesField = /*#__PURE__*/forwardRef(function (props, ref) {
|
|
409
420
|
"aria-describedby": "selectedKeysState"
|
410
421
|
}, item.buttonProps), ___EmotionJSX(Icon, {
|
411
422
|
icon: Clear,
|
412
|
-
color: "white",
|
413
423
|
size: 14,
|
414
424
|
title: {
|
415
425
|
name: 'Clear Icon'
|
@@ -468,6 +478,9 @@ var DefaultMultivaluesField = /*#__PURE__*/forwardRef(function (props, ref) {
|
|
468
478
|
if (!hasCustomValue) setFilterString('');
|
469
479
|
};
|
470
480
|
var inputProps = _objectSpread(_objectSpread({}, customInputProps), {}, {
|
481
|
+
containerProps: _objectSpread(_objectSpread({}, containerProps), {}, {
|
482
|
+
variant: 'forms.input.multivaluesFieldContainer'
|
483
|
+
}),
|
471
484
|
controlProps: {
|
472
485
|
'aria-activedescendant': activeDescendant,
|
473
486
|
'aria-controls': (_listBoxRef$current2 = listBoxRef.current) === null || _listBoxRef$current2 === void 0 ? void 0 : _listBoxRef$current2.id,
|
@@ -484,11 +497,7 @@ var DefaultMultivaluesField = /*#__PURE__*/forwardRef(function (props, ref) {
|
|
484
497
|
placeholder: placeholder,
|
485
498
|
wrapperProps: {
|
486
499
|
ref: inputWrapperRef,
|
487
|
-
variant: 'forms.input.multivaluesWrapper'
|
488
|
-
sx: isReadOnly && {
|
489
|
-
boxShadow: 'inset 0 0 0 100px #e5e9f8',
|
490
|
-
border: 'none'
|
491
|
-
}
|
500
|
+
variant: 'forms.input.multivaluesWrapper'
|
492
501
|
},
|
493
502
|
status: status
|
494
503
|
});
|
@@ -502,7 +511,9 @@ var DefaultMultivaluesField = /*#__PURE__*/forwardRef(function (props, ref) {
|
|
502
511
|
}));
|
503
512
|
return ___EmotionJSX(MultivaluesContext.Provider, {
|
504
513
|
value: setActiveDescendant
|
505
|
-
}, ___EmotionJSX(Box,
|
514
|
+
}, ___EmotionJSX(Box, _extends({}, containerProps, {
|
515
|
+
id: "cont"
|
516
|
+
}), ___EmotionJSX(TextField, _extends({
|
506
517
|
onBlur: handleBlur,
|
507
518
|
onChange: function onChange(e) {
|
508
519
|
if (!isOpen) setIsOpen(true);
|
@@ -536,7 +547,7 @@ var DefaultMultivaluesField = /*#__PURE__*/forwardRef(function (props, ref) {
|
|
536
547
|
p: 0,
|
537
548
|
flexWrap: 'wrap'
|
538
549
|
}
|
539
|
-
}, selectedItems), readOnlyInputEntry, selectionManager.selectedKeys.size > 0 && visuallyHidden)
|
550
|
+
}, selectedItems), isOnyx ? onyxReadOnlyInputEntry : readOnlyInputEntry, selectionManager.selectedKeys.size > 0 && visuallyHidden)
|
540
551
|
} // eslint-disable-line
|
541
552
|
,
|
542
553
|
value: filterString,
|
@@ -4,6 +4,7 @@ var _excluded = ["buttonProps", "children", "title"];
|
|
4
4
|
import React, { forwardRef } from 'react';
|
5
5
|
import PlusIcon from '@pingux/mdi-react/PlusIcon';
|
6
6
|
import PropTypes from 'prop-types';
|
7
|
+
import { useGetTheme } from '../../hooks';
|
7
8
|
import { Box, Icon, IconButton, Text } from '../../index';
|
8
9
|
import { jsx as ___EmotionJSX } from "@emotion/react";
|
9
10
|
var PageHeader = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
@@ -16,6 +17,8 @@ var PageHeader = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
16
17
|
fontSize: 'sm'
|
17
18
|
}
|
18
19
|
};
|
20
|
+
var _useGetTheme = useGetTheme(),
|
21
|
+
pageHeaderTitleMargin = _useGetTheme.pageHeaderTitleMargin;
|
19
22
|
var renderButton = buttonProps && ___EmotionJSX(IconButton, _extends({
|
20
23
|
"aria-label": "icon button",
|
21
24
|
ml: "sm",
|
@@ -28,12 +31,12 @@ var PageHeader = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
28
31
|
ref: ref
|
29
32
|
}, other), ___EmotionJSX(Box, {
|
30
33
|
isRow: true,
|
31
|
-
mb:
|
34
|
+
mb: pageHeaderTitleMargin
|
32
35
|
}, ___EmotionJSX(Text, {
|
33
36
|
as: "h1",
|
34
37
|
variant: "H1"
|
35
38
|
}, title), renderButton), ___EmotionJSX(Text, {
|
36
|
-
variant: "
|
39
|
+
variant: "pageHeaderBody",
|
37
40
|
sx: linkStyles
|
38
41
|
}, children));
|
39
42
|
});
|
@@ -1,7 +1,7 @@
|
|
1
1
|
import _defineProperty from "@babel/runtime-corejs3/helpers/esm/defineProperty";
|
2
2
|
import _extends from "@babel/runtime-corejs3/helpers/esm/extends";
|
3
3
|
import _objectWithoutProperties from "@babel/runtime-corejs3/helpers/esm/objectWithoutProperties";
|
4
|
-
var _excluded = ["children", "className", "data", "slots"];
|
4
|
+
var _excluded = ["avatarProps", "children", "className", "data", "headerProps", "headerWrapperProps", "slots", "subtextProps"];
|
5
5
|
function ownKeys(object, enumerableOnly) { var keys = _Object$keys(object); if (_Object$getOwnPropertySymbols) { var symbols = _Object$getOwnPropertySymbols(object); enumerableOnly && (symbols = _filterInstanceProperty(symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
6
6
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var _context2, _context3; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty(_context2 = ownKeys(Object(source), !0)).call(_context2, function (key) { _defineProperty(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(target, _Object$getOwnPropertyDescriptors(source)) : _forEachInstanceProperty(_context3 = ownKeys(Object(source))).call(_context3, function (key) { _Object$defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } return target; }
|
7
7
|
import _concatInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/concat";
|
@@ -15,21 +15,30 @@ import _Object$defineProperties from "@babel/runtime-corejs3/core-js-stable/obje
|
|
15
15
|
import _Object$defineProperty from "@babel/runtime-corejs3/core-js-stable/object/define-property";
|
16
16
|
import React, { forwardRef } from 'react';
|
17
17
|
import PropTypes from 'prop-types';
|
18
|
-
import {
|
18
|
+
import { useGetTheme } from '../../hooks';
|
19
|
+
import { Avatar, Box, Icon, Image, Text } from '../../index';
|
19
20
|
import { SharedItemPropTypes } from '../ListViewItem/listViewItemAttributes';
|
20
21
|
import { jsx as ___EmotionJSX } from "@emotion/react";
|
21
22
|
export var PANEL_HEADER_ICON = '-panel-header-icon';
|
22
23
|
var PanelHeader = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
23
24
|
var _context;
|
24
|
-
var
|
25
|
+
var avatarProps = _ref.avatarProps,
|
26
|
+
children = _ref.children,
|
25
27
|
className = _ref.className,
|
26
28
|
data = _ref.data,
|
29
|
+
headerProps = _ref.headerProps,
|
30
|
+
headerWrapperProps = _ref.headerWrapperProps,
|
27
31
|
slots = _ref.slots,
|
32
|
+
subtextProps = _ref.subtextProps,
|
28
33
|
others = _objectWithoutProperties(_ref, _excluded);
|
29
34
|
var icon = data.icon,
|
30
35
|
image = data.image,
|
31
36
|
subtext = data.subtext,
|
32
|
-
text = data.text
|
37
|
+
text = data.text,
|
38
|
+
avatarDefualtText = data.avatarDefualtText;
|
39
|
+
var _useGetTheme = useGetTheme(),
|
40
|
+
themeState = _useGetTheme.themeState;
|
41
|
+
var isOnyx = themeState.isOnyx;
|
33
42
|
var renderIcon = ___EmotionJSX(Box, {
|
34
43
|
width: "25px",
|
35
44
|
mx: "md"
|
@@ -41,23 +50,47 @@ var PanelHeader = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
41
50
|
name: _concatInstanceProperty(_context = "".concat(text)).call(_context, PANEL_HEADER_ICON)
|
42
51
|
}
|
43
52
|
}));
|
53
|
+
var renderAvatar = ___EmotionJSX(Avatar, _extends({
|
54
|
+
src: image === null || image === void 0 ? void 0 : image.src,
|
55
|
+
size: "avatar.lg",
|
56
|
+
defaultText: avatarDefualtText,
|
57
|
+
mr: "md"
|
58
|
+
}, avatarProps));
|
44
59
|
var renderImage = !icon && image && ___EmotionJSX(Box, {
|
45
|
-
|
46
|
-
mx: "sm"
|
60
|
+
variant: "panelHeader.iconWrapper"
|
47
61
|
}, ___EmotionJSX(Image, {
|
48
62
|
src: image.src,
|
49
63
|
alt: image.alt,
|
50
64
|
"aria-label": image['aria-label']
|
51
65
|
}));
|
66
|
+
var renderLeftContent = function renderLeftContent() {
|
67
|
+
if (slots !== null && slots !== void 0 && slots.leftOfData) {
|
68
|
+
return slots.leftOfData;
|
69
|
+
}
|
70
|
+
if (isOnyx) {
|
71
|
+
return renderAvatar;
|
72
|
+
}
|
73
|
+
if (icon) {
|
74
|
+
return renderIcon;
|
75
|
+
}
|
76
|
+
return renderImage;
|
77
|
+
};
|
78
|
+
var headerPropsSpread = _objectSpread(_objectSpread({}, headerProps), isOnyx && {
|
79
|
+
variant: 'H4',
|
80
|
+
as: 'h4'
|
81
|
+
});
|
82
|
+
var headerWrapperPropsSpread = _objectSpread(_objectSpread({}, headerWrapperProps), {}, {
|
83
|
+
variant: 'panelHeader.wrapper',
|
84
|
+
py: 'sm'
|
85
|
+
}, isOnyx && {
|
86
|
+
gap: 'xs'
|
87
|
+
});
|
52
88
|
var renderData = ___EmotionJSX(Box, {
|
53
89
|
isRow: true,
|
54
90
|
variant: text || subtext ? 'panelHeader.data' : 'panelHeader.emptyData'
|
55
|
-
},
|
56
|
-
variant: "panelHeader.wrapper",
|
57
|
-
py: "sm"
|
58
|
-
}, text && ___EmotionJSX(Text, {
|
91
|
+
}, renderLeftContent(), ___EmotionJSX(Box, headerWrapperPropsSpread, text && ___EmotionJSX(Text, _extends({}, headerPropsSpread, {
|
59
92
|
variant: "panelHeaderText"
|
60
|
-
}, text), subtext && ___EmotionJSX(Text, {
|
93
|
+
}), text), subtext && ___EmotionJSX(Text, {
|
61
94
|
variant: "panelHeaderSubtext"
|
62
95
|
}, subtext)));
|
63
96
|
return ___EmotionJSX(Box, _extends({
|
@@ -27,7 +27,8 @@ export var Default = function Default(_ref) {
|
|
27
27
|
return ___EmotionJSX(PanelHeader, _extends({}, args, {
|
28
28
|
data: {
|
29
29
|
icon: AccountIcon,
|
30
|
-
text: 'Fons Vernall'
|
30
|
+
text: 'Fons Vernall',
|
31
|
+
avatarDefualtText: 'FV'
|
31
32
|
}
|
32
33
|
}));
|
33
34
|
};
|
@@ -43,7 +44,8 @@ export var WithSubtext = function WithSubtext(_ref2) {
|
|
43
44
|
data: {
|
44
45
|
icon: AccountIcon,
|
45
46
|
subtext: 'rad_developer@pingidentity.com',
|
46
|
-
text: 'Fons Vernall'
|
47
|
+
text: 'Fons Vernall',
|
48
|
+
avatarDefualtText: 'FV'
|
47
49
|
}
|
48
50
|
}));
|
49
51
|
};
|
@@ -59,7 +61,8 @@ export var WithControls = function WithControls(_ref3) {
|
|
59
61
|
data: {
|
60
62
|
icon: AccountIcon,
|
61
63
|
text: 'Fons Vernall',
|
62
|
-
subtext: 'rad_developer@pingidentity.com'
|
64
|
+
subtext: 'rad_developer@pingidentity.com',
|
65
|
+
avatarDefualtText: 'FV'
|
63
66
|
}
|
64
67
|
}), ___EmotionJSX(PanelHeaderSwitchField, null), ___EmotionJSX(PanelHeaderMenu, null, ___EmotionJSX(Item, {
|
65
68
|
key: "enable"
|
@@ -81,7 +84,8 @@ export var WithImage = function WithImage(args) {
|
|
81
84
|
image: {
|
82
85
|
src: pingImg,
|
83
86
|
alt: 'Ping Identity Logo',
|
84
|
-
'aria-label': 'Ping Identity Logo'
|
87
|
+
'aria-label': 'Ping Identity Logo',
|
88
|
+
avatarDefualtText: 'FV'
|
85
89
|
},
|
86
90
|
text: 'Fons Vernall'
|
87
91
|
}
|
@@ -139,6 +143,7 @@ export var WithExtraLongText = function WithExtraLongText(_ref4) {
|
|
139
143
|
var args = _extends({}, (_objectDestructuringEmpty(_ref4), _ref4));
|
140
144
|
return ___EmotionJSX(PanelHeader, _extends({}, args, {
|
141
145
|
data: {
|
146
|
+
avatarDefualtText: 'FV',
|
142
147
|
icon: AccountIcon,
|
143
148
|
text: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum',
|
144
149
|
subtext: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum'
|
@@ -40,11 +40,16 @@ var wrapper = {
|
|
40
40
|
var rightOfData = {
|
41
41
|
alignSelf: 'center'
|
42
42
|
};
|
43
|
+
var iconWrapper = {
|
44
|
+
width: '25px',
|
45
|
+
mx: 'md'
|
46
|
+
};
|
43
47
|
export default {
|
44
48
|
container: container,
|
45
49
|
controls: controls,
|
46
50
|
data: data,
|
47
51
|
emptyData: emptyData,
|
52
|
+
iconWrapper: iconWrapper,
|
48
53
|
rightOfData: rightOfData,
|
49
54
|
wrapper: wrapper
|
50
55
|
};
|
@@ -14,7 +14,7 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
|
|
14
14
|
import React from 'react';
|
15
15
|
import AccountIcon from '@pingux/mdi-react/AccountIcon';
|
16
16
|
import { act } from '@testing-library/react';
|
17
|
-
import { PanelHeader, PanelHeaderSwitchField } from '../../index';
|
17
|
+
import { AstroProvider, OnyxTheme, PanelHeader, PanelHeaderSwitchField } from '../../index';
|
18
18
|
import { pingImg } from '../../utils/devUtils/constants/images';
|
19
19
|
import { render, screen } from '../../utils/testUtils/testWrapper';
|
20
20
|
import { universalComponentTests } from '../../utils/testUtils/universalComponentTest';
|
@@ -36,6 +36,12 @@ var getComponent = function getComponent() {
|
|
36
36
|
var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
37
37
|
return render(___EmotionJSX(PanelHeader, _extends({}, defaultProps, props)));
|
38
38
|
};
|
39
|
+
var getComponentOnyx = function getComponentOnyx() {
|
40
|
+
var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
41
|
+
return render(___EmotionJSX(AstroProvider, {
|
42
|
+
themeOverrides: [OnyxTheme]
|
43
|
+
}, ___EmotionJSX(PanelHeader, _extends({}, defaultProps, props))));
|
44
|
+
};
|
39
45
|
var fallbackImageObj = null;
|
40
46
|
jest.mock('../../hooks/useFallbackImage', function () {
|
41
47
|
return function (props) {
|
@@ -97,4 +103,20 @@ test('renders rightOfData slot', function () {
|
|
97
103
|
}
|
98
104
|
});
|
99
105
|
screen.getByText(TEST_TEXT);
|
106
|
+
});
|
107
|
+
test('renders leftOfData slot', function () {
|
108
|
+
var TEST_TEXT = 'test text';
|
109
|
+
getComponent({
|
110
|
+
slots: {
|
111
|
+
leftOfData: ___EmotionJSX("div", null, TEST_TEXT)
|
112
|
+
}
|
113
|
+
});
|
114
|
+
screen.getByText(TEST_TEXT);
|
115
|
+
});
|
116
|
+
test('renders onyx components', function () {
|
117
|
+
getComponentOnyx();
|
118
|
+
var image = screen.getByRole('img');
|
119
|
+
expect(image.tagName.toLowerCase()).toBe('img');
|
120
|
+
expect(image).toHaveAttribute('src', pingImg);
|
121
|
+
expect(image).toHaveAttribute('alt', 'Avatar');
|
100
122
|
});
|
@@ -3,11 +3,8 @@ import _objectWithoutProperties from "@babel/runtime-corejs3/helpers/esm/objectW
|
|
3
3
|
var _excluded = ["requirements"];
|
4
4
|
import _mapInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/map";
|
5
5
|
import React, { forwardRef } from 'react';
|
6
|
-
import ErrorCircle from '@pingux/mdi-react/AlertCircleIcon';
|
7
|
-
import WarningIcon from '@pingux/mdi-react/AlertOutlineIcon';
|
8
|
-
import DefaultCircle from '@pingux/mdi-react/CheckboxBlankCircleOutlineIcon';
|
9
|
-
import SuccessCircle from '@pingux/mdi-react/CheckCircleIcon';
|
10
6
|
import kebabCase from 'lodash/kebabCase';
|
7
|
+
import { useGetTheme } from '../../hooks';
|
11
8
|
import Box from '../Box';
|
12
9
|
import Icon from '../Icon';
|
13
10
|
import Text from '../Text';
|
@@ -15,6 +12,12 @@ import { jsx as ___EmotionJSX } from "@emotion/react";
|
|
15
12
|
var RequirementsList = /*#__PURE__*/forwardRef(function (props, ref) {
|
16
13
|
var requirements = props.requirements,
|
17
14
|
others = _objectWithoutProperties(props, _excluded);
|
15
|
+
var _useGetTheme = useGetTheme(),
|
16
|
+
icons = _useGetTheme.icons;
|
17
|
+
var SuccessCircle = icons.SuccessCircle,
|
18
|
+
ErrorCircle = icons.ErrorCircle,
|
19
|
+
WarningIcon = icons.WarningIcon,
|
20
|
+
DefaultCircle = icons.DefaultCircle;
|
18
21
|
var statusIconRender = function statusIconRender(status, key) {
|
19
22
|
switch (status) {
|
20
23
|
case 'success':
|
@@ -0,0 +1,156 @@
|
|
1
|
+
import _Object$keys from "@babel/runtime-corejs3/core-js-stable/object/keys";
|
2
|
+
import _Object$getOwnPropertySymbols from "@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols";
|
3
|
+
import _filterInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/filter";
|
4
|
+
import _Object$getOwnPropertyDescriptor from "@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor";
|
5
|
+
import _forEachInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/for-each";
|
6
|
+
import _Object$getOwnPropertyDescriptors from "@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptors";
|
7
|
+
import _Object$defineProperties from "@babel/runtime-corejs3/core-js-stable/object/define-properties";
|
8
|
+
import _Object$defineProperty from "@babel/runtime-corejs3/core-js-stable/object/define-property";
|
9
|
+
import _extends from "@babel/runtime-corejs3/helpers/esm/extends";
|
10
|
+
import _slicedToArray from "@babel/runtime-corejs3/helpers/esm/slicedToArray";
|
11
|
+
import _objectWithoutProperties from "@babel/runtime-corejs3/helpers/esm/objectWithoutProperties";
|
12
|
+
import _defineProperty from "@babel/runtime-corejs3/helpers/esm/defineProperty";
|
13
|
+
var _excluded = ["shouldFocusOnHover", "shouldSelectOnPressUp"];
|
14
|
+
function ownKeys(object, enumerableOnly) { var keys = _Object$keys(object); if (_Object$getOwnPropertySymbols) { var symbols = _Object$getOwnPropertySymbols(object); enumerableOnly && (symbols = _filterInstanceProperty(symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
15
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var _context, _context2; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty(_context = ownKeys(Object(source), !0)).call(_context, function (key) { _defineProperty(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(target, _Object$getOwnPropertyDescriptors(source)) : _forEachInstanceProperty(_context2 = ownKeys(Object(source))).call(_context2, function (key) { _Object$defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } return target; }
|
16
|
+
import React, { forwardRef, useCallback, useLayoutEffect, useRef, useState } from 'react';
|
17
|
+
import { useComboBox, useFilter, useSearchField } from 'react-aria';
|
18
|
+
import { useComboBoxState, useSearchFieldState } from 'react-stately';
|
19
|
+
import CloseIcon from '@pingux/mdi-react/CloseIcon';
|
20
|
+
import { mergeProps, useResizeObserver } from '@react-aria/utils';
|
21
|
+
import { Box, Icon, IconButton, Input, Label, ScrollBox } from '../..';
|
22
|
+
import { useField, useLocalOrForwardRef, usePropWarning } from '../../hooks';
|
23
|
+
import { getPendoID } from '../../utils/devUtils/constants/pendoID';
|
24
|
+
import ListBox from '../ListBox/ListBox';
|
25
|
+
import Popover from '../Popover/Popover';
|
26
|
+
import { jsx as ___EmotionJSX } from "@emotion/react";
|
27
|
+
var displayName = 'SearchField';
|
28
|
+
export var SearchAutoComplete = /*#__PURE__*/forwardRef(function (props, ref) {
|
29
|
+
var autocomplete = props.autocomplete,
|
30
|
+
hasAutoFocus = props.hasAutoFocus,
|
31
|
+
hasNoClearButton = props.hasNoClearButton,
|
32
|
+
icon = props.icon,
|
33
|
+
isExcludedFromTabOrder = props.isExcludedFromTabOrder,
|
34
|
+
label = props.label,
|
35
|
+
controlProps = props.controlProps,
|
36
|
+
iconProps = props.iconProps,
|
37
|
+
labelProps = props.labelProps,
|
38
|
+
value = props.value,
|
39
|
+
onChange = props.onChange;
|
40
|
+
usePropWarning(props, 'disabled', 'isDisabled');
|
41
|
+
var _useFilter = useFilter({
|
42
|
+
sensitivity: 'base'
|
43
|
+
}),
|
44
|
+
contains = _useFilter.contains;
|
45
|
+
var comboBoxState = useComboBoxState(_objectSpread(_objectSpread({}, props), {}, {
|
46
|
+
inputValue: value,
|
47
|
+
defaultInputValue: props.defaultValue,
|
48
|
+
onInputChange: onChange,
|
49
|
+
defaultFilter: contains,
|
50
|
+
allowsCustomValue: true
|
51
|
+
}));
|
52
|
+
var inputRef = useLocalOrForwardRef(ref);
|
53
|
+
var outerRef = useRef(null);
|
54
|
+
var listBoxRef = useRef(null);
|
55
|
+
var popoverRef = useRef(null);
|
56
|
+
var clearButtonRef = useRef(null);
|
57
|
+
var _useComboBox = useComboBox(_objectSpread(_objectSpread({}, props), {}, {
|
58
|
+
inputRef: inputRef,
|
59
|
+
listBoxRef: listBoxRef,
|
60
|
+
popoverRef: popoverRef
|
61
|
+
}), comboBoxState),
|
62
|
+
inputProps = _useComboBox.inputProps,
|
63
|
+
listBoxProps = _useComboBox.listBoxProps,
|
64
|
+
rsLabelProps = _useComboBox.labelProps;
|
65
|
+
delete inputProps['data-testid'];
|
66
|
+
var shouldFocusOnHover = listBoxProps.shouldFocusOnHover,
|
67
|
+
shouldSelectOnPressUp = listBoxProps.shouldSelectOnPressUp,
|
68
|
+
otherListBoxProps = _objectWithoutProperties(listBoxProps, _excluded);
|
69
|
+
var searchProps = {
|
70
|
+
label: props.label,
|
71
|
+
value: comboBoxState.inputValue,
|
72
|
+
'aria-label': props['aria-label'],
|
73
|
+
onChange: function onChange(v) {
|
74
|
+
return comboBoxState.setInputValue(v);
|
75
|
+
},
|
76
|
+
onClear: props.onClear,
|
77
|
+
onSubmit: props.onSubmit
|
78
|
+
};
|
79
|
+
var searchState = useSearchFieldState(searchProps);
|
80
|
+
var _useSearchField = useSearchField(_objectSpread({
|
81
|
+
autoComplete: autocomplete,
|
82
|
+
autoFocus: hasAutoFocus,
|
83
|
+
excludeFromTabOrder: isExcludedFromTabOrder
|
84
|
+
}, searchProps), searchState, inputRef),
|
85
|
+
raLabelProps = _useSearchField.labelProps,
|
86
|
+
raInputProps = _useSearchField.inputProps,
|
87
|
+
clearButtonProps = _useSearchField.clearButtonProps;
|
88
|
+
var _useField = useField(_objectSpread(_objectSpread({}, props), {}, {
|
89
|
+
labelProps: _objectSpread(_objectSpread(_objectSpread({}, labelProps), raLabelProps), rsLabelProps),
|
90
|
+
controlProps: _objectSpread(_objectSpread({}, controlProps), raInputProps)
|
91
|
+
})),
|
92
|
+
fieldContainerProps = _useField.fieldContainerProps,
|
93
|
+
fieldControlInputProps = _useField.fieldControlInputProps,
|
94
|
+
fieldControlWrapperProps = _useField.fieldControlWrapperProps,
|
95
|
+
fieldLabelProps = _useField.fieldLabelProps;
|
96
|
+
var handleKeyDownEvent = function handleKeyDownEvent(e) {
|
97
|
+
var key = e.key;
|
98
|
+
if (key === 'Enter' || key === ' ') {
|
99
|
+
comboBoxState.setInputValue('');
|
100
|
+
}
|
101
|
+
};
|
102
|
+
|
103
|
+
// Popover width matches the input width
|
104
|
+
var _useState = useState(0),
|
105
|
+
_useState2 = _slicedToArray(_useState, 2),
|
106
|
+
popoverWidth = _useState2[0],
|
107
|
+
setPopoverWidth = _useState2[1];
|
108
|
+
var onResize = useCallback(function () {
|
109
|
+
/* istanbul ignore next */
|
110
|
+
if (outerRef.current) {
|
111
|
+
setPopoverWidth(outerRef.current.offsetWidth);
|
112
|
+
}
|
113
|
+
}, [outerRef, setPopoverWidth]);
|
114
|
+
useResizeObserver({
|
115
|
+
ref: outerRef,
|
116
|
+
onResize: onResize
|
117
|
+
});
|
118
|
+
useLayoutEffect(onResize, [onResize]);
|
119
|
+
return ___EmotionJSX(Box, _extends({}, getPendoID(displayName), fieldContainerProps), label && ___EmotionJSX(Label, fieldLabelProps), ___EmotionJSX(Box, _extends({
|
120
|
+
variant: "forms.search.wrapper",
|
121
|
+
ref: outerRef
|
122
|
+
}, fieldControlWrapperProps), ___EmotionJSX(Input, _extends({
|
123
|
+
variant: "forms.input.search",
|
124
|
+
ref: inputRef
|
125
|
+
}, mergeProps(fieldControlInputProps, inputProps))), icon && ___EmotionJSX(Icon, _extends({
|
126
|
+
icon: icon,
|
127
|
+
variant: "forms.search.icon",
|
128
|
+
title: {
|
129
|
+
name: 'Search Icon'
|
130
|
+
}
|
131
|
+
}, iconProps)), !hasNoClearButton && searchState.value !== '' && ___EmotionJSX(IconButton, _extends({
|
132
|
+
ref: clearButtonRef
|
133
|
+
}, clearButtonProps, {
|
134
|
+
tabIndex: 0,
|
135
|
+
onKeyDown: handleKeyDownEvent,
|
136
|
+
color: "text.secondary",
|
137
|
+
variant: "searchClearButton"
|
138
|
+
}), ___EmotionJSX(Icon, {
|
139
|
+
icon: CloseIcon,
|
140
|
+
title: {
|
141
|
+
name: 'Close Icon'
|
142
|
+
}
|
143
|
+
}))), comboBoxState.isOpen && ___EmotionJSX(Popover, {
|
144
|
+
popoverRef: popoverRef,
|
145
|
+
triggerRef: outerRef,
|
146
|
+
state: comboBoxState,
|
147
|
+
isNonModal: true,
|
148
|
+
width: popoverWidth
|
149
|
+
}, ___EmotionJSX(ScrollBox, null, ___EmotionJSX(ListBox, _extends({
|
150
|
+
ref: listBoxRef,
|
151
|
+
state: comboBoxState,
|
152
|
+
isFocusedOnHover: shouldFocusOnHover,
|
153
|
+
isSelectedOnPressUp: shouldSelectOnPressUp,
|
154
|
+
showSelectedOption: false
|
155
|
+
}, otherListBoxProps)))));
|
156
|
+
});
|