chop-logic-components 1.0.5 → 1.0.7

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 (149) hide show
  1. package/dist/components/containers/form/Form.d.ts +1 -1
  2. package/dist/components/containers/form/__docs__/FormExample.d.ts +2 -1
  3. package/dist/components/containers/form/controller.d.ts +2 -2
  4. package/dist/components/containers/form/helpers.d.ts +1 -1
  5. package/dist/components/containers/grid/Grid.d.ts +2 -1
  6. package/dist/components/containers/grid/__docs__/GridExample.d.ts +2 -1
  7. package/dist/components/containers/grid/controller.d.ts +1 -1
  8. package/dist/components/containers/grid/elements/Body.d.ts +2 -1
  9. package/dist/components/containers/grid/elements/ColumnGroup.d.ts +1 -1
  10. package/dist/components/containers/grid/elements/DataCell.d.ts +1 -1
  11. package/dist/components/containers/grid/elements/Head.d.ts +2 -1
  12. package/dist/components/containers/grid/elements/Row.d.ts +1 -1
  13. package/dist/components/containers/grid/helpers.d.ts +3 -2
  14. package/dist/components/containers/tabs/Tabs.d.ts +1 -1
  15. package/dist/components/containers/tabs/Tabs.styled.d.ts +1 -1
  16. package/dist/components/containers/tabs/__docs__/Tabs.stories.d.ts +1 -1
  17. package/dist/components/containers/tabs/__docs__/TabsExample.d.ts +4 -1
  18. package/dist/components/containers/tabs/elements/TabButton.d.ts +1 -1
  19. package/dist/components/containers/tabs/elements/TabContent.d.ts +1 -1
  20. package/dist/components/containers/tabs/elements/TabList.d.ts +1 -1
  21. package/dist/components/index.d.ts +1 -0
  22. package/dist/components/inputs/button/Button.d.ts +1 -1
  23. package/dist/components/inputs/button/Button.styled.d.ts +5 -6
  24. package/dist/components/inputs/button/__docs__/Button.stories.d.ts +2 -4
  25. package/dist/components/inputs/button/__docs__/ButtonExample.d.ts +1 -1
  26. package/dist/components/inputs/checkbox/Checkbox.d.ts +1 -1
  27. package/dist/components/inputs/checkbox/Checkbox.styled.d.ts +1 -2
  28. package/dist/components/inputs/checkbox/__docs__/CheckboxExample.d.ts +1 -1
  29. package/dist/components/inputs/checkbox/controller.d.ts +2 -0
  30. package/dist/components/inputs/checkbox/helpers.d.ts +1 -1
  31. package/dist/components/inputs/multi-select/MultiSelect.d.ts +2 -1
  32. package/dist/components/inputs/multi-select/__docs__/MultiSelectExample.d.ts +1 -1
  33. package/dist/components/inputs/multi-select/controller.d.ts +1 -2
  34. package/dist/components/inputs/multi-select/elements/Combobox.d.ts +2 -1
  35. package/dist/components/inputs/multi-select/elements/Dropdown.d.ts +2 -1
  36. package/dist/components/inputs/multi-select/elements/Option.d.ts +2 -1
  37. package/dist/components/inputs/multi-select/helpers.d.ts +1 -3
  38. package/dist/components/inputs/numeric/NumericInput.d.ts +1 -1
  39. package/dist/components/inputs/numeric/NumericInput.styled.d.ts +1 -8
  40. package/dist/components/inputs/numeric/__docs__/NumericInputExample.d.ts +1 -1
  41. package/dist/components/inputs/numeric/controller.d.ts +2 -2
  42. package/dist/components/inputs/numeric/helpers.d.ts +1 -2
  43. package/dist/components/inputs/select/Select.d.ts +2 -1
  44. package/dist/components/inputs/select/__docs__/SelectExample.d.ts +1 -1
  45. package/dist/components/inputs/select/controller.d.ts +1 -1
  46. package/dist/components/inputs/select/elements/Combobox.d.ts +2 -1
  47. package/dist/components/inputs/select/elements/Dropdown.d.ts +2 -1
  48. package/dist/components/inputs/select/elements/Option.d.ts +2 -1
  49. package/dist/components/inputs/select/helpers.d.ts +1 -2
  50. package/dist/components/inputs/text/TextInput.d.ts +1 -1
  51. package/dist/components/inputs/text/TextInput.styled.d.ts +1 -8
  52. package/dist/components/inputs/text/__docs__/TextInputExample.d.ts +1 -1
  53. package/dist/components/inputs/text/controller.d.ts +2 -2
  54. package/dist/components/inputs/text/helpers.d.ts +1 -2
  55. package/dist/components/modals/alert/Alert.d.ts +2 -1
  56. package/dist/components/modals/alert/__docs__/Alert.stories.d.ts +1 -1
  57. package/dist/components/modals/alert/elements/Header.d.ts +1 -1
  58. package/dist/components/modals/alert/helpers.d.ts +2 -2
  59. package/dist/components/modals/dialog/Dialog.d.ts +2 -1
  60. package/dist/components/modals/dialog/__docs__/DialogExample.d.ts +1 -1
  61. package/dist/components/modals/dialog/elements/Layout.d.ts +1 -1
  62. package/dist/components/modals/tooltip/Tooltip.d.ts +2 -1
  63. package/dist/components/modals/tooltip/__docs__/TooltipExample.d.ts +1 -1
  64. package/dist/components/modals/tooltip/controller.d.ts +4 -2
  65. package/dist/{components/containers/form/FormContext.d.ts → contexts/chop-logic-form-context.d.ts} +1 -1
  66. package/dist/contexts/index.d.ts +1 -0
  67. package/dist/css/index.d.ts +3 -0
  68. package/dist/css/screen-breakpoints.d.ts +7 -0
  69. package/dist/css/themes.d.ts +4 -0
  70. package/dist/elements/icon/Icon.d.ts +7 -0
  71. package/dist/elements/index.d.ts +4 -0
  72. package/dist/{components/inputs/_common → elements}/input-inner-button/InputInnerButton.d.ts +2 -1
  73. package/dist/elements/label/Label.styled.d.ts +1 -0
  74. package/dist/{components/inputs/select → elements/styled}/Select.styled.d.ts +4 -5
  75. package/dist/enums/chop-logic-alert-mode.d.ts +7 -0
  76. package/dist/{components/misc/icon/Icon.d.ts → enums/chop-logic-icon-name.d.ts} +0 -6
  77. package/dist/enums/index.d.ts +2 -0
  78. package/dist/hooks/index.d.ts +2 -0
  79. package/dist/hooks/use-container-dimensions/index.d.ts +1 -0
  80. package/dist/hooks/use-modal-focus-trap/index.d.ts +2 -0
  81. package/dist/hooks/use-tooltip-position/index.d.ts +2 -0
  82. package/dist/index.cjs.js +705 -769
  83. package/dist/index.cjs.js.map +1 -1
  84. package/dist/index.es.js +11318 -11294
  85. package/dist/index.es.js.map +1 -1
  86. package/dist/types/chop-logic-theme.d.ts +31 -0
  87. package/dist/{utils/types.d.ts → types/components/_common.d.ts} +10 -7
  88. package/dist/{components/modals/alert/types.d.ts → types/components/alert.d.ts} +2 -3
  89. package/dist/types/components/button.d.ts +13 -0
  90. package/dist/{components/inputs/checkbox/types.d.ts → types/components/checkbox.d.ts} +3 -2
  91. package/dist/{components/modals/dialog/types.d.ts → types/components/dialog.d.ts} +3 -3
  92. package/dist/{components/containers/form/types.d.ts → types/components/form.d.ts} +4 -5
  93. package/dist/{components/containers/grid/types.d.ts → types/components/grid.d.ts} +4 -3
  94. package/dist/{components/inputs/multi-select/types.d.ts → types/components/multi-select.d.ts} +2 -2
  95. package/dist/{components/inputs/numeric/types.d.ts → types/components/numeric.d.ts} +5 -4
  96. package/dist/{components/inputs/select/types.d.ts → types/components/select.d.ts} +7 -7
  97. package/dist/{components/containers/tabs/types.d.ts → types/components/tabs.d.ts} +3 -2
  98. package/dist/{components/inputs/text/types.d.ts → types/components/text.d.ts} +7 -8
  99. package/dist/{components/modals/tooltip/types.d.ts → types/components/tooltip.d.ts} +3 -3
  100. package/dist/types/index.d.ts +13 -0
  101. package/dist/utils/__tests__/handle-dropdown-list-key-press.test.d.ts +1 -0
  102. package/dist/utils/get-chop-logic-theme.d.ts +3 -0
  103. package/dist/utils/handle-dropdown-list-key-press.d.ts +8 -0
  104. package/dist/utils/index.d.ts +3 -0
  105. package/package.json +19 -15
  106. package/dist/components/inputs/_common/label/Label.styled.d.ts +0 -3
  107. package/dist/components/inputs/button/types.d.ts +0 -13
  108. package/dist/components/inputs/multi-select/MultiSelect.styled.d.ts +0 -10
  109. package/dist/constants/style-variables.d.ts +0 -51
  110. package/dist/utils/get-initial-color-mode.d.ts +0 -1
  111. /package/dist/components/containers/portal/{index.d.ts → Portal.d.ts} +0 -0
  112. /package/dist/{constants → css}/animations.d.ts +0 -0
  113. /package/dist/{components/inputs/_common → elements}/error-message/ErrorMessage.d.ts +0 -0
  114. /package/dist/{components/inputs/_common → elements}/error-message/ErrorMessage.styled.d.ts +0 -0
  115. /package/dist/{components/inputs/_common → elements}/error-message/__tests__/ErrorMessage.test.d.ts +0 -0
  116. /package/dist/{components/inputs/_common → elements}/input-inner-button/InputInnerButton.styled.d.ts +0 -0
  117. /package/dist/{components/inputs/_common → elements}/input-inner-button/__tests__/InputInnerButton.test.d.ts +0 -0
  118. /package/dist/{components/inputs/_common → elements}/label/Label.d.ts +0 -0
  119. /package/dist/{components/inputs/_common → elements}/label/__tests__/Label.test.d.ts +0 -0
  120. /package/dist/{components/misc/icon/elements/ArrowDown.d.ts → icons/ArrowDownIcon.d.ts} +0 -0
  121. /package/dist/{components/misc/icon/elements/ArrowUp.d.ts → icons/ArrowUpIcon.d.ts} +0 -0
  122. /package/dist/{components/misc/icon/elements/Back.d.ts → icons/BackIcon.d.ts} +0 -0
  123. /package/dist/{components/misc/icon/elements/Cancel.d.ts → icons/CancelIcon.d.ts} +0 -0
  124. /package/dist/{components/misc/icon/elements/CheckMark.d.ts → icons/CheckMarkIcon.d.ts} +0 -0
  125. /package/dist/{components/misc/icon/elements/CheckboxChecked.d.ts → icons/CheckboxCheckedIcon.d.ts} +0 -0
  126. /package/dist/{components/misc/icon/elements/CheckboxUnchecked.d.ts → icons/CheckboxUncheckedIcon.d.ts} +0 -0
  127. /package/dist/{components/misc/icon/elements/ChevronDown.d.ts → icons/ChevronDownIcon.d.ts} +0 -0
  128. /package/dist/{components/misc/icon/elements/ChevronLeft.d.ts → icons/ChevronLeftIcon.d.ts} +0 -0
  129. /package/dist/{components/misc/icon/elements/ChevronRight.d.ts → icons/ChevronRightIcon.d.ts} +0 -0
  130. /package/dist/{components/misc/icon/elements/ChevronUp.d.ts → icons/ChevronUpIcon.d.ts} +0 -0
  131. /package/dist/{components/misc/icon/elements/Clear.d.ts → icons/ClearIcon.d.ts} +0 -0
  132. /package/dist/{components/misc/icon/elements/Copy.d.ts → icons/CopyIcon.d.ts} +0 -0
  133. /package/dist/{components/misc/icon/elements/Cut.d.ts → icons/CutIcon.d.ts} +0 -0
  134. /package/dist/{components/misc/icon/elements/Delete.d.ts → icons/DeleteIcon.d.ts} +0 -0
  135. /package/dist/{components/misc/icon/elements/Download.d.ts → icons/DownloadIcon.d.ts} +0 -0
  136. /package/dist/{components/misc/icon/elements/Error.d.ts → icons/ErrorIcon.d.ts} +0 -0
  137. /package/dist/{components/misc/icon/elements/Forward.d.ts → icons/ForwardIcon.d.ts} +0 -0
  138. /package/dist/{components/misc/icon/elements/Help.d.ts → icons/HelpIcon.d.ts} +0 -0
  139. /package/dist/{components/misc/icon/elements/Hide.d.ts → icons/HideIcon.d.ts} +0 -0
  140. /package/dist/{components/misc/icon/elements/Info.d.ts → icons/InfoIcon.d.ts} +0 -0
  141. /package/dist/{components/misc/icon/elements/Paste.d.ts → icons/PasteIcon.d.ts} +0 -0
  142. /package/dist/{components/misc/icon/elements/Question.d.ts → icons/QuestionIcon.d.ts} +0 -0
  143. /package/dist/{components/misc/icon/elements/Remove.d.ts → icons/RemoveIcon.d.ts} +0 -0
  144. /package/dist/{components/misc/icon/elements/Save.d.ts → icons/SaveIcon.d.ts} +0 -0
  145. /package/dist/{components/misc/icon/elements/Show.d.ts → icons/ShowIcon.d.ts} +0 -0
  146. /package/dist/{components/misc/icon/elements/Upload.d.ts → icons/UploadIcon.d.ts} +0 -0
  147. /package/dist/{components/misc/icon/elements/Warning.d.ts → icons/WarningIcon.d.ts} +0 -0
  148. /package/dist/{components/misc/icon → icons}/__tests__/Icons.test.d.ts +0 -0
  149. /package/dist/utils/__tests__/{get-initial-color-mode.test.d.ts → get-chop-logic-theme.test.d.ts} +0 -0
