@bigbinary/neeto-molecules 4.0.112-beta1 → 4.0.113
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/CalendarView.js +3 -1
- package/dist/CalendarView.js.map +1 -1
- package/dist/Chevron-Dtxc2piW.js +266 -0
- package/dist/Chevron-Dtxc2piW.js.map +1 -0
- package/dist/ConfigurePageSidebar.js +1 -1
- package/dist/Schedule.js +1 -1
- package/dist/Schedule.js.map +1 -1
- package/dist/Sidebar.js +1 -1
- package/dist/cjs/CalendarView.js +3 -1
- package/dist/cjs/CalendarView.js.map +1 -1
- package/dist/cjs/{Chevron-D5P-tT5m.js → Chevron-DzdbGPJI.js} +21 -23
- package/dist/cjs/Chevron-DzdbGPJI.js.map +1 -0
- package/dist/cjs/ConfigurePageSidebar.js +1 -1
- package/dist/cjs/Schedule.js +1 -1
- package/dist/cjs/Schedule.js.map +1 -1
- package/dist/cjs/Sidebar.js +1 -1
- package/package.json +2 -2
- package/dist/Chevron-BWNdVGl_.js +0 -268
- package/dist/Chevron-BWNdVGl_.js.map +0 -1
- package/dist/cjs/Chevron-D5P-tT5m.js.map +0 -1
package/dist/CalendarView.js
CHANGED
|
@@ -6,6 +6,7 @@ import dayGridPlugin from '@fullcalendar/daygrid';
|
|
|
6
6
|
import interactionPlugin from '@fullcalendar/interaction';
|
|
7
7
|
import FullCalendar from '@fullcalendar/react';
|
|
8
8
|
import timeGridPlugin from '@fullcalendar/timegrid';
|
|
9
|
+
import i18next, { t } from 'i18next';
|
|
9
10
|
import { capitalize, noop } from '@bigbinary/neeto-cist';
|
|
10
11
|
import { dayjs } from '@bigbinary/neeto-commons-frontend/utils';
|
|
11
12
|
import Typography from '@bigbinary/neetoui/Typography';
|
|
@@ -13,7 +14,6 @@ import { prop, values } from 'ramda';
|
|
|
13
14
|
import { useTranslation } from 'react-i18next';
|
|
14
15
|
import SubHeader from './SubHeader.js';
|
|
15
16
|
import { n } from './inject-css-C2dztUxs.js';
|
|
16
|
-
import { t } from 'i18next';
|
|
17
17
|
import Dropdown from '@bigbinary/neetoui/Dropdown';
|
|
18
18
|
import Down from '@bigbinary/neeto-icons/Down';
|
|
19
19
|
import Left from '@bigbinary/neeto-icons/Left';
|
|
@@ -283,6 +283,7 @@ var Header = function Header(_ref) {
|
|
|
283
283
|
var _excluded = ["viewOptions", "events", "handleDateClick", "handleEventClick", "eventClassNames", "dayCellClassNames", "validDates", "onDateChange", "dayMaxEvents", "eventMaxStack", "hideHeader"];
|
|
284
284
|
function ownKeys(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; }
|
|
285
285
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
286
|
+
var direction = i18next.dir() || "ltr";
|
|
286
287
|
var CalendarView = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
287
288
|
var _ref$viewOptions = _ref.viewOptions,
|
|
288
289
|
viewOptions = _ref$viewOptions === void 0 ? VIEW_OPTIONS : _ref$viewOptions,
|
|
@@ -376,6 +377,7 @@ var CalendarView = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
|
376
377
|
}, _objectSpread({
|
|
377
378
|
dayCellClassNames: dayCellClassNames,
|
|
378
379
|
dayMaxEvents: dayMaxEvents,
|
|
380
|
+
direction: direction,
|
|
379
381
|
eventClassNames: eventClassNames,
|
|
380
382
|
eventMaxStack: eventMaxStack,
|
|
381
383
|
events: events
|
package/dist/CalendarView.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CalendarView.js","sources":["../src/components/CalendarView/constants.js","../src/components/CalendarView/utils.js","../src/components/CalendarView/CustomDatePicker.jsx","../src/components/CalendarView/Header.jsx","../src/components/CalendarView/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\n\nconst WEEKLY_VIEW = t(\"neetoMolecules.calendarView.weekly\");\nconst MONTHLY_VIEW = t(\"neetoMolecules.calendarView.monthly\");\nconst DAILY_VIEW = t(\"neetoMolecules.calendarView.daily\");\n\nexport const VIEW_OPTIONS = {\n [DAILY_VIEW]: {\n label: DAILY_VIEW,\n fullCalendarView: \"timeGridDay\",\n picker: \"day\",\n },\n [WEEKLY_VIEW]: {\n label: WEEKLY_VIEW,\n fullCalendarView: \"timeGridWeek\",\n picker: \"week\",\n },\n [MONTHLY_VIEW]: {\n label: MONTHLY_VIEW,\n fullCalendarView: \"dayGridMonth\",\n picker: \"month\",\n },\n};\n","import { dayjs } from \"neetocommons/utils\";\n\nconst getWeekString = ({\n date,\n isStartOfWeek = true,\n showMonth = false,\n showYear = false,\n}) =>\n `${showMonth || isStartOfWeek ? date.format(\"MMM\") : \"\"} ${date.date()} ${\n showYear || !isStartOfWeek ? date.format(\"YYYY\") : \"\"\n }`;\n\nexport const getStartOfWeek = date => dayjs(date).startOf(\"week\");\n\nexport const getEndOfWeek = date => dayjs(date).endOf(\"week\");\n\nexport const getFormattedMonthStr = date => date.format(\"MMM YYYY\");\n\nexport const getFormattedWeekRangeStr = date => {\n const startOfWeek = getStartOfWeek(date);\n const endOfWeek = getEndOfWeek(date);\n\n const shouldShowMonthsSeparately = startOfWeek.month() !== endOfWeek.month();\n const shouldShowYearsSeparately = startOfWeek.year() !== endOfWeek.year();\n\n const startOfWeekStr = getWeekString({\n date: startOfWeek,\n showMonth: shouldShowMonthsSeparately,\n showYear: shouldShowYearsSeparately,\n });\n\n const endOfWeekStr = getWeekString({\n date: endOfWeek,\n isStartOfWeek: false,\n showMonth: shouldShowMonthsSeparately,\n showYear: shouldShowYearsSeparately,\n });\n\n return `${startOfWeekStr} - ${endOfWeekStr}`;\n};\n\nexport const getFormattedDayStr = date => date.format(\"DD MMM YYYY\");\n\nexport const getFormattedRangeStr = (date, picker) => {\n const formatFunctions = {\n month: getFormattedMonthStr,\n week: getFormattedWeekRangeStr,\n day: getFormattedDayStr,\n };\n const selectedFormatter = formatFunctions[picker];\n\n return selectedFormatter(date);\n};\n\nexport const mergeRefs =\n (...refs) =>\n node =>\n refs\n .filter(Boolean)\n .forEach(ref =>\n typeof ref === \"function\" ? ref(node) : (ref.current = node)\n );\n","import { useRef, useState } from \"react\";\n\nimport { dayjs } from \"neetocommons/utils\";\nimport { Down, Left, Right } from \"neetoicons\";\nimport { Typography, Button, DatePicker } from \"neetoui\";\n\nimport { getFormattedRangeStr } from \"./utils\";\n\nconst CustomDatePicker = ({\n selectedDate,\n setSelectedDate,\n picker,\n validDates,\n ...otherProps\n}) => {\n const [isOpen, setIsOpen] = useState(false);\n\n const datePickerRef = useRef(null);\n const buttonRef = useRef(null);\n\n const selectedRangeStr = getFormattedRangeStr(selectedDate, picker);\n\n const { start, end } = validDates;\n\n const isDateLessThanStart =\n start && selectedDate.isSameOrBefore(dayjs(start), picker);\n\n const isDateGreaterThanEnd =\n end && selectedDate.isSameOrAfter(dayjs(end), picker);\n\n const onPrevious = () =>\n setSelectedDate(selectedDate => selectedDate.subtract(1, picker));\n\n const onNext = () =>\n setSelectedDate(selectedDate => selectedDate.add(1, picker));\n\n const onToday = () => setSelectedDate(dayjs());\n\n const getDisabledDates = date => {\n if (!date) return false;\n\n return (start && date <= start) || (end && date >= end);\n };\n\n const handleButtonMouseDown = e => {\n if (!(buttonRef.current && buttonRef.current.contains(e.target))) return;\n e.stopPropagation();\n if (isOpen) datePickerRef.current.focus();\n };\n\n return (\n <div className=\"flex items-center justify-start gap-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=\"me-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 className=\"rtl:scale-x-[-1]\" size={20} />}\n style=\"text\"\n onClick={onPrevious}\n />\n <Button\n className=\"min-w-52 justify-center\"\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=\"ms-1\"\n data-cy=\"neeto-molecules-calendar-view-next-button\"\n disabled={isDateGreaterThanEnd}\n icon={() => <Right className=\"rtl:scale-x-[-1]\" size={20} />}\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 gap-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","size","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 gap-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=\"me-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 className=\"rtl:scale-x-[-1]\" size={20} />}\n style=\"text\"\n onClick={onPrevious}\n />\n <Button\n className=\"min-w-52 justify-center\"\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=\"ms-1\"\n data-cy=\"neeto-molecules-calendar-view-next-button\"\n disabled={isDateGreaterThanEnd}\n icon={() => <Right className=\"rtl:scale-x-[-1]\" size={20} />}\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 gap-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 i18next from \"i18next\";\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 direction = i18next.dir() || \"ltr\";\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 direction,\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","size","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","direction","i18next","dir","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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"}
|
|
@@ -0,0 +1,266 @@
|
|
|
1
|
+
import _defineProperty from '@babel/runtime/helpers/defineProperty';
|
|
2
|
+
import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
|
|
3
|
+
import classnames from 'classnames';
|
|
4
|
+
import { handleMetaClick } from '@bigbinary/neeto-commons-frontend/react-utils';
|
|
5
|
+
import { hyphenize } from '@bigbinary/neeto-commons-frontend/utils/general';
|
|
6
|
+
import Home from '@bigbinary/neeto-icons/Home';
|
|
7
|
+
import Typography from '@bigbinary/neetoui/Typography';
|
|
8
|
+
import Button from '@bigbinary/neetoui/Button';
|
|
9
|
+
import { curry, is, includes, __, all, equals, omit } from 'ramda';
|
|
10
|
+
import { NavLink, useHistory } from 'react-router-dom';
|
|
11
|
+
import { Fragment } from 'react';
|
|
12
|
+
import { isNotEmpty, isPresent, hyphenate } from '@bigbinary/neeto-cist';
|
|
13
|
+
import Segments from '@bigbinary/neeto-filters-frontend/Segments';
|
|
14
|
+
import { useNavigationCheckpoints } from '@bigbinary/neeto-commons-frontend/react-utils/useRegisterNavigationCheckpoint';
|
|
15
|
+
import { jsx, jsxs, Fragment as Fragment$1 } from 'react/jsx-runtime';
|
|
16
|
+
import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
|
|
17
|
+
import { n } from './inject-css-C2dztUxs.js';
|
|
18
|
+
|
|
19
|
+
var SUB_LINK_TYPES = {
|
|
20
|
+
SYSTEM_VIEW: "system_view",
|
|
21
|
+
SEGMENTS: "segments"
|
|
22
|
+
};
|
|
23
|
+
var SELECTED_NAV_LINK_ROUTE_STORAGE_KEY = "selectedNavLinkRoute";
|
|
24
|
+
var DEFAULT_HOME_PATH = "/admin";
|
|
25
|
+
var SIDEBAR_WIDTH_KEY = "neeto-molecules-sidebar-width";
|
|
26
|
+
var MIN_SIDEBAR_WIDTH = 12.5 * 16;
|
|
27
|
+
var MAX_SIDEBAR_WIDTH = 20 * 16;
|
|
28
|
+
var DEFAULT_SIDEBAR_WIDTH = 15 * 16;
|
|
29
|
+
var PINNED_MORE_NAV_LINKS_KEY = "pinnedMoreNavLinks";
|
|
30
|
+
var SPECIAL_APP_NAMES = {
|
|
31
|
+
bugwatch: "BugWatch"
|
|
32
|
+
};
|
|
33
|
+
|
|
34
|
+
var _excluded$1 = ["checkpointKey", "to", "href", "children"];
|
|
35
|
+
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; }
|
|
36
|
+
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), true).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; }
|
|
37
|
+
var CheckPointNavLinks = function CheckPointNavLinks(_ref) {
|
|
38
|
+
var checkpointKey = _ref.checkpointKey,
|
|
39
|
+
to = _ref.to,
|
|
40
|
+
href = _ref.href,
|
|
41
|
+
children = _ref.children,
|
|
42
|
+
others = _objectWithoutProperties(_ref, _excluded$1);
|
|
43
|
+
var _useNavigationCheckpo = useNavigationCheckpoints(checkpointKey),
|
|
44
|
+
checkpoint = _useNavigationCheckpo[checkpointKey];
|
|
45
|
+
var LinkElement = href ? "a" : NavLink;
|
|
46
|
+
var linkProps = href ? _objectSpread$2({
|
|
47
|
+
href: href,
|
|
48
|
+
key: href
|
|
49
|
+
}, others) : _objectSpread$2({
|
|
50
|
+
to: checkpoint || to,
|
|
51
|
+
key: to
|
|
52
|
+
}, others);
|
|
53
|
+
return /*#__PURE__*/jsx(LinkElement, _objectSpread$2(_objectSpread$2({}, linkProps), {}, {
|
|
54
|
+
children: children
|
|
55
|
+
}));
|
|
56
|
+
};
|
|
57
|
+
|
|
58
|
+
var isSubRouteActive = function isSubRouteActive(subRoute, location) {
|
|
59
|
+
var currentBrowserUrl = new URL(location.pathname + location.search + location.hash, window.location.origin);
|
|
60
|
+
var targetUrl = new URL(subRoute, window.location.origin);
|
|
61
|
+
var targetSearchParams = targetUrl.searchParams;
|
|
62
|
+
var targetSearchKeys = Array.from(targetSearchParams.keys());
|
|
63
|
+
return all(function (key) {
|
|
64
|
+
return currentBrowserUrl.searchParams.get(key) === targetSearchParams.get(key);
|
|
65
|
+
}, targetSearchKeys) && equals(currentBrowserUrl.pathname, targetUrl.pathname);
|
|
66
|
+
};
|
|
67
|
+
var getSidebarStateLocalStorageKey = function getSidebarStateLocalStorageKey() {
|
|
68
|
+
var _globalProps$user, _globalProps$user2;
|
|
69
|
+
var user = ((_globalProps$user = globalProps.user) === null || _globalProps$user === void 0 ? void 0 : _globalProps$user.email) || ((_globalProps$user2 = globalProps.user) === null || _globalProps$user2 === void 0 ? void 0 : _globalProps$user2.phoneNumber);
|
|
70
|
+
return "sidebarState-".concat(user);
|
|
71
|
+
};
|
|
72
|
+
var filterByPermissions = curry(function (_ref) {
|
|
73
|
+
var permissions = _ref.permissions;
|
|
74
|
+
if (permissions && isNotEmpty(permissions)) {
|
|
75
|
+
return is(Array, permissions) ? permissions.some(includes(__, globalProps.permissions)) : globalProps.permissions.includes(permissions);
|
|
76
|
+
}
|
|
77
|
+
return true;
|
|
78
|
+
});
|
|
79
|
+
var getActiveConfigurePageLink = function getActiveConfigurePageLink(_ref2) {
|
|
80
|
+
var navLinks = _ref2.navLinks,
|
|
81
|
+
location = _ref2.location;
|
|
82
|
+
return navLinks.find(function (link) {
|
|
83
|
+
var _link$to;
|
|
84
|
+
var _ref3 = ((_link$to = link.to) === null || _link$to === void 0 ? void 0 : _link$to.split("?")) || [],
|
|
85
|
+
_ref4 = _slicedToArray(_ref3, 1),
|
|
86
|
+
linkPathname = _ref4[0];
|
|
87
|
+
return isPresent(link.isConfigureNavLink) && link.isConfigureNavLink && location.pathname.startsWith(linkPathname);
|
|
88
|
+
});
|
|
89
|
+
};
|
|
90
|
+
var enableDraggingStyles = function enableDraggingStyles() {
|
|
91
|
+
document.body.classList.add("dragging-sidebar");
|
|
92
|
+
document.body.style.cursor = "col-resize";
|
|
93
|
+
document.body.style.userSelect = "none";
|
|
94
|
+
};
|
|
95
|
+
var disableDraggingStyles = function disableDraggingStyles() {
|
|
96
|
+
document.body.classList.remove("dragging-sidebar");
|
|
97
|
+
document.body.style.cursor = "";
|
|
98
|
+
document.body.style.userSelect = "";
|
|
99
|
+
};
|
|
100
|
+
|
|
101
|
+
var SubLink = function SubLink(_ref) {
|
|
102
|
+
var to = _ref.to,
|
|
103
|
+
href = _ref.href,
|
|
104
|
+
onClick = _ref.onClick,
|
|
105
|
+
label = _ref.label,
|
|
106
|
+
_ref$type = _ref.type,
|
|
107
|
+
type = _ref$type === void 0 ? SUB_LINK_TYPES.SYSTEM_VIEW : _ref$type,
|
|
108
|
+
count = _ref.count,
|
|
109
|
+
isSectionHeader = _ref.isSectionHeader,
|
|
110
|
+
isCountsLoading = _ref.isCountsLoading,
|
|
111
|
+
dataCy = _ref["data-cy"],
|
|
112
|
+
_ref$entity = _ref.entity,
|
|
113
|
+
entity = _ref$entity === void 0 ? "" : _ref$entity,
|
|
114
|
+
_ref$columns = _ref.columns,
|
|
115
|
+
columns = _ref$columns === void 0 ? [] : _ref$columns,
|
|
116
|
+
baseUrl = _ref.baseUrl,
|
|
117
|
+
isActive = _ref.isActive;
|
|
118
|
+
if (type === SUB_LINK_TYPES.SEGMENTS) {
|
|
119
|
+
return /*#__PURE__*/jsx(Segments, {
|
|
120
|
+
baseUrl: baseUrl,
|
|
121
|
+
columns: columns,
|
|
122
|
+
entity: entity,
|
|
123
|
+
isIndependent: false
|
|
124
|
+
});
|
|
125
|
+
}
|
|
126
|
+
var dataCyPrefix = dataCy || hyphenate(label);
|
|
127
|
+
var renderCount = function renderCount(count) {
|
|
128
|
+
return count > 999 ? "999+" : count;
|
|
129
|
+
};
|
|
130
|
+
var isSubLinkActive = function isSubLinkActive() {
|
|
131
|
+
return !isSectionHeader && (is(Function, isActive) ? isActive() : isSubRouteActive(to, location));
|
|
132
|
+
};
|
|
133
|
+
return /*#__PURE__*/jsxs(CheckPointNavLinks, {
|
|
134
|
+
href: href,
|
|
135
|
+
onClick: onClick,
|
|
136
|
+
to: to,
|
|
137
|
+
activeClassName: "active",
|
|
138
|
+
className: "neeto-molecules-sidebar__sublink neeto-ui-flex neeto-ui-items-center neeto-ui-select-none",
|
|
139
|
+
"data-cy": "".concat(dataCyPrefix, "-sub-link"),
|
|
140
|
+
isActive: isSubLinkActive,
|
|
141
|
+
children: [/*#__PURE__*/jsx(Typography, {
|
|
142
|
+
className: "neeto-molecules-sidebar__link-sub-label neeto-ui-flex-grow",
|
|
143
|
+
component: "span",
|
|
144
|
+
"data-cy": "".concat(dataCyPrefix, "-sub-link-label"),
|
|
145
|
+
style: "body2",
|
|
146
|
+
children: label
|
|
147
|
+
}), /*#__PURE__*/jsx(Typography, {
|
|
148
|
+
className: "neeto-molecules-sidebar__link-sub-count neeto-ui-flex-shrink-0",
|
|
149
|
+
component: "span",
|
|
150
|
+
"data-cy": "".concat(dataCyPrefix, "-sub-link-count"),
|
|
151
|
+
style: "body2",
|
|
152
|
+
children: isCountsLoading ? /*#__PURE__*/jsx("div", {
|
|
153
|
+
className: "neeto-ui-rounded neeto-ui-bg-gray-200 h-4 w-4 animate-pulse"
|
|
154
|
+
}) : renderCount(count)
|
|
155
|
+
})]
|
|
156
|
+
});
|
|
157
|
+
};
|
|
158
|
+
|
|
159
|
+
function ownKeys$1(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; }
|
|
160
|
+
function _objectSpread$1(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
161
|
+
var _Items = function Items(_ref) {
|
|
162
|
+
var items = _ref.items,
|
|
163
|
+
_ref$isSettingsItems = _ref.isSettingsItems,
|
|
164
|
+
isSettingsItems = _ref$isSettingsItems === void 0 ? false : _ref$isSettingsItems,
|
|
165
|
+
isCountsLoading = _ref.isCountsLoading;
|
|
166
|
+
return /*#__PURE__*/jsx("div", {
|
|
167
|
+
className: "neeto-molecules-sidebar__sublink-wrapper",
|
|
168
|
+
"data-cy": "sidebar-sub-link-wrapper",
|
|
169
|
+
children: items.filter(filterByPermissions).map(function (subItem, subIndex) {
|
|
170
|
+
var _subItem$to;
|
|
171
|
+
return /*#__PURE__*/jsxs(Fragment, {
|
|
172
|
+
children: [/*#__PURE__*/jsx(SubLink, _objectSpread$1(_objectSpread$1({}, _objectSpread$1(_objectSpread$1({}, subItem), {}, {
|
|
173
|
+
isCountsLoading: isCountsLoading
|
|
174
|
+
})), {}, {
|
|
175
|
+
href: subItem.href,
|
|
176
|
+
isActive: subItem.isActive,
|
|
177
|
+
isSectionHeader: isPresent(subItem.item),
|
|
178
|
+
to: (_subItem$to = subItem.to) !== null && _subItem$to !== void 0 ? _subItem$to : subItem.path,
|
|
179
|
+
onClick: subItem.onClick
|
|
180
|
+
})), isSettingsItems && isPresent(subItem.items) && /*#__PURE__*/jsxs(Fragment$1, {
|
|
181
|
+
children: [/*#__PURE__*/jsx(_Items, {
|
|
182
|
+
isSettingsItems: isSettingsItems,
|
|
183
|
+
items: subItem.items
|
|
184
|
+
}), items.length - 1 !== subIndex && /*#__PURE__*/jsx("hr", {
|
|
185
|
+
className: "neeto-molecules-sidebar__separator neeto-ui-border-gray-200"
|
|
186
|
+
})]
|
|
187
|
+
})]
|
|
188
|
+
}, subIndex);
|
|
189
|
+
})
|
|
190
|
+
});
|
|
191
|
+
};
|
|
192
|
+
|
|
193
|
+
var _excluded = ["label", "items", "isConfigureNavLink"];
|
|
194
|
+
function ownKeys(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; }
|
|
195
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
196
|
+
var SelectedLink = function SelectedLink(_ref) {
|
|
197
|
+
var _ref$navLink = _ref.navLink,
|
|
198
|
+
navLink = _ref$navLink === void 0 ? {
|
|
199
|
+
label: "",
|
|
200
|
+
items: [],
|
|
201
|
+
isConfigureNavLink: false
|
|
202
|
+
} : _ref$navLink,
|
|
203
|
+
handleGoBack = _ref.handleGoBack,
|
|
204
|
+
isConfigureSidebar = _ref.isConfigureSidebar;
|
|
205
|
+
var history = useHistory();
|
|
206
|
+
var label = navLink.label,
|
|
207
|
+
items = navLink.items,
|
|
208
|
+
isConfigureNavLink = navLink.isConfigureNavLink,
|
|
209
|
+
otherProps = _objectWithoutProperties(navLink, _excluded);
|
|
210
|
+
var handleHomeButtonClick = function handleHomeButtonClick(e) {
|
|
211
|
+
e.stopPropagation();
|
|
212
|
+
handleMetaClick(history, DEFAULT_HOME_PATH, e);
|
|
213
|
+
};
|
|
214
|
+
return /*#__PURE__*/jsxs("div", {
|
|
215
|
+
className: "neeto-molecules-sidebar__links neeto-molecules-sidebar__links--focus-mode neeto-molecules-sidebar__no-shrinkable",
|
|
216
|
+
"data-cy": "configure-nav-container",
|
|
217
|
+
children: [/*#__PURE__*/jsxs("div", _objectSpread(_objectSpread({
|
|
218
|
+
className: "neeto-ui-flex neeto-ui-items-center neeto-ui-no-underline neeto-molecules-sidebar__link neeto-ui-border-b neeto-ui-border-gray-200",
|
|
219
|
+
onClick: handleGoBack
|
|
220
|
+
}, _objectSpread({}, omit(["icon"], otherProps))), {}, {
|
|
221
|
+
children: [isConfigureNavLink && /*#__PURE__*/jsxs("span", {
|
|
222
|
+
className: "neeto-molecules-sidebar__link-icon flex items-center pl-3",
|
|
223
|
+
children: [/*#__PURE__*/jsx(Button, {
|
|
224
|
+
"data-cy": "".concat(hyphenize(label), "-go-back-button"),
|
|
225
|
+
"data-testid": "".concat(label, "-go-home-button"),
|
|
226
|
+
icon: Home,
|
|
227
|
+
style: "text",
|
|
228
|
+
onClick: handleHomeButtonClick
|
|
229
|
+
}), /*#__PURE__*/jsx("span", {
|
|
230
|
+
className: "px-1 text-xs",
|
|
231
|
+
children: "/"
|
|
232
|
+
})]
|
|
233
|
+
}), /*#__PURE__*/jsx(Typography, {
|
|
234
|
+
component: "span",
|
|
235
|
+
style: "body1",
|
|
236
|
+
className: classnames("neeto-molecules-sidebar__link-label", _defineProperty({
|
|
237
|
+
"neeto-molecules-sidebar__configure-page-header": isConfigureNavLink
|
|
238
|
+
}, "pl-4", isConfigureSidebar)),
|
|
239
|
+
children: label
|
|
240
|
+
})]
|
|
241
|
+
})), items && /*#__PURE__*/jsx(_Items, {
|
|
242
|
+
items: items,
|
|
243
|
+
isSettingsItems: true
|
|
244
|
+
})]
|
|
245
|
+
});
|
|
246
|
+
};
|
|
247
|
+
|
|
248
|
+
var css = ":root{--neeto-molecules-sidebar-width:15rem;--neeto-molecules-sidebar-wrapper-z-index:99997;--neeto-molecules-sidebar-z-index:99998}@media screen and (min-width:1024px){:root{--neeto-molecules-sidebar-width:15rem}}.neeto-molecules-sidebar__wrapper{display:flex;max-width:15rem;max-width:var(--neeto-molecules-sidebar-width);position:relative;width:15rem;width:var(--neeto-molecules-sidebar-width)}@media screen and (max-width:768px){.neeto-molecules-sidebar__wrapper{height:100%;inset-inline-start:0;max-width:100%;position:fixed;top:0;transition:none;width:100%;z-index:99997;z-index:var(--neeto-molecules-sidebar-wrapper-z-index)}.neeto-molecules-sidebar__wrapper .neeto-molecules-sidebar{inset-inline-start:0;max-width:15rem;max-width:var(--neeto-molecules-sidebar-width);position:fixed;top:0;transition:none;width:15rem;width:var(--neeto-molecules-sidebar-width)}}.neeto-molecules-sidebar__wrapper__configure-page .neeto-molecules-sidebar__toggler{inset-inline-end:1.25rem;top:.5rem}@media screen and (max-width:768px){.neeto-molecules-sidebar__wrapper__configure-page .neeto-molecules-sidebar__toggler{inset-inline-end:auto;top:.5rem}}.neeto-molecules-sidebar__wrapper--collapsed{max-width:0;width:0}.neeto-molecules-sidebar__wrapper--collapsed .neeto-molecules-sidebar__toggler{inset-inline-end:-2.25rem;transform:scale(-1)}@media screen and (max-width:768px){.neeto-molecules-sidebar__wrapper--collapsed .neeto-molecules-sidebar__toggler{inset-inline-end:auto;inset-inline-start:.5rem;top:.5rem}.neeto-molecules-sidebar__wrapper--collapsed .neeto-molecules-sidebar{inset-inline-start:-15rem;inset-inline-start:calc(var(--neeto-molecules-sidebar-width)*-1)}.neeto-molecules-sidebar__wrapper__configure-page.neeto-molecules-sidebar__wrapper--collapsed .neeto-molecules-sidebar__toggler{top:6.8125rem}}.neeto-molecules-sidebar{background-color:rgb(var(--neeto-ui-white));border-inline-end:1px solid rgb(var(--neeto-ui-gray-200));height:100vh;height:100dvh;padding:1.5rem 0;width:100%;z-index:99998;z-index:var(--neeto-molecules-sidebar-z-index)}.neeto-molecules-sidebar:not(.neeto-molecules-sidebar__configure-page) .neeto-molecules-sidebar__links:not(.neeto-molecules-sidebar__links--focus-mode){height:calc(100vh - 7.75rem)!important;height:calc(100dvh - 7.75rem)!important;overflow-y:auto;padding-block-end:4rem}.neeto-molecules-sidebar__no-shrinkable{max-width:15rem;max-width:var(--neeto-molecules-sidebar-width);width:15rem;width:var(--neeto-molecules-sidebar-width)}.neeto-molecules-sidebar__separator{margin:.375rem auto;width:100%}.neeto-molecules-sidebar__toggler{color:rgb(var(--neeto-ui-primary-500))!important;inset-inline-end:.5rem;position:absolute!important;top:2.125rem;z-index:99998;z-index:var(--neeto-molecules-sidebar-z-index)}@media screen and (max-width:768px){.neeto-molecules-sidebar__toggler{inset-inline-end:auto;inset-inline-start:12.625rem;inset-inline-start:calc(var(--neeto-molecules-sidebar-width) - 2.375rem);transition:none}}.neeto-molecules-sidebar__configure-page{border-inline-end:1px solid rgb(var(--neeto-ui-gray-200));height:auto}@media screen and (max-width:768px){.neeto-molecules-sidebar__configure-page{height:100%}}.neeto-molecules-sidebar__configure-page .neeto-molecules-sidebar__links{height:calc(100vh - 8.5rem)!important;height:calc(100dvh - 8.5rem)!important}@media screen and (max-width:768px){.neeto-molecules-sidebar__configure-page .neeto-molecules-sidebar__links{height:calc(100vh - 5rem)!important;height:calc(100dvh - 5rem)!important}}.neeto-molecules-sidebar__configure-page .neeto-molecules-sidebar__toggler{display:none}.neeto-molecules-sidebar__header{margin-block:.5rem 2rem;margin-inline:0;padding-block:0;padding-inline:1.5rem}.neeto-molecules-sidebar__logo svg{height:2.25rem;max-width:100%;width:auto}.neeto-molecules-sidebar__link{color:rgb(var(--neeto-ui-black));gap:.625rem;line-height:1.2;padding-block:.75rem;padding-inline:1.5rem;position:relative;text-decoration:none!important;transition:color .3s,background-color .3s;width:100%}.neeto-molecules-sidebar__link-icon{flex-shrink:0}.neeto-molecules-sidebar__link-icon svg path{vector-effect:non-scaling-stroke}.neeto-molecules-sidebar__link-icon--caret{opacity:0;transition:opacity .3s ease-in-out}.neeto-molecules-sidebar__link-icon--rotate{opacity:1;transform:rotate(90deg)}.neeto-molecules-sidebar__link-label,.neeto-molecules-sidebar__link-sub-label{--neeto-ui-text-body2:0.9375rem;flex-grow:1;text-align:start}@media screen and (min-width:1536px){.neeto-molecules-sidebar__link-label,.neeto-molecules-sidebar__link-sub-label{--neeto-ui-text-body2:1rem}}.neeto-molecules-sidebar__link:hover{background-color:rgb(var(--neeto-ui-gray-100));color:rgb(var(--neeto-ui-black))}.neeto-molecules-sidebar__link:focus,.neeto-molecules-sidebar__link:focus-visible,.neeto-molecules-sidebar__link[aria-expanded=true]{color:rgb(var(--neeto-ui-black));outline:none}.neeto-molecules-sidebar__link--hover-active{background-color:rgb(var(--neeto-ui-gray-100))}.neeto-molecules-sidebar__link.active{background-color:rgb(var(--neeto-ui-accent-100));color:rgb(var(--neeto-ui-black));font-weight:var(--neeto-ui-font-semibold)}.neeto-molecules-sidebar__link.active .neeto-molecules-sidebar__link-icon--caret,.neeto-molecules-sidebar__link:hover .neeto-molecules-sidebar__link-icon--caret,.neeto-molecules-sidebar__link[aria-expanded=true] .neeto-molecules-sidebar__link-icon--caret{opacity:1}.neeto-molecules-sidebar__link--button:focus{background-color:transparent}.neeto-molecules-sidebar__link--button:focus-visible{background-color:rgb(var(--neeto-ui-gray-200));color:rgb(var(--neeto-ui-black))}.neeto-molecules-sidebar__link--change-log{outline:none!important}.neeto-molecules-sidebar__sublink-wrapper{padding-block:.25rem;padding-inline:0}.neeto-molecules-sidebar__sublink{color:rgb(var(--neeto-ui-gray-700));cursor:pointer;gap:.5rem;margin-block-end:0;margin-inline:0;padding-block:.5rem;padding-inline-end:1.5rem;padding-inline-start:3.625rem;text-decoration:none;transition:color .3s,background-color .3s}.neeto-molecules-sidebar__sublink .neeto-molecules-sidebar__link-sub-count{--neeto-ui-text-body2:0.9375rem;opacity:.75}@media screen and (min-width:1536px){.neeto-molecules-sidebar__sublink .neeto-molecules-sidebar__link-sub-count{--neeto-ui-text-body2:1rem}}.neeto-molecules-sidebar__sublink:hover{color:rgb(var(--neeto-ui-black));text-decoration:none}.neeto-molecules-sidebar__sublink:hover .neeto-molecules-sidebar__link-sub-count{opacity:1}.neeto-molecules-sidebar__sublink:focus,.neeto-molecules-sidebar__sublink:focus-visible{color:rgb(var(--neeto-ui-black));outline:none;text-decoration:none}.neeto-molecules-sidebar__sublink:focus .neeto-molecules-sidebar__link-sub-count,.neeto-molecules-sidebar__sublink:focus-visible .neeto-molecules-sidebar__link-sub-count{opacity:1}.neeto-molecules-sidebar__sublink.active,.neeto-molecules-sidebar__sublink:active{color:rgb(var(--neeto-ui-accent-800));font-weight:500;text-decoration:none}.neeto-molecules-sidebar__sublink.active .neeto-molecules-sidebar__link-sub-count,.neeto-molecules-sidebar__sublink:active .neeto-molecules-sidebar__link-sub-count{opacity:1}.neeto-molecules-sidebar__footer{margin-block-start:auto}.sidebar-featured-tooltip__content{border-radius:.5rem!important;box-shadow:var(--neeto-ui-shadow-sm)!important}.sidebar-featured-tooltip__content .tippy-content{padding:0}.sidebar-featured-tooltip{padding:.75rem;width:9.375rem}.sidebar-featured-tooltip__icon-wrap{background-color:rgb(var(--neeto-ui-gray-100));border-radius:.5rem;height:2.5rem;margin-block-end:.5rem;margin-inline:auto;width:2.5rem}.sidebar-featured-tooltip__title{margin-block-end:.25rem}.neeto-molecules-help-popup-wrapper,.neeto-molecules-product-switcher-popup-wrapper,.neeto-molecules-profile-popup-wrapper{border:1px solid rgb(var(--neeto-ui-gray-400));border-radius:var(--neeto-ui-rounded)!important;min-width:15rem}.neeto-molecules-help-popup-wrapper .tippy-content,.neeto-molecules-product-switcher-popup-wrapper .tippy-content,.neeto-molecules-profile-popup-wrapper .tippy-content{padding:0}.neeto-molecules-help-popup-wrapper .tippy-svg-arrow,.neeto-molecules-product-switcher-popup-wrapper .tippy-svg-arrow,.neeto-molecules-profile-popup-wrapper .tippy-svg-arrow{display:none!important}.neeto-molecules-profile-popup__top-section{border-start-end-radius:var(--neeto-ui-rounded);border-start-start-radius:var(--neeto-ui-rounded)}.neeto-molecules-profile-sublist{border-block-start:1px solid rgb(var(--neeto-ui-gray-400))}.neeto-molecules-help-sublist,.neeto-molecules-profile-sublist{list-style:none;margin:0;padding-block:.25rem;padding-inline:0}.neeto-molecules-help-sublist__item,.neeto-molecules-profile-sublist__item{width:100%}.neeto-molecules-help-sublist__item-btn,.neeto-molecules-profile-sublist__item-btn{border-radius:0;justify-content:flex-end!important;min-height:2.5rem;text-align:start}.neeto-molecules-help-sublist__item-btn.active,.neeto-molecules-profile-sublist__item-btn.active{background-color:rgb(var(--neeto-ui-gray-800));color:rgb(var(--neeto-ui-white))}.neeto-molecules-help-sublist__item-btn-icon svg path,.neeto-molecules-profile-sublist__item-btn-icon svg path{vector-effect:non-scaling-stroke}.neeto-molecules-help-sublist__item-btn span,.neeto-molecules-profile-sublist__item-btn span{align-items:center;display:flex;gap:.5rem}.neeto-molecules-sidebar__link-icon{position:relative}.neeto-molecules-sidebar__notif-count{inset-inline-end:-6px;position:absolute;top:-6px;z-index:1}.neeto-molecules-help-sublist__item-btn-count,.neeto-molecules-sidebar__notif-count{align-items:center;background-color:rgb(var(--neeto-ui-primary-500));border-radius:var(--neeto-ui-rounded-full);color:rgb(var(--neeto-ui-white));display:inline-flex;flex-shrink:0;font-size:var(--neeto-ui-text-xxs);height:.9375rem;justify-content:center;text-align:center;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:.9375rem}.neeto-molecules-product-switcher-popup-wrapper{height:calc(100vh - 1rem);height:calc(100dvh - 1rem);margin-block-end:.5rem;min-width:calc(100vw - 11rem);overflow-y:auto}@media screen and (max-width:768px){.neeto-molecules-product-switcher-popup-wrapper{width:calc(100vw - 11.5625rem)!important}}.neeto-molecules-sidebar__backdrop{background-color:rgba(var(--neeto-ui-black),.4);height:100%;inset-inline-start:0;position:absolute;top:0;width:100%}@media screen and (min-width:769px){.neeto-molecules-sidebar__backdrop{display:none;visibility:hidden}}.neeto-molecules-sidebar-segments-header{padding-inline-start:3.625rem}.neeto-molecules-sidebar-segment{margin-block-end:0!important;padding-block:.25rem;padding-inline-end:1.5rem;padding-inline-start:3.625rem}.neeto-molecules-sidebar.neeto-molecules-sidebar--focus-mode{padding-block-start:0}.neeto-molecules-sidebar.neeto-molecules-sidebar--focus-mode .neeto-molecules-sidebar__header{padding-block-start:1.5rem}.neeto-molecules-sidebar.neeto-molecules-sidebar--focus-mode .neeto-molecules-sidebar__links{display:flex;flex-direction:column;height:calc(100vh - 10rem);height:calc(100dvh - 10rem);margin-block-end:0}.neeto-molecules-sidebar__links--focus-mode>.neeto-molecules-sidebar__sublink-wrapper{flex-grow:1;margin-block-end:.625rem!important;margin-inline:0!important;min-height:0;overflow-y:auto;padding-block-end:.625rem!important;padding-inline:0!important}.neeto-molecules-sidebar__links--focus-mode>.neeto-molecules-sidebar__sublink-wrapper .neeto-molecules-sidebar__sublink-wrapper{padding:0!important}.neeto-molecules-sidebar__links--focus-mode>.neeto-molecules-sidebar__sublink-wrapper .neeto-molecules-sidebar__sublink-wrapper .neeto-molecules-sidebar__sublink{border-radius:0}.neeto-molecules-sidebar__links--focus-mode .neeto-molecules-sidebar__link{--neeto-ui-text-body1:1.125rem;background-color:rgb(var(--neeto-ui-gray-100));color:rgb(var(--neeto-ui-black));cursor:pointer;font-weight:var(--neeto-ui-font-semibold);gap:.25rem;padding-block:.75rem;padding-inline:.25rem;position:sticky;top:0;z-index:1}.neeto-molecules-sidebar__links--focus-mode .neeto-molecules-sidebar__link-label,.neeto-molecules-sidebar__links--focus-mode .neeto-molecules-sidebar__link-sub-label{--neeto-ui-text-body2:0.9375rem}.neeto-molecules-sidebar__links--focus-mode>.neeto-molecules-sidebar__sublink-wrapper>.neeto-molecules-sidebar__sublink{color:rgb(var(--neeto-ui-black));font-weight:var(--neeto-ui-font-medium);margin-block-end:0;padding-block:.625rem;padding-inline:.75rem}.neeto-molecules-sidebar__links--focus-mode>.neeto-molecules-sidebar__sublink-wrapper>.neeto-molecules-sidebar__sublink.active{font-weight:var(--neeto-ui-font-semibold)}.neeto-molecules-sidebar__links--focus-mode>.neeto-molecules-sidebar__sublink-wrapper>.neeto-molecules-sidebar__sublink-wrapper .neeto-molecules-sidebar__sublink{border-radius:0;padding-inline-start:2rem}.neeto-molecules-sidebar__links--focus-mode .neeto-molecules-sidebar__sublink{cursor:pointer;line-height:1.2;padding-block:.5rem;padding-inline-end:.75rem;padding-inline-start:1.5rem;position:relative}.neeto-molecules-sidebar__links--focus-mode .neeto-molecules-sidebar__sublink:hover{background-color:rgb(var(--neeto-ui-gray-100))}.neeto-molecules-sidebar__links--focus-mode .neeto-molecules-sidebar__sublink.active{background-color:rgb(var(--neeto-ui-accent-100))!important;color:rgb(var(--neeto-ui-black))!important;font-weight:var(--neeto-ui-font-medium)}.neeto-molecules-sidebar__link-unread-count{align-items:center;background-color:rgb(var(--neeto-ui-accent-500));border-radius:var(--neeto-ui-rounded-full);color:rgb(var(--neeto-ui-white));display:flex;flex-shrink:0;font-size:var(--neeto-ui-text-xxs);height:1rem;inset-inline-end:-4px;justify-content:center;min-width:1rem;padding-inline:.25rem;position:absolute;top:-4px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.neeto-ui-theme--dark .neeto-molecules-sidebar__logo [data-dark-mode-color=true]{fill:rgb(var(--neeto-ui-black))}.neeto-molecules-sidebar__workspace-info{margin-block-end:1.5rem;padding-block:.5rem;padding-inline:1.5rem}.neeto-molecules-sidebar__resize-handle{bottom:0;cursor:col-resize;inset-inline-end:0;position:absolute;top:0;width:3px;z-index:99999;z-index:calc(var(--neeto-molecules-sidebar-z-index) + 1)}.neeto-molecules-sidebar__resize-handle:before{background-color:rgb(var(--neeto-ui-gray-200));bottom:0;content:\"\";inset-inline-start:0;position:absolute;top:0;transition:background-color .15s ease-in-out,width .15s ease-in-out;width:0}.neeto-molecules-sidebar__resize-handle:hover:before{background-color:rgb(var(--neeto-ui-gray-400));width:2px}.neeto-molecules-sidebar__resize-handle:active:before{background-color:rgb(var(--neeto-ui-primary-500));width:2px}.neeto-molecules-sidebar__wrapper:not(.neeto-molecules-sidebar__wrapper--collapsed)+.neeto-molecules-sidebar__resize-handle{display:block}.neeto-molecules-sidebar__wrapper+.neeto-molecules-sidebar__resize-handle{display:none;inset-inline-start:15rem;inset-inline-start:var(--neeto-molecules-sidebar-width)}.neeto-molecules-sidebar__wrapper--collapsed+.neeto-molecules-sidebar__resize-handle{display:none}body.dragging-sidebar,body.dragging-sidebar *{cursor:col-resize!important}body.dragging-sidebar *{-webkit-user-select:none!important;-moz-user-select:none!important;user-select:none!important}[dir=rtl] .neeto-molecules-sidebar__toggler{transform:scaleX(-1);transition:none}[dir=rtl] .neeto-molecules-sidebar__wrapper--collapsed .neeto-molecules-sidebar__toggler{transform:scaleX(1)}[dir=rtl] .neeto-molecules-sidebar__link-icon{transform:scaleX(-1)}[dir=rtl] .neeto-molecules-sidebar__link-icon--rotate{transform:scaleX(1) rotate(90deg)}";
|
|
249
|
+
n(css,{});
|
|
250
|
+
|
|
251
|
+
var Chevron = function Chevron(_ref) {
|
|
252
|
+
var style = _ref.style;
|
|
253
|
+
return /*#__PURE__*/jsx("svg", {
|
|
254
|
+
style: style,
|
|
255
|
+
height: "16",
|
|
256
|
+
viewBox: "0 0 16 16",
|
|
257
|
+
width: "16",
|
|
258
|
+
children: /*#__PURE__*/jsx("path", {
|
|
259
|
+
d: "M7.07031 13.8887C7.2207 14.0391 7.40527 14.1211 7.62402 14.1211C8.06836 14.1211 8.41699 13.7725 8.41699 13.3281C8.41699 13.1094 8.32812 12.9043 8.17773 12.7539L3.37207 8.05762L8.17773 3.375C8.32812 3.21777 8.41699 3.0127 8.41699 2.80078C8.41699 2.35645 8.06836 2.00781 7.62402 2.00781C7.40527 2.00781 7.2207 2.08984 7.07031 2.24023L1.73828 7.44922C1.56055 7.62012 1.46484 7.8252 1.46484 8.06445C1.46484 8.29688 1.55371 8.49512 1.73828 8.67969L7.07031 13.8887ZM13.1748 13.8887C13.3252 14.0391 13.5098 14.1211 13.7354 14.1211C14.1797 14.1211 14.5283 13.7725 14.5283 13.3281C14.5283 13.1094 14.4395 12.9043 14.2891 12.7539L9.4834 8.05762L14.2891 3.375C14.4395 3.21777 14.5283 3.0127 14.5283 2.80078C14.5283 2.35645 14.1797 2.00781 13.7354 2.00781C13.5098 2.00781 13.3252 2.08984 13.1748 2.24023L7.84961 7.44922C7.66504 7.62012 7.57617 7.8252 7.56934 8.06445C7.56934 8.29688 7.66504 8.49512 7.84961 8.67969L13.1748 13.8887Z",
|
|
260
|
+
fill: "currentColor"
|
|
261
|
+
})
|
|
262
|
+
});
|
|
263
|
+
};
|
|
264
|
+
|
|
265
|
+
export { Chevron as C, DEFAULT_HOME_PATH as D, MIN_SIDEBAR_WIDTH as M, PINNED_MORE_NAV_LINKS_KEY as P, SelectedLink as S, _Items as _, SPECIAL_APP_NAMES as a, CheckPointNavLinks as b, SELECTED_NAV_LINK_ROUTE_STORAGE_KEY as c, SIDEBAR_WIDTH_KEY as d, DEFAULT_SIDEBAR_WIDTH as e, filterByPermissions as f, getSidebarStateLocalStorageKey as g, enableDraggingStyles as h, disableDraggingStyles as i, getActiveConfigurePageLink as j, MAX_SIDEBAR_WIDTH as k };
|
|
266
|
+
//# sourceMappingURL=Chevron-Dtxc2piW.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Chevron-Dtxc2piW.js","sources":["../src/components/Sidebar/constants.js","../src/components/Sidebar/Components/Links/CheckPointNavLink.jsx","../src/components/Sidebar/utils.js","../src/components/Sidebar/Components/Links/SubLink.jsx","../src/components/Sidebar/Components/Links/Items.jsx","../src/components/Sidebar/Components/Links/SelectedLink.jsx","../src/components/Sidebar/Components/Chevron.jsx"],"sourcesContent":["export const SUB_LINK_TYPES = {\n SYSTEM_VIEW: \"system_view\",\n SEGMENTS: \"segments\",\n};\n\nexport const SELECTED_NAV_LINK_ROUTE_STORAGE_KEY = \"selectedNavLinkRoute\";\n\nexport const DEFAULT_HOME_PATH = \"/admin\";\n\nexport const SIDEBAR_WIDTH_KEY = \"neeto-molecules-sidebar-width\";\nexport const MIN_SIDEBAR_WIDTH = 12.5 * 16;\nexport const MAX_SIDEBAR_WIDTH = 20 * 16;\nexport const DEFAULT_SIDEBAR_WIDTH = 15 * 16;\n\nexport const PINNED_MORE_NAV_LINKS_KEY = \"pinnedMoreNavLinks\";\n\nexport const SPECIAL_APP_NAMES = { bugwatch: \"BugWatch\" };\n","import { useNavigationCheckpoints } from \"neetocommons/react-utils/useRegisterNavigationCheckpoint\";\nimport { NavLink } from \"react-router-dom\";\n\nconst CheckPointNavLinks = ({\n checkpointKey,\n to,\n href,\n children,\n ...others\n}) => {\n const { [checkpointKey]: checkpoint } =\n useNavigationCheckpoints(checkpointKey);\n\n const LinkElement = href ? \"a\" : NavLink;\n const linkProps = href\n ? { href, key: href, ...others }\n : { to: checkpoint || to, key: to, ...others };\n\n return <LinkElement {...linkProps}>{children}</LinkElement>;\n};\n\nexport default CheckPointNavLinks;\n","import { isPresent, isNotEmpty } from \"neetocist\";\nimport { __, all, curry, equals, includes, is } from \"ramda\";\n\nexport const isSubRouteActive = (subRoute, location) => {\n const currentBrowserUrl = new URL(\n location.pathname + location.search + location.hash,\n window.location.origin\n );\n const targetUrl = new URL(subRoute, window.location.origin);\n\n const targetSearchParams = targetUrl.searchParams;\n const targetSearchKeys = Array.from(targetSearchParams.keys());\n\n return (\n all(\n key =>\n currentBrowserUrl.searchParams.get(key) === targetSearchParams.get(key),\n targetSearchKeys\n ) && equals(currentBrowserUrl.pathname, targetUrl.pathname)\n );\n};\n\nexport const getSidebarStateLocalStorageKey = () => {\n const user = globalProps.user?.email || globalProps.user?.phoneNumber;\n\n return `sidebarState-${user}`;\n};\n\nexport const filterByPermissions = curry(({ permissions }) => {\n if (permissions && isNotEmpty(permissions)) {\n return is(Array, permissions)\n ? permissions.some(includes(__, globalProps.permissions))\n : globalProps.permissions.includes(permissions);\n }\n\n return true;\n});\n\nexport const getActiveConfigurePageLink = ({ navLinks, location }) =>\n navLinks.find(link => {\n const [linkPathname] = link.to?.split(\"?\") || [];\n\n return (\n isPresent(link.isConfigureNavLink) &&\n link.isConfigureNavLink &&\n location.pathname.startsWith(linkPathname)\n );\n });\n\nexport const enableDraggingStyles = () => {\n document.body.classList.add(\"dragging-sidebar\");\n document.body.style.cursor = \"col-resize\";\n document.body.style.userSelect = \"none\";\n};\n\nexport const disableDraggingStyles = () => {\n document.body.classList.remove(\"dragging-sidebar\");\n document.body.style.cursor = \"\";\n document.body.style.userSelect = \"\";\n};\n","import { hyphenate } from \"neetocist\";\nimport { Segments } from \"neetofilters\";\nimport { Typography } from \"neetoui\";\nimport { is } from \"ramda\";\n\nimport CheckPointNavLinks from \"./CheckPointNavLink\";\n\nimport { SUB_LINK_TYPES } from \"../../constants\";\nimport { isSubRouteActive } from \"../../utils\";\n\nconst SubLink = ({\n to,\n href,\n onClick,\n label,\n type = SUB_LINK_TYPES.SYSTEM_VIEW,\n count,\n isSectionHeader,\n isCountsLoading,\n \"data-cy\": dataCy,\n entity = \"\",\n columns = [],\n baseUrl,\n isActive,\n}) => {\n if (type === SUB_LINK_TYPES.SEGMENTS) {\n return <Segments {...{ baseUrl, columns, entity }} isIndependent={false} />;\n }\n\n const dataCyPrefix = dataCy || hyphenate(label);\n\n const renderCount = count => (count > 999 ? \"999+\" : count);\n\n const isSubLinkActive = () =>\n !isSectionHeader &&\n (is(Function, isActive) ? isActive() : isSubRouteActive(to, location));\n\n return (\n <CheckPointNavLinks\n {...{ href, onClick, to }}\n activeClassName=\"active\"\n className=\"neeto-molecules-sidebar__sublink neeto-ui-flex neeto-ui-items-center neeto-ui-select-none\"\n data-cy={`${dataCyPrefix}-sub-link`}\n isActive={isSubLinkActive}\n >\n <Typography\n className=\"neeto-molecules-sidebar__link-sub-label neeto-ui-flex-grow\"\n component=\"span\"\n data-cy={`${dataCyPrefix}-sub-link-label`}\n style=\"body2\"\n >\n {label}\n </Typography>\n <Typography\n className=\"neeto-molecules-sidebar__link-sub-count neeto-ui-flex-shrink-0\"\n component=\"span\"\n data-cy={`${dataCyPrefix}-sub-link-count`}\n style=\"body2\"\n >\n {isCountsLoading ? (\n <div className=\"neeto-ui-rounded neeto-ui-bg-gray-200 h-4 w-4 animate-pulse\" />\n ) : (\n renderCount(count)\n )}\n </Typography>\n </CheckPointNavLinks>\n );\n};\n\nexport default SubLink;\n","import { Fragment } from \"react\";\n\nimport { isPresent } from \"neetocist\";\n\nimport SubLink from \"./SubLink\";\n\nimport { filterByPermissions } from \"../../utils\";\n\nconst Items = ({ items, isSettingsItems = false, isCountsLoading }) => (\n <div\n className=\"neeto-molecules-sidebar__sublink-wrapper\"\n data-cy=\"sidebar-sub-link-wrapper\"\n >\n {items.filter(filterByPermissions).map((subItem, subIndex) => (\n <Fragment key={subIndex}>\n <SubLink\n {...{ ...subItem, isCountsLoading }}\n href={subItem.href}\n isActive={subItem.isActive}\n isSectionHeader={isPresent(subItem.item)}\n to={subItem.to ?? subItem.path}\n onClick={subItem.onClick}\n />\n {isSettingsItems && isPresent(subItem.items) && (\n <>\n <Items {...{ isSettingsItems }} items={subItem.items} />\n {items.length - 1 !== subIndex && (\n <hr className=\"neeto-molecules-sidebar__separator neeto-ui-border-gray-200\" />\n )}\n </>\n )}\n </Fragment>\n ))}\n </div>\n);\n\nexport default Items;\n","import classNames from \"classnames\";\nimport { handleMetaClick } from \"neetocommons/react-utils\";\nimport { hyphenize } from \"neetocommons/utils/general\";\nimport { Home } from \"neetoicons\";\nimport { Typography, Button } from \"neetoui\";\nimport { omit } from \"ramda\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { DEFAULT_HOME_PATH } from \"components/Sidebar/constants\";\n\nimport Items from \"./Items\";\n\nconst SelectedLink = ({\n navLink = { label: \"\", items: [], isConfigureNavLink: false },\n handleGoBack,\n isConfigureSidebar,\n}) => {\n const history = useHistory();\n const { label, items, isConfigureNavLink, ...otherProps } = navLink;\n\n const handleHomeButtonClick = e => {\n e.stopPropagation();\n handleMetaClick(history, DEFAULT_HOME_PATH, e);\n };\n\n return (\n <div\n className=\"neeto-molecules-sidebar__links neeto-molecules-sidebar__links--focus-mode neeto-molecules-sidebar__no-shrinkable\"\n data-cy=\"configure-nav-container\"\n >\n <div\n className=\"neeto-ui-flex neeto-ui-items-center neeto-ui-no-underline neeto-molecules-sidebar__link neeto-ui-border-b neeto-ui-border-gray-200\"\n onClick={handleGoBack}\n {...{ ...omit([\"icon\"], otherProps) }}\n >\n {isConfigureNavLink && (\n <span className=\"neeto-molecules-sidebar__link-icon flex items-center pl-3\">\n <Button\n data-cy={`${hyphenize(label)}-go-back-button`}\n data-testid={`${label}-go-home-button`}\n icon={Home}\n style=\"text\"\n onClick={handleHomeButtonClick}\n />\n <span className=\"px-1 text-xs\">/</span>\n </span>\n )}\n <Typography\n component=\"span\"\n style=\"body1\"\n className={classNames(\"neeto-molecules-sidebar__link-label\", {\n \"neeto-molecules-sidebar__configure-page-header\":\n isConfigureNavLink,\n [\"pl-4\"]: isConfigureSidebar,\n })}\n >\n {label}\n </Typography>\n </div>\n {items && <Items {...{ items }} isSettingsItems />}\n </div>\n );\n};\n\nexport default SelectedLink;\n","const Chevron = ({ style }) => (\n <svg {...{ style }} height=\"16\" viewBox=\"0 0 16 16\" width=\"16\">\n <path\n d=\"M7.07031 13.8887C7.2207 14.0391 7.40527 14.1211 7.62402 14.1211C8.06836 14.1211 8.41699 13.7725 8.41699 13.3281C8.41699 13.1094 8.32812 12.9043 8.17773 12.7539L3.37207 8.05762L8.17773 3.375C8.32812 3.21777 8.41699 3.0127 8.41699 2.80078C8.41699 2.35645 8.06836 2.00781 7.62402 2.00781C7.40527 2.00781 7.2207 2.08984 7.07031 2.24023L1.73828 7.44922C1.56055 7.62012 1.46484 7.8252 1.46484 8.06445C1.46484 8.29688 1.55371 8.49512 1.73828 8.67969L7.07031 13.8887ZM13.1748 13.8887C13.3252 14.0391 13.5098 14.1211 13.7354 14.1211C14.1797 14.1211 14.5283 13.7725 14.5283 13.3281C14.5283 13.1094 14.4395 12.9043 14.2891 12.7539L9.4834 8.05762L14.2891 3.375C14.4395 3.21777 14.5283 3.0127 14.5283 2.80078C14.5283 2.35645 14.1797 2.00781 13.7354 2.00781C13.5098 2.00781 13.3252 2.08984 13.1748 2.24023L7.84961 7.44922C7.66504 7.62012 7.57617 7.8252 7.56934 8.06445C7.56934 8.29688 7.66504 8.49512 7.84961 8.67969L13.1748 13.8887Z\"\n fill=\"currentColor\"\n />\n </svg>\n);\n\nexport default Chevron;\n"],"names":["SUB_LINK_TYPES","SYSTEM_VIEW","SEGMENTS","SELECTED_NAV_LINK_ROUTE_STORAGE_KEY","DEFAULT_HOME_PATH","SIDEBAR_WIDTH_KEY","MIN_SIDEBAR_WIDTH","MAX_SIDEBAR_WIDTH","DEFAULT_SIDEBAR_WIDTH","PINNED_MORE_NAV_LINKS_KEY","SPECIAL_APP_NAMES","bugwatch","CheckPointNavLinks","_ref","checkpointKey","to","href","children","others","_objectWithoutProperties","_excluded","_useNavigationCheckpo","useNavigationCheckpoints","checkpoint","LinkElement","NavLink","linkProps","_objectSpread","key","_jsx","isSubRouteActive","subRoute","location","currentBrowserUrl","URL","pathname","search","hash","window","origin","targetUrl","targetSearchParams","searchParams","targetSearchKeys","Array","from","keys","all","get","equals","getSidebarStateLocalStorageKey","_globalProps$user","_globalProps$user2","user","globalProps","email","phoneNumber","concat","filterByPermissions","curry","permissions","isNotEmpty","is","some","includes","__","getActiveConfigurePageLink","_ref2","navLinks","find","link","_link$to","_ref3","split","_ref4","_slicedToArray","linkPathname","isPresent","isConfigureNavLink","startsWith","enableDraggingStyles","document","body","classList","add","style","cursor","userSelect","disableDraggingStyles","remove","SubLink","onClick","label","_ref$type","type","count","isSectionHeader","isCountsLoading","dataCy","_ref$entity","entity","_ref$columns","columns","baseUrl","isActive","Segments","isIndependent","dataCyPrefix","hyphenate","renderCount","isSubLinkActive","Function","_jsxs","activeClassName","className","Typography","component","Items","items","_ref$isSettingsItems","isSettingsItems","filter","map","subItem","subIndex","_subItem$to","Fragment","item","path","_Fragment","_Items","length","SelectedLink","_ref$navLink","navLink","handleGoBack","isConfigureSidebar","history","useHistory","otherProps","handleHomeButtonClick","e","stopPropagation","handleMetaClick","omit","Button","hyphenize","icon","Home","classNames","_defineProperty","Chevron","height","viewBox","width","d","fill"],"mappings":"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"}
|
|
@@ -5,7 +5,7 @@ import Button from '@bigbinary/neetoui/Button';
|
|
|
5
5
|
import { not } from 'ramda';
|
|
6
6
|
import { useTranslation } from 'react-i18next';
|
|
7
7
|
import { useHistory } from 'react-router-dom';
|
|
8
|
-
import { S as SelectedLink, C as Chevron } from './Chevron-
|
|
8
|
+
import { S as SelectedLink, C as Chevron } from './Chevron-Dtxc2piW.js';
|
|
9
9
|
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
10
10
|
import '@babel/runtime/helpers/defineProperty';
|
|
11
11
|
import '@babel/runtime/helpers/objectWithoutProperties';
|
package/dist/Schedule.js
CHANGED
|
@@ -439,7 +439,7 @@ var formatCreateLabel = identity;
|
|
|
439
439
|
var isValidTimeSlotOption = function isValidTimeSlotOption(value) {
|
|
440
440
|
// Allow HH:MM AM/PM, H:MM AM/PM, H:MM am/pm, or HH:MM (24h)
|
|
441
441
|
// Accepts 1 or 2 digit hour (1-12) with AM/PM OR 00-23:00-59 for 24h, AM/PM (any case) optional, optional leading zero
|
|
442
|
-
|
|
442
|
+
// eslint-disable-next-line prettier/prettier
|
|
443
443
|
var timeRegex = /^(((0?[1-9]|1[0-2]):[0-5]\d ?[AaPp][Mm])|([01]?\d|2[0-3]):[0-5]\d)$/;
|
|
444
444
|
return timeRegex.test(value);
|
|
445
445
|
};
|