@activecollab/components 2.0.255 → 2.0.256

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.
@@ -16,14 +16,14 @@ export interface ISelectDate {
16
16
  cancelButtonText?: string;
17
17
  /** Clear button text */
18
18
  clearButtonText?: string;
19
- /** Modal header text */
20
- modalHeaderText?: string;
19
+ /** Modal title text */
20
+ modalTitle?: string;
21
+ /** Modal description text */
22
+ modalDescription?: string;
23
+ /** Modal save button text */
24
+ modalSaveBtnText?: string;
21
25
  /** Modal cancel button text */
22
26
  modalCancelBtnText?: string;
23
- /** Modal discard button text */
24
- modalDiscardBtnText?: string;
25
- /** Modal discard message text */
26
- modalDiscardMessage?: string;
27
27
  /** Tooltip text */
28
28
  tooltipText?: string;
29
29
  /** Called when day is clicked */
@@ -1 +1 @@
1
- {"version":3,"file":"SelectDate.d.ts","sourceRoot":"","sources":["../../../../src/components/SelectDate/SelectDate.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SelectDate.d.ts","sourceRoot":"","sources":["../../../../src/components/SelectDate/SelectDate.tsx"],"names":[],"mappings":"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"}
@@ -31,10 +31,10 @@ export const SelectDate = _ref => {
31
31
  saveButtonText = "Save",
32
32
  cancelButtonText = "Cancel",
33
33
  clearButtonText = "Clear",
34
- modalHeaderText = "Discard changes?",
35
- modalDiscardMessage = "All unsaved changes will be lost.",
36
- modalDiscardBtnText = "OK",
37
- modalCancelBtnText = "Cancel",
34
+ modalTitle = "Save Changes",
35
+ modalDescription = "You updated the date. Would you like to save this change?",
36
+ modalSaveBtnText = "Save",
37
+ modalCancelBtnText = "Discard",
38
38
  onDayClick,
39
39
  onSave,
40
40
  onCancel,
@@ -178,9 +178,9 @@ export const SelectDate = _ref => {
178
178
  onChange: onChange,
179
179
  onClose: onCancel,
180
180
  modifiers: modifiers,
181
- modalHeaderText: modalHeaderText,
182
- modalDiscardMessage: modalDiscardMessage,
183
- modalDiscardBtnText: modalDiscardBtnText,
181
+ modalTitle: modalTitle,
182
+ modalDescription: modalDescription,
183
+ modalSaveBtnText: modalSaveBtnText,
184
184
  modalCancelBtnText: modalCancelBtnText,
185
185
  disabledDaysBefore: disableDaysBefore,
186
186
  disabledDaysAfter: disabledDaysAfter,
@@ -1 +1 @@
1
- {"version":3,"file":"SelectDate.js","names":["React","useMemo","classnames","moment","SelectDateTarget","StyledSelectDate","StyledSelectDateButton","formatDate","DatePicker","toMoment","isDayInRange","day","data","fromMoment","unix","from","utc","to","repeating","year","month","date","isSameOrAfter","isSameOrBefore","SelectDate","_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","forceClose","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","matchedData","find","matched","title","weekend","isWeekend","includes","nonWorkingDay","nonWorkingDays","isNonWorkingDay","day_disabled","globalDayOff","renderTargetEl","createElement","className","target","instant","selected","saveLabel","cancelLabel","clearLabel","onClose","disabledDaysBefore","disabled","open","onCalendarToggle","enableConfirmModal","disableYearPicker","showControls","displayName"],"sources":["../../../../src/components/SelectDate/SelectDate.tsx"],"sourcesContent":["import React, { ElementType, FC, useMemo, CSSProperties } from \"react\";\n\nimport { Placement } from \"@popperjs/core\";\nimport classnames from \"classnames\";\nimport { Moment } from \"moment\";\nimport moment from \"moment-timezone\";\n\nimport { SelectDateTarget } from \"./SelectDateTarget\";\nimport { StyledSelectDate, StyledSelectDateButton } from \"./Styles\";\nimport { DaysToModify } from \"./types\";\nimport { formatDate } from \"../../utils/dateUtils\";\nimport {\n ChangeMode,\n DatePicker,\n TimestampDateRange,\n toMoment,\n} from \"../DatePicker/DatePicker\";\n\ntype TriggerStringType = \"text\" | \"icon\" | \"inline\";\ntype TriggerFunctionType = (text: string) => JSX.Element;\n\nconst isDayInRange = (day: Moment, data: DaysToModify): boolean => {\n const fromMoment = moment.unix(data.from).utc();\n const toMoment = moment.unix(data.to).utc();\n\n if (data.repeating) {\n const year = day.year();\n const from = moment.utc({\n year,\n month: fromMoment.month(),\n date: fromMoment.date(),\n });\n const to = moment.utc({\n year,\n month: toMoment.month(),\n date: toMoment.date(),\n });\n\n return day.isSameOrAfter(from, \"day\") && day.isSameOrBefore(to, \"day\");\n }\n\n return (\n day.isSameOrAfter(fromMoment, \"day\") && day.isSameOrBefore(toMoment, \"day\")\n );\n};\n\nexport interface ISelectDate {\n /** Change mode - can be atomic and instant */\n changeMode?: \"atomic\" | \"instant\";\n /** Trigger - can be text, icon, inline, or custom render function */\n trigger?: TriggerStringType | TriggerFunctionType;\n /** Save button text */\n saveButtonText?: string;\n /** Cancel button text */\n cancelButtonText?: string;\n /** Clear button text */\n clearButtonText?: string;\n /** Modal header text */\n modalHeaderText?: string;\n /** Modal cancel button text */\n modalCancelBtnText?: string;\n /** Modal discard button text */\n modalDiscardBtnText?: string;\n /** Modal discard message text */\n modalDiscardMessage?: string;\n /** Tooltip text */\n tooltipText?: string;\n /** Called when day is clicked */\n onDayClick?: (day: Moment, modifiers: string[]) => void;\n /** Save changes callback */\n onSave?: (dates?: TimestampDateRange) => void;\n /** Changing dates callback */\n onChange?: (dates?: TimestampDateRange) => void;\n /** On cancel closes datepicker or opens discard modal in atomic mode */\n onCancel?: () => void;\n /** Clear dates when they are not required */\n onClear?: () => void;\n /** Use this callback to get is picker visible */\n onToggleDatePicker?: (value: boolean) => void;\n /** Force close */\n forceClose?: boolean;\n /** Set selected day or days */\n selectedDays?: TimestampDateRange;\n /** Set month */\n defaultMonth?: Moment;\n /** Set selection range */\n selectionMode?: ChangeMode;\n /** Set is date required */\n required?: boolean;\n /** Set default show on date picker (only for text and icon mode) */\n defaultShowDatePicker?: boolean;\n /** Long date format (Always show year) */\n longDateFormat?: boolean;\n /** Set first day of week */\n firstDayOfWeek?: 0 | 1 | 2 | 3 | 4 | 5 | 6;\n /** One of icon types */\n icon?: ElementType;\n /** Default Label text */\n defaultLabelText?: string;\n /** Date format */\n dateFormat?: string;\n /** Menu classes */\n menuClassName?: string;\n /** Target element classes */\n targetClassName?: string;\n /** Target element text classes */\n targetTextClassName?: string;\n /** Target element icon classes */\n targetIconClassName?: string;\n /** Background style for clickable element after the menu is open (opacity, color, etc...) */\n backgroundElementClass?: string;\n /** Days to modify */\n daysToModify?: DaysToModify[];\n /** Array of weekend days */\n weekends?: number[];\n /** Weekend label */\n weekendLabel?: string;\n /** Array of nonworking week days */\n nonWorkingDaysOfWeek?: number[];\n /** Nonworking week days label */\n nonWorkingDaysOfWeekLabel?: string;\n /** Allows weekends to be selected */\n weekendIsSelectable?: boolean;\n /** Popper Tooltip style */\n popperTooltipStyle?: CSSProperties;\n /** Popper Tooltip class name*/\n popperTooltipClassName?: string;\n /** Popper class name*/\n popperClassName?: string;\n /** Position of selectDate menu */\n position?: Placement;\n /** Disable days before specified date */\n disableDaysBefore?: Moment;\n /** Disable days after specified date */\n disabledDaysAfter?: Moment;\n /** Enable year selector */\n enableYearPicker?: boolean;\n /** Disable aniamtions */\n disableAnimations?: boolean;\n}\n\nexport const SelectDate: FC<ISelectDate> = ({\n changeMode: mode = \"instant\",\n trigger: labelType = \"text\",\n saveButtonText = \"Save\",\n cancelButtonText = \"Cancel\",\n clearButtonText = \"Clear\",\n modalHeaderText = \"Discard changes?\",\n modalDiscardMessage = \"All unsaved changes will be lost.\",\n modalDiscardBtnText = \"OK\",\n modalCancelBtnText = \"Cancel\",\n onDayClick,\n onSave,\n onCancel,\n onToggleDatePicker,\n required: dateRequired = false,\n longDateFormat = false,\n defaultShowDatePicker = false,\n firstDayOfWeek = 0,\n selectedDays,\n selectionMode = \"custom\",\n menuClassName,\n targetClassName,\n icon,\n defaultLabelText = \"Set...\",\n targetTextClassName,\n targetIconClassName,\n backgroundElementClass,\n dateFormat,\n forceClose,\n defaultMonth,\n daysToModify = [],\n weekends = [],\n weekendLabel = \"Weekend\",\n nonWorkingDaysOfWeek = [],\n nonWorkingDaysOfWeekLabel = \"Unavailable\",\n weekendIsSelectable = false,\n tooltipText,\n popperTooltipClassName,\n popperClassName,\n popperTooltipStyle,\n position,\n disableDaysBefore,\n enableYearPicker,\n disableAnimations,\n disabledDaysAfter,\n onChange,\n}) => {\n const labelText = useMemo(() => {\n if (!selectedDays) {\n return defaultLabelText;\n } else if (!selectedDays.from && !selectedDays.to) {\n return defaultLabelText;\n } else {\n const formattedEndDate = selectedDays.to\n ? formatDate(toMoment(selectedDays.to), dateFormat, longDateFormat)\n : \"\";\n const formattedStartDate = selectedDays.from\n ? formatDate(toMoment(selectedDays?.from), dateFormat, longDateFormat)\n : \"\";\n\n if (\n selectedDays.to &&\n selectedDays.from &&\n toMoment(selectedDays.from).isSame(toMoment(selectedDays.to))\n ) {\n return formattedEndDate;\n }\n\n if (!selectedDays.to && selectedDays.from) {\n return formattedStartDate;\n }\n\n return `${formattedStartDate} - ${formattedEndDate}`;\n }\n }, [selectedDays, dateFormat, defaultLabelText, longDateFormat]);\n\n const modifiers = useMemo(() => {\n const userAvailabilities = daysToModify.filter(\n (data) => data.type === \"user_day_off\"\n );\n const globalDaysOff = daysToModify.filter(\n (data) => data.type === \"global_day_off\"\n );\n const selectableGlobalDaysOff = daysToModify.filter(\n (data) => data.type === \"selectable_global_day_off\"\n );\n\n return {\n userAvailability: (day: Moment) => {\n const matchedData = userAvailabilities.find((data) =>\n isDayInRange(day, data)\n );\n return {\n matched: !!matchedData,\n title: matchedData ? matchedData.title : null,\n };\n },\n weekend: (day: Moment) => {\n const isWeekend = weekends.includes(day.day());\n return {\n matched: isWeekend,\n title: isWeekend ? weekendLabel : null,\n };\n },\n nonWorkingDay: (day: Moment) => {\n if (weekends.includes(day.day())) {\n return { matched: true, title: \"\" };\n }\n const nonWorkingDays = [...selectableGlobalDaysOff, ...globalDaysOff];\n\n const matchedData = nonWorkingDays.find((data) =>\n isDayInRange(day, data)\n );\n return {\n matched: !!matchedData,\n title: matchedData ? matchedData.title : null,\n };\n },\n nonWorkingDaysOfWeek: (day: Moment) => {\n const isNonWorkingDay = nonWorkingDaysOfWeek.includes(day.day());\n return {\n matched: isNonWorkingDay,\n title: isNonWorkingDay ? nonWorkingDaysOfWeekLabel : null,\n };\n },\n day_disabled: (day: Moment) => {\n const globalDayOff = globalDaysOff.find((data) =>\n isDayInRange(day, data)\n );\n\n return {\n matched: !!globalDayOff,\n title: null,\n };\n },\n };\n }, [\n daysToModify,\n nonWorkingDaysOfWeek,\n nonWorkingDaysOfWeekLabel,\n weekendLabel,\n weekends,\n ]);\n\n const renderTargetEl = useMemo(() => {\n if (labelType === \"icon\" && icon) {\n return (\n <SelectDateTarget\n icon={icon}\n title={tooltipText}\n targetIconClassName={targetIconClassName}\n popperTooltipClassName={popperTooltipClassName}\n popperTooltipStyle={popperTooltipStyle}\n />\n );\n }\n if (typeof labelType === \"function\") {\n return labelType(labelText);\n }\n return (\n <StyledSelectDateButton\n type=\"button\"\n className={classnames(\"date-picker-target\", targetClassName)}\n >\n <span className={targetTextClassName}>{labelText}</span>\n </StyledSelectDateButton>\n );\n }, [\n icon,\n labelText,\n labelType,\n popperTooltipClassName,\n popperTooltipStyle,\n targetClassName,\n targetIconClassName,\n targetTextClassName,\n tooltipText,\n ]);\n\n return (\n <StyledSelectDate className=\"select-date\">\n {labelType !== \"inline\" ? (\n <DatePicker\n target={renderTargetEl}\n position={position}\n menuClassName={menuClassName}\n popperClassName={popperClassName}\n month={defaultMonth}\n instant={mode === \"instant\"}\n mode={selectionMode}\n required={dateRequired}\n selected={selectedDays}\n firstDayOfWeek={firstDayOfWeek}\n saveLabel={saveButtonText}\n cancelLabel={cancelButtonText}\n clearLabel={clearButtonText}\n onSave={onSave}\n onChange={onChange}\n onClose={onCancel}\n modifiers={modifiers}\n modalHeaderText={modalHeaderText}\n modalDiscardMessage={modalDiscardMessage}\n modalDiscardBtnText={modalDiscardBtnText}\n modalCancelBtnText={modalCancelBtnText}\n disabledDaysBefore={disableDaysBefore}\n disabledDaysAfter={disabledDaysAfter}\n backgroundElementClass={backgroundElementClass}\n disabled={weekendIsSelectable ? [] : weekends}\n popperTooltipClassName={popperTooltipClassName}\n popperTooltipStyle={popperTooltipStyle}\n open={defaultShowDatePicker}\n onCalendarToggle={onToggleDatePicker}\n onDayClick={onDayClick}\n enableConfirmModal={mode === \"atomic\" && !dateRequired}\n disableYearPicker={!enableYearPicker}\n disableAnimations={disableAnimations}\n showControls\n forceClose={forceClose}\n />\n ) : (\n <DatePicker\n month={defaultMonth}\n instant={mode === \"instant\"}\n mode={selectionMode}\n required={dateRequired}\n selected={selectedDays}\n firstDayOfWeek={firstDayOfWeek}\n saveLabel={saveButtonText}\n cancelLabel={cancelButtonText}\n clearLabel={clearButtonText}\n disabledDaysBefore={disableDaysBefore}\n disabledDaysAfter={disabledDaysAfter}\n popperTooltipClassName={popperTooltipClassName}\n popperTooltipStyle={popperTooltipStyle}\n disabled={weekendIsSelectable ? [] : weekends}\n onSave={onSave}\n onChange={onChange}\n modifiers={modifiers}\n onDayClick={onDayClick}\n disableYearPicker={!enableYearPicker}\n disableAnimations={disableAnimations}\n showControls\n open\n />\n )}\n </StyledSelectDate>\n );\n};\n\nSelectDate.displayName = \"SelectDate\";\n"],"mappings":"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"}
1
+ {"version":3,"file":"SelectDate.js","names":["React","useMemo","classnames","moment","SelectDateTarget","StyledSelectDate","StyledSelectDateButton","formatDate","DatePicker","toMoment","isDayInRange","day","data","fromMoment","unix","from","utc","to","repeating","year","month","date","isSameOrAfter","isSameOrBefore","SelectDate","_ref","changeMode","mode","trigger","labelType","saveButtonText","cancelButtonText","clearButtonText","modalTitle","modalDescription","modalSaveBtnText","modalCancelBtnText","onDayClick","onSave","onCancel","onToggleDatePicker","required","dateRequired","longDateFormat","defaultShowDatePicker","firstDayOfWeek","selectedDays","selectionMode","menuClassName","targetClassName","icon","defaultLabelText","targetTextClassName","targetIconClassName","backgroundElementClass","dateFormat","forceClose","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","matchedData","find","matched","title","weekend","isWeekend","includes","nonWorkingDay","nonWorkingDays","isNonWorkingDay","day_disabled","globalDayOff","renderTargetEl","createElement","className","target","instant","selected","saveLabel","cancelLabel","clearLabel","onClose","disabledDaysBefore","disabled","open","onCalendarToggle","enableConfirmModal","disableYearPicker","showControls","displayName"],"sources":["../../../../src/components/SelectDate/SelectDate.tsx"],"sourcesContent":["import React, { ElementType, FC, useMemo, CSSProperties } from \"react\";\n\nimport { Placement } from \"@popperjs/core\";\nimport classnames from \"classnames\";\nimport { Moment } from \"moment\";\nimport moment from \"moment-timezone\";\n\nimport { SelectDateTarget } from \"./SelectDateTarget\";\nimport { StyledSelectDate, StyledSelectDateButton } from \"./Styles\";\nimport { DaysToModify } from \"./types\";\nimport { formatDate } from \"../../utils/dateUtils\";\nimport {\n ChangeMode,\n DatePicker,\n TimestampDateRange,\n toMoment,\n} from \"../DatePicker/DatePicker\";\n\ntype TriggerStringType = \"text\" | \"icon\" | \"inline\";\ntype TriggerFunctionType = (text: string) => JSX.Element;\n\nconst isDayInRange = (day: Moment, data: DaysToModify): boolean => {\n const fromMoment = moment.unix(data.from).utc();\n const toMoment = moment.unix(data.to).utc();\n\n if (data.repeating) {\n const year = day.year();\n const from = moment.utc({\n year,\n month: fromMoment.month(),\n date: fromMoment.date(),\n });\n const to = moment.utc({\n year,\n month: toMoment.month(),\n date: toMoment.date(),\n });\n\n return day.isSameOrAfter(from, \"day\") && day.isSameOrBefore(to, \"day\");\n }\n\n return (\n day.isSameOrAfter(fromMoment, \"day\") && day.isSameOrBefore(toMoment, \"day\")\n );\n};\n\nexport interface ISelectDate {\n /** Change mode - can be atomic and instant */\n changeMode?: \"atomic\" | \"instant\";\n /** Trigger - can be text, icon, inline, or custom render function */\n trigger?: TriggerStringType | TriggerFunctionType;\n /** Save button text */\n saveButtonText?: string;\n /** Cancel button text */\n cancelButtonText?: string;\n /** Clear button text */\n clearButtonText?: string;\n /** Modal title text */\n modalTitle?: string;\n /** Modal description text */\n modalDescription?: string;\n /** Modal save button text */\n modalSaveBtnText?: string;\n /** Modal cancel button text */\n modalCancelBtnText?: 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 /** Force close */\n forceClose?: boolean;\n /** Set selected day or days */\n selectedDays?: TimestampDateRange;\n /** Set month */\n defaultMonth?: Moment;\n /** Set selection range */\n selectionMode?: ChangeMode;\n /** Set is date required */\n required?: boolean;\n /** Set default show on date picker (only for text and icon mode) */\n defaultShowDatePicker?: boolean;\n /** Long date format (Always show year) */\n longDateFormat?: boolean;\n /** Set first day of week */\n firstDayOfWeek?: 0 | 1 | 2 | 3 | 4 | 5 | 6;\n /** One of icon types */\n icon?: ElementType;\n /** Default Label text */\n defaultLabelText?: string;\n /** Date format */\n dateFormat?: string;\n /** Menu classes */\n menuClassName?: string;\n /** Target element classes */\n targetClassName?: string;\n /** Target element text classes */\n targetTextClassName?: string;\n /** Target element icon classes */\n targetIconClassName?: string;\n /** Background style for clickable element after the menu is open (opacity, color, etc...) */\n backgroundElementClass?: string;\n /** Days to modify */\n daysToModify?: DaysToModify[];\n /** Array of weekend days */\n weekends?: number[];\n /** Weekend label */\n weekendLabel?: string;\n /** Array of nonworking week days */\n nonWorkingDaysOfWeek?: number[];\n /** Nonworking week days label */\n nonWorkingDaysOfWeekLabel?: string;\n /** Allows weekends to be selected */\n weekendIsSelectable?: boolean;\n /** Popper Tooltip style */\n popperTooltipStyle?: CSSProperties;\n /** Popper Tooltip class name*/\n popperTooltipClassName?: string;\n /** Popper class name*/\n popperClassName?: string;\n /** Position of selectDate menu */\n position?: Placement;\n /** Disable days before specified date */\n disableDaysBefore?: Moment;\n /** Disable days after specified date */\n disabledDaysAfter?: Moment;\n /** Enable year selector */\n enableYearPicker?: boolean;\n /** Disable aniamtions */\n disableAnimations?: boolean;\n}\n\nexport const SelectDate: FC<ISelectDate> = ({\n changeMode: mode = \"instant\",\n trigger: labelType = \"text\",\n saveButtonText = \"Save\",\n cancelButtonText = \"Cancel\",\n clearButtonText = \"Clear\",\n modalTitle = \"Save Changes\",\n modalDescription = \"You updated the date. Would you like to save this change?\",\n modalSaveBtnText = \"Save\",\n modalCancelBtnText = \"Discard\",\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 forceClose,\n defaultMonth,\n daysToModify = [],\n weekends = [],\n weekendLabel = \"Weekend\",\n nonWorkingDaysOfWeek = [],\n nonWorkingDaysOfWeekLabel = \"Unavailable\",\n weekendIsSelectable = false,\n tooltipText,\n popperTooltipClassName,\n popperClassName,\n popperTooltipStyle,\n position,\n disableDaysBefore,\n enableYearPicker,\n disableAnimations,\n disabledDaysAfter,\n onChange,\n}) => {\n const labelText = useMemo(() => {\n if (!selectedDays) {\n return defaultLabelText;\n } else if (!selectedDays.from && !selectedDays.to) {\n return defaultLabelText;\n } else {\n const formattedEndDate = selectedDays.to\n ? formatDate(toMoment(selectedDays.to), dateFormat, longDateFormat)\n : \"\";\n const formattedStartDate = selectedDays.from\n ? formatDate(toMoment(selectedDays?.from), dateFormat, longDateFormat)\n : \"\";\n\n if (\n selectedDays.to &&\n selectedDays.from &&\n toMoment(selectedDays.from).isSame(toMoment(selectedDays.to))\n ) {\n return formattedEndDate;\n }\n\n if (!selectedDays.to && selectedDays.from) {\n return formattedStartDate;\n }\n\n return `${formattedStartDate} - ${formattedEndDate}`;\n }\n }, [selectedDays, dateFormat, defaultLabelText, longDateFormat]);\n\n const modifiers = useMemo(() => {\n const userAvailabilities = daysToModify.filter(\n (data) => data.type === \"user_day_off\"\n );\n const globalDaysOff = daysToModify.filter(\n (data) => data.type === \"global_day_off\"\n );\n const selectableGlobalDaysOff = daysToModify.filter(\n (data) => data.type === \"selectable_global_day_off\"\n );\n\n return {\n userAvailability: (day: Moment) => {\n const matchedData = userAvailabilities.find((data) =>\n isDayInRange(day, data)\n );\n return {\n matched: !!matchedData,\n title: matchedData ? matchedData.title : null,\n };\n },\n weekend: (day: Moment) => {\n const isWeekend = weekends.includes(day.day());\n return {\n matched: isWeekend,\n title: isWeekend ? weekendLabel : null,\n };\n },\n nonWorkingDay: (day: Moment) => {\n if (weekends.includes(day.day())) {\n return { matched: true, title: \"\" };\n }\n const nonWorkingDays = [...selectableGlobalDaysOff, ...globalDaysOff];\n\n const matchedData = nonWorkingDays.find((data) =>\n isDayInRange(day, data)\n );\n return {\n matched: !!matchedData,\n title: matchedData ? matchedData.title : null,\n };\n },\n nonWorkingDaysOfWeek: (day: Moment) => {\n const isNonWorkingDay = nonWorkingDaysOfWeek.includes(day.day());\n return {\n matched: isNonWorkingDay,\n title: isNonWorkingDay ? nonWorkingDaysOfWeekLabel : null,\n };\n },\n day_disabled: (day: Moment) => {\n const globalDayOff = globalDaysOff.find((data) =>\n isDayInRange(day, data)\n );\n\n return {\n matched: !!globalDayOff,\n title: null,\n };\n },\n };\n }, [\n daysToModify,\n nonWorkingDaysOfWeek,\n nonWorkingDaysOfWeekLabel,\n weekendLabel,\n weekends,\n ]);\n\n const renderTargetEl = useMemo(() => {\n if (labelType === \"icon\" && icon) {\n return (\n <SelectDateTarget\n icon={icon}\n title={tooltipText}\n targetIconClassName={targetIconClassName}\n popperTooltipClassName={popperTooltipClassName}\n popperTooltipStyle={popperTooltipStyle}\n />\n );\n }\n if (typeof labelType === \"function\") {\n return labelType(labelText);\n }\n return (\n <StyledSelectDateButton\n type=\"button\"\n className={classnames(\"date-picker-target\", targetClassName)}\n >\n <span className={targetTextClassName}>{labelText}</span>\n </StyledSelectDateButton>\n );\n }, [\n icon,\n labelText,\n labelType,\n popperTooltipClassName,\n popperTooltipStyle,\n targetClassName,\n targetIconClassName,\n targetTextClassName,\n tooltipText,\n ]);\n\n return (\n <StyledSelectDate className=\"select-date\">\n {labelType !== \"inline\" ? (\n <DatePicker\n target={renderTargetEl}\n position={position}\n menuClassName={menuClassName}\n popperClassName={popperClassName}\n month={defaultMonth}\n instant={mode === \"instant\"}\n mode={selectionMode}\n required={dateRequired}\n selected={selectedDays}\n firstDayOfWeek={firstDayOfWeek}\n saveLabel={saveButtonText}\n cancelLabel={cancelButtonText}\n clearLabel={clearButtonText}\n onSave={onSave}\n onChange={onChange}\n onClose={onCancel}\n modifiers={modifiers}\n modalTitle={modalTitle}\n modalDescription={modalDescription}\n modalSaveBtnText={modalSaveBtnText}\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 forceClose={forceClose}\n />\n ) : (\n <DatePicker\n month={defaultMonth}\n instant={mode === \"instant\"}\n mode={selectionMode}\n required={dateRequired}\n selected={selectedDays}\n firstDayOfWeek={firstDayOfWeek}\n saveLabel={saveButtonText}\n cancelLabel={cancelButtonText}\n clearLabel={clearButtonText}\n disabledDaysBefore={disableDaysBefore}\n disabledDaysAfter={disabledDaysAfter}\n popperTooltipClassName={popperTooltipClassName}\n popperTooltipStyle={popperTooltipStyle}\n disabled={weekendIsSelectable ? [] : weekends}\n onSave={onSave}\n onChange={onChange}\n modifiers={modifiers}\n onDayClick={onDayClick}\n disableYearPicker={!enableYearPicker}\n disableAnimations={disableAnimations}\n showControls\n open\n />\n )}\n </StyledSelectDate>\n );\n};\n\nSelectDate.displayName = \"SelectDate\";\n"],"mappings":"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"}
package/dist/index.js CHANGED
@@ -13361,14 +13361,14 @@
13361
13361
  popperClassName = _ref.popperClassName,
13362
13362
  _ref$enableConfirmMod = _ref.enableConfirmModal,
13363
13363
  enableConfirmModal = _ref$enableConfirmMod === void 0 ? false : _ref$enableConfirmMod,
13364
- _ref$modalHeaderText = _ref.modalHeaderText,
13365
- modalHeaderText = _ref$modalHeaderText === void 0 ? "Discard changes?" : _ref$modalHeaderText,
13366
- _ref$modalDiscardMess = _ref.modalDiscardMessage,
13367
- modalDiscardMessage = _ref$modalDiscardMess === void 0 ? "All unsaved changes will be lost." : _ref$modalDiscardMess,
13368
- _ref$modalDiscardBtnT = _ref.modalDiscardBtnText,
13369
- modalDiscardBtnText = _ref$modalDiscardBtnT === void 0 ? "OK" : _ref$modalDiscardBtnT,
13364
+ _ref$modalTitle = _ref.modalTitle,
13365
+ modalTitle = _ref$modalTitle === void 0 ? "Save Changes" : _ref$modalTitle,
13366
+ _ref$modalDescription = _ref.modalDescription,
13367
+ modalDescription = _ref$modalDescription === void 0 ? "You updated the date. Would you like to save this change?" : _ref$modalDescription,
13368
+ _ref$modalSaveBtnText = _ref.modalSaveBtnText,
13369
+ modalSaveBtnText = _ref$modalSaveBtnText === void 0 ? "Save" : _ref$modalSaveBtnText,
13370
13370
  _ref$modalCancelBtnTe = _ref.modalCancelBtnText,
13371
- modalCancelBtnText = _ref$modalCancelBtnTe === void 0 ? "Cancel" : _ref$modalCancelBtnTe,
13371
+ modalCancelBtnText = _ref$modalCancelBtnTe === void 0 ? "Discard" : _ref$modalCancelBtnTe,
13372
13372
  backgroundElementClass = _ref.backgroundElementClass,
13373
13373
  popperTooltipClassName = _ref.popperTooltipClassName,
13374
13374
  popperTooltipStyle = _ref.popperTooltipStyle,
@@ -13929,17 +13929,41 @@
13929
13929
  var handleCaptionClick = React.useCallback(function () {
13930
13930
  isMonthSelectOpen && !disableYearPicker ? toggleYearSelect() : toggleMonthSelect();
13931
13931
  }, [disableYearPicker, isMonthSelectOpen, toggleMonthSelect, toggleYearSelect]);
13932
- var handleCloseDiscardModal = React.useCallback(function () {
13933
- setShowDiscardModal(false);
13934
- }, []);
13935
13932
  var handleSaveDiscardModal = React.useCallback(function () {
13933
+ if (selected) {
13934
+ if (onChange) {
13935
+ onChange({
13936
+ from: moment__default["default"].utc(selected === null || selected === void 0 ? void 0 : selected.from).unix(),
13937
+ to: selected !== null && selected !== void 0 && selected.to ? moment__default["default"].utc(selected === null || selected === void 0 ? void 0 : selected.to).unix() : moment__default["default"].utc(selected === null || selected === void 0 ? void 0 : selected.from).unix()
13938
+ });
13939
+ }
13940
+ if (onSave) {
13941
+ onSave({
13942
+ from: moment__default["default"].utc(selected === null || selected === void 0 ? void 0 : selected.from).unix(),
13943
+ to: selected !== null && selected !== void 0 && selected.to ? moment__default["default"].utc(selected === null || selected === void 0 ? void 0 : selected.to).unix() : moment__default["default"].utc(selected === null || selected === void 0 ? void 0 : selected.from).unix()
13944
+ });
13945
+ }
13946
+ } else {
13947
+ if (onChange) onChange(undefined);
13948
+ if (onSave) onSave(undefined);
13949
+ }
13950
+ setShowDiscardModal(false);
13951
+ if (target) {
13952
+ setIsOpen(false);
13953
+ if (onCalendarToggle) onCalendarToggle(false);
13954
+ }
13955
+ }, [selected, target, onChange, onSave, onCalendarToggle]);
13956
+ var handleDiscardModal = React.useCallback(function () {
13936
13957
  setSelected(defaultSelected !== null && defaultSelected !== void 0 && defaultSelected.from ? {
13937
13958
  from: toMoment(defaultSelected.from),
13938
13959
  to: defaultSelected.to ? toMoment(defaultSelected.to) : null
13939
13960
  } : null);
13940
13961
  setShowDiscardModal(false);
13941
- handleClose();
13942
- }, [defaultSelected, handleClose]);
13962
+ if (target) {
13963
+ setIsOpen(false);
13964
+ if (onCalendarToggle) onCalendarToggle(false);
13965
+ }
13966
+ }, [defaultSelected === null || defaultSelected === void 0 ? void 0 : defaultSelected.from, defaultSelected === null || defaultSelected === void 0 ? void 0 : defaultSelected.to, onCalendarToggle, target]);
13943
13967
  var wrapperProps = target ? {
13944
13968
  className: "c-date-picker--calendar",
13945
13969
  target,
@@ -14037,12 +14061,12 @@
14037
14061
  }, clearLabel)) : null))), !instant && target && !required && enableConfirmModal ? /*#__PURE__*/React__default["default"].createElement(StyledConfirmDialog$1, {
14038
14062
  className: "modal-select-date",
14039
14063
  open: showDiscardModal,
14040
- onCancel: handleCloseDiscardModal,
14064
+ onCancel: handleDiscardModal,
14041
14065
  onConfirm: handleSaveDiscardModal,
14042
- dialogTitle: modalHeaderText,
14043
- dialogContent: modalDiscardMessage,
14066
+ dialogTitle: modalTitle,
14067
+ dialogContent: modalDescription,
14044
14068
  cancelBtnText: modalCancelBtnText,
14045
- confirmBtnText: modalDiscardBtnText
14069
+ confirmBtnText: modalSaveBtnText
14046
14070
  }) : null);
