@broxus/react-uikit 0.16.0 → 0.17.0

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 (37) hide show
  1. package/dist/cjs/components/Button/Button.js +4 -4
  2. package/dist/cjs/components/ConfigProvider/index.d.ts +11 -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/Select/index.d.ts +3 -2
  6. package/dist/cjs/components/Control/index.scss +1 -1
  7. package/dist/cjs/components/Control/types.d.ts +1 -0
  8. package/dist/cjs/components/DatePicker/generatePurePicker.d.ts +24 -0
  9. package/dist/cjs/components/DatePicker/generatePurePicker.js +78 -0
  10. package/dist/cjs/components/DatePicker/generateSinglePicker.js +3 -3
  11. package/dist/cjs/components/DatePicker/index.d.ts +3 -0
  12. package/dist/cjs/components/DatePicker/index.js +3 -0
  13. package/dist/cjs/components/DatePicker/index.scss +112 -85
  14. package/dist/cjs/components/DatePicker/types.d.ts +14 -3
  15. package/dist/cjs/components/Drop/index.d.ts +2 -1
  16. package/dist/cjs/styles/mixins.scss +23 -0
  17. package/dist/cjs/styles/variables.scss +8 -8
  18. package/dist/cjs/tsconfig.cjs.tsbuildinfo +1 -1
  19. package/dist/esm/components/Button/Button.js +4 -4
  20. package/dist/esm/components/ConfigProvider/index.d.ts +11 -7
  21. package/dist/esm/components/Control/Input/Password/index.js +2 -2
  22. package/dist/esm/components/Control/Input/useInput.js +7 -8
  23. package/dist/esm/components/Control/Select/index.d.ts +3 -2
  24. package/dist/esm/components/Control/index.scss +1 -1
  25. package/dist/esm/components/Control/types.d.ts +1 -0
  26. package/dist/esm/components/DatePicker/generatePurePicker.d.ts +24 -0
  27. package/dist/esm/components/DatePicker/generatePurePicker.js +38 -0
  28. package/dist/esm/components/DatePicker/generateSinglePicker.js +3 -3
  29. package/dist/esm/components/DatePicker/index.d.ts +3 -0
  30. package/dist/esm/components/DatePicker/index.js +3 -0
  31. package/dist/esm/components/DatePicker/index.scss +112 -85
  32. package/dist/esm/components/DatePicker/types.d.ts +14 -3
  33. package/dist/esm/components/Drop/index.d.ts +2 -1
  34. package/dist/esm/styles/mixins.scss +23 -0
  35. package/dist/esm/styles/variables.scss +8 -8
  36. package/dist/esm/tsconfig.esm.tsbuildinfo +1 -1
  37. 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';
@@ -1,6 +1,8 @@
1
1
  import * as React from 'react';
2
2
  import { type ButtonProps } from '../../components/Button';
3
+ import { type PickerLocale } from '../../components/DatePicker';
3
4
  import { type ColorMode } from '../../components/Inverse';
5
+ import { type TimePickerLocale } from '../../components/TimePicker';
4
6
  import { type BreakpointsConfig, type Direction, type TooltipOptions } from '../../types';
