@dynamic-framework/ui-react 1.2.0 → 1.2.2

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 (32) hide show
  1. package/dist/css/dynamic-ui-all.css +1 -1
  2. package/dist/css/dynamic-ui-react.css +1 -1
  3. package/dist/css/dynamic-ui.css +1 -1
  4. package/dist/index.esm.js +95 -32
  5. package/dist/index.esm.js.map +1 -1
  6. package/dist/index.js +99 -30
  7. package/dist/index.js.map +1 -1
  8. package/dist/types/components/MCard.d.ts +7 -0
  9. package/dist/types/components/MCardAccount.d.ts +13 -0
  10. package/dist/types/components/MCardBody.d.ts +6 -0
  11. package/dist/types/components/MCardFooter.d.ts +6 -0
  12. package/dist/types/components/MCardHeader.d.ts +6 -0
  13. package/dist/types/components/MDatePicker.d.ts +20 -0
  14. package/dist/types/components/MDatePickerHeader.d.ts +19 -0
  15. package/dist/types/components/MDatePickerInput.d.ts +9 -0
  16. package/dist/types/components/MDatePickerTime.d.ts +9 -0
  17. package/dist/types/components/MInputCurrency.d.ts +2 -2
  18. package/dist/types/components/MMonthPicker.d.ts +7 -0
  19. package/dist/types/components/index.d.ts +7 -1
  20. package/dist/types/stories/components/MCard.stories.d.ts +10 -0
  21. package/dist/types/stories/components/MCardAccount.stories.d.ts +6 -0
  22. package/dist/types/stories/components/MDatePicker.stories.d.ts +14 -0
  23. package/package.json +3 -3
  24. package/src/style/components/_+import.scss +4 -1
  25. package/src/style/components/_m-card-account.scss +15 -0
  26. package/src/style/components/_m-datepicker.scss +224 -0
  27. package/src/style/components/_m-monthpicker.scss +90 -0
  28. package/src/style/components/_m-timepicker.scss +37 -0
  29. package/dist/types/components/MCalendar.d.ts +0 -25
  30. package/dist/types/stories/components/MCalendar.stories.d.ts +0 -6
  31. package/src/style/abstracts/variables/_calendar.scss +0 -19
  32. package/src/style/components/_m-calendar.scss +0 -205
