@bigbinary/neeto-molecules 3.15.57 → 3.15.59
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/CalendarView.js +1 -0
- package/dist/CalendarView.js.map +1 -1
- package/dist/Sidebar.js +1 -1
- package/dist/Sidebar.js.map +1 -1
- package/dist/StatusDropdown.js +42 -8
- package/dist/StatusDropdown.js.map +1 -1
- package/dist/cjs/CalendarView.js +1 -0
- package/dist/cjs/CalendarView.js.map +1 -1
- package/dist/cjs/Sidebar.js +1 -1
- package/dist/cjs/Sidebar.js.map +1 -1
- package/dist/cjs/StatusDropdown.js +41 -7
- package/dist/cjs/StatusDropdown.js.map +1 -1
- package/package.json +1 -1
- package/src/translations/en.json +3 -0
- package/types/StatusDropdown.d.ts +3 -0
package/dist/CalendarView.js
CHANGED
|
@@ -170,6 +170,7 @@ var CustomDatePicker = function CustomDatePicker(_ref) {
|
|
|
170
170
|
children: [/*#__PURE__*/jsx(Button, {
|
|
171
171
|
className: "mr-1",
|
|
172
172
|
"data-cy": "neeto-molecules-calendar-view-previous-button",
|
|
173
|
+
"data-testid": "neeto-molecules-calendar-view-previous-button",
|
|
173
174
|
disabled: isDateLessThanStart,
|
|
174
175
|
icon: Left,
|
|
175
176
|
style: "text",
|
package/dist/CalendarView.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CalendarView.js","sources":["../src/components/CalendarView/constants.js","../src/components/CalendarView/utils.js","../src/components/CalendarView/CustomDatePicker.jsx","../src/components/CalendarView/Header.jsx","../src/components/CalendarView/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\n\nconst WEEKLY_VIEW = t(\"neetoMolecules.calendarView.weekly\");\nconst MONTHLY_VIEW = t(\"neetoMolecules.calendarView.monthly\");\nconst DAILY_VIEW = t(\"neetoMolecules.calendarView.daily\");\n\nexport const VIEW_OPTIONS = {\n [DAILY_VIEW]: {\n label: DAILY_VIEW,\n fullCalendarView: \"timeGridDay\",\n picker: \"day\",\n },\n [WEEKLY_VIEW]: {\n label: WEEKLY_VIEW,\n fullCalendarView: \"timeGridWeek\",\n picker: \"week\",\n },\n [MONTHLY_VIEW]: {\n label: MONTHLY_VIEW,\n fullCalendarView: \"dayGridMonth\",\n picker: \"month\",\n },\n};\n","import { dayjs } from \"neetocommons/utils\";\n\nconst getWeekString = ({\n date,\n isStartOfWeek = true,\n showMonth = false,\n showYear = false,\n}) =>\n `${showMonth || isStartOfWeek ? date.format(\"MMM\") : \"\"} ${date.date()} ${\n showYear || !isStartOfWeek ? date.format(\"YYYY\") : \"\"\n }`;\n\nexport const getStartOfWeek = date => dayjs(date).startOf(\"week\");\n\nexport const getEndOfWeek = date => dayjs(date).endOf(\"week\");\n\nexport const getFormattedMonthStr = date => date.format(\"MMM YYYY\");\n\nexport const getFormattedWeekRangeStr = date => {\n const startOfWeek = getStartOfWeek(date);\n const endOfWeek = getEndOfWeek(date);\n\n const shouldShowMonthsSeparately = startOfWeek.month() !== endOfWeek.month();\n const shouldShowYearsSeparately = startOfWeek.year() !== endOfWeek.year();\n\n const startOfWeekStr = getWeekString({\n date: startOfWeek,\n showMonth: shouldShowMonthsSeparately,\n showYear: shouldShowYearsSeparately,\n });\n\n const endOfWeekStr = getWeekString({\n date: endOfWeek,\n isStartOfWeek: false,\n showMonth: shouldShowMonthsSeparately,\n showYear: shouldShowYearsSeparately,\n });\n\n return `${startOfWeekStr} - ${endOfWeekStr}`;\n};\n\nexport const getFormattedDayStr = date => date.format(\"DD MMM YYYY\");\n\nexport const getFormattedRangeStr = (date, picker) => {\n const formatFunctions = {\n month: getFormattedMonthStr,\n week: getFormattedWeekRangeStr,\n day: getFormattedDayStr,\n };\n const selectedFormatter = formatFunctions[picker];\n\n return selectedFormatter(date);\n};\n\nexport const mergeRefs =\n (...refs) =>\n node =>\n refs\n .filter(Boolean)\n .forEach(ref =>\n typeof ref === \"function\" ? ref(node) : (ref.current = node)\n );\n","import { useRef, useState } from \"react\";\n\nimport { dayjs } from \"neetocommons/utils\";\nimport { Down, Left, Right } from \"neetoicons\";\nimport { Typography, Button, DatePicker } from \"neetoui\";\n\nimport { getFormattedRangeStr } from \"./utils\";\n\nconst CustomDatePicker = ({\n selectedDate,\n setSelectedDate,\n picker,\n validDates,\n ...otherProps\n}) => {\n const [isOpen, setIsOpen] = useState(false);\n\n const datePickerRef = useRef(null);\n const buttonRef = useRef(null);\n\n const selectedRangeStr = getFormattedRangeStr(selectedDate, picker);\n\n const { start, end } = validDates;\n\n const isDateLessThanStart =\n start && selectedDate.isSameOrBefore(dayjs(start), picker);\n\n const isDateGreaterThanEnd =\n end && selectedDate.isSameOrAfter(dayjs(end), picker);\n\n const onPrevious = () =>\n setSelectedDate(selectedDate => selectedDate.subtract(1, picker));\n\n const onNext = () =>\n setSelectedDate(selectedDate => selectedDate.add(1, picker));\n\n const onToday = () => setSelectedDate(dayjs());\n\n const getDisabledDates = date => {\n if (!date) return false;\n\n return (start && date <= start) || (end && date >= end);\n };\n\n const handleButtonMouseDown = e => {\n if (!(buttonRef.current && buttonRef.current.contains(e.target))) return;\n e.stopPropagation();\n if (isOpen) datePickerRef.current.focus();\n };\n\n return (\n <div className=\"flex items-center justify-start space-x-4\">\n <Button\n data-cy=\"neeto-molecules-calendar-view-today-button\"\n label=\"Today\"\n style=\"secondary\"\n onClick={onToday}\n />\n <div className=\"flex\">\n <Button\n className=\"mr-1\"\n data-cy=\"neeto-molecules-calendar-view-previous-button\"\n disabled={isDateLessThanStart}\n icon={Left}\n style=\"text\"\n onClick={onPrevious}\n />\n <Button\n data-cy=\"neeto-molecules-calendar-view-date-picker-button\"\n icon={Down}\n ref={buttonRef}\n style=\"text\"\n onClick={() => setIsOpen(isOpen => !isOpen)}\n onMouseDown={handleButtonMouseDown}\n >\n <Typography\n data-cy=\"neeto-molecules-calendar-view-date-picker-button-label\"\n style=\"h5\"\n >\n {selectedRangeStr}\n </Typography>\n </Button>\n <DatePicker\n className=\"invisible w-0 px-0\"\n defaultValue={selectedDate}\n disabledDate={getDisabledDates}\n open={isOpen}\n placement=\"topRight\"\n ref={datePickerRef}\n value={selectedDate}\n onChange={setSelectedDate}\n onOpenChange={setIsOpen}\n {...{ picker, ...otherProps }}\n />\n <Button\n className=\"ml-1\"\n data-cy=\"neeto-molecules-calendar-view-next-button\"\n disabled={isDateGreaterThanEnd}\n icon={Right}\n style=\"text\"\n onClick={onNext}\n />\n </div>\n </div>\n );\n};\n\nexport default CustomDatePicker;\n","import { useEffect } from \"react\";\n\nimport { capitalize } from \"neetocist\";\nimport { Dropdown } from \"neetoui\";\nimport { prop, values } from \"ramda\";\n\nimport CustomDatePicker from \"./CustomDatePicker\";\n\nconst Header = ({\n calendarRef,\n selectedView,\n setSelectedView,\n setSelectedDate,\n selectedDate,\n calendarViewOptions,\n validDates,\n}) => {\n const { Menu, MenuItem } = Dropdown;\n\n const handleViewSelection = option => {\n setSelectedView(option);\n calendarRef.current.calendar.changeView(option.fullCalendarView);\n };\n\n const navigateToSelectedDate = () =>\n calendarRef?.current?.calendar?.gotoDate(selectedDate.format(\"YYYY-MM-DD\"));\n\n useEffect(() => {\n setTimeout(navigateToSelectedDate);\n }, [selectedDate]);\n\n return (\n <div className=\"flex space-x-4\">\n <CustomDatePicker\n {...{ selectedDate, setSelectedDate, validDates }}\n getPopupContainer={prop(\"parentNode\")}\n picker={selectedView.picker}\n />\n {Object.keys(calendarViewOptions).length > 1 && (\n <Dropdown\n buttonProps={{ \"data-testid\": \"calendar-view-dropdown\" }}\n buttonStyle=\"secondary\"\n label={capitalize(selectedView.label)}\n >\n <Menu>\n {values(calendarViewOptions).map((option, idx) => (\n <MenuItem.Button\n isActive={selectedView === option}\n key={idx}\n onClick={() => handleViewSelection(option)}\n >\n {capitalize(option.label)}\n </MenuItem.Button>\n ))}\n </Menu>\n </Dropdown>\n )}\n </div>\n );\n};\n\nexport default Header;\n","import { forwardRef, useRef, useState } from \"react\";\n\nimport dayGridPlugin from \"@fullcalendar/daygrid\";\nimport interactionPlugin from \"@fullcalendar/interaction\";\nimport FullCalendar from \"@fullcalendar/react\";\nimport timeGridPlugin from \"@fullcalendar/timegrid\";\nimport { noop } from \"neetocist\";\nimport { dayjs } from \"neetocommons/utils\";\nimport { Typography } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { prop } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport SubHeader from \"components/SubHeader\";\n\nimport \"./calendar-view.scss\";\nimport { VIEW_OPTIONS } from \"./constants\";\nimport Header from \"./Header\";\nimport { mergeRefs } from \"./utils\";\n\nconst CalendarView = forwardRef(\n (\n {\n viewOptions = VIEW_OPTIONS,\n events = [],\n handleDateClick = noop,\n handleEventClick = noop,\n eventClassNames = \"\",\n dayCellClassNames = \"\",\n validDates = { start: null, end: null },\n onDateChange = noop,\n dayMaxEvents,\n eventMaxStack,\n hideHeader = false,\n ...otherProps\n },\n ref\n ) => {\n const calendarViewOptions = viewOptions || VIEW_OPTIONS;\n\n const defaultView =\n Object.values(calendarViewOptions).find(prop(\"default\")) ||\n calendarViewOptions[Object.keys(calendarViewOptions)[0]];\n\n const [selectedView, setSelectedView] = useState(defaultView);\n\n const [selectedDate, setSelectedDate] = useState(dayjs());\n\n const { t } = useTranslation();\n\n const handleDateChange = date => {\n setSelectedDate(prevDate => {\n const newDate = typeof date === \"function\" ? date(prevDate) : date;\n onDateChange(newDate);\n\n return newDate;\n });\n };\n\n const calendarRef = useRef();\n\n return (\n <div className=\"flex-col\" data-testid=\"calendar-view\">\n {!hideHeader && (\n <SubHeader\n leftActionBlock={\n <Typography style=\"h2\">\n {selectedDate.format(\"MMMM, YYYY\")}\n </Typography>\n }\n rightActionBlock={\n <Header\n {...{\n calendarRef,\n calendarViewOptions,\n selectedDate,\n selectedView,\n setSelectedDate,\n setSelectedView,\n validDates,\n }}\n setSelectedDate={handleDateChange}\n />\n }\n />\n )}\n <FullCalendar\n expandRows\n allDayText={t(\"neetoMolecules.calendarView.allDay\")}\n dateClick={handleDateClick}\n dayHeaderClassNames=\"p-2\"\n displayEventTime={false}\n eventClick={handleEventClick}\n headerToolbar={false}\n height=\"auto\"\n initialView={selectedView.fullCalendarView}\n plugins={[dayGridPlugin, timeGridPlugin, interactionPlugin]}\n ref={mergeRefs(ref, calendarRef)}\n {...{\n dayCellClassNames,\n dayMaxEvents,\n eventClassNames,\n eventMaxStack,\n events,\n ...otherProps,\n }}\n />\n </div>\n );\n }\n);\n\nCalendarView.displayName = \"CalendarView\";\n\nCalendarView.propTypes = {\n /**\n * Views to be listed in the dropdown. The default selected view can be set by adding `default: true` to the required view.\n */\n viewOptions: PropTypes.object,\n /**\n * An array of event objects that will be displayed on the calendar.\n */\n events: PropTypes.array,\n /**\n * Function to be triggered when the user clicks on a date or a time.\n */\n handleDateClick: PropTypes.func,\n /**\n * Function to be triggered when the user clicks an event.\n */\n handleEventClick: PropTypes.func,\n /**\n * A className input for adding classNames to the outermost event element.\n */\n eventClassNames: PropTypes.string,\n /**\n * A className input for adding classNames to the <td> cell.\n */\n dayCellClassNames: PropTypes.string,\n /**\n * In dayGrid view, the max number of events within a given day, not counting the +more link.\n */\n dayMaxEvents: PropTypes.number,\n /**\n * For timeline view, the maximum number of events that stack top-to-bottom. For timeGrid view, the maximum number of events that stack left-to-right.\n */\n eventMaxStack: PropTypes.number,\n /**\n * This function will be triggered with the new selected date passed as argument\n */\n onDateChange: PropTypes.func,\n /**\n * An object containing the start and end dates in which the range given is the valid range of selectable dates.\n */\n validDates: PropTypes.shape({\n start: PropTypes.instanceOf(Date),\n end: PropTypes.instanceOf(Date),\n }),\n /**\n * This prop can be used to hide the header\n */\n hideHeader: PropTypes.bool,\n};\n\nexport default CalendarView;\n"],"names":["WEEKLY_VIEW","t","MONTHLY_VIEW","DAILY_VIEW","VIEW_OPTIONS","_defineProperty","label","fullCalendarView","picker","getWeekString","_ref","date","_ref$isStartOfWeek","isStartOfWeek","_ref$showMonth","showMonth","_ref$showYear","showYear","concat","format","getStartOfWeek","dayjs","startOf","getEndOfWeek","endOf","getFormattedMonthStr","getFormattedWeekRangeStr","startOfWeek","endOfWeek","shouldShowMonthsSeparately","month","shouldShowYearsSeparately","year","startOfWeekStr","endOfWeekStr","getFormattedDayStr","getFormattedRangeStr","formatFunctions","week","day","selectedFormatter","mergeRefs","_len","arguments","length","refs","Array","_key","node","filter","Boolean","forEach","ref","current","CustomDatePicker","selectedDate","setSelectedDate","validDates","otherProps","_objectWithoutProperties","_excluded","_useState","useState","_useState2","_slicedToArray","isOpen","setIsOpen","datePickerRef","useRef","buttonRef","selectedRangeStr","start","end","isDateLessThanStart","isSameOrBefore","isDateGreaterThanEnd","isSameOrAfter","onPrevious","subtract","onNext","add","onToday","getDisabledDates","handleButtonMouseDown","e","contains","target","stopPropagation","focus","_jsxs","className","children","_jsx","Button","style","onClick","disabled","icon","Left","Down","onMouseDown","Typography","DatePicker","_objectSpread","defaultValue","disabledDate","open","placement","value","onChange","onOpenChange","Right","Header","calendarRef","selectedView","setSelectedView","calendarViewOptions","Menu","Dropdown","MenuItem","handleViewSelection","option","calendar","changeView","navigateToSelectedDate","_calendarRef$current","gotoDate","useEffect","setTimeout","getPopupContainer","prop","Object","keys","buttonProps","buttonStyle","capitalize","values","map","idx","isActive","CalendarView","forwardRef","_ref$viewOptions","viewOptions","_ref$events","events","_ref$handleDateClick","handleDateClick","noop","_ref$handleEventClick","handleEventClick","_ref$eventClassNames","eventClassNames","_ref$dayCellClassName","dayCellClassNames","_ref$validDates","_ref$onDateChange","onDateChange","dayMaxEvents","eventMaxStack","_ref$hideHeader","hideHeader","defaultView","find","_useState3","_useState4","_useTranslation","useTranslation","handleDateChange","prevDate","newDate","SubHeader","leftActionBlock","rightActionBlock","FullCalendar","expandRows","allDayText","dateClick","dayHeaderClassNames","displayEventTime","eventClick","headerToolbar","height","initialView","plugins","dayGridPlugin","timeGridPlugin","interactionPlugin","displayName"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"CalendarView.js","sources":["../src/components/CalendarView/constants.js","../src/components/CalendarView/utils.js","../src/components/CalendarView/CustomDatePicker.jsx","../src/components/CalendarView/Header.jsx","../src/components/CalendarView/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\n\nconst WEEKLY_VIEW = t(\"neetoMolecules.calendarView.weekly\");\nconst MONTHLY_VIEW = t(\"neetoMolecules.calendarView.monthly\");\nconst DAILY_VIEW = t(\"neetoMolecules.calendarView.daily\");\n\nexport const VIEW_OPTIONS = {\n [DAILY_VIEW]: {\n label: DAILY_VIEW,\n fullCalendarView: \"timeGridDay\",\n picker: \"day\",\n },\n [WEEKLY_VIEW]: {\n label: WEEKLY_VIEW,\n fullCalendarView: \"timeGridWeek\",\n picker: \"week\",\n },\n [MONTHLY_VIEW]: {\n label: MONTHLY_VIEW,\n fullCalendarView: \"dayGridMonth\",\n picker: \"month\",\n },\n};\n","import { dayjs } from \"neetocommons/utils\";\n\nconst getWeekString = ({\n date,\n isStartOfWeek = true,\n showMonth = false,\n showYear = false,\n}) =>\n `${showMonth || isStartOfWeek ? date.format(\"MMM\") : \"\"} ${date.date()} ${\n showYear || !isStartOfWeek ? date.format(\"YYYY\") : \"\"\n }`;\n\nexport const getStartOfWeek = date => dayjs(date).startOf(\"week\");\n\nexport const getEndOfWeek = date => dayjs(date).endOf(\"week\");\n\nexport const getFormattedMonthStr = date => date.format(\"MMM YYYY\");\n\nexport const getFormattedWeekRangeStr = date => {\n const startOfWeek = getStartOfWeek(date);\n const endOfWeek = getEndOfWeek(date);\n\n const shouldShowMonthsSeparately = startOfWeek.month() !== endOfWeek.month();\n const shouldShowYearsSeparately = startOfWeek.year() !== endOfWeek.year();\n\n const startOfWeekStr = getWeekString({\n date: startOfWeek,\n showMonth: shouldShowMonthsSeparately,\n showYear: shouldShowYearsSeparately,\n });\n\n const endOfWeekStr = getWeekString({\n date: endOfWeek,\n isStartOfWeek: false,\n showMonth: shouldShowMonthsSeparately,\n showYear: shouldShowYearsSeparately,\n });\n\n return `${startOfWeekStr} - ${endOfWeekStr}`;\n};\n\nexport const getFormattedDayStr = date => date.format(\"DD MMM YYYY\");\n\nexport const getFormattedRangeStr = (date, picker) => {\n const formatFunctions = {\n month: getFormattedMonthStr,\n week: getFormattedWeekRangeStr,\n day: getFormattedDayStr,\n };\n const selectedFormatter = formatFunctions[picker];\n\n return selectedFormatter(date);\n};\n\nexport const mergeRefs =\n (...refs) =>\n node =>\n refs\n .filter(Boolean)\n .forEach(ref =>\n typeof ref === \"function\" ? ref(node) : (ref.current = node)\n );\n","import { useRef, useState } from \"react\";\n\nimport { dayjs } from \"neetocommons/utils\";\nimport { Down, Left, Right } from \"neetoicons\";\nimport { Typography, Button, DatePicker } from \"neetoui\";\n\nimport { getFormattedRangeStr } from \"./utils\";\n\nconst CustomDatePicker = ({\n selectedDate,\n setSelectedDate,\n picker,\n validDates,\n ...otherProps\n}) => {\n const [isOpen, setIsOpen] = useState(false);\n\n const datePickerRef = useRef(null);\n const buttonRef = useRef(null);\n\n const selectedRangeStr = getFormattedRangeStr(selectedDate, picker);\n\n const { start, end } = validDates;\n\n const isDateLessThanStart =\n start && selectedDate.isSameOrBefore(dayjs(start), picker);\n\n const isDateGreaterThanEnd =\n end && selectedDate.isSameOrAfter(dayjs(end), picker);\n\n const onPrevious = () =>\n setSelectedDate(selectedDate => selectedDate.subtract(1, picker));\n\n const onNext = () =>\n setSelectedDate(selectedDate => selectedDate.add(1, picker));\n\n const onToday = () => setSelectedDate(dayjs());\n\n const getDisabledDates = date => {\n if (!date) return false;\n\n return (start && date <= start) || (end && date >= end);\n };\n\n const handleButtonMouseDown = e => {\n if (!(buttonRef.current && buttonRef.current.contains(e.target))) return;\n e.stopPropagation();\n if (isOpen) datePickerRef.current.focus();\n };\n\n return (\n <div className=\"flex items-center justify-start space-x-4\">\n <Button\n data-cy=\"neeto-molecules-calendar-view-today-button\"\n label=\"Today\"\n style=\"secondary\"\n onClick={onToday}\n />\n <div className=\"flex\">\n <Button\n className=\"mr-1\"\n data-cy=\"neeto-molecules-calendar-view-previous-button\"\n data-testid=\"neeto-molecules-calendar-view-previous-button\"\n disabled={isDateLessThanStart}\n icon={Left}\n style=\"text\"\n onClick={onPrevious}\n />\n <Button\n data-cy=\"neeto-molecules-calendar-view-date-picker-button\"\n icon={Down}\n ref={buttonRef}\n style=\"text\"\n onClick={() => setIsOpen(isOpen => !isOpen)}\n onMouseDown={handleButtonMouseDown}\n >\n <Typography\n data-cy=\"neeto-molecules-calendar-view-date-picker-button-label\"\n style=\"h5\"\n >\n {selectedRangeStr}\n </Typography>\n </Button>\n <DatePicker\n className=\"invisible w-0 px-0\"\n defaultValue={selectedDate}\n disabledDate={getDisabledDates}\n open={isOpen}\n placement=\"topRight\"\n ref={datePickerRef}\n value={selectedDate}\n onChange={setSelectedDate}\n onOpenChange={setIsOpen}\n {...{ picker, ...otherProps }}\n />\n <Button\n className=\"ml-1\"\n data-cy=\"neeto-molecules-calendar-view-next-button\"\n disabled={isDateGreaterThanEnd}\n icon={Right}\n style=\"text\"\n onClick={onNext}\n />\n </div>\n </div>\n );\n};\n\nexport default CustomDatePicker;\n","import { useEffect } from \"react\";\n\nimport { capitalize } from \"neetocist\";\nimport { Dropdown } from \"neetoui\";\nimport { prop, values } from \"ramda\";\n\nimport CustomDatePicker from \"./CustomDatePicker\";\n\nconst Header = ({\n calendarRef,\n selectedView,\n setSelectedView,\n setSelectedDate,\n selectedDate,\n calendarViewOptions,\n validDates,\n}) => {\n const { Menu, MenuItem } = Dropdown;\n\n const handleViewSelection = option => {\n setSelectedView(option);\n calendarRef.current.calendar.changeView(option.fullCalendarView);\n };\n\n const navigateToSelectedDate = () =>\n calendarRef?.current?.calendar?.gotoDate(selectedDate.format(\"YYYY-MM-DD\"));\n\n useEffect(() => {\n setTimeout(navigateToSelectedDate);\n }, [selectedDate]);\n\n return (\n <div className=\"flex space-x-4\">\n <CustomDatePicker\n {...{ selectedDate, setSelectedDate, validDates }}\n getPopupContainer={prop(\"parentNode\")}\n picker={selectedView.picker}\n />\n {Object.keys(calendarViewOptions).length > 1 && (\n <Dropdown\n buttonProps={{ \"data-testid\": \"calendar-view-dropdown\" }}\n buttonStyle=\"secondary\"\n label={capitalize(selectedView.label)}\n >\n <Menu>\n {values(calendarViewOptions).map((option, idx) => (\n <MenuItem.Button\n isActive={selectedView === option}\n key={idx}\n onClick={() => handleViewSelection(option)}\n >\n {capitalize(option.label)}\n </MenuItem.Button>\n ))}\n </Menu>\n </Dropdown>\n )}\n </div>\n );\n};\n\nexport default Header;\n","import { forwardRef, useRef, useState } from \"react\";\n\nimport dayGridPlugin from \"@fullcalendar/daygrid\";\nimport interactionPlugin from \"@fullcalendar/interaction\";\nimport FullCalendar from \"@fullcalendar/react\";\nimport timeGridPlugin from \"@fullcalendar/timegrid\";\nimport { noop } from \"neetocist\";\nimport { dayjs } from \"neetocommons/utils\";\nimport { Typography } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { prop } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport SubHeader from \"components/SubHeader\";\n\nimport \"./calendar-view.scss\";\nimport { VIEW_OPTIONS } from \"./constants\";\nimport Header from \"./Header\";\nimport { mergeRefs } from \"./utils\";\n\nconst CalendarView = forwardRef(\n (\n {\n viewOptions = VIEW_OPTIONS,\n events = [],\n handleDateClick = noop,\n handleEventClick = noop,\n eventClassNames = \"\",\n dayCellClassNames = \"\",\n validDates = { start: null, end: null },\n onDateChange = noop,\n dayMaxEvents,\n eventMaxStack,\n hideHeader = false,\n ...otherProps\n },\n ref\n ) => {\n const calendarViewOptions = viewOptions || VIEW_OPTIONS;\n\n const defaultView =\n Object.values(calendarViewOptions).find(prop(\"default\")) ||\n calendarViewOptions[Object.keys(calendarViewOptions)[0]];\n\n const [selectedView, setSelectedView] = useState(defaultView);\n\n const [selectedDate, setSelectedDate] = useState(dayjs());\n\n const { t } = useTranslation();\n\n const handleDateChange = date => {\n setSelectedDate(prevDate => {\n const newDate = typeof date === \"function\" ? date(prevDate) : date;\n onDateChange(newDate);\n\n return newDate;\n });\n };\n\n const calendarRef = useRef();\n\n return (\n <div className=\"flex-col\" data-testid=\"calendar-view\">\n {!hideHeader && (\n <SubHeader\n leftActionBlock={\n <Typography style=\"h2\">\n {selectedDate.format(\"MMMM, YYYY\")}\n </Typography>\n }\n rightActionBlock={\n <Header\n {...{\n calendarRef,\n calendarViewOptions,\n selectedDate,\n selectedView,\n setSelectedDate,\n setSelectedView,\n validDates,\n }}\n setSelectedDate={handleDateChange}\n />\n }\n />\n )}\n <FullCalendar\n expandRows\n allDayText={t(\"neetoMolecules.calendarView.allDay\")}\n dateClick={handleDateClick}\n dayHeaderClassNames=\"p-2\"\n displayEventTime={false}\n eventClick={handleEventClick}\n headerToolbar={false}\n height=\"auto\"\n initialView={selectedView.fullCalendarView}\n plugins={[dayGridPlugin, timeGridPlugin, interactionPlugin]}\n ref={mergeRefs(ref, calendarRef)}\n {...{\n dayCellClassNames,\n dayMaxEvents,\n eventClassNames,\n eventMaxStack,\n events,\n ...otherProps,\n }}\n />\n </div>\n );\n }\n);\n\nCalendarView.displayName = \"CalendarView\";\n\nCalendarView.propTypes = {\n /**\n * Views to be listed in the dropdown. The default selected view can be set by adding `default: true` to the required view.\n */\n viewOptions: PropTypes.object,\n /**\n * An array of event objects that will be displayed on the calendar.\n */\n events: PropTypes.array,\n /**\n * Function to be triggered when the user clicks on a date or a time.\n */\n handleDateClick: PropTypes.func,\n /**\n * Function to be triggered when the user clicks an event.\n */\n handleEventClick: PropTypes.func,\n /**\n * A className input for adding classNames to the outermost event element.\n */\n eventClassNames: PropTypes.string,\n /**\n * A className input for adding classNames to the <td> cell.\n */\n dayCellClassNames: PropTypes.string,\n /**\n * In dayGrid view, the max number of events within a given day, not counting the +more link.\n */\n dayMaxEvents: PropTypes.number,\n /**\n * For timeline view, the maximum number of events that stack top-to-bottom. For timeGrid view, the maximum number of events that stack left-to-right.\n */\n eventMaxStack: PropTypes.number,\n /**\n * This function will be triggered with the new selected date passed as argument\n */\n onDateChange: PropTypes.func,\n /**\n * An object containing the start and end dates in which the range given is the valid range of selectable dates.\n */\n validDates: PropTypes.shape({\n start: PropTypes.instanceOf(Date),\n end: PropTypes.instanceOf(Date),\n }),\n /**\n * This prop can be used to hide the header\n */\n hideHeader: PropTypes.bool,\n};\n\nexport default CalendarView;\n"],"names":["WEEKLY_VIEW","t","MONTHLY_VIEW","DAILY_VIEW","VIEW_OPTIONS","_defineProperty","label","fullCalendarView","picker","getWeekString","_ref","date","_ref$isStartOfWeek","isStartOfWeek","_ref$showMonth","showMonth","_ref$showYear","showYear","concat","format","getStartOfWeek","dayjs","startOf","getEndOfWeek","endOf","getFormattedMonthStr","getFormattedWeekRangeStr","startOfWeek","endOfWeek","shouldShowMonthsSeparately","month","shouldShowYearsSeparately","year","startOfWeekStr","endOfWeekStr","getFormattedDayStr","getFormattedRangeStr","formatFunctions","week","day","selectedFormatter","mergeRefs","_len","arguments","length","refs","Array","_key","node","filter","Boolean","forEach","ref","current","CustomDatePicker","selectedDate","setSelectedDate","validDates","otherProps","_objectWithoutProperties","_excluded","_useState","useState","_useState2","_slicedToArray","isOpen","setIsOpen","datePickerRef","useRef","buttonRef","selectedRangeStr","start","end","isDateLessThanStart","isSameOrBefore","isDateGreaterThanEnd","isSameOrAfter","onPrevious","subtract","onNext","add","onToday","getDisabledDates","handleButtonMouseDown","e","contains","target","stopPropagation","focus","_jsxs","className","children","_jsx","Button","style","onClick","disabled","icon","Left","Down","onMouseDown","Typography","DatePicker","_objectSpread","defaultValue","disabledDate","open","placement","value","onChange","onOpenChange","Right","Header","calendarRef","selectedView","setSelectedView","calendarViewOptions","Menu","Dropdown","MenuItem","handleViewSelection","option","calendar","changeView","navigateToSelectedDate","_calendarRef$current","gotoDate","useEffect","setTimeout","getPopupContainer","prop","Object","keys","buttonProps","buttonStyle","capitalize","values","map","idx","isActive","CalendarView","forwardRef","_ref$viewOptions","viewOptions","_ref$events","events","_ref$handleDateClick","handleDateClick","noop","_ref$handleEventClick","handleEventClick","_ref$eventClassNames","eventClassNames","_ref$dayCellClassName","dayCellClassNames","_ref$validDates","_ref$onDateChange","onDateChange","dayMaxEvents","eventMaxStack","_ref$hideHeader","hideHeader","defaultView","find","_useState3","_useState4","_useTranslation","useTranslation","handleDateChange","prevDate","newDate","SubHeader","leftActionBlock","rightActionBlock","FullCalendar","expandRows","allDayText","dateClick","dayHeaderClassNames","displayEventTime","eventClick","headerToolbar","height","initialView","plugins","dayGridPlugin","timeGridPlugin","interactionPlugin","displayName"],"mappings":"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"}
|
package/dist/Sidebar.js
CHANGED
package/dist/Sidebar.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Sidebar.js","sources":["../src/components/Sidebar/Components/Header.jsx","../src/components/Sidebar/Components/Links/index.jsx","../src/components/Sidebar/index.jsx"],"sourcesContent":["import { memo } from \"react\";\n\nimport classnames from \"classnames\";\nimport { capitalize } from \"neetocist\";\nimport { Neeto } from \"neetoicons/typeface-logos\";\nimport * as ProductTypefaceLogos from \"neetoicons/typeface-logos\";\nimport { Link } from \"react-router-dom\";\n\nconst Header = ({ customLogo, clearSettingsNav, homePath }) => {\n const productName = globalProps.appName.substr(5);\n const logoName = `Neeto${capitalize(productName.toLowerCase())}`;\n const ProductTypefaceLogo = ProductTypefaceLogos[logoName] ?? Neeto;\n const LogoComponent = customLogo ?? ProductTypefaceLogo;\n\n return (\n <div\n className=\"neeto-molecules-sidebar__header neeto-molecules-sidebar__no-shrinkable\"\n data-cy=\"sidebar-info\"\n >\n <Link\n className=\"neeto-molecules-sidebar__logo neeto-ui-w-full\"\n to={homePath}\n onClick={clearSettingsNav}\n >\n <LogoComponent\n className={classnames({\n \"neeto-molecules-sidebar__logo\": !customLogo,\n })}\n />\n </Link>\n </div>\n );\n};\n\nexport default memo(Header);\n","import { Fragment, useState } from \"react\";\n\nimport classnames from \"classnames\";\nimport { hyphenate, isNotEmpty, isPresent } from \"neetocist\";\nimport { Down } from \"neetoicons\";\nimport { Typography } from \"neetoui\";\nimport { is, not } from \"ramda\";\nimport { useLocation } from \"react-router-dom\";\n\nimport CheckPointNavLinks from \"./CheckPointNavLink\";\nimport Items from \"./Items\";\n\nimport { filterByPermissions } from \"../../utils\";\n\nconst renderCount = count => (count > 999 ? \"999+\" : count);\n\nconst Links = ({\n navLinks,\n isCountsLoading: isCountsLoadingDeprecated,\n setSelectedNavLinkRoute,\n}) => {\n const location = useLocation();\n const [isActiveLinkExpanded, setIsActiveLinkExpanded] = useState(true);\n\n const handleNavLinkClick = ({ event, isActive, navLink }) => {\n const isExpandable =\n isPresent(navLink.items) || isPresent(navLink.component);\n if (!isExpandable) return;\n\n if (navLink.isConfigureNavLink && isNotEmpty(navLink.items)) {\n setSelectedNavLinkRoute(navLink.to);\n }\n\n if (isActive()) {\n setIsActiveLinkExpanded(not);\n event.preventDefault();\n\n return;\n }\n\n setIsActiveLinkExpanded(true);\n };\n\n return (\n <div className=\"neeto-molecules-sidebar__links neeto-molecules-sidebar__no-shrinkable\">\n {navLinks.filter(filterByPermissions).map((navLink, index) => {\n const {\n label,\n to,\n icon,\n items,\n isConfigureNavLink,\n isCountsLoading = false,\n count = null,\n component: Component,\n ...otherProps\n } = navLink;\n const IconSVG = icon;\n const url = new URL(to, window.location.href);\n const isActive = () =>\n is(Function, otherProps.isActive)\n ? otherProps.isActive()\n : location.pathname.startsWith(url.pathname);\n\n const isExpandable = items || Component;\n const isMenuExpanded =\n isActive() && isActiveLinkExpanded && !isCountsLoadingDeprecated;\n\n return (\n <Fragment key={navLink.key || index}>\n <CheckPointNavLinks\n activeClassName=\"active\"\n className=\"neeto-ui-flex neeto-ui-items-center neeto-ui-no-underline neeto-ui-select-none neeto-molecules-sidebar__link\"\n data-testid={`navlink-${hyphenate(label)}`}\n onClick={event =>\n handleNavLinkClick({ event, isActive, navLink })\n }\n {...{ isActive, to, ...otherProps }}\n >\n {icon && (\n <span\n className=\"neeto-molecules-sidebar__link-icon\"\n data-testid={label}\n >\n <IconSVG />\n {isPresent(count) && !isCountsLoading && (\n <span className=\"neeto-molecules-sidebar__link-unread-count\">\n {renderCount(count)}\n </span>\n )}\n </span>\n )}\n <Typography\n className=\"neeto-molecules-sidebar__link-label neeto-ui-flex-grow flex items-center gap-1\"\n component=\"span\"\n style=\"body2\"\n >\n {label}\n </Typography>\n {isExpandable && !isConfigureNavLink && (\n <span\n className={classnames(\n \"neeto-molecules-sidebar__link-icon neeto-molecules-sidebar__link-icon--caret\",\n {\n \"neeto-molecules-sidebar__link-icon--rotate\":\n isMenuExpanded,\n }\n )}\n >\n <Down size={16} />\n </span>\n )}\n </CheckPointNavLinks>\n {isExpandable && !isConfigureNavLink && isMenuExpanded && (\n <>\n {items && (\n <Items {...{ isCountsLoading, items, ...otherProps }} />\n )}\n {Component && <Component {...{ navLink }} />}\n </>\n )}\n </Fragment>\n );\n })}\n </div>\n );\n};\n\nexport default Links;\n","import { useEffect, useMemo, useState } from \"react\";\n\nimport classnames from \"classnames\";\nimport { isPresent, isNotEmpty, findBy } from \"neetocist\";\nimport useFetchNeetoApps from \"neetocommons/react-utils/useFetchNeetoApps\";\nimport useLocalStorage from \"neetocommons/react-utils/useLocalStorage\";\nimport { buildUrl } from \"neetocommons/utils\";\nimport { Button, Typography } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { findLast, is, not } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport { useLocation, useHistory } from \"react-router-dom\";\n\nimport Chevron from \"./Components/Chevron\";\nimport Header from \"./Components/Header\";\nimport Links from \"./Components/Links\";\nimport SelectedLink from \"./Components/Links/SelectedLink\";\nimport {\n SELECTED_NAV_LINK_ROUTE_STORAGE_KEY,\n DEFAULT_HOME_PATH,\n} from \"./constants\";\nimport \"./sidebar.scss\";\nimport {\n getActiveConfigurePageLink,\n getSidebarStateLocalStorageKey,\n} from \"./utils\";\n\nconst Sidebar = ({\n navLinks,\n customLogo,\n isCountsLoading = false,\n showWorkspaceName = false,\n}) => {\n const [isSidebarPaneOpen, setIsSidebarPaneOpen] = useState(false);\n const [selectedNavLinkRoute, setSelectedNavLinkRoute] = useLocalStorage(\n SELECTED_NAV_LINK_ROUTE_STORAGE_KEY,\n null\n );\n\n const [isSidebarCollapsed, setIsSidebarCollapsed] = useLocalStorage(\n getSidebarStateLocalStorageKey(),\n false\n );\n\n const location = useLocation();\n const history = useHistory();\n const { t } = useTranslation();\n\n const { data } = useFetchNeetoApps();\n\n const isLargerScreen = () => window.innerWidth > 768;\n const isSidebarClosed = isLargerScreen()\n ? isSidebarCollapsed\n : not(isSidebarPaneOpen);\n\n useEffect(() => {\n if (!isPresent(navLinks)) return;\n const currentLink = findLast(({ to, isActive }) => {\n const url = new URL(to, window.location.href);\n\n return is(Function, isActive)\n ? isActive()\n : location.pathname.includes(url.pathname);\n })(navLinks);\n\n if (isPresent(currentLink)) {\n setSelectedNavLinkRoute(\n currentLink.isConfigureNavLink ? currentLink.to : null\n );\n }\n }, []);\n\n useEffect(() => {\n const handleResize = () => {\n if (isLargerScreen()) return;\n setIsSidebarPaneOpen(false);\n setIsSidebarCollapsed(true);\n };\n window.addEventListener(\"resize\", handleResize);\n\n return () => window.removeEventListener(\"resize\", handleResize);\n }, []);\n\n const handleGoBack = event => {\n event.preventDefault();\n setSelectedNavLinkRoute(null);\n const configureNavLink = getActiveConfigurePageLink({ navLinks, location });\n if (configureNavLink?.to) {\n history.push(buildUrl(configureNavLink.to));\n }\n };\n\n const homePath = useMemo(() => {\n if (!data?.neetoApps) return DEFAULT_HOME_PATH;\n\n const productName = globalProps.appName.substr(5);\n const thisApp = findBy({ name: productName }, data.neetoApps);\n\n return thisApp?.url ? new URL(thisApp.url).pathname : DEFAULT_HOME_PATH;\n }, [data]);\n\n const activeLink = useMemo(\n () =>\n navLinks.find(link => {\n if (is(Function, link.isActive)) return link.isActive();\n const url = new URL(link.to, window.location.href);\n\n return location.pathname.startsWith(url.pathname);\n }),\n [location.pathname, navLinks]\n );\n\n const isSelectedNavLinkVisible =\n selectedNavLinkRoute &&\n activeLink?.to === selectedNavLinkRoute &&\n isNotEmpty(navLinks);\n\n return (\n <div\n data-testid=\"sidebar-container\"\n className={classnames(\"neeto-molecules-sidebar__wrapper\", {\n \"neeto-molecules-sidebar__wrapper--collapsed\": isLargerScreen()\n ? isSidebarCollapsed\n : not(isSidebarPaneOpen),\n })}\n >\n <div\n className=\"neeto-molecules-sidebar__backdrop\"\n onClick={() => {\n setIsSidebarPaneOpen(false);\n setSelectedNavLinkRoute(null);\n }}\n />\n <div\n data-cy=\"sidebar-wrapper\"\n data-testid=\"sidebar\"\n className={classnames(\n \"neeto-molecules-sidebar neeto-ui-flex neeto-ui-flex-col neeto-ui-flex-shrink-0 neeto-ui-overflow-y-auto neeto-ui-overflow-x-hidden\",\n {\n \"neeto-molecules-sidebar--focus-mode\":\n isPresent(selectedNavLinkRoute),\n }\n )}\n >\n <Header\n {...{ customLogo, homePath }}\n clearSettingsNav={() => setSelectedNavLinkRoute(null)}\n />\n {showWorkspaceName && (\n <div className=\"neeto-ui-bg-gray-100 neeto-molecules-sidebar__workspace-info\">\n <Typography className=\"neeto-ui-mb-1\" style=\"h5\" weight=\"semibold\">\n {t(\"neetoMolecules.sidebar.myWorkspace\")}\n </Typography>\n <Typography className=\"neeto-ui-truncate\" style=\"body2\">\n {globalProps.organization.name}\n </Typography>\n </div>\n )}\n {isSelectedNavLinkVisible ? (\n <SelectedLink {...{ handleGoBack, homePath }} navLink={activeLink} />\n ) : (\n <Links {...{ isCountsLoading, navLinks, setSelectedNavLinkRoute }} />\n )}\n </div>\n <Button\n className=\"neeto-molecules-sidebar__toggler\"\n data-cy=\"neeto-molecules-sidebar-toggler\"\n data-testid=\"sidebar-toggleButton\"\n icon={() => <Chevron />}\n style={isLargerScreen() ? \"text\" : \"secondary\"}\n tooltipProps={{\n content: isSidebarClosed\n ? t(\"neetoMolecules.sidebar.showMenu\")\n : t(\"neetoMolecules.sidebar.hideMenu\"),\n position: \"bottom\",\n touch: [\"hold\", 500],\n }}\n onClick={() => {\n setIsSidebarCollapsed(!isSidebarCollapsed);\n setIsSidebarPaneOpen(not);\n }}\n />\n </div>\n );\n};\n\nSidebar.propTypes = {\n /**\n * To specify the navlinks to be shown in sidebar.\n */\n navLinks: PropTypes.arrayOf(\n PropTypes.shape({\n icon: PropTypes.oneOfType([PropTypes.element, PropTypes.func]),\n label: PropTypes.string,\n to: PropTypes.string,\n count: PropTypes.number,\n isActive: PropTypes.func,\n checkpointKey: PropTypes.string,\n isCountsLoading: PropTypes.bool,\n items: PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string,\n to: PropTypes.string,\n href: PropTypes.string,\n count: PropTypes.number,\n isActive: PropTypes.func,\n type: PropTypes.string,\n filters: PropTypes.array,\n checkpointKey: PropTypes.string,\n })\n ),\n })\n ),\n /**\n * To override the logo displayed on the sidebar.\n */\n customLogo: PropTypes.oneOfType([PropTypes.element, PropTypes.func]),\n /**\n * Boolean to notate whether the counts are being fetched.\n */\n isCountsLoading: PropTypes.bool,\n /**\n * Boolean to determine whether the workspace name should be shown.\n */\n showWorkspaceName: PropTypes.bool,\n};\n\nexport default Sidebar;\n"],"names":["Header","_ref","_ProductTypefaceLogos","customLogo","clearSettingsNav","homePath","productName","globalProps","appName","substr","logoName","concat","capitalize","toLowerCase","ProductTypefaceLogo","ProductTypefaceLogos","Neeto","LogoComponent","_jsx","className","children","Link","to","onClick","classnames","memo","renderCount","count","Links","navLinks","isCountsLoadingDeprecated","isCountsLoading","setSelectedNavLinkRoute","location","useLocation","_useState","useState","_useState2","_slicedToArray","isActiveLinkExpanded","setIsActiveLinkExpanded","handleNavLinkClick","_ref2","event","isActive","navLink","isExpandable","isPresent","items","component","isConfigureNavLink","isNotEmpty","not","preventDefault","filter","filterByPermissions","map","index","label","icon","_navLink$isCountsLoad","_navLink$count","Component","otherProps","_objectWithoutProperties","_excluded","IconSVG","url","URL","window","href","is","Function","pathname","startsWith","isMenuExpanded","_jsxs","Fragment","CheckPointNavLinks","_objectSpread","activeClassName","hyphenate","Typography","style","Down","size","_Fragment","Items","key","Sidebar","_ref$isCountsLoading","_ref$showWorkspaceNam","showWorkspaceName","isSidebarPaneOpen","setIsSidebarPaneOpen","_useLocalStorage","useLocalStorage","SELECTED_NAV_LINK_ROUTE_STORAGE_KEY","_useLocalStorage2","selectedNavLinkRoute","_useLocalStorage3","getSidebarStateLocalStorageKey","_useLocalStorage4","isSidebarCollapsed","setIsSidebarCollapsed","history","useHistory","_useTranslation","useTranslation","t","_useFetchNeetoApps","useFetchNeetoApps","data","isLargerScreen","innerWidth","isSidebarClosed","useEffect","currentLink","findLast","includes","handleResize","addEventListener","removeEventListener","handleGoBack","configureNavLink","getActiveConfigurePageLink","push","buildUrl","useMemo","neetoApps","DEFAULT_HOME_PATH","thisApp","findBy","name","activeLink","find","link","isSelectedNavLinkVisible","weight","organization","SelectedLink","Button","Chevron","tooltipProps","content","position","touch"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Sidebar.js","sources":["../src/components/Sidebar/Components/Header.jsx","../src/components/Sidebar/Components/Links/index.jsx","../src/components/Sidebar/index.jsx"],"sourcesContent":["import { memo } from \"react\";\n\nimport classnames from \"classnames\";\nimport { capitalize } from \"neetocist\";\nimport { Neeto } from \"neetoicons/typeface-logos\";\nimport * as ProductTypefaceLogos from \"neetoicons/typeface-logos\";\nimport { Link } from \"react-router-dom\";\n\nconst Header = ({ customLogo, clearSettingsNav, homePath }) => {\n const productName = globalProps.appName.substr(5);\n const logoName = `Neeto${capitalize(productName.toLowerCase())}`;\n const ProductTypefaceLogo = ProductTypefaceLogos[logoName] ?? Neeto;\n const LogoComponent = customLogo ?? ProductTypefaceLogo;\n\n return (\n <div\n className=\"neeto-molecules-sidebar__header neeto-molecules-sidebar__no-shrinkable\"\n data-cy=\"sidebar-info\"\n >\n <Link\n className=\"neeto-molecules-sidebar__logo neeto-ui-w-full\"\n to={homePath}\n onClick={clearSettingsNav}\n >\n <LogoComponent\n className={classnames({\n \"neeto-molecules-sidebar__logo\": !customLogo,\n })}\n />\n </Link>\n </div>\n );\n};\n\nexport default memo(Header);\n","import { Fragment, useState } from \"react\";\n\nimport classnames from \"classnames\";\nimport { hyphenate, isNotEmpty, isPresent } from \"neetocist\";\nimport { Down } from \"neetoicons\";\nimport { Typography } from \"neetoui\";\nimport { is, not } from \"ramda\";\nimport { useLocation } from \"react-router-dom\";\n\nimport CheckPointNavLinks from \"./CheckPointNavLink\";\nimport Items from \"./Items\";\n\nimport { filterByPermissions } from \"../../utils\";\n\nconst renderCount = count => (count > 999 ? \"999+\" : count);\n\nconst Links = ({\n navLinks,\n isCountsLoading: isCountsLoadingDeprecated,\n setSelectedNavLinkRoute,\n}) => {\n const location = useLocation();\n const [isActiveLinkExpanded, setIsActiveLinkExpanded] = useState(true);\n\n const handleNavLinkClick = ({ event, isActive, navLink }) => {\n const isExpandable =\n isPresent(navLink.items) || isPresent(navLink.component);\n if (!isExpandable) return;\n\n if (navLink.isConfigureNavLink && isNotEmpty(navLink.items)) {\n setSelectedNavLinkRoute(navLink.to);\n }\n\n if (isActive()) {\n setIsActiveLinkExpanded(not);\n navLink.resetPath !== true && event.preventDefault();\n\n return;\n }\n\n setIsActiveLinkExpanded(true);\n };\n\n return (\n <div className=\"neeto-molecules-sidebar__links neeto-molecules-sidebar__no-shrinkable\">\n {navLinks.filter(filterByPermissions).map((navLink, index) => {\n const {\n label,\n to,\n icon,\n items,\n isConfigureNavLink,\n isCountsLoading = false,\n count = null,\n component: Component,\n ...otherProps\n } = navLink;\n const IconSVG = icon;\n const url = new URL(to, window.location.href);\n const isActive = () =>\n is(Function, otherProps.isActive)\n ? otherProps.isActive()\n : location.pathname.startsWith(url.pathname);\n\n const isExpandable = items || Component;\n const isMenuExpanded =\n isActive() && isActiveLinkExpanded && !isCountsLoadingDeprecated;\n\n return (\n <Fragment key={navLink.key || index}>\n <CheckPointNavLinks\n activeClassName=\"active\"\n className=\"neeto-ui-flex neeto-ui-items-center neeto-ui-no-underline neeto-ui-select-none neeto-molecules-sidebar__link\"\n data-testid={`navlink-${hyphenate(label)}`}\n onClick={event =>\n handleNavLinkClick({ event, isActive, navLink })\n }\n {...{ isActive, to, ...otherProps }}\n >\n {icon && (\n <span\n className=\"neeto-molecules-sidebar__link-icon\"\n data-testid={label}\n >\n <IconSVG />\n {isPresent(count) && !isCountsLoading && (\n <span className=\"neeto-molecules-sidebar__link-unread-count\">\n {renderCount(count)}\n </span>\n )}\n </span>\n )}\n <Typography\n className=\"neeto-molecules-sidebar__link-label neeto-ui-flex-grow flex items-center gap-1\"\n component=\"span\"\n style=\"body2\"\n >\n {label}\n </Typography>\n {isExpandable && !isConfigureNavLink && (\n <span\n className={classnames(\n \"neeto-molecules-sidebar__link-icon neeto-molecules-sidebar__link-icon--caret\",\n {\n \"neeto-molecules-sidebar__link-icon--rotate\":\n isMenuExpanded,\n }\n )}\n >\n <Down size={16} />\n </span>\n )}\n </CheckPointNavLinks>\n {isExpandable && !isConfigureNavLink && isMenuExpanded && (\n <>\n {items && (\n <Items {...{ isCountsLoading, items, ...otherProps }} />\n )}\n {Component && <Component {...{ navLink }} />}\n </>\n )}\n </Fragment>\n );\n })}\n </div>\n );\n};\n\nexport default Links;\n","import { useEffect, useMemo, useState } from \"react\";\n\nimport classnames from \"classnames\";\nimport { isPresent, isNotEmpty, findBy } from \"neetocist\";\nimport useFetchNeetoApps from \"neetocommons/react-utils/useFetchNeetoApps\";\nimport useLocalStorage from \"neetocommons/react-utils/useLocalStorage\";\nimport { buildUrl } from \"neetocommons/utils\";\nimport { Button, Typography } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { findLast, is, not } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport { useLocation, useHistory } from \"react-router-dom\";\n\nimport Chevron from \"./Components/Chevron\";\nimport Header from \"./Components/Header\";\nimport Links from \"./Components/Links\";\nimport SelectedLink from \"./Components/Links/SelectedLink\";\nimport {\n SELECTED_NAV_LINK_ROUTE_STORAGE_KEY,\n DEFAULT_HOME_PATH,\n} from \"./constants\";\nimport \"./sidebar.scss\";\nimport {\n getActiveConfigurePageLink,\n getSidebarStateLocalStorageKey,\n} from \"./utils\";\n\nconst Sidebar = ({\n navLinks,\n customLogo,\n isCountsLoading = false,\n showWorkspaceName = false,\n}) => {\n const [isSidebarPaneOpen, setIsSidebarPaneOpen] = useState(false);\n const [selectedNavLinkRoute, setSelectedNavLinkRoute] = useLocalStorage(\n SELECTED_NAV_LINK_ROUTE_STORAGE_KEY,\n null\n );\n\n const [isSidebarCollapsed, setIsSidebarCollapsed] = useLocalStorage(\n getSidebarStateLocalStorageKey(),\n false\n );\n\n const location = useLocation();\n const history = useHistory();\n const { t } = useTranslation();\n\n const { data } = useFetchNeetoApps();\n\n const isLargerScreen = () => window.innerWidth > 768;\n const isSidebarClosed = isLargerScreen()\n ? isSidebarCollapsed\n : not(isSidebarPaneOpen);\n\n useEffect(() => {\n if (!isPresent(navLinks)) return;\n const currentLink = findLast(({ to, isActive }) => {\n const url = new URL(to, window.location.href);\n\n return is(Function, isActive)\n ? isActive()\n : location.pathname.includes(url.pathname);\n })(navLinks);\n\n if (isPresent(currentLink)) {\n setSelectedNavLinkRoute(\n currentLink.isConfigureNavLink ? currentLink.to : null\n );\n }\n }, []);\n\n useEffect(() => {\n const handleResize = () => {\n if (isLargerScreen()) return;\n setIsSidebarPaneOpen(false);\n setIsSidebarCollapsed(true);\n };\n window.addEventListener(\"resize\", handleResize);\n\n return () => window.removeEventListener(\"resize\", handleResize);\n }, []);\n\n const handleGoBack = event => {\n event.preventDefault();\n setSelectedNavLinkRoute(null);\n const configureNavLink = getActiveConfigurePageLink({ navLinks, location });\n if (configureNavLink?.to) {\n history.push(buildUrl(configureNavLink.to));\n }\n };\n\n const homePath = useMemo(() => {\n if (!data?.neetoApps) return DEFAULT_HOME_PATH;\n\n const productName = globalProps.appName.substr(5);\n const thisApp = findBy({ name: productName }, data.neetoApps);\n\n return thisApp?.url ? new URL(thisApp.url).pathname : DEFAULT_HOME_PATH;\n }, [data]);\n\n const activeLink = useMemo(\n () =>\n navLinks.find(link => {\n if (is(Function, link.isActive)) return link.isActive();\n const url = new URL(link.to, window.location.href);\n\n return location.pathname.startsWith(url.pathname);\n }),\n [location.pathname, navLinks]\n );\n\n const isSelectedNavLinkVisible =\n selectedNavLinkRoute &&\n activeLink?.to === selectedNavLinkRoute &&\n isNotEmpty(navLinks);\n\n return (\n <div\n data-testid=\"sidebar-container\"\n className={classnames(\"neeto-molecules-sidebar__wrapper\", {\n \"neeto-molecules-sidebar__wrapper--collapsed\": isLargerScreen()\n ? isSidebarCollapsed\n : not(isSidebarPaneOpen),\n })}\n >\n <div\n className=\"neeto-molecules-sidebar__backdrop\"\n onClick={() => {\n setIsSidebarPaneOpen(false);\n setSelectedNavLinkRoute(null);\n }}\n />\n <div\n data-cy=\"sidebar-wrapper\"\n data-testid=\"sidebar\"\n className={classnames(\n \"neeto-molecules-sidebar neeto-ui-flex neeto-ui-flex-col neeto-ui-flex-shrink-0 neeto-ui-overflow-y-auto neeto-ui-overflow-x-hidden\",\n {\n \"neeto-molecules-sidebar--focus-mode\":\n isPresent(selectedNavLinkRoute),\n }\n )}\n >\n <Header\n {...{ customLogo, homePath }}\n clearSettingsNav={() => setSelectedNavLinkRoute(null)}\n />\n {showWorkspaceName && (\n <div className=\"neeto-ui-bg-gray-100 neeto-molecules-sidebar__workspace-info\">\n <Typography className=\"neeto-ui-mb-1\" style=\"h5\" weight=\"semibold\">\n {t(\"neetoMolecules.sidebar.myWorkspace\")}\n </Typography>\n <Typography className=\"neeto-ui-truncate\" style=\"body2\">\n {globalProps.organization.name}\n </Typography>\n </div>\n )}\n {isSelectedNavLinkVisible ? (\n <SelectedLink {...{ handleGoBack, homePath }} navLink={activeLink} />\n ) : (\n <Links {...{ isCountsLoading, navLinks, setSelectedNavLinkRoute }} />\n )}\n </div>\n <Button\n className=\"neeto-molecules-sidebar__toggler\"\n data-cy=\"neeto-molecules-sidebar-toggler\"\n data-testid=\"sidebar-toggleButton\"\n icon={() => <Chevron />}\n style={isLargerScreen() ? \"text\" : \"secondary\"}\n tooltipProps={{\n content: isSidebarClosed\n ? t(\"neetoMolecules.sidebar.showMenu\")\n : t(\"neetoMolecules.sidebar.hideMenu\"),\n position: \"bottom\",\n touch: [\"hold\", 500],\n }}\n onClick={() => {\n setIsSidebarCollapsed(!isSidebarCollapsed);\n setIsSidebarPaneOpen(not);\n }}\n />\n </div>\n );\n};\n\nSidebar.propTypes = {\n /**\n * To specify the navlinks to be shown in sidebar.\n */\n navLinks: PropTypes.arrayOf(\n PropTypes.shape({\n icon: PropTypes.oneOfType([PropTypes.element, PropTypes.func]),\n label: PropTypes.string,\n to: PropTypes.string,\n count: PropTypes.number,\n isActive: PropTypes.func,\n checkpointKey: PropTypes.string,\n isCountsLoading: PropTypes.bool,\n items: PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string,\n to: PropTypes.string,\n href: PropTypes.string,\n count: PropTypes.number,\n isActive: PropTypes.func,\n type: PropTypes.string,\n filters: PropTypes.array,\n checkpointKey: PropTypes.string,\n })\n ),\n })\n ),\n /**\n * To override the logo displayed on the sidebar.\n */\n customLogo: PropTypes.oneOfType([PropTypes.element, PropTypes.func]),\n /**\n * Boolean to notate whether the counts are being fetched.\n */\n isCountsLoading: PropTypes.bool,\n /**\n * Boolean to determine whether the workspace name should be shown.\n */\n showWorkspaceName: PropTypes.bool,\n};\n\nexport default Sidebar;\n"],"names":["Header","_ref","_ProductTypefaceLogos","customLogo","clearSettingsNav","homePath","productName","globalProps","appName","substr","logoName","concat","capitalize","toLowerCase","ProductTypefaceLogo","ProductTypefaceLogos","Neeto","LogoComponent","_jsx","className","children","Link","to","onClick","classnames","memo","renderCount","count","Links","navLinks","isCountsLoadingDeprecated","isCountsLoading","setSelectedNavLinkRoute","location","useLocation","_useState","useState","_useState2","_slicedToArray","isActiveLinkExpanded","setIsActiveLinkExpanded","handleNavLinkClick","_ref2","event","isActive","navLink","isExpandable","isPresent","items","component","isConfigureNavLink","isNotEmpty","not","resetPath","preventDefault","filter","filterByPermissions","map","index","label","icon","_navLink$isCountsLoad","_navLink$count","Component","otherProps","_objectWithoutProperties","_excluded","IconSVG","url","URL","window","href","is","Function","pathname","startsWith","isMenuExpanded","_jsxs","Fragment","CheckPointNavLinks","_objectSpread","activeClassName","hyphenate","Typography","style","Down","size","_Fragment","Items","key","Sidebar","_ref$isCountsLoading","_ref$showWorkspaceNam","showWorkspaceName","isSidebarPaneOpen","setIsSidebarPaneOpen","_useLocalStorage","useLocalStorage","SELECTED_NAV_LINK_ROUTE_STORAGE_KEY","_useLocalStorage2","selectedNavLinkRoute","_useLocalStorage3","getSidebarStateLocalStorageKey","_useLocalStorage4","isSidebarCollapsed","setIsSidebarCollapsed","history","useHistory","_useTranslation","useTranslation","t","_useFetchNeetoApps","useFetchNeetoApps","data","isLargerScreen","innerWidth","isSidebarClosed","useEffect","currentLink","findLast","includes","handleResize","addEventListener","removeEventListener","handleGoBack","configureNavLink","getActiveConfigurePageLink","push","buildUrl","useMemo","neetoApps","DEFAULT_HOME_PATH","thisApp","findBy","name","activeLink","find","link","isSelectedNavLinkVisible","weight","organization","SelectedLink","Button","Chevron","tooltipProps","content","position","touch"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAQA,IAAMA,MAAM,GAAG,SAATA,MAAMA,CAAAC,IAAA,EAAmD;AAAA,EAAA,IAAAC,qBAAA,CAAA;AAAA,EAAA,IAA7CC,UAAU,GAAAF,IAAA,CAAVE,UAAU;IAAEC,gBAAgB,GAAAH,IAAA,CAAhBG,gBAAgB;IAAEC,QAAQ,GAAAJ,IAAA,CAARI,QAAQ,CAAA;EACtD,IAAMC,WAAW,GAAGC,WAAW,CAACC,OAAO,CAACC,MAAM,CAAC,CAAC,CAAC,CAAA;AACjD,EAAA,IAAMC,QAAQ,GAAA,OAAA,CAAAC,MAAA,CAAWC,UAAU,CAACN,WAAW,CAACO,WAAW,EAAE,CAAC,CAAE,CAAA;AAChE,EAAA,IAAMC,mBAAmB,GAAA,CAAAZ,qBAAA,GAAGa,QAAoB,CAACL,QAAQ,CAAC,MAAAR,IAAAA,IAAAA,qBAAA,KAAAA,KAAAA,CAAAA,GAAAA,qBAAA,GAAIc,KAAK,CAAA;EACnE,IAAMC,aAAa,GAAGd,UAAU,KAAA,IAAA,IAAVA,UAAU,KAAVA,KAAAA,CAAAA,GAAAA,UAAU,GAAIW,mBAAmB,CAAA;AAEvD,EAAA,oBACEI,GAAA,CAAA,KAAA,EAAA;AACEC,IAAAA,SAAS,EAAC,wEAAwE;AAClF,IAAA,SAAA,EAAQ,cAAc;IAAAC,QAAA,eAEtBF,GAAA,CAACG,IAAI,EAAA;AACHF,MAAAA,SAAS,EAAC,+CAA+C;AACzDG,MAAAA,EAAE,EAAEjB,QAAS;AACbkB,MAAAA,OAAO,EAAEnB,gBAAiB;MAAAgB,QAAA,eAE1BF,GAAA,CAACD,aAAa,EAAA;QACZE,SAAS,EAAEK,UAAU,CAAC;AACpB,UAAA,+BAA+B,EAAE,CAACrB,UAAAA;SACnC,CAAA;OACF,CAAA;KACG,CAAA;AAAC,GACJ,CAAC,CAAA;AAEV,CAAC,CAAA;AAED,eAAesB,aAAAA,IAAI,CAACzB,MAAM,CAAC;;;;;ACpB3B,IAAM0B,WAAW,GAAG,SAAdA,WAAWA,CAAGC,KAAK,EAAA;AAAA,EAAA,OAAKA,KAAK,GAAG,GAAG,GAAG,MAAM,GAAGA,KAAK,CAAA;AAAA,CAAC,CAAA;AAE3D,IAAMC,KAAK,GAAG,SAARA,KAAKA,CAAA3B,IAAA,EAIL;AAAA,EAAA,IAHJ4B,QAAQ,GAAA5B,IAAA,CAAR4B,QAAQ;IACSC,yBAAyB,GAAA7B,IAAA,CAA1C8B,eAAe;IACfC,uBAAuB,GAAA/B,IAAA,CAAvB+B,uBAAuB,CAAA;AAEvB,EAAA,IAAMC,QAAQ,GAAGC,WAAW,EAAE,CAAA;AAC9B,EAAA,IAAAC,SAAA,GAAwDC,QAAQ,CAAC,IAAI,CAAC;IAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAA/DI,IAAAA,oBAAoB,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,uBAAuB,GAAAH,UAAA,CAAA,CAAA,CAAA,CAAA;AAEpD,EAAA,IAAMI,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAAC,KAAA,EAAqC;AAAA,IAAA,IAA/BC,KAAK,GAAAD,KAAA,CAALC,KAAK;MAAEC,QAAQ,GAAAF,KAAA,CAARE,QAAQ;MAAEC,OAAO,GAAAH,KAAA,CAAPG,OAAO,CAAA;AACpD,IAAA,IAAMC,YAAY,GAChBC,SAAS,CAACF,OAAO,CAACG,KAAK,CAAC,IAAID,SAAS,CAACF,OAAO,CAACI,SAAS,CAAC,CAAA;IAC1D,IAAI,CAACH,YAAY,EAAE,OAAA;IAEnB,IAAID,OAAO,CAACK,kBAAkB,IAAIC,UAAU,CAACN,OAAO,CAACG,KAAK,CAAC,EAAE;AAC3DhB,MAAAA,uBAAuB,CAACa,OAAO,CAACvB,EAAE,CAAC,CAAA;AACrC,KAAA;IAEA,IAAIsB,QAAQ,EAAE,EAAE;MACdJ,uBAAuB,CAACY,GAAG,CAAC,CAAA;MAC5BP,OAAO,CAACQ,SAAS,KAAK,IAAI,IAAIV,KAAK,CAACW,cAAc,EAAE,CAAA;AAEpD,MAAA,OAAA;AACF,KAAA;IAEAd,uBAAuB,CAAC,IAAI,CAAC,CAAA;GAC9B,CAAA;AAED,EAAA,oBACEtB,GAAA,CAAA,KAAA,EAAA;AAAKC,IAAAA,SAAS,EAAC,uEAAuE;AAAAC,IAAAA,QAAA,EACnFS,QAAQ,CAAC0B,MAAM,CAACC,mBAAmB,CAAC,CAACC,GAAG,CAAC,UAACZ,OAAO,EAAEa,KAAK,EAAK;AAC5D,MAAA,IACEC,KAAK,GASHd,OAAO,CATTc,KAAK;QACLrC,EAAE,GAQAuB,OAAO,CARTvB,EAAE;QACFsC,IAAI,GAOFf,OAAO,CAPTe,IAAI;QACJZ,KAAK,GAMHH,OAAO,CANTG,KAAK;QACLE,kBAAkB,GAKhBL,OAAO,CALTK,kBAAkB;QAAAW,qBAAA,GAKhBhB,OAAO,CAJTd,eAAe;AAAfA,QAAAA,eAAe,GAAA8B,qBAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,qBAAA;QAAAC,cAAA,GAIrBjB,OAAO,CAHTlB,KAAK;AAALA,QAAAA,KAAK,GAAAmC,cAAA,KAAG,KAAA,CAAA,GAAA,IAAI,GAAAA,cAAA;QACDC,SAAS,GAElBlB,OAAO,CAFTI,SAAS;AACNe,QAAAA,UAAU,GAAAC,wBAAA,CACXpB,OAAO,EAAAqB,SAAA,CAAA,CAAA;MACX,IAAMC,OAAO,GAAGP,IAAI,CAAA;AACpB,MAAA,IAAMQ,GAAG,GAAG,IAAIC,GAAG,CAAC/C,EAAE,EAAEgD,MAAM,CAACrC,QAAQ,CAACsC,IAAI,CAAC,CAAA;AAC7C,MAAA,IAAM3B,QAAQ,GAAG,SAAXA,QAAQA,GAAA;QAAA,OACZ4B,EAAE,CAACC,QAAQ,EAAET,UAAU,CAACpB,QAAQ,CAAC,GAC7BoB,UAAU,CAACpB,QAAQ,EAAE,GACrBX,QAAQ,CAACyC,QAAQ,CAACC,UAAU,CAACP,GAAG,CAACM,QAAQ,CAAC,CAAA;AAAA,OAAA,CAAA;AAEhD,MAAA,IAAM5B,YAAY,GAAGE,KAAK,IAAIe,SAAS,CAAA;MACvC,IAAMa,cAAc,GAClBhC,QAAQ,EAAE,IAAIL,oBAAoB,IAAI,CAACT,yBAAyB,CAAA;MAElE,oBACE+C,IAAA,CAACC,QAAQ,EAAA;AAAA1D,QAAAA,QAAA,gBACPyD,IAAA,CAACE,kBAAkB,EAAAC,aAAA,CAAAA,aAAA,CAAA;AACjBC,UAAAA,eAAe,EAAC,QAAQ;AACxB9D,UAAAA,SAAS,EAAC,8GAA8G;AACxH,UAAA,aAAA,EAAA,UAAA,CAAAR,MAAA,CAAwBuE,SAAS,CAACvB,KAAK,CAAC,CAAG;AAC3CpC,UAAAA,OAAO,EAAE,SAATA,OAAOA,CAAEoB,KAAK,EAAA;AAAA,YAAA,OACZF,kBAAkB,CAAC;AAAEE,cAAAA,KAAK,EAALA,KAAK;AAAEC,cAAAA,QAAQ,EAARA,QAAQ;AAAEC,cAAAA,OAAO,EAAPA,OAAAA;AAAQ,aAAC,CAAC,CAAA;AAAA,WAAA;AACjD,SAAA,EAAAmC,aAAA,CAAA;AACKpC,UAAAA,QAAQ,EAARA,QAAQ;AAAEtB,UAAAA,EAAE,EAAFA,EAAAA;AAAE,SAAA,EAAK0C,UAAU,CAAA,CAAA,EAAA,EAAA,EAAA;UAAA5C,QAAA,EAAA,CAEhCwC,IAAI,iBACHiB,IAAA,CAAA,MAAA,EAAA;AACE1D,YAAAA,SAAS,EAAC,oCAAoC;AAC9C,YAAA,aAAA,EAAawC,KAAM;AAAAvC,YAAAA,QAAA,EAEnBF,cAAAA,GAAA,CAACiD,OAAO,IAAE,CAAC,EACVpB,SAAS,CAACpB,KAAK,CAAC,IAAI,CAACI,eAAe,iBACnCb,GAAA,CAAA,MAAA,EAAA;AAAMC,cAAAA,SAAS,EAAC,4CAA4C;cAAAC,QAAA,EACzDM,WAAW,CAACC,KAAK,CAAA;AAAC,aACf,CACP,CAAA;AAAA,WACG,CACP,eACDT,GAAA,CAACiE,UAAU,EAAA;AACThE,YAAAA,SAAS,EAAC,gFAAgF;AAC1F8B,YAAAA,SAAS,EAAC,MAAM;AAChBmC,YAAAA,KAAK,EAAC,OAAO;AAAAhE,YAAAA,QAAA,EAEZuC,KAAAA;AAAK,WACI,CAAC,EACZb,YAAY,IAAI,CAACI,kBAAkB,iBAClChC,GAAA,CAAA,MAAA,EAAA;AACEC,YAAAA,SAAS,EAAEK,UAAU,CACnB,8EAA8E,EAC9E;AACE,cAAA,4CAA4C,EAC1CoD,cAAAA;AACJ,aACF,CAAE;YAAAxD,QAAA,eAEFF,GAAA,CAACmE,IAAI,EAAA;AAACC,cAAAA,IAAI,EAAE,EAAA;aAAK,CAAA;AAAC,WACd,CACP,CAAA;SACiB,CAAA,CAAC,EACpBxC,YAAY,IAAI,CAACI,kBAAkB,IAAI0B,cAAc,iBACpDC,IAAA,CAAAU,UAAA,EAAA;UAAAnE,QAAA,EAAA,CACG4B,KAAK,iBACJ9B,GAAA,CAACsE,MAAK,EAAAR,aAAA,CAAA,EAAA,EAAAA,aAAA,CAAA;AAAOjD,YAAAA,eAAe,EAAfA,eAAe;AAAEiB,YAAAA,KAAK,EAALA,KAAAA;WAAUgB,EAAAA,UAAU,EAAK,CACxD,EACAD,SAAS,iBAAI7C,GAAA,CAAC6C,SAAS,EAAA;AAAOlB,YAAAA,OAAO,EAAPA,OAAAA;AAAO,WAAK,CAAC,CAAA;AAAA,SAC5C,CACH,CAAA;AAAA,OAAA,EAnDYA,OAAO,CAAC4C,GAAG,IAAI/B,KAoDpB,CAAC,CAAA;KAEd,CAAA;AAAC,GACC,CAAC,CAAA;AAEV,CAAC;;ACnGD,IAAMgC,OAAO,GAAG,SAAVA,OAAOA,CAAAzF,IAAA,EAKP;AAAA,EAAA,IAJJ4B,QAAQ,GAAA5B,IAAA,CAAR4B,QAAQ;IACR1B,UAAU,GAAAF,IAAA,CAAVE,UAAU;IAAAwF,oBAAA,GAAA1F,IAAA,CACV8B,eAAe;AAAfA,IAAAA,eAAe,GAAA4D,oBAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,oBAAA;IAAAC,qBAAA,GAAA3F,IAAA,CACvB4F,iBAAiB;AAAjBA,IAAAA,iBAAiB,GAAAD,qBAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,qBAAA,CAAA;AAEzB,EAAA,IAAAzD,SAAA,GAAkDC,QAAQ,CAAC,KAAK,CAAC;IAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAA1D2D,IAAAA,iBAAiB,GAAAzD,UAAA,CAAA,CAAA,CAAA;AAAE0D,IAAAA,oBAAoB,GAAA1D,UAAA,CAAA,CAAA,CAAA,CAAA;AAC9C,EAAA,IAAA2D,gBAAA,GAAwDC,eAAe,CACrEC,mCAAmC,EACnC,IACF,CAAC;IAAAC,iBAAA,GAAA7D,cAAA,CAAA0D,gBAAA,EAAA,CAAA,CAAA;AAHMI,IAAAA,oBAAoB,GAAAD,iBAAA,CAAA,CAAA,CAAA;AAAEnE,IAAAA,uBAAuB,GAAAmE,iBAAA,CAAA,CAAA,CAAA,CAAA;EAKpD,IAAAE,iBAAA,GAAoDJ,eAAe,CACjEK,8BAA8B,EAAE,EAChC,KACF,CAAC;IAAAC,iBAAA,GAAAjE,cAAA,CAAA+D,iBAAA,EAAA,CAAA,CAAA;AAHMG,IAAAA,kBAAkB,GAAAD,iBAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,qBAAqB,GAAAF,iBAAA,CAAA,CAAA,CAAA,CAAA;AAKhD,EAAA,IAAMtE,QAAQ,GAAGC,WAAW,EAAE,CAAA;AAC9B,EAAA,IAAMwE,OAAO,GAAGC,UAAU,EAAE,CAAA;AAC5B,EAAA,IAAAC,eAAA,GAAcC,cAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC,CAAA;AAET,EAAA,IAAAC,kBAAA,GAAiBC,iBAAiB,EAAE;IAA5BC,IAAI,GAAAF,kBAAA,CAAJE,IAAI,CAAA;AAEZ,EAAA,IAAMC,cAAc,GAAG,SAAjBA,cAAcA,GAAA;AAAA,IAAA,OAAS5C,MAAM,CAAC6C,UAAU,GAAG,GAAG,CAAA;AAAA,GAAA,CAAA;EACpD,IAAMC,eAAe,GAAGF,cAAc,EAAE,GACpCV,kBAAkB,GAClBpD,GAAG,CAAC0C,iBAAiB,CAAC,CAAA;AAE1BuB,EAAAA,SAAS,CAAC,YAAM;AACd,IAAA,IAAI,CAACtE,SAAS,CAAClB,QAAQ,CAAC,EAAE,OAAA;AAC1B,IAAA,IAAMyF,WAAW,GAAGC,QAAQ,CAAC,UAAA7E,KAAA,EAAsB;AAAA,MAAA,IAAnBpB,EAAE,GAAAoB,KAAA,CAAFpB,EAAE;QAAEsB,QAAQ,GAAAF,KAAA,CAARE,QAAQ,CAAA;AAC1C,MAAA,IAAMwB,GAAG,GAAG,IAAIC,GAAG,CAAC/C,EAAE,EAAEgD,MAAM,CAACrC,QAAQ,CAACsC,IAAI,CAAC,CAAA;MAE7C,OAAOC,EAAE,CAACC,QAAQ,EAAE7B,QAAQ,CAAC,GACzBA,QAAQ,EAAE,GACVX,QAAQ,CAACyC,QAAQ,CAAC8C,QAAQ,CAACpD,GAAG,CAACM,QAAQ,CAAC,CAAA;KAC7C,CAAC,CAAC7C,QAAQ,CAAC,CAAA;AAEZ,IAAA,IAAIkB,SAAS,CAACuE,WAAW,CAAC,EAAE;MAC1BtF,uBAAuB,CACrBsF,WAAW,CAACpE,kBAAkB,GAAGoE,WAAW,CAAChG,EAAE,GAAG,IACpD,CAAC,CAAA;AACH,KAAA;GACD,EAAE,EAAE,CAAC,CAAA;AAEN+F,EAAAA,SAAS,CAAC,YAAM;AACd,IAAA,IAAMI,YAAY,GAAG,SAAfA,YAAYA,GAAS;MACzB,IAAIP,cAAc,EAAE,EAAE,OAAA;MACtBnB,oBAAoB,CAAC,KAAK,CAAC,CAAA;MAC3BU,qBAAqB,CAAC,IAAI,CAAC,CAAA;KAC5B,CAAA;AACDnC,IAAAA,MAAM,CAACoD,gBAAgB,CAAC,QAAQ,EAAED,YAAY,CAAC,CAAA;IAE/C,OAAO,YAAA;AAAA,MAAA,OAAMnD,MAAM,CAACqD,mBAAmB,CAAC,QAAQ,EAAEF,YAAY,CAAC,CAAA;AAAA,KAAA,CAAA;GAChE,EAAE,EAAE,CAAC,CAAA;AAEN,EAAA,IAAMG,YAAY,GAAG,SAAfA,YAAYA,CAAGjF,KAAK,EAAI;IAC5BA,KAAK,CAACW,cAAc,EAAE,CAAA;IACtBtB,uBAAuB,CAAC,IAAI,CAAC,CAAA;IAC7B,IAAM6F,gBAAgB,GAAGC,0BAA0B,CAAC;AAAEjG,MAAAA,QAAQ,EAARA,QAAQ;AAAEI,MAAAA,QAAQ,EAARA,QAAAA;AAAS,KAAC,CAAC,CAAA;AAC3E,IAAA,IAAI4F,gBAAgB,KAAhBA,IAAAA,IAAAA,gBAAgB,eAAhBA,gBAAgB,CAAEvG,EAAE,EAAE;MACxBoF,OAAO,CAACqB,IAAI,CAACC,QAAQ,CAACH,gBAAgB,CAACvG,EAAE,CAAC,CAAC,CAAA;AAC7C,KAAA;GACD,CAAA;AAED,EAAA,IAAMjB,QAAQ,GAAG4H,OAAO,CAAC,YAAM;IAC7B,IAAI,EAAChB,IAAI,KAAA,IAAA,IAAJA,IAAI,KAAA,KAAA,CAAA,IAAJA,IAAI,CAAEiB,SAAS,CAAE,EAAA,OAAOC,iBAAiB,CAAA;IAE9C,IAAM7H,WAAW,GAAGC,WAAW,CAACC,OAAO,CAACC,MAAM,CAAC,CAAC,CAAC,CAAA;IACjD,IAAM2H,OAAO,GAAGC,MAAM,CAAC;AAAEC,MAAAA,IAAI,EAAEhI,WAAAA;AAAY,KAAC,EAAE2G,IAAI,CAACiB,SAAS,CAAC,CAAA;AAE7D,IAAA,OAAOE,OAAO,KAAPA,IAAAA,IAAAA,OAAO,eAAPA,OAAO,CAAEhE,GAAG,GAAG,IAAIC,GAAG,CAAC+D,OAAO,CAAChE,GAAG,CAAC,CAACM,QAAQ,GAAGyD,iBAAiB,CAAA;AACzE,GAAC,EAAE,CAAClB,IAAI,CAAC,CAAC,CAAA;EAEV,IAAMsB,UAAU,GAAGN,OAAO,CACxB,YAAA;AAAA,IAAA,OACEpG,QAAQ,CAAC2G,IAAI,CAAC,UAAAC,IAAI,EAAI;AACpB,MAAA,IAAIjE,EAAE,CAACC,QAAQ,EAAEgE,IAAI,CAAC7F,QAAQ,CAAC,EAAE,OAAO6F,IAAI,CAAC7F,QAAQ,EAAE,CAAA;AACvD,MAAA,IAAMwB,GAAG,GAAG,IAAIC,GAAG,CAACoE,IAAI,CAACnH,EAAE,EAAEgD,MAAM,CAACrC,QAAQ,CAACsC,IAAI,CAAC,CAAA;MAElD,OAAOtC,QAAQ,CAACyC,QAAQ,CAACC,UAAU,CAACP,GAAG,CAACM,QAAQ,CAAC,CAAA;AACnD,KAAC,CAAC,CAAA;AAAA,GAAA,EACJ,CAACzC,QAAQ,CAACyC,QAAQ,EAAE7C,QAAQ,CAC9B,CAAC,CAAA;AAED,EAAA,IAAM6G,wBAAwB,GAC5BtC,oBAAoB,IACpB,CAAAmC,UAAU,aAAVA,UAAU,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAVA,UAAU,CAAEjH,EAAE,MAAK8E,oBAAoB,IACvCjD,UAAU,CAACtB,QAAQ,CAAC,CAAA;AAEtB,EAAA,oBACEgD,IAAA,CAAA,KAAA,EAAA;AACE,IAAA,aAAA,EAAY,mBAAmB;AAC/B1D,IAAAA,SAAS,EAAEK,UAAU,CAAC,kCAAkC,EAAE;MACxD,6CAA6C,EAAE0F,cAAc,EAAE,GAC3DV,kBAAkB,GAClBpD,GAAG,CAAC0C,iBAAiB,CAAA;AAC3B,KAAC,CAAE;AAAA1E,IAAAA,QAAA,gBAEHF,GAAA,CAAA,KAAA,EAAA;AACEC,MAAAA,SAAS,EAAC,mCAAmC;AAC7CI,MAAAA,OAAO,EAAE,SAATA,OAAOA,GAAQ;QACbwE,oBAAoB,CAAC,KAAK,CAAC,CAAA;QAC3B/D,uBAAuB,CAAC,IAAI,CAAC,CAAA;AAC/B,OAAA;KACD,CAAC,eACF6C,IAAA,CAAA,KAAA,EAAA;AACE,MAAA,SAAA,EAAQ,iBAAiB;AACzB,MAAA,aAAA,EAAY,SAAS;AACrB1D,MAAAA,SAAS,EAAEK,UAAU,CACnB,oIAAoI,EACpI;QACE,qCAAqC,EACnCuB,SAAS,CAACqD,oBAAoB,CAAA;AAClC,OACF,CAAE;MAAAhF,QAAA,EAAA,cAEFF,GAAA,CAAClB,QAAM,EAAA;AACCG,QAAAA,UAAU,EAAVA,UAAU;AAAEE,QAAAA,QAAQ,EAARA,QAAQ;QAC1BD,gBAAgB,EAAE,SAAlBA,gBAAgBA,GAAA;UAAA,OAAQ4B,uBAAuB,CAAC,IAAI,CAAC,CAAA;AAAA,SAAA;AAAC,OACvD,CAAC,EACD6D,iBAAiB,iBAChBhB,IAAA,CAAA,KAAA,EAAA;AAAK1D,QAAAA,SAAS,EAAC,8DAA8D;QAAAC,QAAA,EAAA,cAC3EF,GAAA,CAACiE,UAAU,EAAA;AAAChE,UAAAA,SAAS,EAAC,eAAe;AAACiE,UAAAA,KAAK,EAAC,IAAI;AAACuD,UAAAA,MAAM,EAAC,UAAU;UAAAvH,QAAA,EAC/D0F,CAAC,CAAC,oCAAoC,CAAA;AAAC,SAC9B,CAAC,eACb5F,GAAA,CAACiE,UAAU,EAAA;AAAChE,UAAAA,SAAS,EAAC,mBAAmB;AAACiE,UAAAA,KAAK,EAAC,OAAO;AAAAhE,UAAAA,QAAA,EACpDb,WAAW,CAACqI,YAAY,CAACN,IAAAA;AAAI,SACpB,CAAC,CAAA;AAAA,OACV,CACN,EACAI,wBAAwB,gBACvBxH,GAAA,CAAC2H,YAAY,EAAA;AAAOjB,QAAAA,YAAY,EAAZA,YAAY;AAAEvH,QAAAA,QAAQ,EAARA,QAAQ;AAAIwC,QAAAA,OAAO,EAAE0F,UAAAA;AAAW,OAAE,CAAC,gBAErErH,GAAA,CAACU,KAAK,EAAA;AAAOG,QAAAA,eAAe,EAAfA,eAAe;AAAEF,QAAAA,QAAQ,EAARA,QAAQ;AAAEG,QAAAA,uBAAuB,EAAvBA,uBAAAA;AAAuB,OAAK,CACrE,CAAA;AAAA,KACE,CAAC,eACNd,GAAA,CAAC4H,MAAM,EAAA;AACL3H,MAAAA,SAAS,EAAC,kCAAkC;AAC5C,MAAA,SAAA,EAAQ,iCAAiC;AACzC,MAAA,aAAA,EAAY,sBAAsB;MAClCyC,IAAI,EAAE,SAANA,IAAIA,GAAA;AAAA,QAAA,oBAAQ1C,GAAA,CAAC6H,OAAO,EAAA,EAAE,CAAC,CAAA;OAAC;AACxB3D,MAAAA,KAAK,EAAE8B,cAAc,EAAE,GAAG,MAAM,GAAG,WAAY;AAC/C8B,MAAAA,YAAY,EAAE;QACZC,OAAO,EAAE7B,eAAe,GACpBN,CAAC,CAAC,iCAAiC,CAAC,GACpCA,CAAC,CAAC,iCAAiC,CAAC;AACxCoC,QAAAA,QAAQ,EAAE,QAAQ;AAClBC,QAAAA,KAAK,EAAE,CAAC,MAAM,EAAE,GAAG,CAAA;OACnB;AACF5H,MAAAA,OAAO,EAAE,SAATA,OAAOA,GAAQ;QACbkF,qBAAqB,CAAC,CAACD,kBAAkB,CAAC,CAAA;QAC1CT,oBAAoB,CAAC3C,GAAG,CAAC,CAAA;AAC3B,OAAA;AAAE,KACH,CAAC,CAAA;AAAA,GACC,CAAC,CAAA;AAEV;;;;"}
|
package/dist/StatusDropdown.js
CHANGED
|
@@ -1,12 +1,15 @@
|
|
|
1
1
|
import _defineProperty from '@babel/runtime/helpers/defineProperty';
|
|
2
|
-
import { hyphenate, _findBy } from '@bigbinary/neeto-cist';
|
|
2
|
+
import { hyphenate, _findBy, noop } from '@bigbinary/neeto-cist';
|
|
3
3
|
import Dropdown from '@bigbinary/neetoui/Dropdown';
|
|
4
4
|
import Spinner from '@bigbinary/neetoui/Spinner';
|
|
5
5
|
import { memo } from 'react';
|
|
6
6
|
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
7
7
|
import { n } from './inject-css-DmrvuTKK.js';
|
|
8
8
|
import Down from '@bigbinary/neeto-icons/Down';
|
|
9
|
+
import Close from '@bigbinary/neeto-icons/Close';
|
|
9
10
|
import Typography from '@bigbinary/neetoui/Typography';
|
|
11
|
+
import { isNil } from 'ramda';
|
|
12
|
+
import { useTranslation } from 'react-i18next';
|
|
10
13
|
|
|
11
14
|
var NeetoUIMenu = Dropdown.Menu,
|
|
12
15
|
MenuItem = Dropdown.MenuItem;
|
|
@@ -44,20 +47,42 @@ var ICON_SIZE = 16;
|
|
|
44
47
|
|
|
45
48
|
var Target = function Target(_ref) {
|
|
46
49
|
var color = _ref.color,
|
|
50
|
+
value = _ref.value,
|
|
47
51
|
label = _ref.label,
|
|
48
|
-
dataCy = _ref.dataCy
|
|
49
|
-
|
|
52
|
+
dataCy = _ref.dataCy,
|
|
53
|
+
isClearable = _ref.isClearable,
|
|
54
|
+
onClear = _ref.onClear,
|
|
55
|
+
placeholder = _ref.placeholder;
|
|
56
|
+
var _useTranslation = useTranslation(),
|
|
57
|
+
t = _useTranslation.t;
|
|
58
|
+
var targetClassName = "neeto-ui-rounded-sm inline-flex items-center gap-2 cursor-pointer py-0.5 px-2 status-dropdown-target--".concat(color || "waiting");
|
|
59
|
+
var isOptionSelected = !isNil(value);
|
|
50
60
|
return /*#__PURE__*/jsxs("div", {
|
|
51
61
|
className: targetClassName,
|
|
52
62
|
"data-cy": dataCy,
|
|
53
63
|
"data-testid": "status-dropdown",
|
|
54
|
-
children: [/*#__PURE__*/jsx(Typography, {
|
|
64
|
+
children: [isOptionSelected ? /*#__PURE__*/jsx(Typography, {
|
|
55
65
|
className: "inline",
|
|
56
66
|
style: "body2",
|
|
57
67
|
children: label
|
|
58
|
-
})
|
|
59
|
-
className: "
|
|
60
|
-
|
|
68
|
+
}) : /*#__PURE__*/jsx(Typography, {
|
|
69
|
+
className: "neeto-ui-text-gray-600 inline",
|
|
70
|
+
style: "body2",
|
|
71
|
+
children: placeholder || t("neetoMolecules.statusDropdown.placeholder")
|
|
72
|
+
}), /*#__PURE__*/jsxs("div", {
|
|
73
|
+
className: "inline-flex items-center gap-1",
|
|
74
|
+
children: [isClearable && isOptionSelected && /*#__PURE__*/jsx("button", {
|
|
75
|
+
"data-testid": "status-dropdown-clear-button",
|
|
76
|
+
onClick: function onClick(event) {
|
|
77
|
+
onClear();
|
|
78
|
+
event.stopPropagation();
|
|
79
|
+
},
|
|
80
|
+
children: /*#__PURE__*/jsx(Close, {
|
|
81
|
+
size: ICON_SIZE
|
|
82
|
+
})
|
|
83
|
+
}), /*#__PURE__*/jsx(Down, {
|
|
84
|
+
size: ICON_SIZE
|
|
85
|
+
})]
|
|
61
86
|
})]
|
|
62
87
|
});
|
|
63
88
|
};
|
|
@@ -74,9 +99,15 @@ var StatusDropdown = function StatusDropdown(_ref) {
|
|
|
74
99
|
isLoading = _ref$isLoading === void 0 ? false : _ref$isLoading,
|
|
75
100
|
onItemClick = _ref.onItemClick,
|
|
76
101
|
options = _ref.options,
|
|
102
|
+
_ref$placeholder = _ref.placeholder,
|
|
103
|
+
placeholder = _ref$placeholder === void 0 ? null : _ref$placeholder,
|
|
77
104
|
selectedValue = _ref.selectedValue,
|
|
78
105
|
_ref$shouldShowAllOpt = _ref.shouldShowAllOptions,
|
|
79
106
|
shouldShowAllOptions = _ref$shouldShowAllOpt === void 0 ? false : _ref$shouldShowAllOpt,
|
|
107
|
+
_ref$isClearable = _ref.isClearable,
|
|
108
|
+
isClearable = _ref$isClearable === void 0 ? false : _ref$isClearable,
|
|
109
|
+
_ref$onClear = _ref.onClear,
|
|
110
|
+
onClear = _ref$onClear === void 0 ? noop : _ref$onClear,
|
|
80
111
|
_ref$dataCy = _ref.dataCy,
|
|
81
112
|
dataCy = _ref$dataCy === void 0 ? "status-dropdown" : _ref$dataCy;
|
|
82
113
|
var selectedOption = _findBy({
|
|
@@ -89,7 +120,10 @@ var StatusDropdown = function StatusDropdown(_ref) {
|
|
|
89
120
|
return /*#__PURE__*/jsx(Target$1, _objectSpread({
|
|
90
121
|
label: selectedValue
|
|
91
122
|
}, _objectSpread(_objectSpread({}, selectedOption), {}, {
|
|
92
|
-
dataCy: dataCy
|
|
123
|
+
dataCy: dataCy,
|
|
124
|
+
isClearable: isClearable,
|
|
125
|
+
onClear: onClear,
|
|
126
|
+
placeholder: placeholder
|
|
93
127
|
})));
|
|
94
128
|
},
|
|
95
129
|
children: isLoading ? /*#__PURE__*/jsx("div", {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StatusDropdown.js","sources":["../src/components/StatusDropdown/Menu.jsx","../src/components/StatusDropdown/constants.js","../src/components/StatusDropdown/Target.jsx","../src/components/StatusDropdown/index.jsx"],"sourcesContent":["import { memo } from \"react\";\n\nimport { hyphenate } from \"neetocist\";\nimport { Dropdown } from \"neetoui\";\n\nconst { Menu: NeetoUIMenu, MenuItem } = Dropdown;\n\nconst Menu = ({\n onItemClick,\n options,\n shouldShowAllOptions = false,\n hiddenStatuses = [],\n}) => {\n const allowedOptions = shouldShowAllOptions\n ? options\n : options.filter(status => !hiddenStatuses.includes(status.value));\n\n return (\n <NeetoUIMenu data-testid=\"status-dropdown-menu\">\n {allowedOptions?.map(option => (\n <MenuItem.Button\n className={`status-dropdown-item--${option.color}`}\n data-cy={`status-dropdown-item-${hyphenate(option.value)}`}\n data-testid={`status-dropdown-item-${option.value}`}\n key={option.value}\n onClick={() => onItemClick(option)}\n >\n {option.label}\n </MenuItem.Button>\n ))}\n </NeetoUIMenu>\n );\n};\n\nexport default memo(Menu);\n","export const ICON_SIZE = 16;\n","import { memo } from \"react\";\n\nimport { Down } from \"neetoicons\";\nimport { Typography } from \"neetoui\";\n\nimport { ICON_SIZE } from \"./constants\";\n\nconst Target = ({ color, label, dataCy }) => {\n const targetClassName = `neeto-ui-rounded-sm inline-block cursor-pointer py-0.5 px-2 status-dropdown-target--${color}`;\n\n return (\n <div\n className={targetClassName}\n data-cy={dataCy}\n data-testid=\"status-dropdown\"\n >\n <Typography className=\"inline\" style=\"body2\">\n {label}\n </Typography>\n <Down className=\"ml-2 inline\" size={ICON_SIZE} />\n </div>\n );\n};\n\nexport default memo(Target);\n","import { _findBy } from \"neetocist\";\nimport { Dropdown, Spinner } from \"neetoui\";\nimport PropTypes from \"prop-types\";\n\nimport Menu from \"./Menu\";\nimport \"./status-dropdown.scss\";\nimport Target from \"./Target\";\n\nconst StatusDropdown = ({\n disabled = false,\n hiddenStatuses = [],\n isLoading = false,\n onItemClick,\n options,\n selectedValue,\n shouldShowAllOptions = false,\n dataCy = \"status-dropdown\",\n}) => {\n const selectedOption = _findBy({ value: selectedValue }, options);\n\n return (\n <Dropdown\n {...{ disabled }}\n strategy=\"fixed\"\n customTarget={() => (\n <Target label={selectedValue} {...{ ...selectedOption, dataCy }} />\n )}\n >\n {isLoading ? (\n <div className=\"flex w-full items-center justify-center py-8\">\n <Spinner />\n </div>\n ) : (\n <Menu\n {...{ hiddenStatuses, onItemClick, options, shouldShowAllOptions }}\n />\n )}\n </Dropdown>\n );\n};\n\nStatusDropdown.Menu = Menu;\n\nStatusDropdown.propTypes = {\n /**\n * This prop will decide whether the dropdown is disabled or not.\n */\n disabled: PropTypes.bool,\n /**\n * Statuses to be hidden when shouldShowAllOptions is false.\n */\n hiddenStatuses: PropTypes.array,\n /**\n * This prop will decide whether the dropdown is in loading state or not.\n */\n isLoading: PropTypes.bool,\n /**\n * Function to be called when a menu item is clicked.\n */\n onItemClick: PropTypes.func,\n /**\n * The items that should be shown in the dropdown.\n */\n options: PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string,\n value: PropTypes.string,\n color: PropTypes.string,\n })\n ),\n /**\n * The selected value.\n */\n selectedValue: PropTypes.string,\n /**\n * This prop will decide whether all options should be shown or not. If set to false, the items in hiddenStatuses will not be shown.\n */\n shouldShowAllOptions: PropTypes.bool,\n};\n\nexport default StatusDropdown;\n"],"names":["NeetoUIMenu","Dropdown","Menu","MenuItem","_ref","onItemClick","options","_ref$shouldShowAllOpt","shouldShowAllOptions","_ref$hiddenStatuses","hiddenStatuses","allowedOptions","filter","status","includes","value","_jsx","children","map","option","Button","className","concat","color","hyphenate","onClick","label","memo","ICON_SIZE","Target","dataCy","targetClassName","_jsxs","Typography","style","Down","size","StatusDropdown","_ref$disabled","disabled","_ref$isLoading","isLoading","selectedValue","_ref$dataCy","selectedOption","_findBy","strategy","customTarget","_objectSpread","Spinner"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"StatusDropdown.js","sources":["../src/components/StatusDropdown/Menu.jsx","../src/components/StatusDropdown/constants.js","../src/components/StatusDropdown/Target.jsx","../src/components/StatusDropdown/index.jsx"],"sourcesContent":["import { memo } from \"react\";\n\nimport { hyphenate } from \"neetocist\";\nimport { Dropdown } from \"neetoui\";\n\nconst { Menu: NeetoUIMenu, MenuItem } = Dropdown;\n\nconst Menu = ({\n onItemClick,\n options,\n shouldShowAllOptions = false,\n hiddenStatuses = [],\n}) => {\n const allowedOptions = shouldShowAllOptions\n ? options\n : options.filter(status => !hiddenStatuses.includes(status.value));\n\n return (\n <NeetoUIMenu data-testid=\"status-dropdown-menu\">\n {allowedOptions?.map(option => (\n <MenuItem.Button\n className={`status-dropdown-item--${option.color}`}\n data-cy={`status-dropdown-item-${hyphenate(option.value)}`}\n data-testid={`status-dropdown-item-${option.value}`}\n key={option.value}\n onClick={() => onItemClick(option)}\n >\n {option.label}\n </MenuItem.Button>\n ))}\n </NeetoUIMenu>\n );\n};\n\nexport default memo(Menu);\n","export const ICON_SIZE = 16;\n","import { memo } from \"react\";\n\nimport { Down, Close } from \"neetoicons\";\nimport { Typography } from \"neetoui\";\nimport { isNil } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { ICON_SIZE } from \"./constants\";\n\nconst Target = ({\n color,\n value,\n label,\n dataCy,\n isClearable,\n onClear,\n placeholder,\n}) => {\n const { t } = useTranslation();\n const targetClassName = `neeto-ui-rounded-sm inline-flex items-center gap-2 cursor-pointer py-0.5 px-2 status-dropdown-target--${\n color || \"waiting\"\n }`;\n const isOptionSelected = !isNil(value);\n\n return (\n <div\n className={targetClassName}\n data-cy={dataCy}\n data-testid=\"status-dropdown\"\n >\n {isOptionSelected ? (\n <Typography className=\"inline\" style=\"body2\">\n {label}\n </Typography>\n ) : (\n <Typography className=\"neeto-ui-text-gray-600 inline\" style=\"body2\">\n {placeholder || t(\"neetoMolecules.statusDropdown.placeholder\")}\n </Typography>\n )}\n <div className=\"inline-flex items-center gap-1\">\n {isClearable && isOptionSelected && (\n <button\n data-testid=\"status-dropdown-clear-button\"\n onClick={event => {\n onClear();\n event.stopPropagation();\n }}\n >\n <Close size={ICON_SIZE} />\n </button>\n )}\n <Down size={ICON_SIZE} />\n </div>\n </div>\n );\n};\n\nexport default memo(Target);\n","import { _findBy, noop } from \"neetocist\";\nimport { Dropdown, Spinner } from \"neetoui\";\nimport PropTypes from \"prop-types\";\n\nimport Menu from \"./Menu\";\nimport \"./status-dropdown.scss\";\nimport Target from \"./Target\";\n\nconst StatusDropdown = ({\n disabled = false,\n hiddenStatuses = [],\n isLoading = false,\n onItemClick,\n options,\n placeholder = null,\n selectedValue,\n shouldShowAllOptions = false,\n isClearable = false,\n onClear = noop,\n dataCy = \"status-dropdown\",\n}) => {\n const selectedOption = _findBy({ value: selectedValue }, options);\n\n return (\n <Dropdown\n {...{ disabled }}\n strategy=\"fixed\"\n customTarget={() => (\n <Target\n label={selectedValue}\n {...{ ...selectedOption, dataCy, isClearable, onClear, placeholder }}\n />\n )}\n >\n {isLoading ? (\n <div className=\"flex w-full items-center justify-center py-8\">\n <Spinner />\n </div>\n ) : (\n <Menu\n {...{ hiddenStatuses, onItemClick, options, shouldShowAllOptions }}\n />\n )}\n </Dropdown>\n );\n};\n\nStatusDropdown.Menu = Menu;\n\nStatusDropdown.propTypes = {\n /**\n * This prop will decide whether the dropdown is disabled or not.\n */\n disabled: PropTypes.bool,\n /**\n * Statuses to be hidden when shouldShowAllOptions is false.\n */\n hiddenStatuses: PropTypes.array,\n /**\n * This prop will decide whether the dropdown is in loading state or not.\n */\n isLoading: PropTypes.bool,\n /**\n * Function to be called when a menu item is clicked.\n */\n onItemClick: PropTypes.func,\n /**\n * The items that should be shown in the dropdown.\n */\n options: PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string,\n value: PropTypes.string,\n color: PropTypes.string,\n })\n ),\n /**\n * Placeholder for the dropdown.\n */\n placeholder: PropTypes.string,\n /**\n * The selected value.\n */\n selectedValue: PropTypes.string,\n /**\n * This prop will decide whether all options should be shown or not. If set to false, the items in hiddenStatuses will not be shown.\n */\n shouldShowAllOptions: PropTypes.bool,\n /**\n * This prop will decide whether the dropdown is clearable or not.\n */\n isClearable: PropTypes.bool,\n /**\n * Function to be called when the clear button is clicked.\n */\n onClear: PropTypes.func,\n};\n\nexport default StatusDropdown;\n"],"names":["NeetoUIMenu","Dropdown","Menu","MenuItem","_ref","onItemClick","options","_ref$shouldShowAllOpt","shouldShowAllOptions","_ref$hiddenStatuses","hiddenStatuses","allowedOptions","filter","status","includes","value","_jsx","children","map","option","Button","className","concat","color","hyphenate","onClick","label","memo","ICON_SIZE","Target","dataCy","isClearable","onClear","placeholder","_useTranslation","useTranslation","t","targetClassName","isOptionSelected","isNil","_jsxs","Typography","style","event","stopPropagation","Close","size","Down","StatusDropdown","_ref$disabled","disabled","_ref$isLoading","isLoading","_ref$placeholder","selectedValue","_ref$isClearable","_ref$onClear","noop","_ref$dataCy","selectedOption","_findBy","strategy","customTarget","_objectSpread","Spinner"],"mappings":"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"}
|
package/dist/cjs/CalendarView.js
CHANGED
|
@@ -172,6 +172,7 @@ var CustomDatePicker = function CustomDatePicker(_ref) {
|
|
|
172
172
|
children: [/*#__PURE__*/jsxRuntime.jsx(Button, {
|
|
173
173
|
className: "mr-1",
|
|
174
174
|
"data-cy": "neeto-molecules-calendar-view-previous-button",
|
|
175
|
+
"data-testid": "neeto-molecules-calendar-view-previous-button",
|
|
175
176
|
disabled: isDateLessThanStart,
|
|
176
177
|
icon: Left,
|
|
177
178
|
style: "text",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CalendarView.js","sources":["../../src/components/CalendarView/constants.js","../../src/components/CalendarView/utils.js","../../src/components/CalendarView/CustomDatePicker.jsx","../../src/components/CalendarView/Header.jsx","../../src/components/CalendarView/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\n\nconst WEEKLY_VIEW = t(\"neetoMolecules.calendarView.weekly\");\nconst MONTHLY_VIEW = t(\"neetoMolecules.calendarView.monthly\");\nconst DAILY_VIEW = t(\"neetoMolecules.calendarView.daily\");\n\nexport const VIEW_OPTIONS = {\n [DAILY_VIEW]: {\n label: DAILY_VIEW,\n fullCalendarView: \"timeGridDay\",\n picker: \"day\",\n },\n [WEEKLY_VIEW]: {\n label: WEEKLY_VIEW,\n fullCalendarView: \"timeGridWeek\",\n picker: \"week\",\n },\n [MONTHLY_VIEW]: {\n label: MONTHLY_VIEW,\n fullCalendarView: \"dayGridMonth\",\n picker: \"month\",\n },\n};\n","import { dayjs } from \"neetocommons/utils\";\n\nconst getWeekString = ({\n date,\n isStartOfWeek = true,\n showMonth = false,\n showYear = false,\n}) =>\n `${showMonth || isStartOfWeek ? date.format(\"MMM\") : \"\"} ${date.date()} ${\n showYear || !isStartOfWeek ? date.format(\"YYYY\") : \"\"\n }`;\n\nexport const getStartOfWeek = date => dayjs(date).startOf(\"week\");\n\nexport const getEndOfWeek = date => dayjs(date).endOf(\"week\");\n\nexport const getFormattedMonthStr = date => date.format(\"MMM YYYY\");\n\nexport const getFormattedWeekRangeStr = date => {\n const startOfWeek = getStartOfWeek(date);\n const endOfWeek = getEndOfWeek(date);\n\n const shouldShowMonthsSeparately = startOfWeek.month() !== endOfWeek.month();\n const shouldShowYearsSeparately = startOfWeek.year() !== endOfWeek.year();\n\n const startOfWeekStr = getWeekString({\n date: startOfWeek,\n showMonth: shouldShowMonthsSeparately,\n showYear: shouldShowYearsSeparately,\n });\n\n const endOfWeekStr = getWeekString({\n date: endOfWeek,\n isStartOfWeek: false,\n showMonth: shouldShowMonthsSeparately,\n showYear: shouldShowYearsSeparately,\n });\n\n return `${startOfWeekStr} - ${endOfWeekStr}`;\n};\n\nexport const getFormattedDayStr = date => date.format(\"DD MMM YYYY\");\n\nexport const getFormattedRangeStr = (date, picker) => {\n const formatFunctions = {\n month: getFormattedMonthStr,\n week: getFormattedWeekRangeStr,\n day: getFormattedDayStr,\n };\n const selectedFormatter = formatFunctions[picker];\n\n return selectedFormatter(date);\n};\n\nexport const mergeRefs =\n (...refs) =>\n node =>\n refs\n .filter(Boolean)\n .forEach(ref =>\n typeof ref === \"function\" ? ref(node) : (ref.current = node)\n );\n","import { useRef, useState } from \"react\";\n\nimport { dayjs } from \"neetocommons/utils\";\nimport { Down, Left, Right } from \"neetoicons\";\nimport { Typography, Button, DatePicker } from \"neetoui\";\n\nimport { getFormattedRangeStr } from \"./utils\";\n\nconst CustomDatePicker = ({\n selectedDate,\n setSelectedDate,\n picker,\n validDates,\n ...otherProps\n}) => {\n const [isOpen, setIsOpen] = useState(false);\n\n const datePickerRef = useRef(null);\n const buttonRef = useRef(null);\n\n const selectedRangeStr = getFormattedRangeStr(selectedDate, picker);\n\n const { start, end } = validDates;\n\n const isDateLessThanStart =\n start && selectedDate.isSameOrBefore(dayjs(start), picker);\n\n const isDateGreaterThanEnd =\n end && selectedDate.isSameOrAfter(dayjs(end), picker);\n\n const onPrevious = () =>\n setSelectedDate(selectedDate => selectedDate.subtract(1, picker));\n\n const onNext = () =>\n setSelectedDate(selectedDate => selectedDate.add(1, picker));\n\n const onToday = () => setSelectedDate(dayjs());\n\n const getDisabledDates = date => {\n if (!date) return false;\n\n return (start && date <= start) || (end && date >= end);\n };\n\n const handleButtonMouseDown = e => {\n if (!(buttonRef.current && buttonRef.current.contains(e.target))) return;\n e.stopPropagation();\n if (isOpen) datePickerRef.current.focus();\n };\n\n return (\n <div className=\"flex items-center justify-start space-x-4\">\n <Button\n data-cy=\"neeto-molecules-calendar-view-today-button\"\n label=\"Today\"\n style=\"secondary\"\n onClick={onToday}\n />\n <div className=\"flex\">\n <Button\n className=\"mr-1\"\n data-cy=\"neeto-molecules-calendar-view-previous-button\"\n disabled={isDateLessThanStart}\n icon={Left}\n style=\"text\"\n onClick={onPrevious}\n />\n <Button\n data-cy=\"neeto-molecules-calendar-view-date-picker-button\"\n icon={Down}\n ref={buttonRef}\n style=\"text\"\n onClick={() => setIsOpen(isOpen => !isOpen)}\n onMouseDown={handleButtonMouseDown}\n >\n <Typography\n data-cy=\"neeto-molecules-calendar-view-date-picker-button-label\"\n style=\"h5\"\n >\n {selectedRangeStr}\n </Typography>\n </Button>\n <DatePicker\n className=\"invisible w-0 px-0\"\n defaultValue={selectedDate}\n disabledDate={getDisabledDates}\n open={isOpen}\n placement=\"topRight\"\n ref={datePickerRef}\n value={selectedDate}\n onChange={setSelectedDate}\n onOpenChange={setIsOpen}\n {...{ picker, ...otherProps }}\n />\n <Button\n className=\"ml-1\"\n data-cy=\"neeto-molecules-calendar-view-next-button\"\n disabled={isDateGreaterThanEnd}\n icon={Right}\n style=\"text\"\n onClick={onNext}\n />\n </div>\n </div>\n );\n};\n\nexport default CustomDatePicker;\n","import { useEffect } from \"react\";\n\nimport { capitalize } from \"neetocist\";\nimport { Dropdown } from \"neetoui\";\nimport { prop, values } from \"ramda\";\n\nimport CustomDatePicker from \"./CustomDatePicker\";\n\nconst Header = ({\n calendarRef,\n selectedView,\n setSelectedView,\n setSelectedDate,\n selectedDate,\n calendarViewOptions,\n validDates,\n}) => {\n const { Menu, MenuItem } = Dropdown;\n\n const handleViewSelection = option => {\n setSelectedView(option);\n calendarRef.current.calendar.changeView(option.fullCalendarView);\n };\n\n const navigateToSelectedDate = () =>\n calendarRef?.current?.calendar?.gotoDate(selectedDate.format(\"YYYY-MM-DD\"));\n\n useEffect(() => {\n setTimeout(navigateToSelectedDate);\n }, [selectedDate]);\n\n return (\n <div className=\"flex space-x-4\">\n <CustomDatePicker\n {...{ selectedDate, setSelectedDate, validDates }}\n getPopupContainer={prop(\"parentNode\")}\n picker={selectedView.picker}\n />\n {Object.keys(calendarViewOptions).length > 1 && (\n <Dropdown\n buttonProps={{ \"data-testid\": \"calendar-view-dropdown\" }}\n buttonStyle=\"secondary\"\n label={capitalize(selectedView.label)}\n >\n <Menu>\n {values(calendarViewOptions).map((option, idx) => (\n <MenuItem.Button\n isActive={selectedView === option}\n key={idx}\n onClick={() => handleViewSelection(option)}\n >\n {capitalize(option.label)}\n </MenuItem.Button>\n ))}\n </Menu>\n </Dropdown>\n )}\n </div>\n );\n};\n\nexport default Header;\n","import { forwardRef, useRef, useState } from \"react\";\n\nimport dayGridPlugin from \"@fullcalendar/daygrid\";\nimport interactionPlugin from \"@fullcalendar/interaction\";\nimport FullCalendar from \"@fullcalendar/react\";\nimport timeGridPlugin from \"@fullcalendar/timegrid\";\nimport { noop } from \"neetocist\";\nimport { dayjs } from \"neetocommons/utils\";\nimport { Typography } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { prop } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport SubHeader from \"components/SubHeader\";\n\nimport \"./calendar-view.scss\";\nimport { VIEW_OPTIONS } from \"./constants\";\nimport Header from \"./Header\";\nimport { mergeRefs } from \"./utils\";\n\nconst CalendarView = forwardRef(\n (\n {\n viewOptions = VIEW_OPTIONS,\n events = [],\n handleDateClick = noop,\n handleEventClick = noop,\n eventClassNames = \"\",\n dayCellClassNames = \"\",\n validDates = { start: null, end: null },\n onDateChange = noop,\n dayMaxEvents,\n eventMaxStack,\n hideHeader = false,\n ...otherProps\n },\n ref\n ) => {\n const calendarViewOptions = viewOptions || VIEW_OPTIONS;\n\n const defaultView =\n Object.values(calendarViewOptions).find(prop(\"default\")) ||\n calendarViewOptions[Object.keys(calendarViewOptions)[0]];\n\n const [selectedView, setSelectedView] = useState(defaultView);\n\n const [selectedDate, setSelectedDate] = useState(dayjs());\n\n const { t } = useTranslation();\n\n const handleDateChange = date => {\n setSelectedDate(prevDate => {\n const newDate = typeof date === \"function\" ? date(prevDate) : date;\n onDateChange(newDate);\n\n return newDate;\n });\n };\n\n const calendarRef = useRef();\n\n return (\n <div className=\"flex-col\" data-testid=\"calendar-view\">\n {!hideHeader && (\n <SubHeader\n leftActionBlock={\n <Typography style=\"h2\">\n {selectedDate.format(\"MMMM, YYYY\")}\n </Typography>\n }\n rightActionBlock={\n <Header\n {...{\n calendarRef,\n calendarViewOptions,\n selectedDate,\n selectedView,\n setSelectedDate,\n setSelectedView,\n validDates,\n }}\n setSelectedDate={handleDateChange}\n />\n }\n />\n )}\n <FullCalendar\n expandRows\n allDayText={t(\"neetoMolecules.calendarView.allDay\")}\n dateClick={handleDateClick}\n dayHeaderClassNames=\"p-2\"\n displayEventTime={false}\n eventClick={handleEventClick}\n headerToolbar={false}\n height=\"auto\"\n initialView={selectedView.fullCalendarView}\n plugins={[dayGridPlugin, timeGridPlugin, interactionPlugin]}\n ref={mergeRefs(ref, calendarRef)}\n {...{\n dayCellClassNames,\n dayMaxEvents,\n eventClassNames,\n eventMaxStack,\n events,\n ...otherProps,\n }}\n />\n </div>\n );\n }\n);\n\nCalendarView.displayName = \"CalendarView\";\n\nCalendarView.propTypes = {\n /**\n * Views to be listed in the dropdown. The default selected view can be set by adding `default: true` to the required view.\n */\n viewOptions: PropTypes.object,\n /**\n * An array of event objects that will be displayed on the calendar.\n */\n events: PropTypes.array,\n /**\n * Function to be triggered when the user clicks on a date or a time.\n */\n handleDateClick: PropTypes.func,\n /**\n * Function to be triggered when the user clicks an event.\n */\n handleEventClick: PropTypes.func,\n /**\n * A className input for adding classNames to the outermost event element.\n */\n eventClassNames: PropTypes.string,\n /**\n * A className input for adding classNames to the <td> cell.\n */\n dayCellClassNames: PropTypes.string,\n /**\n * In dayGrid view, the max number of events within a given day, not counting the +more link.\n */\n dayMaxEvents: PropTypes.number,\n /**\n * For timeline view, the maximum number of events that stack top-to-bottom. For timeGrid view, the maximum number of events that stack left-to-right.\n */\n eventMaxStack: PropTypes.number,\n /**\n * This function will be triggered with the new selected date passed as argument\n */\n onDateChange: PropTypes.func,\n /**\n * An object containing the start and end dates in which the range given is the valid range of selectable dates.\n */\n validDates: PropTypes.shape({\n start: PropTypes.instanceOf(Date),\n end: PropTypes.instanceOf(Date),\n }),\n /**\n * This prop can be used to hide the header\n */\n hideHeader: PropTypes.bool,\n};\n\nexport default CalendarView;\n"],"names":["WEEKLY_VIEW","t","MONTHLY_VIEW","DAILY_VIEW","VIEW_OPTIONS","_defineProperty","label","fullCalendarView","picker","getWeekString","_ref","date","_ref$isStartOfWeek","isStartOfWeek","_ref$showMonth","showMonth","_ref$showYear","showYear","concat","format","getStartOfWeek","dayjs","startOf","getEndOfWeek","endOf","getFormattedMonthStr","getFormattedWeekRangeStr","startOfWeek","endOfWeek","shouldShowMonthsSeparately","month","shouldShowYearsSeparately","year","startOfWeekStr","endOfWeekStr","getFormattedDayStr","getFormattedRangeStr","formatFunctions","week","day","selectedFormatter","mergeRefs","_len","arguments","length","refs","Array","_key","node","filter","Boolean","forEach","ref","current","CustomDatePicker","selectedDate","setSelectedDate","validDates","otherProps","_objectWithoutProperties","_excluded","_useState","useState","_useState2","_slicedToArray","isOpen","setIsOpen","datePickerRef","useRef","buttonRef","selectedRangeStr","start","end","isDateLessThanStart","isSameOrBefore","isDateGreaterThanEnd","isSameOrAfter","onPrevious","subtract","onNext","add","onToday","getDisabledDates","handleButtonMouseDown","e","contains","target","stopPropagation","focus","_jsxs","className","children","_jsx","Button","style","onClick","disabled","icon","Left","Down","onMouseDown","Typography","DatePicker","_objectSpread","defaultValue","disabledDate","open","placement","value","onChange","onOpenChange","Right","Header","calendarRef","selectedView","setSelectedView","calendarViewOptions","Menu","Dropdown","MenuItem","handleViewSelection","option","calendar","changeView","navigateToSelectedDate","_calendarRef$current","gotoDate","useEffect","setTimeout","getPopupContainer","prop","Object","keys","buttonProps","buttonStyle","capitalize","values","map","idx","isActive","CalendarView","forwardRef","_ref$viewOptions","viewOptions","_ref$events","events","_ref$handleDateClick","handleDateClick","noop","_ref$handleEventClick","handleEventClick","_ref$eventClassNames","eventClassNames","_ref$dayCellClassName","dayCellClassNames","_ref$validDates","_ref$onDateChange","onDateChange","dayMaxEvents","eventMaxStack","_ref$hideHeader","hideHeader","defaultView","find","_useState3","_useState4","_useTranslation","useTranslation","handleDateChange","prevDate","newDate","SubHeader","leftActionBlock","rightActionBlock","FullCalendar","expandRows","allDayText","dateClick","dayHeaderClassNames","displayEventTime","eventClick","headerToolbar","height","initialView","plugins","dayGridPlugin","timeGridPlugin","interactionPlugin","displayName"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"CalendarView.js","sources":["../../src/components/CalendarView/constants.js","../../src/components/CalendarView/utils.js","../../src/components/CalendarView/CustomDatePicker.jsx","../../src/components/CalendarView/Header.jsx","../../src/components/CalendarView/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\n\nconst WEEKLY_VIEW = t(\"neetoMolecules.calendarView.weekly\");\nconst MONTHLY_VIEW = t(\"neetoMolecules.calendarView.monthly\");\nconst DAILY_VIEW = t(\"neetoMolecules.calendarView.daily\");\n\nexport const VIEW_OPTIONS = {\n [DAILY_VIEW]: {\n label: DAILY_VIEW,\n fullCalendarView: \"timeGridDay\",\n picker: \"day\",\n },\n [WEEKLY_VIEW]: {\n label: WEEKLY_VIEW,\n fullCalendarView: \"timeGridWeek\",\n picker: \"week\",\n },\n [MONTHLY_VIEW]: {\n label: MONTHLY_VIEW,\n fullCalendarView: \"dayGridMonth\",\n picker: \"month\",\n },\n};\n","import { dayjs } from \"neetocommons/utils\";\n\nconst getWeekString = ({\n date,\n isStartOfWeek = true,\n showMonth = false,\n showYear = false,\n}) =>\n `${showMonth || isStartOfWeek ? date.format(\"MMM\") : \"\"} ${date.date()} ${\n showYear || !isStartOfWeek ? date.format(\"YYYY\") : \"\"\n }`;\n\nexport const getStartOfWeek = date => dayjs(date).startOf(\"week\");\n\nexport const getEndOfWeek = date => dayjs(date).endOf(\"week\");\n\nexport const getFormattedMonthStr = date => date.format(\"MMM YYYY\");\n\nexport const getFormattedWeekRangeStr = date => {\n const startOfWeek = getStartOfWeek(date);\n const endOfWeek = getEndOfWeek(date);\n\n const shouldShowMonthsSeparately = startOfWeek.month() !== endOfWeek.month();\n const shouldShowYearsSeparately = startOfWeek.year() !== endOfWeek.year();\n\n const startOfWeekStr = getWeekString({\n date: startOfWeek,\n showMonth: shouldShowMonthsSeparately,\n showYear: shouldShowYearsSeparately,\n });\n\n const endOfWeekStr = getWeekString({\n date: endOfWeek,\n isStartOfWeek: false,\n showMonth: shouldShowMonthsSeparately,\n showYear: shouldShowYearsSeparately,\n });\n\n return `${startOfWeekStr} - ${endOfWeekStr}`;\n};\n\nexport const getFormattedDayStr = date => date.format(\"DD MMM YYYY\");\n\nexport const getFormattedRangeStr = (date, picker) => {\n const formatFunctions = {\n month: getFormattedMonthStr,\n week: getFormattedWeekRangeStr,\n day: getFormattedDayStr,\n };\n const selectedFormatter = formatFunctions[picker];\n\n return selectedFormatter(date);\n};\n\nexport const mergeRefs =\n (...refs) =>\n node =>\n refs\n .filter(Boolean)\n .forEach(ref =>\n typeof ref === \"function\" ? ref(node) : (ref.current = node)\n );\n","import { useRef, useState } from \"react\";\n\nimport { dayjs } from \"neetocommons/utils\";\nimport { Down, Left, Right } from \"neetoicons\";\nimport { Typography, Button, DatePicker } from \"neetoui\";\n\nimport { getFormattedRangeStr } from \"./utils\";\n\nconst CustomDatePicker = ({\n selectedDate,\n setSelectedDate,\n picker,\n validDates,\n ...otherProps\n}) => {\n const [isOpen, setIsOpen] = useState(false);\n\n const datePickerRef = useRef(null);\n const buttonRef = useRef(null);\n\n const selectedRangeStr = getFormattedRangeStr(selectedDate, picker);\n\n const { start, end } = validDates;\n\n const isDateLessThanStart =\n start && selectedDate.isSameOrBefore(dayjs(start), picker);\n\n const isDateGreaterThanEnd =\n end && selectedDate.isSameOrAfter(dayjs(end), picker);\n\n const onPrevious = () =>\n setSelectedDate(selectedDate => selectedDate.subtract(1, picker));\n\n const onNext = () =>\n setSelectedDate(selectedDate => selectedDate.add(1, picker));\n\n const onToday = () => setSelectedDate(dayjs());\n\n const getDisabledDates = date => {\n if (!date) return false;\n\n return (start && date <= start) || (end && date >= end);\n };\n\n const handleButtonMouseDown = e => {\n if (!(buttonRef.current && buttonRef.current.contains(e.target))) return;\n e.stopPropagation();\n if (isOpen) datePickerRef.current.focus();\n };\n\n return (\n <div className=\"flex items-center justify-start space-x-4\">\n <Button\n data-cy=\"neeto-molecules-calendar-view-today-button\"\n label=\"Today\"\n style=\"secondary\"\n onClick={onToday}\n />\n <div className=\"flex\">\n <Button\n className=\"mr-1\"\n data-cy=\"neeto-molecules-calendar-view-previous-button\"\n data-testid=\"neeto-molecules-calendar-view-previous-button\"\n disabled={isDateLessThanStart}\n icon={Left}\n style=\"text\"\n onClick={onPrevious}\n />\n <Button\n data-cy=\"neeto-molecules-calendar-view-date-picker-button\"\n icon={Down}\n ref={buttonRef}\n style=\"text\"\n onClick={() => setIsOpen(isOpen => !isOpen)}\n onMouseDown={handleButtonMouseDown}\n >\n <Typography\n data-cy=\"neeto-molecules-calendar-view-date-picker-button-label\"\n style=\"h5\"\n >\n {selectedRangeStr}\n </Typography>\n </Button>\n <DatePicker\n className=\"invisible w-0 px-0\"\n defaultValue={selectedDate}\n disabledDate={getDisabledDates}\n open={isOpen}\n placement=\"topRight\"\n ref={datePickerRef}\n value={selectedDate}\n onChange={setSelectedDate}\n onOpenChange={setIsOpen}\n {...{ picker, ...otherProps }}\n />\n <Button\n className=\"ml-1\"\n data-cy=\"neeto-molecules-calendar-view-next-button\"\n disabled={isDateGreaterThanEnd}\n icon={Right}\n style=\"text\"\n onClick={onNext}\n />\n </div>\n </div>\n );\n};\n\nexport default CustomDatePicker;\n","import { useEffect } from \"react\";\n\nimport { capitalize } from \"neetocist\";\nimport { Dropdown } from \"neetoui\";\nimport { prop, values } from \"ramda\";\n\nimport CustomDatePicker from \"./CustomDatePicker\";\n\nconst Header = ({\n calendarRef,\n selectedView,\n setSelectedView,\n setSelectedDate,\n selectedDate,\n calendarViewOptions,\n validDates,\n}) => {\n const { Menu, MenuItem } = Dropdown;\n\n const handleViewSelection = option => {\n setSelectedView(option);\n calendarRef.current.calendar.changeView(option.fullCalendarView);\n };\n\n const navigateToSelectedDate = () =>\n calendarRef?.current?.calendar?.gotoDate(selectedDate.format(\"YYYY-MM-DD\"));\n\n useEffect(() => {\n setTimeout(navigateToSelectedDate);\n }, [selectedDate]);\n\n return (\n <div className=\"flex space-x-4\">\n <CustomDatePicker\n {...{ selectedDate, setSelectedDate, validDates }}\n getPopupContainer={prop(\"parentNode\")}\n picker={selectedView.picker}\n />\n {Object.keys(calendarViewOptions).length > 1 && (\n <Dropdown\n buttonProps={{ \"data-testid\": \"calendar-view-dropdown\" }}\n buttonStyle=\"secondary\"\n label={capitalize(selectedView.label)}\n >\n <Menu>\n {values(calendarViewOptions).map((option, idx) => (\n <MenuItem.Button\n isActive={selectedView === option}\n key={idx}\n onClick={() => handleViewSelection(option)}\n >\n {capitalize(option.label)}\n </MenuItem.Button>\n ))}\n </Menu>\n </Dropdown>\n )}\n </div>\n );\n};\n\nexport default Header;\n","import { forwardRef, useRef, useState } from \"react\";\n\nimport dayGridPlugin from \"@fullcalendar/daygrid\";\nimport interactionPlugin from \"@fullcalendar/interaction\";\nimport FullCalendar from \"@fullcalendar/react\";\nimport timeGridPlugin from \"@fullcalendar/timegrid\";\nimport { noop } from \"neetocist\";\nimport { dayjs } from \"neetocommons/utils\";\nimport { Typography } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { prop } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport SubHeader from \"components/SubHeader\";\n\nimport \"./calendar-view.scss\";\nimport { VIEW_OPTIONS } from \"./constants\";\nimport Header from \"./Header\";\nimport { mergeRefs } from \"./utils\";\n\nconst CalendarView = forwardRef(\n (\n {\n viewOptions = VIEW_OPTIONS,\n events = [],\n handleDateClick = noop,\n handleEventClick = noop,\n eventClassNames = \"\",\n dayCellClassNames = \"\",\n validDates = { start: null, end: null },\n onDateChange = noop,\n dayMaxEvents,\n eventMaxStack,\n hideHeader = false,\n ...otherProps\n },\n ref\n ) => {\n const calendarViewOptions = viewOptions || VIEW_OPTIONS;\n\n const defaultView =\n Object.values(calendarViewOptions).find(prop(\"default\")) ||\n calendarViewOptions[Object.keys(calendarViewOptions)[0]];\n\n const [selectedView, setSelectedView] = useState(defaultView);\n\n const [selectedDate, setSelectedDate] = useState(dayjs());\n\n const { t } = useTranslation();\n\n const handleDateChange = date => {\n setSelectedDate(prevDate => {\n const newDate = typeof date === \"function\" ? date(prevDate) : date;\n onDateChange(newDate);\n\n return newDate;\n });\n };\n\n const calendarRef = useRef();\n\n return (\n <div className=\"flex-col\" data-testid=\"calendar-view\">\n {!hideHeader && (\n <SubHeader\n leftActionBlock={\n <Typography style=\"h2\">\n {selectedDate.format(\"MMMM, YYYY\")}\n </Typography>\n }\n rightActionBlock={\n <Header\n {...{\n calendarRef,\n calendarViewOptions,\n selectedDate,\n selectedView,\n setSelectedDate,\n setSelectedView,\n validDates,\n }}\n setSelectedDate={handleDateChange}\n />\n }\n />\n )}\n <FullCalendar\n expandRows\n allDayText={t(\"neetoMolecules.calendarView.allDay\")}\n dateClick={handleDateClick}\n dayHeaderClassNames=\"p-2\"\n displayEventTime={false}\n eventClick={handleEventClick}\n headerToolbar={false}\n height=\"auto\"\n initialView={selectedView.fullCalendarView}\n plugins={[dayGridPlugin, timeGridPlugin, interactionPlugin]}\n ref={mergeRefs(ref, calendarRef)}\n {...{\n dayCellClassNames,\n dayMaxEvents,\n eventClassNames,\n eventMaxStack,\n events,\n ...otherProps,\n }}\n />\n </div>\n );\n }\n);\n\nCalendarView.displayName = \"CalendarView\";\n\nCalendarView.propTypes = {\n /**\n * Views to be listed in the dropdown. The default selected view can be set by adding `default: true` to the required view.\n */\n viewOptions: PropTypes.object,\n /**\n * An array of event objects that will be displayed on the calendar.\n */\n events: PropTypes.array,\n /**\n * Function to be triggered when the user clicks on a date or a time.\n */\n handleDateClick: PropTypes.func,\n /**\n * Function to be triggered when the user clicks an event.\n */\n handleEventClick: PropTypes.func,\n /**\n * A className input for adding classNames to the outermost event element.\n */\n eventClassNames: PropTypes.string,\n /**\n * A className input for adding classNames to the <td> cell.\n */\n dayCellClassNames: PropTypes.string,\n /**\n * In dayGrid view, the max number of events within a given day, not counting the +more link.\n */\n dayMaxEvents: PropTypes.number,\n /**\n * For timeline view, the maximum number of events that stack top-to-bottom. For timeGrid view, the maximum number of events that stack left-to-right.\n */\n eventMaxStack: PropTypes.number,\n /**\n * This function will be triggered with the new selected date passed as argument\n */\n onDateChange: PropTypes.func,\n /**\n * An object containing the start and end dates in which the range given is the valid range of selectable dates.\n */\n validDates: PropTypes.shape({\n start: PropTypes.instanceOf(Date),\n end: PropTypes.instanceOf(Date),\n }),\n /**\n * This prop can be used to hide the header\n */\n hideHeader: PropTypes.bool,\n};\n\nexport default CalendarView;\n"],"names":["WEEKLY_VIEW","t","MONTHLY_VIEW","DAILY_VIEW","VIEW_OPTIONS","_defineProperty","label","fullCalendarView","picker","getWeekString","_ref","date","_ref$isStartOfWeek","isStartOfWeek","_ref$showMonth","showMonth","_ref$showYear","showYear","concat","format","getStartOfWeek","dayjs","startOf","getEndOfWeek","endOf","getFormattedMonthStr","getFormattedWeekRangeStr","startOfWeek","endOfWeek","shouldShowMonthsSeparately","month","shouldShowYearsSeparately","year","startOfWeekStr","endOfWeekStr","getFormattedDayStr","getFormattedRangeStr","formatFunctions","week","day","selectedFormatter","mergeRefs","_len","arguments","length","refs","Array","_key","node","filter","Boolean","forEach","ref","current","CustomDatePicker","selectedDate","setSelectedDate","validDates","otherProps","_objectWithoutProperties","_excluded","_useState","useState","_useState2","_slicedToArray","isOpen","setIsOpen","datePickerRef","useRef","buttonRef","selectedRangeStr","start","end","isDateLessThanStart","isSameOrBefore","isDateGreaterThanEnd","isSameOrAfter","onPrevious","subtract","onNext","add","onToday","getDisabledDates","handleButtonMouseDown","e","contains","target","stopPropagation","focus","_jsxs","className","children","_jsx","Button","style","onClick","disabled","icon","Left","Down","onMouseDown","Typography","DatePicker","_objectSpread","defaultValue","disabledDate","open","placement","value","onChange","onOpenChange","Right","Header","calendarRef","selectedView","setSelectedView","calendarViewOptions","Menu","Dropdown","MenuItem","handleViewSelection","option","calendar","changeView","navigateToSelectedDate","_calendarRef$current","gotoDate","useEffect","setTimeout","getPopupContainer","prop","Object","keys","buttonProps","buttonStyle","capitalize","values","map","idx","isActive","CalendarView","forwardRef","_ref$viewOptions","viewOptions","_ref$events","events","_ref$handleDateClick","handleDateClick","noop","_ref$handleEventClick","handleEventClick","_ref$eventClassNames","eventClassNames","_ref$dayCellClassName","dayCellClassNames","_ref$validDates","_ref$onDateChange","onDateChange","dayMaxEvents","eventMaxStack","_ref$hideHeader","hideHeader","defaultView","find","_useState3","_useState4","_useTranslation","useTranslation","handleDateChange","prevDate","newDate","SubHeader","leftActionBlock","rightActionBlock","FullCalendar","expandRows","allDayText","dateClick","dayHeaderClassNames","displayEventTime","eventClick","headerToolbar","height","initialView","plugins","dayGridPlugin","timeGridPlugin","interactionPlugin","displayName"],"mappings":"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"}
|
package/dist/cjs/Sidebar.js
CHANGED
package/dist/cjs/Sidebar.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Sidebar.js","sources":["../../src/components/Sidebar/Components/Header.jsx","../../src/components/Sidebar/Components/Links/index.jsx","../../src/components/Sidebar/index.jsx"],"sourcesContent":["import { memo } from \"react\";\n\nimport classnames from \"classnames\";\nimport { capitalize } from \"neetocist\";\nimport { Neeto } from \"neetoicons/typeface-logos\";\nimport * as ProductTypefaceLogos from \"neetoicons/typeface-logos\";\nimport { Link } from \"react-router-dom\";\n\nconst Header = ({ customLogo, clearSettingsNav, homePath }) => {\n const productName = globalProps.appName.substr(5);\n const logoName = `Neeto${capitalize(productName.toLowerCase())}`;\n const ProductTypefaceLogo = ProductTypefaceLogos[logoName] ?? Neeto;\n const LogoComponent = customLogo ?? ProductTypefaceLogo;\n\n return (\n <div\n className=\"neeto-molecules-sidebar__header neeto-molecules-sidebar__no-shrinkable\"\n data-cy=\"sidebar-info\"\n >\n <Link\n className=\"neeto-molecules-sidebar__logo neeto-ui-w-full\"\n to={homePath}\n onClick={clearSettingsNav}\n >\n <LogoComponent\n className={classnames({\n \"neeto-molecules-sidebar__logo\": !customLogo,\n })}\n />\n </Link>\n </div>\n );\n};\n\nexport default memo(Header);\n","import { Fragment, useState } from \"react\";\n\nimport classnames from \"classnames\";\nimport { hyphenate, isNotEmpty, isPresent } from \"neetocist\";\nimport { Down } from \"neetoicons\";\nimport { Typography } from \"neetoui\";\nimport { is, not } from \"ramda\";\nimport { useLocation } from \"react-router-dom\";\n\nimport CheckPointNavLinks from \"./CheckPointNavLink\";\nimport Items from \"./Items\";\n\nimport { filterByPermissions } from \"../../utils\";\n\nconst renderCount = count => (count > 999 ? \"999+\" : count);\n\nconst Links = ({\n navLinks,\n isCountsLoading: isCountsLoadingDeprecated,\n setSelectedNavLinkRoute,\n}) => {\n const location = useLocation();\n const [isActiveLinkExpanded, setIsActiveLinkExpanded] = useState(true);\n\n const handleNavLinkClick = ({ event, isActive, navLink }) => {\n const isExpandable =\n isPresent(navLink.items) || isPresent(navLink.component);\n if (!isExpandable) return;\n\n if (navLink.isConfigureNavLink && isNotEmpty(navLink.items)) {\n setSelectedNavLinkRoute(navLink.to);\n }\n\n if (isActive()) {\n setIsActiveLinkExpanded(not);\n event.preventDefault();\n\n return;\n }\n\n setIsActiveLinkExpanded(true);\n };\n\n return (\n <div className=\"neeto-molecules-sidebar__links neeto-molecules-sidebar__no-shrinkable\">\n {navLinks.filter(filterByPermissions).map((navLink, index) => {\n const {\n label,\n to,\n icon,\n items,\n isConfigureNavLink,\n isCountsLoading = false,\n count = null,\n component: Component,\n ...otherProps\n } = navLink;\n const IconSVG = icon;\n const url = new URL(to, window.location.href);\n const isActive = () =>\n is(Function, otherProps.isActive)\n ? otherProps.isActive()\n : location.pathname.startsWith(url.pathname);\n\n const isExpandable = items || Component;\n const isMenuExpanded =\n isActive() && isActiveLinkExpanded && !isCountsLoadingDeprecated;\n\n return (\n <Fragment key={navLink.key || index}>\n <CheckPointNavLinks\n activeClassName=\"active\"\n className=\"neeto-ui-flex neeto-ui-items-center neeto-ui-no-underline neeto-ui-select-none neeto-molecules-sidebar__link\"\n data-testid={`navlink-${hyphenate(label)}`}\n onClick={event =>\n handleNavLinkClick({ event, isActive, navLink })\n }\n {...{ isActive, to, ...otherProps }}\n >\n {icon && (\n <span\n className=\"neeto-molecules-sidebar__link-icon\"\n data-testid={label}\n >\n <IconSVG />\n {isPresent(count) && !isCountsLoading && (\n <span className=\"neeto-molecules-sidebar__link-unread-count\">\n {renderCount(count)}\n </span>\n )}\n </span>\n )}\n <Typography\n className=\"neeto-molecules-sidebar__link-label neeto-ui-flex-grow flex items-center gap-1\"\n component=\"span\"\n style=\"body2\"\n >\n {label}\n </Typography>\n {isExpandable && !isConfigureNavLink && (\n <span\n className={classnames(\n \"neeto-molecules-sidebar__link-icon neeto-molecules-sidebar__link-icon--caret\",\n {\n \"neeto-molecules-sidebar__link-icon--rotate\":\n isMenuExpanded,\n }\n )}\n >\n <Down size={16} />\n </span>\n )}\n </CheckPointNavLinks>\n {isExpandable && !isConfigureNavLink && isMenuExpanded && (\n <>\n {items && (\n <Items {...{ isCountsLoading, items, ...otherProps }} />\n )}\n {Component && <Component {...{ navLink }} />}\n </>\n )}\n </Fragment>\n );\n })}\n </div>\n );\n};\n\nexport default Links;\n","import { useEffect, useMemo, useState } from \"react\";\n\nimport classnames from \"classnames\";\nimport { isPresent, isNotEmpty, findBy } from \"neetocist\";\nimport useFetchNeetoApps from \"neetocommons/react-utils/useFetchNeetoApps\";\nimport useLocalStorage from \"neetocommons/react-utils/useLocalStorage\";\nimport { buildUrl } from \"neetocommons/utils\";\nimport { Button, Typography } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { findLast, is, not } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport { useLocation, useHistory } from \"react-router-dom\";\n\nimport Chevron from \"./Components/Chevron\";\nimport Header from \"./Components/Header\";\nimport Links from \"./Components/Links\";\nimport SelectedLink from \"./Components/Links/SelectedLink\";\nimport {\n SELECTED_NAV_LINK_ROUTE_STORAGE_KEY,\n DEFAULT_HOME_PATH,\n} from \"./constants\";\nimport \"./sidebar.scss\";\nimport {\n getActiveConfigurePageLink,\n getSidebarStateLocalStorageKey,\n} from \"./utils\";\n\nconst Sidebar = ({\n navLinks,\n customLogo,\n isCountsLoading = false,\n showWorkspaceName = false,\n}) => {\n const [isSidebarPaneOpen, setIsSidebarPaneOpen] = useState(false);\n const [selectedNavLinkRoute, setSelectedNavLinkRoute] = useLocalStorage(\n SELECTED_NAV_LINK_ROUTE_STORAGE_KEY,\n null\n );\n\n const [isSidebarCollapsed, setIsSidebarCollapsed] = useLocalStorage(\n getSidebarStateLocalStorageKey(),\n false\n );\n\n const location = useLocation();\n const history = useHistory();\n const { t } = useTranslation();\n\n const { data } = useFetchNeetoApps();\n\n const isLargerScreen = () => window.innerWidth > 768;\n const isSidebarClosed = isLargerScreen()\n ? isSidebarCollapsed\n : not(isSidebarPaneOpen);\n\n useEffect(() => {\n if (!isPresent(navLinks)) return;\n const currentLink = findLast(({ to, isActive }) => {\n const url = new URL(to, window.location.href);\n\n return is(Function, isActive)\n ? isActive()\n : location.pathname.includes(url.pathname);\n })(navLinks);\n\n if (isPresent(currentLink)) {\n setSelectedNavLinkRoute(\n currentLink.isConfigureNavLink ? currentLink.to : null\n );\n }\n }, []);\n\n useEffect(() => {\n const handleResize = () => {\n if (isLargerScreen()) return;\n setIsSidebarPaneOpen(false);\n setIsSidebarCollapsed(true);\n };\n window.addEventListener(\"resize\", handleResize);\n\n return () => window.removeEventListener(\"resize\", handleResize);\n }, []);\n\n const handleGoBack = event => {\n event.preventDefault();\n setSelectedNavLinkRoute(null);\n const configureNavLink = getActiveConfigurePageLink({ navLinks, location });\n if (configureNavLink?.to) {\n history.push(buildUrl(configureNavLink.to));\n }\n };\n\n const homePath = useMemo(() => {\n if (!data?.neetoApps) return DEFAULT_HOME_PATH;\n\n const productName = globalProps.appName.substr(5);\n const thisApp = findBy({ name: productName }, data.neetoApps);\n\n return thisApp?.url ? new URL(thisApp.url).pathname : DEFAULT_HOME_PATH;\n }, [data]);\n\n const activeLink = useMemo(\n () =>\n navLinks.find(link => {\n if (is(Function, link.isActive)) return link.isActive();\n const url = new URL(link.to, window.location.href);\n\n return location.pathname.startsWith(url.pathname);\n }),\n [location.pathname, navLinks]\n );\n\n const isSelectedNavLinkVisible =\n selectedNavLinkRoute &&\n activeLink?.to === selectedNavLinkRoute &&\n isNotEmpty(navLinks);\n\n return (\n <div\n data-testid=\"sidebar-container\"\n className={classnames(\"neeto-molecules-sidebar__wrapper\", {\n \"neeto-molecules-sidebar__wrapper--collapsed\": isLargerScreen()\n ? isSidebarCollapsed\n : not(isSidebarPaneOpen),\n })}\n >\n <div\n className=\"neeto-molecules-sidebar__backdrop\"\n onClick={() => {\n setIsSidebarPaneOpen(false);\n setSelectedNavLinkRoute(null);\n }}\n />\n <div\n data-cy=\"sidebar-wrapper\"\n data-testid=\"sidebar\"\n className={classnames(\n \"neeto-molecules-sidebar neeto-ui-flex neeto-ui-flex-col neeto-ui-flex-shrink-0 neeto-ui-overflow-y-auto neeto-ui-overflow-x-hidden\",\n {\n \"neeto-molecules-sidebar--focus-mode\":\n isPresent(selectedNavLinkRoute),\n }\n )}\n >\n <Header\n {...{ customLogo, homePath }}\n clearSettingsNav={() => setSelectedNavLinkRoute(null)}\n />\n {showWorkspaceName && (\n <div className=\"neeto-ui-bg-gray-100 neeto-molecules-sidebar__workspace-info\">\n <Typography className=\"neeto-ui-mb-1\" style=\"h5\" weight=\"semibold\">\n {t(\"neetoMolecules.sidebar.myWorkspace\")}\n </Typography>\n <Typography className=\"neeto-ui-truncate\" style=\"body2\">\n {globalProps.organization.name}\n </Typography>\n </div>\n )}\n {isSelectedNavLinkVisible ? (\n <SelectedLink {...{ handleGoBack, homePath }} navLink={activeLink} />\n ) : (\n <Links {...{ isCountsLoading, navLinks, setSelectedNavLinkRoute }} />\n )}\n </div>\n <Button\n className=\"neeto-molecules-sidebar__toggler\"\n data-cy=\"neeto-molecules-sidebar-toggler\"\n data-testid=\"sidebar-toggleButton\"\n icon={() => <Chevron />}\n style={isLargerScreen() ? \"text\" : \"secondary\"}\n tooltipProps={{\n content: isSidebarClosed\n ? t(\"neetoMolecules.sidebar.showMenu\")\n : t(\"neetoMolecules.sidebar.hideMenu\"),\n position: \"bottom\",\n touch: [\"hold\", 500],\n }}\n onClick={() => {\n setIsSidebarCollapsed(!isSidebarCollapsed);\n setIsSidebarPaneOpen(not);\n }}\n />\n </div>\n );\n};\n\nSidebar.propTypes = {\n /**\n * To specify the navlinks to be shown in sidebar.\n */\n navLinks: PropTypes.arrayOf(\n PropTypes.shape({\n icon: PropTypes.oneOfType([PropTypes.element, PropTypes.func]),\n label: PropTypes.string,\n to: PropTypes.string,\n count: PropTypes.number,\n isActive: PropTypes.func,\n checkpointKey: PropTypes.string,\n isCountsLoading: PropTypes.bool,\n items: PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string,\n to: PropTypes.string,\n href: PropTypes.string,\n count: PropTypes.number,\n isActive: PropTypes.func,\n type: PropTypes.string,\n filters: PropTypes.array,\n checkpointKey: PropTypes.string,\n })\n ),\n })\n ),\n /**\n * To override the logo displayed on the sidebar.\n */\n customLogo: PropTypes.oneOfType([PropTypes.element, PropTypes.func]),\n /**\n * Boolean to notate whether the counts are being fetched.\n */\n isCountsLoading: PropTypes.bool,\n /**\n * Boolean to determine whether the workspace name should be shown.\n */\n showWorkspaceName: PropTypes.bool,\n};\n\nexport default Sidebar;\n"],"names":["Header","_ref","_ProductTypefaceLogos","customLogo","clearSettingsNav","homePath","productName","globalProps","appName","substr","logoName","concat","capitalize","toLowerCase","ProductTypefaceLogo","ProductTypefaceLogos","Neeto","LogoComponent","_jsx","className","children","Link","to","onClick","classnames","memo","renderCount","count","Links","navLinks","isCountsLoadingDeprecated","isCountsLoading","setSelectedNavLinkRoute","location","useLocation","_useState","useState","_useState2","_slicedToArray","isActiveLinkExpanded","setIsActiveLinkExpanded","handleNavLinkClick","_ref2","event","isActive","navLink","isExpandable","isPresent","items","component","isConfigureNavLink","isNotEmpty","not","preventDefault","filter","filterByPermissions","map","index","label","icon","_navLink$isCountsLoad","_navLink$count","Component","otherProps","_objectWithoutProperties","_excluded","IconSVG","url","URL","window","href","is","Function","pathname","startsWith","isMenuExpanded","_jsxs","Fragment","CheckPointNavLinks","_objectSpread","activeClassName","hyphenate","Typography","style","Down","size","_Fragment","Items","key","Sidebar","_ref$isCountsLoading","_ref$showWorkspaceNam","showWorkspaceName","isSidebarPaneOpen","setIsSidebarPaneOpen","_useLocalStorage","useLocalStorage","SELECTED_NAV_LINK_ROUTE_STORAGE_KEY","_useLocalStorage2","selectedNavLinkRoute","_useLocalStorage3","getSidebarStateLocalStorageKey","_useLocalStorage4","isSidebarCollapsed","setIsSidebarCollapsed","history","useHistory","_useTranslation","useTranslation","t","_useFetchNeetoApps","useFetchNeetoApps","data","isLargerScreen","innerWidth","isSidebarClosed","useEffect","currentLink","findLast","includes","handleResize","addEventListener","removeEventListener","handleGoBack","configureNavLink","getActiveConfigurePageLink","push","buildUrl","useMemo","neetoApps","DEFAULT_HOME_PATH","thisApp","findBy","name","activeLink","find","link","isSelectedNavLinkVisible","weight","organization","SelectedLink","Button","Chevron","tooltipProps","content","position","touch"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Sidebar.js","sources":["../../src/components/Sidebar/Components/Header.jsx","../../src/components/Sidebar/Components/Links/index.jsx","../../src/components/Sidebar/index.jsx"],"sourcesContent":["import { memo } from \"react\";\n\nimport classnames from \"classnames\";\nimport { capitalize } from \"neetocist\";\nimport { Neeto } from \"neetoicons/typeface-logos\";\nimport * as ProductTypefaceLogos from \"neetoicons/typeface-logos\";\nimport { Link } from \"react-router-dom\";\n\nconst Header = ({ customLogo, clearSettingsNav, homePath }) => {\n const productName = globalProps.appName.substr(5);\n const logoName = `Neeto${capitalize(productName.toLowerCase())}`;\n const ProductTypefaceLogo = ProductTypefaceLogos[logoName] ?? Neeto;\n const LogoComponent = customLogo ?? ProductTypefaceLogo;\n\n return (\n <div\n className=\"neeto-molecules-sidebar__header neeto-molecules-sidebar__no-shrinkable\"\n data-cy=\"sidebar-info\"\n >\n <Link\n className=\"neeto-molecules-sidebar__logo neeto-ui-w-full\"\n to={homePath}\n onClick={clearSettingsNav}\n >\n <LogoComponent\n className={classnames({\n \"neeto-molecules-sidebar__logo\": !customLogo,\n })}\n />\n </Link>\n </div>\n );\n};\n\nexport default memo(Header);\n","import { Fragment, useState } from \"react\";\n\nimport classnames from \"classnames\";\nimport { hyphenate, isNotEmpty, isPresent } from \"neetocist\";\nimport { Down } from \"neetoicons\";\nimport { Typography } from \"neetoui\";\nimport { is, not } from \"ramda\";\nimport { useLocation } from \"react-router-dom\";\n\nimport CheckPointNavLinks from \"./CheckPointNavLink\";\nimport Items from \"./Items\";\n\nimport { filterByPermissions } from \"../../utils\";\n\nconst renderCount = count => (count > 999 ? \"999+\" : count);\n\nconst Links = ({\n navLinks,\n isCountsLoading: isCountsLoadingDeprecated,\n setSelectedNavLinkRoute,\n}) => {\n const location = useLocation();\n const [isActiveLinkExpanded, setIsActiveLinkExpanded] = useState(true);\n\n const handleNavLinkClick = ({ event, isActive, navLink }) => {\n const isExpandable =\n isPresent(navLink.items) || isPresent(navLink.component);\n if (!isExpandable) return;\n\n if (navLink.isConfigureNavLink && isNotEmpty(navLink.items)) {\n setSelectedNavLinkRoute(navLink.to);\n }\n\n if (isActive()) {\n setIsActiveLinkExpanded(not);\n navLink.resetPath !== true && event.preventDefault();\n\n return;\n }\n\n setIsActiveLinkExpanded(true);\n };\n\n return (\n <div className=\"neeto-molecules-sidebar__links neeto-molecules-sidebar__no-shrinkable\">\n {navLinks.filter(filterByPermissions).map((navLink, index) => {\n const {\n label,\n to,\n icon,\n items,\n isConfigureNavLink,\n isCountsLoading = false,\n count = null,\n component: Component,\n ...otherProps\n } = navLink;\n const IconSVG = icon;\n const url = new URL(to, window.location.href);\n const isActive = () =>\n is(Function, otherProps.isActive)\n ? otherProps.isActive()\n : location.pathname.startsWith(url.pathname);\n\n const isExpandable = items || Component;\n const isMenuExpanded =\n isActive() && isActiveLinkExpanded && !isCountsLoadingDeprecated;\n\n return (\n <Fragment key={navLink.key || index}>\n <CheckPointNavLinks\n activeClassName=\"active\"\n className=\"neeto-ui-flex neeto-ui-items-center neeto-ui-no-underline neeto-ui-select-none neeto-molecules-sidebar__link\"\n data-testid={`navlink-${hyphenate(label)}`}\n onClick={event =>\n handleNavLinkClick({ event, isActive, navLink })\n }\n {...{ isActive, to, ...otherProps }}\n >\n {icon && (\n <span\n className=\"neeto-molecules-sidebar__link-icon\"\n data-testid={label}\n >\n <IconSVG />\n {isPresent(count) && !isCountsLoading && (\n <span className=\"neeto-molecules-sidebar__link-unread-count\">\n {renderCount(count)}\n </span>\n )}\n </span>\n )}\n <Typography\n className=\"neeto-molecules-sidebar__link-label neeto-ui-flex-grow flex items-center gap-1\"\n component=\"span\"\n style=\"body2\"\n >\n {label}\n </Typography>\n {isExpandable && !isConfigureNavLink && (\n <span\n className={classnames(\n \"neeto-molecules-sidebar__link-icon neeto-molecules-sidebar__link-icon--caret\",\n {\n \"neeto-molecules-sidebar__link-icon--rotate\":\n isMenuExpanded,\n }\n )}\n >\n <Down size={16} />\n </span>\n )}\n </CheckPointNavLinks>\n {isExpandable && !isConfigureNavLink && isMenuExpanded && (\n <>\n {items && (\n <Items {...{ isCountsLoading, items, ...otherProps }} />\n )}\n {Component && <Component {...{ navLink }} />}\n </>\n )}\n </Fragment>\n );\n })}\n </div>\n );\n};\n\nexport default Links;\n","import { useEffect, useMemo, useState } from \"react\";\n\nimport classnames from \"classnames\";\nimport { isPresent, isNotEmpty, findBy } from \"neetocist\";\nimport useFetchNeetoApps from \"neetocommons/react-utils/useFetchNeetoApps\";\nimport useLocalStorage from \"neetocommons/react-utils/useLocalStorage\";\nimport { buildUrl } from \"neetocommons/utils\";\nimport { Button, Typography } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { findLast, is, not } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport { useLocation, useHistory } from \"react-router-dom\";\n\nimport Chevron from \"./Components/Chevron\";\nimport Header from \"./Components/Header\";\nimport Links from \"./Components/Links\";\nimport SelectedLink from \"./Components/Links/SelectedLink\";\nimport {\n SELECTED_NAV_LINK_ROUTE_STORAGE_KEY,\n DEFAULT_HOME_PATH,\n} from \"./constants\";\nimport \"./sidebar.scss\";\nimport {\n getActiveConfigurePageLink,\n getSidebarStateLocalStorageKey,\n} from \"./utils\";\n\nconst Sidebar = ({\n navLinks,\n customLogo,\n isCountsLoading = false,\n showWorkspaceName = false,\n}) => {\n const [isSidebarPaneOpen, setIsSidebarPaneOpen] = useState(false);\n const [selectedNavLinkRoute, setSelectedNavLinkRoute] = useLocalStorage(\n SELECTED_NAV_LINK_ROUTE_STORAGE_KEY,\n null\n );\n\n const [isSidebarCollapsed, setIsSidebarCollapsed] = useLocalStorage(\n getSidebarStateLocalStorageKey(),\n false\n );\n\n const location = useLocation();\n const history = useHistory();\n const { t } = useTranslation();\n\n const { data } = useFetchNeetoApps();\n\n const isLargerScreen = () => window.innerWidth > 768;\n const isSidebarClosed = isLargerScreen()\n ? isSidebarCollapsed\n : not(isSidebarPaneOpen);\n\n useEffect(() => {\n if (!isPresent(navLinks)) return;\n const currentLink = findLast(({ to, isActive }) => {\n const url = new URL(to, window.location.href);\n\n return is(Function, isActive)\n ? isActive()\n : location.pathname.includes(url.pathname);\n })(navLinks);\n\n if (isPresent(currentLink)) {\n setSelectedNavLinkRoute(\n currentLink.isConfigureNavLink ? currentLink.to : null\n );\n }\n }, []);\n\n useEffect(() => {\n const handleResize = () => {\n if (isLargerScreen()) return;\n setIsSidebarPaneOpen(false);\n setIsSidebarCollapsed(true);\n };\n window.addEventListener(\"resize\", handleResize);\n\n return () => window.removeEventListener(\"resize\", handleResize);\n }, []);\n\n const handleGoBack = event => {\n event.preventDefault();\n setSelectedNavLinkRoute(null);\n const configureNavLink = getActiveConfigurePageLink({ navLinks, location });\n if (configureNavLink?.to) {\n history.push(buildUrl(configureNavLink.to));\n }\n };\n\n const homePath = useMemo(() => {\n if (!data?.neetoApps) return DEFAULT_HOME_PATH;\n\n const productName = globalProps.appName.substr(5);\n const thisApp = findBy({ name: productName }, data.neetoApps);\n\n return thisApp?.url ? new URL(thisApp.url).pathname : DEFAULT_HOME_PATH;\n }, [data]);\n\n const activeLink = useMemo(\n () =>\n navLinks.find(link => {\n if (is(Function, link.isActive)) return link.isActive();\n const url = new URL(link.to, window.location.href);\n\n return location.pathname.startsWith(url.pathname);\n }),\n [location.pathname, navLinks]\n );\n\n const isSelectedNavLinkVisible =\n selectedNavLinkRoute &&\n activeLink?.to === selectedNavLinkRoute &&\n isNotEmpty(navLinks);\n\n return (\n <div\n data-testid=\"sidebar-container\"\n className={classnames(\"neeto-molecules-sidebar__wrapper\", {\n \"neeto-molecules-sidebar__wrapper--collapsed\": isLargerScreen()\n ? isSidebarCollapsed\n : not(isSidebarPaneOpen),\n })}\n >\n <div\n className=\"neeto-molecules-sidebar__backdrop\"\n onClick={() => {\n setIsSidebarPaneOpen(false);\n setSelectedNavLinkRoute(null);\n }}\n />\n <div\n data-cy=\"sidebar-wrapper\"\n data-testid=\"sidebar\"\n className={classnames(\n \"neeto-molecules-sidebar neeto-ui-flex neeto-ui-flex-col neeto-ui-flex-shrink-0 neeto-ui-overflow-y-auto neeto-ui-overflow-x-hidden\",\n {\n \"neeto-molecules-sidebar--focus-mode\":\n isPresent(selectedNavLinkRoute),\n }\n )}\n >\n <Header\n {...{ customLogo, homePath }}\n clearSettingsNav={() => setSelectedNavLinkRoute(null)}\n />\n {showWorkspaceName && (\n <div className=\"neeto-ui-bg-gray-100 neeto-molecules-sidebar__workspace-info\">\n <Typography className=\"neeto-ui-mb-1\" style=\"h5\" weight=\"semibold\">\n {t(\"neetoMolecules.sidebar.myWorkspace\")}\n </Typography>\n <Typography className=\"neeto-ui-truncate\" style=\"body2\">\n {globalProps.organization.name}\n </Typography>\n </div>\n )}\n {isSelectedNavLinkVisible ? (\n <SelectedLink {...{ handleGoBack, homePath }} navLink={activeLink} />\n ) : (\n <Links {...{ isCountsLoading, navLinks, setSelectedNavLinkRoute }} />\n )}\n </div>\n <Button\n className=\"neeto-molecules-sidebar__toggler\"\n data-cy=\"neeto-molecules-sidebar-toggler\"\n data-testid=\"sidebar-toggleButton\"\n icon={() => <Chevron />}\n style={isLargerScreen() ? \"text\" : \"secondary\"}\n tooltipProps={{\n content: isSidebarClosed\n ? t(\"neetoMolecules.sidebar.showMenu\")\n : t(\"neetoMolecules.sidebar.hideMenu\"),\n position: \"bottom\",\n touch: [\"hold\", 500],\n }}\n onClick={() => {\n setIsSidebarCollapsed(!isSidebarCollapsed);\n setIsSidebarPaneOpen(not);\n }}\n />\n </div>\n );\n};\n\nSidebar.propTypes = {\n /**\n * To specify the navlinks to be shown in sidebar.\n */\n navLinks: PropTypes.arrayOf(\n PropTypes.shape({\n icon: PropTypes.oneOfType([PropTypes.element, PropTypes.func]),\n label: PropTypes.string,\n to: PropTypes.string,\n count: PropTypes.number,\n isActive: PropTypes.func,\n checkpointKey: PropTypes.string,\n isCountsLoading: PropTypes.bool,\n items: PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string,\n to: PropTypes.string,\n href: PropTypes.string,\n count: PropTypes.number,\n isActive: PropTypes.func,\n type: PropTypes.string,\n filters: PropTypes.array,\n checkpointKey: PropTypes.string,\n })\n ),\n })\n ),\n /**\n * To override the logo displayed on the sidebar.\n */\n customLogo: PropTypes.oneOfType([PropTypes.element, PropTypes.func]),\n /**\n * Boolean to notate whether the counts are being fetched.\n */\n isCountsLoading: PropTypes.bool,\n /**\n * Boolean to determine whether the workspace name should be shown.\n */\n showWorkspaceName: PropTypes.bool,\n};\n\nexport default Sidebar;\n"],"names":["Header","_ref","_ProductTypefaceLogos","customLogo","clearSettingsNav","homePath","productName","globalProps","appName","substr","logoName","concat","capitalize","toLowerCase","ProductTypefaceLogo","ProductTypefaceLogos","Neeto","LogoComponent","_jsx","className","children","Link","to","onClick","classnames","memo","renderCount","count","Links","navLinks","isCountsLoadingDeprecated","isCountsLoading","setSelectedNavLinkRoute","location","useLocation","_useState","useState","_useState2","_slicedToArray","isActiveLinkExpanded","setIsActiveLinkExpanded","handleNavLinkClick","_ref2","event","isActive","navLink","isExpandable","isPresent","items","component","isConfigureNavLink","isNotEmpty","not","resetPath","preventDefault","filter","filterByPermissions","map","index","label","icon","_navLink$isCountsLoad","_navLink$count","Component","otherProps","_objectWithoutProperties","_excluded","IconSVG","url","URL","window","href","is","Function","pathname","startsWith","isMenuExpanded","_jsxs","Fragment","CheckPointNavLinks","_objectSpread","activeClassName","hyphenate","Typography","style","Down","size","_Fragment","Items","key","Sidebar","_ref$isCountsLoading","_ref$showWorkspaceNam","showWorkspaceName","isSidebarPaneOpen","setIsSidebarPaneOpen","_useLocalStorage","useLocalStorage","SELECTED_NAV_LINK_ROUTE_STORAGE_KEY","_useLocalStorage2","selectedNavLinkRoute","_useLocalStorage3","getSidebarStateLocalStorageKey","_useLocalStorage4","isSidebarCollapsed","setIsSidebarCollapsed","history","useHistory","_useTranslation","useTranslation","t","_useFetchNeetoApps","useFetchNeetoApps","data","isLargerScreen","innerWidth","isSidebarClosed","useEffect","currentLink","findLast","includes","handleResize","addEventListener","removeEventListener","handleGoBack","configureNavLink","getActiveConfigurePageLink","push","buildUrl","useMemo","neetoApps","DEFAULT_HOME_PATH","thisApp","findBy","name","activeLink","find","link","isSelectedNavLinkVisible","weight","organization","SelectedLink","Button","Chevron","tooltipProps","content","position","touch"],"mappings":"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"}
|
|
@@ -8,7 +8,10 @@ var React = require('react');
|
|
|
8
8
|
var jsxRuntime = require('react/jsx-runtime');
|
|
9
9
|
var injectCss = require('./inject-css-vQvjPR2x.js');
|
|
10
10
|
var Down = require('@bigbinary/neeto-icons/Down');
|
|
11
|
+
var Close = require('@bigbinary/neeto-icons/Close');
|
|
11
12
|
var Typography = require('@bigbinary/neetoui/Typography');
|
|
13
|
+
var ramda = require('ramda');
|
|
14
|
+
var reactI18next = require('react-i18next');
|
|
12
15
|
|
|
13
16
|
var NeetoUIMenu = Dropdown.Menu,
|
|
14
17
|
MenuItem = Dropdown.MenuItem;
|
|
@@ -46,20 +49,42 @@ var ICON_SIZE = 16;
|
|
|
46
49
|
|
|
47
50
|
var Target = function Target(_ref) {
|
|
48
51
|
var color = _ref.color,
|
|
52
|
+
value = _ref.value,
|
|
49
53
|
label = _ref.label,
|
|
50
|
-
dataCy = _ref.dataCy
|
|
51
|
-
|
|
54
|
+
dataCy = _ref.dataCy,
|
|
55
|
+
isClearable = _ref.isClearable,
|
|
56
|
+
onClear = _ref.onClear,
|
|
57
|
+
placeholder = _ref.placeholder;
|
|
58
|
+
var _useTranslation = reactI18next.useTranslation(),
|
|
59
|
+
t = _useTranslation.t;
|
|
60
|
+
var targetClassName = "neeto-ui-rounded-sm inline-flex items-center gap-2 cursor-pointer py-0.5 px-2 status-dropdown-target--".concat(color || "waiting");
|
|
61
|
+
var isOptionSelected = !ramda.isNil(value);
|
|
52
62
|
return /*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
53
63
|
className: targetClassName,
|
|
54
64
|
"data-cy": dataCy,
|
|
55
65
|
"data-testid": "status-dropdown",
|
|
56
|
-
children: [/*#__PURE__*/jsxRuntime.jsx(Typography, {
|
|
66
|
+
children: [isOptionSelected ? /*#__PURE__*/jsxRuntime.jsx(Typography, {
|
|
57
67
|
className: "inline",
|
|
58
68
|
style: "body2",
|
|
59
69
|
children: label
|
|
60
|
-
})
|
|
61
|
-
className: "
|
|
62
|
-
|
|
70
|
+
}) : /*#__PURE__*/jsxRuntime.jsx(Typography, {
|
|
71
|
+
className: "neeto-ui-text-gray-600 inline",
|
|
72
|
+
style: "body2",
|
|
73
|
+
children: placeholder || t("neetoMolecules.statusDropdown.placeholder")
|
|
74
|
+
}), /*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
75
|
+
className: "inline-flex items-center gap-1",
|
|
76
|
+
children: [isClearable && isOptionSelected && /*#__PURE__*/jsxRuntime.jsx("button", {
|
|
77
|
+
"data-testid": "status-dropdown-clear-button",
|
|
78
|
+
onClick: function onClick(event) {
|
|
79
|
+
onClear();
|
|
80
|
+
event.stopPropagation();
|
|
81
|
+
},
|
|
82
|
+
children: /*#__PURE__*/jsxRuntime.jsx(Close, {
|
|
83
|
+
size: ICON_SIZE
|
|
84
|
+
})
|
|
85
|
+
}), /*#__PURE__*/jsxRuntime.jsx(Down, {
|
|
86
|
+
size: ICON_SIZE
|
|
87
|
+
})]
|
|
63
88
|
})]
|
|
64
89
|
});
|
|
65
90
|
};
|
|
@@ -76,9 +101,15 @@ var StatusDropdown = function StatusDropdown(_ref) {
|
|
|
76
101
|
isLoading = _ref$isLoading === void 0 ? false : _ref$isLoading,
|
|
77
102
|
onItemClick = _ref.onItemClick,
|
|
78
103
|
options = _ref.options,
|
|
104
|
+
_ref$placeholder = _ref.placeholder,
|
|
105
|
+
placeholder = _ref$placeholder === void 0 ? null : _ref$placeholder,
|
|
79
106
|
selectedValue = _ref.selectedValue,
|
|
80
107
|
_ref$shouldShowAllOpt = _ref.shouldShowAllOptions,
|
|
81
108
|
shouldShowAllOptions = _ref$shouldShowAllOpt === void 0 ? false : _ref$shouldShowAllOpt,
|
|
109
|
+
_ref$isClearable = _ref.isClearable,
|
|
110
|
+
isClearable = _ref$isClearable === void 0 ? false : _ref$isClearable,
|
|
111
|
+
_ref$onClear = _ref.onClear,
|
|
112
|
+
onClear = _ref$onClear === void 0 ? neetoCist.noop : _ref$onClear,
|
|
82
113
|
_ref$dataCy = _ref.dataCy,
|
|
83
114
|
dataCy = _ref$dataCy === void 0 ? "status-dropdown" : _ref$dataCy;
|
|
84
115
|
var selectedOption = neetoCist._findBy({
|
|
@@ -91,7 +122,10 @@ var StatusDropdown = function StatusDropdown(_ref) {
|
|
|
91
122
|
return /*#__PURE__*/jsxRuntime.jsx(Target$1, _objectSpread({
|
|
92
123
|
label: selectedValue
|
|
93
124
|
}, _objectSpread(_objectSpread({}, selectedOption), {}, {
|
|
94
|
-
dataCy: dataCy
|
|
125
|
+
dataCy: dataCy,
|
|
126
|
+
isClearable: isClearable,
|
|
127
|
+
onClear: onClear,
|
|
128
|
+
placeholder: placeholder
|
|
95
129
|
})));
|
|
96
130
|
},
|
|
97
131
|
children: isLoading ? /*#__PURE__*/jsxRuntime.jsx("div", {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StatusDropdown.js","sources":["../../src/components/StatusDropdown/Menu.jsx","../../src/components/StatusDropdown/constants.js","../../src/components/StatusDropdown/Target.jsx","../../src/components/StatusDropdown/index.jsx"],"sourcesContent":["import { memo } from \"react\";\n\nimport { hyphenate } from \"neetocist\";\nimport { Dropdown } from \"neetoui\";\n\nconst { Menu: NeetoUIMenu, MenuItem } = Dropdown;\n\nconst Menu = ({\n onItemClick,\n options,\n shouldShowAllOptions = false,\n hiddenStatuses = [],\n}) => {\n const allowedOptions = shouldShowAllOptions\n ? options\n : options.filter(status => !hiddenStatuses.includes(status.value));\n\n return (\n <NeetoUIMenu data-testid=\"status-dropdown-menu\">\n {allowedOptions?.map(option => (\n <MenuItem.Button\n className={`status-dropdown-item--${option.color}`}\n data-cy={`status-dropdown-item-${hyphenate(option.value)}`}\n data-testid={`status-dropdown-item-${option.value}`}\n key={option.value}\n onClick={() => onItemClick(option)}\n >\n {option.label}\n </MenuItem.Button>\n ))}\n </NeetoUIMenu>\n );\n};\n\nexport default memo(Menu);\n","export const ICON_SIZE = 16;\n","import { memo } from \"react\";\n\nimport { Down } from \"neetoicons\";\nimport { Typography } from \"neetoui\";\n\nimport { ICON_SIZE } from \"./constants\";\n\nconst Target = ({ color, label, dataCy }) => {\n const targetClassName = `neeto-ui-rounded-sm inline-block cursor-pointer py-0.5 px-2 status-dropdown-target--${color}`;\n\n return (\n <div\n className={targetClassName}\n data-cy={dataCy}\n data-testid=\"status-dropdown\"\n >\n <Typography className=\"inline\" style=\"body2\">\n {label}\n </Typography>\n <Down className=\"ml-2 inline\" size={ICON_SIZE} />\n </div>\n );\n};\n\nexport default memo(Target);\n","import { _findBy } from \"neetocist\";\nimport { Dropdown, Spinner } from \"neetoui\";\nimport PropTypes from \"prop-types\";\n\nimport Menu from \"./Menu\";\nimport \"./status-dropdown.scss\";\nimport Target from \"./Target\";\n\nconst StatusDropdown = ({\n disabled = false,\n hiddenStatuses = [],\n isLoading = false,\n onItemClick,\n options,\n selectedValue,\n shouldShowAllOptions = false,\n dataCy = \"status-dropdown\",\n}) => {\n const selectedOption = _findBy({ value: selectedValue }, options);\n\n return (\n <Dropdown\n {...{ disabled }}\n strategy=\"fixed\"\n customTarget={() => (\n <Target label={selectedValue} {...{ ...selectedOption, dataCy }} />\n )}\n >\n {isLoading ? (\n <div className=\"flex w-full items-center justify-center py-8\">\n <Spinner />\n </div>\n ) : (\n <Menu\n {...{ hiddenStatuses, onItemClick, options, shouldShowAllOptions }}\n />\n )}\n </Dropdown>\n );\n};\n\nStatusDropdown.Menu = Menu;\n\nStatusDropdown.propTypes = {\n /**\n * This prop will decide whether the dropdown is disabled or not.\n */\n disabled: PropTypes.bool,\n /**\n * Statuses to be hidden when shouldShowAllOptions is false.\n */\n hiddenStatuses: PropTypes.array,\n /**\n * This prop will decide whether the dropdown is in loading state or not.\n */\n isLoading: PropTypes.bool,\n /**\n * Function to be called when a menu item is clicked.\n */\n onItemClick: PropTypes.func,\n /**\n * The items that should be shown in the dropdown.\n */\n options: PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string,\n value: PropTypes.string,\n color: PropTypes.string,\n })\n ),\n /**\n * The selected value.\n */\n selectedValue: PropTypes.string,\n /**\n * This prop will decide whether all options should be shown or not. If set to false, the items in hiddenStatuses will not be shown.\n */\n shouldShowAllOptions: PropTypes.bool,\n};\n\nexport default StatusDropdown;\n"],"names":["NeetoUIMenu","Dropdown","Menu","MenuItem","_ref","onItemClick","options","_ref$shouldShowAllOpt","shouldShowAllOptions","_ref$hiddenStatuses","hiddenStatuses","allowedOptions","filter","status","includes","value","_jsx","children","map","option","Button","className","concat","color","hyphenate","onClick","label","memo","ICON_SIZE","Target","dataCy","targetClassName","_jsxs","Typography","style","Down","size","StatusDropdown","_ref$disabled","disabled","_ref$isLoading","isLoading","selectedValue","_ref$dataCy","selectedOption","_findBy","strategy","customTarget","_objectSpread","Spinner"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"StatusDropdown.js","sources":["../../src/components/StatusDropdown/Menu.jsx","../../src/components/StatusDropdown/constants.js","../../src/components/StatusDropdown/Target.jsx","../../src/components/StatusDropdown/index.jsx"],"sourcesContent":["import { memo } from \"react\";\n\nimport { hyphenate } from \"neetocist\";\nimport { Dropdown } from \"neetoui\";\n\nconst { Menu: NeetoUIMenu, MenuItem } = Dropdown;\n\nconst Menu = ({\n onItemClick,\n options,\n shouldShowAllOptions = false,\n hiddenStatuses = [],\n}) => {\n const allowedOptions = shouldShowAllOptions\n ? options\n : options.filter(status => !hiddenStatuses.includes(status.value));\n\n return (\n <NeetoUIMenu data-testid=\"status-dropdown-menu\">\n {allowedOptions?.map(option => (\n <MenuItem.Button\n className={`status-dropdown-item--${option.color}`}\n data-cy={`status-dropdown-item-${hyphenate(option.value)}`}\n data-testid={`status-dropdown-item-${option.value}`}\n key={option.value}\n onClick={() => onItemClick(option)}\n >\n {option.label}\n </MenuItem.Button>\n ))}\n </NeetoUIMenu>\n );\n};\n\nexport default memo(Menu);\n","export const ICON_SIZE = 16;\n","import { memo } from \"react\";\n\nimport { Down, Close } from \"neetoicons\";\nimport { Typography } from \"neetoui\";\nimport { isNil } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { ICON_SIZE } from \"./constants\";\n\nconst Target = ({\n color,\n value,\n label,\n dataCy,\n isClearable,\n onClear,\n placeholder,\n}) => {\n const { t } = useTranslation();\n const targetClassName = `neeto-ui-rounded-sm inline-flex items-center gap-2 cursor-pointer py-0.5 px-2 status-dropdown-target--${\n color || \"waiting\"\n }`;\n const isOptionSelected = !isNil(value);\n\n return (\n <div\n className={targetClassName}\n data-cy={dataCy}\n data-testid=\"status-dropdown\"\n >\n {isOptionSelected ? (\n <Typography className=\"inline\" style=\"body2\">\n {label}\n </Typography>\n ) : (\n <Typography className=\"neeto-ui-text-gray-600 inline\" style=\"body2\">\n {placeholder || t(\"neetoMolecules.statusDropdown.placeholder\")}\n </Typography>\n )}\n <div className=\"inline-flex items-center gap-1\">\n {isClearable && isOptionSelected && (\n <button\n data-testid=\"status-dropdown-clear-button\"\n onClick={event => {\n onClear();\n event.stopPropagation();\n }}\n >\n <Close size={ICON_SIZE} />\n </button>\n )}\n <Down size={ICON_SIZE} />\n </div>\n </div>\n );\n};\n\nexport default memo(Target);\n","import { _findBy, noop } from \"neetocist\";\nimport { Dropdown, Spinner } from \"neetoui\";\nimport PropTypes from \"prop-types\";\n\nimport Menu from \"./Menu\";\nimport \"./status-dropdown.scss\";\nimport Target from \"./Target\";\n\nconst StatusDropdown = ({\n disabled = false,\n hiddenStatuses = [],\n isLoading = false,\n onItemClick,\n options,\n placeholder = null,\n selectedValue,\n shouldShowAllOptions = false,\n isClearable = false,\n onClear = noop,\n dataCy = \"status-dropdown\",\n}) => {\n const selectedOption = _findBy({ value: selectedValue }, options);\n\n return (\n <Dropdown\n {...{ disabled }}\n strategy=\"fixed\"\n customTarget={() => (\n <Target\n label={selectedValue}\n {...{ ...selectedOption, dataCy, isClearable, onClear, placeholder }}\n />\n )}\n >\n {isLoading ? (\n <div className=\"flex w-full items-center justify-center py-8\">\n <Spinner />\n </div>\n ) : (\n <Menu\n {...{ hiddenStatuses, onItemClick, options, shouldShowAllOptions }}\n />\n )}\n </Dropdown>\n );\n};\n\nStatusDropdown.Menu = Menu;\n\nStatusDropdown.propTypes = {\n /**\n * This prop will decide whether the dropdown is disabled or not.\n */\n disabled: PropTypes.bool,\n /**\n * Statuses to be hidden when shouldShowAllOptions is false.\n */\n hiddenStatuses: PropTypes.array,\n /**\n * This prop will decide whether the dropdown is in loading state or not.\n */\n isLoading: PropTypes.bool,\n /**\n * Function to be called when a menu item is clicked.\n */\n onItemClick: PropTypes.func,\n /**\n * The items that should be shown in the dropdown.\n */\n options: PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string,\n value: PropTypes.string,\n color: PropTypes.string,\n })\n ),\n /**\n * Placeholder for the dropdown.\n */\n placeholder: PropTypes.string,\n /**\n * The selected value.\n */\n selectedValue: PropTypes.string,\n /**\n * This prop will decide whether all options should be shown or not. If set to false, the items in hiddenStatuses will not be shown.\n */\n shouldShowAllOptions: PropTypes.bool,\n /**\n * This prop will decide whether the dropdown is clearable or not.\n */\n isClearable: PropTypes.bool,\n /**\n * Function to be called when the clear button is clicked.\n */\n onClear: PropTypes.func,\n};\n\nexport default StatusDropdown;\n"],"names":["NeetoUIMenu","Dropdown","Menu","MenuItem","_ref","onItemClick","options","_ref$shouldShowAllOpt","shouldShowAllOptions","_ref$hiddenStatuses","hiddenStatuses","allowedOptions","filter","status","includes","value","_jsx","children","map","option","Button","className","concat","color","hyphenate","onClick","label","memo","ICON_SIZE","Target","dataCy","isClearable","onClear","placeholder","_useTranslation","useTranslation","t","targetClassName","isOptionSelected","isNil","_jsxs","Typography","style","event","stopPropagation","Close","size","Down","StatusDropdown","_ref$disabled","disabled","_ref$isLoading","isLoading","_ref$placeholder","selectedValue","_ref$isClearable","_ref$onClear","noop","_ref$dataCy","selectedOption","_findBy","strategy","customTarget","_objectSpread","Spinner"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bigbinary/neeto-molecules",
|
|
3
|
-
"version": "3.15.
|
|
3
|
+
"version": "3.15.59",
|
|
4
4
|
"description": "A package of reusable molecular components for neeto products.",
|
|
5
5
|
"repository": "git@github.com:bigbinary/neeto-molecules.git",
|
|
6
6
|
"author": "Amaljith K <amaljith.k@bigbinary.com>",
|
package/src/translations/en.json
CHANGED
|
@@ -67,8 +67,11 @@ declare const StatusDropdown: React.FC<{
|
|
|
67
67
|
isLoading?: boolean;
|
|
68
68
|
onItemClick: (status: object) => void;
|
|
69
69
|
options: Array<object>;
|
|
70
|
+
placeholder?: string;
|
|
70
71
|
selectedValue: string;
|
|
71
72
|
shouldShowAllOptions?: boolean;
|
|
73
|
+
isClearable?: boolean;
|
|
74
|
+
onClear?: () => void;
|
|
72
75
|
}>;
|
|
73
76
|
|
|
74
77
|
export { StatusDropdown as default };
|