@bcrumbs.net/bc-ui 0.0.1 → 0.0.3

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.
Files changed (104) hide show
  1. package/README.md +0 -7
  2. package/index.esm.d.ts +1 -0
  3. package/index.esm.js +15798 -4211
  4. package/package.json +14 -10
  5. package/src/index.d.ts +51 -0
  6. package/src/lib/InputWithSuggestions/index.d.ts +42 -0
  7. package/{lib → src/lib}/addButton/bcadd-button.d.ts +3 -2
  8. package/src/lib/avatar/index.d.ts +21 -0
  9. package/src/lib/button/bcbutton.d.ts +24 -0
  10. package/src/lib/button/types.d.ts +19 -0
  11. package/src/lib/charts/barLineChart/index.d.ts +28 -0
  12. package/src/lib/charts/barLineChart/types.d.ts +10 -0
  13. package/src/lib/charts/pieChart/index.d.ts +12 -0
  14. package/src/lib/constants/BoxShadow.d.ts +6 -0
  15. package/src/lib/constants/Color.d.ts +73 -0
  16. package/src/lib/constants/Droplist.d.ts +7 -0
  17. package/src/lib/constants/DroplistSizes.d.ts +14 -0
  18. package/{lib → src/lib}/constants/IconType.d.ts +14 -8
  19. package/src/lib/constants/InputHeight.d.ts +16 -0
  20. package/{lib → src/lib}/constants/LineHeight.d.ts +1 -1
  21. package/src/lib/constants/LogoSize.d.ts +6 -0
  22. package/{lib → src/lib}/constants/TextSize.d.ts +1 -1
  23. package/{lib → src/lib}/constants/index.d.ts +4 -0
  24. package/src/lib/dateRangePicker/StaticRanges.d.ts +3 -0
  25. package/src/lib/dateRangePicker/StyledDateRange.d.ts +10 -0
  26. package/src/lib/dateRangePicker/index.d.ts +30 -0
  27. package/src/lib/dropList/bcdrop-list.d.ts +16 -0
  28. package/src/lib/dropdown/DropdownList/DropdownListItem/index.d.ts +57 -0
  29. package/src/lib/dropdown/DropdownList/index.d.ts +71 -0
  30. package/src/lib/dropdown/index.d.ts +46 -0
  31. package/src/lib/dropdown/types.d.ts +50 -0
  32. package/src/lib/hooks/useDebounce/index.d.ts +9 -0
  33. package/src/lib/hooks/useDropdownClickOutside/index.d.ts +2 -0
  34. package/{lib → src/lib}/hooks/useForm/index.d.ts +6 -6
  35. package/src/lib/hooks/useInterval/index.d.ts +1 -0
  36. package/src/lib/hooks/usePolling/index.d.ts +10 -0
  37. package/src/lib/hooks/usePrevious/index.d.ts +1 -0
  38. package/src/lib/hooks/useToggle/index.d.ts +1 -0
  39. package/src/lib/hooks/useUrlState/index.d.ts +9 -0
  40. package/src/lib/hooks/useWindowSize/index.d.ts +1 -0
  41. package/src/lib/icon/bcicon.d.ts +29 -0
  42. package/src/lib/inputTags/index.d.ts +22 -0
  43. package/src/lib/layout/flexBox/index.d.ts +77 -0
  44. package/src/lib/layout/gridLayout/index.d.ts +11 -0
  45. package/src/lib/layout/horizontalLayout/index.d.ts +26 -0
  46. package/src/lib/layout/index.d.ts +4 -0
  47. package/src/lib/layout/verticalLayout/index.d.ts +22 -0
  48. package/src/lib/lazyScrollbar/index.d.ts +10 -0
  49. package/src/lib/line/index.d.ts +7 -0
  50. package/{lib → src/lib}/loading/loading.d.ts +1 -2
  51. package/src/lib/navigation/bcnavigation.d.ts +10 -0
  52. package/src/lib/navigation/left-nav/index.d.ts +9 -0
  53. package/src/lib/navigation/left-nav/leftNavButton/index.d.ts +7 -0
  54. package/src/lib/navigation/types.d.ts +14 -0
  55. package/{lib → src/lib}/overlay/index.d.ts +2 -1
  56. package/{lib → src/lib}/popup/index.d.ts +1 -1
  57. package/src/lib/radioButton/index.d.ts +20 -0
  58. package/{lib → src/lib}/scrollArea/index.d.ts +1 -0
  59. package/src/lib/searchbox/bcsearchbox.d.ts +12 -0
  60. package/src/lib/seperator/index.d.ts +16 -0
  61. package/src/lib/skeleton/index.d.ts +12 -0
  62. package/{lib → src/lib}/table/bctable.d.ts +20 -19
  63. package/src/lib/textArea/index.d.ts +4 -0
  64. package/src/lib/textbox/bctextbox.d.ts +21 -0
  65. package/{lib → src/lib}/toaster/index.d.ts +1 -1
  66. package/src/lib/utils/extractInitialsFromText.d.ts +1 -0
  67. package/src/lib/utils/formatDate.d.ts +2 -0
  68. package/src/lib/utils/index.d.ts +1 -0
  69. package/index.d.ts +0 -26
  70. package/index.umd.css +0 -39
  71. package/index.umd.js +0 -4756
  72. package/lib/button/bcbutton.d.ts +0 -39
  73. package/lib/constants/Color.d.ts +0 -32
  74. package/lib/dropList/bcdrop-list.d.ts +0 -24
  75. package/lib/hooks/useForm/fieldsTypes.d.ts +0 -9
  76. package/lib/hooks/useInterval/index.d.ts +0 -2
  77. package/lib/icon/bcicon.d.ts +0 -17
  78. package/lib/navigation/bcnavigation.d.ts +0 -40
  79. package/lib/navigation/left-nav/index.d.ts +0 -26
  80. package/lib/navigation/left-nav/leftNavButton/index.d.ts +0 -13
  81. package/lib/searchbox/bcsearchbox.d.ts +0 -9
  82. package/lib/tagsInput/bctags-input.d.ts +0 -10
  83. package/lib/textbox/bctextbox.d.ts +0 -28
  84. /package/{lib → src/lib}/block/bcblock.d.ts +0 -0
  85. /package/{lib → src/lib}/checkbox/bccheckbox.d.ts +0 -0
  86. /package/{lib → src/lib}/constants/ButtonSize.d.ts +0 -0
  87. /package/{lib → src/lib}/constants/FontFamily.d.ts +0 -0
  88. /package/{lib → src/lib}/constants/Key.d.ts +0 -0
  89. /package/{lib → src/lib}/constants/KeyCode.d.ts +0 -0
  90. /package/{lib → src/lib}/constants/TextAlign.d.ts +0 -0
  91. /package/{lib → src/lib}/constants/TextStyle.d.ts +0 -0
  92. /package/{lib → src/lib}/constants/TextWeight.d.ts +0 -0
  93. /package/{lib → src/lib}/constants/WhiteSpace.d.ts +0 -0
  94. /package/{lib → src/lib}/dropZone/index.d.ts +0 -0
  95. /package/{lib → src/lib}/hooks/useForceUpdate/index.d.ts +0 -0
  96. /package/{lib → src/lib}/hooks/useForm/validationConstant.d.ts +0 -0
  97. /package/{lib → src/lib}/hooks/withEnterAnimation/index.d.ts +0 -0
  98. /package/{lib → src/lib}/iconButton/index.d.ts +0 -0
  99. /package/{lib → src/lib}/progress/index.d.ts +0 -0
  100. /package/{lib → src/lib}/select/bcselect.d.ts +0 -0
  101. /package/{lib → src/lib}/text/bctext.d.ts +0 -0
  102. /package/{lib → src/lib}/tooltip/TooltipPlacement.d.ts +0 -0
  103. /package/{lib → src/lib}/tooltip/TooltipTrigger.d.ts +0 -0
  104. /package/{lib → src/lib}/tooltip/index.d.ts +0 -0
