@activecollab/components 1.0.357 → 1.0.359
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/ClassNames.js +1 -0
- package/dist/cjs/components/DatePicker/ClassNames.js.map +1 -1
- package/dist/cjs/components/DatePicker/Styles.js +1 -1
- package/dist/cjs/components/DatePicker/Styles.js.map +1 -1
- package/dist/cjs/components/EditableText/EditableText.js +3 -1
- package/dist/cjs/components/EditableText/EditableText.js.map +1 -1
- package/dist/cjs/components/SelectDate/SelectDate.js +12 -7
- package/dist/cjs/components/SelectDate/SelectDate.js.map +1 -1
- package/dist/esm/components/DatePicker/ClassNames.d.ts +1 -0
- package/dist/esm/components/DatePicker/ClassNames.d.ts.map +1 -1
- package/dist/esm/components/DatePicker/ClassNames.js +1 -0
- package/dist/esm/components/DatePicker/ClassNames.js.map +1 -1
- package/dist/esm/components/DatePicker/Styles.d.ts.map +1 -1
- package/dist/esm/components/DatePicker/Styles.js +1 -1
- package/dist/esm/components/DatePicker/Styles.js.map +1 -1
- package/dist/esm/components/EditableText/EditableText.d.ts.map +1 -1
- package/dist/esm/components/EditableText/EditableText.js +2 -1
- package/dist/esm/components/EditableText/EditableText.js.map +1 -1
- package/dist/esm/components/SelectDate/SelectDate.d.ts +4 -2
- package/dist/esm/components/SelectDate/SelectDate.d.ts.map +1 -1
- package/dist/esm/components/SelectDate/SelectDate.js +12 -7
- package/dist/esm/components/SelectDate/SelectDate.js.map +1 -1
- package/dist/index.js +15 -9
- 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":"EditableText.js","names":["React","forwardRef","useCallback","useEffect","useRef","useState","EditableContent","EditableText","ref","onSave","onCancel","value","inputProps","props","currentValue","setCurrentValue","prevValue","setPrevValue","escapeRef","handleBlur","e","current","target","trim","length","handleKeyDown","key","blur","handleChange","onBlur","onKeyDown","onChange","type","className","displayName"],"sources":["../../../../src/components/EditableText/EditableText.tsx"],"sourcesContent":["import React, {\n ChangeEvent,\n forwardRef,\n useCallback,\n useEffect,\n useRef,\n useState,\n} from \"react\";\nimport {\n EditableContent,\n EditableContentInterface,\n} from \"../EditableContent/EditableContent\";\n\nexport interface EditableTextInterface extends EditableContentInterface {\n /** Value to display. */\n value: string;\n /** Optional callback called on enter, click outside and tab. */\n onSave?: (e: ChangeEvent<HTMLInputElement>) => void;\n /** Optional callback called on input reset. */\n onCancel?: () => void;\n}\n\nexport const EditableText = forwardRef<HTMLDivElement, EditableTextInterface>(\n ({ onSave, onCancel, value, inputProps, ...props }, ref) => {\n const [currentValue, setCurrentValue] = useState(value);\n const [prevValue, setPrevValue] = useState(value);\n const escapeRef = useRef(false);\n\n useEffect(() => {\n if (currentValue !== value) {\n setCurrentValue(value);\n setPrevValue(value);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [value]);\n\n const handleBlur = useCallback(\n (e) => {\n if (escapeRef.current) {\n setCurrentValue(prevValue);\n escapeRef.current = false;\n } else {\n if (\n e.target.value.trim().length > 0 &&\n prevValue !== e.target.value\n ) {\n setPrevValue(e.target.value);\n setCurrentValue(e.target.value);\n typeof onSave === \"function\" && onSave(e);\n } else {\n setCurrentValue(prevValue);\n }\n }\n },\n [onSave, prevValue]\n );\n\n const handleKeyDown = useCallback(\n (e) => {\n if (e.key === \"Enter\") {\n e.target.blur();\n }\n if (e.key === \"Escape\") {\n escapeRef.current = true;\n e.target.blur();\n typeof onCancel === \"function\" && onCancel();\n }\n },\n [onCancel]\n );\n\n const handleChange = useCallback((e) => {\n setCurrentValue(e.target.value);\n }, []);\n\n return (\n <EditableContent\n {...props}\n ref={ref}\n inputProps={{\n ...inputProps,\n value: currentValue,\n onBlur: handleBlur,\n onKeyDown: handleKeyDown,\n onChange: handleChange,\n type: \"text\",\n className: \"c-input\",\n }}\n />\n );\n }\n);\n\nEditableText.displayName = \"EditableText\";\n"],"mappings":";;;AAAA,OAAOA,KAAK,IAEVC,UAAU,EACVC,WAAW,EACXC,SAAS,EACTC,MAAM,EACNC,QAAQ,QACH,OAAO;AACd,SACEC,eAAe,QAEV,oCAAoC;
|
|
1
|
+
{"version":3,"file":"EditableText.js","names":["React","forwardRef","useCallback","useEffect","useRef","useState","EditableContent","classNames","EditableText","ref","onSave","onCancel","value","inputProps","props","currentValue","setCurrentValue","prevValue","setPrevValue","escapeRef","handleBlur","e","current","target","trim","length","handleKeyDown","key","blur","handleChange","onBlur","onKeyDown","onChange","type","className","displayName"],"sources":["../../../../src/components/EditableText/EditableText.tsx"],"sourcesContent":["import React, {\n ChangeEvent,\n forwardRef,\n useCallback,\n useEffect,\n useRef,\n useState,\n} from \"react\";\nimport {\n EditableContent,\n EditableContentInterface,\n} from \"../EditableContent/EditableContent\";\nimport classNames from \"classnames\";\n\nexport interface EditableTextInterface extends EditableContentInterface {\n /** Value to display. */\n value: string;\n /** Optional callback called on enter, click outside and tab. */\n onSave?: (e: ChangeEvent<HTMLInputElement>) => void;\n /** Optional callback called on input reset. */\n onCancel?: () => void;\n}\n\nexport const EditableText = forwardRef<HTMLDivElement, EditableTextInterface>(\n ({ onSave, onCancel, value, inputProps, ...props }, ref) => {\n const [currentValue, setCurrentValue] = useState(value);\n const [prevValue, setPrevValue] = useState(value);\n const escapeRef = useRef(false);\n\n useEffect(() => {\n if (currentValue !== value) {\n setCurrentValue(value);\n setPrevValue(value);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [value]);\n\n const handleBlur = useCallback(\n (e) => {\n if (escapeRef.current) {\n setCurrentValue(prevValue);\n escapeRef.current = false;\n } else {\n if (\n e.target.value.trim().length > 0 &&\n prevValue !== e.target.value\n ) {\n setPrevValue(e.target.value);\n setCurrentValue(e.target.value);\n typeof onSave === \"function\" && onSave(e);\n } else {\n setCurrentValue(prevValue);\n }\n }\n },\n [onSave, prevValue]\n );\n\n const handleKeyDown = useCallback(\n (e) => {\n if (e.key === \"Enter\") {\n e.target.blur();\n }\n if (e.key === \"Escape\") {\n escapeRef.current = true;\n e.target.blur();\n typeof onCancel === \"function\" && onCancel();\n }\n },\n [onCancel]\n );\n\n const handleChange = useCallback((e) => {\n setCurrentValue(e.target.value);\n }, []);\n\n return (\n <EditableContent\n {...props}\n ref={ref}\n inputProps={{\n ...inputProps,\n value: currentValue,\n onBlur: handleBlur,\n onKeyDown: handleKeyDown,\n onChange: handleChange,\n type: \"text\",\n className: classNames(\"c-input\", inputProps?.className),\n }}\n />\n );\n }\n);\n\nEditableText.displayName = \"EditableText\";\n"],"mappings":";;;AAAA,OAAOA,KAAK,IAEVC,UAAU,EACVC,WAAW,EACXC,SAAS,EACTC,MAAM,EACNC,QAAQ,QACH,OAAO;AACd,SACEC,eAAe,QAEV,oCAAoC;AAC3C,OAAOC,UAAU,MAAM,YAAY;AAWnC,OAAO,IAAMC,YAAY,gBAAGP,UAAU,CACpC,gBAAoDQ,GAAG,EAAK;EAAA,IAAzDC,MAAM,QAANA,MAAM;IAAEC,QAAQ,QAARA,QAAQ;IAAEC,KAAK,QAALA,KAAK;IAAEC,UAAU,QAAVA,UAAU;IAAKC,KAAK;EAC9C,gBAAwCT,QAAQ,CAACO,KAAK,CAAC;IAAhDG,YAAY;IAAEC,eAAe;EACpC,iBAAkCX,QAAQ,CAACO,KAAK,CAAC;IAA1CK,SAAS;IAAEC,YAAY;EAC9B,IAAMC,SAAS,GAAGf,MAAM,CAAC,KAAK,CAAC;EAE/BD,SAAS,CAAC,YAAM;IACd,IAAIY,YAAY,KAAKH,KAAK,EAAE;MAC1BI,eAAe,CAACJ,KAAK,CAAC;MACtBM,YAAY,CAACN,KAAK,CAAC;IACrB;IACA;EACF,CAAC,EAAE,CAACA,KAAK,CAAC,CAAC;EAEX,IAAMQ,UAAU,GAAGlB,WAAW,CAC5B,UAACmB,CAAC,EAAK;IACL,IAAIF,SAAS,CAACG,OAAO,EAAE;MACrBN,eAAe,CAACC,SAAS,CAAC;MAC1BE,SAAS,CAACG,OAAO,GAAG,KAAK;IAC3B,CAAC,MAAM;MACL,IACED,CAAC,CAACE,MAAM,CAACX,KAAK,CAACY,IAAI,EAAE,CAACC,MAAM,GAAG,CAAC,IAChCR,SAAS,KAAKI,CAAC,CAACE,MAAM,CAACX,KAAK,EAC5B;QACAM,YAAY,CAACG,CAAC,CAACE,MAAM,CAACX,KAAK,CAAC;QAC5BI,eAAe,CAACK,CAAC,CAACE,MAAM,CAACX,KAAK,CAAC;QAC/B,OAAOF,MAAM,KAAK,UAAU,IAAIA,MAAM,CAACW,CAAC,CAAC;MAC3C,CAAC,MAAM;QACLL,eAAe,CAACC,SAAS,CAAC;MAC5B;IACF;EACF,CAAC,EACD,CAACP,MAAM,EAAEO,SAAS,CAAC,CACpB;EAED,IAAMS,aAAa,GAAGxB,WAAW,CAC/B,UAACmB,CAAC,EAAK;IACL,IAAIA,CAAC,CAACM,GAAG,KAAK,OAAO,EAAE;MACrBN,CAAC,CAACE,MAAM,CAACK,IAAI,EAAE;IACjB;IACA,IAAIP,CAAC,CAACM,GAAG,KAAK,QAAQ,EAAE;MACtBR,SAAS,CAACG,OAAO,GAAG,IAAI;MACxBD,CAAC,CAACE,MAAM,CAACK,IAAI,EAAE;MACf,OAAOjB,QAAQ,KAAK,UAAU,IAAIA,QAAQ,EAAE;IAC9C;EACF,CAAC,EACD,CAACA,QAAQ,CAAC,CACX;EAED,IAAMkB,YAAY,GAAG3B,WAAW,CAAC,UAACmB,CAAC,EAAK;IACtCL,eAAe,CAACK,CAAC,CAACE,MAAM,CAACX,KAAK,CAAC;EACjC,CAAC,EAAE,EAAE,CAAC;EAEN,oBACE,oBAAC,eAAe,eACVE,KAAK;IACT,GAAG,EAAEL,GAAI;IACT,UAAU,eACLI,UAAU;MACbD,KAAK,EAAEG,YAAY;MACnBe,MAAM,EAAEV,UAAU;MAClBW,SAAS,EAAEL,aAAa;MACxBM,QAAQ,EAAEH,YAAY;MACtBI,IAAI,EAAE,MAAM;MACZC,SAAS,EAAE3B,UAAU,CAAC,SAAS,EAAEM,UAAU,oBAAVA,UAAU,CAAEqB,SAAS;IAAC;EACvD,GACF;AAEN,CAAC,CACF;AAED1B,YAAY,CAAC2B,WAAW,GAAG,cAAc"}
|
|
@@ -27,8 +27,6 @@ interface ISelectDate {
|
|
|
27
27
|
tooltipText?: string;
|
|
28
28
|
/** Called when day is clicked */
|
|
29
29
|
onDayClick?: (day: Date, modifiers: DayModifiers) => void;
|
|
30
|
-
/** Called when month (or year) is changed */
|
|
31
|
-
onMonthChange?: (day: Date) => void;
|
|
32
30
|
/** Save changes in atomic mode */
|
|
33
31
|
onSave?: (dates?: {
|
|
34
32
|
from: number;
|
|
@@ -81,6 +79,10 @@ interface ISelectDate {
|
|
|
81
79
|
weekends?: number[];
|
|
82
80
|
/** Weekend label */
|
|
83
81
|
weekendLabel?: string;
|
|
82
|
+
/** Array of nonworking week days */
|
|
83
|
+
nonWorkingDaysOfWeek?: number[];
|
|
84
|
+
/** Nonworking week days label */
|
|
85
|
+
nonWorkingDaysOfWeekLabel?: string;
|
|
84
86
|
/** Allows weekends to be selected */
|
|
85
87
|
weekendIsSelectable?: boolean;
|
|
86
88
|
/** Popper Tooltip style */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SelectDate.d.ts","sourceRoot":"","sources":["../../../../src/components/SelectDate/SelectDate.tsx"],"names":[],"mappings":"AAAA,OAAc,EACZ,WAAW,EACX,EAAE,EAMF,aAAa,EACd,MAAM,OAAO,CAAC;AAGf,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAI3C,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAmCvC,aAAK,iBAAiB,GAAG,MAAM,GAAG,MAAM,GAAG,QAAQ,CAAC;AACpD,aAAK,mBAAmB,GAAG,CAAC,IAAI,EAAE,MAAM,KAAK,GAAG,CAAC,OAAO,CAAC;AAEzD,UAAU,WAAW;IACnB,8CAA8C;IAC9C,UAAU,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;IAClC,qEAAqE;IACrE,OAAO,CAAC,EAAE,iBAAiB,GAAG,mBAAmB,CAAC;IAClD,uBAAuB;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,yBAAyB;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,wBAAwB;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,wBAAwB;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,+BAA+B;IAC/B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,gCAAgC;IAChC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,iCAAiC;IACjC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,mBAAmB;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iCAAiC;IACjC,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,KAAK,IAAI,CAAC;IAC1D,
|
|
1
|
+
{"version":3,"file":"SelectDate.d.ts","sourceRoot":"","sources":["../../../../src/components/SelectDate/SelectDate.tsx"],"names":[],"mappings":"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"}
|
|
@@ -40,7 +40,6 @@ export var SelectDate = function SelectDate(_ref) {
|
|
|
40
40
|
_ref$modalCancelBtnTe = _ref.modalCancelBtnText,
|
|
41
41
|
modalCancelBtnText = _ref$modalCancelBtnTe === void 0 ? "Cancel" : _ref$modalCancelBtnTe,
|
|
42
42
|
onDayClick = _ref.onDayClick,
|
|
43
|
-
onMonthChange = _ref.onMonthChange,
|
|
44
43
|
onSave = _ref.onSave,
|
|
45
44
|
onCancel = _ref.onCancel,
|
|
46
45
|
onToggleDatePicker = _ref.onToggleDatePicker,
|
|
@@ -73,6 +72,10 @@ export var SelectDate = function SelectDate(_ref) {
|
|
|
73
72
|
weekends = _ref$weekends === void 0 ? [] : _ref$weekends,
|
|
74
73
|
_ref$weekendLabel = _ref.weekendLabel,
|
|
75
74
|
weekendLabel = _ref$weekendLabel === void 0 ? "Weekend" : _ref$weekendLabel,
|
|
75
|
+
_ref$nonWorkingDaysOf = _ref.nonWorkingDaysOfWeek,
|
|
76
|
+
nonWorkingDaysOfWeek = _ref$nonWorkingDaysOf === void 0 ? [] : _ref$nonWorkingDaysOf,
|
|
77
|
+
_ref$nonWorkingDaysOf2 = _ref.nonWorkingDaysOfWeekLabel,
|
|
78
|
+
nonWorkingDaysOfWeekLabel = _ref$nonWorkingDaysOf2 === void 0 ? "Unavailable" : _ref$nonWorkingDaysOf2,
|
|
76
79
|
_ref$weekendIsSelecta = _ref.weekendIsSelectable,
|
|
77
80
|
weekendIsSelectable = _ref$weekendIsSelecta === void 0 ? false : _ref$weekendIsSelecta,
|
|
78
81
|
tooltipText = _ref.tooltipText,
|
|
@@ -144,11 +147,8 @@ export var SelectDate = function SelectDate(_ref) {
|
|
|
144
147
|
month = _useState2[0],
|
|
145
148
|
setMonth = _useState2[1];
|
|
146
149
|
var handleMonthChange = useCallback(function (month) {
|
|
147
|
-
if (onMonthChange) {
|
|
148
|
-
onMonthChange(month);
|
|
149
|
-
}
|
|
150
150
|
setMonth(month);
|
|
151
|
-
}, [setMonth
|
|
151
|
+
}, [setMonth]);
|
|
152
152
|
var _useState3 = useState(modifiedDates),
|
|
153
153
|
newDates = _useState3[0],
|
|
154
154
|
setNewDates = _useState3[1];
|
|
@@ -281,8 +281,10 @@ export var SelectDate = function SelectDate(_ref) {
|
|
|
281
281
|
return globalDaysOff.some(function (data) {
|
|
282
282
|
return isDayInRange(currentDay, data);
|
|
283
283
|
});
|
|
284
|
+
}, _ref2[customClassNames.nonWorkingDaysOfWeek] = {
|
|
285
|
+
daysOfWeek: nonWorkingDaysOfWeek
|
|
284
286
|
}, _ref2;
|
|
285
|
-
}, [daysToModify, weekends, disableDaysBefore, weekendIsSelectable]);
|
|
287
|
+
}, [daysToModify, nonWorkingDaysOfWeek, weekends, disableDaysBefore, weekendIsSelectable]);
|
|
286
288
|
var renderDay = useCallback(function (day) {
|
|
287
289
|
var titles = [];
|
|
288
290
|
if (weekends.some(function (value) {
|
|
@@ -290,6 +292,9 @@ export var SelectDate = function SelectDate(_ref) {
|
|
|
290
292
|
})) {
|
|
291
293
|
titles.push(weekendLabel);
|
|
292
294
|
}
|
|
295
|
+
if (nonWorkingDaysOfWeek.includes(day.getDay())) {
|
|
296
|
+
titles.push(nonWorkingDaysOfWeekLabel);
|
|
297
|
+
}
|
|
293
298
|
|
|
294
299
|
// construct new date because react-day-picker returns date with hours set
|
|
295
300
|
var currentDay = new Date(day.getFullYear(), day.getMonth(), day.getDate());
|
|
@@ -316,7 +321,7 @@ export var SelectDate = function SelectDate(_ref) {
|
|
|
316
321
|
}, child);
|
|
317
322
|
}
|
|
318
323
|
return child;
|
|
319
|
-
}, [
|
|
324
|
+
}, [weekends, nonWorkingDaysOfWeek, daysToModify, weekendLabel, nonWorkingDaysOfWeekLabel, popperTooltipClassName, popperTooltipStyle]);
|
|
320
325
|
var renderDatePickerForm = useCallback(function () {
|
|
321
326
|
return /*#__PURE__*/React.createElement(DatePickerForm, {
|
|
322
327
|
onMonthChange: handleMonthChange,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SelectDate.js","names":["React","useCallback","useEffect","useMemo","useState","moment","classnames","Menu","DatePickerForm","customClassNames","Tooltip","SelectDateTarget","StyledConfirmDialog","StyledSelectDate","StyledSelectDateButton","useLocalization","formatDate","getUtcTimestampFromDate","date","utc","getFullYear","getMonth","getDate","unix","isDayInRange","day","data","repeating","from","Date","to","SelectDate","changeMode","mode","trigger","labelType","saveButtonText","cancelButtonText","clearButtonText","modalHeaderText","modalDiscardMessage","modalDiscardBtnText","modalCancelBtnText","onDayClick","onMonthChange","onSave","onCancel","onToggleDatePicker","required","dateRequired","defaultTimezoneAware","longDateFormat","defaultShowDatePicker","firstDayOfWeek","selectedDays","selectionMode","menuClassName","targetClassName","icon","defaultLabelText","targetTextClassName","targetIconClassName","backgroundElementClass","passedDateFormat","dateFormat","defaultMonth","daysToModify","weekends","weekendLabel","weekendIsSelectable","tooltipText","popperTooltipClassName","popperClassName","popperTooltipStyle","position","disableDaysBefore","timezoneAware","setTimezoneAware","localization","labelText","endDate","local","startDate","formattedEndDate","formattedStartDate","modifiedDates","toDate","offsetFrom","utcOffset","offsetTo","handleModifiedSave","selectedDates","Object","prototype","hasOwnProperty","call","undefined","getDefaultMonth","month","setMonth","handleMonthChange","newDates","setNewDates","showDiscardModal","setShowDiscardModal","showDatePicker","setShowDatePicker","disabledSaveButton","handleSave","handleChange","dates","handleBeforeCloseMenu","result","selectedDaysFrom","selectedDaysTo","newDatesFrom","newDatesTo","format","handleClose","handleCancel","event","preventDefault","handleShowDatePicker","handleCloseDiscardModal","handleClear","handleSaveDiscardModal","modifiers","userAvailabilities","filter","type","globalDaysOff","selectableGlobalDaysOff","userAvailability","currentDay","some","weekend","value","getDay","nonWorkingDay","nonWorkingDays","disabled","toJSON","slice","renderDay","titles","push","forEach","title","child","length","map","index","renderDatePickerForm","renderTargetEl","displayName"],"sources":["../../../../src/components/SelectDate/SelectDate.tsx"],"sourcesContent":["import React, {\n ElementType,\n FC,\n useCallback,\n useEffect,\n useMemo,\n useState,\n ReactNode,\n CSSProperties,\n} from \"react\";\nimport moment from \"moment\";\nimport classnames from \"classnames\";\nimport { DayModifiers } from \"react-day-picker\";\nimport { Placement } from \"@popperjs/core\";\nimport { Menu } from \"../Menu/Menu\";\nimport { DatePickerForm } from \"./DatePickerForm\";\nimport { customClassNames } from \"../DatePicker/ClassNames\";\nimport { DaysToModify } from \"./types\";\nimport { Tooltip } from \"../Tooltip/Tooltip\";\nimport { SelectDateTarget } from \"./SelectDateTarget\";\nimport {\n StyledConfirmDialog,\n StyledSelectDate,\n StyledSelectDateButton,\n} from \"./Styles\";\nimport { useLocalization } from \"../Localization\";\nimport { formatDate } from \"../../utils/dateUtils\";\n\nconst getUtcTimestampFromDate = (date: Date): number => {\n return moment\n .utc([date.getFullYear(), date.getMonth(), date.getDate()])\n .unix();\n};\n\nconst isDayInRange = (day: Date, data: 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\ninterface ISelectDate {\n /** Change mode - can be atomic and instant */\n changeMode?: \"atomic\" | \"instant\";\n /** Trigger - can be text, icon, inline, or custom render function */\n trigger?: TriggerStringType | TriggerFunctionType;\n /** Save button text */\n saveButtonText?: string;\n /** Cancel button text */\n cancelButtonText?: string;\n /** Clear button text */\n clearButtonText?: string;\n /** Modal header text */\n modalHeaderText?: string;\n /** Modal cancel button text */\n modalCancelBtnText?: string;\n /** Modal discard button text */\n modalDiscardBtnText?: string;\n /** Modal discard message text */\n modalDiscardMessage?: string;\n /** Tooltip text */\n tooltipText?: string;\n /** Called when day is clicked */\n onDayClick?: (day: Date, modifiers: DayModifiers) => void;\n /** Called when month (or year) is changed */\n onMonthChange?: (day: Date) => void;\n /** Save changes in atomic mode */\n onSave?: (dates?: { from: number; to: number }) => void;\n /** On cancel closes datepicker or opens disard modal in atomic mode */\n onCancel?: () => void;\n /** Clear dates when they are not required */\n onClear?: () => void;\n /** Use this callback to get is picker visible */\n onToggleDatePicker?: (value: boolean) => void;\n /** Set selected day or days */\n selectedDays?: { from: number; to: number };\n /** Set month */\n defaultMonth?: Date;\n /** Set selection range */\n selectionMode?: string;\n /** Set is date required */\n required?: boolean;\n /** Set default show on date picker (only for text and icon mode) */\n defaultShowDatePicker?: boolean;\n /** Long date format (Always show year) */\n longDateFormat?: boolean;\n /** Set is date required */\n defaultTimezoneAware?: boolean;\n /** Set first day of week */\n firstDayOfWeek?: number;\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 /** Allows weekends to be selected */\n weekendIsSelectable?: boolean;\n /** Popper Tooltip style */\n popperTooltipStyle?: CSSProperties;\n /** Popper Tooltip class name*/\n popperTooltipClassName?: string;\n /** Popper class name*/\n popperClassName?: string;\n /** Position of selectDate menu */\n position?: Placement;\n /** Disable days before specified date */\n disableDaysBefore?: Date;\n}\n\nexport const SelectDate: FC<ISelectDate> = ({\n changeMode: mode = \"instant\",\n trigger: labelType = \"text\",\n saveButtonText = \"Save\",\n cancelButtonText = \"Cancel\",\n clearButtonText = \"Clear\",\n modalHeaderText = \"Discard changes?\",\n modalDiscardMessage = \"All unsaved changes will be lost.\",\n modalDiscardBtnText = \"OK\",\n modalCancelBtnText = \"Cancel\",\n onDayClick,\n onMonthChange,\n onSave,\n onCancel,\n onToggleDatePicker,\n required: dateRequired = false,\n defaultTimezoneAware = false,\n longDateFormat = false,\n defaultShowDatePicker = false,\n firstDayOfWeek = 0,\n selectedDays,\n selectionMode = \"custom\",\n menuClassName,\n targetClassName,\n icon,\n defaultLabelText = \"Set...\",\n targetTextClassName,\n targetIconClassName,\n backgroundElementClass,\n dateFormat: passedDateFormat,\n defaultMonth,\n daysToModify = [],\n weekends = [],\n weekendLabel = \"Weekend\",\n weekendIsSelectable = false,\n tooltipText,\n popperTooltipClassName,\n popperClassName,\n popperTooltipStyle,\n position,\n disableDaysBefore,\n}) => {\n const [timezoneAware, setTimezoneAware] = useState(defaultTimezoneAware);\n const localization = useLocalization();\n const dateFormat = passedDateFormat\n ? passedDateFormat\n : localization.dateFormat;\n\n const labelText = useMemo(() => {\n if (!selectedDays) {\n return defaultLabelText;\n } else {\n const endDate = timezoneAware\n ? moment.unix(selectedDays.to).local()\n : moment.unix(selectedDays.to).utc();\n\n const startDate = timezoneAware\n ? moment.unix(selectedDays.from).local()\n : moment.unix(selectedDays.from).utc();\n\n const formattedEndDate = formatDate(endDate, dateFormat, longDateFormat);\n const formattedStartDate = formatDate(\n startDate,\n dateFormat,\n longDateFormat\n );\n\n if (selectedDays.from === selectedDays.to) {\n return formattedEndDate;\n }\n\n return `${formattedStartDate} - ${formattedEndDate}`;\n }\n }, [\n selectedDays,\n dateFormat,\n timezoneAware,\n defaultLabelText,\n longDateFormat,\n ]);\n\n const modifiedDates = useMemo(() => {\n if (\n typeof selectedDays === \"object\" &&\n !!selectedDays.from &&\n !!selectedDays.to\n ) {\n if (timezoneAware) {\n return {\n from: moment.unix(selectedDays.from).toDate(),\n to: moment.unix(selectedDays.to).toDate(),\n };\n }\n const offsetFrom = moment.unix(selectedDays.from).utcOffset() * 60;\n const offsetTo = moment.unix(selectedDays.to).utcOffset() * 60;\n return {\n from: new Date((selectedDays.from - offsetFrom) * 1000),\n to: new Date((selectedDays.to - offsetTo) * 1000),\n };\n }\n }, [selectedDays, timezoneAware]);\n\n const handleModifiedSave = useCallback(\n (selectedDates) => {\n setTimezoneAware(false);\n if (typeof onSave === \"function\") {\n if (\n typeof selectedDates === \"object\" &&\n Object.prototype.hasOwnProperty.call(selectedDates, \"from\") &&\n Object.prototype.hasOwnProperty.call(selectedDates, \"to\")\n ) {\n onSave({\n from: getUtcTimestampFromDate(selectedDates.from),\n to: getUtcTimestampFromDate(selectedDates.to),\n });\n } else {\n onSave(undefined);\n }\n }\n },\n [onSave]\n );\n\n const getDefaultMonth = useCallback(() => {\n let date = new Date();\n\n if (typeof selectedDays === \"object\" && !!selectedDays.from) {\n date = timezoneAware\n ? new Date(selectedDays.from * 1000)\n : new Date(\n (selectedDays.from -\n moment.unix(selectedDays.from).utcOffset() * 60) *\n 1000\n );\n } else if (defaultMonth) {\n date = defaultMonth;\n }\n\n // forcing second day in month\n return new Date(date.getFullYear(), date.getMonth(), 2);\n }, [defaultMonth, selectedDays, timezoneAware]);\n\n const [month, setMonth] = useState(getDefaultMonth);\n\n const handleMonthChange = useCallback(\n (month) => {\n if (onMonthChange) {\n onMonthChange(month);\n }\n setMonth(month);\n },\n [setMonth, onMonthChange]\n );\n\n const [newDates, setNewDates] = useState(modifiedDates);\n const [showDiscardModal, setShowDiscardModal] = useState(false);\n const [showDatePicker, setShowDatePicker] = useState(defaultShowDatePicker);\n\n const disabledSaveButton = useMemo(() => {\n return (\n modifiedDates?.from === newDates?.from &&\n modifiedDates?.to === newDates?.to\n );\n }, [modifiedDates, newDates]);\n\n useEffect(() => {\n setShowDatePicker(defaultShowDatePicker);\n }, [defaultShowDatePicker]);\n\n useEffect(() => {\n modifiedDates && setNewDates(modifiedDates);\n }, [modifiedDates]);\n\n useEffect(() => {\n typeof onToggleDatePicker === \"function\" &&\n onToggleDatePicker(showDatePicker);\n }, [showDatePicker, onToggleDatePicker]);\n\n useEffect(() => {\n if (!showDatePicker) {\n setMonth(getDefaultMonth());\n }\n }, [showDatePicker, getDefaultMonth]);\n\n const handleSave = useCallback(() => {\n handleModifiedSave(newDates);\n setShowDatePicker(false);\n }, [newDates, handleModifiedSave]);\n\n const handleChange = useCallback(\n (dates) => {\n if (mode !== \"atomic\") {\n handleModifiedSave(dates);\n }\n setNewDates(dates);\n },\n [mode, handleModifiedSave]\n );\n\n const handleBeforeCloseMenu = useCallback(() => {\n let result = true;\n\n if ((modifiedDates && !newDates) || (!modifiedDates && newDates)) {\n result = false;\n }\n\n const selectedDaysFrom = modifiedDates?.from;\n const selectedDaysTo = modifiedDates?.to;\n const newDatesFrom = newDates?.from;\n const newDatesTo = newDates?.to;\n\n if (\n selectedDaysFrom &&\n newDatesFrom &&\n selectedDaysTo &&\n newDatesTo &&\n (moment(selectedDaysFrom).format(\"DD-MM-YYYY\") !==\n moment(newDatesFrom).format(\"DD-MM-YYYY\") ||\n moment(selectedDaysTo).format(\"DD-MM-YYYY\") !==\n moment(newDatesTo).format(\"DD-MM-YYYY\"))\n ) {\n result = false;\n }\n\n if (!result) {\n setShowDiscardModal(true);\n }\n\n return result;\n }, [modifiedDates, newDates]);\n\n const handleClose = useCallback(() => {\n if (mode !== \"atomic\" || handleBeforeCloseMenu()) {\n typeof onCancel === \"function\" && onCancel();\n setShowDatePicker(false);\n }\n }, [mode, onCancel, handleBeforeCloseMenu]);\n\n const handleCancel = useCallback(\n (event) => {\n event && event.preventDefault();\n return handleClose();\n },\n [handleClose]\n );\n\n const handleShowDatePicker = useCallback(() => {\n setShowDatePicker(!showDatePicker);\n }, [showDatePicker]);\n\n const handleCloseDiscardModal = useCallback(() => {\n setShowDiscardModal(false);\n }, []);\n\n const handleClear = useCallback(() => {\n if (!dateRequired) {\n setNewDates(undefined);\n if (mode === \"instant\") {\n handleModifiedSave(undefined);\n }\n }\n }, [mode, dateRequired, handleModifiedSave]);\n\n const handleSaveDiscardModal = useCallback(() => {\n setNewDates(modifiedDates);\n setShowDiscardModal(false);\n setShowDatePicker(false);\n }, [modifiedDates]);\n\n const modifiers = useMemo(() => {\n const userAvailabilities = daysToModify.filter(\n (data) => data.type === \"user_day_off\"\n );\n const globalDaysOff = daysToModify.filter(\n (data) => data.type === \"global_day_off\"\n );\n const selectableGlobalDaysOff = daysToModify.filter(\n (data) => data.type === \"selectable_global_day_off\"\n );\n\n return {\n [customClassNames.userAvailability]: (day: Date): boolean => {\n // construct new date because react-day-picker returns date with hours set\n const currentDay = new Date(\n day.getFullYear(),\n day.getMonth(),\n day.getDate()\n );\n return userAvailabilities.some((data) =>\n isDayInRange(currentDay, data)\n );\n },\n [customClassNames.weekend]: (day: Date): boolean => {\n return weekends.some((value) => day.getDay() === value);\n },\n [customClassNames.nonWorkingDay]: (day: Date): boolean => {\n // return true if day is weekend day\n if (weekends.some((value) => value === day.getDay())) {\n return true;\n }\n const nonWorkingDays = [...selectableGlobalDaysOff, ...globalDaysOff];\n const currentDay = new Date(\n day.getFullYear(),\n day.getMonth(),\n day.getDate()\n );\n return nonWorkingDays.some((data) => isDayInRange(currentDay, data));\n },\n [customClassNames.disabled]: (day: Date): boolean => {\n if (disableDaysBefore) {\n if (\n day.toJSON().slice(0, 10) < disableDaysBefore.toJSON().slice(0, 10)\n ) {\n return true;\n }\n }\n // return true if day is weekend day\n if (\n !weekendIsSelectable &&\n weekends.some((value) => value === day.getDay())\n ) {\n return true;\n }\n // construct new date because react-day-picker returns date with hours set\n const currentDay = new Date(\n day.getFullYear(),\n day.getMonth(),\n day.getDate()\n );\n return globalDaysOff.some((data) => isDayInRange(currentDay, data));\n },\n };\n }, [daysToModify, weekends, disableDaysBefore, weekendIsSelectable]);\n\n const renderDay = useCallback(\n (day: Date): ReactNode => {\n const titles: string[] = [];\n\n if (weekends.some((value) => day.getDay() === value)) {\n titles.push(weekendLabel);\n }\n\n // construct new date because react-day-picker returns date with hours set\n const currentDay = new Date(\n day.getFullYear(),\n day.getMonth(),\n day.getDate()\n );\n\n daysToModify.forEach((data) => {\n if (isDayInRange(currentDay, data)) {\n titles.push(data.title);\n }\n });\n\n const child = (\n <div className=\"c-DayPicker-Day-Number\">{day.getDate()}</div>\n );\n\n if (titles.length) {\n const title = (\n <div key={`title-wrapper-${day.getDate()}`}>\n {titles.map((title: string, index: number) => (\n <div key={`title-text-${index}`}>{title}</div>\n ))}\n </div>\n );\n\n return (\n <Tooltip\n title={title}\n popperTooltipClassName={popperTooltipClassName}\n popperTooltipStyle={popperTooltipStyle}\n >\n {child}\n </Tooltip>\n );\n }\n\n return child;\n },\n [\n weekendLabel,\n weekends,\n daysToModify,\n popperTooltipClassName,\n popperTooltipStyle,\n ]\n );\n\n const renderDatePickerForm = useCallback((): JSX.Element => {\n return (\n <DatePickerForm\n onMonthChange={handleMonthChange}\n month={month}\n mode={mode}\n selectionMode={selectionMode}\n dateRequired={dateRequired}\n selectedDays={newDates}\n firstDayOfWeek={firstDayOfWeek}\n saveButtonText={saveButtonText}\n cancelButtonText={cancelButtonText}\n clearButtonText={clearButtonText}\n onDayClick={onDayClick}\n onSave={handleSave}\n onChange={handleChange}\n onCancel={handleCancel}\n onClear={handleClear}\n disabledSaveButton={disabledSaveButton}\n modifiers={modifiers}\n renderDay={renderDay}\n />\n );\n }, [\n handleMonthChange,\n month,\n mode,\n selectionMode,\n dateRequired,\n newDates,\n firstDayOfWeek,\n saveButtonText,\n cancelButtonText,\n clearButtonText,\n onDayClick,\n handleSave,\n handleChange,\n handleCancel,\n handleClear,\n disabledSaveButton,\n modifiers,\n renderDay,\n ]);\n\n const renderTargetEl = useMemo(() => {\n if (labelType === \"icon\" && icon) {\n return (\n <SelectDateTarget\n icon={icon}\n title={tooltipText}\n targetIconClassName={targetIconClassName}\n forceHideTooltip={showDatePicker}\n popperTooltipClassName={popperTooltipClassName}\n popperTooltipStyle={popperTooltipStyle}\n active={showDatePicker}\n />\n );\n }\n if (typeof labelType === \"function\") {\n return labelType(labelText);\n }\n return (\n <StyledSelectDateButton\n type=\"button\"\n className={classnames(\"date-picker-target\", targetClassName)}\n >\n <span className={targetTextClassName}>{labelText}</span>\n </StyledSelectDateButton>\n );\n }, [\n icon,\n labelText,\n labelType,\n popperTooltipClassName,\n popperTooltipStyle,\n showDatePicker,\n targetClassName,\n targetIconClassName,\n targetTextClassName,\n tooltipText,\n ]);\n\n return (\n <StyledSelectDate className=\"select-date\">\n {labelType !== \"inline\" ? (\n <Menu\n target={renderTargetEl}\n open={showDatePicker}\n onOpen={handleShowDatePicker}\n onBeforeClose={handleBeforeCloseMenu}\n onClose={handleClose}\n position={position}\n menuClassName={menuClassName}\n popperClassName={popperClassName}\n backgroundElementClass={backgroundElementClass}\n >\n {renderDatePickerForm()}\n </Menu>\n ) : (\n renderDatePickerForm()\n )}\n {mode === \"atomic\" ? (\n <StyledConfirmDialog\n className=\"modal-select-date\"\n open={showDiscardModal}\n onCancel={handleCloseDiscardModal}\n onConfirm={handleSaveDiscardModal}\n dialogTitle={modalHeaderText}\n dialogContent={modalDiscardMessage}\n cancelBtnText={modalCancelBtnText}\n confirmBtnText={modalDiscardBtnText}\n />\n ) : null}\n </StyledSelectDate>\n );\n};\n\nSelectDate.displayName = \"SelectDate\";\n"],"mappings":"AAAA,OAAOA,KAAK,IAGVC,WAAW,EACXC,SAAS,EACTC,OAAO,EACPC,QAAQ,QAGH,OAAO;AACd,OAAOC,MAAM,MAAM,QAAQ;AAC3B,OAAOC,UAAU,MAAM,YAAY;AAGnC,SAASC,IAAI,QAAQ,cAAc;AACnC,SAASC,cAAc,QAAQ,kBAAkB;AACjD,SAASC,gBAAgB,QAAQ,0BAA0B;AAE3D,SAASC,OAAO,QAAQ,oBAAoB;AAC5C,SAASC,gBAAgB,QAAQ,oBAAoB;AACrD,SACEC,mBAAmB,EACnBC,gBAAgB,EAChBC,sBAAsB,QACjB,UAAU;AACjB,SAASC,eAAe,QAAQ,iBAAiB;AACjD,SAASC,UAAU,QAAQ,uBAAuB;AAElD,IAAMC,uBAAuB,GAAG,SAA1BA,uBAAuB,CAAIC,IAAU,EAAa;EACtD,OAAOb,MAAM,CACVc,GAAG,CAAC,CAACD,IAAI,CAACE,WAAW,EAAE,EAAEF,IAAI,CAACG,QAAQ,EAAE,EAAEH,IAAI,CAACI,OAAO,EAAE,CAAC,CAAC,CAC1DC,IAAI,EAAE;AACX,CAAC;AAED,IAAMC,YAAY,GAAG,SAAfA,YAAY,CAAIC,GAAS,EAAEC,IAAkB,EAAc;EAC/D,IAAIA,IAAI,CAACC,SAAS,EAAE;IAClB,IAAMC,IAAI,GAAG,IAAIC,IAAI,CACnBJ,GAAG,CAACL,WAAW,EAAE,EACjBM,IAAI,CAACE,IAAI,CAACP,QAAQ,EAAE,EACpBK,IAAI,CAACE,IAAI,CAACN,OAAO,EAAE,CACpB;IACD,IAAMQ,EAAE,GAAG,IAAID,IAAI,CACjBJ,GAAG,CAACL,WAAW,EAAE,EACjBM,IAAI,CAACI,EAAE,CAACT,QAAQ,EAAE,EAClBK,IAAI,CAACI,EAAE,CAACR,OAAO,EAAE,CAClB;IACD,OAAOG,GAAG,IAAIG,IAAI,IAAIH,GAAG,IAAIK,EAAE;EACjC;EAEA,OAAOL,GAAG,IAAIC,IAAI,CAACE,IAAI,IAAIH,GAAG,IAAIC,IAAI,CAACI,EAAE;AAC3C,CAAC;AA0FD,OAAO,IAAMC,UAA2B,GAAG,SAA9BA,UAA2B,OAyClC;EAAA,2BAxCJC,UAAU;IAAEC,IAAI,gCAAG,SAAS;IAAA,oBAC5BC,OAAO;IAAEC,SAAS,6BAAG,MAAM;IAAA,2BAC3BC,cAAc;IAAdA,cAAc,oCAAG,MAAM;IAAA,6BACvBC,gBAAgB;IAAhBA,gBAAgB,sCAAG,QAAQ;IAAA,4BAC3BC,eAAe;IAAfA,eAAe,qCAAG,OAAO;IAAA,4BACzBC,eAAe;IAAfA,eAAe,qCAAG,kBAAkB;IAAA,6BACpCC,mBAAmB;IAAnBA,mBAAmB,sCAAG,mCAAmC;IAAA,6BACzDC,mBAAmB;IAAnBA,mBAAmB,sCAAG,IAAI;IAAA,6BAC1BC,kBAAkB;IAAlBA,kBAAkB,sCAAG,QAAQ;IAC7BC,UAAU,QAAVA,UAAU;IACVC,aAAa,QAAbA,aAAa;IACbC,MAAM,QAANA,MAAM;IACNC,QAAQ,QAARA,QAAQ;IACRC,kBAAkB,QAAlBA,kBAAkB;IAAA,qBAClBC,QAAQ;IAAEC,YAAY,8BAAG,KAAK;IAAA,6BAC9BC,oBAAoB;IAApBA,oBAAoB,sCAAG,KAAK;IAAA,2BAC5BC,cAAc;IAAdA,cAAc,oCAAG,KAAK;IAAA,6BACtBC,qBAAqB;IAArBA,qBAAqB,sCAAG,KAAK;IAAA,2BAC7BC,cAAc;IAAdA,cAAc,oCAAG,CAAC;IAClBC,YAAY,QAAZA,YAAY;IAAA,0BACZC,aAAa;IAAbA,aAAa,mCAAG,QAAQ;IACxBC,aAAa,QAAbA,aAAa;IACbC,eAAe,QAAfA,eAAe;IACfC,IAAI,QAAJA,IAAI;IAAA,6BACJC,gBAAgB;IAAhBA,gBAAgB,sCAAG,QAAQ;IAC3BC,mBAAmB,QAAnBA,mBAAmB;IACnBC,mBAAmB,QAAnBA,mBAAmB;IACnBC,sBAAsB,QAAtBA,sBAAsB;IACVC,gBAAgB,QAA5BC,UAAU;IACVC,YAAY,QAAZA,YAAY;IAAA,yBACZC,YAAY;IAAZA,YAAY,kCAAG,EAAE;IAAA,qBACjBC,QAAQ;IAARA,QAAQ,8BAAG,EAAE;IAAA,yBACbC,YAAY;IAAZA,YAAY,kCAAG,SAAS;IAAA,6BACxBC,mBAAmB;IAAnBA,mBAAmB,sCAAG,KAAK;IAC3BC,WAAW,QAAXA,WAAW;IACXC,sBAAsB,QAAtBA,sBAAsB;IACtBC,eAAe,QAAfA,eAAe;IACfC,kBAAkB,QAAlBA,kBAAkB;IAClBC,QAAQ,QAARA,QAAQ;IACRC,iBAAiB,QAAjBA,iBAAiB;EAEjB,gBAA0CvE,QAAQ,CAAC8C,oBAAoB,CAAC;IAAjE0B,aAAa;IAAEC,gBAAgB;EACtC,IAAMC,YAAY,GAAG/D,eAAe,EAAE;EACtC,IAAMiD,UAAU,GAAGD,gBAAgB,GAC/BA,gBAAgB,GAChBe,YAAY,CAACd,UAAU;EAE3B,IAAMe,SAAS,GAAG5E,OAAO,CAAC,YAAM;IAC9B,IAAI,CAACmD,YAAY,EAAE;MACjB,OAAOK,gBAAgB;IACzB,CAAC,MAAM;MACL,IAAMqB,OAAO,GAAGJ,aAAa,GACzBvE,MAAM,CAACkB,IAAI,CAAC+B,YAAY,CAACxB,EAAE,CAAC,CAACmD,KAAK,EAAE,GACpC5E,MAAM,CAACkB,IAAI,CAAC+B,YAAY,CAACxB,EAAE,CAAC,CAACX,GAAG,EAAE;MAEtC,IAAM+D,SAAS,GAAGN,aAAa,GAC3BvE,MAAM,CAACkB,IAAI,CAAC+B,YAAY,CAAC1B,IAAI,CAAC,CAACqD,KAAK,EAAE,GACtC5E,MAAM,CAACkB,IAAI,CAAC+B,YAAY,CAAC1B,IAAI,CAAC,CAACT,GAAG,EAAE;MAExC,IAAMgE,gBAAgB,GAAGnE,UAAU,CAACgE,OAAO,EAAEhB,UAAU,EAAEb,cAAc,CAAC;MACxE,IAAMiC,kBAAkB,GAAGpE,UAAU,CACnCkE,SAAS,EACTlB,UAAU,EACVb,cAAc,CACf;MAED,IAAIG,YAAY,CAAC1B,IAAI,KAAK0B,YAAY,CAACxB,EAAE,EAAE;QACzC,OAAOqD,gBAAgB;MACzB;MAEA,OAAUC,kBAAkB,WAAMD,gBAAgB;IACpD;EACF,CAAC,EAAE,CACD7B,YAAY,EACZU,UAAU,EACVY,aAAa,EACbjB,gBAAgB,EAChBR,cAAc,CACf,CAAC;EAEF,IAAMkC,aAAa,GAAGlF,OAAO,CAAC,YAAM;IAClC,IACE,OAAOmD,YAAY,KAAK,QAAQ,IAChC,CAAC,CAACA,YAAY,CAAC1B,IAAI,IACnB,CAAC,CAAC0B,YAAY,CAACxB,EAAE,EACjB;MACA,IAAI8C,aAAa,EAAE;QACjB,OAAO;UACLhD,IAAI,EAAEvB,MAAM,CAACkB,IAAI,CAAC+B,YAAY,CAAC1B,IAAI,CAAC,CAAC0D,MAAM,EAAE;UAC7CxD,EAAE,EAAEzB,MAAM,CAACkB,IAAI,CAAC+B,YAAY,CAACxB,EAAE,CAAC,CAACwD,MAAM;QACzC,CAAC;MACH;MACA,IAAMC,UAAU,GAAGlF,MAAM,CAACkB,IAAI,CAAC+B,YAAY,CAAC1B,IAAI,CAAC,CAAC4D,SAAS,EAAE,GAAG,EAAE;MAClE,IAAMC,QAAQ,GAAGpF,MAAM,CAACkB,IAAI,CAAC+B,YAAY,CAACxB,EAAE,CAAC,CAAC0D,SAAS,EAAE,GAAG,EAAE;MAC9D,OAAO;QACL5D,IAAI,EAAE,IAAIC,IAAI,CAAC,CAACyB,YAAY,CAAC1B,IAAI,GAAG2D,UAAU,IAAI,IAAI,CAAC;QACvDzD,EAAE,EAAE,IAAID,IAAI,CAAC,CAACyB,YAAY,CAACxB,EAAE,GAAG2D,QAAQ,IAAI,IAAI;MAClD,CAAC;IACH;EACF,CAAC,EAAE,CAACnC,YAAY,EAAEsB,aAAa,CAAC,CAAC;EAEjC,IAAMc,kBAAkB,GAAGzF,WAAW,CACpC,UAAC0F,aAAa,EAAK;IACjBd,gBAAgB,CAAC,KAAK,CAAC;IACvB,IAAI,OAAOhC,MAAM,KAAK,UAAU,EAAE;MAChC,IACE,OAAO8C,aAAa,KAAK,QAAQ,IACjCC,MAAM,CAACC,SAAS,CAACC,cAAc,CAACC,IAAI,CAACJ,aAAa,EAAE,MAAM,CAAC,IAC3DC,MAAM,CAACC,SAAS,CAACC,cAAc,CAACC,IAAI,CAACJ,aAAa,EAAE,IAAI,CAAC,EACzD;QACA9C,MAAM,CAAC;UACLjB,IAAI,EAAEX,uBAAuB,CAAC0E,aAAa,CAAC/D,IAAI,CAAC;UACjDE,EAAE,EAAEb,uBAAuB,CAAC0E,aAAa,CAAC7D,EAAE;QAC9C,CAAC,CAAC;MACJ,CAAC,MAAM;QACLe,MAAM,CAACmD,SAAS,CAAC;MACnB;IACF;EACF,CAAC,EACD,CAACnD,MAAM,CAAC,CACT;EAED,IAAMoD,eAAe,GAAGhG,WAAW,CAAC,YAAM;IACxC,IAAIiB,IAAI,GAAG,IAAIW,IAAI,EAAE;IAErB,IAAI,OAAOyB,YAAY,KAAK,QAAQ,IAAI,CAAC,CAACA,YAAY,CAAC1B,IAAI,EAAE;MAC3DV,IAAI,GAAG0D,aAAa,GAChB,IAAI/C,IAAI,CAACyB,YAAY,CAAC1B,IAAI,GAAG,IAAI,CAAC,GAClC,IAAIC,IAAI,CACN,CAACyB,YAAY,CAAC1B,IAAI,GAChBvB,MAAM,CAACkB,IAAI,CAAC+B,YAAY,CAAC1B,IAAI,CAAC,CAAC4D,SAAS,EAAE,GAAG,EAAE,IAC/C,IAAI,CACP;IACP,CAAC,MAAM,IAAIvB,YAAY,EAAE;MACvB/C,IAAI,GAAG+C,YAAY;IACrB;;IAEA;IACA,OAAO,IAAIpC,IAAI,CAACX,IAAI,CAACE,WAAW,EAAE,EAAEF,IAAI,CAACG,QAAQ,EAAE,EAAE,CAAC,CAAC;EACzD,CAAC,EAAE,CAAC4C,YAAY,EAAEX,YAAY,EAAEsB,aAAa,CAAC,CAAC;EAE/C,iBAA0BxE,QAAQ,CAAC6F,eAAe,CAAC;IAA5CC,KAAK;IAAEC,QAAQ;EAEtB,IAAMC,iBAAiB,GAAGnG,WAAW,CACnC,UAACiG,KAAK,EAAK;IACT,IAAItD,aAAa,EAAE;MACjBA,aAAa,CAACsD,KAAK,CAAC;IACtB;IACAC,QAAQ,CAACD,KAAK,CAAC;EACjB,CAAC,EACD,CAACC,QAAQ,EAAEvD,aAAa,CAAC,CAC1B;EAED,iBAAgCxC,QAAQ,CAACiF,aAAa,CAAC;IAAhDgB,QAAQ;IAAEC,WAAW;EAC5B,iBAAgDlG,QAAQ,CAAC,KAAK,CAAC;IAAxDmG,gBAAgB;IAAEC,mBAAmB;EAC5C,iBAA4CpG,QAAQ,CAACgD,qBAAqB,CAAC;IAApEqD,cAAc;IAAEC,iBAAiB;EAExC,IAAMC,kBAAkB,GAAGxG,OAAO,CAAC,YAAM;IACvC,OACE,CAAAkF,aAAa,oBAAbA,aAAa,CAAEzD,IAAI,OAAKyE,QAAQ,oBAARA,QAAQ,CAAEzE,IAAI,KACtC,CAAAyD,aAAa,oBAAbA,aAAa,CAAEvD,EAAE,OAAKuE,QAAQ,oBAARA,QAAQ,CAAEvE,EAAE;EAEtC,CAAC,EAAE,CAACuD,aAAa,EAAEgB,QAAQ,CAAC,CAAC;EAE7BnG,SAAS,CAAC,YAAM;IACdwG,iBAAiB,CAACtD,qBAAqB,CAAC;EAC1C,CAAC,EAAE,CAACA,qBAAqB,CAAC,CAAC;EAE3BlD,SAAS,CAAC,YAAM;IACdmF,aAAa,IAAIiB,WAAW,CAACjB,aAAa,CAAC;EAC7C,CAAC,EAAE,CAACA,aAAa,CAAC,CAAC;EAEnBnF,SAAS,CAAC,YAAM;IACd,OAAO6C,kBAAkB,KAAK,UAAU,IACtCA,kBAAkB,CAAC0D,cAAc,CAAC;EACtC,CAAC,EAAE,CAACA,cAAc,EAAE1D,kBAAkB,CAAC,CAAC;EAExC7C,SAAS,CAAC,YAAM;IACd,IAAI,CAACuG,cAAc,EAAE;MACnBN,QAAQ,CAACF,eAAe,EAAE,CAAC;IAC7B;EACF,CAAC,EAAE,CAACQ,cAAc,EAAER,eAAe,CAAC,CAAC;EAErC,IAAMW,UAAU,GAAG3G,WAAW,CAAC,YAAM;IACnCyF,kBAAkB,CAACW,QAAQ,CAAC;IAC5BK,iBAAiB,CAAC,KAAK,CAAC;EAC1B,CAAC,EAAE,CAACL,QAAQ,EAAEX,kBAAkB,CAAC,CAAC;EAElC,IAAMmB,YAAY,GAAG5G,WAAW,CAC9B,UAAC6G,KAAK,EAAK;IACT,IAAI7E,IAAI,KAAK,QAAQ,EAAE;MACrByD,kBAAkB,CAACoB,KAAK,CAAC;IAC3B;IACAR,WAAW,CAACQ,KAAK,CAAC;EACpB,CAAC,EACD,CAAC7E,IAAI,EAAEyD,kBAAkB,CAAC,CAC3B;EAED,IAAMqB,qBAAqB,GAAG9G,WAAW,CAAC,YAAM;IAC9C,IAAI+G,MAAM,GAAG,IAAI;IAEjB,IAAK3B,aAAa,IAAI,CAACgB,QAAQ,IAAM,CAAChB,aAAa,IAAIgB,QAAS,EAAE;MAChEW,MAAM,GAAG,KAAK;IAChB;IAEA,IAAMC,gBAAgB,GAAG5B,aAAa,oBAAbA,aAAa,CAAEzD,IAAI;IAC5C,IAAMsF,cAAc,GAAG7B,aAAa,oBAAbA,aAAa,CAAEvD,EAAE;IACxC,IAAMqF,YAAY,GAAGd,QAAQ,oBAARA,QAAQ,CAAEzE,IAAI;IACnC,IAAMwF,UAAU,GAAGf,QAAQ,oBAARA,QAAQ,CAAEvE,EAAE;IAE/B,IACEmF,gBAAgB,IAChBE,YAAY,IACZD,cAAc,IACdE,UAAU,KACT/G,MAAM,CAAC4G,gBAAgB,CAAC,CAACI,MAAM,CAAC,YAAY,CAAC,KAC5ChH,MAAM,CAAC8G,YAAY,CAAC,CAACE,MAAM,CAAC,YAAY,CAAC,IACzChH,MAAM,CAAC6G,cAAc,CAAC,CAACG,MAAM,CAAC,YAAY,CAAC,KACzChH,MAAM,CAAC+G,UAAU,CAAC,CAACC,MAAM,CAAC,YAAY,CAAC,CAAC,EAC5C;MACAL,MAAM,GAAG,KAAK;IAChB;IAEA,IAAI,CAACA,MAAM,EAAE;MACXR,mBAAmB,CAAC,IAAI,CAAC;IAC3B;IAEA,OAAOQ,MAAM;EACf,CAAC,EAAE,CAAC3B,aAAa,EAAEgB,QAAQ,CAAC,CAAC;EAE7B,IAAMiB,WAAW,GAAGrH,WAAW,CAAC,YAAM;IACpC,IAAIgC,IAAI,KAAK,QAAQ,IAAI8E,qBAAqB,EAAE,EAAE;MAChD,OAAOjE,QAAQ,KAAK,UAAU,IAAIA,QAAQ,EAAE;MAC5C4D,iBAAiB,CAAC,KAAK,CAAC;IAC1B;EACF,CAAC,EAAE,CAACzE,IAAI,EAAEa,QAAQ,EAAEiE,qBAAqB,CAAC,CAAC;EAE3C,IAAMQ,YAAY,GAAGtH,WAAW,CAC9B,UAACuH,KAAK,EAAK;IACTA,KAAK,IAAIA,KAAK,CAACC,cAAc,EAAE;IAC/B,OAAOH,WAAW,EAAE;EACtB,CAAC,EACD,CAACA,WAAW,CAAC,CACd;EAED,IAAMI,oBAAoB,GAAGzH,WAAW,CAAC,YAAM;IAC7CyG,iBAAiB,CAAC,CAACD,cAAc,CAAC;EACpC,CAAC,EAAE,CAACA,cAAc,CAAC,CAAC;EAEpB,IAAMkB,uBAAuB,GAAG1H,WAAW,CAAC,YAAM;IAChDuG,mBAAmB,CAAC,KAAK,CAAC;EAC5B,CAAC,EAAE,EAAE,CAAC;EAEN,IAAMoB,WAAW,GAAG3H,WAAW,CAAC,YAAM;IACpC,IAAI,CAACgD,YAAY,EAAE;MACjBqD,WAAW,CAACN,SAAS,CAAC;MACtB,IAAI/D,IAAI,KAAK,SAAS,EAAE;QACtByD,kBAAkB,CAACM,SAAS,CAAC;MAC/B;IACF;EACF,CAAC,EAAE,CAAC/D,IAAI,EAAEgB,YAAY,EAAEyC,kBAAkB,CAAC,CAAC;EAE5C,IAAMmC,sBAAsB,GAAG5H,WAAW,CAAC,YAAM;IAC/CqG,WAAW,CAACjB,aAAa,CAAC;IAC1BmB,mBAAmB,CAAC,KAAK,CAAC;IAC1BE,iBAAiB,CAAC,KAAK,CAAC;EAC1B,CAAC,EAAE,CAACrB,aAAa,CAAC,CAAC;EAEnB,IAAMyC,SAAS,GAAG3H,OAAO,CAAC,YAAM;IAAA;IAC9B,IAAM4H,kBAAkB,GAAG7D,YAAY,CAAC8D,MAAM,CAC5C,UAACtG,IAAI;MAAA,OAAKA,IAAI,CAACuG,IAAI,KAAK,cAAc;IAAA,EACvC;IACD,IAAMC,aAAa,GAAGhE,YAAY,CAAC8D,MAAM,CACvC,UAACtG,IAAI;MAAA,OAAKA,IAAI,CAACuG,IAAI,KAAK,gBAAgB;IAAA,EACzC;IACD,IAAME,uBAAuB,GAAGjE,YAAY,CAAC8D,MAAM,CACjD,UAACtG,IAAI;MAAA,OAAKA,IAAI,CAACuG,IAAI,KAAK,2BAA2B;IAAA,EACpD;IAED,yBACGxH,gBAAgB,CAAC2H,gBAAgB,IAAG,UAAC3G,GAAS,EAAc;MAC3D;MACA,IAAM4G,UAAU,GAAG,IAAIxG,IAAI,CACzBJ,GAAG,CAACL,WAAW,EAAE,EACjBK,GAAG,CAACJ,QAAQ,EAAE,EACdI,GAAG,CAACH,OAAO,EAAE,CACd;MACD,OAAOyG,kBAAkB,CAACO,IAAI,CAAC,UAAC5G,IAAI;QAAA,OAClCF,YAAY,CAAC6G,UAAU,EAAE3G,IAAI,CAAC;MAAA,EAC/B;IACH,CAAC,QACAjB,gBAAgB,CAAC8H,OAAO,IAAG,UAAC9G,GAAS,EAAc;MAClD,OAAO0C,QAAQ,CAACmE,IAAI,CAAC,UAACE,KAAK;QAAA,OAAK/G,GAAG,CAACgH,MAAM,EAAE,KAAKD,KAAK;MAAA,EAAC;IACzD,CAAC,QACA/H,gBAAgB,CAACiI,aAAa,IAAG,UAACjH,GAAS,EAAc;MACxD;MACA,IAAI0C,QAAQ,CAACmE,IAAI,CAAC,UAACE,KAAK;QAAA,OAAKA,KAAK,KAAK/G,GAAG,CAACgH,MAAM,EAAE;MAAA,EAAC,EAAE;QACpD,OAAO,IAAI;MACb;MACA,IAAME,cAAc,aAAOR,uBAAuB,EAAKD,aAAa,CAAC;MACrE,IAAMG,UAAU,GAAG,IAAIxG,IAAI,CACzBJ,GAAG,CAACL,WAAW,EAAE,EACjBK,GAAG,CAACJ,QAAQ,EAAE,EACdI,GAAG,CAACH,OAAO,EAAE,CACd;MACD,OAAOqH,cAAc,CAACL,IAAI,CAAC,UAAC5G,IAAI;QAAA,OAAKF,YAAY,CAAC6G,UAAU,EAAE3G,IAAI,CAAC;MAAA,EAAC;IACtE,CAAC,QACAjB,gBAAgB,CAACmI,QAAQ,IAAG,UAACnH,GAAS,EAAc;MACnD,IAAIkD,iBAAiB,EAAE;QACrB,IACElD,GAAG,CAACoH,MAAM,EAAE,CAACC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,GAAGnE,iBAAiB,CAACkE,MAAM,EAAE,CAACC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EACnE;UACA,OAAO,IAAI;QACb;MACF;MACA;MACA,IACE,CAACzE,mBAAmB,IACpBF,QAAQ,CAACmE,IAAI,CAAC,UAACE,KAAK;QAAA,OAAKA,KAAK,KAAK/G,GAAG,CAACgH,MAAM,EAAE;MAAA,EAAC,EAChD;QACA,OAAO,IAAI;MACb;MACA;MACA,IAAMJ,UAAU,GAAG,IAAIxG,IAAI,CACzBJ,GAAG,CAACL,WAAW,EAAE,EACjBK,GAAG,CAACJ,QAAQ,EAAE,EACdI,GAAG,CAACH,OAAO,EAAE,CACd;MACD,OAAO4G,aAAa,CAACI,IAAI,CAAC,UAAC5G,IAAI;QAAA,OAAKF,YAAY,CAAC6G,UAAU,EAAE3G,IAAI,CAAC;MAAA,EAAC;IACrE,CAAC;EAEL,CAAC,EAAE,CAACwC,YAAY,EAAEC,QAAQ,EAAEQ,iBAAiB,EAAEN,mBAAmB,CAAC,CAAC;EAEpE,IAAM0E,SAAS,GAAG9I,WAAW,CAC3B,UAACwB,GAAS,EAAgB;IACxB,IAAMuH,MAAgB,GAAG,EAAE;IAE3B,IAAI7E,QAAQ,CAACmE,IAAI,CAAC,UAACE,KAAK;MAAA,OAAK/G,GAAG,CAACgH,MAAM,EAAE,KAAKD,KAAK;IAAA,EAAC,EAAE;MACpDQ,MAAM,CAACC,IAAI,CAAC7E,YAAY,CAAC;IAC3B;;IAEA;IACA,IAAMiE,UAAU,GAAG,IAAIxG,IAAI,CACzBJ,GAAG,CAACL,WAAW,EAAE,EACjBK,GAAG,CAACJ,QAAQ,EAAE,EACdI,GAAG,CAACH,OAAO,EAAE,CACd;IAED4C,YAAY,CAACgF,OAAO,CAAC,UAACxH,IAAI,EAAK;MAC7B,IAAIF,YAAY,CAAC6G,UAAU,EAAE3G,IAAI,CAAC,EAAE;QAClCsH,MAAM,CAACC,IAAI,CAACvH,IAAI,CAACyH,KAAK,CAAC;MACzB;IACF,CAAC,CAAC;IAEF,IAAMC,KAAK,gBACT;MAAK,SAAS,EAAC;IAAwB,GAAE3H,GAAG,CAACH,OAAO,EAAE,CACvD;IAED,IAAI0H,MAAM,CAACK,MAAM,EAAE;MACjB,IAAMF,KAAK,gBACT;QAAK,GAAG,qBAAmB1H,GAAG,CAACH,OAAO;MAAK,GACxC0H,MAAM,CAACM,GAAG,CAAC,UAACH,KAAa,EAAEI,KAAa;QAAA,oBACvC;UAAK,GAAG,kBAAgBA;QAAQ,GAAEJ,KAAK,CAAO;MAAA,CAC/C,CAAC,CAEL;MAED,oBACE,oBAAC,OAAO;QACN,KAAK,EAAEA,KAAM;QACb,sBAAsB,EAAE5E,sBAAuB;QAC/C,kBAAkB,EAAEE;MAAmB,GAEtC2E,KAAK,CACE;IAEd;IAEA,OAAOA,KAAK;EACd,CAAC,EACD,CACEhF,YAAY,EACZD,QAAQ,EACRD,YAAY,EACZK,sBAAsB,EACtBE,kBAAkB,CACnB,CACF;EAED,IAAM+E,oBAAoB,GAAGvJ,WAAW,CAAC,YAAmB;IAC1D,oBACE,oBAAC,cAAc;MACb,aAAa,EAAEmG,iBAAkB;MACjC,KAAK,EAAEF,KAAM;MACb,IAAI,EAAEjE,IAAK;MACX,aAAa,EAAEsB,aAAc;MAC7B,YAAY,EAAEN,YAAa;MAC3B,YAAY,EAAEoD,QAAS;MACvB,cAAc,EAAEhD,cAAe;MAC/B,cAAc,EAAEjB,cAAe;MAC/B,gBAAgB,EAAEC,gBAAiB;MACnC,eAAe,EAAEC,eAAgB;MACjC,UAAU,EAAEK,UAAW;MACvB,MAAM,EAAEiE,UAAW;MACnB,QAAQ,EAAEC,YAAa;MACvB,QAAQ,EAAEU,YAAa;MACvB,OAAO,EAAEK,WAAY;MACrB,kBAAkB,EAAEjB,kBAAmB;MACvC,SAAS,EAAEmB,SAAU;MACrB,SAAS,EAAEiB;IAAU,EACrB;EAEN,CAAC,EAAE,CACD3C,iBAAiB,EACjBF,KAAK,EACLjE,IAAI,EACJsB,aAAa,EACbN,YAAY,EACZoD,QAAQ,EACRhD,cAAc,EACdjB,cAAc,EACdC,gBAAgB,EAChBC,eAAe,EACfK,UAAU,EACViE,UAAU,EACVC,YAAY,EACZU,YAAY,EACZK,WAAW,EACXjB,kBAAkB,EAClBmB,SAAS,EACTiB,SAAS,CACV,CAAC;EAEF,IAAMU,cAAc,GAAGtJ,OAAO,CAAC,YAAM;IACnC,IAAIgC,SAAS,KAAK,MAAM,IAAIuB,IAAI,EAAE;MAChC,oBACE,oBAAC,gBAAgB;QACf,IAAI,EAAEA,IAAK;QACX,KAAK,EAAEY,WAAY;QACnB,mBAAmB,EAAET,mBAAoB;QACzC,gBAAgB,EAAE4C,cAAe;QACjC,sBAAsB,EAAElC,sBAAuB;QAC/C,kBAAkB,EAAEE,kBAAmB;QACvC,MAAM,EAAEgC;MAAe,EACvB;IAEN;IACA,IAAI,OAAOtE,SAAS,KAAK,UAAU,EAAE;MACnC,OAAOA,SAAS,CAAC4C,SAAS,CAAC;IAC7B;IACA,oBACE,oBAAC,sBAAsB;MACrB,IAAI,EAAC,QAAQ;MACb,SAAS,EAAEzE,UAAU,CAAC,oBAAoB,EAAEmD,eAAe;IAAE,gBAE7D;MAAM,SAAS,EAAEG;IAAoB,GAAEmB,SAAS,CAAQ,CACjC;EAE7B,CAAC,EAAE,CACDrB,IAAI,EACJqB,SAAS,EACT5C,SAAS,EACToC,sBAAsB,EACtBE,kBAAkB,EAClBgC,cAAc,EACdhD,eAAe,EACfI,mBAAmB,EACnBD,mBAAmB,EACnBU,WAAW,CACZ,CAAC;EAEF,oBACE,oBAAC,gBAAgB;IAAC,SAAS,EAAC;EAAa,GACtCnC,SAAS,KAAK,QAAQ,gBACrB,oBAAC,IAAI;IACH,MAAM,EAAEsH,cAAe;IACvB,IAAI,EAAEhD,cAAe;IACrB,MAAM,EAAEiB,oBAAqB;IAC7B,aAAa,EAAEX,qBAAsB;IACrC,OAAO,EAAEO,WAAY;IACrB,QAAQ,EAAE5C,QAAS;IACnB,aAAa,EAAElB,aAAc;IAC7B,eAAe,EAAEgB,eAAgB;IACjC,sBAAsB,EAAEV;EAAuB,GAE9C0F,oBAAoB,EAAE,CAClB,GAEPA,oBAAoB,EACrB,EACAvH,IAAI,KAAK,QAAQ,gBAChB,oBAAC,mBAAmB;IAClB,SAAS,EAAC,mBAAmB;IAC7B,IAAI,EAAEsE,gBAAiB;IACvB,QAAQ,EAAEoB,uBAAwB;IAClC,SAAS,EAAEE,sBAAuB;IAClC,WAAW,EAAEtF,eAAgB;IAC7B,aAAa,EAAEC,mBAAoB;IACnC,aAAa,EAAEE,kBAAmB;IAClC,cAAc,EAAED;EAAoB,EACpC,GACA,IAAI,CACS;AAEvB,CAAC;AAEDV,UAAU,CAAC2H,WAAW,GAAG,YAAY"}
|
|
1
|
+
{"version":3,"file":"SelectDate.js","names":["React","useCallback","useEffect","useMemo","useState","moment","classnames","Menu","DatePickerForm","customClassNames","Tooltip","SelectDateTarget","StyledConfirmDialog","StyledSelectDate","StyledSelectDateButton","useLocalization","formatDate","getUtcTimestampFromDate","date","utc","getFullYear","getMonth","getDate","unix","isDayInRange","day","data","repeating","from","Date","to","SelectDate","changeMode","mode","trigger","labelType","saveButtonText","cancelButtonText","clearButtonText","modalHeaderText","modalDiscardMessage","modalDiscardBtnText","modalCancelBtnText","onDayClick","onSave","onCancel","onToggleDatePicker","required","dateRequired","defaultTimezoneAware","longDateFormat","defaultShowDatePicker","firstDayOfWeek","selectedDays","selectionMode","menuClassName","targetClassName","icon","defaultLabelText","targetTextClassName","targetIconClassName","backgroundElementClass","passedDateFormat","dateFormat","defaultMonth","daysToModify","weekends","weekendLabel","nonWorkingDaysOfWeek","nonWorkingDaysOfWeekLabel","weekendIsSelectable","tooltipText","popperTooltipClassName","popperClassName","popperTooltipStyle","position","disableDaysBefore","timezoneAware","setTimezoneAware","localization","labelText","endDate","local","startDate","formattedEndDate","formattedStartDate","modifiedDates","toDate","offsetFrom","utcOffset","offsetTo","handleModifiedSave","selectedDates","Object","prototype","hasOwnProperty","call","undefined","getDefaultMonth","month","setMonth","handleMonthChange","newDates","setNewDates","showDiscardModal","setShowDiscardModal","showDatePicker","setShowDatePicker","disabledSaveButton","handleSave","handleChange","dates","handleBeforeCloseMenu","result","selectedDaysFrom","selectedDaysTo","newDatesFrom","newDatesTo","format","handleClose","handleCancel","event","preventDefault","handleShowDatePicker","handleCloseDiscardModal","handleClear","handleSaveDiscardModal","modifiers","userAvailabilities","filter","type","globalDaysOff","selectableGlobalDaysOff","userAvailability","currentDay","some","weekend","value","getDay","nonWorkingDay","nonWorkingDays","disabled","toJSON","slice","daysOfWeek","renderDay","titles","push","includes","forEach","title","child","length","map","index","renderDatePickerForm","renderTargetEl","displayName"],"sources":["../../../../src/components/SelectDate/SelectDate.tsx"],"sourcesContent":["import React, {\n ElementType,\n FC,\n useCallback,\n useEffect,\n useMemo,\n useState,\n ReactNode,\n CSSProperties,\n} from \"react\";\nimport moment from \"moment\";\nimport classnames from \"classnames\";\nimport { DayModifiers } from \"react-day-picker\";\nimport { Placement } from \"@popperjs/core\";\nimport { Menu } from \"../Menu/Menu\";\nimport { DatePickerForm } from \"./DatePickerForm\";\nimport { customClassNames } from \"../DatePicker/ClassNames\";\nimport { DaysToModify } from \"./types\";\nimport { Tooltip } from \"../Tooltip/Tooltip\";\nimport { SelectDateTarget } from \"./SelectDateTarget\";\nimport {\n StyledConfirmDialog,\n StyledSelectDate,\n StyledSelectDateButton,\n} from \"./Styles\";\nimport { useLocalization } from \"../Localization\";\nimport { formatDate } from \"../../utils/dateUtils\";\n\nconst getUtcTimestampFromDate = (date: Date): number => {\n return moment\n .utc([date.getFullYear(), date.getMonth(), date.getDate()])\n .unix();\n};\n\nconst isDayInRange = (day: Date, data: 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\ninterface ISelectDate {\n /** Change mode - can be atomic and instant */\n changeMode?: \"atomic\" | \"instant\";\n /** Trigger - can be text, icon, inline, or custom render function */\n trigger?: TriggerStringType | TriggerFunctionType;\n /** Save button text */\n saveButtonText?: string;\n /** Cancel button text */\n cancelButtonText?: string;\n /** Clear button text */\n clearButtonText?: string;\n /** Modal header text */\n modalHeaderText?: string;\n /** Modal cancel button text */\n modalCancelBtnText?: string;\n /** Modal discard button text */\n modalDiscardBtnText?: string;\n /** Modal discard message text */\n modalDiscardMessage?: string;\n /** Tooltip text */\n tooltipText?: string;\n /** Called when day is clicked */\n onDayClick?: (day: Date, modifiers: DayModifiers) => void;\n /** Save changes in atomic mode */\n onSave?: (dates?: { from: number; to: number }) => void;\n /** On cancel closes datepicker or opens disard modal in atomic mode */\n onCancel?: () => void;\n /** Clear dates when they are not required */\n onClear?: () => void;\n /** Use this callback to get is picker visible */\n onToggleDatePicker?: (value: boolean) => void;\n /** Set selected day or days */\n selectedDays?: { from: number; to: number };\n /** Set month */\n defaultMonth?: Date;\n /** Set selection range */\n selectionMode?: string;\n /** Set is date required */\n required?: boolean;\n /** Set default show on date picker (only for text and icon mode) */\n defaultShowDatePicker?: boolean;\n /** Long date format (Always show year) */\n longDateFormat?: boolean;\n /** Set is date required */\n defaultTimezoneAware?: boolean;\n /** Set first day of week */\n firstDayOfWeek?: number;\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?: Date;\n}\n\nexport const SelectDate: FC<ISelectDate> = ({\n changeMode: mode = \"instant\",\n trigger: labelType = \"text\",\n saveButtonText = \"Save\",\n cancelButtonText = \"Cancel\",\n clearButtonText = \"Clear\",\n modalHeaderText = \"Discard changes?\",\n modalDiscardMessage = \"All unsaved changes will be lost.\",\n modalDiscardBtnText = \"OK\",\n modalCancelBtnText = \"Cancel\",\n onDayClick,\n onSave,\n onCancel,\n onToggleDatePicker,\n required: dateRequired = false,\n defaultTimezoneAware = false,\n longDateFormat = false,\n defaultShowDatePicker = false,\n firstDayOfWeek = 0,\n selectedDays,\n selectionMode = \"custom\",\n menuClassName,\n targetClassName,\n icon,\n defaultLabelText = \"Set...\",\n targetTextClassName,\n targetIconClassName,\n backgroundElementClass,\n dateFormat: passedDateFormat,\n defaultMonth,\n daysToModify = [],\n weekends = [],\n weekendLabel = \"Weekend\",\n nonWorkingDaysOfWeek = [],\n nonWorkingDaysOfWeekLabel = \"Unavailable\",\n weekendIsSelectable = false,\n tooltipText,\n popperTooltipClassName,\n popperClassName,\n popperTooltipStyle,\n position,\n disableDaysBefore,\n}) => {\n const [timezoneAware, setTimezoneAware] = useState(defaultTimezoneAware);\n const localization = useLocalization();\n const dateFormat = passedDateFormat\n ? passedDateFormat\n : localization.dateFormat;\n\n const labelText = useMemo(() => {\n if (!selectedDays) {\n return defaultLabelText;\n } else {\n const endDate = timezoneAware\n ? moment.unix(selectedDays.to).local()\n : moment.unix(selectedDays.to).utc();\n\n const startDate = timezoneAware\n ? moment.unix(selectedDays.from).local()\n : moment.unix(selectedDays.from).utc();\n\n const formattedEndDate = formatDate(endDate, dateFormat, longDateFormat);\n const formattedStartDate = formatDate(\n startDate,\n dateFormat,\n longDateFormat\n );\n\n if (selectedDays.from === selectedDays.to) {\n return formattedEndDate;\n }\n\n return `${formattedStartDate} - ${formattedEndDate}`;\n }\n }, [\n selectedDays,\n dateFormat,\n timezoneAware,\n defaultLabelText,\n longDateFormat,\n ]);\n\n const modifiedDates = useMemo(() => {\n if (\n typeof selectedDays === \"object\" &&\n !!selectedDays.from &&\n !!selectedDays.to\n ) {\n if (timezoneAware) {\n return {\n from: moment.unix(selectedDays.from).toDate(),\n to: moment.unix(selectedDays.to).toDate(),\n };\n }\n const offsetFrom = moment.unix(selectedDays.from).utcOffset() * 60;\n const offsetTo = moment.unix(selectedDays.to).utcOffset() * 60;\n return {\n from: new Date((selectedDays.from - offsetFrom) * 1000),\n to: new Date((selectedDays.to - offsetTo) * 1000),\n };\n }\n }, [selectedDays, timezoneAware]);\n\n const handleModifiedSave = useCallback(\n (selectedDates) => {\n setTimezoneAware(false);\n if (typeof onSave === \"function\") {\n if (\n typeof selectedDates === \"object\" &&\n Object.prototype.hasOwnProperty.call(selectedDates, \"from\") &&\n Object.prototype.hasOwnProperty.call(selectedDates, \"to\")\n ) {\n onSave({\n from: getUtcTimestampFromDate(selectedDates.from),\n to: getUtcTimestampFromDate(selectedDates.to),\n });\n } else {\n onSave(undefined);\n }\n }\n },\n [onSave]\n );\n\n const getDefaultMonth = useCallback(() => {\n let date = new Date();\n\n if (typeof selectedDays === \"object\" && !!selectedDays.from) {\n date = timezoneAware\n ? new Date(selectedDays.from * 1000)\n : new Date(\n (selectedDays.from -\n moment.unix(selectedDays.from).utcOffset() * 60) *\n 1000\n );\n } else if (defaultMonth) {\n date = defaultMonth;\n }\n\n // forcing second day in month\n return new Date(date.getFullYear(), date.getMonth(), 2);\n }, [defaultMonth, selectedDays, timezoneAware]);\n\n const [month, setMonth] = useState(getDefaultMonth);\n\n const handleMonthChange = useCallback(\n (month) => {\n setMonth(month);\n },\n [setMonth]\n );\n\n const [newDates, setNewDates] = useState(modifiedDates);\n const [showDiscardModal, setShowDiscardModal] = useState(false);\n const [showDatePicker, setShowDatePicker] = useState(defaultShowDatePicker);\n\n const disabledSaveButton = useMemo(() => {\n return (\n modifiedDates?.from === newDates?.from &&\n modifiedDates?.to === newDates?.to\n );\n }, [modifiedDates, newDates]);\n\n useEffect(() => {\n setShowDatePicker(defaultShowDatePicker);\n }, [defaultShowDatePicker]);\n\n useEffect(() => {\n modifiedDates && setNewDates(modifiedDates);\n }, [modifiedDates]);\n\n useEffect(() => {\n typeof onToggleDatePicker === \"function\" &&\n onToggleDatePicker(showDatePicker);\n }, [showDatePicker, onToggleDatePicker]);\n\n useEffect(() => {\n if (!showDatePicker) {\n setMonth(getDefaultMonth());\n }\n }, [showDatePicker, getDefaultMonth]);\n\n const handleSave = useCallback(() => {\n handleModifiedSave(newDates);\n setShowDatePicker(false);\n }, [newDates, handleModifiedSave]);\n\n const handleChange = useCallback(\n (dates) => {\n if (mode !== \"atomic\") {\n handleModifiedSave(dates);\n }\n setNewDates(dates);\n },\n [mode, handleModifiedSave]\n );\n\n const handleBeforeCloseMenu = useCallback(() => {\n let result = true;\n\n if ((modifiedDates && !newDates) || (!modifiedDates && newDates)) {\n result = false;\n }\n\n const selectedDaysFrom = modifiedDates?.from;\n const selectedDaysTo = modifiedDates?.to;\n const newDatesFrom = newDates?.from;\n const newDatesTo = newDates?.to;\n\n if (\n selectedDaysFrom &&\n newDatesFrom &&\n selectedDaysTo &&\n newDatesTo &&\n (moment(selectedDaysFrom).format(\"DD-MM-YYYY\") !==\n moment(newDatesFrom).format(\"DD-MM-YYYY\") ||\n moment(selectedDaysTo).format(\"DD-MM-YYYY\") !==\n moment(newDatesTo).format(\"DD-MM-YYYY\"))\n ) {\n result = false;\n }\n\n if (!result) {\n setShowDiscardModal(true);\n }\n\n return result;\n }, [modifiedDates, newDates]);\n\n const handleClose = useCallback(() => {\n if (mode !== \"atomic\" || handleBeforeCloseMenu()) {\n typeof onCancel === \"function\" && onCancel();\n setShowDatePicker(false);\n }\n }, [mode, onCancel, handleBeforeCloseMenu]);\n\n const handleCancel = useCallback(\n (event) => {\n event && event.preventDefault();\n return handleClose();\n },\n [handleClose]\n );\n\n const handleShowDatePicker = useCallback(() => {\n setShowDatePicker(!showDatePicker);\n }, [showDatePicker]);\n\n const handleCloseDiscardModal = useCallback(() => {\n setShowDiscardModal(false);\n }, []);\n\n const handleClear = useCallback(() => {\n if (!dateRequired) {\n setNewDates(undefined);\n if (mode === \"instant\") {\n handleModifiedSave(undefined);\n }\n }\n }, [mode, dateRequired, handleModifiedSave]);\n\n const handleSaveDiscardModal = useCallback(() => {\n setNewDates(modifiedDates);\n setShowDiscardModal(false);\n setShowDatePicker(false);\n }, [modifiedDates]);\n\n const modifiers = useMemo(() => {\n const userAvailabilities = daysToModify.filter(\n (data) => data.type === \"user_day_off\"\n );\n const globalDaysOff = daysToModify.filter(\n (data) => data.type === \"global_day_off\"\n );\n const selectableGlobalDaysOff = daysToModify.filter(\n (data) => data.type === \"selectable_global_day_off\"\n );\n\n return {\n [customClassNames.userAvailability]: (day: Date): boolean => {\n // construct new date because react-day-picker returns date with hours set\n const currentDay = new Date(\n day.getFullYear(),\n day.getMonth(),\n day.getDate()\n );\n return userAvailabilities.some((data) =>\n isDayInRange(currentDay, data)\n );\n },\n [customClassNames.weekend]: (day: Date): boolean => {\n return weekends.some((value) => day.getDay() === value);\n },\n [customClassNames.nonWorkingDay]: (day: Date): boolean => {\n // return true if day is weekend day\n if (weekends.some((value) => value === day.getDay())) {\n return true;\n }\n const nonWorkingDays = [...selectableGlobalDaysOff, ...globalDaysOff];\n const currentDay = new Date(\n day.getFullYear(),\n day.getMonth(),\n day.getDate()\n );\n return nonWorkingDays.some((data) => isDayInRange(currentDay, data));\n },\n [customClassNames.disabled]: (day: Date): boolean => {\n if (disableDaysBefore) {\n if (\n day.toJSON().slice(0, 10) < disableDaysBefore.toJSON().slice(0, 10)\n ) {\n return true;\n }\n }\n // return true if day is weekend day\n if (\n !weekendIsSelectable &&\n weekends.some((value) => value === day.getDay())\n ) {\n return true;\n }\n // construct new date because react-day-picker returns date with hours set\n const currentDay = new Date(\n day.getFullYear(),\n day.getMonth(),\n day.getDate()\n );\n return globalDaysOff.some((data) => isDayInRange(currentDay, data));\n },\n [customClassNames.nonWorkingDaysOfWeek]: {\n daysOfWeek: nonWorkingDaysOfWeek,\n },\n };\n }, [\n daysToModify,\n nonWorkingDaysOfWeek,\n weekends,\n disableDaysBefore,\n weekendIsSelectable,\n ]);\n\n const renderDay = useCallback(\n (day: Date): ReactNode => {\n const titles: string[] = [];\n\n if (weekends.some((value) => day.getDay() === value)) {\n titles.push(weekendLabel);\n }\n\n if (nonWorkingDaysOfWeek.includes(day.getDay())) {\n titles.push(nonWorkingDaysOfWeekLabel);\n }\n\n // construct new date because react-day-picker returns date with hours set\n const currentDay = new Date(\n day.getFullYear(),\n day.getMonth(),\n day.getDate()\n );\n\n daysToModify.forEach((data) => {\n if (isDayInRange(currentDay, data)) {\n titles.push(data.title);\n }\n });\n\n const child = (\n <div className=\"c-DayPicker-Day-Number\">{day.getDate()}</div>\n );\n\n if (titles.length) {\n const title = (\n <div key={`title-wrapper-${day.getDate()}`}>\n {titles.map((title: string, index: number) => (\n <div key={`title-text-${index}`}>{title}</div>\n ))}\n </div>\n );\n\n return (\n <Tooltip\n title={title}\n popperTooltipClassName={popperTooltipClassName}\n popperTooltipStyle={popperTooltipStyle}\n >\n {child}\n </Tooltip>\n );\n }\n\n return child;\n },\n [\n weekends,\n nonWorkingDaysOfWeek,\n daysToModify,\n weekendLabel,\n nonWorkingDaysOfWeekLabel,\n popperTooltipClassName,\n popperTooltipStyle,\n ]\n );\n\n const renderDatePickerForm = useCallback((): JSX.Element => {\n return (\n <DatePickerForm\n onMonthChange={handleMonthChange}\n month={month}\n mode={mode}\n selectionMode={selectionMode}\n dateRequired={dateRequired}\n selectedDays={newDates}\n firstDayOfWeek={firstDayOfWeek}\n saveButtonText={saveButtonText}\n cancelButtonText={cancelButtonText}\n clearButtonText={clearButtonText}\n onDayClick={onDayClick}\n onSave={handleSave}\n onChange={handleChange}\n onCancel={handleCancel}\n onClear={handleClear}\n disabledSaveButton={disabledSaveButton}\n modifiers={modifiers}\n renderDay={renderDay}\n />\n );\n }, [\n handleMonthChange,\n month,\n mode,\n selectionMode,\n dateRequired,\n newDates,\n firstDayOfWeek,\n saveButtonText,\n cancelButtonText,\n clearButtonText,\n onDayClick,\n handleSave,\n handleChange,\n handleCancel,\n handleClear,\n disabledSaveButton,\n modifiers,\n renderDay,\n ]);\n\n const renderTargetEl = useMemo(() => {\n if (labelType === \"icon\" && icon) {\n return (\n <SelectDateTarget\n icon={icon}\n title={tooltipText}\n targetIconClassName={targetIconClassName}\n forceHideTooltip={showDatePicker}\n popperTooltipClassName={popperTooltipClassName}\n popperTooltipStyle={popperTooltipStyle}\n active={showDatePicker}\n />\n );\n }\n if (typeof labelType === \"function\") {\n return labelType(labelText);\n }\n return (\n <StyledSelectDateButton\n type=\"button\"\n className={classnames(\"date-picker-target\", targetClassName)}\n >\n <span className={targetTextClassName}>{labelText}</span>\n </StyledSelectDateButton>\n );\n }, [\n icon,\n labelText,\n labelType,\n popperTooltipClassName,\n popperTooltipStyle,\n showDatePicker,\n targetClassName,\n targetIconClassName,\n targetTextClassName,\n tooltipText,\n ]);\n\n return (\n <StyledSelectDate className=\"select-date\">\n {labelType !== \"inline\" ? (\n <Menu\n target={renderTargetEl}\n open={showDatePicker}\n onOpen={handleShowDatePicker}\n onBeforeClose={handleBeforeCloseMenu}\n onClose={handleClose}\n position={position}\n menuClassName={menuClassName}\n popperClassName={popperClassName}\n backgroundElementClass={backgroundElementClass}\n >\n {renderDatePickerForm()}\n </Menu>\n ) : (\n renderDatePickerForm()\n )}\n {mode === \"atomic\" ? (\n <StyledConfirmDialog\n className=\"modal-select-date\"\n open={showDiscardModal}\n onCancel={handleCloseDiscardModal}\n onConfirm={handleSaveDiscardModal}\n dialogTitle={modalHeaderText}\n dialogContent={modalDiscardMessage}\n cancelBtnText={modalCancelBtnText}\n confirmBtnText={modalDiscardBtnText}\n />\n ) : null}\n </StyledSelectDate>\n );\n};\n\nSelectDate.displayName = \"SelectDate\";\n"],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -8015,6 +8015,7 @@
|
|
|
8015
8015
|
// custom modifiers
|
|
8016
8016
|
weekend: "c-DayPicker-Day--weekend",
|
|
8017
8017
|
userAvailability: "c-DayPicker-Day--userAvailability",
|
|
8018
|
+
nonWorkingDaysOfWeek: "c-DayPicker-Day--nonWorkingDaysOfWeek",
|
|
8018
8019
|
nonWorkingDay: "c-DayPicker-Day--nonWorkingDay"
|
|
8019
8020
|
};
|
|
8020
8021
|
|
|
@@ -8241,7 +8242,7 @@
|
|
|
8241
8242
|
var StyledDayPicker = styled__default["default"](DayPicker__default["default"]).withConfig({
|
|
8242
8243
|
displayName: "Styles__StyledDayPicker",
|
|
8243
8244
|
componentId: "sc-18towna-1"
|
|
8244
|
-
})(["", " width:230px;", " .c-DayPicker-Month{display:table;user-select:none;border-collapse:separate;border-spacing:4px;}.c-DayPicker-wrapper{position:relative;flex-direction:row;user-select:none;}.c-DayPicker-Caption{display:table-caption;margin-bottom:0.5em;padding:0 0.5em;", "}.c-DayPicker-Weekday{font-size:11px;display:table-cell;padding:0.5em;text-align:center;", "}.c-DayPicker-Body{display:table-row-group;font-size:13px;", "}.c-DayPicker-Day{display:table-cell;border-radius:50%;vertical-align:middle;text-align:center;cursor:pointer;transition-duration:0.3s;width:27px;height:27px;line-height:27px;}.c-DayPicker{display:inline-block;font-size:1rem;}.c-DayPicker-Months{display:flex;flex-wrap:wrap;justify-content:center;}.c-DayPicker-NavButton--interactionDisabled{display:none;}.c-DayPicker-Weekdays{text-decoration:none;display:table-header-group;margin-top:1em;}.c-DayPicker-WeekdaysRow{display:table-row;}.c-DayPicker-Weekday *{display:block;border-bottom:none;text-decoration:none;overflow:hidden;text-overflow:\"\";white-space:nowrap;width:12px;letter-spacing:10px;transform:translateX(30%);}.c-DayPicker-Week{display:table-row;}.c-DayPicker--interactionDisabled .c-DayPicker-Day{cursor:default;}.hovered:not(.c-DayPicker-Day--selected){background-color:var(--color-primary-300);color:var(--color-theme-900);}.c-DayPicker-Day--today{font-weight:700;color:var(--color-primary);position:relative;&:after{position:absolute;content:\"\";bottom:3px;height:3px;width:3px;border-radius:3px;margin:0 auto;left:0;right:0;background:var(--color-primary);}&.hovered:not(.c-DayPicker-Day--selected){color:var(--color-primary);&:after{background-color:var(--color-primary);}}}.c-DayPicker-Day--userAvailability{color:var(--red-alert);&.hovered:not(.c-DayPicker-Day--selected){background-color:rgba(237,97,97,0.1);color:var(--red-alert);}&.c-DayPicker-Day--today{color:var(--red-alert);&:after{background-color:var(--red-alert);}&.hovered:not(.c-DayPicker-Day--selected):after{background-color:var(--red-alert);}}}.c-DayPicker-Day--selected{background-color:var(--color-primary);color:var(--color-theme-100);&.c-DayPicker-Day--today{color:var(--color-theme-100);&:after{background-color:var(--color-theme-100);}}&.c-DayPicker-Day--userAvailability{background-color:var(--red-alert);color:var(--color-theme-100);}}.c-DayPicker-Day--nonWorkingDay{color:var(--color-theme-500);&.hovered:not(.c-DayPicker-Day--selected){color:var(--color-theme-500);}&.c-DayPicker-Day--today{color:var(--color-primary-500);&:after{background-color:var(--color-primary-500);}&.hovered:not(.c-DayPicker-Day--selected){color:var(--color-theme-500);&:after{background-color:var(--color-theme-500);}}}&.c-DayPicker-Day--userAvailability{&.hovered:not(.c-DayPicker-Day--selected){color:var(--color-theme-500);background-color:var(--color-primary-300);&.c-DayPicker-Day--today:after{background-color:var(--color-theme-500);}}}&.c-DayPicker-Day--selected{color:rgba(255,255,255,0.6);background-color:var(--color-primary);.neon &{color:rgba(0,0,0,0.4);}&.c-DayPicker-Day--today{color:rgba(255,255,255,0.6);.neon &{color:rgba(0,0,0,0.4);}&:after{background-color:rgba(255,255,255,0.6);.neon &{background-color:rgba(0,0,0,0.4);}}}}}.c-DayPicker-Day--disabled{cursor:default;color:var(--color-theme-500);&.hovered{color:var(--color-theme-500);}}.c-DayPicker-Day--outside{cursor:default;opacity:0.15;color:var(--color-theme-900);&.c-DayPicker-Day--userAvailability.hovered:not(.c-DayPicker-Day--selected){background:var(--color-primary-300);}&.c-DayPicker-Day--userAvailability:not(.c-DayPicker-Day--selected),&.c-DayPicker-Day--userAvailability.hovered:not(.c-DayPicker-Day--selected),&.c-DayPicker-Day--nonWorkingDay.hovered:not(.c-DayPicker-Day--selected),&.c-DayPicker-Day--nonWorkingDay:not(.c-DayPicker-Day--selected),&.c-DayPicker-Day--today.hovered:not(.c-DayPicker-Day--selected),&.c-DayPicker-Day--today:not(.c-DayPicker-Day--selected){color:var(--color-theme-900);}&.c-DayPicker-Day--userAvailability.c-DayPicker-Day--today:not(.c-DayPicker-Day--selected):after,&.c-DayPicker-Day--userAvailability.c-DayPicker-Day--today.hovered:not(.c-DayPicker-Day--selected):after,&.c-DayPicker-Day--nonWorkingDay.c-DayPicker-Day--today:not(.c-DayPicker-Day--selected):after,&.c-DayPicker-Day--nonWorkingDay.c-DayPicker-Day--today.hovered:not(.c-DayPicker-Day--selected):after,&.c-DayPicker-Day--today.hovered:not(.c-DayPicker-Day--selected):after,&.c-DayPicker-Day--today:not(.c-DayPicker-Day--selected):after{background-color:var(--color-theme-900);}&.hovered:not(.c-DayPicker-Day--selected){background:var(--color-primary-400);}&.c-DayPicker-Day--selected{color:var(--page-paper-main);background:var(--color-primary);.neon &{color:var(--page-paper-main);}&.c-DayPicker-Day--today{&:after{background:var(--page-paper-main);.neon &{background:var(--page-paper-main);}}&.c-DayPicker-Day--nonWorkingDay{color:var(--page-paper-main);.neon &{color:var(--page-paper-main);}}}}}"], {
|
|
8245
|
+
})(["", " width:230px;", " .c-DayPicker-Month{display:table;user-select:none;border-collapse:separate;border-spacing:4px;}.c-DayPicker-wrapper{position:relative;flex-direction:row;user-select:none;}.c-DayPicker-Caption{display:table-caption;margin-bottom:0.5em;padding:0 0.5em;", "}.c-DayPicker-Weekday{font-size:11px;display:table-cell;padding:0.5em;text-align:center;", "}.c-DayPicker-Body{display:table-row-group;font-size:13px;", "}.c-DayPicker-Day{display:table-cell;border-radius:50%;vertical-align:middle;text-align:center;cursor:pointer;transition-duration:0.3s;width:27px;height:27px;line-height:27px;}.c-DayPicker{display:inline-block;font-size:1rem;}.c-DayPicker-Months{display:flex;flex-wrap:wrap;justify-content:center;}.c-DayPicker-NavButton--interactionDisabled{display:none;}.c-DayPicker-Weekdays{text-decoration:none;display:table-header-group;margin-top:1em;}.c-DayPicker-WeekdaysRow{display:table-row;}.c-DayPicker-Weekday *{display:block;border-bottom:none;text-decoration:none;overflow:hidden;text-overflow:\"\";white-space:nowrap;width:12px;letter-spacing:10px;transform:translateX(30%);}.c-DayPicker-Week{display:table-row;}.c-DayPicker--interactionDisabled .c-DayPicker-Day{cursor:default;}.hovered:not(.c-DayPicker-Day--selected){background-color:var(--color-primary-300);color:var(--color-theme-900);}.c-DayPicker-Day--today{font-weight:700;color:var(--color-primary);position:relative;&:after{position:absolute;content:\"\";bottom:3px;height:3px;width:3px;border-radius:3px;margin:0 auto;left:0;right:0;background:var(--color-primary);}&.hovered:not(.c-DayPicker-Day--selected){color:var(--color-primary);&:after{background-color:var(--color-primary);}}}.c-DayPicker-Day--userAvailability,.c-DayPicker-Day--nonWorkingDaysOfWeek{color:var(--red-alert);&.hovered:not(.c-DayPicker-Day--selected){background-color:rgba(237,97,97,0.1);color:var(--red-alert);}&.c-DayPicker-Day--today{color:var(--red-alert);&:after{background-color:var(--red-alert);}&.hovered:not(.c-DayPicker-Day--selected):after{background-color:var(--red-alert);}}}.c-DayPicker-Day--selected{background-color:var(--color-primary);color:var(--color-theme-100);&.c-DayPicker-Day--today{color:var(--color-theme-100);&:after{background-color:var(--color-theme-100);}}&.c-DayPicker-Day--userAvailability,&.c-DayPicker-Day--nonWorkingDaysOfWeek{background-color:var(--red-alert);color:var(--color-theme-100);}}.c-DayPicker-Day--nonWorkingDay{color:var(--color-theme-500);&.hovered:not(.c-DayPicker-Day--selected){color:var(--color-theme-500);}&.c-DayPicker-Day--today{color:var(--color-primary-500);&:after{background-color:var(--color-primary-500);}&.hovered:not(.c-DayPicker-Day--selected){color:var(--color-theme-500);&:after{background-color:var(--color-theme-500);}}}&.c-DayPicker-Day--userAvailability,&.c-DayPicker-Day--nonWorkingDaysOfWeek{&.hovered:not(.c-DayPicker-Day--selected){color:var(--color-theme-500);background-color:var(--color-primary-300);&.c-DayPicker-Day--today:after{background-color:var(--color-theme-500);}}}&.c-DayPicker-Day--selected{color:rgba(255,255,255,0.6);background-color:var(--color-primary);.neon &{color:rgba(0,0,0,0.4);}&.c-DayPicker-Day--today{color:rgba(255,255,255,0.6);.neon &{color:rgba(0,0,0,0.4);}&:after{background-color:rgba(255,255,255,0.6);.neon &{background-color:rgba(0,0,0,0.4);}}}}}.c-DayPicker-Day--disabled{cursor:default;color:var(--color-theme-500);&.hovered{color:var(--color-theme-500);}}.c-DayPicker-Day--outside{cursor:default;opacity:0.15;color:var(--color-theme-900);&.c-DayPicker-Day--userAvailability.hovered:not(.c-DayPicker-Day--selected),&.c-DayPicker-Day--nonWorkingDaysOfWeek.hovered:not(.c-DayPicker-Day--selected){background:var(--color-primary-300);}&.c-DayPicker-Day--userAvailability:not(.c-DayPicker-Day--selected),&.c-DayPicker-Day--nonWorkingDaysOfWeek:not(.c-DayPicker-Day--selected),&.c-DayPicker-Day--userAvailability.hovered:not(.c-DayPicker-Day--selected),&.c-DayPicker-Day--nonWorkingDaysOfWeek.hovered:not(.c-DayPicker-Day--selected),&.c-DayPicker-Day--nonWorkingDay.hovered:not(.c-DayPicker-Day--selected),&.c-DayPicker-Day--nonWorkingDay:not(.c-DayPicker-Day--selected),&.c-DayPicker-Day--today.hovered:not(.c-DayPicker-Day--selected),&.c-DayPicker-Day--today:not(.c-DayPicker-Day--selected){color:var(--color-theme-900);}&.c-DayPicker-Day--userAvailability.c-DayPicker-Day--today:not(.c-DayPicker-Day--selected):after,&.c-DayPicker-Day--nonWorkingDaysOfWeek.c-DayPicker-Day--today:not(.c-DayPicker-Day--selected):after,&.c-DayPicker-Day--userAvailability.c-DayPicker-Day--today.hovered:not(.c-DayPicker-Day--selected):after,&.c-DayPicker-Day--nonWorkingDaysOfWeek.c-DayPicker-Day--today.hovered:not(.c-DayPicker-Day--selected):after,&.c-DayPicker-Day--nonWorkingDay.c-DayPicker-Day--today:not(.c-DayPicker-Day--selected):after,&.c-DayPicker-Day--nonWorkingDay.c-DayPicker-Day--today.hovered:not(.c-DayPicker-Day--selected):after,&.c-DayPicker-Day--today.hovered:not(.c-DayPicker-Day--selected):after,&.c-DayPicker-Day--today:not(.c-DayPicker-Day--selected):after{background-color:var(--color-theme-900);}&.hovered:not(.c-DayPicker-Day--selected){background:var(--color-primary-400);}&.c-DayPicker-Day--selected{color:var(--page-paper-main);background:var(--color-primary);.neon &{color:var(--page-paper-main);}&.c-DayPicker-Day--today{&:after{background:var(--page-paper-main);.neon &{background:var(--page-paper-main);}}&.c-DayPicker-Day--nonWorkingDay{color:var(--page-paper-main);.neon &{color:var(--page-paper-main);}}}}}"], {
|
|
8245
8246
|
"backgroundColor": "var(--page-paper-main)"
|
|
8246
8247
|
}, function (props) {
|
|
8247
8248
|
return props.$isYearlyView && styled.css([".c-DayPicker-Weekdays,.c-DayPicker-Body{opacity:0 !important;}"]);
|
|
@@ -13873,7 +13874,6 @@
|
|
|
13873
13874
|
_ref$modalCancelBtnTe = _ref.modalCancelBtnText,
|
|
13874
13875
|
modalCancelBtnText = _ref$modalCancelBtnTe === void 0 ? "Cancel" : _ref$modalCancelBtnTe,
|
|
13875
13876
|
onDayClick = _ref.onDayClick,
|
|
13876
|
-
onMonthChange = _ref.onMonthChange,
|
|
13877
13877
|
onSave = _ref.onSave,
|
|
13878
13878
|
onCancel = _ref.onCancel,
|
|
13879
13879
|
onToggleDatePicker = _ref.onToggleDatePicker,
|
|
@@ -13906,6 +13906,10 @@
|
|
|
13906
13906
|
weekends = _ref$weekends === void 0 ? [] : _ref$weekends,
|
|
13907
13907
|
_ref$weekendLabel = _ref.weekendLabel,
|
|
13908
13908
|
weekendLabel = _ref$weekendLabel === void 0 ? "Weekend" : _ref$weekendLabel,
|
|
13909
|
+
_ref$nonWorkingDaysOf = _ref.nonWorkingDaysOfWeek,
|
|
13910
|
+
nonWorkingDaysOfWeek = _ref$nonWorkingDaysOf === void 0 ? [] : _ref$nonWorkingDaysOf,
|
|
13911
|
+
_ref$nonWorkingDaysOf2 = _ref.nonWorkingDaysOfWeekLabel,
|
|
13912
|
+
nonWorkingDaysOfWeekLabel = _ref$nonWorkingDaysOf2 === void 0 ? "Unavailable" : _ref$nonWorkingDaysOf2,
|
|
13909
13913
|
_ref$weekendIsSelecta = _ref.weekendIsSelectable,
|
|
13910
13914
|
weekendIsSelectable = _ref$weekendIsSelecta === void 0 ? false : _ref$weekendIsSelecta,
|
|
13911
13915
|
tooltipText = _ref.tooltipText,
|
|
@@ -13979,11 +13983,8 @@
|
|
|
13979
13983
|
month = _useState4[0],
|
|
13980
13984
|
setMonth = _useState4[1];
|
|
13981
13985
|
var handleMonthChange = React.useCallback(function (month) {
|
|
13982
|
-
if (onMonthChange) {
|
|
13983
|
-
onMonthChange(month);
|
|
13984
|
-
}
|
|
13985
13986
|
setMonth(month);
|
|
13986
|
-
}, [setMonth
|
|
13987
|
+
}, [setMonth]);
|
|
13987
13988
|
var _useState5 = React.useState(modifiedDates),
|
|
13988
13989
|
_useState6 = _slicedToArray(_useState5, 2),
|
|
13989
13990
|
newDates = _useState6[0],
|
|
@@ -14119,8 +14120,10 @@
|
|
|
14119
14120
|
return globalDaysOff.some(function (data) {
|
|
14120
14121
|
return isDayInRange(currentDay, data);
|
|
14121
14122
|
});
|
|
14123
|
+
}), _defineProperty(_ref2, customClassNames.nonWorkingDaysOfWeek, {
|
|
14124
|
+
daysOfWeek: nonWorkingDaysOfWeek
|
|
14122
14125
|
}), _ref2;
|
|
14123
|
-
}, [daysToModify, weekends, disableDaysBefore, weekendIsSelectable]);
|
|
14126
|
+
}, [daysToModify, nonWorkingDaysOfWeek, weekends, disableDaysBefore, weekendIsSelectable]);
|
|
14124
14127
|
var renderDay = React.useCallback(function (day) {
|
|
14125
14128
|
var titles = [];
|
|
14126
14129
|
if (weekends.some(function (value) {
|
|
@@ -14128,6 +14131,9 @@
|
|
|
14128
14131
|
})) {
|
|
14129
14132
|
titles.push(weekendLabel);
|
|
14130
14133
|
}
|
|
14134
|
+
if (nonWorkingDaysOfWeek.includes(day.getDay())) {
|
|
14135
|
+
titles.push(nonWorkingDaysOfWeekLabel);
|
|
14136
|
+
}
|
|
14131
14137
|
|
|
14132
14138
|
// construct new date because react-day-picker returns date with hours set
|
|
14133
14139
|
var currentDay = new Date(day.getFullYear(), day.getMonth(), day.getDate());
|
|
@@ -14154,7 +14160,7 @@
|
|
|
14154
14160
|
}, child);
|
|
14155
14161
|
}
|
|
14156
14162
|
return child;
|
|
14157
|
-
}, [
|
|
14163
|
+
}, [weekends, nonWorkingDaysOfWeek, daysToModify, weekendLabel, nonWorkingDaysOfWeekLabel, popperTooltipClassName, popperTooltipStyle]);
|
|
14158
14164
|
var renderDatePickerForm = React.useCallback(function () {
|
|
14159
14165
|
return /*#__PURE__*/React__default["default"].createElement(DatePickerForm, {
|
|
14160
14166
|
onMonthChange: handleMonthChange,
|
|
@@ -15830,7 +15836,7 @@
|
|
|
15830
15836
|
onKeyDown: handleKeyDown,
|
|
15831
15837
|
onChange: handleChange,
|
|
15832
15838
|
type: "text",
|
|
15833
|
-
className: "c-input"
|
|
15839
|
+
className: classNames__default["default"]("c-input", inputProps === null || inputProps === void 0 ? void 0 : inputProps.className)
|
|
15834
15840
|
})
|
|
15835
15841
|
}));
|
|
15836
15842
|
});
|