@broxus/react-uikit 0.16.0 → 0.16.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (29) hide show
  1. package/dist/cjs/components/Button/Button.js +4 -4
  2. package/dist/cjs/components/ConfigProvider/index.d.ts +7 -7
  3. package/dist/cjs/components/Control/Input/Password/index.js +2 -2
  4. package/dist/cjs/components/Control/Input/useInput.js +7 -8
  5. package/dist/cjs/components/Control/index.scss +1 -1
  6. package/dist/cjs/components/DatePicker/generatePurePicker.d.ts +24 -0
  7. package/dist/cjs/components/DatePicker/generatePurePicker.js +78 -0
  8. package/dist/cjs/components/DatePicker/generateSinglePicker.js +3 -3
  9. package/dist/cjs/components/DatePicker/index.d.ts +3 -0
  10. package/dist/cjs/components/DatePicker/index.js +3 -0
  11. package/dist/cjs/components/DatePicker/index.scss +5 -5
  12. package/dist/cjs/components/DatePicker/types.d.ts +14 -3
  13. package/dist/cjs/styles/variables.scss +8 -8
  14. package/dist/cjs/tsconfig.cjs.tsbuildinfo +1 -1
  15. package/dist/esm/components/Button/Button.js +4 -4
  16. package/dist/esm/components/ConfigProvider/index.d.ts +7 -7
  17. package/dist/esm/components/Control/Input/Password/index.js +2 -2
  18. package/dist/esm/components/Control/Input/useInput.js +7 -8
  19. package/dist/esm/components/Control/index.scss +1 -1
  20. package/dist/esm/components/DatePicker/generatePurePicker.d.ts +24 -0
  21. package/dist/esm/components/DatePicker/generatePurePicker.js +38 -0
  22. package/dist/esm/components/DatePicker/generateSinglePicker.js +3 -3
  23. package/dist/esm/components/DatePicker/index.d.ts +3 -0
  24. package/dist/esm/components/DatePicker/index.js +3 -0
  25. package/dist/esm/components/DatePicker/index.scss +5 -5
  26. package/dist/esm/components/DatePicker/types.d.ts +14 -3
  27. package/dist/esm/styles/variables.scss +8 -8
  28. package/dist/esm/tsconfig.esm.tsbuildinfo +1 -1
  29. package/package.json +2 -2
@@ -45,7 +45,7 @@ const Link_1 = require("../../components/Link");
45
45
  const defaultElement = 'button';
