@tap-payments/os-micro-frontend-shared 0.1.297 → 0.1.299
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/build/components/ReferenceTypeFilter/ReferenceTypeFilter.d.ts +19 -0
- package/build/components/ReferenceTypeFilter/ReferenceTypeFilter.js +36 -0
- package/build/components/ReferenceTypeFilter/index.d.ts +1 -0
- package/build/components/ReferenceTypeFilter/index.js +1 -0
- package/build/components/ReferenceTypeFilter/style.d.ts +14 -0
- package/build/components/ReferenceTypeFilter/style.js +34 -0
- package/build/components/SalesChannelFilter/SalesChannelFilter.d.ts +11 -0
- package/build/components/SalesChannelFilter/SalesChannelFilter.js +56 -0
- package/build/components/SalesChannelFilter/index.d.ts +1 -0
- package/build/components/SalesChannelFilter/index.js +1 -0
- package/build/components/SalesChannelFilter/style.d.ts +15 -0
- package/build/components/SalesChannelFilter/style.js +29 -0
- package/build/components/index.d.ts +2 -0
- package/build/components/index.js +2 -0
- package/build/types/index.d.ts +1 -0
- package/build/types/index.js +1 -0
- package/build/types/utilities.d.ts +24 -0
- package/build/types/utilities.js +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { CustomColumnFilterProps } from '../VirtualTables';
|
|
2
|
+
export interface ReferenceTypeFilterProps extends CustomColumnFilterProps {
|
|
3
|
+
label: string;
|
|
4
|
+
onConfirm: () => void;
|
|
5
|
+
onClear: () => void;
|
|
6
|
+
selectedRadioValue?: string;
|
|
7
|
+
onRadioButtonChange: (val: string) => void;
|
|
8
|
+
radioOptions: {
|
|
9
|
+
value: string;
|
|
10
|
+
label: string;
|
|
11
|
+
}[];
|
|
12
|
+
inputValues?: Record<string, any>;
|
|
13
|
+
onInputValuesChange: (val: Record<string, any>) => void;
|
|
14
|
+
inputFilters?: {
|
|
15
|
+
apiKey: string;
|
|
16
|
+
placeholder: string;
|
|
17
|
+
}[];
|
|
18
|
+
}
|
|
19
|
+
export default function ReferenceTypeFilter({ selectedRadioValue, onRadioButtonChange, radioOptions, label, onConfirm, onClear, inputValues, onInputValuesChange, anchorEl, onCloseDropdown, inputFilters, }: ReferenceTypeFilterProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useTranslation } from 'react-i18next';
|
|
3
|
+
import { useMemo } from 'react';
|
|
4
|
+
import { ViewColumnRadioFilter, FilterTitle, FilterOkayButton, FilterFooter, FilterCancelButton } from '../index.js';
|
|
5
|
+
import { grayCloseIcon, searchIcon } from '../../constants/index.js';
|
|
6
|
+
import lodashValues from 'lodash/values';
|
|
7
|
+
import { ClearButton, ClearWrapper, FilterMenu, InputStyled, InputsWrapper } from './style';
|
|
8
|
+
import { Box, Collapse } from '@mui/material';
|
|
9
|
+
export default function ReferenceTypeFilter({ selectedRadioValue, onRadioButtonChange, radioOptions, label, onConfirm, onClear, inputValues, onInputValuesChange, anchorEl, onCloseDropdown, inputFilters = [], }) {
|
|
10
|
+
const { t } = useTranslation();
|
|
11
|
+
const handleOkButtonClick = (e) => {
|
|
12
|
+
onConfirm();
|
|
13
|
+
onCloseDropdown(e);
|
|
14
|
+
};
|
|
15
|
+
const onCancel = (e) => {
|
|
16
|
+
onClear();
|
|
17
|
+
onCloseDropdown(e);
|
|
18
|
+
};
|
|
19
|
+
const isInputHasValue = (key) => (inputValues === null || inputValues === void 0 ? void 0 : inputValues[key]) !== undefined && (inputValues === null || inputValues === void 0 ? void 0 : inputValues[key].length) > 0;
|
|
20
|
+
const onClickResetInput = (key) => {
|
|
21
|
+
if (isInputHasValue(key))
|
|
22
|
+
onInputValuesChange(Object.assign(Object.assign({}, inputValues), { [key]: '' }));
|
|
23
|
+
};
|
|
24
|
+
const showClearButton = useMemo(() => lodashValues(inputValues).some((x) => Boolean(x)), [inputValues]);
|
|
25
|
+
const onClickClear = () => {
|
|
26
|
+
onInputValuesChange(inputFilters.reduce((acc, { apiKey }) => (Object.assign(Object.assign({}, acc), { [apiKey]: '' })), {}));
|
|
27
|
+
};
|
|
28
|
+
return (_jsxs(FilterMenu, Object.assign({ open: !!anchorEl, anchorEl: anchorEl }, { children: [_jsx(FilterTitle, Object.assign({ component: "span" }, { children: t('filterBy') })), _jsx(ViewColumnRadioFilter, { menuLabel: label, options: radioOptions, selectedValue: selectedRadioValue, onValueChange: onRadioButtonChange }), inputFilters.length > 0 && (_jsx(InputsWrapper, Object.assign({ "data-testid": "ColumnFilterInputs_inputs", component: "main" }, { children: inputFilters.map(({ apiKey, placeholder }) => {
|
|
29
|
+
var _a;
|
|
30
|
+
return (_jsx(InputStyled, { className: "input", "data-testid": "ColumnFilterInputs_InputStyled", name: apiKey, placeholder: placeholder, onChange: (e) => {
|
|
31
|
+
onInputValuesChange(Object.assign(Object.assign({}, inputValues), { [apiKey]: e.target.value }));
|
|
32
|
+
}, defaultValue: (_a = inputValues === null || inputValues === void 0 ? void 0 : inputValues[apiKey]) !== null && _a !== void 0 ? _a : '', value: inputValues === null || inputValues === void 0 ? void 0 : inputValues[apiKey], inputProps: { autoComplete: 'off', 'data-testid': 'ColumnFilterInputs_input' }, endAdornment: _jsx(Box, { component: "img", "data-testid": "ColumnFilterInputs_icon", "data-icon": isInputHasValue(apiKey) ? 'close' : 'search', src: isInputHasValue(apiKey) ? grayCloseIcon : searchIcon, alt: "search", className: "icon", sx: { cursor: isInputHasValue(apiKey) ? 'pointer' : 'default' }, onClick: () => {
|
|
33
|
+
onClickResetInput(apiKey);
|
|
34
|
+
} }) }, apiKey));
|
|
35
|
+
}) }))), _jsx(Collapse, Object.assign({ in: showClearButton, component: "section", "data-testid": "ColumnFilterInputs_Collapse" }, { children: _jsx(ClearWrapper, Object.assign({ "data-testid": "ColumnFilterInputs_ClearWrapper" }, { children: _jsx(ClearButton, Object.assign({ type: "button", onClick: onClickClear, "data-testid": "ColumnFilterInputs_ClearButton" }, { children: t('clear') })) })) })), _jsxs(FilterFooter, { children: [_jsx(FilterCancelButton, Object.assign({ onClick: onCancel }, { children: t('cancel') })), _jsx(FilterOkayButton, Object.assign({ onClick: handleOkButtonClick }, { children: t('okay') }))] })] })));
|
|
36
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default as ReferenceTypeFilter, type ReferenceTypeFilterProps } from './ReferenceTypeFilter';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default as ReferenceTypeFilter } from './ReferenceTypeFilter';
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
export declare const FilterMenu: import("@emotion/styled").StyledComponent<Omit<import("../Menu/Menu").MenuProps, "ref"> & import("react").RefAttributes<HTMLDivElement> & import("@mui/system").MUIStyledCommonProps<import("@mui/material/styles").Theme>, {}, {}>;
|
|
3
|
+
export declare const InputStyled: import("@emotion/styled").StyledComponent<Readonly<import("@mui/material").InputProps & {
|
|
4
|
+
isError?: boolean | undefined;
|
|
5
|
+
}> & import("@mui/system").MUIStyledCommonProps<import("@mui/material/styles").Theme>, {}, {}>;
|
|
6
|
+
export declare const InputsWrapper: import("@emotion/styled").StyledComponent<import("@mui/system").BoxOwnProps<import("@mui/material/styles").Theme> & Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
|
|
7
|
+
ref?: ((instance: HTMLDivElement | null) => void) | import("react").RefObject<HTMLDivElement> | null | undefined;
|
|
8
|
+
}, keyof import("@mui/system").BoxOwnProps<import("@mui/material/styles").Theme>> & import("@mui/system").MUIStyledCommonProps<import("@mui/material/styles").Theme>, {}, {}>;
|
|
9
|
+
export declare const ClearButton: import("@emotion/styled").StyledComponent<import("@mui/material/Button").ButtonOwnProps & Omit<import("@mui/material").ButtonBaseOwnProps, "classes"> & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "ref"> & {
|
|
10
|
+
ref?: ((instance: HTMLButtonElement | null) => void) | import("react").RefObject<HTMLButtonElement> | null | undefined;
|
|
11
|
+
}, "color" | "disabled" | "classes" | "className" | "style" | "tabIndex" | "children" | "sx" | "variant" | "size" | "fullWidth" | "href" | "action" | "centerRipple" | "disableRipple" | "disableTouchRipple" | "focusRipple" | "focusVisibleClassName" | "LinkComponent" | "onFocusVisible" | "TouchRippleProps" | "touchRippleRef" | "disableElevation" | "disableFocusRipple" | "endIcon" | "startIcon"> & import("@mui/system").MUIStyledCommonProps<import("@mui/material/styles").Theme>, {}, {}>;
|
|
12
|
+
export declare const ClearWrapper: import("@emotion/styled").StyledComponent<import("@mui/system").BoxOwnProps<import("@mui/material/styles").Theme> & Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
|
|
13
|
+
ref?: ((instance: HTMLDivElement | null) => void) | import("react").RefObject<HTMLDivElement> | null | undefined;
|
|
14
|
+
}, keyof import("@mui/system").BoxOwnProps<import("@mui/material/styles").Theme>> & import("@mui/system").MUIStyledCommonProps<import("@mui/material/styles").Theme>, {}, {}>;
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { styled } from '@mui/material/styles';
|
|
2
|
+
import { Input, Menu } from '../index.js';
|
|
3
|
+
import Box from '@mui/material/Box';
|
|
4
|
+
import Button from '@mui/material/Button';
|
|
5
|
+
export const FilterMenu = styled(Menu)(() => ({
|
|
6
|
+
marginBottom: '8px',
|
|
7
|
+
}));
|
|
8
|
+
export const InputStyled = styled(Input)(({ theme }) => ({
|
|
9
|
+
border: `1px solid ${theme.palette.divider}`,
|
|
10
|
+
'.icon': {
|
|
11
|
+
width: 14,
|
|
12
|
+
},
|
|
13
|
+
}));
|
|
14
|
+
export const InputsWrapper = styled(Box)(() => ({
|
|
15
|
+
padding: '8px 16px',
|
|
16
|
+
'> div + div': {
|
|
17
|
+
marginTop: '8px',
|
|
18
|
+
},
|
|
19
|
+
}));
|
|
20
|
+
export const ClearButton = styled(Button)(({ theme }) => ({
|
|
21
|
+
color: theme.palette.info.dark,
|
|
22
|
+
fontSize: '11px',
|
|
23
|
+
textTransform: 'capitalize',
|
|
24
|
+
padding: '4px 9px',
|
|
25
|
+
minWidth: 'auto',
|
|
26
|
+
'&:hover': {
|
|
27
|
+
background: 'transparent',
|
|
28
|
+
},
|
|
29
|
+
}));
|
|
30
|
+
export const ClearWrapper = styled(Box)(({ theme }) => ({
|
|
31
|
+
padding: '0 16px 8px',
|
|
32
|
+
textAlign: 'left',
|
|
33
|
+
borderBottom: `1px solid ${theme.palette.divider}`,
|
|
34
|
+
}));
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { OptionsListItem } from '../../types/index.js';
|
|
2
|
+
interface SalesChannelFilterProps {
|
|
3
|
+
onSalesChannelChange: (salesChannels: OptionsListItem[] | undefined) => void;
|
|
4
|
+
onSearchChange: (searchValue: string) => void;
|
|
5
|
+
filteredOptions: OptionsListItem[];
|
|
6
|
+
isLoading: boolean;
|
|
7
|
+
initialSalesChannels?: OptionsListItem[];
|
|
8
|
+
initialSalesChannelsSearch?: string;
|
|
9
|
+
}
|
|
10
|
+
export default function SalesChannelFilter({ onSalesChannelChange, onSearchChange, filteredOptions, isLoading, initialSalesChannels, initialSalesChannelsSearch, }: Readonly<SalesChannelFilterProps>): import("react/jsx-runtime").JSX.Element;
|
|
11
|
+
export {};
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useMemo, useState } from 'react';
|
|
3
|
+
import Box from '@mui/material/Box';
|
|
4
|
+
import { MenuItem, Skeleton } from '../index.js';
|
|
5
|
+
import { FilterWrapper, ListWrapper, SearchIconWrapper } from './style';
|
|
6
|
+
import { InputStyled } from '../SelectWithSearch';
|
|
7
|
+
import { closeXIcon, searchIcon } from '../../constants/index.js';
|
|
8
|
+
export default function SalesChannelFilter({ onSalesChannelChange, onSearchChange, filteredOptions, isLoading, initialSalesChannels, initialSalesChannelsSearch, }) {
|
|
9
|
+
const salesChannels = useMemo(() => {
|
|
10
|
+
return initialSalesChannels || [];
|
|
11
|
+
}, [initialSalesChannels]);
|
|
12
|
+
const [searchValue, setSearchValue] = useState(initialSalesChannelsSearch || '');
|
|
13
|
+
const checkIsSelected = (salesChannelId) => salesChannels.some((channel) => channel.id === salesChannelId);
|
|
14
|
+
const isAllSelected = useMemo(() => {
|
|
15
|
+
return (salesChannels === null || salesChannels === void 0 ? void 0 : salesChannels.length) === filteredOptions.length && (filteredOptions === null || filteredOptions === void 0 ? void 0 : filteredOptions.length) > 0;
|
|
16
|
+
}, [salesChannels, filteredOptions]);
|
|
17
|
+
const isOnlyBlankSelected = useMemo(() => {
|
|
18
|
+
return (salesChannels === null || salesChannels === void 0 ? void 0 : salesChannels.some((channel) => channel.id === 'blank')) && (salesChannels === null || salesChannels === void 0 ? void 0 : salesChannels.length) === 1;
|
|
19
|
+
}, [salesChannels]);
|
|
20
|
+
const isSearchDisabled = useMemo(() => {
|
|
21
|
+
return (salesChannels === null || salesChannels === void 0 ? void 0 : salesChannels.length) === 0 || isOnlyBlankSelected;
|
|
22
|
+
}, [isOnlyBlankSelected, salesChannels === null || salesChannels === void 0 ? void 0 : salesChannels.length]);
|
|
23
|
+
return (_jsxs(FilterWrapper, { children: [_jsx(InputStyled, { placeholder: 'Search', endAdornment: !isSearchDisabled && (_jsx(SearchIconWrapper, Object.assign({ sx: Object.assign({}, (searchValue && { backgroundColor: '#F2F2F2' })) }, { children: _jsx(Box, { component: "img", src: searchValue ? closeXIcon : searchIcon, alt: "search", onClick: () => {
|
|
24
|
+
setSearchValue('');
|
|
25
|
+
onSearchChange('');
|
|
26
|
+
}, sx: Object.assign({}, (searchValue && {
|
|
27
|
+
backgroundColor: '#F2F2F2',
|
|
28
|
+
borderRadius: '4px',
|
|
29
|
+
width: '8px',
|
|
30
|
+
height: '8px',
|
|
31
|
+
})) }) }))), disabled: isSearchDisabled, onChange: (e) => {
|
|
32
|
+
setSearchValue(e.target.value);
|
|
33
|
+
onSearchChange(e.target.value);
|
|
34
|
+
}, value: searchValue, disableUnderline: true, sx: Object.assign({ cursor: 'default', width: '100%', border: '1px solid #F2F2F2', backgroundColor: isSearchDisabled ? '#F8F8F8' : '#fff' }, (searchValue && { cursor: 'pointer' })) }), _jsx(ListWrapper, { children: isLoading ? (Array.from({ length: 9 }).map((_, index) => _jsx(Skeleton, { variant: "rectangular", width: "100%", height: 24 }, index))) : (_jsxs(_Fragment, { children: [_jsx(MenuItem, Object.assign({ sx: {
|
|
35
|
+
backgroundColor: '#F8F8F8',
|
|
36
|
+
fontWeight: 600,
|
|
37
|
+
padding: '4px 8px',
|
|
38
|
+
color: '#1F88D0',
|
|
39
|
+
gap: '0px',
|
|
40
|
+
}, isSelected: isAllSelected, isIndeterminate: !isAllSelected && ((salesChannels === null || salesChannels === void 0 ? void 0 : salesChannels.length) || 0) > 0, onClick: (e) => {
|
|
41
|
+
e.stopPropagation();
|
|
42
|
+
onSalesChannelChange(isAllSelected ? [] : filteredOptions);
|
|
43
|
+
} }, { children: isAllSelected ? 'Deselect All' : 'Select All' })), filteredOptions.map((channel) => {
|
|
44
|
+
var _a;
|
|
45
|
+
return (_jsx(MenuItem, Object.assign({ isSelected: checkIsSelected(channel.id), onClick: (e) => {
|
|
46
|
+
e.stopPropagation();
|
|
47
|
+
const isSelected = checkIsSelected(channel.id);
|
|
48
|
+
const newSalesChannels = isSelected ? salesChannels === null || salesChannels === void 0 ? void 0 : salesChannels.filter((c) => c.id !== channel.id) : [...(salesChannels !== null && salesChannels !== void 0 ? salesChannels : []), channel];
|
|
49
|
+
onSalesChannelChange(newSalesChannels);
|
|
50
|
+
}, sx: {
|
|
51
|
+
padding: '4px 8px',
|
|
52
|
+
gap: '0px',
|
|
53
|
+
fontWeight: 400,
|
|
54
|
+
} }, { children: (_a = channel === null || channel === void 0 ? void 0 : channel.name) === null || _a === void 0 ? void 0 : _a.en }), channel.id));
|
|
55
|
+
})] })) })] }));
|
|
56
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default as SalesChannelFilter } from './SalesChannelFilter';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default as SalesChannelFilter } from './SalesChannelFilter';
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
export declare const FilterButton: import("@emotion/styled").StyledComponent<import("@mui/system").BoxOwnProps<import("@mui/material").Theme> & Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
|
|
3
|
+
ref?: ((instance: HTMLDivElement | null) => void) | import("react").RefObject<HTMLDivElement> | null | undefined;
|
|
4
|
+
}, keyof import("@mui/system").BoxOwnProps<import("@mui/material").Theme>> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme> & {
|
|
5
|
+
isActive?: boolean | undefined;
|
|
6
|
+
}, {}, {}>;
|
|
7
|
+
export declare const ListWrapper: import("@emotion/styled").StyledComponent<import("@mui/system").BoxOwnProps<import("@mui/material").Theme> & Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
|
|
8
|
+
ref?: ((instance: HTMLDivElement | null) => void) | import("react").RefObject<HTMLDivElement> | null | undefined;
|
|
9
|
+
}, keyof import("@mui/system").BoxOwnProps<import("@mui/material").Theme>> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
|
|
10
|
+
export declare const FilterWrapper: import("@emotion/styled").StyledComponent<import("@mui/system").BoxOwnProps<import("@mui/material").Theme> & Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
|
|
11
|
+
ref?: ((instance: HTMLDivElement | null) => void) | import("react").RefObject<HTMLDivElement> | null | undefined;
|
|
12
|
+
}, keyof import("@mui/system").BoxOwnProps<import("@mui/material").Theme>> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
|
|
13
|
+
export declare const SearchIconWrapper: import("@emotion/styled").StyledComponent<import("@mui/system").BoxOwnProps<import("@mui/material").Theme> & Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
|
|
14
|
+
ref?: ((instance: HTMLDivElement | null) => void) | import("react").RefObject<HTMLDivElement> | null | undefined;
|
|
15
|
+
}, keyof import("@mui/system").BoxOwnProps<import("@mui/material").Theme>> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { Box, styled } from '@mui/material';
|
|
2
|
+
export const FilterButton = styled(Box, { shouldForwardProp: (props) => props !== 'isActive' })(({ theme, isActive }) => (Object.assign({ borderRadius: '4px', border: `1px solid ${theme.palette.divider}`, height: 32, width: 30, display: 'flex', alignItems: 'center', justifyContent: 'center', cursor: 'pointer', backgroundColor: theme.palette.common.white, ':hover': {
|
|
3
|
+
opacity: 0.7,
|
|
4
|
+
} }, (isActive && {
|
|
5
|
+
boxShadow: `0px 0px 4px 0px ${theme.palette.info.dark}80`,
|
|
6
|
+
border: `1px solid ${theme.palette.info.dark}`,
|
|
7
|
+
}))));
|
|
8
|
+
export const ListWrapper = styled(Box)(({ theme }) => ({
|
|
9
|
+
display: 'flex',
|
|
10
|
+
flexDirection: 'column',
|
|
11
|
+
borderRadius: '8px',
|
|
12
|
+
border: `1px solid ${theme.palette.divider}`,
|
|
13
|
+
backgroundColor: theme.palette.common.white,
|
|
14
|
+
maxHeight: '232px',
|
|
15
|
+
overflow: 'auto',
|
|
16
|
+
}));
|
|
17
|
+
export const FilterWrapper = styled(Box)(() => ({
|
|
18
|
+
display: 'flex',
|
|
19
|
+
flexDirection: 'column',
|
|
20
|
+
gap: '8px',
|
|
21
|
+
}));
|
|
22
|
+
export const SearchIconWrapper = styled(Box)(() => ({
|
|
23
|
+
display: 'flex',
|
|
24
|
+
alignItems: 'center',
|
|
25
|
+
justifyContent: 'center',
|
|
26
|
+
width: '13px',
|
|
27
|
+
height: '13px',
|
|
28
|
+
borderRadius: '50%',
|
|
29
|
+
}));
|
package/build/types/index.d.ts
CHANGED
package/build/types/index.js
CHANGED
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
export type OptionsListItem = {
|
|
2
|
+
id: string;
|
|
3
|
+
logo?: string;
|
|
4
|
+
code?: string;
|
|
5
|
+
name: {
|
|
6
|
+
ar: string;
|
|
7
|
+
en: string;
|
|
8
|
+
};
|
|
9
|
+
currency_code?: string[];
|
|
10
|
+
country_code?: string[];
|
|
11
|
+
range?: {
|
|
12
|
+
from: number;
|
|
13
|
+
to: number;
|
|
14
|
+
};
|
|
15
|
+
sub?: {
|
|
16
|
+
id: string;
|
|
17
|
+
logo: string;
|
|
18
|
+
code: string;
|
|
19
|
+
name: {
|
|
20
|
+
ar: string;
|
|
21
|
+
en: string;
|
|
22
|
+
};
|
|
23
|
+
}[];
|
|
24
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
package/package.json
CHANGED