@@ -0,0 +1,71 @@
1
+ import React from 'react';
2
+ import { DropdownListItemType, DropdownListItemValue, DropdownListSelectionMode, FooterItemsProps, HeaderItemsProps } from '../types';
3
+ import { DropdownListWidth, DropdownSize } from '../../constants';
4
+ type DropdownContainerProps = {
5
+ width?: DropdownListWidth;
6
+ fixed?: boolean;
7
+ top?: number;
8
+ left?: number;
9
+ up?: boolean;
10
+ };
11
+ type ListContainerProps = {
12
+ size: DropdownSize;
13
+ };
14
+ export type DropdownListProps = DropdownContainerProps & ListContainerProps & {
15
+ items: DropdownListItemType[];
16
+ maxVisibleItems?: number;
17
+ selectedValue?: DropdownListItemValue;
18
+ title?: string;
19
+ disableValue?: DropdownListItemValue;
20
+ selectionMode?: DropdownListSelectionMode;
21
+ onItemClick?: (value: DropdownListItemValue, fromEnter: boolean) => void;
22
+ onItemMouseDown?: (value: DropdownListItemValue, index?: number, e?: React.MouseEvent) => void;
23
+ selectedState?: boolean;
24
+ headerItems?: HeaderItemsProps[] | null;
25
+ footerItems?: FooterItemsProps[] | null | undefined;
26
+ hideDropdown?: () => void;
27
+ tooltipValue?: string;
28
+ titleTooltip?: string;
29
+ itemAsLink?: boolean;
30
+ setSelected?: (value?: DropdownListItemValue) => void;
31
+ dataTestid?: string;
32
+ minHeight?: number;
33
+ parentTop?: number;
34
+ className?: string;
35
+ maxWidth?: string;
36
+ up?: boolean;
37
+ id?: string;
38
+ hideBackgroundColorOnSelected?: boolean;
39
+ contextMenuY?: number;
40
+ };
41
+ /**
42
+ * This component will not be exported
43
+ */
44
+ export declare const DropdownList: React.ForwardRefExoticComponent<DropdownContainerProps & ListContainerProps & {
45
+ items: DropdownListItemType[];
46
+ maxVisibleItems?: number | undefined;
47
+ selectedValue?: DropdownListItemValue | undefined;
48
+ title?: string | undefined;
49
+ disableValue?: DropdownListItemValue | undefined;
50
+ selectionMode?: DropdownListSelectionMode | undefined;
51
+ onItemClick?: ((value: DropdownListItemValue, fromEnter: boolean) => void) | undefined;
52
+ onItemMouseDown?: ((value: DropdownListItemValue, index?: number, e?: React.MouseEvent) => void) | undefined;
53
+ selectedState?: boolean | undefined;
54
+ headerItems?: HeaderItemsProps[] | null | undefined;
55
+ footerItems?: FooterItemsProps[] | null | undefined;
56
+ hideDropdown?: (() => void) | undefined;
57
+ tooltipValue?: string | undefined;
58
+ titleTooltip?: string | undefined;
59
+ itemAsLink?: boolean | undefined;
60
+ setSelected?: ((value?: DropdownListItemValue) => void) | undefined;
61
+ dataTestid?: string | undefined;
62
+ minHeight?: number | undefined;
63
+ parentTop?: number | undefined;
64
+ className?: string | undefined;
65
+ maxWidth?: string | undefined;
66
+ up?: boolean | undefined;
67
+ id?: string | undefined;
68
+ hideBackgroundColorOnSelected?: boolean | undefined;
69
+ contextMenuY?: number | undefined;
70
+ } & React.RefAttributes<HTMLDivElement>>;
71
+ export {};
@@ -0,0 +1,46 @@
1
+ import { ReactElement } from 'react';
2
+ import Color from '../constants/Color';
3
+ import TextWeight from '../constants/TextWeight';
4
+ import { DropdownListWidth, DropdownSize } from '../constants';
5
+ import { DropdownListItemType, DropdownListItemValue, DropdownPosition, DropdownType, FooterItemsProps } from './types';
6
+ type DropdownButtonProps = {
7
+ width?: number;
8
+ disabled?: boolean;
9
+ };
10
+ type SelectedOptionProps = {
11
+ fontWeight?: TextWeight;
12
+ };
13
+ export type DropdownProps = DropdownButtonProps & SelectedOptionProps & {
14
+ color?: Color;
15
+ className?: string;
16
+ error?: string;
17
+ type: DropdownType;
18
+ selectedValue?: DropdownListItemValue;
19
+ items: DropdownListItemType[];
20
+ maxVisibleItems?: number;
21
+ listWidth?: DropdownListWidth;
22
+ onItemClick: (value: DropdownListItemValue) => void;
23
+ selectedState?: boolean;
24
+ footerItems?: FooterItemsProps[] | null | undefined;
25
+ fixedSelectedValue?: string | number | ReactElement | null;
26
+ title?: string;
27
+ titleTooltip?: string;
28
+ useAvatar?: boolean;
29
+ preventSelected?: boolean;
30
+ disabled?: boolean;
31
+ autoTopDownDropdownList?: boolean;
32
+ dataTestid?: string;
33
+ noHoverState?: boolean;
34
+ parentBottomOffset?: number;
35
+ size?: DropdownSize;
36
+ dropdownPosition?: DropdownPosition;
37
+ iconDistance?: number;
38
+ onDropdownStateChange?: (options: {
39
+ hidden: boolean;
40
+ }) => void;
41
+ preventDefaultOnMouseDown?: boolean;
42
+ selectedInputMask?: string;
43
+ hideDropdownOnCollapse?: boolean;
44
+ };
45
+ export declare function Dropdown({ color, className, error, items, maxVisibleItems, type, width, fontWeight, onItemClick, listWidth, selectedValue, selectedState, footerItems, fixedSelectedValue, title, titleTooltip, useAvatar, preventSelected, disabled, autoTopDownDropdownList, dataTestid, noHoverState, dropdownPosition, iconDistance, parentBottomOffset, size, onDropdownStateChange, preventDefaultOnMouseDown, selectedInputMask, hideDropdownOnCollapse, }: DropdownProps): import("@emotion/react/jsx-runtime").JSX.Element;
46
+ export {};
@@ -0,0 +1,50 @@
1
+ import { ReactElement } from 'react';
2
+ import { AvatarContentProps } from '../avatar';
3
+ import IconType from '../constants/IconType';
4
+ import { TooltipPlacement } from '../tooltip';
5
+ export type DropdownListItemValue = string | number;
6
+ export declare enum DropdownListSelectionMode {
7
+ NONE = "none",
8
+ CHECKBOX = "checkbox",
9
+ RADIO = "radio"
10
+ }
11
+ export declare enum DropdownPosition {
12
+ LEFT = "left",
13
+ RIGHT = "right",
14
+ CENTER = "center",
15
+ TOP_LEFT = "topLeft"
16
+ }
17
+ export declare enum DropdownType {
18
+ TRANSPARENT = "transparent",
19
+ OUTLINED = "outlined",
20
+ SECONDARY = "secondary",
21
+ EDITOR = "editor",
22
+ GENERATOR = "generator",
23
+ DARK = "dark"
24
+ }
25
+ export type DropdownListItemContent = {
26
+ icon?: IconType | ReactElement;
27
+ avatar?: AvatarContentProps;
28
+ text?: string;
29
+ description?: string | null;
30
+ component?: ReactElement;
31
+ };
32
+ export type DropdownListItemType = {
33
+ premium?: boolean;
34
+ value?: DropdownListItemValue;
35
+ isSeparator?: boolean;
36
+ selected?: boolean;
37
+ content?: DropdownListItemContent;
38
+ disabled?: boolean;
39
+ tooltipText?: string;
40
+ tooltipTextPlacement?: TooltipPlacement;
41
+ showTooltipOnDisabled?: boolean;
42
+ };
43
+ export type HeaderItemsProps = {
44
+ onItemClick?: () => void;
45
+ content: DropdownListItemContent;
46
+ };
47
+ export type FooterItemsProps = {
48
+ onItemClick?: () => void;
49
+ content: DropdownListItemContent;
50
+ };
@@ -0,0 +1,9 @@
1
+ /// <reference types="react" />
2
+ /**
3
+ * Custom hook to debounce a function.
4
+ *
5
+ * @param callback - The callback function to be called after debouncing.
6
+ * @param delay - The debounce delay in milliseconds.
7
+ * @returns A function to update the debounced value.
8
+ */
9
+ export declare function useDebounce<T>(callback: (value: T) => void, delay: number): import("react").Dispatch<import("react").SetStateAction<T>>;
@@ -0,0 +1,2 @@
1
+ import { RefObject } from 'react';
2
+ export declare function useDropdownClickOutside({ current: buttonCurrent }: RefObject<HTMLDivElement>, { current: dropdownCurrent }: RefObject<HTMLDivElement>, dropdownIsVisible: boolean, callback: () => void): void;
@@ -1,9 +1,9 @@
1
1
  import React from 'react';
