@bigbinary/neeto-molecules 3.16.102 → 4.0.0

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.
@@ -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 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, useEffect } 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 const calendarWrapperRef = useRef(null);\n const calendarRef = useRef();\n\n useEffect(() => {\n const calendarApi = calendarRef.current?.getApi?.();\n const wrapperElement = calendarWrapperRef.current;\n\n if (!calendarApi || !wrapperElement) return undefined;\n\n const handleResize = () => {\n calendarApi.updateSize();\n };\n\n const observer = new ResizeObserver(handleResize);\n\n observer.observe(wrapperElement);\n\n return () => {\n observer.disconnect();\n };\n }, []);\n\n return (\n <div\n className=\"flex-col\"\n data-testid=\"calendar-view\"\n ref={calendarWrapperRef}\n >\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","calendarWrapperRef","_calendarRef$current$","calendarApi","getApi","call","wrapperElement","undefined","handleResize","updateSize","observer","ResizeObserver","observe","disconnect","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, useEffect } 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 const calendarWrapperRef = useRef(null);\n const calendarRef = useRef();\n\n useEffect(() => {\n const calendarApi = calendarRef.current?.getApi?.();\n const wrapperElement = calendarWrapperRef.current;\n\n if (!calendarApi || !wrapperElement) return undefined;\n\n const handleResize = () => {\n calendarApi.updateSize();\n };\n\n const observer = new ResizeObserver(handleResize);\n\n observer.observe(wrapperElement);\n\n return () => {\n observer.disconnect();\n };\n }, []);\n\n return (\n <div\n className=\"flex-col\"\n data-testid=\"calendar-view\"\n ref={calendarWrapperRef}\n >\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","calendarWrapperRef","_calendarRef$current$","calendarApi","getApi","call","wrapperElement","undefined","handleResize","updateSize","observer","ResizeObserver","observe","disconnect","SubHeader","leftActionBlock","rightActionBlock","FullCalendar","expandRows","allDayText","dateClick","dayHeaderClassNames","displayEventTime","eventClick","headerToolbar","height","initialView","plugins","dayGridPlugin","timeGridPlugin","interactionPlugin","displayName"],"mappings":"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"}
@@ -2,11 +2,14 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var useColumns = require('./useColumns-BP8c4PV-.js');
5
+ var useColumns = require('./useColumns-XlhUVahw.js');
6
6
  require('@babel/runtime/helpers/defineProperty');
7
+ require('@babel/runtime/helpers/toConsumableArray');
7
8
  require('@babel/runtime/helpers/slicedToArray');
8
9
  require('@babel/runtime/helpers/objectWithoutProperties');
9
10
  require('react');
11
+ require('@dnd-kit/core');
12
+ require('@dnd-kit/sortable');
10
13
  require('i18next');
11
14
  require('@bigbinary/neeto-cist');
12
15
  require('@bigbinary/neeto-icons/Search');
@@ -14,11 +17,15 @@ require('@bigbinary/neetoui/Checkbox');
14
17
  require('@bigbinary/neetoui/Dropdown');
15
18
  require('@bigbinary/neetoui/Input');
16
19
  require('@bigbinary/neetoui/Label');
17
- require('@bigbinary/neetoui/Typography');
20
+ require('@bigbinary/neetoui/Button');
18
21
  require('ramda');
19
22
  require('react-i18next');
20
23
  require('./inject-css-vQvjPR2x.js');
24
+ require('@bigbinary/neeto-icons/Drag');
21
25
  require('react/jsx-runtime');
26
+ require('@tanstack/react-query');
27
+ require('@bigbinary/neeto-commons-frontend/react-utils/useMutationWithInvalidation');
28
+ require('axios');
22
29
  require('zustand');
23
30
  require('zustand/middleware');
24
31
  require('@bigbinary/neeto-commons-frontend/utils/general');
@@ -27,9 +34,11 @@ require('@bigbinary/neeto-commons-frontend/utils/general');
27
34
 
28
35
  exports.COLUMNS_ORDER_STORAGE_KEY = useColumns.COLUMNS_ORDER_STORAGE_KEY;
29
36
  exports.HIDDEN_COLUMNS_STORAGE_KEY = useColumns.HIDDEN_COLUMNS_STORAGE_KEY;
37
+ exports.TABLE_CONFIGURATION_QUERY_KEY = useColumns.TABLE_CONFIGURATION_QUERY_KEY;
30
38
  exports.default = useColumns.Columns;
31
39
  exports.useColumnOrderStore = useColumns.useColumnOrderStore;
32
40
  exports.useColumns = useColumns.useColumns;
33
41
  exports.useHiddenColumnStore = useColumns.useHiddenColumnStore;
34
42
  exports.useHiddenColumns = useColumns.useHiddenColumns;
43
+ exports.useTableConfigurations = useColumns.useTableConfigurations;
35
44
  //# sourceMappingURL=Columns.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Columns.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"Columns.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -6,73 +6,50 @@ var _defineProperty = require('@babel/runtime/helpers/defineProperty');
6
6
  var neetoCist = require('@bigbinary/neeto-cist');
7
7
  var ramda = require('ramda');
8
8
  var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProperties');
9
+ var reactUtils = require('@bigbinary/neeto-commons-frontend/react-utils');
9
10
  var Column = require('@bigbinary/neeto-icons/Column');
10
- var Button = require('@bigbinary/neetoui/Button');
11
- var reactI18next = require('react-i18next');
12
- var useColumns = require('./useColumns-BP8c4PV-.js');
11
+ var useColumns = require('./useColumns-XlhUVahw.js');
12
+ require('@babel/runtime/helpers/toConsumableArray');
13
+ require('@tanstack/react-query');
14
+ require('@bigbinary/neeto-commons-frontend/react-utils/useMutationWithInvalidation');
15
+ require('axios');
13
16
  var jsxRuntime = require('react/jsx-runtime');
14
- var reactUtils = require('@bigbinary/neeto-commons-frontend/react-utils');
15
17
  var Download = require('@bigbinary/neeto-icons/Download');
18
+ var Button = require('@bigbinary/neetoui/Button');
16
19
  var NeetoFilters = require('@bigbinary/neeto-filters-frontend/Filters');
17
20
  var Filter = require('@bigbinary/neeto-icons/Filter');
18
21
  var injectCss = require('./inject-css-vQvjPR2x.js');
19
22
  require('@babel/runtime/helpers/slicedToArray');
23
+ require('@dnd-kit/core');
24
+ require('@dnd-kit/sortable');
20
25
  require('i18next');
21
26
  require('@bigbinary/neeto-icons/Search');
22
27
  require('@bigbinary/neetoui/Checkbox');
23
28
  require('@bigbinary/neetoui/Dropdown');
24
29
  require('@bigbinary/neetoui/Input');
25
30
  require('@bigbinary/neetoui/Label');
26
- require('@bigbinary/neetoui/Typography');
31
+ require('react-i18next');
32
+ require('@bigbinary/neeto-icons/Drag');
27
33
  require('zustand');
28
34
  require('zustand/middleware');
29
35
  require('@bigbinary/neeto-commons-frontend/utils/general');
30
36
 
31
- var _excluded$1 = ["buttonProps", "columnData", "localStorageKey", "fixedColumns"];
37
+ var _excluded$1 = ["t", "buttonProps", "columnData", "tableKey"];
32
38
  function ownKeys$2(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
33
39
  function _objectSpread$2(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
34
- var Columns = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
35
- var _ref$buttonProps = _ref.buttonProps,
40
+ var unUsedI18nProps = ["tReady", "i18n"];
41
+ var Columns = reactUtils.withT(function (_ref) {
42
+ var t = _ref.t,
43
+ _ref$buttonProps = _ref.buttonProps,
36
44
  buttonProps = _ref$buttonProps === void 0 ? {} : _ref$buttonProps,
37
45
  columnData = _ref.columnData,
38
- localStorageKey = _ref.localStorageKey,
39
- fixedColumns = _ref.fixedColumns,
46
+ tableKey = _ref.tableKey,
40
47
  props = _objectWithoutProperties(_ref, _excluded$1);
41
- var _useTranslation = reactI18next.useTranslation(),
42
- t = _useTranslation.t;
43
- var columnDataIndex = React.useMemo(function () {
44
- return ramda.pluck("dataIndex", (columnData || []).filter(function (column) {
45
- return !(fixedColumns !== null && fixedColumns !== void 0 && fixedColumns.includes(column.dataIndex));
46
- }));
47
- }, [columnData, fixedColumns]);
48
- var _useHiddenColumns = useColumns.useHiddenColumns(localStorageKey),
49
- hideColumn = _useHiddenColumns.hideColumn,
50
- showColumn = _useHiddenColumns.showColumn;
51
48
  return /*#__PURE__*/jsxRuntime.jsx("div", {
52
49
  className: "neeto-molecules-subheader__columns",
53
50
  children: /*#__PURE__*/jsxRuntime.jsx(useColumns.Columns, _objectSpread$2({
54
51
  isSearchable: true,
55
52
  className: "neeto-ui-dropdown--manage-columns",
56
- actionBlock: /*#__PURE__*/jsxRuntime.jsxs("div", {
57
- className: "grid grid-cols-2 gap-2 px-4 py-3",
58
- children: [/*#__PURE__*/jsxRuntime.jsx(Button, {
59
- className: "col-span-1 justify-center",
60
- "data-cy": "column-visibility-hide-all-button",
61
- label: t("neetoMolecules.columns.hideAll"),
62
- style: "secondary",
63
- onClick: function onClick() {
64
- return hideColumn(columnDataIndex);
65
- }
66
- }), /*#__PURE__*/jsxRuntime.jsx(Button, {
67
- className: "col-span-1 justify-center",
68
- "data-cy": "column-visibility-show-all-button",
69
- label: t("neetoMolecules.columns.showAll"),
70
- style: "secondary",
71
- onClick: function onClick() {
72
- return showColumn(columnDataIndex);
73
- }
74
- })]
75
- }),
76
53
  buttonProps: _objectSpread$2({
77
54
  icon: Column,
78
55
  label: null,
@@ -84,12 +61,10 @@ var Columns = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
84
61
  "data-testid": "columns-button",
85
62
  "data-cy": "columns-dropdown-button"
86
63
  }, buttonProps)
87
- }, _objectSpread$2(_objectSpread$2({
64
+ }, _objectSpread$2({
88
65
  columnData: columnData,
89
- localStorageKey: localStorageKey
90
- }, props), {}, {
91
- ref: ref
92
- })))
66
+ tableKey: tableKey
67
+ }, ramda.omit(unUsedI18nProps, props))))
93
68
  });
94
69
  });
