@xyo-network/react-shared 2.64.0 → 2.64.1

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.
Files changed (147) hide show
  1. package/dist/browser/components/Ampersand.js +3 -2
  2. package/dist/browser/components/Ampersand.js.map +1 -1
  3. package/dist/browser/components/BasicHero/BasicHero.js +71 -5
  4. package/dist/browser/components/BasicHero/BasicHero.js.map +1 -1
  5. package/dist/browser/components/BasicHero/index.js +203 -1
  6. package/dist/browser/components/BasicHero/index.js.map +1 -1
  7. package/dist/browser/components/Ellipsize.js +28 -8
  8. package/dist/browser/components/Ellipsize.js.map +1 -1
  9. package/dist/browser/components/ErrorBoundary.js +4 -3
  10. package/dist/browser/components/ErrorBoundary.js.map +1 -1
  11. package/dist/browser/components/ListItemButtonEx.js +4 -3
  12. package/dist/browser/components/ListItemButtonEx.js.map +1 -1
  13. package/dist/browser/components/LoadResult.js +19 -6
  14. package/dist/browser/components/LoadResult.js.map +1 -1
  15. package/dist/browser/components/NotFound.js +3 -2
  16. package/dist/browser/components/NotFound.js.map +1 -1
  17. package/dist/browser/components/Pipe.js +3 -2
  18. package/dist/browser/components/Pipe.js.map +1 -1
  19. package/dist/browser/components/ScrollTableOnSm.js +4 -3
  20. package/dist/browser/components/ScrollTableOnSm.js.map +1 -1
  21. package/dist/browser/components/SectionSpacingRow/SectionSpacingRow.js +3 -2
  22. package/dist/browser/components/SectionSpacingRow/SectionSpacingRow.js.map +1 -1
  23. package/dist/browser/components/SectionSpacingRow/index.js +26 -1
  24. package/dist/browser/components/SectionSpacingRow/index.js.map +1 -1
  25. package/dist/browser/components/StyleGuide/AppBars.example.js +3 -2
  26. package/dist/browser/components/StyleGuide/AppBars.example.js.map +1 -1
  27. package/dist/browser/components/StyleGuide/Buttons.example.js +5 -4
  28. package/dist/browser/components/StyleGuide/Buttons.example.js.map +1 -1
  29. package/dist/browser/components/StyleGuide/Papers.example.js +3 -2
  30. package/dist/browser/components/StyleGuide/Papers.example.js.map +1 -1
  31. package/dist/browser/components/StyleGuide/StyleGuide.example.js +99 -12
  32. package/dist/browser/components/StyleGuide/StyleGuide.example.js.map +1 -1
  33. package/dist/browser/components/StyleGuide/Texts.example.js +3 -2
  34. package/dist/browser/components/StyleGuide/Texts.example.js.map +1 -1
  35. package/dist/browser/components/StyleGuide/VariantContext.example.js +2 -1
  36. package/dist/browser/components/StyleGuide/VariantContext.example.js.map +1 -1
  37. package/dist/browser/components/TableCell/AddressTableCell.js +124 -4
  38. package/dist/browser/components/TableCell/AddressTableCell.js.map +1 -1
  39. package/dist/browser/components/TableCell/EllipsisTableCell.js +98 -9
  40. package/dist/browser/components/TableCell/EllipsisTableCell.js.map +1 -1
  41. package/dist/browser/components/TableCell/EllipsisTableCellDeprecated.js +107 -6
  42. package/dist/browser/components/TableCell/EllipsisTableCellDeprecated.js.map +1 -1
  43. package/dist/browser/components/TableCell/HashTableCell.js +126 -6
  44. package/dist/browser/components/TableCell/HashTableCell.js.map +1 -1
  45. package/dist/browser/components/TableCell/findParent.js +2 -1
  46. package/dist/browser/components/TableCell/findParent.js.map +1 -1
  47. package/dist/browser/components/TableCell/getRemainingRowWidth.js +2 -1
  48. package/dist/browser/components/TableCell/getRemainingRowWidth.js.map +1 -1
  49. package/dist/browser/components/TableCell/getSmallestParentWidth.js +2 -1
  50. package/dist/browser/components/TableCell/getSmallestParentWidth.js.map +1 -1
  51. package/dist/browser/components/TableCell/index.js +160 -3
  52. package/dist/browser/components/TableCell/index.js.map +1 -1
  53. package/dist/browser/components/ThemeTokenAvatar/ThemeTokenAvatar.js +3 -2
  54. package/dist/browser/components/ThemeTokenAvatar/ThemeTokenAvatar.js.map +1 -1
  55. package/dist/browser/components/ThemeTokenAvatar/index.js +10 -1
  56. package/dist/browser/components/ThemeTokenAvatar/index.js.map +1 -1
  57. package/dist/browser/components/ThemeTokenAvatarGroup/ThemeTokenAvatarGroup.js +14 -4
  58. package/dist/browser/components/ThemeTokenAvatarGroup/ThemeTokenAvatarGroup.js.map +1 -1
  59. package/dist/browser/components/ThemeTokenAvatarGroup/index.js +19 -1
  60. package/dist/browser/components/ThemeTokenAvatarGroup/index.js.map +1 -1
  61. package/dist/browser/components/TokenBar/TokenBar.js +3 -2
  62. package/dist/browser/components/TokenBar/TokenBar.js.map +1 -1
  63. package/dist/browser/components/TokenBar/index.js +19 -1
  64. package/dist/browser/components/TokenBar/index.js.map +1 -1
  65. package/dist/browser/components/TokenData/TokenData.js +34 -17
  66. package/dist/browser/components/TokenData/TokenData.js.map +1 -1
  67. package/dist/browser/components/TokenData/img/index.js +1 -0
  68. package/dist/browser/components/TokenData/img/index.js.map +1 -1
  69. package/dist/browser/components/TokenData/index.js +153 -2
  70. package/dist/browser/components/TokenData/index.js.map +1 -1
  71. package/dist/browser/components/TokenData/useGetTokenData.js +143 -2
  72. package/dist/browser/components/TokenData/useGetTokenData.js.map +1 -1
  73. package/dist/browser/components/TokenSummary/TokenSummary.js +16 -6
  74. package/dist/browser/components/TokenSummary/TokenSummary.js.map +1 -1
  75. package/dist/browser/components/TokenSummary/index.js +29 -1
  76. package/dist/browser/components/TokenSummary/index.js.map +1 -1
  77. package/dist/browser/components/TypographyEx.js +57 -3
  78. package/dist/browser/components/TypographyEx.js.map +1 -1
  79. package/dist/browser/components/index.js +730 -18
  80. package/dist/browser/components/index.js.map +1 -1
  81. package/dist/browser/components/pluginValidation/DataMissing.js +3 -2
  82. package/dist/browser/components/pluginValidation/DataMissing.js.map +1 -1
  83. package/dist/browser/components/pluginValidation/index.js +12 -1
  84. package/dist/browser/components/pluginValidation/index.js.map +1 -1
  85. package/dist/browser/contexts/ListMode/Context.js +6 -2
  86. package/dist/browser/contexts/ListMode/Context.js.map +1 -1
  87. package/dist/browser/contexts/ListMode/Provider.js +12 -3
  88. package/dist/browser/contexts/ListMode/Provider.js.map +1 -1
  89. package/dist/browser/contexts/ListMode/index.js +44 -4
  90. package/dist/browser/contexts/ListMode/index.js.map +1 -1
  91. package/dist/browser/contexts/ListMode/use.js +19 -3
  92. package/dist/browser/contexts/ListMode/use.js.map +1 -1
  93. package/dist/browser/contexts/Pixel/Context.js +6 -2
  94. package/dist/browser/contexts/Pixel/Context.js.map +1 -1
  95. package/dist/browser/contexts/Pixel/Provider.js +12 -3
  96. package/dist/browser/contexts/Pixel/Provider.js.map +1 -1
  97. package/dist/browser/contexts/Pixel/index.js +45 -4
  98. package/dist/browser/contexts/Pixel/index.js.map +1 -1
  99. package/dist/browser/contexts/Pixel/use.js +19 -3
  100. package/dist/browser/contexts/Pixel/use.js.map +1 -1
  101. package/dist/browser/contexts/contextEx/create.js +2 -1
  102. package/dist/browser/contexts/contextEx/create.js.map +1 -1
  103. package/dist/browser/contexts/contextEx/index.js +22 -4
  104. package/dist/browser/contexts/contextEx/index.js.map +1 -1
  105. package/dist/browser/contexts/contextEx/use.js +3 -2
  106. package/dist/browser/contexts/contextEx/use.js.map +1 -1
  107. package/dist/browser/contexts/diviner/Context.js +6 -2
  108. package/dist/browser/contexts/diviner/Context.js.map +1 -1
  109. package/dist/browser/contexts/diviner/Provider.js +3 -2
  110. package/dist/browser/contexts/diviner/Provider.js.map +1 -1
  111. package/dist/browser/contexts/diviner/index.js +40 -3
  112. package/dist/browser/contexts/diviner/index.js.map +1 -1
  113. package/dist/browser/contexts/index.js +116 -4
  114. package/dist/browser/contexts/index.js.map +1 -1
  115. package/dist/browser/hooks/GradientStyles/GradientStyles.js +4 -3
  116. package/dist/browser/hooks/GradientStyles/GradientStyles.js.map +1 -1
  117. package/dist/browser/hooks/GradientStyles/index.js +56 -1
  118. package/dist/browser/hooks/GradientStyles/index.js.map +1 -1
  119. package/dist/browser/hooks/index.js +126 -7
  120. package/dist/browser/hooks/index.js.map +1 -1
  121. package/dist/browser/hooks/useDataState.js +2 -1
  122. package/dist/browser/hooks/useDataState.js.map +1 -1
  123. package/dist/browser/hooks/useIsMobile.js +7 -2
  124. package/dist/browser/hooks/useIsMobile.js.map +1 -1
  125. package/dist/browser/hooks/useMediaQuery.js +1 -0
  126. package/dist/browser/hooks/useMediaQuery.js.map +1 -1
  127. package/dist/browser/hooks/usePayloadHash.js +3 -2
  128. package/dist/browser/hooks/usePayloadHash.js.map +1 -1
  129. package/dist/browser/hooks/usePromise.js +2 -1
  130. package/dist/browser/hooks/usePromise.js.map +1 -1
  131. package/dist/browser/hooks/useShareForwardRef.js +2 -1
  132. package/dist/browser/hooks/useShareForwardRef.js.map +1 -1
  133. package/dist/browser/index.js +988 -6
  134. package/dist/browser/index.js.map +1 -1
  135. package/dist/browser/lib/assertDefinedEx.js +2 -1
  136. package/dist/browser/lib/assertDefinedEx.js.map +1 -1
  137. package/dist/browser/lib/getActualPaddingX.js +4 -3
  138. package/dist/browser/lib/getActualPaddingX.js.map +1 -1
  139. package/dist/browser/lib/index.js +101 -3
  140. package/dist/browser/lib/index.js.map +1 -1
  141. package/dist/browser/lib/networkComponents.js +5 -4
  142. package/dist/browser/lib/networkComponents.js.map +1 -1
  143. package/dist/browser/lib/xyo.js +3 -2
  144. package/dist/browser/lib/xyo.js.map +1 -1
  145. package/dist/browser/models/index.js +0 -1
  146. package/dist/browser/models/index.js.map +1 -1
  147. 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 &amp;\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}&nbsp;</span> : null}\n <Typography>{subLinkText1}&nbsp;</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":"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","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
