@activecollab/components 2.0.211 → 2.0.213
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/dist/cjs/components/DatePicker/DatePicker.js +678 -301
- package/dist/cjs/components/DatePicker/DatePicker.js.map +1 -1
- package/dist/cjs/components/DatePicker/Styles.js +91 -37
- package/dist/cjs/components/DatePicker/Styles.js.map +1 -1
- package/dist/cjs/components/DatePicker/index.js +0 -11
- package/dist/cjs/components/DatePicker/index.js.map +1 -1
- package/dist/cjs/components/EditableContent/EditableContent.js +4 -2
- package/dist/cjs/components/EditableContent/EditableContent.js.map +1 -1
- package/dist/cjs/components/EditableContent/Styles.js +8 -2
- package/dist/cjs/components/EditableContent/Styles.js.map +1 -1
- package/dist/cjs/components/EditableCurrency/EditableCurrency.js +3 -1
- package/dist/cjs/components/EditableCurrency/EditableCurrency.js.map +1 -1
- package/dist/cjs/components/SelectDate/SelectDate.js +126 -280
- package/dist/cjs/components/SelectDate/SelectDate.js.map +1 -1
- package/dist/cjs/components/SelectDate/index.js +0 -11
- package/dist/cjs/components/SelectDate/index.js.map +1 -1
- package/dist/cjs/components/Steppers/DateStepper/DateStepper.js +94 -100
- package/dist/cjs/components/Steppers/DateStepper/DateStepper.js.map +1 -1
- package/dist/cjs/components/Steppers/DateStepper/index.js +0 -11
- package/dist/cjs/components/Steppers/DateStepper/index.js.map +1 -1
- package/dist/cjs/components/index.js +0 -11
- package/dist/cjs/components/index.js.map +1 -1
- package/dist/esm/components/DatePicker/DatePicker.d.ts +64 -26
- package/dist/esm/components/DatePicker/DatePicker.d.ts.map +1 -1
- package/dist/esm/components/DatePicker/DatePicker.js +619 -278
- package/dist/esm/components/DatePicker/DatePicker.js.map +1 -1
- package/dist/esm/components/DatePicker/Styles.d.ts +21 -9
- package/dist/esm/components/DatePicker/Styles.d.ts.map +1 -1
- package/dist/esm/components/DatePicker/Styles.js +89 -30
- package/dist/esm/components/DatePicker/Styles.js.map +1 -1
- package/dist/esm/components/DatePicker/index.d.ts +0 -1
- package/dist/esm/components/DatePicker/index.d.ts.map +1 -1
- package/dist/esm/components/DatePicker/index.js +0 -1
- package/dist/esm/components/DatePicker/index.js.map +1 -1
- package/dist/esm/components/EditableContent/EditableContent.d.ts +1 -0
- package/dist/esm/components/EditableContent/EditableContent.d.ts.map +1 -1
- package/dist/esm/components/EditableContent/EditableContent.js +3 -1
- package/dist/esm/components/EditableContent/EditableContent.js.map +1 -1
- package/dist/esm/components/EditableContent/Styles.d.ts.map +1 -1
- package/dist/esm/components/EditableContent/Styles.js +12 -2
- package/dist/esm/components/EditableContent/Styles.js.map +1 -1
- package/dist/esm/components/EditableCurrency/EditableCurrency.d.ts.map +1 -1
- package/dist/esm/components/EditableCurrency/EditableCurrency.js +2 -0
- package/dist/esm/components/EditableCurrency/EditableCurrency.js.map +1 -1
- package/dist/esm/components/SelectDate/SelectDate.d.ts +20 -19
- package/dist/esm/components/SelectDate/SelectDate.d.ts.map +1 -1
- package/dist/esm/components/SelectDate/SelectDate.js +124 -246
- package/dist/esm/components/SelectDate/SelectDate.js.map +1 -1
- package/dist/esm/components/SelectDate/index.d.ts +0 -1
- package/dist/esm/components/SelectDate/index.d.ts.map +1 -1
- package/dist/esm/components/SelectDate/index.js +0 -1
- package/dist/esm/components/SelectDate/index.js.map +1 -1
- package/dist/esm/components/Steppers/DateStepper/DateStepper.d.ts +10 -7
- package/dist/esm/components/Steppers/DateStepper/DateStepper.d.ts.map +1 -1
- package/dist/esm/components/Steppers/DateStepper/DateStepper.js +88 -97
- package/dist/esm/components/Steppers/DateStepper/DateStepper.js.map +1 -1
- package/dist/esm/components/Steppers/DateStepper/index.d.ts +0 -1
- package/dist/esm/components/Steppers/DateStepper/index.d.ts.map +1 -1
- package/dist/esm/components/Steppers/DateStepper/index.js +0 -1
- package/dist/esm/components/Steppers/DateStepper/index.js.map +1 -1
- package/dist/esm/components/index.d.ts +0 -1
- package/dist/esm/components/index.d.ts.map +1 -1
- package/dist/esm/components/index.js +0 -1
- package/dist/esm/components/index.js.map +1 -1
- package/dist/index.js +229 -1568
- package/dist/index.js.map +1 -1
- package/dist/index.min.js +1 -1
- package/dist/index.min.js.map +1 -1
- package/package.json +1 -3
- package/dist/cjs/components/DatePicker/CustomNavBarElement.js +0 -41
- package/dist/cjs/components/DatePicker/CustomNavBarElement.js.map +0 -1
- package/dist/cjs/components/DatePicker/DatePickerV2.js +0 -734
- package/dist/cjs/components/DatePicker/DatePickerV2.js.map +0 -1
- package/dist/cjs/components/DatePicker/StylesV2.js +0 -100
- package/dist/cjs/components/DatePicker/StylesV2.js.map +0 -1
- package/dist/cjs/components/Pickers/NavBarElement.js +0 -52
- package/dist/cjs/components/Pickers/NavBarElement.js.map +0 -1
- package/dist/cjs/components/Pickers/Styles.js +0 -76
- package/dist/cjs/components/Pickers/Styles.js.map +0 -1
- package/dist/cjs/components/Pickers/YearMonthPicker.js +0 -80
- package/dist/cjs/components/Pickers/YearMonthPicker.js.map +0 -1
- package/dist/cjs/components/Pickers/index.js +0 -28
- package/dist/cjs/components/Pickers/index.js.map +0 -1
- package/dist/cjs/components/SelectDate/DatePickerForm.js +0 -94
- package/dist/cjs/components/SelectDate/DatePickerForm.js.map +0 -1
- package/dist/cjs/components/SelectDate/SelectDateV2.js +0 -263
- package/dist/cjs/components/SelectDate/SelectDateV2.js.map +0 -1
- package/dist/cjs/components/Steppers/DateStepper/DateStepperV2.js +0 -276
- package/dist/cjs/components/Steppers/DateStepper/DateStepperV2.js.map +0 -1
- package/dist/esm/components/DatePicker/CustomNavBarElement.d.ts +0 -12
- package/dist/esm/components/DatePicker/CustomNavBarElement.d.ts.map +0 -1
- package/dist/esm/components/DatePicker/CustomNavBarElement.js +0 -34
- package/dist/esm/components/DatePicker/CustomNavBarElement.js.map +0 -1
- package/dist/esm/components/DatePicker/DatePickerV2.d.ts +0 -68
- package/dist/esm/components/DatePicker/DatePickerV2.d.ts.map +0 -1
- package/dist/esm/components/DatePicker/DatePickerV2.js +0 -649
- package/dist/esm/components/DatePicker/DatePickerV2.js.map +0 -1
- package/dist/esm/components/DatePicker/StylesV2.d.ts +0 -22
- package/dist/esm/components/DatePicker/StylesV2.d.ts.map +0 -1
- package/dist/esm/components/DatePicker/StylesV2.js +0 -93
- package/dist/esm/components/DatePicker/StylesV2.js.map +0 -1
- package/dist/esm/components/Pickers/NavBarElement.d.ts +0 -9
- package/dist/esm/components/Pickers/NavBarElement.d.ts.map +0 -1
- package/dist/esm/components/Pickers/NavBarElement.js +0 -45
- package/dist/esm/components/Pickers/NavBarElement.js.map +0 -1
- package/dist/esm/components/Pickers/Styles.d.ts +0 -18
- package/dist/esm/components/Pickers/Styles.d.ts.map +0 -1
- package/dist/esm/components/Pickers/Styles.js +0 -56
- package/dist/esm/components/Pickers/Styles.js.map +0 -1
- package/dist/esm/components/Pickers/YearMonthPicker.d.ts +0 -17
- package/dist/esm/components/Pickers/YearMonthPicker.d.ts.map +0 -1
- package/dist/esm/components/Pickers/YearMonthPicker.js +0 -59
- package/dist/esm/components/Pickers/YearMonthPicker.js.map +0 -1
- package/dist/esm/components/Pickers/index.d.ts +0 -3
- package/dist/esm/components/Pickers/index.d.ts.map +0 -1
- package/dist/esm/components/Pickers/index.js +0 -3
- package/dist/esm/components/Pickers/index.js.map +0 -1
- package/dist/esm/components/SelectDate/DatePickerForm.d.ts +0 -39
- package/dist/esm/components/SelectDate/DatePickerForm.d.ts.map +0 -1
- package/dist/esm/components/SelectDate/DatePickerForm.js +0 -80
- package/dist/esm/components/SelectDate/DatePickerForm.js.map +0 -1
- package/dist/esm/components/SelectDate/SelectDateV2.d.ts +0 -102
- package/dist/esm/components/SelectDate/SelectDateV2.d.ts.map +0 -1
- package/dist/esm/components/SelectDate/SelectDateV2.js +0 -223
- package/dist/esm/components/SelectDate/SelectDateV2.js.map +0 -1
- package/dist/esm/components/Steppers/DateStepper/DateStepperV2.d.ts +0 -45
- package/dist/esm/components/Steppers/DateStepper/DateStepperV2.d.ts.map +0 -1
- package/dist/esm/components/Steppers/DateStepper/DateStepperV2.js +0 -241
- package/dist/esm/components/Steppers/DateStepper/DateStepperV2.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SelectDate.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_moment","_DatePickerForm","_SelectDateTarget","_Styles","_dateUtils","_Localization","_Menu","_Tooltip","obj","__esModule","default","_getRequireWildcardCache","e","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","toString","slice","constructor","name","Array","from","test","len","length","arr2","l","Symbol","iterator","f","next","done","push","value","return","isArray","getUtcTimestampFromDate","date","moment","utc","getFullYear","getMonth","getDate","unix","isDayInRange","day","data","repeating","Date","to","SelectDate","exports","_ref","_ref$changeMode","changeMode","mode","_ref$trigger","trigger","labelType","_ref$saveButtonText","saveButtonText","_ref$cancelButtonText","cancelButtonText","_ref$clearButtonText","clearButtonText","_ref$modalHeaderText","modalHeaderText","_ref$modalDiscardMess","modalDiscardMessage","_ref$modalDiscardBtnT","modalDiscardBtnText","_ref$modalCancelBtnTe","modalCancelBtnText","onDayClick","onSave","onCancel","onToggleDatePicker","_ref$required","required","dateRequired","_ref$defaultTimezoneA","defaultTimezoneAware","_ref$longDateFormat","longDateFormat","_ref$defaultShowDateP","defaultShowDatePicker","_ref$firstDayOfWeek","firstDayOfWeek","selectedDays","_ref$selectionMode","selectionMode","menuClassName","targetClassName","icon","_ref$defaultLabelText","defaultLabelText","targetTextClassName","targetIconClassName","backgroundElementClass","passedDateFormat","dateFormat","defaultMonth","_ref$daysToModify","daysToModify","_ref$weekends","weekends","_ref$weekendLabel","weekendLabel","_ref$nonWorkingDaysOf","nonWorkingDaysOfWeek","_ref$nonWorkingDaysOf2","nonWorkingDaysOfWeekLabel","_ref$weekendIsSelecta","weekendIsSelectable","tooltipText","popperTooltipClassName","popperClassName","popperTooltipStyle","position","disableDaysBefore","_useState","useState","_useState2","timezoneAware","setTimezoneAware","localization","useLocalization","labelText","useMemo","endDate","local","startDate","formattedEndDate","formatDate","formattedStartDate","concat","modifiedDates","toDate","offsetFrom","utcOffset","offsetTo","handleModifiedSave","useCallback","selectedDates","undefined","getDefaultMonth","_useState3","_useState4","month","setMonth","handleMonthChange","_useState5","_useState6","newDates","setNewDates","_useState7","_useState8","showDiscardModal","setShowDiscardModal","_useState9","_useState10","showDatePicker","setShowDatePicker","disabledSaveButton","useEffect","handleSave","handleChange","dates","handleBeforeCloseMenu","result","selectedDaysFrom","selectedDaysTo","newDatesFrom","newDatesTo","format","handleClose","handleCancel","event","preventDefault","handleShowDatePicker","handleCloseDiscardModal","handleClear","handleSaveDiscardModal","modifiers","userAvailabilities","filter","type","globalDaysOff","selectableGlobalDaysOff","userAvailability","currentDay","some","weekend","getDay","nonWorkingDay","nonWorkingDays","day_disabled","toJSON","dayOfWeek","renderDay","props","titles","includes","forEach","title","child","createElement","className","key","map","index","Tooltip","renderDatePickerForm","DatePickerForm","onMonthChange","onChange","onClear","renderTargetEl","SelectDateTarget","forceHideTooltip","active","StyledSelectDateButton","classnames","StyledSelectDate","Menu","target","open","onOpen","onBeforeClose","onClose","StyledConfirmDialog","onConfirm","dialogTitle","dialogContent","cancelBtnText","confirmBtnText","displayName"],"sources":["../../../../src/components/SelectDate/SelectDate.tsx"],"sourcesContent":["import React, {\n ElementType,\n FC,\n useCallback,\n useEffect,\n useMemo,\n useState,\n CSSProperties,\n} from \"react\";\nimport { DayModifiers, DayProps } from \"react-day-picker\";\n\nimport { Placement } from \"@popperjs/core\";\nimport classnames from \"classnames\";\nimport moment from \"moment\";\n\nimport { DatePickerForm } from \"./DatePickerForm\";\nimport { SelectDateTarget } from \"./SelectDateTarget\";\nimport {\n StyledConfirmDialog,\n StyledSelectDate,\n StyledSelectDateButton,\n} from \"./Styles\";\nimport { DaysToModifyV1 } from \"./types\";\nimport { formatDate } from \"../../utils/dateUtils\";\nimport { useLocalization } from \"../Localization\";\nimport { Menu } from \"../Menu/Menu\";\nimport { Tooltip } from \"../Tooltip/Tooltip\";\n\nconst getUtcTimestampFromDate = (date: Date): number => {\n return moment\n .utc([date.getFullYear(), date.getMonth(), date.getDate()])\n .unix();\n};\n\nconst isDayInRange = (day: Date, data: DaysToModifyV1): boolean => {\n if (data.repeating) {\n const from = new Date(\n day.getFullYear(),\n data.from.getMonth(),\n data.from.getDate()\n );\n const to = new Date(\n day.getFullYear(),\n data.to.getMonth(),\n data.to.getDate()\n );\n return day >= from && day <= to;\n }\n\n return day >= data.from && day <= data.to;\n};\n\ntype TriggerStringType = \"text\" | \"icon\" | \"inline\";\ntype TriggerFunctionType = (text: string) => JSX.Element;\n\nexport interface ISelectDate {\n /** Change mode - can be atomic and instant */\n changeMode?: \"atomic\" | \"instant\";\n /** Trigger - can be text, icon, inline, or custom render function */\n trigger?: TriggerStringType | TriggerFunctionType;\n /** Save button text */\n saveButtonText?: string;\n /** Cancel button text */\n cancelButtonText?: string;\n /** Clear button text */\n clearButtonText?: string;\n /** Modal header text */\n modalHeaderText?: string;\n /** Modal cancel button text */\n modalCancelBtnText?: string;\n /** Modal discard button text */\n modalDiscardBtnText?: string;\n /** Modal discard message text */\n modalDiscardMessage?: string;\n /** Tooltip text */\n tooltipText?: string;\n /** Called when day is clicked */\n onDayClick?: (day: Date, modifiers: DayModifiers) => void;\n /** Save changes in atomic mode */\n onSave?: (dates?: { from: number; to: number }) => void;\n /** On cancel closes datepicker or opens disard modal in atomic mode */\n onCancel?: () => void;\n /** Clear dates when they are not required */\n onClear?: () => void;\n /** Use this callback to get is picker visible */\n onToggleDatePicker?: (value: boolean) => void;\n /** Set selected day or days */\n selectedDays?: { from: number; to: number };\n /** Set month */\n defaultMonth?: Date;\n /** Set selection range */\n selectionMode?: string;\n /** Set is date required */\n required?: boolean;\n /** Set default show on date picker (only for text and icon mode) */\n defaultShowDatePicker?: boolean;\n /** Long date format (Always show year) */\n longDateFormat?: boolean;\n /** Set is date required */\n defaultTimezoneAware?: boolean;\n /** Set first day of week */\n firstDayOfWeek?: 0 | 1 | 2 | 3 | 4 | 5 | 6;\n /** One of icon types */\n icon?: ElementType;\n /** Default Label text */\n defaultLabelText?: string;\n /** Date format */\n dateFormat?: string;\n /** Menu classes */\n menuClassName?: string;\n /** Target element classes */\n targetClassName?: string;\n /** Target element text classes */\n targetTextClassName?: string;\n /** Target element icon classes */\n targetIconClassName?: string;\n /** Background style for clickable element after the menu is open (opacity, color, etc...) */\n backgroundElementClass?: string;\n /** Days to modify */\n daysToModify?: DaysToModifyV1[];\n /** Array of weekend days */\n weekends?: number[];\n /** Weekend label */\n weekendLabel?: string;\n /** Array of nonworking week days */\n nonWorkingDaysOfWeek?: number[];\n /** Nonworking week days label */\n nonWorkingDaysOfWeekLabel?: string;\n /** Allows weekends to be selected */\n weekendIsSelectable?: boolean;\n /** Popper Tooltip style */\n popperTooltipStyle?: CSSProperties;\n /** Popper Tooltip class name*/\n popperTooltipClassName?: string;\n /** Popper class name*/\n popperClassName?: string;\n /** Position of selectDate menu */\n position?: Placement;\n /** Disable days before specified date */\n disableDaysBefore?: Date;\n}\n\nexport const SelectDate: FC<ISelectDate> = ({\n changeMode: mode = \"instant\",\n trigger: labelType = \"text\",\n saveButtonText = \"Save\",\n cancelButtonText = \"Cancel\",\n clearButtonText = \"Clear\",\n modalHeaderText = \"Discard changes?\",\n modalDiscardMessage = \"All unsaved changes will be lost.\",\n modalDiscardBtnText = \"OK\",\n modalCancelBtnText = \"Cancel\",\n onDayClick,\n onSave,\n onCancel,\n onToggleDatePicker,\n required: dateRequired = false,\n defaultTimezoneAware = false,\n longDateFormat = false,\n defaultShowDatePicker = false,\n firstDayOfWeek = 0,\n selectedDays,\n selectionMode = \"custom\",\n menuClassName,\n targetClassName,\n icon,\n defaultLabelText = \"Set...\",\n targetTextClassName,\n targetIconClassName,\n backgroundElementClass,\n dateFormat: passedDateFormat,\n defaultMonth,\n daysToModify = [],\n weekends = [],\n weekendLabel = \"Weekend\",\n nonWorkingDaysOfWeek = [],\n nonWorkingDaysOfWeekLabel = \"Unavailable\",\n weekendIsSelectable = false,\n tooltipText,\n popperTooltipClassName,\n popperClassName,\n popperTooltipStyle,\n position,\n disableDaysBefore,\n}) => {\n const [timezoneAware, setTimezoneAware] = useState(defaultTimezoneAware);\n const localization = useLocalization();\n const dateFormat = passedDateFormat\n ? passedDateFormat\n : localization.dateFormat;\n\n const labelText = useMemo(() => {\n if (!selectedDays) {\n return defaultLabelText;\n } else {\n const endDate = timezoneAware\n ? moment.unix(selectedDays.to).local()\n : moment.unix(selectedDays.to).utc();\n\n const startDate = timezoneAware\n ? moment.unix(selectedDays.from).local()\n : moment.unix(selectedDays.from).utc();\n\n const formattedEndDate = formatDate(endDate, dateFormat, longDateFormat);\n const formattedStartDate = formatDate(\n startDate,\n dateFormat,\n longDateFormat\n );\n\n if (selectedDays.from === selectedDays.to) {\n return formattedEndDate;\n }\n\n return `${formattedStartDate} - ${formattedEndDate}`;\n }\n }, [\n selectedDays,\n dateFormat,\n timezoneAware,\n defaultLabelText,\n longDateFormat,\n ]);\n\n const modifiedDates = useMemo(() => {\n if (\n typeof selectedDays === \"object\" &&\n !!selectedDays.from &&\n !!selectedDays.to\n ) {\n if (timezoneAware) {\n return {\n from: moment.unix(selectedDays.from).toDate(),\n to: moment.unix(selectedDays.to).toDate(),\n };\n }\n const offsetFrom = moment.unix(selectedDays.from).utcOffset() * 60;\n const offsetTo = moment.unix(selectedDays.to).utcOffset() * 60;\n return {\n from: new Date((selectedDays.from - offsetFrom) * 1000),\n to: new Date((selectedDays.to - offsetTo) * 1000),\n };\n }\n }, [selectedDays, timezoneAware]);\n\n const handleModifiedSave = useCallback(\n (selectedDates) => {\n setTimezoneAware(false);\n if (typeof onSave === \"function\") {\n if (\n typeof selectedDates === \"object\" &&\n Object.prototype.hasOwnProperty.call(selectedDates, \"from\") &&\n Object.prototype.hasOwnProperty.call(selectedDates, \"to\")\n ) {\n onSave({\n from: getUtcTimestampFromDate(selectedDates.from),\n to: getUtcTimestampFromDate(selectedDates.to),\n });\n } else {\n onSave(undefined);\n }\n }\n },\n [onSave]\n );\n\n const getDefaultMonth = useCallback(() => {\n let date = new Date();\n\n if (typeof selectedDays === \"object\" && !!selectedDays.from) {\n date = timezoneAware\n ? new Date(selectedDays.from * 1000)\n : new Date(\n (selectedDays.from -\n moment.unix(selectedDays.from).utcOffset() * 60) *\n 1000\n );\n } else if (defaultMonth) {\n date = defaultMonth;\n }\n\n // forcing second day in month\n return new Date(date.getFullYear(), date.getMonth(), 2);\n }, [defaultMonth, selectedDays, timezoneAware]);\n\n const [month, setMonth] = useState(getDefaultMonth);\n\n const handleMonthChange = useCallback(\n (month) => {\n setMonth(month);\n },\n [setMonth]\n );\n\n const [newDates, setNewDates] = useState(modifiedDates);\n const [showDiscardModal, setShowDiscardModal] = useState(false);\n const [showDatePicker, setShowDatePicker] = useState(defaultShowDatePicker);\n\n const disabledSaveButton = useMemo(() => {\n return (\n modifiedDates?.from === newDates?.from &&\n modifiedDates?.to === newDates?.to\n );\n }, [modifiedDates, newDates]);\n\n useEffect(() => {\n setShowDatePicker(defaultShowDatePicker);\n }, [defaultShowDatePicker]);\n\n useEffect(() => {\n setNewDates(modifiedDates);\n }, [modifiedDates]);\n\n useEffect(() => {\n typeof onToggleDatePicker === \"function\" &&\n onToggleDatePicker(showDatePicker);\n }, [showDatePicker, onToggleDatePicker]);\n\n useEffect(() => {\n if (!showDatePicker) {\n setMonth(getDefaultMonth());\n }\n }, [showDatePicker, getDefaultMonth]);\n\n const handleSave = useCallback(() => {\n handleModifiedSave(newDates);\n setShowDatePicker(false);\n }, [newDates, handleModifiedSave]);\n\n const handleChange = useCallback(\n (dates) => {\n if (mode !== \"atomic\") {\n handleModifiedSave(dates);\n }\n setNewDates(dates);\n },\n [mode, handleModifiedSave]\n );\n\n const handleBeforeCloseMenu = useCallback(() => {\n let result = true;\n\n if ((modifiedDates && !newDates) || (!modifiedDates && newDates)) {\n result = false;\n }\n\n const selectedDaysFrom = modifiedDates?.from;\n const selectedDaysTo = modifiedDates?.to;\n const newDatesFrom = newDates?.from;\n const newDatesTo = newDates?.to;\n\n if (\n selectedDaysFrom &&\n newDatesFrom &&\n selectedDaysTo &&\n newDatesTo &&\n (moment(selectedDaysFrom).format(\"DD-MM-YYYY\") !==\n moment(newDatesFrom).format(\"DD-MM-YYYY\") ||\n moment(selectedDaysTo).format(\"DD-MM-YYYY\") !==\n moment(newDatesTo).format(\"DD-MM-YYYY\"))\n ) {\n result = false;\n }\n\n if (!result) {\n setShowDiscardModal(true);\n }\n\n return result;\n }, [modifiedDates, newDates]);\n\n const handleClose = useCallback(() => {\n if (mode !== \"atomic\" || handleBeforeCloseMenu()) {\n typeof onCancel === \"function\" && onCancel();\n setShowDatePicker(false);\n }\n }, [mode, onCancel, handleBeforeCloseMenu]);\n\n const handleCancel = useCallback(\n (event) => {\n event && event.preventDefault();\n return handleClose();\n },\n [handleClose]\n );\n\n const handleShowDatePicker = useCallback(() => {\n setShowDatePicker(!showDatePicker);\n }, [showDatePicker]);\n\n const handleCloseDiscardModal = useCallback(() => {\n setShowDiscardModal(false);\n }, []);\n\n const handleClear = useCallback(() => {\n if (!dateRequired) {\n setNewDates(undefined);\n if (mode === \"instant\") {\n handleModifiedSave(undefined);\n }\n }\n }, [mode, dateRequired, handleModifiedSave]);\n\n const handleSaveDiscardModal = useCallback(() => {\n setNewDates(modifiedDates);\n setShowDiscardModal(false);\n setShowDatePicker(false);\n }, [modifiedDates]);\n\n const modifiers = useMemo(() => {\n const userAvailabilities = daysToModify.filter(\n (data) => data.type === \"user_day_off\"\n );\n const globalDaysOff = daysToModify.filter(\n (data) => data.type === \"global_day_off\"\n );\n const selectableGlobalDaysOff = daysToModify.filter(\n (data) => data.type === \"selectable_global_day_off\"\n );\n return {\n userAvailability: (day: Date): boolean => {\n // construct new date because react-day-picker returns date with hours set\n const currentDay = new Date(\n day.getFullYear(),\n day.getMonth(),\n day.getDate()\n );\n return userAvailabilities.some((data) =>\n isDayInRange(currentDay, data)\n );\n },\n weekend: (day: Date): boolean => {\n return weekends.some((value) => day.getDay() === value);\n },\n nonWorkingDay: (day: Date): boolean => {\n // return true if day is weekend day\n if (weekends.some((value) => value === day.getDay())) {\n return true;\n }\n const nonWorkingDays = [...selectableGlobalDaysOff, ...globalDaysOff];\n const currentDay = new Date(\n day.getFullYear(),\n day.getMonth(),\n day.getDate()\n );\n return nonWorkingDays.some((data) => isDayInRange(currentDay, data));\n },\n day_disabled: (day: Date): boolean => {\n if (disableDaysBefore) {\n if (\n day.toJSON().slice(0, 10) < disableDaysBefore.toJSON().slice(0, 10)\n ) {\n return true;\n }\n }\n // return true if day is weekend day\n if (\n !weekendIsSelectable &&\n weekends.some((value) => value === day.getDay())\n ) {\n return true;\n }\n // construct new date because react-day-picker returns date with hours set\n const currentDay = new Date(\n day.getFullYear(),\n day.getMonth(),\n day.getDate()\n );\n return globalDaysOff.some((data) => isDayInRange(currentDay, data));\n },\n nonWorkingDaysOfWeek: {\n dayOfWeek: nonWorkingDaysOfWeek,\n },\n };\n }, [\n daysToModify,\n nonWorkingDaysOfWeek,\n weekends,\n disableDaysBefore,\n weekendIsSelectable,\n ]);\n\n const renderDay = useCallback(\n (props: DayProps): JSX.Element | null => {\n const titles: string[] = [];\n if (weekends.some((value) => props.date.getDay() === value)) {\n titles.push(weekendLabel);\n }\n\n if (nonWorkingDaysOfWeek.includes(props.date.getDay())) {\n titles.push(nonWorkingDaysOfWeekLabel);\n }\n\n // construct new date because react-day-picker returns date with hours set\n const currentDay = new Date(\n props.date.getFullYear(),\n props.date.getMonth(),\n props.date.getDate()\n );\n\n daysToModify.forEach((data) => {\n if (isDayInRange(currentDay, data)) {\n titles.push(data.title);\n }\n });\n const child = (\n <div className=\"c-DayPicker-Day-Number\">{props.date.getDate()}</div>\n );\n\n if (titles.length) {\n const title = (\n <div key={`title-wrapper-${props.date.getDate()}`}>\n {titles.map((title: string, index: number) => (\n <div key={`title-text-${index}`}>{title}</div>\n ))}\n </div>\n );\n\n return (\n <Tooltip\n title={title}\n popperTooltipClassName={popperTooltipClassName}\n popperTooltipStyle={popperTooltipStyle}\n >\n {child}\n </Tooltip>\n );\n }\n\n return child;\n },\n [\n weekends,\n nonWorkingDaysOfWeek,\n daysToModify,\n weekendLabel,\n nonWorkingDaysOfWeekLabel,\n popperTooltipClassName,\n popperTooltipStyle,\n ]\n );\n\n const renderDatePickerForm = useCallback((): JSX.Element => {\n return (\n <DatePickerForm\n onMonthChange={handleMonthChange}\n month={month}\n mode={mode}\n selectionMode={selectionMode}\n dateRequired={dateRequired}\n selectedDays={newDates}\n firstDayOfWeek={firstDayOfWeek}\n saveButtonText={saveButtonText}\n cancelButtonText={cancelButtonText}\n clearButtonText={clearButtonText}\n onDayClick={onDayClick}\n onSave={handleSave}\n onChange={handleChange}\n onCancel={handleCancel}\n onClear={handleClear}\n disabledSaveButton={disabledSaveButton}\n modifiers={modifiers}\n renderDay={renderDay}\n />\n );\n }, [\n handleMonthChange,\n month,\n mode,\n selectionMode,\n dateRequired,\n newDates,\n firstDayOfWeek,\n saveButtonText,\n cancelButtonText,\n clearButtonText,\n onDayClick,\n handleSave,\n handleChange,\n handleCancel,\n handleClear,\n disabledSaveButton,\n modifiers,\n renderDay,\n ]);\n\n const renderTargetEl = useMemo(() => {\n if (labelType === \"icon\" && icon) {\n return (\n <SelectDateTarget\n icon={icon}\n title={tooltipText}\n targetIconClassName={targetIconClassName}\n forceHideTooltip={showDatePicker}\n popperTooltipClassName={popperTooltipClassName}\n popperTooltipStyle={popperTooltipStyle}\n active={showDatePicker}\n />\n );\n }\n if (typeof labelType === \"function\") {\n return labelType(labelText);\n }\n return (\n <StyledSelectDateButton\n type=\"button\"\n className={classnames(\"date-picker-target\", targetClassName)}\n >\n <span className={targetTextClassName}>{labelText}</span>\n </StyledSelectDateButton>\n );\n }, [\n icon,\n labelText,\n labelType,\n popperTooltipClassName,\n popperTooltipStyle,\n showDatePicker,\n targetClassName,\n targetIconClassName,\n targetTextClassName,\n tooltipText,\n ]);\n\n return (\n <StyledSelectDate className=\"select-date\">\n {labelType !== \"inline\" ? (\n <Menu\n target={renderTargetEl}\n open={showDatePicker}\n onOpen={handleShowDatePicker}\n onBeforeClose={handleBeforeCloseMenu}\n onClose={handleClose}\n position={position}\n menuClassName={menuClassName}\n popperClassName={popperClassName}\n backgroundElementClass={backgroundElementClass}\n >\n {renderDatePickerForm()}\n </Menu>\n ) : (\n renderDatePickerForm()\n )}\n {mode === \"atomic\" ? (\n <StyledConfirmDialog\n className=\"modal-select-date\"\n open={showDiscardModal}\n onCancel={handleCloseDiscardModal}\n onConfirm={handleSaveDiscardModal}\n dialogTitle={modalHeaderText}\n dialogContent={modalDiscardMessage}\n cancelBtnText={modalCancelBtnText}\n confirmBtnText={modalDiscardBtnText}\n />\n ) : null}\n </StyledSelectDate>\n );\n};\n\nSelectDate.displayName = \"SelectDate\";\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SelectDate.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_momentTimezone","_SelectDateTarget","_Styles","_dateUtils","_DatePicker","obj","__esModule","default","_getRequireWildcardCache","e","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","isDayInRange","day","data","fromMoment","moment","unix","from","utc","toMoment","to","repeating","year","month","date","isSameOrAfter","isSameOrBefore","SelectDate","exports","_ref","_ref$changeMode","changeMode","mode","_ref$trigger","trigger","labelType","_ref$saveButtonText","saveButtonText","_ref$cancelButtonText","cancelButtonText","_ref$clearButtonText","clearButtonText","_ref$modalHeaderText","modalHeaderText","_ref$modalDiscardMess","modalDiscardMessage","_ref$modalDiscardBtnT","modalDiscardBtnText","_ref$modalCancelBtnTe","modalCancelBtnText","onDayClick","onSave","onCancel","onToggleDatePicker","_ref$required","required","dateRequired","_ref$longDateFormat","longDateFormat","_ref$defaultShowDateP","defaultShowDatePicker","_ref$firstDayOfWeek","firstDayOfWeek","selectedDays","_ref$selectionMode","selectionMode","menuClassName","targetClassName","icon","_ref$defaultLabelText","defaultLabelText","targetTextClassName","targetIconClassName","backgroundElementClass","dateFormat","defaultMonth","_ref$daysToModify","daysToModify","_ref$weekends","weekends","_ref$weekendLabel","weekendLabel","_ref$nonWorkingDaysOf","nonWorkingDaysOfWeek","_ref$nonWorkingDaysOf2","nonWorkingDaysOfWeekLabel","_ref$weekendIsSelecta","weekendIsSelectable","tooltipText","popperTooltipClassName","popperClassName","popperTooltipStyle","position","disableDaysBefore","enableYearPicker","disableAnimations","disabledDaysAfter","onChange","labelText","useMemo","formattedEndDate","formatDate","formattedStartDate","isSame","concat","modifiers","userAvailabilities","filter","type","globalDaysOff","selectableGlobalDaysOff","userAvailability","matchedData","find","matched","title","weekend","isWeekend","includes","nonWorkingDay","nonWorkingDays","isNonWorkingDay","day_disabled","globalDayOff","renderTargetEl","createElement","SelectDateTarget","StyledSelectDateButton","className","classnames","StyledSelectDate","DatePicker","target","instant","selected","saveLabel","cancelLabel","clearLabel","onClose","disabledDaysBefore","disabled","open","onCalendarToggle","enableConfirmModal","disableYearPicker","showControls","displayName"],"sources":["../../../../src/components/SelectDate/SelectDate.tsx"],"sourcesContent":["import React, { ElementType, FC, useMemo, CSSProperties } from \"react\";\n\nimport { Placement } from \"@popperjs/core\";\nimport classnames from \"classnames\";\nimport { Moment } from \"moment\";\nimport moment from \"moment-timezone\";\n\nimport { SelectDateTarget } from \"./SelectDateTarget\";\nimport { StyledSelectDate, StyledSelectDateButton } from \"./Styles\";\nimport { DaysToModify } from \"./types\";\nimport { formatDate } from \"../../utils/dateUtils\";\nimport {\n ChangeMode,\n DatePicker,\n TimestampDateRange,\n toMoment,\n} from \"../DatePicker/DatePicker\";\n\ntype TriggerStringType = \"text\" | \"icon\" | \"inline\";\ntype TriggerFunctionType = (text: string) => JSX.Element;\n\nconst isDayInRange = (day: Moment, data: DaysToModify): boolean => {\n const fromMoment = moment.unix(data.from).utc();\n const toMoment = moment.unix(data.to).utc();\n\n if (data.repeating) {\n const year = day.year();\n const from = moment.utc({\n year,\n month: fromMoment.month(),\n date: fromMoment.date(),\n });\n const to = moment.utc({\n year,\n month: toMoment.month(),\n date: toMoment.date(),\n });\n\n return day.isSameOrAfter(from, \"day\") && day.isSameOrBefore(to, \"day\");\n }\n\n return (\n day.isSameOrAfter(fromMoment, \"day\") && day.isSameOrBefore(toMoment, \"day\")\n );\n};\n\nexport interface ISelectDate {\n /** Change mode - can be atomic and instant */\n changeMode?: \"atomic\" | \"instant\";\n /** Trigger - can be text, icon, inline, or custom render function */\n trigger?: TriggerStringType | TriggerFunctionType;\n /** Save button text */\n saveButtonText?: string;\n /** Cancel button text */\n cancelButtonText?: string;\n /** Clear button text */\n clearButtonText?: string;\n /** Modal header text */\n modalHeaderText?: string;\n /** Modal cancel button text */\n modalCancelBtnText?: string;\n /** Modal discard button text */\n modalDiscardBtnText?: string;\n /** Modal discard message text */\n modalDiscardMessage?: string;\n /** Tooltip text */\n tooltipText?: string;\n /** Called when day is clicked */\n onDayClick?: (day: Moment, modifiers: string[]) => void;\n /** Save changes callback */\n onSave?: (dates?: TimestampDateRange) => void;\n /** Changing dates callback */\n onChange?: (dates?: TimestampDateRange) => void;\n /** On cancel closes datepicker or opens discard modal in atomic mode */\n onCancel?: () => void;\n /** Clear dates when they are not required */\n onClear?: () => void;\n /** Use this callback to get is picker visible */\n onToggleDatePicker?: (value: boolean) => void;\n /** Set selected day or days */\n selectedDays?: TimestampDateRange;\n /** Set month */\n defaultMonth?: Moment;\n /** Set selection range */\n selectionMode?: ChangeMode;\n /** Set is date required */\n required?: boolean;\n /** Set default show on date picker (only for text and icon mode) */\n defaultShowDatePicker?: boolean;\n /** Long date format (Always show year) */\n longDateFormat?: boolean;\n /** Set first day of week */\n firstDayOfWeek?: 0 | 1 | 2 | 3 | 4 | 5 | 6;\n /** One of icon types */\n icon?: ElementType;\n /** Default Label text */\n defaultLabelText?: string;\n /** Date format */\n dateFormat?: string;\n /** Menu classes */\n menuClassName?: string;\n /** Target element classes */\n targetClassName?: string;\n /** Target element text classes */\n targetTextClassName?: string;\n /** Target element icon classes */\n targetIconClassName?: string;\n /** Background style for clickable element after the menu is open (opacity, color, etc...) */\n backgroundElementClass?: string;\n /** Days to modify */\n daysToModify?: DaysToModify[];\n /** Array of weekend days */\n weekends?: number[];\n /** Weekend label */\n weekendLabel?: string;\n /** Array of nonworking week days */\n nonWorkingDaysOfWeek?: number[];\n /** Nonworking week days label */\n nonWorkingDaysOfWeekLabel?: string;\n /** Allows weekends to be selected */\n weekendIsSelectable?: boolean;\n /** Popper Tooltip style */\n popperTooltipStyle?: CSSProperties;\n /** Popper Tooltip class name*/\n popperTooltipClassName?: string;\n /** Popper class name*/\n popperClassName?: string;\n /** Position of selectDate menu */\n position?: Placement;\n /** Disable days before specified date */\n disableDaysBefore?: Moment;\n /** Disable days after specified date */\n disabledDaysAfter?: Moment;\n /** Enable year selector */\n enableYearPicker?: boolean;\n /** Disable aniamtions */\n disableAnimations?: boolean;\n}\n\nexport const SelectDate: FC<ISelectDate> = ({\n changeMode: mode = \"instant\",\n trigger: labelType = \"text\",\n saveButtonText = \"Save\",\n cancelButtonText = \"Cancel\",\n clearButtonText = \"Clear\",\n modalHeaderText = \"Discard changes?\",\n modalDiscardMessage = \"All unsaved changes will be lost.\",\n modalDiscardBtnText = \"OK\",\n modalCancelBtnText = \"Cancel\",\n onDayClick,\n onSave,\n onCancel,\n onToggleDatePicker,\n required: dateRequired = false,\n longDateFormat = false,\n defaultShowDatePicker = false,\n firstDayOfWeek = 0,\n selectedDays,\n selectionMode = \"custom\",\n menuClassName,\n targetClassName,\n icon,\n defaultLabelText = \"Set...\",\n targetTextClassName,\n targetIconClassName,\n backgroundElementClass,\n dateFormat,\n defaultMonth,\n daysToModify = [],\n weekends = [],\n weekendLabel = \"Weekend\",\n nonWorkingDaysOfWeek = [],\n nonWorkingDaysOfWeekLabel = \"Unavailable\",\n weekendIsSelectable = false,\n tooltipText,\n popperTooltipClassName,\n popperClassName,\n popperTooltipStyle,\n position,\n disableDaysBefore,\n enableYearPicker,\n disableAnimations,\n disabledDaysAfter,\n onChange,\n}) => {\n const labelText = useMemo(() => {\n if (!selectedDays) {\n return defaultLabelText;\n } else if (!selectedDays.from && !selectedDays.to) {\n return defaultLabelText;\n } else {\n const formattedEndDate = selectedDays.to\n ? formatDate(toMoment(selectedDays.to), dateFormat, longDateFormat)\n : \"\";\n const formattedStartDate = selectedDays.from\n ? formatDate(toMoment(selectedDays?.from), dateFormat, longDateFormat)\n : \"\";\n\n if (\n selectedDays.to &&\n selectedDays.from &&\n toMoment(selectedDays.from).isSame(toMoment(selectedDays.to))\n ) {\n return formattedEndDate;\n }\n\n if (!selectedDays.to && selectedDays.from) {\n return formattedStartDate;\n }\n\n return `${formattedStartDate} - ${formattedEndDate}`;\n }\n }, [selectedDays, dateFormat, defaultLabelText, longDateFormat]);\n\n const modifiers = useMemo(() => {\n const userAvailabilities = daysToModify.filter(\n (data) => data.type === \"user_day_off\"\n );\n const globalDaysOff = daysToModify.filter(\n (data) => data.type === \"global_day_off\"\n );\n const selectableGlobalDaysOff = daysToModify.filter(\n (data) => data.type === \"selectable_global_day_off\"\n );\n\n return {\n userAvailability: (day: Moment) => {\n const matchedData = userAvailabilities.find((data) =>\n isDayInRange(day, data)\n );\n return {\n matched: !!matchedData,\n title: matchedData ? matchedData.title : null,\n };\n },\n weekend: (day: Moment) => {\n const isWeekend = weekends.includes(day.day());\n return {\n matched: isWeekend,\n title: isWeekend ? weekendLabel : null,\n };\n },\n nonWorkingDay: (day: Moment) => {\n if (weekends.includes(day.day())) {\n return { matched: true, title: \"\" };\n }\n const nonWorkingDays = [...selectableGlobalDaysOff, ...globalDaysOff];\n\n const matchedData = nonWorkingDays.find((data) =>\n isDayInRange(day, data)\n );\n return {\n matched: !!matchedData,\n title: matchedData ? matchedData.title : null,\n };\n },\n nonWorkingDaysOfWeek: (day: Moment) => {\n const isNonWorkingDay = nonWorkingDaysOfWeek.includes(day.day());\n return {\n matched: isNonWorkingDay,\n title: isNonWorkingDay ? nonWorkingDaysOfWeekLabel : null,\n };\n },\n day_disabled: (day: Moment) => {\n const globalDayOff = globalDaysOff.find((data) =>\n isDayInRange(day, data)\n );\n\n return {\n matched: !!globalDayOff,\n title: null,\n };\n },\n };\n }, [\n daysToModify,\n nonWorkingDaysOfWeek,\n nonWorkingDaysOfWeekLabel,\n weekendLabel,\n weekends,\n ]);\n\n const renderTargetEl = useMemo(() => {\n if (labelType === \"icon\" && icon) {\n return (\n <SelectDateTarget\n icon={icon}\n title={tooltipText}\n targetIconClassName={targetIconClassName}\n popperTooltipClassName={popperTooltipClassName}\n popperTooltipStyle={popperTooltipStyle}\n />\n );\n }\n if (typeof labelType === \"function\") {\n return labelType(labelText);\n }\n return (\n <StyledSelectDateButton\n type=\"button\"\n className={classnames(\"date-picker-target\", targetClassName)}\n >\n <span className={targetTextClassName}>{labelText}</span>\n </StyledSelectDateButton>\n );\n }, [\n icon,\n labelText,\n labelType,\n popperTooltipClassName,\n popperTooltipStyle,\n targetClassName,\n targetIconClassName,\n targetTextClassName,\n tooltipText,\n ]);\n\n return (\n <StyledSelectDate className=\"select-date\">\n {labelType !== \"inline\" ? (\n <DatePicker\n target={renderTargetEl}\n position={position}\n menuClassName={menuClassName}\n popperClassName={popperClassName}\n month={defaultMonth}\n instant={mode === \"instant\"}\n mode={selectionMode}\n required={dateRequired}\n selected={selectedDays}\n firstDayOfWeek={firstDayOfWeek}\n saveLabel={saveButtonText}\n cancelLabel={cancelButtonText}\n clearLabel={clearButtonText}\n onSave={onSave}\n onChange={onChange}\n onClose={onCancel}\n modifiers={modifiers}\n modalHeaderText={modalHeaderText}\n modalDiscardMessage={modalDiscardMessage}\n modalDiscardBtnText={modalDiscardBtnText}\n modalCancelBtnText={modalCancelBtnText}\n disabledDaysBefore={disableDaysBefore}\n disabledDaysAfter={disabledDaysAfter}\n backgroundElementClass={backgroundElementClass}\n disabled={weekendIsSelectable ? [] : weekends}\n popperTooltipClassName={popperTooltipClassName}\n popperTooltipStyle={popperTooltipStyle}\n open={defaultShowDatePicker}\n onCalendarToggle={onToggleDatePicker}\n onDayClick={onDayClick}\n enableConfirmModal={mode === \"atomic\" && !dateRequired}\n disableYearPicker={!enableYearPicker}\n disableAnimations={disableAnimations}\n showControls\n />\n ) : (\n <DatePicker\n month={defaultMonth}\n instant={mode === \"instant\"}\n mode={selectionMode}\n required={dateRequired}\n selected={selectedDays}\n firstDayOfWeek={firstDayOfWeek}\n saveLabel={saveButtonText}\n cancelLabel={cancelButtonText}\n clearLabel={clearButtonText}\n disabledDaysBefore={disableDaysBefore}\n disabledDaysAfter={disabledDaysAfter}\n popperTooltipClassName={popperTooltipClassName}\n popperTooltipStyle={popperTooltipStyle}\n disabled={weekendIsSelectable ? [] : weekends}\n onSave={onSave}\n onChange={onChange}\n modifiers={modifiers}\n onDayClick={onDayClick}\n disableYearPicker={!enableYearPicker}\n disableAnimations={disableAnimations}\n showControls\n open\n />\n )}\n </StyledSelectDate>\n );\n};\n\nSelectDate.displayName = \"SelectDate\";\n"],"mappings":"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"}
|
|
@@ -14,15 +14,4 @@ Object.keys(_SelectDate).forEach(function (key) {
|
|
|
14
14
|
}
|
|
15
15
|
});
|
|
16
16
|
});
|
|
17
|
-
var _SelectDateV = require("./SelectDateV2");
|
|
18
|
-
Object.keys(_SelectDateV).forEach(function (key) {
|
|
19
|
-
if (key === "default" || key === "__esModule") return;
|
|
20
|
-
if (key in exports && exports[key] === _SelectDateV[key]) return;
|
|
21
|
-
Object.defineProperty(exports, key, {
|
|
22
|
-
enumerable: true,
|
|
23
|
-
get: function get() {
|
|
24
|
-
return _SelectDateV[key];
|
|
25
|
-
}
|
|
26
|
-
});
|
|
27
|
-
});
|
|
28
17
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_SelectDate","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get"
|
|
1
|
+
{"version":3,"file":"index.js","names":["_SelectDate","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get"],"sources":["../../../../src/components/SelectDate/index.ts"],"sourcesContent":["export * from \"./SelectDate\";\n"],"mappings":";;;;;AAAA,IAAAA,WAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,WAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,WAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,IAAA;MAAA,OAAAT,WAAA,CAAAK,GAAA;IAAA;EAAA;AAAA"}
|
|
@@ -6,9 +6,9 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.DateStepper = void 0;
|
|
7
7
|
var _react = _interopRequireWildcard(require("react"));
|
|
8
8
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
9
|
-
var
|
|
9
|
+
var _momentTimezone = _interopRequireDefault(require("moment-timezone"));
|
|
10
10
|
var _Styles = require("./Styles");
|
|
11
|
-
var _DatePicker = require("../../DatePicker");
|
|
11
|
+
var _DatePicker = require("../../DatePicker/DatePicker");
|
|
12
12
|
var _Icons = require("../../Icons");
|
|
13
13
|
var _ArrowLeft = _interopRequireDefault(require("../../Icons/collection/ArrowLeft"));
|
|
14
14
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
@@ -38,32 +38,24 @@ var DateStepper = exports.DateStepper = function DateStepper(_ref) {
|
|
|
38
38
|
className = _ref.className,
|
|
39
39
|
_ref$period = _ref.period,
|
|
40
40
|
period = _ref$period === void 0 ? "week" : _ref$period,
|
|
41
|
-
datePickerClass = _ref.datePickerClass,
|
|
42
41
|
_ref$withDatePicker = _ref.withDatePicker,
|
|
43
42
|
withDatePicker = _ref$withDatePicker === void 0 ? true : _ref$withDatePicker,
|
|
44
43
|
_ref$defaultMonth = _ref.defaultMonth,
|
|
45
|
-
defaultMonth = _ref$defaultMonth === void 0 ?
|
|
46
|
-
|
|
44
|
+
defaultMonth = _ref$defaultMonth === void 0 ? (0, _momentTimezone.default)() : _ref$defaultMonth,
|
|
45
|
+
enableYearPicker = _ref.enableYearPicker,
|
|
47
46
|
_ref$position = _ref.position,
|
|
48
|
-
position = _ref$position === void 0 ? "bottom" : _ref$position
|
|
49
|
-
|
|
47
|
+
position = _ref$position === void 0 ? "bottom" : _ref$position,
|
|
48
|
+
popperClassName = _ref.popperClassName;
|
|
49
|
+
var _useState = (0, _react.useState)(_momentTimezone.default.utc(from)),
|
|
50
50
|
_useState2 = _slicedToArray(_useState, 2),
|
|
51
51
|
fromDate = _useState2[0],
|
|
52
52
|
setFromDate = _useState2[1];
|
|
53
|
-
var _useState3 = (0, _react.useState)(
|
|
53
|
+
var _useState3 = (0, _react.useState)(_momentTimezone.default.utc(to)),
|
|
54
54
|
_useState4 = _slicedToArray(_useState3, 2),
|
|
55
55
|
toDate = _useState4[0],
|
|
56
56
|
setToDate = _useState4[1];
|
|
57
|
-
var _useState5 = (0, _react.useState)(false),
|
|
58
|
-
_useState6 = _slicedToArray(_useState5, 2),
|
|
59
|
-
showDatePicker = _useState6[0],
|
|
60
|
-
setShowDatePicker = _useState6[1];
|
|
61
|
-
var _useState7 = (0, _react.useState)(defaultMonth),
|
|
62
|
-
_useState8 = _slicedToArray(_useState7, 2),
|
|
63
|
-
month = _useState8[0],
|
|
64
|
-
setMonth = _useState8[1];
|
|
65
57
|
var getDatesByPeriod = (0, _react.useCallback)(function (interval) {
|
|
66
|
-
var date = fromDate ? fromDate : (0,
|
|
58
|
+
var date = fromDate ? fromDate : (0, _momentTimezone.default)();
|
|
67
59
|
if (step === "daily") {
|
|
68
60
|
date.add(interval, "days");
|
|
69
61
|
return [date, date.clone()];
|
|
@@ -84,73 +76,67 @@ var DateStepper = exports.DateStepper = function DateStepper(_ref) {
|
|
|
84
76
|
}, [fromDate, period, step]);
|
|
85
77
|
var getDateFormatted = (0, _react.useMemo)(function () {
|
|
86
78
|
if (formatCallback) {
|
|
87
|
-
return formatCallback(fromDate
|
|
79
|
+
return formatCallback(fromDate, toDate);
|
|
88
80
|
}
|
|
89
|
-
var actualYear = (0,
|
|
81
|
+
var actualYear = (0, _momentTimezone.default)().year();
|
|
90
82
|
var showWeekOrCustomDateFormat = function showWeekOrCustomDateFormat(start, end) {
|
|
91
83
|
if (start.year() === actualYear && end.year() === actualYear) {
|
|
92
|
-
return start.format("MMM DD") + " - " + end.format("MMM DD");
|
|
84
|
+
return start.utc().format("MMM DD") + " - " + end.utc().format("MMM DD");
|
|
93
85
|
} else {
|
|
94
|
-
return start.format("MMM DD YYYY") + " - " + end.format("MMM DD YYYY");
|
|
86
|
+
return start.utc().format("MMM DD YYYY") + " - " + end.utc().format("MMM DD YYYY");
|
|
95
87
|
}
|
|
96
88
|
};
|
|
97
89
|
if (step === "daily") {
|
|
98
90
|
if (fromDate.year() === actualYear) {
|
|
99
|
-
return fromDate.format("MMM DD");
|
|
91
|
+
return fromDate.utc().format("MMM DD");
|
|
100
92
|
}
|
|
101
|
-
return fromDate.format("MMM DD YYYY");
|
|
93
|
+
return fromDate.utc().format("MMM DD YYYY");
|
|
102
94
|
} else if (step === "weekly") {
|
|
103
|
-
var startDate = fromDate.clone().startOf(period);
|
|
104
|
-
var endDate = startDate.clone().endOf(period);
|
|
95
|
+
var startDate = fromDate.clone().utc().startOf(period);
|
|
96
|
+
var endDate = startDate.clone().utc().endOf(period);
|
|
105
97
|
return showWeekOrCustomDateFormat(startDate, endDate);
|
|
106
98
|
} else if (step === "monthly") {
|
|
107
|
-
return fromDate.format("MMM YYYY");
|
|
99
|
+
return fromDate.utc().format("MMM YYYY");
|
|
108
100
|
} else if (step === "quarterly") {
|
|
109
|
-
return "Q".concat(fromDate.quarter(), "/").concat(fromDate.format("YYYY"));
|
|
101
|
+
return "Q".concat(fromDate.utc().quarter(), "/").concat(fromDate.utc().format("YYYY"));
|
|
110
102
|
} else if (step === "yearly") {
|
|
111
|
-
return fromDate.format("YYYY");
|
|
112
|
-
} else if (step === "
|
|
103
|
+
return fromDate.utc().format("YYYY");
|
|
104
|
+
} else if (step === "range") {
|
|
113
105
|
return showWeekOrCustomDateFormat(fromDate, toDate);
|
|
114
106
|
}
|
|
115
107
|
return "";
|
|
116
|
-
}, [fromDate,
|
|
117
|
-
var
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
setFromDate((0, _moment.default)(newFrom));
|
|
123
|
-
setToDate((0, _moment.default)(newTo));
|
|
124
|
-
if (onChange) {
|
|
125
|
-
onChange(newFrom.toDate(), newTo.toDate());
|
|
126
|
-
}
|
|
127
|
-
}, [onChange, getDatesByPeriod]);
|
|
108
|
+
}, [fromDate, toDate, step, formatCallback, period]);
|
|
109
|
+
var datePickerMode = (0, _react.useMemo)(function () {
|
|
110
|
+
if (step === "range") return "custom";
|
|
111
|
+
if (step === "yearly") return "custom";
|
|
112
|
+
return step;
|
|
113
|
+
}, [step]);
|
|
128
114
|
var onDatePickerChange = (0, _react.useCallback)(function (dates) {
|
|
129
|
-
var fromDateTemp = dates === null || dates === void 0 ? void 0 : dates.from;
|
|
130
|
-
var toDateTemp = dates === null || dates === void 0 ? void 0 : dates.to;
|
|
131
|
-
setFromDate(
|
|
132
|
-
setToDate(
|
|
133
|
-
if (onChange && fromDateTemp
|
|
134
|
-
onChange(fromDateTemp, toDateTemp);
|
|
115
|
+
var fromDateTemp = _momentTimezone.default.utc(Number(dates === null || dates === void 0 ? void 0 : dates.from) * 1000);
|
|
116
|
+
var toDateTemp = _momentTimezone.default.utc(Number(dates === null || dates === void 0 ? void 0 : dates.to) * 1000);
|
|
117
|
+
setFromDate(fromDateTemp);
|
|
118
|
+
setToDate(toDateTemp);
|
|
119
|
+
if (onChange && _momentTimezone.default.isMoment(fromDateTemp) && _momentTimezone.default.isMoment(toDateTemp)) {
|
|
120
|
+
onChange(fromDateTemp.toDate(), toDateTemp.toDate());
|
|
135
121
|
}
|
|
136
122
|
}, [onChange, setFromDate, setToDate]);
|
|
137
123
|
var isAfterMaxDate = (0, _react.useMemo)(function () {
|
|
138
|
-
return maxValue
|
|
124
|
+
return _momentTimezone.default.isMoment(maxValue) && (0, _momentTimezone.default)(_momentTimezone.default.utc(maxValue).format("YYYY-MM-DD")).isSameOrBefore(toDate.utc().format("YYYY-MM-DD"));
|
|
139
125
|
}, [maxValue, toDate]);
|
|
140
126
|
var isBeforeMinDate = (0, _react.useMemo)(function () {
|
|
141
|
-
return minValue
|
|
127
|
+
return _momentTimezone.default.isMoment(minValue) && _momentTimezone.default.utc(_momentTimezone.default.utc(minValue).format("YYYY-MM-DD")).isSameOrAfter(toDate.utc().format("YYYY-MM-DD"));
|
|
142
128
|
}, [minValue, toDate]);
|
|
143
129
|
(0, _react.useEffect)(function () {
|
|
144
130
|
if (isBeforeMinDate) {
|
|
145
131
|
if (step === "daily") {
|
|
146
|
-
setFromDate(
|
|
147
|
-
setToDate(
|
|
132
|
+
setFromDate(_momentTimezone.default.utc(minValue));
|
|
133
|
+
setToDate(_momentTimezone.default.utc(minValue));
|
|
148
134
|
}
|
|
149
135
|
}
|
|
150
136
|
if (isAfterMaxDate) {
|
|
151
137
|
if (step === "daily") {
|
|
152
|
-
setFromDate(
|
|
153
|
-
setToDate(
|
|
138
|
+
setFromDate(_momentTimezone.default.utc(maxValue));
|
|
139
|
+
setToDate(_momentTimezone.default.utc(maxValue));
|
|
154
140
|
}
|
|
155
141
|
}
|
|
156
142
|
}, [step, minValue, maxValue, isBeforeMinDate, isAfterMaxDate]);
|
|
@@ -158,41 +144,45 @@ var DateStepper = exports.DateStepper = function DateStepper(_ref) {
|
|
|
158
144
|
if (isAfterMaxDate) {
|
|
159
145
|
return;
|
|
160
146
|
}
|
|
161
|
-
|
|
147
|
+
var _getDatesByPeriod = getDatesByPeriod(1),
|
|
148
|
+
_getDatesByPeriod2 = _slicedToArray(_getDatesByPeriod, 2),
|
|
149
|
+
newFrom = _getDatesByPeriod2[0],
|
|
150
|
+
newTo = _getDatesByPeriod2[1];
|
|
151
|
+
setFromDate(_momentTimezone.default.utc(newFrom));
|
|
152
|
+
setToDate(_momentTimezone.default.utc(newTo));
|
|
153
|
+
if (onChange) {
|
|
154
|
+
onChange(_momentTimezone.default.utc(newFrom), _momentTimezone.default.utc(newTo));
|
|
155
|
+
}
|
|
162
156
|
if (onForward) {
|
|
163
|
-
onForward(
|
|
157
|
+
onForward(_momentTimezone.default.utc(newFrom).toDate(), _momentTimezone.default.utc(newTo).toDate());
|
|
164
158
|
}
|
|
165
|
-
}, [isAfterMaxDate,
|
|
159
|
+
}, [isAfterMaxDate, getDatesByPeriod, onChange, onForward]);
|
|
166
160
|
var onLeftClickHandler = (0, _react.useCallback)(function () {
|
|
167
161
|
if (isBeforeMinDate) {
|
|
168
162
|
return;
|
|
169
163
|
}
|
|
170
|
-
|
|
164
|
+
var _getDatesByPeriod3 = getDatesByPeriod(-1),
|
|
165
|
+
_getDatesByPeriod4 = _slicedToArray(_getDatesByPeriod3, 2),
|
|
166
|
+
newFrom = _getDatesByPeriod4[0],
|
|
167
|
+
newTo = _getDatesByPeriod4[1];
|
|
168
|
+
setFromDate(_momentTimezone.default.utc(newFrom));
|
|
169
|
+
setToDate(_momentTimezone.default.utc(newTo));
|
|
170
|
+
if (onChange) {
|
|
171
|
+
onChange(_momentTimezone.default.utc(newFrom), _momentTimezone.default.utc(newTo));
|
|
172
|
+
}
|
|
171
173
|
if (onBack) {
|
|
172
|
-
onBack(
|
|
174
|
+
onBack(_momentTimezone.default.utc(newFrom).toDate(), _momentTimezone.default.utc(newTo).toDate());
|
|
173
175
|
}
|
|
174
|
-
}, [isBeforeMinDate,
|
|
176
|
+
}, [isBeforeMinDate, getDatesByPeriod, onChange, onBack]);
|
|
175
177
|
var renderLeftRightButtons = (0, _react.useMemo)(function () {
|
|
176
|
-
return step !== "
|
|
178
|
+
return step !== "range";
|
|
177
179
|
}, [step]);
|
|
178
|
-
var handleShow = (0, _react.useCallback)(function () {
|
|
179
|
-
setShowDatePicker(!showDatePicker);
|
|
180
|
-
if (fromDate) {
|
|
181
|
-
setMonth(fromDate.toDate());
|
|
182
|
-
}
|
|
183
|
-
}, [setShowDatePicker, showDatePicker, fromDate]);
|
|
184
|
-
var closeMenu = (0, _react.useCallback)(function () {
|
|
185
|
-
setShowDatePicker(false);
|
|
186
|
-
}, []);
|
|
187
|
-
var onMonthChange = (0, _react.useCallback)(function (m) {
|
|
188
|
-
setMonth(m);
|
|
189
|
-
}, [setMonth]);
|
|
190
180
|
(0, _react.useEffect)(function () {
|
|
191
|
-
setFromDate(
|
|
192
|
-
setToDate(
|
|
181
|
+
setFromDate(_momentTimezone.default.utc(from));
|
|
182
|
+
setToDate(_momentTimezone.default.utc(to));
|
|
193
183
|
}, [from, to]);
|
|
194
184
|
var dateStepperWidth = function dateStepperWidth(fromDay, toDay, range) {
|
|
195
|
-
if (fromDay.year() !==
|
|
185
|
+
if (fromDay.utc().year() !== _momentTimezone.default.utc().year() || toDay.utc().year() !== _momentTimezone.default.utc().year()) {
|
|
196
186
|
switch (range) {
|
|
197
187
|
case "daily":
|
|
198
188
|
case "monthly":
|
|
@@ -222,18 +212,24 @@ var DateStepper = exports.DateStepper = function DateStepper(_ref) {
|
|
|
222
212
|
};
|
|
223
213
|
};
|
|
224
214
|
var isDisabled = (0, _react.useCallback)(function (day) {
|
|
225
|
-
var dayFormat =
|
|
226
|
-
var isBefore = maxValue
|
|
227
|
-
var isAfter = minValue
|
|
215
|
+
var dayFormat = _momentTimezone.default.utc(day).format("YYYY-MM-DD");
|
|
216
|
+
var isBefore = _momentTimezone.default.isMoment(maxValue) && (0, _momentTimezone.default)(_momentTimezone.default.utc(maxValue).format("YYYY-MM-DD")).isBefore(dayFormat);
|
|
217
|
+
var isAfter = _momentTimezone.default.isMoment(minValue) && (0, _momentTimezone.default)(_momentTimezone.default.utc(minValue).format("YYYY-MM-DD")).isAfter(dayFormat);
|
|
228
218
|
return isBefore || isAfter;
|
|
229
219
|
}, [maxValue, minValue]);
|
|
230
220
|
var modifiers = (0, _react.useMemo)(function () {
|
|
231
221
|
return {
|
|
232
|
-
|
|
233
|
-
return
|
|
222
|
+
disabled: function disabled(day) {
|
|
223
|
+
return {
|
|
224
|
+
matched: isDisabled(day),
|
|
225
|
+
title: null
|
|
226
|
+
};
|
|
234
227
|
},
|
|
235
228
|
nonWorkingDay: function nonWorkingDay(day) {
|
|
236
|
-
return
|
|
229
|
+
return {
|
|
230
|
+
matched: isDisabled(day),
|
|
231
|
+
title: null
|
|
232
|
+
};
|
|
237
233
|
}
|
|
238
234
|
};
|
|
239
235
|
}, [isDisabled]);
|
|
@@ -246,32 +242,30 @@ var DateStepper = exports.DateStepper = function DateStepper(_ref) {
|
|
|
246
242
|
disabled: isBeforeMinDate
|
|
247
243
|
}, /*#__PURE__*/_react.default.createElement(_ArrowLeft.default, null)) : null, /*#__PURE__*/_react.default.createElement(_Styles.StyledDiv, {
|
|
248
244
|
$isTargetable: step === "yearly" || !withDatePicker,
|
|
249
|
-
$isRounded: step === "
|
|
245
|
+
$isRounded: step === "range",
|
|
250
246
|
style: dateStepperWidth(fromDate, toDate, step)
|
|
251
|
-
}, withDatePicker ? /*#__PURE__*/_react.default.createElement(
|
|
247
|
+
}, withDatePicker && step !== "yearly" ? /*#__PURE__*/_react.default.createElement(_DatePicker.DatePicker, {
|
|
248
|
+
month: defaultMonth,
|
|
252
249
|
target: /*#__PURE__*/_react.default.createElement(_Styles.StyledButton, {
|
|
253
250
|
type: "button"
|
|
254
|
-
},
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
position: position
|
|
260
|
-
}, /*#__PURE__*/_react.default.createElement(_DatePicker.DatePicker, {
|
|
261
|
-
month: month,
|
|
262
|
-
selectionMode: step,
|
|
263
|
-
className: datePickerClass,
|
|
264
|
-
selectedDays: {
|
|
265
|
-
from: fromDate.toDate(),
|
|
266
|
-
to: toDate.toDate()
|
|
251
|
+
}, getDateFormatted),
|
|
252
|
+
mode: datePickerMode,
|
|
253
|
+
selected: {
|
|
254
|
+
from: _momentTimezone.default.utc(fromDate).unix(),
|
|
255
|
+
to: _momentTimezone.default.utc(toDate).unix()
|
|
267
256
|
},
|
|
268
257
|
onChange: onDatePickerChange,
|
|
269
|
-
onMonthChange: onMonthChange,
|
|
270
258
|
firstDayOfWeek: period === "week" ? 0 : 1,
|
|
271
259
|
modifiers: modifiers,
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
260
|
+
disabledDaysAfter: maxValue,
|
|
261
|
+
disabledDaysBefore: minValue,
|
|
262
|
+
disableYearPicker: !enableYearPicker,
|
|
263
|
+
popperClassName: popperClassName,
|
|
264
|
+
position: position,
|
|
265
|
+
key: datePickerMode,
|
|
266
|
+
instant: true,
|
|
267
|
+
required: true
|
|
268
|
+
}) : /*#__PURE__*/_react.default.createElement(_Styles.StyledSpan, null, getDateFormatted)), renderLeftRightButtons ? /*#__PURE__*/_react.default.createElement(_Styles.StyledControl, {
|
|
275
269
|
type: "button",
|
|
276
270
|
variant: "secondary",
|
|
277
271
|
onClick: onRightClickHandler,
|