softable-pixels-web 1.0.6 → 1.0.8
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/{Button-FBwDmqJ7.js → Button-rI1zyBIr.js} +24 -13
- package/dist/Button-rI1zyBIr.js.map +1 -0
- package/dist/CheckItem-OVa0nZlJ.js +47 -0
- package/dist/CheckItem-OVa0nZlJ.js.map +1 -0
- package/dist/{Checkbox-D2dDt6Hp.js → Checkbox-DdPF40bm.js} +27 -9
- package/dist/Checkbox-DdPF40bm.js.map +1 -0
- package/dist/{Icon-CzUEwDPp.js → Icon-T_2VPPNe.js} +4 -4
- package/dist/{Icon-CzUEwDPp.js.map → Icon-T_2VPPNe.js.map} +1 -1
- package/dist/{InfoSummary-DSOwr7Q1.js → InfoSummary-D4GgSlQ0.js} +12 -12
- package/dist/InfoSummary-D4GgSlQ0.js.map +1 -0
- package/dist/{Input-CTx0xk1z.js → Input-9E5L4S5O.js} +8 -79
- package/dist/Input-9E5L4S5O.js.map +1 -0
- package/dist/Label-DFcePle9.js +78 -0
- package/dist/Label-DFcePle9.js.map +1 -0
- package/dist/{TabSwitch-Bewsxeqz.js → TabSwitch-CHS3g1CP.js} +7 -11
- package/dist/TabSwitch-CHS3g1CP.js.map +1 -0
- package/dist/TextArea-CrJs9f5t.js +113 -0
- package/dist/TextArea-CrJs9f5t.js.map +1 -0
- package/dist/{ThemeContext-BAcoPRJ-.js → ThemeContext-CMCP5Hqz.js} +52 -89
- package/dist/ThemeContext-CMCP5Hqz.js.map +1 -0
- package/dist/{Typography-CTfrQCqI.js → Typography-ZFnL1M33.js} +34 -19
- package/dist/Typography-ZFnL1M33.js.map +1 -0
- package/dist/button.d.ts +2 -2
- package/dist/button.js +2 -2
- package/dist/check-item.d.ts +2 -0
- package/dist/check-item.js +5 -0
- package/dist/checkbox.d.ts +2 -2
- package/dist/checkbox.js +3 -3
- package/dist/{index-BMSLSVxv.d.ts → index-B33Qb8xC.d.ts} +4 -13
- package/dist/index-CADs9cEh.d.ts +13 -0
- package/dist/{index-DeyMp__h.d.ts → index-CDUVPVvZ.d.ts} +2 -2
- package/dist/{index-CRdoo14l.d.ts → index-Dkyy3OOB.d.ts} +13 -9
- package/dist/{index-Y4JLziyn.d.ts → index-DuKjuLFf.d.ts} +2 -2
- package/dist/{index-BN9pjWqo.d.ts → index-NpIJSn1Q.d.ts} +48 -3
- package/dist/index-feodN4N9.d.ts +48 -0
- package/dist/index.d.ts +9 -7
- package/dist/index.js +12 -9
- package/dist/info-summary.js +2 -2
- package/dist/input.d.ts +2 -2
- package/dist/input.js +4 -3
- package/dist/tab-switch.d.ts +1 -1
- package/dist/tab-switch.js +2 -2
- package/dist/text-area.d.ts +3 -0
- package/dist/text-area.js +6 -0
- package/dist/theme-context.d.ts +1 -1
- package/dist/theme-context.js +3 -1
- package/dist/{types-CzIXNt_Y.d.ts → types-WcPOnA5M.d.ts} +3 -3
- package/dist/typography.d.ts +1 -1
- package/dist/typography.js +1 -1
- package/dist/{useThemedStyles-t3wVpy-H.d.ts → useThemedStyles-CniQ6zDU.d.ts} +10 -2
- package/package.json +12 -1
- package/dist/Button-FBwDmqJ7.js.map +0 -1
- package/dist/Checkbox-D2dDt6Hp.js.map +0 -1
- package/dist/InfoSummary-DSOwr7Q1.js.map +0 -1
- package/dist/Input-CTx0xk1z.js.map +0 -1
- package/dist/TabSwitch-Bewsxeqz.js.map +0 -1
- package/dist/ThemeContext-BAcoPRJ-.js.map +0 -1
- package/dist/Typography-CTfrQCqI.js.map +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { n as useThemedStyles, t as Typography } from "./Typography-
|
|
1
|
+
import { n as styled, r as useThemedStyles, t as Typography } from "./Typography-ZFnL1M33.js";
|
|
2
2
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
3
3
|
import { AnimatePresence, motion } from "framer-motion";
|
|
4
4
|
|
|
@@ -28,14 +28,14 @@ function getBorder$1(props) {
|
|
|
28
28
|
//#endregion
|
|
29
29
|
//#region src/components/toolkit/Loader/styles.ts
|
|
30
30
|
function createButtonLoaderStyles$1(props) {
|
|
31
|
-
return { container: {
|
|
31
|
+
return styled({ container: {
|
|
32
32
|
display: " inline-block",
|
|
33
33
|
width: props.size || DEFAULT_SIZE,
|
|
34
34
|
height: props.size || DEFAULT_SIZE,
|
|
35
35
|
borderRadius: "50%",
|
|
36
36
|
border: getBorder$1(props),
|
|
37
37
|
borderLeftColor: props.color || DEFAULT_COLOR
|
|
38
|
-
} };
|
|
38
|
+
} });
|
|
39
39
|
}
|
|
40
40
|
|
|
41
41
|
//#endregion
|
|
@@ -53,7 +53,7 @@ const Loader = (props) => {
|
|
|
53
53
|
//#endregion
|
|
54
54
|
//#region src/components/commons/buttons/Button/components/ButtonLoader/styles.ts
|
|
55
55
|
function createButtonLoaderStyles() {
|
|
56
|
-
return { container: {
|
|
56
|
+
return styled({ container: {
|
|
57
57
|
position: "absolute",
|
|
58
58
|
top: 0,
|
|
59
59
|
left: 0,
|
|
@@ -63,7 +63,7 @@ function createButtonLoaderStyles() {
|
|
|
63
63
|
alignItems: "center",
|
|
64
64
|
justifyContent: "center",
|
|
65
65
|
borderRadius: "var(--px-border-radius-button)"
|
|
66
|
-
} };
|
|
66
|
+
} });
|
|
67
67
|
}
|
|
68
68
|
|
|
69
69
|
//#endregion
|
|
@@ -81,21 +81,23 @@ const ButtonLoader = ({ color }) => {
|
|
|
81
81
|
|
|
82
82
|
//#endregion
|
|
83
83
|
//#region src/components/commons/buttons/Button/styles.ts
|
|
84
|
-
function createButtonStyles({ color, variant, disabled, fullWidth, textAlign }) {
|
|
84
|
+
function createButtonStyles({ color, variant, disabled, fullWidth, textAlign, outlineColor }) {
|
|
85
85
|
const finalVariant = variant ?? "filled";
|
|
86
|
-
return {
|
|
86
|
+
return styled({
|
|
87
87
|
container: {
|
|
88
|
-
minHeight: "
|
|
88
|
+
minHeight: "2rem",
|
|
89
89
|
height: "fit-content",
|
|
90
90
|
width: fullWidth ? "100%" : "fit-content",
|
|
91
91
|
position: "relative",
|
|
92
92
|
display: "flex",
|
|
93
|
+
justifyContent: textAlign || "center",
|
|
93
94
|
padding: "10px var(--px-space-xl)",
|
|
94
95
|
gap: "var(--px-space-sm)",
|
|
95
96
|
borderRadius: "var(--px-radius-md)",
|
|
96
97
|
cursor: disabled ? "not-allowed" : "pointer",
|
|
97
98
|
opacity: disabled ? .5 : 1,
|
|
98
|
-
|
|
99
|
+
transition: "background-color 0.5s",
|
|
100
|
+
border: getBorder(finalVariant, outlineColor || color),
|
|
99
101
|
backgroundColor: getBackgroundColor(finalVariant, color),
|
|
100
102
|
__rules: { "&:hover": { opacity: "0.85 !important" } }
|
|
101
103
|
},
|
|
@@ -103,13 +105,12 @@ function createButtonStyles({ color, variant, disabled, fullWidth, textAlign })
|
|
|
103
105
|
display: "flex",
|
|
104
106
|
flexDirection: "row",
|
|
105
107
|
alignItems: "center",
|
|
106
|
-
justifyContent: textAlign || "center",
|
|
107
108
|
padding: "0",
|
|
108
109
|
borderRadius: "inherit",
|
|
109
110
|
whiteSpace: "nowrap",
|
|
110
111
|
columnGap: "var(--px-space-sm)"
|
|
111
112
|
}
|
|
112
|
-
};
|
|
113
|
+
});
|
|
113
114
|
}
|
|
114
115
|
function getBackgroundColor(variant, color) {
|
|
115
116
|
if (color) return color;
|
|
@@ -145,7 +146,17 @@ const Button = ({ type = "button", variant = "filled", ...rest }) => {
|
|
|
145
146
|
};
|
|
146
147
|
const textColor = getTextColor(resolvedProps);
|
|
147
148
|
const { label, endIcon, startIcon, loading } = resolvedProps;
|
|
148
|
-
const { styles, classes } = useThemedStyles(resolvedProps, createButtonStyles, {
|
|
149
|
+
const { styles, classes } = useThemedStyles(resolvedProps, createButtonStyles, {
|
|
150
|
+
override: rest.styles,
|
|
151
|
+
applyCommonProps: true,
|
|
152
|
+
commonSlot: "container",
|
|
153
|
+
pick: (p) => [
|
|
154
|
+
p.disabled,
|
|
155
|
+
p.loading,
|
|
156
|
+
p.label,
|
|
157
|
+
p.color
|
|
158
|
+
]
|
|
159
|
+
});
|
|
149
160
|
function handleButtonClick() {
|
|
150
161
|
if (disabled) return;
|
|
151
162
|
if (rest.onClick) rest.onClick();
|
|
@@ -175,4 +186,4 @@ const Button = ({ type = "button", variant = "filled", ...rest }) => {
|
|
|
175
186
|
|
|
176
187
|
//#endregion
|
|
177
188
|
export { Button as t };
|
|
178
|
-
//# sourceMappingURL=Button-
|
|
189
|
+
//# sourceMappingURL=Button-rI1zyBIr.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Button-rI1zyBIr.js","names":["getBorder","createButtonLoaderStyles","getBorder","Loader: React.FC<LoaderProps>","createButtonLoaderStyles","ButtonLoader: React.FC<Props>","Button: React.FC<ButtonProps>"],"sources":["../src/utils/animations/spiner.ts","../src/components/toolkit/Loader/constants.ts","../src/components/toolkit/Loader/utils.ts","../src/components/toolkit/Loader/styles.ts","../src/components/toolkit/Loader/index.tsx","../src/components/commons/buttons/Button/components/ButtonLoader/styles.ts","../src/components/commons/buttons/Button/components/ButtonLoader/index.tsx","../src/components/commons/buttons/Button/styles.ts","../src/components/commons/buttons/Button/index.tsx"],"sourcesContent":["export const SPINNER_ANIMATION = {\n animate: { rotate: 360 },\n transition: {\n repeat: Infinity,\n duration: 1,\n ease: 'linear'\n }\n}\n","const DEFAULT_SIZE = '20px'\nconst DEFAULT_THICKNESS = '2px'\n\nconst DEFAULT_COLOR = 'white'\nconst DEFAULT_EMPTY_COLOR = 'transparent'\n\nexport { DEFAULT_SIZE, DEFAULT_THICKNESS, DEFAULT_COLOR, DEFAULT_EMPTY_COLOR }\n","// Utils\nimport { DEFAULT_THICKNESS, DEFAULT_EMPTY_COLOR } from './constants'\n\n// Types\nimport type { LoaderProps } from './types'\n\nexport function getBorder(props: LoaderProps) {\n const thickness = props.thickness || DEFAULT_THICKNESS\n const emptyColor = props.emptyColor || DEFAULT_EMPTY_COLOR\n\n return `${thickness} solid ${emptyColor}`\n}\n","// Types\nimport { styled, type StyleMap } from '@hooks/useThemedStyles/types'\nimport type { LoaderProps } from './types'\nimport { getBorder } from './utils'\nimport { DEFAULT_COLOR, DEFAULT_SIZE } from './constants'\n\nexport function createButtonLoaderStyles(props: LoaderProps): StyleMap {\n return styled({\n container: {\n display: ' inline-block',\n\n width: props.size || DEFAULT_SIZE,\n height: props.size || DEFAULT_SIZE,\n\n borderRadius: '50%',\n border: getBorder(props),\n borderLeftColor: props.color || DEFAULT_COLOR\n }\n })\n}\n","// External Libraries\nimport type React from 'react'\nimport { motion } from 'framer-motion'\n\n// Hooks\nimport { useThemedStyles } from '@hooks/useThemedStyles'\n\n// Utils\nimport { SPINNER_ANIMATION } from '@utils/animations'\n\n// Types\nimport type { LoaderProps } from './types'\n\n// Styles\nimport { createButtonLoaderStyles } from './styles'\n\nexport const Loader: React.FC<LoaderProps> = props => {\n // Hooks\n const { styles } = useThemedStyles(props, createButtonLoaderStyles, {})\n\n return (\n <motion.div\n role=\"status\"\n aria-label=\"Loading\"\n style={styles.container}\n {...SPINNER_ANIMATION}\n />\n )\n}\n","// Types\nimport { styled, type StyleMap } from '@hooks/useThemedStyles/types'\n\nexport function createButtonLoaderStyles(): StyleMap {\n return styled({\n container: {\n position: 'absolute',\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n\n borderRadius: 'var(--px-border-radius-button)'\n }\n })\n}\n","// External Libraries\nimport type React from 'react'\nimport { motion } from 'framer-motion'\n\n// Components\nimport { Loader } from '@components/toolkit/Loader'\n\n// Hooks\nimport { useThemedStyles } from '@hooks/useThemedStyles'\n\n// Styles\nimport { createButtonLoaderStyles } from './styles'\n\ntype Props = {\n color: string\n}\n\nexport const ButtonLoader: React.FC<Props> = ({ color }) => {\n // Hooks\n const { styles } = useThemedStyles({}, createButtonLoaderStyles, {})\n\n return (\n <motion.div\n style={styles.container}\n initial={{ opacity: 0 }}\n animate={{ opacity: 1 }}\n exit={{ opacity: 0 }}\n >\n <Loader color={color} />\n </motion.div>\n )\n}\n","// Types\nimport type { ButtonProps, ButtonVariant } from './types'\nimport { styled } from '@hooks/useThemedStyles/types'\n\nexport function createButtonStyles({\n color,\n variant,\n disabled,\n fullWidth,\n textAlign,\n outlineColor\n}: ButtonProps) {\n const finalVariant = variant ?? 'filled'\n\n return styled({\n container: {\n minHeight: '2rem',\n height: 'fit-content',\n width: fullWidth ? '100%' : 'fit-content',\n\n position: 'relative',\n display: 'flex',\n justifyContent: textAlign || 'center',\n\n padding: '10px var(--px-space-xl)',\n gap: 'var(--px-space-sm)',\n\n borderRadius: 'var(--px-radius-md)',\n\n cursor: disabled ? 'not-allowed' : 'pointer',\n opacity: disabled ? 0.5 : 1,\n transition: 'background-color 0.5s',\n\n border: getBorder(finalVariant, outlineColor || color),\n backgroundColor: getBackgroundColor(finalVariant, color),\n\n __rules: {\n '&:hover': {\n opacity: '0.85 !important'\n }\n }\n },\n\n content: {\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'center',\n\n padding: '0',\n borderRadius: 'inherit',\n\n whiteSpace: 'nowrap',\n columnGap: 'var(--px-space-sm)'\n }\n })\n}\n\nfunction getBackgroundColor(variant: ButtonVariant, color?: string): string {\n if (color) return color\n\n if (variant === 'filled') return 'var(--px-btn-filled-bg)'\n\n if (variant === 'outlined') return 'transparent'\n\n if (variant === 'ghost') return 'transparent'\n\n return 'var(--px-btn-filled-bg)'\n}\n\nfunction getBorder(variant: ButtonVariant, color?: string): string {\n if (color) return `1px solid ${color}`\n\n if (variant === 'filled') return '1px solid var(--px-btn-filled-bg)'\n\n if (variant === 'outlined') return '1px solid var(--px-btn-outlined-border)'\n\n if (variant === 'ghost') return 'none'\n\n return '1px solid var(--px-color-primary)'\n}\n\nexport function getTextColor({ variant, labelColor }: ButtonProps) {\n if (labelColor) return labelColor\n\n if (variant === 'filled') return 'var(--px-btn-filled-label)'\n\n if (variant === 'outlined') return 'var(--px-btn-outlined-label)'\n\n if (variant === 'ghost') return '--px-btn-ghost-label'\n\n return 'var(--px-btn-filled-label)'\n}\n","// External Libraries\nimport type React from 'react'\nimport { AnimatePresence } from 'framer-motion'\n\n// Components\nimport { Typography } from '@components/toolkit/Typography'\nimport { ButtonLoader } from './components/ButtonLoader'\n\n// Hooks\nimport { useThemedStyles } from '@hooks/useThemedStyles'\n\n// Types\nimport type { ButtonProps } from './types'\n\n// Styles\nimport { createButtonStyles, getTextColor } from './styles'\n\nexport const Button: React.FC<ButtonProps> = ({\n type = 'button',\n variant = 'filled',\n ...rest\n}) => {\n // Constants\n const disabled = rest.disabled || rest.loading\n const resolvedProps = { type, variant, disabled, ...rest }\n const textColor = getTextColor(resolvedProps)\n const { label, endIcon, startIcon, loading } = resolvedProps\n\n // Hooks\n const { styles, classes } = useThemedStyles(\n resolvedProps,\n createButtonStyles,\n {\n override: rest.styles,\n applyCommonProps: true,\n commonSlot: 'container',\n pick: p => [p.disabled, p.loading, p.label, p.color]\n }\n )\n\n // Functions\n function handleButtonClick() {\n if (disabled) return\n\n if (rest.onClick) rest.onClick()\n }\n\n return (\n <button\n type={type}\n disabled={disabled}\n aria-busy={rest.loading}\n style={styles.container}\n className={classes.container}\n onClick={handleButtonClick}\n >\n <div style={styles.content}>\n {startIcon ?? null}\n\n <Typography variant=\"b1\" color={textColor}>\n {label}\n </Typography>\n\n {endIcon ?? null}\n\n {loading ? (\n <AnimatePresence>\n <ButtonLoader color={textColor} />\n </AnimatePresence>\n ) : null}\n </div>\n </button>\n )\n}\n"],"mappings":";;;;;AAAA,MAAa,oBAAoB;CAC/B,SAAS,EAAE,QAAQ,KAAK;CACxB,YAAY;EACV,QAAQ;EACR,UAAU;EACV,MAAM;EACP;CACF;;;;ACPD,MAAM,eAAe;AACrB,MAAM,oBAAoB;AAE1B,MAAM,gBAAgB;AACtB,MAAM,sBAAsB;;;;ACE5B,SAAgBA,YAAU,OAAoB;AAI5C,QAAO,GAHW,MAAM,aAAa,kBAGjB,SAFD,MAAM,cAAc;;;;;ACFzC,SAAgBC,2BAAyB,OAA8B;AACrE,QAAO,OAAO,EACZ,WAAW;EACT,SAAS;EAET,OAAO,MAAM,QAAQ;EACrB,QAAQ,MAAM,QAAQ;EAEtB,cAAc;EACd,QAAQC,YAAU,MAAM;EACxB,iBAAiB,MAAM,SAAS;EACjC,EACF,CAAC;;;;;ACFJ,MAAaC,UAAgC,UAAS;CAEpD,MAAM,EAAE,WAAW,gBAAgB,OAAOC,4BAA0B,EAAE,CAAC;AAEvE,QACE,oBAAC,OAAO;EACN,MAAK;EACL,cAAW;EACX,OAAO,OAAO;EACd,GAAI;GACJ;;;;;ACvBN,SAAgB,2BAAqC;AACnD,QAAO,OAAO,EACZ,WAAW;EACT,UAAU;EACV,KAAK;EACL,MAAM;EACN,OAAO;EACP,QAAQ;EAER,SAAS;EACT,YAAY;EACZ,gBAAgB;EAEhB,cAAc;EACf,EACF,CAAC;;;;;ACDJ,MAAaC,gBAAiC,EAAE,YAAY;CAE1D,MAAM,EAAE,WAAW,gBAAgB,EAAE,EAAE,0BAA0B,EAAE,CAAC;AAEpE,QACE,oBAAC,OAAO;EACN,OAAO,OAAO;EACd,SAAS,EAAE,SAAS,GAAG;EACvB,SAAS,EAAE,SAAS,GAAG;EACvB,MAAM,EAAE,SAAS,GAAG;YAEpB,oBAAC,UAAc,QAAS;GACb;;;;;ACzBjB,SAAgB,mBAAmB,EACjC,OACA,SACA,UACA,WACA,WACA,gBACc;CACd,MAAM,eAAe,WAAW;AAEhC,QAAO,OAAO;EACZ,WAAW;GACT,WAAW;GACX,QAAQ;GACR,OAAO,YAAY,SAAS;GAE5B,UAAU;GACV,SAAS;GACT,gBAAgB,aAAa;GAE7B,SAAS;GACT,KAAK;GAEL,cAAc;GAEd,QAAQ,WAAW,gBAAgB;GACnC,SAAS,WAAW,KAAM;GAC1B,YAAY;GAEZ,QAAQ,UAAU,cAAc,gBAAgB,MAAM;GACtD,iBAAiB,mBAAmB,cAAc,MAAM;GAExD,SAAS,EACP,WAAW,EACT,SAAS,mBACV,EACF;GACF;EAED,SAAS;GACP,SAAS;GACT,eAAe;GACf,YAAY;GAEZ,SAAS;GACT,cAAc;GAEd,YAAY;GACZ,WAAW;GACZ;EACF,CAAC;;AAGJ,SAAS,mBAAmB,SAAwB,OAAwB;AAC1E,KAAI,MAAO,QAAO;AAElB,KAAI,YAAY,SAAU,QAAO;AAEjC,KAAI,YAAY,WAAY,QAAO;AAEnC,KAAI,YAAY,QAAS,QAAO;AAEhC,QAAO;;AAGT,SAAS,UAAU,SAAwB,OAAwB;AACjE,KAAI,MAAO,QAAO,aAAa;AAE/B,KAAI,YAAY,SAAU,QAAO;AAEjC,KAAI,YAAY,WAAY,QAAO;AAEnC,KAAI,YAAY,QAAS,QAAO;AAEhC,QAAO;;AAGT,SAAgB,aAAa,EAAE,SAAS,cAA2B;AACjE,KAAI,WAAY,QAAO;AAEvB,KAAI,YAAY,SAAU,QAAO;AAEjC,KAAI,YAAY,WAAY,QAAO;AAEnC,KAAI,YAAY,QAAS,QAAO;AAEhC,QAAO;;;;;ACzET,MAAaC,UAAiC,EAC5C,OAAO,UACP,UAAU,UACV,GAAG,WACC;CAEJ,MAAM,WAAW,KAAK,YAAY,KAAK;CACvC,MAAM,gBAAgB;EAAE;EAAM;EAAS;EAAU,GAAG;EAAM;CAC1D,MAAM,YAAY,aAAa,cAAc;CAC7C,MAAM,EAAE,OAAO,SAAS,WAAW,YAAY;CAG/C,MAAM,EAAE,QAAQ,YAAY,gBAC1B,eACA,oBACA;EACE,UAAU,KAAK;EACf,kBAAkB;EAClB,YAAY;EACZ,OAAM,MAAK;GAAC,EAAE;GAAU,EAAE;GAAS,EAAE;GAAO,EAAE;GAAM;EACrD,CACF;CAGD,SAAS,oBAAoB;AAC3B,MAAI,SAAU;AAEd,MAAI,KAAK,QAAS,MAAK,SAAS;;AAGlC,QACE,oBAAC;EACO;EACI;EACV,aAAW,KAAK;EAChB,OAAO,OAAO;EACd,WAAW,QAAQ;EACnB,SAAS;YAET,qBAAC;GAAI,OAAO,OAAO;;IAChB,aAAa;IAEd,oBAAC;KAAW,SAAQ;KAAK,OAAO;eAC7B;MACU;IAEZ,WAAW;IAEX,UACC,oBAAC,6BACC,oBAAC,gBAAa,OAAO,YAAa,GAClB,GAChB;;IACA;GACC"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { t as Icon } from "./Icon-T_2VPPNe.js";
|
|
2
|
+
import { n as styled, r as useThemedStyles, t as Typography } from "./Typography-ZFnL1M33.js";
|
|
3
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
4
|
+
|
|
5
|
+
//#region src/components/toolkit/CheckItem/styles.ts
|
|
6
|
+
function createCheckItemStyles({ checked }) {
|
|
7
|
+
return styled({
|
|
8
|
+
container: {
|
|
9
|
+
display: "flex",
|
|
10
|
+
flexDirection: "row",
|
|
11
|
+
columnGap: "var(--px-space-sm)"
|
|
12
|
+
},
|
|
13
|
+
iconContainer: {
|
|
14
|
+
width: "20px",
|
|
15
|
+
height: "20px",
|
|
16
|
+
display: "flex",
|
|
17
|
+
alignItems: "center",
|
|
18
|
+
justifyContent: "center",
|
|
19
|
+
backgroundColor: checked ? "var(--px-color-success)" : "var(--px-color-disabled)",
|
|
20
|
+
borderRadius: "50%"
|
|
21
|
+
}
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
//#endregion
|
|
26
|
+
//#region src/components/toolkit/CheckItem/index.tsx
|
|
27
|
+
const CheckItem = (props) => {
|
|
28
|
+
const { styles } = useThemedStyles(props, createCheckItemStyles);
|
|
29
|
+
return /* @__PURE__ */ jsxs("div", {
|
|
30
|
+
style: styles.container,
|
|
31
|
+
children: [/* @__PURE__ */ jsx("div", {
|
|
32
|
+
style: styles.iconContainer,
|
|
33
|
+
children: /* @__PURE__ */ jsx(Icon, {
|
|
34
|
+
name: "general-check",
|
|
35
|
+
color: "white",
|
|
36
|
+
size: "sm"
|
|
37
|
+
})
|
|
38
|
+
}), /* @__PURE__ */ jsx(Typography, {
|
|
39
|
+
variant: "b2",
|
|
40
|
+
children: props.label
|
|
41
|
+
})]
|
|
42
|
+
});
|
|
43
|
+
};
|
|
44
|
+
|
|
45
|
+
//#endregion
|
|
46
|
+
export { CheckItem as t };
|
|
47
|
+
//# sourceMappingURL=CheckItem-OVa0nZlJ.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CheckItem-OVa0nZlJ.js","names":["CheckItem: React.FC<CheckItemProps>"],"sources":["../src/components/toolkit/CheckItem/styles.ts","../src/components/toolkit/CheckItem/index.tsx"],"sourcesContent":["// Types\nimport type { CheckItemProps } from './types'\nimport { styled, type StyleMap } from '@hooks/useThemedStyles/types'\n\nexport function createCheckItemStyles({ checked }: CheckItemProps): StyleMap {\n return styled({\n container: {\n display: 'flex',\n flexDirection: 'row',\n columnGap: 'var(--px-space-sm)'\n },\n\n iconContainer: {\n width: '20px',\n height: '20px',\n\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n\n backgroundColor: checked\n ? 'var(--px-color-success)'\n : 'var(--px-color-disabled)',\n\n borderRadius: '50%'\n }\n })\n}\n","// External Libraries\nimport type React from 'react'\n\n// Components\nimport { Icon } from '../Icon'\nimport { Typography } from '../Typography'\n\n// Hooks\nimport { useThemedStyles } from '@hooks/useThemedStyles'\n\n// Types\nimport type { CheckItemProps } from './types'\n\n// Styles\nimport { createCheckItemStyles } from './styles'\n\nexport const CheckItem: React.FC<CheckItemProps> = props => {\n // Hooks\n const { styles } = useThemedStyles(props, createCheckItemStyles)\n\n return (\n <div style={styles.container}>\n <div style={styles.iconContainer}>\n <Icon name=\"general-check\" color=\"white\" size=\"sm\" />\n </div>\n\n <Typography variant=\"b2\">{props.label}</Typography>\n </div>\n )\n}\n"],"mappings":";;;;;AAIA,SAAgB,sBAAsB,EAAE,WAAqC;AAC3E,QAAO,OAAO;EACZ,WAAW;GACT,SAAS;GACT,eAAe;GACf,WAAW;GACZ;EAED,eAAe;GACb,OAAO;GACP,QAAQ;GAER,SAAS;GACT,YAAY;GACZ,gBAAgB;GAEhB,iBAAiB,UACb,4BACA;GAEJ,cAAc;GACf;EACF,CAAC;;;;;ACVJ,MAAaA,aAAsC,UAAS;CAE1D,MAAM,EAAE,WAAW,gBAAgB,OAAO,sBAAsB;AAEhE,QACE,qBAAC;EAAI,OAAO,OAAO;aACjB,oBAAC;GAAI,OAAO,OAAO;aACjB,oBAAC;IAAK,MAAK;IAAgB,OAAM;IAAQ,MAAK;KAAO;IACjD,EAEN,oBAAC;GAAW,SAAQ;aAAM,MAAM;IAAmB;GAC/C"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { t as Icon } from "./Icon-
|
|
2
|
-
import { n as useThemedStyles, t as Typography } from "./Typography-
|
|
1
|
+
import { t as Icon } from "./Icon-T_2VPPNe.js";
|
|
2
|
+
import { n as styled, r as useThemedStyles, t as Typography } from "./Typography-ZFnL1M33.js";
|
|
3
3
|
import { Checkbox, Label } from "radix-ui";
|
|
4
4
|
import { useId } from "react";
|
|
5
5
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
@@ -7,13 +7,13 @@ import { jsx, jsxs } from "react/jsx-runtime";
|
|
|
7
7
|
//#region src/components/toolkit/Checkbox/components/Label/styles.ts
|
|
8
8
|
function createLabelStyles(props) {
|
|
9
9
|
const { disabled } = props;
|
|
10
|
-
return { container: {
|
|
10
|
+
return styled({ container: {
|
|
11
11
|
userSelect: "none",
|
|
12
12
|
opacity: disabled ? .6 : 1,
|
|
13
13
|
cursor: disabled ? "not-allowed" : "pointer",
|
|
14
14
|
transition: "all 200ms",
|
|
15
15
|
__rules: { ":hover": { color: "var(--px-color-secondary)" } }
|
|
16
|
-
} };
|
|
16
|
+
} });
|
|
17
17
|
}
|
|
18
18
|
|
|
19
19
|
//#endregion
|
|
@@ -73,7 +73,7 @@ const CHECKBOX_STYLES = {
|
|
|
73
73
|
function createCheckBoxStyles(props) {
|
|
74
74
|
const { color, checked, size = "md", radius = "md", disabled = false, labelPlacement = "right" } = props;
|
|
75
75
|
const focusIndicatorOffsetColor = "#fff";
|
|
76
|
-
return {
|
|
76
|
+
return styled({
|
|
77
77
|
container: {
|
|
78
78
|
display: "flex",
|
|
79
79
|
columnGap: "0.5rem",
|
|
@@ -108,13 +108,31 @@ function createCheckBoxStyles(props) {
|
|
|
108
108
|
justifyContent: "center",
|
|
109
109
|
color: "var(--px-text-primary, #4b5563)"
|
|
110
110
|
}
|
|
111
|
-
};
|
|
111
|
+
});
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
//#endregion
|
|
115
|
+
//#region src/utils/functions/getContrastingTextColor.ts
|
|
116
|
+
/**
|
|
117
|
+
* Returns the contrasting text color for a given background color.
|
|
118
|
+
* @param backgroundColor hexadecimal color (i.e.: "#ffffff", "#000", "#ffcc00")
|
|
119
|
+
*/
|
|
120
|
+
function getContrastingTextColor(backgroundColor) {
|
|
121
|
+
let hex = backgroundColor.replace("#", "");
|
|
122
|
+
if (hex.length === 3) hex = hex.split("").map((c) => c + c).join("");
|
|
123
|
+
if (hex.length === 8) hex = hex.substring(0, 6);
|
|
124
|
+
if (hex.length !== 6) return "black";
|
|
125
|
+
const r = parseInt(hex.substring(0, 2), 16);
|
|
126
|
+
const g = parseInt(hex.substring(2, 4), 16);
|
|
127
|
+
const b = parseInt(hex.substring(4, 6), 16);
|
|
128
|
+
return (.299 * r + .587 * g + .114 * b) / 255 > .6 ? "black" : "white";
|
|
112
129
|
}
|
|
113
130
|
|
|
114
131
|
//#endregion
|
|
115
132
|
//#region src/components/toolkit/Checkbox/index.tsx
|
|
116
133
|
const Checkbox$1 = (props) => {
|
|
117
|
-
const { icon, label, labelVariant, checked = false, disabled = false, onChange } = props;
|
|
134
|
+
const { icon, label, color, labelVariant, checked = false, disabled = false, onChange } = props;
|
|
135
|
+
const iconColor = color ? getContrastingTextColor(color) : void 0;
|
|
118
136
|
const { id } = useCheckbox();
|
|
119
137
|
const { styles, classes } = useThemedStyles(props, createCheckBoxStyles);
|
|
120
138
|
return /* @__PURE__ */ jsxs("div", {
|
|
@@ -132,7 +150,7 @@ const Checkbox$1 = (props) => {
|
|
|
132
150
|
children: icon ?? /* @__PURE__ */ jsx(Icon, {
|
|
133
151
|
name: "general-check",
|
|
134
152
|
size: "sm",
|
|
135
|
-
color:
|
|
153
|
+
color: iconColor
|
|
136
154
|
})
|
|
137
155
|
})
|
|
138
156
|
}), label ? /* @__PURE__ */ jsx(Label$1, {
|
|
@@ -146,4 +164,4 @@ const Checkbox$1 = (props) => {
|
|
|
146
164
|
|
|
147
165
|
//#endregion
|
|
148
166
|
export { Checkbox$1 as t };
|
|
149
|
-
//# sourceMappingURL=Checkbox-
|
|
167
|
+
//# sourceMappingURL=Checkbox-DdPF40bm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Checkbox-DdPF40bm.js","names":["Label: React.FC<LabelProps>","LabelRadix","CHECKBOX_STYLES: Record<string, StyleMap>","Checkbox: React.FC<CheckboxProps>","CheckboxRadix","checked","Label"],"sources":["../src/components/toolkit/Checkbox/components/Label/styles.ts","../src/components/toolkit/Checkbox/components/Label/index.tsx","../src/components/toolkit/Checkbox/hooks/useCheckbox.ts","../src/components/toolkit/Checkbox/styles.ts","../src/utils/functions/getContrastingTextColor.ts","../src/components/toolkit/Checkbox/index.tsx"],"sourcesContent":["// Types\nimport type { LabelProps } from './types'\nimport { styled, type StyleMap } from '@hooks/useThemedStyles/types'\n\nexport function createLabelStyles(props: LabelProps): StyleMap {\n const { disabled } = props\n\n return styled({\n container: {\n userSelect: 'none',\n opacity: disabled ? 0.6 : 1,\n cursor: disabled ? 'not-allowed' : 'pointer',\n\n transition: 'all 200ms',\n\n __rules: {\n ':hover': { color: 'var(--px-color-secondary)' }\n }\n }\n })\n}\n","// External libraries\nimport { Label as LabelRadix } from 'radix-ui'\n\n// Components\nimport { Typography } from '@components/toolkit/Typography'\n\n// Hooks\nimport { useThemedStyles } from '@hooks/useThemedStyles'\n\n// Types\nimport type { LabelProps } from './types'\n\n// Styles\nimport { createLabelStyles } from './styles'\n\nexport const Label: React.FC<LabelProps> = props => {\n const { idFor, label, labelVariant } = props\n\n // Hooks\n const { styles } = useThemedStyles(props, createLabelStyles, {\n pick: p => [p.disabled, p.labelVariant, p.label],\n applyCommonProps: true\n })\n\n return (\n <LabelRadix.Root htmlFor={idFor} style={styles.container}>\n <Typography variant={labelVariant ?? 'b1'} fontWeight=\"normal\">\n {label}\n </Typography>\n </LabelRadix.Root>\n )\n}\n","// External libraries\nimport { useId } from 'react'\n\nexport function useCheckbox() {\n return {\n id: useId()\n }\n}\n","// Types\nimport type { CheckboxProps } from './types'\nimport { styled, type StyleMap } from '@hooks/useThemedStyles/types'\n\nexport const CHECKBOX_STYLES: Record<string, StyleMap> = {\n size: {\n sm: { width: '1rem', height: '1rem' },\n md: { width: '1.25rem', height: '1.25rem' },\n lg: { width: '1.5rem', height: '1.5rem' }\n },\n radius: {\n none: { borderRadius: 0 },\n sm: { borderRadius: '0.25rem' },\n md: { borderRadius: '0.375rem' },\n lg: { borderRadius: '0.5rem' },\n full: { borderRadius: '100%' }\n }\n}\n\nexport function createCheckBoxStyles(props: CheckboxProps): StyleMap {\n const {\n color,\n checked,\n size = 'md',\n radius = 'md',\n disabled = false,\n labelPlacement = 'right'\n } = props\n\n const focusIndicatorOffsetColor = '#fff'\n\n return styled({\n container: {\n display: 'flex',\n columnGap: '0.5rem',\n alignItems: 'center',\n '--px-ring-color': color ?? undefined,\n flexDirection: labelPlacement === 'right' ? 'row' : 'row-reverse'\n },\n\n root: {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n\n backgroundColor: checked ? color : 'white',\n borderWidth: '1px',\n borderStyle: 'solid',\n borderColor: checked ? color : 'var(--px-border-primary, #e5e7eb)',\n\n transition: 'color 200ms',\n opacity: disabled ? 0.5 : 1,\n cursor: disabled ? 'not-allowed' : 'pointer',\n\n ...CHECKBOX_STYLES.size[size],\n ...CHECKBOX_STYLES.radius[radius],\n\n __rules: {\n '&:hover': { borderColor: 'var(--px-border-secondary, #e5e7eb)' },\n '&:focus-visible': {\n outline: 'none',\n boxShadow: `0 0 0 2px ${focusIndicatorOffsetColor}, 0 0 0 4px var(--px-ring-color, #2b2b2bff)`\n }\n }\n },\n\n indicator: {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n color: 'var(--px-text-primary, #4b5563)'\n }\n })\n}\n","/**\n * Returns the contrasting text color for a given background color.\n * @param backgroundColor hexadecimal color (i.e.: \"#ffffff\", \"#000\", \"#ffcc00\")\n */\nexport function getContrastingTextColor(\n backgroundColor: string\n): 'black' | 'white' {\n let hex = backgroundColor.replace('#', '')\n\n if (hex.length === 3) {\n hex = hex\n .split('')\n .map(c => c + c)\n .join('')\n }\n\n if (hex.length === 8) {\n hex = hex.substring(0, 6)\n }\n\n if (hex.length !== 6) return 'black'\n\n const r = parseInt(hex.substring(0, 2), 16)\n const g = parseInt(hex.substring(2, 4), 16)\n const b = parseInt(hex.substring(4, 6), 16)\n\n const luminance = (0.299 * r + 0.587 * g + 0.114 * b) / 255\n\n return luminance > 0.6 ? 'black' : 'white'\n}\n","// External Libraries\nimport type React from 'react'\nimport { Checkbox as CheckboxRadix } from 'radix-ui'\n\n// Components\nimport { Icon } from '../Icon'\nimport { Label } from './components/Label'\n\n// Hooks\nimport { useCheckbox } from './hooks/useCheckbox'\nimport { useThemedStyles } from '@hooks/useThemedStyles'\n\n// Types\nimport type { CheckboxProps } from './types'\n\n// Styles\nimport { createCheckBoxStyles } from './styles'\nimport { getContrastingTextColor } from '@utils/functions'\n\nexport const Checkbox: React.FC<CheckboxProps> = props => {\n const {\n icon,\n label,\n color,\n labelVariant,\n checked = false,\n disabled = false,\n onChange\n } = props\n\n const iconColor = color ? getContrastingTextColor(color) : undefined\n\n // Hooks\n const { id } = useCheckbox()\n\n const { styles, classes } = useThemedStyles(props, createCheckBoxStyles)\n\n return (\n <div style={styles.container}>\n <CheckboxRadix.Root\n style={styles.root}\n className={classes.root}\n id={id}\n tabIndex={0}\n checked={checked}\n disabled={disabled}\n onCheckedChange={checked => onChange(checked === true)}\n >\n <CheckboxRadix.Indicator style={styles.indicator}>\n {icon ?? <Icon name=\"general-check\" size=\"sm\" color={iconColor} />}\n </CheckboxRadix.Indicator>\n </CheckboxRadix.Root>\n\n {label ? (\n <Label\n idFor={id}\n label={label}\n disabled={disabled}\n labelVariant={labelVariant}\n />\n ) : null}\n </div>\n )\n}\n"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { n as useThemedStyles } from "./Typography-
|
|
1
|
+
import { n as styled, r as useThemedStyles } from "./Typography-ZFnL1M33.js";
|
|
2
2
|
import { Suspense, useMemo } from "react";
|
|
3
3
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
4
4
|
|
|
@@ -169,13 +169,13 @@ const ICON_SIZE_MAP = {
|
|
|
169
169
|
//#region src/components/toolkit/Icon/style.ts
|
|
170
170
|
function createIconStyles(props) {
|
|
171
171
|
const { color, size = "md" } = props;
|
|
172
|
-
return { container: {
|
|
172
|
+
return styled({ container: {
|
|
173
173
|
display: "inline-flex",
|
|
174
174
|
alignItems: "center",
|
|
175
175
|
justifyContent: "center",
|
|
176
176
|
color: color === "primary" ? "var(--px-text-primary)" : color === "secondary" ? "var(--px-text-secondary)" : color,
|
|
177
177
|
...ICON_SIZE_MAP[size]
|
|
178
|
-
} };
|
|
178
|
+
} });
|
|
179
179
|
}
|
|
180
180
|
|
|
181
181
|
//#endregion
|
|
@@ -206,4 +206,4 @@ const Icon = (props) => {
|
|
|
206
206
|
|
|
207
207
|
//#endregion
|
|
208
208
|
export { Icon as t };
|
|
209
|
-
//# sourceMappingURL=Icon-
|
|
209
|
+
//# sourceMappingURL=Icon-T_2VPPNe.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Icon-CzUEwDPp.js","names":["ICON_SIZE_MAP: Record<string, CSSProperties>","IconLoaders"],"sources":["../src/assets/icons/__generated__/general/check.tsx","../src/assets/icons/__generated__/general/eye.tsx","../src/assets/icons/__generated__/general/eye-off.tsx","../src/assets/icons/__generated__/brands/facebook.tsx","../src/assets/icons/__generated__/brands/facebook-fit.tsx","../src/assets/icons/__generated__/brands/google.tsx","../src/assets/icons/index.tsx","../src/components/toolkit/Icon/constants.ts","../src/components/toolkit/Icon/style.ts","../src/components/toolkit/Icon/index.tsx"],"sourcesContent":["// Auto-generated from general/check.svg. Do not edit manually.\n\n// External Libraries\nimport type { SVGProps } from 'react'\n\nexport type CheckProps = SVGProps<SVGSVGElement> & { title?: string }\n\nexport const Check = ({ title, ...props }: CheckProps) => (\n<svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" strokeWidth={2} strokeLinecap=\"round\" strokeLinejoin=\"round\" {...props}>\n <title>{title ?? 'check'}</title><polyline points=\"20 6 9 17 4 12\"></polyline></svg>\n)\n","// Auto-generated from general/eye.svg. Do not edit manually.\n\n// External Libraries\nimport type { SVGProps } from 'react'\n\nexport type EyeProps = SVGProps<SVGSVGElement> & { title?: string }\n\nexport const Eye = ({ title, ...props }: EyeProps) => (\n<svg viewBox=\"0 0 24 24\" fill=\"none\" {...props}>\n<path d=\"M2.42012 12.7132C2.28394 12.4975 2.21584 12.3897 2.17772 12.2234C2.14909 12.0985 2.14909 11.9015 2.17772 11.7766C2.21584 11.6103 2.28394 11.5025 2.42012 11.2868C3.54553 9.50484 6.8954 5 12.0004 5C17.1054 5 20.4553 9.50484 21.5807 11.2868C21.7169 11.5025 21.785 11.6103 21.8231 11.7766C21.8517 11.9015 21.8517 12.0985 21.8231 12.2234C21.785 12.3897 21.7169 12.4975 21.5807 12.7132C20.4553 14.4952 17.1054 19 12.0004 19C6.8954 19 3.54553 14.4952 2.42012 12.7132Z\" stroke=\"currentColor\" strokeWidth={2} strokeLinecap=\"round\" strokeLinejoin=\"round\"/>\n <title>{title ?? 'eye'}</title>\n<path d=\"M12.0004 15C13.6573 15 15.0004 13.6569 15.0004 12C15.0004 10.3431 13.6573 9 12.0004 9C10.3435 9 9.0004 10.3431 9.0004 12C9.0004 13.6569 10.3435 15 12.0004 15Z\" stroke=\"currentColor\" strokeWidth={2} strokeLinecap=\"round\" strokeLinejoin=\"round\"/>\n</svg>\n)\n","// Auto-generated from general/eye-off.svg. Do not edit manually.\n\n// External Libraries\nimport type { SVGProps } from 'react'\n\nexport type EyeOffProps = SVGProps<SVGSVGElement> & { title?: string }\n\nexport const EyeOff = ({ title, ...props }: EyeOffProps) => (\n<svg viewBox=\"0 0 24 24\" fill=\"none\" {...props}>\n<path d=\"M10.7429 5.09232C11.1494 5.03223 11.5686 5 12.0004 5C17.1054 5 20.4553 9.50484 21.5807 11.2868C21.7169 11.5025 21.785 11.6103 21.8231 11.7767C21.8518 11.9016 21.8517 12.0987 21.8231 12.2236C21.7849 12.3899 21.7164 12.4985 21.5792 12.7156C21.2793 13.1901 20.8222 13.8571 20.2165 14.5805M6.72432 6.71504C4.56225 8.1817 3.09445 10.2194 2.42111 11.2853C2.28428 11.5019 2.21587 11.6102 2.17774 11.7765C2.1491 11.9014 2.14909 12.0984 2.17771 12.2234C2.21583 12.3897 2.28393 12.4975 2.42013 12.7132C3.54554 14.4952 6.89541 19 12.0004 19C14.0588 19 15.8319 18.2676 17.2888 17.2766M3.00042 3L21.0004 21M9.8791 9.87868C9.3362 10.4216 9.00042 11.1716 9.00042 12C9.00042 13.6569 10.3436 15 12.0004 15C12.8288 15 13.5788 14.6642 14.1217 14.1213\" stroke=\"currentColor\" strokeWidth={2} strokeLinecap=\"round\" strokeLinejoin=\"round\"/>\n <title>{title ?? 'eye-off'}</title>\n</svg>\n)\n","// Auto-generated from brands/facebook.svg. Do not edit manually.\n\n// External Libraries\nimport type { SVGProps } from 'react'\n\nexport type FacebookProps = SVGProps<SVGSVGElement> & { title?: string }\n\nexport const Facebook = ({ title, ...props }: FacebookProps) => (\n<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" {...props}>\n<path d=\"M16 8C16 11.9927 13.0707 15.3027 9.24667 15.9033V10.328H11.106L11.46 8.02133H9.24667V6.52467C9.24667 5.89333 9.556 5.27867 10.5467 5.27867H11.5527V3.31467C11.5527 3.31467 10.6393 3.15867 9.76667 3.15867C7.944 3.15867 6.75333 4.26333 6.75333 6.26267V8.02067H4.72733V10.3273H6.75333V15.9027C2.93 15.3013 0 11.992 0 8C0 3.582 3.582 0 8 0C12.418 0 16 3.58133 16 8Z\" fill=\"currentColor\"/>\n <title>{title ?? 'facebook'}</title>\n</svg>\n)\n","// Auto-generated from brands/facebook-fit.svg. Do not edit manually.\n\n// External Libraries\nimport type { SVGProps } from 'react'\n\nexport type FacebookFitProps = SVGProps<SVGSVGElement> & { title?: string }\n\nexport const FacebookFit = ({ title, ...props }: FacebookFitProps) => (\n<svg viewBox=\"0 0 1024 1024\" id=\"facebook\" {...props}>\n <path fill=\"#1877f2\" d=\"M1024,512C1024,229.23016,794.76978,0,512,0S0,229.23016,0,512c0,255.554,187.231,467.37012,432,505.77777V660H302V512H432V399.2C432,270.87982,508.43854,200,625.38922,200,681.40765,200,740,210,740,210V336H675.43713C611.83508,336,592,375.46667,592,415.95728V512H734L711.3,660H592v357.77777C836.769,979.37012,1024,767.554,1024,512Z\"></path>\n <title>{title ?? 'facebook-fit'}</title>\n <path fill=\"#fff\" d=\"M711.3,660,734,512H592V415.95728C592,375.46667,611.83508,336,675.43713,336H740V210s-58.59235-10-114.61078-10C508.43854,200,432,270.87982,432,399.2V512H302V660H432v357.77777a517.39619,517.39619,0,0,0,160,0V660Z\"></path>\n</svg>\n)\n","// Auto-generated from brands/google.svg. Do not edit manually.\n\n// External Libraries\nimport type { SVGProps } from 'react'\n\nexport type GoogleProps = SVGProps<SVGSVGElement> & { title?: string }\n\nexport const Google = ({ title, ...props }: GoogleProps) => (\n<svg width=\"800px\" height=\"800px\" viewBox=\"-3 0 262 262\" version=\"1.1\" preserveAspectRatio=\"xMidYMid\" {...props}>\n\t<g>\n\t\t<path d=\"M255.878,133.451 C255.878,122.717 255.007,114.884 253.122,106.761 L130.55,106.761 L130.55,155.209 L202.497,155.209 C201.047,167.249 193.214,185.381 175.807,197.565 L175.563,199.187 L214.318,229.21 L217.003,229.478 C241.662,206.704 255.878,173.196 255.878,133.451\" fill=\"#4285F4\"></path>\n <title>{title ?? 'google'}</title>\n\t\t<path d=\"M130.55,261.1 C165.798,261.1 195.389,249.495 217.003,229.478 L175.807,197.565 C164.783,205.253 149.987,210.62 130.55,210.62 C96.027,210.62 66.726,187.847 56.281,156.37 L54.75,156.5 L14.452,187.687 L13.925,189.152 C35.393,231.798 79.49,261.1 130.55,261.1\" fill=\"#34A853\"></path>\n\t\t<path d=\"M56.281,156.37 C53.525,148.247 51.93,139.543 51.93,130.55 C51.93,121.556 53.525,112.853 56.136,104.73 L56.063,103 L15.26,71.312 L13.925,71.947 C5.077,89.644 0,109.517 0,130.55 C0,151.583 5.077,171.455 13.925,189.152 L56.281,156.37\" fill=\"#FBBC05\"></path>\n\t\t<path d=\"M130.55,50.479 C155.064,50.479 171.6,61.068 181.029,69.917 L217.873,33.943 C195.245,12.91 165.798,0 130.55,0 C79.49,0 35.393,29.301 13.925,71.947 L56.136,104.73 C66.726,73.253 96.027,50.479 130.55,50.479\" fill=\"#EB4335\"></path>\n\t</g>\n</svg>\n)\n","// Auto-generated by generate-icon-components.sh. Do not edit manually.\n/** biome-ignore-all lint/suspicious/noShadowRestrictedNames: generated */\n\nimport { Check } from './__generated__/general/check'\nimport { Eye } from './__generated__/general/eye'\nimport { EyeOff } from './__generated__/general/eye-off'\nimport { Facebook } from './__generated__/brands/facebook'\nimport { FacebookFit } from './__generated__/brands/facebook-fit'\nimport { Google } from './__generated__/brands/google'\n\nconst icons = {\n 'brands-facebook': <Facebook />,\n 'brands-facebook-fit': <FacebookFit />,\n 'brands-google': <Google />,\n 'general-check': <Check />,\n 'general-eye': <Eye />,\n 'general-eye-off': <EyeOff />,\n}\n\nexport type IconName = keyof typeof icons\nexport default icons\n","// External Libraries\nimport type { CSSProperties } from \"react\";\n\nexport const ICON_SIZE_MAP: Record<string, CSSProperties> = {\n xs: {\n width: '0.75rem',\n height: '0.75rem'\n },\n sm: {\n width: '1rem',\n height: '1rem'\n },\n md: {\n width: '1.25rem',\n height: '1.25rem'\n },\n lg: {\n width: '1.5rem',\n height: '1.5rem'\n },\n xl: {\n width: '1.75rem',\n height: '1.75rem'\n },\n '2xl': {\n width: '2rem',\n height: '2rem'\n },\n '3xl': {\n width: '2.5rem',\n height: '2.5rem'\n }\n} as const","// External Libraries\nimport type { CSSProperties } from 'react'\n\n// Types\nimport type { IconProps } from './types'\n\n// Utils\nimport { ICON_SIZE_MAP } from './constants'\n\nexport function createIconStyles(props: IconProps) {\n const { color, size = 'md' } = props\n\n return {\n container: {\n display: 'inline-flex',\n alignItems: 'center',\n justifyContent: 'center',\n color:\n color === 'primary'\n ? 'var(--px-text-primary)'\n : color === 'secondary'\n ? 'var(--px-text-secondary)'\n : color,\n ...ICON_SIZE_MAP[size]\n } as CSSProperties\n }\n}\n","// External Libraries\nimport { Suspense, useMemo } from 'react'\n\n// Components\nimport IconLoaders from '@assets/icons'\n\n// Types\nimport type { IconProps } from './types'\n\n// Hooks\nimport { useThemedStyles } from '@hooks/useThemedStyles'\n\n// Styles\nimport { createIconStyles } from './style'\n\nexport const Icon = (props: IconProps) => {\n const { name } = props\n\n // Hooks\n const { styles, classes } = useThemedStyles(props, createIconStyles, {\n pick: p => [p.color, p.size],\n override: props.styles,\n applyCommonProps: true\n })\n\n // Constants\n const IconComponent = useMemo(() => {\n const loader = IconLoaders[name]\n return loader\n }, [name])\n\n if (!IconComponent) {\n console.warn(`Icon \"${name}\" not found.`)\n return null\n }\n\n return (\n <Suspense fallback={null}>\n <span className={classes.container} style={styles.container}>\n {IconComponent}\n </span>\n </Suspense>\n )\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Icon-T_2VPPNe.js","names":["ICON_SIZE_MAP: Record<string, CSSProperties>","IconLoaders"],"sources":["../src/assets/icons/__generated__/general/check.tsx","../src/assets/icons/__generated__/general/eye.tsx","../src/assets/icons/__generated__/general/eye-off.tsx","../src/assets/icons/__generated__/brands/facebook.tsx","../src/assets/icons/__generated__/brands/facebook-fit.tsx","../src/assets/icons/__generated__/brands/google.tsx","../src/assets/icons/index.tsx","../src/components/toolkit/Icon/constants.ts","../src/components/toolkit/Icon/style.ts","../src/components/toolkit/Icon/index.tsx"],"sourcesContent":["// Auto-generated from general/check.svg. Do not edit manually.\n\n// External Libraries\nimport type { SVGProps } from 'react'\n\nexport type CheckProps = SVGProps<SVGSVGElement> & { title?: string }\n\nexport const Check = ({ title, ...props }: CheckProps) => (\n<svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" strokeWidth={2} strokeLinecap=\"round\" strokeLinejoin=\"round\" {...props}>\n <title>{title ?? 'check'}</title><polyline points=\"20 6 9 17 4 12\"></polyline></svg>\n)\n","// Auto-generated from general/eye.svg. Do not edit manually.\n\n// External Libraries\nimport type { SVGProps } from 'react'\n\nexport type EyeProps = SVGProps<SVGSVGElement> & { title?: string }\n\nexport const Eye = ({ title, ...props }: EyeProps) => (\n<svg viewBox=\"0 0 24 24\" fill=\"none\" {...props}>\n<path d=\"M2.42012 12.7132C2.28394 12.4975 2.21584 12.3897 2.17772 12.2234C2.14909 12.0985 2.14909 11.9015 2.17772 11.7766C2.21584 11.6103 2.28394 11.5025 2.42012 11.2868C3.54553 9.50484 6.8954 5 12.0004 5C17.1054 5 20.4553 9.50484 21.5807 11.2868C21.7169 11.5025 21.785 11.6103 21.8231 11.7766C21.8517 11.9015 21.8517 12.0985 21.8231 12.2234C21.785 12.3897 21.7169 12.4975 21.5807 12.7132C20.4553 14.4952 17.1054 19 12.0004 19C6.8954 19 3.54553 14.4952 2.42012 12.7132Z\" stroke=\"currentColor\" strokeWidth={2} strokeLinecap=\"round\" strokeLinejoin=\"round\"/>\n <title>{title ?? 'eye'}</title>\n<path d=\"M12.0004 15C13.6573 15 15.0004 13.6569 15.0004 12C15.0004 10.3431 13.6573 9 12.0004 9C10.3435 9 9.0004 10.3431 9.0004 12C9.0004 13.6569 10.3435 15 12.0004 15Z\" stroke=\"currentColor\" strokeWidth={2} strokeLinecap=\"round\" strokeLinejoin=\"round\"/>\n</svg>\n)\n","// Auto-generated from general/eye-off.svg. Do not edit manually.\n\n// External Libraries\nimport type { SVGProps } from 'react'\n\nexport type EyeOffProps = SVGProps<SVGSVGElement> & { title?: string }\n\nexport const EyeOff = ({ title, ...props }: EyeOffProps) => (\n<svg viewBox=\"0 0 24 24\" fill=\"none\" {...props}>\n<path d=\"M10.7429 5.09232C11.1494 5.03223 11.5686 5 12.0004 5C17.1054 5 20.4553 9.50484 21.5807 11.2868C21.7169 11.5025 21.785 11.6103 21.8231 11.7767C21.8518 11.9016 21.8517 12.0987 21.8231 12.2236C21.7849 12.3899 21.7164 12.4985 21.5792 12.7156C21.2793 13.1901 20.8222 13.8571 20.2165 14.5805M6.72432 6.71504C4.56225 8.1817 3.09445 10.2194 2.42111 11.2853C2.28428 11.5019 2.21587 11.6102 2.17774 11.7765C2.1491 11.9014 2.14909 12.0984 2.17771 12.2234C2.21583 12.3897 2.28393 12.4975 2.42013 12.7132C3.54554 14.4952 6.89541 19 12.0004 19C14.0588 19 15.8319 18.2676 17.2888 17.2766M3.00042 3L21.0004 21M9.8791 9.87868C9.3362 10.4216 9.00042 11.1716 9.00042 12C9.00042 13.6569 10.3436 15 12.0004 15C12.8288 15 13.5788 14.6642 14.1217 14.1213\" stroke=\"currentColor\" strokeWidth={2} strokeLinecap=\"round\" strokeLinejoin=\"round\"/>\n <title>{title ?? 'eye-off'}</title>\n</svg>\n)\n","// Auto-generated from brands/facebook.svg. Do not edit manually.\n\n// External Libraries\nimport type { SVGProps } from 'react'\n\nexport type FacebookProps = SVGProps<SVGSVGElement> & { title?: string }\n\nexport const Facebook = ({ title, ...props }: FacebookProps) => (\n<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" {...props}>\n<path d=\"M16 8C16 11.9927 13.0707 15.3027 9.24667 15.9033V10.328H11.106L11.46 8.02133H9.24667V6.52467C9.24667 5.89333 9.556 5.27867 10.5467 5.27867H11.5527V3.31467C11.5527 3.31467 10.6393 3.15867 9.76667 3.15867C7.944 3.15867 6.75333 4.26333 6.75333 6.26267V8.02067H4.72733V10.3273H6.75333V15.9027C2.93 15.3013 0 11.992 0 8C0 3.582 3.582 0 8 0C12.418 0 16 3.58133 16 8Z\" fill=\"currentColor\"/>\n <title>{title ?? 'facebook'}</title>\n</svg>\n)\n","// Auto-generated from brands/facebook-fit.svg. Do not edit manually.\n\n// External Libraries\nimport type { SVGProps } from 'react'\n\nexport type FacebookFitProps = SVGProps<SVGSVGElement> & { title?: string }\n\nexport const FacebookFit = ({ title, ...props }: FacebookFitProps) => (\n<svg viewBox=\"0 0 1024 1024\" id=\"facebook\" {...props}>\n <path fill=\"#1877f2\" d=\"M1024,512C1024,229.23016,794.76978,0,512,0S0,229.23016,0,512c0,255.554,187.231,467.37012,432,505.77777V660H302V512H432V399.2C432,270.87982,508.43854,200,625.38922,200,681.40765,200,740,210,740,210V336H675.43713C611.83508,336,592,375.46667,592,415.95728V512H734L711.3,660H592v357.77777C836.769,979.37012,1024,767.554,1024,512Z\"></path>\n <title>{title ?? 'facebook-fit'}</title>\n <path fill=\"#fff\" d=\"M711.3,660,734,512H592V415.95728C592,375.46667,611.83508,336,675.43713,336H740V210s-58.59235-10-114.61078-10C508.43854,200,432,270.87982,432,399.2V512H302V660H432v357.77777a517.39619,517.39619,0,0,0,160,0V660Z\"></path>\n</svg>\n)\n","// Auto-generated from brands/google.svg. Do not edit manually.\n\n// External Libraries\nimport type { SVGProps } from 'react'\n\nexport type GoogleProps = SVGProps<SVGSVGElement> & { title?: string }\n\nexport const Google = ({ title, ...props }: GoogleProps) => (\n<svg width=\"800px\" height=\"800px\" viewBox=\"-3 0 262 262\" version=\"1.1\" preserveAspectRatio=\"xMidYMid\" {...props}>\n\t<g>\n\t\t<path d=\"M255.878,133.451 C255.878,122.717 255.007,114.884 253.122,106.761 L130.55,106.761 L130.55,155.209 L202.497,155.209 C201.047,167.249 193.214,185.381 175.807,197.565 L175.563,199.187 L214.318,229.21 L217.003,229.478 C241.662,206.704 255.878,173.196 255.878,133.451\" fill=\"#4285F4\"></path>\n <title>{title ?? 'google'}</title>\n\t\t<path d=\"M130.55,261.1 C165.798,261.1 195.389,249.495 217.003,229.478 L175.807,197.565 C164.783,205.253 149.987,210.62 130.55,210.62 C96.027,210.62 66.726,187.847 56.281,156.37 L54.75,156.5 L14.452,187.687 L13.925,189.152 C35.393,231.798 79.49,261.1 130.55,261.1\" fill=\"#34A853\"></path>\n\t\t<path d=\"M56.281,156.37 C53.525,148.247 51.93,139.543 51.93,130.55 C51.93,121.556 53.525,112.853 56.136,104.73 L56.063,103 L15.26,71.312 L13.925,71.947 C5.077,89.644 0,109.517 0,130.55 C0,151.583 5.077,171.455 13.925,189.152 L56.281,156.37\" fill=\"#FBBC05\"></path>\n\t\t<path d=\"M130.55,50.479 C155.064,50.479 171.6,61.068 181.029,69.917 L217.873,33.943 C195.245,12.91 165.798,0 130.55,0 C79.49,0 35.393,29.301 13.925,71.947 L56.136,104.73 C66.726,73.253 96.027,50.479 130.55,50.479\" fill=\"#EB4335\"></path>\n\t</g>\n</svg>\n)\n","// Auto-generated by generate-icon-components.sh. Do not edit manually.\n/** biome-ignore-all lint/suspicious/noShadowRestrictedNames: generated */\n\nimport { Check } from './__generated__/general/check'\nimport { Eye } from './__generated__/general/eye'\nimport { EyeOff } from './__generated__/general/eye-off'\nimport { Facebook } from './__generated__/brands/facebook'\nimport { FacebookFit } from './__generated__/brands/facebook-fit'\nimport { Google } from './__generated__/brands/google'\n\nconst icons = {\n 'brands-facebook': <Facebook />,\n 'brands-facebook-fit': <FacebookFit />,\n 'brands-google': <Google />,\n 'general-check': <Check />,\n 'general-eye': <Eye />,\n 'general-eye-off': <EyeOff />,\n}\n\nexport type IconName = keyof typeof icons\nexport default icons\n","// External Libraries\nimport type { CSSProperties } from \"react\";\n\nexport const ICON_SIZE_MAP: Record<string, CSSProperties> = {\n xs: {\n width: '0.75rem',\n height: '0.75rem'\n },\n sm: {\n width: '1rem',\n height: '1rem'\n },\n md: {\n width: '1.25rem',\n height: '1.25rem'\n },\n lg: {\n width: '1.5rem',\n height: '1.5rem'\n },\n xl: {\n width: '1.75rem',\n height: '1.75rem'\n },\n '2xl': {\n width: '2rem',\n height: '2rem'\n },\n '3xl': {\n width: '2.5rem',\n height: '2.5rem'\n }\n} as const","// External Libraries\nimport type { CSSProperties } from 'react'\n\n// Types\nimport type { IconProps } from './types'\n\n// Utils\nimport { ICON_SIZE_MAP } from './constants'\nimport { styled } from '@hooks/useThemedStyles/types'\n\nexport function createIconStyles(props: IconProps) {\n const { color, size = 'md' } = props\n\n return styled({\n container: {\n display: 'inline-flex',\n alignItems: 'center',\n justifyContent: 'center',\n color:\n color === 'primary'\n ? 'var(--px-text-primary)'\n : color === 'secondary'\n ? 'var(--px-text-secondary)'\n : color,\n ...ICON_SIZE_MAP[size]\n } as CSSProperties\n })\n}\n","// External Libraries\nimport { Suspense, useMemo } from 'react'\n\n// Components\nimport IconLoaders from '@assets/icons'\n\n// Types\nimport type { IconProps } from './types'\n\n// Hooks\nimport { useThemedStyles } from '@hooks/useThemedStyles'\n\n// Styles\nimport { createIconStyles } from './style'\n\nexport const Icon = (props: IconProps) => {\n const { name } = props\n\n // Hooks\n const { styles, classes } = useThemedStyles(props, createIconStyles, {\n pick: p => [p.color, p.size],\n override: props.styles,\n applyCommonProps: true\n })\n\n // Constants\n const IconComponent = useMemo(() => {\n const loader = IconLoaders[name]\n return loader\n }, [name])\n\n if (!IconComponent) {\n console.warn(`Icon \"${name}\" not found.`)\n return null\n }\n\n return (\n <Suspense fallback={null}>\n <span className={classes.container} style={styles.container}>\n {IconComponent}\n </span>\n </Suspense>\n )\n}\n"],"mappings":"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"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { n as useThemedStyles, t as Typography } from "./Typography-
|
|
1
|
+
import { n as styled, r as useThemedStyles, t as Typography } from "./Typography-ZFnL1M33.js";
|
|
2
2
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
3
3
|
|
|
4
4
|
//#region src/components/toolkit/InfoSummary/components/SummaryItem/components/SummaryHeader/styles.ts
|
|
5
5
|
function createSummaryHeaderStyles() {
|
|
6
|
-
return {
|
|
6
|
+
return styled({
|
|
7
7
|
container: {
|
|
8
8
|
width: "100%",
|
|
9
9
|
minHeight: "1rem",
|
|
@@ -27,7 +27,7 @@ function createSummaryHeaderStyles() {
|
|
|
27
27
|
textOverflow: "ellipsis"
|
|
28
28
|
} }
|
|
29
29
|
}
|
|
30
|
-
};
|
|
30
|
+
});
|
|
31
31
|
}
|
|
32
32
|
|
|
33
33
|
//#endregion
|
|
@@ -55,7 +55,7 @@ const SummaryHeader = ({ icon, title }) => {
|
|
|
55
55
|
//#endregion
|
|
56
56
|
//#region src/components/toolkit/InfoSummary/components/SummaryItem/components/SummaryCaption/styles.ts
|
|
57
57
|
function createSummaryCaptionStyles() {
|
|
58
|
-
return {
|
|
58
|
+
return styled({
|
|
59
59
|
container: {
|
|
60
60
|
width: "100%",
|
|
61
61
|
minHeight: "0.625rem",
|
|
@@ -76,7 +76,7 @@ function createSummaryCaptionStyles() {
|
|
|
76
76
|
textOverflow: "ellipsis"
|
|
77
77
|
} }
|
|
78
78
|
}
|
|
79
|
-
};
|
|
79
|
+
});
|
|
80
80
|
}
|
|
81
81
|
|
|
82
82
|
//#endregion
|
|
@@ -102,7 +102,7 @@ const SummaryCaption = ({ loading, captionText }) => {
|
|
|
102
102
|
//#endregion
|
|
103
103
|
//#region src/components/toolkit/InfoSummary/components/SummaryItem/components/SummaryHighlight/styles.ts
|
|
104
104
|
function createSummaryHighlightStyles() {
|
|
105
|
-
return {
|
|
105
|
+
return styled({
|
|
106
106
|
container: {
|
|
107
107
|
width: "100%",
|
|
108
108
|
minHeight: "1rem",
|
|
@@ -127,7 +127,7 @@ function createSummaryHighlightStyles() {
|
|
|
127
127
|
lineHeight: "1"
|
|
128
128
|
} }
|
|
129
129
|
}
|
|
130
|
-
};
|
|
130
|
+
});
|
|
131
131
|
}
|
|
132
132
|
|
|
133
133
|
//#endregion
|
|
@@ -156,7 +156,7 @@ const SummaryHighlight = ({ loading, highlightText, highlightIcon }) => {
|
|
|
156
156
|
//#endregion
|
|
157
157
|
//#region src/components/toolkit/InfoSummary/components/SummaryItem/styles.ts
|
|
158
158
|
function createSummaryItemStyles(props) {
|
|
159
|
-
return {
|
|
159
|
+
return styled({
|
|
160
160
|
container: {
|
|
161
161
|
height: "100%",
|
|
162
162
|
borderRight: props.isLast ? "none" : "2px solid var(--border-secondary)"
|
|
@@ -170,7 +170,7 @@ function createSummaryItemStyles(props) {
|
|
|
170
170
|
paddingBlock: "0.5rem",
|
|
171
171
|
paddingInline: "1rem"
|
|
172
172
|
}
|
|
173
|
-
};
|
|
173
|
+
});
|
|
174
174
|
}
|
|
175
175
|
|
|
176
176
|
//#endregion
|
|
@@ -203,7 +203,7 @@ const SummaryItem = (props) => {
|
|
|
203
203
|
//#endregion
|
|
204
204
|
//#region src/components/toolkit/InfoSummary/styles.ts
|
|
205
205
|
function createInfoSummaryStyles() {
|
|
206
|
-
return {
|
|
206
|
+
return styled({
|
|
207
207
|
section: {
|
|
208
208
|
height: "5.5rem",
|
|
209
209
|
minHeight: "5.5rem",
|
|
@@ -222,7 +222,7 @@ function createInfoSummaryStyles() {
|
|
|
222
222
|
flexDirection: "row",
|
|
223
223
|
alignItems: "flex-start"
|
|
224
224
|
}
|
|
225
|
-
};
|
|
225
|
+
});
|
|
226
226
|
}
|
|
227
227
|
|
|
228
228
|
//#endregion
|
|
@@ -247,4 +247,4 @@ const InfoSummary = ({ infos, loading }) => {
|
|
|
247
247
|
|
|
248
248
|
//#endregion
|
|
249
249
|
export { InfoSummary as t };
|
|
250
|
-
//# sourceMappingURL=InfoSummary-
|
|
250
|
+
//# sourceMappingURL=InfoSummary-D4GgSlQ0.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"InfoSummary-D4GgSlQ0.js","names":["SummaryHeader: React.FC<Props>","SummaryCaption: React.FC<Props>","SummaryHighlight: React.FC<Props>","SummaryItem: React.FC<SummaryItemProps>","InfoSummary: React.FC<InfoSummaryProps>"],"sources":["../src/components/toolkit/InfoSummary/components/SummaryItem/components/SummaryHeader/styles.ts","../src/components/toolkit/InfoSummary/components/SummaryItem/components/SummaryHeader/index.tsx","../src/components/toolkit/InfoSummary/components/SummaryItem/components/SummaryCaption/styles.ts","../src/components/toolkit/InfoSummary/components/SummaryItem/components/SummaryCaption/index.tsx","../src/components/toolkit/InfoSummary/components/SummaryItem/components/SummaryHighlight/styles.ts","../src/components/toolkit/InfoSummary/components/SummaryItem/components/SummaryHighlight/index.tsx","../src/components/toolkit/InfoSummary/components/SummaryItem/styles.ts","../src/components/toolkit/InfoSummary/components/SummaryItem/index.tsx","../src/components/toolkit/InfoSummary/styles.ts","../src/components/toolkit/InfoSummary/index.tsx"],"sourcesContent":["// Types\nimport { styled, type StyleMap } from '@hooks/useThemedStyles/types'\n\nexport function createSummaryHeaderStyles(): StyleMap {\n return styled({\n container: {\n width: '100%',\n minHeight: '1rem',\n\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'flex-end',\n\n gap: '0.125rem'\n },\n\n iconContainer: {\n display: 'flex',\n alignItems: 'flex-start'\n },\n\n textContainer: {\n flex: '1',\n maxWidth: '8rem',\n\n display: 'flex',\n alignItems: 'flex-start',\n\n __rules: {\n '& > p': {\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n textOverflow: 'ellipsis'\n }\n }\n }\n })\n}\n","// External Libraries\nimport type React from 'react'\nimport type { ReactNode } from 'react'\n\n// Components\nimport { Typography } from '@components/toolkit/Typography'\n\n// Hooks\nimport { useThemedStyles } from '@hooks/useThemedStyles'\n\n// Styles\nimport { createSummaryHeaderStyles } from './styles'\n\ninterface Props {\n title: string\n icon?: ReactNode\n}\n\nexport const SummaryHeader: React.FC<Props> = ({ icon, title }) => {\n const { styles } = useThemedStyles({}, createSummaryHeaderStyles)\n\n return (\n <header style={styles.container}>\n {icon ? <div style={styles.iconContainer}>{icon}</div> : null}\n\n <div style={styles.textContainer}>\n <Typography\n variant=\"b1\"\n fontWeight=\"bold\"\n lineHeight=\"100%\"\n fontSize=\"0.75rem\"\n >\n {title}\n </Typography>\n </div>\n </header>\n )\n}\n","// Types\nimport { styled, type StyleMap } from '@hooks/useThemedStyles/types'\n\nexport function createSummaryCaptionStyles(): StyleMap {\n return styled({\n container: {\n width: '100%',\n minHeight: '0.625rem',\n\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'center',\n justifyItems: 'start',\n\n columnGap: '0.125rem'\n },\n\n textContainer: {\n flex: '1',\n maxWidth: '8rem',\n\n display: 'flex',\n alignItems: 'center',\n\n __rules: {\n '& > p': {\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n textOverflow: 'ellipsis'\n }\n }\n }\n })\n}\n","// External Libraries\nimport type React from 'react'\n\n// Components\nimport { Typography } from '@components/toolkit/Typography'\n\n// Hooks\nimport { useThemedStyles } from '@hooks/useThemedStyles'\n\n// Styles\nimport { createSummaryCaptionStyles } from './styles'\n\ninterface Props {\n loading?: boolean\n captionText?: string\n}\n\nexport const SummaryCaption: React.FC<Props> = ({ loading, captionText }) => {\n // Hooks\n const { styles } = useThemedStyles({}, createSummaryCaptionStyles)\n\n return (\n <div style={styles.container}>\n <div style={styles.textContainer}>\n <Typography\n variant=\"b3\"\n lineHeight=\"100%\"\n isLoading={loading}\n fontSize=\"0.625rem\"\n color=\"var(--px-text-secondary)\"\n >\n {captionText}\n </Typography>\n </div>\n </div>\n )\n}\n","// Types\nimport { styled, type StyleMap } from '@hooks/useThemedStyles/types'\n\nexport function createSummaryHighlightStyles(): StyleMap {\n return styled({\n container: {\n width: '100%',\n minHeight: '1rem',\n\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'flex-end',\n\n columnGap: '0.125rem'\n },\n\n iconContainer: {\n display: 'flex',\n alignItems: 'flex-start'\n },\n\n textContainer: {\n flex: '1',\n maxWidth: '8rem',\n\n display: 'flex',\n alignItems: 'flex-start',\n\n __rules: {\n '& > p': {\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n lineHeight: '1'\n }\n }\n }\n })\n}\n","// External Libraries\nimport type React from 'react'\nimport type { ReactNode } from 'react'\n\n// Components\nimport { Typography } from '@components/toolkit/Typography'\n\n// Hooks\nimport { useThemedStyles } from '@hooks/useThemedStyles'\n\n// Styles\nimport { createSummaryHighlightStyles } from './styles'\n\ninterface Props {\n loading?: boolean\n highlightText?: string\n highlightIcon?: ReactNode\n}\n\nexport const SummaryHighlight: React.FC<Props> = ({\n loading,\n highlightText,\n highlightIcon\n}) => {\n // Hooks\n const { styles } = useThemedStyles({}, createSummaryHighlightStyles)\n\n return (\n <div style={styles.container}>\n {highlightIcon ? (\n <div style={styles.iconContainer}>{highlightIcon}</div>\n ) : null}\n\n <div style={styles.textContainer}>\n <Typography\n variant=\"b1\"\n lineHeight=\"100%\"\n fontSize=\"0.875rem\"\n fontWeight=\"normal\"\n isLoading={loading}\n >\n {highlightText}\n </Typography>\n </div>\n </div>\n )\n}\n","// Types\nimport type { SummaryItemProps } from './types'\nimport { styled, type StyleMap } from '@hooks/useThemedStyles/types'\n\nexport function createSummaryItemStyles(props: SummaryItemProps): StyleMap {\n return styled({\n container: {\n height: '100%',\n borderRight: props.isLast ? 'none' : '2px solid var(--border-secondary)'\n },\n\n content: {\n minWidth: '8rem',\n height: '100%',\n\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'space-between',\n\n paddingBlock: '0.5rem',\n paddingInline: '1rem'\n }\n })\n}\n","// External Libraries\nimport type React from 'react'\n\n// Components\nimport { SummaryHeader } from './components/SummaryHeader'\nimport { SummaryCaption } from './components/SummaryCaption'\nimport { SummaryHighlight } from './components/SummaryHighlight'\n\n// Hooks\nimport { useThemedStyles } from '@hooks/useThemedStyles'\n\n// Types\nimport type { SummaryItemProps } from './types'\n\n// Styles\nimport { createSummaryItemStyles } from './styles'\n\nexport const SummaryItem: React.FC<SummaryItemProps> = props => {\n // Hooks\n const { styles } = useThemedStyles(props, createSummaryItemStyles)\n\n return (\n <li style={styles.container}>\n <article style={styles.content}>\n <SummaryHeader icon={props.item.titleIcon} title={props.item.title} />\n\n <SummaryHighlight\n loading={props.loading}\n highlightText={props.item.highlight}\n highlightIcon={props.item.highlightIcon}\n />\n\n <SummaryCaption\n loading={props.loading}\n captionText={props.item.caption}\n />\n </article>\n </li>\n )\n}\n","// Types\nimport { styled, type StyleMap } from '@hooks/useThemedStyles/types'\n\nexport function createInfoSummaryStyles(): StyleMap {\n return styled({\n section: {\n height: '5.5rem',\n minHeight: '5.5rem',\n\n width: 'fit-content',\n\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'flex-start',\n\n backgroundColor: 'var(--px-background-card-primary)',\n\n borderRadius: '10px',\n paddingBlock: 'var(--px-space-sm)'\n },\n\n summaryListContainer: {\n width: '100%',\n height: '100%',\n\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'flex-start'\n }\n })\n}\n","// External Libraries\nimport type React from 'react'\n\n// Components\nimport { SummaryItem } from './components/SummaryItem'\n\n// Hooks\nimport { useThemedStyles } from '@hooks/useThemedStyles'\n\n// Types\nimport type { InfoSummaryProps } from './types'\n\n// Styles\nimport { createInfoSummaryStyles } from './styles'\n\nexport * from './types'\n\nexport const InfoSummary: React.FC<InfoSummaryProps> = ({ infos, loading }) => {\n // Hooks\n const { styles } = useThemedStyles({}, createInfoSummaryStyles)\n\n // Functions\n function renderSummaryItems() {\n return (\n <ul style={styles.summaryListContainer}>\n {infos.map((info, index) => (\n <SummaryItem\n item={info}\n key={info.id}\n loading={loading}\n isLast={index === infos.length - 1}\n />\n ))}\n </ul>\n )\n }\n\n return <section style={styles.section}>{renderSummaryItems()}</section>\n}\n"],"mappings":"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"}
|
|
@@ -1,81 +1,9 @@
|
|
|
1
|
-
import { t as Icon } from "./Icon-
|
|
2
|
-
import { n as
|
|
1
|
+
import { t as Icon } from "./Icon-T_2VPPNe.js";
|
|
2
|
+
import { n as styled, r as useThemedStyles } from "./Typography-ZFnL1M33.js";
|
|
3
|
+
import { t as Label } from "./Label-DFcePle9.js";
|
|
3
4
|
import { useCallback, useId, useMemo, useRef, useState } from "react";
|
|
4
5
|
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
5
6
|
|
|
6
|
-
//#region src/components/commons/Label/style.ts
|
|
7
|
-
const LABEL_VARIANTS = {
|
|
8
|
-
b1: {
|
|
9
|
-
fontSize: "1rem",
|
|
10
|
-
lineHeight: "1.5rem"
|
|
11
|
-
},
|
|
12
|
-
b2: {
|
|
13
|
-
fontSize: "0.875rem",
|
|
14
|
-
lineHeight: "1.25rem"
|
|
15
|
-
},
|
|
16
|
-
b3: {
|
|
17
|
-
fontSize: "0.75rem",
|
|
18
|
-
lineHeight: "1rem"
|
|
19
|
-
}
|
|
20
|
-
};
|
|
21
|
-
function createLabelStyles(props) {
|
|
22
|
-
const { labelColor, labelWeight, labelVariant = "b2", requiredColor } = props;
|
|
23
|
-
return {
|
|
24
|
-
label: {
|
|
25
|
-
display: "inline-flex",
|
|
26
|
-
alignItems: "center",
|
|
27
|
-
gap: "0.25rem",
|
|
28
|
-
fontWeight: labelWeight,
|
|
29
|
-
...LABEL_VARIANTS[labelVariant] ?? {},
|
|
30
|
-
...labelColor ? { color: labelColor } : {}
|
|
31
|
-
},
|
|
32
|
-
required: {
|
|
33
|
-
color: requiredColor,
|
|
34
|
-
lineHeight: "inherit",
|
|
35
|
-
fontSize: "inherit",
|
|
36
|
-
fontWeight: "inherit"
|
|
37
|
-
}
|
|
38
|
-
};
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
//#endregion
|
|
42
|
-
//#region src/components/commons/Label/index.tsx
|
|
43
|
-
const Label = (props) => {
|
|
44
|
-
const { htmlFor, label, required, requiredColor, labelColor, labelWeight, labelVariant = "b2" } = props;
|
|
45
|
-
const { styles } = useThemedStyles(props, createLabelStyles, {
|
|
46
|
-
pick: (p) => [
|
|
47
|
-
p.labelColor,
|
|
48
|
-
p.labelWeight,
|
|
49
|
-
p.labelVariant,
|
|
50
|
-
p.requiredColor
|
|
51
|
-
],
|
|
52
|
-
override: props.styles,
|
|
53
|
-
applyCommonProps: true
|
|
54
|
-
});
|
|
55
|
-
return /* @__PURE__ */ jsx("label", {
|
|
56
|
-
htmlFor,
|
|
57
|
-
style: styles.label,
|
|
58
|
-
children: /* @__PURE__ */ jsxs(Typography, {
|
|
59
|
-
variant: labelVariant,
|
|
60
|
-
styles: { text: {
|
|
61
|
-
minWidth: "fit-content",
|
|
62
|
-
color: labelColor,
|
|
63
|
-
fontWeight: labelWeight
|
|
64
|
-
} },
|
|
65
|
-
children: [label, required ? /* @__PURE__ */ jsx(Typography, {
|
|
66
|
-
as: "span",
|
|
67
|
-
variant: "b2",
|
|
68
|
-
styles: { text: {
|
|
69
|
-
color: requiredColor,
|
|
70
|
-
marginLeft: "0.125rem"
|
|
71
|
-
} },
|
|
72
|
-
children: "*"
|
|
73
|
-
}) : null]
|
|
74
|
-
})
|
|
75
|
-
});
|
|
76
|
-
};
|
|
77
|
-
|
|
78
|
-
//#endregion
|
|
79
7
|
//#region src/components/commons/inputs/Input/hooks/useInput/index.ts
|
|
80
8
|
const useInput = ({ value: controlledValue, defaultValue = "", onChange }) => {
|
|
81
9
|
const inputRef = useRef(null);
|
|
@@ -234,7 +162,7 @@ const INPUT_STYLES = {
|
|
|
234
162
|
function createInputStyles(props) {
|
|
235
163
|
const { size = "md", variant = "bordered", radius = "md", isDisabled = false, isInvalid = false, focusedRingColor } = props;
|
|
236
164
|
const focusRingColor = focusedRingColor || "var(--px-color-info)";
|
|
237
|
-
return {
|
|
165
|
+
return styled({
|
|
238
166
|
wrapper: {
|
|
239
167
|
position: "relative",
|
|
240
168
|
display: "flex",
|
|
@@ -285,7 +213,7 @@ function createInputStyles(props) {
|
|
|
285
213
|
alignItems: "center",
|
|
286
214
|
padding: "0.25rem"
|
|
287
215
|
}
|
|
288
|
-
};
|
|
216
|
+
});
|
|
289
217
|
}
|
|
290
218
|
|
|
291
219
|
//#endregion
|
|
@@ -318,7 +246,8 @@ const Input = (props) => {
|
|
|
318
246
|
p.focusedRingColor
|
|
319
247
|
],
|
|
320
248
|
override: props.styles,
|
|
321
|
-
applyCommonProps: true
|
|
249
|
+
applyCommonProps: true,
|
|
250
|
+
commonSlot: "input"
|
|
322
251
|
});
|
|
323
252
|
function getType() {
|
|
324
253
|
if (type === "password" && showPassword) return "text";
|
|
@@ -395,4 +324,4 @@ const Input = (props) => {
|
|
|
395
324
|
|
|
396
325
|
//#endregion
|
|
397
326
|
export { Input as t };
|
|
398
|
-
//# sourceMappingURL=Input-
|
|
327
|
+
//# sourceMappingURL=Input-9E5L4S5O.js.map
|