- import { jsx, jsxs } from "react/jsx-runtime";
1
+ // src/components/pluginValidation/DataMissing.tsx
2
2
  import { Alert, AlertTitle } from "@mui/material";
3
- const PayloadDataMissing = ({ alertBody, ...props }) => {
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":"AAQI,SACE,KADF;AARJ,SAAS,OAAmB,kBAAkB;AAMvC,MAAM,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
+ {"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
- export * from "./DataMissing";
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/index.ts"],"sourcesContent":["export * from './DataMissing'\n"],"mappings":"AAAA,cAAc;","names":[]}
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
- import { createContextEx } from "../contextEx";
2
- const ListModeContext = createContextEx();
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,uBAAuB;AAGzB,MAAM,kBAAkB,gBAAsC;","names":[]}
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
- import { jsx } from "react/jsx-runtime";
1
+ // src/contexts/ListMode/Provider.tsx
2
2
  import { useState } from "react";
3
- import { ListModeContext } from "./Context";
4
- const ListModeProvider = ({ children, defaultListMode }) => {
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":"AAcI;AAbJ,SAAS,gBAAgB;AAGzB,SAAS,uBAAuB;AAMzB,MAAM,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
+ {"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
- export * from "./Context";
2
- export * from "./Provider";
3
- export * from "./State";
4
- export * from "./use";
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/index.ts"],"sourcesContent":["export * from './Context'\nexport * from './Provider'\nexport * from './State'\nexport * from './use'\n"],"mappings":"AAAA,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;","names":[]}
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
- import { useContextEx } from "../contextEx";
2
- import { ListModeContext } from "./Context";
3
- const useListMode = (required = false) => {
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,oBAAoB;AAC7B,SAAS,uBAAuB;AAEzB,MAAM,cAAc,CAAC,WAAW,UAAU;AAC/C,SAAO,aAAa,iBAAiB,YAAY,QAAQ;AAC3D;","names":[]}
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
- import { createContextEx } from "../contextEx";
2
- const PixelContext = createContextEx();
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,uBAAuB;AAGzB,MAAM,eAAe,gBAAmC;","names":[]}
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
- import { jsx } from "react/jsx-runtime";
1
+ // src/contexts/Pixel/Provider.tsx
2
2
  import { XyPixel } from "@xylabs/pixel";
3
- import { PixelContext } from "./Context";
4
- const PixelProvider = (props) => {
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":"AAcI;AAdJ,SAAS,eAAe;AAGxB,SAAS,oBAAoB;AAMtB,MAAM,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
+ {"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
- export * from "./Context";
2
- export * from "./Provider";
3
- export * from "./State";
4
- export * from "./use";
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/index.ts"],"sourcesContent":["export * from './Context'\nexport * from './Provider'\nexport * from './State'\nexport * from './use'\n"],"mappings":"AAAA,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;","names":[]}
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
- import { useContextEx } from "../contextEx";
2
- import { PixelContext } from "./Context";
3
- const usePixel = (required = true) => {
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,oBAAoB;AAC7B,SAAS,oBAAoB;AAEtB,MAAM,WAAW,CAAC,WAAW,SAAS;AAC3C,QAAM,EAAE,MAAM,IAAI,aAAa,cAAc,SAAS,QAAQ;AAC9D,SAAO;AACT;","names":[]}
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,5 +1,6 @@
1
+ // src/contexts/contextEx/create.ts
1
2
  import { createContext } from "react";
2
- const createContextEx = () => createContext({ provided: false });
3
+ var createContextEx = () => createContext({ provided: false });
3
4
  export {
4
5
  createContextEx
5
6
  };
@@ -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,MAAM,kBAAkB,MAAS,cAAkC,EAAE,UAAU,MAAM,CAAuB;","names":[]}
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
- export * from "./ContextExProviderProps";
2
- export * from "./create";
3
- export * from "./State";
4
- export * from "./use";
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/index.ts"],"sourcesContent":["export * from './ContextExProviderProps'\nexport * from './create'\nexport * from './State'\nexport * from './use'\n"],"mappings":"AAAA,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;","names":[]}
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
- const useContextEx = (context, contextName, required = true) => {
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
- const useProvided = (context) => {
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,MAAM,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,MAAM,cAAc,CAA2B,YAAwB;AAC5E,QAAM,EAAE,SAAS,IAAI,WAAW,OAAO;AACvC,SAAO;AACT;","names":[]}
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
- import { createContextEx } from "../contextEx";
2
- const ResolvedDivinerContext = () => createContextEx();
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,uBAAuB;AAEzB,MAAM,yBAAyB,MAAU,gBAAmB;","names":[]}
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
- import { jsx } from "react/jsx-runtime";
1
+ // src/contexts/diviner/Provider.tsx
2
2
  import { useEffect, useState } from "react";
3
- const ResolvedDivinerProvider = ({ diviner: divinerProp, required = false, children, context }) => {
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":"AA8BI;AA7BJ,SAAkB,WAAW,gBAAgB;AAWtC,MAAM,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":[]}
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":[]}