@@ -0,0 +1,6 @@
1
+ import { PropsWithChildren } from 'react';
2
+ declare type Props = PropsWithChildren<{
3
+ className?: string;
4
+ }>;
5
+ export default function MCardBody({ className, children, }: Props): import("react/jsx-runtime").JSX.Element;
6
+ export {};
@@ -0,0 +1,6 @@
1
+ import { PropsWithChildren } from 'react';
2
+ declare type Props = PropsWithChildren<{
3
+ className?: string;
4
+ }>;
5
+ export default function MCardFooter({ className, children, }: Props): import("react/jsx-runtime").JSX.Element;
6
+ export {};
@@ -0,0 +1,6 @@
1
+ import { PropsWithChildren } from 'react';
2
+ declare type Props = PropsWithChildren<{
3
+ className?: string;
4
+ }>;
5
+ export default function MCardHeader({ className, children, }: Props): import("react/jsx-runtime").JSX.Element;
6
+ export {};
@@ -0,0 +1,20 @@
1
+ import { ReactDatePickerProps } from 'react-datepicker';
2
+ import { ButtonVariant, ComponentSize } from '@dynamic-framework/ui';
3
+ declare type CalendarProps = Omit<ReactDatePickerProps, 'onChange' | 'selectsRange'> & {
4
+ date: string;
5
+ setDate: (value: Date | [Date | null, Date | null] | null) => void;
6
+ selectsRange?: boolean;
7
+ withMonthSelector?: boolean;
8
+ inputLabel?: string;
9
+ inputIcon?: string;
10
+ inputId?: string;
11
+ timeId?: string;
12
+ timeLabel?: string;
13
+ headerDecreaseMonthIcon?: string;
14
+ headerIncreaseMonthIcon?: string;
15
+ headerIconSize?: ComponentSize;
16
+ headerButtonVariant?: ButtonVariant;
17
+ headerButtonTheme?: string;
18
+ };
19
+ export default function MDatePicker({ setDate, date, selectsRange, withMonthSelector, inputLabel, inputIcon, inputId, timeId, timeLabel, headerDecreaseMonthIcon, headerIncreaseMonthIcon, headerIconSize, headerButtonVariant, headerButtonTheme, ...props }: CalendarProps): import("react/jsx-runtime").JSX.Element;
20
+ export {};
@@ -0,0 +1,19 @@
1
+ import { ComponentProps } from 'react';
2
+ import { ButtonVariant, ComponentSize } from '@dynamic-framework/ui';
3
+ import { MButton } from './proxies';
4
+ export declare type MDatePickerHeaderProps = {
5
+ monthDate: Date;
6
+ decreaseMonth: () => void;
7
+ increaseMonth: () => void;
8
+ changeMonth: (monthNumber: number) => void;
9
+ changeYear: (yearNumber: number) => void;
10
+ prevMonthButtonDisabled: boolean;
11
+ nextMonthButtonDisabled: boolean;
12
+ withMonthSelector: boolean;
13
+ decreaseMonthIcon: string;
14
+ increaseMonthIcon: string;
15
+ iconSize: ComponentSize;
16
+ buttonVariant: ButtonVariant;
17
+ buttonTheme: string;
18
+ } & Omit<ComponentProps<typeof MButton>, 'iconStart' | 'onMClick' | 'isDisabled'>;
19
+ export default function MDatePickerHeader({ monthDate, changeMonth, changeYear, decreaseMonth, increaseMonth, prevMonthButtonDisabled, nextMonthButtonDisabled, withMonthSelector, decreaseMonthIcon, increaseMonthIcon, iconSize, buttonVariant, buttonTheme, }: MDatePickerHeaderProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,9 @@
1
+ import { ComponentProps } from 'react';
2
+ import { MInput } from './proxies';
3
+ export declare type InnerDatePickerProps = {
4
+ value?: string;
5
+ onClick?: () => void;
6
+ };
7
+ declare type MDatePickerInputProps = InnerDatePickerProps & Omit<ComponentProps<typeof MInput>, 'type' | 'isReadOnly' | 'onMIconEndClick' | 'value'>;
8
+ declare const _default: import("react").ForwardRefExoticComponent<Omit<MDatePickerInputProps, "ref"> & import("react").RefAttributes<unknown>>;
9
+ export default _default;
@@ -0,0 +1,9 @@
1
+ import { ComponentProps, FormEventHandler } from 'react';
2
+ import { MInput } from './proxies';
3
+ export declare type InnerDatePickerTimeProps = {
4
+ value?: string | number;
5
+ onChange?: ((value: string) => void) & FormEventHandler<HTMLMInputElement>;
6
+ };
7
+ declare type MDatePickerTimeProps = InnerDatePickerTimeProps & Omit<ComponentProps<typeof MInput>, 'type' | 'isReadOnly' | 'onMChange' | 'value'>;
8
+ export default function MDatePickerTime({ value, onChange, mId, label, ...props }: MDatePickerTimeProps): import("react/jsx-runtime").JSX.Element;
9
+ export {};
@@ -2,8 +2,8 @@ import { ComponentProps } from 'react';
2
2
  import { MInputCurrencyBase } from './proxies';
3
3
  declare type Props = {
4
4
  onChange: (value: number) => void;
5
- onBlur: (value: number) => void;
6
- onFocus: (value: number) => void;
5
+ onBlur?: (value: number) => void;
6
+ onFocus?: (value: number) => void;
7
7
  } & Omit<ComponentProps<typeof MInputCurrencyBase>, 'currencyOptions' | 'onChange' | 'onMChange'>;
8
8
  export default function MInputCurrency({ onChange, onBlur, onFocus, ...otherProps }: Props): import("react/jsx-runtime").JSX.Element;
9
9
  export {};
@@ -0,0 +1,7 @@
1
+ import { ReactDatePickerProps } from 'react-datepicker';
2
+ declare type CalendarProps = Omit<ReactDatePickerProps, 'onChange' | 'selectsRange'> & {
3
+ date: string;
4
+ setDate: (value: Date | null) => void;
5
+ };
6
+ export default function MMonthPicker({ setDate, date, ...props }: CalendarProps): import("react/jsx-runtime").JSX.Element;
7
+ export {};
@@ -1,6 +1,6 @@
1
1
  export * from './proxies';
2
2
  export * from './banking';
3
- export { default as MCalendar } from './MCalendar';
3
+ export { default as MDatePicker } from './MDatePicker';
4
4
  export { default as MSkeleton } from './MSkeleton';
5
5
  export { default as MTabs, useTabContext } from './MTabs';
6
6
  export { default as MTabContent } from './MTabContent';
@@ -20,4 +20,10 @@ export { default as MListItem } from './MListItem';
20
20
  export { default as MListItemMovement } from './MListItemMovement';
21
21
  export { default as MStepper } from './MStepper';
22
22
  export { default as MFormikInputCurrency } from './MFormikInputCurrency';
23
+ export { default as MCardAccount } from './MCardAccount';
24
+ export { default as MCard } from './MCard';
25
+ export { default as MCardHeader } from './MCardHeader';
26
+ export { default as MCardBody } from './MCardBody';
27
+ export { default as MCardFooter } from './MCardFooter';
28
+ export { default as MPaginator } from './MPaginator';
23
29
  export type { TabOption } from './MTabs';
@@ -0,0 +1,10 @@
1
+ import { Meta, StoryObj } from '@storybook/react';
2
+ import { MCard } from '../../components';
3
+ declare const config: Meta<typeof MCard>;
4
+ export default config;
5
+ declare type Story = StoryObj<typeof MCard>;
6
+ export declare const Default: Story;
7
+ export declare const HeaderAndBody: Story;
8
+ export declare const OnlyBody: Story;
9
+ export declare const TopImage: Story;
10
+ export declare const Horizontal: Story;
@@ -0,0 +1,6 @@
1
+ import { Meta, StoryObj } from '@storybook/react';
2
+ import MCardAccount from '../../components/MCardAccount';
3
+ declare const config: Meta<typeof MCardAccount>;
4
+ export default config;
5
+ declare type Story = StoryObj<typeof MCardAccount>;
6
+ export declare const Default: Story;
@@ -0,0 +1,14 @@
1
+ import { Meta, StoryObj } from '@storybook/react';
2
+ import { MDatePicker } from '../../components';
3
+ declare const config: Meta<typeof MDatePicker>;
4
+ export default config;
5
+ declare type Story = StoryObj<typeof MDatePicker>;
6
+ export declare const Default: Story;
7
+ export declare const DefaultWithMonth: Story;
8
+ export declare const Inline: Story;
9
+ export declare const WithTime: Story;
10
+ export declare const WithMonthSelector: Story;
11
+ export declare const MonthPicker: Story;
12
+ export declare const DateRange: Story;
13
+ export declare const DateRangeWithMonthSelector: Story;
14
+ export declare const OnPortal: Story;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@dynamic-framework/ui-react",
3
3
  "sideEffects": false,
4
- "version": "1.2.0",
4
+ "version": "1.2.2",
5
5
  "description": "React Dynamic Framework",
6
6
  "license": "MIT",
7
7
  "repository": {
@@ -45,7 +45,7 @@
45
45
  "src/style"
46
46
  ],
47
47
  "dependencies": {
48
- "@dynamic-framework/ui": "^1.3.0",
48
+ "@dynamic-framework/ui": "^1.3.1",
49
49
  "@floating-ui/react": "^0.24.1",
50
50
  "@splidejs/react-splide": "^0.7.12",
51
51
  "@splidejs/splide": "^4.1.4",
@@ -133,5 +133,5 @@
133
133
  "@dynamic-framework/ui"
134
134
  ]
135
135
  },
