sellmate-design-system-react 9.0.0-beta.83 → 9.0.0-beta.86
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/AGENTS.md +29 -11
- package/dist/components/SGhostButton/README.md +2 -1
- package/dist/components/SGhostButton/SGhostButton.d.ts +1 -1
- package/dist/components/SRadioButton/README.md +1 -0
- package/dist/components/SRadioButton/SRadioButton.d.ts +9 -2
- package/dist/index.cjs +78 -32
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +78 -32
- package/dist/index.js.map +1 -1
- package/dist/llms-full.txt +33 -13
- package/dist/llms.txt +30 -12
- package/dist/styles.css +10 -3
- package/dist/theme.css +5 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -4847,8 +4847,22 @@ function useFormField(field) {
|
|
|
4847
4847
|
}, [ctx, name]);
|
|
4848
4848
|
}
|
|
4849
4849
|
var FIELD_SIZE = {
|
|
4850
|
-
sm: {
|
|
4851
|
-
|
|
4850
|
+
sm: {
|
|
4851
|
+
height: 28,
|
|
4852
|
+
radius: 4,
|
|
4853
|
+
fieldGap: 12,
|
|
4854
|
+
labelGap: 6,
|
|
4855
|
+
labelTypo: "typo-field-sm-bold",
|
|
4856
|
+
icon: 16
|
|
4857
|
+
},
|
|
4858
|
+
md: {
|
|
4859
|
+
height: 36,
|
|
4860
|
+
radius: 6,
|
|
4861
|
+
fieldGap: 16,
|
|
4862
|
+
labelGap: 8,
|
|
4863
|
+
labelTypo: "typo-field-md-bold",
|
|
4864
|
+
icon: 16
|
|
4865
|
+
}
|
|
4852
4866
|
};
|
|
4853
4867
|
var ALIGN = {
|
|
4854
4868
|
start: "flex-start",
|
|
@@ -4958,7 +4972,10 @@ var SField = /* @__PURE__ */ forwardRef(function SField2({
|
|
|
4958
4972
|
label !== "" && /* @__PURE__ */ jsxs(
|
|
4959
4973
|
"div",
|
|
4960
4974
|
{
|
|
4961
|
-
className:
|
|
4975
|
+
className: cn(
|
|
4976
|
+
"flex shrink-0 items-center text-(--sys-color-field-text-default)",
|
|
4977
|
+
s.labelTypo
|
|
4978
|
+
),
|
|
4962
4979
|
style: {
|
|
4963
4980
|
// 위에 선 라벨은 제 글줄 높이만 차지한다 — 컨트롤 높이에 맞춰 늘리면
|
|
4964
4981
|
// 라벨과 컨트롤 사이가 간격 토큰보다 넓어진다. 줄 세우기용 labelWidth 도
|
|
@@ -4967,9 +4984,7 @@ var SField = /* @__PURE__ */ forwardRef(function SField2({
|
|
|
4967
4984
|
height: cssLen(labelHeight) ?? s.height,
|
|
4968
4985
|
marginRight: s.fieldGap,
|
|
4969
4986
|
width: cssLen(labelWidth)
|
|
4970
|
-
}
|
|
4971
|
-
fontSize: s.fontSize,
|
|
4972
|
-
lineHeight: `${s.lineHeight}px`
|
|
4987
|
+
}
|
|
4973
4988
|
},
|
|
4974
4989
|
children: [
|
|
4975
4990
|
icon && /* @__PURE__ */ jsx(
|
|
@@ -18772,7 +18787,8 @@ function SCalendar({
|
|
|
18772
18787
|
className: cn(
|
|
18773
18788
|
"flex h-[var(--cmp-datepicker-calendar-day-circle-size)] w-[var(--cmp-datepicker-calendar-day-circle-size)] items-center justify-center rounded-[var(--cmp-datepicker-calendar-day-circle-radius)] border border-solid border-transparent text-[14px] leading-[var(--cmp-datepicker-calendar-day-circle-size)]",
|
|
18774
18789
|
selected ? "bg-[var(--cmp-datepicker-calendar-day-select-bg)] text-[color:var(--cmp-datepicker-calendar-day-select-text)]" : disabled ? "text-[color:var(--cmp-datepicker-calendar-day-disabled-text)]" : "text-[color:var(--cmp-datepicker-calendar-day-default-text)] hover:border-[color:var(--cmp-datepicker-calendar-day-hover-border)] hover:text-[color:var(--cmp-datepicker-calendar-day-hover-text)]",
|
|
18775
|
-
|
|
18790
|
+
// 오늘: datepicker.calendar.day.typography.bold (→ typography.field.md.bold) 의 굵기
|
|
18791
|
+
isToday && !disabled && "font-semibold"
|
|
18776
18792
|
),
|
|
18777
18793
|
children: cell.inCurrentMonth ? cell.day : ""
|
|
18778
18794
|
}
|
|
@@ -19500,7 +19516,8 @@ function RangeCalendar({
|
|
|
19500
19516
|
"relative z-[1] flex h-[var(--cmp-datepicker-calendar-day-circle-size)] w-[var(--cmp-datepicker-calendar-day-circle-size)] items-center justify-center rounded-[var(--cmp-datepicker-calendar-day-circle-radius)] border border-solid border-transparent bg-transparent text-[14px]",
|
|
19501
19517
|
!cell.inCurrentMonth ? "invisible pointer-events-none" : disabled ? "cursor-not-allowed" : "cursor-pointer",
|
|
19502
19518
|
isEdge ? "bg-[var(--cmp-datepicker-calendar-day-select-bg)] text-[color:var(--cmp-datepicker-calendar-day-select-text)]" : disabled ? "text-[color:var(--cmp-datepicker-calendar-day-disabled-text)]" : "text-[color:var(--cmp-datepicker-calendar-day-default-text)] hover:border-[color:var(--cmp-datepicker-calendar-day-hover-border)] hover:text-[color:var(--cmp-datepicker-calendar-day-hover-text)]",
|
|
19503
|
-
|
|
19519
|
+
// 오늘: datepicker.calendar.day.typography.bold (→ typography.field.md.bold) 의 굵기
|
|
19520
|
+
isToday && !disabled && "font-semibold"
|
|
19504
19521
|
),
|
|
19505
19522
|
children: cell.inCurrentMonth ? cell.day : ""
|
|
19506
19523
|
}
|
|
@@ -21732,32 +21749,57 @@ var SLineChart = /* @__PURE__ */ forwardRef(function SLineChart2({
|
|
|
21732
21749
|
`area-gradient-${seriesIndex}`
|
|
21733
21750
|
)) });
|
|
21734
21751
|
}, [area, plotted, colorAt, gradientId]);
|
|
21735
|
-
const
|
|
21752
|
+
const linePaths = useMemo(
|
|
21736
21753
|
() => plotted.flatMap(
|
|
21737
|
-
(row, seriesIndex) => runsOf(row).
|
|
21754
|
+
(row, seriesIndex) => runsOf(row).flatMap((run, runIndex) => {
|
|
21738
21755
|
const d = linePath(run, smooth);
|
|
21739
|
-
|
|
21740
|
-
|
|
21756
|
+
return d ? [{ key: `${seriesIndex}-${runIndex}`, seriesIndex, d }] : [];
|
|
21757
|
+
})
|
|
21758
|
+
),
|
|
21759
|
+
[plotted, smooth]
|
|
21760
|
+
);
|
|
21761
|
+
const strokeShape = {
|
|
21762
|
+
strokeWidth: LINE_WIDTH,
|
|
21763
|
+
strokeDasharray: lineStyle === "dashed" ? LINE_DASH : void 0
|
|
21764
|
+
};
|
|
21765
|
+
const lines = linePaths.map(({ key, seriesIndex, d }) => /* @__PURE__ */ jsx(
|
|
21766
|
+
"path",
|
|
21767
|
+
{
|
|
21768
|
+
"aria-hidden": true,
|
|
21769
|
+
d,
|
|
21770
|
+
fill: "none",
|
|
21771
|
+
strokeLinecap: "round",
|
|
21772
|
+
strokeLinejoin: "round",
|
|
21773
|
+
style: { ...strokeShape, stroke: colorAt(seriesIndex), strokeOpacity: LINE_OPACITY }
|
|
21774
|
+
},
|
|
21775
|
+
`line-${key}`
|
|
21776
|
+
));
|
|
21777
|
+
const areaMaskId = `${gradientId}-area-mask`;
|
|
21778
|
+
const areaMask = area ? /* @__PURE__ */ jsxs(
|
|
21779
|
+
"mask",
|
|
21780
|
+
{
|
|
21781
|
+
id: areaMaskId,
|
|
21782
|
+
maskUnits: "userSpaceOnUse",
|
|
21783
|
+
x: 0,
|
|
21784
|
+
y: 0,
|
|
21785
|
+
width: size.width,
|
|
21786
|
+
height: size.height,
|
|
21787
|
+
children: [
|
|
21788
|
+
/* @__PURE__ */ jsx("rect", { x: 0, y: 0, width: size.width, height: size.height, style: { fill: "white" } }),
|
|
21789
|
+
linePaths.map(({ key, d }) => /* @__PURE__ */ jsx(
|
|
21741
21790
|
"path",
|
|
21742
21791
|
{
|
|
21743
|
-
"aria-hidden": true,
|
|
21744
21792
|
d,
|
|
21745
21793
|
fill: "none",
|
|
21746
21794
|
strokeLinecap: "round",
|
|
21747
21795
|
strokeLinejoin: "round",
|
|
21748
|
-
style: {
|
|
21749
|
-
stroke: colorAt(seriesIndex),
|
|
21750
|
-
strokeWidth: LINE_WIDTH,
|
|
21751
|
-
strokeOpacity: LINE_OPACITY,
|
|
21752
|
-
strokeDasharray: lineStyle === "dashed" ? LINE_DASH : void 0
|
|
21753
|
-
}
|
|
21796
|
+
style: { ...strokeShape, stroke: "black" }
|
|
21754
21797
|
},
|
|
21755
|
-
`
|
|
21756
|
-
)
|
|
21757
|
-
|
|
21758
|
-
|
|
21759
|
-
|
|
21760
|
-
);
|
|
21798
|
+
`mask-${key}`
|
|
21799
|
+
))
|
|
21800
|
+
]
|
|
21801
|
+
}
|
|
21802
|
+
) : null;
|
|
21761
21803
|
const { pointHalos, pointDots } = useMemo(() => {
|
|
21762
21804
|
const halos = [];
|
|
21763
21805
|
const dots = [];
|
|
@@ -21931,7 +21973,8 @@ var SLineChart = /* @__PURE__ */ forwardRef(function SLineChart2({
|
|
|
21931
21973
|
}
|
|
21932
21974
|
),
|
|
21933
21975
|
areaGradients,
|
|
21934
|
-
|
|
21976
|
+
areaMask,
|
|
21977
|
+
area && /* @__PURE__ */ jsx("g", { mask: `url(#${areaMaskId})`, children: areas }),
|
|
21935
21978
|
lines,
|
|
21936
21979
|
pointHalos,
|
|
21937
21980
|
pointDots,
|
|
@@ -22880,6 +22923,7 @@ function SRadioButton({
|
|
|
22880
22923
|
value,
|
|
22881
22924
|
size = "sm",
|
|
22882
22925
|
disabled = false,
|
|
22926
|
+
readOnly = false,
|
|
22883
22927
|
name,
|
|
22884
22928
|
showTooltip = false,
|
|
22885
22929
|
onValueChange,
|
|
@@ -22897,11 +22941,13 @@ function SRadioButton({
|
|
|
22897
22941
|
{
|
|
22898
22942
|
role: "radiogroup",
|
|
22899
22943
|
"aria-disabled": disabled,
|
|
22944
|
+
"aria-readonly": readOnly || void 0,
|
|
22900
22945
|
className: cn("inline-flex isolate", className),
|
|
22901
22946
|
style,
|
|
22902
22947
|
children: options.map((o, i) => {
|
|
22903
22948
|
const selected = o.value === value;
|
|
22904
22949
|
const od = disabled || o.disabled;
|
|
22950
|
+
const ro = readOnly && !od;
|
|
22905
22951
|
const first = i === 0;
|
|
22906
22952
|
const last = i === options.length - 1;
|
|
22907
22953
|
const tooltip = showTooltip && o.tooltip ? o.tooltip : void 0;
|
|
@@ -22913,7 +22959,7 @@ function SRadioButton({
|
|
|
22913
22959
|
name,
|
|
22914
22960
|
"aria-checked": selected,
|
|
22915
22961
|
disabled: od,
|
|
22916
|
-
onClick: () => !od && !selected && onValueChange?.(o.value),
|
|
22962
|
+
onClick: () => !od && !ro && !selected && onValueChange?.(o.value),
|
|
22917
22963
|
onMouseEnter: tooltip ? () => setHoveredValue(o.value) : void 0,
|
|
22918
22964
|
onMouseLeave: tooltip ? () => setHoveredValue(null) : void 0,
|
|
22919
22965
|
onFocus: tooltip ? () => setHoveredValue(o.value) : void 0,
|
|
@@ -22922,8 +22968,8 @@ function SRadioButton({
|
|
|
22922
22968
|
"relative box-border grow inline-flex items-center justify-center whitespace-nowrap border border-solid font-medium transition-colors",
|
|
22923
22969
|
first ? "" : "-ml-px",
|
|
22924
22970
|
selected ? "z-10" : "",
|
|
22925
|
-
!od && !selected && "hover:!bg-[var(--cmp-radioButton-bg-hover)] hover:!text-[color:var(--cmp-radioButton-content-hover)] hover:!border-[color:var(--cmp-radioButton-bg-hover)] hover:z-10",
|
|
22926
|
-
od ? "cursor-not-allowed" : "cursor-pointer"
|
|
22971
|
+
!od && !ro && !selected && "hover:!bg-[var(--cmp-radioButton-bg-hover)] hover:!text-[color:var(--cmp-radioButton-content-hover)] hover:!border-[color:var(--cmp-radioButton-bg-hover)] hover:z-10",
|
|
22972
|
+
od ? "cursor-not-allowed" : ro ? "cursor-default" : "cursor-pointer"
|
|
22927
22973
|
),
|
|
22928
22974
|
style: {
|
|
22929
22975
|
height: `var(--cmp-radioButton-${size}-height)`,
|
|
@@ -22936,9 +22982,9 @@ function SRadioButton({
|
|
|
22936
22982
|
last ? s.radius : "0",
|
|
22937
22983
|
first ? s.radius : "0"
|
|
22938
22984
|
].join(" "),
|
|
22939
|
-
background: od ? "var(--cmp-radioButton-bg-disabled)" : "var(--cmp-radioButton-bg-default)",
|
|
22940
|
-
borderColor: od ? "var(--cmp-radioButton-border-disabled)" : selected ? "var(--cmp-radioButton-border-select)" : "var(--cmp-radioButton-border-default)",
|
|
22941
|
-
color: od ? "var(--cmp-radioButton-content-disabled)" : selected ? "var(--cmp-radioButton-content-select)" : "var(--cmp-radioButton-content-default)"
|
|
22985
|
+
background: od ? "var(--cmp-radioButton-bg-disabled)" : ro ? "var(--cmp-radioButton-bg-readOnly)" : "var(--cmp-radioButton-bg-default)",
|
|
22986
|
+
borderColor: od ? "var(--cmp-radioButton-border-disabled)" : selected ? ro ? "var(--cmp-radioButton-border-readOnly)" : "var(--cmp-radioButton-border-select)" : "var(--cmp-radioButton-border-default)",
|
|
22987
|
+
color: od || ro && !selected ? "var(--cmp-radioButton-content-disabled)" : selected && !ro ? "var(--cmp-radioButton-content-select)" : "var(--cmp-radioButton-content-default)"
|
|
22942
22988
|
},
|
|
22943
22989
|
children: o.label
|
|
22944
22990
|
},
|