Skip to content

Commit

Permalink
chore: tmp of it
Browse files Browse the repository at this point in the history
  • Loading branch information
zombieJ committed Dec 5, 2023
1 parent 6828a11 commit 4ac3009
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 77 deletions.
53 changes: 1 addition & 52 deletions src/NewPicker/PickerInput/SinglePicker.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -2,15 +2,12 @@ import { useEvent, useMergedState } from 'rc-util';
import useLayoutEffect from 'rc-util/lib/hooks/useLayoutEffect';
import omit from 'rc-util/lib/omit';
import pickAttrs from 'rc-util/lib/pickAttrs';
import warning from 'rc-util/lib/warning';
import * as React from 'react';
import useLocale from '../hooks/useLocale';
import useTimeConfig from '../hooks/useTimeConfig';
import type {
BaseInfo,
InternalMode,
OnOpenChange,
OpenConfig,
PanelMode,
PickerRef,
SelectorProps,
Expand All @@ -31,7 +28,6 @@ import useInvalidate from './hooks/useInvalidate';
import useOpen from './hooks/useOpen';
import usePresets from './hooks/usePresets';
import useRangeActive from './hooks/useRangeActive';
import useRangeDisabledDate from './hooks/useRangeDisabledDate';
import useRangePickerValue from './hooks/useRangePickerValue';
import useRangeValue, { useInnerValue } from './hooks/useRangeValue';
import useShowNow from './hooks/useShowNow';
Expand Down Expand Up @@ -196,14 +192,7 @@ function Picker<DateType extends object = any>(
// ========================= Open =========================
const popupPlacement = direction === 'rtl' ? 'bottomRight' : 'bottomLeft';

const [mergedOpen, setMergeOpen] = useOpen(open, defaultOpen, onOpenChange);

const triggerOpen: OnOpenChange = (nextOpen, config?: OpenConfig) => {
// No need to open if all disabled
if (disabled.some((fieldDisabled) => !fieldDisabled) || !nextOpen) {
setMergeOpen(nextOpen, config);
}
};
const [mergedOpen, triggerOpen] = useOpen(open, defaultOpen, onOpenChange);

// ======================== Picker ========================
/** Almost same as `picker`, but add `datetime` for `date` with `showTime` */
Expand Down Expand Up @@ -311,18 +300,6 @@ function Picker<DateType extends object = any>(
isInvalidateDate,
);

// ===================== DisabledDate =====================
const disabledDate = useRangeDisabledDate(
calendarValue,
disabled,
activeIndexList,
generateConfig,
filledLocale,
disabledBoundaryDate,
// minDate,
// maxDate,
);

// ======================= Validate =======================
const [fieldsInvalidates, setFieldsInvalidates] = React.useState<[boolean, boolean]>([
false,
Expand Down Expand Up @@ -350,11 +327,6 @@ function Picker<DateType extends object = any>(
return false;
}

// Not allow empty
if (!mergedAllowEmpty[index] && !current) {
return true;
}

// Invalidate
if (current && isInvalidateDate(current)) {
return true;
Expand Down Expand Up @@ -675,29 +647,6 @@ function Picker<DateType extends object = any>(
}
}, [mergedOpen]);

// ====================== DevWarning ======================
if (process.env.NODE_ENV !== 'production') {
const isIndexEmpty = (index: number) => {
return (
// Value is empty
!value?.[index] &&
// DefaultValue is empty
!defaultValue?.[index]
);
};

if (
disabled.some(
(fieldDisabled, index) => fieldDisabled && isIndexEmpty(index) && !mergedAllowEmpty[index],
)
) {
warning(
false,
'`disabled` should not set with empty `value`. You should set `allowEmpty` or `value` instead.',
);
}
}

// ======================== Render ========================
return (
<PickerContext.Provider value={context}>
Expand Down
29 changes: 4 additions & 25 deletions src/NewPicker/PickerInput/hooks/useRangeDisabledDate.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,10 @@ import { isSame } from '../../../utils/dateUtil';
import type { DisabledDate, Locale } from '../../interface';
import type { RangeValueType } from '../RangePicker';

/**
* RangePicker need additional logic to handle the `disabled` case. e.g.
* [disabled, enabled] should end date not before start date
*/
export default function useRangeDisabledDate<DateType extends object = any>(
values: RangeValueType<DateType>,
disabled: [boolean, boolean],
Expand Down Expand Up @@ -49,31 +53,6 @@ export default function useRangeDisabledDate<DateType extends object = any>(
return true;
}

// =========================== Min or Max ===========================
// const limitInfo = {
// from: activeIndex !== firstValuedIndex ? values[firstValuedIndex] : undefined,
// };
// const mergedMinDate = typeof minDate === 'function' ? minDate(limitInfo) : minDate;
// const mergedMaxDate = typeof maxDate === 'function' ? maxDate(limitInfo) : maxDate;

// if (
// mergedMinDate &&
// generateConfig.isAfter(mergedMinDate, date) &&
// !isSame(generateConfig, locale, mergedMinDate, date, info.type)
// ) {
// return true;
// }

// if (
// mergedMaxDate &&
// generateConfig.isAfter(date, mergedMaxDate) &&
// !isSame(generateConfig, locale, mergedMaxDate, date, info.type)
// ) {
// return true;
// }

// TODO: Select Range then select the date after end date

// ============================= Origin =============================
return disabledDate?.(date, mergedInfo);
};
Expand Down

0 comments on commit 4ac3009

Please sign in to comment.