136
- "gitHead": "125b91980cab3c9ac80e23fcc9f44c9e93f71d01"
136
+ "gitHead": "a9d912522b9ccac7d92aac718a8df483d0670125"
137
137
  }
@@ -1,9 +1,12 @@
1
1
  @import "m-collapse";
2
2
  @import "m-collapse-icon-text";
3
- @import "m-calendar";
3
+ @import "m-datepicker";
4
+ @import "m-timepicker";
5
+ @import "m-monthpicker";
4
6
  @import "m-tabs";
5
7
  @import "m-popover";
6
8
  @import "m-box-file";
7
9
  @import "m-carousel";
8
10
  @import "m-stepper";
9
11
  @import "m-paginator";
12
+ @import "m-card-account";
@@ -0,0 +1,15 @@
1
+ .m-card-account {
2
+ // Card
3
+ --#{$prefix}card-border-width: 0px;
4
+ --#{$prefix}card-spacer-y: #{$spacer};
5
+ --#{$prefix}card-spacer-x: #{$spacer};
6
+ --#{$prefix}card-color: var(--#{$prefix}body-color);
7
+ // Card body
8
+ --#{$prefix}card-body-gap: #{$spacer};
9
+
10
+ .card-body {
11
+ display: flex;
12
+ flex-direction: column;
13
+ gap: var(--#{$prefix}card-body-gap);
14
+ }
15
+ }
@@ -0,0 +1,224 @@
1
+ @import "react-datepicker/src/stylesheets/datepicker";
2
+
3
+ // stylelint-disable selector-class-pattern
4
+
5
+ .react-datepicker {
6
+ --#{$prefix}m-datepicker-font-family: var(--#{$prefix}font-sans-serif);
7
+ --#{$prefix}m-datepicker-border: 0px;
8
+ --#{$prefix}m-datepicker-box-shadow: var(--#{$prefix}box-shadow);
9
+ --#{$prefix}m-datepicker-font-size: var(--#{$prefix}ref-spacer-3);
10
+
11
+ // Header variables
12
+ --#{$prefix}m-datepicker-header-gap: var(--#{$prefix}ref-spacer-3);
13
+ --#{$prefix}m-datepicker-header-padding: var(--#{$prefix}ref-spacer-3) var(--#{$prefix}ref-spacer-4);
14
+ --#{$prefix}m-datepicker-header-background-color: var(--#{$prefix}indigo-soft);
15
+ --#{$prefix}m-datepicker-header-border: 0;
16
+ --#{$prefix}m-datepicker-header-font-size: var(--#{$prefix}ref-fs-6);
17
+
18
+ --#{$prefix}m-datepicker-day-names-margin: 0;
19
+ --#{$prefix}m-datepicker-day-names-font-size: var(--#{$prefix}ref-spacer-3);
20
+
21
+ --#{$prefix}m-datepicker-day-name-weight: var(--#{$prefix}ref-fw-bold);
22
+ --#{$prefix}m-datepicker-day-name-margin: 0;
23
+ --#{$prefix}m-datepicker-day-name-size: 20px;
24
+ --#{$prefix}m-datepicker-day-name-color: var(--#{$prefix}gray-500);
25
+
26
+ // Calendar variables
27
+ --#{$prefix}m-datepicker-month-gap: var(--#{$prefix}ref-fs-subparagraph);
28
+ --#{$prefix}m-datepicker-month-padding: var(--#{$prefix}ref-spacer-3) var(--#{$prefix}ref-spacer-4) var(--#{$prefix}ref-spacer-4);
29
+ --#{$prefix}m-datepicker-month-margin: 0;
30
+
31
+ --#{$prefix}m-datepicker-week-gap: 1.875rem;
32
+
33
+ // Day variables
34
+ --#{$prefix}m-datepicker-day-margin: 0;
35
+ --#{$prefix}m-datepicker-day-font-size: var(--#{$prefix}ref-fs-subparagraph);
36
+ --#{$prefix}m-datepicker-day-size: 20px;
37
+ --#{$prefix}m-datepicker-day-radius: 100%;
38
+
39
+ --#{$prefix}m-datepicker-day-bg-hover: var(--#{$prefix}body);
40
+ --#{$prefix}m-datepicker-day-color-hover: var(--#{$prefix}info-100);
41
+
42
+ --#{$prefix}m-datepicker-day-selected-color: var(--#{$prefix}white);
43
+ --#{$prefix}m-datepicker-day-selected-bg: var(--#{$prefix}secondary-500);
44
+
45
+ --#{$prefix}m-datepicker-day-in-range-color: var(--#{$prefix}dark);
46
+ --#{$prefix}m-datepicker-day-in-range-bg: var(--#{$prefix}secondary-100);
47
+
48
+ --#{$prefix}m-datepicker-day-outside-month-color: var(--#{$prefix}gray-400);
49
+
50
+ --#{$prefix}m-datepicker-day-today-font-weight: var(--#{$prefix}ref-fw-normal);
51
+ --#{$prefix}m-datepicker-day-today-box-shadow: 0 0 0 2px inset var(--#{$prefix}secondary);
52
+
53
+ // Time variables
54
+ --#{$prefix}m-datepicker-time-container-margin: 0;
55
+ --#{$prefix}m-datepicker-time-container-align: center;
56
+ --#{$prefix}m-datepicker-time-input-width: 50%;
57
+ --#{$prefix}m-datepicker-time-input-margin: 0;
58
+ --#{$prefix}m-datepicker-time-input-align: center;
59
+
60
+ --#{$prefix}m-datepicker-time-input-padding: var(--#{$prefix}ref-spacer-3);
61
+ --#{$prefix}m-datepicker-time-input-gap: var(--#{$prefix}ref-spacer-2);
62
+ --#{$prefix}m-datepicker-time-input-label-weight: var(--#{$prefix}ref-fw-bold);
63
+ --#{$prefix}m-datepicker-time-input-label-color: var(--#{$prefix}gray-700);
64
+ --#{$prefix}m-datepicker-time-input-label-size: var(--#{$prefix}ref-fs-small);
65
+
66
+ font-family: var(--#{$prefix}m-datepicker-font-family);
67
+ font-size: var(--#{$prefix}m-datepicker-font-size);
68
+ border: var(--#{$prefix}m-datepicker-border);
69
+ box-shadow: var(--#{$prefix}m-datepicker-box-shadow);
70
+
71
+ .react-datepicker__header {
72
+ display: flex;
73
+ flex-direction: column;
74
+ gap: var(--#{$prefix}m-datepicker-header-gap);
75
+ padding: var(--#{$prefix}m-datepicker-header-padding);
76
+ font-size: var(--#{$prefix}m-datepicker-header-font-size);
77
+ background-color: var(--#{$prefix}m-datepicker-header-background-color);
78
+ border: var(--#{$prefix}m-datepicker-header-border);
79
+
80
+ .react-datepicker__day-names {
81
+ display: flex;
82
+ justify-content: space-between;
83
+ margin: var(--#{$prefix}m-datepicker-day-names-margin);
84
+ font-size: var(--#{$prefix}m-datepicker-day-names-font-size);
85
+ }
86
+ .react-datepicker__day-name {
87
+ width: var(--#{$prefix}m-datepicker-day-name-size);
88
+ height: var(--#{$prefix}m-datepicker-day-name-size);
89
+ margin: var(--#{$prefix}m-datepicker-day-name-margin);
90
+ font-weight: var(--#{$prefix}m-datepicker-day-name-weight);
91
+ line-height: var(--#{$prefix}m-datepicker-day-name-size);
92
+ color: var(--#{$prefix}m-datepicker-day-name-color);
93
+ }
94
+ }
95
+
96
+ .react-datepicker__month {
97
+ display: flex;
98
+ flex-direction: column;
99
+ gap: var(--#{$prefix}m-datepicker-month-gap);
100
+ padding: var(--#{$prefix}m-datepicker-month-padding);
101
+ margin: var(--#{$prefix}m-datepicker-month-margin);
102
+
103
+ .react-datepicker__week {
104
+ display: flex;
105
+ gap: var(--#{$prefix}m-datepicker-week-gap);
106
+ }
107
+
108
+ .react-datepicker__day {
109
+ width: var(--#{$prefix}m-datepicker-day-size);
110
+ height: var(--#{$prefix}m-datepicker-day-size);
111
+ margin: var(--#{$prefix}m-datepicker-day-margin);
112
+ font-size: var(--#{$prefix}m-datepicker-day-font-size);
113
+ line-height: var(--#{$prefix}m-datepicker-day-size);
114
+ }
115
+ }
116
+
117
+ // Hover state
118
+ .react-datepicker__day,
119
+ .react-datepicker__month-text,
120
+ .react-datepicker__quarter-text,
121
+ .react-datepicker__year-text {
122
+ &:not(
123
+ .react-datepicker__day--selected,
124
+ .react-datepicker__month-text--selected,
125
+ .react-datepicker__quarter-text--selected,
126
+ .react-datepicker__year-text--selected):hover {
127
+ color: var(--#{$prefix}m-datepicker-day-bg-hover);
128
+ background-color: var(--#{$prefix}m-datepicker-day-color-hover);
129
+ border-radius: var(--#{$prefix}m-datepicker-day-radius);
130
+ }
131
+ }
132
+
133
+ // Selected single item
134
+ .react-datepicker__day--selected,
135
+ .react-datepicker__month--selected,
136
+ .react-datepicker__quarter--selected,
137
+ .react-datepicker__year--selected {
138
+ color: var(--#{$prefix}m-datepicker-day-selected-color);
139
+ background-color: var(--#{$prefix}m-datepicker-day-selected-bg);
140
+ border-radius: var(--#{$prefix}m-datepicker-day-radius);
141
+ }
142
+
143
+ .react-datepicker__day--selected {
144
+ &.react-datepicker__day--in-range.react-datepicker__day--range-start,
145
+ &.react-datepicker__day--in-selecting-range.react-datepicker__day--selecting-range-start {
146
+ color: var(--#{$prefix}m-datepicker-day-selected-color);
147
+ background-color: var(--#{$prefix}m-datepicker-day-selected-bg);
148
+ }
149
+ }
150
+ .react-datepicker__day {
151
+ &.react-datepicker__day--in-range.react-datepicker__day--range-end,
152
+ &.react-datepicker__day--in-selecting-range.react-datepicker__day--selecting-range-end {
153
+ color: var(--#{$prefix}m-datepicker-day-selected-color);
154
+ background-color: var(--#{$prefix}m-datepicker-day-selected-bg);
155
+ }
156
+ }
157
+
158
+ .react-datepicker__day--in-range,
159
+ .react-datepicker__month-text--in-range,
160
+ .react-datepicker__quarter-text--in-range,
161
+ .react-datepicker__year-text--in-range,
162
+ .react-datepicker__day--in-selecting-range,
163
+ .react-datepicker__month-text--in-selecting-range,
164
+ .react-datepicker__quarter-text--in-selecting-range,
165
+ .react-datepicker__year-text--in-selecting-range,
166
+ .react-datepicker__day--keyboard-selected,
167
+ .react-datepicker__month-text--keyboard-selected,
168
+ .react-datepicker__quarter-text--keyboard-selected,
169
+ .react-datepicker__year-text--keyboard-selected {
170
+ color: var(--#{$prefix}m-datepicker-day-in-range-color);
171
+ background-color: var(--#{$prefix}m-datepicker-day-in-range-bg);
172
+ border-radius: var(--#{$prefix}m-datepicker-day-radius);
173
+ }
174
+
175
+ .react-datepicker__day--outside-month {
176
+ color: var(--#{$prefix}m-datepicker-day-outside-month-color);
177
+ }
178
+
179
+ /* Start time selector */
180
+ .react-datepicker__input-time-container {
181
+ width: 100%;
182
+ margin: var(--#{$prefix}m-datepicker-time-container-margin);
183
+ text-align: var(--#{$prefix}m-datepicker-time-container-align);
184
+ border-top: var(--#{$prefix}border-width) solid var(--#{$prefix}light);
185
+
186
+ .react-datepicker-time__caption {
187
+ display: none;
188
+ }
189
+
190
+ .react-datepicker-time__input-container {
191
+ width: 100%;
192
+
193
+ .react-datepicker-time__input {
194
+ width: var(--#{$prefix}m-datepicker-time-input-width);
195
+ margin: var(--#{$prefix}m-datepicker-time-input-margin);
196
+ text-align: var(--#{$prefix}m-datepicker-time-input-align);
197
+ outline: 0;
198
+ }
199
+ }
200
+ }
201
+
202
+ /* End time selector */
203
+
204
+ .react-datepicker__day--today {
205
+ font-weight: var(--#{$prefix}m-datepicker-day-today-font-weight);
206
+ border-radius: var(--#{$prefix}m-datepicker-day-radius);
207
+ box-shadow: var(--#{$prefix}m-datepicker-day-today-box-shadow);
208
+ }
209
+
210
+ .m-datepicker-time {
211
+ gap: var(--#{$prefix}m-datepicker-time-input-gap);
212
+ padding: var(--#{$prefix}m-datepicker-time-input-padding);
213
+ .m-datepicker-time-label {
214
+ font-size: var(--#{$prefix}m-datepicker-time-input-label-size);
215
+ font-weight: var(--#{$prefix}m-datepicker-time-input-label-weight);
216
+ color: var(--#{$prefix}m-datepicker-time-input-label-color);
217
+ }
218
+ }
219
+ .m-datepicker-header {
220
+ font-size: var(--#{$prefix}ref-fs-6);
221
+ }
222
+ }
223
+
224
+ // stylelint-enable selector-class-pattern
@@ -0,0 +1,90 @@
1
+ // stylelint-disable selector-class-pattern
2
+
3
+ .react-datepicker.m-month-picker {
4
+ // Month variables
5
+ --#{$prefix}m-monthpicker-header-padding: var(--#{$prefix}ref-spacer-3) var(--#{$prefix}ref-spacer-2) 0;
6
+ --#{$prefix}m-monthpicker-font-weight: var(--#{$prefix}ref-fw-normal);
7
+ --#{$prefix}m-monthpicker-header-color: var(--#{$prefix}white);
8
+ --#{$prefix}m-monthpicker-header-bg: var(--#{$prefix}dark);
9
+
10
+ --#{$prefix}m-monthpicker-month-gap: 0;
11
+ --#{$prefix}m-monthpicker-month-padding: var(--#{$prefix}ref-spacer-2) var(--#{$prefix}ref-spacer-4) var(--#{$prefix}ref-spacer-3);
12
+ --#{$prefix}m-monthpicker-month-color: var(--#{$prefix}white);
13
+ --#{$prefix}m-monthpicker-month-bg: var(--#{$prefix}dark);
14
+
15
+ --#{$prefix}m-monthpicker-month-today-color: var(--#{$prefix}white);
16
+ --#{$prefix}m-monthpicker-month-selected-bg: var(--#{$prefix}gray-500);
17
+ --#{$prefix}m-monthpicker-month-selected-box-shadow: 0 0 0 1px inset var(--#{$prefix}gray-100);
18
+
19
+ --#{$prefix}m-monthpicker-month-hover-bg: var(--#{$prefix}gray-700);
20
+
21
+ --#{$prefix}m-monthpicker-month-wrapper-gap: var(--#{$prefix}ref-spacer-2);
22
+ --#{$prefix}m-monthpicker-month-wrapper-font-size: var(--#{$prefix}-ref-fs-small);
23
+
24
+ --#{$prefix}m-monthpicker-single-month-width: 46px;
25
+ --#{$prefix}m-monthpicker-single-month-padding: var(--#{$prefix}ref-spacer-2);
26
+ --#{$prefix}m-monthpicker-single-month-margin: 0;
27
+ --#{$prefix}m-monthpicker-single-month-text-transform: capitalize;
28
+ --#{$prefix}m-monthpicker-single-month-radius: var(--#{$prefix}ref-spacer-4);
29
+
30
+ --#{$prefix}m-monthpicker-single-month-after-display: ".";
31
+ --#{$prefix}m-monthpicker-single-month-after-content: ".";
32
+
33
+ --#{$prefix}m-datepicker-triangle-color: var(--#{$prefix}dark);
34
+
35
+ font-family: var(--#{$prefix}m-datepicker-font-family);
36
+ border: var(--#{$prefix}m-datepicker-border);
37
+ box-shadow: var(--#{$prefix}m-datepicker-box-shadow);
38
+
39
+ .react-datepicker__header {
40
+ padding: var(--#{$prefix}m-monthpicker-header-padding);
41
+ font-weight: var(--#{$prefix}m-monthpicker-font-weight);
42
+ color: var(--#{$prefix}m-monthpicker-header-color);
43
+ background-color: var(--#{$prefix}m-monthpicker-header-bg);
44
+ }
45
+
46
+ .react-datepicker__month.react-datepicker__monthPicker,
47
+ .react-datepicker__header.react-datepicker-year-header {
48
+ gap: var(--#{$prefix}m-monthpicker-month-gap);
49
+ padding: var(--#{$prefix}m-monthpicker-month-padding);
50
+ color: var(--#{$prefix}m-monthpicker-month-color);
51
+ background-color: var(--#{$prefix}m-monthpicker-month-bg);
52
+
53
+ }
54
+ .react-datepicker__month--selected,
55
+ .react-datepicker__month-text--in-range,
56
+ .react-datepicker__month-text--in-selecting-range,
57
+ .react-datepicker__month-text--keyboard-selected {
58
+ color: var(--#{$prefix}m-monthpicker-month-today-color);
59
+ background-color: var(--#{$prefix}m-monthpicker-month-selected-bg);
60
+ box-shadow: var(--#{$prefix}m-monthpicker-month-selected-box-shadow);
61
+ }
62
+ .react-datepicker__month-text:hover {
63
+ background-color: var(--#{$prefix}m-monthpicker-month-hover-bg);
64
+ }
65
+ .react-datepicker__month-wrapper {
66
+ display: flex;
67
+ gap: var(--#{$prefix}m-monthpicker-month-wrapper-gap);
68
+ font-size: var(--#{$prefix}m-monthpicker-month-wrapper-font-size);
69
+ .react-datepicker__month-text {
70
+ width: var(--#{$prefix}m-monthpicker-single-month-width);
71
+ padding: var(--#{$prefix}m-monthpicker-single-month-padding);
72
+ margin: var(--#{$prefix}m-monthpicker-single-month-margin);
73
+ text-transform: var(--#{$prefix}m-monthpicker-single-month-text-transform);
74
+ border-radius: var(--#{$prefix}m-monthpicker-single-month-radius);
75
+ &::after {
76
+ display: var(--#{$prefix}m-monthpicker-single-month-after-display);
77
+ content: var(--#{$prefix}m-monthpicker-single-month-after-content);
78
+ }
79
+ }
80
+ }
81
+ .react-datepicker__triangle {
82
+ &::after,
83
+ &::before {
84
+ top: 0;
85
+ border-bottom-color: var(--#{$prefix}m-datepicker-triangle-color);
86
+ }
87
+ }
88
+ }
89
+
90
+ // stylelint-enable selector-class-pattern
@@ -0,0 +1,37 @@
1
+ .m-datepicker-time {
2
+ --#{$prefix}m-datepicker-time-m-input: 100%;
3
+ --#{$prefix}m-datepicker-webkit-time-color: var(--#{$prefix}black);
4
+ --#{$prefix}m-datepicker-webkit-time-align: left;
5
+ --#{$prefix}m-datepicker-webkit-edit-text-padding: 2px;
6
+
7
+ --#{$prefix}m-datepicker-webkit-edit-ampm-padding: 0 4px;
8
+ --#{$prefix}m-datepicker-webkit-edit-ampm-color: var(--#{$prefix}secondary-900);
9
+ --#{$prefix}m-datepicker-webkit-edit-ampm-bg: var(--#{$prefix}secondary-100);
10
+ --#{$prefix}m-datepicker-webkit-edit-ampm-radius: 4px;
11
+
12
+ --#{$prefix}m-datepicker-calendar-picker-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' class='bi bi-clock' viewBox='0 0 16 16'%3E%3Cpath d='M8 3.5a.5.5 0 0 0-1 0V9a.5.5 0 0 0 .252.434l3.5 2a.5.5 0 0 0 .496-.868L8 8.71V3.5z'/%3E%3Cpath d='M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16zm7-8A7 7 0 1 1 1 8a7 7 0 0 1 14 0z'/%3E%3C/svg%3E");
13
+
14
+ .m-input {
15
+ width: var(--#{$prefix}m-datepicker-time-m-input);
16
+ }
17
+ // stylelint-disable selector-no-qualifying-type
18
+ input[type="time"] {
19
+ &::-webkit-datetime-edit {
20
+ color: var(--#{$prefix}m-datepicker-webkit-time-color);
21
+ text-align: var(--#{$prefix}m-datepicker-webkit-time-align);
22
+ }
23
+ &::-webkit-datetime-edit-text {
24
+ padding-inline: var(--#{$prefix}m-datepicker-webkit-edit-text-padding);
25
+ }
26
+ &::-webkit-datetime-edit-ampm-field {
27
+ padding: var(--#{$prefix}m-datepicker-webkit-edit-ampm-padding);
28
+ color: var(--#{$prefix}m-datepicker-webkit-edit-ampm-color);
29
+ background-color: var(--#{$prefix}m-datepicker-webkit-edit-ampm-bg);
30
+ border-radius: var(--#{$prefix}m-datepicker-webkit-edit-ampm-radius);
31
+ }
32
+ &::-webkit-calendar-picker-indicator {
33
+ background-image: var(--#{$prefix}m-datepicker-calendar-picker-icon);
34
+ }
35
+ }
36
+
37
+ }
@@ -1,25 +0,0 @@
1
- import { ReactDatePickerProps } from 'react-datepicker';
2
- import type { FC } from 'react';
3
- export declare interface CalendarProps {
4
- date: string;
5
- setDate: (date: string | [string | null, string | null] | null) => void;
6
- calendarContainer?: FC;
7
- inline?: boolean;
8
- withPortal?: boolean;
9
- minDate?: string;
10
- showTimeInput?: boolean;
11
- calendarStartDay?: number;
12
- timeInputLabel?: string;
13
- className?: string;
14
- calendarClassName?: ReactDatePickerProps['calendarClassName'];
15
- dateFormat?: string | string[];
16
- selectsRange?: boolean;
17
- selectsStart?: boolean;
18
- selectsEnd?: boolean;
19
- startDate?: Date | null;
20
- endDate?: Date | null;
21
- autoFocus?: boolean;
22
- fixedHeight?: boolean;
23
- monthsShown?: number;
24
- }
25
- export default function MCalendar({ setDate, date, calendarContainer, inline, withPortal, minDate, showTimeInput, calendarStartDay, timeInputLabel, dateFormat, className, calendarClassName, selectsRange, selectsStart, selectsEnd, startDate, endDate, autoFocus, monthsShown, fixedHeight, }: CalendarProps): import("react/jsx-runtime").JSX.Element;
@@ -1,6 +0,0 @@
1
- import { Meta, StoryObj } from '@storybook/react';
2
- import { MCalendar } from '../../components';
3
- declare const config: Meta<typeof MCalendar>;
4
- export default config;
5
- declare type Story = StoryObj<typeof MCalendar>;
6
- export declare const Default: Story;
@@ -1,19 +0,0 @@
1
- // stylelint-disable scss/dollar-variable-pattern
2
- $datepicker__background-color: transparent !default;
3
- $datepicker__border-color: transparent !default;
4
- $datepicker__highlighted-color: var(--#{$prefix}secondary) !default;
5
- $datepicker__muted-color: #ccc !default;
6
- $datepicker__selected-color: var(--#{$prefix}secondary) !default;
7
- $datepicker__text-color: var(--#{$prefix}body-color) !default;
8
- $datepicker__header-color: var(--#{$prefix}body-color) !default;
9
- $datepicker__navigation-disabled-color: var(--#{$prefix}light) !default;
10
-
11
- $datepicker__border-radius: .3rem !default;
12
- $datepicker__day-margin: .166rem !default;
13
- $datepicker__font-size: .8rem !default;
14
- $datepicker__font-family: "Helvetica Neue", helvetica, arial, sans-serif !default;
15
- $datepicker__item-size: 1.7rem !default;
16
- $datepicker__margin: .4rem !default;
17
- $datepicker__navigation-button-size: 32px !default;
18
- $datepicker__triangle-size: 8px !default;
19
- // stylelint-enable scss/dollar-variable-pattern