@@ -0,0 +1,31 @@
1
+ export interface ChopLogicTheme {
2
+ primaryColor: string;
3
+ secondaryColor: string;
4
+ tertiaryColor: string;
5
+ backgroundColor: string;
6
+ accentColor: string;
7
+ transparentBackgroundColor: string;
8
+ primaryGradient: string;
9
+ accentGradient: string;
10
+ tintGradient: string;
11
+ coreFontFamily: string;
12
+ monospaceFontFamily: string;
13
+ baseFontSize: string;
14
+ smallFontSize: string;
15
+ headerFontSize: string;
16
+ smallGap: string;
17
+ mediumGap: string;
18
+ bigGap: string;
19
+ iconSize: string;
20
+ blockBorderRadius: string;
21
+ boxShadow: string;
22
+ textShadow: string;
23
+ insetShadow: string;
24
+ regularBorder: string;
25
+ accentBorder: string;
26
+ outlineBorder: string;
27
+ baseIndex: string;
28
+ tooltipIndex: string;
29
+ dropdownIndex: string;
30
+ modalIndex: string;
31
+ }
@@ -1,13 +1,16 @@
1
- export type CommonComponentProps = {
2
- id?: string;
3
- className?: string;
4
- style?: React.CSSProperties;
5
- tabIndex?: number;
6
- title?: string;
7
- };
1
+ import { CSSProperties } from 'react';
2
+
8
3
  export type CommonInputProps = CommonComponentProps & {
9
4
  label: string;
10
5
  name: string;
11
6
  disabled?: boolean;
12
7
  required?: boolean;
13
8
  };
