@xyo-network/react-property 5.2.1 → 5.2.3
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/index.mjs
CHANGED
|
@@ -8,10 +8,10 @@ import { typeOf } from "@xyo-network/typeof";
|
|
|
8
8
|
import React2 from "react";
|
|
9
9
|
|
|
10
10
|
// src/components/Title.tsx
|
|
11
|
-
import {
|
|
11
|
+
import { Typography, useColorScheme, useTheme } from "@mui/material";
|
|
12
12
|
import { FlexRow } from "@xylabs/react-flexbox";
|
|
13
13
|
import { QuickTipButton } from "@xylabs/react-quick-tip-button";
|
|
14
|
-
import { useIsDark } from "@xylabs/react-theme";
|
|
14
|
+
import { darkenCss, useIsDark } from "@xylabs/react-theme";
|
|
15
15
|
import React from "react";
|
|
16
16
|
var PropertyTitle = /* @__PURE__ */ __name(({ elevation = 1, size = "medium", tip, more, title, ...props }) => {
|
|
17
17
|
const sizeVariants = {
|
|
@@ -37,7 +37,7 @@ var PropertyTitle = /* @__PURE__ */ __name(({ elevation = 1, size = "medium", ti
|
|
|
37
37
|
const {} = useColorScheme();
|
|
38
38
|
const isDark = useIsDark();
|
|
39
39
|
return /* @__PURE__ */ React.createElement(FlexRow, {
|
|
40
|
-
bgcolor: isDark ?
|
|
40
|
+
bgcolor: isDark ? darkenCss(theme.vars.palette.background.paper, 0.75 * elevation) : darkenCss(theme.vars.palette.background.paper, 0.025 * elevation),
|
|
41
41
|
alignItems: "center",
|
|
42
42
|
height: sizeTitleHeight[size],
|
|
43
43
|
justifyContent: "space-between",
|
|
@@ -81,7 +81,7 @@ var PropertyGroupBox = /* @__PURE__ */ __name(({ titleProps, children, title, ti
|
|
|
81
81
|
return child ? /* @__PURE__ */ React2.createElement(FlexGrowRow, {
|
|
82
82
|
key: index,
|
|
83
83
|
borderLeft: 1,
|
|
84
|
-
borderColor: theme.palette.divider
|
|
84
|
+
borderColor: theme.vars.palette.divider
|
|
85
85
|
}, child) : null;
|
|
86
86
|
})) : /* @__PURE__ */ React2.createElement(FlexGrowRow, {
|
|
87
87
|
overflow: "hidden"
|
|
@@ -165,7 +165,7 @@ var IdenticonCorner = /* @__PURE__ */ __name(({ value, ...props }) => {
|
|
|
165
165
|
background: true,
|
|
166
166
|
height: calculatedHeight,
|
|
167
167
|
width: calculatedHeight,
|
|
168
|
-
borderLeft: `1px solid ${theme.palette.divider}`
|
|
168
|
+
borderLeft: `1px solid ${theme.vars.palette.divider}`
|
|
169
169
|
}, /* @__PURE__ */ React4.createElement("div", {
|
|
170
170
|
ref
|
|
171
171
|
}, /* @__PURE__ */ React4.createElement(Identicon, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/components/Group.tsx","../../src/components/Title.tsx","../../src/components/Property.tsx","../../src/components/ActionsMenu.tsx","../../src/components/IdenticonCorner.tsx","../../src/components/Value.tsx"],"sourcesContent":["import { Paper, useTheme } from '@mui/material'\nimport {\n FlexCol, FlexGrowRow, FlexRow,\n} from '@xylabs/react-flexbox'\nimport { typeOf } from '@xyo-network/typeof'\nimport type { ReactElement } from 'react'\nimport React from 'react'\n\nimport type {\n PropertyGroupBoxProps, PropertyGroupPaperProps, PropertyGroupProps,\n} from './Props.ts'\nimport { PropertyTitle } from './Title.tsx'\n\nconst PropertyGroupBox: React.FC<PropertyGroupBoxProps> = ({\n titleProps, children, title, tip, ...props\n}) => {\n const theme = useTheme()\n const childrenArray = typeOf(children) === 'array' ? (children as ReactElement[]) : undefined\n return (\n <FlexCol alignItems=\"stretch\" overflow=\"hidden\" {...props}>\n <FlexRow overflow=\"hidden\" justifyContent=\"stretch\" alignItems=\"stretch\">\n <PropertyTitle alignItems=\"flex-start\" size=\"full\" title={title} tip={tip} {...titleProps} />\n {childrenArray\n ? (\n <FlexGrowRow>\n {childrenArray?.map((child, index) => {\n return child\n ? (\n <FlexGrowRow key={index} borderLeft={1} borderColor={theme.palette.divider}>\n {child}\n </FlexGrowRow>\n )\n : null\n })}\n </FlexGrowRow>\n )\n : <FlexGrowRow overflow=\"hidden\">{children}</FlexGrowRow>}\n </FlexRow>\n </FlexCol>\n )\n}\n\nconst PropertyGroupPaper: React.FC<PropertyGroupPaperProps> = ({\n style, variant, elevation, square, ...props\n}) => {\n return (\n <Paper\n style={{\n minWidth: 0, overflow: 'hidden', ...style,\n }}\n variant={variant}\n elevation={elevation}\n square={square}\n >\n <PropertyGroupBox {...props} paper={false} />\n </Paper>\n )\n}\n\nexport const PropertyGroup: React.FC<PropertyGroupProps> = (props) => {\n return props.paper ? <PropertyGroupPaper {...props} /> : <PropertyGroupBox {...props} />\n}\n","import type { TypographyVariant } from '@mui/material'\nimport {\n darken, lighten, Typography, useColorScheme, useTheme,\n} from '@mui/material'\nimport type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { FlexRow } from '@xylabs/react-flexbox'\nimport { QuickTipButton } from '@xylabs/react-quick-tip-button'\nimport { useIsDark } from '@xylabs/react-theme'\nimport type { SizeProp } from '@xyo-network/react-shared'\nimport type { ReactNode } from 'react'\nimport React from 'react'\n\nexport type TitleSizeProp = SizeProp | 'full'\n\nexport interface PropertyTitleProps extends FlexBoxProps {\n elevation?: number\n more?: ReactNode\n size?: TitleSizeProp\n tip?: ReactNode\n title?: string\n}\n\nexport const PropertyTitle: React.FC<PropertyTitleProps> = ({\n elevation = 1, size = 'medium', tip, more, title, ...props\n}) => {\n const sizeVariants: Record<TitleSizeProp, TypographyVariant> = {\n full: 'caption',\n large: 'caption',\n medium: 'caption',\n small: 'caption',\n }\n\n const sizeTitleHeight: Record<TitleSizeProp, number | undefined> = {\n full: undefined,\n large: 32,\n medium: 20,\n small: 16,\n }\n\n const sizeFontSize: Record<TitleSizeProp, number> = {\n full: 16,\n large: 16,\n medium: 14,\n small: 10,\n }\n\n const quickTipSize = Math.min(sizeFontSize[size], 16)\n\n const theme = useTheme()\n const {} = useColorScheme()\n const isDark = useIsDark()\n\n return (\n <FlexRow\n bgcolor={\n isDark\n ? darken(theme.palette.background.paper, 0.75 * elevation)\n : darken(theme.palette.background.paper, 0.025 * elevation)\n }\n alignItems=\"center\"\n height={sizeTitleHeight[size]}\n justifyContent=\"space-between\"\n {...props}\n >\n <FlexRow paddingX={1} paddingY={0.5}>\n <Typography fontWeight={500} noWrap variant={sizeVariants[size]} fontSize={sizeFontSize[size]}>\n <small>\n <strong>{title}</strong>\n </small>\n </Typography>\n {tip\n ? (\n <QuickTipButton style={{ fontSize: quickTipSize }} color=\"inherit\" title={title ?? ''}>\n {tip}\n </QuickTipButton>\n )\n : null}\n </FlexRow>\n {more}\n </FlexRow>\n )\n}\n","import type { TypographyVariant } from '@mui/material'\nimport { CircularProgress, Paper } from '@mui/material'\nimport { FlexRow } from '@xylabs/react-flexbox'\nimport type { SizeProp } from '@xyo-network/react-shared'\nimport React from 'react'\n\nimport { PropertyActionsMenu } from './ActionsMenu.tsx'\nimport { IdenticonCorner } from './IdenticonCorner.tsx'\nimport type {\n PropertyBoxProps, PropertyPaperProps, PropertyProps,\n} from './Props.ts'\nimport { PropertyTitle } from './Title.tsx'\nimport { PropertyValue } from './Value.tsx'\n\nconst PropertyBox: React.FC<PropertyBoxProps> = ({\n titleProps, title, value, children, size = 'medium', tip, actions, required, badge = false, ...props\n}) => {\n const sizeValueHeight: Record<SizeProp, number> = {\n large: 48,\n medium: 36,\n small: 24,\n }\n\n const sizeVariants: Record<SizeProp, TypographyVariant> = {\n large: 'h6',\n medium: 'body1',\n small: 'body2',\n }\n\n return (\n <FlexRow flexDirection=\"column\" minWidth={0} alignItems=\"stretch\" overflow=\"hidden\" {...props}>\n {title === undefined\n ? null\n : (\n <PropertyTitle\n tip={tip}\n title={required ? `${title}*` : title}\n size={size}\n more={<PropertyActionsMenu actions={actions} />}\n {...titleProps}\n />\n )}\n <FlexRow\n pl={1}\n columnGap={1}\n justifyContent={value === undefined ? 'center' : 'space-between'}\n overflow=\"hidden\"\n height={sizeValueHeight[size]}\n >\n {children ?? ((value === undefined)\n ? <CircularProgress size={16} />\n : <PropertyValue value={value} typographyVariant={sizeVariants[size]} />)}\n {value === undefined\n ? null\n : badge\n ? <IdenticonCorner value={value} />\n : null}\n </FlexRow>\n </FlexRow>\n )\n}\nPropertyBox.displayName = 'PropertyBox'\n\nconst PropertyPaper: React.FC<PropertyPaperProps> = ({\n ref, style, variant, elevation = 2, square, ...props\n}) => {\n return (\n <Paper\n ref={ref}\n style={{\n minWidth: 0, overflow: 'hidden', ...style,\n }}\n variant={variant}\n elevation={elevation}\n square={square}\n >\n <PropertyBox {...props} paper={false} />\n </Paper>\n )\n}\nPropertyPaper.displayName = 'PropertyPaper'\n\nexport const Property: React.FC<PropertyProps> = ({ ...props }) => {\n return props.paper ? <PropertyPaper {...props} /> : <PropertyBox {...props} />\n}\nProperty.displayName = 'Property'\n","import { MoreHoriz as MoreHorizIcon } from '@mui/icons-material'\nimport {\n IconButton, Menu, MenuItem,\n} from '@mui/material'\nimport { FlexRow } from '@xylabs/react-flexbox'\nimport React, { useState } from 'react'\n\nimport type { PropertyActionsProps } from './ActionsProps.ts'\n\nexport const PropertyActionsMenu: React.FC<PropertyActionsProps> = ({ actions, ...props }) => {\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null)\n const open = !!anchorEl\n\n const handleClick = (event: React.MouseEvent<HTMLElement>) => {\n setAnchorEl(event.currentTarget)\n }\n const handleClose = () => {\n setAnchorEl(null)\n }\n\n return actions && actions?.length > 0\n ? (\n <FlexRow {...props}>\n <IconButton size=\"small\" color=\"inherit\" onClick={handleClick}>\n <MoreHorizIcon fontSize=\"inherit\" />\n </IconButton>\n <Menu anchorEl={anchorEl} open={open} onClose={handleClose}>\n {actions?.map((action) => {\n return (\n <MenuItem\n key={action.name}\n onClick={() => {\n action?.onClick?.()\n handleClose()\n }}\n >\n {action.name}\n </MenuItem>\n )\n })}\n </Menu>\n </FlexRow>\n )\n : null\n}\n","import { useTheme } from '@mui/material'\nimport type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { FlexRow } from '@xylabs/react-flexbox'\nimport { Identicon } from '@xylabs/react-identicon'\nimport React, { useMemo, useRef } from 'react'\n\nexport interface IdenticonCornerProps extends FlexBoxProps {\n value?: string | number | boolean | null\n}\n\nexport const IdenticonCorner: React.FC<IdenticonCornerProps> = ({ value, ...props }) => {\n const theme = useTheme()\n const ref = useRef<HTMLDivElement>(null)\n\n const parentHeight = useMemo(() => ref.current?.parentElement?.parentElement?.clientHeight, [ref.current])\n\n const calculatedHeight = parentHeight ?? 0\n\n return (\n <FlexRow alignItems=\"flex-start\" height=\"100%\">\n <FlexRow background height={calculatedHeight} width={calculatedHeight} borderLeft={`1px solid ${theme.palette.divider}`}>\n <div ref={ref}>\n <Identicon size={calculatedHeight * 0.6} value={`${value}`} sx={{ padding: `${calculatedHeight * 0.2}px` }} {...props} />\n </div>\n </FlexRow>\n </FlexRow>\n )\n}\n","import type { TypographyVariant } from '@mui/material'\nimport type { EllipsizeBoxProps } from '@xyo-network/react-shared'\nimport { EllipsizeBox } from '@xyo-network/react-shared'\nimport React from 'react'\n\nexport interface PropertyValueProps extends EllipsizeBoxProps {\n typographyVariant?: TypographyVariant\n value?: string | number | boolean | null\n}\n\nexport const PropertyValue = ({\n ref, typographyVariant = 'body1', value, ...props\n}: PropertyValueProps) => {\n return value === undefined\n ? null\n : (\n <EllipsizeBox\n typographyProps={{\n component: undefined, title: value?.toString(), variant: typographyVariant,\n }}\n width=\"100%\"\n ref={ref}\n {...props}\n >\n {value}\n </EllipsizeBox>\n )\n}\n\nPropertyValue.displayName = 'PropertyValue'\n"],"mappings":"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","names":["Paper","useTheme","FlexCol","FlexGrowRow","FlexRow","typeOf","React","darken","Typography","useColorScheme","useTheme","FlexRow","QuickTipButton","useIsDark","React","PropertyTitle","elevation","size","tip","more","title","props","sizeVariants","full","large","medium","small","sizeTitleHeight","undefined","sizeFontSize","quickTipSize","Math","min","theme","useTheme","useColorScheme","isDark","useIsDark","FlexRow","bgcolor","darken","palette","background","paper","alignItems","height","justifyContent","paddingX","paddingY","Typography","fontWeight","noWrap","variant","fontSize","strong","QuickTipButton","style","color","PropertyGroupBox","titleProps","children","title","tip","props","theme","useTheme","childrenArray","typeOf","undefined","React","FlexCol","alignItems","overflow","FlexRow","justifyContent","PropertyTitle","size","FlexGrowRow","map","child","index","key","borderLeft","borderColor","palette","divider","PropertyGroupPaper","style","variant","elevation","square","Paper","minWidth","paper","PropertyGroup","CircularProgress","Paper","FlexRow","React","MoreHoriz","MoreHorizIcon","IconButton","Menu","MenuItem","FlexRow","React","useState","PropertyActionsMenu","actions","props","anchorEl","setAnchorEl","useState","open","handleClick","event","currentTarget","handleClose","length","React","FlexRow","IconButton","size","color","onClick","MoreHorizIcon","fontSize","Menu","onClose","map","action","MenuItem","key","name","useTheme","FlexRow","Identicon","React","useMemo","useRef","IdenticonCorner","value","props","theme","useTheme","ref","useRef","parentHeight","useMemo","current","parentElement","clientHeight","calculatedHeight","React","FlexRow","alignItems","height","background","width","borderLeft","palette","divider","div","Identicon","size","sx","padding","EllipsizeBox","React","PropertyValue","ref","typographyVariant","value","props","undefined","React","EllipsizeBox","typographyProps","component","title","toString","variant","width","displayName","PropertyBox","titleProps","title","value","children","size","tip","actions","required","badge","props","sizeValueHeight","large","medium","small","sizeVariants","React","FlexRow","flexDirection","minWidth","alignItems","overflow","undefined","PropertyTitle","more","PropertyActionsMenu","pl","columnGap","justifyContent","height","CircularProgress","PropertyValue","typographyVariant","IdenticonCorner","displayName","PropertyPaper","ref","style","variant","elevation","square","Paper","paper","Property"]}
|
|
1
|
+
{"version":3,"sources":["../../src/components/Group.tsx","../../src/components/Title.tsx","../../src/components/Property.tsx","../../src/components/ActionsMenu.tsx","../../src/components/IdenticonCorner.tsx","../../src/components/Value.tsx"],"sourcesContent":["import { Paper, useTheme } from '@mui/material'\nimport {\n FlexCol, FlexGrowRow, FlexRow,\n} from '@xylabs/react-flexbox'\nimport { typeOf } from '@xyo-network/typeof'\nimport type { ReactElement } from 'react'\nimport React from 'react'\n\nimport type {\n PropertyGroupBoxProps, PropertyGroupPaperProps, PropertyGroupProps,\n} from './Props.ts'\nimport { PropertyTitle } from './Title.tsx'\n\nconst PropertyGroupBox: React.FC<PropertyGroupBoxProps> = ({\n titleProps, children, title, tip, ...props\n}) => {\n const theme = useTheme()\n const childrenArray = typeOf(children) === 'array' ? (children as ReactElement[]) : undefined\n return (\n <FlexCol alignItems=\"stretch\" overflow=\"hidden\" {...props}>\n <FlexRow overflow=\"hidden\" justifyContent=\"stretch\" alignItems=\"stretch\">\n <PropertyTitle alignItems=\"flex-start\" size=\"full\" title={title} tip={tip} {...titleProps} />\n {childrenArray\n ? (\n <FlexGrowRow>\n {childrenArray?.map((child, index) => {\n return child\n ? (\n <FlexGrowRow key={index} borderLeft={1} borderColor={theme.vars.palette.divider}>\n {child}\n </FlexGrowRow>\n )\n : null\n })}\n </FlexGrowRow>\n )\n : <FlexGrowRow overflow=\"hidden\">{children}</FlexGrowRow>}\n </FlexRow>\n </FlexCol>\n )\n}\n\nconst PropertyGroupPaper: React.FC<PropertyGroupPaperProps> = ({\n style, variant, elevation, square, ...props\n}) => {\n return (\n <Paper\n style={{\n minWidth: 0, overflow: 'hidden', ...style,\n }}\n variant={variant}\n elevation={elevation}\n square={square}\n >\n <PropertyGroupBox {...props} paper={false} />\n </Paper>\n )\n}\n\nexport const PropertyGroup: React.FC<PropertyGroupProps> = (props) => {\n return props.paper ? <PropertyGroupPaper {...props} /> : <PropertyGroupBox {...props} />\n}\n","import type { TypographyVariant } from '@mui/material'\nimport {\n Typography, useColorScheme, useTheme,\n} from '@mui/material'\nimport type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { FlexRow } from '@xylabs/react-flexbox'\nimport { QuickTipButton } from '@xylabs/react-quick-tip-button'\nimport { darkenCss, useIsDark } from '@xylabs/react-theme'\nimport type { SizeProp } from '@xyo-network/react-shared'\nimport type { ReactNode } from 'react'\nimport React from 'react'\n\nexport type TitleSizeProp = SizeProp | 'full'\n\nexport interface PropertyTitleProps extends FlexBoxProps {\n elevation?: number\n more?: ReactNode\n size?: TitleSizeProp\n tip?: ReactNode\n title?: string\n}\n\nexport const PropertyTitle: React.FC<PropertyTitleProps> = ({\n elevation = 1, size = 'medium', tip, more, title, ...props\n}) => {\n const sizeVariants: Record<TitleSizeProp, TypographyVariant> = {\n full: 'caption',\n large: 'caption',\n medium: 'caption',\n small: 'caption',\n }\n\n const sizeTitleHeight: Record<TitleSizeProp, number | undefined> = {\n full: undefined,\n large: 32,\n medium: 20,\n small: 16,\n }\n\n const sizeFontSize: Record<TitleSizeProp, number> = {\n full: 16,\n large: 16,\n medium: 14,\n small: 10,\n }\n\n const quickTipSize = Math.min(sizeFontSize[size], 16)\n\n const theme = useTheme()\n const {} = useColorScheme()\n const isDark = useIsDark()\n\n return (\n <FlexRow\n bgcolor={\n isDark\n ? darkenCss(theme.vars.palette.background.paper, 0.75 * elevation)\n : darkenCss(theme.vars.palette.background.paper, 0.025 * elevation)\n }\n alignItems=\"center\"\n height={sizeTitleHeight[size]}\n justifyContent=\"space-between\"\n {...props}\n >\n <FlexRow paddingX={1} paddingY={0.5}>\n <Typography fontWeight={500} noWrap variant={sizeVariants[size]} fontSize={sizeFontSize[size]}>\n <small>\n <strong>{title}</strong>\n </small>\n </Typography>\n {tip\n ? (\n <QuickTipButton style={{ fontSize: quickTipSize }} color=\"inherit\" title={title ?? ''}>\n {tip}\n </QuickTipButton>\n )\n : null}\n </FlexRow>\n {more}\n </FlexRow>\n )\n}\n","import type { TypographyVariant } from '@mui/material'\nimport { CircularProgress, Paper } from '@mui/material'\nimport { FlexRow } from '@xylabs/react-flexbox'\nimport type { SizeProp } from '@xyo-network/react-shared'\nimport React from 'react'\n\nimport { PropertyActionsMenu } from './ActionsMenu.tsx'\nimport { IdenticonCorner } from './IdenticonCorner.tsx'\nimport type {\n PropertyBoxProps, PropertyPaperProps, PropertyProps,\n} from './Props.ts'\nimport { PropertyTitle } from './Title.tsx'\nimport { PropertyValue } from './Value.tsx'\n\nconst PropertyBox: React.FC<PropertyBoxProps> = ({\n titleProps, title, value, children, size = 'medium', tip, actions, required, badge = false, ...props\n}) => {\n const sizeValueHeight: Record<SizeProp, number> = {\n large: 48,\n medium: 36,\n small: 24,\n }\n\n const sizeVariants: Record<SizeProp, TypographyVariant> = {\n large: 'h6',\n medium: 'body1',\n small: 'body2',\n }\n\n return (\n <FlexRow flexDirection=\"column\" minWidth={0} alignItems=\"stretch\" overflow=\"hidden\" {...props}>\n {title === undefined\n ? null\n : (\n <PropertyTitle\n tip={tip}\n title={required ? `${title}*` : title}\n size={size}\n more={<PropertyActionsMenu actions={actions} />}\n {...titleProps}\n />\n )}\n <FlexRow\n pl={1}\n columnGap={1}\n justifyContent={value === undefined ? 'center' : 'space-between'}\n overflow=\"hidden\"\n height={sizeValueHeight[size]}\n >\n {children ?? ((value === undefined)\n ? <CircularProgress size={16} />\n : <PropertyValue value={value} typographyVariant={sizeVariants[size]} />)}\n {value === undefined\n ? null\n : badge\n ? <IdenticonCorner value={value} />\n : null}\n </FlexRow>\n </FlexRow>\n )\n}\nPropertyBox.displayName = 'PropertyBox'\n\nconst PropertyPaper: React.FC<PropertyPaperProps> = ({\n ref, style, variant, elevation = 2, square, ...props\n}) => {\n return (\n <Paper\n ref={ref}\n style={{\n minWidth: 0, overflow: 'hidden', ...style,\n }}\n variant={variant}\n elevation={elevation}\n square={square}\n >\n <PropertyBox {...props} paper={false} />\n </Paper>\n )\n}\nPropertyPaper.displayName = 'PropertyPaper'\n\nexport const Property: React.FC<PropertyProps> = ({ ...props }) => {\n return props.paper ? <PropertyPaper {...props} /> : <PropertyBox {...props} />\n}\nProperty.displayName = 'Property'\n","import { MoreHoriz as MoreHorizIcon } from '@mui/icons-material'\nimport {\n IconButton, Menu, MenuItem,\n} from '@mui/material'\nimport { FlexRow } from '@xylabs/react-flexbox'\nimport React, { useState } from 'react'\n\nimport type { PropertyActionsProps } from './ActionsProps.ts'\n\nexport const PropertyActionsMenu: React.FC<PropertyActionsProps> = ({ actions, ...props }) => {\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null)\n const open = !!anchorEl\n\n const handleClick = (event: React.MouseEvent<HTMLElement>) => {\n setAnchorEl(event.currentTarget)\n }\n const handleClose = () => {\n setAnchorEl(null)\n }\n\n return actions && actions?.length > 0\n ? (\n <FlexRow {...props}>\n <IconButton size=\"small\" color=\"inherit\" onClick={handleClick}>\n <MoreHorizIcon fontSize=\"inherit\" />\n </IconButton>\n <Menu anchorEl={anchorEl} open={open} onClose={handleClose}>\n {actions?.map((action) => {\n return (\n <MenuItem\n key={action.name}\n onClick={() => {\n action?.onClick?.()\n handleClose()\n }}\n >\n {action.name}\n </MenuItem>\n )\n })}\n </Menu>\n </FlexRow>\n )\n : null\n}\n","import { useTheme } from '@mui/material'\nimport type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { FlexRow } from '@xylabs/react-flexbox'\nimport { Identicon } from '@xylabs/react-identicon'\nimport React, { useMemo, useRef } from 'react'\n\nexport interface IdenticonCornerProps extends FlexBoxProps {\n value?: string | number | boolean | null\n}\n\nexport const IdenticonCorner: React.FC<IdenticonCornerProps> = ({ value, ...props }) => {\n const theme = useTheme()\n const ref = useRef<HTMLDivElement>(null)\n\n const parentHeight = useMemo(() => ref.current?.parentElement?.parentElement?.clientHeight, [ref.current])\n\n const calculatedHeight = parentHeight ?? 0\n\n return (\n <FlexRow alignItems=\"flex-start\" height=\"100%\">\n <FlexRow background height={calculatedHeight} width={calculatedHeight} borderLeft={`1px solid ${theme.vars.palette.divider}`}>\n <div ref={ref}>\n <Identicon size={calculatedHeight * 0.6} value={`${value}`} sx={{ padding: `${calculatedHeight * 0.2}px` }} {...props} />\n </div>\n </FlexRow>\n </FlexRow>\n )\n}\n","import type { TypographyVariant } from '@mui/material'\nimport type { EllipsizeBoxProps } from '@xyo-network/react-shared'\nimport { EllipsizeBox } from '@xyo-network/react-shared'\nimport React from 'react'\n\nexport interface PropertyValueProps extends EllipsizeBoxProps {\n typographyVariant?: TypographyVariant\n value?: string | number | boolean | null\n}\n\nexport const PropertyValue = ({\n ref, typographyVariant = 'body1', value, ...props\n}: PropertyValueProps) => {\n return value === undefined\n ? null\n : (\n <EllipsizeBox\n typographyProps={{\n component: undefined, title: value?.toString(), variant: typographyVariant,\n }}\n width=\"100%\"\n ref={ref}\n {...props}\n >\n {value}\n </EllipsizeBox>\n )\n}\n\nPropertyValue.displayName = 'PropertyValue'\n"],"mappings":"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","names":["Paper","useTheme","FlexCol","FlexGrowRow","FlexRow","typeOf","React","Typography","useColorScheme","useTheme","FlexRow","QuickTipButton","darkenCss","useIsDark","React","PropertyTitle","elevation","size","tip","more","title","props","sizeVariants","full","large","medium","small","sizeTitleHeight","undefined","sizeFontSize","quickTipSize","Math","min","theme","useTheme","useColorScheme","isDark","useIsDark","FlexRow","bgcolor","darkenCss","vars","palette","background","paper","alignItems","height","justifyContent","paddingX","paddingY","Typography","fontWeight","noWrap","variant","fontSize","strong","QuickTipButton","style","color","PropertyGroupBox","titleProps","children","title","tip","props","theme","useTheme","childrenArray","typeOf","undefined","React","FlexCol","alignItems","overflow","FlexRow","justifyContent","PropertyTitle","size","FlexGrowRow","map","child","index","key","borderLeft","borderColor","vars","palette","divider","PropertyGroupPaper","style","variant","elevation","square","Paper","minWidth","paper","PropertyGroup","CircularProgress","Paper","FlexRow","React","MoreHoriz","MoreHorizIcon","IconButton","Menu","MenuItem","FlexRow","React","useState","PropertyActionsMenu","actions","props","anchorEl","setAnchorEl","useState","open","handleClick","event","currentTarget","handleClose","length","React","FlexRow","IconButton","size","color","onClick","MoreHorizIcon","fontSize","Menu","onClose","map","action","MenuItem","key","name","useTheme","FlexRow","Identicon","React","useMemo","useRef","IdenticonCorner","value","props","theme","useTheme","ref","useRef","parentHeight","useMemo","current","parentElement","clientHeight","calculatedHeight","React","FlexRow","alignItems","height","background","width","borderLeft","vars","palette","divider","div","Identicon","size","sx","padding","EllipsizeBox","React","PropertyValue","ref","typographyVariant","value","props","undefined","React","EllipsizeBox","typographyProps","component","title","toString","variant","width","displayName","PropertyBox","titleProps","title","value","children","size","tip","actions","required","badge","props","sizeValueHeight","large","medium","small","sizeVariants","React","FlexRow","flexDirection","minWidth","alignItems","overflow","undefined","PropertyTitle","more","PropertyActionsMenu","pl","columnGap","justifyContent","height","CircularProgress","PropertyValue","typographyVariant","IdenticonCorner","displayName","PropertyPaper","ref","style","variant","elevation","square","Paper","paper","Property"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@xyo-network/react-property",
|
|
3
|
-
"version": "5.2.
|
|
3
|
+
"version": "5.2.3",
|
|
4
4
|
"description": "Common React library for all XYO projects that use React",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"xyo",
|
|
@@ -39,19 +39,19 @@
|
|
|
39
39
|
"module": "dist/browser/index.mjs",
|
|
40
40
|
"types": "dist/types/index.d.ts",
|
|
41
41
|
"dependencies": {
|
|
42
|
-
"@xylabs/react-flexbox": "^6.2.
|
|
43
|
-
"@xylabs/react-identicon": "^6.2.
|
|
44
|
-
"@xylabs/react-quick-tip-button": "^6.2.
|
|
45
|
-
"@xyo-network/react-shared": "^5.2.
|
|
46
|
-
"@xyo-network/typeof": "^3.
|
|
42
|
+
"@xylabs/react-flexbox": "^6.2.8",
|
|
43
|
+
"@xylabs/react-identicon": "^6.2.8",
|
|
44
|
+
"@xylabs/react-quick-tip-button": "^6.2.8",
|
|
45
|
+
"@xyo-network/react-shared": "^5.2.3",
|
|
46
|
+
"@xyo-network/typeof": "^3.13.0"
|
|
47
47
|
},
|
|
48
48
|
"devDependencies": {
|
|
49
49
|
"@mui/icons-material": "^7.0.2",
|
|
50
50
|
"@mui/material": "^7.0.2",
|
|
51
51
|
"@storybook/react": "^8.6.12",
|
|
52
52
|
"@types/react": "^19.1.2",
|
|
53
|
-
"@xylabs/ts-scripts-yarn3": "^6.
|
|
54
|
-
"@xylabs/tsconfig-react": "^6.
|
|
53
|
+
"@xylabs/ts-scripts-yarn3": "^6.3.5",
|
|
54
|
+
"@xylabs/tsconfig-react": "^6.3.5",
|
|
55
55
|
"react": "^19.1.0",
|
|
56
56
|
"react-dom": "^19.1.0",
|
|
57
57
|
"storybook": "^8.6.12",
|
package/src/components/Group.tsx
CHANGED
|
@@ -26,7 +26,7 @@ const PropertyGroupBox: React.FC<PropertyGroupBoxProps> = ({
|
|
|
26
26
|
{childrenArray?.map((child, index) => {
|
|
27
27
|
return child
|
|
28
28
|
? (
|
|
29
|
-
<FlexGrowRow key={index} borderLeft={1} borderColor={theme.palette.divider}>
|
|
29
|
+
<FlexGrowRow key={index} borderLeft={1} borderColor={theme.vars.palette.divider}>
|
|
30
30
|
{child}
|
|
31
31
|
</FlexGrowRow>
|
|
32
32
|
)
|
|
@@ -18,7 +18,7 @@ export const IdenticonCorner: React.FC<IdenticonCornerProps> = ({ value, ...prop
|
|
|
18
18
|
|
|
19
19
|
return (
|
|
20
20
|
<FlexRow alignItems="flex-start" height="100%">
|
|
21
|
-
<FlexRow background height={calculatedHeight} width={calculatedHeight} borderLeft={`1px solid ${theme.palette.divider}`}>
|
|
21
|
+
<FlexRow background height={calculatedHeight} width={calculatedHeight} borderLeft={`1px solid ${theme.vars.palette.divider}`}>
|
|
22
22
|
<div ref={ref}>
|
|
23
23
|
<Identicon size={calculatedHeight * 0.6} value={`${value}`} sx={{ padding: `${calculatedHeight * 0.2}px` }} {...props} />
|
|
24
24
|
</div>
|
package/src/components/Title.tsx
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import type { TypographyVariant } from '@mui/material'
|
|
2
2
|
import {
|
|
3
|
-
|
|
3
|
+
Typography, useColorScheme, useTheme,
|
|
4
4
|
} from '@mui/material'
|
|
5
5
|
import type { FlexBoxProps } from '@xylabs/react-flexbox'
|
|
6
6
|
import { FlexRow } from '@xylabs/react-flexbox'
|
|
7
7
|
import { QuickTipButton } from '@xylabs/react-quick-tip-button'
|
|
8
|
-
import { useIsDark } from '@xylabs/react-theme'
|
|
8
|
+
import { darkenCss, useIsDark } from '@xylabs/react-theme'
|
|
9
9
|
import type { SizeProp } from '@xyo-network/react-shared'
|
|
10
10
|
import type { ReactNode } from 'react'
|
|
11
11
|
import React from 'react'
|
|
@@ -54,8 +54,8 @@ export const PropertyTitle: React.FC<PropertyTitleProps> = ({
|
|
|
54
54
|
<FlexRow
|
|
55
55
|
bgcolor={
|
|
56
56
|
isDark
|
|
57
|
-
?
|
|
58
|
-
:
|
|
57
|
+
? darkenCss(theme.vars.palette.background.paper, 0.75 * elevation)
|
|
58
|
+
: darkenCss(theme.vars.palette.background.paper, 0.025 * elevation)
|
|
59
59
|
}
|
|
60
60
|
alignItems="center"
|
|
61
61
|
height={sizeTitleHeight[size]}
|
package/src/global.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import type {} from '@mui/material/themeCssVarsAugmentation'
|