@companix/uikit 0.0.34 → 0.0.36

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 (184) hide show
  1. package/package.json +7 -10
  2. package/dist/Avatar/Avatar.scss +0 -64
  3. package/dist/Avatar/helpers.d.ts +0 -10
  4. package/dist/Avatar/index.d.ts +0 -8
  5. package/dist/Avatar/types.d.ts +0 -2
  6. package/dist/Button/Button.scss +0 -128
  7. package/dist/Button/index.d.ts +0 -21
  8. package/dist/ButtonGroup/ButtonGroup.scss +0 -18
  9. package/dist/ButtonGroup/index.d.ts +0 -6
  10. package/dist/Calendar/Calendar.d.ts +0 -14
  11. package/dist/Calendar/Calendar.scss +0 -125
  12. package/dist/Calendar/CalendarHeader.d.ts +0 -10
  13. package/dist/Checkbox/Checkbox.scss +0 -115
  14. package/dist/Checkbox/index.d.ts +0 -10
  15. package/dist/Countdown/index.d.ts +0 -6
  16. package/dist/DateInput/DateInput.scss +0 -11
  17. package/dist/DateInput/index.d.ts +0 -13
  18. package/dist/DatePicker/index.d.ts +0 -9
  19. package/dist/Dialog/Dialog.scss +0 -25
  20. package/dist/Dialog/Popup.scss +0 -55
  21. package/dist/Dialog/index.d.ts +0 -16
  22. package/dist/DialogAlert/Alert.d.ts +0 -19
  23. package/dist/DialogAlert/Alert.scss +0 -52
  24. package/dist/DialogAlert/Viewport.d.ts +0 -8
  25. package/dist/DialogAlert/index.d.ts +0 -11
  26. package/dist/Drawer/Drawer.scss +0 -112
  27. package/dist/Drawer/index.d.ts +0 -13
  28. package/dist/File/index.d.ts +0 -10
  29. package/dist/FormGroup/FormGroup.scss +0 -32
  30. package/dist/FormGroup/index.d.ts +0 -9
  31. package/dist/Icon/icon.scss +0 -18
  32. package/dist/Icon/index.d.ts +0 -6
  33. package/dist/Input/Form.scss +0 -67
  34. package/dist/Input/InlineInput.d.ts +0 -0
  35. package/dist/Input/Input.d.ts +0 -14
  36. package/dist/Input/Input.scss +0 -47
  37. package/dist/Input/InputContainer.d.ts +0 -11
  38. package/dist/Input/InputElement.d.ts +0 -9
  39. package/dist/LoadingButton/index.d.ts +0 -5
  40. package/dist/NumberInput/index.d.ts +0 -23
  41. package/dist/OptionItem/Option.scss +0 -89
  42. package/dist/OptionItem/OptionItem.d.ts +0 -6
  43. package/dist/OptionItem/OptionsList.d.ts +0 -7
  44. package/dist/Popover/Popover.scss +0 -80
  45. package/dist/Popover/index.d.ts +0 -27
  46. package/dist/Progress/Progress.scss +0 -47
  47. package/dist/Progress/index.d.ts +0 -5
  48. package/dist/Radio/Radio.scss +0 -148
  49. package/dist/Radio/index.d.ts +0 -20
  50. package/dist/Scrollable/ImitateScroll.d.ts +0 -10
  51. package/dist/Scrollable/Scrollable.scss +0 -50
  52. package/dist/Scrollable/index.d.ts +0 -33
  53. package/dist/Segments/Segments.scss +0 -57
  54. package/dist/Segments/index.d.ts +0 -11
  55. package/dist/Select/Select.scss +0 -80
  56. package/dist/Select/SelectInput.d.ts +0 -15
  57. package/dist/Select/SelectOptions.d.ts +0 -12
  58. package/dist/Select/SelectRight.d.ts +0 -8
  59. package/dist/Select/index.d.ts +0 -24
  60. package/dist/SelectTags/SelectTags.scss +0 -67
  61. package/dist/SelectTags/index.d.ts +0 -17
  62. package/dist/Spinner/Spinner.scss +0 -14
  63. package/dist/Spinner/index.d.ts +0 -7
  64. package/dist/Switch/Switch.scss +0 -102
  65. package/dist/Switch/index.d.ts +0 -10
  66. package/dist/Tabs/Tabs.scss +0 -58
  67. package/dist/Tabs/index.d.ts +0 -13
  68. package/dist/TextArea/TextArea.scss +0 -34
  69. package/dist/TextArea/index.d.ts +0 -7
  70. package/dist/ThemeProvider/helpers.d.ts +0 -4
  71. package/dist/ThemeProvider/index.d.ts +0 -12
  72. package/dist/ThemeProvider/script.d.ts +0 -8
  73. package/dist/ThemeProvider/types.d.ts +0 -2
  74. package/dist/TimePicker/index.d.ts +0 -10
  75. package/dist/Toaster/Toast.d.ts +0 -15
  76. package/dist/Toaster/Toaster.scss +0 -155
  77. package/dist/Toaster/Viewport.d.ts +0 -13
  78. package/dist/Toaster/index.d.ts +0 -20
  79. package/dist/Tooltip/Tooltip.scss +0 -28
  80. package/dist/Tooltip/index.d.ts +0 -7
  81. package/dist/__helpers/createDialogRegistry.d.ts +0 -26
  82. package/dist/__helpers/createPopoversRegistry.d.ts +0 -19
  83. package/dist/__hooks/use-frooze-closing.d.ts +0 -5
  84. package/dist/__hooks/use-input-padding.d.ts +0 -5
  85. package/dist/__hooks/use-loading.d.ts +0 -8
  86. package/dist/__hooks/use-local-storage.d.ts +0 -1
  87. package/dist/__hooks/use-popover-position.d.ts +0 -8
  88. package/dist/__hooks/use-previos.d.ts +0 -2
  89. package/dist/__hooks/use-resize.d.ts +0 -3
  90. package/dist/__hooks/use-scrollbox.d.ts +0 -7
  91. package/dist/__hooks/use-update.d.ts +0 -1
  92. package/dist/__hooks/useCalendar.d.ts +0 -17
  93. package/dist/__hooks/useCalendarOptions-copy.d.ts +0 -22
  94. package/dist/__hooks/useCalendarOptions.d.ts +0 -31
  95. package/dist/__libs/calendar.d.ts +0 -25
  96. package/dist/__utils/RemoveListener.d.ts +0 -3
  97. package/dist/__utils/utils.d.ts +0 -39
  98. package/dist/bundle.es.js +0 -88
  99. package/dist/bundle.es10.js +0 -82
  100. package/dist/bundle.es11.js +0 -28
  101. package/dist/bundle.es12.js +0 -77
  102. package/dist/bundle.es13.js +0 -43
  103. package/dist/bundle.es14.js +0 -38
  104. package/dist/bundle.es15.js +0 -58
  105. package/dist/bundle.es16.js +0 -23
  106. package/dist/bundle.es17.js +0 -35
  107. package/dist/bundle.es18.js +0 -27
  108. package/dist/bundle.es19.js +0 -47
  109. package/dist/bundle.es2.js +0 -44
  110. package/dist/bundle.es20.js +0 -25
  111. package/dist/bundle.es21.js +0 -31
  112. package/dist/bundle.es22.js +0 -40
  113. package/dist/bundle.es23.js +0 -18
  114. package/dist/bundle.es24.js +0 -36
  115. package/dist/bundle.es25.js +0 -23
  116. package/dist/bundle.es26.js +0 -44
  117. package/dist/bundle.es27.js +0 -118
  118. package/dist/bundle.es28.js +0 -123
  119. package/dist/bundle.es29.js +0 -76
  120. package/dist/bundle.es3.js +0 -4
  121. package/dist/bundle.es30.js +0 -35
  122. package/dist/bundle.es31.js +0 -14
  123. package/dist/bundle.es32.js +0 -88
  124. package/dist/bundle.es33.js +0 -24
  125. package/dist/bundle.es34.js +0 -9
  126. package/dist/bundle.es35.js +0 -37
  127. package/dist/bundle.es36.js +0 -24
  128. package/dist/bundle.es37.js +0 -13
  129. package/dist/bundle.es38.js +0 -27
  130. package/dist/bundle.es39.js +0 -41
  131. package/dist/bundle.es4.js +0 -47
  132. package/dist/bundle.es40.js +0 -53
  133. package/dist/bundle.es41.js +0 -45
  134. package/dist/bundle.es42.js +0 -11
  135. package/dist/bundle.es43.js +0 -27
  136. package/dist/bundle.es44.js +0 -26
  137. package/dist/bundle.es45.js +0 -89
  138. package/dist/bundle.es46.js +0 -20
  139. package/dist/bundle.es47.js +0 -22
  140. package/dist/bundle.es48.js +0 -26
  141. package/dist/bundle.es49.js +0 -41
  142. package/dist/bundle.es5.js +0 -10
  143. package/dist/bundle.es50.js +0 -5
  144. package/dist/bundle.es51.js +0 -7
  145. package/dist/bundle.es52.js +0 -16
  146. package/dist/bundle.es53.js +0 -16
  147. package/dist/bundle.es54.js +0 -5
  148. package/dist/bundle.es55.js +0 -5
  149. package/dist/bundle.es56.js +0 -72
  150. package/dist/bundle.es57.js +0 -70
  151. package/dist/bundle.es58.js +0 -72
  152. package/dist/bundle.es59.js +0 -14
  153. package/dist/bundle.es6.js +0 -13
  154. package/dist/bundle.es60.js +0 -45
  155. package/dist/bundle.es61.js +0 -17
  156. package/dist/bundle.es62.js +0 -34
  157. package/dist/bundle.es63.js +0 -72
  158. package/dist/bundle.es64.js +0 -78
  159. package/dist/bundle.es65.js +0 -51
  160. package/dist/bundle.es66.js +0 -16
  161. package/dist/bundle.es67.js +0 -22
  162. package/dist/bundle.es68.js +0 -4
  163. package/dist/bundle.es69.js +0 -22
  164. package/dist/bundle.es7.js +0 -87
  165. package/dist/bundle.es70.js +0 -4
  166. package/dist/bundle.es71.js +0 -23
  167. package/dist/bundle.es72.js +0 -4
  168. package/dist/bundle.es73.js +0 -22
  169. package/dist/bundle.es74.js +0 -5
  170. package/dist/bundle.es75.js +0 -5
  171. package/dist/bundle.es76.js +0 -16
  172. package/dist/bundle.es77.js +0 -4
  173. package/dist/bundle.es78.js +0 -22
  174. package/dist/bundle.es79.js +0 -4
  175. package/dist/bundle.es8.js +0 -87
  176. package/dist/bundle.es80.js +0 -22
  177. package/dist/bundle.es81.js +0 -4
  178. package/dist/bundle.es9.js +0 -24
  179. package/dist/css-properties.scss +0 -120
  180. package/dist/index.d.ts +0 -77
  181. package/dist/index.scss +0 -28
  182. package/dist/mixins.scss +0 -102
  183. package/dist/theme.scss +0 -101
  184. package/dist/types.d.ts +0 -17