2
2
  import { BCValidationTypes } from './validationConstant';
3
- import { BCDropListOptionsType } from '../../dropList/bcdrop-list';
3
+ import { BCDropListOptionsType } from '../../constants';
4
4
  export declare const FormGroup: import("@emotion/styled").StyledComponent<{
5
5
  theme?: import("@emotion/react").Theme | undefined;
6
- as?: React.ElementType<any> | undefined;
6
+ as?: React.ElementType<any, keyof React.JSX.IntrinsicElements> | undefined;
7
7
  }, React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
8
8
  interface FormData {
9
9
  value: string;
@@ -11,15 +11,15 @@ interface FormData {
11
11
  message: string;
12
12
  validations?: FormValidation[];
13
13
  }
14
- interface FormField {
14
+ export interface FormField {
15
15
  value: string;
16
16
  validations?: FormValidation[];
17
17
  }
18
- interface FormValidation {
18
+ export interface FormValidation {
19
19
  validationType: BCValidationTypes;
20
20
  additionalParam?: string;
21
21
  }
22
- type FieldType = 'password' | 'text' | 'number' | 'boolean' | 'droplist' | 'file' | 'email';
22
+ type FieldType = 'password' | 'text' | 'number' | 'boolean' | 'droplist' | 'file' | 'email' | 'time' | 'date' | 'textArea';
23
23
  interface useBCFormReturnFunctions {
24
24
  setFieldValue: (name: string, value: string, validations?: FormValidation[]) => void;
25
25
  setFieldError: (name: string, error: string) => void;
@@ -40,5 +40,5 @@ type useMBFormReturnType = [
40
40
  ];
41
41
  export declare const useBCForm: (formInitialValue?: {
42
42
  [key: string]: FormField;
43
- } | undefined, t?: any) => useMBFormReturnType;
43
+ }, t?: any) => useMBFormReturnType;
44
44
  export default useBCForm;
@@ -0,0 +1 @@
1
+ export declare function useInterval(callback: () => void, delay: number | null): void;
@@ -0,0 +1,10 @@
1
+ type UsePollingProps = {
2
+ action: () => any;
3
+ interval: number;
4
+ };
5
+ export declare const usePolling: ({ action, interval }: UsePollingProps) => {
6
+ isPolling: boolean;
7
+ startPolling: () => void;
8
+ stopPolling: () => void;
9
+ };
10
+ export {};
@@ -0,0 +1 @@
1
+ export declare function usePrevious(value: any): undefined;
@@ -0,0 +1 @@
1
+ export declare function useToggle(initial?: boolean, reducer?: (state: boolean) => boolean): readonly [boolean, () => void];
@@ -0,0 +1,9 @@
1
+ export type SetParam<T> = (value: T) => void;
2
+ /**
3
+ * useUrlState
4
+ * --------------
5
+ * const [addType, setAddType] = useUrlState("keyName");
6
+ * addType is the value of the key=value pair in the url
7
+ * setAddType is a function that sets the value of the key=value pair in the url
8
+ */
9
+ export declare function useUrlState<K>(key: string, initialValue?: K): [K | undefined, SetParam<K>];
@@ -0,0 +1 @@
1
+ export declare function useWindowSize(): number[];
@@ -0,0 +1,29 @@
1
+ import Color from '../constants/Color';
2
+ import IconType from '../constants/IconType';
3
+ export declare enum IconSize {
4
+ XXL = 72,
5
+ XL = 42,
6
+ L = 28,
7
+ M = 18,
8
+ S = 14
9
+ }
10
+ export type IconProps = {
11
+ icon: IconType;
12
+ size?: IconSize;
13
+ color?: Color;
14
+ className?: string;
15
+ dataQA?: string;
16
+ };
17
+ export declare function BCIcon({ icon, size, color, className, dataQA, }: IconProps): import("@emotion/react/jsx-runtime").JSX.Element;
18
+ export interface BCIconsProps {
19
+ width?: string | number;
20
+ height?: string | number;
21
+ fill?: string;
22
+ }
23
+ export declare const BCIcons: {
24
+ WhatsApp: ({ width, height, fill, }: BCIconsProps) => import("@emotion/react/jsx-runtime").JSX.Element;
25
+ Facebook: ({ width, height, fill, }: BCIconsProps) => import("@emotion/react/jsx-runtime").JSX.Element;
26
+ Google: ({ width, height, fill, }: BCIconsProps) => import("@emotion/react/jsx-runtime").JSX.Element;
27
+ Broadcast: ({ width, height, fill, }: BCIconsProps) => import("@emotion/react/jsx-runtime").JSX.Element;
28
+ Bot: ({ width, height, fill }: BCIconsProps) => import("@emotion/react/jsx-runtime").JSX.Element;
29
+ };
@@ -0,0 +1,22 @@
1
+ export interface ItemDropdown {
2
+ id: string;
3
+ label: string;
4
+ thumb?: string | null;
5
+ groupLabel?: string | null;
6
+ }
7
+ export interface SelectedItem {
8
+ id: string;
9
+ disabled: boolean;
10
+ }
11
+ export type InputTagsProps = {
12
+ items?: ItemDropdown[];
13
+ selectedItems?: SelectedItem[];
14
+ placeholder?: string;
15
+ unselectItem: (id: string) => void;
16
+ selectItem: (id: string) => void;
17
+ isGroupedItems?: boolean;
18
+ noResultsFoundText?: string;
19
+ allowAddingNewTags?: boolean;
20
+ rtl?: boolean;
21
+ };
22
+ export declare function BCInputTags({ items, selectedItems, placeholder, unselectItem, selectItem, isGroupedItems, allowAddingNewTags, noResultsFoundText, rtl, }: InputTagsProps): import("@emotion/react/jsx-runtime").JSX.Element;
@@ -0,0 +1,77 @@
1
+ import { PropsWithChildren } from 'react';
2
+ export declare enum FlexDirection {
3
+ ROW = "row",
4
+ ROW_REVERSE = "row-reverse",
5
+ COLUMN = "column",
6
+ COLUMN_REVERSE = "column-reverse"
7
+ }
8
+ export declare enum FlexAlignItems {
9
+ NORMAL = "normal",
10
+ FLEX_START = "flex-start",
11
+ FLEX_END = "flex-end",
12
+ CENTER = "center",
13
+ BASELINE = "baseline",
14
+ INHERIT = "inherit",
15
+ STRETCH = "stretch"
16
+ }
17
+ export declare enum FlexJustifyContent {
18
+ NORMAL = "normal",
19
+ FLEX_START = "flex-start",
20
+ FLEX_END = "flex-end",
21
+ CENTER = "center",
22
+ SPACE_BETWEEN = "space-between",
23
+ SPACE_AROUND = "space-around",
24
+ INHERIT = "inherit"
25
+ }
26
+ export declare enum FlexWrap {
27
+ NO_WRAP = "nowrap",
28
+ WRAP = "wrap",
29
+ WRAP_REVERSE = "wrap-reverse",
30
+ INHERIT = "inherit"
31
+ }
32
+ export type FlexBoxWrapperStyleProps = {
33
+ distance?: string;
34
+ flexWrap?: FlexWrap;
35
+ width?: string;
36
+ height?: string;
37
+ minWidth?: string;
38
+ maxWidth?: string;
39
+ };
40
+ export type FlexBoxStyleProps = FlexBoxWrapperStyleProps & {
41
+ flexDirection?: FlexDirection;
42
+ alignItems: FlexAlignItems;
43
+ justifyContent: FlexJustifyContent;
44
+ overflow?: string;
45
+ marginTop?: string;
46
+ marginRight?: string;
47
+ marginBottom?: string;
48
+ marginLeft?: string;
49
+ textAlign?: string;
50
+ rtl?: boolean;
51
+ };
52
+ export type FlexBoxProps = {
53
+ direction?: FlexDirection;
54
+ wrap?: FlexWrap;
55
+ alignItems?: FlexAlignItems;
56
+ justifyContent?: FlexJustifyContent;
57
+ distance?: string;
58
+ marginTop?: string;
59
+ marginRight?: string;
60
+ marginBottom?: string;
61
+ marginLeft?: string;
62
+ overflow?: string;
63
+ width?: string;
64
+ height?: string;
65
+ dataTestid?: string;
66
+ minWidth?: string;
67
+ maxWidth?: string;
68
+ className?: string;
69
+ textAlign?: string;
70
+ rtl?: boolean;
71
+ };
72
+ /**
73
+ * Flex Box renders a container for a flexible box layout.
74
+ *
75
+ * The Flexible Box Layout Module, makes it easier to design flexible responsive layout structure without using float or positioning.
76
+ */
77
+ export declare const BCFlexBox: ({ direction, wrap, alignItems, justifyContent, distance, marginTop, marginRight, marginBottom, marginLeft, overflow, children, width, height, dataTestid, minWidth, maxWidth, className, textAlign, rtl, }: PropsWithChildren<FlexBoxProps>) => import("@emotion/react/jsx-runtime").JSX.Element;
@@ -0,0 +1,11 @@
1
+ import { ReactElement } from 'react';
2
+ export type GridLayoutProps = {
3
+ children: ReactElement[];
4
+ distance?: string;
5
+ dataTestid?: string;
6
+ elementMinWidth?: number;
7
+ };
8
+ /**
9
+ * The Grid Layout component renders children that will take on a variable amount of columns depending on available screen size.
10
+ */
11
+ export declare function BCGridLayout({ children, distance, elementMinWidth, dataTestid }: GridLayoutProps): import("@emotion/react/jsx-runtime").JSX.Element;
@@ -0,0 +1,26 @@
1
+ import { PropsWithChildren } from 'react';
2
+ import { FlexAlignItems, FlexJustifyContent } from '../flexBox';
3
+ export type HorizontalLayoutProps = {
4
+ distance?: string;
5
+ alignItems?: FlexAlignItems;
6
+ justifyContent?: FlexJustifyContent;
7
+ marginTop?: string;
8
+ marginRight?: string;
9
+ marginBottom?: string;
10
+ marginLeft?: string;
11
+ spaceBetween?: boolean;
12
+ overflow?: string;
13
+ width?: string;
14
+ height?: string;
15
+ dataTestid?: string;
16
+ minWidth?: string;
17
+ className?: string;
18
+ rtl?: boolean;
19
+ };
20
+ /**
21
+ * The Horizontal Layout component is a simple way to align multiple elements horizontally.
22
+ *
23
+ * By default the contained controls are not wrapped.
24
+ * If you want more sophisticated layout options, consider GridLayout or FlexBox components.
25
+ */
26
+ export declare const BCHorizontalLayout: ({ distance, alignItems, justifyContent, marginTop, marginRight, marginBottom, marginLeft, spaceBetween, overflow, children, width, height, dataTestid, minWidth, className, rtl, }: PropsWithChildren<HorizontalLayoutProps>) => import("@emotion/react/jsx-runtime").JSX.Element;
@@ -0,0 +1,4 @@
1
+ export * from './flexBox';
2
+ export * from './verticalLayout';
3
+ export * from './horizontalLayout';
4
+ export * from './gridLayout';
@@ -0,0 +1,22 @@
1
+ import { PropsWithChildren } from 'react';
2
+ import { FlexAlignItems } from '../flexBox';
3
+ export type VerticalLayoutProps = {
4
+ distance?: string;
5
+ alignItems?: FlexAlignItems;
6
+ marginTop?: string;
7
+ marginRight?: string;
8
+ marginBottom?: string;
9
+ marginLeft?: string;
10
+ overflow?: string;
11
+ width?: string;
12
+ dataTestid?: string;
13
+ minWidth?: string;
14
+ textAlign?: string;
15
+ };
16
+ /**
17
+ * The Vertical Layout component is a simple way to align multiple elements vertically.
18
+ *
19
+ * By default the contained controls are not wrapped.
20
+ * If you want more sophisticated layout options, consider GridLayout or FlexBox components.
21
+ */
22
+ export declare const BCVerticalLayout: ({ distance, alignItems, marginTop, marginRight, marginBottom, marginLeft, overflow, children, width, dataTestid, minWidth, textAlign, }: PropsWithChildren<VerticalLayoutProps>) => import("@emotion/react/jsx-runtime").JSX.Element;
@@ -0,0 +1,10 @@
1
+ import React from 'react';
2
+ import { Scrollbars } from 'react-custom-scrollbars';
3
+ export type LazyLoadBCScrollbarProps = {
4
+ loadMoreItems: () => void;
5
+ loading: boolean;
6
+ hasMore?: boolean;
7
+ children?: React.ReactNode;
8
+ rtl?: boolean;
9
+ };
10
+ export declare const BCLazyLoadScrollbar: React.ForwardRefExoticComponent<LazyLoadBCScrollbarProps & React.RefAttributes<Scrollbars>>;
@@ -0,0 +1,7 @@
1
+ /// <reference types="react" />
2
+ export declare const BCLine: import("@emotion/styled").StyledComponent<{
3
+ theme?: import("@emotion/react").Theme | undefined;
4
+ as?: import("react").ElementType<any, keyof import("react").JSX.IntrinsicElements> | undefined;
5
+ } & {
6
+ backgroundColor?: string | null | undefined;
7
+ }, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
@@ -1,9 +1,8 @@
1
1
  import 'react-loader-spinner/dist/loader/css/react-spinner-loader.css';
2
2
  export interface LoadingProps {
3
- className?: string;
4
3
  showBox?: boolean;
5
4
  blurContainer?: string;
6
5
  color?: string;
7
6
  }
8
- export declare const BCLoading: ({ className, showBox, blurContainer, color, }: LoadingProps) => import("@emotion/react/jsx-runtime").JSX.Element | null;
7
+ export declare const BCLoading: ({ showBox, blurContainer, color, }: LoadingProps) => import("@emotion/react/jsx-runtime").JSX.Element | null;
9
8
  export default BCLoading;
@@ -0,0 +1,10 @@
1
+ import { NavType } from './types';
2
+ export interface BCNavigationProps {
3
+ brand?: string;
4
+ handleLeftNavItemClick: (event: any, action?: string) => void;
5
+ navModel: NavType;
6
+ location: any;
7
+ rtl: boolean;
8
+ }
9
+ export declare const BCNavigation: ({ brand, navModel, handleLeftNavItemClick, location, rtl, }: BCNavigationProps) => import("@emotion/react/jsx-runtime").JSX.Element;
10
+ export default BCNavigation;
@@ -0,0 +1,9 @@
1
+ import { NavItem } from '../types';
2
+ export type Props = {
3
+ leftLinks: Array<NavItem>;
4
+ onLeftNavButtonClick: (event: any, action?: string) => void;
5
+ className?: string;
6
+ location: any;
7
+ };
8
+ declare const LeftNav: ({ leftLinks, onLeftNavButtonClick, className, location, }: Props) => import("@emotion/react/jsx-runtime").JSX.Element;
9
+ export default LeftNav;
@@ -0,0 +1,7 @@
1
+ import { NavItem } from '../../types';
2
+ export type Props = NavItem & {
3
+ onClick: (event: any, action?: string) => void;
4
+ active: boolean;
5
+ };
6
+ export declare const LeftNavButton: ({ link, label, onClick, active, icon, action, externalLink, }: Props) => import("@emotion/react/jsx-runtime").JSX.Element;
7
+ export default LeftNavButton;
@@ -0,0 +1,14 @@
1
+ import { ReactElement } from 'react';
2
+ export type NavItem = {
3
+ label: string;
4
+ icon: string | ReactElement;
5
+ link?: string;
6
+ externalLink?: string;
7
+ action?: string;
8
+ className?: string;
9
+ };
10
+ export type NavType = {
11
+ brand?: string | ReactElement;
12
+ leftLinks: Array<NavItem>;
13
+ leftBottomLinks: Array<NavItem>;
14
+ };
@@ -1,7 +1,8 @@
1
1
  import { ReactElement } from 'react';
2
2
  export declare enum OverlayContentPosition {
3
3
  CenterScreen = 0,
4
- RightSide = 1
4
+ RightSide = 1,
5
+ LeftSide = 2
5
6
  }
6
7
  export type BCOverlayProps = {
7
8
  children: ReactElement[] | ReactElement;
@@ -23,7 +23,7 @@ export type BCPopupProps = {
23
23
  };
24
24
  export declare const BCPopupContainer: import("@emotion/styled").StyledComponent<{
25
25
  theme?: import("@emotion/react").Theme | undefined;
26
- as?: import("react").ElementType<any> | undefined;
26
+ as?: import("react").ElementType<any, keyof import("react").JSX.IntrinsicElements> | undefined;
27
27
  } & {
28
28
  width?: number | undefined;
29
29
  minHeight?: number | undefined;
@@ -0,0 +1,20 @@
1
+ import { ReactNode } from 'react';
2
+ import { ButtonType } from '../button/types';
3
+ import TextSize from '../constants/TextSize';
4
+ import TextWeight from '../constants/TextWeight';
5
+ type ColorTheme = ButtonType.PRIMARY | ButtonType.SECONDARY;
6
+ export type RadioButtonProps = {
7
+ name?: string;
8
+ value: string | number;
9
+ onChange?: (value: string | number) => void;
10
+ checked: boolean;
11
+ label?: string;
12
+ colorTheme: ColorTheme;
13
+ children?: ReactNode;
14
+ disabled?: boolean;
15
+ className?: string;
16
+ size?: TextSize;
17
+ weight?: TextWeight;
18
+ };
19
+ export declare const BCRadioButton: ({ name, value, checked, onChange, label, colorTheme, children, disabled, className, size, weight, }: RadioButtonProps) => import("@emotion/react/jsx-runtime").JSX.Element;
20
+ export {};
@@ -36,6 +36,7 @@ export type ScrollAreaProps = {
36
36
  onScrollStop?: () => void;
37
37
  onScroll?: () => void;
38
38
  verticalTrackRightPosition?: number;
39
+ rtl?: boolean;
39
40
  };
40
41
  export declare const BCScrollArea: React.ForwardRefExoticComponent<ScrollAreaProps & React.RefAttributes<Scrollbars>>;
41
42
  export {};
@@ -0,0 +1,12 @@
1
+ import { ReactElement } from 'react';
2
+ export interface BCSearchboxProps {
3
+ className?: string;
4
+ onChange: (event: React.ChangeEvent<HTMLInputElement>) => void;
5
+ value?: string;
6
+ name?: string;
7
+ icon?: string | ReactElement;
8
+ placeholder?: string;
9
+ onKeyDown?: (event: React.KeyboardEvent<HTMLInputElement>) => void;
10
+ }
11
+ export declare const BCSearchbox: ({ className, onChange, value, name, placeholder, icon, onKeyDown, }: BCSearchboxProps) => import("@emotion/react/jsx-runtime").JSX.Element;
12
+ export default BCSearchbox;
@@ -0,0 +1,16 @@
1
+ import Color from '../constants/Color';
2
+ export declare enum SeparatorDirection {
3
+ HORIZONTAL = "horizontal",
4
+ VERTICAL = "vertical"
5
+ }
6
+ export type SeparatorProps = {
7
+ width?: number;
8
+ height?: number;
9
+ color?: Color;
10
+ padding?: string;
11
+ direction?: SeparatorDirection;
12
+ };
13
+ /**
14
+ * This component is used to add separator line in the application
15
+ */
16
+ export declare function BCSeparator({ width, height, color, padding, direction, }: SeparatorProps): import("@emotion/react/jsx-runtime").JSX.Element;
@@ -0,0 +1,12 @@
1
+ export interface SkeletonProps {
2
+ width?: number | string;
3
+ height?: number | string;
4
+ borderRadius?: number | string;
5
+ backgroundColor?: string;
6
+ opacity?: number;
7
+ animate?: boolean;
8
+ lightBackground?: string;
9
+ lightAnimate?: string;
10
+ className?: string;
11
+ }
12
+ export declare function BCSkeleton({ width, height, borderRadius, backgroundColor, opacity, animate, lightBackground, lightAnimate, className, }: SkeletonProps): import("@emotion/react/jsx-runtime").JSX.Element;