@juspay/blend-design-system 0.0.1 → 0.0.5-beta.1

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 (41) hide show
  1. package/dist/assets/main.css +1 -1
  2. package/dist/components/DateRangePicker/MobileDrawerPresets.d.ts +25 -0
  3. package/dist/components/DateRangePicker/dateRangePicker.tokens.d.ts +95 -0
  4. package/dist/components/DateRangePicker/index.d.ts +1 -0
  5. package/dist/components/DateRangePicker/types.d.ts +2 -0
  6. package/dist/components/DateRangePicker/utils.d.ts +66 -0
  7. package/dist/components/Drawer/components/DrawerBase.d.ts +2 -0
  8. package/dist/components/Drawer/drawer.tokens.d.ts +1 -1
  9. package/dist/components/Inputs/DropdownInput/DropdownInput.d.ts +1 -1
  10. package/dist/components/Inputs/DropdownInput/dropdownInput.tokens.d.ts +5 -1
  11. package/dist/components/Inputs/DropdownInput/types.d.ts +3 -1
  12. package/dist/components/Inputs/NumberInput/NumberInput.d.ts +1 -1
  13. package/dist/components/Inputs/NumberInput/numberInput.tokens.d.ts +5 -1
  14. package/dist/components/Inputs/NumberInput/types.d.ts +4 -2
  15. package/dist/components/Inputs/TextArea/textarea.token.d.ts +5 -1
  16. package/dist/components/Inputs/TextArea/types.d.ts +1 -1
  17. package/dist/components/Inputs/TextInput/TextInput.d.ts +1 -1
  18. package/dist/components/Inputs/TextInput/textInput.tokens.d.ts +5 -1
  19. package/dist/components/Inputs/TextInput/types.d.ts +3 -1
  20. package/dist/components/Inputs/UnitInput/UnitInput.d.ts +1 -1
  21. package/dist/components/Inputs/UnitInput/types.d.ts +3 -1
  22. package/dist/components/Inputs/UnitInput/unitInput.tokens.d.ts +5 -1
  23. package/dist/components/Inputs/utils/FloatingLabels/FloatingLabels.d.ts +7 -0
  24. package/dist/components/MultiSelect/MultiSelectTrigger.d.ts +22 -0
  25. package/dist/components/MultiSelect/index.d.ts +1 -0
  26. package/dist/components/MultiSelect/multiSelect.tokens.d.ts +10 -2
  27. package/dist/components/MultiSelect/types.d.ts +1 -0
  28. package/dist/components/Primitives/PrimitiveButton/PrimitiveButton.d.ts +4 -0
  29. package/dist/components/Primitives/PrimitiveInput/PrimitiveInput.d.ts +2 -0
  30. package/dist/components/Primitives/PrimitiveText/PrimitiveText.d.ts +5 -0
  31. package/dist/components/Primitives/PrimitiveTextArea.d.ts +2 -0
  32. package/dist/components/SingleSelect/SingleSelectTrigger.d.ts +21 -0
  33. package/dist/components/SingleSelect/singleSelect.tokens.d.ts +76 -0
  34. package/dist/components/SingleSelect/types.d.ts +54 -1
  35. package/dist/components/Tabs/tabs.token.d.ts +14 -5
  36. package/dist/components/Tabs/types.d.ts +2 -1
  37. package/dist/context/ThemeContext.d.ts +16 -14
  38. package/dist/context/useComponentToken.d.ts +9 -8
  39. package/dist/global-utils/GlobalUtils.d.ts +1 -0
  40. package/dist/main.js +17386 -14917
  41. package/package.json +24 -3
