@pdg/react-admin-layout 1.0.13 → 1.0.15

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/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../src/CardLayout/CardLayout.types.tsx","../src/CardLayout/CardLayout.tsx","../src/@util/compare.ts","../src/DefaultLayout/SideMenuListItem/SideMenuListItem.tsx","../src/DefaultLayout/SideMenuList/SideMenuList.style.ts","../src/DefaultLayout/SideMenuList/SideMenuList.tsx","../node_modules/lodash-es/_freeGlobal.js","../node_modules/lodash-es/_root.js","../node_modules/lodash-es/_Symbol.js","../node_modules/lodash-es/_getRawTag.js","../node_modules/lodash-es/_objectToString.js","../node_modules/lodash-es/_baseGetTag.js","../node_modules/lodash-es/isObjectLike.js","../node_modules/lodash-es/isSymbol.js","../node_modules/lodash-es/_trimmedEndIndex.js","../node_modules/lodash-es/_baseTrim.js","../node_modules/lodash-es/isObject.js","../node_modules/lodash-es/toNumber.js","../node_modules/lodash-es/now.js","../node_modules/lodash-es/debounce.js","../node_modules/lodash-es/throttle.js","../node_modules/can-use-dom/index.js","../node_modules/simplebar-core/dist/index.mjs","../node_modules/simplebar-react/dist/index.mjs","../src/DefaultLayout/SideMenu/SideMenu.style.ts","../node_modules/style-inject/dist/style-inject.es.js","../src/DefaultLayout/SideMenu/SideMenu.tsx","../src/DefaultLayout/Title.style.ts","../src/DefaultLayout/Title.tsx","../src/DefaultLayout/DefaultLayout.style.ts","../src/DefaultLayout/DefaultLayout.tsx"],"sourcesContent":["import { ReactNode } from 'react';\nimport { CardProps } from '@mui/material';\n\nexport interface CardLayoutProps extends Partial<CardProps> {\n children?: ReactNode;\n backgroundColor?: string;\n}\n\nexport const CardLayoutDefaultProps: Pick<CardLayoutProps, 'backgroundColor'> = {\n backgroundColor: '#eff3f8',\n};\n","import { Grid } from '@mui/material';\nimport React from 'react';\nimport { CardLayoutProps, CardLayoutDefaultProps } from './CardLayout.types';\n\nconst CardLayout: React.FC<CardLayoutProps> = ({ children, backgroundColor }) => {\n return (\n <Grid\n container\n direction='column'\n alignItems='center'\n justifyContent='center'\n style={{ minHeight: '100vh', backgroundColor }}\n >\n <Grid item xs={12}>\n {children}\n </Grid>\n </Grid>\n );\n};\n\nCardLayout.defaultProps = CardLayoutDefaultProps;\n\nexport default CardLayout;\n","const empty = function (v: any) {\n let result = false;\n if (v == null) {\n result = true;\n } else if (typeof v === 'string') {\n result = v === '';\n } else if (typeof v === 'object') {\n if (Array.isArray(v)) {\n result = v.length === 0;\n } else if (!(v instanceof Date)) {\n result = Object.entries(v).length === 0;\n }\n }\n return result;\n};\n\nconst notEmpty = function (v: any) {\n return !empty(v);\n};\n\nconst isSame = (v1: any, v2: any): boolean => {\n if (v1 === v2) return true;\n if (typeof v1 !== typeof v2) return false;\n if (v1 == null || v2 == null) return false;\n if (Array.isArray(v1) && Array.isArray(v2)) {\n if (v1.length !== v2.length) return false;\n for (let i = 0; i < v1.length; i += 1) {\n if (v1[i] !== v2[i]) return false;\n }\n } else {\n return v1 === v2;\n }\n return true;\n};\n\nexport { empty, notEmpty, isSame };\n","import React, { useCallback, useEffect, useMemo, useState } from 'react';\nimport { notEmpty } from '../../@util';\nimport { ListItemButton, ListItemIcon, Icon, ListItemText, Collapse, useTheme, alpha, Badge } from '@mui/material';\nimport { ExpandMore } from '@mui/icons-material';\nimport { useLocation } from 'react-router-dom';\nimport { SideMenuListItemProps } from './SideMenuListItem.types';\n\nconst SideMenuListItem: React.FC<SideMenuListItemProps> = ({ info, badgeVariant, onClick }) => {\n const theme = useTheme();\n const location = useLocation();\n\n // -------------------------------------------------------------------------------------------------------------------\n\n const [isExpandable, setIsExpandable] = useState<boolean>(false);\n const [isExpand, setIsExpand] = useState<boolean>(false);\n\n // -------------------------------------------------------------------------------------------------------------------\n\n useEffect(() => {\n setIsExpandable(!!info && notEmpty(info.items));\n\n if (info.items && info.items.find((info) => location.pathname === info.uri)) {\n setIsExpand(true);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [info]);\n\n useEffect(() => {\n if (isExpandable && isExpand != null) {\n if (info.uri !== location.pathname) {\n if (info.items && !info.items.find((info) => location.pathname === info.uri)) {\n if (isExpand) {\n setIsExpand(false);\n }\n }\n }\n }\n if (isExpandable && !isExpand) {\n if (info.items && info.items.find((info) => location.pathname === info.uri)) {\n setIsExpand(true);\n }\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [location]);\n\n // -------------------------------------------------------------------------------------------------------------------\n\n const toggleIsExpand = useCallback(() => {\n setIsExpand((isExpand) => !isExpand);\n }, []);\n\n // -------------------------------------------------------------------------------------------------------------------\n\n const icon = useMemo(\n () =>\n info.icon\n ? info.icon.replace(/[A-Z]/g, (letter, idx) => `${idx > 0 ? '_' : ''}${letter.toLowerCase()}`)\n : undefined,\n [info]\n );\n\n // -------------------------------------------------------------------------------------------------------------------\n\n const containerStyle = useMemo(\n () => ({\n backgroundColor:\n isExpandable && isExpand\n ? alpha(theme.palette.primary.main, theme.palette.action.selectedOpacity / 2)\n : undefined,\n }),\n [isExpand, isExpandable, theme]\n );\n\n const expandIconSx = useMemo(\n () =>\n isExpandable && isExpand != null\n ? {\n marginTop: 'auto',\n marginBottom: 'auto',\n animation: `${isExpand ? 'open' : 'close'} 0.1s linear`,\n transform: `rotate(${isExpand ? 180 : 0}deg)`,\n '@keyframes open': {\n '0%': {\n transform: `rotate(0deg)`,\n },\n '100%': {\n transform: `rotate(180deg)`,\n },\n },\n '@keyframes close': {\n '0%': {\n transform: `rotate(180deg)`,\n },\n '100%': {\n transform: `rotate(0deg)`,\n },\n },\n }\n : {\n marginTop: 'auto',\n marginBottom: 'auto',\n },\n [isExpandable, isExpand]\n );\n\n const collapseStyle = useMemo(\n () => ({\n backgroundColor: isExpand\n ? alpha(theme.palette.primary.main, theme.palette.action.selectedOpacity / 2)\n : undefined,\n }),\n [isExpand, theme]\n );\n\n const primaryTypographyProps = useMemo(() => ({ sx: { fontWeight: info.depth === 1 ? 600 : null } }), [info]);\n\n // -------------------------------------------------------------------------------------------------------------------\n\n return (\n <>\n <ListItemButton\n onClick={\n isExpandable\n ? toggleIsExpand\n : () => {\n if (onClick) onClick(info);\n }\n }\n selected={isExpandable ? false : info.uri === location.pathname}\n style={containerStyle}\n >\n <ListItemIcon sx={{ minWidth: 30 }}>{icon && <Icon fontSize='small'>{icon}</Icon>}</ListItemIcon>\n <ListItemText primaryTypographyProps={primaryTypographyProps}>\n {info.badge ? (\n <Badge\n badgeContent={info.badge}\n color='error'\n variant={badgeVariant !== undefined ? badgeVariant : info.badgeVariant}\n anchorOrigin={{ horizontal: 'left', vertical: 'top' }}\n slotProps={{\n badge: { style: { left: '100%', top: '50%', transform: 'scale(.8) translate(10px, -50%)' } },\n }}\n >\n <div>{info.name}</div>\n </Badge>\n ) : (\n info.name\n )}\n </ListItemText>\n\n {isExpandable && <ExpandMore sx={expandIconSx} />}\n </ListItemButton>\n <Collapse in={isExpand} style={collapseStyle}>\n {isExpandable &&\n info.items &&\n info.items.map((subInfo, idx) => (\n <SideMenuListItem key={idx} badgeVariant={badgeVariant} info={subInfo} onClick={onClick} />\n ))}\n </Collapse>\n </>\n );\n};\n\nexport default SideMenuListItem;\n","import { List, styled } from '@mui/material';\n\nexport const StyledList = styled(List)`\n padding: 0;\n`;\n","import React from 'react';\nimport SideMenuListItem from '../SideMenuListItem';\nimport { SideMenuListProps } from './SideMenuList.types';\nimport { StyledList } from './SideMenuList.style';\n\nconst SideMenuList: React.FC<SideMenuListProps> = ({ list, badgeVariant, onClick }) => {\n return (\n <StyledList>\n {list.map((info, idx) => (\n <SideMenuListItem key={idx} info={info} badgeVariant={badgeVariant} onClick={onClick} />\n ))}\n </StyledList>\n );\n};\n\nexport default SideMenuList;\n","/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\nexport default freeGlobal;\n","import freeGlobal from './_freeGlobal.js';\n\n/** Detect free variable `self`. */\nvar freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n/** Used as a reference to the global object. */\nvar root = freeGlobal || freeSelf || Function('return this')();\n\nexport default root;\n","import root from './_root.js';\n\n/** Built-in value references. */\nvar Symbol = root.Symbol;\n\nexport default Symbol;\n","import Symbol from './_Symbol.js';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the raw `toStringTag`.\n */\nfunction getRawTag(value) {\n var isOwn = hasOwnProperty.call(value, symToStringTag),\n tag = value[symToStringTag];\n\n try {\n value[symToStringTag] = undefined;\n var unmasked = true;\n } catch (e) {}\n\n var result = nativeObjectToString.call(value);\n if (unmasked) {\n if (isOwn) {\n value[symToStringTag] = tag;\n } else {\n delete value[symToStringTag];\n }\n }\n return result;\n}\n\nexport default getRawTag;\n","/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/**\n * Converts `value` to a string using `Object.prototype.toString`.\n *\n * @private\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n */\nfunction objectToString(value) {\n return nativeObjectToString.call(value);\n}\n\nexport default objectToString;\n","import Symbol from './_Symbol.js';\nimport getRawTag from './_getRawTag.js';\nimport objectToString from './_objectToString.js';\n\n/** `Object#toString` result references. */\nvar nullTag = '[object Null]',\n undefinedTag = '[object Undefined]';\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * The base implementation of `getTag` without fallbacks for buggy environments.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nfunction baseGetTag(value) {\n if (value == null) {\n return value === undefined ? undefinedTag : nullTag;\n }\n return (symToStringTag && symToStringTag in Object(value))\n ? getRawTag(value)\n : objectToString(value);\n}\n\nexport default baseGetTag;\n","/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\nfunction isObjectLike(value) {\n return value != null && typeof value == 'object';\n}\n\nexport default isObjectLike;\n","import baseGetTag from './_baseGetTag.js';\nimport isObjectLike from './isObjectLike.js';\n\n/** `Object#toString` result references. */\nvar symbolTag = '[object Symbol]';\n\n/**\n * Checks if `value` is classified as a `Symbol` primitive or object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.\n * @example\n *\n * _.isSymbol(Symbol.iterator);\n * // => true\n *\n * _.isSymbol('abc');\n * // => false\n */\nfunction isSymbol(value) {\n return typeof value == 'symbol' ||\n (isObjectLike(value) && baseGetTag(value) == symbolTag);\n}\n\nexport default isSymbol;\n","/** Used to match a single whitespace character. */\nvar reWhitespace = /\\s/;\n\n/**\n * Used by `_.trim` and `_.trimEnd` to get the index of the last non-whitespace\n * character of `string`.\n *\n * @private\n * @param {string} string The string to inspect.\n * @returns {number} Returns the index of the last non-whitespace character.\n */\nfunction trimmedEndIndex(string) {\n var index = string.length;\n\n while (index-- && reWhitespace.test(string.charAt(index))) {}\n return index;\n}\n\nexport default trimmedEndIndex;\n","import trimmedEndIndex from './_trimmedEndIndex.js';\n\n/** Used to match leading whitespace. */\nvar reTrimStart = /^\\s+/;\n\n/**\n * The base implementation of `_.trim`.\n *\n * @private\n * @param {string} string The string to trim.\n * @returns {string} Returns the trimmed string.\n */\nfunction baseTrim(string) {\n return string\n ? string.slice(0, trimmedEndIndex(string) + 1).replace(reTrimStart, '')\n : string;\n}\n\nexport default baseTrim;\n","/**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\nfunction isObject(value) {\n var type = typeof value;\n return value != null && (type == 'object' || type == 'function');\n}\n\nexport default isObject;\n","import baseTrim from './_baseTrim.js';\nimport isObject from './isObject.js';\nimport isSymbol from './isSymbol.js';\n\n/** Used as references for various `Number` constants. */\nvar NAN = 0 / 0;\n\n/** Used to detect bad signed hexadecimal string values. */\nvar reIsBadHex = /^[-+]0x[0-9a-f]+$/i;\n\n/** Used to detect binary string values. */\nvar reIsBinary = /^0b[01]+$/i;\n\n/** Used to detect octal string values. */\nvar reIsOctal = /^0o[0-7]+$/i;\n\n/** Built-in method references without a dependency on `root`. */\nvar freeParseInt = parseInt;\n\n/**\n * Converts `value` to a number.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to process.\n * @returns {number} Returns the number.\n * @example\n *\n * _.toNumber(3.2);\n * // => 3.2\n *\n * _.toNumber(Number.MIN_VALUE);\n * // => 5e-324\n *\n * _.toNumber(Infinity);\n * // => Infinity\n *\n * _.toNumber('3.2');\n * // => 3.2\n */\nfunction toNumber(value) {\n if (typeof value == 'number') {\n return value;\n }\n if (isSymbol(value)) {\n return NAN;\n }\n if (isObject(value)) {\n var other = typeof value.valueOf == 'function' ? value.valueOf() : value;\n value = isObject(other) ? (other + '') : other;\n }\n if (typeof value != 'string') {\n return value === 0 ? value : +value;\n }\n value = baseTrim(value);\n var isBinary = reIsBinary.test(value);\n return (isBinary || reIsOctal.test(value))\n ? freeParseInt(value.slice(2), isBinary ? 2 : 8)\n : (reIsBadHex.test(value) ? NAN : +value);\n}\n\nexport default toNumber;\n","import root from './_root.js';\n\n/**\n * Gets the timestamp of the number of milliseconds that have elapsed since\n * the Unix epoch (1 January 1970 00:00:00 UTC).\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Date\n * @returns {number} Returns the timestamp.\n * @example\n *\n * _.defer(function(stamp) {\n * console.log(_.now() - stamp);\n * }, _.now());\n * // => Logs the number of milliseconds it took for the deferred invocation.\n */\nvar now = function() {\n return root.Date.now();\n};\n\nexport default now;\n","import isObject from './isObject.js';\nimport now from './now.js';\nimport toNumber from './toNumber.js';\n\n/** Error message constants. */\nvar FUNC_ERROR_TEXT = 'Expected a function';\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeMax = Math.max,\n nativeMin = Math.min;\n\n/**\n * Creates a debounced function that delays invoking `func` until after `wait`\n * milliseconds have elapsed since the last time the debounced function was\n * invoked. The debounced function comes with a `cancel` method to cancel\n * delayed `func` invocations and a `flush` method to immediately invoke them.\n * Provide `options` to indicate whether `func` should be invoked on the\n * leading and/or trailing edge of the `wait` timeout. The `func` is invoked\n * with the last arguments provided to the debounced function. Subsequent\n * calls to the debounced function return the result of the last `func`\n * invocation.\n *\n * **Note:** If `leading` and `trailing` options are `true`, `func` is\n * invoked on the trailing edge of the timeout only if the debounced function\n * is invoked more than once during the `wait` timeout.\n *\n * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred\n * until to the next tick, similar to `setTimeout` with a timeout of `0`.\n *\n * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)\n * for details over the differences between `_.debounce` and `_.throttle`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to debounce.\n * @param {number} [wait=0] The number of milliseconds to delay.\n * @param {Object} [options={}] The options object.\n * @param {boolean} [options.leading=false]\n * Specify invoking on the leading edge of the timeout.\n * @param {number} [options.maxWait]\n * The maximum time `func` is allowed to be delayed before it's invoked.\n * @param {boolean} [options.trailing=true]\n * Specify invoking on the trailing edge of the timeout.\n * @returns {Function} Returns the new debounced function.\n * @example\n *\n * // Avoid costly calculations while the window size is in flux.\n * jQuery(window).on('resize', _.debounce(calculateLayout, 150));\n *\n * // Invoke `sendMail` when clicked, debouncing subsequent calls.\n * jQuery(element).on('click', _.debounce(sendMail, 300, {\n * 'leading': true,\n * 'trailing': false\n * }));\n *\n * // Ensure `batchLog` is invoked once after 1 second of debounced calls.\n * var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 });\n * var source = new EventSource('/stream');\n * jQuery(source).on('message', debounced);\n *\n * // Cancel the trailing debounced invocation.\n * jQuery(window).on('popstate', debounced.cancel);\n */\nfunction debounce(func, wait, options) {\n var lastArgs,\n lastThis,\n maxWait,\n result,\n timerId,\n lastCallTime,\n lastInvokeTime = 0,\n leading = false,\n maxing = false,\n trailing = true;\n\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n wait = toNumber(wait) || 0;\n if (isObject(options)) {\n leading = !!options.leading;\n maxing = 'maxWait' in options;\n maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait;\n trailing = 'trailing' in options ? !!options.trailing : trailing;\n }\n\n function invokeFunc(time) {\n var args = lastArgs,\n thisArg = lastThis;\n\n lastArgs = lastThis = undefined;\n lastInvokeTime = time;\n result = func.apply(thisArg, args);\n return result;\n }\n\n function leadingEdge(time) {\n // Reset any `maxWait` timer.\n lastInvokeTime = time;\n // Start the timer for the trailing edge.\n timerId = setTimeout(timerExpired, wait);\n // Invoke the leading edge.\n return leading ? invokeFunc(time) : result;\n }\n\n function remainingWait(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime,\n timeWaiting = wait - timeSinceLastCall;\n\n return maxing\n ? nativeMin(timeWaiting, maxWait - timeSinceLastInvoke)\n : timeWaiting;\n }\n\n function shouldInvoke(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime;\n\n // Either this is the first call, activity has stopped and we're at the\n // trailing edge, the system time has gone backwards and we're treating\n // it as the trailing edge, or we've hit the `maxWait` limit.\n return (lastCallTime === undefined || (timeSinceLastCall >= wait) ||\n (timeSinceLastCall < 0) || (maxing && timeSinceLastInvoke >= maxWait));\n }\n\n function timerExpired() {\n var time = now();\n if (shouldInvoke(time)) {\n return trailingEdge(time);\n }\n // Restart the timer.\n timerId = setTimeout(timerExpired, remainingWait(time));\n }\n\n function trailingEdge(time) {\n timerId = undefined;\n\n // Only invoke if we have `lastArgs` which means `func` has been\n // debounced at least once.\n if (trailing && lastArgs) {\n return invokeFunc(time);\n }\n lastArgs = lastThis = undefined;\n return result;\n }\n\n function cancel() {\n if (timerId !== undefined) {\n clearTimeout(timerId);\n }\n lastInvokeTime = 0;\n lastArgs = lastCallTime = lastThis = timerId = undefined;\n }\n\n function flush() {\n return timerId === undefined ? result : trailingEdge(now());\n }\n\n function debounced() {\n var time = now(),\n isInvoking = shouldInvoke(time);\n\n lastArgs = arguments;\n lastThis = this;\n lastCallTime = time;\n\n if (isInvoking) {\n if (timerId === undefined) {\n return leadingEdge(lastCallTime);\n }\n if (maxing) {\n // Handle invocations in a tight loop.\n clearTimeout(timerId);\n timerId = setTimeout(timerExpired, wait);\n return invokeFunc(lastCallTime);\n }\n }\n if (timerId === undefined) {\n timerId = setTimeout(timerExpired, wait);\n }\n return result;\n }\n debounced.cancel = cancel;\n debounced.flush = flush;\n return debounced;\n}\n\nexport default debounce;\n","import debounce from './debounce.js';\nimport isObject from './isObject.js';\n\n/** Error message constants. */\nvar FUNC_ERROR_TEXT = 'Expected a function';\n\n/**\n * Creates a throttled function that only invokes `func` at most once per\n * every `wait` milliseconds. The throttled function comes with a `cancel`\n * method to cancel delayed `func` invocations and a `flush` method to\n * immediately invoke them. Provide `options` to indicate whether `func`\n * should be invoked on the leading and/or trailing edge of the `wait`\n * timeout. The `func` is invoked with the last arguments provided to the\n * throttled function. Subsequent calls to the throttled function return the\n * result of the last `func` invocation.\n *\n * **Note:** If `leading` and `trailing` options are `true`, `func` is\n * invoked on the trailing edge of the timeout only if the throttled function\n * is invoked more than once during the `wait` timeout.\n *\n * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred\n * until to the next tick, similar to `setTimeout` with a timeout of `0`.\n *\n * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)\n * for details over the differences between `_.throttle` and `_.debounce`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to throttle.\n * @param {number} [wait=0] The number of milliseconds to throttle invocations to.\n * @param {Object} [options={}] The options object.\n * @param {boolean} [options.leading=true]\n * Specify invoking on the leading edge of the timeout.\n * @param {boolean} [options.trailing=true]\n * Specify invoking on the trailing edge of the timeout.\n * @returns {Function} Returns the new throttled function.\n * @example\n *\n * // Avoid excessively updating the position while scrolling.\n * jQuery(window).on('scroll', _.throttle(updatePosition, 100));\n *\n * // Invoke `renewToken` when the click event is fired, but not more than once every 5 minutes.\n * var throttled = _.throttle(renewToken, 300000, { 'trailing': false });\n * jQuery(element).on('click', throttled);\n *\n * // Cancel the trailing throttled invocation.\n * jQuery(window).on('popstate', throttled.cancel);\n */\nfunction throttle(func, wait, options) {\n var leading = true,\n trailing = true;\n\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n if (isObject(options)) {\n leading = 'leading' in options ? !!options.leading : leading;\n trailing = 'trailing' in options ? !!options.trailing : trailing;\n }\n return debounce(func, wait, {\n 'leading': leading,\n 'maxWait': wait,\n 'trailing': trailing\n });\n}\n\nexport default throttle;\n","var canUseDOM = !!(\n typeof window !== 'undefined' &&\n window.document &&\n window.document.createElement\n);\n\nmodule.exports = canUseDOM;","/**\n * simplebar-core - v1.2.4\n * Scrollbars, simpler.\n * https://grsmto.github.io/simplebar/\n *\n * Made by Adrien Denat from a fork by Jonathan Nicol\n * Under MIT License\n */\n\nimport { throttle, debounce } from 'lodash-es';\nimport canUseDOM from 'can-use-dom';\n\n/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n\r\nvar __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n };\r\n return __assign.apply(this, arguments);\r\n};\n\nvar cachedScrollbarWidth = null;\nvar cachedDevicePixelRatio = null;\nif (canUseDOM) {\n window.addEventListener('resize', function () {\n if (cachedDevicePixelRatio !== window.devicePixelRatio) {\n cachedDevicePixelRatio = window.devicePixelRatio;\n cachedScrollbarWidth = null;\n }\n });\n}\nfunction scrollbarWidth() {\n if (cachedScrollbarWidth === null) {\n if (typeof document === 'undefined') {\n cachedScrollbarWidth = 0;\n return cachedScrollbarWidth;\n }\n var body = document.body;\n var box = document.createElement('div');\n box.classList.add('simplebar-hide-scrollbar');\n body.appendChild(box);\n var width = box.getBoundingClientRect().right;\n body.removeChild(box);\n cachedScrollbarWidth = width;\n }\n return cachedScrollbarWidth;\n}\n\nfunction getElementWindow$1(element) {\n if (!element ||\n !element.ownerDocument ||\n !element.ownerDocument.defaultView) {\n return window;\n }\n return element.ownerDocument.defaultView;\n}\nfunction getElementDocument$1(element) {\n if (!element || !element.ownerDocument) {\n return document;\n }\n return element.ownerDocument;\n}\n// Helper function to retrieve options from element attributes\nvar getOptions$1 = function (obj) {\n var initialObj = {};\n var options = Array.prototype.reduce.call(obj, function (acc, attribute) {\n var option = attribute.name.match(/data-simplebar-(.+)/);\n if (option) {\n var key = option[1].replace(/\\W+(.)/g, function (_, chr) { return chr.toUpperCase(); });\n switch (attribute.value) {\n case 'true':\n acc[key] = true;\n break;\n case 'false':\n acc[key] = false;\n break;\n case undefined:\n acc[key] = true;\n break;\n default:\n acc[key] = attribute.value;\n }\n }\n return acc;\n }, initialObj);\n return options;\n};\nfunction addClasses$1(el, classes) {\n var _a;\n if (!el)\n return;\n (_a = el.classList).add.apply(_a, classes.split(' '));\n}\nfunction removeClasses$1(el, classes) {\n if (!el)\n return;\n classes.split(' ').forEach(function (className) {\n el.classList.remove(className);\n });\n}\nfunction classNamesToQuery$1(classNames) {\n return \".\".concat(classNames.split(' ').join('.'));\n}\n\nvar helpers = /*#__PURE__*/Object.freeze({\n __proto__: null,\n getElementWindow: getElementWindow$1,\n getElementDocument: getElementDocument$1,\n getOptions: getOptions$1,\n addClasses: addClasses$1,\n removeClasses: removeClasses$1,\n classNamesToQuery: classNamesToQuery$1\n});\n\nvar getElementWindow = getElementWindow$1, getElementDocument = getElementDocument$1, getOptions = getOptions$1, addClasses = addClasses$1, removeClasses = removeClasses$1, classNamesToQuery = classNamesToQuery$1;\nvar SimpleBarCore = /** @class */ (function () {\n function SimpleBarCore(element, options) {\n if (options === void 0) { options = {}; }\n var _this = this;\n this.removePreventClickId = null;\n this.minScrollbarWidth = 20;\n this.stopScrollDelay = 175;\n this.isScrolling = false;\n this.isMouseEntering = false;\n this.scrollXTicking = false;\n this.scrollYTicking = false;\n this.wrapperEl = null;\n this.contentWrapperEl = null;\n this.contentEl = null;\n this.offsetEl = null;\n this.maskEl = null;\n this.placeholderEl = null;\n this.heightAutoObserverWrapperEl = null;\n this.heightAutoObserverEl = null;\n this.rtlHelpers = null;\n this.scrollbarWidth = 0;\n this.resizeObserver = null;\n this.mutationObserver = null;\n this.elStyles = null;\n this.isRtl = null;\n this.mouseX = 0;\n this.mouseY = 0;\n this.onMouseMove = function () { };\n this.onWindowResize = function () { };\n this.onStopScrolling = function () { };\n this.onMouseEntered = function () { };\n /**\n * On scroll event handling\n */\n this.onScroll = function () {\n var elWindow = getElementWindow(_this.el);\n if (!_this.scrollXTicking) {\n elWindow.requestAnimationFrame(_this.scrollX);\n _this.scrollXTicking = true;\n }\n if (!_this.scrollYTicking) {\n elWindow.requestAnimationFrame(_this.scrollY);\n _this.scrollYTicking = true;\n }\n if (!_this.isScrolling) {\n _this.isScrolling = true;\n addClasses(_this.el, _this.classNames.scrolling);\n }\n _this.showScrollbar('x');\n _this.showScrollbar('y');\n _this.onStopScrolling();\n };\n this.scrollX = function () {\n if (_this.axis.x.isOverflowing) {\n _this.positionScrollbar('x');\n }\n _this.scrollXTicking = false;\n };\n this.scrollY = function () {\n if (_this.axis.y.isOverflowing) {\n _this.positionScrollbar('y');\n }\n _this.scrollYTicking = false;\n };\n this._onStopScrolling = function () {\n removeClasses(_this.el, _this.classNames.scrolling);\n if (_this.options.autoHide) {\n _this.hideScrollbar('x');\n _this.hideScrollbar('y');\n }\n _this.isScrolling = false;\n };\n this.onMouseEnter = function () {\n if (!_this.isMouseEntering) {\n addClasses(_this.el, _this.classNames.mouseEntered);\n _this.showScrollbar('x');\n _this.showScrollbar('y');\n _this.isMouseEntering = true;\n }\n _this.onMouseEntered();\n };\n this._onMouseEntered = function () {\n removeClasses(_this.el, _this.classNames.mouseEntered);\n if (_this.options.autoHide) {\n _this.hideScrollbar('x');\n _this.hideScrollbar('y');\n }\n _this.isMouseEntering = false;\n };\n this._onMouseMove = function (e) {\n _this.mouseX = e.clientX;\n _this.mouseY = e.clientY;\n if (_this.axis.x.isOverflowing || _this.axis.x.forceVisible) {\n _this.onMouseMoveForAxis('x');\n }\n if (_this.axis.y.isOverflowing || _this.axis.y.forceVisible) {\n _this.onMouseMoveForAxis('y');\n }\n };\n this.onMouseLeave = function () {\n _this.onMouseMove.cancel();\n if (_this.axis.x.isOverflowing || _this.axis.x.forceVisible) {\n _this.onMouseLeaveForAxis('x');\n }\n if (_this.axis.y.isOverflowing || _this.axis.y.forceVisible) {\n _this.onMouseLeaveForAxis('y');\n }\n _this.mouseX = -1;\n _this.mouseY = -1;\n };\n this._onWindowResize = function () {\n // Recalculate scrollbarWidth in case it's a zoom\n _this.scrollbarWidth = _this.getScrollbarWidth();\n _this.hideNativeScrollbar();\n };\n this.onPointerEvent = function (e) {\n if (!_this.axis.x.track.el ||\n !_this.axis.y.track.el ||\n !_this.axis.x.scrollbar.el ||\n !_this.axis.y.scrollbar.el)\n return;\n var isWithinTrackXBounds, isWithinTrackYBounds;\n _this.axis.x.track.rect = _this.axis.x.track.el.getBoundingClientRect();\n _this.axis.y.track.rect = _this.axis.y.track.el.getBoundingClientRect();\n if (_this.axis.x.isOverflowing || _this.axis.x.forceVisible) {\n isWithinTrackXBounds = _this.isWithinBounds(_this.axis.x.track.rect);\n }\n if (_this.axis.y.isOverflowing || _this.axis.y.forceVisible) {\n isWithinTrackYBounds = _this.isWithinBounds(_this.axis.y.track.rect);\n }\n // If any pointer event is called on the scrollbar\n if (isWithinTrackXBounds || isWithinTrackYBounds) {\n // Prevent event leaking\n e.stopPropagation();\n if (e.type === 'pointerdown' && e.pointerType !== 'touch') {\n if (isWithinTrackXBounds) {\n _this.axis.x.scrollbar.rect =\n _this.axis.x.scrollbar.el.getBoundingClientRect();\n if (_this.isWithinBounds(_this.axis.x.scrollbar.rect)) {\n _this.onDragStart(e, 'x');\n }\n else {\n _this.onTrackClick(e, 'x');\n }\n }\n if (isWithinTrackYBounds) {\n _this.axis.y.scrollbar.rect =\n _this.axis.y.scrollbar.el.getBoundingClientRect();\n if (_this.isWithinBounds(_this.axis.y.scrollbar.rect)) {\n _this.onDragStart(e, 'y');\n }\n else {\n _this.onTrackClick(e, 'y');\n }\n }\n }\n }\n };\n /**\n * Drag scrollbar handle\n */\n this.drag = function (e) {\n var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;\n if (!_this.draggedAxis || !_this.contentWrapperEl)\n return;\n var eventOffset;\n var track = _this.axis[_this.draggedAxis].track;\n var trackSize = (_b = (_a = track.rect) === null || _a === void 0 ? void 0 : _a[_this.axis[_this.draggedAxis].sizeAttr]) !== null && _b !== void 0 ? _b : 0;\n var scrollbar = _this.axis[_this.draggedAxis].scrollbar;\n var contentSize = (_d = (_c = _this.contentWrapperEl) === null || _c === void 0 ? void 0 : _c[_this.axis[_this.draggedAxis].scrollSizeAttr]) !== null && _d !== void 0 ? _d : 0;\n var hostSize = parseInt((_f = (_e = _this.elStyles) === null || _e === void 0 ? void 0 : _e[_this.axis[_this.draggedAxis].sizeAttr]) !== null && _f !== void 0 ? _f : '0px', 10);\n e.preventDefault();\n e.stopPropagation();\n if (_this.draggedAxis === 'y') {\n eventOffset = e.pageY;\n }\n else {\n eventOffset = e.pageX;\n }\n // Calculate how far the user's mouse is from the top/left of the scrollbar (minus the dragOffset).\n var dragPos = eventOffset -\n ((_h = (_g = track.rect) === null || _g === void 0 ? void 0 : _g[_this.axis[_this.draggedAxis].offsetAttr]) !== null && _h !== void 0 ? _h : 0) -\n _this.axis[_this.draggedAxis].dragOffset;\n dragPos = _this.draggedAxis === 'x' && _this.isRtl\n ? ((_k = (_j = track.rect) === null || _j === void 0 ? void 0 : _j[_this.axis[_this.draggedAxis].sizeAttr]) !== null && _k !== void 0 ? _k : 0) -\n scrollbar.size -\n dragPos\n : dragPos;\n // Convert the mouse position into a percentage of the scrollbar height/width.\n var dragPerc = dragPos / (trackSize - scrollbar.size);\n // Scroll the content by the same percentage.\n var scrollPos = dragPerc * (contentSize - hostSize);\n // Fix browsers inconsistency on RTL\n if (_this.draggedAxis === 'x' && _this.isRtl) {\n scrollPos = ((_l = SimpleBarCore.getRtlHelpers()) === null || _l === void 0 ? void 0 : _l.isScrollingToNegative)\n ? -scrollPos\n : scrollPos;\n }\n _this.contentWrapperEl[_this.axis[_this.draggedAxis].scrollOffsetAttr] =\n scrollPos;\n };\n /**\n * End scroll handle drag\n */\n this.onEndDrag = function (e) {\n var elDocument = getElementDocument(_this.el);\n var elWindow = getElementWindow(_this.el);\n e.preventDefault();\n e.stopPropagation();\n removeClasses(_this.el, _this.classNames.dragging);\n elDocument.removeEventListener('mousemove', _this.drag, true);\n elDocument.removeEventListener('mouseup', _this.onEndDrag, true);\n _this.removePreventClickId = elWindow.setTimeout(function () {\n // Remove these asynchronously so we still suppress click events\n // generated simultaneously with mouseup.\n elDocument.removeEventListener('click', _this.preventClick, true);\n elDocument.removeEventListener('dblclick', _this.preventClick, true);\n _this.removePreventClickId = null;\n });\n };\n /**\n * Handler to ignore click events during drag\n */\n this.preventClick = function (e) {\n e.preventDefault();\n e.stopPropagation();\n };\n this.el = element;\n this.options = __assign(__assign({}, SimpleBarCore.defaultOptions), options);\n this.classNames = __assign(__assign({}, SimpleBarCore.defaultOptions.classNames), options.classNames);\n this.axis = {\n x: {\n scrollOffsetAttr: 'scrollLeft',\n sizeAttr: 'width',\n scrollSizeAttr: 'scrollWidth',\n offsetSizeAttr: 'offsetWidth',\n offsetAttr: 'left',\n overflowAttr: 'overflowX',\n dragOffset: 0,\n isOverflowing: true,\n forceVisible: false,\n track: { size: null, el: null, rect: null, isVisible: false },\n scrollbar: { size: null, el: null, rect: null, isVisible: false }\n },\n y: {\n scrollOffsetAttr: 'scrollTop',\n sizeAttr: 'height',\n scrollSizeAttr: 'scrollHeight',\n offsetSizeAttr: 'offsetHeight',\n offsetAttr: 'top',\n overflowAttr: 'overflowY',\n dragOffset: 0,\n isOverflowing: true,\n forceVisible: false,\n track: { size: null, el: null, rect: null, isVisible: false },\n scrollbar: { size: null, el: null, rect: null, isVisible: false }\n }\n };\n if (typeof this.el !== 'object' || !this.el.nodeName) {\n throw new Error(\"Argument passed to SimpleBar must be an HTML element instead of \".concat(this.el));\n }\n this.onMouseMove = throttle(this._onMouseMove, 64);\n this.onWindowResize = debounce(this._onWindowResize, 64, { leading: true });\n this.onStopScrolling = debounce(this._onStopScrolling, this.stopScrollDelay);\n this.onMouseEntered = debounce(this._onMouseEntered, this.stopScrollDelay);\n this.init();\n }\n /**\n * Helper to fix browsers inconsistency on RTL:\n * - Firefox inverts the scrollbar initial position\n * - IE11 inverts both scrollbar position and scrolling offset\n * Directly inspired by @KingSora's OverlayScrollbars https://github.com/KingSora/OverlayScrollbars/blob/master/js/OverlayScrollbars.js#L1634\n */\n SimpleBarCore.getRtlHelpers = function () {\n if (SimpleBarCore.rtlHelpers) {\n return SimpleBarCore.rtlHelpers;\n }\n var dummyDiv = document.createElement('div');\n dummyDiv.innerHTML =\n '<div class=\"simplebar-dummy-scrollbar-size\"><div></div></div>';\n var scrollbarDummyEl = dummyDiv.firstElementChild;\n var dummyChild = scrollbarDummyEl === null || scrollbarDummyEl === void 0 ? void 0 : scrollbarDummyEl.firstElementChild;\n if (!dummyChild)\n return null;\n document.body.appendChild(scrollbarDummyEl);\n scrollbarDummyEl.scrollLeft = 0;\n var dummyContainerOffset = SimpleBarCore.getOffset(scrollbarDummyEl);\n var dummyChildOffset = SimpleBarCore.getOffset(dummyChild);\n scrollbarDummyEl.scrollLeft = -999;\n var dummyChildOffsetAfterScroll = SimpleBarCore.getOffset(dummyChild);\n document.body.removeChild(scrollbarDummyEl);\n SimpleBarCore.rtlHelpers = {\n // determines if the scrolling is responding with negative values\n isScrollOriginAtZero: dummyContainerOffset.left !== dummyChildOffset.left,\n // determines if the origin scrollbar position is inverted or not (positioned on left or right)\n isScrollingToNegative: dummyChildOffset.left !== dummyChildOffsetAfterScroll.left\n };\n return SimpleBarCore.rtlHelpers;\n };\n SimpleBarCore.prototype.getScrollbarWidth = function () {\n // Try/catch for FF 56 throwing on undefined computedStyles\n try {\n // Detect browsers supporting CSS scrollbar styling and do not calculate\n if ((this.contentWrapperEl &&\n getComputedStyle(this.contentWrapperEl, '::-webkit-scrollbar')\n .display === 'none') ||\n 'scrollbarWidth' in document.documentElement.style ||\n '-ms-overflow-style' in document.documentElement.style) {\n return 0;\n }\n else {\n return scrollbarWidth();\n }\n }\n catch (e) {\n return scrollbarWidth();\n }\n };\n SimpleBarCore.getOffset = function (el) {\n var rect = el.getBoundingClientRect();\n var elDocument = getElementDocument(el);\n var elWindow = getElementWindow(el);\n return {\n top: rect.top +\n (elWindow.pageYOffset || elDocument.documentElement.scrollTop),\n left: rect.left +\n (elWindow.pageXOffset || elDocument.documentElement.scrollLeft)\n };\n };\n SimpleBarCore.prototype.init = function () {\n // We stop here on server-side\n if (canUseDOM) {\n this.initDOM();\n this.rtlHelpers = SimpleBarCore.getRtlHelpers();\n this.scrollbarWidth = this.getScrollbarWidth();\n this.recalculate();\n this.initListeners();\n }\n };\n SimpleBarCore.prototype.initDOM = function () {\n var _a, _b;\n // assume that element has his DOM already initiated\n this.wrapperEl = this.el.querySelector(classNamesToQuery(this.classNames.wrapper));\n this.contentWrapperEl =\n this.options.scrollableNode ||\n this.el.querySelector(classNamesToQuery(this.classNames.contentWrapper));\n this.contentEl =\n this.options.contentNode ||\n this.el.querySelector(classNamesToQuery(this.classNames.contentEl));\n this.offsetEl = this.el.querySelector(classNamesToQuery(this.classNames.offset));\n this.maskEl = this.el.querySelector(classNamesToQuery(this.classNames.mask));\n this.placeholderEl = this.findChild(this.wrapperEl, classNamesToQuery(this.classNames.placeholder));\n this.heightAutoObserverWrapperEl = this.el.querySelector(classNamesToQuery(this.classNames.heightAutoObserverWrapperEl));\n this.heightAutoObserverEl = this.el.querySelector(classNamesToQuery(this.classNames.heightAutoObserverEl));\n this.axis.x.track.el = this.findChild(this.el, \"\".concat(classNamesToQuery(this.classNames.track)).concat(classNamesToQuery(this.classNames.horizontal)));\n this.axis.y.track.el = this.findChild(this.el, \"\".concat(classNamesToQuery(this.classNames.track)).concat(classNamesToQuery(this.classNames.vertical)));\n this.axis.x.scrollbar.el =\n ((_a = this.axis.x.track.el) === null || _a === void 0 ? void 0 : _a.querySelector(classNamesToQuery(this.classNames.scrollbar))) || null;\n this.axis.y.scrollbar.el =\n ((_b = this.axis.y.track.el) === null || _b === void 0 ? void 0 : _b.querySelector(classNamesToQuery(this.classNames.scrollbar))) || null;\n if (!this.options.autoHide) {\n addClasses(this.axis.x.scrollbar.el, this.classNames.visible);\n addClasses(this.axis.y.scrollbar.el, this.classNames.visible);\n }\n };\n SimpleBarCore.prototype.initListeners = function () {\n var _this = this;\n var _a;\n var elWindow = getElementWindow(this.el);\n // Event listeners\n this.el.addEventListener('mouseenter', this.onMouseEnter);\n this.el.addEventListener('pointerdown', this.onPointerEvent, true);\n this.el.addEventListener('mousemove', this.onMouseMove);\n this.el.addEventListener('mouseleave', this.onMouseLeave);\n (_a = this.contentWrapperEl) === null || _a === void 0 ? void 0 : _a.addEventListener('scroll', this.onScroll);\n // Browser zoom triggers a window resize\n elWindow.addEventListener('resize', this.onWindowResize);\n if (!this.contentEl)\n return;\n if (window.ResizeObserver) {\n // Hack for https://github.com/WICG/ResizeObserver/issues/38\n var resizeObserverStarted_1 = false;\n var resizeObserver = elWindow.ResizeObserver || ResizeObserver;\n this.resizeObserver = new resizeObserver(function () {\n if (!resizeObserverStarted_1)\n return;\n elWindow.requestAnimationFrame(function () {\n _this.recalculate();\n });\n });\n this.resizeObserver.observe(this.el);\n this.resizeObserver.observe(this.contentEl);\n elWindow.requestAnimationFrame(function () {\n resizeObserverStarted_1 = true;\n });\n }\n // This is required to detect horizontal scroll. Vertical scroll only needs the resizeObserver.\n this.mutationObserver = new elWindow.MutationObserver(function () {\n elWindow.requestAnimationFrame(function () {\n _this.recalculate();\n });\n });\n this.mutationObserver.observe(this.contentEl, {\n childList: true,\n subtree: true,\n characterData: true\n });\n };\n SimpleBarCore.prototype.recalculate = function () {\n if (!this.heightAutoObserverEl ||\n !this.contentEl ||\n !this.contentWrapperEl ||\n !this.wrapperEl ||\n !this.placeholderEl)\n return;\n var elWindow = getElementWindow(this.el);\n this.elStyles = elWindow.getComputedStyle(this.el);\n this.isRtl = this.elStyles.direction === 'rtl';\n var contentElOffsetWidth = this.contentEl.offsetWidth;\n var isHeightAuto = this.heightAutoObserverEl.offsetHeight <= 1;\n var isWidthAuto = this.heightAutoObserverEl.offsetWidth <= 1 || contentElOffsetWidth > 0;\n var contentWrapperElOffsetWidth = this.contentWrapperEl.offsetWidth;\n var elOverflowX = this.elStyles.overflowX;\n var elOverflowY = this.elStyles.overflowY;\n this.contentEl.style.padding = \"\".concat(this.elStyles.paddingTop, \" \").concat(this.elStyles.paddingRight, \" \").concat(this.elStyles.paddingBottom, \" \").concat(this.elStyles.paddingLeft);\n this.wrapperEl.style.margin = \"-\".concat(this.elStyles.paddingTop, \" -\").concat(this.elStyles.paddingRight, \" -\").concat(this.elStyles.paddingBottom, \" -\").concat(this.elStyles.paddingLeft);\n var contentElScrollHeight = this.contentEl.scrollHeight;\n var contentElScrollWidth = this.contentEl.scrollWidth;\n this.contentWrapperEl.style.height = isHeightAuto ? 'auto' : '100%';\n // Determine placeholder size\n this.placeholderEl.style.width = isWidthAuto\n ? \"\".concat(contentElOffsetWidth || contentElScrollWidth, \"px\")\n : 'auto';\n this.placeholderEl.style.height = \"\".concat(contentElScrollHeight, \"px\");\n var contentWrapperElOffsetHeight = this.contentWrapperEl.offsetHeight;\n this.axis.x.isOverflowing =\n contentElOffsetWidth !== 0 && contentElScrollWidth > contentElOffsetWidth;\n this.axis.y.isOverflowing =\n contentElScrollHeight > contentWrapperElOffsetHeight;\n // Set isOverflowing to false if user explicitely set hidden overflow\n this.axis.x.isOverflowing =\n elOverflowX === 'hidden' ? false : this.axis.x.isOverflowing;\n this.axis.y.isOverflowing =\n elOverflowY === 'hidden' ? false : this.axis.y.isOverflowing;\n this.axis.x.forceVisible =\n this.options.forceVisible === 'x' || this.options.forceVisible === true;\n this.axis.y.forceVisible =\n this.options.forceVisible === 'y' || this.options.forceVisible === true;\n this.hideNativeScrollbar();\n // Set isOverflowing to false if scrollbar is not necessary (content is shorter than offset)\n var offsetForXScrollbar = this.axis.x.isOverflowing\n ? this.scrollbarWidth\n : 0;\n var offsetForYScrollbar = this.axis.y.isOverflowing\n ? this.scrollbarWidth\n : 0;\n this.axis.x.isOverflowing =\n this.axis.x.isOverflowing &&\n contentElScrollWidth > contentWrapperElOffsetWidth - offsetForYScrollbar;\n this.axis.y.isOverflowing =\n this.axis.y.isOverflowing &&\n contentElScrollHeight >\n contentWrapperElOffsetHeight - offsetForXScrollbar;\n this.axis.x.scrollbar.size = this.getScrollbarSize('x');\n this.axis.y.scrollbar.size = this.getScrollbarSize('y');\n if (this.axis.x.scrollbar.el)\n this.axis.x.scrollbar.el.style.width = \"\".concat(this.axis.x.scrollbar.size, \"px\");\n if (this.axis.y.scrollbar.el)\n this.axis.y.scrollbar.el.style.height = \"\".concat(this.axis.y.scrollbar.size, \"px\");\n this.positionScrollbar('x');\n this.positionScrollbar('y');\n this.toggleTrackVisibility('x');\n this.toggleTrackVisibility('y');\n };\n /**\n * Calculate scrollbar size\n */\n SimpleBarCore.prototype.getScrollbarSize = function (axis) {\n var _a, _b;\n if (axis === void 0) { axis = 'y'; }\n if (!this.axis[axis].isOverflowing || !this.contentEl) {\n return 0;\n }\n var contentSize = this.contentEl[this.axis[axis].scrollSizeAttr];\n var trackSize = (_b = (_a = this.axis[axis].track.el) === null || _a === void 0 ? void 0 : _a[this.axis[axis].offsetSizeAttr]) !== null && _b !== void 0 ? _b : 0;\n var scrollbarRatio = trackSize / contentSize;\n var scrollbarSize;\n // Calculate new height/position of drag handle.\n scrollbarSize = Math.max(~~(scrollbarRatio * trackSize), this.options.scrollbarMinSize);\n if (this.options.scrollbarMaxSize) {\n scrollbarSize = Math.min(scrollbarSize, this.options.scrollbarMaxSize);\n }\n return scrollbarSize;\n };\n SimpleBarCore.prototype.positionScrollbar = function (axis) {\n var _a, _b, _c;\n if (axis === void 0) { axis = 'y'; }\n var scrollbar = this.axis[axis].scrollbar;\n if (!this.axis[axis].isOverflowing ||\n !this.contentWrapperEl ||\n !scrollbar.el ||\n !this.elStyles) {\n return;\n }\n var contentSize = this.contentWrapperEl[this.axis[axis].scrollSizeAttr];\n var trackSize = ((_a = this.axis[axis].track.el) === null || _a === void 0 ? void 0 : _a[this.axis[axis].offsetSizeAttr]) || 0;\n var hostSize = parseInt(this.elStyles[this.axis[axis].sizeAttr], 10);\n var scrollOffset = this.contentWrapperEl[this.axis[axis].scrollOffsetAttr];\n scrollOffset =\n axis === 'x' &&\n this.isRtl &&\n ((_b = SimpleBarCore.getRtlHelpers()) === null || _b === void 0 ? void 0 : _b.isScrollOriginAtZero)\n ? -scrollOffset\n : scrollOffset;\n if (axis === 'x' && this.isRtl) {\n scrollOffset = ((_c = SimpleBarCore.getRtlHelpers()) === null || _c === void 0 ? void 0 : _c.isScrollingToNegative)\n ? scrollOffset\n : -scrollOffset;\n }\n var scrollPourcent = scrollOffset / (contentSize - hostSize);\n var handleOffset = ~~((trackSize - scrollbar.size) * scrollPourcent);\n handleOffset =\n axis === 'x' && this.isRtl\n ? -handleOffset + (trackSize - scrollbar.size)\n : handleOffset;\n scrollbar.el.style.transform =\n axis === 'x'\n ? \"translate3d(\".concat(handleOffset, \"px, 0, 0)\")\n : \"translate3d(0, \".concat(handleOffset, \"px, 0)\");\n };\n SimpleBarCore.prototype.toggleTrackVisibility = function (axis) {\n if (axis === void 0) { axis = 'y'; }\n var track = this.axis[axis].track.el;\n var scrollbar = this.axis[axis].scrollbar.el;\n if (!track || !scrollbar || !this.contentWrapperEl)\n return;\n if (this.axis[axis].isOverflowing || this.axis[axis].forceVisible) {\n track.style.visibility = 'visible';\n this.contentWrapperEl.style[this.axis[axis].overflowAttr] = 'scroll';\n this.el.classList.add(\"\".concat(this.classNames.scrollable, \"-\").concat(axis));\n }\n else {\n track.style.visibility = 'hidden';\n this.contentWrapperEl.style[this.axis[axis].overflowAttr] = 'hidden';\n this.el.classList.remove(\"\".concat(this.classNames.scrollable, \"-\").concat(axis));\n }\n // Even if forceVisible is enabled, scrollbar itself should be hidden\n if (this.axis[axis].isOverflowing) {\n scrollbar.style.display = 'block';\n }\n else {\n scrollbar.style.display = 'none';\n }\n };\n SimpleBarCore.prototype.showScrollbar = function (axis) {\n if (axis === void 0) { axis = 'y'; }\n if (this.axis[axis].isOverflowing && !this.axis[axis].scrollbar.isVisible) {\n addClasses(this.axis[axis].scrollbar.el, this.classNames.visible);\n this.axis[axis].scrollbar.isVisible = true;\n }\n };\n SimpleBarCore.prototype.hideScrollbar = function (axis) {\n if (axis === void 0) { axis = 'y'; }\n if (this.axis[axis].isOverflowing && this.axis[axis].scrollbar.isVisible) {\n removeClasses(this.axis[axis].scrollbar.el, this.classNames.visible);\n this.axis[axis].scrollbar.isVisible = false;\n }\n };\n SimpleBarCore.prototype.hideNativeScrollbar = function () {\n if (!this.offsetEl)\n return;\n this.offsetEl.style[this.isRtl ? 'left' : 'right'] =\n this.axis.y.isOverflowing || this.axis.y.forceVisible\n ? \"-\".concat(this.scrollbarWidth, \"px\")\n : '0px';\n this.offsetEl.style.bottom =\n this.axis.x.isOverflowing || this.axis.x.forceVisible\n ? \"-\".concat(this.scrollbarWidth, \"px\")\n : '0px';\n };\n SimpleBarCore.prototype.onMouseMoveForAxis = function (axis) {\n if (axis === void 0) { axis = 'y'; }\n var currentAxis = this.axis[axis];\n if (!currentAxis.track.el || !currentAxis.scrollbar.el)\n return;\n currentAxis.track.rect = currentAxis.track.el.getBoundingClientRect();\n currentAxis.scrollbar.rect =\n currentAxis.scrollbar.el.getBoundingClientRect();\n if (this.isWithinBounds(currentAxis.track.rect)) {\n this.showScrollbar(axis);\n addClasses(currentAxis.track.el, this.classNames.hover);\n if (this.isWithinBounds(currentAxis.scrollbar.rect)) {\n addClasses(currentAxis.scrollbar.el, this.classNames.hover);\n }\n else {\n removeClasses(currentAxis.scrollbar.el, this.classNames.hover);\n }\n }\n else {\n removeClasses(currentAxis.track.el, this.classNames.hover);\n if (this.options.autoHide) {\n this.hideScrollbar(axis);\n }\n }\n };\n SimpleBarCore.prototype.onMouseLeaveForAxis = function (axis) {\n if (axis === void 0) { axis = 'y'; }\n removeClasses(this.axis[axis].track.el, this.classNames.hover);\n removeClasses(this.axis[axis].scrollbar.el, this.classNames.hover);\n if (this.options.autoHide) {\n this.hideScrollbar(axis);\n }\n };\n /**\n * on scrollbar handle drag movement starts\n */\n SimpleBarCore.prototype.onDragStart = function (e, axis) {\n var _a;\n if (axis === void 0) { axis = 'y'; }\n var elDocument = getElementDocument(this.el);\n var elWindow = getElementWindow(this.el);\n var scrollbar = this.axis[axis].scrollbar;\n // Measure how far the user's mouse is from the top of the scrollbar drag handle.\n var eventOffset = axis === 'y' ? e.pageY : e.pageX;\n this.axis[axis].dragOffset =\n eventOffset - (((_a = scrollbar.rect) === null || _a === void 0 ? void 0 : _a[this.axis[axis].offsetAttr]) || 0);\n this.draggedAxis = axis;\n addClasses(this.el, this.classNames.dragging);\n elDocument.addEventListener('mousemove', this.drag, true);\n elDocument.addEventListener('mouseup', this.onEndDrag, true);\n if (this.removePreventClickId === null) {\n elDocument.addEventListener('click', this.preventClick, true);\n elDocument.addEventListener('dblclick', this.preventClick, true);\n }\n else {\n elWindow.clearTimeout(this.removePreventClickId);\n this.removePreventClickId = null;\n }\n };\n SimpleBarCore.prototype.onTrackClick = function (e, axis) {\n var _this = this;\n var _a, _b, _c, _d;\n if (axis === void 0) { axis = 'y'; }\n var currentAxis = this.axis[axis];\n if (!this.options.clickOnTrack ||\n !currentAxis.scrollbar.el ||\n !this.contentWrapperEl)\n return;\n // Preventing the event's default to trigger click underneath\n e.preventDefault();\n var elWindow = getElementWindow(this.el);\n this.axis[axis].scrollbar.rect =\n currentAxis.scrollbar.el.getBoundingClientRect();\n var scrollbar = this.axis[axis].scrollbar;\n var scrollbarOffset = (_b = (_a = scrollbar.rect) === null || _a === void 0 ? void 0 : _a[this.axis[axis].offsetAttr]) !== null && _b !== void 0 ? _b : 0;\n var hostSize = parseInt((_d = (_c = this.elStyles) === null || _c === void 0 ? void 0 : _c[this.axis[axis].sizeAttr]) !== null && _d !== void 0 ? _d : '0px', 10);\n var scrolled = this.contentWrapperEl[this.axis[axis].scrollOffsetAttr];\n var t = axis === 'y'\n ? this.mouseY - scrollbarOffset\n : this.mouseX - scrollbarOffset;\n var dir = t < 0 ? -1 : 1;\n var scrollSize = dir === -1 ? scrolled - hostSize : scrolled + hostSize;\n var speed = 40;\n var scrollTo = function () {\n if (!_this.contentWrapperEl)\n return;\n if (dir === -1) {\n if (scrolled > scrollSize) {\n scrolled -= speed;\n _this.contentWrapperEl[_this.axis[axis].scrollOffsetAttr] = scrolled;\n elWindow.requestAnimationFrame(scrollTo);\n }\n }\n else {\n if (scrolled < scrollSize) {\n scrolled += speed;\n _this.contentWrapperEl[_this.axis[axis].scrollOffsetAttr] = scrolled;\n elWindow.requestAnimationFrame(scrollTo);\n }\n }\n };\n scrollTo();\n };\n /**\n * Getter for content element\n */\n SimpleBarCore.prototype.getContentElement = function () {\n return this.contentEl;\n };\n /**\n * Getter for original scrolling element\n */\n SimpleBarCore.prototype.getScrollElement = function () {\n return this.contentWrapperEl;\n };\n SimpleBarCore.prototype.removeListeners = function () {\n var elWindow = getElementWindow(this.el);\n // Event listeners\n this.el.removeEventListener('mouseenter', this.onMouseEnter);\n this.el.removeEventListener('pointerdown', this.onPointerEvent, true);\n this.el.removeEventListener('mousemove', this.onMouseMove);\n this.el.removeEventListener('mouseleave', this.onMouseLeave);\n if (this.contentWrapperEl) {\n this.contentWrapperEl.removeEventListener('scroll', this.onScroll);\n }\n elWindow.removeEventListener('resize', this.onWindowResize);\n if (this.mutationObserver) {\n this.mutationObserver.disconnect();\n }\n if (this.resizeObserver) {\n this.resizeObserver.disconnect();\n }\n // Cancel all debounced functions\n this.onMouseMove.cancel();\n this.onWindowResize.cancel();\n this.onStopScrolling.cancel();\n this.onMouseEntered.cancel();\n };\n /**\n * Remove all listeners from DOM nodes\n */\n SimpleBarCore.prototype.unMount = function () {\n this.removeListeners();\n };\n /**\n * Check if mouse is within bounds\n */\n SimpleBarCore.prototype.isWithinBounds = function (bbox) {\n return (this.mouseX >= bbox.left &&\n this.mouseX <= bbox.left + bbox.width &&\n this.mouseY >= bbox.top &&\n this.mouseY <= bbox.top + bbox.height);\n };\n /**\n * Find element children matches query\n */\n SimpleBarCore.prototype.findChild = function (el, query) {\n var matches = el.matches ||\n el.webkitMatchesSelector ||\n el.mozMatchesSelector ||\n el.msMatchesSelector;\n return Array.prototype.filter.call(el.children, function (child) {\n return matches.call(child, query);\n })[0];\n };\n SimpleBarCore.rtlHelpers = null;\n SimpleBarCore.defaultOptions = {\n forceVisible: false,\n clickOnTrack: true,\n scrollbarMinSize: 25,\n scrollbarMaxSize: 0,\n ariaLabel: 'scrollable content',\n classNames: {\n contentEl: 'simplebar-content',\n contentWrapper: 'simplebar-content-wrapper',\n offset: 'simplebar-offset',\n mask: 'simplebar-mask',\n wrapper: 'simplebar-wrapper',\n placeholder: 'simplebar-placeholder',\n scrollbar: 'simplebar-scrollbar',\n track: 'simplebar-track',\n heightAutoObserverWrapperEl: 'simplebar-height-auto-observer-wrapper',\n heightAutoObserverEl: 'simplebar-height-auto-observer',\n visible: 'simplebar-visible',\n horizontal: 'simplebar-horizontal',\n vertical: 'simplebar-vertical',\n hover: 'simplebar-hover',\n dragging: 'simplebar-dragging',\n scrolling: 'simplebar-scrolling',\n scrollable: 'simplebar-scrollable',\n mouseEntered: 'simplebar-mouse-entered'\n },\n scrollableNode: null,\n contentNode: null,\n autoHide: true\n };\n /**\n * Static functions\n */\n SimpleBarCore.getOptions = getOptions;\n SimpleBarCore.helpers = helpers;\n return SimpleBarCore;\n}());\n\nexport { SimpleBarCore as default };\n//# sourceMappingURL=index.mjs.map\n","/**\n * simplebar-react - v3.2.4\n * React component for SimpleBar\n * https://grsmto.github.io/simplebar/\n *\n * Made by Adrien Denat\n * Under MIT License\n */\n\nimport * as React from 'react';\nimport SimpleBarCore from 'simplebar-core';\n\n/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n\r\nvar __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n };\r\n return __assign.apply(this, arguments);\r\n};\r\n\r\nfunction __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\n\nvar SimpleBar = React.forwardRef(function (_a, ref) {\n var children = _a.children, _b = _a.scrollableNodeProps, scrollableNodeProps = _b === void 0 ? {} : _b, otherProps = __rest(_a, [\"children\", \"scrollableNodeProps\"]);\n var elRef = React.useRef();\n var scrollableNodeRef = React.useRef();\n var contentNodeRef = React.useRef();\n var options = {};\n var rest = {};\n Object.keys(otherProps).forEach(function (key) {\n if (Object.prototype.hasOwnProperty.call(SimpleBarCore.defaultOptions, key)) {\n options[key] = otherProps[key];\n }\n else {\n rest[key] = otherProps[key];\n }\n });\n var classNames = __assign(__assign({}, SimpleBarCore.defaultOptions.classNames), options.classNames);\n var scrollableNodeFullProps = __assign(__assign({}, scrollableNodeProps), { className: \"\".concat(classNames.contentWrapper).concat(scrollableNodeProps.className ? \" \".concat(scrollableNodeProps.className) : ''), tabIndex: 0, role: 'region', 'aria-label': options.ariaLabel || SimpleBarCore.defaultOptions.ariaLabel });\n React.useEffect(function () {\n var instance;\n scrollableNodeRef.current = scrollableNodeFullProps.ref\n ? scrollableNodeFullProps.ref.current\n : scrollableNodeRef.current;\n if (elRef.current) {\n instance = new SimpleBarCore(elRef.current, __assign(__assign(__assign({}, options), (scrollableNodeRef.current && {\n scrollableNode: scrollableNodeRef.current\n })), (contentNodeRef.current && {\n contentNode: contentNodeRef.current\n })));\n if (typeof ref === 'function') {\n ref(instance);\n }\n else if (ref) {\n ref.current = instance;\n }\n }\n return function () {\n instance === null || instance === void 0 ? void 0 : instance.unMount();\n instance = null;\n if (typeof ref === 'function') {\n ref(null);\n }\n };\n }, []);\n return (React.createElement(\"div\", __assign({ \"data-simplebar\": \"init\", ref: elRef }, rest),\n React.createElement(\"div\", { className: classNames.wrapper },\n React.createElement(\"div\", { className: classNames.heightAutoObserverWrapperEl },\n React.createElement(\"div\", { className: classNames.heightAutoObserverEl })),\n React.createElement(\"div\", { className: classNames.mask },\n React.createElement(\"div\", { className: classNames.offset }, typeof children === 'function' ? (children({\n scrollableNodeRef: scrollableNodeRef,\n scrollableNodeProps: __assign(__assign({}, scrollableNodeFullProps), { ref: scrollableNodeRef }),\n contentNodeRef: contentNodeRef,\n contentNodeProps: {\n className: classNames.contentEl,\n ref: contentNodeRef\n }\n })) : (React.createElement(\"div\", __assign({}, scrollableNodeFullProps),\n React.createElement(\"div\", { className: classNames.contentEl }, children))))),\n React.createElement(\"div\", { className: classNames.placeholder })),\n React.createElement(\"div\", { className: \"\".concat(classNames.track, \" simplebar-horizontal\") },\n React.createElement(\"div\", { className: classNames.scrollbar })),\n React.createElement(\"div\", { className: \"\".concat(classNames.track, \" simplebar-vertical\") },\n React.createElement(\"div\", { className: classNames.scrollbar }))));\n});\nSimpleBar.displayName = 'SimpleBar';\n\nexport { SimpleBar as default };\n","import { Box, styled } from '@mui/material';\nimport SimpleBar from 'simplebar-react';\n\nexport const StyledSimpleBar = styled(SimpleBar)`\n max-height: 100%;\n`;\n\nexport const StyledLogoContainerBox = styled(Box)(({ theme }) =>\n theme.unstable_sx({\n borderBottom: 'thin solid #f5f5f5',\n color: 'text.primary',\n })\n);\n","function styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nexport default styleInject;\n","import React from 'react';\nimport { Toolbar } from '@mui/material';\nimport SideMenuList from '../SideMenuList';\nimport { SideMenuProps } from './SideMenu.types';\nimport { StyledLogoContainerBox, StyledSimpleBar } from './SideMenu.style';\nimport 'simplebar-react/dist/simplebar.min.css';\n\nconst SideMenu: React.FC<SideMenuProps> = ({ logo, badgeVariant, list, onClick }) => {\n return (\n <StyledSimpleBar>\n <StyledLogoContainerBox>\n <Toolbar>{logo}</Toolbar>\n </StyledLogoContainerBox>\n {list && <SideMenuList badgeVariant={badgeVariant} list={list} onClick={onClick} />}\n </StyledSimpleBar>\n );\n};\n\nexport default SideMenu;\n","import { Box, Icon, styled, Typography } from '@mui/material';\n\nexport const StyledContainerBox = styled(Box)`\n position: relative;\n`;\n\nexport const StyledHeadContainerBox = styled(Box)(({ theme }) =>\n theme.unstable_sx({\n display: { xs: 'none', sm: 'flex' },\n alignItems: 'center',\n opacity: 0.5,\n })\n);\n\nexport const StyledHeadIconContainerBox = styled(Box)`\n margin-right: 0.25rem;\n line-height: 0;\n`;\n\nexport const StyledHeadIcon = styled(Icon)`\n font-size: 1rem;\n`;\n\nexport const StyledHeadTitleTypography = styled(Typography)`\n font-size: 0.7rem;\n`;\n\nexport const StyledTitleContainerDiv = styled('div')`\n display: flex;\n align-items: center;\n font-size: 1rem;\n`;\n\nexport const StyledTitleIconContainerDiv = styled('div')`\n flex-shrink: 0;\n display: inline-flex;\n margin-right: 0.3rem;\n`;\n","import React, { useMemo } from 'react';\nimport { Icon } from '@mui/material';\nimport {\n StyledContainerBox,\n StyledHeadContainerBox,\n StyledHeadIcon,\n StyledHeadIconContainerBox,\n StyledHeadTitleTypography,\n StyledTitleContainerDiv,\n StyledTitleIconContainerDiv,\n} from './Title.style';\n\nexport interface TitleProps {\n title: string;\n icon?: string;\n headTitle?: string;\n headIcon?: string;\n}\n\nconst Title: React.FC<TitleProps> = ({ title, icon, headTitle, headIcon }) => {\n const finalHeadIcon = useMemo(\n () =>\n headIcon\n ? headIcon.replace(/[A-Z]/g, (letter, idx) => `${idx > 0 ? '_' : ''}${letter.toLowerCase()}`)\n : undefined,\n [headIcon]\n );\n\n const finalIcon = useMemo(\n () => (icon ? icon.replace(/[A-Z]/g, (letter, idx) => `${idx > 0 ? '_' : ''}${letter.toLowerCase()}`) : undefined),\n [icon]\n );\n\n return (\n <StyledContainerBox>\n {headTitle && (\n <StyledHeadContainerBox>\n {finalHeadIcon && (\n <StyledHeadIconContainerBox>\n <StyledHeadIcon>{finalHeadIcon}</StyledHeadIcon>\n </StyledHeadIconContainerBox>\n )}\n <StyledHeadTitleTypography>{headTitle}</StyledHeadTitleTypography>\n </StyledHeadContainerBox>\n )}\n <StyledTitleContainerDiv>\n {finalIcon && (\n <StyledTitleIconContainerDiv>\n <Icon fontSize='small'>{finalIcon}</Icon>\n </StyledTitleIconContainerDiv>\n )}\n <div>{title}</div>\n </StyledTitleContainerDiv>\n </StyledContainerBox>\n );\n};\n\nexport default Title;\n","import { AppBar, Box, Drawer, styled } from '@mui/material';\n\nexport const SIDE_MENU_WIDTH = 220;\n\nexport const StyledContainerBox = styled(Box)`\n display: flex;\n height: 100%;\n`;\n\nexport const StyledAppBar = styled(AppBar)(({ theme }) =>\n theme.unstable_sx({\n backdropFilter: 'blur(20px)',\n backgroundColor: 'rgba(255, 255, 255, 0.7)',\n color: 'text.primary',\n borderBottom: 'thin solid #f5f5f5',\n })\n);\n\nexport const StyledSideMenuContainerBox = styled(Box)(({ theme }) => theme.unstable_sx({}));\n\nexport const StyledSideMenuTemporaryDrawer = styled(Drawer)(({ theme }) =>\n theme.unstable_sx({\n '& .MuiDrawer-paper': { boxSizing: 'border-box', width: SIDE_MENU_WIDTH },\n })\n);\n\nexport const StyledSideMenuPermanentDrawer = styled(Drawer)(({ theme }) =>\n theme.unstable_sx({\n '& .MuiDrawer-paper': { boxSizing: 'border-box', width: SIDE_MENU_WIDTH },\n })\n);\n\nexport const StyledMainBox = styled(Box)(({ theme }) =>\n theme.unstable_sx({\n flexGrow: 1,\n p: 2,\n display: 'flex',\n flexDirection: 'column',\n minHeight: '100vh',\n })\n);\n\nexport const StyledMainContentDiv = styled('div')`\n display: flex;\n flex-direction: column;\n flex: 1;\n`;\n","import React, { useState, useEffect, ReactElement, useCallback, useMemo } from 'react';\nimport { Toolbar, IconButton, Typography } from '@mui/material';\nimport { useLocation } from 'react-router-dom';\nimport { Menu as MenuIcon } from '@mui/icons-material';\nimport SideMenu from './SideMenu';\nimport Title from './Title';\nimport { empty } from '../@util';\nimport { DefaultLayoutProps } from './DefaultLayout.types';\nimport { MenuTitleMap } from './DefaultLayout.types.private';\nimport {\n SIDE_MENU_WIDTH,\n StyledAppBar,\n StyledContainerBox,\n StyledMainBox,\n StyledMainContentDiv,\n StyledSideMenuContainerBox,\n StyledSideMenuPermanentDrawer,\n StyledSideMenuTemporaryDrawer,\n} from './DefaultLayout.style';\nimport { CommonSxProps } from '../@types';\n\nconst _screens = ['xs', 'sm', 'md', 'lg', 'xl'];\n\nconst _getNextScreen = (screen: 'xs' | 'sm' | 'md' | 'lg'): 'sm' | 'md' | 'lg' | 'xl' => {\n if (screen === 'xs') return 'sm';\n else if (screen === 'sm') return 'md';\n else if (screen === 'md') return 'lg';\n else return 'xl';\n};\n\nconst DefaultLayout: React.FC<DefaultLayoutProps> = ({\n children,\n logo,\n badgeVariant,\n menu,\n menuHideScreen: initMenuHideScreen,\n appBarControl,\n onMenuClick,\n}) => {\n // -------------------------------------------------------------------------------------------------------------------\n\n const location = useLocation();\n\n // -------------------------------------------------------------------------------------------------------------------\n\n const [isMobileOpen, setIsMobileOpen] = useState(false);\n const [menuTitles, setMenuTitles] = useState<MenuTitleMap>({});\n const [title, setTitle] = useState<ReactElement<typeof Title>>();\n const [menuHideScreen, setMenuHideScreen] = useState<Exclude<DefaultLayoutProps['menuHideScreen'], undefined>>(\n initMenuHideScreen || 'sm'\n );\n\n //--------------------------------------------------------------------------------------------------------------------\n\n useEffect(() => {\n const menuTitles: MenuTitleMap = {};\n if (menu) {\n menu.forEach((info) => {\n if (empty(info.uri) && info.items && info.items.length > 0) {\n info.items.map((subInfo) => {\n menuTitles[subInfo.uri] = { name: subInfo.name, parentName: info.name, parentIcon: info.icon };\n });\n } else if (info.uri) {\n menuTitles[info.uri] = { name: info.name, icon: info.icon };\n }\n });\n }\n setMenuTitles(menuTitles);\n }, [menu]);\n\n useEffect(() => {\n setMenuHideScreen(initMenuHideScreen || 'sm');\n }, [initMenuHideScreen]);\n\n useEffect(() => {\n if (menuTitles) {\n const titleData = menuTitles[location.pathname];\n if (titleData) {\n setTitle(\n <Title\n title={titleData.name}\n icon={titleData.icon}\n headTitle={titleData.parentName}\n headIcon={titleData.parentIcon}\n />\n );\n } else {\n setTitle(undefined);\n }\n }\n }, [location, menuTitles]);\n\n // -------------------------------------------------------------------------------------------------------------------\n\n const toggleIsMobileOpen = useCallback(() => {\n setIsMobileOpen((isMobileOpen) => !isMobileOpen);\n }, []);\n\n //--------------------------------------------------------------------------------------------------------------------\n\n const appBarSx: CommonSxProps['sx'] = useMemo(() => {\n const width: Record<string, string> = {};\n const ml: Record<string, string> = {};\n width[_getNextScreen(menuHideScreen)] = `calc(100% - ${SIDE_MENU_WIDTH}px)`;\n ml[_getNextScreen(menuHideScreen)] = `${SIDE_MENU_WIDTH}px`;\n return { width, ml };\n }, [menuHideScreen]);\n\n const appBarIconButtonSx: CommonSxProps['sx'] = useMemo(() => {\n const display: Record<string, string> = {};\n display[_getNextScreen(menuHideScreen)] = 'none';\n return { mr: 2, display };\n }, [menuHideScreen]);\n\n const sideMenuContainerBoxSx: CommonSxProps['sx'] = useMemo(() => {\n const width: Record<string, number> = {};\n const flexShrink: Record<string, number> = {};\n width[_getNextScreen(menuHideScreen)] = SIDE_MENU_WIDTH;\n flexShrink[_getNextScreen(menuHideScreen)] = 0;\n return { width, flexShrink };\n }, [menuHideScreen]);\n\n const sideMenuTemporaryDrawerSx: CommonSxProps['sx'] = useMemo(() => {\n let found = false;\n return {\n display: _screens.reduce<Record<string, string | undefined>>((res, screen) => {\n if (screen === menuHideScreen) {\n found = true;\n res[screen] = 'block';\n } else {\n res[screen] = found ? 'none' : 'block';\n }\n return res;\n }, {}),\n };\n }, [menuHideScreen]);\n\n const sideMenuPermanentDrawerSx: CommonSxProps['sx'] = useMemo(() => {\n let found = false;\n return {\n display: _screens.reduce<Record<string, string | undefined>>((res, screen) => {\n if (screen === menuHideScreen) {\n found = true;\n res[screen] = 'none';\n } else {\n res[screen] = found ? 'block' : 'none';\n }\n return res;\n }, {}),\n };\n }, [menuHideScreen]);\n\n const mainBoxSx: CommonSxProps['sx'] = useMemo(() => {\n const width: Record<string, string> = {};\n width[_getNextScreen(menuHideScreen)] = `calc(100% - ${SIDE_MENU_WIDTH}px)`;\n return { width };\n }, [menuHideScreen]);\n\n // -------------------------------------------------------------------------------------------------------------------\n\n return (\n <StyledContainerBox>\n <StyledAppBar position='fixed' elevation={0} sx={appBarSx}>\n <Toolbar>\n <IconButton\n color='inherit'\n aria-label='open drawer'\n edge='start'\n onClick={toggleIsMobileOpen}\n sx={appBarIconButtonSx}\n >\n <MenuIcon />\n </IconButton>\n <Typography variant='h6' noWrap component='div' sx={{ flexGrow: 1 }}>\n {title}\n </Typography>\n {appBarControl}\n </Toolbar>\n </StyledAppBar>\n <StyledSideMenuContainerBox component='nav' aria-label='mailbox folders' sx={sideMenuContainerBoxSx}>\n <StyledSideMenuTemporaryDrawer\n variant='temporary'\n open={isMobileOpen}\n onClose={toggleIsMobileOpen}\n sx={sideMenuTemporaryDrawerSx}\n ModalProps={{\n keepMounted: true, // Better open performance on mobile.\n }}\n >\n {menu && (\n <SideMenu\n logo={logo}\n badgeVariant={badgeVariant}\n list={menu}\n onClick={(menuItem) => {\n toggleIsMobileOpen();\n if (onMenuClick) onMenuClick(menuItem);\n }}\n />\n )}\n </StyledSideMenuTemporaryDrawer>\n <StyledSideMenuPermanentDrawer variant='permanent' open sx={sideMenuPermanentDrawerSx}>\n {menu && <SideMenu logo={logo} badgeVariant={badgeVariant} list={menu} onClick={onMenuClick} />}\n </StyledSideMenuPermanentDrawer>\n </StyledSideMenuContainerBox>\n <StyledMainBox component='main' sx={mainBoxSx}>\n <Toolbar />\n\n <StyledMainContentDiv>{children}</StyledMainContentDiv>\n </StyledMainBox>\n </StyledContainerBox>\n );\n};\n\nexport default DefaultLayout;\n"],"names":["Grid","useTheme","useLocation","useState","useEffect","useCallback","useMemo","alpha","ListItemButton","ListItemIcon","Icon","ListItemText","Badge","ExpandMore","Collapse","styled","List","templateObject_1","freeGlobal","root","objectProto","nativeObjectToString","symToStringTag","Symbol","FUNC_ERROR_TEXT","now","__assign","canUseDOM","React","Box","Toolbar","StyledContainerBox","templateObject_2","Typography","AppBar","Drawer","IconButton","MenuIcon"],"mappings":"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","x_google_ignoreList":[6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,25]}
1
+ {"version":3,"file":"index.js","sources":["../src/CardLayout/CardLayout.types.tsx","../src/CardLayout/CardLayout.tsx","../src/@util/compare.ts","../src/DefaultLayout/SideMenuListItem/SideMenuListItem.tsx","../src/DefaultLayout/SideMenuList/SideMenuList.style.ts","../src/DefaultLayout/SideMenuList/SideMenuList.tsx","../src/DefaultLayout/SideMenu/SideMenu.style.ts","../src/DefaultLayout/SideMenu/SideMenu.tsx","../src/DefaultLayout/Title.style.ts","../src/DefaultLayout/Title.tsx","../src/DefaultLayout/DefaultLayout.style.ts","../src/DefaultLayout/DefaultLayout.tsx"],"sourcesContent":["import { ReactNode } from 'react';\nimport { CardProps } from '@mui/material';\n\nexport interface CardLayoutProps extends Partial<CardProps> {\n children?: ReactNode;\n backgroundColor?: string;\n}\n\nexport const CardLayoutDefaultProps: Pick<CardLayoutProps, 'backgroundColor'> = {\n backgroundColor: '#eff3f8',\n};\n","import { Grid } from '@mui/material';\nimport React from 'react';\nimport { CardLayoutProps, CardLayoutDefaultProps } from './CardLayout.types';\n\nconst CardLayout: React.FC<CardLayoutProps> = ({ children, backgroundColor }) => {\n return (\n <Grid\n container\n direction='column'\n alignItems='center'\n justifyContent='center'\n style={{ minHeight: '100vh', backgroundColor }}\n >\n <Grid item xs={12}>\n {children}\n </Grid>\n </Grid>\n );\n};\n\nCardLayout.defaultProps = CardLayoutDefaultProps;\n\nexport default CardLayout;\n","const empty = function (v: any) {\n let result = false;\n if (v == null) {\n result = true;\n } else if (typeof v === 'string') {\n result = v === '';\n } else if (typeof v === 'object') {\n if (Array.isArray(v)) {\n result = v.length === 0;\n } else if (!(v instanceof Date)) {\n result = Object.entries(v).length === 0;\n }\n }\n return result;\n};\n\nconst notEmpty = function (v: any) {\n return !empty(v);\n};\n\nconst isSame = (v1: any, v2: any): boolean => {\n if (v1 === v2) return true;\n if (typeof v1 !== typeof v2) return false;\n if (v1 == null || v2 == null) return false;\n if (Array.isArray(v1) && Array.isArray(v2)) {\n if (v1.length !== v2.length) return false;\n for (let i = 0; i < v1.length; i += 1) {\n if (v1[i] !== v2[i]) return false;\n }\n } else {\n return v1 === v2;\n }\n return true;\n};\n\nexport { empty, notEmpty, isSame };\n","import React, { useCallback, useEffect, useMemo, useState } from 'react';\nimport { notEmpty } from '../../@util';\nimport { ListItemButton, ListItemIcon, Icon, ListItemText, Collapse, useTheme, alpha, Badge } from '@mui/material';\nimport { ExpandMore } from '@mui/icons-material';\nimport { useLocation } from 'react-router-dom';\nimport { SideMenuListItemProps } from './SideMenuListItem.types';\n\nconst SideMenuListItem: React.FC<SideMenuListItemProps> = ({ info, badgeVariant, onClick }) => {\n const theme = useTheme();\n const location = useLocation();\n\n // -------------------------------------------------------------------------------------------------------------------\n\n const [isExpandable, setIsExpandable] = useState<boolean>(false);\n const [isExpand, setIsExpand] = useState<boolean>(false);\n\n // -------------------------------------------------------------------------------------------------------------------\n\n useEffect(() => {\n setIsExpandable(!!info && notEmpty(info.items));\n\n if (info.items && info.items.find((info) => location.pathname === info.uri)) {\n setIsExpand(true);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [info]);\n\n useEffect(() => {\n if (isExpandable && isExpand != null) {\n if (info.uri !== location.pathname) {\n if (info.items && !info.items.find((info) => location.pathname === info.uri)) {\n if (isExpand) {\n setIsExpand(false);\n }\n }\n }\n }\n if (isExpandable && !isExpand) {\n if (info.items && info.items.find((info) => location.pathname === info.uri)) {\n setIsExpand(true);\n }\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [location]);\n\n // -------------------------------------------------------------------------------------------------------------------\n\n const toggleIsExpand = useCallback(() => {\n setIsExpand((isExpand) => !isExpand);\n }, []);\n\n // -------------------------------------------------------------------------------------------------------------------\n\n const icon = useMemo(\n () =>\n info.icon\n ? info.icon.replace(/[A-Z]/g, (letter, idx) => `${idx > 0 ? '_' : ''}${letter.toLowerCase()}`)\n : undefined,\n [info]\n );\n\n // -------------------------------------------------------------------------------------------------------------------\n\n const containerStyle = useMemo(\n () => ({\n backgroundColor:\n isExpandable && isExpand\n ? alpha(theme.palette.primary.main, theme.palette.action.selectedOpacity / 2)\n : undefined,\n }),\n [isExpand, isExpandable, theme]\n );\n\n const expandIconSx = useMemo(\n () =>\n isExpandable && isExpand != null\n ? {\n marginTop: 'auto',\n marginBottom: 'auto',\n animation: `${isExpand ? 'open' : 'close'} 0.1s linear`,\n transform: `rotate(${isExpand ? 180 : 0}deg)`,\n '@keyframes open': {\n '0%': {\n transform: `rotate(0deg)`,\n },\n '100%': {\n transform: `rotate(180deg)`,\n },\n },\n '@keyframes close': {\n '0%': {\n transform: `rotate(180deg)`,\n },\n '100%': {\n transform: `rotate(0deg)`,\n },\n },\n }\n : {\n marginTop: 'auto',\n marginBottom: 'auto',\n },\n [isExpandable, isExpand]\n );\n\n const collapseStyle = useMemo(\n () => ({\n backgroundColor: isExpand\n ? alpha(theme.palette.primary.main, theme.palette.action.selectedOpacity / 2)\n : undefined,\n }),\n [isExpand, theme]\n );\n\n const primaryTypographyProps = useMemo(() => ({ sx: { fontWeight: info.depth === 1 ? 600 : null } }), [info]);\n\n // -------------------------------------------------------------------------------------------------------------------\n\n return (\n <>\n <ListItemButton\n onClick={\n isExpandable\n ? toggleIsExpand\n : () => {\n if (onClick) onClick(info);\n }\n }\n selected={isExpandable ? false : info.uri === location.pathname}\n style={containerStyle}\n >\n <ListItemIcon sx={{ minWidth: 30 }}>{icon && <Icon fontSize='small'>{icon}</Icon>}</ListItemIcon>\n <ListItemText primaryTypographyProps={primaryTypographyProps}>\n {info.badge ? (\n <Badge\n badgeContent={info.badge}\n color='error'\n variant={badgeVariant !== undefined ? badgeVariant : info.badgeVariant}\n anchorOrigin={{ horizontal: 'left', vertical: 'top' }}\n slotProps={{\n badge: { style: { left: '100%', top: '50%', transform: 'scale(.8) translate(10px, -50%)' } },\n }}\n >\n <div>{info.name}</div>\n </Badge>\n ) : (\n info.name\n )}\n </ListItemText>\n\n {isExpandable && <ExpandMore sx={expandIconSx} />}\n </ListItemButton>\n <Collapse in={isExpand} style={collapseStyle}>\n {isExpandable &&\n info.items &&\n info.items.map((subInfo, idx) => (\n <SideMenuListItem key={idx} badgeVariant={badgeVariant} info={subInfo} onClick={onClick} />\n ))}\n </Collapse>\n </>\n );\n};\n\nexport default SideMenuListItem;\n","import { List, styled } from '@mui/material';\n\nexport const StyledList = styled(List)`\n padding: 0;\n`;\n","import React from 'react';\nimport SideMenuListItem from '../SideMenuListItem';\nimport { SideMenuListProps } from './SideMenuList.types';\nimport { StyledList } from './SideMenuList.style';\n\nconst SideMenuList: React.FC<SideMenuListProps> = ({ list, badgeVariant, onClick }) => {\n return (\n <StyledList>\n {list.map((info, idx) => (\n <SideMenuListItem key={idx} info={info} badgeVariant={badgeVariant} onClick={onClick} />\n ))}\n </StyledList>\n );\n};\n\nexport default SideMenuList;\n","import { Box, styled } from '@mui/material';\nimport SimpleBar from 'simplebar-react';\n\nexport const StyledSimpleBar = styled(SimpleBar)`\n max-height: 100%;\n`;\n\nexport const StyledLogoContainerBox = styled(Box)(({ theme }) =>\n theme.unstable_sx({\n borderBottom: 'thin solid #f5f5f5',\n color: 'text.primary',\n })\n);\n","import React from 'react';\nimport { Toolbar } from '@mui/material';\nimport SideMenuList from '../SideMenuList';\nimport { SideMenuProps } from './SideMenu.types';\nimport { StyledLogoContainerBox, StyledSimpleBar } from './SideMenu.style';\n\nconst SideMenu: React.FC<SideMenuProps> = ({ logo, badgeVariant, list, onClick }) => {\n return (\n <StyledSimpleBar>\n <StyledLogoContainerBox>\n <Toolbar>{logo}</Toolbar>\n </StyledLogoContainerBox>\n {list && <SideMenuList badgeVariant={badgeVariant} list={list} onClick={onClick} />}\n </StyledSimpleBar>\n );\n};\n\nexport default SideMenu;\n","import { Box, Icon, styled, Typography } from '@mui/material';\n\nexport const StyledContainerBox = styled(Box)`\n position: relative;\n`;\n\nexport const StyledHeadContainerBox = styled(Box)(({ theme }) =>\n theme.unstable_sx({\n display: { xs: 'none', sm: 'flex' },\n alignItems: 'center',\n opacity: 0.5,\n })\n);\n\nexport const StyledHeadIconContainerBox = styled(Box)`\n margin-right: 0.25rem;\n line-height: 0;\n`;\n\nexport const StyledHeadIcon = styled(Icon)`\n font-size: 1rem;\n`;\n\nexport const StyledHeadTitleTypography = styled(Typography)`\n font-size: 0.7rem;\n`;\n\nexport const StyledTitleContainerDiv = styled('div')`\n display: flex;\n align-items: center;\n font-size: 1rem;\n`;\n\nexport const StyledTitleIconContainerDiv = styled('div')`\n flex-shrink: 0;\n display: inline-flex;\n margin-right: 0.3rem;\n`;\n","import React, { useMemo } from 'react';\nimport { Icon } from '@mui/material';\nimport {\n StyledContainerBox,\n StyledHeadContainerBox,\n StyledHeadIcon,\n StyledHeadIconContainerBox,\n StyledHeadTitleTypography,\n StyledTitleContainerDiv,\n StyledTitleIconContainerDiv,\n} from './Title.style';\n\nexport interface TitleProps {\n title: string;\n icon?: string;\n headTitle?: string;\n headIcon?: string;\n}\n\nconst Title: React.FC<TitleProps> = ({ title, icon, headTitle, headIcon }) => {\n const finalHeadIcon = useMemo(\n () =>\n headIcon\n ? headIcon.replace(/[A-Z]/g, (letter, idx) => `${idx > 0 ? '_' : ''}${letter.toLowerCase()}`)\n : undefined,\n [headIcon]\n );\n\n const finalIcon = useMemo(\n () => (icon ? icon.replace(/[A-Z]/g, (letter, idx) => `${idx > 0 ? '_' : ''}${letter.toLowerCase()}`) : undefined),\n [icon]\n );\n\n return (\n <StyledContainerBox>\n {headTitle && (\n <StyledHeadContainerBox>\n {finalHeadIcon && (\n <StyledHeadIconContainerBox>\n <StyledHeadIcon>{finalHeadIcon}</StyledHeadIcon>\n </StyledHeadIconContainerBox>\n )}\n <StyledHeadTitleTypography>{headTitle}</StyledHeadTitleTypography>\n </StyledHeadContainerBox>\n )}\n <StyledTitleContainerDiv>\n {finalIcon && (\n <StyledTitleIconContainerDiv>\n <Icon fontSize='small'>{finalIcon}</Icon>\n </StyledTitleIconContainerDiv>\n )}\n <div>{title}</div>\n </StyledTitleContainerDiv>\n </StyledContainerBox>\n );\n};\n\nexport default Title;\n","import { AppBar, Box, Drawer, styled } from '@mui/material';\n\nexport const SIDE_MENU_WIDTH = 220;\n\nexport const StyledContainerBox = styled(Box)`\n display: flex;\n height: 100%;\n`;\n\nexport const StyledAppBar = styled(AppBar)(({ theme }) =>\n theme.unstable_sx({\n backdropFilter: 'blur(20px)',\n backgroundColor: 'rgba(255, 255, 255, 0.7)',\n color: 'text.primary',\n borderBottom: 'thin solid #f5f5f5',\n })\n);\n\nexport const StyledSideMenuContainerBox = styled(Box)(({ theme }) => theme.unstable_sx({}));\n\nexport const StyledSideMenuTemporaryDrawer = styled(Drawer)(({ theme }) =>\n theme.unstable_sx({\n '& .MuiDrawer-paper': { boxSizing: 'border-box', width: SIDE_MENU_WIDTH },\n })\n);\n\nexport const StyledSideMenuPermanentDrawer = styled(Drawer)(({ theme }) =>\n theme.unstable_sx({\n '& .MuiDrawer-paper': { boxSizing: 'border-box', width: SIDE_MENU_WIDTH },\n })\n);\n\nexport const StyledMainBox = styled(Box)(({ theme }) =>\n theme.unstable_sx({\n flexGrow: 1,\n p: 2,\n display: 'flex',\n flexDirection: 'column',\n minHeight: '100vh',\n })\n);\n\nexport const StyledMainContentDiv = styled('div')`\n display: flex;\n flex-direction: column;\n flex: 1;\n`;\n","import React, { useState, useEffect, ReactElement, useCallback, useMemo } from 'react';\nimport { Toolbar, IconButton, Typography } from '@mui/material';\nimport { useLocation } from 'react-router-dom';\nimport { Menu as MenuIcon } from '@mui/icons-material';\nimport SideMenu from './SideMenu';\nimport Title from './Title';\nimport { empty } from '../@util';\nimport { DefaultLayoutProps } from './DefaultLayout.types';\nimport { MenuTitleMap } from './DefaultLayout.types.private';\nimport {\n SIDE_MENU_WIDTH,\n StyledAppBar,\n StyledContainerBox,\n StyledMainBox,\n StyledMainContentDiv,\n StyledSideMenuContainerBox,\n StyledSideMenuPermanentDrawer,\n StyledSideMenuTemporaryDrawer,\n} from './DefaultLayout.style';\nimport { CommonSxProps } from '../@types';\n\nconst _screens = ['xs', 'sm', 'md', 'lg', 'xl'];\n\nconst _getNextScreen = (screen: 'xs' | 'sm' | 'md' | 'lg'): 'sm' | 'md' | 'lg' | 'xl' => {\n if (screen === 'xs') return 'sm';\n else if (screen === 'sm') return 'md';\n else if (screen === 'md') return 'lg';\n else return 'xl';\n};\n\nconst DefaultLayout: React.FC<DefaultLayoutProps> = ({\n children,\n logo,\n badgeVariant,\n menu,\n menuHideScreen: initMenuHideScreen,\n appBarControl,\n onMenuClick,\n}) => {\n // -------------------------------------------------------------------------------------------------------------------\n\n const location = useLocation();\n\n // -------------------------------------------------------------------------------------------------------------------\n\n const [isMobileOpen, setIsMobileOpen] = useState(false);\n const [menuTitles, setMenuTitles] = useState<MenuTitleMap>({});\n const [title, setTitle] = useState<ReactElement<typeof Title>>();\n const [menuHideScreen, setMenuHideScreen] = useState<Exclude<DefaultLayoutProps['menuHideScreen'], undefined>>(\n initMenuHideScreen || 'sm'\n );\n\n //--------------------------------------------------------------------------------------------------------------------\n\n useEffect(() => {\n const menuTitles: MenuTitleMap = {};\n if (menu) {\n menu.forEach((info) => {\n if (empty(info.uri) && info.items && info.items.length > 0) {\n info.items.map((subInfo) => {\n menuTitles[subInfo.uri] = { name: subInfo.name, parentName: info.name, parentIcon: info.icon };\n });\n } else if (info.uri) {\n menuTitles[info.uri] = { name: info.name, icon: info.icon };\n }\n });\n }\n setMenuTitles(menuTitles);\n }, [menu]);\n\n useEffect(() => {\n setMenuHideScreen(initMenuHideScreen || 'sm');\n }, [initMenuHideScreen]);\n\n useEffect(() => {\n if (menuTitles) {\n const titleData = menuTitles[location.pathname];\n if (titleData) {\n setTitle(\n <Title\n title={titleData.name}\n icon={titleData.icon}\n headTitle={titleData.parentName}\n headIcon={titleData.parentIcon}\n />\n );\n } else {\n setTitle(undefined);\n }\n }\n }, [location, menuTitles]);\n\n // -------------------------------------------------------------------------------------------------------------------\n\n const toggleIsMobileOpen = useCallback(() => {\n setIsMobileOpen((isMobileOpen) => !isMobileOpen);\n }, []);\n\n //--------------------------------------------------------------------------------------------------------------------\n\n const appBarSx: CommonSxProps['sx'] = useMemo(() => {\n const width: Record<string, string> = {};\n const ml: Record<string, string> = {};\n width[_getNextScreen(menuHideScreen)] = `calc(100% - ${SIDE_MENU_WIDTH}px)`;\n ml[_getNextScreen(menuHideScreen)] = `${SIDE_MENU_WIDTH}px`;\n return { width, ml };\n }, [menuHideScreen]);\n\n const appBarIconButtonSx: CommonSxProps['sx'] = useMemo(() => {\n const display: Record<string, string> = {};\n display[_getNextScreen(menuHideScreen)] = 'none';\n return { mr: 2, display };\n }, [menuHideScreen]);\n\n const sideMenuContainerBoxSx: CommonSxProps['sx'] = useMemo(() => {\n const width: Record<string, number> = {};\n const flexShrink: Record<string, number> = {};\n width[_getNextScreen(menuHideScreen)] = SIDE_MENU_WIDTH;\n flexShrink[_getNextScreen(menuHideScreen)] = 0;\n return { width, flexShrink };\n }, [menuHideScreen]);\n\n const sideMenuTemporaryDrawerSx: CommonSxProps['sx'] = useMemo(() => {\n let found = false;\n return {\n display: _screens.reduce<Record<string, string | undefined>>((res, screen) => {\n if (screen === menuHideScreen) {\n found = true;\n res[screen] = 'block';\n } else {\n res[screen] = found ? 'none' : 'block';\n }\n return res;\n }, {}),\n };\n }, [menuHideScreen]);\n\n const sideMenuPermanentDrawerSx: CommonSxProps['sx'] = useMemo(() => {\n let found = false;\n return {\n display: _screens.reduce<Record<string, string | undefined>>((res, screen) => {\n if (screen === menuHideScreen) {\n found = true;\n res[screen] = 'none';\n } else {\n res[screen] = found ? 'block' : 'none';\n }\n return res;\n }, {}),\n };\n }, [menuHideScreen]);\n\n const mainBoxSx: CommonSxProps['sx'] = useMemo(() => {\n const width: Record<string, string> = {};\n width[_getNextScreen(menuHideScreen)] = `calc(100% - ${SIDE_MENU_WIDTH}px)`;\n return { width };\n }, [menuHideScreen]);\n\n // -------------------------------------------------------------------------------------------------------------------\n\n return (\n <StyledContainerBox>\n <StyledAppBar position='fixed' elevation={0} sx={appBarSx}>\n <Toolbar>\n <IconButton\n color='inherit'\n aria-label='open drawer'\n edge='start'\n onClick={toggleIsMobileOpen}\n sx={appBarIconButtonSx}\n >\n <MenuIcon />\n </IconButton>\n <Typography variant='h6' noWrap component='div' sx={{ flexGrow: 1 }}>\n {title}\n </Typography>\n {appBarControl}\n </Toolbar>\n </StyledAppBar>\n <StyledSideMenuContainerBox component='nav' aria-label='mailbox folders' sx={sideMenuContainerBoxSx}>\n <StyledSideMenuTemporaryDrawer\n variant='temporary'\n open={isMobileOpen}\n onClose={toggleIsMobileOpen}\n sx={sideMenuTemporaryDrawerSx}\n ModalProps={{\n keepMounted: true, // Better open performance on mobile.\n }}\n >\n {menu && (\n <SideMenu\n logo={logo}\n badgeVariant={badgeVariant}\n list={menu}\n onClick={(menuItem) => {\n toggleIsMobileOpen();\n if (onMenuClick) onMenuClick(menuItem);\n }}\n />\n )}\n </StyledSideMenuTemporaryDrawer>\n <StyledSideMenuPermanentDrawer variant='permanent' open sx={sideMenuPermanentDrawerSx}>\n {menu && <SideMenu logo={logo} badgeVariant={badgeVariant} list={menu} onClick={onMenuClick} />}\n </StyledSideMenuPermanentDrawer>\n </StyledSideMenuContainerBox>\n <StyledMainBox component='main' sx={mainBoxSx}>\n <Toolbar />\n\n <StyledMainContentDiv>{children}</StyledMainContentDiv>\n </StyledMainBox>\n </StyledContainerBox>\n );\n};\n\nexport default DefaultLayout;\n"],"names":["Grid","useTheme","useLocation","useState","useEffect","useCallback","useMemo","alpha","ListItemButton","ListItemIcon","Icon","ListItemText","Badge","ExpandMore","Collapse","styled","List","templateObject_1","Box","Toolbar","StyledContainerBox","templateObject_2","Typography","AppBar","Drawer","IconButton","MenuIcon"],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@pdg/react-admin-layout",
3
3
  "title": "React Admin Layout",
4
- "version": "1.0.13",
4
+ "version": "1.0.15",
5
5
  "description": "Admin Layout for React",
6
6
  "type": "module",
7
7
  "types": "dist/index.d.ts",
@@ -25,7 +25,8 @@
25
25
  "dev-prd-lib": "cd examples && npm run dev-prd-lib",
26
26
  "build": "rollup -c --bundleConfigAsCjs",
27
27
  "publish": "npm publish --access=public",
28
- "lint": "eslint './src/**/*.{ts,tsx}'"
28
+ "lint": "eslint './src/**/*.{ts,tsx}'",
29
+ "reinstall-module": "rm -rf node_modules && rm -f package-lock.json && npm i"
29
30
  },
30
31
  "author": "YOUNG CHUL PARK",
31
32
  "license": "MIT",
@@ -40,39 +41,35 @@
40
41
  "javascript"
41
42
  ],
