@activecollab/components 2.0.202 → 2.0.203
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/SelectDate/SelectDateV2.js +2 -2
- package/dist/cjs/components/SelectDate/SelectDateV2.js.map +1 -1
- package/dist/esm/components/SelectDate/SelectDateV2.js +2 -2
- package/dist/esm/components/SelectDate/SelectDateV2.js.map +1 -1
- package/dist/index.js +2 -2
- 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
|
@@ -215,7 +215,7 @@ var SelectDateV2 = exports.SelectDateV2 = function SelectDateV2(_ref) {
|
|
|
215
215
|
disabledDaysBefore: disableDaysBefore,
|
|
216
216
|
disabledDaysAfter: disabledDaysAfter,
|
|
217
217
|
backgroundElementClass: backgroundElementClass,
|
|
218
|
-
disabled: weekendIsSelectable ? [] :
|
|
218
|
+
disabled: weekendIsSelectable ? [] : weekends,
|
|
219
219
|
popperTooltipClassName: popperTooltipClassName,
|
|
220
220
|
popperTooltipStyle: popperTooltipStyle,
|
|
221
221
|
open: defaultShowDatePicker,
|
|
@@ -239,7 +239,7 @@ var SelectDateV2 = exports.SelectDateV2 = function SelectDateV2(_ref) {
|
|
|
239
239
|
disabledDaysAfter: disabledDaysAfter,
|
|
240
240
|
popperTooltipClassName: popperTooltipClassName,
|
|
241
241
|
popperTooltipStyle: popperTooltipStyle,
|
|
242
|
-
disabled: weekendIsSelectable ? [] :
|
|
242
|
+
disabled: weekendIsSelectable ? [] : weekends,
|
|
243
243
|
onSave: onSave,
|
|
244
244
|
onChange: onChange,
|
|
245
245
|
modifiers: modifiers,
|
|
@@ -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","disabledDaysAfter","onChange","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","day_disabled","globalDayOff","renderTargetEl","createElement","SelectDateTarget","StyledSelectDateButton","className","classnames","StyledSelectDate","DatePickerV2","target","month","instant","selected","saveLabel","cancelLabel","clearLabel","onClose","disabledDaysBefore","disabled","open","onCalendarToggle","enableConfirmModal","disableYearPicker","showControls","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 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 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 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: 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 day_disabled: (day: Date) => {\n const currentDay = new Date(\n day.getFullYear(),\n day.getMonth(),\n day.getDate()\n );\n\n const globalDayOff = globalDaysOff.find((data) =>\n isDayInRange(currentDay, 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 <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 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 ? [] : [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 disabledDaysAfter={disabledDaysAfter}\n popperTooltipClassName={popperTooltipClassName}\n popperTooltipStyle={popperTooltipStyle}\n disabled={weekendIsSelectable ? [] : [0, 6]}\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\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","disabledDaysAfter","onChange","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","day_disabled","globalDayOff","renderTargetEl","createElement","SelectDateTarget","StyledSelectDateButton","className","classnames","StyledSelectDate","DatePickerV2","target","month","instant","selected","saveLabel","cancelLabel","clearLabel","onClose","disabledDaysBefore","disabled","open","onCalendarToggle","enableConfirmModal","disableYearPicker","showControls","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 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 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 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: 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 day_disabled: (day: Date) => {\n const currentDay = new Date(\n day.getFullYear(),\n day.getMonth(),\n day.getDate()\n );\n\n const globalDayOff = globalDaysOff.find((data) =>\n isDayInRange(currentDay, 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 <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 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 <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 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\nSelectDateV2.displayName = \"SelectDateV2\";\n"],"mappings":"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"}
|
|
@@ -175,7 +175,7 @@ export const SelectDateV2 = _ref => {
|
|
|
175
175
|
disabledDaysBefore: disableDaysBefore,
|
|
176
176
|
disabledDaysAfter: disabledDaysAfter,
|
|
177
177
|
backgroundElementClass: backgroundElementClass,
|
|
178
|
-
disabled: weekendIsSelectable ? [] :
|
|
178
|
+
disabled: weekendIsSelectable ? [] : weekends,
|
|
179
179
|
popperTooltipClassName: popperTooltipClassName,
|
|
180
180
|
popperTooltipStyle: popperTooltipStyle,
|
|
181
181
|
open: defaultShowDatePicker,
|
|
@@ -199,7 +199,7 @@ export const SelectDateV2 = _ref => {
|
|
|
199
199
|
disabledDaysAfter: disabledDaysAfter,
|
|
200
200
|
popperTooltipClassName: popperTooltipClassName,
|
|
201
201
|
popperTooltipStyle: popperTooltipStyle,
|
|
202
|
-
disabled: weekendIsSelectable ? [] :
|
|
202
|
+
disabled: weekendIsSelectable ? [] : weekends,
|
|
203
203
|
onSave: onSave,
|
|
204
204
|
onChange: onChange,
|
|
205
205
|
modifiers: modifiers,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SelectDateV2.js","names":["React","useMemo","classnames","SelectDateTarget","StyledSelectDate","StyledSelectDateButton","formatDate","DatePickerV2","toMoment","isDayInRange","day","data","repeating","from","Date","getFullYear","getMonth","getDate","to","SelectDateV2","_ref","changeMode","mode","trigger","labelType","saveButtonText","cancelButtonText","clearButtonText","modalHeaderText","modalDiscardMessage","modalDiscardBtnText","modalCancelBtnText","onDayClick","onSave","onCancel","onToggleDatePicker","required","dateRequired","longDateFormat","defaultShowDatePicker","firstDayOfWeek","selectedDays","selectionMode","menuClassName","targetClassName","icon","defaultLabelText","targetTextClassName","targetIconClassName","backgroundElementClass","dateFormat","defaultMonth","daysToModify","weekends","weekendLabel","nonWorkingDaysOfWeek","nonWorkingDaysOfWeekLabel","weekendIsSelectable","tooltipText","popperTooltipClassName","popperClassName","popperTooltipStyle","position","disableDaysBefore","enableYearPicker","disableAnimations","disabledDaysAfter","onChange","labelText","formattedEndDate","formattedStartDate","isSame","modifiers","userAvailabilities","filter","type","globalDaysOff","selectableGlobalDaysOff","userAvailability","currentDay","matchedData","find","matched","title","weekend","isWeekend","includes","getDay","nonWorkingDay","nonWorkingDays","isNonWorkingDay","day_disabled","globalDayOff","renderTargetEl","createElement","className","target","month","instant","selected","saveLabel","cancelLabel","clearLabel","onClose","disabledDaysBefore","disabled","open","onCalendarToggle","enableConfirmModal","disableYearPicker","showControls","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 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 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 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: 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 day_disabled: (day: Date) => {\n const currentDay = new Date(\n day.getFullYear(),\n day.getMonth(),\n day.getDate()\n );\n\n const globalDayOff = globalDaysOff.find((data) =>\n isDayInRange(currentDay, 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 <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 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 ? [] : [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 disabledDaysAfter={disabledDaysAfter}\n popperTooltipClassName={popperTooltipClassName}\n popperTooltipStyle={popperTooltipStyle}\n disabled={weekendIsSelectable ? [] : [0, 6]}\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\nSelectDateV2.displayName = \"SelectDateV2\";\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SelectDateV2.js","names":["React","useMemo","classnames","SelectDateTarget","StyledSelectDate","StyledSelectDateButton","formatDate","DatePickerV2","toMoment","isDayInRange","day","data","repeating","from","Date","getFullYear","getMonth","getDate","to","SelectDateV2","_ref","changeMode","mode","trigger","labelType","saveButtonText","cancelButtonText","clearButtonText","modalHeaderText","modalDiscardMessage","modalDiscardBtnText","modalCancelBtnText","onDayClick","onSave","onCancel","onToggleDatePicker","required","dateRequired","longDateFormat","defaultShowDatePicker","firstDayOfWeek","selectedDays","selectionMode","menuClassName","targetClassName","icon","defaultLabelText","targetTextClassName","targetIconClassName","backgroundElementClass","dateFormat","defaultMonth","daysToModify","weekends","weekendLabel","nonWorkingDaysOfWeek","nonWorkingDaysOfWeekLabel","weekendIsSelectable","tooltipText","popperTooltipClassName","popperClassName","popperTooltipStyle","position","disableDaysBefore","enableYearPicker","disableAnimations","disabledDaysAfter","onChange","labelText","formattedEndDate","formattedStartDate","isSame","modifiers","userAvailabilities","filter","type","globalDaysOff","selectableGlobalDaysOff","userAvailability","currentDay","matchedData","find","matched","title","weekend","isWeekend","includes","getDay","nonWorkingDay","nonWorkingDays","isNonWorkingDay","day_disabled","globalDayOff","renderTargetEl","createElement","className","target","month","instant","selected","saveLabel","cancelLabel","clearLabel","onClose","disabledDaysBefore","disabled","open","onCalendarToggle","enableConfirmModal","disableYearPicker","showControls","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 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 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 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: 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 day_disabled: (day: Date) => {\n const currentDay = new Date(\n day.getFullYear(),\n day.getMonth(),\n day.getDate()\n );\n\n const globalDayOff = globalDaysOff.find((data) =>\n isDayInRange(currentDay, 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 <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 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 <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 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\nSelectDateV2.displayName = \"SelectDateV2\";\n"],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -19432,7 +19432,7 @@
|
|
|
19432
19432
|
disabledDaysBefore: disableDaysBefore,
|
|
19433
19433
|
disabledDaysAfter: disabledDaysAfter,
|
|
19434
19434
|
backgroundElementClass: backgroundElementClass,
|
|
19435
|
-
disabled: weekendIsSelectable ? [] :
|
|
19435
|
+
disabled: weekendIsSelectable ? [] : weekends,
|
|
19436
19436
|
popperTooltipClassName: popperTooltipClassName,
|
|
19437
19437
|
popperTooltipStyle: popperTooltipStyle,
|
|
19438
19438
|
open: defaultShowDatePicker,
|
|
@@ -19456,7 +19456,7 @@
|
|
|
19456
19456
|
disabledDaysAfter: disabledDaysAfter,
|
|
19457
19457
|
popperTooltipClassName: popperTooltipClassName,
|
|
19458
19458
|
popperTooltipStyle: popperTooltipStyle,
|
|
19459
|
-
disabled: weekendIsSelectable ? [] :
|
|
19459
|
+
disabled: weekendIsSelectable ? [] : weekends,
|
|
19460
19460
|
onSave: onSave,
|
|
19461
19461
|
onChange: onChange,
|
|
19462
19462
|
modifiers: modifiers,
|