5
7
  type PropsWithMouseHandler = {
6
8
  onClick: React.HTMLAttributes<HTMLElement>['onClick'];
@@ -21,16 +23,17 @@ export type ConfigContextConsumedProps = {
21
23
  tertiaryColorMode?: ColorMode;
22
24
  };
23
25
  checkbox?: {
24
- direction?: Direction | string;
26
+ direction?: Direction;
25
27
  prefixCls?: string;
26
28
  };
27
29
  control?: {
28
- direction?: Direction | string;
30
+ direction?: Direction;
29
31
  prefixCls?: string;
30
32
  clearIcon?: React.ReactNode | ((props: PropsWithMouseHandler) => React.ReactElement);
31
33
  };
32
34
  datePicker?: {
33
- direction?: Direction | string;
35
+ direction?: Direction;
36
+ locale?: PickerLocale;
34
37
  prefixCls?: string;
35
38
  clearIcon?: React.ReactNode | (() => React.ReactElement);
36
39
  nextIcon?: React.ReactNode;
@@ -39,7 +42,7 @@ export type ConfigContextConsumedProps = {
39
42
  superPrevIcon?: React.ReactNode;
40
43
  superNextIcon?: React.ReactNode;
41
44
  };
42
- direction?: Direction | string;
45
+ direction?: Direction;
43
46
  getPopupContainer?: (triggerNode?: HTMLElement) => HTMLElement;
44
47
  getRootPrefixCls: (prefix?: string, component?: string) => string;
45
48
  getTooltipConfig: (props: string | TooltipOptions | undefined) => {
@@ -48,7 +51,7 @@ export type ConfigContextConsumedProps = {
48
51
  inverseGlobalColorMode?: ColorMode;
49
52
  prefixCls: string;
50
53
  radio?: {
51
- direction?: Direction | string;
54
+ direction?: Direction;
52
55
  prefixCls?: string;
53
56
  };
54
57
  section?: {
@@ -58,7 +61,7 @@ export type ConfigContextConsumedProps = {
58
61
  tertiaryColorMode?: ColorMode;
59
62
  };
60
63
  select?: {
61
- direction?: Direction | string;
64
+ direction?: Direction;
62
65
  prefixCls?: string;
63
66
  addIcon?: React.ReactNode | ((props: PropsWithMouseHandler) => React.ReactElement);
64
67
  arrowIcon?: React.ReactNode | ((props: {
@@ -70,7 +73,8 @@ export type ConfigContextConsumedProps = {
70
73
  searchIcon?: React.ReactNode | (() => React.ReactElement);
71
74
  };
72
75
  timePicker?: {
73
- direction?: Direction | string;
76
+ direction?: Direction;
77
+ locale?: TimePickerLocale;
74
78
  prefixCls?: string;
75
79
  clearIcon?: React.ReactNode | (() => React.ReactElement);
76
80
  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
  ]);
@@ -2,17 +2,18 @@ import { type BaseSelectRef, OptGroup, Option, type SelectProps as RcSelectProps
2
2
  import { type OptionProps } from 'rc-select/lib/Option';
3
3
  import { type BaseOptionType, type DefaultOptionType } from 'rc-select/lib/Select';
4
4
  import * as React from 'react';
5
- import { type ControlProps } from '../../../components/Control/types';
5
+ import { type ControlProps, type SelectPlacement } from '../../../components/Control/types';
6
6
  import { type SizeType } from '../../../types';
7
7
  import './index.scss';
8
8
  import '../index.scss';
9
9
  export type { BaseSelectRef, OptionProps };
10
- export interface InternalSelectProps<ValueType = any, OptionType extends BaseOptionType | DefaultOptionType = DefaultOptionType> extends Omit<RcSelectProps<ValueType, OptionType>, 'allowClear' | 'mode'> {
10
+ export interface InternalSelectProps<ValueType = any, OptionType extends BaseOptionType | DefaultOptionType = DefaultOptionType> extends Omit<RcSelectProps<ValueType, OptionType>, 'allowClear' | 'mode' | 'placement'> {
11
11
  mode?: 'multiple' | 'tags' | 'SECRET_COMBOBOX_MODE_DO_NOT_USE';
12
12
  size?: SizeType;
13
13
  }
14
14
  export interface SelectProps<ValueType = any, OptionType extends BaseOptionType | DefaultOptionType = DefaultOptionType> extends Omit<ControlProps<ValueType>, 'value' | 'defaultValue'>, Omit<InternalSelectProps<ValueType, OptionType>, 'inputIcon' | 'mode' | 'getInputElement' | 'backfill'> {
15
15
  mode?: 'multiple' | 'tags';
16
+ placement?: SelectPlacement;
16
17
  showArrow?: boolean;
17
18
  }
18
19
  export declare const Select: (<ValueType = any, OptionType extends BaseOptionType | DefaultOptionType = DefaultOptionType>(props: SelectProps<ValueType, OptionType> & {
@@ -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);
@@ -15,3 +15,4 @@ export interface ControlProps<T> {
15
15
  value?: T;
16
16
  onPressEnter?: React.KeyboardEventHandler<HTMLInputElement>;
17
17
  }
18
+ export type SelectPlacement = 'bottom-left' | 'bottom-right' | 'top-left' | 'top-right';
@@ -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);