14047
14071
  };
14048
14072
 
@@ -21305,14 +21329,14 @@
21305
21329
  cancelButtonText = _ref$cancelButtonText === void 0 ? "Cancel" : _ref$cancelButtonText,
21306
21330
  _ref$clearButtonText = _ref.clearButtonText,
21307
21331
  clearButtonText = _ref$clearButtonText === void 0 ? "Clear" : _ref$clearButtonText,
21308
- _ref$modalHeaderText = _ref.modalHeaderText,
21309
- modalHeaderText = _ref$modalHeaderText === void 0 ? "Discard changes?" : _ref$modalHeaderText,
21310
- _ref$modalDiscardMess = _ref.modalDiscardMessage,
21311
- modalDiscardMessage = _ref$modalDiscardMess === void 0 ? "All unsaved changes will be lost." : _ref$modalDiscardMess,
21312
- _ref$modalDiscardBtnT = _ref.modalDiscardBtnText,
21313
- modalDiscardBtnText = _ref$modalDiscardBtnT === void 0 ? "OK" : _ref$modalDiscardBtnT,
21332
+ _ref$modalTitle = _ref.modalTitle,
21333
+ modalTitle = _ref$modalTitle === void 0 ? "Save Changes" : _ref$modalTitle,
21334
+ _ref$modalDescription = _ref.modalDescription,
21335
+ modalDescription = _ref$modalDescription === void 0 ? "You updated the date. Would you like to save this change?" : _ref$modalDescription,
21336
+ _ref$modalSaveBtnText = _ref.modalSaveBtnText,
21337
+ modalSaveBtnText = _ref$modalSaveBtnText === void 0 ? "Save" : _ref$modalSaveBtnText,
21314
21338
  _ref$modalCancelBtnTe = _ref.modalCancelBtnText,
21315
- modalCancelBtnText = _ref$modalCancelBtnTe === void 0 ? "Cancel" : _ref$modalCancelBtnTe,
21339
+ modalCancelBtnText = _ref$modalCancelBtnTe === void 0 ? "Discard" : _ref$modalCancelBtnTe,
21316
21340
  onDayClick = _ref.onDayClick,
21317
21341
  onSave = _ref.onSave,
21318
21342
  onCancel = _ref.onCancel,
@@ -21479,9 +21503,9 @@
21479
21503
  onChange: onChange,
21480
21504
  onClose: onCancel,
21481
21505
  modifiers: modifiers,
21482
- modalHeaderText: modalHeaderText,
21483
- modalDiscardMessage: modalDiscardMessage,
21484
- modalDiscardBtnText: modalDiscardBtnText,
21506
+ modalTitle: modalTitle,
21507
+ modalDescription: modalDescription,
21508
+ modalSaveBtnText: modalSaveBtnText,
21485
21509
  modalCancelBtnText: modalCancelBtnText,
21486
21510
  disabledDaysBefore: disableDaysBefore,
21487
21511
  disabledDaysAfter: disabledDaysAfter,