@activecollab/components 2.0.156 → 2.0.158
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/DatePickerV2.js +49 -20
- package/dist/cjs/components/DatePicker/DatePickerV2.js.map +1 -1
- package/dist/cjs/components/SelectDate/SelectDateV2.js +7 -4
- package/dist/cjs/components/SelectDate/SelectDateV2.js.map +1 -1
- package/dist/esm/components/DatePicker/DatePickerV2.d.ts +2 -2
- package/dist/esm/components/DatePicker/DatePickerV2.d.ts.map +1 -1
- package/dist/esm/components/DatePicker/DatePickerV2.js +53 -20
- package/dist/esm/components/DatePicker/DatePickerV2.js.map +1 -1
- package/dist/esm/components/SelectDate/SelectDateV2.d.ts.map +1 -1
- package/dist/esm/components/SelectDate/SelectDateV2.js +7 -4
- package/dist/esm/components/SelectDate/SelectDateV2.js.map +1 -1
- package/dist/index.js +56 -24
- 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 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SelectDateV2.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_SelectDateTarget","_Styles","_dateUtils","_DatePickerV","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","repeating","from","Date","getFullYear","getMonth","getDate","to","SelectDateV2","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","labelText","useMemo","formattedEndDate","formatDate","toMoment","formattedStartDate","isSame","concat","modifiers","userAvailabilities","filter","type","globalDaysOff","selectableGlobalDaysOff","userAvailability","currentDay","matchedData","find","matched","title","weekend","isWeekend","includes","getDay","nonWorkingDay","nonWorkingDays","isNonWorkingDay","renderTargetEl","createElement","SelectDateTarget","StyledSelectDateButton","className","classnames","StyledSelectDate","DatePickerV2","target","month","instant","selected","saveLabel","cancelLabel","clearLabel","onClose","disabledDaysBefore","disabled","open","onCalendarToggle","enableConfirmModal","disableYearPicker","showControls","onChange","displayName"],"sources":["../../../../src/components/SelectDate/SelectDateV2.tsx"],"sourcesContent":["import React, { ElementType, FC, useMemo, CSSProperties } from \"react\";\n\nimport { Placement } from \"@popperjs/core\";\nimport classnames from \"classnames\";\nimport { Moment } from \"moment\";\n\nimport { SelectDateTarget } from \"./SelectDateTarget\";\nimport { StyledSelectDate, StyledSelectDateButton } from \"./Styles\";\nimport { DaysToModify } from \"./types\";\nimport { formatDate } from \"../../utils/dateUtils\";\nimport {\n ChangeMode,\n DatePickerV2,\n TimestampDateRange,\n toMoment,\n} from \"../DatePicker/DatePickerV2\";\n\nconst isDayInRange = (day: Date, data: DaysToModify): 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 ISelectDateV2 {\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 in atomic mode */\n onSave?: (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 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?: 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 /** Enable year selector */\n enableYearPicker?: boolean;\n /** Disable aniamtions */\n disableAnimations?: boolean;\n}\n\nexport const SelectDateV2: FC<ISelectDateV2> = ({\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}) => {\n const labelText = useMemo(() => {\n if (!selectedDays) {\n return defaultLabelText;\n } else {\n const formattedEndDate = formatDate(\n toMoment(selectedDays?.to),\n dateFormat,\n longDateFormat\n );\n const formattedStartDate = formatDate(\n toMoment(selectedDays?.from),\n dateFormat,\n longDateFormat\n );\n\n if (toMoment(selectedDays.from).isSame(toMoment(selectedDays.to))) {\n return formattedEndDate;\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: Date) => {\n const currentDay = new Date(\n day.getFullYear(),\n day.getMonth(),\n day.getDate()\n );\n const matchedData = userAvailabilities.find((data) =>\n isDayInRange(currentDay, data)\n );\n return {\n matched: !!matchedData,\n title: matchedData ? matchedData.title : null,\n };\n },\n weekend: (day: Date) => {\n const isWeekend = weekends.includes(day.getDay());\n return {\n matched: isWeekend,\n title: isWeekend ? weekendLabel : null,\n };\n },\n nonWorkingDay: (day: Date) => {\n if (weekends.includes(day.getDay())) {\n return { matched: true, title: \"\" };\n }\n const nonWorkingDays = [...selectableGlobalDaysOff, ...globalDaysOff];\n const currentDay = new Date(\n day.getFullYear(),\n day.getMonth(),\n day.getDate()\n );\n const matchedData = nonWorkingDays.find((data) =>\n isDayInRange(currentDay, data)\n );\n return {\n matched: !!matchedData,\n title: matchedData ? matchedData.title : null,\n };\n },\n nonWorkingDaysOfWeek: (day: Date) => {\n const isNonWorkingDay = nonWorkingDaysOfWeek.includes(day.getDay());\n return {\n matched: isNonWorkingDay,\n title: isNonWorkingDay ? nonWorkingDaysOfWeekLabel : 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 <DatePickerV2\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 onClose={onCancel}\n modifiers={modifiers}\n modalHeaderText={modalHeaderText}\n modalDiscardMessage={modalDiscardMessage}\n modalDiscardBtnText={modalDiscardBtnText}\n modalCancelBtnText={modalCancelBtnText}\n disabledDaysBefore={disableDaysBefore}\n backgroundElementClass={backgroundElementClass}\n disabled={weekendIsSelectable ? [] : [0, 6]}\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 <DatePickerV2\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 popperTooltipClassName={popperTooltipClassName}\n popperTooltipStyle={popperTooltipStyle}\n disabled={weekendIsSelectable ? [] : [0, 6]}\n onSave={onSave}\n onChange={onSave}\n modifiers={modifiers}\n onDayClick={onDayClick}\n disableYearPicker={!enableYearPicker}\n disableAnimations={disableAnimations}\n showControls\n />\n )}\n </StyledSelectDate>\n );\n};\n\nSelectDateV2.displayName = \"SelectDateV2\";\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SelectDateV2.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_SelectDateTarget","_Styles","_dateUtils","_DatePickerV","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","repeating","from","Date","getFullYear","getMonth","getDate","to","SelectDateV2","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","labelText","useMemo","formattedEndDate","formatDate","toMoment","formattedStartDate","isSame","concat","modifiers","userAvailabilities","filter","type","globalDaysOff","selectableGlobalDaysOff","userAvailability","currentDay","matchedData","find","matched","title","weekend","isWeekend","includes","getDay","nonWorkingDay","nonWorkingDays","isNonWorkingDay","renderTargetEl","createElement","SelectDateTarget","StyledSelectDateButton","className","classnames","StyledSelectDate","DatePickerV2","target","month","instant","selected","saveLabel","cancelLabel","clearLabel","onClose","disabledDaysBefore","disabled","open","onCalendarToggle","enableConfirmModal","disableYearPicker","showControls","onChange","displayName"],"sources":["../../../../src/components/SelectDate/SelectDateV2.tsx"],"sourcesContent":["import React, { ElementType, FC, useMemo, CSSProperties } from \"react\";\n\nimport { Placement } from \"@popperjs/core\";\nimport classnames from \"classnames\";\nimport { Moment } from \"moment\";\n\nimport { SelectDateTarget } from \"./SelectDateTarget\";\nimport { StyledSelectDate, StyledSelectDateButton } from \"./Styles\";\nimport { DaysToModify } from \"./types\";\nimport { formatDate } from \"../../utils/dateUtils\";\nimport {\n ChangeMode,\n DatePickerV2,\n TimestampDateRange,\n toMoment,\n} from \"../DatePicker/DatePickerV2\";\n\nconst isDayInRange = (day: Date, data: DaysToModify): 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 ISelectDateV2 {\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 in atomic mode */\n onSave?: (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 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?: 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 /** Enable year selector */\n enableYearPicker?: boolean;\n /** Disable aniamtions */\n disableAnimations?: boolean;\n}\n\nexport const SelectDateV2: FC<ISelectDateV2> = ({\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}) => {\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 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: Date) => {\n const currentDay = new Date(\n day.getFullYear(),\n day.getMonth(),\n day.getDate()\n );\n const matchedData = userAvailabilities.find((data) =>\n isDayInRange(currentDay, data)\n );\n return {\n matched: !!matchedData,\n title: matchedData ? matchedData.title : null,\n };\n },\n weekend: (day: Date) => {\n const isWeekend = weekends.includes(day.getDay());\n return {\n matched: isWeekend,\n title: isWeekend ? weekendLabel : null,\n };\n },\n nonWorkingDay: (day: Date) => {\n if (weekends.includes(day.getDay())) {\n return { matched: true, title: \"\" };\n }\n const nonWorkingDays = [...selectableGlobalDaysOff, ...globalDaysOff];\n const currentDay = new Date(\n day.getFullYear(),\n day.getMonth(),\n day.getDate()\n );\n const matchedData = nonWorkingDays.find((data) =>\n isDayInRange(currentDay, data)\n );\n return {\n matched: !!matchedData,\n title: matchedData ? matchedData.title : null,\n };\n },\n nonWorkingDaysOfWeek: (day: Date) => {\n const isNonWorkingDay = nonWorkingDaysOfWeek.includes(day.getDay());\n return {\n matched: isNonWorkingDay,\n title: isNonWorkingDay ? nonWorkingDaysOfWeekLabel : 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 <DatePickerV2\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 onClose={onCancel}\n modifiers={modifiers}\n modalHeaderText={modalHeaderText}\n modalDiscardMessage={modalDiscardMessage}\n modalDiscardBtnText={modalDiscardBtnText}\n modalCancelBtnText={modalCancelBtnText}\n disabledDaysBefore={disableDaysBefore}\n backgroundElementClass={backgroundElementClass}\n disabled={weekendIsSelectable ? [] : [0, 6]}\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 <DatePickerV2\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 popperTooltipClassName={popperTooltipClassName}\n popperTooltipStyle={popperTooltipStyle}\n disabled={weekendIsSelectable ? [] : [0, 6]}\n onSave={onSave}\n onChange={onSave}\n modifiers={modifiers}\n onDayClick={onDayClick}\n disableYearPicker={!enableYearPicker}\n disableAnimations={disableAnimations}\n showControls\n open\n />\n )}\n </StyledSelectDate>\n );\n};\n\nSelectDateV2.displayName = \"SelectDateV2\";\n"],"mappings":"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"}
|
|
@@ -8,7 +8,7 @@ export interface DateRange {
|
|
|
8
8
|
to: Moment | null;
|
|
9
9
|
}
|
|
10
10
|
export interface TimestampDateRange {
|
|
11
|
-
from: number | string | Moment;
|
|
11
|
+
from: number | string | Moment | null;
|
|
12
12
|
to: number | string | Moment | null;
|
|
13
13
|
}
|
|
14
14
|
export interface DatePickerProps {
|
|
@@ -63,6 +63,6 @@ export interface DatePickerProps {
|
|
|
63
63
|
onDayClick?: (day: Moment, modifiers: string[]) => void;
|
|
64
64
|
showControls?: boolean;
|
|
65
65
|
}
|
|
66
|
-
export declare const toMoment: (date?: string | number | Moment
|
|
66
|
+
export declare const toMoment: (date?: string | number | Moment) => any;
|
|
67
67
|
export declare const DatePickerV2: React.FC<DatePickerProps>;
|
|
68
68
|
//# sourceMappingURL=DatePickerV2.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DatePickerV2.d.ts","sourceRoot":"","sources":["../../../../src/components/DatePicker/DatePickerV2.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAMZ,aAAa,EACd,MAAM,OAAO,CAAC;AAEf,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AA2BhC,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAG3C,MAAM,MAAM,UAAU,GAClB,OAAO,GACP,QAAQ,GACR,SAAS,GACT,WAAW,GACX,QAAQ,CAAC;AAEb,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;CACnB;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"DatePickerV2.d.ts","sourceRoot":"","sources":["../../../../src/components/DatePicker/DatePickerV2.tsx"],"names":[],"mappings":"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"}
|
|
@@ -9,17 +9,14 @@ import { Tooltip } from "../Tooltip";
|
|
|
9
9
|
export const toMoment = date => {
|
|
10
10
|
if (moment.isMoment(date)) {
|
|
11
11
|
return date;
|
|
12
|
-
} else if (date === null) {
|
|
13
|
-
return date;
|
|
14
12
|
} else if (typeof date === "number") {
|
|
15
13
|
return moment.utc(date * 1000);
|
|
16
14
|
} else if (typeof date === "string") {
|
|
17
15
|
return moment.utc(date);
|
|
18
16
|
}
|
|
19
|
-
return
|
|
17
|
+
return null;
|
|
20
18
|
};
|
|
21
19
|
export const DatePickerV2 = _ref => {
|
|
22
|
-
var _selected$to4;
|
|
23
20
|
let {
|
|
24
21
|
selected: defaultSelected,
|
|
25
22
|
onChange,
|
|
@@ -64,7 +61,7 @@ export const DatePickerV2 = _ref => {
|
|
|
64
61
|
const [isMonthSelectOpen, setIsMonthSelectOpen] = useState(mode === "monthly" || mode === "quarterly");
|
|
65
62
|
const [monthTransitionDirection, setMonthTransitionDirection] = useState(null);
|
|
66
63
|
const [currentDate, setCurrentDate] = useState(() => {
|
|
67
|
-
if (defaultSelected) {
|
|
64
|
+
if (defaultSelected && defaultSelected.from) {
|
|
68
65
|
return toMoment(defaultSelected.from);
|
|
69
66
|
}
|
|
70
67
|
if (month) {
|
|
@@ -73,19 +70,23 @@ export const DatePickerV2 = _ref => {
|
|
|
73
70
|
return moment.utc();
|
|
74
71
|
});
|
|
75
72
|
const [targetDate, setTargetDate] = useState(() => {
|
|
76
|
-
if (defaultSelected) {
|
|
73
|
+
if (defaultSelected && defaultSelected.from) {
|
|
77
74
|
return toMoment(defaultSelected.from);
|
|
78
75
|
} else if (month) {
|
|
79
76
|
return toMoment(month);
|
|
80
77
|
}
|
|
78
|
+
return moment.utc();
|
|
81
79
|
});
|
|
82
80
|
const [selected, setSelected] = useState(() => {
|
|
83
81
|
if (!defaultSelected) {
|
|
84
82
|
return null;
|
|
85
83
|
}
|
|
84
|
+
if (!defaultSelected.from) {
|
|
85
|
+
return null;
|
|
86
|
+
}
|
|
86
87
|
return {
|
|
87
88
|
from: toMoment(defaultSelected.from),
|
|
88
|
-
to: toMoment(defaultSelected.to)
|
|
89
|
+
to: defaultSelected.to ? toMoment(defaultSelected.to) : null
|
|
89
90
|
};
|
|
90
91
|
});
|
|
91
92
|
const [hoveredDate, setHoveredDate] = useState(null);
|
|
@@ -129,10 +130,10 @@ export const DatePickerV2 = _ref => {
|
|
|
129
130
|
}
|
|
130
131
|
}, [isMonthSelectOpen, mode]);
|
|
131
132
|
useEffect(() => {
|
|
132
|
-
if (defaultSelected) {
|
|
133
|
+
if (defaultSelected && defaultSelected.from) {
|
|
133
134
|
setSelected({
|
|
134
135
|
from: toMoment(defaultSelected.from),
|
|
135
|
-
to: toMoment(defaultSelected.to)
|
|
136
|
+
to: defaultSelected.to ? toMoment(defaultSelected.to) : null
|
|
136
137
|
});
|
|
137
138
|
setCurrentDate(toMoment(defaultSelected.from) || moment.utc());
|
|
138
139
|
setTargetDate(toMoment(defaultSelected.from) || moment.utc());
|
|
@@ -224,9 +225,18 @@ export const DatePickerV2 = _ref => {
|
|
|
224
225
|
from: date.utc().unix(),
|
|
225
226
|
to: null
|
|
226
227
|
});
|
|
227
|
-
} else if (selected != null && selected.from.isSame(date.utc(), "day") && !required) {
|
|
228
|
+
} else if (moment.isMoment(selected == null ? void 0 : selected.from) && selected != null && selected.from.isSame(date.utc(), "day") && !required) {
|
|
228
229
|
setSelected(null);
|
|
229
230
|
onChange && onChange(undefined);
|
|
231
|
+
} else if (selected.from === null && selected.to === null) {
|
|
232
|
+
setSelected({
|
|
233
|
+
from: date.utc(),
|
|
234
|
+
to: null
|
|
235
|
+
});
|
|
236
|
+
onChange && onChange({
|
|
237
|
+
from: date.utc().unix(),
|
|
238
|
+
to: date.utc().unix()
|
|
239
|
+
});
|
|
230
240
|
}
|
|
231
241
|
};
|
|
232
242
|
const handleSave = () => {
|
|
@@ -255,12 +265,22 @@ export const DatePickerV2 = _ref => {
|
|
|
255
265
|
const handleMonthChange = useCallback(direction => {
|
|
256
266
|
setMonthTransitionDirection(direction);
|
|
257
267
|
if (isMonthSelectOpen) {
|
|
258
|
-
setTargetDate(prevDate =>
|
|
268
|
+
setTargetDate(prevDate => {
|
|
269
|
+
if (prevDate) {
|
|
270
|
+
return direction === "prev" ? prevDate.clone().subtract(1, "year") : prevDate.clone().add(1, "year");
|
|
271
|
+
}
|
|
272
|
+
return prevDate;
|
|
273
|
+
});
|
|
259
274
|
if (disableAnimations) {
|
|
260
275
|
setCurrentDate(prevDate => direction === "prev" ? prevDate.clone().subtract(1, "year") : prevDate.clone().add(1, "year"));
|
|
261
276
|
}
|
|
262
277
|
} else {
|
|
263
|
-
setTargetDate(prevDate =>
|
|
278
|
+
setTargetDate(prevDate => {
|
|
279
|
+
if (prevDate) {
|
|
280
|
+
return direction === "prev" ? prevDate.clone().subtract(1, "month") : prevDate.clone().add(1, "month");
|
|
281
|
+
}
|
|
282
|
+
return prevDate;
|
|
283
|
+
});
|
|
264
284
|
if (disableAnimations) {
|
|
265
285
|
setCurrentDate(prevDate => direction === "prev" ? prevDate.clone().subtract(1, "month") : prevDate.clone().add(1, "month"));
|
|
266
286
|
}
|
|
@@ -485,11 +505,11 @@ export const DatePickerV2 = _ref => {
|
|
|
485
505
|
if (mode === "custom" && instant && !selected && onSave) {
|
|
486
506
|
onSave(undefined);
|
|
487
507
|
}
|
|
488
|
-
setCurrentDate(defaultSelected ? toMoment(defaultSelected.from) : month ? toMoment(month) : moment.utc());
|
|
489
|
-
setTargetDate(defaultSelected ? toMoment(defaultSelected.from) : toMoment(month));
|
|
490
|
-
setSelected(defaultSelected ? {
|
|
508
|
+
setCurrentDate(defaultSelected != null && defaultSelected.from ? toMoment(defaultSelected.from) : month ? toMoment(month) : moment.utc());
|
|
509
|
+
setTargetDate(defaultSelected != null && defaultSelected.from ? toMoment(defaultSelected.from) : month ? toMoment(month) : moment.utc());
|
|
510
|
+
setSelected(defaultSelected != null && defaultSelected.from ? {
|
|
491
511
|
from: toMoment(defaultSelected.from),
|
|
492
|
-
to: toMoment(defaultSelected.to)
|
|
512
|
+
to: defaultSelected.to ? toMoment(defaultSelected.to) : null
|
|
493
513
|
} : null);
|
|
494
514
|
toggleCalendar();
|
|
495
515
|
setIsYearSelectOpen(false);
|
|
@@ -519,7 +539,7 @@ export const DatePickerV2 = _ref => {
|
|
|
519
539
|
const handleSaveDiscardModal = useCallback(() => {
|
|
520
540
|
setSelected(defaultSelected != null && defaultSelected.from ? {
|
|
521
541
|
from: toMoment(defaultSelected.from),
|
|
522
|
-
to: toMoment(defaultSelected.to)
|
|
542
|
+
to: defaultSelected.to ? toMoment(defaultSelected.to) : null
|
|
523
543
|
} : null);
|
|
524
544
|
setShowDiscardModal(false);
|
|
525
545
|
handleClose();
|
|
@@ -546,11 +566,24 @@ export const DatePickerV2 = _ref => {
|
|
|
546
566
|
handleMonthChange("prev");
|
|
547
567
|
}
|
|
548
568
|
};
|
|
549
|
-
|
|
569
|
+
if (isOpen) {
|
|
570
|
+
window.addEventListener("keydown", handleKeyDown);
|
|
571
|
+
} else {
|
|
572
|
+
window.removeEventListener("keydown", handleKeyDown);
|
|
573
|
+
}
|
|
550
574
|
return () => {
|
|
551
575
|
window.removeEventListener("keydown", handleKeyDown);
|
|
552
576
|
};
|
|
553
|
-
}, [handleMonthChange]);
|
|
577
|
+
}, [isOpen, handleMonthChange]);
|
|
578
|
+
const saveIsDisabled = () => {
|
|
579
|
+
if (!defaultSelected && !selected) {
|
|
580
|
+
return true;
|
|
581
|
+
}
|
|
582
|
+
if (defaultSelected && selected && defaultSelected.from && selected.from.isSame(toMoment(defaultSelected.from)) && defaultSelected.to && selected.to && selected.to.isSame(toMoment(defaultSelected.to))) {
|
|
583
|
+
return true;
|
|
584
|
+
}
|
|
585
|
+
return false;
|
|
586
|
+
};
|
|
554
587
|
return /*#__PURE__*/React.createElement(StyledDatePickerWrapper, {
|
|
555
588
|
ref: datePickerRef
|
|
556
589
|
}, /*#__PURE__*/React.createElement(Wrapper, wrapperProps, /*#__PURE__*/React.createElement(StyledDatePickerContainerInner, null, /*#__PURE__*/React.createElement(StyledCalendarHeader, null, isYearSelectOpen ? null : /*#__PURE__*/React.createElement(IconButton, {
|
|
@@ -577,7 +610,7 @@ export const DatePickerV2 = _ref => {
|
|
|
577
610
|
size: "small",
|
|
578
611
|
variant: "primary",
|
|
579
612
|
onClick: handleSave,
|
|
580
|
-
disabled: (
|
|
613
|
+
disabled: saveIsDisabled()
|
|
581
614
|
}, saveLabel), /*#__PURE__*/React.createElement(Tooltip, {
|
|
582
615
|
title: cancelLabel,
|
|
583
616
|
popperTooltipStyle: {
|