@@ -0,0 +1,76 @@
1
+ import { CSSObject } from 'styled-components';
2
+ import { SelectMenuSize, SelectMenuVariant } from './types';
3
+ import { FoundationTokenType } from '../../tokens/theme.token';
4
+ import { BreakpointType } from '../../breakpoints/breakPoints';
5
+ type TriggerStates = 'open' | 'closed' | 'hover' | 'focus';
6
+ export type SingleSelectItemStates = 'default' | 'hover' | 'active' | 'focus' | 'focusVisible' | 'disabled' | 'selected';
7
+ export type SingleSelectTokensType = {
8
+ trigger: {
9
+ height: CSSObject['height'];
10
+ paddingX: {
11
+ [key in SelectMenuSize]: CSSObject['padding'];
12
+ };
13
+ paddingY: {
14
+ [key in SelectMenuSize]: CSSObject['padding'];
15
+ };
16
+ borderRadius: {
17
+ [key in SelectMenuSize]: CSSObject['borderRadius'];
18
+ };
19
+ boxShadow: {
20
+ [key in SelectMenuVariant]: CSSObject['boxShadow'];
21
+ };
22
+ backgroundColor: {
23
+ container: {
24
+ [key in TriggerStates]: CSSObject['backgroundColor'];
25
+ };
26
+ };
27
+ outline: {
28
+ [key in SelectMenuVariant]: {
29
+ [key in TriggerStates]: CSSObject['outline'];
30
+ };
31
+ };
32
+ };
33
+ dropdown: {
34
+ shadow: CSSObject['boxShadow'];
35
+ backgroundColor: CSSObject['backgroundColor'];
36
+ paddingTop: CSSObject['paddingTop'];
37
+ paddingBottom: CSSObject['paddingBottom'];
38
+ border: CSSObject['border'];
39
+ outline: CSSObject['outline'];
40
+ borderRadius: CSSObject['borderRadius'];
41
+ item: {
42
+ padding: CSSObject['padding'];
43
+ margin: CSSObject['margin'];
44
+ borderRadius: CSSObject['borderRadius'];
45
+ gap: CSSObject['gap'];
46
+ backgroundColor: {
47
+ [key in SingleSelectItemStates]: CSSObject['backgroundColor'];
48
+ };
49
+ label: {
50
+ fontSize: CSSObject['fontSize'];
51
+ fontWeight: CSSObject['fontWeight'];
52
+ color: {
53
+ [key in SingleSelectItemStates]: CSSObject['color'];
54
+ };
55
+ };
56
+ subLabel: {
57
+ fontSize: CSSObject['fontSize'];
58
+ fontWeight: CSSObject['fontWeight'];
59
+ color: {
60
+ [key in SingleSelectItemStates]: CSSObject['color'];
61
+ };
62
+ };
63
+ };
64
+ seperator: {
65
+ color: CSSObject['color'];
66
+ height: CSSObject['height'];
67
+ margin: CSSObject['margin'];
68
+ };
69
+ };
70
+ };
71
+ export type ResponsiveSingleSelectTokens = {
72
+ [key in keyof BreakpointType]: SingleSelectTokensType;
73
+ };
74
+ export declare const singleSelectTokens: SingleSelectTokensType;
75
+ export declare const getSingleSelectTokens: (foundationToken: FoundationTokenType) => ResponsiveSingleSelectTokens;
76
+ export {};
@@ -1,4 +1,57 @@
1
- import { SelectMenuAlignment, SelectMenuSide, SelectMenuGroupType, SelectMenuSize, SelectMenuVariant } from '../Select';
1
+ export declare enum SelectMenuAlignment {
2
+ START = "start",
3
+ CENTER = "center",
4
+ END = "end"
5
+ }
6
+ export declare enum SelectMenuVariant {
7
+ CONTAINER = "container",
8
+ NO_CONTAINER = "no-container"
9
+ }
10
+ export declare enum SelectMenuSize {
11
+ SMALL = "sm",
12
+ MEDIUM = "md",
13
+ LARGE = "lg"
14
+ }
15
+ export declare enum SelectMenuSide {
16
+ TOP = "top",
17
+ LEFT = "left",
18
+ RIGHT = "right",
19
+ BOTTOM = "bottom"
20
+ }
21
+ export type SelectMenuGroupType = {
22
+ groupLabel?: string;
23
+ items: SelectMenuItemType[];
24
+ showSeparator?: boolean;
25
+ };
26
+ export type SelectMenuProps = {
27
+ trigger?: React.ReactNode;
28
+ items: SelectMenuGroupType[];
29
+ asModal?: boolean;
30
+ alignment?: SelectMenuAlignment;
31
+ side?: SelectMenuSide;
32
+ sideOffset?: number;
33
+ alignOffset?: number;
34
+ collisonBoundaryRef?: Element | null | Array<Element | null>;
35
+ maxHeight?: number;
36
+ selected?: string | string[];
37
+ onSelect?: (value: string | string[]) => void;
38
+ allowMultiSelect?: boolean;
39
+ enableSearch?: boolean;
40
+ onOpenChange?: (open: boolean) => void;
41
+ };
42
+ export type SelectMenuItemType = {
43
+ label: string;
44
+ value: string;
45
+ checked?: boolean;
46
+ subLabel?: string;
47
+ slot1?: React.ReactNode;
48
+ slot2?: React.ReactNode;
49
+ slot3?: React.ReactNode;
50
+ slot4?: React.ReactNode;
51
+ disabled?: boolean;
52
+ onClick?: () => void;
53
+ subMenu?: SelectMenuItemType[];
54
+ };
2
55
  export type SingleSelectProps = {
3
56
  label: string;
4
57
  subLabel?: string;
@@ -1,10 +1,13 @@
1
1
  import { CSSObject } from 'styled-components';
2
2
  import { ThemeType } from '../../tokens';
3
3
  import { TabsVariant, TabsSize } from './types';
4
+ import { BreakpointType } from '../../breakpoints/breakPoints';
4
5
  export type TabsState = 'default' | 'hover' | 'active' | 'disabled';
5
6
  export type TabsTokensType = {
6
7
  gap: {
7
- [key in TabsVariant]: CSSObject['gap'];
8
+ [key in TabsSize]: {
9
+ [key in TabsVariant]: CSSObject['gap'];
10
+ };
8
11
  };
9
12
  list: {
10
13
  padding: {
@@ -25,7 +28,9 @@ export type TabsTokensType = {
25
28
  [key in TabsSize]: CSSObject['height'];
26
29
  };
27
30
  padding: {
28
- [key in TabsSize]: CSSObject['padding'];
31
+ [key in TabsVariant]: {
32
+ [key in TabsSize]: CSSObject['padding'];
33
+ };
29
34
  };
30
35
  fontSize: {
31
36
  [key in TabsSize]: CSSObject['fontSize'];
@@ -49,12 +54,16 @@ export type TabsTokensType = {
49
54
  borderRadius: {
50
55
  [key in TabsVariant]: CSSObject['borderRadius'];
51
56
  };
57
+ border: {
58
+ [key in TabsVariant]: CSSObject['border'];
59
+ };
52
60
  };
53
61
  underline: {
54
62
  height: CSSObject['height'];
55
63
  color: CSSObject['color'];
56
64
  };
57
65
  };
58
- export declare const getTabsTokens: (foundationToken: ThemeType) => TabsTokensType;
59
- declare const tabsTokens: TabsTokensType;
60
- export default tabsTokens;
66
+ export type ResponsiveTabsTokens = {
67
+ [key in keyof BreakpointType]: TabsTokensType;
68
+ };
69
+ export declare const getTabsTokens: (foundationToken: ThemeType) => ResponsiveTabsTokens;
@@ -3,7 +3,8 @@ import * as TabsPrimitive from '@radix-ui/react-tabs';
3
3
  export declare enum TabsVariant {
4
4
  BOXED = "boxed",
5
5
  FLOATING = "floating",
6
- UNDERLINE = "underline"
6
+ UNDERLINE = "underline",
7
+ PILLS = "pills"
7
8
  }
8
9
  export declare enum TabsSize {
9
10
  MD = "md",
@@ -1,25 +1,25 @@
1
1
  import { ThemeType } from '../tokens';
2
2
  import { ResponsiveTagTokens } from '../components/Tags/tag.tokens';
3
3
  import { SearchInputTokensType } from '../components/Inputs/SearchInput/searchInput.tokens';
4
- import { TextAreaTokensType } from '../components/Inputs/TextArea/textarea.token';
4
+ import { ResponsiveTextAreaTokens } from '../components/Inputs/TextArea/textarea.token';
5
5
  import { ResponsiveRadioTokens } from '../components/Radio/radio.token';
6
6
  import { ResponsiveSwitchTokens } from '../components/Switch/switch.token';
7
- import { TextInputTokensType } from '../components/Inputs/TextInput/textInput.tokens';
8
- import { NumberInputTokensType } from '../components/Inputs/NumberInput/numberInput.tokens';
7
+ import { ResponsiveTextInputTokens } from '../components/Inputs/TextInput/textInput.tokens';
8
+ import { ResponsiveNumberInputTokens } from '../components/Inputs/NumberInput/numberInput.tokens';
9
9
  import { ResponsiveAlertTokens } from '../components/Alert/alert.tokens';
10
10
  import { OTPInputTokensType } from '../components/Inputs/OTPInput/otpInput.tokens';
11
11
  import { TooltipTokensType } from '../components/Tooltip/tooltip.tokens';
12
- import { UnitInputTokensType } from '../components/Inputs/UnitInput/unitInput.tokens';
12
+ import { ResponsiveUnitInputTokens } from '../components/Inputs/UnitInput/unitInput.tokens';
13
13
  import { MultiValueInputTokensType } from '../components/Inputs/MultiValueInput/multiValueInput.tokens';
14
- import { DropdownInputTokensType } from '../components/Inputs/DropdownInput/dropdownInput.tokens';
14
+ import { ResponsiveDropdownInputTokens } from '../components/Inputs/DropdownInput/dropdownInput.tokens';
15
15
  import { ResponsiveCheckboxTokens } from '../components/Checkbox/checkbox.token';
16
- import { TabsTokensType } from '../components/Tabs/tabs.token';
16
+ import { ResponsiveTabsTokens } from '../components/Tabs/tabs.token';
17
17
  import { ResponsiveButtonTokens } from '../components/Button/button.tokens';
18
18
  import { ModalTokensType } from '../components/Modal/modal.tokens';
19
19
  import { ResponsiveBreadcrumbTokens } from '../components/Breadcrumb/breadcrumb.tokens';
20
20
  import { PopoverTokenType } from '../components/Popover/popover.tokens';
21
21
  import { ResponsiveMenuTokensType } from '../components/Menu/menu.tokens';
22
- import { MultiSelectTokensType } from '../components/MultiSelect/multiSelect.tokens';
22
+ import { ResponsiveMultiSelectTokens } from '../components/MultiSelect/multiSelect.tokens';
23
23
  import { TableTokenType } from '../components/DataTable/dataTable.tokens';
24
24
  import { CalendarTokenType } from '../components/DateRangePicker/dateRangePicker.tokens';
25
25
  import { AccordionTokenType } from '../components/Accordion/accordion.tokens';
@@ -27,28 +27,30 @@ import { StatCardTokenType } from '../components/StatCard/statcard.tokens';
27
27
  import { ProgressBarTokenType } from '../components/ProgressBar/progressbar.tokens';
28
28
  import { DrawerTokensType } from '../components/Drawer/drawer.tokens';
29
29
  import { BreakpointType } from '../breakpoints/breakPoints';
30
+ import { ResponsiveSingleSelectTokens } from '../components/SingleSelect/singleSelect.tokens';
30
31
  export type ComponentTokenType = {
31
32
  TAGS?: ResponsiveTagTokens;
32
33
  SEARCH_INPUT?: SearchInputTokensType;
33
- TEXT_AREA?: TextAreaTokensType;
34
+ TEXT_AREA?: ResponsiveTextAreaTokens;
34
35
  RADIO?: ResponsiveRadioTokens;
35
36
  SWITCH?: ResponsiveSwitchTokens;
36
- TEXT_INPUT?: TextInputTokensType;
37
- NUMBER_INPUT?: NumberInputTokensType;
37
+ TEXT_INPUT?: ResponsiveTextInputTokens;
38
+ NUMBER_INPUT?: ResponsiveNumberInputTokens;
38
39
  ALERT?: ResponsiveAlertTokens;
39
40
  OTP_INPUT?: OTPInputTokensType;
40
41
  TOOLTIP?: TooltipTokensType;
41
- UNIT_INPUT?: UnitInputTokensType;
42
+ UNIT_INPUT?: ResponsiveUnitInputTokens;
42
43
  MULTI_VALUE_INPUT?: MultiValueInputTokensType;
43
- DROPDOWN_INPUT?: DropdownInputTokensType;
44
+ DROPDOWN_INPUT?: ResponsiveDropdownInputTokens;
44
45
  CHECKBOX?: ResponsiveCheckboxTokens;
45
- TABS?: TabsTokensType;
46
+ TABS?: ResponsiveTabsTokens;
46
47
  BUTTON?: ResponsiveButtonTokens;
47
48
  MODAL?: ModalTokensType;
48
49
  BREADCRUMB?: ResponsiveBreadcrumbTokens;
49
50
  POPOVER?: PopoverTokenType;
50
51
  MENU?: ResponsiveMenuTokensType;
51
- MULTI_SELECT?: MultiSelectTokensType;
52
+ MULTI_SELECT?: ResponsiveMultiSelectTokens;
53
+ SINGLE_SELECT?: ResponsiveSingleSelectTokens;
52
54
  TABLE?: TableTokenType;
53
55
  CALENDAR?: CalendarTokenType;
54
56
  ACCORDION?: AccordionTokenType;
@@ -1,29 +1,30 @@
1
1
  import { SearchInputTokensType } from '../components/Inputs/SearchInput/searchInput.tokens';
2
- import { TextAreaTokensType } from '../components/Inputs/TextArea/textarea.token';
2
+ import { ResponsiveTextAreaTokens } from '../components/Inputs/TextArea/textarea.token';
3
3
  import { ResponsiveTagTokens } from '../components/Tags/tag.tokens';
4
4
  import { ResponsiveRadioTokens } from '../components/Radio/radio.token';
5
5
  import { ResponsiveSwitchTokens } from '../components/Switch/switch.token';
6
6
  import { ResponsiveCheckboxTokens } from '../components/Checkbox/checkbox.token';
7
- import { TabsTokensType } from '../components/Tabs/tabs.token';
7
+ import { ResponsiveTabsTokens } from '../components/Tabs/tabs.token';
8
8
  import { ComponentTokenType } from './ThemeContext';
9
- import { TextInputTokensType } from '../components/Inputs/TextInput/textInput.tokens';
10
- import { NumberInputTokensType } from '../components/Inputs/NumberInput/numberInput.tokens';
9
+ import { ResponsiveTextInputTokens } from '../components/Inputs/TextInput/textInput.tokens';
10
+ import { ResponsiveNumberInputTokens } from '../components/Inputs/NumberInput/numberInput.tokens';
11
11
  import { ResponsiveAlertTokens } from '../components/Alert/alert.tokens';
12
12
  import { OTPInputTokensType } from '../components/Inputs/OTPInput/otpInput.tokens';
13
13
  import { TooltipTokensType } from '../components/Tooltip/tooltip.tokens';
14
- import { UnitInputTokensType } from '../components/Inputs/UnitInput/unitInput.tokens';
14
+ import { ResponsiveUnitInputTokens } from '../components/Inputs/UnitInput/unitInput.tokens';
15
15
  import { MultiValueInputTokensType } from '../components/Inputs/MultiValueInput/multiValueInput.tokens';
16
- import { DropdownInputTokensType } from '../components/Inputs/DropdownInput/dropdownInput.tokens';
16
+ import { ResponsiveDropdownInputTokens } from '../components/Inputs/DropdownInput/dropdownInput.tokens';
17
17
  import { ResponsiveButtonTokens } from '../components/Button/button.tokens';
18
18
  import { ModalTokensType } from '../components/Modal/modal.tokens';
19
19
  import { ResponsiveBreadcrumbTokens } from '../components/Breadcrumb/breadcrumb.tokens';
20
20
  import { PopoverTokenType } from '../components/Popover/popover.tokens';
21
21
  import { ResponsiveMenuTokensType } from '../components/Menu/menu.tokens';
22
- import { MultiSelectTokensType } from '../components/MultiSelect/multiSelect.tokens';
22
+ import { ResponsiveMultiSelectTokens } from '../components/MultiSelect/multiSelect.tokens';
23
23
  import { TableTokenType } from '../components/DataTable/dataTable.tokens';
24
24
  import { CalendarTokenType } from '../components/DateRangePicker/dateRangePicker.tokens';
25
25
  import { AccordionTokenType } from '../components/Accordion/accordion.tokens';
26
26
  import { StatCardTokenType } from '../components/StatCard/statcard.tokens';
27
27
  import { ProgressBarTokenType } from '../components/ProgressBar/progressbar.tokens';
28
28
  import { DrawerTokensType } from '../components/Drawer/drawer.tokens';
29
- export declare const useComponentToken: (component: keyof ComponentTokenType) => SearchInputTokensType | ResponsiveTagTokens | TextAreaTokensType | TextInputTokensType | NumberInputTokensType | ResponsiveAlertTokens | ResponsiveRadioTokens | OTPInputTokensType | UnitInputTokensType | MultiValueInputTokensType | ResponsiveSwitchTokens | ResponsiveCheckboxTokens | TabsTokensType | TooltipTokensType | DropdownInputTokensType | ResponsiveButtonTokens | ModalTokensType | ResponsiveBreadcrumbTokens | PopoverTokenType | ResponsiveMenuTokensType | MultiSelectTokensType | TableTokenType | CalendarTokenType | AccordionTokenType | StatCardTokenType | ProgressBarTokenType | DrawerTokensType;
29
+ import { ResponsiveSingleSelectTokens } from '../components/SingleSelect/singleSelect.tokens';
30
+ export declare const useComponentToken: (component: keyof ComponentTokenType) => SearchInputTokensType | ResponsiveTagTokens | ResponsiveTextAreaTokens | ResponsiveTextInputTokens | ResponsiveNumberInputTokens | ResponsiveAlertTokens | ResponsiveRadioTokens | OTPInputTokensType | ResponsiveUnitInputTokens | MultiValueInputTokensType | ResponsiveSwitchTokens | ResponsiveCheckboxTokens | ResponsiveTabsTokens | TooltipTokensType | ResponsiveDropdownInputTokens | ResponsiveButtonTokens | ModalTokensType | ResponsiveBreadcrumbTokens | PopoverTokenType | ResponsiveMenuTokensType | ResponsiveMultiSelectTokens | ResponsiveSingleSelectTokens | TableTokenType | CalendarTokenType | AccordionTokenType | StatCardTokenType | ProgressBarTokenType | DrawerTokensType;
@@ -0,0 +1 @@
1
+ export declare const toPixels: (value: string | number | undefined) => number;