95
70
  Columns.displayName = "Columns";
@@ -1 +1 @@
1
- {"version":3,"file":"SubHeader.js","sources":["../../src/components/SubHeader/RightBlock/Columns.jsx","../../src/components/SubHeader/RightBlock/Download.jsx","../../src/components/SubHeader/RightBlock/Filter.jsx","../../src/components/SubHeader/RightBlock/index.jsx","../../src/components/SubHeader/index.jsx"],"sourcesContent":["import { forwardRef, useMemo } from \"react\";\n\nimport { Column } from \"neetoicons\";\nimport { Button } from \"neetoui\";\nimport { pluck } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport ManageColumns, { useHiddenColumns } from \"components/Columns\";\n\nconst Columns = forwardRef(\n (\n { buttonProps = {}, columnData, localStorageKey, fixedColumns, ...props },\n ref\n ) => {\n const { t } = useTranslation();\n\n const columnDataIndex = useMemo(\n () =>\n pluck(\n \"dataIndex\",\n (columnData || []).filter(\n column => !fixedColumns?.includes(column.dataIndex)\n )\n ),\n [columnData, fixedColumns]\n );\n\n const { hideColumn, showColumn } = useHiddenColumns(localStorageKey);\n\n return (\n <div className=\"neeto-molecules-subheader__columns\">\n <ManageColumns\n isSearchable\n className=\"neeto-ui-dropdown--manage-columns\"\n actionBlock={\n <div className=\"grid grid-cols-2 gap-2 px-4 py-3\">\n <Button\n className=\"col-span-1 justify-center\"\n data-cy=\"column-visibility-hide-all-button\"\n label={t(\"neetoMolecules.columns.hideAll\")}\n style=\"secondary\"\n onClick={() => hideColumn(columnDataIndex)}\n />\n <Button\n className=\"col-span-1 justify-center\"\n data-cy=\"column-visibility-show-all-button\"\n label={t(\"neetoMolecules.columns.showAll\")}\n style=\"secondary\"\n onClick={() => showColumn(columnDataIndex)}\n />\n </div>\n }\n buttonProps={{\n icon: Column,\n label: null,\n tooltipProps: {\n content: t(\"neetoMolecules.columns.columns\"),\n position: \"bottom\",\n touch: [\"hold\", 500],\n },\n \"data-testid\": \"columns-button\",\n \"data-cy\": \"columns-dropdown-button\",\n ...buttonProps,\n }}\n {...{ columnData, localStorageKey, ...props, ref }}\n />\n </div>\n );\n }\n);\n\nColumns.displayName = \"Columns\";\nexport default Columns;\n","import { withT } from \"neetocommons/react-utils\";\nimport { Download } from \"neetoicons\";\nimport { Button } from \"neetoui\";\n\nconst DownloadButton = withT(\n ({ t, count, onClick, \"data-cy\": dataCy = \"download-button\" }) => (\n <div className=\"neeto-molecules-subheader__download\">\n <Button\n {...{ onClick }}\n data-cy={dataCy}\n data-testid=\"download-button\"\n icon={Download}\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoMolecules.common.download\"),\n position: \"bottom\",\n touch: [\"hold\", 500],\n }}\n />\n {count && (\n <span className=\"neeto-molecules-subheader__download-count\">\n {count}\n </span>\n )}\n </div>\n )\n);\n\nexport default DownloadButton;\n","import { withT } from \"neetocommons/react-utils\";\nimport { Filters as NeetoFilters } from \"neetofilters\";\nimport { Filter } from \"neetoicons\";\n\nconst FilterButton = withT(({ t, buttonProps, ...props }) => (\n <div className=\"neeto-molecules-subheader__filter\">\n <NeetoFilters\n buttonProps={{\n \"data-testid\": \"filter-button\",\n icon: Filter,\n style: \"text\",\n tooltipProps: {\n content: t(\"neetoMolecules.common.filter\"),\n position: \"bottom\",\n touch: [\"hold\", 500],\n },\n label: null,\n ...buttonProps,\n }}\n {...props}\n />\n </div>\n));\n\nexport default FilterButton;\n","import classnames from \"classnames\";\nimport { isNotPresent } from \"neetocist\";\nimport PropTypes from \"prop-types\";\nimport { not } from \"ramda\";\n\nimport Columns from \"./Columns\";\nimport Download from \"./Download\";\nimport Filter from \"./Filter\";\n\nconst RightBlock = ({\n downloadButtonProps,\n columnsButtonProps,\n filterProps,\n dataProps,\n}) => {\n const showIcons = isNotPresent(dataProps?.totalCount)\n ? true\n : dataProps?.totalCount > 0;\n\n return (\n <div\n data-testid=\"subheader-rightblock-buttons-container\"\n className={classnames(\"neeto-molecules-subheader__right-actions\", {\n hidden: not(showIcons),\n })}\n >\n {downloadButtonProps && <Download {...downloadButtonProps} />}\n {columnsButtonProps && <Columns {...columnsButtonProps} />}\n {filterProps && <Filter {...filterProps} />}\n </div>\n );\n};\n\nRightBlock.propTypes = {\n /**\n * Props that are passed to the download button.\n */\n downloadButtonProps: PropTypes.shape({\n count: PropTypes.number,\n onClick: PropTypes.func,\n }),\n /**\n * Props that are passed to the columns button, same as the `Columns` component from neetoMolecules.\n */\n columnsButtonProps: PropTypes.shape({\n onChange: PropTypes.func,\n actionBlock: PropTypes.node,\n checkboxProps: PropTypes.object,\n columnData: PropTypes.array,\n isSearchable: PropTypes.bool,\n localStorageKey: PropTypes.string,\n initialValue: PropTypes.array,\n noColumnMessage: PropTypes.string,\n searchProps: PropTypes.object,\n }),\n /**\n * Props that are passed the the filter component. These are the same props as the\n * neetoFilters `Filters` component.\n */\n filterProps: PropTypes.shape({\n size: PropTypes.oneOf([\"xsmall\", \"small\", \"large\"]),\n isOpen: PropTypes.bool,\n setIsOpen: PropTypes.func,\n columns: PropTypes.object,\n onChange: PropTypes.func,\n onSelectorsChange: PropTypes.func,\n buttonProps: PropTypes.object,\n paneProps: PropTypes.object,\n isSearchable: PropTypes.bool,\n className: PropTypes.string,\n }),\n /**\n * Props related to data being displayed, such as tables, lists, and more. The buttons\n * will be hidden if the value of `totalCount` in `dataProps` is `0`.\n */\n dataProps: PropTypes.shape({ totalCount: PropTypes.number }),\n};\n\nexport default RightBlock;\n","import { useLayoutEffect, useRef } from \"react\";\n\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\n\nimport RightBlock from \"./RightBlock\";\nimport \"./subheader.scss\";\n\nconst SubHeader = ({\n className = \"\",\n leftActionBlock,\n rightActionBlock,\n \"data-cy\": dataCy = \"subheader\",\n}) => {\n const subheaderRef = useRef(null);\n\n useLayoutEffect(() => {\n const updateHeaderHeight = () => {\n if (!subheaderRef.current) return;\n const height = subheaderRef.current.offsetHeight;\n document.body.style.setProperty(\n \"--neeto-molecules-effective-subheader-height\",\n `${height}px`\n );\n };\n\n updateHeaderHeight();\n\n window.addEventListener(\"resize\", updateHeaderHeight);\n\n return () => window.removeEventListener(\"resize\", updateHeaderHeight);\n }, []);\n\n return (\n <div\n className={classnames([\"neeto-molecules-subheader\", className])}\n data-cy={dataCy}\n data-testid=\"subheader\"\n ref={subheaderRef}\n >\n <div\n className=\"neeto-molecules-subheader__left-wrapper\"\n data-cy=\"subheader-left-wrapper\"\n >\n {leftActionBlock && (\n <div\n className=\"neeto-molecules-subheader__left\"\n data-cy=\"subheader-left\"\n >\n {leftActionBlock}\n </div>\n )}\n </div>\n {rightActionBlock && (\n <div\n className=\"neeto-molecules-subheader__right\"\n data-cy=\"subheader-right\"\n >\n {rightActionBlock}\n </div>\n )}\n </div>\n );\n};\n\nSubHeader.RightBlock = RightBlock;\n\nSubHeader.propTypes = {\n /**\n * To specify external classnames as overrides to the `SubHeader`.\n */\n className: PropTypes.string,\n /**\n * To specify the content to be rendered in the left side of the `SubHeader` section.\n */\n leftActionBlock: PropTypes.node,\n /**\n * To specify the content to be rendered in the right side of the `SubHeader` section.\n */\n rightActionBlock: PropTypes.node,\n};\n\nexport default SubHeader;\n"],"names":["Columns","forwardRef","_ref","ref","_ref$buttonProps","buttonProps","columnData","localStorageKey","fixedColumns","props","_objectWithoutProperties","_excluded","_useTranslation","useTranslation","t","columnDataIndex","useMemo","pluck","filter","column","includes","dataIndex","_useHiddenColumns","useHiddenColumns","hideColumn","showColumn","_jsx","className","children","ManageColumns","_objectSpread","isSearchable","actionBlock","_jsxs","Button","label","style","onClick","icon","Column","tooltipProps","content","position","touch","displayName","DownloadButton","withT","count","_ref$dataCy","dataCy","Download","FilterButton","NeetoFilters","Filter","RightBlock","downloadButtonProps","columnsButtonProps","filterProps","dataProps","showIcons","isNotPresent","totalCount","classnames","hidden","not","SubHeader","_ref$className","leftActionBlock","rightActionBlock","subheaderRef","useRef","useLayoutEffect","updateHeaderHeight","current","height","offsetHeight","document","body","setProperty","concat","window","addEventListener","removeEventListener"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AASA,IAAMA,OAAO,gBAAGC,gBAAU,CACxB,UAAAC,IAAA,EAEEC,GAAG,EACA;AAAA,EAAA,IAAAC,gBAAA,GAAAF,IAAA,CAFDG,WAAW;AAAXA,IAAAA,WAAW,GAAAD,gBAAA,KAAA,KAAA,CAAA,GAAG,EAAE,GAAAA,gBAAA;IAAEE,UAAU,GAAAJ,IAAA,CAAVI,UAAU;IAAEC,eAAe,GAAAL,IAAA,CAAfK,eAAe;IAAEC,YAAY,GAAAN,IAAA,CAAZM,YAAY;AAAKC,IAAAA,KAAK,GAAAC,wBAAA,CAAAR,IAAA,EAAAS,WAAA,CAAA,CAAA;AAGvE,EAAA,IAAAC,eAAA,GAAcC,2BAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC,CAAA;EAET,IAAMC,eAAe,GAAGC,aAAO,CAC7B,YAAA;AAAA,IAAA,OACEC,WAAK,CACH,WAAW,EACX,CAACX,UAAU,IAAI,EAAE,EAAEY,MAAM,CACvB,UAAAC,MAAM,EAAA;AAAA,MAAA,OAAI,EAACX,YAAY,KAAZA,IAAAA,IAAAA,YAAY,KAAZA,KAAAA,CAAAA,IAAAA,YAAY,CAAEY,QAAQ,CAACD,MAAM,CAACE,SAAS,CAAC,CAAA,CAAA;AAAA,KACrD,CACF,CAAC,CAAA;AAAA,GAAA,EACH,CAACf,UAAU,EAAEE,YAAY,CAC3B,CAAC,CAAA;AAED,EAAA,IAAAc,iBAAA,GAAmCC,2BAAgB,CAAChB,eAAe,CAAC;IAA5DiB,UAAU,GAAAF,iBAAA,CAAVE,UAAU;IAAEC,UAAU,GAAAH,iBAAA,CAAVG,UAAU,CAAA;AAE9B,EAAA,oBACEC,cAAA,CAAA,KAAA,EAAA;AAAKC,IAAAA,SAAS,EAAC,oCAAoC;AAAAC,IAAAA,QAAA,eACjDF,cAAA,CAACG,kBAAa,EAAAC,eAAA,CAAA;MACZC,YAAY,EAAA,IAAA;AACZJ,MAAAA,SAAS,EAAC,mCAAmC;AAC7CK,MAAAA,WAAW,eACTC,eAAA,CAAA,KAAA,EAAA;AAAKN,QAAAA,SAAS,EAAC,kCAAkC;QAAAC,QAAA,EAAA,cAC/CF,cAAA,CAACQ,MAAM,EAAA;AACLP,UAAAA,SAAS,EAAC,2BAA2B;AACrC,UAAA,SAAA,EAAQ,mCAAmC;AAC3CQ,UAAAA,KAAK,EAAErB,CAAC,CAAC,gCAAgC,CAAE;AAC3CsB,UAAAA,KAAK,EAAC,WAAW;UACjBC,OAAO,EAAE,SAATA,OAAOA,GAAA;YAAA,OAAQb,UAAU,CAACT,eAAe,CAAC,CAAA;AAAA,WAAA;AAAC,SAC5C,CAAC,eACFW,cAAA,CAACQ,MAAM,EAAA;AACLP,UAAAA,SAAS,EAAC,2BAA2B;AACrC,UAAA,SAAA,EAAQ,mCAAmC;AAC3CQ,UAAAA,KAAK,EAAErB,CAAC,CAAC,gCAAgC,CAAE;AAC3CsB,UAAAA,KAAK,EAAC,WAAW;UACjBC,OAAO,EAAE,SAATA,OAAOA,GAAA;YAAA,OAAQZ,UAAU,CAACV,eAAe,CAAC,CAAA;AAAA,WAAA;AAAC,SAC5C,CAAC,CAAA;AAAA,OACC,CACN;AACDV,MAAAA,WAAW,EAAAyB,eAAA,CAAA;AACTQ,QAAAA,IAAI,EAAEC,MAAM;AACZJ,QAAAA,KAAK,EAAE,IAAI;AACXK,QAAAA,YAAY,EAAE;AACZC,UAAAA,OAAO,EAAE3B,CAAC,CAAC,gCAAgC,CAAC;AAC5C4B,UAAAA,QAAQ,EAAE,QAAQ;AAClBC,UAAAA,KAAK,EAAE,CAAC,MAAM,EAAE,GAAG,CAAA;SACpB;AACD,QAAA,aAAa,EAAE,gBAAgB;AAC/B,QAAA,SAAS,EAAE,yBAAA;AAAyB,OAAA,EACjCtC,WAAW,CAAA;KACdyB,EAAAA,eAAA,CAAAA,eAAA,CAAA;AACIxB,MAAAA,UAAU,EAAVA,UAAU;AAAEC,MAAAA,eAAe,EAAfA,eAAAA;AAAe,KAAA,EAAKE,KAAK,CAAA,EAAA,EAAA,EAAA;AAAEN,MAAAA,GAAG,EAAHA,GAAAA;KAC9C,CAAA,CAAA,CAAA;AAAC,GACC,CAAC,CAAA;AAEV,CACF,CAAC,CAAA;AAEDH,OAAO,CAAC4C,WAAW,GAAG,SAAS;;ACnE/B,IAAMC,cAAc,GAAGC,gBAAK,CAC1B,UAAA5C,IAAA,EAAA;AAAA,EAAA,IAAGY,CAAC,GAAAZ,IAAA,CAADY,CAAC;IAAEiC,KAAK,GAAA7C,IAAA,CAAL6C,KAAK;IAAEV,OAAO,GAAAnC,IAAA,CAAPmC,OAAO;IAAAW,WAAA,GAAA9C,IAAA,CAAE,SAAS,CAAA;AAAE+C,IAAAA,MAAM,GAAAD,WAAA,KAAG,KAAA,CAAA,GAAA,iBAAiB,GAAAA,WAAA,CAAA;AAAA,EAAA,oBACzDf,eAAA,CAAA,KAAA,EAAA;AAAKN,IAAAA,SAAS,EAAC,qCAAqC;IAAAC,QAAA,EAAA,cAClDF,cAAA,CAACQ,MAAM,EAAA;AACCG,MAAAA,OAAO,EAAPA,OAAO;AACb,MAAA,SAAA,EAASY,MAAO;AAChB,MAAA,aAAA,EAAY,iBAAiB;AAC7BX,MAAAA,IAAI,EAAEY,QAAS;AACfd,MAAAA,KAAK,EAAC,MAAM;AACZI,MAAAA,YAAY,EAAE;AACZC,QAAAA,OAAO,EAAE3B,CAAC,CAAC,gCAAgC,CAAC;AAC5C4B,QAAAA,QAAQ,EAAE,QAAQ;AAClBC,QAAAA,KAAK,EAAE,CAAC,MAAM,EAAE,GAAG,CAAA;AACrB,OAAA;AAAE,KACH,CAAC,EACDI,KAAK,iBACJrB,cAAA,CAAA,MAAA,EAAA;AAAMC,MAAAA,SAAS,EAAC,2CAA2C;AAAAC,MAAAA,QAAA,EACxDmB,KAAAA;AAAK,KACF,CACP,CAAA;AAAA,GACE,CAAC,CAAA;AAAA,CAEV,CAAC;;;;;ACtBD,IAAMI,YAAY,GAAGL,gBAAK,CAAC,UAAA5C,IAAA,EAAA;AAAA,EAAA,IAAGY,CAAC,GAAAZ,IAAA,CAADY,CAAC;IAAET,WAAW,GAAAH,IAAA,CAAXG,WAAW;AAAKI,IAAAA,KAAK,GAAAC,wBAAA,CAAAR,IAAA,EAAAS,SAAA,CAAA,CAAA;AAAA,EAAA,oBACpDe,cAAA,CAAA,KAAA,EAAA;AAAKC,IAAAA,SAAS,EAAC,mCAAmC;AAAAC,IAAAA,QAAA,eAChDF,cAAA,CAAC0B,YAAY,EAAAtB,eAAA,CAAA;AACXzB,MAAAA,WAAW,EAAAyB,eAAA,CAAA;AACT,QAAA,aAAa,EAAE,eAAe;AAC9BQ,QAAAA,IAAI,EAAEe,MAAM;AACZjB,QAAAA,KAAK,EAAE,MAAM;AACbI,QAAAA,YAAY,EAAE;AACZC,UAAAA,OAAO,EAAE3B,CAAC,CAAC,8BAA8B,CAAC;AAC1C4B,UAAAA,QAAQ,EAAE,QAAQ;AAClBC,UAAAA,KAAK,EAAE,CAAC,MAAM,EAAE,GAAG,CAAA;SACpB;AACDR,QAAAA,KAAK,EAAE,IAAA;AAAI,OAAA,EACR9B,WAAW,CAAA;AACd,KAAA,EACEI,KAAK,CACV,CAAA;AAAC,GACC,CAAC,CAAA;AAAA,CACP,CAAC;;;;ACbF,IAAM6C,UAAU,GAAG,SAAbA,UAAUA,CAAApD,IAAA,EAKV;AAAA,EAAA,IAJJqD,mBAAmB,GAAArD,IAAA,CAAnBqD,mBAAmB;IACnBC,kBAAkB,GAAAtD,IAAA,CAAlBsD,kBAAkB;IAClBC,WAAW,GAAAvD,IAAA,CAAXuD,WAAW;IACXC,SAAS,GAAAxD,IAAA,CAATwD,SAAS,CAAA;EAET,IAAMC,SAAS,GAAGC,sBAAY,CAACF,SAAS,aAATA,SAAS,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAATA,SAAS,CAAEG,UAAU,CAAC,GACjD,IAAI,GACJ,CAAAH,SAAS,KAATA,IAAAA,IAAAA,SAAS,uBAATA,SAAS,CAAEG,UAAU,IAAG,CAAC,CAAA;AAE7B,EAAA,oBACE5B,eAAA,CAAA,KAAA,EAAA;AACE,IAAA,aAAA,EAAY,wCAAwC;AACpDN,IAAAA,SAAS,EAAEmC,UAAU,CAAC,0CAA0C,EAAE;MAChEC,MAAM,EAAEC,SAAG,CAACL,SAAS,CAAA;AACvB,KAAC,CAAE;AAAA/B,IAAAA,QAAA,EAEF2B,CAAAA,mBAAmB,iBAAI7B,cAAA,CAACwB,cAAQ,EAAApB,aAAA,CAAA,EAAA,EAAKyB,mBAAmB,CAAG,CAAC,EAC5DC,kBAAkB,iBAAI9B,cAAA,CAAC1B,OAAO,EAAA8B,aAAA,CAAK0B,EAAAA,EAAAA,kBAAkB,CAAG,CAAC,EACzDC,WAAW,iBAAI/B,cAAA,CAAC2B,YAAM,EAAAvB,aAAA,CAAK2B,EAAAA,EAAAA,WAAW,CAAG,CAAC,CAAA;AAAA,GACxC,CAAC,CAAA;AAEV,CAAC;;;;;ACvBD,IAAMQ,SAAS,GAAG,SAAZA,SAASA,CAAA/D,IAAA,EAKT;AAAA,EAAA,IAAAgE,cAAA,GAAAhE,IAAA,CAJJyB,SAAS;AAATA,IAAAA,SAAS,GAAAuC,cAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,cAAA;IACdC,eAAe,GAAAjE,IAAA,CAAfiE,eAAe;IACfC,gBAAgB,GAAAlE,IAAA,CAAhBkE,gBAAgB;IAAApB,WAAA,GAAA9C,IAAA,CAChB,SAAS,CAAA;AAAE+C,IAAAA,MAAM,GAAAD,WAAA,KAAG,KAAA,CAAA,GAAA,WAAW,GAAAA,WAAA,CAAA;AAE/B,EAAA,IAAMqB,YAAY,GAAGC,YAAM,CAAC,IAAI,CAAC,CAAA;AAEjCC,EAAAA,qBAAe,CAAC,YAAM;AACpB,IAAA,IAAMC,kBAAkB,GAAG,SAArBA,kBAAkBA,GAAS;AAC/B,MAAA,IAAI,CAACH,YAAY,CAACI,OAAO,EAAE,OAAA;AAC3B,MAAA,IAAMC,MAAM,GAAGL,YAAY,CAACI,OAAO,CAACE,YAAY,CAAA;AAChDC,MAAAA,QAAQ,CAACC,IAAI,CAACzC,KAAK,CAAC0C,WAAW,CAC7B,8CAA8C,EAAAC,EAAAA,CAAAA,MAAA,CAC3CL,MAAM,OACX,CAAC,CAAA;KACF,CAAA;AAEDF,IAAAA,kBAAkB,EAAE,CAAA;AAEpBQ,IAAAA,MAAM,CAACC,gBAAgB,CAAC,QAAQ,EAAET,kBAAkB,CAAC,CAAA;IAErD,OAAO,YAAA;AAAA,MAAA,OAAMQ,MAAM,CAACE,mBAAmB,CAAC,QAAQ,EAAEV,kBAAkB,CAAC,CAAA;AAAA,KAAA,CAAA;GACtE,EAAE,EAAE,CAAC,CAAA;AAEN,EAAA,oBACEvC,eAAA,CAAA,KAAA,EAAA;IACEN,SAAS,EAAEmC,UAAU,CAAC,CAAC,2BAA2B,EAAEnC,SAAS,CAAC,CAAE;AAChE,IAAA,SAAA,EAASsB,MAAO;AAChB,IAAA,aAAA,EAAY,WAAW;AACvB9C,IAAAA,GAAG,EAAEkE,YAAa;AAAAzC,IAAAA,QAAA,gBAElBF,cAAA,CAAA,KAAA,EAAA;AACEC,MAAAA,SAAS,EAAC,yCAAyC;AACnD,MAAA,SAAA,EAAQ,wBAAwB;MAAAC,QAAA,EAE/BuC,eAAe,iBACdzC,cAAA,CAAA,KAAA,EAAA;AACEC,QAAAA,SAAS,EAAC,iCAAiC;AAC3C,QAAA,SAAA,EAAQ,gBAAgB;AAAAC,QAAAA,QAAA,EAEvBuC,eAAAA;OACE,CAAA;AACN,KACE,CAAC,EACLC,gBAAgB,iBACf1C,cAAA,CAAA,KAAA,EAAA;AACEC,MAAAA,SAAS,EAAC,kCAAkC;AAC5C,MAAA,SAAA,EAAQ,iBAAiB;AAAAC,MAAAA,QAAA,EAExBwC,gBAAAA;AAAgB,KACd,CACN,CAAA;AAAA,GACE,CAAC,CAAA;AAEV,EAAC;AAEDH,SAAS,CAACX,UAAU,GAAGA,UAAU;;;;"}
1
+ {"version":3,"file":"SubHeader.js","sources":["../../src/components/SubHeader/RightBlock/Columns.jsx","../../src/components/SubHeader/RightBlock/Download.jsx","../../src/components/SubHeader/RightBlock/Filter.jsx","../../src/components/SubHeader/RightBlock/index.jsx","../../src/components/SubHeader/index.jsx"],"sourcesContent":["import { withT } from \"neetocommons/react-utils\";\nimport { Column } from \"neetoicons\";\nimport { omit } from \"ramda\";\n\nimport ManageColumns from \"components/Columns\";\n\nconst unUsedI18nProps = [\"tReady\", \"i18n\"];\n\nconst Columns = withT(\n ({ t, buttonProps = {}, columnData, tableKey, ...props }) => (\n <div className=\"neeto-molecules-subheader__columns\">\n <ManageColumns\n isSearchable\n className=\"neeto-ui-dropdown--manage-columns\"\n buttonProps={{\n icon: Column,\n label: null,\n tooltipProps: {\n content: t(\"neetoMolecules.columns.columns\"),\n position: \"bottom\",\n touch: [\"hold\", 500],\n },\n \"data-testid\": \"columns-button\",\n \"data-cy\": \"columns-dropdown-button\",\n ...buttonProps,\n }}\n {...{ columnData, tableKey, ...omit(unUsedI18nProps, props) }}\n />\n </div>\n )\n);\n\nColumns.displayName = \"Columns\";\nexport default Columns;\n","import { withT } from \"neetocommons/react-utils\";\nimport { Download } from \"neetoicons\";\nimport { Button } from \"neetoui\";\n\nconst DownloadButton = withT(\n ({ t, count, onClick, \"data-cy\": dataCy = \"download-button\" }) => (\n <div className=\"neeto-molecules-subheader__download\">\n <Button\n {...{ onClick }}\n data-cy={dataCy}\n data-testid=\"download-button\"\n icon={Download}\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoMolecules.common.download\"),\n position: \"bottom\",\n touch: [\"hold\", 500],\n }}\n />\n {count && (\n <span className=\"neeto-molecules-subheader__download-count\">\n {count}\n </span>\n )}\n </div>\n )\n);\n\nexport default DownloadButton;\n","import { withT } from \"neetocommons/react-utils\";\nimport { Filters as NeetoFilters } from \"neetofilters\";\nimport { Filter } from \"neetoicons\";\n\nconst FilterButton = withT(({ t, buttonProps, ...props }) => (\n <div className=\"neeto-molecules-subheader__filter\">\n <NeetoFilters\n buttonProps={{\n \"data-testid\": \"filter-button\",\n icon: Filter,\n style: \"text\",\n tooltipProps: {\n content: t(\"neetoMolecules.common.filter\"),\n position: \"bottom\",\n touch: [\"hold\", 500],\n },\n label: null,\n ...buttonProps,\n }}\n {...props}\n />\n </div>\n));\n\nexport default FilterButton;\n","import classnames from \"classnames\";\nimport { isNotPresent } from \"neetocist\";\nimport PropTypes from \"prop-types\";\nimport { not } from \"ramda\";\n\nimport Columns from \"./Columns\";\nimport Download from \"./Download\";\nimport Filter from \"./Filter\";\n\nconst RightBlock = ({\n downloadButtonProps,\n columnsButtonProps,\n filterProps,\n dataProps,\n}) => {\n const showIcons = isNotPresent(dataProps?.totalCount)\n ? true\n : dataProps?.totalCount > 0;\n\n return (\n <div\n data-testid=\"subheader-rightblock-buttons-container\"\n className={classnames(\"neeto-molecules-subheader__right-actions\", {\n hidden: not(showIcons),\n })}\n >\n {downloadButtonProps && <Download {...downloadButtonProps} />}\n {columnsButtonProps && <Columns {...columnsButtonProps} />}\n {filterProps && <Filter {...filterProps} />}\n </div>\n );\n};\n\nRightBlock.propTypes = {\n /**\n * Props that are passed to the download button.\n */\n downloadButtonProps: PropTypes.shape({\n count: PropTypes.number,\n onClick: PropTypes.func,\n }),\n /**\n * Props that are passed to the columns button, same as the `Columns` component from neetoMolecules.\n */\n columnsButtonProps: PropTypes.shape({\n actionBlock: PropTypes.node,\n tableKey: PropTypes.string,\n checkboxProps: PropTypes.object,\n columnData: PropTypes.array,\n isSearchable: PropTypes.bool,\n noColumnMessage: PropTypes.string,\n searchProps: PropTypes.object,\n }),\n /**\n * Props that are passed the the filter component. These are the same props as the\n * neetoFilters `Filters` component.\n */\n filterProps: PropTypes.shape({\n size: PropTypes.oneOf([\"xsmall\", \"small\", \"large\"]),\n isOpen: PropTypes.bool,\n setIsOpen: PropTypes.func,\n columns: PropTypes.object,\n onChange: PropTypes.func,\n onSelectorsChange: PropTypes.func,\n buttonProps: PropTypes.object,\n paneProps: PropTypes.object,\n isSearchable: PropTypes.bool,\n className: PropTypes.string,\n }),\n /**\n * Props related to data being displayed, such as tables, lists, and more. The buttons\n * will be hidden if the value of `totalCount` in `dataProps` is `0`.\n */\n dataProps: PropTypes.shape({ totalCount: PropTypes.number }),\n};\n\nexport default RightBlock;\n","import { useLayoutEffect, useRef } from \"react\";\n\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\n\nimport RightBlock from \"./RightBlock\";\nimport \"./subheader.scss\";\n\nconst SubHeader = ({\n className = \"\",\n leftActionBlock,\n rightActionBlock,\n \"data-cy\": dataCy = \"subheader\",\n}) => {\n const subheaderRef = useRef(null);\n\n useLayoutEffect(() => {\n const updateHeaderHeight = () => {\n if (!subheaderRef.current) return;\n const height = subheaderRef.current.offsetHeight;\n document.body.style.setProperty(\n \"--neeto-molecules-effective-subheader-height\",\n `${height}px`\n );\n };\n\n updateHeaderHeight();\n\n window.addEventListener(\"resize\", updateHeaderHeight);\n\n return () => window.removeEventListener(\"resize\", updateHeaderHeight);\n }, []);\n\n return (\n <div\n className={classnames([\"neeto-molecules-subheader\", className])}\n data-cy={dataCy}\n data-testid=\"subheader\"\n ref={subheaderRef}\n >\n <div\n className=\"neeto-molecules-subheader__left-wrapper\"\n data-cy=\"subheader-left-wrapper\"\n >\n {leftActionBlock && (\n <div\n className=\"neeto-molecules-subheader__left\"\n data-cy=\"subheader-left\"\n >\n {leftActionBlock}\n </div>\n )}\n </div>\n {rightActionBlock && (\n <div\n className=\"neeto-molecules-subheader__right\"\n data-cy=\"subheader-right\"\n >\n {rightActionBlock}\n </div>\n )}\n </div>\n );\n};\n\nSubHeader.RightBlock = RightBlock;\n\nSubHeader.propTypes = {\n /**\n * To specify external classnames as overrides to the `SubHeader`.\n */\n className: PropTypes.string,\n /**\n * To specify the content to be rendered in the left side of the `SubHeader` section.\n */\n leftActionBlock: PropTypes.node,\n /**\n * To specify the content to be rendered in the right side of the `SubHeader` section.\n */\n rightActionBlock: PropTypes.node,\n};\n\nexport default SubHeader;\n"],"names":["unUsedI18nProps","Columns","withT","_ref","t","_ref$buttonProps","buttonProps","columnData","tableKey","props","_objectWithoutProperties","_excluded","_jsx","className","children","ManageColumns","_objectSpread","isSearchable","icon","Column","label","tooltipProps","content","position","touch","omit","displayName","DownloadButton","count","onClick","_ref$dataCy","dataCy","_jsxs","Button","Download","style","FilterButton","NeetoFilters","Filter","RightBlock","downloadButtonProps","columnsButtonProps","filterProps","dataProps","showIcons","isNotPresent","totalCount","classnames","hidden","not","SubHeader","_ref$className","leftActionBlock","rightActionBlock","subheaderRef","useRef","useLayoutEffect","updateHeaderHeight","current","height","offsetHeight","document","body","setProperty","concat","window","addEventListener","removeEventListener","ref"],"mappings":"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"}
@@ -52,13 +52,17 @@ require('@bigbinary/neetoui/Input');
52
52
  require('@bigbinary/neeto-icons/MenuHorizontal');
53
53
  require('@bigbinary/neeto-icons/MenuVertical');
54
54
  require('@bigbinary/neetoui/Tooltip');
55
+ require('@bigbinary/neeto-commons-frontend/react-utils');
55
56
  require('@bigbinary/neeto-icons/Column');
56
- require('./useColumns-BP8c4PV-.js');
57
+ require('./useColumns-XlhUVahw.js');
58
+ require('@dnd-kit/core');
59
+ require('@dnd-kit/sortable');
57
60
  require('@bigbinary/neetoui/Checkbox');
58
61
  require('@bigbinary/neetoui/Label');
62
+ require('@bigbinary/neeto-icons/Drag');
63
+ require('@bigbinary/neeto-commons-frontend/react-utils/useMutationWithInvalidation');
59
64
  require('zustand');
60
65
  require('zustand/middleware');
61
- require('@bigbinary/neeto-commons-frontend/react-utils');
62
66
  require('@bigbinary/neeto-icons/Download');
63
67
  require('@bigbinary/neeto-filters-frontend/Filters');
64
68
  require('@bigbinary/neeto-icons/Filter');
@@ -1 +1 @@
1
- {"version":3,"file":"Taxonomy.js","sources":["../../src/components/Taxonomy/constants.js","../../src/components/Taxonomy/api.js","../../src/components/Taxonomy/useTaxonomyApi.js","../../src/components/Taxonomy/utils.jsx","../../src/components/Taxonomy/EditPane.jsx","../../src/components/Taxonomy/LeftActionBlock.jsx","../../src/components/Taxonomy/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\nimport * as yup from \"yup\";\n\nexport const LABEL_REJECT_CHARS_REGEX = /[^a-zA-Z\\d\\s_-]+/;\n\nexport const VALIDATION_SCHEMA = yup.object().shape({\n singularLabel: yup\n .string()\n .trim()\n .required(\n t(\"neetoMolecules.taxonomy.editPane.validations.singularLabelRequired\")\n ),\n pluralLabel: yup\n .string()\n .trim()\n .required(\n t(\"neetoMolecules.taxonomy.editPane.validations.pluralLabelRequired\")\n ),\n});\n\nexport const TAXONOMY_EVENTS = { UPDATED: \"taxonomy_updated\" };\n","import axios from \"axios\";\nimport { BASE_API_V1_URL } from \"neetocommons/constants\";\n\nconst update = ({ keyName, payload }) =>\n axios.patch(`${BASE_API_V1_URL}/taxonomies/${keyName}`, payload);\n\nconst bulkDestroy = payload =>\n axios.delete(`${BASE_API_V1_URL}/taxonomies/bulk_destroy`, {\n data: payload,\n });\n\nconst taxonomiesApi = { update, bulkDestroy };\n\nexport default taxonomiesApi;\n","import { useMutation } from \"@tanstack/react-query\";\n\nimport taxonomiesApi from \"./api\";\n\nconst useUpdateTaxonomy = options =>\n useMutation({ mutationFn: taxonomiesApi.update, ...options });\n\nconst useBulkDestroyTaxonomies = options =>\n useMutation({ mutationFn: taxonomiesApi.bulkDestroy, ...options });\n\nexport { useUpdateTaxonomy, useBulkDestroyTaxonomies };\n","import { t } from \"i18next\";\nimport { capitalize } from \"neetocist\";\nimport { Typography } from \"neetoui\";\nimport { fromPairs, toPairs } from \"ramda\";\n\nimport MoreDropdown from \"components/MoreDropdown\";\n\nexport const formatLabel = label => capitalize(label.trim());\n\nexport const formatDataForTable = taxonomies =>\n toPairs(taxonomies).map(([keyName, labels]) => ({\n keyName,\n singularLabel: labels[\"singular\"],\n pluralLabel: labels[\"plural\"],\n }));\n\nexport const getColumnData = ({\n columnLabels,\n columnsToShow,\n handleEdit,\n setCurrentKeys,\n setIsResetModalOpen,\n}) => {\n const {\n singularColumn: showSingularColumn = true,\n pluralColumn: showPluralColumn = true,\n } = columnsToShow;\n\n const {\n singular: singularLabel = t(\"neetoMolecules.taxonomy.singularLabel\"),\n plural: pluralLabel = t(\"neetoMolecules.taxonomy.pluralLabel\"),\n } = columnLabels;\n\n return [\n {\n title: t(\"neetoMolecules.taxonomy.defaultLabel\"),\n dataIndex: \"default\",\n key: \"defaultLabel\",\n width: 400,\n render: (_, values) => {\n const menuItems = [\n {\n key: \"edit\",\n label: t(\"neetoMolecules.common.actions.edit\"),\n onClick: () => handleEdit(values),\n },\n {\n key: \"reset\",\n label: t(\"neetoMolecules.common.actions.resetToDefaults\"),\n onClick: () => {\n setCurrentKeys([values.keyName]);\n setIsResetModalOpen(true);\n },\n },\n ];\n\n return (\n <div className=\"flex items-center justify-between gap-x-3\">\n <Typography style=\"body2\">\n {t(`taxonomyDefaultLabels.${values.keyName}.singular`)}\n </Typography>\n <MoreDropdown\n {...{ menuItems }}\n dropdownButtonProps={{\n \"data-testid\": `nui-dropdown-icon-${values.keyName}`,\n className: \"mr-1 my-1\",\n }}\n dropdownProps={{\n strategy: \"fixed\",\n placement: \"bottom-end\",\n appendTo: () => document.body,\n }}\n />\n </div>\n );\n },\n },\n ...(showSingularColumn\n ? [\n {\n title: singularLabel,\n dataIndex: \"singularLabel\",\n key: \"singularLabel\",\n width: 300,\n },\n ]\n : []),\n ...(showPluralColumn\n ? [\n {\n title: pluralLabel,\n dataIndex: \"pluralLabel\",\n key: \"pluralLabel\",\n width: 300,\n },\n ]\n : []),\n ];\n};\n\nexport const getFilteredTaxonomies = (matchString, taxonomies) => {\n const filteredArray = toPairs(taxonomies).filter(([key, value]) => {\n const defaultLabel = t(`taxonomyDefaultLabels.${key}.singular`);\n const valuesToSearch = [defaultLabel, ...Object.values(value)];\n\n return valuesToSearch.some(str =>\n str.toLowerCase().includes(matchString.toLowerCase())\n );\n });\n\n return fromPairs(filteredArray);\n};\n","import { useRef } from \"react\";\n\nimport { SINGULAR, PLURAL } from \"neetocommons/constants\";\nimport { captureAnalyticsEvent } from \"neetocommons/utils\";\nimport { Pane, Toastr, Typography } from \"neetoui\";\nimport { ActionBlock, Form, Input } from \"neetoui/formik\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport {\n LABEL_REJECT_CHARS_REGEX,\n TAXONOMY_EVENTS,\n VALIDATION_SCHEMA,\n} from \"./constants\";\nimport { useUpdateTaxonomy } from \"./useTaxonomyApi\";\nimport { formatLabel } from \"./utils\";\n\nconst EditPane = ({\n columnLabels,\n columnsToShow,\n initialValues,\n isOpen,\n onClose,\n}) => {\n const { t } = useTranslation();\n const initialFocusRef = useRef(null);\n\n const { mutate: updateTaxonomy } = useUpdateTaxonomy();\n\n const {\n singularColumn: showSingularInputField = true,\n pluralColumn: showPluralInputField = true,\n } = columnsToShow;\n\n const {\n singular: singularLabel = t(\"neetoMolecules.taxonomy.singularLabel\"),\n plural: pluralLabel = t(\"neetoMolecules.taxonomy.pluralLabel\"),\n } = columnLabels;\n\n const handleSubmit = (values, { setSubmitting }) => {\n const { keyName, singularLabel, pluralLabel } = values;\n\n const payload = {\n taxonomy: {\n keyName,\n singularLabel: formatLabel(singularLabel),\n pluralLabel: formatLabel(pluralLabel),\n },\n };\n\n const options = {\n onSuccess: () => {\n captureAnalyticsEvent(TAXONOMY_EVENTS.UPDATED, {\n taxonomy: payload.taxonomy,\n });\n window.location.reload();\n },\n onError: error => Toastr.error(error),\n onSettled: () => setSubmitting(false),\n };\n\n updateTaxonomy({ keyName, payload }, options);\n };\n\n return (\n <Pane\n {...{ initialFocusRef, isOpen, onClose }}\n data-testid=\"taxonomy-edit-pane\"\n >\n <Pane.Header>\n <Typography style=\"h2\" weight=\"semibold\">\n <Trans\n i18nKey=\"neetoMolecules.taxonomy.editPane.title\"\n values={{\n entity: t(\n `taxonomyDefaultLabels.${initialValues.keyName}.singular`\n ),\n ...(showSingularInputField && showPluralInputField\n ? PLURAL\n : SINGULAR),\n }}\n />\n </Typography>\n </Pane.Header>\n <Form\n formikProps={{\n initialValues,\n validationSchema: VALIDATION_SCHEMA,\n onSubmit: handleSubmit,\n }}\n >\n <Pane.Body>\n <div className=\"w-full space-y-6\">\n {showSingularInputField && (\n <Input\n required\n className=\"w-full\"\n data-cy=\"taxonomy-singular-input-field\"\n data-testid=\"taxonomy-singular-input-field\"\n label={singularLabel}\n name=\"singularLabel\"\n ref={initialFocusRef}\n rejectCharsRegex={LABEL_REJECT_CHARS_REGEX}\n />\n )}\n {showPluralInputField && (\n <Input\n required\n className=\"w-full\"\n data-cy=\"taxonomy-plural-input-field\"\n data-testid=\"taxonomy-plural-input-field\"\n label={pluralLabel}\n name=\"pluralLabel\"\n rejectCharsRegex={LABEL_REJECT_CHARS_REGEX}\n />\n )}\n </div>\n </Pane.Body>\n <Pane.Footer>\n <ActionBlock\n cancelButtonProps={{ onClick: onClose, disabled: false }}\n className=\"flex items-center space-x-2\"\n />\n </Pane.Footer>\n </Form>\n </Pane>\n );\n};\n\nexport default EditPane;\n","import { t } from \"i18next\";\nimport { Dropdown, Typography } from \"neetoui\";\nimport { Trans } from \"react-i18next\";\n\nconst LeftActionBlock = ({\n selectedCount,\n totalCount,\n setIsResetModalOpen,\n setCurrentKeys,\n selectedRowIds,\n}) => {\n const { Menu, MenuItem } = Dropdown;\n\n return (\n !!totalCount && (\n <>\n {selectedCount > 0 ? (\n <>\n <Typography\n className=\"mr-4 font-semibold\"\n component=\"h4\"\n data-cy=\"item-count\"\n >\n <Trans\n i18nKey=\"neetoMolecules.taxonomy.actionBlock.selectedTaxonomy\"\n values={{ count: selectedCount, totalCount }}\n components={{\n span: <span className=\"neeto-ui-text-gray-600\" />,\n }}\n />\n </Typography>\n <Dropdown\n buttonStyle=\"secondary\"\n label={t(\"neetoMolecules.taxonomy.actionBlock.takeAction\")}\n >\n <Menu>\n <MenuItem.Button\n style=\"secondary\"\n onClick={() => {\n setCurrentKeys(selectedRowIds);\n setIsResetModalOpen(true);\n }}\n >\n {t(\"neetoMolecules.common.actions.resetToDefaults\")}\n </MenuItem.Button>\n </Menu>\n </Dropdown>\n </>\n ) : (\n <Typography\n className=\"mr-4 font-semibold\"\n component=\"h4\"\n data-cy=\"item-count\"\n >\n {t(\"neetoMolecules.taxonomy.actionBlock.taxonomyWithCount\", {\n count: totalCount,\n })}\n </Typography>\n )}\n </>\n )\n );\n};\n\nexport default LeftActionBlock;\n","import { useState } from \"react\";\n\nimport { t } from \"i18next\";\nimport { isNotEmpty } from \"neetocist\";\nimport { taxonomies, globalProps } from \"neetocommons/initializers\";\nimport withTitle from \"neetocommons/react-utils/withTitle\";\nimport { Alert, NoData, Table, Toastr } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { prop, pick, keys } from \"ramda\";\nimport { Trans } from \"react-i18next\";\n\nimport Container from \"components/Container\";\nimport Header from \"components/Header\";\nimport SubHeader from \"components/SubHeader\";\nimport TableWrapper from \"components/TableWrapper\";\n\nimport EditPane from \"./EditPane\";\nimport LeftActionBlock from \"./LeftActionBlock\";\nimport { useBulkDestroyTaxonomies } from \"./useTaxonomyApi\";\nimport {\n formatDataForTable,\n getColumnData,\n getFilteredTaxonomies,\n} from \"./utils\";\n\nconst Taxonomy = ({\n breadcrumbs,\n columnLabels = {},\n columnsToShow = {},\n titleHelpPopoverProps = {},\n}) => {\n const [isResetModalOpen, setIsResetModalOpen] = useState(false);\n const [isEditTaxonomyPaneOpen, setIsEditTaxonomyPaneOpen] = useState(false);\n const [initialValues, setInitialValues] = useState({});\n const [selectedRowIds, setSelectedRowIds] = useState([]);\n const [searchString, setSearchString] = useState(\"\");\n const [currentKeys, setCurrentKeys] = useState([]);\n\n const { mutate: bulkDestroyTaxonomies } = useBulkDestroyTaxonomies();\n\n const hostTaxonomyKeys = keys(globalProps.taxonomies);\n const hostTaxonomies = pick(hostTaxonomyKeys, taxonomies);\n\n const [filteredTaxonomies, setFilteredTaxonomies] = useState(hostTaxonomies);\n\n const handleRowSelect = ids => setSelectedRowIds(ids);\n\n const handleDelete = () => {\n const payload = { keyNames: currentKeys };\n\n const options = {\n onSuccess: () => window.location.reload(),\n onError: error => Toastr.error(error),\n };\n\n bulkDestroyTaxonomies(payload, options);\n };\n\n const handleEdit = values => {\n setInitialValues(values);\n setIsEditTaxonomyPaneOpen(true);\n };\n\n const handleSearch = event => {\n setSearchString(event.target.value);\n const newTaxonomies = getFilteredTaxonomies(\n event.target.value,\n hostTaxonomies\n );\n setFilteredTaxonomies(newTaxonomies);\n };\n\n return (\n <Container>\n <Header\n {...{ breadcrumbs }}\n title={t(\"neetoMolecules.taxonomy.title\")}\n searchProps={{\n onChange: handleSearch,\n value: searchString,\n placeholder: t(\"neetoMolecules.taxonomy.searchTaxonomy\"),\n }}\n titleHelpPopoverProps={{\n description: t(\"neetoMolecules.taxonomy.description\"),\n title: t(\"neetoMolecules.taxonomy.title\"),\n ...titleHelpPopoverProps,\n }}\n />\n <SubHeader\n leftActionBlock={\n <LeftActionBlock\n {...{ selectedRowIds, setCurrentKeys, setIsResetModalOpen }}\n selectedCount={selectedRowIds.length}\n totalCount={Object.entries(filteredTaxonomies).length}\n />\n }\n />\n {isNotEmpty(filteredTaxonomies) ? (\n <TableWrapper>\n <Table\n fixedHeight\n rowSelection\n allowRowClick={false}\n rowData={formatDataForTable(filteredTaxonomies)}\n rowKey={prop(\"keyName\")}\n selectedRowKeys={selectedRowIds}\n tableLayout=\"fixed\"\n columnData={getColumnData({\n columnLabels,\n columnsToShow,\n handleEdit,\n setCurrentKeys,\n setIsResetModalOpen,\n })}\n onRowSelect={handleRowSelect}\n />\n <EditPane\n {...{ columnLabels, columnsToShow, initialValues }}\n isOpen={isEditTaxonomyPaneOpen}\n onClose={() => setIsEditTaxonomyPaneOpen(false)}\n />\n <Alert\n isOpen={isResetModalOpen}\n submitButtonLabel={t(\"neetoMolecules.common.actions.proceed\")}\n title={t(\"neetoMolecules.taxonomy.resetAlert.title\")}\n message={\n <Trans\n i18nKey=\"neetoMolecules.taxonomy.resetAlert.message\"\n values={{\n count: currentKeys.length,\n what: t(`taxonomyDefaultLabels.${currentKeys[0]}.singular`),\n }}\n />\n }\n onClose={() => setIsResetModalOpen(false)}\n onSubmit={handleDelete}\n />\n </TableWrapper>\n ) : (\n <div className=\"flex h-full w-full items-center justify-center\">\n <NoData title={t(\"neetoMolecules.taxonomy.noData\")} />\n </div>\n )}\n </Container>\n );\n};\n\nTaxonomy.propTypes = {\n /**\n * To show breadcrumbs. `text` accepts a text string to be shown as the breadcrumb and `link` accepts relative URL path for the breadcrumb.\n */\n breadcrumbs: PropTypes.arrayOf(\n PropTypes.shape({\n text: PropTypes.string,\n link: PropTypes.string,\n })\n ),\n /**\n * To provide custom column labels for the table.\n */\n columnLabels: PropTypes.object,\n /**\n * To show/hide columns in the table.\n */\n columnsToShow: PropTypes.object,\n /**\n * Props to be passed to the help popover in the title.\n */\n titleHelpPopoverProps: PropTypes.object,\n};\n\nexport default withTitle(Taxonomy, t(\"neetoMolecules.taxonomy.browserTitle\"));\n"],"names":["LABEL_REJECT_CHARS_REGEX","VALIDATION_SCHEMA","yup","object","shape","singularLabel","string","trim","required","t","pluralLabel","TAXONOMY_EVENTS","UPDATED","update","_ref","keyName","payload","axios","patch","concat","BASE_API_V1_URL","bulkDestroy","data","taxonomiesApi","useUpdateTaxonomy","options","useMutation","_objectSpread","mutationFn","useBulkDestroyTaxonomies","formatLabel","label","capitalize","formatDataForTable","taxonomies","toPairs","map","_ref2","_slicedToArray","labels","getColumnData","_ref3","columnLabels","columnsToShow","handleEdit","setCurrentKeys","setIsResetModalOpen","_columnsToShow$singul","singularColumn","showSingularColumn","_columnsToShow$plural","pluralColumn","showPluralColumn","_columnLabels$singula","singular","_columnLabels$plural","plural","title","dataIndex","key","width","render","_","values","menuItems","onClick","_jsxs","className","children","_jsx","Typography","style","MoreDropdown","dropdownButtonProps","dropdownProps","strategy","placement","appendTo","document","body","_toConsumableArray","getFilteredTaxonomies","matchString","filteredArray","filter","_ref4","_ref5","value","defaultLabel","valuesToSearch","Object","some","str","toLowerCase","includes","fromPairs","EditPane","initialValues","isOpen","onClose","_useTranslation","useTranslation","initialFocusRef","useRef","_useUpdateTaxonomy","updateTaxonomy","mutate","showSingularInputField","showPluralInputField","handleSubmit","setSubmitting","taxonomy","onSuccess","captureAnalyticsEvent","window","location","reload","onError","error","Toastr","onSettled","Pane","Header","weight","Trans","i18nKey","entity","PLURAL","SINGULAR","Form","formikProps","validationSchema","onSubmit","Body","Input","name","ref","rejectCharsRegex","Footer","ActionBlock","cancelButtonProps","disabled","LeftActionBlock","selectedCount","totalCount","selectedRowIds","Menu","Dropdown","MenuItem","_Fragment","component","count","components","span","buttonStyle","Button","Taxonomy","breadcrumbs","_ref$columnLabels","_ref$columnsToShow","_ref$titleHelpPopover","titleHelpPopoverProps","_useState","useState","_useState2","isResetModalOpen","_useState3","_useState4","isEditTaxonomyPaneOpen","setIsEditTaxonomyPaneOpen","_useState5","_useState6","setInitialValues","_useState7","_useState8","setSelectedRowIds","_useState9","_useState10","searchString","setSearchString","_useState11","_useState12","currentKeys","_useBulkDestroyTaxono","bulkDestroyTaxonomies","hostTaxonomyKeys","keys","globalProps","hostTaxonomies","pick","_useState13","_useState14","filteredTaxonomies","setFilteredTaxonomies","handleRowSelect","ids","handleDelete","keyNames","handleSearch","event","target","newTaxonomies","Container","searchProps","onChange","placeholder","description","SubHeader","leftActionBlock","length","entries","isNotEmpty","TableWrapper","Table","fixedHeight","rowSelection","allowRowClick","rowData","rowKey","prop","selectedRowKeys","tableLayout","columnData","onRowSelect","Alert","submitButtonLabel","message","what","NoData","withTitle"],"mappings":"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"}
1
+ {"version":3,"file":"Taxonomy.js","sources":["../../src/components/Taxonomy/constants.js","../../src/components/Taxonomy/api.js","../../src/components/Taxonomy/useTaxonomyApi.js","../../src/components/Taxonomy/utils.jsx","../../src/components/Taxonomy/EditPane.jsx","../../src/components/Taxonomy/LeftActionBlock.jsx","../../src/components/Taxonomy/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\nimport * as yup from \"yup\";\n\nexport const LABEL_REJECT_CHARS_REGEX = /[^a-zA-Z\\d\\s_-]+/;\n\nexport const VALIDATION_SCHEMA = yup.object().shape({\n singularLabel: yup\n .string()\n .trim()\n .required(\n t(\"neetoMolecules.taxonomy.editPane.validations.singularLabelRequired\")\n ),\n pluralLabel: yup\n .string()\n .trim()\n .required(\n t(\"neetoMolecules.taxonomy.editPane.validations.pluralLabelRequired\")\n ),\n});\n\nexport const TAXONOMY_EVENTS = { UPDATED: \"taxonomy_updated\" };\n","import axios from \"axios\";\nimport { BASE_API_V1_URL } from \"neetocommons/constants\";\n\nconst update = ({ keyName, payload }) =>\n axios.patch(`${BASE_API_V1_URL}/taxonomies/${keyName}`, payload);\n\nconst bulkDestroy = payload =>\n axios.delete(`${BASE_API_V1_URL}/taxonomies/bulk_destroy`, {\n data: payload,\n });\n\nconst taxonomiesApi = { update, bulkDestroy };\n\nexport default taxonomiesApi;\n","import { useMutation } from \"@tanstack/react-query\";\n\nimport taxonomiesApi from \"./api\";\n\nconst useUpdateTaxonomy = options =>\n useMutation({ mutationFn: taxonomiesApi.update, ...options });\n\nconst useBulkDestroyTaxonomies = options =>\n useMutation({ mutationFn: taxonomiesApi.bulkDestroy, ...options });\n\nexport { useUpdateTaxonomy, useBulkDestroyTaxonomies };\n","import { t } from \"i18next\";\nimport { capitalize } from \"neetocist\";\nimport { Typography } from \"neetoui\";\nimport { fromPairs, toPairs } from \"ramda\";\n\nimport MoreDropdown from \"components/MoreDropdown\";\n\nexport const formatLabel = label => capitalize(label.trim());\n\nexport const formatDataForTable = taxonomies =>\n toPairs(taxonomies).map(([keyName, labels]) => ({\n keyName,\n singularLabel: labels[\"singular\"],\n pluralLabel: labels[\"plural\"],\n }));\n\nexport const getColumnData = ({\n columnLabels,\n columnsToShow,\n handleEdit,\n setCurrentKeys,\n setIsResetModalOpen,\n}) => {\n const {\n singularColumn: showSingularColumn = true,\n pluralColumn: showPluralColumn = true,\n } = columnsToShow;\n\n const {\n singular: singularLabel = t(\"neetoMolecules.taxonomy.singularLabel\"),\n plural: pluralLabel = t(\"neetoMolecules.taxonomy.pluralLabel\"),\n } = columnLabels;\n\n return [\n {\n title: t(\"neetoMolecules.taxonomy.defaultLabel\"),\n dataIndex: \"default\",\n key: \"defaultLabel\",\n width: 400,\n render: (_, values) => {\n const menuItems = [\n {\n key: \"edit\",\n label: t(\"neetoMolecules.common.actions.edit\"),\n onClick: () => handleEdit(values),\n },\n {\n key: \"reset\",\n label: t(\"neetoMolecules.common.actions.resetToDefaults\"),\n onClick: () => {\n setCurrentKeys([values.keyName]);\n setIsResetModalOpen(true);\n },\n },\n ];\n\n return (\n <div className=\"flex items-center justify-between gap-x-3\">\n <Typography style=\"body2\">\n {t(`taxonomyDefaultLabels.${values.keyName}.singular`)}\n </Typography>\n <MoreDropdown\n {...{ menuItems }}\n dropdownButtonProps={{\n \"data-testid\": `nui-dropdown-icon-${values.keyName}`,\n className: \"mr-1 my-1\",\n }}\n dropdownProps={{\n strategy: \"fixed\",\n placement: \"bottom-end\",\n appendTo: () => document.body,\n }}\n />\n </div>\n );\n },\n },\n ...(showSingularColumn\n ? [\n {\n title: singularLabel,\n dataIndex: \"singularLabel\",\n key: \"singularLabel\",\n width: 300,\n },\n ]\n : []),\n ...(showPluralColumn\n ? [\n {\n title: pluralLabel,\n dataIndex: \"pluralLabel\",\n key: \"pluralLabel\",\n width: 300,\n },\n ]\n : []),\n ];\n};\n\nexport const getFilteredTaxonomies = (matchString, taxonomies) => {\n const filteredArray = toPairs(taxonomies).filter(([key, value]) => {\n const defaultLabel = t(`taxonomyDefaultLabels.${key}.singular`);\n const valuesToSearch = [defaultLabel, ...Object.values(value)];\n\n return valuesToSearch.some(str =>\n str.toLowerCase().includes(matchString.toLowerCase())\n );\n });\n\n return fromPairs(filteredArray);\n};\n","import { useRef } from \"react\";\n\nimport { SINGULAR, PLURAL } from \"neetocommons/constants\";\nimport { captureAnalyticsEvent } from \"neetocommons/utils\";\nimport { Pane, Toastr, Typography } from \"neetoui\";\nimport { ActionBlock, Form, Input } from \"neetoui/formik\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport {\n LABEL_REJECT_CHARS_REGEX,\n TAXONOMY_EVENTS,\n VALIDATION_SCHEMA,\n} from \"./constants\";\nimport { useUpdateTaxonomy } from \"./useTaxonomyApi\";\nimport { formatLabel } from \"./utils\";\n\nconst EditPane = ({\n columnLabels,\n columnsToShow,\n initialValues,\n isOpen,\n onClose,\n}) => {\n const { t } = useTranslation();\n const initialFocusRef = useRef(null);\n\n const { mutate: updateTaxonomy } = useUpdateTaxonomy();\n\n const {\n singularColumn: showSingularInputField = true,\n pluralColumn: showPluralInputField = true,\n } = columnsToShow;\n\n const {\n singular: singularLabel = t(\"neetoMolecules.taxonomy.singularLabel\"),\n plural: pluralLabel = t(\"neetoMolecules.taxonomy.pluralLabel\"),\n } = columnLabels;\n\n const handleSubmit = (values, { setSubmitting }) => {\n const { keyName, singularLabel, pluralLabel } = values;\n\n const payload = {\n taxonomy: {\n keyName,\n singularLabel: formatLabel(singularLabel),\n pluralLabel: formatLabel(pluralLabel),\n },\n };\n\n const options = {\n onSuccess: () => {\n captureAnalyticsEvent(TAXONOMY_EVENTS.UPDATED, {\n taxonomy: payload.taxonomy,\n });\n window.location.reload();\n },\n onError: error => Toastr.error(error),\n onSettled: () => setSubmitting(false),\n };\n\n updateTaxonomy({ keyName, payload }, options);\n };\n\n return (\n <Pane\n {...{ initialFocusRef, isOpen, onClose }}\n data-testid=\"taxonomy-edit-pane\"\n >\n <Pane.Header>\n <Typography style=\"h2\" weight=\"semibold\">\n <Trans\n i18nKey=\"neetoMolecules.taxonomy.editPane.title\"\n values={{\n entity: t(\n `taxonomyDefaultLabels.${initialValues.keyName}.singular`\n ),\n ...(showSingularInputField && showPluralInputField\n ? PLURAL\n : SINGULAR),\n }}\n />\n </Typography>\n </Pane.Header>\n <Form\n formikProps={{\n initialValues,\n validationSchema: VALIDATION_SCHEMA,\n onSubmit: handleSubmit,\n }}\n >\n <Pane.Body>\n <div className=\"w-full space-y-6\">\n {showSingularInputField && (\n <Input\n required\n className=\"w-full\"\n data-cy=\"taxonomy-singular-input-field\"\n data-testid=\"taxonomy-singular-input-field\"\n label={singularLabel}\n name=\"singularLabel\"\n ref={initialFocusRef}\n rejectCharsRegex={LABEL_REJECT_CHARS_REGEX}\n />\n )}\n {showPluralInputField && (\n <Input\n required\n className=\"w-full\"\n data-cy=\"taxonomy-plural-input-field\"\n data-testid=\"taxonomy-plural-input-field\"\n label={pluralLabel}\n name=\"pluralLabel\"\n rejectCharsRegex={LABEL_REJECT_CHARS_REGEX}\n />\n )}\n </div>\n </Pane.Body>\n <Pane.Footer>\n <ActionBlock\n cancelButtonProps={{ onClick: onClose, disabled: false }}\n className=\"flex items-center space-x-2\"\n />\n </Pane.Footer>\n </Form>\n </Pane>\n );\n};\n\nexport default EditPane;\n","import { t } from \"i18next\";\nimport { Dropdown, Typography } from \"neetoui\";\nimport { Trans } from \"react-i18next\";\n\nconst LeftActionBlock = ({\n selectedCount,\n totalCount,\n setIsResetModalOpen,\n setCurrentKeys,\n selectedRowIds,\n}) => {\n const { Menu, MenuItem } = Dropdown;\n\n return (\n !!totalCount && (\n <>\n {selectedCount > 0 ? (\n <>\n <Typography\n className=\"mr-4 font-semibold\"\n component=\"h4\"\n data-cy=\"item-count\"\n >\n <Trans\n i18nKey=\"neetoMolecules.taxonomy.actionBlock.selectedTaxonomy\"\n values={{ count: selectedCount, totalCount }}\n components={{\n span: <span className=\"neeto-ui-text-gray-600\" />,\n }}\n />\n </Typography>\n <Dropdown\n buttonStyle=\"secondary\"\n label={t(\"neetoMolecules.taxonomy.actionBlock.takeAction\")}\n >\n <Menu>\n <MenuItem.Button\n style=\"secondary\"\n onClick={() => {\n setCurrentKeys(selectedRowIds);\n setIsResetModalOpen(true);\n }}\n >\n {t(\"neetoMolecules.common.actions.resetToDefaults\")}\n </MenuItem.Button>\n </Menu>\n </Dropdown>\n </>\n ) : (\n <Typography\n className=\"mr-4 font-semibold\"\n component=\"h4\"\n data-cy=\"item-count\"\n >\n {t(\"neetoMolecules.taxonomy.actionBlock.taxonomyWithCount\", {\n count: totalCount,\n })}\n </Typography>\n )}\n </>\n )\n );\n};\n\nexport default LeftActionBlock;\n","import { useState } from \"react\";\n\nimport { t } from \"i18next\";\nimport { isNotEmpty } from \"neetocist\";\nimport { taxonomies, globalProps } from \"neetocommons/initializers\";\nimport withTitle from \"neetocommons/react-utils/withTitle\";\nimport { Alert, NoData, Table, Toastr } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { prop, pick, keys } from \"ramda\";\nimport { Trans } from \"react-i18next\";\n\nimport Container from \"components/Container\";\nimport Header from \"components/Header\";\nimport SubHeader from \"components/SubHeader\";\nimport TableWrapper from \"components/TableWrapper\";\n\nimport EditPane from \"./EditPane\";\nimport LeftActionBlock from \"./LeftActionBlock\";\nimport { useBulkDestroyTaxonomies } from \"./useTaxonomyApi\";\nimport {\n formatDataForTable,\n getColumnData,\n getFilteredTaxonomies,\n} from \"./utils\";\n\nconst Taxonomy = ({\n breadcrumbs,\n columnLabels = {},\n columnsToShow = {},\n titleHelpPopoverProps = {},\n}) => {\n const [isResetModalOpen, setIsResetModalOpen] = useState(false);\n const [isEditTaxonomyPaneOpen, setIsEditTaxonomyPaneOpen] = useState(false);\n const [initialValues, setInitialValues] = useState({});\n const [selectedRowIds, setSelectedRowIds] = useState([]);\n const [searchString, setSearchString] = useState(\"\");\n const [currentKeys, setCurrentKeys] = useState([]);\n\n const { mutate: bulkDestroyTaxonomies } = useBulkDestroyTaxonomies();\n\n const hostTaxonomyKeys = keys(globalProps.taxonomies);\n const hostTaxonomies = pick(hostTaxonomyKeys, taxonomies);\n\n const [filteredTaxonomies, setFilteredTaxonomies] = useState(hostTaxonomies);\n\n const handleRowSelect = ids => setSelectedRowIds(ids);\n\n const handleDelete = () => {\n const payload = { keyNames: currentKeys };\n\n const options = {\n onSuccess: () => window.location.reload(),\n onError: error => Toastr.error(error),\n };\n\n bulkDestroyTaxonomies(payload, options);\n };\n\n const handleEdit = values => {\n setInitialValues(values);\n setIsEditTaxonomyPaneOpen(true);\n };\n\n const handleSearch = event => {\n setSearchString(event.target.value);\n const newTaxonomies = getFilteredTaxonomies(\n event.target.value,\n hostTaxonomies\n );\n setFilteredTaxonomies(newTaxonomies);\n };\n\n return (\n <Container>\n <Header\n {...{ breadcrumbs }}\n title={t(\"neetoMolecules.taxonomy.title\")}\n searchProps={{\n onChange: handleSearch,\n value: searchString,\n placeholder: t(\"neetoMolecules.taxonomy.searchTaxonomy\"),\n }}\n titleHelpPopoverProps={{\n description: t(\"neetoMolecules.taxonomy.description\"),\n title: t(\"neetoMolecules.taxonomy.title\"),\n ...titleHelpPopoverProps,\n }}\n />\n <SubHeader\n leftActionBlock={\n <LeftActionBlock\n {...{ selectedRowIds, setCurrentKeys, setIsResetModalOpen }}\n selectedCount={selectedRowIds.length}\n totalCount={Object.entries(filteredTaxonomies).length}\n />\n }\n />\n {isNotEmpty(filteredTaxonomies) ? (\n <TableWrapper>\n <Table\n fixedHeight\n rowSelection\n allowRowClick={false}\n rowData={formatDataForTable(filteredTaxonomies)}\n rowKey={prop(\"keyName\")}\n selectedRowKeys={selectedRowIds}\n tableLayout=\"fixed\"\n columnData={getColumnData({\n columnLabels,\n columnsToShow,\n handleEdit,\n setCurrentKeys,\n setIsResetModalOpen,\n })}\n onRowSelect={handleRowSelect}\n />\n <EditPane\n {...{ columnLabels, columnsToShow, initialValues }}\n isOpen={isEditTaxonomyPaneOpen}\n onClose={() => setIsEditTaxonomyPaneOpen(false)}\n />\n <Alert\n isOpen={isResetModalOpen}\n submitButtonLabel={t(\"neetoMolecules.common.actions.proceed\")}\n title={t(\"neetoMolecules.taxonomy.resetAlert.title\")}\n message={\n <Trans\n i18nKey=\"neetoMolecules.taxonomy.resetAlert.message\"\n values={{\n count: currentKeys.length,\n what: t(`taxonomyDefaultLabels.${currentKeys[0]}.singular`),\n }}\n />\n }\n onClose={() => setIsResetModalOpen(false)}\n onSubmit={handleDelete}\n />\n </TableWrapper>\n ) : (\n <div className=\"flex h-full w-full items-center justify-center\">\n <NoData title={t(\"neetoMolecules.taxonomy.noData\")} />\n </div>\n )}\n </Container>\n );\n};\n\nTaxonomy.propTypes = {\n /**\n * To show breadcrumbs. `text` accepts a text string to be shown as the breadcrumb and `link` accepts relative URL path for the breadcrumb.\n */\n breadcrumbs: PropTypes.arrayOf(\n PropTypes.shape({\n text: PropTypes.string,\n link: PropTypes.string,\n })\n ),\n /**\n * To provide custom column labels for the table.\n */\n columnLabels: PropTypes.object,\n /**\n * To show/hide columns in the table.\n */\n columnsToShow: PropTypes.object,\n /**\n * Props to be passed to the help popover in the title.\n */\n titleHelpPopoverProps: PropTypes.object,\n};\n\nexport default withTitle(Taxonomy, t(\"neetoMolecules.taxonomy.browserTitle\"));\n"],"names":["LABEL_REJECT_CHARS_REGEX","VALIDATION_SCHEMA","yup","object","shape","singularLabel","string","trim","required","t","pluralLabel","TAXONOMY_EVENTS","UPDATED","update","_ref","keyName","payload","axios","patch","concat","BASE_API_V1_URL","bulkDestroy","data","taxonomiesApi","useUpdateTaxonomy","options","useMutation","_objectSpread","mutationFn","useBulkDestroyTaxonomies","formatLabel","label","capitalize","formatDataForTable","taxonomies","toPairs","map","_ref2","_slicedToArray","labels","getColumnData","_ref3","columnLabels","columnsToShow","handleEdit","setCurrentKeys","setIsResetModalOpen","_columnsToShow$singul","singularColumn","showSingularColumn","_columnsToShow$plural","pluralColumn","showPluralColumn","_columnLabels$singula","singular","_columnLabels$plural","plural","title","dataIndex","key","width","render","_","values","menuItems","onClick","_jsxs","className","children","_jsx","Typography","style","MoreDropdown","dropdownButtonProps","dropdownProps","strategy","placement","appendTo","document","body","_toConsumableArray","getFilteredTaxonomies","matchString","filteredArray","filter","_ref4","_ref5","value","defaultLabel","valuesToSearch","Object","some","str","toLowerCase","includes","fromPairs","EditPane","initialValues","isOpen","onClose","_useTranslation","useTranslation","initialFocusRef","useRef","_useUpdateTaxonomy","updateTaxonomy","mutate","showSingularInputField","showPluralInputField","handleSubmit","setSubmitting","taxonomy","onSuccess","captureAnalyticsEvent","window","location","reload","onError","error","Toastr","onSettled","Pane","Header","weight","Trans","i18nKey","entity","PLURAL","SINGULAR","Form","formikProps","validationSchema","onSubmit","Body","Input","name","ref","rejectCharsRegex","Footer","ActionBlock","cancelButtonProps","disabled","LeftActionBlock","selectedCount","totalCount","selectedRowIds","Menu","Dropdown","MenuItem","_Fragment","component","count","components","span","buttonStyle","Button","Taxonomy","breadcrumbs","_ref$columnLabels","_ref$columnsToShow","_ref$titleHelpPopover","titleHelpPopoverProps","_useState","useState","_useState2","isResetModalOpen","_useState3","_useState4","isEditTaxonomyPaneOpen","setIsEditTaxonomyPaneOpen","_useState5","_useState6","setInitialValues","_useState7","_useState8","setSelectedRowIds","_useState9","_useState10","searchString","setSearchString","_useState11","_useState12","currentKeys","_useBulkDestroyTaxono","bulkDestroyTaxonomies","hostTaxonomyKeys","keys","globalProps","hostTaxonomies","pick","_useState13","_useState14","filteredTaxonomies","setFilteredTaxonomies","handleRowSelect","ids","handleDelete","keyNames","handleSearch","event","target","newTaxonomies","Container","searchProps","onChange","placeholder","description","SubHeader","leftActionBlock","length","entries","isNotEmpty","TableWrapper","Table","fixedHeight","rowSelection","allowRowClick","rowData","rowKey","prop","selectedRowKeys","tableLayout","columnData","onRowSelect","Alert","submitButtonLabel","message","what","NoData","withTitle"],"mappings":"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"}