@activecollab/components 1.0.18 → 1.0.22
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/Pickers/Styles.js +2 -2
- package/dist/cjs/components/Pickers/Styles.js.map +1 -1
- package/dist/cjs/components/Steppers/DateStepper/DateStepper.js +1 -2
- package/dist/cjs/components/Steppers/DateStepper/DateStepper.js.map +1 -1
- package/dist/cjs/components/Steppers/DateStepper/Styles.js +2 -2
- package/dist/cjs/components/Steppers/DateStepper/Styles.js.map +1 -1
- package/dist/esm/components/Pickers/Styles.d.ts.map +1 -1
- package/dist/esm/components/Pickers/Styles.js +2 -2
- package/dist/esm/components/Pickers/Styles.js.map +1 -1
- package/dist/esm/components/Steppers/DateStepper/DateStepper.js +1 -2
- package/dist/esm/components/Steppers/DateStepper/DateStepper.js.map +1 -1
- package/dist/esm/components/Steppers/DateStepper/Styles.d.ts.map +1 -1
- package/dist/esm/components/Steppers/DateStepper/Styles.js +2 -2
- package/dist/esm/components/Steppers/DateStepper/Styles.js.map +1 -1
- package/dist/index.js +5 -6
- 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
|
@@ -80,7 +80,7 @@ exports.StyledMonth = StyledMonth;
|
|
|
80
80
|
var StyledYearMonthPicker = _styledComponents.default.div.withConfig({
|
|
81
81
|
displayName: "Styles__StyledYearMonthPicker",
|
|
82
82
|
componentId: "sc-1owijsg-4"
|
|
83
|
-
})(["display:table-caption;margin-bottom:0.
|
|
83
|
+
})(["display:table-caption;margin-bottom:0.5rem;padding:0 0.5rem;", " &> div{font-weight:500;font-size:1.15rem;}"], {
|
|
84
84
|
"textAlign": "center",
|
|
85
85
|
"color": "var(--color-theme-900)"
|
|
86
86
|
});
|
|
@@ -97,7 +97,7 @@ exports.StyledYearMonthPickerNavBar = StyledYearMonthPickerNavBar;
|
|
|
97
97
|
var StyledYearMonthPickerNavBarItem = _styledComponents.default.span.withConfig({
|
|
98
98
|
displayName: "Styles__StyledYearMonthPickerNavBarItem",
|
|
99
99
|
componentId: "sc-1owijsg-6"
|
|
100
|
-
})(["", " transition-duration:0.3s;
|
|
100
|
+
})(["", " transition-duration:0.3s;display:inline-block;&:hover{background-color:var(--color-primary-300);border-radius:15px;}"], {
|
|
101
101
|
"paddingLeft": "1rem",
|
|
102
102
|
"paddingRight": "1rem",
|
|
103
103
|
"cursor": "pointer"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/Pickers/Styles.ts"],"names":["StyledNavBarButton","Button","props","$direction","css","StyledMenuNavIcon","MenuNavIcon","StyledMonths","styled","div","StyledMonth","$isSelected","$isCurrent","$isCurrentQuarter","StyledYearMonthPicker","StyledYearMonthPickerNavBar","StyledYearMonthPickerNavBarItem","span","displayName"],"mappings":";;;;;;;;;AAAA;;AACA;;AAEA;;;;;;;;AAEO,IAAMA,kBAAkB,GAAG,+BAAOC,cAAP,CAAH;AAAA;AAAA;AAAA,kGAS3B,UAACC,KAAD;AAAA,SACAA,KAAK,CAACC,UAAN,KAAqB,UAArB,QACAC,qBADA,2BADA;AAAA,CAT2B,EAgB3B,UAACF,KAAD;AAAA,SACAA,KAAK,CAACC,UAAN,KAAqB,MAArB,QACAC,qBADA,iBADA;AAAA,CAhB2B,CAAxB;;AAuBA,IAAMC,iBAAiB,GAAG,+BAAOC,oBAAP,CAAH;AAAA;AAAA;AAAA,uCACxB;AAAA;AAAA,CADwB,CAAvB;;;AAWA,IAAMC,YAAY,GAAGC,0BAAOC,GAAV;AAAA;AAAA;AAAA,mCAInB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,CAJmB,CAAlB;;;;AAcA,IAAMC,WAAW,GAAGF,0BAAOC,GAAV;AAAA;AAAA;AAAA,oEAIlB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,CAJkB,EAYpB,UAACP,KAAD;AAAA,SACA,CAACA,KAAK,CAACS,WAAP,OACIP,qBADJ,iEAMIA,qBANJ,mDAOU;AAAA;AAAA,GAPV,CADA;AAAA,CAZoB,EAwBnB,UAACF,KAAD;AAAA,SACDA,KAAK,CAACU,UAAN,IACA,CAACV,KAAK,CAACS,WADP,QAEAP,qBAFA,YAGM;AAAA;AAAA,GAHN,CADC;AAAA,CAxBmB,EA+BnB,UAACF,KAAD;AAAA,SACDA,KAAK,CAACU,UAAN,IACAV,KAAK,CAACS,WADN,QAEAP,qBAFA,oCADC;AAAA,CA/BmB,EAsCnB,UAACF,KAAD;AAAA,SACDA,KAAK,CAACW,iBAAN,QACAT,qBADA,iDADC;AAAA,CAtCmB,CAAjB;;;;AA6CA,IAAMU,qBAAqB,GAAGN,0BAAOC,GAAV;AAAA;AAAA;AAAA,
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/Pickers/Styles.ts"],"names":["StyledNavBarButton","Button","props","$direction","css","StyledMenuNavIcon","MenuNavIcon","StyledMonths","styled","div","StyledMonth","$isSelected","$isCurrent","$isCurrentQuarter","StyledYearMonthPicker","StyledYearMonthPickerNavBar","StyledYearMonthPickerNavBarItem","span","displayName"],"mappings":";;;;;;;;;AAAA;;AACA;;AAEA;;;;;;;;AAEO,IAAMA,kBAAkB,GAAG,+BAAOC,cAAP,CAAH;AAAA;AAAA;AAAA,kGAS3B,UAACC,KAAD;AAAA,SACAA,KAAK,CAACC,UAAN,KAAqB,UAArB,QACAC,qBADA,2BADA;AAAA,CAT2B,EAgB3B,UAACF,KAAD;AAAA,SACAA,KAAK,CAACC,UAAN,KAAqB,MAArB,QACAC,qBADA,iBADA;AAAA,CAhB2B,CAAxB;;AAuBA,IAAMC,iBAAiB,GAAG,+BAAOC,oBAAP,CAAH;AAAA;AAAA;AAAA,uCACxB;AAAA;AAAA,CADwB,CAAvB;;;AAWA,IAAMC,YAAY,GAAGC,0BAAOC,GAAV;AAAA;AAAA;AAAA,mCAInB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,CAJmB,CAAlB;;;;AAcA,IAAMC,WAAW,GAAGF,0BAAOC,GAAV;AAAA;AAAA;AAAA,oEAIlB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,CAJkB,EAYpB,UAACP,KAAD;AAAA,SACA,CAACA,KAAK,CAACS,WAAP,OACIP,qBADJ,iEAMIA,qBANJ,mDAOU;AAAA;AAAA,GAPV,CADA;AAAA,CAZoB,EAwBnB,UAACF,KAAD;AAAA,SACDA,KAAK,CAACU,UAAN,IACA,CAACV,KAAK,CAACS,WADP,QAEAP,qBAFA,YAGM;AAAA;AAAA,GAHN,CADC;AAAA,CAxBmB,EA+BnB,UAACF,KAAD;AAAA,SACDA,KAAK,CAACU,UAAN,IACAV,KAAK,CAACS,WADN,QAEAP,qBAFA,oCADC;AAAA,CA/BmB,EAsCnB,UAACF,KAAD;AAAA,SACDA,KAAK,CAACW,iBAAN,QACAT,qBADA,iDADC;AAAA,CAtCmB,CAAjB;;;;AA6CA,IAAMU,qBAAqB,GAAGN,0BAAOC,GAAV;AAAA;AAAA;AAAA,oHAK5B;AAAA;AAAA;AAAA,CAL4B,CAA3B;;;;AAaA,IAAMM,2BAA2B,GAAGP,0BAAOC,GAAV;AAAA;AAAA;AAAA,iCAAjC;;;;AAKA,IAAMO,+BAA+B,GAAGR,0BAAOS,IAAV;AAAA;AAAA;AAAA,kIACtC;AAAA;AAAA;AAAA;AAAA,CADsC,CAArC;;;AAWPjB,kBAAkB,CAACkB,WAAnB,GAAiC,oBAAjC;AACAb,iBAAiB,CAACa,WAAlB,GAAgC,mBAAhC;AACAX,YAAY,CAACW,WAAb,GAA2B,cAA3B;AACAR,WAAW,CAACQ,WAAZ,GAA0B,aAA1B","sourcesContent":["import styled, { css } from \"styled-components\";\nimport { Button } from \"../Button/Button\";\nimport tw from \"twin.macro\";\nimport MenuNavIcon from \"../Icons/collection/MenuNavIcon\";\n\nexport const StyledNavBarButton = styled(Button)<{\n $direction: \"next\" | \"previous\";\n}>`\n position: absolute;\n margin-top: 1px;\n cursor: pointer;\n z-index: 2;\n background-image: none;\n\n ${(props) =>\n props.$direction === \"previous\" &&\n css`\n right: auto;\n left: 1px;\n `}\n\n ${(props) =>\n props.$direction === \"next\" &&\n css`\n right: 1px;\n `}\n`;\n\nexport const StyledMenuNavIcon = styled(MenuNavIcon)`\n ${tw`tw-transform`}\n transform: rotate(180deg);\n`;\n\ninterface StyledMonthInterface {\n $isCurrent: boolean;\n $isSelected: boolean;\n $isCurrentQuarter: boolean;\n}\n\nexport const StyledMonths = styled.div`\n top: 30px;\n height: 230px;\n\n ${tw`\n tw-absolute\n tw-left-0\n tw-p-5\n tw-flex\n tw-flex-wrap\n tw-bg-page-paper-main\n tw-z-10\n `}\n`;\nexport const StyledMonth = styled.div<StyledMonthInterface>`\n width: 26%;\n transition-duration: 0.3s;\n\n ${tw`\n tw-m-auto\n tw-cursor-pointer\n tw-rounded-xl\n tw-font-bold\n tw-text-sm\n `}\n\n ${(props) =>\n !props.$isSelected\n ? css`\n &:hover {\n background-color: var(--color-primary-300);\n }\n `\n : css`\n ${tw`tw-text-theme-100`}\n background-color: var(--color-primary);\n `}\n\n ${(props) =>\n props.$isCurrent &&\n !props.$isSelected &&\n css`\n ${tw`tw-text-primary`}\n `}\n\n ${(props) =>\n props.$isCurrent &&\n props.$isSelected &&\n css`\n color: var(--color-theme-100);\n `}\n\n ${(props) =>\n props.$isCurrentQuarter &&\n css`\n background-color: var(--color-primary-300);\n `}\n`;\n\nexport const StyledYearMonthPicker = styled.div`\n display: table-caption;\n margin-bottom: 0.5rem;\n padding: 0 0.5rem;\n\n ${tw`tw-text-center tw-text-theme-900`}\n\n &> div {\n font-weight: 500;\n font-size: 1.15rem;\n }\n`;\n\nexport const StyledYearMonthPickerNavBar = styled.div`\n width: auto;\n margin: 0 auto;\n`;\n\nexport const StyledYearMonthPickerNavBarItem = styled.span`\n ${tw`tw-px-4 tw-cursor-pointer`}\n transition-duration: 0.3s;\n display: inline-block;\n\n &:hover {\n background-color: var(--color-primary-300);\n border-radius: 15px;\n }\n`;\n\nStyledNavBarButton.displayName = \"StyledNavBarButton\";\nStyledMenuNavIcon.displayName = \"StyledMenuNavIcon\";\nStyledMonths.displayName = \"StyledMonths\";\nStyledMonth.displayName = \"StyledMonth\";\n"],"file":"Styles.js"}
|
|
@@ -302,8 +302,7 @@ var DateStepper = function DateStepper(_ref) {
|
|
|
302
302
|
style: dateStepperWidth(fromDate, toDate, step)
|
|
303
303
|
}, withDatePicker ? /*#__PURE__*/_react.default.createElement(_Styles.StyledMenu, {
|
|
304
304
|
target: /*#__PURE__*/_react.default.createElement(_Styles.StyledButton, {
|
|
305
|
-
type: "button"
|
|
306
|
-
className: "c-simple-menu__trigger"
|
|
305
|
+
type: "button"
|
|
307
306
|
}, /*#__PURE__*/_react.default.createElement("span", null, getDateFormatted)),
|
|
308
307
|
open: showDatePicker,
|
|
309
308
|
onOpen: handleShow,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/components/Steppers/DateStepper/DateStepper.tsx"],"names":["DateStepper","step","formatCallback","onChange","from","to","onBack","onForward","minValue","maxValue","className","period","datePickerClass","withDatePicker","defaultMonth","Date","popperClassName","position","fromDate","setFromDate","toDate","setToDate","showDatePicker","setShowDatePicker","month","setMonth","getDatesByPeriod","interval","date","add","clone","startOf","endOf","getDateFormatted","actualYear","year","showWeekOrCustomDateFormat","start","end","format","startDate","endDate","quarter","onChangeCallback","amount","newFrom","newTo","onDatePickerChange","dates","fromDateTemp","toDateTemp","isAfterMaxDate","isSameOrBefore","isBeforeMinDate","isSameOrAfter","onRightClickHandler","onLeftClickHandler","renderLeftRightButtons","handleShow","closeMenu","onMonthChange","m","dateStepperWidth","fromDay","toDay","range","minWidth","isDisabled","day","dayFormat","isBefore","isAfter","modifiers","customClassNames","disabled","nonWorkingDay","MomentLocaleUtils","displayName"],"mappings":"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","sourcesContent":["import React, { FC, useCallback, useMemo, useState, useEffect } from \"react\";\nimport classNames from \"classnames\";\nimport moment, { Moment } from \"moment\";\nimport MomentLocaleUtils from \"react-day-picker/moment\";\nimport { Placement } from \"@popperjs/core\";\nimport { Button } from \"../../Button/Button\";\nimport CaretLeftIcon from \"../../Icons/collection/CaretLeft\";\nimport CaretRightIcon from \"../../Icons/collection/CaretRight\";\nimport { DatePicker } from \"../../DatePicker\";\nimport { customClassNames } from \"../../DatePicker/ClassNames\";\nimport {\n StyledButton,\n StyledButtonGroup,\n StyledDiv,\n StyledMenu,\n StyledSpan,\n} from \"./Styles\";\n\ninterface IDateStepperProps {\n /** One of the possible steps for this component */\n step:\n | \"daily\"\n | \"weekly\"\n | \"monthly\"\n | \"quarterly\"\n | \"yearly\"\n | \"custom\"\n | string;\n /** Callback function that will be called after the changed range */\n onChange?: (from: Date, to: Date) => void;\n /** Start date of the range */\n from: Date | string;\n /** End date of the range */\n to: Date | string;\n /** Callback function that will format the text label */\n formatCallback?: (from: string | Date, to: string | Date) => string;\n /** Default month */\n defaultMonth?: Date;\n /** Callback function onBack */\n onBack?: (from: Date, to: Date) => void;\n /** Callback function onForward */\n onForward?: (from: Date, to: Date) => void;\n /** Min date */\n minValue?: Date;\n /** Max fate */\n maxValue?: Date;\n /** html class */\n className?: string;\n /** Period for calculating week (isoWeek) */\n period?: \"week\" | \"isoWeek\";\n /** Classes for datePicker */\n datePickerClass?: string;\n /** Show datePicker in the middle button */\n withDatePicker?: boolean;\n /** Popper class name*/\n popperClassName?: string;\n /** DatePicker menu position */\n position?: Placement;\n}\n\n/**\n * This component allow you to select date range. It accepts two parameters \"from\" and \"to\" as valid format\n * onChange and onBack and onForward it will return \"from: Date\" and \"to: Date\" as function arguments\n */\nexport const DateStepper: FC<IDateStepperProps> = ({\n step,\n formatCallback,\n onChange,\n from,\n to,\n onBack,\n onForward,\n minValue,\n maxValue,\n className,\n period = \"week\",\n datePickerClass,\n withDatePicker = true,\n defaultMonth = new Date(),\n popperClassName,\n position = \"bottom\",\n}) => {\n const [fromDate, setFromDate] = useState(moment(from));\n const [toDate, setToDate] = useState(moment(to));\n const [showDatePicker, setShowDatePicker] = useState(false);\n const [month, setMonth] = useState(defaultMonth);\n\n const getDatesByPeriod = useCallback(\n (interval: number): Moment[] => {\n const date = fromDate ? fromDate : moment();\n if (step === \"daily\") {\n date.add(interval, \"days\");\n return [date, date.clone()];\n } else if (step === \"weekly\") {\n date.add(interval, \"weeks\");\n return [date.clone().startOf(period), date.clone().endOf(period)];\n } else if (step === \"monthly\") {\n date.add(interval, \"months\");\n return [date.clone().startOf(\"month\"), date.clone().endOf(\"month\")];\n } else if (step === \"quarterly\") {\n date.add(interval, \"quarters\");\n return [date.clone().startOf(\"quarter\"), date.clone().endOf(\"quarter\")];\n } else if (step === \"yearly\") {\n date.add(interval, \"years\");\n return [date.clone().startOf(\"year\"), date.clone().endOf(\"year\")];\n }\n return [date, date];\n },\n [fromDate, period, step]\n );\n\n const getDateFormatted = useMemo(() => {\n if (formatCallback) {\n return formatCallback(fromDate.toDate(), toDate.toDate());\n }\n\n const actualYear = moment().year();\n\n const showWeekOrCustomDateFormat = (start, end): string => {\n if (start.year() === actualYear && end.year() === actualYear) {\n return start.format(\"MMM DD\") + \" - \" + end.format(\"MMM DD\");\n } else {\n return start.format(\"MMM DD YYYY\") + \" - \" + end.format(\"MMM DD YYYY\");\n }\n };\n\n if (step === \"daily\") {\n if (fromDate.year() === actualYear) {\n return fromDate.format(\"MMM DD\");\n }\n return fromDate.format(\"MMM DD YYYY\");\n } else if (step === \"weekly\") {\n const startDate = fromDate.clone().startOf(period);\n const endDate = startDate.clone().endOf(period);\n return showWeekOrCustomDateFormat(startDate, endDate);\n } else if (step === \"monthly\") {\n return fromDate.format(\"MMM YYYY\");\n } else if (step === \"quarterly\") {\n return `Q${fromDate.quarter()}/${fromDate.format(\"YYYY\")}`;\n } else if (step === \"yearly\") {\n return fromDate.format(\"YYYY\");\n } else if (step === \"custom\") {\n return showWeekOrCustomDateFormat(fromDate, toDate);\n }\n\n return \"\";\n }, [fromDate, step, toDate, formatCallback, period]);\n\n const onChangeCallback = useCallback(\n (amount: number) => {\n const [newFrom, newTo] = getDatesByPeriod(amount);\n setFromDate(moment(newFrom));\n setToDate(moment(newTo));\n\n if (onChange) {\n onChange(newFrom.toDate(), newTo.toDate());\n }\n },\n [onChange, getDatesByPeriod]\n );\n\n const onDatePickerChange = useCallback(\n (dates?: { from: Date; to: Date }) => {\n const fromDateTemp = dates?.from;\n const toDateTemp = dates?.to;\n\n setFromDate(moment(fromDateTemp));\n setToDate(moment(toDateTemp));\n\n if (\n onChange &&\n fromDateTemp instanceof Date &&\n toDateTemp instanceof Date\n ) {\n onChange(fromDateTemp, toDateTemp);\n }\n },\n [onChange, setFromDate, setToDate]\n );\n\n const isAfterMaxDate = useMemo(() => {\n return (\n maxValue instanceof Date &&\n moment(moment(maxValue).format(\"YYYY-MM-DD\")).isSameOrBefore(\n toDate.format(\"YYYY-MM-DD\")\n )\n );\n }, [maxValue, toDate]);\n\n const isBeforeMinDate = useMemo(() => {\n return (\n minValue instanceof Date &&\n moment(moment(minValue).format(\"YYYY-MM-DD\")).isSameOrAfter(\n toDate.format(\"YYYY-MM-DD\")\n )\n );\n }, [minValue, toDate]);\n\n useEffect(() => {\n if (isBeforeMinDate) {\n if (step === \"daily\") {\n setFromDate(moment(minValue));\n setToDate(moment(minValue));\n }\n }\n if (isAfterMaxDate) {\n if (step === \"daily\") {\n setFromDate(moment(maxValue));\n setToDate(moment(maxValue));\n }\n }\n }, [step, minValue, maxValue, isBeforeMinDate, isAfterMaxDate]);\n\n const onRightClickHandler = useCallback(() => {\n if (isAfterMaxDate) {\n return;\n }\n\n onChangeCallback(1);\n\n if (onForward) {\n onForward(fromDate.toDate(), toDate.toDate());\n }\n }, [isAfterMaxDate, onChangeCallback, onForward, fromDate, toDate]);\n\n const onLeftClickHandler = useCallback(() => {\n if (isBeforeMinDate) {\n return;\n }\n\n onChangeCallback(-1);\n\n if (onBack) {\n onBack(fromDate.toDate(), toDate.toDate());\n }\n }, [isBeforeMinDate, onChangeCallback, onBack, fromDate, toDate]);\n\n const renderLeftRightButtons = useMemo(() => {\n return step !== \"custom\";\n }, [step]);\n\n const handleShow = useCallback(() => {\n setShowDatePicker(!showDatePicker);\n if (fromDate) {\n setMonth(fromDate.toDate());\n }\n }, [setShowDatePicker, showDatePicker, fromDate]);\n\n const closeMenu = useCallback(() => {\n setShowDatePicker(false);\n }, []);\n\n const onMonthChange = useCallback(\n (m: Date) => {\n setMonth(m);\n },\n [setMonth]\n );\n\n useEffect(() => {\n setFromDate(moment(from));\n setToDate(moment(to));\n }, [from, to]);\n\n const dateStepperWidth = (\n fromDay: Moment,\n toDay: Moment,\n range: string\n ): { minWidth: string } => {\n if (\n fromDay.year() !== moment().year() ||\n toDay.year() !== moment().year()\n ) {\n switch (range) {\n case \"daily\":\n case \"monthly\":\n return { minWidth: \"122px\" };\n case \"weekly\":\n case \"custom\":\n return { minWidth: \"232px\" };\n }\n }\n switch (range) {\n case \"monthly\":\n return { minWidth: \"122px\" };\n case \"weekly\":\n case \"custom\":\n return { minWidth: \"182px\" };\n }\n\n return { minWidth: \"102px\" };\n };\n const isDisabled = useCallback(\n (day: Date): boolean => {\n const dayFormat = moment(day).format(\"YYYY-MM-DD\");\n\n const isBefore =\n maxValue instanceof Date &&\n moment(moment(maxValue).format(\"YYYY-MM-DD\")).isBefore(dayFormat);\n const isAfter =\n minValue instanceof Date &&\n moment(moment(minValue).format(\"YYYY-MM-DD\")).isAfter(dayFormat);\n\n return isBefore || isAfter;\n },\n [maxValue, minValue]\n );\n\n const modifiers = useMemo(() => {\n return {\n [customClassNames.disabled]: (day: Date): boolean => {\n return isDisabled(day);\n },\n [customClassNames.nonWorkingDay]: (day: Date): boolean => {\n return isDisabled(day);\n },\n };\n }, [isDisabled]);\n\n return (\n <StyledButtonGroup className={classNames(\"c-date-stepper\", className)}>\n {renderLeftRightButtons ? (\n <Button\n type=\"button\"\n variant=\"secondary\"\n onClick={onLeftClickHandler}\n disabled={isBeforeMinDate}\n >\n <CaretLeftIcon />\n </Button>\n ) : null}\n <StyledDiv\n $isTargetable={step === \"yearly\" || !withDatePicker}\n $isRounded={step === \"custom\"}\n style={dateStepperWidth(fromDate, toDate, step)}\n >\n {withDatePicker ? (\n <StyledMenu\n target={\n <StyledButton type=\"button\" className=\"c-simple-menu__trigger\">\n <span>{getDateFormatted}</span>\n </StyledButton>\n }\n open={showDatePicker}\n onOpen={handleShow}\n onClose={closeMenu}\n popperClassName={popperClassName}\n position={position}\n >\n <DatePicker\n month={month}\n localeUtils={MomentLocaleUtils}\n locale=\"en\"\n selectionMode={step}\n className={datePickerClass}\n selectedDays={{ from: fromDate.toDate(), to: toDate.toDate() }}\n onChange={onDatePickerChange}\n onMonthChange={onMonthChange}\n firstDayOfWeek={period === \"week\" ? 0 : 1}\n modifiers={modifiers}\n dateRequired\n fixedWeeks\n />\n </StyledMenu>\n ) : (\n <StyledSpan>{getDateFormatted}</StyledSpan>\n )}\n </StyledDiv>\n {renderLeftRightButtons ? (\n <Button\n type=\"button\"\n variant=\"secondary\"\n onClick={onRightClickHandler}\n disabled={isAfterMaxDate}\n >\n <CaretRightIcon />\n </Button>\n ) : null}\n </StyledButtonGroup>\n );\n};\n\nDateStepper.displayName = \"DateStepper\";\n"],"file":"DateStepper.js"}
|
|
1
|
+
{"version":3,"sources":["../../../../../src/components/Steppers/DateStepper/DateStepper.tsx"],"names":["DateStepper","step","formatCallback","onChange","from","to","onBack","onForward","minValue","maxValue","className","period","datePickerClass","withDatePicker","defaultMonth","Date","popperClassName","position","fromDate","setFromDate","toDate","setToDate","showDatePicker","setShowDatePicker","month","setMonth","getDatesByPeriod","interval","date","add","clone","startOf","endOf","getDateFormatted","actualYear","year","showWeekOrCustomDateFormat","start","end","format","startDate","endDate","quarter","onChangeCallback","amount","newFrom","newTo","onDatePickerChange","dates","fromDateTemp","toDateTemp","isAfterMaxDate","isSameOrBefore","isBeforeMinDate","isSameOrAfter","onRightClickHandler","onLeftClickHandler","renderLeftRightButtons","handleShow","closeMenu","onMonthChange","m","dateStepperWidth","fromDay","toDay","range","minWidth","isDisabled","day","dayFormat","isBefore","isAfter","modifiers","customClassNames","disabled","nonWorkingDay","MomentLocaleUtils","displayName"],"mappings":"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","sourcesContent":["import React, { FC, useCallback, useMemo, useState, useEffect } from \"react\";\nimport classNames from \"classnames\";\nimport moment, { Moment } from \"moment\";\nimport MomentLocaleUtils from \"react-day-picker/moment\";\nimport { Placement } from \"@popperjs/core\";\nimport { Button } from \"../../Button/Button\";\nimport CaretLeftIcon from \"../../Icons/collection/CaretLeft\";\nimport CaretRightIcon from \"../../Icons/collection/CaretRight\";\nimport { DatePicker } from \"../../DatePicker\";\nimport { customClassNames } from \"../../DatePicker/ClassNames\";\nimport {\n StyledButton,\n StyledButtonGroup,\n StyledDiv,\n StyledMenu,\n StyledSpan,\n} from \"./Styles\";\n\ninterface IDateStepperProps {\n /** One of the possible steps for this component */\n step:\n | \"daily\"\n | \"weekly\"\n | \"monthly\"\n | \"quarterly\"\n | \"yearly\"\n | \"custom\"\n | string;\n /** Callback function that will be called after the changed range */\n onChange?: (from: Date, to: Date) => void;\n /** Start date of the range */\n from: Date | string;\n /** End date of the range */\n to: Date | string;\n /** Callback function that will format the text label */\n formatCallback?: (from: string | Date, to: string | Date) => string;\n /** Default month */\n defaultMonth?: Date;\n /** Callback function onBack */\n onBack?: (from: Date, to: Date) => void;\n /** Callback function onForward */\n onForward?: (from: Date, to: Date) => void;\n /** Min date */\n minValue?: Date;\n /** Max fate */\n maxValue?: Date;\n /** html class */\n className?: string;\n /** Period for calculating week (isoWeek) */\n period?: \"week\" | \"isoWeek\";\n /** Classes for datePicker */\n datePickerClass?: string;\n /** Show datePicker in the middle button */\n withDatePicker?: boolean;\n /** Popper class name*/\n popperClassName?: string;\n /** DatePicker menu position */\n position?: Placement;\n}\n\n/**\n * This component allow you to select date range. It accepts two parameters \"from\" and \"to\" as valid format\n * onChange and onBack and onForward it will return \"from: Date\" and \"to: Date\" as function arguments\n */\nexport const DateStepper: FC<IDateStepperProps> = ({\n step,\n formatCallback,\n onChange,\n from,\n to,\n onBack,\n onForward,\n minValue,\n maxValue,\n className,\n period = \"week\",\n datePickerClass,\n withDatePicker = true,\n defaultMonth = new Date(),\n popperClassName,\n position = \"bottom\",\n}) => {\n const [fromDate, setFromDate] = useState(moment(from));\n const [toDate, setToDate] = useState(moment(to));\n const [showDatePicker, setShowDatePicker] = useState(false);\n const [month, setMonth] = useState(defaultMonth);\n\n const getDatesByPeriod = useCallback(\n (interval: number): Moment[] => {\n const date = fromDate ? fromDate : moment();\n if (step === \"daily\") {\n date.add(interval, \"days\");\n return [date, date.clone()];\n } else if (step === \"weekly\") {\n date.add(interval, \"weeks\");\n return [date.clone().startOf(period), date.clone().endOf(period)];\n } else if (step === \"monthly\") {\n date.add(interval, \"months\");\n return [date.clone().startOf(\"month\"), date.clone().endOf(\"month\")];\n } else if (step === \"quarterly\") {\n date.add(interval, \"quarters\");\n return [date.clone().startOf(\"quarter\"), date.clone().endOf(\"quarter\")];\n } else if (step === \"yearly\") {\n date.add(interval, \"years\");\n return [date.clone().startOf(\"year\"), date.clone().endOf(\"year\")];\n }\n return [date, date];\n },\n [fromDate, period, step]\n );\n\n const getDateFormatted = useMemo(() => {\n if (formatCallback) {\n return formatCallback(fromDate.toDate(), toDate.toDate());\n }\n\n const actualYear = moment().year();\n\n const showWeekOrCustomDateFormat = (start, end): string => {\n if (start.year() === actualYear && end.year() === actualYear) {\n return start.format(\"MMM DD\") + \" - \" + end.format(\"MMM DD\");\n } else {\n return start.format(\"MMM DD YYYY\") + \" - \" + end.format(\"MMM DD YYYY\");\n }\n };\n\n if (step === \"daily\") {\n if (fromDate.year() === actualYear) {\n return fromDate.format(\"MMM DD\");\n }\n return fromDate.format(\"MMM DD YYYY\");\n } else if (step === \"weekly\") {\n const startDate = fromDate.clone().startOf(period);\n const endDate = startDate.clone().endOf(period);\n return showWeekOrCustomDateFormat(startDate, endDate);\n } else if (step === \"monthly\") {\n return fromDate.format(\"MMM YYYY\");\n } else if (step === \"quarterly\") {\n return `Q${fromDate.quarter()}/${fromDate.format(\"YYYY\")}`;\n } else if (step === \"yearly\") {\n return fromDate.format(\"YYYY\");\n } else if (step === \"custom\") {\n return showWeekOrCustomDateFormat(fromDate, toDate);\n }\n\n return \"\";\n }, [fromDate, step, toDate, formatCallback, period]);\n\n const onChangeCallback = useCallback(\n (amount: number) => {\n const [newFrom, newTo] = getDatesByPeriod(amount);\n setFromDate(moment(newFrom));\n setToDate(moment(newTo));\n\n if (onChange) {\n onChange(newFrom.toDate(), newTo.toDate());\n }\n },\n [onChange, getDatesByPeriod]\n );\n\n const onDatePickerChange = useCallback(\n (dates?: { from: Date; to: Date }) => {\n const fromDateTemp = dates?.from;\n const toDateTemp = dates?.to;\n\n setFromDate(moment(fromDateTemp));\n setToDate(moment(toDateTemp));\n\n if (\n onChange &&\n fromDateTemp instanceof Date &&\n toDateTemp instanceof Date\n ) {\n onChange(fromDateTemp, toDateTemp);\n }\n },\n [onChange, setFromDate, setToDate]\n );\n\n const isAfterMaxDate = useMemo(() => {\n return (\n maxValue instanceof Date &&\n moment(moment(maxValue).format(\"YYYY-MM-DD\")).isSameOrBefore(\n toDate.format(\"YYYY-MM-DD\")\n )\n );\n }, [maxValue, toDate]);\n\n const isBeforeMinDate = useMemo(() => {\n return (\n minValue instanceof Date &&\n moment(moment(minValue).format(\"YYYY-MM-DD\")).isSameOrAfter(\n toDate.format(\"YYYY-MM-DD\")\n )\n );\n }, [minValue, toDate]);\n\n useEffect(() => {\n if (isBeforeMinDate) {\n if (step === \"daily\") {\n setFromDate(moment(minValue));\n setToDate(moment(minValue));\n }\n }\n if (isAfterMaxDate) {\n if (step === \"daily\") {\n setFromDate(moment(maxValue));\n setToDate(moment(maxValue));\n }\n }\n }, [step, minValue, maxValue, isBeforeMinDate, isAfterMaxDate]);\n\n const onRightClickHandler = useCallback(() => {\n if (isAfterMaxDate) {\n return;\n }\n\n onChangeCallback(1);\n\n if (onForward) {\n onForward(fromDate.toDate(), toDate.toDate());\n }\n }, [isAfterMaxDate, onChangeCallback, onForward, fromDate, toDate]);\n\n const onLeftClickHandler = useCallback(() => {\n if (isBeforeMinDate) {\n return;\n }\n\n onChangeCallback(-1);\n\n if (onBack) {\n onBack(fromDate.toDate(), toDate.toDate());\n }\n }, [isBeforeMinDate, onChangeCallback, onBack, fromDate, toDate]);\n\n const renderLeftRightButtons = useMemo(() => {\n return step !== \"custom\";\n }, [step]);\n\n const handleShow = useCallback(() => {\n setShowDatePicker(!showDatePicker);\n if (fromDate) {\n setMonth(fromDate.toDate());\n }\n }, [setShowDatePicker, showDatePicker, fromDate]);\n\n const closeMenu = useCallback(() => {\n setShowDatePicker(false);\n }, []);\n\n const onMonthChange = useCallback(\n (m: Date) => {\n setMonth(m);\n },\n [setMonth]\n );\n\n useEffect(() => {\n setFromDate(moment(from));\n setToDate(moment(to));\n }, [from, to]);\n\n const dateStepperWidth = (\n fromDay: Moment,\n toDay: Moment,\n range: string\n ): { minWidth: string } => {\n if (\n fromDay.year() !== moment().year() ||\n toDay.year() !== moment().year()\n ) {\n switch (range) {\n case \"daily\":\n case \"monthly\":\n return { minWidth: \"122px\" };\n case \"weekly\":\n case \"custom\":\n return { minWidth: \"232px\" };\n }\n }\n switch (range) {\n case \"monthly\":\n return { minWidth: \"122px\" };\n case \"weekly\":\n case \"custom\":\n return { minWidth: \"182px\" };\n }\n\n return { minWidth: \"102px\" };\n };\n const isDisabled = useCallback(\n (day: Date): boolean => {\n const dayFormat = moment(day).format(\"YYYY-MM-DD\");\n\n const isBefore =\n maxValue instanceof Date &&\n moment(moment(maxValue).format(\"YYYY-MM-DD\")).isBefore(dayFormat);\n const isAfter =\n minValue instanceof Date &&\n moment(moment(minValue).format(\"YYYY-MM-DD\")).isAfter(dayFormat);\n\n return isBefore || isAfter;\n },\n [maxValue, minValue]\n );\n\n const modifiers = useMemo(() => {\n return {\n [customClassNames.disabled]: (day: Date): boolean => {\n return isDisabled(day);\n },\n [customClassNames.nonWorkingDay]: (day: Date): boolean => {\n return isDisabled(day);\n },\n };\n }, [isDisabled]);\n\n return (\n <StyledButtonGroup className={classNames(\"c-date-stepper\", className)}>\n {renderLeftRightButtons ? (\n <Button\n type=\"button\"\n variant=\"secondary\"\n onClick={onLeftClickHandler}\n disabled={isBeforeMinDate}\n >\n <CaretLeftIcon />\n </Button>\n ) : null}\n <StyledDiv\n $isTargetable={step === \"yearly\" || !withDatePicker}\n $isRounded={step === \"custom\"}\n style={dateStepperWidth(fromDate, toDate, step)}\n >\n {withDatePicker ? (\n <StyledMenu\n target={\n <StyledButton type=\"button\">\n <span>{getDateFormatted}</span>\n </StyledButton>\n }\n open={showDatePicker}\n onOpen={handleShow}\n onClose={closeMenu}\n popperClassName={popperClassName}\n position={position}\n >\n <DatePicker\n month={month}\n localeUtils={MomentLocaleUtils}\n locale=\"en\"\n selectionMode={step}\n className={datePickerClass}\n selectedDays={{ from: fromDate.toDate(), to: toDate.toDate() }}\n onChange={onDatePickerChange}\n onMonthChange={onMonthChange}\n firstDayOfWeek={period === \"week\" ? 0 : 1}\n modifiers={modifiers}\n dateRequired\n fixedWeeks\n />\n </StyledMenu>\n ) : (\n <StyledSpan>{getDateFormatted}</StyledSpan>\n )}\n </StyledDiv>\n {renderLeftRightButtons ? (\n <Button\n type=\"button\"\n variant=\"secondary\"\n onClick={onRightClickHandler}\n disabled={isAfterMaxDate}\n >\n <CaretRightIcon />\n </Button>\n ) : null}\n </StyledButtonGroup>\n );\n};\n\nDateStepper.displayName = \"DateStepper\";\n"],"file":"DateStepper.js"}
|
|
@@ -24,7 +24,7 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
|
|
|
24
24
|
var StyledButton = _styledComponents.default.button.withConfig({
|
|
25
25
|
displayName: "Styles__StyledButton",
|
|
26
26
|
componentId: "sc-1v8h7mt-0"
|
|
27
|
-
})(["", " ", " color:var(--color-theme-700);margin:0;padding:0;background:none;width:100%;height:auto;border:none;height:30px;transition:all 0.3s ease;
|
|
27
|
+
})(["", " ", " ", " color:var(--color-theme-700);margin:0;padding:0;background:none;width:100%;height:auto;border:none;height:30px;line-height:1;transition:all 0.3s ease;svg{fill:currentColor;}&::-moz-focus-inner{border:0;}&:focus{outline:none;}&:hover{text-decoration:none;}&:disabled{cursor:default;opacity:50%;pointer-events:none;}"], _FontStyle.FontStyle, _BoxSizingStyle.BoxSizingStyle, {
|
|
28
28
|
"position": "relative",
|
|
29
29
|
"WebkitFontSmoothing": "antialiased",
|
|
30
30
|
"MozOsxFontSmoothing": "grayscale",
|
|
@@ -56,7 +56,7 @@ exports.StyledMenu = StyledMenu;
|
|
|
56
56
|
var StyledButtonGroup = (0, _styledComponents.default)(_ButtonGroup.ButtonGroup).withConfig({
|
|
57
57
|
displayName: "Styles__StyledButtonGroup",
|
|
58
58
|
componentId: "sc-1v8h7mt-2"
|
|
59
|
-
})(["", " ", " button{position:relative;z-index:1;}"], _FontStyle.FontStyle, _BoxSizingStyle.BoxSizingStyle);
|
|
59
|
+
})(["", " ", " button:hover{position:relative;z-index:1;}"], _FontStyle.FontStyle, _BoxSizingStyle.BoxSizingStyle);
|
|
60
60
|
exports.StyledButtonGroup = StyledButtonGroup;
|
|
61
61
|
|
|
62
62
|
var StyledSpan = _styledComponents.default.span.withConfig({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/components/Steppers/DateStepper/Styles.ts"],"names":["StyledButton","styled","button","FontStyle","BoxSizingStyle","StyledMenu","Menu","StyledButtonGroup","ButtonGroup","StyledSpan","span","StyledDiv","div","props","$isTargetable","css","$isRounded","displayName"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AAEA;;;;;;AAEO,IAAMA,YAAY,GAAGC,0BAAOC,MAAV;AAAA;AAAA;AAAA,
|
|
1
|
+
{"version":3,"sources":["../../../../../src/components/Steppers/DateStepper/Styles.ts"],"names":["StyledButton","styled","button","FontStyle","BoxSizingStyle","StyledMenu","Menu","StyledButtonGroup","ButtonGroup","StyledSpan","span","StyledDiv","div","props","$isTargetable","css","$isRounded","displayName"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AAEA;;;;;;AAEO,IAAMA,YAAY,GAAGC,0BAAOC,MAAV;AAAA;AAAA;AAAA,kVACrBC,oBADqB,EAErBC,8BAFqB,EAInB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,CAJmB,CAAlB;;;AAqDA,IAAMC,UAAU,GAAG,+BAAOC,UAAP,CAAH;AAAA;AAAA;AAAA,aACjB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,CADiB,CAAhB;;AASA,IAAMC,iBAAiB,GAAG,+BAAOC,wBAAP,CAAH;AAAA;AAAA;AAAA,6DAC1BL,oBAD0B,EAE1BC,8BAF0B,CAAvB;;;AAUA,IAAMK,UAAU,GAAGR,0BAAOS,IAAV;AAAA;AAAA;AAAA,sDAAhB;;;;AAUA,IAAMC,SAAS,GAAGV,0BAAOW,GAAV;AAAA;AAAA;AAAA,mgBAClB,UAACC,KAAD;AAAA,SACAA,KAAK,CAACC,aAAN,QACAC,qBADA,YAEM;AAAA;AAAA,GAFN,CADA;AAAA,CADkB,EAOlB,UAACF,KAAD;AAAA,SACAA,KAAK,CAACG,UAAN,QACAD,qBADA,0CADA;AAAA,CAPkB,EAahB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,CAbgB,CAAf;;;AAqEPR,iBAAiB,CAACU,WAAlB,GAAgC,mBAAhC;AACAR,UAAU,CAACQ,WAAX,GAAyB,YAAzB;AACAN,SAAS,CAACM,WAAV,GAAwB,WAAxB;AACAZ,UAAU,CAACY,WAAX,GAAyB,YAAzB;AACAjB,YAAY,CAACiB,WAAb,GAA2B,cAA3B","sourcesContent":["import styled, { css } from \"styled-components\";\nimport { ButtonGroup } from \"../../ButtonGroup\";\nimport { FontStyle } from \"../../FontStyle\";\nimport { BoxSizingStyle } from \"../../BoxSizingStyle\";\nimport tw from \"twin.macro\";\nimport { Menu } from \"../../Menu\";\n\nexport const StyledButton = styled.button`\n ${FontStyle}\n ${BoxSizingStyle}\n\n ${tw`\n tw-relative\n tw-antialiased\n tw-align-middle\n tw-font-medium\n tw-inline-block\n tw-leading-none\n tw-m-0\n tw-no-underline\n tw-text-sm\n tw-select-none\n tw-cursor-pointer\n tw-text-center\n `}\n\n color: var(--color-theme-700);\n margin: 0;\n padding: 0;\n background: none;\n width: 100%;\n height: auto;\n border: none;\n height: 30px;\n line-height: 1;\n transition: all 0.3s ease;\n\n svg {\n fill: currentColor;\n }\n\n &::-moz-focus-inner {\n border: 0;\n }\n\n &:focus {\n outline: none;\n }\n\n &:hover {\n text-decoration: none;\n }\n\n &:disabled {\n cursor: default;\n opacity: 50%;\n pointer-events: none;\n }\n`;\n\nexport const StyledMenu = styled(Menu)`\n ${tw`\n tw-w-auto\n tw-h-auto\n tw-py-4\n tw-px-2\n `}\n`;\n\nexport const StyledButtonGroup = styled(ButtonGroup)`\n ${FontStyle}\n ${BoxSizingStyle}\n\n button:hover {\n position: relative;\n z-index: 1;\n }\n`;\n\nexport const StyledSpan = styled.span`\n line-height: 30px;\n color: var(--color-theme-700);\n`;\n\ninterface StyledDiv {\n $isTargetable: boolean;\n $isRounded: boolean;\n}\n\nexport const StyledDiv = styled.div<StyledDiv>`\n ${(props) =>\n props.$isTargetable &&\n css`\n ${tw`tw-pointer-events-none`}\n `}\n\n ${(props) =>\n props.$isRounded &&\n css`\n border-radius: var(--ac-br-rounded);\n `}\n\n ${tw`\n tw-relative\n tw-text-center\n tw-p-0\n tw-antialiased\n tw-align-middle\n tw-font-medium\n tw-inline-block\n tw-leading-none\n tw-m-0\n tw-no-underline\n tw-text-sm\n tw-select-none\n tw-cursor-pointer\n tw-border\n tw-border-solid\n `}\n\n height: 32px;\n transition: all 0.3s ease;\n background-color: transparent;\n border: solid 1px var(--color-theme-700);\n color: var(--color-theme-700);\n margin-right: -1px;\n\n svg {\n fill: currentColor;\n }\n\n &::-moz-focus-inner {\n border: 0;\n }\n\n &:focus {\n outline: none;\n }\n\n &:disabled {\n cursor: default;\n opacity: 50%;\n pointer-events: none;\n }\n\n &:hover {\n border-color: var(--color-primary);\n color: var(--color-primary);\n text-decoration: none;\n }\n\n &:active {\n border-color: var(--color-primary);\n color: var(--color-primary);\n background-color: var(--color-primary-200);\n }\n`;\n\nStyledButtonGroup.displayName = \"StyledButtonGroup\";\nStyledSpan.displayName = \"StyledSpan\";\nStyledDiv.displayName = \"StyledDiv\";\nStyledMenu.displayName = \"StyledMenu\";\nStyledButton.displayName = \"StyledButton\";\n"],"file":"Styles.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Styles.d.ts","sourceRoot":"","sources":["../../../../src/components/Pickers/Styles.ts"],"names":[],"mappings":";AAKA,eAAO,MAAM,kBAAkB;gBACjB,MAAM,GAAG,UAAU;SAoBhC,CAAC;AAEF,eAAO,MAAM,iBAAiB,wqPAG7B,CAAC;AAEF,UAAU,oBAAoB;IAC5B,UAAU,EAAE,OAAO,CAAC;IACpB,WAAW,EAAE,OAAO,CAAC;IACrB,iBAAiB,EAAE,OAAO,CAAC;CAC5B;AAED,eAAO,MAAM,YAAY,oEAaxB,CAAC;AACF,eAAO,MAAM,WAAW,sFA2CvB,CAAC;AAEF,eAAO,MAAM,qBAAqB,oEAWjC,CAAC;AAEF,eAAO,MAAM,2BAA2B,oEAGvC,CAAC;AAEF,eAAO,MAAM,+BAA+B,
|
|
1
|
+
{"version":3,"file":"Styles.d.ts","sourceRoot":"","sources":["../../../../src/components/Pickers/Styles.ts"],"names":[],"mappings":";AAKA,eAAO,MAAM,kBAAkB;gBACjB,MAAM,GAAG,UAAU;SAoBhC,CAAC;AAEF,eAAO,MAAM,iBAAiB,wqPAG7B,CAAC;AAEF,UAAU,oBAAoB;IAC5B,UAAU,EAAE,OAAO,CAAC;IACpB,WAAW,EAAE,OAAO,CAAC;IACrB,iBAAiB,EAAE,OAAO,CAAC;CAC5B;AAED,eAAO,MAAM,YAAY,oEAaxB,CAAC;AACF,eAAO,MAAM,WAAW,sFA2CvB,CAAC;AAEF,eAAO,MAAM,qBAAqB,oEAWjC,CAAC;AAEF,eAAO,MAAM,2BAA2B,oEAGvC,CAAC;AAEF,eAAO,MAAM,+BAA+B,qEAS3C,CAAC"}
|
|
@@ -53,7 +53,7 @@ export var StyledMonth = styled.div.withConfig({
|
|
|
53
53
|
export var StyledYearMonthPicker = styled.div.withConfig({
|
|
54
54
|
displayName: "Styles__StyledYearMonthPicker",
|
|
55
55
|
componentId: "sc-1owijsg-4"
|
|
56
|
-
})(["display:table-caption;margin-bottom:0.
|
|
56
|
+
})(["display:table-caption;margin-bottom:0.5rem;padding:0 0.5rem;", " &> div{font-weight:500;font-size:1.15rem;}"], {
|
|
57
57
|
"textAlign": "center",
|
|
58
58
|
"color": "var(--color-theme-900)"
|
|
59
59
|
});
|
|
@@ -64,7 +64,7 @@ export var StyledYearMonthPickerNavBar = styled.div.withConfig({
|
|
|
64
64
|
export var StyledYearMonthPickerNavBarItem = styled.span.withConfig({
|
|
65
65
|
displayName: "Styles__StyledYearMonthPickerNavBarItem",
|
|
66
66
|
componentId: "sc-1owijsg-6"
|
|
67
|
-
})(["", " transition-duration:0.3s;
|
|
67
|
+
})(["", " transition-duration:0.3s;display:inline-block;&:hover{background-color:var(--color-primary-300);border-radius:15px;}"], {
|
|
68
68
|
"paddingLeft": "1rem",
|
|
69
69
|
"paddingRight": "1rem",
|
|
70
70
|
"cursor": "pointer"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/Pickers/Styles.ts"],"names":["styled","css","Button","MenuNavIcon","StyledNavBarButton","props","$direction","StyledMenuNavIcon","StyledMonths","div","StyledMonth","$isSelected","$isCurrent","$isCurrentQuarter","StyledYearMonthPicker","StyledYearMonthPickerNavBar","StyledYearMonthPickerNavBarItem","span","displayName"],"mappings":"AAAA,OAAOA,MAAP,IAAiBC,GAAjB,QAA4B,mBAA5B;AACA,SAASC,MAAT,QAAuB,kBAAvB;AAEA,OAAOC,WAAP,MAAwB,iCAAxB;AAEA,OAAO,IAAMC,kBAAkB,GAAGJ,MAAM,CAACE,MAAD,CAAT;AAAA;AAAA;AAAA,kGAS3B,UAACG,KAAD;AAAA,SACAA,KAAK,CAACC,UAAN,KAAqB,UAArB,IACAL,GADA,0BADA;AAAA,CAT2B,EAgB3B,UAACI,KAAD;AAAA,SACAA,KAAK,CAACC,UAAN,KAAqB,MAArB,IACAL,GADA,gBADA;AAAA,CAhB2B,CAAxB;AAuBP,OAAO,IAAMM,iBAAiB,GAAGP,MAAM,CAACG,WAAD,CAAT;AAAA;AAAA;AAAA,uCACxB;AAAA;AAAA,CADwB,CAAvB;AAWP,OAAO,IAAMK,YAAY,GAAGR,MAAM,CAACS,GAAV;AAAA;AAAA;AAAA,mCAInB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,CAJmB,CAAlB;AAcP,OAAO,IAAMC,WAAW,GAAGV,MAAM,CAACS,GAAV;AAAA;AAAA;AAAA,oEAIlB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,CAJkB,EAYpB,UAACJ,KAAD;AAAA,SACA,CAACA,KAAK,CAACM,WAAP,GACIV,GADJ,4DAMIA,GANJ,kDAOU;AAAA;AAAA,GAPV,CADA;AAAA,CAZoB,EAwBnB,UAACI,KAAD;AAAA,SACDA,KAAK,CAACO,UAAN,IACA,CAACP,KAAK,CAACM,WADP,IAEAV,GAFA,WAGM;AAAA;AAAA,GAHN,CADC;AAAA,CAxBmB,EA+BnB,UAACI,KAAD;AAAA,SACDA,KAAK,CAACO,UAAN,IACAP,KAAK,CAACM,WADN,IAEAV,GAFA,mCADC;AAAA,CA/BmB,EAsCnB,UAACI,KAAD;AAAA,SACDA,KAAK,CAACQ,iBAAN,IACAZ,GADA,gDADC;AAAA,CAtCmB,CAAjB;AA6CP,OAAO,IAAMa,qBAAqB,GAAGd,MAAM,CAACS,GAAV;AAAA;AAAA;AAAA,
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/Pickers/Styles.ts"],"names":["styled","css","Button","MenuNavIcon","StyledNavBarButton","props","$direction","StyledMenuNavIcon","StyledMonths","div","StyledMonth","$isSelected","$isCurrent","$isCurrentQuarter","StyledYearMonthPicker","StyledYearMonthPickerNavBar","StyledYearMonthPickerNavBarItem","span","displayName"],"mappings":"AAAA,OAAOA,MAAP,IAAiBC,GAAjB,QAA4B,mBAA5B;AACA,SAASC,MAAT,QAAuB,kBAAvB;AAEA,OAAOC,WAAP,MAAwB,iCAAxB;AAEA,OAAO,IAAMC,kBAAkB,GAAGJ,MAAM,CAACE,MAAD,CAAT;AAAA;AAAA;AAAA,kGAS3B,UAACG,KAAD;AAAA,SACAA,KAAK,CAACC,UAAN,KAAqB,UAArB,IACAL,GADA,0BADA;AAAA,CAT2B,EAgB3B,UAACI,KAAD;AAAA,SACAA,KAAK,CAACC,UAAN,KAAqB,MAArB,IACAL,GADA,gBADA;AAAA,CAhB2B,CAAxB;AAuBP,OAAO,IAAMM,iBAAiB,GAAGP,MAAM,CAACG,WAAD,CAAT;AAAA;AAAA;AAAA,uCACxB;AAAA;AAAA,CADwB,CAAvB;AAWP,OAAO,IAAMK,YAAY,GAAGR,MAAM,CAACS,GAAV;AAAA;AAAA;AAAA,mCAInB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,CAJmB,CAAlB;AAcP,OAAO,IAAMC,WAAW,GAAGV,MAAM,CAACS,GAAV;AAAA;AAAA;AAAA,oEAIlB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,CAJkB,EAYpB,UAACJ,KAAD;AAAA,SACA,CAACA,KAAK,CAACM,WAAP,GACIV,GADJ,4DAMIA,GANJ,kDAOU;AAAA;AAAA,GAPV,CADA;AAAA,CAZoB,EAwBnB,UAACI,KAAD;AAAA,SACDA,KAAK,CAACO,UAAN,IACA,CAACP,KAAK,CAACM,WADP,IAEAV,GAFA,WAGM;AAAA;AAAA,GAHN,CADC;AAAA,CAxBmB,EA+BnB,UAACI,KAAD;AAAA,SACDA,KAAK,CAACO,UAAN,IACAP,KAAK,CAACM,WADN,IAEAV,GAFA,mCADC;AAAA,CA/BmB,EAsCnB,UAACI,KAAD;AAAA,SACDA,KAAK,CAACQ,iBAAN,IACAZ,GADA,gDADC;AAAA,CAtCmB,CAAjB;AA6CP,OAAO,IAAMa,qBAAqB,GAAGd,MAAM,CAACS,GAAV;AAAA;AAAA;AAAA,oHAK5B;AAAA;AAAA;AAAA,CAL4B,CAA3B;AAaP,OAAO,IAAMM,2BAA2B,GAAGf,MAAM,CAACS,GAAV;AAAA;AAAA;AAAA,iCAAjC;AAKP,OAAO,IAAMO,+BAA+B,GAAGhB,MAAM,CAACiB,IAAV;AAAA;AAAA;AAAA,kIACtC;AAAA;AAAA;AAAA;AAAA,CADsC,CAArC;AAWPb,kBAAkB,CAACc,WAAnB,GAAiC,oBAAjC;AACAX,iBAAiB,CAACW,WAAlB,GAAgC,mBAAhC;AACAV,YAAY,CAACU,WAAb,GAA2B,cAA3B;AACAR,WAAW,CAACQ,WAAZ,GAA0B,aAA1B","sourcesContent":["import styled, { css } from \"styled-components\";\nimport { Button } from \"../Button/Button\";\nimport tw from \"twin.macro\";\nimport MenuNavIcon from \"../Icons/collection/MenuNavIcon\";\n\nexport const StyledNavBarButton = styled(Button)<{\n $direction: \"next\" | \"previous\";\n}>`\n position: absolute;\n margin-top: 1px;\n cursor: pointer;\n z-index: 2;\n background-image: none;\n\n ${(props) =>\n props.$direction === \"previous\" &&\n css`\n right: auto;\n left: 1px;\n `}\n\n ${(props) =>\n props.$direction === \"next\" &&\n css`\n right: 1px;\n `}\n`;\n\nexport const StyledMenuNavIcon = styled(MenuNavIcon)`\n ${tw`tw-transform`}\n transform: rotate(180deg);\n`;\n\ninterface StyledMonthInterface {\n $isCurrent: boolean;\n $isSelected: boolean;\n $isCurrentQuarter: boolean;\n}\n\nexport const StyledMonths = styled.div`\n top: 30px;\n height: 230px;\n\n ${tw`\n tw-absolute\n tw-left-0\n tw-p-5\n tw-flex\n tw-flex-wrap\n tw-bg-page-paper-main\n tw-z-10\n `}\n`;\nexport const StyledMonth = styled.div<StyledMonthInterface>`\n width: 26%;\n transition-duration: 0.3s;\n\n ${tw`\n tw-m-auto\n tw-cursor-pointer\n tw-rounded-xl\n tw-font-bold\n tw-text-sm\n `}\n\n ${(props) =>\n !props.$isSelected\n ? css`\n &:hover {\n background-color: var(--color-primary-300);\n }\n `\n : css`\n ${tw`tw-text-theme-100`}\n background-color: var(--color-primary);\n `}\n\n ${(props) =>\n props.$isCurrent &&\n !props.$isSelected &&\n css`\n ${tw`tw-text-primary`}\n `}\n\n ${(props) =>\n props.$isCurrent &&\n props.$isSelected &&\n css`\n color: var(--color-theme-100);\n `}\n\n ${(props) =>\n props.$isCurrentQuarter &&\n css`\n background-color: var(--color-primary-300);\n `}\n`;\n\nexport const StyledYearMonthPicker = styled.div`\n display: table-caption;\n margin-bottom: 0.5rem;\n padding: 0 0.5rem;\n\n ${tw`tw-text-center tw-text-theme-900`}\n\n &> div {\n font-weight: 500;\n font-size: 1.15rem;\n }\n`;\n\nexport const StyledYearMonthPickerNavBar = styled.div`\n width: auto;\n margin: 0 auto;\n`;\n\nexport const StyledYearMonthPickerNavBarItem = styled.span`\n ${tw`tw-px-4 tw-cursor-pointer`}\n transition-duration: 0.3s;\n display: inline-block;\n\n &:hover {\n background-color: var(--color-primary-300);\n border-radius: 15px;\n }\n`;\n\nStyledNavBarButton.displayName = \"StyledNavBarButton\";\nStyledMenuNavIcon.displayName = \"StyledMenuNavIcon\";\nStyledMonths.displayName = \"StyledMonths\";\nStyledMonth.displayName = \"StyledMonth\";\n"],"file":"Styles.js"}
|
|
@@ -259,8 +259,7 @@ export var DateStepper = function DateStepper(_ref) {
|
|
|
259
259
|
style: dateStepperWidth(fromDate, toDate, step)
|
|
260
260
|
}, withDatePicker ? /*#__PURE__*/React.createElement(StyledMenu, {
|
|
261
261
|
target: /*#__PURE__*/React.createElement(StyledButton, {
|
|
262
|
-
type: "button"
|
|
263
|
-
className: "c-simple-menu__trigger"
|
|
262
|
+
type: "button"
|
|
264
263
|
}, /*#__PURE__*/React.createElement("span", null, getDateFormatted)),
|
|
265
264
|
open: showDatePicker,
|
|
266
265
|
onOpen: handleShow,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/components/Steppers/DateStepper/DateStepper.tsx"],"names":["React","useCallback","useMemo","useState","useEffect","classNames","moment","MomentLocaleUtils","Button","CaretLeftIcon","CaretRightIcon","DatePicker","customClassNames","StyledButton","StyledButtonGroup","StyledDiv","StyledMenu","StyledSpan","DateStepper","step","formatCallback","onChange","from","to","onBack","onForward","minValue","maxValue","className","period","datePickerClass","withDatePicker","defaultMonth","Date","popperClassName","position","fromDate","setFromDate","toDate","setToDate","showDatePicker","setShowDatePicker","month","setMonth","getDatesByPeriod","interval","date","add","clone","startOf","endOf","getDateFormatted","actualYear","year","showWeekOrCustomDateFormat","start","end","format","startDate","endDate","quarter","onChangeCallback","amount","newFrom","newTo","onDatePickerChange","dates","fromDateTemp","toDateTemp","isAfterMaxDate","isSameOrBefore","isBeforeMinDate","isSameOrAfter","onRightClickHandler","onLeftClickHandler","renderLeftRightButtons","handleShow","closeMenu","onMonthChange","m","dateStepperWidth","fromDay","toDay","range","minWidth","isDisabled","day","dayFormat","isBefore","isAfter","modifiers","disabled","nonWorkingDay","displayName"],"mappings":"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","sourcesContent":["import React, { FC, useCallback, useMemo, useState, useEffect } from \"react\";\nimport classNames from \"classnames\";\nimport moment, { Moment } from \"moment\";\nimport MomentLocaleUtils from \"react-day-picker/moment\";\nimport { Placement } from \"@popperjs/core\";\nimport { Button } from \"../../Button/Button\";\nimport CaretLeftIcon from \"../../Icons/collection/CaretLeft\";\nimport CaretRightIcon from \"../../Icons/collection/CaretRight\";\nimport { DatePicker } from \"../../DatePicker\";\nimport { customClassNames } from \"../../DatePicker/ClassNames\";\nimport {\n StyledButton,\n StyledButtonGroup,\n StyledDiv,\n StyledMenu,\n StyledSpan,\n} from \"./Styles\";\n\ninterface IDateStepperProps {\n /** One of the possible steps for this component */\n step:\n | \"daily\"\n | \"weekly\"\n | \"monthly\"\n | \"quarterly\"\n | \"yearly\"\n | \"custom\"\n | string;\n /** Callback function that will be called after the changed range */\n onChange?: (from: Date, to: Date) => void;\n /** Start date of the range */\n from: Date | string;\n /** End date of the range */\n to: Date | string;\n /** Callback function that will format the text label */\n formatCallback?: (from: string | Date, to: string | Date) => string;\n /** Default month */\n defaultMonth?: Date;\n /** Callback function onBack */\n onBack?: (from: Date, to: Date) => void;\n /** Callback function onForward */\n onForward?: (from: Date, to: Date) => void;\n /** Min date */\n minValue?: Date;\n /** Max fate */\n maxValue?: Date;\n /** html class */\n className?: string;\n /** Period for calculating week (isoWeek) */\n period?: \"week\" | \"isoWeek\";\n /** Classes for datePicker */\n datePickerClass?: string;\n /** Show datePicker in the middle button */\n withDatePicker?: boolean;\n /** Popper class name*/\n popperClassName?: string;\n /** DatePicker menu position */\n position?: Placement;\n}\n\n/**\n * This component allow you to select date range. It accepts two parameters \"from\" and \"to\" as valid format\n * onChange and onBack and onForward it will return \"from: Date\" and \"to: Date\" as function arguments\n */\nexport const DateStepper: FC<IDateStepperProps> = ({\n step,\n formatCallback,\n onChange,\n from,\n to,\n onBack,\n onForward,\n minValue,\n maxValue,\n className,\n period = \"week\",\n datePickerClass,\n withDatePicker = true,\n defaultMonth = new Date(),\n popperClassName,\n position = \"bottom\",\n}) => {\n const [fromDate, setFromDate] = useState(moment(from));\n const [toDate, setToDate] = useState(moment(to));\n const [showDatePicker, setShowDatePicker] = useState(false);\n const [month, setMonth] = useState(defaultMonth);\n\n const getDatesByPeriod = useCallback(\n (interval: number): Moment[] => {\n const date = fromDate ? fromDate : moment();\n if (step === \"daily\") {\n date.add(interval, \"days\");\n return [date, date.clone()];\n } else if (step === \"weekly\") {\n date.add(interval, \"weeks\");\n return [date.clone().startOf(period), date.clone().endOf(period)];\n } else if (step === \"monthly\") {\n date.add(interval, \"months\");\n return [date.clone().startOf(\"month\"), date.clone().endOf(\"month\")];\n } else if (step === \"quarterly\") {\n date.add(interval, \"quarters\");\n return [date.clone().startOf(\"quarter\"), date.clone().endOf(\"quarter\")];\n } else if (step === \"yearly\") {\n date.add(interval, \"years\");\n return [date.clone().startOf(\"year\"), date.clone().endOf(\"year\")];\n }\n return [date, date];\n },\n [fromDate, period, step]\n );\n\n const getDateFormatted = useMemo(() => {\n if (formatCallback) {\n return formatCallback(fromDate.toDate(), toDate.toDate());\n }\n\n const actualYear = moment().year();\n\n const showWeekOrCustomDateFormat = (start, end): string => {\n if (start.year() === actualYear && end.year() === actualYear) {\n return start.format(\"MMM DD\") + \" - \" + end.format(\"MMM DD\");\n } else {\n return start.format(\"MMM DD YYYY\") + \" - \" + end.format(\"MMM DD YYYY\");\n }\n };\n\n if (step === \"daily\") {\n if (fromDate.year() === actualYear) {\n return fromDate.format(\"MMM DD\");\n }\n return fromDate.format(\"MMM DD YYYY\");\n } else if (step === \"weekly\") {\n const startDate = fromDate.clone().startOf(period);\n const endDate = startDate.clone().endOf(period);\n return showWeekOrCustomDateFormat(startDate, endDate);\n } else if (step === \"monthly\") {\n return fromDate.format(\"MMM YYYY\");\n } else if (step === \"quarterly\") {\n return `Q${fromDate.quarter()}/${fromDate.format(\"YYYY\")}`;\n } else if (step === \"yearly\") {\n return fromDate.format(\"YYYY\");\n } else if (step === \"custom\") {\n return showWeekOrCustomDateFormat(fromDate, toDate);\n }\n\n return \"\";\n }, [fromDate, step, toDate, formatCallback, period]);\n\n const onChangeCallback = useCallback(\n (amount: number) => {\n const [newFrom, newTo] = getDatesByPeriod(amount);\n setFromDate(moment(newFrom));\n setToDate(moment(newTo));\n\n if (onChange) {\n onChange(newFrom.toDate(), newTo.toDate());\n }\n },\n [onChange, getDatesByPeriod]\n );\n\n const onDatePickerChange = useCallback(\n (dates?: { from: Date; to: Date }) => {\n const fromDateTemp = dates?.from;\n const toDateTemp = dates?.to;\n\n setFromDate(moment(fromDateTemp));\n setToDate(moment(toDateTemp));\n\n if (\n onChange &&\n fromDateTemp instanceof Date &&\n toDateTemp instanceof Date\n ) {\n onChange(fromDateTemp, toDateTemp);\n }\n },\n [onChange, setFromDate, setToDate]\n );\n\n const isAfterMaxDate = useMemo(() => {\n return (\n maxValue instanceof Date &&\n moment(moment(maxValue).format(\"YYYY-MM-DD\")).isSameOrBefore(\n toDate.format(\"YYYY-MM-DD\")\n )\n );\n }, [maxValue, toDate]);\n\n const isBeforeMinDate = useMemo(() => {\n return (\n minValue instanceof Date &&\n moment(moment(minValue).format(\"YYYY-MM-DD\")).isSameOrAfter(\n toDate.format(\"YYYY-MM-DD\")\n )\n );\n }, [minValue, toDate]);\n\n useEffect(() => {\n if (isBeforeMinDate) {\n if (step === \"daily\") {\n setFromDate(moment(minValue));\n setToDate(moment(minValue));\n }\n }\n if (isAfterMaxDate) {\n if (step === \"daily\") {\n setFromDate(moment(maxValue));\n setToDate(moment(maxValue));\n }\n }\n }, [step, minValue, maxValue, isBeforeMinDate, isAfterMaxDate]);\n\n const onRightClickHandler = useCallback(() => {\n if (isAfterMaxDate) {\n return;\n }\n\n onChangeCallback(1);\n\n if (onForward) {\n onForward(fromDate.toDate(), toDate.toDate());\n }\n }, [isAfterMaxDate, onChangeCallback, onForward, fromDate, toDate]);\n\n const onLeftClickHandler = useCallback(() => {\n if (isBeforeMinDate) {\n return;\n }\n\n onChangeCallback(-1);\n\n if (onBack) {\n onBack(fromDate.toDate(), toDate.toDate());\n }\n }, [isBeforeMinDate, onChangeCallback, onBack, fromDate, toDate]);\n\n const renderLeftRightButtons = useMemo(() => {\n return step !== \"custom\";\n }, [step]);\n\n const handleShow = useCallback(() => {\n setShowDatePicker(!showDatePicker);\n if (fromDate) {\n setMonth(fromDate.toDate());\n }\n }, [setShowDatePicker, showDatePicker, fromDate]);\n\n const closeMenu = useCallback(() => {\n setShowDatePicker(false);\n }, []);\n\n const onMonthChange = useCallback(\n (m: Date) => {\n setMonth(m);\n },\n [setMonth]\n );\n\n useEffect(() => {\n setFromDate(moment(from));\n setToDate(moment(to));\n }, [from, to]);\n\n const dateStepperWidth = (\n fromDay: Moment,\n toDay: Moment,\n range: string\n ): { minWidth: string } => {\n if (\n fromDay.year() !== moment().year() ||\n toDay.year() !== moment().year()\n ) {\n switch (range) {\n case \"daily\":\n case \"monthly\":\n return { minWidth: \"122px\" };\n case \"weekly\":\n case \"custom\":\n return { minWidth: \"232px\" };\n }\n }\n switch (range) {\n case \"monthly\":\n return { minWidth: \"122px\" };\n case \"weekly\":\n case \"custom\":\n return { minWidth: \"182px\" };\n }\n\n return { minWidth: \"102px\" };\n };\n const isDisabled = useCallback(\n (day: Date): boolean => {\n const dayFormat = moment(day).format(\"YYYY-MM-DD\");\n\n const isBefore =\n maxValue instanceof Date &&\n moment(moment(maxValue).format(\"YYYY-MM-DD\")).isBefore(dayFormat);\n const isAfter =\n minValue instanceof Date &&\n moment(moment(minValue).format(\"YYYY-MM-DD\")).isAfter(dayFormat);\n\n return isBefore || isAfter;\n },\n [maxValue, minValue]\n );\n\n const modifiers = useMemo(() => {\n return {\n [customClassNames.disabled]: (day: Date): boolean => {\n return isDisabled(day);\n },\n [customClassNames.nonWorkingDay]: (day: Date): boolean => {\n return isDisabled(day);\n },\n };\n }, [isDisabled]);\n\n return (\n <StyledButtonGroup className={classNames(\"c-date-stepper\", className)}>\n {renderLeftRightButtons ? (\n <Button\n type=\"button\"\n variant=\"secondary\"\n onClick={onLeftClickHandler}\n disabled={isBeforeMinDate}\n >\n <CaretLeftIcon />\n </Button>\n ) : null}\n <StyledDiv\n $isTargetable={step === \"yearly\" || !withDatePicker}\n $isRounded={step === \"custom\"}\n style={dateStepperWidth(fromDate, toDate, step)}\n >\n {withDatePicker ? (\n <StyledMenu\n target={\n <StyledButton type=\"button\" className=\"c-simple-menu__trigger\">\n <span>{getDateFormatted}</span>\n </StyledButton>\n }\n open={showDatePicker}\n onOpen={handleShow}\n onClose={closeMenu}\n popperClassName={popperClassName}\n position={position}\n >\n <DatePicker\n month={month}\n localeUtils={MomentLocaleUtils}\n locale=\"en\"\n selectionMode={step}\n className={datePickerClass}\n selectedDays={{ from: fromDate.toDate(), to: toDate.toDate() }}\n onChange={onDatePickerChange}\n onMonthChange={onMonthChange}\n firstDayOfWeek={period === \"week\" ? 0 : 1}\n modifiers={modifiers}\n dateRequired\n fixedWeeks\n />\n </StyledMenu>\n ) : (\n <StyledSpan>{getDateFormatted}</StyledSpan>\n )}\n </StyledDiv>\n {renderLeftRightButtons ? (\n <Button\n type=\"button\"\n variant=\"secondary\"\n onClick={onRightClickHandler}\n disabled={isAfterMaxDate}\n >\n <CaretRightIcon />\n </Button>\n ) : null}\n </StyledButtonGroup>\n );\n};\n\nDateStepper.displayName = \"DateStepper\";\n"],"file":"DateStepper.js"}
|
|
1
|
+
{"version":3,"sources":["../../../../../src/components/Steppers/DateStepper/DateStepper.tsx"],"names":["React","useCallback","useMemo","useState","useEffect","classNames","moment","MomentLocaleUtils","Button","CaretLeftIcon","CaretRightIcon","DatePicker","customClassNames","StyledButton","StyledButtonGroup","StyledDiv","StyledMenu","StyledSpan","DateStepper","step","formatCallback","onChange","from","to","onBack","onForward","minValue","maxValue","className","period","datePickerClass","withDatePicker","defaultMonth","Date","popperClassName","position","fromDate","setFromDate","toDate","setToDate","showDatePicker","setShowDatePicker","month","setMonth","getDatesByPeriod","interval","date","add","clone","startOf","endOf","getDateFormatted","actualYear","year","showWeekOrCustomDateFormat","start","end","format","startDate","endDate","quarter","onChangeCallback","amount","newFrom","newTo","onDatePickerChange","dates","fromDateTemp","toDateTemp","isAfterMaxDate","isSameOrBefore","isBeforeMinDate","isSameOrAfter","onRightClickHandler","onLeftClickHandler","renderLeftRightButtons","handleShow","closeMenu","onMonthChange","m","dateStepperWidth","fromDay","toDay","range","minWidth","isDisabled","day","dayFormat","isBefore","isAfter","modifiers","disabled","nonWorkingDay","displayName"],"mappings":"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","sourcesContent":["import React, { FC, useCallback, useMemo, useState, useEffect } from \"react\";\nimport classNames from \"classnames\";\nimport moment, { Moment } from \"moment\";\nimport MomentLocaleUtils from \"react-day-picker/moment\";\nimport { Placement } from \"@popperjs/core\";\nimport { Button } from \"../../Button/Button\";\nimport CaretLeftIcon from \"../../Icons/collection/CaretLeft\";\nimport CaretRightIcon from \"../../Icons/collection/CaretRight\";\nimport { DatePicker } from \"../../DatePicker\";\nimport { customClassNames } from \"../../DatePicker/ClassNames\";\nimport {\n StyledButton,\n StyledButtonGroup,\n StyledDiv,\n StyledMenu,\n StyledSpan,\n} from \"./Styles\";\n\ninterface IDateStepperProps {\n /** One of the possible steps for this component */\n step:\n | \"daily\"\n | \"weekly\"\n | \"monthly\"\n | \"quarterly\"\n | \"yearly\"\n | \"custom\"\n | string;\n /** Callback function that will be called after the changed range */\n onChange?: (from: Date, to: Date) => void;\n /** Start date of the range */\n from: Date | string;\n /** End date of the range */\n to: Date | string;\n /** Callback function that will format the text label */\n formatCallback?: (from: string | Date, to: string | Date) => string;\n /** Default month */\n defaultMonth?: Date;\n /** Callback function onBack */\n onBack?: (from: Date, to: Date) => void;\n /** Callback function onForward */\n onForward?: (from: Date, to: Date) => void;\n /** Min date */\n minValue?: Date;\n /** Max fate */\n maxValue?: Date;\n /** html class */\n className?: string;\n /** Period for calculating week (isoWeek) */\n period?: \"week\" | \"isoWeek\";\n /** Classes for datePicker */\n datePickerClass?: string;\n /** Show datePicker in the middle button */\n withDatePicker?: boolean;\n /** Popper class name*/\n popperClassName?: string;\n /** DatePicker menu position */\n position?: Placement;\n}\n\n/**\n * This component allow you to select date range. It accepts two parameters \"from\" and \"to\" as valid format\n * onChange and onBack and onForward it will return \"from: Date\" and \"to: Date\" as function arguments\n */\nexport const DateStepper: FC<IDateStepperProps> = ({\n step,\n formatCallback,\n onChange,\n from,\n to,\n onBack,\n onForward,\n minValue,\n maxValue,\n className,\n period = \"week\",\n datePickerClass,\n withDatePicker = true,\n defaultMonth = new Date(),\n popperClassName,\n position = \"bottom\",\n}) => {\n const [fromDate, setFromDate] = useState(moment(from));\n const [toDate, setToDate] = useState(moment(to));\n const [showDatePicker, setShowDatePicker] = useState(false);\n const [month, setMonth] = useState(defaultMonth);\n\n const getDatesByPeriod = useCallback(\n (interval: number): Moment[] => {\n const date = fromDate ? fromDate : moment();\n if (step === \"daily\") {\n date.add(interval, \"days\");\n return [date, date.clone()];\n } else if (step === \"weekly\") {\n date.add(interval, \"weeks\");\n return [date.clone().startOf(period), date.clone().endOf(period)];\n } else if (step === \"monthly\") {\n date.add(interval, \"months\");\n return [date.clone().startOf(\"month\"), date.clone().endOf(\"month\")];\n } else if (step === \"quarterly\") {\n date.add(interval, \"quarters\");\n return [date.clone().startOf(\"quarter\"), date.clone().endOf(\"quarter\")];\n } else if (step === \"yearly\") {\n date.add(interval, \"years\");\n return [date.clone().startOf(\"year\"), date.clone().endOf(\"year\")];\n }\n return [date, date];\n },\n [fromDate, period, step]\n );\n\n const getDateFormatted = useMemo(() => {\n if (formatCallback) {\n return formatCallback(fromDate.toDate(), toDate.toDate());\n }\n\n const actualYear = moment().year();\n\n const showWeekOrCustomDateFormat = (start, end): string => {\n if (start.year() === actualYear && end.year() === actualYear) {\n return start.format(\"MMM DD\") + \" - \" + end.format(\"MMM DD\");\n } else {\n return start.format(\"MMM DD YYYY\") + \" - \" + end.format(\"MMM DD YYYY\");\n }\n };\n\n if (step === \"daily\") {\n if (fromDate.year() === actualYear) {\n return fromDate.format(\"MMM DD\");\n }\n return fromDate.format(\"MMM DD YYYY\");\n } else if (step === \"weekly\") {\n const startDate = fromDate.clone().startOf(period);\n const endDate = startDate.clone().endOf(period);\n return showWeekOrCustomDateFormat(startDate, endDate);\n } else if (step === \"monthly\") {\n return fromDate.format(\"MMM YYYY\");\n } else if (step === \"quarterly\") {\n return `Q${fromDate.quarter()}/${fromDate.format(\"YYYY\")}`;\n } else if (step === \"yearly\") {\n return fromDate.format(\"YYYY\");\n } else if (step === \"custom\") {\n return showWeekOrCustomDateFormat(fromDate, toDate);\n }\n\n return \"\";\n }, [fromDate, step, toDate, formatCallback, period]);\n\n const onChangeCallback = useCallback(\n (amount: number) => {\n const [newFrom, newTo] = getDatesByPeriod(amount);\n setFromDate(moment(newFrom));\n setToDate(moment(newTo));\n\n if (onChange) {\n onChange(newFrom.toDate(), newTo.toDate());\n }\n },\n [onChange, getDatesByPeriod]\n );\n\n const onDatePickerChange = useCallback(\n (dates?: { from: Date; to: Date }) => {\n const fromDateTemp = dates?.from;\n const toDateTemp = dates?.to;\n\n setFromDate(moment(fromDateTemp));\n setToDate(moment(toDateTemp));\n\n if (\n onChange &&\n fromDateTemp instanceof Date &&\n toDateTemp instanceof Date\n ) {\n onChange(fromDateTemp, toDateTemp);\n }\n },\n [onChange, setFromDate, setToDate]\n );\n\n const isAfterMaxDate = useMemo(() => {\n return (\n maxValue instanceof Date &&\n moment(moment(maxValue).format(\"YYYY-MM-DD\")).isSameOrBefore(\n toDate.format(\"YYYY-MM-DD\")\n )\n );\n }, [maxValue, toDate]);\n\n const isBeforeMinDate = useMemo(() => {\n return (\n minValue instanceof Date &&\n moment(moment(minValue).format(\"YYYY-MM-DD\")).isSameOrAfter(\n toDate.format(\"YYYY-MM-DD\")\n )\n );\n }, [minValue, toDate]);\n\n useEffect(() => {\n if (isBeforeMinDate) {\n if (step === \"daily\") {\n setFromDate(moment(minValue));\n setToDate(moment(minValue));\n }\n }\n if (isAfterMaxDate) {\n if (step === \"daily\") {\n setFromDate(moment(maxValue));\n setToDate(moment(maxValue));\n }\n }\n }, [step, minValue, maxValue, isBeforeMinDate, isAfterMaxDate]);\n\n const onRightClickHandler = useCallback(() => {\n if (isAfterMaxDate) {\n return;\n }\n\n onChangeCallback(1);\n\n if (onForward) {\n onForward(fromDate.toDate(), toDate.toDate());\n }\n }, [isAfterMaxDate, onChangeCallback, onForward, fromDate, toDate]);\n\n const onLeftClickHandler = useCallback(() => {\n if (isBeforeMinDate) {\n return;\n }\n\n onChangeCallback(-1);\n\n if (onBack) {\n onBack(fromDate.toDate(), toDate.toDate());\n }\n }, [isBeforeMinDate, onChangeCallback, onBack, fromDate, toDate]);\n\n const renderLeftRightButtons = useMemo(() => {\n return step !== \"custom\";\n }, [step]);\n\n const handleShow = useCallback(() => {\n setShowDatePicker(!showDatePicker);\n if (fromDate) {\n setMonth(fromDate.toDate());\n }\n }, [setShowDatePicker, showDatePicker, fromDate]);\n\n const closeMenu = useCallback(() => {\n setShowDatePicker(false);\n }, []);\n\n const onMonthChange = useCallback(\n (m: Date) => {\n setMonth(m);\n },\n [setMonth]\n );\n\n useEffect(() => {\n setFromDate(moment(from));\n setToDate(moment(to));\n }, [from, to]);\n\n const dateStepperWidth = (\n fromDay: Moment,\n toDay: Moment,\n range: string\n ): { minWidth: string } => {\n if (\n fromDay.year() !== moment().year() ||\n toDay.year() !== moment().year()\n ) {\n switch (range) {\n case \"daily\":\n case \"monthly\":\n return { minWidth: \"122px\" };\n case \"weekly\":\n case \"custom\":\n return { minWidth: \"232px\" };\n }\n }\n switch (range) {\n case \"monthly\":\n return { minWidth: \"122px\" };\n case \"weekly\":\n case \"custom\":\n return { minWidth: \"182px\" };\n }\n\n return { minWidth: \"102px\" };\n };\n const isDisabled = useCallback(\n (day: Date): boolean => {\n const dayFormat = moment(day).format(\"YYYY-MM-DD\");\n\n const isBefore =\n maxValue instanceof Date &&\n moment(moment(maxValue).format(\"YYYY-MM-DD\")).isBefore(dayFormat);\n const isAfter =\n minValue instanceof Date &&\n moment(moment(minValue).format(\"YYYY-MM-DD\")).isAfter(dayFormat);\n\n return isBefore || isAfter;\n },\n [maxValue, minValue]\n );\n\n const modifiers = useMemo(() => {\n return {\n [customClassNames.disabled]: (day: Date): boolean => {\n return isDisabled(day);\n },\n [customClassNames.nonWorkingDay]: (day: Date): boolean => {\n return isDisabled(day);\n },\n };\n }, [isDisabled]);\n\n return (\n <StyledButtonGroup className={classNames(\"c-date-stepper\", className)}>\n {renderLeftRightButtons ? (\n <Button\n type=\"button\"\n variant=\"secondary\"\n onClick={onLeftClickHandler}\n disabled={isBeforeMinDate}\n >\n <CaretLeftIcon />\n </Button>\n ) : null}\n <StyledDiv\n $isTargetable={step === \"yearly\" || !withDatePicker}\n $isRounded={step === \"custom\"}\n style={dateStepperWidth(fromDate, toDate, step)}\n >\n {withDatePicker ? (\n <StyledMenu\n target={\n <StyledButton type=\"button\">\n <span>{getDateFormatted}</span>\n </StyledButton>\n }\n open={showDatePicker}\n onOpen={handleShow}\n onClose={closeMenu}\n popperClassName={popperClassName}\n position={position}\n >\n <DatePicker\n month={month}\n localeUtils={MomentLocaleUtils}\n locale=\"en\"\n selectionMode={step}\n className={datePickerClass}\n selectedDays={{ from: fromDate.toDate(), to: toDate.toDate() }}\n onChange={onDatePickerChange}\n onMonthChange={onMonthChange}\n firstDayOfWeek={period === \"week\" ? 0 : 1}\n modifiers={modifiers}\n dateRequired\n fixedWeeks\n />\n </StyledMenu>\n ) : (\n <StyledSpan>{getDateFormatted}</StyledSpan>\n )}\n </StyledDiv>\n {renderLeftRightButtons ? (\n <Button\n type=\"button\"\n variant=\"secondary\"\n onClick={onRightClickHandler}\n disabled={isAfterMaxDate}\n >\n <CaretRightIcon />\n </Button>\n ) : null}\n </StyledButtonGroup>\n );\n};\n\nDateStepper.displayName = \"DateStepper\";\n"],"file":"DateStepper.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Styles.d.ts","sourceRoot":"","sources":["../../../../../src/components/Steppers/DateStepper/Styles.ts"],"names":[],"mappings":";AAOA,eAAO,MAAM,YAAY,
|
|
1
|
+
{"version":3,"file":"Styles.d.ts","sourceRoot":"","sources":["../../../../../src/components/Steppers/DateStepper/Styles.ts"],"names":[],"mappings":";AAOA,eAAO,MAAM,YAAY,uEAmDxB,CAAC;AAEF,eAAO,MAAM,UAAU,6GAOtB,CAAC;AAEF,eAAO,MAAM,iBAAiB,+TAQ7B,CAAC;AAEF,eAAO,MAAM,UAAU,qEAGtB,CAAC;AAEF,UAAU,SAAS;IACjB,aAAa,EAAE,OAAO,CAAC;IACvB,UAAU,EAAE,OAAO,CAAC;CACrB;AAED,eAAO,MAAM,SAAS,2EAmErB,CAAC"}
|
|
@@ -6,7 +6,7 @@ import { Menu } from "../../Menu";
|
|
|
6
6
|
export var StyledButton = styled.button.withConfig({
|
|
7
7
|
displayName: "Styles__StyledButton",
|
|
8
8
|
componentId: "sc-1v8h7mt-0"
|
|
9
|
-
})(["", " ", " color:var(--color-theme-700);margin:0;padding:0;background:none;width:100%;height:auto;border:none;height:30px;transition:all 0.3s ease;
|
|
9
|
+
})(["", " ", " ", " color:var(--color-theme-700);margin:0;padding:0;background:none;width:100%;height:auto;border:none;height:30px;line-height:1;transition:all 0.3s ease;svg{fill:currentColor;}&::-moz-focus-inner{border:0;}&:focus{outline:none;}&:hover{text-decoration:none;}&:disabled{cursor:default;opacity:50%;pointer-events:none;}"], FontStyle, BoxSizingStyle, {
|
|
10
10
|
"position": "relative",
|
|
11
11
|
"WebkitFontSmoothing": "antialiased",
|
|
12
12
|
"MozOsxFontSmoothing": "grayscale",
|
|
@@ -35,7 +35,7 @@ export var StyledMenu = styled(Menu).withConfig({
|
|
|
35
35
|
export var StyledButtonGroup = styled(ButtonGroup).withConfig({
|
|
36
36
|
displayName: "Styles__StyledButtonGroup",
|
|
37
37
|
componentId: "sc-1v8h7mt-2"
|
|
38
|
-
})(["", " ", " button{position:relative;z-index:1;}"], FontStyle, BoxSizingStyle);
|
|
38
|
+
})(["", " ", " button:hover{position:relative;z-index:1;}"], FontStyle, BoxSizingStyle);
|
|
39
39
|
export var StyledSpan = styled.span.withConfig({
|
|
40
40
|
displayName: "Styles__StyledSpan",
|
|
41
41
|
componentId: "sc-1v8h7mt-3"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/components/Steppers/DateStepper/Styles.ts"],"names":["styled","css","ButtonGroup","FontStyle","BoxSizingStyle","Menu","StyledButton","button","StyledMenu","StyledButtonGroup","StyledSpan","span","StyledDiv","div","props","$isTargetable","$isRounded","displayName"],"mappings":"AAAA,OAAOA,MAAP,IAAiBC,GAAjB,QAA4B,mBAA5B;AACA,SAASC,WAAT,QAA4B,mBAA5B;AACA,SAASC,SAAT,QAA0B,iBAA1B;AACA,SAASC,cAAT,QAA+B,sBAA/B;AAEA,SAASC,IAAT,QAAqB,YAArB;AAEA,OAAO,IAAMC,YAAY,GAAGN,MAAM,CAACO,MAAV;AAAA;AAAA;AAAA,
|
|
1
|
+
{"version":3,"sources":["../../../../../src/components/Steppers/DateStepper/Styles.ts"],"names":["styled","css","ButtonGroup","FontStyle","BoxSizingStyle","Menu","StyledButton","button","StyledMenu","StyledButtonGroup","StyledSpan","span","StyledDiv","div","props","$isTargetable","$isRounded","displayName"],"mappings":"AAAA,OAAOA,MAAP,IAAiBC,GAAjB,QAA4B,mBAA5B;AACA,SAASC,WAAT,QAA4B,mBAA5B;AACA,SAASC,SAAT,QAA0B,iBAA1B;AACA,SAASC,cAAT,QAA+B,sBAA/B;AAEA,SAASC,IAAT,QAAqB,YAArB;AAEA,OAAO,IAAMC,YAAY,GAAGN,MAAM,CAACO,MAAV;AAAA;AAAA;AAAA,kVACrBJ,SADqB,EAErBC,cAFqB,EAInB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,CAJmB,CAAlB;AAqDP,OAAO,IAAMI,UAAU,GAAGR,MAAM,CAACK,IAAD,CAAT;AAAA;AAAA;AAAA,aACjB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,CADiB,CAAhB;AASP,OAAO,IAAMI,iBAAiB,GAAGT,MAAM,CAACE,WAAD,CAAT;AAAA;AAAA;AAAA,6DAC1BC,SAD0B,EAE1BC,cAF0B,CAAvB;AAUP,OAAO,IAAMM,UAAU,GAAGV,MAAM,CAACW,IAAV;AAAA;AAAA;AAAA,sDAAhB;AAUP,OAAO,IAAMC,SAAS,GAAGZ,MAAM,CAACa,GAAV;AAAA;AAAA;AAAA,mgBAClB,UAACC,KAAD;AAAA,SACAA,KAAK,CAACC,aAAN,IACAd,GADA,WAEM;AAAA;AAAA,GAFN,CADA;AAAA,CADkB,EAOlB,UAACa,KAAD;AAAA,SACAA,KAAK,CAACE,UAAN,IACAf,GADA,yCADA;AAAA,CAPkB,EAahB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,CAbgB,CAAf;AAqEPQ,iBAAiB,CAACQ,WAAlB,GAAgC,mBAAhC;AACAP,UAAU,CAACO,WAAX,GAAyB,YAAzB;AACAL,SAAS,CAACK,WAAV,GAAwB,WAAxB;AACAT,UAAU,CAACS,WAAX,GAAyB,YAAzB;AACAX,YAAY,CAACW,WAAb,GAA2B,cAA3B","sourcesContent":["import styled, { css } from \"styled-components\";\nimport { ButtonGroup } from \"../../ButtonGroup\";\nimport { FontStyle } from \"../../FontStyle\";\nimport { BoxSizingStyle } from \"../../BoxSizingStyle\";\nimport tw from \"twin.macro\";\nimport { Menu } from \"../../Menu\";\n\nexport const StyledButton = styled.button`\n ${FontStyle}\n ${BoxSizingStyle}\n\n ${tw`\n tw-relative\n tw-antialiased\n tw-align-middle\n tw-font-medium\n tw-inline-block\n tw-leading-none\n tw-m-0\n tw-no-underline\n tw-text-sm\n tw-select-none\n tw-cursor-pointer\n tw-text-center\n `}\n\n color: var(--color-theme-700);\n margin: 0;\n padding: 0;\n background: none;\n width: 100%;\n height: auto;\n border: none;\n height: 30px;\n line-height: 1;\n transition: all 0.3s ease;\n\n svg {\n fill: currentColor;\n }\n\n &::-moz-focus-inner {\n border: 0;\n }\n\n &:focus {\n outline: none;\n }\n\n &:hover {\n text-decoration: none;\n }\n\n &:disabled {\n cursor: default;\n opacity: 50%;\n pointer-events: none;\n }\n`;\n\nexport const StyledMenu = styled(Menu)`\n ${tw`\n tw-w-auto\n tw-h-auto\n tw-py-4\n tw-px-2\n `}\n`;\n\nexport const StyledButtonGroup = styled(ButtonGroup)`\n ${FontStyle}\n ${BoxSizingStyle}\n\n button:hover {\n position: relative;\n z-index: 1;\n }\n`;\n\nexport const StyledSpan = styled.span`\n line-height: 30px;\n color: var(--color-theme-700);\n`;\n\ninterface StyledDiv {\n $isTargetable: boolean;\n $isRounded: boolean;\n}\n\nexport const StyledDiv = styled.div<StyledDiv>`\n ${(props) =>\n props.$isTargetable &&\n css`\n ${tw`tw-pointer-events-none`}\n `}\n\n ${(props) =>\n props.$isRounded &&\n css`\n border-radius: var(--ac-br-rounded);\n `}\n\n ${tw`\n tw-relative\n tw-text-center\n tw-p-0\n tw-antialiased\n tw-align-middle\n tw-font-medium\n tw-inline-block\n tw-leading-none\n tw-m-0\n tw-no-underline\n tw-text-sm\n tw-select-none\n tw-cursor-pointer\n tw-border\n tw-border-solid\n `}\n\n height: 32px;\n transition: all 0.3s ease;\n background-color: transparent;\n border: solid 1px var(--color-theme-700);\n color: var(--color-theme-700);\n margin-right: -1px;\n\n svg {\n fill: currentColor;\n }\n\n &::-moz-focus-inner {\n border: 0;\n }\n\n &:focus {\n outline: none;\n }\n\n &:disabled {\n cursor: default;\n opacity: 50%;\n pointer-events: none;\n }\n\n &:hover {\n border-color: var(--color-primary);\n color: var(--color-primary);\n text-decoration: none;\n }\n\n &:active {\n border-color: var(--color-primary);\n color: var(--color-primary);\n background-color: var(--color-primary-200);\n }\n`;\n\nStyledButtonGroup.displayName = \"StyledButtonGroup\";\nStyledSpan.displayName = \"StyledSpan\";\nStyledDiv.displayName = \"StyledDiv\";\nStyledMenu.displayName = \"StyledMenu\";\nStyledButton.displayName = \"StyledButton\";\n"],"file":"Styles.js"}
|
package/dist/index.js
CHANGED
|
@@ -1129,7 +1129,7 @@
|
|
|
1129
1129
|
var StyledYearMonthPicker = styled__default["default"].div.withConfig({
|
|
1130
1130
|
displayName: "Styles__StyledYearMonthPicker",
|
|
1131
1131
|
componentId: "sc-1owijsg-4"
|
|
1132
|
-
})(["display:table-caption;margin-bottom:0.
|
|
1132
|
+
})(["display:table-caption;margin-bottom:0.5rem;padding:0 0.5rem;", " &> div{font-weight:500;font-size:1.15rem;}"], {
|
|
1133
1133
|
"textAlign": "center",
|
|
1134
1134
|
"color": "var(--color-theme-900)"
|
|
1135
1135
|
});
|
|
@@ -1140,7 +1140,7 @@
|
|
|
1140
1140
|
var StyledYearMonthPickerNavBarItem = styled__default["default"].span.withConfig({
|
|
1141
1141
|
displayName: "Styles__StyledYearMonthPickerNavBarItem",
|
|
1142
1142
|
componentId: "sc-1owijsg-6"
|
|
1143
|
-
})(["", " transition-duration:0.3s;
|
|
1143
|
+
})(["", " transition-duration:0.3s;display:inline-block;&:hover{background-color:var(--color-primary-300);border-radius:15px;}"], {
|
|
1144
1144
|
"paddingLeft": "1rem",
|
|
1145
1145
|
"paddingRight": "1rem",
|
|
1146
1146
|
"cursor": "pointer"
|
|
@@ -1993,7 +1993,7 @@
|
|
|
1993
1993
|
var StyledButton = styled__default["default"].button.withConfig({
|
|
1994
1994
|
displayName: "Styles__StyledButton",
|
|
1995
1995
|
componentId: "sc-1v8h7mt-0"
|
|
1996
|
-
})(["", " ", " color:var(--color-theme-700);margin:0;padding:0;background:none;width:100%;height:auto;border:none;height:30px;transition:all 0.3s ease;
|
|
1996
|
+
})(["", " ", " ", " color:var(--color-theme-700);margin:0;padding:0;background:none;width:100%;height:auto;border:none;height:30px;line-height:1;transition:all 0.3s ease;svg{fill:currentColor;}&::-moz-focus-inner{border:0;}&:focus{outline:none;}&:hover{text-decoration:none;}&:disabled{cursor:default;opacity:50%;pointer-events:none;}"], FontStyle, BoxSizingStyle, {
|
|
1997
1997
|
"position": "relative",
|
|
1998
1998
|
"WebkitFontSmoothing": "antialiased",
|
|
1999
1999
|
"MozOsxFontSmoothing": "grayscale",
|
|
@@ -2022,7 +2022,7 @@
|
|
|
2022
2022
|
var StyledButtonGroup = styled__default["default"](ButtonGroup).withConfig({
|
|
2023
2023
|
displayName: "Styles__StyledButtonGroup",
|
|
2024
2024
|
componentId: "sc-1v8h7mt-2"
|
|
2025
|
-
})(["", " ", " button{position:relative;z-index:1;}"], FontStyle, BoxSizingStyle);
|
|
2025
|
+
})(["", " ", " button:hover{position:relative;z-index:1;}"], FontStyle, BoxSizingStyle);
|
|
2026
2026
|
var StyledSpan = styled__default["default"].span.withConfig({
|
|
2027
2027
|
displayName: "Styles__StyledSpan",
|
|
2028
2028
|
componentId: "sc-1v8h7mt-3"
|
|
@@ -2315,8 +2315,7 @@
|
|
|
2315
2315
|
style: dateStepperWidth(fromDate, toDate, step)
|
|
2316
2316
|
}, withDatePicker ? /*#__PURE__*/React__default["default"].createElement(StyledMenu, {
|
|
2317
2317
|
target: /*#__PURE__*/React__default["default"].createElement(StyledButton, {
|
|
2318
|
-
type: "button"
|
|
2319
|
-
className: "c-simple-menu__trigger"
|
|
2318
|
+
type: "button"
|
|
2320
2319
|
}, /*#__PURE__*/React__default["default"].createElement("span", null, getDateFormatted)),
|
|
2321
2320
|
open: showDatePicker,
|
|
2322
2321
|
onOpen: handleShow,
|