@uxf/ui 1.0.0-beta.164 → 1.0.0-beta.166
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/_select-base/_select-base.d.ts +2 -2
- package/avatar/avatar.stories.d.ts +1 -1
- package/avatar-file-input/avatar-file-input.stories.d.ts +1 -1
- package/badge/badge.stories.d.ts +1 -1
- package/button/button.stories.d.ts +1 -1
- package/button-group/button-group.stories.d.ts +1 -1
- package/button-list/button-list.stories.d.ts +1 -1
- package/calendar/calendar.stories.d.ts +1 -1
- package/checkbox/checkbox.stories.d.ts +1 -1
- package/checkbox-button/checkbox-button.stories.d.ts +1 -1
- package/checkbox-input/checkbox-input.stories.d.ts +1 -1
- package/chip/chip.stories.d.ts +1 -1
- package/color-radio/color-radio.stories.d.ts +1 -1
- package/color-radio-group/color-radio-group.stories.d.ts +1 -1
- package/combobox/combobox.d.ts +2 -2
- package/combobox/combobox.stories.d.ts +5 -5
- package/config/icons-config.d.ts +1 -1
- package/config/icons-config.js +1 -1
- package/config/icons.d.ts +10 -0
- package/config/icons.js +2 -0
- package/css/calendar.css +50 -16
- package/css/date-picker.css +13 -75
- package/css/datetime-picker.css +11 -0
- package/css/input-with-popover.css +1 -1
- package/css/time-picker.css +6 -3
- package/date-picker/date-picker-content.d.ts +2 -0
- package/{date-picker-provider/date-picker.js → date-picker/date-picker-content.js} +4 -4
- package/{date-picker-provider → date-picker}/date-picker-decade.js +1 -1
- package/{date-picker-provider → date-picker}/date-picker-navigation.js +5 -5
- package/{date-picker-provider → date-picker}/date-picker-year.js +1 -2
- package/date-picker/date-picker.d.ts +8 -0
- package/{date-picker-provider/date-picker-provider.js → date-picker/date-picker.js} +10 -12
- package/{date-picker-provider/date-picker-provider.spec.js → date-picker/date-picker.spec.js} +2 -2
- package/date-picker/date-picker.stories.d.ts +7 -0
- package/{date-picker-provider/date-picker-provider.stories.js → date-picker/date-picker.stories.js} +6 -12
- package/date-picker/index.d.ts +3 -0
- package/date-picker/index.js +5 -0
- package/date-picker/types.d.ts +1 -0
- package/date-picker-input/date-picker-input.js +3 -3
- package/date-picker-input/date-picker-input.stories.d.ts +1 -4
- package/date-picker-input/date-picker-input.stories.js +5 -11
- package/date-picker-input/index.d.ts +1 -2
- package/date-picker-input/index.js +4 -1
- package/datetime-picker/datetime-picker.d.ts +11 -0
- package/datetime-picker/datetime-picker.js +94 -0
- package/datetime-picker/datetime-picker.spec.d.ts +1 -0
- package/datetime-picker/datetime-picker.spec.js +9 -0
- package/datetime-picker/datetime-picker.stories.d.ts +7 -0
- package/datetime-picker/datetime-picker.stories.js +43 -0
- package/datetime-picker/index.d.ts +2 -0
- package/datetime-picker/index.js +7 -0
- package/datetime-picker-input/datetime-picker-input.d.ts +9 -0
- package/datetime-picker-input/datetime-picker-input.js +71 -0
- package/datetime-picker-input/datetime-picker-input.spec.d.ts +1 -0
- package/datetime-picker-input/datetime-picker-input.spec.js +9 -0
- package/datetime-picker-input/datetime-picker-input.stories.d.ts +7 -0
- package/datetime-picker-input/datetime-picker-input.stories.js +48 -0
- package/datetime-picker-input/index.d.ts +2 -0
- package/datetime-picker-input/index.js +7 -0
- package/dropdown/dropdown.stories.d.ts +1 -1
- package/dropzone/dropzone.stories.d.ts +2 -2
- package/error-message/error-message.stories.d.ts +1 -1
- package/file-input/file-input.stories.d.ts +1 -1
- package/flash-messages/flash-messages.stories.d.ts +1 -1
- package/form-component/form-component.stories.d.ts +1 -1
- package/icon/icon.stories.d.ts +5 -5
- package/image-gallery/image-gallery.stories.d.ts +1 -1
- package/input/input.stories.d.ts +3 -3
- package/label/label.stories.d.ts +1 -1
- package/layout/layout.stories.d.ts +1 -1
- package/list-item/list-item.stories.d.ts +1 -1
- package/loader/loader.stories.d.ts +1 -1
- package/modal/modal.stories.d.ts +1 -1
- package/multi-combobox/multi-combobox.stories.d.ts +3 -3
- package/multi-select/multi-select.stories.d.ts +2 -2
- package/package.json +4 -4
- package/pagination/pagination.stories.d.ts +1 -1
- package/paper/paper.stories.d.ts +1 -1
- package/radio/radio.stories.d.ts +1 -1
- package/radio-group/radio-group.stories.d.ts +1 -1
- package/raster-image/raster-image.stories.d.ts +1 -1
- package/select/select.d.ts +2 -2
- package/select/select.stories.d.ts +4 -4
- package/tabs/tabs.stories.d.ts +1 -1
- package/text-input/text-input.stories.d.ts +2 -2
- package/text-link/text-link.stories.d.ts +1 -1
- package/textarea/textarea.stories.d.ts +1 -1
- package/time-picker/index.d.ts +2 -0
- package/time-picker/index.js +5 -0
- package/time-picker/time-picker-input.spec.d.ts +1 -0
- package/time-picker/time-picker-input.spec.js +9 -0
- package/time-picker/time-picker-input.stories.d.ts +7 -0
- package/time-picker/time-picker-input.stories.js +43 -0
- package/{time-picker-input → time-picker}/time-picker.d.ts +1 -1
- package/{time-picker-input → time-picker}/time-picker.js +1 -1
- package/time-picker-input/index.d.ts +1 -3
- package/time-picker-input/index.js +4 -3
- package/time-picker-input/time-picker-input.js +3 -3
- package/time-picker-input/time-picker-input.stories.d.ts +1 -1
- package/time-picker-input/time-picker-input.stories.js +5 -5
- package/toggle/toggle.stories.d.ts +1 -1
- package/tooltip/tooltip.stories.d.ts +1 -1
- package/typography/typography.stories.d.ts +2 -2
- package/utils/component-structure-analyzer.d.ts +2 -2
- package/utils/icons-config.js +10 -0
- package/utils/storybook-config.d.ts +2 -2
- package/date-picker-input/types.d.ts +0 -5
- package/date-picker-provider/date-picker-day.d.ts +0 -8
- package/date-picker-provider/date-picker-day.js +0 -63
- package/date-picker-provider/date-picker-provider.d.ts +0 -8
- package/date-picker-provider/date-picker-provider.stories.d.ts +0 -10
- package/date-picker-provider/date-picker.d.ts +0 -3
- package/date-picker-provider/index.d.ts +0 -3
- package/date-picker-provider/index.js +0 -5
- package/date-picker-provider/types.d.ts +0 -5
- package/date-picker-provider/types.js +0 -2
- /package/{date-picker-provider → date-picker}/date-picker-decade.d.ts +0 -0
- /package/{date-picker-provider → date-picker}/date-picker-month.d.ts +0 -0
- /package/{date-picker-provider → date-picker}/date-picker-month.js +0 -0
- /package/{date-picker-provider → date-picker}/date-picker-navigation.d.ts +0 -0
- /package/{date-picker-provider → date-picker}/date-picker-year.d.ts +0 -0
- /package/{date-picker-provider/date-picker-provider.spec.d.ts → date-picker/date-picker.spec.d.ts} +0 -0
- /package/{date-picker-input → date-picker}/types.js +0 -0
- /package/{time-picker-input → time-picker}/time-picker-hour.d.ts +0 -0
- /package/{time-picker-input → time-picker}/time-picker-hour.js +0 -0
- /package/{time-picker-input → time-picker}/time-picker-hours.d.ts +0 -0
- /package/{time-picker-input → time-picker}/time-picker-hours.js +0 -0
- /package/{time-picker-input → time-picker}/time-picker-minute.d.ts +0 -0
- /package/{time-picker-input → time-picker}/time-picker-minute.js +0 -0
- /package/{time-picker-input → time-picker}/time-picker-minutes.d.ts +0 -0
- /package/{time-picker-input → time-picker}/time-picker-minutes.js +0 -0
|
@@ -2,7 +2,7 @@ import { Placement, Strategy } from "@floating-ui/react";
|
|
|
2
2
|
import type { Combobox, Listbox } from "@headlessui/react";
|
|
3
3
|
import { IconsSet } from "@uxf/ui/icon/theme";
|
|
4
4
|
import { Clearable, FormControlProps } from "@uxf/ui/types";
|
|
5
|
-
import { ReactElement, ReactNode, Ref } from "react";
|
|
5
|
+
import React, { ReactElement, ReactNode, Ref } from "react";
|
|
6
6
|
import { InputGroupSizes, InputGroupVariants } from "../input/theme";
|
|
7
7
|
export type SelectBaseValueId = number | string;
|
|
8
8
|
export type SelectBaseValue<ValueId = SelectBaseValueId> = {
|
|
@@ -47,7 +47,7 @@ type Props<ValueId = SelectBaseValue, Value = ValueId, Option = SelectBaseOption
|
|
|
47
47
|
value: ValueId | null;
|
|
48
48
|
});
|
|
49
49
|
export declare const _SelectBase: {
|
|
50
|
-
<ValueId = SelectBaseValue<SelectBaseValueId>, Value = ValueId, Option = SelectBaseOption<ValueId>>(props: Props<ValueId, Value, Option>): JSX.Element;
|
|
50
|
+
<ValueId = SelectBaseValue<SelectBaseValueId>, Value = ValueId, Option = SelectBaseOption<ValueId>>(props: Props<ValueId, Value, Option>): React.JSX.Element;
|
|
51
51
|
displayName: string;
|
|
52
52
|
};
|
|
53
53
|
export {};
|
|
@@ -4,4 +4,4 @@ declare const _default: {
|
|
|
4
4
|
component: React.ForwardRefExoticComponent<import("./avatar").AvatarProps & React.RefAttributes<HTMLDivElement>>;
|
|
5
5
|
};
|
|
6
6
|
export default _default;
|
|
7
|
-
export declare function Default(): JSX.Element;
|
|
7
|
+
export declare function Default(): React.JSX.Element;
|
|
@@ -4,4 +4,4 @@ declare const _default: {
|
|
|
4
4
|
component: React.ForwardRefExoticComponent<import("./avatar-file-input").AvatarFileInputProps & React.RefAttributes<HTMLInputElement>>;
|
|
5
5
|
};
|
|
6
6
|
export default _default;
|
|
7
|
-
export declare function Default(): JSX.Element;
|
|
7
|
+
export declare function Default(): React.JSX.Element;
|
package/badge/badge.stories.d.ts
CHANGED
|
@@ -4,4 +4,4 @@ declare const _default: {
|
|
|
4
4
|
component: React.ForwardRefExoticComponent<import("./badge").BadgeProps & React.RefAttributes<HTMLDivElement>>;
|
|
5
5
|
};
|
|
6
6
|
export default _default;
|
|
7
|
-
export declare function Default(): JSX.Element;
|
|
7
|
+
export declare function Default(): React.JSX.Element;
|
|
@@ -4,4 +4,4 @@ declare const _default: {
|
|
|
4
4
|
component: React.ForwardRefExoticComponent<import("./checkbox").CheckboxProps & React.RefAttributes<HTMLDivElement>>;
|
|
5
5
|
};
|
|
6
6
|
export default _default;
|
|
7
|
-
export declare function Default(): JSX.Element;
|
|
7
|
+
export declare function Default(): React.JSX.Element;
|
|
@@ -4,4 +4,4 @@ declare const _default: {
|
|
|
4
4
|
component: React.ForwardRefExoticComponent<import("./checkbox-button").CheckboxButtonProps & React.RefAttributes<HTMLButtonElement>>;
|
|
5
5
|
};
|
|
6
6
|
export default _default;
|
|
7
|
-
export declare function Default(): JSX.Element;
|
|
7
|
+
export declare function Default(): React.JSX.Element;
|
|
@@ -4,4 +4,4 @@ declare const _default: {
|
|
|
4
4
|
component: React.ForwardRefExoticComponent<import("./checkbox-input").CheckboxInputProps & React.RefAttributes<HTMLDivElement>>;
|
|
5
5
|
};
|
|
6
6
|
export default _default;
|
|
7
|
-
export declare function Default(): JSX.Element;
|
|
7
|
+
export declare function Default(): React.JSX.Element;
|
package/chip/chip.stories.d.ts
CHANGED
|
@@ -4,4 +4,4 @@ declare const _default: {
|
|
|
4
4
|
component: React.ForwardRefExoticComponent<import("./color-radio").ColorRadioProps<string | number> & React.RefAttributes<HTMLDivElement>>;
|
|
5
5
|
};
|
|
6
6
|
export default _default;
|
|
7
|
-
export declare function Default(): JSX.Element;
|
|
7
|
+
export declare function Default(): React.JSX.Element;
|
|
@@ -4,4 +4,4 @@ declare const _default: {
|
|
|
4
4
|
component: React.ForwardRefExoticComponent<import("./color-radio-group").ColorRadioGroupProps & React.RefAttributes<HTMLLabelElement>>;
|
|
5
5
|
};
|
|
6
6
|
export default _default;
|
|
7
|
-
export declare function Default(): JSX.Element;
|
|
7
|
+
export declare function Default(): React.JSX.Element;
|
package/combobox/combobox.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ReactNode, Ref } from "react";
|
|
1
|
+
import React, { ReactNode, Ref } from "react";
|
|
2
2
|
import { SelectBaseProps, SelectBaseValueId } from "../_select-base";
|
|
3
3
|
export type ComboboxValueId = SelectBaseValueId;
|
|
4
4
|
export type ComboboxValue<ValueId = ComboboxValueId> = {
|
|
@@ -17,7 +17,7 @@ export interface ComboboxProps<ValueId = SelectBaseValueId, Option = ComboboxOpt
|
|
|
17
17
|
renderOption?: (option: Option) => ReactNode;
|
|
18
18
|
}
|
|
19
19
|
export declare const Combobox: {
|
|
20
|
-
<ValueId = SelectBaseValueId, Option = ComboboxOption<ValueId>, Value = Option>(props: ComboboxProps<ValueId, Option, Value>): JSX.Element;
|
|
20
|
+
<ValueId = SelectBaseValueId, Option = ComboboxOption<ValueId>, Value = Option>(props: ComboboxProps<ValueId, Option, Value>): React.JSX.Element;
|
|
21
21
|
displayName: string;
|
|
22
22
|
};
|
|
23
23
|
export {};
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
|
|
1
|
+
import React from "react";
|
|
2
2
|
declare const _default: {
|
|
3
3
|
title: string;
|
|
4
4
|
component: {
|
|
5
|
-
<ValueId = import("../_select-base").SelectBaseValueId, Option = import("./combobox").ComboboxOption<ValueId>, Value = Option>(props: import("./combobox").ComboboxProps<ValueId, Option, Value>): JSX.Element;
|
|
5
|
+
<ValueId = import("../_select-base").SelectBaseValueId, Option = import("./combobox").ComboboxOption<ValueId>, Value = Option>(props: import("./combobox").ComboboxProps<ValueId, Option, Value>): React.JSX.Element;
|
|
6
6
|
displayName: string;
|
|
7
7
|
};
|
|
8
8
|
};
|
|
9
9
|
export default _default;
|
|
10
|
-
export declare function Default(): JSX.Element;
|
|
11
|
-
export declare function Async(): JSX.Element;
|
|
12
|
-
export declare function ComponentStructure(): JSX.Element;
|
|
10
|
+
export declare function Default(): React.JSX.Element;
|
|
11
|
+
export declare function Async(): React.JSX.Element;
|
|
12
|
+
export declare function ComponentStructure(): React.JSX.Element;
|
package/config/icons-config.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const ICONS_VERSION = "
|
|
1
|
+
export declare const ICONS_VERSION = "1685632683041";
|
|
2
2
|
export declare const ICON_SPRITE = "/.storybook/static-assets/icons-generated/_icon-sprite.svg";
|
package/config/icons-config.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.ICON_SPRITE = exports.ICONS_VERSION = void 0;
|
|
4
|
-
exports.ICONS_VERSION = "
|
|
4
|
+
exports.ICONS_VERSION = "1685632683041";
|
|
5
5
|
exports.ICON_SPRITE = "/.storybook/static-assets/icons-generated/_icon-sprite.svg";
|
package/config/icons.d.ts
CHANGED
|
@@ -1,4 +1,12 @@
|
|
|
1
1
|
export declare const ICONS: {
|
|
2
|
+
readonly "arrow-left": {
|
|
3
|
+
readonly w: 448;
|
|
4
|
+
readonly h: 512;
|
|
5
|
+
};
|
|
6
|
+
readonly "arrow-right": {
|
|
7
|
+
readonly w: 448;
|
|
8
|
+
readonly h: 512;
|
|
9
|
+
};
|
|
2
10
|
readonly calendar: {
|
|
3
11
|
readonly w: 448;
|
|
4
12
|
readonly h: 512;
|
|
@@ -83,6 +91,8 @@ export declare const ICONS: {
|
|
|
83
91
|
export type IconsType = keyof typeof ICONS;
|
|
84
92
|
declare module "@uxf/ui/icon/theme" {
|
|
85
93
|
interface IconsSet {
|
|
94
|
+
"arrow-left": true;
|
|
95
|
+
"arrow-right": true;
|
|
86
96
|
"calendar": true;
|
|
87
97
|
"camera": true;
|
|
88
98
|
"caretDown": true;
|
package/config/icons.js
CHANGED
|
@@ -3,6 +3,8 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
4
|
exports.ICONS = void 0;
|
|
5
5
|
exports.ICONS = {
|
|
6
|
+
"arrow-left": { w: 448, h: 512 },
|
|
7
|
+
"arrow-right": { w: 448, h: 512 },
|
|
6
8
|
"calendar": { w: 448, h: 512 },
|
|
7
9
|
"camera": { w: 512, h: 512 },
|
|
8
10
|
"caretDown": { w: 320, h: 512 },
|
package/css/calendar.css
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
.uxf-calendar {
|
|
2
|
-
&__cell
|
|
2
|
+
&__cell {
|
|
3
3
|
align-items: center;
|
|
4
4
|
background-color: theme("backgroundColor.white");
|
|
5
5
|
color: theme("colors.lightMedium");
|
|
@@ -13,8 +13,6 @@
|
|
|
13
13
|
position: relative;
|
|
14
14
|
text-align: center;
|
|
15
15
|
|
|
16
|
-
--compensated-radii: calc(theme("borderRadius.md") - theme("spacing.px"));
|
|
17
|
-
|
|
18
16
|
:root .dark & {
|
|
19
17
|
background-color: theme("backgroundColor.gray.900");
|
|
20
18
|
color: theme("colors.darkMedium");
|
|
@@ -37,6 +35,10 @@
|
|
|
37
35
|
position: absolute;
|
|
38
36
|
}
|
|
39
37
|
}
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
&__cell-day {
|
|
41
|
+
--compensated-radii: calc(theme("borderRadius.md") - theme("spacing.px"));
|
|
40
42
|
|
|
41
43
|
&:first-child {
|
|
42
44
|
border-top-left-radius: var(--compensated-radii);
|
|
@@ -54,16 +56,6 @@
|
|
|
54
56
|
border-bottom-right-radius: var(--compensated-radii);
|
|
55
57
|
}
|
|
56
58
|
|
|
57
|
-
&--not-current-month {
|
|
58
|
-
background-color: theme("backgroundColor.gray.100");
|
|
59
|
-
color: theme("colors.lightLow");
|
|
60
|
-
|
|
61
|
-
:root .dark & {
|
|
62
|
-
background-color: theme("backgroundColor.gray.800");
|
|
63
|
-
color: theme("colors.darkLow");
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
|
|
67
59
|
&--selected {
|
|
68
60
|
background-color: theme("backgroundColor.primary.500");
|
|
69
61
|
color: theme("colors.white");
|
|
@@ -109,6 +101,37 @@
|
|
|
109
101
|
}
|
|
110
102
|
}
|
|
111
103
|
}
|
|
104
|
+
|
|
105
|
+
&--not-current-month {
|
|
106
|
+
background-color: theme("backgroundColor.gray.100");
|
|
107
|
+
color: theme("colors.lightLow");
|
|
108
|
+
|
|
109
|
+
:root .dark & {
|
|
110
|
+
background-color: theme("backgroundColor.gray.800");
|
|
111
|
+
color: theme("colors.darkLow");
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
&__cell-month,
|
|
117
|
+
&__cell-year {
|
|
118
|
+
--compensated-radii: calc(theme("borderRadius.md") - theme("spacing.px"));
|
|
119
|
+
|
|
120
|
+
&:first-child {
|
|
121
|
+
border-top-left-radius: var(--compensated-radii);
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
&:nth-child(3) {
|
|
125
|
+
border-top-right-radius: var(--compensated-radii);
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
&:nth-last-child(3) {
|
|
129
|
+
border-bottom-left-radius: var(--compensated-radii);
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
&:last-child {
|
|
133
|
+
border-bottom-right-radius: var(--compensated-radii);
|
|
134
|
+
}
|
|
112
135
|
}
|
|
113
136
|
|
|
114
137
|
&__weekdays {
|
|
@@ -118,6 +141,7 @@
|
|
|
118
141
|
font-size: 10px;
|
|
119
142
|
font-weight: theme("fontWeight.semibold");
|
|
120
143
|
grid-template-columns: repeat(7, minmax(0, 1fr));
|
|
144
|
+
margin-bottom: 6px;
|
|
121
145
|
padding: 0 1px;
|
|
122
146
|
text-align: center;
|
|
123
147
|
text-transform: uppercase;
|
|
@@ -131,16 +155,17 @@
|
|
|
131
155
|
align-items: center;
|
|
132
156
|
display: flex;
|
|
133
157
|
flex-direction: column;
|
|
134
|
-
height:
|
|
158
|
+
height: 21px;
|
|
135
159
|
justify-content: center;
|
|
136
160
|
}
|
|
137
161
|
|
|
138
|
-
&__days
|
|
162
|
+
&__days,
|
|
163
|
+
&__year,
|
|
164
|
+
&__decade {
|
|
139
165
|
background-color: theme("backgroundColor.lightBorder");
|
|
140
166
|
border-radius: 6px;
|
|
141
167
|
display: grid;
|
|
142
168
|
gap: 1px;
|
|
143
|
-
grid-template-columns: repeat(7, minmax(0, 1fr));
|
|
144
169
|
padding: 1px;
|
|
145
170
|
text-align: center;
|
|
146
171
|
|
|
@@ -148,4 +173,13 @@
|
|
|
148
173
|
background-color: theme("backgroundColor.darkBorder");
|
|
149
174
|
}
|
|
150
175
|
}
|
|
176
|
+
|
|
177
|
+
&__days {
|
|
178
|
+
grid-template-columns: repeat(7, minmax(0, 1fr));
|
|
179
|
+
}
|
|
180
|
+
|
|
181
|
+
&__year,
|
|
182
|
+
&__decade {
|
|
183
|
+
grid-template-columns: repeat(3, minmax(0, 1fr));
|
|
184
|
+
}
|
|
151
185
|
}
|
package/css/date-picker.css
CHANGED
|
@@ -1,84 +1,22 @@
|
|
|
1
1
|
.uxf-date-picker {
|
|
2
|
-
|
|
3
|
-
@apply flex items-center justify-between px-4 w-[320px] sm:w-[360px];
|
|
4
|
-
}
|
|
5
|
-
|
|
6
|
-
&__month-calendar,
|
|
7
|
-
&__year-calendar,
|
|
8
|
-
&__decade-calendar {
|
|
9
|
-
@apply grid place-items-center w-full px-4 pt-4 text-center;
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
&__month-calendar {
|
|
13
|
-
@apply grid-cols-7 gap-0.5;
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
&__year-calendar {
|
|
17
|
-
@apply grid-cols-3 sm:grid-cols-4 gap-2;
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
&__decade-calendar {
|
|
21
|
-
@apply grid-cols-3 gap-2;
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
&__weekday-label {
|
|
25
|
-
@apply uppercase pb-2;
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
&__decade-label {
|
|
29
|
-
@apply font-semibold;
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
&__cell {
|
|
33
|
-
@apply p-1 transition relative rounded-full outline-none before:absolute before:pointer-events-none
|
|
34
|
-
before:rounded-full before:-inset-1 focus-visible:before:border-2;
|
|
35
|
-
|
|
36
|
-
&-month {
|
|
37
|
-
@apply w-full;
|
|
38
|
-
}
|
|
2
|
+
@apply w-[296px] sm:w-[340px] mx-auto;
|
|
39
3
|
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
:root .light & {
|
|
46
|
-
@apply text-gray-900;
|
|
47
|
-
|
|
48
|
-
.uxf-date-picker__cell {
|
|
49
|
-
@apply hover:bg-gray-200 focus-visible:before:border-primary;
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
.uxf-date-picker__cell-day--today {
|
|
53
|
-
@apply bg-primary-200 hover:bg-primary-300;
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
.uxf-date-picker__cell-day--selected {
|
|
57
|
-
@apply bg-primary text-white hover:bg-primary;
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
.uxf-date-picker__cell-day--not-current-month {
|
|
61
|
-
@apply text-gray-400;
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
:root .dark & {
|
|
66
|
-
@apply bg-gray-900 text-white;
|
|
4
|
+
&__navigation {
|
|
5
|
+
@apply flex items-center justify-between mb-4;
|
|
67
6
|
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
7
|
+
&-title {
|
|
8
|
+
font-size: 14px;
|
|
9
|
+
font-weight: theme("fontWeight.medium");
|
|
10
|
+
text-align: center;
|
|
71
11
|
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
12
|
+
:root .light & {
|
|
13
|
+
@apply text-lightMedium is-hoverable:text-lightHigh;
|
|
14
|
+
}
|
|
75
15
|
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
16
|
+
:root .dark & {
|
|
17
|
+
@apply text-darkMedium is-hoverable:text-darkHigh;
|
|
18
|
+
}
|
|
79
19
|
|
|
80
|
-
.uxf-date-picker__cell-day--not-current-month {
|
|
81
|
-
@apply text-gray-600;
|
|
82
20
|
}
|
|
83
21
|
}
|
|
84
22
|
}
|
package/css/time-picker.css
CHANGED
|
@@ -1,21 +1,24 @@
|
|
|
1
1
|
.uxf-time-picker {
|
|
2
2
|
&__global {
|
|
3
|
-
@apply flex items-center justify-between px-4 w-[180px];
|
|
3
|
+
@apply flex items-center justify-between px-4 w-[180px] mx-auto;
|
|
4
4
|
|
|
5
5
|
&__column {
|
|
6
6
|
@apply flex flex-col items-center shrink-0;
|
|
7
7
|
|
|
8
|
+
width: 48px;
|
|
9
|
+
|
|
8
10
|
& > :nth-child(1),
|
|
9
11
|
& > :nth-child(3) {
|
|
10
|
-
|
|
12
|
+
height: 24px
|
|
11
13
|
}
|
|
12
14
|
}
|
|
13
15
|
}
|
|
14
16
|
|
|
15
17
|
&__hours,
|
|
16
18
|
&__minutes {
|
|
17
|
-
@apply grid grid-cols-4 place-items-center gap-1;
|
|
19
|
+
@apply grid grid-cols-4 place-items-center gap-1 mx-auto;
|
|
18
20
|
|
|
21
|
+
text-align: center;
|
|
19
22
|
width: 200px;
|
|
20
23
|
}
|
|
21
24
|
|
|
@@ -23,13 +23,13 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
23
23
|
return result;
|
|
24
24
|
};
|
|
25
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
exports.
|
|
26
|
+
exports.DatePickerContent = void 0;
|
|
27
27
|
const react_1 = __importStar(require("react"));
|
|
28
28
|
const date_picker_year_1 = require("./date-picker-year");
|
|
29
29
|
const date_picker_decade_1 = require("./date-picker-decade");
|
|
30
30
|
const date_picker_context_1 = require("@uxf/datepicker/contexts/date-picker-context");
|
|
31
31
|
const date_picker_month_1 = require("./date-picker-month");
|
|
32
|
-
const
|
|
32
|
+
const DatePickerContent = (props) => {
|
|
33
33
|
// eslint-disable-next-line react/destructuring-assignment
|
|
34
34
|
const { goToDate, activeMonths } = (0, react_1.useContext)(date_picker_context_1.DatePickerContext);
|
|
35
35
|
const [viewMode, setViewMode] = (0, react_1.useState)("month");
|
|
@@ -51,5 +51,5 @@ const DatePicker = (props) => {
|
|
|
51
51
|
props.children,
|
|
52
52
|
datePickerComponents[viewMode]));
|
|
53
53
|
};
|
|
54
|
-
exports.
|
|
55
|
-
exports.
|
|
54
|
+
exports.DatePickerContent = DatePickerContent;
|
|
55
|
+
exports.DatePickerContent.displayName = "UxfUiDatePickerContent";
|
|
@@ -68,6 +68,6 @@ exports.DatePickerDecade = (0, react_1.memo)((props) => {
|
|
|
68
68
|
}, selectButtonProps: {
|
|
69
69
|
children: decadeLabel,
|
|
70
70
|
} }),
|
|
71
|
-
react_1.default.createElement("div", { className: "uxf-
|
|
71
|
+
react_1.default.createElement("div", { className: "uxf-calendar__decade" }, years.map((year, index) => (react_1.default.createElement("button", { className: (0, cx_1.cx)("uxf-calendar__cell uxf-calendar__cell-year", !canGoToYear(year.date) && classes_1.CLASSES.IS_DISABLED), key: year.yearLabel + index, onClick: handleSelectYear(year.date), type: "button" }, year.yearLabel))))));
|
|
72
72
|
});
|
|
73
73
|
exports.DatePickerDecade.displayName = "UxfUiDatePickerDecade";
|
|
@@ -9,11 +9,11 @@ const button_1 = require("../button");
|
|
|
9
9
|
const icon_1 = require("../icon");
|
|
10
10
|
const DatePickerNavigation = (props) => {
|
|
11
11
|
return (react_1.default.createElement("div", { className: "uxf-date-picker__navigation" },
|
|
12
|
-
react_1.default.createElement(button_1.Button, { isIconButton: true, variant: "white", ...props.prevButtonProps },
|
|
13
|
-
react_1.default.createElement(icon_1.Icon, { name: "
|
|
14
|
-
props.selectButtonProps.onClick ? (react_1.default.createElement(button_1.Button, { variant: "text", color: "default", ...props.selectButtonProps })) : (react_1.default.createElement("p", { className: "uxf-date-picker__navigation-title" }, props.selectButtonProps.children)),
|
|
15
|
-
react_1.default.createElement(button_1.Button, { isIconButton: true, variant: "white", ...props.nextButtonProps },
|
|
16
|
-
react_1.default.createElement(icon_1.Icon, { name: "
|
|
12
|
+
react_1.default.createElement(button_1.Button, { isIconButton: true, size: "sm", variant: "white", ...props.prevButtonProps },
|
|
13
|
+
react_1.default.createElement(icon_1.Icon, { name: "arrow-left", size: 16 })),
|
|
14
|
+
props.selectButtonProps.onClick ? (react_1.default.createElement(button_1.Button, { variant: "text", size: "sm", color: "default", ...props.selectButtonProps })) : (react_1.default.createElement("p", { className: "uxf-date-picker__navigation-title" }, props.selectButtonProps.children)),
|
|
15
|
+
react_1.default.createElement(button_1.Button, { isIconButton: true, size: "sm", variant: "white", ...props.nextButtonProps },
|
|
16
|
+
react_1.default.createElement(icon_1.Icon, { name: "arrow-right", size: 16 }))));
|
|
17
17
|
};
|
|
18
18
|
exports.DatePickerNavigation = DatePickerNavigation;
|
|
19
19
|
exports.DatePickerNavigation.displayName = "UxfUiDatePickerArrowsViewMode";
|
|
@@ -36,7 +36,6 @@ const react_1 = __importStar(require("react"));
|
|
|
36
36
|
const date_picker_navigation_1 = require("./date-picker-navigation");
|
|
37
37
|
exports.DatePickerYear = (0, react_1.memo)((props) => {
|
|
38
38
|
const { canGoToNextYear, canGoToPrevYear, goToNextYear, goToPrevYear, canGoToMonth, activeMonths } = (0, react_1.useContext)(date_picker_context_1.DatePickerContext);
|
|
39
|
-
const currentMonth = activeMonths[0].month;
|
|
40
39
|
const currentYear = activeMonths[0].year;
|
|
41
40
|
const { months, yearLabel } = (0, use_year_1.useYear)({
|
|
42
41
|
year: currentYear,
|
|
@@ -75,6 +74,6 @@ exports.DatePickerYear = (0, react_1.memo)((props) => {
|
|
|
75
74
|
onClick: handleYearClick,
|
|
76
75
|
title: "Vybrat rok",
|
|
77
76
|
} }),
|
|
78
|
-
react_1.default.createElement("div", { className: "uxf-
|
|
77
|
+
react_1.default.createElement("div", { className: "uxf-calendar__year" }, months.map((month, index) => (react_1.default.createElement("button", { className: (0, cx_1.cx)("uxf-calendar__cell uxf-calendar__cell-month", !canGoToMonth(month.date) && classes_1.CLASSES.IS_DISABLED), key: month.monthLabel + index, onClick: handleMonthClick(month.date), type: "button" }, month.monthLabel))))));
|
|
79
78
|
});
|
|
80
79
|
exports.DatePickerYear.displayName = "UxfUiDatePickerYear";
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { FC } from "react";
|
|
2
|
+
import { OnDateChangeType } from "@uxf/datepicker/hooks/use-date-picker";
|
|
3
|
+
export interface DatePickerProps {
|
|
4
|
+
closePopoverHandler?: () => void;
|
|
5
|
+
onChange: (data: OnDateChangeType) => void;
|
|
6
|
+
selectedDate: Date | null;
|
|
7
|
+
}
|
|
8
|
+
export declare const DatePicker: FC<DatePickerProps>;
|
|
@@ -3,25 +3,23 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.
|
|
6
|
+
exports.DatePicker = void 0;
|
|
7
7
|
const react_1 = __importDefault(require("react"));
|
|
8
8
|
const date_picker_context_1 = require("@uxf/datepicker/contexts/date-picker-context");
|
|
9
9
|
const use_date_picker_1 = require("@uxf/datepicker/hooks/use-date-picker");
|
|
10
|
-
const
|
|
11
|
-
const
|
|
12
|
-
var _a;
|
|
10
|
+
const date_picker_content_1 = require("./date-picker-content");
|
|
11
|
+
const DatePicker = (props) => {
|
|
13
12
|
const datePickerProps = (0, use_date_picker_1.useDatePicker)({
|
|
14
13
|
firstDayOfWeek: 1,
|
|
15
14
|
onDateChange: (data) => {
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
props.closePopoverHandler();
|
|
15
|
+
var _a;
|
|
16
|
+
props.onChange(data);
|
|
17
|
+
(_a = props.closePopoverHandler) === null || _a === void 0 ? void 0 : _a.call(props);
|
|
20
18
|
},
|
|
21
|
-
selectedDate:
|
|
19
|
+
selectedDate: props.selectedDate,
|
|
22
20
|
});
|
|
23
21
|
return (react_1.default.createElement(date_picker_context_1.DatePickerContext.Provider, { value: datePickerProps },
|
|
24
|
-
react_1.default.createElement(
|
|
22
|
+
react_1.default.createElement(date_picker_content_1.DatePickerContent, null)));
|
|
25
23
|
};
|
|
26
|
-
exports.
|
|
27
|
-
exports.
|
|
24
|
+
exports.DatePicker = DatePicker;
|
|
25
|
+
exports.DatePicker.displayName = "UxfUiDatePicker";
|
package/{date-picker-provider/date-picker-provider.spec.js → date-picker/date-picker.spec.js}
RENAMED
|
@@ -5,5 +5,5 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
const react_1 = __importDefault(require("react"));
|
|
7
7
|
const snap_test_1 = require("../utils/snap-test");
|
|
8
|
-
const
|
|
9
|
-
(0, snap_test_1.snapTest)("render stories", react_1.default.createElement(
|
|
8
|
+
const date_picker_stories_1 = require("./date-picker.stories");
|
|
9
|
+
(0, snap_test_1.snapTest)("render stories", react_1.default.createElement(date_picker_stories_1.Default, null));
|
package/{date-picker-provider/date-picker-provider.stories.js → date-picker/date-picker.stories.js}
RENAMED
|
@@ -25,23 +25,17 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
25
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
26
|
exports.Default = void 0;
|
|
27
27
|
const react_1 = __importStar(require("react"));
|
|
28
|
-
// import Docs from "./date-picker.docs.mdx";
|
|
29
28
|
const action_1 = require("../utils/action");
|
|
30
|
-
const
|
|
29
|
+
const date_picker_1 = require("./date-picker");
|
|
31
30
|
exports.default = {
|
|
32
|
-
title: "UI/
|
|
33
|
-
component:
|
|
34
|
-
parameters: {
|
|
35
|
-
docs: {
|
|
36
|
-
// page: Docs,
|
|
37
|
-
},
|
|
38
|
-
},
|
|
31
|
+
title: "UI/DatePicker",
|
|
32
|
+
component: date_picker_1.DatePicker,
|
|
39
33
|
};
|
|
40
34
|
function Default() {
|
|
41
|
-
const [
|
|
42
|
-
const onChange = (0, action_1.action)("onChange",
|
|
35
|
+
const [value, setValue] = (0, react_1.useState)(null);
|
|
36
|
+
const onChange = (0, action_1.action)("onChange", setValue);
|
|
43
37
|
const testDatePickers = (react_1.default.createElement(react_1.default.Fragment, null,
|
|
44
|
-
react_1.default.createElement(
|
|
38
|
+
react_1.default.createElement(date_picker_1.DatePicker, { closePopoverHandler: close, onChange: onChange, selectedDate: value })));
|
|
45
39
|
return (react_1.default.createElement(react_1.default.Fragment, null,
|
|
46
40
|
react_1.default.createElement("div", { className: "light max-w-[640px] space-y-4 rounded bg-white p-8" }, testDatePickers),
|
|
47
41
|
react_1.default.createElement("div", { className: "dark max-w-[640px] space-y-4 rounded bg-gray-900 p-8 text-white" }, testDatePickers)));
|