9
+ export type CommonComponentProps = {
10
+ id?: string;
11
+ className?: string;
12
+ style?: CSSProperties;
13
+ tabIndex?: number;
14
+ title?: string;
15
+ theme?: 'dark' | 'light';
16
+ };
@@ -1,7 +1,6 @@
1
- import { CommonComponentProps } from '../../../../../../../../../src/utils/types';
2
- import { ChopLogicIconName } from '../../../../../../../../../src/components/misc/icon/Icon';
1
+ import { ChopLogicAlertMode, ChopLogicIconName } from '../../enums';
2
+ import { CommonComponentProps } from './_common';
3
3
 
4
- export type ChopLogicAlertMode = 'success' | 'error' | 'warning' | 'info' | 'help';
5
4
  export type ChopLogicAlertProps = CommonComponentProps & {
6
5
  isOpened: boolean;
7
6
  onClose: () => void;
@@ -0,0 +1,13 @@
1
+ import { MouseEventHandler } from 'react';
2
+ import { ChopLogicIconName } from '../../enums';
3
+ import { CommonInputProps } from './_common';
4
+
5
+ export type ChopLogicButtonView = '3D' | 'flat' | 'icon';
6
+ export type ChopLogicButtonProps = Partial<CommonInputProps> & {
7
+ onClick?: MouseEventHandler<HTMLButtonElement>;
8
+ view?: ChopLogicButtonView;
9
+ icon?: ChopLogicIconName;
10
+ text?: string;
11
+ extended?: boolean;
12
+ type?: 'button' | 'reset' | 'submit';
13
+ };
@@ -1,8 +1,9 @@
1
- import { CommonInputProps } from '../../../../../../../../../src/utils/types';
1
+ import { ChangeEventHandler } from 'react';
2
+ import { CommonInputProps } from './_common';
2
3
 
3
4
  export type ChopLogicCheckboxProps = CommonInputProps & {
4
5
  noLabel?: boolean;
5
6
  iconPosition?: 'left' | 'right';
6
- onChange?: React.ChangeEventHandler<HTMLInputElement>;
7
+ onChange?: ChangeEventHandler<HTMLInputElement>;
7
8
  defaultChecked?: boolean;
8
9
  };
@@ -1,12 +1,12 @@
1
- import { PropsWithChildren } from 'react';
2
- import { CommonComponentProps } from '../../../../../../../../../src/utils/types';
1
+ import { HTMLAttributes, PropsWithChildren } from 'react';
2
+ import { CommonComponentProps } from './_common';
3
3
 
4
4
  export type ChopLogicDialogProps = CommonComponentProps & PropsWithChildren & {
5
5
  isOpened: boolean;
6
6
  onClose: () => void;
7
7
  title: string;
8
8
  };
9
- export type DialogLayoutProps = PropsWithChildren & React.HTMLAttributes<HTMLDivElement> & {
9
+ export type DialogLayoutProps = PropsWithChildren & HTMLAttributes<HTMLDivElement> & {
10
10
  title: string;
11
11
  onClose: () => void;
12
12
  isOpened: boolean;
@@ -1,11 +1,10 @@
1
- import { PropsWithChildren } from 'react';
2
- import { CommonComponentProps } from '../../../../../../../../../src/utils/types';
1
+ import { FormEventHandler, PropsWithChildren } from 'react';
2
+ import { CommonComponentProps } from './_common.ts';
3
3
 
4
4
  export type ChopLogicFormData = {
5
5
  [key: string]: unknown;
6
6
  };
7
7
  export type ChopLogicFormValidationState = [string, boolean][];
8
- export type ChopLogicFormInput = HTMLInputElement | HTMLSelectElement;
9
8
  export type ChopLogicFormInputParams = {
10
9
  name: string;
11
10
  value: unknown;
@@ -21,6 +20,6 @@ export type ChopLogicFormProps = PropsWithChildren & CommonComponentProps & {
21
20
  initialValues?: ChopLogicFormData;
22
21
  hasReset?: boolean;
23
22
  onClickSubmit?: (data: ChopLogicFormData) => void;
24
- onReset?: React.FormEventHandler<HTMLFormElement>;
25
- onSubmit?: React.FormEventHandler<HTMLFormElement>;
23
+ onReset?: FormEventHandler<HTMLFormElement>;
24
+ onSubmit?: FormEventHandler<HTMLFormElement>;
26
25
  };
@@ -1,4 +1,5 @@
1
- import { CommonComponentProps } from '../../../../../../../../../src/utils/types';
1
+ import { ReactElement } from 'react';
2
+ import { CommonComponentProps } from './_common';
2
3
 
3
4
  export type ChopLogicGridProps = CommonComponentProps & {
4
5
  columns: ChopLogicGridColumn[];
@@ -11,7 +12,7 @@ export type ChopLogicGridProps = CommonComponentProps & {
11
12
  export type ChopLogicGridColumn = {
12
13
  field: string;
13
14
  title?: string;
14
- component?: React.ReactElement;
15
+ component?: ReactElement;
15
16
  highlighted?: boolean;
16
17
  className?: string;
17
18
  };
@@ -20,4 +21,4 @@ export type ChopLogicGridItem = {
20
21
  disabled?: boolean;
21
22
  [key: string]: unknown;
22
23
  };
23
- export type RenderDataItemCallback = (item: ChopLogicGridItem, field: string) => JSX.Element;
24
+ export type RenderDataItemCallback = (item: ChopLogicGridItem, field: string) => ReactElement;
@@ -1,5 +1,5 @@
1
- import { CommonInputProps } from '../../../../../../../../../src/utils/types';
2
- import { SelectValue } from '../select/types';
1
+ import { CommonInputProps } from './_common';
2
+ import { SelectValue } from './select';
3
3
 
4
4
  export type MultiSelectValue = SelectValue & {
5
5
  selected: boolean;
@@ -1,4 +1,5 @@
1
- import { CommonInputProps } from '../../../../../../../../../src/utils/types';
1
+ import { ChangeEventHandler, FocusEventHandler } from 'react';
2
+ import { CommonInputProps } from './_common';
2
3
 
3
4
  export type NumericValidationFunction = (input?: number) => boolean;
4
5
  export type ChopLogicNumericInputProps = CommonInputProps & {
@@ -11,7 +12,7 @@ export type ChopLogicNumericInputProps = CommonInputProps & {
11
12
  readOnly?: boolean;
12
13
  defaultValue?: number;
13
14
  onSpinButtonClick?: (value?: number) => void;
14
- onChange?: React.ChangeEventHandler<HTMLInputElement>;
15
- onBlur?: React.FocusEventHandler<HTMLInputElement>;
16
- onFocus?: React.FocusEventHandler<HTMLInputElement>;
15
+ onChange?: ChangeEventHandler<HTMLInputElement>;
16
+ onBlur?: FocusEventHandler<HTMLInputElement>;
17
+ onFocus?: FocusEventHandler<HTMLInputElement>;
17
18
  };
@@ -1,17 +1,17 @@
1
- import { CommonInputProps } from '../../../../../../../../../src/utils/types';
1
+ import { CommonInputProps } from './_common';
2
2
 
3
- export type ChopLogicSelectProps = CommonInputProps & {
4
- options: SelectValue[];
5
- onChange?: (value?: SelectValue) => void;
6
- placeholder?: string;
7
- defaultValue?: string | number | readonly string[];
8
- };
9
3
  export type SelectValue = {
10
4
  id: string;
11
5
  label: string;
12
6
  } & {
13
7
  [key in string]: unknown;
14
8
  };
9
+ export type ChopLogicSelectProps = CommonInputProps & {
10
+ options: SelectValue[];
11
+ onChange?: (value?: SelectValue) => void;
12
+ placeholder?: string;
13
+ defaultValue?: string | number | readonly string[];
14
+ };
15
15
  export type SelectOptionProps = {
16
16
  value: SelectValue;
17
17
  isSelected: boolean;
@@ -1,4 +1,5 @@
1
- import { CommonComponentProps } from '../../../../../../../../../src/utils/types';
1
+ import { ReactElement } from 'react';
2
+ import { CommonComponentProps } from './_common';
2
3
 
3
4
  export type ChopLogicTabsProps = CommonComponentProps & {
4
5
  tabs: ChopLogicTabItem[];
@@ -6,7 +7,7 @@ export type ChopLogicTabsProps = CommonComponentProps & {
6
7
  mode?: ChopLogicTabsMode;
7
8
  };
8
9
  export type ChopLogicTabItem = {
9
- content: React.ReactElement;
10
+ content: ReactElement;
10
11
  title: string;
11
12
  id: string;
12
13
  disabled?: boolean;
@@ -1,4 +1,5 @@
1
- import { CommonInputProps } from '../../../../../../../../../src/utils/types';
1
+ import { ChangeEventHandler, FocusEventHandler, HTMLInputAutoCompleteAttribute } from 'react';
2
+ import { CommonInputProps } from './_common';
2
3
 
3
4
  export type RegExpWithFlags = {
4
5
  regexp: string;
@@ -6,19 +7,17 @@ export type RegExpWithFlags = {
6
7
  };
7
8
  export type TextValidationFunction = (input: string) => boolean;
8
9
  export type ChopLogicTextInputProps = CommonInputProps & {
9
- name: string;
10
- label: string;
11
10
  errorMessage?: string;
12
11
  clearable?: boolean;
13
12
  readOnly?: boolean;
14
- onClear?: () => void;
15
13
  type?: 'text' | 'email' | 'password';
16
14
  validator?: RegExpWithFlags | TextValidationFunction;
17
15
  maxLength?: number;
18
16
  placeholder?: string;
19
17
  defaultValue?: string;
20
- autoComplete?: React.HTMLInputAutoCompleteAttribute;
21
- onChange?: React.ChangeEventHandler<HTMLInputElement>;
22
- onBlur?: React.FocusEventHandler<HTMLInputElement>;
23
- onFocus?: React.FocusEventHandler<HTMLInputElement>;
18
+ autoComplete?: HTMLInputAutoCompleteAttribute;
19
+ onClear?: () => void;
20
+ onChange?: ChangeEventHandler<HTMLInputElement>;
21
+ onBlur?: FocusEventHandler<HTMLInputElement>;
22
+ onFocus?: FocusEventHandler<HTMLInputElement>;
24
23
  };
@@ -1,8 +1,8 @@
1
- import { PropsWithChildren } from 'react';
2
- import { CommonComponentProps } from '../../../../../../../../../src/utils/types';
1
+ import { PropsWithChildren, ReactElement } from 'react';
2
+ import { CommonComponentProps } from './_common';
3
3
 
4
4
  export type ChopLogicTooltipProps = PropsWithChildren & CommonComponentProps & {
5
- tooltipContent: string | React.ReactElement;
5
+ tooltipContent: string | ReactElement;
6
6
  containerTag?: TooltipContainerTag;
7
7
  visibleOn?: 'hover' | 'click' | 'focus' | 'contextmenu';
8
8
  };
@@ -0,0 +1,13 @@
1
+ export type { ChopLogicTheme } from './chop-logic-theme.ts';
2
+ export * from './components/alert.ts';
3
+ export * from './components/button.ts';
4
+ export * from './components/checkbox.ts';
5
+ export * from './components/dialog.ts';
6
+ export * from './components/form.ts';
7
+ export * from './components/grid.ts';
8
+ export * from './components/multi-select.ts';
9
+ export * from './components/numeric.ts';
10
+ export * from './components/select.ts';
11
+ export * from './components/tabs.ts';
12
+ export * from './components/text.ts';
13
+ export * from './components/tooltip.ts';
@@ -0,0 +1,3 @@
1
+ import { ChopLogicTheme } from '../types';
2
+
3
+ export declare function getChopLogicTheme(theme?: 'dark' | 'light', customThemeValues?: Partial<ChopLogicTheme>): ChopLogicTheme;
@@ -0,0 +1,8 @@
1
+ import { KeyboardEvent } from 'react';
2
+ import { SelectValue } from '../types';
3
+
4
+ export declare function handleDropdownListKeyPress({ e, options, onClose, }: {
5
+ e: KeyboardEvent<HTMLUListElement>;
6
+ options: SelectValue[];
7
+ onClose: () => void;
8
+ }): void;
@@ -0,0 +1,3 @@
1
+ export { getChopLogicTheme } from './get-chop-logic-theme';
2
+ export { handleDropdownListKeyPress } from './handle-dropdown-list-key-press';
3
+ export { moveFocusOnElementById } from './move-focus-on-element-by-id';
package/package.json CHANGED
@@ -4,7 +4,7 @@
4
4
  "type": "git",
5
5
  "url": "git+https://github.com/SavouryGin/chop-logic-components.git"
6
6
  },
7
- "version": "1.0.5",
7
+ "version": "1.0.7",
8
8
  "description": "React UI components library for Chop Logic project",
9
9
  "type": "module",
10
10
  "main": "dist/index.cjs.js",
@@ -19,14 +19,16 @@
19
19
  "check-types": "tsc --pretty --noEmit",
20
20
  "build": "tsc && vite build",
21
21
  "test": "vitest",
22
- "test:ci": "vitest run",
23
- "storybook": "storybook dev -p 6006",
22
+ "test:ci": "vitest run --passWithNoTests",
23
+ "storybook": "storybook dev -p 6006 --no-open",
24
24
  "build-storybook": "storybook build -- -o storybook-static --quiet",
25
25
  "prepare": "npm run build && husky install"
26
26
  },
27
27
  "lint-staged": {
28
- "*.{ts,tsx}": [
29
- "npm run lint"
28
+ "*.{js,jsx,ts,tsx,json,css,scss,md}": [
29
+ "prettier --write",
30
+ "eslint --fix",
31
+ "npm run test:ci"
30
32
  ]
31
33
  },
32
34
  "keywords": [
@@ -45,14 +47,16 @@
45
47
  "@chromatic-com/storybook": "^3.1.0",
46
48
  "@commitlint/cli": "^19.3.0",
47
49
  "@commitlint/config-conventional": "^19.2.2",
48
- "@storybook/addon-essentials": "^8.3.6",
49
- "@storybook/addon-interactions": "^8.3.6",
50
- "@storybook/addon-links": "^8.3.6",
51
- "@storybook/addon-mdx-gfm": "^8.3.6",
52
- "@storybook/blocks": "^8.3.6",
53
- "@storybook/react": "^8.3.6",
54
- "@storybook/react-vite": "^8.3.6",
55
- "@storybook/test": "^8.3.6",
50
+ "@storybook/addon-essentials": "^8.4.6",
51
+ "@storybook/addon-interactions": "^8.4.6",
52
+ "@storybook/addon-links": "^8.4.6",
53
+ "@storybook/addon-mdx-gfm": "^8.4.6",
54
+ "@storybook/blocks": "^8.4.6",
55
+ "@storybook/manager-api": "^8.4.6",
56
+ "@storybook/react": "^8.4.6",
57
+ "@storybook/react-vite": "^8.4.6",
58
+ "@storybook/test": "^8.4.6",
59
+ "@storybook/theming": "^8.4.6",
56
60
  "@testing-library/jest-dom": "^6.4.2",
57
61
  "@testing-library/react": "^15.0.6",
58
62
  "@testing-library/user-event": "^14.5.2",
@@ -66,13 +70,13 @@
66
70
  "eslint-plugin-react": "^7.34.1",
67
71
  "eslint-plugin-react-hooks": "^4.6.2",
68
72
  "eslint-plugin-simple-import-sort": "^12.1.1",
69
- "eslint-plugin-storybook": "^0.10.1",
73
+ "eslint-plugin-storybook": "^0.11.0",
70
74
  "husky": "^8.0.0",
71
75
  "husky-init": "^8.0.0",
72
76
  "jsdom": "^24.0.0",
73
77
  "lint-staged": "^15.2.2",
74
78
  "prettier": "^3.2.5",
75
- "storybook": "^8.3.6",
79
+ "storybook": "^8.4.6",
76
80
  "styled-components": "^6.1.12",
77
81
  "typescript": "^5.4.5",
78
82
  "vite": "^5.2.10",
@@ -1,3 +0,0 @@
1
- export declare const StyledLabel: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').LabelHTMLAttributes<HTMLLabelElement>, HTMLLabelElement>, never>> & string;
2
- export declare const StyledLabelText: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, never>> & string;
3
- export declare const StyledRequiredSign: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLElement>, HTMLElement>, never>> & string;
@@ -1,13 +0,0 @@
1
- import { MouseEventHandler } from 'react';
2
- import { CommonInputProps } from '../../../../../../../../../src/utils/types';
3
- import { ChopLogicIconName } from '../../../../../../../../../src/components/misc/icon/Icon';
4
-
5
- export type ChopLogicButtonView = 'primary' | 'secondary' | 'danger' | 'icon';
6
- export type ChopLogicButtonProps = Partial<CommonInputProps> & {
7
- onClick?: MouseEventHandler<HTMLButtonElement> | (() => void);
8
- view?: ChopLogicButtonView;
9
- icon?: ChopLogicIconName;
10
- text?: string;
11
- extended?: boolean;
12
- type?: 'button' | 'reset' | 'submit';
13
- };
@@ -1,10 +0,0 @@
1
- export declare const StyledMultiSelectWrapper: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components/dist/types').Substitute<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {
2
- $disabled: boolean;
3
- }>> & string;
4
- export declare const StyledMultiSelectCombobox: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, never>> & string;
5
- export declare const StyledMultiSelectPlaceholder: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, never>> & string;
6
- export declare const StyledMultiSelectLabel: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, never>> & string;
7
- export declare const StyledMultiSelectDropdown: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components/dist/types').Substitute<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLUListElement>, HTMLUListElement>, {
8
- $opened: boolean;
9
- }>> & string;
10
- export declare const StyledMultiSelectOption: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').LiHTMLAttributes<HTMLLIElement>, HTMLLIElement>, never>> & string;
@@ -1,51 +0,0 @@
1
- export declare const COLORS: Readonly<{
2
- primary: "hsl(0, 0%, 13%)";
3
- background: "hsl(0, 0%, 100%)";
4
- highlight: "hsl(65, 43%, 95%)";
5
- shade: "hsl(206, 19%, 93%)";
6
- secondary: "hsl(215, 69%, 49%)";
7
- tertiary: "hsl(205, 48%, 56%)";
8
- accent: "hsl(16, 100%, 45%)";
9
- transparentBackground: "hsla(0, 0%, 0%, 0.3)";
10
- }>;
11
- export declare const FONTS: Readonly<{
12
- core: "Arial, Helvetica, sans-serif";
13
- monospace: "'Courier New', Courier, monospace";
14
- }>;
15
- export declare const UNITS: Readonly<{
16
- smallGap: "0.25rem";
17
- mediumGap: "0.6rem";
18
- bigGap: "1rem";
19
- minElementSize: "2.75rem";
20
- smallIconSize: "1.6rem";
21
- blockBorderRadius: "0.375rem";
22
- fieldWrapperHeight: "2.125rem";
23
- }>;
24
- export declare const SHADOWS: Readonly<{
25
- box: "rgba(0, 0, 0, 0.15) 2.4px 2.4px 3.2px";
26
- text: "2.4px 2.4px 3.2px rgba(0, 0, 0, 0.3)";
27
- inset: "-5px 5px 20px 5px rgba(0, 0, 0, 0.1) inset";
28
- }>;
29
- export declare const BORDERS: Readonly<{
30
- thin: "1px solid #5998c5";
31
- thick: "1px solid #266dd3";
32
- accent: "1px solid #e53d00";
33
- outline: "2px dashed #e53d00";
34
- }>;
35
- export declare const Z_INDEXES: Readonly<{
36
- dropdown: 1000;
37
- modal: 2000;
38
- tooltip: 3000;
39
- }>;
40
- export declare const GRADIENTS: Readonly<{
41
- primary: "linear-gradient(0deg, #222222, #266dd3)";
42
- accent: "linear-gradient(0deg, #222222, #e53d00)";
43
- tint: "linear-gradient(0deg, #e9edf0, #f6f7eb)";
44
- }>;
45
- export declare const SCREEN_BREAKPOINTS: Readonly<{
46
- phones: "only screen and (max-width: 600px)";
47
- portraitTablets: "only screen and (min-width: 600px)";
48
- landscapeTablets: "only screen and (min-width: 768px)";
49
- laptops: "only screen and (min-width: 992px)";
50
- desktops: "only screen and (min-width: 1200px)";
51
- }>;
@@ -1 +0,0 @@
1
- export declare function getInitialColorMode(): string;
File without changes