@xyo-network/react-shared 2.64.0 → 2.64.2
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/browser/components/Ampersand.js +3 -2
- package/dist/browser/components/Ampersand.js.map +1 -1
- package/dist/browser/components/BasicHero/BasicHero.js +71 -5
- package/dist/browser/components/BasicHero/BasicHero.js.map +1 -1
- package/dist/browser/components/BasicHero/index.js +203 -1
- package/dist/browser/components/BasicHero/index.js.map +1 -1
- package/dist/browser/components/Ellipsize.js +28 -8
- package/dist/browser/components/Ellipsize.js.map +1 -1
- package/dist/browser/components/ErrorBoundary.js +4 -3
- package/dist/browser/components/ErrorBoundary.js.map +1 -1
- package/dist/browser/components/ListItemButtonEx.js +4 -3
- package/dist/browser/components/ListItemButtonEx.js.map +1 -1
- package/dist/browser/components/LoadResult.js +19 -6
- package/dist/browser/components/LoadResult.js.map +1 -1
- package/dist/browser/components/NotFound.js +3 -2
- package/dist/browser/components/NotFound.js.map +1 -1
- package/dist/browser/components/Pipe.js +3 -2
- package/dist/browser/components/Pipe.js.map +1 -1
- package/dist/browser/components/ScrollTableOnSm.js +4 -3
- package/dist/browser/components/ScrollTableOnSm.js.map +1 -1
- package/dist/browser/components/SectionSpacingRow/SectionSpacingRow.js +3 -2
- package/dist/browser/components/SectionSpacingRow/SectionSpacingRow.js.map +1 -1
- package/dist/browser/components/SectionSpacingRow/index.js +26 -1
- package/dist/browser/components/SectionSpacingRow/index.js.map +1 -1
- package/dist/browser/components/StyleGuide/AppBars.example.js +3 -2
- package/dist/browser/components/StyleGuide/AppBars.example.js.map +1 -1
- package/dist/browser/components/StyleGuide/Buttons.example.js +5 -4
- package/dist/browser/components/StyleGuide/Buttons.example.js.map +1 -1
- package/dist/browser/components/StyleGuide/Papers.example.js +3 -2
- package/dist/browser/components/StyleGuide/Papers.example.js.map +1 -1
- package/dist/browser/components/StyleGuide/StyleGuide.example.js +99 -12
- package/dist/browser/components/StyleGuide/StyleGuide.example.js.map +1 -1
- package/dist/browser/components/StyleGuide/Texts.example.js +3 -2
- package/dist/browser/components/StyleGuide/Texts.example.js.map +1 -1
- package/dist/browser/components/StyleGuide/VariantContext.example.js +2 -1
- package/dist/browser/components/StyleGuide/VariantContext.example.js.map +1 -1
- package/dist/browser/components/TableCell/AddressTableCell.js +124 -4
- package/dist/browser/components/TableCell/AddressTableCell.js.map +1 -1
- package/dist/browser/components/TableCell/EllipsisTableCell.js +98 -9
- package/dist/browser/components/TableCell/EllipsisTableCell.js.map +1 -1
- package/dist/browser/components/TableCell/EllipsisTableCellDeprecated.js +107 -6
- package/dist/browser/components/TableCell/EllipsisTableCellDeprecated.js.map +1 -1
- package/dist/browser/components/TableCell/HashTableCell.js +126 -6
- package/dist/browser/components/TableCell/HashTableCell.js.map +1 -1
- package/dist/browser/components/TableCell/findParent.js +2 -1
- package/dist/browser/components/TableCell/findParent.js.map +1 -1
- package/dist/browser/components/TableCell/getRemainingRowWidth.js +2 -1
- package/dist/browser/components/TableCell/getRemainingRowWidth.js.map +1 -1
- package/dist/browser/components/TableCell/getSmallestParentWidth.js +2 -1
- package/dist/browser/components/TableCell/getSmallestParentWidth.js.map +1 -1
- package/dist/browser/components/TableCell/index.js +160 -3
- package/dist/browser/components/TableCell/index.js.map +1 -1
- package/dist/browser/components/ThemeTokenAvatar/ThemeTokenAvatar.js +3 -2
- package/dist/browser/components/ThemeTokenAvatar/ThemeTokenAvatar.js.map +1 -1
- package/dist/browser/components/ThemeTokenAvatar/index.js +10 -1
- package/dist/browser/components/ThemeTokenAvatar/index.js.map +1 -1
- package/dist/browser/components/ThemeTokenAvatarGroup/ThemeTokenAvatarGroup.js +14 -4
- package/dist/browser/components/ThemeTokenAvatarGroup/ThemeTokenAvatarGroup.js.map +1 -1
- package/dist/browser/components/ThemeTokenAvatarGroup/index.js +19 -1
- package/dist/browser/components/ThemeTokenAvatarGroup/index.js.map +1 -1
- package/dist/browser/components/TokenBar/TokenBar.js +3 -2
- package/dist/browser/components/TokenBar/TokenBar.js.map +1 -1
- package/dist/browser/components/TokenBar/index.js +19 -1
- package/dist/browser/components/TokenBar/index.js.map +1 -1
- package/dist/browser/components/TokenData/TokenData.js +34 -17
- package/dist/browser/components/TokenData/TokenData.js.map +1 -1
- package/dist/browser/components/TokenData/img/index.js +1 -0
- package/dist/browser/components/TokenData/img/index.js.map +1 -1
- package/dist/browser/components/TokenData/index.js +153 -2
- package/dist/browser/components/TokenData/index.js.map +1 -1
- package/dist/browser/components/TokenData/useGetTokenData.js +143 -2
- package/dist/browser/components/TokenData/useGetTokenData.js.map +1 -1
- package/dist/browser/components/TokenSummary/TokenSummary.js +16 -6
- package/dist/browser/components/TokenSummary/TokenSummary.js.map +1 -1
- package/dist/browser/components/TokenSummary/index.js +29 -1
- package/dist/browser/components/TokenSummary/index.js.map +1 -1
- package/dist/browser/components/TypographyEx.js +57 -3
- package/dist/browser/components/TypographyEx.js.map +1 -1
- package/dist/browser/components/index.js +730 -18
- package/dist/browser/components/index.js.map +1 -1
- package/dist/browser/components/pluginValidation/DataMissing.js +3 -2
- package/dist/browser/components/pluginValidation/DataMissing.js.map +1 -1
- package/dist/browser/components/pluginValidation/index.js +12 -1
- package/dist/browser/components/pluginValidation/index.js.map +1 -1
- package/dist/browser/contexts/ListMode/Context.js +6 -2
- package/dist/browser/contexts/ListMode/Context.js.map +1 -1
- package/dist/browser/contexts/ListMode/Provider.js +12 -3
- package/dist/browser/contexts/ListMode/Provider.js.map +1 -1
- package/dist/browser/contexts/ListMode/index.js +44 -4
- package/dist/browser/contexts/ListMode/index.js.map +1 -1
- package/dist/browser/contexts/ListMode/use.js +19 -3
- package/dist/browser/contexts/ListMode/use.js.map +1 -1
- package/dist/browser/contexts/Pixel/Context.js +6 -2
- package/dist/browser/contexts/Pixel/Context.js.map +1 -1
- package/dist/browser/contexts/Pixel/Provider.js +12 -3
- package/dist/browser/contexts/Pixel/Provider.js.map +1 -1
- package/dist/browser/contexts/Pixel/index.js +45 -4
- package/dist/browser/contexts/Pixel/index.js.map +1 -1
- package/dist/browser/contexts/Pixel/use.js +19 -3
- package/dist/browser/contexts/Pixel/use.js.map +1 -1
- package/dist/browser/contexts/contextEx/create.js +2 -1
- package/dist/browser/contexts/contextEx/create.js.map +1 -1
- package/dist/browser/contexts/contextEx/index.js +22 -4
- package/dist/browser/contexts/contextEx/index.js.map +1 -1
- package/dist/browser/contexts/contextEx/use.js +3 -2
- package/dist/browser/contexts/contextEx/use.js.map +1 -1
- package/dist/browser/contexts/diviner/Context.js +6 -2
- package/dist/browser/contexts/diviner/Context.js.map +1 -1
- package/dist/browser/contexts/diviner/Provider.js +3 -2
- package/dist/browser/contexts/diviner/Provider.js.map +1 -1
- package/dist/browser/contexts/diviner/index.js +40 -3
- package/dist/browser/contexts/diviner/index.js.map +1 -1
- package/dist/browser/contexts/index.js +116 -4
- package/dist/browser/contexts/index.js.map +1 -1
- package/dist/browser/hooks/GradientStyles/GradientStyles.js +4 -3
- package/dist/browser/hooks/GradientStyles/GradientStyles.js.map +1 -1
- package/dist/browser/hooks/GradientStyles/index.js +56 -1
- package/dist/browser/hooks/GradientStyles/index.js.map +1 -1
- package/dist/browser/hooks/index.js +126 -7
- package/dist/browser/hooks/index.js.map +1 -1
- package/dist/browser/hooks/useDataState.js +2 -1
- package/dist/browser/hooks/useDataState.js.map +1 -1
- package/dist/browser/hooks/useIsMobile.js +7 -2
- package/dist/browser/hooks/useIsMobile.js.map +1 -1
- package/dist/browser/hooks/useMediaQuery.js +1 -0
- package/dist/browser/hooks/useMediaQuery.js.map +1 -1
- package/dist/browser/hooks/usePayloadHash.js +3 -2
- package/dist/browser/hooks/usePayloadHash.js.map +1 -1
- package/dist/browser/hooks/usePromise.js +2 -1
- package/dist/browser/hooks/usePromise.js.map +1 -1
- package/dist/browser/hooks/useShareForwardRef.js +2 -1
- package/dist/browser/hooks/useShareForwardRef.js.map +1 -1
- package/dist/browser/index.js +988 -6
- package/dist/browser/index.js.map +1 -1
- package/dist/browser/lib/assertDefinedEx.js +2 -1
- package/dist/browser/lib/assertDefinedEx.js.map +1 -1
- package/dist/browser/lib/getActualPaddingX.js +4 -3
- package/dist/browser/lib/getActualPaddingX.js.map +1 -1
- package/dist/browser/lib/index.js +101 -3
- package/dist/browser/lib/index.js.map +1 -1
- package/dist/browser/lib/networkComponents.js +5 -4
- package/dist/browser/lib/networkComponents.js.map +1 -1
- package/dist/browser/lib/xyo.js +3 -2
- package/dist/browser/lib/xyo.js.map +1 -1
- package/dist/browser/models/index.js +0 -1
- package/dist/browser/models/index.js.map +1 -1
- package/package.json +13 -13
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/index.ts"],"sourcesContent":["export * from './Ampersand'\nexport * from './BasicHero'\nexport * from './Ellipsize'\nexport * from './ErrorBoundary'\nexport * from './ListItemButtonEx'\nexport * from './LoadResult'\nexport * from './NotFound'\nexport * from './Pipe'\nexport * from './pluginValidation'\nexport * from './ScrollTableOnSm'\nexport * from './SectionSpacingRow'\nexport * from './TableCell'\nexport * from './ThemeTokenAvatar'\nexport * from './ThemeTokenAvatarGroup'\nexport * from './TokenBar'\nexport * from './TokenData'\nexport * from './TokenSummary'\nexport * from './TypographyEx'\n"],"mappings":"AAAA,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;","names":[]}
|
|
1
|
+
{"version":3,"sources":["../../../src/components/Ampersand.tsx","../../../src/components/BasicHero/BasicHero.tsx","../../../src/hooks/GradientStyles/GradientStyles.tsx","../../../src/hooks/useIsMobile.ts","../../../src/hooks/useMediaQuery.ts","../../../src/hooks/useShareForwardRef.ts","../../../src/components/Ellipsize.tsx","../../../src/components/ErrorBoundary.tsx","../../../src/components/ListItemButtonEx.tsx","../../../src/components/LoadResult.tsx","../../../src/components/NotFound.tsx","../../../src/components/Pipe.tsx","../../../src/components/pluginValidation/DataMissing.tsx","../../../src/components/ScrollTableOnSm.tsx","../../../src/components/SectionSpacingRow/SectionSpacingRow.tsx","../../../src/components/TableCell/AddressTableCell.tsx","../../../src/components/TableCell/EllipsisTableCell.tsx","../../../src/components/TableCell/HashTableCell.tsx","../../../src/components/ThemeTokenAvatar/ThemeTokenAvatar.tsx","../../../src/components/ThemeTokenAvatarGroup/ThemeTokenAvatarGroup.tsx","../../../src/components/TokenBar/TokenBar.tsx","../../../src/components/TokenData/img/index.ts","../../../src/components/TokenData/TokenData.ts","../../../src/components/TokenData/useGetTokenData.tsx","../../../src/components/TokenSummary/TokenSummary.tsx","../../../src/components/TypographyEx.tsx"],"sourcesContent":["import { Typography, TypographyProps } from '@mui/material'\n\nexport const Ampersand: React.FC<TypographyProps> = (props) => {\n return (\n <Typography marginX={1} component=\"span\" {...props}>\n &\n </Typography>\n )\n}\n","import { Container, Grid, Typography } from '@mui/material'\nimport { ButtonEx } from '@xylabs/react-button'\nimport { FlexBoxProps, FlexGrowCol, FlexGrowRow } from '@xylabs/react-flexbox'\nimport { LinkEx } from '@xylabs/react-link'\nimport { ReactElement } from 'react'\n\nimport { useGradientStyles, useIsMobile } from '../../hooks'\n\nexport interface BasicHeroProps extends FlexBoxProps {\n backgroundColor?: string\n backgroundImage?: string\n button1Href?: string\n button1Text?: string\n button1To?: string\n button2Href?: string\n button2Text?: string\n button2To?: string\n desc: string\n gradientTitle?: string\n heroImage?: string\n subLinkIcon?: ReactElement\n subLinkPath?: string\n subLinkText1?: string\n subLinkText2?: string\n sx?: Record<string, string>\n textColor?: string\n title: string\n title2?: string\n}\n\ninterface SubLinkSectionProps {\n backgroundImageAlignment?: boolean\n subLinkIcon?: ReactElement\n subLinkPath?: string\n subLinkText1?: string\n subLinkText2?: string\n}\n\ninterface ButtonSectionProps {\n buttonText?: string\n href?: string\n to?: string\n}\nconst SubLinkSection: React.FC<SubLinkSectionProps> = ({ backgroundImageAlignment, subLinkIcon, subLinkPath, subLinkText1, subLinkText2 }) => {\n return (\n <FlexGrowRow\n width=\"100%\"\n sx={{ flexDirection: { md: 'row', xs: 'column' }, justifyContent: { md: backgroundImageAlignment ? 'flex-start' : 'center', xs: 'center' } }}\n >\n {subLinkIcon ? <span>{subLinkIcon} </span> : null}\n <Typography>{subLinkText1} </Typography>\n <LinkEx href={subLinkPath} underline=\"always\" target=\"_blank\" color=\"inherit\">\n <Typography>{subLinkText2}</Typography>\n </LinkEx>\n </FlexGrowRow>\n )\n}\n\nconst ButtonSection: React.FC<ButtonSectionProps> = ({ href, to, buttonText }) => {\n const isMobile = useIsMobile()\n return (\n <ButtonEx\n fullWidth={true}\n marginTop={1}\n marginBottom={1}\n marginRight={isMobile ? 2 : 1}\n marginLeft={isMobile ? 2 : 0}\n target={href ?? '_blank'}\n to={to}\n href={href}\n color=\"primary\"\n variant=\"contained\"\n paddingX={3}\n sx={{ display: href || to ? 'flex' : 'none' }}\n >\n {buttonText}\n </ButtonEx>\n )\n}\n\nexport const BasicHero: React.FC<BasicHeroProps> = ({\n backgroundImage,\n title,\n gradientTitle,\n backgroundColor,\n textColor,\n desc,\n heroImage,\n title2,\n subLinkText1,\n subLinkText2,\n subLinkPath,\n button1Text,\n button2Text,\n button2To,\n button1To,\n button2Href,\n button1Href,\n subLinkIcon,\n sx,\n ...props\n}) => {\n const isMobile = useIsMobile()\n const { classes } = useGradientStyles()\n return (\n <FlexGrowCol\n sx={{\n backgroundImage: `url(${backgroundImage})`,\n backgroundPosition: { lg: 'bottom', md: 'center left', xs: 'top left' },\n minHeight: {\n md: '500px',\n sm: '400px',\n xs: '200px',\n },\n ...(sx ?? {}),\n }}\n style={{\n backgroundColor: backgroundColor ?? '',\n backgroundRepeat: 'no-repeat',\n backgroundSize: 'cover',\n color: textColor ?? '',\n }}\n {...props}\n >\n <Container>\n <Grid\n container\n justifyContent=\"center\"\n alignItems=\"center\"\n sx={{\n alignItems: { xs: 'center' },\n justifyContent: { xs: 'center' },\n }}\n >\n <Grid item xs={12} sm={8} md={backgroundImage ? 6 : 8} lg={backgroundImage ? 6 : 8}>\n <FlexGrowCol paddingY={2} sx={{ alignItems: { xs: backgroundImage && !isMobile ? 'flex-start' : 'center' } }}>\n <Typography variant=\"h1\" component=\"h1\" gutterBottom textAlign={backgroundImage && !isMobile ? 'left' : 'center'}>\n {title ? <span>{`${title} `}</span> : null}\n {gradientTitle ? <span className={classes().heading}> {` ${gradientTitle}`}</span> : null}\n {title2 ? <span>{` ${title2}`}</span> : null}\n </Typography>\n <Typography variant=\"body1\" component=\"h2\" gutterBottom textAlign={backgroundImage && !isMobile ? 'left' : 'center'}>\n {desc}\n </Typography>\n <FlexGrowRow sx={{ flexDirection: { lg: 'row', xs: 'column' } }} width=\"100%\" marginTop={1}>\n <ButtonSection href={button1Href} to={button1To} buttonText={button1Text} />\n <ButtonSection href={button2Href} to={button2To} buttonText={button2Text} />\n </FlexGrowRow>\n <SubLinkSection\n subLinkIcon={subLinkIcon}\n subLinkText1={subLinkText1}\n subLinkText2={subLinkText2}\n subLinkPath={subLinkPath}\n backgroundImageAlignment={backgroundImage ? true : false}\n />\n </FlexGrowCol>\n </Grid>\n <Grid item xs={12} md={6}>\n {heroImage ? <img src={heroImage} width=\"100%\" /> : null}\n </Grid>\n </Grid>\n </Container>\n </FlexGrowCol>\n )\n}\n","import { useTheme } from '@mui/material'\nimport { makeStyles } from '@mui/styles'\nimport { CSSProperties } from 'react'\n\nexport interface GradientStyles {\n background: CSSProperties\n border: CSSProperties\n heading: CSSProperties\n}\n\nexport const colorfulGradientLightMode = () => {\n return {\n background: {\n backgroundImage: '-webkit-linear-gradient(232deg, #e17751, #d84e7a, #5898dd, #8c8ee5)',\n },\n border: {\n borderImage: '-webkit-linear-gradient(232deg, #e17751, #d84e7a, #5898dd, #8c8ee5)',\n borderImageSlice: 1,\n borderImageSource: '-webkit-linear-gradient(232deg, #e17751, #d84e7a, #5898dd, #8c8ee5)',\n borderRadius: 0,\n borderStyle: 'solid',\n borderWidth: '2px',\n },\n heading: {\n WebkitBackgroundClip: 'text',\n WebkitTextFillColor: 'transparent',\n background: '-webkit-linear-gradient(232deg, #e17751, #d84e7a, #5898dd, #8c8ee5)',\n display: 'inline-block',\n },\n }\n}\n\nexport const colorfulGradientDarkMode = () => {\n return {\n background: {\n backgroundImage: '-webkit-linear-gradient(232deg, #F17938, #FF5BDC, #5898dd, #B2FFFD)',\n },\n border: {\n borderImage: '-webkit-linear-gradient(232deg, #F17938, #FF5BDC, #5898dd, #B2FFFD)',\n borderImageSlice: 1,\n borderImageSource: '-webkit-linear-gradient(232deg, #F17938, #FF5BDC, #5898dd, #B2FFFD)',\n borderRadius: 0,\n borderStyle: 'solid',\n borderWidth: '2px',\n },\n heading: {\n WebkitBackgroundClip: 'text',\n WebkitTextFillColor: 'transparent',\n background: '-webkit-linear-gradient(232deg, #F17938, #FF5BDC, #5898dd, #B2FFFD)',\n display: 'inline-block',\n },\n }\n}\n\nexport const useGradientStyles = () => {\n const theme = useTheme()\n const styles = theme.palette.mode === 'dark' ? colorfulGradientDarkMode() : colorfulGradientLightMode()\n const classes = makeStyles(styles)\n return { classes, styles }\n}\n","import { useTheme } from '@mui/material'\n\nimport { useMediaQuery } from './useMediaQuery'\n\nexport const useIsMobile = () => {\n const theme = useTheme()\n return useMediaQuery(theme.breakpoints.down('md'))\n}\n","// eslint-disable-next-line import/no-deprecated\nimport { useMediaQuery } from '@mui/material'\n\n// eslint-disable-next-line import/no-deprecated\nexport { useMediaQuery }\n\n/* This file only exists to deal with the false positve lint error */\n","import { ForwardedRef, useEffect, useRef } from 'react'\n\nexport const useShareForwardedRef = <T>(forwardedRef: ForwardedRef<T>, refresh = 0) => {\n // final ref that will share value with forward ref. this is the one to be attached to components\n const innerRef = useRef<T>(null)\n\n useEffect(() => {\n if (!forwardedRef) {\n return\n }\n if (typeof forwardedRef === 'function') {\n forwardedRef(innerRef.current)\n return\n } else {\n forwardedRef.current = innerRef.current\n }\n }, [forwardedRef, refresh])\n\n return innerRef\n}\n","import { Box, BoxProps, styled, Typography, TypographyProps, TypographyTypeMap } from '@mui/material'\nimport { WithChildren } from '@xylabs/react-shared'\nimport { forwardRef, useCallback, useState } from 'react'\n\nimport { useShareForwardedRef } from '../hooks'\n\n/**\n * Heavily inspired by - https://stackoverflow.com/a/30362531/2803259\n */\n\nconst ComponentName = 'Ellipsize'\n\nexport interface EllipsizeRootProps extends BoxProps {\n beforeLineHeight?: string | number\n}\n\nconst EllipsizeRoot = styled(Box, {\n name: ComponentName,\n shouldForwardProp: (prop) => prop !== 'beforeLineHeight',\n slot: 'Root',\n})<EllipsizeRootProps>(({ beforeLineHeight }) => ({\n '&': {\n // because the cell content ends up absolutely positioned, the cell doesn't know the content height.\n // the pseudo element with a hidden character establishes the proper height of the content and hides it\n ':before': {\n content: \"'nbsp;'\",\n display: 'block',\n // take the pseudo element out of the `display: block` flow so it won't push against our actual content\n float: 'left',\n visibility: 'hidden',\n // since we are `display: block`, lineHeight is the height\n ...(beforeLineHeight && { lineHeight: beforeLineHeight }),\n },\n },\n}))\n\nconst EllipsizeInnerWrap = styled(Box, {\n name: ComponentName,\n slot: 'innerWrap',\n})(() => ({\n position: 'relative',\n}))\n\nconst EllipsizeContentWrap = styled(Typography, {\n name: ComponentName,\n shouldForwardProp: (prop) => prop !== 'ellipsisPosition',\n slot: 'contentWrap',\n})<TypographyWithComponentProps>(({ theme, ellipsisPosition, fontFamily }) => {\n return theme.unstable_sx({\n fontFamily: fontFamily ?? 'monospace',\n left: 0,\n overflow: 'hidden',\n position: 'absolute',\n right: 0,\n textOverflow: 'ellipsis',\n whiteSpace: 'nowrap',\n ...(ellipsisPosition === 'start'\n ? {\n direction: 'rtl',\n textAlign: 'left',\n }\n : {}),\n })\n})\n\nconst useClientHeight = () => {\n const [contentWrapHeight, setContentWrapHeight] = useState<string>()\n\n const contentWrapRef = useCallback((node: HTMLElement) => {\n if (node !== null) {\n setContentWrapHeight(node.clientHeight + 'px')\n }\n }, [])\n\n return { contentWrapHeight, contentWrapRef }\n}\n\n// See - https://mui.com/material-ui/guides/composition/#with-typescript\n// eslint-disable-next-line @typescript-eslint/ban-types\nexport type TypographyWithComponentProps<D extends React.ElementType = TypographyTypeMap['defaultComponent'], P = {}> = TypographyProps<D, P> & {\n ellipsisPosition?: 'start' | 'end'\n}\n\nexport interface EllipsizeBoxProps extends BoxProps {\n disableSharedRef?: boolean\n ellipsisPosition?: 'start' | 'end'\n typographyProps?: TypographyWithComponentProps\n}\n\nexport const EllipsizeBox = forwardRef<HTMLDivElement, WithChildren<EllipsizeBoxProps>>(\n ({ children, ellipsisPosition = 'start', disableSharedRef, typographyProps, ...props }, ref) => {\n // Allow syncing of :before pseudo element height with contentWrapHeight\n const { contentWrapRef, contentWrapHeight } = useClientHeight()\n const sharedRef = useShareForwardedRef(ref)\n\n return (\n <EllipsizeRoot beforeLineHeight={!!sharedRef && !disableSharedRef ? contentWrapHeight : undefined} {...props} ref={ref}>\n <EllipsizeInnerWrap>\n <EllipsizeContentWrap ref={contentWrapRef} component={'span'} ellipsisPosition={ellipsisPosition} variant=\"body2\" {...typographyProps}>\n {children}\n </EllipsizeContentWrap>\n </EllipsizeInnerWrap>\n </EllipsizeRoot>\n )\n },\n)\nEllipsizeBox.displayName = 'EllipsizeBox'\n","import { Typography } from '@mui/material'\nimport { FlexCol } from '@xylabs/react-flexbox'\nimport { Component, ErrorInfo, ReactNode } from 'react'\n\nexport interface ErrorBoundaryProps {\n children: ReactNode\n // fallback as a static ReactNode value\n fallback?: ReactNode\n // fallback element that can receive the error as a prop\n fallbackWithError?: (error: Error) => ReactNode\n}\n\nexport interface ErrorBoundaryState {\n error?: Error\n}\n\nexport class ErrorBoundary extends Component<ErrorBoundaryProps, ErrorBoundaryState> {\n constructor(props: ErrorBoundaryProps) {\n super(props)\n this.state = { error: undefined }\n }\n\n static getDerivedStateFromError(error: Error) {\n return { error }\n }\n\n override componentDidCatch(error: Error, errorInfo: ErrorInfo) {\n console.error(`${error}: ${errorInfo}`)\n }\n\n override render() {\n if (this.state.error) {\n if (this.props.fallbackWithError) {\n return this.props.fallbackWithError(this.state.error)\n }\n return (\n this.props.fallback ?? (\n <FlexCol>\n <Typography variant=\"h1\">Something went wrong.</Typography>\n <Typography variant=\"body1\">[{this.state.error?.message}]</Typography>\n </FlexCol>\n )\n )\n }\n\n return this.props.children\n }\n}\n","import { ListItemButton, ListItemButtonProps } from '@mui/material'\nimport { MouseEvent } from 'react'\nimport { NavigateOptions, To, useNavigate } from 'react-router-dom'\n\nexport interface ListItemButtonExProps extends ListItemButtonProps {\n target?: string\n to?: To\n toOptions?: NavigateOptions\n}\n\nexport const ListItemButtonExTo: React.FC<ListItemButtonExProps> = ({ to, toOptions, onClick, ...props }) => {\n const navigate = useNavigate()\n const localOnClick = (event: MouseEvent<HTMLDivElement>) => {\n onClick?.(event)\n if (to) {\n navigate(to, toOptions)\n }\n }\n\n return <ListItemButton onClick={localOnClick} {...props} />\n}\n\nexport const ListItemButtonEx: React.FC<ListItemButtonExProps> = ({ to, ...props }) => {\n if (to) {\n return <ListItemButtonExTo to={to} {...props} />\n } else {\n return <ListItemButton {...props} />\n }\n}\n","import { FlexGrowRow } from '@xylabs/react-flexbox'\nimport { PropsWithChildren } from 'react'\n\nimport { NotFound } from './NotFound'\n\nexport interface LoadResultProps<T> {\n /** @deprecated - use error prop */\n apiError?: Error\n /** Defer error handling to the children and load them */\n error?: boolean\n notFound: boolean\n searchResult: T | undefined\n}\n\nexport function LoadResult<T>(props: PropsWithChildren<LoadResultProps<T>>) {\n const { notFound, error, searchResult, children } = props\n if (notFound) {\n return <NotFound />\n }\n if (error) {\n return <>{children}</>\n }\n if (searchResult === undefined) {\n return <FlexGrowRow busy minHeight=\"50px\" />\n } else {\n return <>{children}</>\n }\n}\n","import { Typography } from '@mui/material'\nimport { FlexBoxProps, FlexGrowCol } from '@xylabs/react-flexbox'\n\nconst NotFound: React.FC<FlexBoxProps> = (props) => {\n return (\n <FlexGrowCol {...props}>\n <Typography variant=\"h2\">Sorry!</Typography>\n <Typography marginY={3} variant=\"body2\">\n {\"Can't find anything here\"}\n </Typography>\n </FlexGrowCol>\n )\n}\n\nexport { NotFound }\n","import { Typography, TypographyProps } from '@mui/material'\n\nexport const Pipe: React.FC<TypographyProps> = (props) => {\n return (\n <Typography marginX={1} component=\"span\" {...props}>\n |\n </Typography>\n )\n}\n","import { Alert, AlertProps, AlertTitle } from '@mui/material'\n\nexport interface PayloadDataMissingProps extends AlertProps {\n alertBody?: string\n}\n\nexport const PayloadDataMissing: React.FC<PayloadDataMissingProps> = ({ alertBody, ...props }) => {\n return (\n <Alert severity=\"warning\" {...props}>\n <AlertTitle>Missing Data</AlertTitle>\n {alertBody ?? 'Payload is missing required data to render correctly'}\n </Alert>\n )\n}\n","import { styled } from '@mui/material'\nimport { WithChildren } from '@xylabs/react-shared'\n\nconst StyledScrollTableOnSm = styled('div')(({ theme }) => ({\n [theme.breakpoints.down('md')]: {\n overflowX: 'scroll',\n },\n display: 'flex',\n flexGrow: 1,\n}))\n\nconst ScrollTableOnSm: React.FC<WithChildren> = ({ children }) => <StyledScrollTableOnSm>{children}</StyledScrollTableOnSm>\n\nexport { ScrollTableOnSm }\n","import { useTheme } from '@mui/material'\nimport { FlexBoxProps, FlexGrowRow } from '@xylabs/react-flexbox'\nimport { forwardRef } from 'react'\n\nexport const SectionSpacingRow = forwardRef<HTMLDivElement, FlexBoxProps>(({ children, sx, ...props }, ref) => {\n const theme = useTheme()\n return (\n <FlexGrowRow\n sx={{\n paddingBottom: { md: theme.spacing(5), xs: theme.spacing(5) },\n paddingTop: { md: theme.spacing(5), xs: theme.spacing(5) },\n ...sx,\n }}\n width=\"100%\"\n ref={ref}\n {...props}\n >\n {children}\n </FlexGrowRow>\n )\n})\n\nSectionSpacingRow.displayName = 'SectionSpacingRow'\n","import { forwardRef } from 'react'\n\nimport { EllipsisTableCell, EllipsisTableCellProps } from './EllipsisTableCell'\n\nexport interface AddressTableCellProps extends EllipsisTableCellProps {\n /** @deprecated - archives are no longer supported */\n archive?: string\n /** @deprecated - use events instead */\n exploreDomain?: string\n link?: boolean\n}\n\nconst AddressTableCell = forwardRef<HTMLTableCellElement, AddressTableCellProps>(({ value, archive, exploreDomain, link, ...props }, ref) => {\n const href = exploreDomain && archive ? `${exploreDomain}/archive/${archive}/address/${value}` : undefined\n const to = exploreDomain === undefined && archive ? `/archive/${archive}/address/${value}` : undefined\n\n return <EllipsisTableCell value={value} href={href} to={to} ref={ref} link={link} {...props} />\n})\n\nAddressTableCell.displayName = 'AddressTableCell'\nexport { AddressTableCell }\n","import { styled, TableCell, TableCellProps } from '@mui/material'\nimport { LinkEx } from '@xylabs/react-link'\nimport type { WithChildren } from '@xylabs/react-shared'\nimport { forwardRef, useMemo } from 'react'\nimport { To } from 'react-router-dom'\n\nimport { EllipsizeBox } from '../Ellipsize'\n\nconst EllipsisTableCellRoot = styled(TableCell, {\n name: 'EllipsisTableCell',\n shouldForwardProp: (prop) => prop !== 'width',\n slot: 'Root',\n})(({ width = '100%' }) => ({\n width,\n}))\n\nexport interface EllipsisTableCellProps extends TableCellProps {\n href?: string\n link?: boolean\n to?: To\n value?: string\n /**\n * Width of the table cell.\n *\n * Note: When using percentages, this value can be different than what you expect\n * if used on a cell that is not the first cell in the first row.\n */\n width?: string | number\n}\n\nexport const EllipsisTableCellWithRef: React.FC<WithChildren<EllipsisTableCellProps>> = forwardRef(\n ({ children, href, link = false, to, value, ...props }, ref) => {\n const data = useMemo(() => {\n if (children) {\n return children\n }\n if (href || link || to) {\n return (\n <LinkEx title={value} to={to} href={href} target={href ? '_blank' : undefined}>\n {value}\n </LinkEx>\n )\n }\n return value\n }, [children, href, link, to, value])\n return (\n <EllipsisTableCellRoot ref={ref} {...props}>\n <EllipsizeBox sx={{ cursor: link || to || href ? 'pointer' : 'inherit' }}>{data}</EllipsizeBox>\n </EllipsisTableCellRoot>\n )\n },\n)\n\nEllipsisTableCellWithRef.displayName = 'EllipsisTableCell'\nexport const EllipsisTableCell = EllipsisTableCellWithRef\n","import { useEvent } from '@xyo-network/react-event'\nimport { useRef } from 'react'\n\nimport { EllipsisTableCell, EllipsisTableCellProps } from './EllipsisTableCell'\n\nexport interface HashTableCellProps extends EllipsisTableCellProps {\n archive?: string\n dataType?: 'block' | 'payload'\n exploreDomain?: string\n network?: string\n}\n\nexport const HashTableCell: React.FC<HashTableCellProps> = ({ value, archive, dataType, network, exploreDomain, ...props }) => {\n const ref = useRef<HTMLTableCellElement | null>(null)\n const [tableCellRef, dispatch] = useEvent<HTMLTableCellElement>(undefined, ref)\n const hashPath = `/${dataType}/hash/${value}?network=${network ?? 'main'}`\n const explorePath = archive ? `/archive/${archive}${hashPath}` : hashPath\n\n const handleCellClick = () => {\n dispatch?.('hash', 'click', value)\n }\n\n return (\n <EllipsisTableCell\n onClick={handleCellClick}\n ref={tableCellRef}\n value={value}\n href={exploreDomain ? `${exploreDomain}${explorePath}}` : undefined}\n to={exploreDomain ? undefined : explorePath}\n {...props}\n />\n )\n}\n","import { Avatar, AvatarProps, useTheme } from '@mui/material'\n\nexport const ThemeTokenAvatar: React.FC<AvatarProps> = ({ ...props }) => {\n const theme = useTheme()\n return <Avatar sx={{ background: theme.palette.common.white }} {...props} />\n}\n","import { AvatarGroup, AvatarGroupProps } from '@mui/material'\n\nimport { ThemeTokenAvatar } from '../ThemeTokenAvatar'\n\nexport interface ThemeTokenAvatarGroupProps extends AvatarGroupProps {\n images?: string[]\n}\n\nexport const ThemeTokenAvatarGroup: React.FC<ThemeTokenAvatarGroupProps> = ({ images, ...props }) => {\n return <AvatarGroup {...props}>{images?.map((image, index) => <ThemeTokenAvatar key={index} src={image} />)}</AvatarGroup>\n}\n","import { Paper, PaperProps, Typography, TypographyProps } from '@mui/material'\nimport { FlexRow } from '@xylabs/react-flexbox'\nimport { ReactNode } from 'react'\nexport interface TokenBarProps extends PaperProps {\n text1?: ReactNode\n text1Props?: TypographyProps\n text1Suffix?: ReactNode\n text2?: ReactNode\n text2Props?: TypographyProps\n text2Suffix?: ReactNode\n}\n\nexport const TokenBar: React.FC<TokenBarProps> = ({ text1, text1Props, text1Suffix, text2, text2Props, text2Suffix, ...props }) => {\n return (\n <Paper elevation={0} className=\"TokenBar-root\" {...props}>\n <FlexRow justifyContent=\"space-between\">\n <Typography variant=\"body1\" fontWeight={300} margin={1} {...text1Props}>\n {text1}\n {text1Suffix}\n </Typography>\n <Typography variant=\"body1\" fontWeight={300} textTransform=\"uppercase\" color=\"gray\" margin={1} {...text2Props}>\n {text2}\n {text2Suffix}\n </Typography>\n </FlexRow>\n </Paper>\n )\n}\n","import ada from './ada.png'\nimport btc from './btc.png'\nimport busd from './busd.png'\nimport dai from './dai.png'\nimport dogecoin from './dogecoin.png'\nimport dot from './dot.png'\nimport ethereum from './ethereum.png'\nimport frax from './frax.png'\nimport link from './link.png'\nimport sol from './sol.png'\nimport tether from './tether.png'\nimport usdCoin from './usd-coin.png'\nimport weth from './weth.png'\nimport wrappedBtc from './wrapped-bitcoin.png'\nimport xyo from './xyo.png'\n\nexport { ada, btc, busd, dai, dogecoin, dot, ethereum, frax, link, sol, tether, usdCoin, weth, wrappedBtc, xyo }\n","import * as tokenImages from './img'\n\nexport interface TokenData {\n coinmarketcapLink: string\n etherscanLink: string\n icon: string\n readableName: string\n tokenSymbol: string\n uniqueTokenId: string\n}\n\nexport const TokenData: TokenData[] = [\n {\n coinmarketcapLink: 'https://coinmarketcap.com/currencies/multi-collateral-dai/',\n etherscanLink: 'https://etherscan.io/token/0x6b175474e89094c44da98b954eedeac495271d0f',\n icon: tokenImages.dai,\n readableName: 'Dai',\n tokenSymbol: 'dai',\n uniqueTokenId: 'dai',\n },\n {\n coinmarketcapLink: 'https://coinmarketcap.com/currencies/weth/',\n etherscanLink: 'https://etherscan.io/token/0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2',\n icon: tokenImages.weth,\n readableName: 'Weth',\n tokenSymbol: 'weth',\n uniqueTokenId: 'weth',\n },\n {\n coinmarketcapLink: 'https://coinmarketcap.com/currencies/ethereum/',\n etherscanLink: 'n/a',\n icon: tokenImages.ethereum,\n readableName: 'Ethereum',\n tokenSymbol: 'eth',\n uniqueTokenId: 'ethereum',\n },\n {\n coinmarketcapLink: 'https://coinmarketcap.com/currencies/bitcoin/',\n etherscanLink: 'n/a',\n icon: tokenImages.btc,\n readableName: 'Bitcoin',\n tokenSymbol: 'btc',\n uniqueTokenId: 'btc',\n },\n {\n coinmarketcapLink: 'https://coinmarketcap.com/currencies/xyo/',\n etherscanLink: 'https://etherscan.io/token/0x55296f69f40ea6d20e478533c15a6b08b654e758',\n icon: tokenImages.xyo,\n readableName: 'XYO',\n tokenSymbol: 'xyo',\n uniqueTokenId: 'xyo',\n },\n {\n coinmarketcapLink: 'https://coinmarketcap.com/currencies/frax/',\n etherscanLink: 'https://etherscan.io/token/0x853d955acef822db058eb8505911ed77f175b99e',\n icon: tokenImages.frax,\n readableName: 'Frax',\n tokenSymbol: 'frax',\n uniqueTokenId: 'frax',\n },\n {\n coinmarketcapLink: 'https://coinmarketcap.com/currencies/wrapped-bitcoin/',\n etherscanLink: 'https://etherscan.io/token/0x2260fac5e5542a773aa44fbcfedf7c193bc2c599',\n icon: tokenImages.wrappedBtc,\n readableName: 'Wrapped BTC',\n tokenSymbol: 'wbtc',\n uniqueTokenId: 'wbtc',\n },\n {\n coinmarketcapLink: 'https://coinmarketcap.com/currencies/usd-coin/',\n etherscanLink: 'https://etherscan.io/token/0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48',\n icon: tokenImages.usdCoin,\n readableName: 'USDC',\n tokenSymbol: 'usdc',\n uniqueTokenId: 'usdc',\n },\n {\n coinmarketcapLink: 'https://coinmarketcap.com/currencies/tether/',\n etherscanLink: 'https://etherscan.io/token/0xdac17f958d2ee523a2206206994597c13d831ec7',\n icon: tokenImages.tether,\n readableName: 'Tether',\n tokenSymbol: 'usdt',\n uniqueTokenId: 'usdt',\n },\n {\n coinmarketcapLink: 'https://coinmarketcap.com/currencies/cardano/',\n etherscanLink: 'https://etherscan.io/token/0xc14777c94229582e5758c5a79b83dde876b9be98',\n icon: tokenImages.ada,\n readableName: 'Cardano',\n tokenSymbol: 'ada',\n uniqueTokenId: 'ada',\n },\n {\n coinmarketcapLink: 'https://coinmarketcap.com/currencies/binance-usd/',\n etherscanLink: 'https://etherscan.io/token/0x4Fabb145d64652a948d72533023f6E7A623C7C53',\n icon: tokenImages.busd,\n readableName: 'Binance USD',\n tokenSymbol: 'busd',\n uniqueTokenId: 'busd',\n },\n {\n coinmarketcapLink: 'https://coinmarketcap.com/currencies/dogecoin/',\n etherscanLink: 'https://etherscan.io/token/0x7618b5024a6349f9aef10ddfd33e3428c734551e',\n icon: tokenImages.dogecoin,\n readableName: 'Dogecoin',\n tokenSymbol: 'doge',\n uniqueTokenId: 'doge',\n },\n {\n coinmarketcapLink: 'https://coinmarketcap.com/currencies/polkadot-new/',\n etherscanLink: 'https://etherscan.io/token/0x2d4fb6dd969992c881d8e534c747cc925d5ba221',\n icon: tokenImages.dot,\n readableName: 'Polkadot',\n tokenSymbol: 'dot',\n uniqueTokenId: 'dot',\n },\n {\n coinmarketcapLink: 'https://coinmarketcap.com/currencies/chainlink/',\n etherscanLink: 'https://etherscan.io/token/0x514910771af9ca656af840dff83e8264ecf986ca',\n icon: tokenImages.link,\n readableName: 'ChainLink',\n tokenSymbol: 'link',\n uniqueTokenId: 'link',\n },\n {\n coinmarketcapLink: 'https://coinmarketcap.com/currencies/solana/',\n etherscanLink: 'https://etherscan.io/token/0x1f54638b7737193ffd86c19ec51907a7c41755d8',\n icon: tokenImages.sol,\n readableName: 'Solana',\n tokenSymbol: 'sol',\n uniqueTokenId: 'sol',\n },\n]\n","import { TokenData } from './TokenData'\n\nexport const useGetTokenData = (symbols: (string | undefined)[]) => {\n return symbols?.map((symbol) => {\n const additionalTokenData = TokenData.find((x) => x.tokenSymbol === symbol)\n const checkedTokenData = additionalTokenData ? additionalTokenData : TokenData[0]\n return checkedTokenData\n })\n}\n","import { AvatarProps, CardHeader, CardHeaderProps, Typography } from '@mui/material'\nimport { ReactNode } from 'react'\n\nimport { ThemeTokenAvatar } from '../ThemeTokenAvatar'\n\nexport interface TokenSummaryProps extends CardHeaderProps {\n icon?: string\n imgBgProps?: AvatarProps\n symbol?: string\n symbolElement?: ReactNode\n}\n\nexport const TokenSummary: React.FC<TokenSummaryProps> = ({ icon, symbol, symbolElement, children, ...props }) => {\n return (\n <>\n <CardHeader\n avatar={<ThemeTokenAvatar src={icon} alt={symbol} />}\n title={\n <Typography variant=\"h6\" fontWeight={300} textTransform=\"uppercase\">\n {symbolElement ?? symbol}\n </Typography>\n }\n {...props}\n />\n {children}\n </>\n )\n}\n","import { Typography, TypographyProps } from '@mui/material'\n\nimport { useGradientStyles } from '../hooks'\n\nexport interface TypographyExProps extends TypographyProps {\n gradient?: 'text'\n}\n\nexport const TypographyEx: React.FC<TypographyExProps> = ({ gradient, ...props }) => {\n const { classes } = useGradientStyles()\n return <Typography className={gradient === 'text' ? classes().heading : undefined} {...props} />\n}\n"],"mappings":";AAAA,SAAS,kBAAmC;AAIxC;AAFG,IAAM,YAAuC,CAAC,UAAU;AAC7D,SACE,oBAAC,cAAW,SAAS,GAAG,WAAU,QAAQ,GAAG,OAAO,eAEpD;AAEJ;;;ACRA,SAAS,WAAW,MAAM,cAAAA,mBAAkB;AAC5C,SAAS,gBAAgB;AACzB,SAAuB,aAAa,mBAAmB;AACvD,SAAS,cAAc;;;ACHvB,SAAS,gBAAgB;AACzB,SAAS,kBAAkB;AASpB,IAAM,4BAA4B,MAAM;AAC7C,SAAO;AAAA,IACL,YAAY;AAAA,MACV,iBAAiB;AAAA,IACnB;AAAA,IACA,QAAQ;AAAA,MACN,aAAa;AAAA,MACb,kBAAkB;AAAA,MAClB,mBAAmB;AAAA,MACnB,cAAc;AAAA,MACd,aAAa;AAAA,MACb,aAAa;AAAA,IACf;AAAA,IACA,SAAS;AAAA,MACP,sBAAsB;AAAA,MACtB,qBAAqB;AAAA,MACrB,YAAY;AAAA,MACZ,SAAS;AAAA,IACX;AAAA,EACF;AACF;AAEO,IAAM,2BAA2B,MAAM;AAC5C,SAAO;AAAA,IACL,YAAY;AAAA,MACV,iBAAiB;AAAA,IACnB;AAAA,IACA,QAAQ;AAAA,MACN,aAAa;AAAA,MACb,kBAAkB;AAAA,MAClB,mBAAmB;AAAA,MACnB,cAAc;AAAA,MACd,aAAa;AAAA,MACb,aAAa;AAAA,IACf;AAAA,IACA,SAAS;AAAA,MACP,sBAAsB;AAAA,MACtB,qBAAqB;AAAA,MACrB,YAAY;AAAA,MACZ,SAAS;AAAA,IACX;AAAA,EACF;AACF;AAEO,IAAM,oBAAoB,MAAM;AACrC,QAAM,QAAQ,SAAS;AACvB,QAAM,SAAS,MAAM,QAAQ,SAAS,SAAS,yBAAyB,IAAI,0BAA0B;AACtG,QAAM,UAAU,WAAW,MAAM;AACjC,SAAO,EAAE,SAAS,OAAO;AAC3B;;;AC3DA,SAAS,YAAAC,iBAAgB;;;ACCzB,SAAS,qBAAqB;;;ADGvB,IAAM,cAAc,MAAM;AAC/B,QAAM,QAAQC,UAAS;AACvB,SAAO,cAAc,MAAM,YAAY,KAAK,IAAI,CAAC;AACnD;;;AEPA,SAAuB,WAAW,cAAc;AAEzC,IAAM,uBAAuB,CAAI,cAA+B,UAAU,MAAM;AAErF,QAAM,WAAW,OAAU,IAAI;AAE/B,YAAU,MAAM;AACd,QAAI,CAAC,cAAc;AACjB;AAAA,IACF;AACA,QAAI,OAAO,iBAAiB,YAAY;AACtC,mBAAa,SAAS,OAAO;AAC7B;AAAA,IACF,OAAO;AACL,mBAAa,UAAU,SAAS;AAAA,IAClC;AAAA,EACF,GAAG,CAAC,cAAc,OAAO,CAAC;AAE1B,SAAO;AACT;;;AJ8BqB,SAGb,OAAAC,MAHa;AANrB,IAAM,iBAAgD,CAAC,EAAE,0BAA0B,aAAa,aAAa,cAAc,aAAa,MAAM;AAC5I,SACE;AAAA,IAAC;AAAA;AAAA,MACC,OAAM;AAAA,MACN,IAAI,EAAE,eAAe,EAAE,IAAI,OAAO,IAAI,SAAS,GAAG,gBAAgB,EAAE,IAAI,2BAA2B,eAAe,UAAU,IAAI,SAAS,EAAE;AAAA,MAE1I;AAAA,sBAAc,qBAAC,UAAM;AAAA;AAAA,UAAY;AAAA,WAAM,IAAU;AAAA,QAClD,qBAACC,aAAA,EAAY;AAAA;AAAA,UAAa;AAAA,WAAM;AAAA,QAChC,gBAAAD,KAAC,UAAO,MAAM,aAAa,WAAU,UAAS,QAAO,UAAS,OAAM,WAClE,0BAAAA,KAACC,aAAA,EAAY,wBAAa,GAC5B;AAAA;AAAA;AAAA,EACF;AAEJ;AAEA,IAAM,gBAA8C,CAAC,EAAE,MAAM,IAAI,WAAW,MAAM;AAChF,QAAM,WAAW,YAAY;AAC7B,SACE,gBAAAD;AAAA,IAAC;AAAA;AAAA,MACC,WAAW;AAAA,MACX,WAAW;AAAA,MACX,cAAc;AAAA,MACd,aAAa,WAAW,IAAI;AAAA,MAC5B,YAAY,WAAW,IAAI;AAAA,MAC3B,QAAQ,QAAQ;AAAA,MAChB;AAAA,MACA;AAAA,MACA,OAAM;AAAA,MACN,SAAQ;AAAA,MACR,UAAU;AAAA,MACV,IAAI,EAAE,SAAS,QAAQ,KAAK,SAAS,OAAO;AAAA,MAE3C;AAAA;AAAA,EACH;AAEJ;AAEO,IAAM,YAAsC,CAAC;AAAA,EAClD;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACL,MAAM;AACJ,QAAM,WAAW,YAAY;AAC7B,QAAM,EAAE,QAAQ,IAAI,kBAAkB;AACtC,SACE,gBAAAA;AAAA,IAAC;AAAA;AAAA,MACC,IAAI;AAAA,QACF,iBAAiB,OAAO,eAAe;AAAA,QACvC,oBAAoB,EAAE,IAAI,UAAU,IAAI,eAAe,IAAI,WAAW;AAAA,QACtE,WAAW;AAAA,UACT,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,IAAI;AAAA,QACN;AAAA,QACA,GAAI,MAAM,CAAC;AAAA,MACb;AAAA,MACA,OAAO;AAAA,QACL,iBAAiB,mBAAmB;AAAA,QACpC,kBAAkB;AAAA,QAClB,gBAAgB;AAAA,QAChB,OAAO,aAAa;AAAA,MACtB;AAAA,MACC,GAAG;AAAA,MAEJ,0BAAAA,KAAC,aACC;AAAA,QAAC;AAAA;AAAA,UACC,WAAS;AAAA,UACT,gBAAe;AAAA,UACf,YAAW;AAAA,UACX,IAAI;AAAA,YACF,YAAY,EAAE,IAAI,SAAS;AAAA,YAC3B,gBAAgB,EAAE,IAAI,SAAS;AAAA,UACjC;AAAA,UAEA;AAAA,4BAAAA,KAAC,QAAK,MAAI,MAAC,IAAI,IAAI,IAAI,GAAG,IAAI,kBAAkB,IAAI,GAAG,IAAI,kBAAkB,IAAI,GAC/E,+BAAC,eAAY,UAAU,GAAG,IAAI,EAAE,YAAY,EAAE,IAAI,mBAAmB,CAAC,WAAW,eAAe,SAAS,EAAE,GACzG;AAAA,mCAACC,aAAA,EAAW,SAAQ,MAAK,WAAU,MAAK,cAAY,MAAC,WAAW,mBAAmB,CAAC,WAAW,SAAS,UACrG;AAAA,wBAAQ,gBAAAD,KAAC,UAAM,aAAG,KAAK,KAAI,IAAU;AAAA,gBACrC,gBAAgB,qBAAC,UAAK,WAAW,QAAQ,EAAE,SAAS;AAAA;AAAA,kBAAE,IAAI,aAAa;AAAA,mBAAG,IAAU;AAAA,gBACpF,SAAS,gBAAAA,KAAC,UAAM,cAAI,MAAM,IAAG,IAAU;AAAA,iBAC1C;AAAA,cACA,gBAAAA,KAACC,aAAA,EAAW,SAAQ,SAAQ,WAAU,MAAK,cAAY,MAAC,WAAW,mBAAmB,CAAC,WAAW,SAAS,UACxG,gBACH;AAAA,cACA,qBAAC,eAAY,IAAI,EAAE,eAAe,EAAE,IAAI,OAAO,IAAI,SAAS,EAAE,GAAG,OAAM,QAAO,WAAW,GACvF;AAAA,gCAAAD,KAAC,iBAAc,MAAM,aAAa,IAAI,WAAW,YAAY,aAAa;AAAA,gBAC1E,gBAAAA,KAAC,iBAAc,MAAM,aAAa,IAAI,WAAW,YAAY,aAAa;AAAA,iBAC5E;AAAA,cACA,gBAAAA;AAAA,gBAAC;AAAA;AAAA,kBACC;AAAA,kBACA;AAAA,kBACA;AAAA,kBACA;AAAA,kBACA,0BAA0B,kBAAkB,OAAO;AAAA;AAAA,cACrD;AAAA,eACF,GACF;AAAA,YACA,gBAAAA,KAAC,QAAK,MAAI,MAAC,IAAI,IAAI,IAAI,GACpB,sBAAY,gBAAAA,KAAC,SAAI,KAAK,WAAW,OAAM,QAAO,IAAK,MACtD;AAAA;AAAA;AAAA,MACF,GACF;AAAA;AAAA,EACF;AAEJ;;;AKpKA,SAAS,KAAe,QAAQ,cAAAE,mBAAsD;AAEtF,SAAS,YAAY,aAAa,gBAAgB;AAgGxC,gBAAAC,YAAA;AAxFV,IAAM,gBAAgB;AAMtB,IAAM,gBAAgB,OAAO,KAAK;AAAA,EAChC,MAAM;AAAA,EACN,mBAAmB,CAAC,SAAS,SAAS;AAAA,EACtC,MAAM;AACR,CAAC,EAAsB,CAAC,EAAE,iBAAiB,OAAO;AAAA,EAChD,KAAK;AAAA;AAAA;AAAA,IAGH,WAAW;AAAA,MACT,SAAS;AAAA,MACT,SAAS;AAAA;AAAA,MAET,OAAO;AAAA,MACP,YAAY;AAAA;AAAA,MAEZ,GAAI,oBAAoB,EAAE,YAAY,iBAAiB;AAAA,IACzD;AAAA,EACF;AACF,EAAE;AAEF,IAAM,qBAAqB,OAAO,KAAK;AAAA,EACrC,MAAM;AAAA,EACN,MAAM;AACR,CAAC,EAAE,OAAO;AAAA,EACR,UAAU;AACZ,EAAE;AAEF,IAAM,uBAAuB,OAAOC,aAAY;AAAA,EAC9C,MAAM;AAAA,EACN,mBAAmB,CAAC,SAAS,SAAS;AAAA,EACtC,MAAM;AACR,CAAC,EAAgC,CAAC,EAAE,OAAO,kBAAkB,WAAW,MAAM;AAC5E,SAAO,MAAM,YAAY;AAAA,IACvB,YAAY,cAAc;AAAA,IAC1B,MAAM;AAAA,IACN,UAAU;AAAA,IACV,UAAU;AAAA,IACV,OAAO;AAAA,IACP,cAAc;AAAA,IACd,YAAY;AAAA,IACZ,GAAI,qBAAqB,UACrB;AAAA,MACE,WAAW;AAAA,MACX,WAAW;AAAA,IACb,IACA,CAAC;AAAA,EACP,CAAC;AACH,CAAC;AAED,IAAM,kBAAkB,MAAM;AAC5B,QAAM,CAAC,mBAAmB,oBAAoB,IAAI,SAAiB;AAEnE,QAAM,iBAAiB,YAAY,CAAC,SAAsB;AACxD,QAAI,SAAS,MAAM;AACjB,2BAAqB,KAAK,eAAe,IAAI;AAAA,IAC/C;AAAA,EACF,GAAG,CAAC,CAAC;AAEL,SAAO,EAAE,mBAAmB,eAAe;AAC7C;AAcO,IAAM,eAAe;AAAA,EAC1B,CAAC,EAAE,UAAU,mBAAmB,SAAS,kBAAkB,iBAAiB,GAAG,MAAM,GAAG,QAAQ;AAE9F,UAAM,EAAE,gBAAgB,kBAAkB,IAAI,gBAAgB;AAC9D,UAAM,YAAY,qBAAqB,GAAG;AAE1C,WACE,gBAAAD,KAAC,iBAAc,kBAAkB,CAAC,CAAC,aAAa,CAAC,mBAAmB,oBAAoB,QAAY,GAAG,OAAO,KAC5G,0BAAAA,KAAC,sBACC,0BAAAA,KAAC,wBAAqB,KAAK,gBAAgB,WAAW,QAAQ,kBAAoC,SAAQ,SAAS,GAAG,iBACnH,UACH,GACF,GACF;AAAA,EAEJ;AACF;AACA,aAAa,cAAc;;;AC1G3B,SAAS,cAAAE,mBAAkB;AAC3B,SAAS,eAAe;AACxB,SAAS,iBAAuC;AAoCpC,gBAAAC,MACA,QAAAC,aADA;AAtBL,IAAM,gBAAN,cAA4B,UAAkD;AAAA,EACnF,YAAY,OAA2B;AACrC,UAAM,KAAK;AACX,SAAK,QAAQ,EAAE,OAAO,OAAU;AAAA,EAClC;AAAA,EAEA,OAAO,yBAAyB,OAAc;AAC5C,WAAO,EAAE,MAAM;AAAA,EACjB;AAAA,EAES,kBAAkB,OAAc,WAAsB;AAC7D,YAAQ,MAAM,GAAG,KAAK,KAAK,SAAS,EAAE;AAAA,EACxC;AAAA,EAES,SAAS;AAChB,QAAI,KAAK,MAAM,OAAO;AACpB,UAAI,KAAK,MAAM,mBAAmB;AAChC,eAAO,KAAK,MAAM,kBAAkB,KAAK,MAAM,KAAK;AAAA,MACtD;AACA,aACE,KAAK,MAAM,YACT,gBAAAA,MAAC,WACC;AAAA,wBAAAD,KAACD,aAAA,EAAW,SAAQ,MAAK,mCAAqB;AAAA,QAC9C,gBAAAE,MAACF,aAAA,EAAW,SAAQ,SAAQ;AAAA;AAAA,UAAE,KAAK,MAAM,OAAO;AAAA,UAAQ;AAAA,WAAC;AAAA,SAC3D;AAAA,IAGN;AAEA,WAAO,KAAK,MAAM;AAAA,EACpB;AACF;;;AC/CA,SAAS,sBAA2C;AAEpD,SAA8B,mBAAmB;AAiBxC,gBAAAG,YAAA;AATF,IAAM,qBAAsD,CAAC,EAAE,IAAI,WAAW,SAAS,GAAG,MAAM,MAAM;AAC3G,QAAM,WAAW,YAAY;AAC7B,QAAM,eAAe,CAAC,UAAsC;AAC1D,cAAU,KAAK;AACf,QAAI,IAAI;AACN,eAAS,IAAI,SAAS;AAAA,IACxB;AAAA,EACF;AAEA,SAAO,gBAAAA,KAAC,kBAAe,SAAS,cAAe,GAAG,OAAO;AAC3D;AAEO,IAAM,mBAAoD,CAAC,EAAE,IAAI,GAAG,MAAM,MAAM;AACrF,MAAI,IAAI;AACN,WAAO,gBAAAA,KAAC,sBAAmB,IAAS,GAAG,OAAO;AAAA,EAChD,OAAO;AACL,WAAO,gBAAAA,KAAC,kBAAgB,GAAG,OAAO;AAAA,EACpC;AACF;;;AC5BA,SAAS,eAAAC,oBAAmB;;;ACA5B,SAAS,cAAAC,mBAAkB;AAC3B,SAAuB,eAAAC,oBAAmB;AAItC,SACE,OAAAC,MADF,QAAAC,aAAA;AAFJ,IAAM,WAAmC,CAAC,UAAU;AAClD,SACE,gBAAAA,MAACF,cAAA,EAAa,GAAG,OACf;AAAA,oBAAAC,KAACF,aAAA,EAAW,SAAQ,MAAK,oBAAM;AAAA,IAC/B,gBAAAE,KAACF,aAAA,EAAW,SAAS,GAAG,SAAQ,SAC7B,sCACH;AAAA,KACF;AAEJ;;;ADKW,SAGA,UAHA,OAAAI,YAAA;AAHJ,SAAS,WAAc,OAA8C;AAC1E,QAAM,EAAE,UAAU,OAAO,cAAc,SAAS,IAAI;AACpD,MAAI,UAAU;AACZ,WAAO,gBAAAA,KAAC,YAAS;AAAA,EACnB;AACA,MAAI,OAAO;AACT,WAAO,gBAAAA,KAAA,YAAG,UAAS;AAAA,EACrB;AACA,MAAI,iBAAiB,QAAW;AAC9B,WAAO,gBAAAA,KAACC,cAAA,EAAY,MAAI,MAAC,WAAU,QAAO;AAAA,EAC5C,OAAO;AACL,WAAO,gBAAAD,KAAA,YAAG,UAAS;AAAA,EACrB;AACF;;;AE3BA,SAAS,cAAAE,mBAAmC;AAIxC,gBAAAC,YAAA;AAFG,IAAM,OAAkC,CAAC,UAAU;AACxD,SACE,gBAAAA,KAACD,aAAA,EAAW,SAAS,GAAG,WAAU,QAAQ,GAAG,OAAO,eAEpD;AAEJ;;;ACRA,SAAS,OAAmB,kBAAkB;AAQ1C,SACE,OAAAE,MADF,QAAAC,aAAA;AAFG,IAAM,qBAAwD,CAAC,EAAE,WAAW,GAAG,MAAM,MAAM;AAChG,SACE,gBAAAA,MAAC,SAAM,UAAS,WAAW,GAAG,OAC5B;AAAA,oBAAAD,KAAC,cAAW,0BAAY;AAAA,IACvB,aAAa;AAAA,KAChB;AAEJ;;;ACbA,SAAS,UAAAE,eAAc;AAW2C,gBAAAC,aAAA;AARlE,IAAM,wBAAwBD,QAAO,KAAK,EAAE,CAAC,EAAE,MAAM,OAAO;AAAA,EAC1D,CAAC,MAAM,YAAY,KAAK,IAAI,CAAC,GAAG;AAAA,IAC9B,WAAW;AAAA,EACb;AAAA,EACA,SAAS;AAAA,EACT,UAAU;AACZ,EAAE;AAEF,IAAM,kBAA0C,CAAC,EAAE,SAAS,MAAM,gBAAAC,MAAC,yBAAuB,UAAS;;;ACXnG,SAAS,YAAAC,iBAAgB;AACzB,SAAuB,eAAAC,oBAAmB;AAC1C,SAAS,cAAAC,mBAAkB;AAKvB,gBAAAC,aAAA;AAHG,IAAM,oBAAoBD,YAAyC,CAAC,EAAE,UAAU,IAAI,GAAG,MAAM,GAAG,QAAQ;AAC7G,QAAM,QAAQF,UAAS;AACvB,SACE,gBAAAG;AAAA,IAACF;AAAA,IAAA;AAAA,MACC,IAAI;AAAA,QACF,eAAe,EAAE,IAAI,MAAM,QAAQ,CAAC,GAAG,IAAI,MAAM,QAAQ,CAAC,EAAE;AAAA,QAC5D,YAAY,EAAE,IAAI,MAAM,QAAQ,CAAC,GAAG,IAAI,MAAM,QAAQ,CAAC,EAAE;AAAA,QACzD,GAAG;AAAA,MACL;AAAA,MACA,OAAM;AAAA,MACN;AAAA,MACC,GAAG;AAAA,MAEH;AAAA;AAAA,EACH;AAEJ,CAAC;AAED,kBAAkB,cAAc;;;ACtBhC,SAAS,cAAAG,mBAAkB;;;ACA3B,SAAS,UAAAC,SAAQ,iBAAiC;AAClD,SAAS,UAAAC,eAAc;AAEvB,SAAS,cAAAC,aAAY,eAAe;AAmC1B,gBAAAC,aAAA;AA9BV,IAAM,wBAAwBC,QAAO,WAAW;AAAA,EAC9C,MAAM;AAAA,EACN,mBAAmB,CAAC,SAAS,SAAS;AAAA,EACtC,MAAM;AACR,CAAC,EAAE,CAAC,EAAE,QAAQ,OAAO,OAAO;AAAA,EAC1B;AACF,EAAE;AAgBK,IAAM,2BAA2EC;AAAA,EACtF,CAAC,EAAE,UAAU,MAAM,MAAAC,QAAO,OAAO,IAAI,OAAO,GAAG,MAAM,GAAG,QAAQ;AAC9D,UAAM,OAAO,QAAQ,MAAM;AACzB,UAAI,UAAU;AACZ,eAAO;AAAA,MACT;AACA,UAAI,QAAQA,SAAQ,IAAI;AACtB,eACE,gBAAAH,MAACI,SAAA,EAAO,OAAO,OAAO,IAAQ,MAAY,QAAQ,OAAO,WAAW,QACjE,iBACH;AAAA,MAEJ;AACA,aAAO;AAAA,IACT,GAAG,CAAC,UAAU,MAAMD,OAAM,IAAI,KAAK,CAAC;AACpC,WACE,gBAAAH,MAAC,yBAAsB,KAAW,GAAG,OACnC,0BAAAA,MAAC,gBAAa,IAAI,EAAE,QAAQG,SAAQ,MAAM,OAAO,YAAY,UAAU,GAAI,gBAAK,GAClF;AAAA,EAEJ;AACF;AAEA,yBAAyB,cAAc;AAChC,IAAM,oBAAoB;;;ADtCxB,gBAAAE,aAAA;AAJT,IAAM,mBAAmBC,YAAwD,CAAC,EAAE,OAAO,SAAS,eAAe,MAAAC,OAAM,GAAG,MAAM,GAAG,QAAQ;AAC3I,QAAM,OAAO,iBAAiB,UAAU,GAAG,aAAa,YAAY,OAAO,YAAY,KAAK,KAAK;AACjG,QAAM,KAAK,kBAAkB,UAAa,UAAU,YAAY,OAAO,YAAY,KAAK,KAAK;AAE7F,SAAO,gBAAAF,MAAC,qBAAkB,OAAc,MAAY,IAAQ,KAAU,MAAME,OAAO,GAAG,OAAO;AAC/F,CAAC;AAED,iBAAiB,cAAc;;;AEnB/B,SAAS,gBAAgB;AACzB,SAAS,UAAAC,eAAc;AAsBnB,gBAAAC,aAAA;AAXG,IAAM,gBAA8C,CAAC,EAAE,OAAO,SAAS,UAAU,SAAS,eAAe,GAAG,MAAM,MAAM;AAC7H,QAAM,MAAMC,QAAoC,IAAI;AACpD,QAAM,CAAC,cAAc,QAAQ,IAAI,SAA+B,QAAW,GAAG;AAC9E,QAAM,WAAW,IAAI,QAAQ,SAAS,KAAK,YAAY,WAAW,MAAM;AACxE,QAAM,cAAc,UAAU,YAAY,OAAO,GAAG,QAAQ,KAAK;AAEjE,QAAM,kBAAkB,MAAM;AAC5B,eAAW,QAAQ,SAAS,KAAK;AAAA,EACnC;AAEA,SACE,gBAAAD;AAAA,IAAC;AAAA;AAAA,MACC,SAAS;AAAA,MACT,KAAK;AAAA,MACL;AAAA,MACA,MAAM,gBAAgB,GAAG,aAAa,GAAG,WAAW,MAAM;AAAA,MAC1D,IAAI,gBAAgB,SAAY;AAAA,MAC/B,GAAG;AAAA;AAAA,EACN;AAEJ;;;AChCA,SAAS,QAAqB,YAAAE,iBAAgB;AAIrC,gBAAAC,aAAA;AAFF,IAAM,mBAA0C,CAAC,EAAE,GAAG,MAAM,MAAM;AACvE,QAAM,QAAQD,UAAS;AACvB,SAAO,gBAAAC,MAAC,UAAO,IAAI,EAAE,YAAY,MAAM,QAAQ,OAAO,MAAM,GAAI,GAAG,OAAO;AAC5E;;;ACLA,SAAS,mBAAqC;AASkB,gBAAAC,aAAA;AADzD,IAAM,wBAA8D,CAAC,EAAE,QAAQ,GAAG,MAAM,MAAM;AACnG,SAAO,gBAAAA,MAAC,eAAa,GAAG,OAAQ,kBAAQ,IAAI,CAAC,OAAO,UAAU,gBAAAA,MAAC,oBAA6B,KAAK,SAAZ,KAAmB,CAAE,GAAE;AAC9G;;;ACVA,SAAS,OAAmB,cAAAC,mBAAmC;AAC/D,SAAS,eAAe;AAapB,gBAAAC,OAEI,QAAAC,aAFJ;AAFG,IAAM,WAAoC,CAAC,EAAE,OAAO,YAAY,aAAa,OAAO,YAAY,aAAa,GAAG,MAAM,MAAM;AACjI,SACE,gBAAAD,MAAC,SAAM,WAAW,GAAG,WAAU,iBAAiB,GAAG,OACjD,0BAAAC,MAAC,WAAQ,gBAAe,iBACtB;AAAA,oBAAAA,MAACF,aAAA,EAAW,SAAQ,SAAQ,YAAY,KAAK,QAAQ,GAAI,GAAG,YACzD;AAAA;AAAA,MACA;AAAA,OACH;AAAA,IACA,gBAAAE,MAACF,aAAA,EAAW,SAAQ,SAAQ,YAAY,KAAK,eAAc,aAAY,OAAM,QAAO,QAAQ,GAAI,GAAG,YAChG;AAAA;AAAA,MACA;AAAA,OACH;AAAA,KACF,GACF;AAEJ;;;AC3BA,OAAO,SAAS;AAChB,OAAO,SAAS;AAChB,OAAO,UAAU;AACjB,OAAO,SAAS;AAChB,OAAO,cAAc;AACrB,OAAO,SAAS;AAChB,OAAO,cAAc;AACrB,OAAO,UAAU;AACjB,OAAO,UAAU;AACjB,OAAO,SAAS;AAChB,OAAO,YAAY;AACnB,OAAO,aAAa;AACpB,OAAO,UAAU;AACjB,OAAO,gBAAgB;AACvB,OAAO,SAAS;;;ACHT,IAAM,YAAyB;AAAA,EACpC;AAAA,IACE,mBAAmB;AAAA,IACnB,eAAe;AAAA,IACf,MAAkB;AAAA,IAClB,cAAc;AAAA,IACd,aAAa;AAAA,IACb,eAAe;AAAA,EACjB;AAAA,EACA;AAAA,IACE,mBAAmB;AAAA,IACnB,eAAe;AAAA,IACf,MAAkB;AAAA,IAClB,cAAc;AAAA,IACd,aAAa;AAAA,IACb,eAAe;AAAA,EACjB;AAAA,EACA;AAAA,IACE,mBAAmB;AAAA,IACnB,eAAe;AAAA,IACf,MAAkB;AAAA,IAClB,cAAc;AAAA,IACd,aAAa;AAAA,IACb,eAAe;AAAA,EACjB;AAAA,EACA;AAAA,IACE,mBAAmB;AAAA,IACnB,eAAe;AAAA,IACf,MAAkB;AAAA,IAClB,cAAc;AAAA,IACd,aAAa;AAAA,IACb,eAAe;AAAA,EACjB;AAAA,EACA;AAAA,IACE,mBAAmB;AAAA,IACnB,eAAe;AAAA,IACf,MAAkB;AAAA,IAClB,cAAc;AAAA,IACd,aAAa;AAAA,IACb,eAAe;AAAA,EACjB;AAAA,EACA;AAAA,IACE,mBAAmB;AAAA,IACnB,eAAe;AAAA,IACf,MAAkB;AAAA,IAClB,cAAc;AAAA,IACd,aAAa;AAAA,IACb,eAAe;AAAA,EACjB;AAAA,EACA;AAAA,IACE,mBAAmB;AAAA,IACnB,eAAe;AAAA,IACf,MAAkB;AAAA,IAClB,cAAc;AAAA,IACd,aAAa;AAAA,IACb,eAAe;AAAA,EACjB;AAAA,EACA;AAAA,IACE,mBAAmB;AAAA,IACnB,eAAe;AAAA,IACf,MAAkB;AAAA,IAClB,cAAc;AAAA,IACd,aAAa;AAAA,IACb,eAAe;AAAA,EACjB;AAAA,EACA;AAAA,IACE,mBAAmB;AAAA,IACnB,eAAe;AAAA,IACf,MAAkB;AAAA,IAClB,cAAc;AAAA,IACd,aAAa;AAAA,IACb,eAAe;AAAA,EACjB;AAAA,EACA;AAAA,IACE,mBAAmB;AAAA,IACnB,eAAe;AAAA,IACf,MAAkB;AAAA,IAClB,cAAc;AAAA,IACd,aAAa;AAAA,IACb,eAAe;AAAA,EACjB;AAAA,EACA;AAAA,IACE,mBAAmB;AAAA,IACnB,eAAe;AAAA,IACf,MAAkB;AAAA,IAClB,cAAc;AAAA,IACd,aAAa;AAAA,IACb,eAAe;AAAA,EACjB;AAAA,EACA;AAAA,IACE,mBAAmB;AAAA,IACnB,eAAe;AAAA,IACf,MAAkB;AAAA,IAClB,cAAc;AAAA,IACd,aAAa;AAAA,IACb,eAAe;AAAA,EACjB;AAAA,EACA;AAAA,IACE,mBAAmB;AAAA,IACnB,eAAe;AAAA,IACf,MAAkB;AAAA,IAClB,cAAc;AAAA,IACd,aAAa;AAAA,IACb,eAAe;AAAA,EACjB;AAAA,EACA;AAAA,IACE,mBAAmB;AAAA,IACnB,eAAe;AAAA,IACf,MAAkB;AAAA,IAClB,cAAc;AAAA,IACd,aAAa;AAAA,IACb,eAAe;AAAA,EACjB;AAAA,EACA;AAAA,IACE,mBAAmB;AAAA,IACnB,eAAe;AAAA,IACf,MAAkB;AAAA,IAClB,cAAc;AAAA,IACd,aAAa;AAAA,IACb,eAAe;AAAA,EACjB;AACF;;;AClIO,IAAM,kBAAkB,CAAC,YAAoC;AAClE,SAAO,SAAS,IAAI,CAAC,WAAW;AAC9B,UAAM,sBAAsB,UAAU,KAAK,CAAC,MAAM,EAAE,gBAAgB,MAAM;AAC1E,UAAM,mBAAmB,sBAAsB,sBAAsB,UAAU,CAAC;AAChF,WAAO;AAAA,EACT,CAAC;AACH;;;ACRA,SAAsB,YAA6B,cAAAG,mBAAkB;AAcjE,qBAAAC,WAEY,OAAAC,OAFZ,QAAAC,aAAA;AAFG,IAAM,eAA4C,CAAC,EAAE,MAAM,QAAQ,eAAe,UAAU,GAAG,MAAM,MAAM;AAChH,SACE,gBAAAA,MAAAF,WAAA,EACE;AAAA,oBAAAC;AAAA,MAAC;AAAA;AAAA,QACC,QAAQ,gBAAAA,MAAC,oBAAiB,KAAK,MAAM,KAAK,QAAQ;AAAA,QAClD,OACE,gBAAAA,MAACE,aAAA,EAAW,SAAQ,MAAK,YAAY,KAAK,eAAc,aACrD,2BAAiB,QACpB;AAAA,QAED,GAAG;AAAA;AAAA,IACN;AAAA,IACC;AAAA,KACH;AAEJ;;;AC3BA,SAAS,cAAAC,mBAAmC;AAUnC,gBAAAC,aAAA;AAFF,IAAM,eAA4C,CAAC,EAAE,UAAU,GAAG,MAAM,MAAM;AACnF,QAAM,EAAE,QAAQ,IAAI,kBAAkB;AACtC,SAAO,gBAAAA,MAACC,aAAA,EAAW,WAAW,aAAa,SAAS,QAAQ,EAAE,UAAU,QAAY,GAAG,OAAO;AAChG;","names":["Typography","useTheme","useTheme","jsx","Typography","Typography","jsx","Typography","Typography","jsx","jsxs","jsx","FlexGrowRow","Typography","FlexGrowCol","jsx","jsxs","jsx","FlexGrowRow","Typography","jsx","jsx","jsxs","styled","jsx","useTheme","FlexGrowRow","forwardRef","jsx","forwardRef","styled","LinkEx","forwardRef","jsx","styled","forwardRef","link","LinkEx","jsx","forwardRef","link","useRef","jsx","useRef","useTheme","jsx","jsx","Typography","jsx","jsxs","Typography","Fragment","jsx","jsxs","Typography","Typography","jsx","Typography"]}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
|
|
1
|
+
// src/components/pluginValidation/DataMissing.tsx
|
|
2
2
|
import { Alert, AlertTitle } from "@mui/material";
|
|
3
|
-
|
|
3
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
4
|
+
var PayloadDataMissing = ({ alertBody, ...props }) => {
|
|
4
5
|
return /* @__PURE__ */ jsxs(Alert, { severity: "warning", ...props, children: [
|
|
5
6
|
/* @__PURE__ */ jsx(AlertTitle, { children: "Missing Data" }),
|
|
6
7
|
alertBody ?? "Payload is missing required data to render correctly"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/pluginValidation/DataMissing.tsx"],"sourcesContent":["import { Alert, AlertProps, AlertTitle } from '@mui/material'\n\nexport interface PayloadDataMissingProps extends AlertProps {\n alertBody?: string\n}\n\nexport const PayloadDataMissing: React.FC<PayloadDataMissingProps> = ({ alertBody, ...props }) => {\n return (\n <Alert severity=\"warning\" {...props}>\n <AlertTitle>Missing Data</AlertTitle>\n {alertBody ?? 'Payload is missing required data to render correctly'}\n </Alert>\n )\n}\n"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/pluginValidation/DataMissing.tsx"],"sourcesContent":["import { Alert, AlertProps, AlertTitle } from '@mui/material'\n\nexport interface PayloadDataMissingProps extends AlertProps {\n alertBody?: string\n}\n\nexport const PayloadDataMissing: React.FC<PayloadDataMissingProps> = ({ alertBody, ...props }) => {\n return (\n <Alert severity=\"warning\" {...props}>\n <AlertTitle>Missing Data</AlertTitle>\n {alertBody ?? 'Payload is missing required data to render correctly'}\n </Alert>\n )\n}\n"],"mappings":";AAAA,SAAS,OAAmB,kBAAkB;AAQ1C,SACE,KADF;AAFG,IAAM,qBAAwD,CAAC,EAAE,WAAW,GAAG,MAAM,MAAM;AAChG,SACE,qBAAC,SAAM,UAAS,WAAW,GAAG,OAC5B;AAAA,wBAAC,cAAW,0BAAY;AAAA,IACvB,aAAa;AAAA,KAChB;AAEJ;","names":[]}
|
|
@@ -1,2 +1,13 @@
|
|
|
1
|
-
|
|
1
|
+
// src/components/pluginValidation/DataMissing.tsx
|
|
2
|
+
import { Alert, AlertTitle } from "@mui/material";
|
|
3
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
4
|
+
var PayloadDataMissing = ({ alertBody, ...props }) => {
|
|
5
|
+
return /* @__PURE__ */ jsxs(Alert, { severity: "warning", ...props, children: [
|
|
6
|
+
/* @__PURE__ */ jsx(AlertTitle, { children: "Missing Data" }),
|
|
7
|
+
alertBody ?? "Payload is missing required data to render correctly"
|
|
8
|
+
] });
|
|
9
|
+
};
|
|
10
|
+
export {
|
|
11
|
+
PayloadDataMissing
|
|
12
|
+
};
|
|
2
13
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/pluginValidation/
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/pluginValidation/DataMissing.tsx"],"sourcesContent":["import { Alert, AlertProps, AlertTitle } from '@mui/material'\n\nexport interface PayloadDataMissingProps extends AlertProps {\n alertBody?: string\n}\n\nexport const PayloadDataMissing: React.FC<PayloadDataMissingProps> = ({ alertBody, ...props }) => {\n return (\n <Alert severity=\"warning\" {...props}>\n <AlertTitle>Missing Data</AlertTitle>\n {alertBody ?? 'Payload is missing required data to render correctly'}\n </Alert>\n )\n}\n"],"mappings":";AAAA,SAAS,OAAmB,kBAAkB;AAQ1C,SACE,KADF;AAFG,IAAM,qBAAwD,CAAC,EAAE,WAAW,GAAG,MAAM,MAAM;AAChG,SACE,qBAAC,SAAM,UAAS,WAAW,GAAG,OAC5B;AAAA,wBAAC,cAAW,0BAAY;AAAA,IACvB,aAAa;AAAA,KAChB;AAEJ;","names":[]}
|
|
@@ -1,5 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
// src/contexts/contextEx/create.ts
|
|
2
|
+
import { createContext } from "react";
|
|
3
|
+
var createContextEx = () => createContext({ provided: false });
|
|
4
|
+
|
|
5
|
+
// src/contexts/ListMode/Context.ts
|
|
6
|
+
var ListModeContext = createContextEx();
|
|
3
7
|
export {
|
|
4
8
|
ListModeContext
|
|
5
9
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/contexts/ListMode/Context.ts"],"sourcesContent":["import { createContextEx } from '../contextEx'\nimport { ListModeContextState } from './State'\n\nexport const ListModeContext = createContextEx<ListModeContextState>()\n"],"mappings":"AAAA,SAAS,
|
|
1
|
+
{"version":3,"sources":["../../../../src/contexts/contextEx/create.ts","../../../../src/contexts/ListMode/Context.ts"],"sourcesContent":["import { createContext } from 'react'\n\nimport { ContextExState } from './State'\n\nexport const createContextEx = <T>() => createContext<T & ContextExState>({ provided: false } as T & ContextExState)\n","import { createContextEx } from '../contextEx'\nimport { ListModeContextState } from './State'\n\nexport const ListModeContext = createContextEx<ListModeContextState>()\n"],"mappings":";AAAA,SAAS,qBAAqB;AAIvB,IAAM,kBAAkB,MAAS,cAAkC,EAAE,UAAU,MAAM,CAAuB;;;ACD5G,IAAM,kBAAkB,gBAAsC;","names":[]}
|
|
@@ -1,7 +1,16 @@
|
|
|
1
|
-
|
|
1
|
+
// src/contexts/ListMode/Provider.tsx
|
|
2
2
|
import { useState } from "react";
|
|
3
|
-
|
|
4
|
-
|
|
3
|
+
|
|
4
|
+
// src/contexts/contextEx/create.ts
|
|
5
|
+
import { createContext } from "react";
|
|
6
|
+
var createContextEx = () => createContext({ provided: false });
|
|
7
|
+
|
|
8
|
+
// src/contexts/ListMode/Context.ts
|
|
9
|
+
var ListModeContext = createContextEx();
|
|
10
|
+
|
|
11
|
+
// src/contexts/ListMode/Provider.tsx
|
|
12
|
+
import { jsx } from "react/jsx-runtime";
|
|
13
|
+
var ListModeProvider = ({ children, defaultListMode }) => {
|
|
5
14
|
const [listMode, setListMode] = useState(defaultListMode ?? "default");
|
|
6
15
|
return /* @__PURE__ */ jsx(
|
|
7
16
|
ListModeContext.Provider,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/contexts/ListMode/Provider.tsx"],"sourcesContent":["import { WithChildren } from '@xylabs/react-shared'\nimport { useState } from 'react'\n\nimport { ListMode } from '../../models'\nimport { ListModeContext } from './Context'\n\nexport interface ListModeProviderProps {\n defaultListMode?: ListMode\n}\n\nexport const ListModeProvider: React.FC<WithChildren<ListModeProviderProps>> = ({ children, defaultListMode }) => {\n const [listMode, setListMode] = useState(defaultListMode ?? 'default')\n\n return (\n <ListModeContext.Provider\n value={{\n listMode,\n provided: true,\n setListMode,\n }}\n >\n {children}\n </ListModeContext.Provider>\n )\n}\n"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../../../src/contexts/ListMode/Provider.tsx","../../../../src/contexts/contextEx/create.ts","../../../../src/contexts/ListMode/Context.ts"],"sourcesContent":["import { WithChildren } from '@xylabs/react-shared'\nimport { useState } from 'react'\n\nimport { ListMode } from '../../models'\nimport { ListModeContext } from './Context'\n\nexport interface ListModeProviderProps {\n defaultListMode?: ListMode\n}\n\nexport const ListModeProvider: React.FC<WithChildren<ListModeProviderProps>> = ({ children, defaultListMode }) => {\n const [listMode, setListMode] = useState(defaultListMode ?? 'default')\n\n return (\n <ListModeContext.Provider\n value={{\n listMode,\n provided: true,\n setListMode,\n }}\n >\n {children}\n </ListModeContext.Provider>\n )\n}\n","import { createContext } from 'react'\n\nimport { ContextExState } from './State'\n\nexport const createContextEx = <T>() => createContext<T & ContextExState>({ provided: false } as T & ContextExState)\n","import { createContextEx } from '../contextEx'\nimport { ListModeContextState } from './State'\n\nexport const ListModeContext = createContextEx<ListModeContextState>()\n"],"mappings":";AACA,SAAS,gBAAgB;;;ACDzB,SAAS,qBAAqB;AAIvB,IAAM,kBAAkB,MAAS,cAAkC,EAAE,UAAU,MAAM,CAAuB;;;ACD5G,IAAM,kBAAkB,gBAAsC;;;AFWjE;AAJG,IAAM,mBAAkE,CAAC,EAAE,UAAU,gBAAgB,MAAM;AAChH,QAAM,CAAC,UAAU,WAAW,IAAI,SAAS,mBAAmB,SAAS;AAErE,SACE;AAAA,IAAC,gBAAgB;AAAA,IAAhB;AAAA,MACC,OAAO;AAAA,QACL;AAAA,QACA,UAAU;AAAA,QACV;AAAA,MACF;AAAA,MAEC;AAAA;AAAA,EACH;AAEJ;","names":[]}
|
|
@@ -1,5 +1,45 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
// src/contexts/contextEx/create.ts
|
|
2
|
+
import { createContext } from "react";
|
|
3
|
+
var createContextEx = () => createContext({ provided: false });
|
|
4
|
+
|
|
5
|
+
// src/contexts/contextEx/use.ts
|
|
6
|
+
import { useContext } from "react";
|
|
7
|
+
var useContextEx = (context, contextName, required = true) => {
|
|
8
|
+
const { provided, ...props } = useContext(context);
|
|
9
|
+
if (!provided && required) {
|
|
10
|
+
throw Error(`use${contextName} can not be used outside of a ${contextName}Context when required=true`);
|
|
11
|
+
}
|
|
12
|
+
return props;
|
|
13
|
+
};
|
|
14
|
+
|
|
15
|
+
// src/contexts/ListMode/Context.ts
|
|
16
|
+
var ListModeContext = createContextEx();
|
|
17
|
+
|
|
18
|
+
// src/contexts/ListMode/Provider.tsx
|
|
19
|
+
import { useState } from "react";
|
|
20
|
+
import { jsx } from "react/jsx-runtime";
|
|
21
|
+
var ListModeProvider = ({ children, defaultListMode }) => {
|
|
22
|
+
const [listMode, setListMode] = useState(defaultListMode ?? "default");
|
|
23
|
+
return /* @__PURE__ */ jsx(
|
|
24
|
+
ListModeContext.Provider,
|
|
25
|
+
{
|
|
26
|
+
value: {
|
|
27
|
+
listMode,
|
|
28
|
+
provided: true,
|
|
29
|
+
setListMode
|
|
30
|
+
},
|
|
31
|
+
children
|
|
32
|
+
}
|
|
33
|
+
);
|
|
34
|
+
};
|
|
35
|
+
|
|
36
|
+
// src/contexts/ListMode/use.ts
|
|
37
|
+
var useListMode = (required = false) => {
|
|
38
|
+
return useContextEx(ListModeContext, "ListMode", required);
|
|
39
|
+
};
|
|
40
|
+
export {
|
|
41
|
+
ListModeContext,
|
|
42
|
+
ListModeProvider,
|
|
43
|
+
useListMode
|
|
44
|
+
};
|
|
5
45
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/contexts/ListMode/
|
|
1
|
+
{"version":3,"sources":["../../../../src/contexts/contextEx/create.ts","../../../../src/contexts/contextEx/use.ts","../../../../src/contexts/ListMode/Context.ts","../../../../src/contexts/ListMode/Provider.tsx","../../../../src/contexts/ListMode/use.ts"],"sourcesContent":["import { createContext } from 'react'\n\nimport { ContextExState } from './State'\n\nexport const createContextEx = <T>() => createContext<T & ContextExState>({ provided: false } as T & ContextExState)\n","import { Context, useContext } from 'react'\n\nimport { ContextExState } from './State'\n\nexport const useContextEx = <T extends ContextExState>(context: Context<T>, contextName: string, required = true) => {\n const { provided, ...props } = useContext(context)\n if (!provided && required) {\n throw Error(`use${contextName} can not be used outside of a ${contextName}Context when required=true`)\n }\n return props\n}\n\nexport const useProvided = <T extends ContextExState>(context: Context<T>) => {\n const { provided } = useContext(context)\n return provided\n}\n","import { createContextEx } from '../contextEx'\nimport { ListModeContextState } from './State'\n\nexport const ListModeContext = createContextEx<ListModeContextState>()\n","import { WithChildren } from '@xylabs/react-shared'\nimport { useState } from 'react'\n\nimport { ListMode } from '../../models'\nimport { ListModeContext } from './Context'\n\nexport interface ListModeProviderProps {\n defaultListMode?: ListMode\n}\n\nexport const ListModeProvider: React.FC<WithChildren<ListModeProviderProps>> = ({ children, defaultListMode }) => {\n const [listMode, setListMode] = useState(defaultListMode ?? 'default')\n\n return (\n <ListModeContext.Provider\n value={{\n listMode,\n provided: true,\n setListMode,\n }}\n >\n {children}\n </ListModeContext.Provider>\n )\n}\n","import { useContextEx } from '../contextEx'\nimport { ListModeContext } from './Context'\n\nexport const useListMode = (required = false) => {\n return useContextEx(ListModeContext, 'ListMode', required)\n}\n"],"mappings":";AAAA,SAAS,qBAAqB;AAIvB,IAAM,kBAAkB,MAAS,cAAkC,EAAE,UAAU,MAAM,CAAuB;;;ACJnH,SAAkB,kBAAkB;AAI7B,IAAM,eAAe,CAA2B,SAAqB,aAAqB,WAAW,SAAS;AACnH,QAAM,EAAE,UAAU,GAAG,MAAM,IAAI,WAAW,OAAO;AACjD,MAAI,CAAC,YAAY,UAAU;AACzB,UAAM,MAAM,MAAM,WAAW,iCAAiC,WAAW,4BAA4B;AAAA,EACvG;AACA,SAAO;AACT;;;ACPO,IAAM,kBAAkB,gBAAsC;;;ACFrE,SAAS,gBAAgB;AAarB;AAJG,IAAM,mBAAkE,CAAC,EAAE,UAAU,gBAAgB,MAAM;AAChH,QAAM,CAAC,UAAU,WAAW,IAAI,SAAS,mBAAmB,SAAS;AAErE,SACE;AAAA,IAAC,gBAAgB;AAAA,IAAhB;AAAA,MACC,OAAO;AAAA,QACL;AAAA,QACA,UAAU;AAAA,QACV;AAAA,MACF;AAAA,MAEC;AAAA;AAAA,EACH;AAEJ;;;ACrBO,IAAM,cAAc,CAAC,WAAW,UAAU;AAC/C,SAAO,aAAa,iBAAiB,YAAY,QAAQ;AAC3D;","names":[]}
|
|
@@ -1,6 +1,22 @@
|
|
|
1
|
-
|
|
2
|
-
import {
|
|
3
|
-
|
|
1
|
+
// src/contexts/contextEx/create.ts
|
|
2
|
+
import { createContext } from "react";
|
|
3
|
+
var createContextEx = () => createContext({ provided: false });
|
|
4
|
+
|
|
5
|
+
// src/contexts/contextEx/use.ts
|
|
6
|
+
import { useContext } from "react";
|
|
7
|
+
var useContextEx = (context, contextName, required = true) => {
|
|
8
|
+
const { provided, ...props } = useContext(context);
|
|
9
|
+
if (!provided && required) {
|
|
10
|
+
throw Error(`use${contextName} can not be used outside of a ${contextName}Context when required=true`);
|
|
11
|
+
}
|
|
12
|
+
return props;
|
|
13
|
+
};
|
|
14
|
+
|
|
15
|
+
// src/contexts/ListMode/Context.ts
|
|
16
|
+
var ListModeContext = createContextEx();
|
|
17
|
+
|
|
18
|
+
// src/contexts/ListMode/use.ts
|
|
19
|
+
var useListMode = (required = false) => {
|
|
4
20
|
return useContextEx(ListModeContext, "ListMode", required);
|
|
5
21
|
};
|
|
6
22
|
export {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/contexts/ListMode/use.ts"],"sourcesContent":["import { useContextEx } from '../contextEx'\nimport { ListModeContext } from './Context'\n\nexport const useListMode = (required = false) => {\n return useContextEx(ListModeContext, 'ListMode', required)\n}\n"],"mappings":"AAAA,SAAS,
|
|
1
|
+
{"version":3,"sources":["../../../../src/contexts/contextEx/create.ts","../../../../src/contexts/contextEx/use.ts","../../../../src/contexts/ListMode/Context.ts","../../../../src/contexts/ListMode/use.ts"],"sourcesContent":["import { createContext } from 'react'\n\nimport { ContextExState } from './State'\n\nexport const createContextEx = <T>() => createContext<T & ContextExState>({ provided: false } as T & ContextExState)\n","import { Context, useContext } from 'react'\n\nimport { ContextExState } from './State'\n\nexport const useContextEx = <T extends ContextExState>(context: Context<T>, contextName: string, required = true) => {\n const { provided, ...props } = useContext(context)\n if (!provided && required) {\n throw Error(`use${contextName} can not be used outside of a ${contextName}Context when required=true`)\n }\n return props\n}\n\nexport const useProvided = <T extends ContextExState>(context: Context<T>) => {\n const { provided } = useContext(context)\n return provided\n}\n","import { createContextEx } from '../contextEx'\nimport { ListModeContextState } from './State'\n\nexport const ListModeContext = createContextEx<ListModeContextState>()\n","import { useContextEx } from '../contextEx'\nimport { ListModeContext } from './Context'\n\nexport const useListMode = (required = false) => {\n return useContextEx(ListModeContext, 'ListMode', required)\n}\n"],"mappings":";AAAA,SAAS,qBAAqB;AAIvB,IAAM,kBAAkB,MAAS,cAAkC,EAAE,UAAU,MAAM,CAAuB;;;ACJnH,SAAkB,kBAAkB;AAI7B,IAAM,eAAe,CAA2B,SAAqB,aAAqB,WAAW,SAAS;AACnH,QAAM,EAAE,UAAU,GAAG,MAAM,IAAI,WAAW,OAAO;AACjD,MAAI,CAAC,YAAY,UAAU;AACzB,UAAM,MAAM,MAAM,WAAW,iCAAiC,WAAW,4BAA4B;AAAA,EACvG;AACA,SAAO;AACT;;;ACPO,IAAM,kBAAkB,gBAAsC;;;ACA9D,IAAM,cAAc,CAAC,WAAW,UAAU;AAC/C,SAAO,aAAa,iBAAiB,YAAY,QAAQ;AAC3D;","names":[]}
|
|
@@ -1,5 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
// src/contexts/contextEx/create.ts
|
|
2
|
+
import { createContext } from "react";
|
|
3
|
+
var createContextEx = () => createContext({ provided: false });
|
|
4
|
+
|
|
5
|
+
// src/contexts/Pixel/Context.ts
|
|
6
|
+
var PixelContext = createContextEx();
|
|
3
7
|
export {
|
|
4
8
|
PixelContext
|
|
5
9
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/contexts/Pixel/Context.ts"],"sourcesContent":["import { createContextEx } from '../contextEx'\nimport { PixelContextState } from './State'\n\nexport const PixelContext = createContextEx<PixelContextState>()\n"],"mappings":"AAAA,SAAS,
|
|
1
|
+
{"version":3,"sources":["../../../../src/contexts/contextEx/create.ts","../../../../src/contexts/Pixel/Context.ts"],"sourcesContent":["import { createContext } from 'react'\n\nimport { ContextExState } from './State'\n\nexport const createContextEx = <T>() => createContext<T & ContextExState>({ provided: false } as T & ContextExState)\n","import { createContextEx } from '../contextEx'\nimport { PixelContextState } from './State'\n\nexport const PixelContext = createContextEx<PixelContextState>()\n"],"mappings":";AAAA,SAAS,qBAAqB;AAIvB,IAAM,kBAAkB,MAAS,cAAkC,EAAE,UAAU,MAAM,CAAuB;;;ACD5G,IAAM,eAAe,gBAAmC;","names":[]}
|
|
@@ -1,7 +1,16 @@
|
|
|
1
|
-
|
|
1
|
+
// src/contexts/Pixel/Provider.tsx
|
|
2
2
|
import { XyPixel } from "@xylabs/pixel";
|
|
3
|
-
|
|
4
|
-
|
|
3
|
+
|
|
4
|
+
// src/contexts/contextEx/create.ts
|
|
5
|
+
import { createContext } from "react";
|
|
6
|
+
var createContextEx = () => createContext({ provided: false });
|
|
7
|
+
|
|
8
|
+
// src/contexts/Pixel/Context.ts
|
|
9
|
+
var PixelContext = createContextEx();
|
|
10
|
+
|
|
11
|
+
// src/contexts/Pixel/Provider.tsx
|
|
12
|
+
import { jsx } from "react/jsx-runtime";
|
|
13
|
+
var PixelProvider = (props) => {
|
|
5
14
|
const { children, id } = props;
|
|
6
15
|
XyPixel.init(id);
|
|
7
16
|
return /* @__PURE__ */ jsx(
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/contexts/Pixel/Provider.tsx"],"sourcesContent":["import { XyPixel } from '@xylabs/pixel'\nimport { WithChildren } from '@xylabs/react-shared'\n\nimport { PixelContext } from './Context'\n\nexport interface PixelProviderProps {\n id: string\n}\n\nexport const PixelProvider: React.FC<WithChildren<PixelProviderProps>> = (props) => {\n const { children, id } = props\n XyPixel.init(id)\n\n return (\n <PixelContext.Provider\n value={{\n pixel: XyPixel.instance,\n provided: true,\n }}\n >\n {children}\n </PixelContext.Provider>\n )\n}\n"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../../../src/contexts/Pixel/Provider.tsx","../../../../src/contexts/contextEx/create.ts","../../../../src/contexts/Pixel/Context.ts"],"sourcesContent":["import { XyPixel } from '@xylabs/pixel'\nimport { WithChildren } from '@xylabs/react-shared'\n\nimport { PixelContext } from './Context'\n\nexport interface PixelProviderProps {\n id: string\n}\n\nexport const PixelProvider: React.FC<WithChildren<PixelProviderProps>> = (props) => {\n const { children, id } = props\n XyPixel.init(id)\n\n return (\n <PixelContext.Provider\n value={{\n pixel: XyPixel.instance,\n provided: true,\n }}\n >\n {children}\n </PixelContext.Provider>\n )\n}\n","import { createContext } from 'react'\n\nimport { ContextExState } from './State'\n\nexport const createContextEx = <T>() => createContext<T & ContextExState>({ provided: false } as T & ContextExState)\n","import { createContextEx } from '../contextEx'\nimport { PixelContextState } from './State'\n\nexport const PixelContext = createContextEx<PixelContextState>()\n"],"mappings":";AAAA,SAAS,eAAe;;;ACAxB,SAAS,qBAAqB;AAIvB,IAAM,kBAAkB,MAAS,cAAkC,EAAE,UAAU,MAAM,CAAuB;;;ACD5G,IAAM,eAAe,gBAAmC;;;AFW3D;AALG,IAAM,gBAA4D,CAAC,UAAU;AAClF,QAAM,EAAE,UAAU,GAAG,IAAI;AACzB,UAAQ,KAAK,EAAE;AAEf,SACE;AAAA,IAAC,aAAa;AAAA,IAAb;AAAA,MACC,OAAO;AAAA,QACL,OAAO,QAAQ;AAAA,QACf,UAAU;AAAA,MACZ;AAAA,MAEC;AAAA;AAAA,EACH;AAEJ;","names":[]}
|
|
@@ -1,5 +1,46 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
// src/contexts/contextEx/create.ts
|
|
2
|
+
import { createContext } from "react";
|
|
3
|
+
var createContextEx = () => createContext({ provided: false });
|
|
4
|
+
|
|
5
|
+
// src/contexts/contextEx/use.ts
|
|
6
|
+
import { useContext } from "react";
|
|
7
|
+
var useContextEx = (context, contextName, required = true) => {
|
|
8
|
+
const { provided, ...props } = useContext(context);
|
|
9
|
+
if (!provided && required) {
|
|
10
|
+
throw Error(`use${contextName} can not be used outside of a ${contextName}Context when required=true`);
|
|
11
|
+
}
|
|
12
|
+
return props;
|
|
13
|
+
};
|
|
14
|
+
|
|
15
|
+
// src/contexts/Pixel/Context.ts
|
|
16
|
+
var PixelContext = createContextEx();
|
|
17
|
+
|
|
18
|
+
// src/contexts/Pixel/Provider.tsx
|
|
19
|
+
import { XyPixel } from "@xylabs/pixel";
|
|
20
|
+
import { jsx } from "react/jsx-runtime";
|
|
21
|
+
var PixelProvider = (props) => {
|
|
22
|
+
const { children, id } = props;
|
|
23
|
+
XyPixel.init(id);
|
|
24
|
+
return /* @__PURE__ */ jsx(
|
|
25
|
+
PixelContext.Provider,
|
|
26
|
+
{
|
|
27
|
+
value: {
|
|
28
|
+
pixel: XyPixel.instance,
|
|
29
|
+
provided: true
|
|
30
|
+
},
|
|
31
|
+
children
|
|
32
|
+
}
|
|
33
|
+
);
|
|
34
|
+
};
|
|
35
|
+
|
|
36
|
+
// src/contexts/Pixel/use.ts
|
|
37
|
+
var usePixel = (required = true) => {
|
|
38
|
+
const { pixel } = useContextEx(PixelContext, "Pixel", required);
|
|
39
|
+
return pixel;
|
|
40
|
+
};
|
|
41
|
+
export {
|
|
42
|
+
PixelContext,
|
|
43
|
+
PixelProvider,
|
|
44
|
+
usePixel
|
|
45
|
+
};
|
|
5
46
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/contexts/Pixel/
|
|
1
|
+
{"version":3,"sources":["../../../../src/contexts/contextEx/create.ts","../../../../src/contexts/contextEx/use.ts","../../../../src/contexts/Pixel/Context.ts","../../../../src/contexts/Pixel/Provider.tsx","../../../../src/contexts/Pixel/use.ts"],"sourcesContent":["import { createContext } from 'react'\n\nimport { ContextExState } from './State'\n\nexport const createContextEx = <T>() => createContext<T & ContextExState>({ provided: false } as T & ContextExState)\n","import { Context, useContext } from 'react'\n\nimport { ContextExState } from './State'\n\nexport const useContextEx = <T extends ContextExState>(context: Context<T>, contextName: string, required = true) => {\n const { provided, ...props } = useContext(context)\n if (!provided && required) {\n throw Error(`use${contextName} can not be used outside of a ${contextName}Context when required=true`)\n }\n return props\n}\n\nexport const useProvided = <T extends ContextExState>(context: Context<T>) => {\n const { provided } = useContext(context)\n return provided\n}\n","import { createContextEx } from '../contextEx'\nimport { PixelContextState } from './State'\n\nexport const PixelContext = createContextEx<PixelContextState>()\n","import { XyPixel } from '@xylabs/pixel'\nimport { WithChildren } from '@xylabs/react-shared'\n\nimport { PixelContext } from './Context'\n\nexport interface PixelProviderProps {\n id: string\n}\n\nexport const PixelProvider: React.FC<WithChildren<PixelProviderProps>> = (props) => {\n const { children, id } = props\n XyPixel.init(id)\n\n return (\n <PixelContext.Provider\n value={{\n pixel: XyPixel.instance,\n provided: true,\n }}\n >\n {children}\n </PixelContext.Provider>\n )\n}\n","import { useContextEx } from '../contextEx'\nimport { PixelContext } from './Context'\n\nexport const usePixel = (required = true) => {\n const { pixel } = useContextEx(PixelContext, 'Pixel', required)\n return pixel\n}\n"],"mappings":";AAAA,SAAS,qBAAqB;AAIvB,IAAM,kBAAkB,MAAS,cAAkC,EAAE,UAAU,MAAM,CAAuB;;;ACJnH,SAAkB,kBAAkB;AAI7B,IAAM,eAAe,CAA2B,SAAqB,aAAqB,WAAW,SAAS;AACnH,QAAM,EAAE,UAAU,GAAG,MAAM,IAAI,WAAW,OAAO;AACjD,MAAI,CAAC,YAAY,UAAU;AACzB,UAAM,MAAM,MAAM,WAAW,iCAAiC,WAAW,4BAA4B;AAAA,EACvG;AACA,SAAO;AACT;;;ACPO,IAAM,eAAe,gBAAmC;;;ACH/D,SAAS,eAAe;AAcpB;AALG,IAAM,gBAA4D,CAAC,UAAU;AAClF,QAAM,EAAE,UAAU,GAAG,IAAI;AACzB,UAAQ,KAAK,EAAE;AAEf,SACE;AAAA,IAAC,aAAa;AAAA,IAAb;AAAA,MACC,OAAO;AAAA,QACL,OAAO,QAAQ;AAAA,QACf,UAAU;AAAA,MACZ;AAAA,MAEC;AAAA;AAAA,EACH;AAEJ;;;ACpBO,IAAM,WAAW,CAAC,WAAW,SAAS;AAC3C,QAAM,EAAE,MAAM,IAAI,aAAa,cAAc,SAAS,QAAQ;AAC9D,SAAO;AACT;","names":[]}
|
|
@@ -1,6 +1,22 @@
|
|
|
1
|
-
|
|
2
|
-
import {
|
|
3
|
-
|
|
1
|
+
// src/contexts/contextEx/create.ts
|
|
2
|
+
import { createContext } from "react";
|
|
3
|
+
var createContextEx = () => createContext({ provided: false });
|
|
4
|
+
|
|
5
|
+
// src/contexts/contextEx/use.ts
|
|
6
|
+
import { useContext } from "react";
|
|
7
|
+
var useContextEx = (context, contextName, required = true) => {
|
|
8
|
+
const { provided, ...props } = useContext(context);
|
|
9
|
+
if (!provided && required) {
|
|
10
|
+
throw Error(`use${contextName} can not be used outside of a ${contextName}Context when required=true`);
|
|
11
|
+
}
|
|
12
|
+
return props;
|
|
13
|
+
};
|
|
14
|
+
|
|
15
|
+
// src/contexts/Pixel/Context.ts
|
|
16
|
+
var PixelContext = createContextEx();
|
|
17
|
+
|
|
18
|
+
// src/contexts/Pixel/use.ts
|
|
19
|
+
var usePixel = (required = true) => {
|
|
4
20
|
const { pixel } = useContextEx(PixelContext, "Pixel", required);
|
|
5
21
|
return pixel;
|
|
6
22
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/contexts/Pixel/use.ts"],"sourcesContent":["import { useContextEx } from '../contextEx'\nimport { PixelContext } from './Context'\n\nexport const usePixel = (required = true) => {\n const { pixel } = useContextEx(PixelContext, 'Pixel', required)\n return pixel\n}\n"],"mappings":"AAAA,SAAS,
|
|
1
|
+
{"version":3,"sources":["../../../../src/contexts/contextEx/create.ts","../../../../src/contexts/contextEx/use.ts","../../../../src/contexts/Pixel/Context.ts","../../../../src/contexts/Pixel/use.ts"],"sourcesContent":["import { createContext } from 'react'\n\nimport { ContextExState } from './State'\n\nexport const createContextEx = <T>() => createContext<T & ContextExState>({ provided: false } as T & ContextExState)\n","import { Context, useContext } from 'react'\n\nimport { ContextExState } from './State'\n\nexport const useContextEx = <T extends ContextExState>(context: Context<T>, contextName: string, required = true) => {\n const { provided, ...props } = useContext(context)\n if (!provided && required) {\n throw Error(`use${contextName} can not be used outside of a ${contextName}Context when required=true`)\n }\n return props\n}\n\nexport const useProvided = <T extends ContextExState>(context: Context<T>) => {\n const { provided } = useContext(context)\n return provided\n}\n","import { createContextEx } from '../contextEx'\nimport { PixelContextState } from './State'\n\nexport const PixelContext = createContextEx<PixelContextState>()\n","import { useContextEx } from '../contextEx'\nimport { PixelContext } from './Context'\n\nexport const usePixel = (required = true) => {\n const { pixel } = useContextEx(PixelContext, 'Pixel', required)\n return pixel\n}\n"],"mappings":";AAAA,SAAS,qBAAqB;AAIvB,IAAM,kBAAkB,MAAS,cAAkC,EAAE,UAAU,MAAM,CAAuB;;;ACJnH,SAAkB,kBAAkB;AAI7B,IAAM,eAAe,CAA2B,SAAqB,aAAqB,WAAW,SAAS;AACnH,QAAM,EAAE,UAAU,GAAG,MAAM,IAAI,WAAW,OAAO;AACjD,MAAI,CAAC,YAAY,UAAU;AACzB,UAAM,MAAM,MAAM,WAAW,iCAAiC,WAAW,4BAA4B;AAAA,EACvG;AACA,SAAO;AACT;;;ACPO,IAAM,eAAe,gBAAmC;;;ACAxD,IAAM,WAAW,CAAC,WAAW,SAAS;AAC3C,QAAM,EAAE,MAAM,IAAI,aAAa,cAAc,SAAS,QAAQ;AAC9D,SAAO;AACT;","names":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/contexts/contextEx/create.ts"],"sourcesContent":["import { createContext } from 'react'\n\nimport { ContextExState } from './State'\n\nexport const createContextEx = <T>() => createContext<T & ContextExState>({ provided: false } as T & ContextExState)\n"],"mappings":"AAAA,SAAS,qBAAqB;AAIvB,
|
|
1
|
+
{"version":3,"sources":["../../../../src/contexts/contextEx/create.ts"],"sourcesContent":["import { createContext } from 'react'\n\nimport { ContextExState } from './State'\n\nexport const createContextEx = <T>() => createContext<T & ContextExState>({ provided: false } as T & ContextExState)\n"],"mappings":";AAAA,SAAS,qBAAqB;AAIvB,IAAM,kBAAkB,MAAS,cAAkC,EAAE,UAAU,MAAM,CAAuB;","names":[]}
|
|
@@ -1,5 +1,23 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
// src/contexts/contextEx/create.ts
|
|
2
|
+
import { createContext } from "react";
|
|
3
|
+
var createContextEx = () => createContext({ provided: false });
|
|
4
|
+
|
|
5
|
+
// src/contexts/contextEx/use.ts
|
|
6
|
+
import { useContext } from "react";
|
|
7
|
+
var useContextEx = (context, contextName, required = true) => {
|
|
8
|
+
const { provided, ...props } = useContext(context);
|
|
9
|
+
if (!provided && required) {
|
|
10
|
+
throw Error(`use${contextName} can not be used outside of a ${contextName}Context when required=true`);
|
|
11
|
+
}
|
|
12
|
+
return props;
|
|
13
|
+
};
|
|
14
|
+
var useProvided = (context) => {
|
|
15
|
+
const { provided } = useContext(context);
|
|
16
|
+
return provided;
|
|
17
|
+
};
|
|
18
|
+
export {
|
|
19
|
+
createContextEx,
|
|
20
|
+
useContextEx,
|
|
21
|
+
useProvided
|
|
22
|
+
};
|
|
5
23
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/contexts/contextEx/
|
|
1
|
+
{"version":3,"sources":["../../../../src/contexts/contextEx/create.ts","../../../../src/contexts/contextEx/use.ts"],"sourcesContent":["import { createContext } from 'react'\n\nimport { ContextExState } from './State'\n\nexport const createContextEx = <T>() => createContext<T & ContextExState>({ provided: false } as T & ContextExState)\n","import { Context, useContext } from 'react'\n\nimport { ContextExState } from './State'\n\nexport const useContextEx = <T extends ContextExState>(context: Context<T>, contextName: string, required = true) => {\n const { provided, ...props } = useContext(context)\n if (!provided && required) {\n throw Error(`use${contextName} can not be used outside of a ${contextName}Context when required=true`)\n }\n return props\n}\n\nexport const useProvided = <T extends ContextExState>(context: Context<T>) => {\n const { provided } = useContext(context)\n return provided\n}\n"],"mappings":";AAAA,SAAS,qBAAqB;AAIvB,IAAM,kBAAkB,MAAS,cAAkC,EAAE,UAAU,MAAM,CAAuB;;;ACJnH,SAAkB,kBAAkB;AAI7B,IAAM,eAAe,CAA2B,SAAqB,aAAqB,WAAW,SAAS;AACnH,QAAM,EAAE,UAAU,GAAG,MAAM,IAAI,WAAW,OAAO;AACjD,MAAI,CAAC,YAAY,UAAU;AACzB,UAAM,MAAM,MAAM,WAAW,iCAAiC,WAAW,4BAA4B;AAAA,EACvG;AACA,SAAO;AACT;AAEO,IAAM,cAAc,CAA2B,YAAwB;AAC5E,QAAM,EAAE,SAAS,IAAI,WAAW,OAAO;AACvC,SAAO;AACT;","names":[]}
|
|
@@ -1,12 +1,13 @@
|
|
|
1
|
+
// src/contexts/contextEx/use.ts
|
|
1
2
|
import { useContext } from "react";
|
|
2
|
-
|
|
3
|
+
var useContextEx = (context, contextName, required = true) => {
|
|
3
4
|
const { provided, ...props } = useContext(context);
|
|
4
5
|
if (!provided && required) {
|
|
5
6
|
throw Error(`use${contextName} can not be used outside of a ${contextName}Context when required=true`);
|
|
6
7
|
}
|
|
7
8
|
return props;
|
|
8
9
|
};
|
|
9
|
-
|
|
10
|
+
var useProvided = (context) => {
|
|
10
11
|
const { provided } = useContext(context);
|
|
11
12
|
return provided;
|
|
12
13
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/contexts/contextEx/use.ts"],"sourcesContent":["import { Context, useContext } from 'react'\n\nimport { ContextExState } from './State'\n\nexport const useContextEx = <T extends ContextExState>(context: Context<T>, contextName: string, required = true) => {\n const { provided, ...props } = useContext(context)\n if (!provided && required) {\n throw Error(`use${contextName} can not be used outside of a ${contextName}Context when required=true`)\n }\n return props\n}\n\nexport const useProvided = <T extends ContextExState>(context: Context<T>) => {\n const { provided } = useContext(context)\n return provided\n}\n"],"mappings":"AAAA,SAAkB,kBAAkB;AAI7B,
|
|
1
|
+
{"version":3,"sources":["../../../../src/contexts/contextEx/use.ts"],"sourcesContent":["import { Context, useContext } from 'react'\n\nimport { ContextExState } from './State'\n\nexport const useContextEx = <T extends ContextExState>(context: Context<T>, contextName: string, required = true) => {\n const { provided, ...props } = useContext(context)\n if (!provided && required) {\n throw Error(`use${contextName} can not be used outside of a ${contextName}Context when required=true`)\n }\n return props\n}\n\nexport const useProvided = <T extends ContextExState>(context: Context<T>) => {\n const { provided } = useContext(context)\n return provided\n}\n"],"mappings":";AAAA,SAAkB,kBAAkB;AAI7B,IAAM,eAAe,CAA2B,SAAqB,aAAqB,WAAW,SAAS;AACnH,QAAM,EAAE,UAAU,GAAG,MAAM,IAAI,WAAW,OAAO;AACjD,MAAI,CAAC,YAAY,UAAU;AACzB,UAAM,MAAM,MAAM,WAAW,iCAAiC,WAAW,4BAA4B;AAAA,EACvG;AACA,SAAO;AACT;AAEO,IAAM,cAAc,CAA2B,YAAwB;AAC5E,QAAM,EAAE,SAAS,IAAI,WAAW,OAAO;AACvC,SAAO;AACT;","names":[]}
|
|
@@ -1,5 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
// src/contexts/contextEx/create.ts
|
|
2
|
+
import { createContext } from "react";
|
|
3
|
+
var createContextEx = () => createContext({ provided: false });
|
|
4
|
+
|
|
5
|
+
// src/contexts/diviner/Context.tsx
|
|
6
|
+
var ResolvedDivinerContext = () => createContextEx();
|
|
3
7
|
export {
|
|
4
8
|
ResolvedDivinerContext
|
|
5
9
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/contexts/diviner/Context.tsx"],"sourcesContent":["import { createContextEx } from '../contextEx'\n\nexport const ResolvedDivinerContext = <T,>() => createContextEx<T>()\n"],"mappings":"AAAA,SAAS,
|
|
1
|
+
{"version":3,"sources":["../../../../src/contexts/contextEx/create.ts","../../../../src/contexts/diviner/Context.tsx"],"sourcesContent":["import { createContext } from 'react'\n\nimport { ContextExState } from './State'\n\nexport const createContextEx = <T>() => createContext<T & ContextExState>({ provided: false } as T & ContextExState)\n","import { createContextEx } from '../contextEx'\n\nexport const ResolvedDivinerContext = <T,>() => createContextEx<T>()\n"],"mappings":";AAAA,SAAS,qBAAqB;AAIvB,IAAM,kBAAkB,MAAS,cAAkC,EAAE,UAAU,MAAM,CAAuB;;;ACF5G,IAAM,yBAAyB,MAAU,gBAAmB;","names":[]}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
|
|
1
|
+
// src/contexts/diviner/Provider.tsx
|
|
2
2
|
import { useEffect, useState } from "react";
|
|
3
|
-
|
|
3
|
+
import { jsx } from "react/jsx-runtime";
|
|
4
|
+
var ResolvedDivinerProvider = ({ diviner: divinerProp, required = false, children, context }) => {
|
|
4
5
|
const [diviner, setDiviner] = useState(divinerProp);
|
|
5
6
|
useEffect(() => {
|
|
6
7
|
if (divinerProp) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/contexts/diviner/Provider.tsx"],"sourcesContent":["import { WithChildren } from '@xylabs/react-shared'\nimport { Context, useEffect, useState } from 'react'\n\nimport { ContextExProviderProps } from '../contextEx'\nimport { ResolvedDivinerState } from './State'\n\nexport interface DivinerProviderProps<D> extends ContextExProviderProps, WithChildren {\n context: Context<ResolvedDivinerState<D>>\n diviner?: D\n}\n\n/** Exposes a resolved diviner */\nexport const ResolvedDivinerProvider = <D,>({ diviner: divinerProp, required = false, children, context }: DivinerProviderProps<D>) => {\n const [diviner, setDiviner] = useState<D | undefined>(divinerProp)\n\n useEffect(() => {\n if (divinerProp) {\n setDiviner(divinerProp)\n }\n }, [divinerProp, setDiviner])\n\n const resolveDiviner = () => {\n if (divinerProp) {\n return diviner === divinerProp ? diviner : undefined\n } else {\n return diviner\n }\n }\n\n return (\n <context.Provider\n value={{\n diviner: resolveDiviner(),\n provided: true,\n setDiviner,\n }}\n >\n {diviner ? children : required ? null : children}\n </context.Provider>\n )\n}\n"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../../../src/contexts/diviner/Provider.tsx"],"sourcesContent":["import { WithChildren } from '@xylabs/react-shared'\nimport { Context, useEffect, useState } from 'react'\n\nimport { ContextExProviderProps } from '../contextEx'\nimport { ResolvedDivinerState } from './State'\n\nexport interface DivinerProviderProps<D> extends ContextExProviderProps, WithChildren {\n context: Context<ResolvedDivinerState<D>>\n diviner?: D\n}\n\n/** Exposes a resolved diviner */\nexport const ResolvedDivinerProvider = <D,>({ diviner: divinerProp, required = false, children, context }: DivinerProviderProps<D>) => {\n const [diviner, setDiviner] = useState<D | undefined>(divinerProp)\n\n useEffect(() => {\n if (divinerProp) {\n setDiviner(divinerProp)\n }\n }, [divinerProp, setDiviner])\n\n const resolveDiviner = () => {\n if (divinerProp) {\n return diviner === divinerProp ? diviner : undefined\n } else {\n return diviner\n }\n }\n\n return (\n <context.Provider\n value={{\n diviner: resolveDiviner(),\n provided: true,\n setDiviner,\n }}\n >\n {diviner ? children : required ? null : children}\n </context.Provider>\n )\n}\n"],"mappings":";AACA,SAAkB,WAAW,gBAAgB;AA6BzC;AAlBG,IAAM,0BAA0B,CAAK,EAAE,SAAS,aAAa,WAAW,OAAO,UAAU,QAAQ,MAA+B;AACrI,QAAM,CAAC,SAAS,UAAU,IAAI,SAAwB,WAAW;AAEjE,YAAU,MAAM;AACd,QAAI,aAAa;AACf,iBAAW,WAAW;AAAA,IACxB;AAAA,EACF,GAAG,CAAC,aAAa,UAAU,CAAC;AAE5B,QAAM,iBAAiB,MAAM;AAC3B,QAAI,aAAa;AACf,aAAO,YAAY,cAAc,UAAU;AAAA,IAC7C,OAAO;AACL,aAAO;AAAA,IACT;AAAA,EACF;AAEA,SACE;AAAA,IAAC,QAAQ;AAAA,IAAR;AAAA,MACC,OAAO;AAAA,QACL,SAAS,eAAe;AAAA,QACxB,UAAU;AAAA,QACV;AAAA,MACF;AAAA,MAEC,oBAAU,WAAW,WAAW,OAAO;AAAA;AAAA,EAC1C;AAEJ;","names":[]}
|