@zidsa/zidmui 3.2.1 → 3.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -9,6 +9,7 @@ const AppInputRadioCard = ({
9
9
  label,
10
10
  labelProps,
11
11
  labelContainerProps,
12
+ labelIconContainerProps,
12
13
  description,
13
14
  descriptionProps,
14
15
  radioProps,
@@ -22,7 +23,7 @@ const AppInputRadioCard = ({
22
23
  {
23
24
  ...props,
24
25
  control: /* @__PURE__ */ jsxRuntime.jsx(RadioStyled, { ...radioProps }),
25
- label: /* @__PURE__ */ jsxRuntime.jsxs(stackRow.StackRow, { justifyContent: "space-between", alignItems: "center", children: [
26
+ label: /* @__PURE__ */ jsxRuntime.jsxs(stackRow.StackRow, { justifyContent: "space-between", alignItems: "center", ...labelIconContainerProps, children: [
26
27
  /* @__PURE__ */ jsxRuntime.jsxs(stackColumn.StackColumn, { gap: 0, overflow: "hidden", ...labelContainerProps, children: [
27
28
  isLoading && /* @__PURE__ */ jsxRuntime.jsx(CircularProgressStyled, {}),
28
29
  typeof label === "string" ? /* @__PURE__ */ jsxRuntime.jsxs(stackRow.StackRow, { width: "100%", justifyContent: "space-between", children: [
@@ -1 +1 @@
1
- {"version":3,"file":"app-input-radio-card.js","sources":["../../../../src/components/app-input-radio-card.tsx"],"sourcesContent":["import React from 'react';\nimport {\n FormControlLabelProps,\n StackProps,\n RadioProps,\n FormControlLabel,\n Radio,\n CircularProgress,\n styled,\n alpha,\n} from '@mui/material';\nimport { AppTypographyProps, AppTypography } from './app-typography';\nimport { StackColumn } from './stack-column';\nimport { StackRow } from './stack-row';\n\n//\n//\n\nexport type AppInputRadioCardProps = Omit<FormControlLabelProps, 'control' | 'label'> & {\n label: string | React.ReactNode;\n labelProps?: AppTypographyProps;\n labelContainerProps?: StackProps;\n description?: React.ReactNode;\n descriptionProps?: AppTypographyProps;\n radioProps?: RadioProps;\n isLoading?: boolean;\n labelSuffix?: React.ReactNode;\n icon?: React.ReactNode;\n};\n\nexport const AppInputRadioCard: React.FC<AppInputRadioCardProps> = ({\n label,\n labelProps,\n labelContainerProps,\n description,\n descriptionProps,\n radioProps,\n isLoading,\n labelSuffix,\n icon,\n ...props\n}) => {\n return (\n <FormControlLabelStyled\n {...props}\n control={<RadioStyled {...radioProps} />}\n label={\n <StackRow justifyContent=\"space-between\" alignItems=\"center\">\n <StackColumn gap={0} overflow=\"hidden\" {...labelContainerProps}>\n {isLoading && <CircularProgressStyled />}\n\n {typeof label === 'string' ? (\n <StackRow width=\"100%\" justifyContent=\"space-between\">\n <AppTypography variant=\"body2\" {...labelProps}>\n {label}\n </AppTypography>\n {labelSuffix ? labelSuffix : null}\n </StackRow>\n ) : (\n label\n )}\n {description && (\n <RadioDescriptionStyled variant=\"caption\" color=\"text.tertiary\" {...descriptionProps}>\n {description}\n </RadioDescriptionStyled>\n )}\n </StackColumn>\n\n {icon}\n </StackRow>\n }\n />\n );\n};\n\n//\n\nconst FormControlLabelStyled = styled(FormControlLabel)(({ theme }) => {\n return {\n position: 'relative',\n display: 'flex',\n alignItems: 'flex-start',\n gap: theme.spacing(0.5),\n margin: 0,\n padding: theme.spacing(1.5),\n border: `solid 1px ${theme.palette.divider}`,\n borderRadius: theme.shape.standardBorderRadius,\n ':has(:checked)': {\n backgroundColor: alpha(theme.palette.primary.main, 0.08),\n borderColor: '#AE72FF80',\n },\n overflow: 'hidden',\n '> .MuiFormControlLabel-label': {\n overflow: 'hidden',\n },\n '& .MuiFormControlLabel-label': {\n width: '100%',\n },\n };\n});\n\nconst RadioStyled = styled(Radio)(({ theme }) => {\n return {\n width: theme.spacing(2.5),\n minWidth: theme.spacing(2.5),\n height: theme.spacing(2.5),\n padding: 0,\n };\n});\n\nconst RadioDescriptionStyled = styled(AppTypography)(() => {\n return {\n display: '-webkit-box',\n WebkitLineClamp: 3,\n WebkitBoxOrient: 'vertical',\n overflow: 'hidden',\n };\n});\n\nconst CircularProgressStyled = styled(CircularProgress)(() => {\n return {\n position: 'absolute',\n left: 'calc(50% - 20px)',\n top: 'calc(50% - 20px)',\n };\n});\n"],"names":["jsx","jsxs","StackRow","StackColumn","AppTypography","styled","FormControlLabel","alpha","Radio","CircularProgress"],"mappings":";;;;;;;AA8BO,MAAM,oBAAsD,CAAC;AAAA,EAClE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACL,MAAM;AACJ,SACEA,2BAAAA;AAAAA,IAAC;AAAA,IAAA;AAAA,MACE,GAAG;AAAA,MACJ,SAASA,2BAAAA,IAAC,aAAA,EAAa,GAAG,WAAA,CAAY;AAAA,MACtC,OACEC,2BAAAA,KAACC,SAAAA,UAAA,EAAS,gBAAe,iBAAgB,YAAW,UAClD,UAAA;AAAA,QAAAD,gCAACE,YAAAA,eAAY,KAAK,GAAG,UAAS,UAAU,GAAG,qBACxC,UAAA;AAAA,UAAA,4CAAc,wBAAA,EAAuB;AAAA,UAErC,OAAO,UAAU,WAChBF,2BAAAA,KAACC,SAAAA,YAAS,OAAM,QAAO,gBAAe,iBACpC,UAAA;AAAA,YAAAF,+BAACI,cAAAA,eAAA,EAAc,SAAQ,SAAS,GAAG,YAChC,UAAA,OACH;AAAA,YACC,cAAc,cAAc;AAAA,UAAA,EAAA,CAC/B,IAEA;AAAA,UAED,8CACE,wBAAA,EAAuB,SAAQ,WAAU,OAAM,iBAAiB,GAAG,kBACjE,UAAA,YAAA,CACH;AAAA,QAAA,GAEJ;AAAA,QAEC;AAAA,MAAA,EAAA,CACH;AAAA,IAAA;AAAA,EAAA;AAIR;AAIA,MAAM,yBAAyBC,SAAAA,OAAOC,SAAAA,gBAAgB,EAAE,CAAC,EAAE,YAAY;AACrE,SAAO;AAAA,IACL,UAAU;AAAA,IACV,SAAS;AAAA,IACT,YAAY;AAAA,IACZ,KAAK,MAAM,QAAQ,GAAG;AAAA,IACtB,QAAQ;AAAA,IACR,SAAS,MAAM,QAAQ,GAAG;AAAA,IAC1B,QAAQ,aAAa,MAAM,QAAQ,OAAO;AAAA,IAC1C,cAAc,MAAM,MAAM;AAAA,IAC1B,kBAAkB;AAAA,MAChB,iBAAiBC,SAAAA,MAAM,MAAM,QAAQ,QAAQ,MAAM,IAAI;AAAA,MACvD,aAAa;AAAA,IAAA;AAAA,IAEf,UAAU;AAAA,IACV,gCAAgC;AAAA,MAC9B,UAAU;AAAA,IAAA;AAAA,IAEZ,gCAAgC;AAAA,MAC9B,OAAO;AAAA,IAAA;AAAA,EACT;AAEJ,CAAC;AAED,MAAM,cAAcF,SAAAA,OAAOG,SAAAA,KAAK,EAAE,CAAC,EAAE,YAAY;AAC/C,SAAO;AAAA,IACL,OAAO,MAAM,QAAQ,GAAG;AAAA,IACxB,UAAU,MAAM,QAAQ,GAAG;AAAA,IAC3B,QAAQ,MAAM,QAAQ,GAAG;AAAA,IACzB,SAAS;AAAA,EAAA;AAEb,CAAC;AAED,MAAM,yBAAyBH,SAAAA,OAAOD,cAAAA,aAAa,EAAE,MAAM;AACzD,SAAO;AAAA,IACL,SAAS;AAAA,IACT,iBAAiB;AAAA,IACjB,iBAAiB;AAAA,IACjB,UAAU;AAAA,EAAA;AAEd,CAAC;AAED,MAAM,yBAAyBC,SAAAA,OAAOI,SAAAA,gBAAgB,EAAE,MAAM;AAC5D,SAAO;AAAA,IACL,UAAU;AAAA,IACV,MAAM;AAAA,IACN,KAAK;AAAA,EAAA;AAET,CAAC;;"}
1
+ {"version":3,"file":"app-input-radio-card.js","sources":["../../../../src/components/app-input-radio-card.tsx"],"sourcesContent":["import React from 'react';\nimport {\n FormControlLabelProps,\n StackProps,\n RadioProps,\n FormControlLabel,\n Radio,\n CircularProgress,\n styled,\n alpha,\n} from '@mui/material';\nimport { AppTypographyProps, AppTypography } from './app-typography';\nimport { StackColumn } from './stack-column';\nimport { StackRow } from './stack-row';\n\n//\n//\n\nexport type AppInputRadioCardProps = Omit<FormControlLabelProps, 'control' | 'label'> & {\n label: string | React.ReactNode;\n labelProps?: AppTypographyProps;\n labelContainerProps?: StackProps;\n labelIconContainerProps?: StackProps;\n description?: React.ReactNode;\n descriptionProps?: AppTypographyProps;\n radioProps?: RadioProps;\n isLoading?: boolean;\n labelSuffix?: React.ReactNode;\n icon?: React.ReactNode;\n};\n\nexport const AppInputRadioCard: React.FC<AppInputRadioCardProps> = ({\n label,\n labelProps,\n labelContainerProps,\n labelIconContainerProps,\n description,\n descriptionProps,\n radioProps,\n isLoading,\n labelSuffix,\n icon,\n ...props\n}) => {\n return (\n <FormControlLabelStyled\n {...props}\n control={<RadioStyled {...radioProps} />}\n label={\n <StackRow justifyContent=\"space-between\" alignItems=\"center\" {...labelIconContainerProps}>\n <StackColumn gap={0} overflow=\"hidden\" {...labelContainerProps}>\n {isLoading && <CircularProgressStyled />}\n\n {typeof label === 'string' ? (\n <StackRow width=\"100%\" justifyContent=\"space-between\">\n <AppTypography variant=\"body2\" {...labelProps}>\n {label}\n </AppTypography>\n {labelSuffix ? labelSuffix : null}\n </StackRow>\n ) : (\n label\n )}\n {description && (\n <RadioDescriptionStyled variant=\"caption\" color=\"text.tertiary\" {...descriptionProps}>\n {description}\n </RadioDescriptionStyled>\n )}\n </StackColumn>\n\n {icon}\n </StackRow>\n }\n />\n );\n};\n\n//\n\nconst FormControlLabelStyled = styled(FormControlLabel)(({ theme }) => {\n return {\n position: 'relative',\n display: 'flex',\n alignItems: 'flex-start',\n gap: theme.spacing(0.5),\n margin: 0,\n padding: theme.spacing(1.5),\n border: `solid 1px ${theme.palette.divider}`,\n borderRadius: theme.shape.standardBorderRadius,\n ':has(:checked)': {\n backgroundColor: alpha(theme.palette.primary.main, 0.08),\n borderColor: '#AE72FF80',\n },\n overflow: 'hidden',\n '> .MuiFormControlLabel-label': {\n overflow: 'hidden',\n },\n '& .MuiFormControlLabel-label': {\n width: '100%',\n },\n };\n});\n\nconst RadioStyled = styled(Radio)(({ theme }) => {\n return {\n width: theme.spacing(2.5),\n minWidth: theme.spacing(2.5),\n height: theme.spacing(2.5),\n padding: 0,\n };\n});\n\nconst RadioDescriptionStyled = styled(AppTypography)(() => {\n return {\n display: '-webkit-box',\n WebkitLineClamp: 3,\n WebkitBoxOrient: 'vertical',\n overflow: 'hidden',\n };\n});\n\nconst CircularProgressStyled = styled(CircularProgress)(() => {\n return {\n position: 'absolute',\n left: 'calc(50% - 20px)',\n top: 'calc(50% - 20px)',\n };\n});\n"],"names":["jsx","StackRow","jsxs","StackColumn","AppTypography","styled","FormControlLabel","alpha","Radio","CircularProgress"],"mappings":";;;;;;;AA+BO,MAAM,oBAAsD,CAAC;AAAA,EAClE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACL,MAAM;AACJ,SACEA,2BAAAA;AAAAA,IAAC;AAAA,IAAA;AAAA,MACE,GAAG;AAAA,MACJ,SAASA,2BAAAA,IAAC,aAAA,EAAa,GAAG,WAAA,CAAY;AAAA,MACtC,uCACGC,SAAAA,UAAA,EAAS,gBAAe,iBAAgB,YAAW,UAAU,GAAG,yBAC/D,UAAA;AAAA,QAAAC,gCAACC,YAAAA,eAAY,KAAK,GAAG,UAAS,UAAU,GAAG,qBACxC,UAAA;AAAA,UAAA,4CAAc,wBAAA,EAAuB;AAAA,UAErC,OAAO,UAAU,WAChBD,2BAAAA,KAACD,SAAAA,YAAS,OAAM,QAAO,gBAAe,iBACpC,UAAA;AAAA,YAAAD,+BAACI,cAAAA,eAAA,EAAc,SAAQ,SAAS,GAAG,YAChC,UAAA,OACH;AAAA,YACC,cAAc,cAAc;AAAA,UAAA,EAAA,CAC/B,IAEA;AAAA,UAED,8CACE,wBAAA,EAAuB,SAAQ,WAAU,OAAM,iBAAiB,GAAG,kBACjE,UAAA,YAAA,CACH;AAAA,QAAA,GAEJ;AAAA,QAEC;AAAA,MAAA,EAAA,CACH;AAAA,IAAA;AAAA,EAAA;AAIR;AAIA,MAAM,yBAAyBC,SAAAA,OAAOC,SAAAA,gBAAgB,EAAE,CAAC,EAAE,YAAY;AACrE,SAAO;AAAA,IACL,UAAU;AAAA,IACV,SAAS;AAAA,IACT,YAAY;AAAA,IACZ,KAAK,MAAM,QAAQ,GAAG;AAAA,IACtB,QAAQ;AAAA,IACR,SAAS,MAAM,QAAQ,GAAG;AAAA,IAC1B,QAAQ,aAAa,MAAM,QAAQ,OAAO;AAAA,IAC1C,cAAc,MAAM,MAAM;AAAA,IAC1B,kBAAkB;AAAA,MAChB,iBAAiBC,SAAAA,MAAM,MAAM,QAAQ,QAAQ,MAAM,IAAI;AAAA,MACvD,aAAa;AAAA,IAAA;AAAA,IAEf,UAAU;AAAA,IACV,gCAAgC;AAAA,MAC9B,UAAU;AAAA,IAAA;AAAA,IAEZ,gCAAgC;AAAA,MAC9B,OAAO;AAAA,IAAA;AAAA,EACT;AAEJ,CAAC;AAED,MAAM,cAAcF,SAAAA,OAAOG,SAAAA,KAAK,EAAE,CAAC,EAAE,YAAY;AAC/C,SAAO;AAAA,IACL,OAAO,MAAM,QAAQ,GAAG;AAAA,IACxB,UAAU,MAAM,QAAQ,GAAG;AAAA,IAC3B,QAAQ,MAAM,QAAQ,GAAG;AAAA,IACzB,SAAS;AAAA,EAAA;AAEb,CAAC;AAED,MAAM,yBAAyBH,SAAAA,OAAOD,cAAAA,aAAa,EAAE,MAAM;AACzD,SAAO;AAAA,IACL,SAAS;AAAA,IACT,iBAAiB;AAAA,IACjB,iBAAiB;AAAA,IACjB,UAAU;AAAA,EAAA;AAEd,CAAC;AAED,MAAM,yBAAyBC,SAAAA,OAAOI,SAAAA,gBAAgB,EAAE,MAAM;AAC5D,SAAO;AAAA,IACL,UAAU;AAAA,IACV,MAAM;AAAA,IACN,KAAK;AAAA,EAAA;AAET,CAAC;;"}
@@ -7,6 +7,7 @@ const AppInputRadioCard = ({
7
7
  label,
8
8
  labelProps,
9
9
  labelContainerProps,
10
+ labelIconContainerProps,
10
11
  description,
11
12
  descriptionProps,
12
13
  radioProps,
@@ -20,7 +21,7 @@ const AppInputRadioCard = ({
20
21
  {
21
22
  ...props,
22
23
  control: /* @__PURE__ */ jsx(RadioStyled, { ...radioProps }),
23
- label: /* @__PURE__ */ jsxs(StackRow, { justifyContent: "space-between", alignItems: "center", children: [
24
+ label: /* @__PURE__ */ jsxs(StackRow, { justifyContent: "space-between", alignItems: "center", ...labelIconContainerProps, children: [
24
25
  /* @__PURE__ */ jsxs(StackColumn, { gap: 0, overflow: "hidden", ...labelContainerProps, children: [
25
26
  isLoading && /* @__PURE__ */ jsx(CircularProgressStyled, {}),
26
27
  typeof label === "string" ? /* @__PURE__ */ jsxs(StackRow, { width: "100%", justifyContent: "space-between", children: [
@@ -1 +1 @@
1
- {"version":3,"file":"app-input-radio-card.js","sources":["../../../../src/components/app-input-radio-card.tsx"],"sourcesContent":["import React from 'react';\nimport {\n FormControlLabelProps,\n StackProps,\n RadioProps,\n FormControlLabel,\n Radio,\n CircularProgress,\n styled,\n alpha,\n} from '@mui/material';\nimport { AppTypographyProps, AppTypography } from './app-typography';\nimport { StackColumn } from './stack-column';\nimport { StackRow } from './stack-row';\n\n//\n//\n\nexport type AppInputRadioCardProps = Omit<FormControlLabelProps, 'control' | 'label'> & {\n label: string | React.ReactNode;\n labelProps?: AppTypographyProps;\n labelContainerProps?: StackProps;\n description?: React.ReactNode;\n descriptionProps?: AppTypographyProps;\n radioProps?: RadioProps;\n isLoading?: boolean;\n labelSuffix?: React.ReactNode;\n icon?: React.ReactNode;\n};\n\nexport const AppInputRadioCard: React.FC<AppInputRadioCardProps> = ({\n label,\n labelProps,\n labelContainerProps,\n description,\n descriptionProps,\n radioProps,\n isLoading,\n labelSuffix,\n icon,\n ...props\n}) => {\n return (\n <FormControlLabelStyled\n {...props}\n control={<RadioStyled {...radioProps} />}\n label={\n <StackRow justifyContent=\"space-between\" alignItems=\"center\">\n <StackColumn gap={0} overflow=\"hidden\" {...labelContainerProps}>\n {isLoading && <CircularProgressStyled />}\n\n {typeof label === 'string' ? (\n <StackRow width=\"100%\" justifyContent=\"space-between\">\n <AppTypography variant=\"body2\" {...labelProps}>\n {label}\n </AppTypography>\n {labelSuffix ? labelSuffix : null}\n </StackRow>\n ) : (\n label\n )}\n {description && (\n <RadioDescriptionStyled variant=\"caption\" color=\"text.tertiary\" {...descriptionProps}>\n {description}\n </RadioDescriptionStyled>\n )}\n </StackColumn>\n\n {icon}\n </StackRow>\n }\n />\n );\n};\n\n//\n\nconst FormControlLabelStyled = styled(FormControlLabel)(({ theme }) => {\n return {\n position: 'relative',\n display: 'flex',\n alignItems: 'flex-start',\n gap: theme.spacing(0.5),\n margin: 0,\n padding: theme.spacing(1.5),\n border: `solid 1px ${theme.palette.divider}`,\n borderRadius: theme.shape.standardBorderRadius,\n ':has(:checked)': {\n backgroundColor: alpha(theme.palette.primary.main, 0.08),\n borderColor: '#AE72FF80',\n },\n overflow: 'hidden',\n '> .MuiFormControlLabel-label': {\n overflow: 'hidden',\n },\n '& .MuiFormControlLabel-label': {\n width: '100%',\n },\n };\n});\n\nconst RadioStyled = styled(Radio)(({ theme }) => {\n return {\n width: theme.spacing(2.5),\n minWidth: theme.spacing(2.5),\n height: theme.spacing(2.5),\n padding: 0,\n };\n});\n\nconst RadioDescriptionStyled = styled(AppTypography)(() => {\n return {\n display: '-webkit-box',\n WebkitLineClamp: 3,\n WebkitBoxOrient: 'vertical',\n overflow: 'hidden',\n };\n});\n\nconst CircularProgressStyled = styled(CircularProgress)(() => {\n return {\n position: 'absolute',\n left: 'calc(50% - 20px)',\n top: 'calc(50% - 20px)',\n };\n});\n"],"names":[],"mappings":";;;;;AA8BO,MAAM,oBAAsD,CAAC;AAAA,EAClE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACL,MAAM;AACJ,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACE,GAAG;AAAA,MACJ,SAAS,oBAAC,aAAA,EAAa,GAAG,WAAA,CAAY;AAAA,MACtC,OACE,qBAAC,UAAA,EAAS,gBAAe,iBAAgB,YAAW,UAClD,UAAA;AAAA,QAAA,qBAAC,eAAY,KAAK,GAAG,UAAS,UAAU,GAAG,qBACxC,UAAA;AAAA,UAAA,iCAAc,wBAAA,EAAuB;AAAA,UAErC,OAAO,UAAU,WAChB,qBAAC,YAAS,OAAM,QAAO,gBAAe,iBACpC,UAAA;AAAA,YAAA,oBAAC,eAAA,EAAc,SAAQ,SAAS,GAAG,YAChC,UAAA,OACH;AAAA,YACC,cAAc,cAAc;AAAA,UAAA,EAAA,CAC/B,IAEA;AAAA,UAED,mCACE,wBAAA,EAAuB,SAAQ,WAAU,OAAM,iBAAiB,GAAG,kBACjE,UAAA,YAAA,CACH;AAAA,QAAA,GAEJ;AAAA,QAEC;AAAA,MAAA,EAAA,CACH;AAAA,IAAA;AAAA,EAAA;AAIR;AAIA,MAAM,yBAAyB,OAAO,gBAAgB,EAAE,CAAC,EAAE,YAAY;AACrE,SAAO;AAAA,IACL,UAAU;AAAA,IACV,SAAS;AAAA,IACT,YAAY;AAAA,IACZ,KAAK,MAAM,QAAQ,GAAG;AAAA,IACtB,QAAQ;AAAA,IACR,SAAS,MAAM,QAAQ,GAAG;AAAA,IAC1B,QAAQ,aAAa,MAAM,QAAQ,OAAO;AAAA,IAC1C,cAAc,MAAM,MAAM;AAAA,IAC1B,kBAAkB;AAAA,MAChB,iBAAiB,MAAM,MAAM,QAAQ,QAAQ,MAAM,IAAI;AAAA,MACvD,aAAa;AAAA,IAAA;AAAA,IAEf,UAAU;AAAA,IACV,gCAAgC;AAAA,MAC9B,UAAU;AAAA,IAAA;AAAA,IAEZ,gCAAgC;AAAA,MAC9B,OAAO;AAAA,IAAA;AAAA,EACT;AAEJ,CAAC;AAED,MAAM,cAAc,OAAO,KAAK,EAAE,CAAC,EAAE,YAAY;AAC/C,SAAO;AAAA,IACL,OAAO,MAAM,QAAQ,GAAG;AAAA,IACxB,UAAU,MAAM,QAAQ,GAAG;AAAA,IAC3B,QAAQ,MAAM,QAAQ,GAAG;AAAA,IACzB,SAAS;AAAA,EAAA;AAEb,CAAC;AAED,MAAM,yBAAyB,OAAO,aAAa,EAAE,MAAM;AACzD,SAAO;AAAA,IACL,SAAS;AAAA,IACT,iBAAiB;AAAA,IACjB,iBAAiB;AAAA,IACjB,UAAU;AAAA,EAAA;AAEd,CAAC;AAED,MAAM,yBAAyB,OAAO,gBAAgB,EAAE,MAAM;AAC5D,SAAO;AAAA,IACL,UAAU;AAAA,IACV,MAAM;AAAA,IACN,KAAK;AAAA,EAAA;AAET,CAAC;"}
1
+ {"version":3,"file":"app-input-radio-card.js","sources":["../../../../src/components/app-input-radio-card.tsx"],"sourcesContent":["import React from 'react';\nimport {\n FormControlLabelProps,\n StackProps,\n RadioProps,\n FormControlLabel,\n Radio,\n CircularProgress,\n styled,\n alpha,\n} from '@mui/material';\nimport { AppTypographyProps, AppTypography } from './app-typography';\nimport { StackColumn } from './stack-column';\nimport { StackRow } from './stack-row';\n\n//\n//\n\nexport type AppInputRadioCardProps = Omit<FormControlLabelProps, 'control' | 'label'> & {\n label: string | React.ReactNode;\n labelProps?: AppTypographyProps;\n labelContainerProps?: StackProps;\n labelIconContainerProps?: StackProps;\n description?: React.ReactNode;\n descriptionProps?: AppTypographyProps;\n radioProps?: RadioProps;\n isLoading?: boolean;\n labelSuffix?: React.ReactNode;\n icon?: React.ReactNode;\n};\n\nexport const AppInputRadioCard: React.FC<AppInputRadioCardProps> = ({\n label,\n labelProps,\n labelContainerProps,\n labelIconContainerProps,\n description,\n descriptionProps,\n radioProps,\n isLoading,\n labelSuffix,\n icon,\n ...props\n}) => {\n return (\n <FormControlLabelStyled\n {...props}\n control={<RadioStyled {...radioProps} />}\n label={\n <StackRow justifyContent=\"space-between\" alignItems=\"center\" {...labelIconContainerProps}>\n <StackColumn gap={0} overflow=\"hidden\" {...labelContainerProps}>\n {isLoading && <CircularProgressStyled />}\n\n {typeof label === 'string' ? (\n <StackRow width=\"100%\" justifyContent=\"space-between\">\n <AppTypography variant=\"body2\" {...labelProps}>\n {label}\n </AppTypography>\n {labelSuffix ? labelSuffix : null}\n </StackRow>\n ) : (\n label\n )}\n {description && (\n <RadioDescriptionStyled variant=\"caption\" color=\"text.tertiary\" {...descriptionProps}>\n {description}\n </RadioDescriptionStyled>\n )}\n </StackColumn>\n\n {icon}\n </StackRow>\n }\n />\n );\n};\n\n//\n\nconst FormControlLabelStyled = styled(FormControlLabel)(({ theme }) => {\n return {\n position: 'relative',\n display: 'flex',\n alignItems: 'flex-start',\n gap: theme.spacing(0.5),\n margin: 0,\n padding: theme.spacing(1.5),\n border: `solid 1px ${theme.palette.divider}`,\n borderRadius: theme.shape.standardBorderRadius,\n ':has(:checked)': {\n backgroundColor: alpha(theme.palette.primary.main, 0.08),\n borderColor: '#AE72FF80',\n },\n overflow: 'hidden',\n '> .MuiFormControlLabel-label': {\n overflow: 'hidden',\n },\n '& .MuiFormControlLabel-label': {\n width: '100%',\n },\n };\n});\n\nconst RadioStyled = styled(Radio)(({ theme }) => {\n return {\n width: theme.spacing(2.5),\n minWidth: theme.spacing(2.5),\n height: theme.spacing(2.5),\n padding: 0,\n };\n});\n\nconst RadioDescriptionStyled = styled(AppTypography)(() => {\n return {\n display: '-webkit-box',\n WebkitLineClamp: 3,\n WebkitBoxOrient: 'vertical',\n overflow: 'hidden',\n };\n});\n\nconst CircularProgressStyled = styled(CircularProgress)(() => {\n return {\n position: 'absolute',\n left: 'calc(50% - 20px)',\n top: 'calc(50% - 20px)',\n };\n});\n"],"names":[],"mappings":";;;;;AA+BO,MAAM,oBAAsD,CAAC;AAAA,EAClE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACL,MAAM;AACJ,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACE,GAAG;AAAA,MACJ,SAAS,oBAAC,aAAA,EAAa,GAAG,WAAA,CAAY;AAAA,MACtC,4BACG,UAAA,EAAS,gBAAe,iBAAgB,YAAW,UAAU,GAAG,yBAC/D,UAAA;AAAA,QAAA,qBAAC,eAAY,KAAK,GAAG,UAAS,UAAU,GAAG,qBACxC,UAAA;AAAA,UAAA,iCAAc,wBAAA,EAAuB;AAAA,UAErC,OAAO,UAAU,WAChB,qBAAC,YAAS,OAAM,QAAO,gBAAe,iBACpC,UAAA;AAAA,YAAA,oBAAC,eAAA,EAAc,SAAQ,SAAS,GAAG,YAChC,UAAA,OACH;AAAA,YACC,cAAc,cAAc;AAAA,UAAA,EAAA,CAC/B,IAEA;AAAA,UAED,mCACE,wBAAA,EAAuB,SAAQ,WAAU,OAAM,iBAAiB,GAAG,kBACjE,UAAA,YAAA,CACH;AAAA,QAAA,GAEJ;AAAA,QAEC;AAAA,MAAA,EAAA,CACH;AAAA,IAAA;AAAA,EAAA;AAIR;AAIA,MAAM,yBAAyB,OAAO,gBAAgB,EAAE,CAAC,EAAE,YAAY;AACrE,SAAO;AAAA,IACL,UAAU;AAAA,IACV,SAAS;AAAA,IACT,YAAY;AAAA,IACZ,KAAK,MAAM,QAAQ,GAAG;AAAA,IACtB,QAAQ;AAAA,IACR,SAAS,MAAM,QAAQ,GAAG;AAAA,IAC1B,QAAQ,aAAa,MAAM,QAAQ,OAAO;AAAA,IAC1C,cAAc,MAAM,MAAM;AAAA,IAC1B,kBAAkB;AAAA,MAChB,iBAAiB,MAAM,MAAM,QAAQ,QAAQ,MAAM,IAAI;AAAA,MACvD,aAAa;AAAA,IAAA;AAAA,IAEf,UAAU;AAAA,IACV,gCAAgC;AAAA,MAC9B,UAAU;AAAA,IAAA;AAAA,IAEZ,gCAAgC;AAAA,MAC9B,OAAO;AAAA,IAAA;AAAA,EACT;AAEJ,CAAC;AAED,MAAM,cAAc,OAAO,KAAK,EAAE,CAAC,EAAE,YAAY;AAC/C,SAAO;AAAA,IACL,OAAO,MAAM,QAAQ,GAAG;AAAA,IACxB,UAAU,MAAM,QAAQ,GAAG;AAAA,IAC3B,QAAQ,MAAM,QAAQ,GAAG;AAAA,IACzB,SAAS;AAAA,EAAA;AAEb,CAAC;AAED,MAAM,yBAAyB,OAAO,aAAa,EAAE,MAAM;AACzD,SAAO;AAAA,IACL,SAAS;AAAA,IACT,iBAAiB;AAAA,IACjB,iBAAiB;AAAA,IACjB,UAAU;AAAA,EAAA;AAEd,CAAC;AAED,MAAM,yBAAyB,OAAO,gBAAgB,EAAE,MAAM;AAC5D,SAAO;AAAA,IACL,UAAU;AAAA,IACV,MAAM;AAAA,IACN,KAAK;AAAA,EAAA;AAET,CAAC;"}
@@ -5,6 +5,7 @@ export type AppInputRadioCardProps = Omit<FormControlLabelProps, 'control' | 'la
5
5
  label: string | React.ReactNode;
6
6
  labelProps?: AppTypographyProps;
7
7
  labelContainerProps?: StackProps;
8
+ labelIconContainerProps?: StackProps;
8
9
  description?: React.ReactNode;
9
10
  descriptionProps?: AppTypographyProps;
10
11
  radioProps?: RadioProps;