46
46
  exports.Button = React.forwardRef((props, ref) => {
47
47
  const config = (0, ConfigProvider_1.useConfig)();
48
- const { component = defaultElement, children, ghost, htmlType = 'button', prefixCls = config.button?.prefixCls || config.prefixCls, shape = config.button?.shape || config.buttonShape, size = config.button?.size || config.buttonSize, type, ...restProps } = props;
48
+ const { component = defaultElement, ghost, htmlType = 'button', prefixCls = config.button?.prefixCls ?? config.prefixCls, shape = config.button?.shape ?? config.buttonShape, size = config.button?.size ?? config.buttonSize, type, ...restProps } = props;
49
49
  const buttonRef = React.useRef(null);
50
50
  const onClick = React.useCallback(event => {
51
51
  if (restProps.disabled) {
@@ -54,7 +54,7 @@ exports.Button = React.forwardRef((props, ref) => {
54
54
  }
55
55
  restProps.onClick?.(event);
56
56
  }, [restProps]);
57
- const rootCls = React.useMemo(() => config.getRootPrefixCls(prefixCls || config.button?.prefixCls || config.prefixCls, 'button'), [config, prefixCls]);
57
+ const rootCls = React.useMemo(() => config.getRootPrefixCls(prefixCls, 'button'), [config, prefixCls]);
58
58
  const className = React.useMemo(() => (0, classnames_1.default)(rootCls, {
59
59
  [`${rootCls}-${type}`]: type !== undefined,
60
60
  [`${rootCls}-ghost`]: ghost === true,
@@ -62,9 +62,9 @@ exports.Button = React.forwardRef((props, ref) => {
62
62
  [`${rootCls}-${shape}`]: shape !== undefined && ['circle', 'round'].includes(shape),
63
63
  }, restProps.className), [rootCls, type, ghost, size, shape, restProps.className]);
64
64
  if (restProps.href !== undefined) {
65
- return (React.createElement(Component_1.Component, { ref: ref || buttonRef, component: Link_1.Link, href: restProps.href, ...restProps, className: className, onClick: onClick }, children));
65
+ return (React.createElement(Component_1.Component, { ref: ref || buttonRef, component: Link_1.Link, href: restProps.href, ...restProps, className: className, onClick: onClick }));
66
66
  }
67
- return (React.createElement(Component_1.Component, { ref: ref || buttonRef, component: component, type: htmlType, ...restProps, className: className, onClick: onClick }, children));
67
+ return (React.createElement(Component_1.Component, { ref: ref || buttonRef, component: component, type: htmlType, ...restProps, className: className, onClick: onClick }));
68
68
  });
69
69
  if (process.env.NODE_ENV !== 'production') {
70
70
  exports.Button.displayName = 'Button';
@@ -21,16 +21,16 @@ export type ConfigContextConsumedProps = {
21
21
  tertiaryColorMode?: ColorMode;
22
22
  };
23
23
  checkbox?: {
24
- direction?: Direction | string;
24
+ direction?: Direction;
25
25
  prefixCls?: string;
26
26
  };
27
27
  control?: {
28
- direction?: Direction | string;
28
+ direction?: Direction;
29
29
  prefixCls?: string;
30
30
  clearIcon?: React.ReactNode | ((props: PropsWithMouseHandler) => React.ReactElement);
31
31
  };
32
32
  datePicker?: {
33
- direction?: Direction | string;
33
+ direction?: Direction;
34
34
  prefixCls?: string;
35
35
  clearIcon?: React.ReactNode | (() => React.ReactElement);
36
36
  nextIcon?: React.ReactNode;
@@ -39,7 +39,7 @@ export type ConfigContextConsumedProps = {
39
39
  superPrevIcon?: React.ReactNode;
40
40
  superNextIcon?: React.ReactNode;
41
41
  };
42
- direction?: Direction | string;
42
+ direction?: Direction;
43
43
  getPopupContainer?: (triggerNode?: HTMLElement) => HTMLElement;
44
44
  getRootPrefixCls: (prefix?: string, component?: string) => string;
45
45
  getTooltipConfig: (props: string | TooltipOptions | undefined) => {
@@ -48,7 +48,7 @@ export type ConfigContextConsumedProps = {
48
48
  inverseGlobalColorMode?: ColorMode;
49
49
  prefixCls: string;
50
50
  radio?: {
51
- direction?: Direction | string;
51
+ direction?: Direction;
52
52
  prefixCls?: string;
53
53
  };
54
54
  section?: {
@@ -58,7 +58,7 @@ export type ConfigContextConsumedProps = {
58
58
  tertiaryColorMode?: ColorMode;
59
59
  };
60
60
  select?: {
61
- direction?: Direction | string;
61
+ direction?: Direction;
62
62
  prefixCls?: string;
63
63
  addIcon?: React.ReactNode | ((props: PropsWithMouseHandler) => React.ReactElement);
64
64
  arrowIcon?: React.ReactNode | ((props: {
@@ -70,7 +70,7 @@ export type ConfigContextConsumedProps = {
70
70
  searchIcon?: React.ReactNode | (() => React.ReactElement);
71
71
  };
72
72
  timePicker?: {
73
- direction?: Direction | string;
73
+ direction?: Direction;
74
74
  prefixCls?: string;
75
75
  clearIcon?: React.ReactNode | (() => React.ReactElement);
76
76
  suffixIcon?: React.ReactNode;
@@ -43,11 +43,11 @@ require("./index.scss");
43
43
  require("../../index.scss");
44
44
  exports.Password = React.forwardRef((props, ref) => {
45
45
  const config = (0, ConfigProvider_1.useConfig)();
46
- const { prefixCls = config.control?.prefixCls || config.prefixCls, onBlur: onBlurCallback, onChange: onChangeCallback, ...restProps } = props;
46
+ const { prefixCls = config.control?.prefixCls ?? config.prefixCls, onBlur: onBlurCallback, onChange: onChangeCallback, ...restProps } = props;
47
47
  const inputRef = React.useRef(null);
48
48
  const removePasswordTimeout = React.useRef(null);
49
49
  const [visible, setVisible] = React.useState(false);
50
- const controlCls = React.useMemo(() => config.getRootPrefixCls(prefixCls || config.control?.prefixCls || config.prefixCls, 'control'), [config, prefixCls]);
50
+ const controlCls = React.useMemo(() => config.getRootPrefixCls(prefixCls, 'control'), [config, prefixCls]);
51
51
  const removePasswordValueAttribute = React.useCallback(() => {
52
52
  removePasswordTimeout.current = setTimeout(() => {
53
53
  const input = inputRef?.current?.getInputRef()?.current;
@@ -50,7 +50,7 @@ function fixControlledValue(value) {
50
50
  function useInput(props) {
51
51
  const config = (0, ConfigProvider_1.useConfig)();
52
52
  const inputRef = React.useRef(null);
53
- const { className, direction = config.control?.direction || config.direction, prefixCls = config.control?.prefixCls || config.prefixCls, size, state, useInternalValueState = true, onChange: onChangeCallback, onClear: onClearCallback, onPressEnter, ...restProps } = props;
53
+ const { className, direction = config.control?.direction || config.direction, prefixCls = config.control?.prefixCls ?? config.prefixCls, size, state, useInternalValueState = true, onChange: onChangeCallback, onClear: onClearCallback, onPressEnter, ...restProps } = props;
54
54
  const [focused, setFocused] = React.useState(false);
55
55
  const [internalValue, setInternalValue] = React.useState(useInternalValueState ? restProps.value || restProps.defaultValue : undefined);
56
56
  const onChange = React.useCallback((event) => {
@@ -87,6 +87,7 @@ function useInput(props) {
87
87
  }, [onPressEnter, restProps]);
88
88
  const inputProps = React.useMemo(() => ({
89
89
  ...restProps,
90
+ prefixCls,
90
91
  value: fixControlledValue(internalValue || restProps.value),
91
92
  // eslint-disable-next-line sort-keys
92
93
  onBlur,
@@ -94,16 +95,16 @@ function useInput(props) {
94
95
  onClear,
95
96
  onFocus,
96
97
  onKeyDown,
97
- }), [restProps, internalValue, onBlur, onChange, onClear, onFocus, onKeyDown]);
98
- const controlCls = React.useMemo(() => config.getRootPrefixCls(prefixCls || config.control?.prefixCls || config.prefixCls, 'control'), [config, prefixCls]);
98
+ }), [restProps, prefixCls, internalValue, onBlur, onChange, onClear, onFocus, onKeyDown]);
99
+ const controlCls = React.useMemo(() => config.getRootPrefixCls(prefixCls, 'control'), [config, prefixCls]);
99
100
  const wrapperClasses = React.useMemo(() => (0, classnames_1.default)(controlCls, {
100
101
  [`${controlCls}-${restProps.type}`]: restProps.type,
101
102
  [`${controlCls}-${size}`]: size,
102
103
  [`${controlCls}-${state}`]: state,
103
104
  [`${controlCls}-rtl`]: direction === 'rtl',
104
- [`${prefixCls || config.control?.prefixCls || config.prefixCls}-disabled`]: restProps.disabled,
105
- [`${prefixCls || config.control?.prefixCls || config.prefixCls}-focused`]: focused,
106
- [`${prefixCls || config.control?.prefixCls || config.prefixCls}-readonly`]: restProps.readOnly,
105
+ [`${prefixCls}-disabled`]: restProps.disabled,
106
+ [`${prefixCls}-focused`]: focused,
107
+ [`${prefixCls}-readonly`]: restProps.readOnly,
107
108
  }, className), [
108
109
  controlCls,
109
110
  restProps.type,
@@ -113,8 +114,6 @@ function useInput(props) {
113
114
  state,
114
115
  direction,
115
116
  prefixCls,
116
- config.control?.prefixCls,
117
- config.prefixCls,
118
117
  focused,
119
118
  className,
120
119
  ]);
@@ -31,7 +31,7 @@
31
31
  box-sizing: border-box;
32
32
  color: var(--control-color);
33
33
  cursor: text;
34
- display: inline-flex;
34
+ display: flex;
35
35
  font-size: inherit;
36
36
  min-height: var(--control-height);
37
37
  padding-left: var(--control-padding-horizontal);
@@ -0,0 +1,24 @@
1
+ import { type GenerateConfig } from 'rc-picker/lib/generate';
2
+ import * as React from 'react';
3
+ import { type GenericTimePickerProps, type PickerPanelProps, type PickerPanelPropsWithMultiple } from '../../components/DatePicker/types';
4
+ import { type AnyObject } from '../../types';
5
+ export declare const generatePurePicker: <DateType extends AnyObject = AnyObject>(generateConfig: GenerateConfig<DateType>) => {
6
+ DatePicker: (<ValueType = DateType>(props: PickerPanelPropsWithMultiple<DateType, PickerPanelProps<DateType>, ValueType>) => React.ReactElement) & {
7
+ displayName?: string;
8
+ };
9
+ MonthPicker: (<ValueType = DateType>(props: PickerPanelPropsWithMultiple<DateType, Omit<PickerPanelProps<DateType>, "picker">, ValueType>) => React.ReactElement) & {
10
+ displayName?: string;
11
+ };
12
+ QuarterPicker: (<ValueType = DateType>(props: PickerPanelPropsWithMultiple<DateType, Omit<PickerPanelProps<DateType>, "picker">, ValueType>) => React.ReactElement) & {
13
+ displayName?: string;
14
+ };
15
+ TimePicker: (<ValueType = DateType>(props: PickerPanelPropsWithMultiple<DateType, Omit<GenericTimePickerProps<DateType>, "picker">, ValueType>) => React.ReactElement) & {
16
+ displayName?: string;
17
+ };
18
+ WeekPicker: (<ValueType = DateType>(props: PickerPanelPropsWithMultiple<DateType, Omit<PickerPanelProps<DateType>, "picker">, ValueType>) => React.ReactElement) & {
19
+ displayName?: string;
20
+ };
21
+ YearPicker: (<ValueType = DateType>(props: PickerPanelPropsWithMultiple<DateType, Omit<PickerPanelProps<DateType>, "picker">, ValueType>) => React.ReactElement) & {
22
+ displayName?: string;
23
+ };
24
+ };
@@ -0,0 +1,78 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __importDefault = (this && this.__importDefault) || function (mod) {
36
+ return (mod && mod.__esModule) ? mod : { "default": mod };
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.generatePurePicker = void 0;
40
+ const rc_picker_1 = require("rc-picker");
41
+ const React = __importStar(require("react"));
42
+ const ConfigProvider_1 = require("../../components/ConfigProvider");
43
+ const constants_1 = require("../../components/DatePicker/constants");
44
+ // eslint-disable-next-line camelcase
45
+ const en_US_1 = __importDefault(require("../../components/DatePicker/locale/en_US"));
46
+ const useComponents_1 = require("../../components/DatePicker/useComponents");
47
+ const utils_1 = require("../../utils");
48
+ const generatePurePicker = (generateConfig) => {
49
+ // eslint-disable-next-line @typescript-eslint/explicit-function-return-type,@typescript-eslint/explicit-module-boundary-types
50
+ const getPanel = (picker, displayName) => {
51
+ const consumerName = displayName === constants_1.TIMEPICKER ? 'timePicker' : 'datePicker';
52
+ const Picker = React.forwardRef((props, ref) => {
53
+ const config = (0, ConfigProvider_1.useConfig)();
54
+ const ctxPickerConfig = React.useMemo(() => config[consumerName] || {}, [config]);
55
+ const { components, direction = ctxPickerConfig.direction || config.direction, locale = en_US_1.default, prefixCls = `${config.prefixCls}-datepicker`, ...restProps } = props;
56
+ const pickerRef = React.useRef(null);
57
+ const mergedPicker = picker || restProps.picker;
58
+ const mergedComponents = (0, useComponents_1.useComponents)(components);
59
+ React.useImperativeHandle(ref, () => pickerRef.current, []);
60
+ return (
61
+ // @ts-ignore
62
+ React.createElement(rc_picker_1.PickerPanel, { ref: pickerRef, components: mergedComponents, direction: direction, generateConfig: generateConfig, locale: locale.lang, picker: mergedPicker, prefixCls: prefixCls, nextIcon: React.createElement("span", { className: `${prefixCls}-next-icon` }), prevIcon: React.createElement("span", { className: `${prefixCls}-prev-icon` }), superPrevIcon: React.createElement("span", { className: `${prefixCls}-super-prev-icon` }), superNextIcon: React.createElement("span", { className: `${prefixCls}-super-next-icon` }), transitionName: (0, utils_1.getMotionName)(config.prefixCls, 'slide-bottom-small'), ...restProps }));
63
+ });
64
+ if (process.env.NODE_ENV !== 'production' && displayName) {
65
+ Picker.displayName = displayName;
66
+ }
67
+ return Picker;
68
+ };
69
+ const DatePicker = getPanel();
70
+ const MonthPicker = getPanel(constants_1.MONTH, constants_1.MONTHPICKER);
71
+ const QuarterPicker = getPanel(constants_1.QUARTER, constants_1.QUARTERPICKER);
72
+ // @ts-ignore
73
+ const TimePicker = getPanel(constants_1.TIME, constants_1.TIMEPICKER);
74
+ const WeekPicker = getPanel(constants_1.WEEK, constants_1.WEEKPICKER);
75
+ const YearPicker = getPanel(constants_1.YEAR, constants_1.YEARPICKER);
76
+ return { DatePicker, MonthPicker, QuarterPicker, TimePicker, WeekPicker, YearPicker };
77
+ };
78
+ exports.generatePurePicker = generatePurePicker;
@@ -56,8 +56,8 @@ const generateSinglePicker = (generateConfig) => {
56
56
  const consumerName = displayName === constants_1.TIMEPICKER ? 'timePicker' : 'datePicker';
57
57
  const Picker = React.forwardRef((props, ref) => {
58
58
  const config = (0, ConfigProvider_1.useConfig)();
59
- const ctxPickerConfig = config[consumerName] || {};
60
- const { allowClear = true, builtinPlacements = placements_1.default, className, components, direction = ctxPickerConfig.direction || config.direction, getPopupContainer = config.getPopupContainer, locale = en_US_1.default, placeholder, placement = 'bottom-left', popupClassName, prefixCls = `${config.prefixCls}-datepicker`, rootClassName, size, state, style, onCalendarChange, ...restProps } = props;
59
+ const ctxPickerConfig = React.useMemo(() => config[consumerName] || {}, [config]);
60
+ const { allowClear = true, builtinPlacements = placements_1.default, className, components, direction = ctxPickerConfig.direction ?? config.direction, getPopupContainer = config.getPopupContainer, locale = en_US_1.default, placeholder, placement = 'bottom-left', popupClassName, prefixCls = `${config.prefixCls}-datepicker`, rootClassName, size, state, style, onCalendarChange, ...restProps } = props;
61
61
  const pickerRef = React.useRef(null);
62
62
  const mergedPicker = picker || restProps.picker;
63
63
  const mergedComponents = (0, useComponents_1.useComponents)(components);
@@ -89,7 +89,7 @@ const generateSinglePicker = (generateConfig) => {
89
89
  [`${prefixCls}-rtl`]: direction === 'rtl',
90
90
  }, className), classNames: {
91
91
  popup: (0, classnames_1.default)(popupClassName),
92
- }, components: mergedComponents, directio: direction, generateConfig: generateConfig, getPopupContainer: getPopupContainer, locale: locale.lang, picker: mergedPicker, placeholder: (0, utils_1.getPlaceholder)(locale, mergedPicker, placeholder), placement: placement, prefixCls: prefixCls, suffixIcon: suffixIcon, nextIcon: React.createElement("span", { className: `${prefixCls}-next-icon` }), prevIcon: React.createElement("span", { className: `${prefixCls}-prev-icon` }), superPrevIcon: React.createElement("span", { className: `${prefixCls}-super-prev-icon` }), superNextIcon: React.createElement("span", { className: `${prefixCls}-super-next-icon` }), style: style, transitionName: (0, utils_2.getMotionName)(config.prefixCls, 'slide-bottom-small'), onCalendarChange: onCalendarChange, ...restProps, allowClear: mergedAllowClear, styles: {
92
+ }, components: mergedComponents, direction: direction, generateConfig: generateConfig, getPopupContainer: getPopupContainer, locale: locale.lang, picker: mergedPicker, placeholder: (0, utils_1.getPlaceholder)(locale, mergedPicker, placeholder), placement: placement, prefixCls: prefixCls, suffixIcon: suffixIcon, nextIcon: React.createElement("span", { className: `${prefixCls}-next-icon` }), prevIcon: React.createElement("span", { className: `${prefixCls}-prev-icon` }), superPrevIcon: React.createElement("span", { className: `${prefixCls}-super-prev-icon` }), superNextIcon: React.createElement("span", { className: `${prefixCls}-super-next-icon` }), style: style, transitionName: (0, utils_2.getMotionName)(config.prefixCls, 'slide-bottom-small'), onCalendarChange: onCalendarChange, ...restProps, allowClear: mergedAllowClear, styles: {
93
93
  popup: { ...restProps.styles },
94
94
  } })));
95
95
  });
@@ -1,9 +1,12 @@
1
1
  import { type DateTime } from 'luxon';
2
2
  import { generatePicker } from '../../components/DatePicker/generatePicker';
3
+ import { generatePurePicker } from '../../components/DatePicker/generatePurePicker';
3
4
  import './index.scss';
4
5
  export * from '../../components/DatePicker/locale';
5
6
  export * from '../../components/DatePicker/types';
6
7
  export interface DatePicker extends ReturnType<typeof generatePicker<DateTime>> {
7
8
  generatePicker: typeof generatePicker;
9
+ generatePurePicker: typeof generatePurePicker;
10
+ Panel: ReturnType<typeof generatePurePicker<DateTime>>;
8
11
  }
9
12
  export declare const DatePicker: DatePicker;
@@ -20,9 +20,12 @@ Object.defineProperty(exports, "__esModule", { value: true });
20
20
  exports.DatePicker = void 0;
21
21
  const luxon_1 = __importDefault(require("rc-picker/lib/generate/luxon"));
22
22
  const generatePicker_1 = require("../../components/DatePicker/generatePicker");
23
+ const generatePurePicker_1 = require("../../components/DatePicker/generatePurePicker");
23
24
  require("./index.scss");
24
25
  __exportStar(require("../../components/DatePicker/locale"), exports);
25
26
  __exportStar(require("../../components/DatePicker/types"), exports);
26
27
  const InternalDatePicker = (0, generatePicker_1.generatePicker)(luxon_1.default);
27
28
  exports.DatePicker = InternalDatePicker;
28
29
  exports.DatePicker.generatePicker = generatePicker_1.generatePicker;
30
+ exports.DatePicker.generatePurePicker = generatePurePicker_1.generatePurePicker;
31
+ exports.DatePicker.Panel = (0, generatePurePicker_1.generatePurePicker)(luxon_1.default);
@@ -429,7 +429,7 @@
429
429
  z-index: 1;
430
430
  }
431
431
 
432
- .uk-datepicker-cell-disabled {
432
+ .uk-datepicker-cell-disabled:not(.uk-datepicker-cell-selected) {
433
433
  color: var(--datepicker-cell-disabled-color);
434
434
  cursor: not-allowed;
435
435
  }
@@ -520,7 +520,7 @@
520
520
  color: var(--datepicker-cell-active-color);
521
521
  }
522
522
 
523
- .uk-datepicker-time-panel-cell-disabled .uk-datepicker-time-panel-cell-inner {
523
+ .uk-datepicker-time-panel-cell-disabled:not(.uk-datepicker-time-panel-cell-selected) .uk-datepicker-time-panel-cell-inner {
524
524
  color: var(--datepicker-cell-disabled-color);
525
525
  cursor: not-allowed;
526
526
  }
@@ -618,13 +618,13 @@
618
618
  --datepicker-header-padding-horizontal: var(--global-small-gutter);
619
619
  --datepicker-header-font-size: var(--global-font-size);
620
620
  --datepicker-header-font-weight: var(--global-bold-font-weight);
621
- --datepicker-header-height: var(--global-control-height);
621
+ --datepicker-header-height: var(--global-control-large-height);
622
622
  --datepicker-body-padding-horizontal: var(--global-gutter);
623
623
  --datepicker-body-padding-vertical: var(--global-small-gutter);
624
624
  --datepicker-header-button-color: var(--global-muted-color);
625
625
  --datepicker-header-button-font-size: var(--global-font-size);
626
626
  --datepicker-header-button-font-weight: var(--global-bold-font-weight);
627
- --datepicker-header-button-line-height: #{$datepicker-button-line-height};
627
+ --datepicker-header-button-line-height: var(--global-control-large-height);
628
628
  --datepicker-header-button-padding-horizontal: var(--global-small-gutter);
629
629
  --datepicker-header-button-hover-color: var(--global-color);
630
630
  --datepicker-header-view-button-hover-color: var(--global-primary-color);
@@ -633,7 +633,7 @@
633
633
  --datepicker-footer-ranges-padding-horizontal: var(--global-small-gutter);
634
634
  --datepicker-footer-ranges-padding-vertical: var(--global-small-gutter);
635
635
  --datepicker-cell-border-radius: var(--global-small-border-radius);
636
- --datepicker-cell-height: #{$datepicker-cell-height};
636
+ --datepicker-cell-height: var(--global-control-height);
637
637
  --datepicker-cell-width: #{$datepicker-cell-width};
638
638
  --datepicker-cell-padding: var(--global-xsmall-gutter);
639
639
  --datepicker-cell-color: var(--global-color);
@@ -1,7 +1,9 @@
1
- import { type PickerRef, type PickerProps as RcPickerProps, type RangePickerProps as RcRangePickerProps } from 'rc-picker';
1
+ import { type PickerRef, type PickerPanelProps as RcPickerPanelProps, type PickerProps as RcPickerProps, type RangePickerProps as RcRangePickerProps } from 'rc-picker';
2
2
  import { type Locale as RcPickerLocale } from 'rc-picker/lib/interface';
3
3
  import type * as React from 'react';
4
+ import { type TimePickerLocale } from '../../components/TimePicker';
4
5
  import { type AnyObject, type SizeType, type StateType } from '../../types';
6
+ import { PickerPanelRef } from 'rc-picker/lib/PickerPanel';
5
7
  export interface AdditionalPickerLocaleProps {
6
8
  dateFormat?: string;
7
9
  dateTimeFormat?: string;
@@ -22,7 +24,7 @@ export interface AdditionalPickerLocaleLangProps {
22
24
  }
23
25
  export interface PickerLocale extends AdditionalPickerLocaleProps {
24
26
  lang: RcPickerLocale & AdditionalPickerLocaleLangProps;
25
- timePickerLocale: any;
27
+ timePickerLocale: TimePickerLocale;
26
28
  }
27
29
  declare const DatePickerPlacements: readonly ["bottomLeft", "bottomRight", "topLeft", "topRight"];
28
30
  type DatePickerPlacement = (typeof DatePickerPlacements)[number];
@@ -35,7 +37,10 @@ type InjectDefaultProps<Props> = Omit<Props, 'locale' | 'generateConfig' | 'hide
35
37
  size?: SizeType;
36
38
  state?: StateType;
37
39
  };
38
- export interface PickerProps<DateType extends AnyObject = any> extends InjectDefaultProps<RcPickerProps<DateType>> {
40
+ export interface PickerProps<DateType extends AnyObject = AnyObject> extends InjectDefaultProps<RcPickerProps<DateType>> {
41
+ }
42
+ export interface PickerPanelProps<DateType extends AnyObject = AnyObject> extends Omit<RcPickerPanelProps<DateType>, 'locale' | 'generateConfig' | 'hideHeader'> {
43
+ locale?: PickerLocale;
39
44
  }
40
45
  export interface RangePickerProps<DateType extends AnyObject = AnyObject> extends InjectDefaultProps<RcRangePickerProps<DateType>> {
41
46
  }
@@ -47,4 +52,10 @@ export type PickerPropsWithMultiple<DateType extends AnyObject = any, InnerPicke
47
52
  onChange?: (date: ValueType, dateString: string | string[]) => void;
48
53
  onConfirm?: (date: ValueType) => void;
49
54
  };
55
+ export type PickerPanelPropsWithMultiple<DateType extends AnyObject = any, InnerPickerProps extends PickerProps<DateType> = PickerProps<DateType>, ValueType = DateType> = Omit<InnerPickerProps, 'defaultValue' | 'value' | 'onChange' | 'onOk'> & React.RefAttributes<PickerPanelRef> & {
56
+ defaultValue?: ValueType | null;
57
+ value?: ValueType | null;
58
+ onChange?: (date: ValueType, dateString: string | string[]) => void;
59
+ onConfirm?: (date: ValueType) => void;
60
+ };
50
61
  export {};
@@ -623,19 +623,14 @@ $countdown-separator-font-size-m: 3rem !default; /
623
623
  // DatePicker
624
624
  // ========================================================================
625
625
 
626
- $datepicker-dropdown-background: $global-muted-background !default;
627
- $datepicker-dropdown-border: $global-border !default;
628
- $datepicker-dropdown-border-style: $global-border-style !default;
629
- $datepicker-dropdown-border-width: $global-border-width !default;
630
- $datepicker-dropdown-border-radius: $global-border-radius !default;
631
626
  $datepicker-button-font-size: $global-font-size !default;
632
- $datepicker-button-line-height: 40px !default;
627
+ $datepicker-button-line-height: $global-control-large-height !default;
633
628
  $datepicker-button-padding-horizontal: $global-small-gutter !default;
634
629
  $datepicker-body-padding-vertical: $global-small-gutter !default;
635
630
  $datepicker-body-padding-horizontal: $global-gutter !default;
636
631
  $datepicker-cell-border-radius: $global-small-border-radius !default;
637
- $datepicker-cell-height: 32px !default;
638
- $datepicker-cell-width: 44px !default;
632
+ $datepicker-cell-height: $global-control-height !default;
633
+ $datepicker-cell-width: $global-control-height * 1.05 !default;
639
634
  $datepicker-cell-padding: $global-xsmall-gutter !default;
640
635
  $datepicker-cell-color: $global-color !default;
641
636
  $datepicker-cell-hover-background: $global-secondary-background !default;
@@ -646,6 +641,11 @@ $datepicker-cell-disabled-color: $global-muted-co
646
641
  $datepicker-time-column-height: 252px !default;
647
642
  $datepicker-time-column-width: 60px !default;
648
643
  $datepicker-time-cell-height: 28px !default;
644
+ $datepicker-dropdown-background: $global-muted-background !default;
645
+ $datepicker-dropdown-border: $global-border !default;
646
+ $datepicker-dropdown-border-style: $global-border-style !default;
647
+ $datepicker-dropdown-border-width: $global-border-width !default;
648
+ $datepicker-dropdown-border-radius: $global-border-radius !default;
649
649
 
650
650
 
651
651
  // Description list