42
43
  "peerDependencies": {
43
- "@emotion/react": "^11.11.1",
44
+ "@emotion/react": "^11.11.4",
44
45
  "@emotion/styled": "^11.11.0",
45
- "@mui/icons-material": "^5.14.7",
46
- "@mui/material": "^5.14.7",
46
+ "@mui/icons-material": "^5.15.13",
47
+ "@mui/material": "^5.15.13",
47
48
  "@types/react": "^17.0.0 || ^18.0.0",
48
49
  "react": "^17.0.0 || ^18.0.0",
49
50
  "react-dom": "^17.0.0 || ^18.0.0",
50
- "react-router-dom": "^6.15.0"
51
+ "react-router-dom": "^6.22.3",
52
+ "simplebar-react": "3.2.4"
51
53
  },
52
54
  "devDependencies": {
53
- "@rollup/plugin-commonjs": "^25.0.4",
54
- "@rollup/plugin-eslint": "^9.0.4",
55
- "@rollup/plugin-node-resolve": "^15.2.1",
56
- "@tinymce/tinymce-react": "^4.3.0",
57
- "@typescript-eslint/eslint-plugin": "^6.6.0",
58
- "@typescript-eslint/parser": "^6.6.0",
59
- "classnames": "^2.3.2",
60
- "eslint": "8.48.0",
61
- "eslint-config-prettier": "^9.0.0",
62
- "eslint-plugin-jsx-a11y": "^6.7.1",
63
- "eslint-plugin-prettier": "^5.0.0",
64
- "eslint-plugin-react": "^7.33.2",
55
+ "@rollup/plugin-commonjs": "^25.0.7",
56
+ "@rollup/plugin-eslint": "^9.0.5",
57
+ "@rollup/plugin-node-resolve": "^15.2.3",
58
+ "@typescript-eslint/eslint-plugin": "^7.2.0",
59
+ "@typescript-eslint/parser": "^7.2.0",
60
+ "eslint": "8.57.0",
61
+ "eslint-config-prettier": "^9.1.0",
62
+ "eslint-plugin-jsx-a11y": "^6.8.0",
63
+ "eslint-plugin-prettier": "^5.1.3",
64
+ "eslint-plugin-react": "^7.34.0",
65
65
  "eslint-plugin-react-hooks": "^4.6.0",
66
- "prettier": "^3.0.3",
67
- "react-number-format": "^5.3.1",
68
- "react-resize-detector": "^9.1.0",
69
- "rollup": "^3.28.1",
66
+ "prettier": "^3.2.5",
67
+ "rollup": "^4.13.0",
70
68
  "rollup-plugin-delete": "^2.0.0",
71
69
  "rollup-plugin-peer-deps-external": "^2.2.4",
72
70
  "rollup-plugin-postcss": "^4.0.2",
73
- "rollup-plugin-typescript2": "^0.35.0",
74
- "sass": "^1.66.1",
75
- "simplebar-react": "3.2.4",
76
- "typescript": "^5.2.2"
71
+ "rollup-plugin-typescript2": "^0.36.0",
72
+ "sass": "^1.72.0",
73
+ "typescript": "^5.4.2"
77
74
  }
78
75
  }