@@ -1,80 +0,0 @@
1
- @use '../mixins.scss';
2
-
3
- .popover {
4
- outline: none;
5
- @include mixins.use-styles(popover);
6
-
7
- &[data-match-target='width'] {
8
- width: var(--radix-popover-trigger-width);
9
- }
10
-
11
- &[data-match-target='min-width'] {
12
- min-width: var(--radix-popover-trigger-width);
13
- }
14
-
15
- &-content {
16
- position: relative;
17
- display: flex;
18
- flex-direction: column;
19
-
20
- &[data-fit-max-height] {
21
- max-height: var(--radix-popover-content-available-height);
22
- }
23
-
24
- @include mixins.use-styles(popover, content);
25
- }
26
-
27
- &-arrow {
28
- position: relative;
29
-
30
- &-icon {
31
- position: relative;
32
- }
33
-
34
- &-border {
35
- fill: #111418;
36
- fill-opacity: 0.1;
37
- }
38
-
39
- &-fill {
40
- fill: mixins.get-var-name(popover, content, background);
41
- }
42
-
43
- &:before {
44
- border-radius: 1px;
45
- content: '';
46
- display: block;
47
- position: absolute;
48
- transform: rotate(45deg);
49
- height: 20px;
50
- margin: 5px;
51
- width: 20px;
52
- box-shadow: 1px 1px 6px rgba(17, 20, 24, 0.2);
53
- margin-top: -14px;
54
- }
55
- }
56
-
57
- &[data-appearance='default'] {
58
- &[data-state='open'] {
59
- transform-origin: var(--radix-popover-content-transform-origin);
60
- @include mixins.use-styles(popover, default, in);
61
- }
62
-
63
- &[data-state='closed'] {
64
- transform-origin: var(--radix-popover-content-transform-origin);
65
- @include mixins.use-styles(popover, default, out);
66
- }
67
- }
68
-
69
- &[data-appearance='minimal'] {
70
- &[data-state='open'] {
71
- transform-origin: var(--radix-popover-content-transform-origin);
72
- @include mixins.use-styles(popover, minimal, in);
73
- }
74
-
75
- &[data-state='closed'] {
76
- transform-origin: var(--radix-popover-content-transform-origin);
77
- @include mixins.use-styles(popover, minimal, out);
78
- }
79
- }
80
- }
@@ -1,27 +0,0 @@
1
- export type Align = 'start' | 'center' | 'end';
2
- export type Side = 'top' | 'right' | 'bottom' | 'left';
3
- export interface PopoverProps {
4
- children: React.ReactNode;
5
- content: ({ close }: {
6
- close: () => void;
7
- }) => React.ReactNode;
8
- open?: boolean;
9
- triggerRef?: React.Ref<HTMLButtonElement>;
10
- triggerProps?: React.ButtonHTMLAttributes<HTMLButtonElement>;
11
- onOpenChange?: (open: boolean) => void;
12
- onAnimationEnd?: () => void;
13
- onAnimationStart?: () => void;
14
- onOpenAutoFocus?: (event: Event) => void;
15
- onCloseAutoFocus?: (event: Event) => void;
16
- side?: Side;
17
- align?: Align;
18
- showArrows?: boolean;
19
- minimal?: boolean;
20
- sideOffset?: number;
21
- matchTarget?: 'width' | 'min-width';
22
- className?: string;
23
- fitMaxHeight?: boolean;
24
- disabled?: boolean;
25
- zIndex?: number;
26
- }
27
- export declare const Popover: import('react').ForwardRefExoticComponent<PopoverProps & import('react').RefAttributes<HTMLDivElement>>;
@@ -1,47 +0,0 @@
1
- @use '../mixins.scss';
2
-
3
- .progress-bar {
4
- @include mixins.use-styles(progress);
5
-
6
- display: block;
7
- overflow: hidden;
8
- position: relative;
9
- border-radius: 100px;
10
- width: 100%;
11
-
12
- &-thumb {
13
- animation: linear-progress-bar-stripes 0.3s linear infinite reverse;
14
- background: linear-gradient(
15
- -45deg,
16
- hsla(0, 0%, 100%, 0.2) 25%,
17
- transparent 0,
18
- transparent 50%,
19
- hsla(0, 0%, 100%, 0.2) 0,
20
- hsla(0, 0%, 100%, 0.2) 75%,
21
- transparent 0
22
- );
23
- background-size: 30px 30px;
24
- border-radius: 40px;
25
- height: 100%;
26
- position: absolute;
27
- transition: width 0.2s cubic-bezier(0.4, 1, 0.75, 0.9);
28
- width: 100%;
29
-
30
- @include mixins.use-styles(progress, thumb);
31
-
32
- @each $appearance, $v in mixins.$appearances {
33
- &[data-appearance='#{$appearance}'] {
34
- @include mixins.use-styles(progress, thumb, $appearance);
35
- }
36
- }
37
- }
38
- }
39
-
40
- @keyframes linear-progress-bar-stripes {
41
- 0% {
42
- background-position: 0 0;
43
- }
44
- to {
45
- background-position: 30px 0;
46
- }
47
- }
@@ -1,5 +0,0 @@
1
- export interface ProgressBarProps {
2
- appearance?: 'primary' | 'neutral' | 'positive' | 'negative';
3
- value: number;
4
- }
5
- export declare const ProgressBar: ({ appearance, value }: ProgressBarProps) => import("react/jsx-runtime").JSX.Element;
@@ -1,148 +0,0 @@
1
- @use '../mixins.scss';
2
-
3
- .radio {
4
- display: inline-table;
5
- -webkit-user-select: none;
6
- -moz-user-select: none;
7
- -ms-user-select: none;
8
- user-select: none;
9
- -webkit-tap-highlight-color: transparent;
10
- -ms-touch-action: manipulation;
11
- touch-action: manipulation;
12
- max-width: max-content;
13
-
14
- @include mixins.use-styles(radio);
15
-
16
- &:not([data-required]):not([data-disabled]):hover {
17
- .radio-box[data-state='unchecked'] {
18
- @include mixins.use-styles(radio, box, hover);
19
- }
20
- }
21
-
22
- &:not([data-required]):not([data-disabled]):active {
23
- .radio-box[data-state='unchecked'] {
24
- @include mixins.use-styles(radio, box, active);
25
- }
26
- }
27
-
28
- &[data-disabled] {
29
- @include mixins.use-styles(radio, disabled);
30
- }
31
-
32
- &[data-required] {
33
- @include mixins.use-styles(radio, required);
34
-
35
- .radio-box {
36
- &::before {
37
- content: ' ';
38
- position: absolute;
39
- width: 100%;
40
- height: 100%;
41
- left: 0;
42
-
43
- @include mixins.use-styles(radio, required, box);
44
- border-radius: mixins.get-var-name(radio, box, border-radius);
45
- }
46
- }
47
- }
48
-
49
- &[data-size='sm'] {
50
- @include mixins.use-styles(radio, size, sm);
51
-
52
- .radio-box {
53
- @include mixins.use-size(radio, size, sm, box);
54
- }
55
-
56
- .radio-mark {
57
- @include mixins.use-size(radio, size, sm, mark);
58
- }
59
- }
60
-
61
- &[data-size='md'] {
62
- @include mixins.use-styles(radio, size, md);
63
-
64
- .radio-box {
65
- @include mixins.use-size(radio, size, md, box);
66
- }
67
-
68
- .radio-mark {
69
- @include mixins.use-size(radio, size, md, mark);
70
- }
71
- }
72
-
73
- &-box {
74
- cursor: pointer;
75
- outline: none;
76
- transition: background-color 0.1s linear;
77
- position: relative;
78
- display: flex;
79
- align-items: center;
80
- justify-content: center;
81
-
82
- @include mixins.use-styles(radio, box);
83
-
84
- &[data-disabled] {
85
- cursor: default;
86
- }
87
-
88
- &:after {
89
- visibility: hidden;
90
- content: '\00A0';
91
- }
92
-
93
- &[data-state='checked'] {
94
- @include mixins.use-styles(radio, box, checked);
95
- }
96
- }
97
-
98
- &-mark {
99
- position: absolute;
100
- @include mixins.use-styles(radio, mark);
101
-
102
- &[data-state='checked'] {
103
- @include mixins.use-styles(radio, mark, in);
104
- }
105
-
106
- &[data-state='unchecked'] {
107
- @include mixins.use-styles(radio, mark, out);
108
- }
109
- }
110
-
111
- &-label {
112
- cursor: pointer;
113
- display: table-cell;
114
- word-break: break-word;
115
-
116
- &[data-disabled] {
117
- cursor: default;
118
- }
119
-
120
- @include mixins.use-styles(radio, label);
121
- }
122
- }
123
-
124
- .radio-group {
125
- display: flex;
126
- flex-direction: column;
127
- @include mixins.use-styles(radio, group);
128
- }
129
-
130
- // .radio-icon {
131
- // width: 16px;
132
- // height: 16px;
133
- // background-color: transparent;
134
- // border: 1px solid #ffffff75;
135
- // border-radius: 100px;
136
-
137
- // &[data-checked] {
138
- // background-color: #fff;
139
- // }
140
- // }
141
-
142
- // .radio {
143
- // display: flex;
144
- // align-items: center;
145
- // outline: none;
146
- // cursor: pointer;
147
- // gap: 6px;
148
- // }
@@ -1,20 +0,0 @@
1
- export interface RadioOption<T> {
2
- value: T;
3
- label: React.ReactNode;
4
- }
5
- export interface RadioGroupProps<T> {
6
- options: RadioOption<T>[];
7
- onChange: (event: T) => void;
8
- value: T | null;
9
- disabled?: boolean;
10
- required?: boolean;
11
- size?: 'sm' | 'md';
12
- }
13
- export declare const RadioGroup: <T extends string>(props: RadioGroupProps<T>) => import("react/jsx-runtime").JSX.Element;
14
- interface RadioProps extends RadioOption<string> {
15
- size?: 'sm' | 'md';
16
- disabled?: boolean;
17
- required?: boolean;
18
- }
19
- export declare const Radio: ({ value, label, size, disabled, required }: RadioProps) => import("react/jsx-runtime").JSX.Element;
20
- export {};
@@ -1,10 +0,0 @@
1
- export interface ImitateScrollProps {
2
- children: React.ReactNode;
3
- thumbClassName: string;
4
- thumbColor?: string;
5
- trackWidth?: number;
6
- thumbMargin?: number;
7
- scrollableClassName?: string;
8
- }
9
- declare const ImitateScroll: ({ children, thumbClassName, scrollableClassName, thumbMargin, trackWidth }: ImitateScrollProps) => import("react/jsx-runtime").JSX.Element;
10
- export { ImitateScroll };
@@ -1,50 +0,0 @@
1
- .scrollable::-webkit-scrollbar {
2
- width: var(--scrollbar-width);
3
- height: var(--scrollbar-width);
4
- }
5
-
6
- .scrollable::-webkit-scrollbar-thumb {
7
- background-clip: padding-box;
8
- border: var(--thumb-padding) solid transparent;
9
- border-radius: 999px;
10
- background-color: var(--thumb-color);
11
- }
12
-
13
- .scrollable::-webkit-scrollbar-corner {
14
- background-color: transparent;
15
- }
16
-
17
- .scrollable-hover-interaction::-webkit-scrollbar-thumb,
18
- .scrollable-hover-interaction::-webkit-scrollbar-track {
19
- visibility: hidden;
20
- }
21
- .scrollable-hover-interaction:hover::-webkit-scrollbar-thumb,
22
- .scrollable-hover-interaction:hover::-webkit-scrollbar-track {
23
- visibility: visible;
24
- }
25
-
26
- .scrollable-border-position::-webkit-scrollbar-thumb {
27
- border-radius: 0px;
28
-
29
- border-right-width: 0px;
30
- border-bottom-width: 0px;
31
-
32
- border-left-width: calc(var(--thumb-padding) * 2);
33
- border-top-width: calc(var(--thumb-padding) * 2);
34
- }
35
-
36
- .hidden-scroll::-webkit-scrollbar {
37
- display: none;
38
- }
39
-
40
- .hidden-scroll::-webkit-scrollbar-thumb {
41
- display: none;
42
- }
43
-
44
- .hidden-scroll::-webkit-scrollbar-track {
45
- display: none;
46
- }
47
-
48
- .hidden-scroll::-webkit-scrollbar-corner {
49
- display: none;
50
- }
@@ -1,33 +0,0 @@
1
- interface OuterImplementation {
2
- implementation: 'outer';
3
- shadowPadding?: number;
4
- scrollbarWidth: number;
5
- noneCorrect?: boolean;
6
- }
7
- interface EdgeImplementation {
8
- implementation: 'edge';
9
- scrollbarWidth: number;
10
- padding: number;
11
- }
12
- interface InnerImplementation {
13
- implementation: 'inner';
14
- padding: number;
15
- }
16
- interface ScrollableProps {
17
- heightAuto?: boolean;
18
- scrollX?: boolean;
19
- scrollY?: boolean;
20
- interactionKind?: 'static' | 'hover';
21
- thumbPos?: 'center' | 'border';
22
- thumbPadding?: number;
23
- thumbColor?: string;
24
- onWheel?: React.WheelEventHandler<HTMLDivElement>;
25
- onScroll?: React.UIEventHandler<HTMLDivElement>;
26
- maxHeight?: number;
27
- children: React.ReactNode;
28
- style?: React.CSSProperties;
29
- className?: string;
30
- }
31
- type Implementation = InnerImplementation | OuterImplementation | EdgeImplementation;
32
- declare const Scrollable: import('react').ForwardRefExoticComponent<(ScrollableProps & Implementation) & import('react').RefAttributes<HTMLDivElement>>;
33
- export { Scrollable };
@@ -1,57 +0,0 @@
1
- @use '../mixins.scss';
2
-
3
- .segments {
4
- position: relative;
5
- display: flex;
6
- width: 100%;
7
- height: 100%;
8
- border-radius: inherit;
9
- transition: all 100ms ease-out;
10
-
11
- &-container {
12
- width: 100%;
13
- box-sizing: border-box;
14
-
15
- @include mixins.use-styles(segment-control, container);
16
- }
17
-
18
- &-slider {
19
- position: absolute;
20
- top: 0;
21
- bottom: 0;
22
- left: 0;
23
- width: calc(100% / var(--uikit--options));
24
- border-radius: inherit;
25
- transform: translateX(calc(var(--uikit--current-index) * 100%));
26
- transform-origin: 0 0;
27
- transition: transform 150ms;
28
-
29
- @include mixins.use-styles(segment-control, slider);
30
- }
31
-
32
- &-option {
33
- position: relative;
34
- box-sizing: border-box;
35
- display: flex;
36
- flex: 1;
37
- align-items: center;
38
- justify-content: center;
39
- height: 100%;
40
- cursor: pointer;
41
- user-select: none;
42
- background: transparent;
43
- border: 0;
44
- border-radius: inherit;
45
- transition: color 100ms ease-out;
46
-
47
- &:not([data-active]):hover {
48
- @include mixins.use-styles(segment-control, option, hover);
49
- }
50
-
51
- &:not([data-active]):active {
52
- @include mixins.use-styles(segment-control, option, active);
53
- }
54
-
55
- @include mixins.use-styles(segment-control, option);
56
- }
57
- }
@@ -1,11 +0,0 @@
1
- interface SegmentOption<T> {
2
- label: React.ReactNode;
3
- value: T;
4
- }
5
- export interface SegmentsProps<T> {
6
- value: T;
7
- onChange: (value: T) => void;
8
- options: SegmentOption<T>[];
9
- }
10
- export declare const Segments: <T extends number | string>({ value, onChange, options }: SegmentsProps<T>) => import("react/jsx-runtime").JSX.Element;
11
- export {};
@@ -1,80 +0,0 @@
1
- @use '../mixins.scss';
2
-
3
- .select {
4
- cursor: pointer;
5
- max-width: 100%;
6
-
7
- &-layout {
8
- display: flex;
9
- align-items: center;
10
- width: 100%;
11
- min-height: inherit;
12
- }
13
-
14
- &-placeholder {
15
- user-select: none;
16
-
17
- @include mixins.use-styles(form, placeholder);
18
- }
19
-
20
- &-content {
21
- position: relative;
22
- display: flex;
23
- flex: 1;
24
- align-items: center;
25
- align-self: stretch;
26
- overflow: hidden;
27
-
28
- &:first-child {
29
- padding-left: var(--form_space, 0);
30
- }
31
-
32
- &-text {
33
- overflow: hidden;
34
- text-overflow: ellipsis;
35
- white-space: nowrap;
36
- }
37
- }
38
-
39
- &-element {
40
- height: 100%;
41
- display: flex;
42
- align-items: center;
43
- }
44
-
45
- &-close-button {
46
- pointer-events: auto;
47
- cursor: pointer;
48
- padding: 0px var(--form_space, 0);
49
- height: 100%;
50
- outline: none;
51
- color: var(--select_clean_color);
52
-
53
- &:hover {
54
- color: var(--select_clean_hover_color);
55
- }
56
- }
57
-
58
- &-expand {
59
- margin-right: var(--form_space, 0);
60
-
61
- &:first-child {
62
- margin-left: var(--form_space, 0);
63
- }
64
- }
65
- }
66
-
67
- // expand icon
68
-
69
- .expand-icon {
70
- color: var(--select_expand_color);
71
- transition: transform 0.2s;
72
- }
73
-
74
- .form {
75
- &[data-state='open'] {
76
- .expand-icon {
77
- transform: rotate(180deg);
78
- }
79
- }
80
- }
@@ -1,15 +0,0 @@
1
- export interface SelectFormProps extends React.HTMLAttributes<HTMLDivElement> {
2
- required?: boolean;
3
- disabled?: boolean;
4
- className?: string;
5
- leftElement?: React.ReactNode;
6
- placeholder?: string;
7
- value?: string | number;
8
- size?: 'sm' | 'md' | 'lg';
9
- fill?: boolean;
10
- clearButton?: boolean;
11
- clearButtonIcon?: boolean;
12
- inputRef?: React.Ref<HTMLInputElement>;
13
- onClear?: (event: React.MouseEvent<HTMLButtonElement>) => void;
14
- }
15
- export declare const SelectInput: import('react').ForwardRefExoticComponent<SelectFormProps & import('react').RefAttributes<HTMLDivElement>>;
@@ -1,12 +0,0 @@
1
- import { Option } from '..';
2
- interface SelectPopoverProps<T> {
3
- scrollboxRef?: React.RefObject<HTMLDivElement>;
4
- optionsWrapperRef?: React.RefObject<HTMLDivElement>;
5
- options: Option<T>[];
6
- minimalOptions?: boolean;
7
- active?: T | null;
8
- onSelect?: (value: T) => void;
9
- onOpened?: () => void;
10
- }
11
- export declare const SelectOptions: <T>(props: SelectPopoverProps<T>) => import("react/jsx-runtime").JSX.Element;
12
- export {};
@@ -1,8 +0,0 @@
1
- interface SelectRightElementsProps {
2
- onClear?: (event: React.MouseEvent<HTMLButtonElement>) => void;
3
- clearButton?: boolean;
4
- clearButtonIcon?: React.ReactNode;
5
- value: boolean;
6
- }
7
- export declare const SelectRightElements: (props: SelectRightElementsProps) => import("react/jsx-runtime").JSX.Element;
8
- export {};
@@ -1,24 +0,0 @@
1
- import { Option } from '../types';
2
- import { SelectFormProps } from './SelectInput';
3
- interface Cleanable<T> {
4
- clearButton: true;
5
- onChange: (event: T | null) => void;
6
- }
7
- interface UnCleanable<T> {
8
- clearButton?: false;
9
- onChange: (event: T) => void;
10
- }
11
- type DependedValueType<T> = Cleanable<T> | UnCleanable<T>;
12
- export type SelectProps<T> = Omit<SelectFormProps, 'value' | 'onChange' | 'closeButton'> & DependedValueType<T> & {
13
- value: T | null;
14
- options: Option<T>[];
15
- children?: React.ReactNode;
16
- minimalOptions?: boolean;
17
- matchTarget?: 'width' | 'min-width';
18
- popoverRef?: React.Ref<HTMLDivElement>;
19
- scrollRef?: React.Ref<{
20
- scrollTo: (index: number) => void;
21
- }>;
22
- };
23
- export declare const Select: <T>(props: SelectProps<T>) => import("react/jsx-runtime").JSX.Element;
24
- export {};