sellmate-design-system-react 9.0.0-beta.66 → 9.0.0-beta.68
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 +125 -9
- package/dist/components/SBarChart/barChart.config.d.ts +0 -8
- package/dist/components/SCalendarBoard/CalendarDayCard.d.ts +7 -0
- package/dist/components/SCalendarBoard/CalendarEventButton.d.ts +3 -1
- package/dist/components/SCalendarBoard/CalendarMoreButton.d.ts +5 -0
- package/dist/components/SCalendarBoard/README.md +1 -0
- package/dist/components/SCalendarBoard/SCalendarBoard.d.ts +13 -1
- package/dist/components/SCalendarBoard/calendar-board-layout.d.ts +11 -1
- package/dist/components/SCalendarBoard/calendarBoard.config.d.ts +5 -0
- package/dist/components/SCard/README.md +1 -0
- package/dist/components/SCard/SCard.d.ts +10 -1
- package/dist/components/SFooter/README.md +16 -2
- package/dist/components/SFooter/SFooter.d.ts +13 -3
- package/dist/components/SFooter/index.d.ts +1 -1
- package/dist/components/SImage/README.md +3 -0
- package/dist/components/SImage/SImage.d.ts +9 -6
- package/dist/components/SLoadingContainer/index.d.ts +1 -1
- package/dist/components/SLoadingContainer/loading.d.ts +34 -15
- package/dist/components/SSectionHeaderCard/README.md +1 -0
- package/dist/components/SSectionHeaderCard/SSectionHeaderCard.d.ts +10 -1
- package/dist/index.cjs +373 -158
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +374 -158
- package/dist/index.js.map +1 -1
- package/dist/lib/chart/hover-dim.d.ts +19 -0
- package/dist/lib/hover-preview.d.ts +32 -0
- package/dist/llms-full.txt +147 -11
- package/dist/llms.txt +125 -9
- package/dist/styles.css +3 -0
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { clsx } from 'clsx';
|
|
3
3
|
import { extendTailwindMerge } from 'tailwind-merge';
|
|
4
|
-
import { forwardRef, useState, useRef, useEffect,
|
|
4
|
+
import { forwardRef, createContext, useState, useRef, useEffect, useCallback, useImperativeHandle, useLayoutEffect, useContext, useMemo, useId, Children, cloneElement, Fragment as Fragment$1, isValidElement, useSyncExternalStore, Component } from 'react';
|
|
5
5
|
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
6
|
-
import * as
|
|
6
|
+
import * as RPopover13 from '@radix-ui/react-popover';
|
|
7
7
|
import { createPortal } from 'react-dom';
|
|
8
8
|
import * as RCheckbox from '@radix-ui/react-checkbox';
|
|
9
9
|
import { createRoot } from 'react-dom/client';
|
|
@@ -3707,6 +3707,57 @@ var SIcon = /* @__PURE__ */ forwardRef(function SIcon2({ name, size = 24, color,
|
|
|
3707
3707
|
}
|
|
3708
3708
|
);
|
|
3709
3709
|
});
|
|
3710
|
+
|
|
3711
|
+
// src/lib/display-name.ts
|
|
3712
|
+
function withDisplayName(component, name) {
|
|
3713
|
+
component.displayName = name;
|
|
3714
|
+
return component;
|
|
3715
|
+
}
|
|
3716
|
+
|
|
3717
|
+
// src/lib/floating-anim.ts
|
|
3718
|
+
var FLOATING_SLIDE_ANIM = [
|
|
3719
|
+
"data-[state=open]:data-[side=top]:animate-floating-in-top",
|
|
3720
|
+
"data-[state=delayed-open]:data-[side=top]:animate-floating-in-top",
|
|
3721
|
+
"data-[state=instant-open]:data-[side=top]:animate-floating-in-top",
|
|
3722
|
+
"data-[state=closed]:data-[side=top]:animate-floating-out-top",
|
|
3723
|
+
"data-[state=open]:data-[side=bottom]:animate-floating-in-bottom",
|
|
3724
|
+
"data-[state=delayed-open]:data-[side=bottom]:animate-floating-in-bottom",
|
|
3725
|
+
"data-[state=instant-open]:data-[side=bottom]:animate-floating-in-bottom",
|
|
3726
|
+
"data-[state=closed]:data-[side=bottom]:animate-floating-out-bottom",
|
|
3727
|
+
"data-[state=open]:data-[side=left]:animate-floating-in-left",
|
|
3728
|
+
"data-[state=delayed-open]:data-[side=left]:animate-floating-in-left",
|
|
3729
|
+
"data-[state=instant-open]:data-[side=left]:animate-floating-in-left",
|
|
3730
|
+
"data-[state=closed]:data-[side=left]:animate-floating-out-left",
|
|
3731
|
+
"data-[state=open]:data-[side=right]:animate-floating-in-right",
|
|
3732
|
+
"data-[state=delayed-open]:data-[side=right]:animate-floating-in-right",
|
|
3733
|
+
"data-[state=instant-open]:data-[side=right]:animate-floating-in-right",
|
|
3734
|
+
"data-[state=closed]:data-[side=right]:animate-floating-out-right"
|
|
3735
|
+
].join(" ");
|
|
3736
|
+
|
|
3737
|
+
// src/lib/hover-preview.ts
|
|
3738
|
+
function hoverPreviewOrigin({
|
|
3739
|
+
anchor,
|
|
3740
|
+
size,
|
|
3741
|
+
viewportWidth,
|
|
3742
|
+
viewportHeight,
|
|
3743
|
+
padding = 8
|
|
3744
|
+
}) {
|
|
3745
|
+
const startX = anchor.left + anchor.width / 2;
|
|
3746
|
+
const startY = anchor.top + anchor.height / 2;
|
|
3747
|
+
const x = Math.max(padding, Math.min(startX, viewportWidth - size - padding));
|
|
3748
|
+
const y = Math.max(padding, Math.min(startY, viewportHeight - size - padding));
|
|
3749
|
+
return { x, y };
|
|
3750
|
+
}
|
|
3751
|
+
var PortalContainerContext = /* @__PURE__ */ createContext(null);
|
|
3752
|
+
var InsideModalContext = /* @__PURE__ */ createContext(false);
|
|
3753
|
+
var PortalContainerProvider = PortalContainerContext.Provider;
|
|
3754
|
+
var InsideModalProvider = InsideModalContext.Provider;
|
|
3755
|
+
function usePortalContainer() {
|
|
3756
|
+
return useContext(PortalContainerContext) ?? void 0;
|
|
3757
|
+
}
|
|
3758
|
+
function useInsideModal() {
|
|
3759
|
+
return useContext(InsideModalContext);
|
|
3760
|
+
}
|
|
3710
3761
|
var VIEWBOX = 80;
|
|
3711
3762
|
var RADIUS = 34;
|
|
3712
3763
|
var STROKE = 12;
|
|
@@ -3824,7 +3875,10 @@ var SCircleProgress = /* @__PURE__ */ forwardRef(
|
|
|
3824
3875
|
var IMAGE_FITS = ["cover", "contain", "fill", "none", "scale-down"];
|
|
3825
3876
|
var EMPTY_ICON_SIZE = "60cqh";
|
|
3826
3877
|
var SPINNER_SIZE = "45cqh";
|
|
3827
|
-
var
|
|
3878
|
+
var PREVIEW_HIDE_DELAY_MS = 100;
|
|
3879
|
+
var PREVIEW_MAX_SIZE = 200;
|
|
3880
|
+
var PREVIEW_VIEWPORT_PADDING = 8;
|
|
3881
|
+
var SImageImpl = /* @__PURE__ */ forwardRef(function SImageImpl2({
|
|
3828
3882
|
src,
|
|
3829
3883
|
alt = "",
|
|
3830
3884
|
ratio = 1,
|
|
@@ -3836,6 +3890,9 @@ var SImage = /* @__PURE__ */ forwardRef(function SImage2({
|
|
|
3836
3890
|
loadingSlot,
|
|
3837
3891
|
errorSlot,
|
|
3838
3892
|
imgProps,
|
|
3893
|
+
previewOnHover = false,
|
|
3894
|
+
previewSrc,
|
|
3895
|
+
previewSize = PREVIEW_MAX_SIZE,
|
|
3839
3896
|
onLoad,
|
|
3840
3897
|
onError,
|
|
3841
3898
|
className,
|
|
@@ -3866,16 +3923,94 @@ var SImage = /* @__PURE__ */ forwardRef(function SImage2({
|
|
|
3866
3923
|
const timer = setTimeout(() => setSpinnerVisible(true), loadingShowDelay);
|
|
3867
3924
|
return () => clearTimeout(timer);
|
|
3868
3925
|
}, [status, loadingShowDelay, src]);
|
|
3926
|
+
const portalContainer = usePortalContainer();
|
|
3927
|
+
const [previewOpen, setPreviewOpen] = useState(false);
|
|
3928
|
+
const previewHideTimer = useRef(void 0);
|
|
3929
|
+
const boxRef = useRef(null);
|
|
3930
|
+
const previewSource = previewSrc ?? src;
|
|
3931
|
+
const previewEnabled = previewOnHover && !!previewSource;
|
|
3932
|
+
const previewBoxSize = Math.min(previewSize, PREVIEW_MAX_SIZE);
|
|
3933
|
+
const previewBoxSizeRef = useRef(previewBoxSize);
|
|
3934
|
+
previewBoxSizeRef.current = previewBoxSize;
|
|
3935
|
+
const previewAnchorRef = useRef(null);
|
|
3936
|
+
if (previewAnchorRef.current == null) {
|
|
3937
|
+
previewAnchorRef.current = {
|
|
3938
|
+
getBoundingClientRect: () => {
|
|
3939
|
+
const anchor = boxRef.current?.getBoundingClientRect();
|
|
3940
|
+
if (!anchor) return new DOMRect(0, 0, 0, 0);
|
|
3941
|
+
const { x, y } = hoverPreviewOrigin({
|
|
3942
|
+
anchor,
|
|
3943
|
+
size: previewBoxSizeRef.current,
|
|
3944
|
+
viewportWidth: window.innerWidth,
|
|
3945
|
+
viewportHeight: window.innerHeight,
|
|
3946
|
+
padding: PREVIEW_VIEWPORT_PADDING
|
|
3947
|
+
});
|
|
3948
|
+
return new DOMRect(x, y, 0, 0);
|
|
3949
|
+
},
|
|
3950
|
+
// autoUpdate 가 스크롤 조상을 찾는 기준 — 없으면 표 안에서 스크롤할 때 위치가 굳는다
|
|
3951
|
+
get contextElement() {
|
|
3952
|
+
return boxRef.current ?? void 0;
|
|
3953
|
+
}
|
|
3954
|
+
};
|
|
3955
|
+
}
|
|
3956
|
+
const cancelPreviewHide = useCallback(() => {
|
|
3957
|
+
if (previewHideTimer.current) {
|
|
3958
|
+
clearTimeout(previewHideTimer.current);
|
|
3959
|
+
previewHideTimer.current = void 0;
|
|
3960
|
+
}
|
|
3961
|
+
}, []);
|
|
3962
|
+
const openPreview = () => {
|
|
3963
|
+
cancelPreviewHide();
|
|
3964
|
+
setPreviewOpen(true);
|
|
3965
|
+
};
|
|
3966
|
+
const startPreviewHide = () => {
|
|
3967
|
+
cancelPreviewHide();
|
|
3968
|
+
previewHideTimer.current = setTimeout(() => setPreviewOpen(false), PREVIEW_HIDE_DELAY_MS);
|
|
3969
|
+
};
|
|
3970
|
+
useEffect(() => {
|
|
3971
|
+
if (!previewEnabled) {
|
|
3972
|
+
cancelPreviewHide();
|
|
3973
|
+
setPreviewOpen(false);
|
|
3974
|
+
}
|
|
3975
|
+
}, [previewEnabled, cancelPreviewHide]);
|
|
3976
|
+
useEffect(() => cancelPreviewHide, [cancelPreviewHide]);
|
|
3977
|
+
const previewContentRef = useCallback((node) => {
|
|
3978
|
+
node?.parentElement?.style.setProperty("pointer-events", "none");
|
|
3979
|
+
}, []);
|
|
3980
|
+
const previewHandlers = previewEnabled ? {
|
|
3981
|
+
onMouseEnter: (event) => {
|
|
3982
|
+
rest.onMouseEnter?.(event);
|
|
3983
|
+
openPreview();
|
|
3984
|
+
},
|
|
3985
|
+
onMouseLeave: (event) => {
|
|
3986
|
+
rest.onMouseLeave?.(event);
|
|
3987
|
+
startPreviewHide();
|
|
3988
|
+
},
|
|
3989
|
+
// 소비자가 tabIndex 를 준 썸네일에서는 키보드로도 열린다
|
|
3990
|
+
onFocus: (event) => {
|
|
3991
|
+
rest.onFocus?.(event);
|
|
3992
|
+
openPreview();
|
|
3993
|
+
},
|
|
3994
|
+
onBlur: (event) => {
|
|
3995
|
+
rest.onBlur?.(event);
|
|
3996
|
+
startPreviewHide();
|
|
3997
|
+
}
|
|
3998
|
+
} : void 0;
|
|
3869
3999
|
const isEmpty = !src;
|
|
3870
4000
|
const showFallback = isEmpty || status === "error";
|
|
3871
4001
|
const spinnerShown = !isEmpty && status === "loading" && showSpinner && spinnerVisible;
|
|
3872
|
-
|
|
4002
|
+
const box3 = /* @__PURE__ */ jsxs(
|
|
3873
4003
|
"div",
|
|
3874
4004
|
{
|
|
3875
|
-
ref
|
|
4005
|
+
ref: (node) => {
|
|
4006
|
+
boxRef.current = node;
|
|
4007
|
+
if (typeof ref === "function") ref(node);
|
|
4008
|
+
else if (ref) ref.current = node;
|
|
4009
|
+
},
|
|
3876
4010
|
className: cn("relative overflow-hidden bg-(--cmp-image-bg)", className),
|
|
3877
4011
|
style: { containerType: "size", aspectRatio: ratio, ...style },
|
|
3878
4012
|
...rest,
|
|
4013
|
+
...previewHandlers,
|
|
3879
4014
|
children: [
|
|
3880
4015
|
!isEmpty && /* @__PURE__ */ jsx(
|
|
3881
4016
|
"img",
|
|
@@ -3911,7 +4046,47 @@ var SImage = /* @__PURE__ */ forwardRef(function SImage2({
|
|
|
3911
4046
|
]
|
|
3912
4047
|
}
|
|
3913
4048
|
);
|
|
4049
|
+
if (!previewEnabled) return box3;
|
|
4050
|
+
return /* @__PURE__ */ jsxs(RPopover13.Root, { open: previewOpen, onOpenChange: setPreviewOpen, children: [
|
|
4051
|
+
box3,
|
|
4052
|
+
/* @__PURE__ */ jsx(RPopover13.Anchor, { virtualRef: previewAnchorRef }),
|
|
4053
|
+
/* @__PURE__ */ jsx(RPopover13.Portal, { container: portalContainer, children: /* @__PURE__ */ jsx(
|
|
4054
|
+
RPopover13.Content,
|
|
4055
|
+
{
|
|
4056
|
+
ref: previewContentRef,
|
|
4057
|
+
side: "bottom",
|
|
4058
|
+
align: "start",
|
|
4059
|
+
sideOffset: 0,
|
|
4060
|
+
alignOffset: 0,
|
|
4061
|
+
avoidCollisions: false,
|
|
4062
|
+
role: "presentation",
|
|
4063
|
+
"aria-hidden": true,
|
|
4064
|
+
className: cn(
|
|
4065
|
+
"z-50 overflow-hidden rounded-[6px] shadow-normal-sm",
|
|
4066
|
+
// 읽기 전용이라 호버 브릿지를 두지 않는다. 그 대신 마우스를 통과시켜,
|
|
4067
|
+
// 목록 위로 뜬 미리보기가 아래 행의 클릭을 가로채지 않게 한다.
|
|
4068
|
+
// (래퍼 쪽은 previewContentRef 가 함께 끈다 — 둘 다 꺼야 깜빡이지 않는다)
|
|
4069
|
+
"pointer-events-none",
|
|
4070
|
+
FLOATING_SLIDE_ANIM
|
|
4071
|
+
),
|
|
4072
|
+
onOpenAutoFocus: (event) => event.preventDefault(),
|
|
4073
|
+
onCloseAutoFocus: (event) => event.preventDefault(),
|
|
4074
|
+
children: /* @__PURE__ */ jsx(
|
|
4075
|
+
SImage,
|
|
4076
|
+
{
|
|
4077
|
+
src: previewSource,
|
|
4078
|
+
alt: "",
|
|
4079
|
+
ratio: 1,
|
|
4080
|
+
fit: "contain",
|
|
4081
|
+
loading: "eager",
|
|
4082
|
+
style: { width: previewBoxSize }
|
|
4083
|
+
}
|
|
4084
|
+
)
|
|
4085
|
+
}
|
|
4086
|
+
) })
|
|
4087
|
+
] });
|
|
3914
4088
|
});
|
|
4089
|
+
var SImage = /* @__PURE__ */ withDisplayName(SImageImpl, "SImage");
|
|
3915
4090
|
var BADGE_COLORS = [
|
|
3916
4091
|
"red",
|
|
3917
4092
|
"orange",
|
|
@@ -4107,6 +4282,7 @@ var SButton = /* @__PURE__ */ forwardRef(function SButton2({
|
|
|
4107
4282
|
});
|
|
4108
4283
|
function SFooter({
|
|
4109
4284
|
bg = "white",
|
|
4285
|
+
size = "md",
|
|
4110
4286
|
left,
|
|
4111
4287
|
button,
|
|
4112
4288
|
children,
|
|
@@ -4143,7 +4319,7 @@ function SFooter({
|
|
|
4143
4319
|
SButton,
|
|
4144
4320
|
{
|
|
4145
4321
|
...button,
|
|
4146
|
-
size
|
|
4322
|
+
size,
|
|
4147
4323
|
color: button.color ?? "primary",
|
|
4148
4324
|
label: button.label ?? "\uD655\uC778"
|
|
4149
4325
|
}
|
|
@@ -4152,7 +4328,16 @@ function SFooter({
|
|
|
4152
4328
|
}
|
|
4153
4329
|
);
|
|
4154
4330
|
}
|
|
4155
|
-
var SCard = /* @__PURE__ */ forwardRef(function SCard2({
|
|
4331
|
+
var SCard = /* @__PURE__ */ forwardRef(function SCard2({
|
|
4332
|
+
bordered = false,
|
|
4333
|
+
footerLeft,
|
|
4334
|
+
button,
|
|
4335
|
+
footerSize = "md",
|
|
4336
|
+
footerClassName,
|
|
4337
|
+
className,
|
|
4338
|
+
children,
|
|
4339
|
+
...rest
|
|
4340
|
+
}, ref) {
|
|
4156
4341
|
const hasFooter = footerLeft != null || button != null;
|
|
4157
4342
|
return /* @__PURE__ */ jsxs(
|
|
4158
4343
|
"div",
|
|
@@ -4170,6 +4355,7 @@ var SCard = /* @__PURE__ */ forwardRef(function SCard2({ bordered = false, foote
|
|
|
4170
4355
|
SFooter,
|
|
4171
4356
|
{
|
|
4172
4357
|
bg: "grey",
|
|
4358
|
+
size: footerSize,
|
|
4173
4359
|
left: footerLeft,
|
|
4174
4360
|
button,
|
|
4175
4361
|
className: cn("px-(--sys-space-panel-padding-default)", footerClassName)
|
|
@@ -4180,42 +4366,6 @@ var SCard = /* @__PURE__ */ forwardRef(function SCard2({ bordered = false, foote
|
|
|
4180
4366
|
);
|
|
4181
4367
|
});
|
|
4182
4368
|
|
|
4183
|
-
// src/lib/display-name.ts
|
|
4184
|
-
function withDisplayName(component, name) {
|
|
4185
|
-
component.displayName = name;
|
|
4186
|
-
return component;
|
|
4187
|
-
}
|
|
4188
|
-
|
|
4189
|
-
// src/lib/floating-anim.ts
|
|
4190
|
-
var FLOATING_SLIDE_ANIM = [
|
|
4191
|
-
"data-[state=open]:data-[side=top]:animate-floating-in-top",
|
|
4192
|
-
"data-[state=delayed-open]:data-[side=top]:animate-floating-in-top",
|
|
4193
|
-
"data-[state=instant-open]:data-[side=top]:animate-floating-in-top",
|
|
4194
|
-
"data-[state=closed]:data-[side=top]:animate-floating-out-top",
|
|
4195
|
-
"data-[state=open]:data-[side=bottom]:animate-floating-in-bottom",
|
|
4196
|
-
"data-[state=delayed-open]:data-[side=bottom]:animate-floating-in-bottom",
|
|
4197
|
-
"data-[state=instant-open]:data-[side=bottom]:animate-floating-in-bottom",
|
|
4198
|
-
"data-[state=closed]:data-[side=bottom]:animate-floating-out-bottom",
|
|
4199
|
-
"data-[state=open]:data-[side=left]:animate-floating-in-left",
|
|
4200
|
-
"data-[state=delayed-open]:data-[side=left]:animate-floating-in-left",
|
|
4201
|
-
"data-[state=instant-open]:data-[side=left]:animate-floating-in-left",
|
|
4202
|
-
"data-[state=closed]:data-[side=left]:animate-floating-out-left",
|
|
4203
|
-
"data-[state=open]:data-[side=right]:animate-floating-in-right",
|
|
4204
|
-
"data-[state=delayed-open]:data-[side=right]:animate-floating-in-right",
|
|
4205
|
-
"data-[state=instant-open]:data-[side=right]:animate-floating-in-right",
|
|
4206
|
-
"data-[state=closed]:data-[side=right]:animate-floating-out-right"
|
|
4207
|
-
].join(" ");
|
|
4208
|
-
var PortalContainerContext = /* @__PURE__ */ createContext(null);
|
|
4209
|
-
var InsideModalContext = /* @__PURE__ */ createContext(false);
|
|
4210
|
-
var PortalContainerProvider = PortalContainerContext.Provider;
|
|
4211
|
-
var InsideModalProvider = InsideModalContext.Provider;
|
|
4212
|
-
function usePortalContainer() {
|
|
4213
|
-
return useContext(PortalContainerContext) ?? void 0;
|
|
4214
|
-
}
|
|
4215
|
-
function useInsideModal() {
|
|
4216
|
-
return useContext(InsideModalContext);
|
|
4217
|
-
}
|
|
4218
|
-
|
|
4219
4369
|
// src/components/STag/tag.config.ts
|
|
4220
4370
|
var TAG_SHAPES = ["square", "pill"];
|
|
4221
4371
|
var TAG_SIZES = ["xs", "sm", "md"];
|
|
@@ -4403,8 +4553,8 @@ var SGhostButton = /* @__PURE__ */ forwardRef(function SGhostButton2({
|
|
|
4403
4553
|
}
|
|
4404
4554
|
);
|
|
4405
4555
|
if (!hasTooltip) return btn2;
|
|
4406
|
-
return /* @__PURE__ */ jsxs(
|
|
4407
|
-
/* @__PURE__ */ jsx(
|
|
4556
|
+
return /* @__PURE__ */ jsxs(RPopover13.Root, { open, onOpenChange: setOpen, children: [
|
|
4557
|
+
/* @__PURE__ */ jsx(RPopover13.Anchor, { asChild: true, children: /* @__PURE__ */ jsx(
|
|
4408
4558
|
"span",
|
|
4409
4559
|
{
|
|
4410
4560
|
className: cn("inline-flex", anchorClassName),
|
|
@@ -4416,8 +4566,8 @@ var SGhostButton = /* @__PURE__ */ forwardRef(function SGhostButton2({
|
|
|
4416
4566
|
children: btn2
|
|
4417
4567
|
}
|
|
4418
4568
|
) }),
|
|
4419
|
-
/* @__PURE__ */ jsx(
|
|
4420
|
-
|
|
4569
|
+
/* @__PURE__ */ jsx(RPopover13.Portal, { container: portalContainer, children: /* @__PURE__ */ jsx(
|
|
4570
|
+
RPopover13.Content,
|
|
4421
4571
|
{
|
|
4422
4572
|
side: "top",
|
|
4423
4573
|
sideOffset: 4,
|
|
@@ -4606,14 +4756,14 @@ var STooltipImpl = /* @__PURE__ */ forwardRef(function STooltip({
|
|
|
4606
4756
|
...style,
|
|
4607
4757
|
...contentPropsStyle
|
|
4608
4758
|
};
|
|
4609
|
-
return /* @__PURE__ */ jsxs(
|
|
4759
|
+
return /* @__PURE__ */ jsxs(RPopover13.Root, { open, onOpenChange: setOpenState, children: [
|
|
4610
4760
|
isNone ? (
|
|
4611
4761
|
// 트리거 없음: children 을 래퍼 없이 그대로 앵커로 쓴다 (소비자 레이아웃 보존).
|
|
4612
4762
|
// mouse/focus 핸들러가 없으므로 showClose 없이도 자동 닫힘이 발생하지 않는다.
|
|
4613
|
-
/* @__PURE__ */ jsx(
|
|
4763
|
+
/* @__PURE__ */ jsx(RPopover13.Anchor, { asChild: true, children: triggerNode })
|
|
4614
4764
|
) : isHover ? (
|
|
4615
4765
|
// hover: Anchor(위치 기준) + 직접 mouse 핸들러 — 클릭으로 토글되지 않도록 Trigger 미사용
|
|
4616
|
-
/* @__PURE__ */ jsx(
|
|
4766
|
+
/* @__PURE__ */ jsx(RPopover13.Anchor, { asChild: true, children: /* @__PURE__ */ jsx(
|
|
4617
4767
|
"span",
|
|
4618
4768
|
{
|
|
4619
4769
|
className: "inline-flex",
|
|
@@ -4624,9 +4774,9 @@ var STooltipImpl = /* @__PURE__ */ forwardRef(function STooltip({
|
|
|
4624
4774
|
children: triggerNode
|
|
4625
4775
|
}
|
|
4626
4776
|
) })
|
|
4627
|
-
) : /* @__PURE__ */ jsx(
|
|
4628
|
-
/* @__PURE__ */ jsx(
|
|
4629
|
-
|
|
4777
|
+
) : /* @__PURE__ */ jsx(RPopover13.Trigger, { asChild: true, children: triggerNode }),
|
|
4778
|
+
/* @__PURE__ */ jsx(RPopover13.Portal, { container: portalContainer, children: /* @__PURE__ */ jsxs(
|
|
4779
|
+
RPopover13.Content,
|
|
4630
4780
|
{
|
|
4631
4781
|
side: placement,
|
|
4632
4782
|
sideOffset,
|
|
@@ -4660,7 +4810,7 @@ var STooltipImpl = /* @__PURE__ */ forwardRef(function STooltip({
|
|
|
4660
4810
|
}
|
|
4661
4811
|
)
|
|
4662
4812
|
] }),
|
|
4663
|
-
/* @__PURE__ */ jsx(
|
|
4813
|
+
/* @__PURE__ */ jsx(RPopover13.Arrow, { width: 16, height: 12, style: { fill: bg } })
|
|
4664
4814
|
]
|
|
4665
4815
|
}
|
|
4666
4816
|
) })
|
|
@@ -7493,6 +7643,7 @@ var SSectionHeaderCardRootImpl = /* @__PURE__ */ forwardRef(
|
|
|
7493
7643
|
background,
|
|
7494
7644
|
footerLeft,
|
|
7495
7645
|
button,
|
|
7646
|
+
footerSize = "md",
|
|
7496
7647
|
footerClassName,
|
|
7497
7648
|
className,
|
|
7498
7649
|
children,
|
|
@@ -7529,6 +7680,7 @@ var SSectionHeaderCardRootImpl = /* @__PURE__ */ forwardRef(
|
|
|
7529
7680
|
SFooter,
|
|
7530
7681
|
{
|
|
7531
7682
|
bg: "grey",
|
|
7683
|
+
size: footerSize,
|
|
7532
7684
|
left: footerLeft,
|
|
7533
7685
|
button,
|
|
7534
7686
|
className: cn("px-(--cmp-sectionHeaderCard-header-paddingX)", footerClassName)
|
|
@@ -8309,12 +8461,18 @@ var release = (id) => {
|
|
|
8309
8461
|
entries = next;
|
|
8310
8462
|
sync();
|
|
8311
8463
|
};
|
|
8464
|
+
var updateEntry = (id, message) => {
|
|
8465
|
+
const index = entries.findIndex((e) => e.id === id);
|
|
8466
|
+
if (index === -1) return;
|
|
8467
|
+
entries = entries.map((e, i) => i === index ? { ...e, message } : e);
|
|
8468
|
+
sync();
|
|
8469
|
+
};
|
|
8312
8470
|
var subscribe = (cb) => {
|
|
8313
8471
|
listeners.add(cb);
|
|
8314
8472
|
return () => listeners.delete(cb);
|
|
8315
8473
|
};
|
|
8316
8474
|
var getSnapshot = () => state;
|
|
8317
|
-
function
|
|
8475
|
+
function LoadingViewport() {
|
|
8318
8476
|
const s = useSyncExternalStore(subscribe, getSnapshot, getSnapshot);
|
|
8319
8477
|
return /* @__PURE__ */ jsx(SLoadingContainer, { open: s.open, message: s.message });
|
|
8320
8478
|
}
|
|
@@ -8325,39 +8483,56 @@ function ensureMounted() {
|
|
|
8325
8483
|
const host = document.createElement("div");
|
|
8326
8484
|
host.setAttribute("data-sd-loading-root", "");
|
|
8327
8485
|
document.body.appendChild(host);
|
|
8328
|
-
createRoot(host).render(/* @__PURE__ */ jsx(
|
|
8486
|
+
createRoot(host).render(/* @__PURE__ */ jsx(LoadingViewport, {}));
|
|
8487
|
+
}
|
|
8488
|
+
function showEntry(options = {}) {
|
|
8489
|
+
ensureMounted();
|
|
8490
|
+
const id = ++seq;
|
|
8491
|
+
entries = [...entries, { id, message: options.message }];
|
|
8492
|
+
sync();
|
|
8493
|
+
let released = false;
|
|
8494
|
+
const handle = (() => {
|
|
8495
|
+
if (released) return;
|
|
8496
|
+
released = true;
|
|
8497
|
+
release(id);
|
|
8498
|
+
});
|
|
8499
|
+
handle.update = (next) => {
|
|
8500
|
+
if (released) return;
|
|
8501
|
+
updateEntry(id, next.message);
|
|
8502
|
+
};
|
|
8503
|
+
return handle;
|
|
8329
8504
|
}
|
|
8330
8505
|
var loading = {
|
|
8331
8506
|
/**
|
|
8332
8507
|
* 로딩 오버레이 표시. 겹쳐 부르면 그만큼 쌓이고 **마지막 하나가 걷힐 때** 닫힌다.
|
|
8333
|
-
* 반환값은 이 호출
|
|
8334
|
-
*
|
|
8508
|
+
* 반환값은 이 호출 하나를 걷고 갱신하는 핸들이다(두 번 걷어도 한 번만 걷힌다).
|
|
8509
|
+
*
|
|
8510
|
+
* **걷는 것은 `finally` 에 둔다.** 빠뜨리면 그 즉시 화면이 갇히고, 정상 경로에서는 아무
|
|
8511
|
+
* 표시가 없다.
|
|
8335
8512
|
*
|
|
8336
|
-
*
|
|
8337
|
-
*
|
|
8513
|
+
* ```ts
|
|
8514
|
+
* const done = loading.show({ message: '1/2 ...' });
|
|
8515
|
+
* try {
|
|
8516
|
+
* done.update({ message: '2/2 ...' }); // 이 호출의 메시지만 바뀐다
|
|
8517
|
+
* await api.submit(payload);
|
|
8518
|
+
* } finally {
|
|
8519
|
+
* done(); // 이 호출만 걷는다
|
|
8520
|
+
* }
|
|
8521
|
+
* ```
|
|
8522
|
+
*
|
|
8523
|
+
* ⚠️ **메시지를 바꾸려고 `show()` 를 다시 부르지 않는다.** 하나 더 쌓여 한 번 걷는 것으로는
|
|
8524
|
+
* 닫히지 않는다. 핸들의 `update()` 를 쓴다. (참조 카운트 이전에는 `show()` 를 다시 부르는
|
|
8525
|
+
* 것이 갱신이었다 — Quasar 도 같은 그룹에 다시 show 하면 갱신이다. 그 시절 관행대로 쓰인
|
|
8526
|
+
* 코드는 지금 오버레이를 하나 남긴다.)
|
|
8338
8527
|
*/
|
|
8339
8528
|
show(options = {}) {
|
|
8340
|
-
|
|
8341
|
-
const id = ++seq;
|
|
8342
|
-
entries = [...entries, { id, message: options.message }];
|
|
8343
|
-
sync();
|
|
8344
|
-
return () => release(id);
|
|
8345
|
-
},
|
|
8346
|
-
/** 표시 중인 메시지 갱신 — 쌓인 수는 그대로다 */
|
|
8347
|
-
update(options) {
|
|
8348
|
-
const top = entries[entries.length - 1];
|
|
8349
|
-
if (!top) return;
|
|
8350
|
-
entries = [...entries.slice(0, -1), { ...top, message: options.message }];
|
|
8351
|
-
sync();
|
|
8352
|
-
},
|
|
8353
|
-
/** 가장 나중의 show 하나를 걷는다. 남은 것이 없을 때만 오버레이가 닫힌다 */
|
|
8354
|
-
hide() {
|
|
8355
|
-
const top = entries[entries.length - 1];
|
|
8356
|
-
if (top) release(top.id);
|
|
8529
|
+
return showEntry(options);
|
|
8357
8530
|
},
|
|
8358
8531
|
/**
|
|
8359
|
-
* 쌓인 것을 모두 걷고 즉시 닫는다.
|
|
8360
|
-
*
|
|
8532
|
+
* 쌓인 것을 모두 걷고 즉시 닫는다. **원본(Quasar)의 인자 없는 `hide()` 가 이것이다.**
|
|
8533
|
+
* 화면 전환·에러 복구처럼 진행 중이던 작업의 짝을 더는 맞출 수 없을 때만 쓴다 — 평소에는
|
|
8534
|
+
* `show()` 가 준 핸들로 걷는다.
|
|
8535
|
+
* 이걸로 걷힌 항목의 주인이 뒤늦게 자기 핸들을 불러도 아무 일도 일어나지 않는다.
|
|
8361
8536
|
*/
|
|
8362
8537
|
hideAll() {
|
|
8363
8538
|
if (entries.length === 0) return;
|
|
@@ -8879,7 +9054,7 @@ function SPortal({
|
|
|
8879
9054
|
const portalContainer = usePortalContainer();
|
|
8880
9055
|
const { minWidth: styleMinWidth, maxWidth: styleMaxWidth, ...restStyle } = style ?? {};
|
|
8881
9056
|
return /* @__PURE__ */ jsxs(
|
|
8882
|
-
|
|
9057
|
+
RPopover13.Root,
|
|
8883
9058
|
{
|
|
8884
9059
|
open,
|
|
8885
9060
|
onOpenChange: (next) => {
|
|
@@ -8887,9 +9062,9 @@ function SPortal({
|
|
|
8887
9062
|
if (!next) onClose?.();
|
|
8888
9063
|
},
|
|
8889
9064
|
children: [
|
|
8890
|
-
/* @__PURE__ */ jsx(
|
|
8891
|
-
/* @__PURE__ */ jsx(
|
|
8892
|
-
|
|
9065
|
+
/* @__PURE__ */ jsx(RPopover13.Anchor, { virtualRef: anchorRef }),
|
|
9066
|
+
/* @__PURE__ */ jsx(RPopover13.Portal, { container: portalContainer, children: /* @__PURE__ */ jsx(
|
|
9067
|
+
RPopover13.Content,
|
|
8893
9068
|
{
|
|
8894
9069
|
side: placement,
|
|
8895
9070
|
align,
|
|
@@ -9640,10 +9815,10 @@ function SPopover({
|
|
|
9640
9815
|
const descColor = type === "default" ? "var(--cmp-popover-default-description)" : "var(--cmp-popover-light-description)";
|
|
9641
9816
|
const leftLinkLabelClass = type === "default" ? "text-[color:var(--cmp-popover-default-subAction)]" : "text-[color:var(--cmp-popover-light-subAction)]";
|
|
9642
9817
|
const triggerNode = trigger ?? /* @__PURE__ */ jsx("span", { className: "inline-flex cursor-pointer", "aria-label": ariaLabel, children: /* @__PURE__ */ jsx(SIcon, { name: icon, size: iconSize, color }) });
|
|
9643
|
-
return /* @__PURE__ */ jsxs(
|
|
9644
|
-
/* @__PURE__ */ jsx(
|
|
9645
|
-
/* @__PURE__ */ jsx(
|
|
9646
|
-
|
|
9818
|
+
return /* @__PURE__ */ jsxs(RPopover13.Root, { open: actualOpen, onOpenChange: setOpen, children: [
|
|
9819
|
+
/* @__PURE__ */ jsx(RPopover13.Trigger, { asChild: true, children: triggerNode }),
|
|
9820
|
+
/* @__PURE__ */ jsx(RPopover13.Portal, { container: portalContainer, children: /* @__PURE__ */ jsxs(
|
|
9821
|
+
RPopover13.Content,
|
|
9647
9822
|
{
|
|
9648
9823
|
side: placement,
|
|
9649
9824
|
sideOffset: 8,
|
|
@@ -9709,7 +9884,7 @@ function SPopover({
|
|
|
9709
9884
|
]
|
|
9710
9885
|
}
|
|
9711
9886
|
),
|
|
9712
|
-
/* @__PURE__ */ jsx(
|
|
9887
|
+
/* @__PURE__ */ jsx(RPopover13.Arrow, { width: 16, height: 12, style: { fill: bg } })
|
|
9713
9888
|
]
|
|
9714
9889
|
}
|
|
9715
9890
|
) })
|
|
@@ -9827,10 +10002,10 @@ function SGuide({
|
|
|
9827
10002
|
);
|
|
9828
10003
|
if (isNotion)
|
|
9829
10004
|
return /* @__PURE__ */ jsx("span", { className, style, children: trigger });
|
|
9830
|
-
return /* @__PURE__ */ jsxs(
|
|
9831
|
-
/* @__PURE__ */ jsx(
|
|
9832
|
-
/* @__PURE__ */ jsx(
|
|
9833
|
-
|
|
10005
|
+
return /* @__PURE__ */ jsxs(RPopover13.Root, { open, onOpenChange: setOpen, children: [
|
|
10006
|
+
/* @__PURE__ */ jsx(RPopover13.Trigger, { asChild: true, children: trigger }),
|
|
10007
|
+
/* @__PURE__ */ jsx(RPopover13.Portal, { container: portalContainer, children: /* @__PURE__ */ jsxs(
|
|
10008
|
+
RPopover13.Content,
|
|
9834
10009
|
{
|
|
9835
10010
|
side: "bottom",
|
|
9836
10011
|
align: "start",
|
|
@@ -12323,10 +12498,10 @@ var SGnb = /* @__PURE__ */ forwardRef(function SGnb2({
|
|
|
12323
12498
|
),
|
|
12324
12499
|
header === "fix" && menuResizeHandle,
|
|
12325
12500
|
launcherListBox,
|
|
12326
|
-
/* @__PURE__ */ jsxs(
|
|
12327
|
-
/* @__PURE__ */ jsx(
|
|
12328
|
-
/* @__PURE__ */ jsx(
|
|
12329
|
-
|
|
12501
|
+
/* @__PURE__ */ jsxs(RPopover13.Root, { open: labelTip !== null, onOpenChange: (open) => !open && setLabelTip(null), children: [
|
|
12502
|
+
/* @__PURE__ */ jsx(RPopover13.Anchor, { virtualRef: labelTipAnchorRef }),
|
|
12503
|
+
/* @__PURE__ */ jsx(RPopover13.Portal, { container: portalContainer, children: /* @__PURE__ */ jsx(
|
|
12504
|
+
RPopover13.Content,
|
|
12330
12505
|
{
|
|
12331
12506
|
side: "right",
|
|
12332
12507
|
sideOffset: 4,
|
|
@@ -13814,7 +13989,8 @@ function layoutCalendarBoard({
|
|
|
13814
13989
|
cells,
|
|
13815
13990
|
events,
|
|
13816
13991
|
rowCapacity,
|
|
13817
|
-
blockedDates
|
|
13992
|
+
blockedDates,
|
|
13993
|
+
focusedEventId
|
|
13818
13994
|
}) {
|
|
13819
13995
|
const count = cells.length;
|
|
13820
13996
|
const weekCount = Math.ceil(count / 7);
|
|
@@ -13822,6 +13998,7 @@ function layoutCalendarBoard({
|
|
|
13822
13998
|
const eventsByCell = Array.from({ length: count }, () => []);
|
|
13823
13999
|
const hiddenCountByCell = new Array(count).fill(0);
|
|
13824
14000
|
const moreLaneByWeek = new Array(weekCount).fill(-1);
|
|
14001
|
+
const moreReplacedByCell = new Array(count).fill(false);
|
|
13825
14002
|
const runs = [];
|
|
13826
14003
|
events.forEach((event, order) => {
|
|
13827
14004
|
const start = event.date;
|
|
@@ -13879,9 +14056,15 @@ function layoutCalendarBoard({
|
|
|
13879
14056
|
const week = Math.floor(run.startIndex / 7);
|
|
13880
14057
|
const moreLane = moreLaneByWeek[week];
|
|
13881
14058
|
const limit = moreLane < 0 ? rowCapacity : moreLane;
|
|
13882
|
-
|
|
13883
|
-
|
|
13884
|
-
|
|
14059
|
+
let lane = run.lane;
|
|
14060
|
+
if (lane >= limit) {
|
|
14061
|
+
const focused = focusedEventId != null && run.event.id === focusedEventId && moreLane >= 0;
|
|
14062
|
+
if (!focused) {
|
|
14063
|
+
for (let i = run.startIndex; i <= run.endIndex; i++) hiddenCountByCell[i] += 1;
|
|
14064
|
+
continue;
|
|
14065
|
+
}
|
|
14066
|
+
lane = moreLane;
|
|
14067
|
+
for (let i = run.startIndex; i <= run.endIndex; i++) moreReplacedByCell[i] = true;
|
|
13885
14068
|
}
|
|
13886
14069
|
const { event } = run;
|
|
13887
14070
|
segmentsByCell[run.startIndex].push({
|
|
@@ -13889,12 +14072,18 @@ function layoutCalendarBoard({
|
|
|
13889
14072
|
key: `${event.id ?? `${event.date}-${run.order}`}-${run.startIndex}`,
|
|
13890
14073
|
startIndex: run.startIndex,
|
|
13891
14074
|
span: run.endIndex - run.startIndex + 1,
|
|
13892
|
-
lane
|
|
14075
|
+
lane,
|
|
13893
14076
|
startsHere: cells[run.startIndex].date === event.date,
|
|
13894
14077
|
endsHere: cells[run.endIndex].date === eventEndDate(event)
|
|
13895
14078
|
});
|
|
13896
14079
|
}
|
|
13897
|
-
return {
|
|
14080
|
+
return {
|
|
14081
|
+
segmentsByCell,
|
|
14082
|
+
eventsByCell,
|
|
14083
|
+
hiddenCountByCell,
|
|
14084
|
+
moreLaneByWeek,
|
|
14085
|
+
moreReplacedByCell
|
|
14086
|
+
};
|
|
13898
14087
|
}
|
|
13899
14088
|
|
|
13900
14089
|
// src/components/SCalendarBoard/calendarBoard.config.ts
|
|
@@ -13924,6 +14113,7 @@ var CALENDAR_BOARD_EVENT_PRESETS = {
|
|
|
13924
14113
|
white: { bg: BG("white"), dot: "grey" }
|
|
13925
14114
|
};
|
|
13926
14115
|
var CALENDAR_BOARD_MAX_VISIBLE_EVENTS = 4;
|
|
14116
|
+
var CALENDAR_BOARD_DIM_OPACITY = 0.4;
|
|
13927
14117
|
var CALENDAR_BOARD_DAY_COLORS = [
|
|
13928
14118
|
"default",
|
|
13929
14119
|
"danger",
|
|
@@ -13943,6 +14133,7 @@ function CalendarEventButton({
|
|
|
13943
14133
|
onSelect,
|
|
13944
14134
|
flatStart = false,
|
|
13945
14135
|
flatEnd = false,
|
|
14136
|
+
dimmed = false,
|
|
13946
14137
|
className,
|
|
13947
14138
|
style
|
|
13948
14139
|
}) {
|
|
@@ -13970,7 +14161,11 @@ function CalendarEventButton({
|
|
|
13970
14161
|
disabled ? "cursor-not-allowed opacity-50" : "cursor-pointer",
|
|
13971
14162
|
className
|
|
13972
14163
|
),
|
|
13973
|
-
style: {
|
|
14164
|
+
style: {
|
|
14165
|
+
...style,
|
|
14166
|
+
"--ceb-bg": preset.bg,
|
|
14167
|
+
...dimmed && { opacity: CALENDAR_BOARD_DIM_OPACITY }
|
|
14168
|
+
},
|
|
13974
14169
|
onClick: (e) => {
|
|
13975
14170
|
if (disabled) return;
|
|
13976
14171
|
onSelect?.(event, e);
|
|
@@ -14014,7 +14209,7 @@ function CalendarEventButton({
|
|
|
14014
14209
|
}
|
|
14015
14210
|
);
|
|
14016
14211
|
}
|
|
14017
|
-
var CalendarMoreButton = /* @__PURE__ */ forwardRef(function CalendarMoreButton2({ count, label = "\uB354\uBCF4\uAE30", onClick, className, style }, ref) {
|
|
14212
|
+
var CalendarMoreButton = /* @__PURE__ */ forwardRef(function CalendarMoreButton2({ count, label = "\uB354\uBCF4\uAE30", dimmed = false, onClick, className, style }, ref) {
|
|
14018
14213
|
return /* @__PURE__ */ jsxs(
|
|
14019
14214
|
"button",
|
|
14020
14215
|
{
|
|
@@ -14027,7 +14222,7 @@ var CalendarMoreButton = /* @__PURE__ */ forwardRef(function CalendarMoreButton2
|
|
|
14027
14222
|
"bg-(--cmp-calendarBoard-moreButton-bg)",
|
|
14028
14223
|
className
|
|
14029
14224
|
),
|
|
14030
|
-
style,
|
|
14225
|
+
style: dimmed ? { ...style, opacity: CALENDAR_BOARD_DIM_OPACITY } : style,
|
|
14031
14226
|
onClick,
|
|
14032
14227
|
children: [
|
|
14033
14228
|
/* @__PURE__ */ jsx(
|
|
@@ -14062,6 +14257,8 @@ var CalendarDayCard = /* @__PURE__ */ forwardRef(function CalendarDayCard2({
|
|
|
14062
14257
|
body,
|
|
14063
14258
|
hiddenCount,
|
|
14064
14259
|
moreLane,
|
|
14260
|
+
moreReplaced,
|
|
14261
|
+
focusedEventId,
|
|
14065
14262
|
isOpen,
|
|
14066
14263
|
moreLabel,
|
|
14067
14264
|
onDaySelect,
|
|
@@ -14069,6 +14266,7 @@ var CalendarDayCard = /* @__PURE__ */ forwardRef(function CalendarDayCard2({
|
|
|
14069
14266
|
onOpenEvents,
|
|
14070
14267
|
...rest
|
|
14071
14268
|
}, ref) {
|
|
14269
|
+
const focusing = focusedEventId != null;
|
|
14072
14270
|
const hasEvents = dayEventCount > 0;
|
|
14073
14271
|
const interactive = selectable || hasEvents;
|
|
14074
14272
|
const activate = () => {
|
|
@@ -14130,6 +14328,7 @@ var CalendarDayCard = /* @__PURE__ */ forwardRef(function CalendarDayCard2({
|
|
|
14130
14328
|
event: segment.event,
|
|
14131
14329
|
flatStart: !segment.startsHere,
|
|
14132
14330
|
flatEnd: !segment.endsHere,
|
|
14331
|
+
dimmed: focusing && segment.event.id !== focusedEventId,
|
|
14133
14332
|
className: "absolute z-10",
|
|
14134
14333
|
style: {
|
|
14135
14334
|
top: laneTop(segment.lane),
|
|
@@ -14143,11 +14342,12 @@ var CalendarDayCard = /* @__PURE__ */ forwardRef(function CalendarDayCard2({
|
|
|
14143
14342
|
},
|
|
14144
14343
|
segment.key
|
|
14145
14344
|
)),
|
|
14146
|
-
body == null && hiddenCount > 0 && moreLane >= 0 && /* @__PURE__ */ jsx(
|
|
14345
|
+
body == null && hiddenCount > 0 && moreLane >= 0 && !moreReplaced && /* @__PURE__ */ jsx(
|
|
14147
14346
|
CalendarMoreButton,
|
|
14148
14347
|
{
|
|
14149
14348
|
count: hiddenCount,
|
|
14150
14349
|
label: moreLabel,
|
|
14350
|
+
dimmed: focusing,
|
|
14151
14351
|
className: "absolute z-10",
|
|
14152
14352
|
style: {
|
|
14153
14353
|
top: laneTop(moreLane),
|
|
@@ -14245,6 +14445,7 @@ function SCalendarBoard({
|
|
|
14245
14445
|
events,
|
|
14246
14446
|
dayColors,
|
|
14247
14447
|
dayContent,
|
|
14448
|
+
focusedEventId,
|
|
14248
14449
|
onEventClick,
|
|
14249
14450
|
onMoreClick,
|
|
14250
14451
|
todayLabel = "\uC624\uB298",
|
|
@@ -14295,8 +14496,14 @@ function SCalendarBoard({
|
|
|
14295
14496
|
const blockedDates = new Set(
|
|
14296
14497
|
cells.filter((cell) => dayContent?.[cell.date] != null).map((cell) => cell.date)
|
|
14297
14498
|
);
|
|
14298
|
-
return layoutCalendarBoard({
|
|
14299
|
-
|
|
14499
|
+
return layoutCalendarBoard({
|
|
14500
|
+
cells,
|
|
14501
|
+
events: events ?? [],
|
|
14502
|
+
rowCapacity,
|
|
14503
|
+
blockedDates,
|
|
14504
|
+
focusedEventId
|
|
14505
|
+
});
|
|
14506
|
+
}, [cells, events, rowCapacity, dayContent, focusedEventId]);
|
|
14300
14507
|
const openIndex = openDate == null ? -1 : cells.findIndex((cell) => cell.date === openDate);
|
|
14301
14508
|
const openEvents = openIndex < 0 ? [] : layout.eventsByCell[openIndex];
|
|
14302
14509
|
useLayoutEffect(() => {
|
|
@@ -14421,7 +14628,7 @@ function SCalendarBoard({
|
|
|
14421
14628
|
}
|
|
14422
14629
|
),
|
|
14423
14630
|
/* @__PURE__ */ jsxs(
|
|
14424
|
-
|
|
14631
|
+
RPopover13.Root,
|
|
14425
14632
|
{
|
|
14426
14633
|
open: openDate !== null,
|
|
14427
14634
|
onOpenChange: (open) => {
|
|
@@ -14457,6 +14664,8 @@ function SCalendarBoard({
|
|
|
14457
14664
|
body: content,
|
|
14458
14665
|
hiddenCount: layout.hiddenCountByCell[index],
|
|
14459
14666
|
moreLane: layout.moreLaneByWeek[Math.floor(index / 7)],
|
|
14667
|
+
moreReplaced: layout.moreReplacedByCell[index],
|
|
14668
|
+
focusedEventId,
|
|
14460
14669
|
isOpen: openDate === cell.date,
|
|
14461
14670
|
moreLabel,
|
|
14462
14671
|
onDaySelect: (date) => onValueChange?.(date, list),
|
|
@@ -14465,12 +14674,12 @@ function SCalendarBoard({
|
|
|
14465
14674
|
},
|
|
14466
14675
|
cell.date
|
|
14467
14676
|
);
|
|
14468
|
-
return cell.date === openDate ? /* @__PURE__ */ jsx(
|
|
14677
|
+
return cell.date === openDate ? /* @__PURE__ */ jsx(RPopover13.Anchor, { asChild: true, children: card }, cell.date) : card;
|
|
14469
14678
|
})
|
|
14470
14679
|
}
|
|
14471
14680
|
),
|
|
14472
|
-
/* @__PURE__ */ jsx(
|
|
14473
|
-
|
|
14681
|
+
/* @__PURE__ */ jsx(RPopover13.Portal, { container: portalContainer, children: /* @__PURE__ */ jsx(
|
|
14682
|
+
RPopover13.Content,
|
|
14474
14683
|
{
|
|
14475
14684
|
onInteractOutside: (e) => {
|
|
14476
14685
|
const target = e.detail.originalEvent.target;
|
|
@@ -16973,10 +17182,10 @@ function useTruncatedValueTooltip({
|
|
|
16973
17182
|
valueRef: elRef,
|
|
16974
17183
|
onMouseEnter: active ? onMouseEnter : cancelHide,
|
|
16975
17184
|
onMouseLeave: active ? startHide : cancelHide,
|
|
16976
|
-
tooltip: active ? /* @__PURE__ */ jsxs(
|
|
16977
|
-
/* @__PURE__ */ jsx(
|
|
16978
|
-
/* @__PURE__ */ jsx(
|
|
16979
|
-
|
|
17185
|
+
tooltip: active ? /* @__PURE__ */ jsxs(RPopover13.Root, { open, onOpenChange: setOpen, children: [
|
|
17186
|
+
/* @__PURE__ */ jsx(RPopover13.Anchor, { virtualRef: elRef }),
|
|
17187
|
+
/* @__PURE__ */ jsx(RPopover13.Portal, { container: portalContainer, children: /* @__PURE__ */ jsx(
|
|
17188
|
+
RPopover13.Content,
|
|
16980
17189
|
{
|
|
16981
17190
|
side: "top",
|
|
16982
17191
|
sideOffset: 4,
|
|
@@ -18230,8 +18439,8 @@ function SDatePicker({
|
|
|
18230
18439
|
disabled,
|
|
18231
18440
|
className,
|
|
18232
18441
|
style,
|
|
18233
|
-
children: /* @__PURE__ */ jsxs(
|
|
18234
|
-
/* @__PURE__ */ jsx(
|
|
18442
|
+
children: /* @__PURE__ */ jsxs(RPopover13.Root, { open, onOpenChange: (o) => !disabled && setOpen(o), children: [
|
|
18443
|
+
/* @__PURE__ */ jsx(RPopover13.Trigger, { asChild: true, children: /* @__PURE__ */ jsxs(
|
|
18235
18444
|
"div",
|
|
18236
18445
|
{
|
|
18237
18446
|
role: "button",
|
|
@@ -18290,8 +18499,8 @@ function SDatePicker({
|
|
|
18290
18499
|
]
|
|
18291
18500
|
}
|
|
18292
18501
|
) }),
|
|
18293
|
-
/* @__PURE__ */ jsx(
|
|
18294
|
-
|
|
18502
|
+
/* @__PURE__ */ jsx(RPopover13.Portal, { container: portalContainer, children: /* @__PURE__ */ jsx(
|
|
18503
|
+
RPopover13.Content,
|
|
18295
18504
|
{
|
|
18296
18505
|
side: "bottom",
|
|
18297
18506
|
align: mode === "date" ? "start" : "center",
|
|
@@ -18767,7 +18976,7 @@ function SDateRangePicker({
|
|
|
18767
18976
|
className,
|
|
18768
18977
|
style,
|
|
18769
18978
|
children: /* @__PURE__ */ jsxs(
|
|
18770
|
-
|
|
18979
|
+
RPopover13.Root,
|
|
18771
18980
|
{
|
|
18772
18981
|
open,
|
|
18773
18982
|
onOpenChange: (o) => {
|
|
@@ -18776,7 +18985,7 @@ function SDateRangePicker({
|
|
|
18776
18985
|
if (!o) setPendingStart(null);
|
|
18777
18986
|
},
|
|
18778
18987
|
children: [
|
|
18779
|
-
/* @__PURE__ */ jsx(
|
|
18988
|
+
/* @__PURE__ */ jsx(RPopover13.Trigger, { asChild: true, children: /* @__PURE__ */ jsxs(
|
|
18780
18989
|
"div",
|
|
18781
18990
|
{
|
|
18782
18991
|
role: "button",
|
|
@@ -18840,8 +19049,8 @@ function SDateRangePicker({
|
|
|
18840
19049
|
]
|
|
18841
19050
|
}
|
|
18842
19051
|
) }),
|
|
18843
|
-
/* @__PURE__ */ jsx(
|
|
18844
|
-
|
|
19052
|
+
/* @__PURE__ */ jsx(RPopover13.Portal, { container: portalContainer, children: /* @__PURE__ */ jsx(
|
|
19053
|
+
RPopover13.Content,
|
|
18845
19054
|
{
|
|
18846
19055
|
side: "bottom",
|
|
18847
19056
|
align: "start",
|
|
@@ -19608,6 +19817,10 @@ var ChartFrame = /* @__PURE__ */ forwardRef(function ChartFrame2({ title, unit,
|
|
|
19608
19817
|
}
|
|
19609
19818
|
);
|
|
19610
19819
|
});
|
|
19820
|
+
|
|
19821
|
+
// src/lib/chart/hover-dim.ts
|
|
19822
|
+
var CHART_DIM_OPACITY_TRANSITION = "transition-opacity duration-200 ease-out motion-reduce:transition-none";
|
|
19823
|
+
var CHART_DIM_COLOR_TRANSITION = "transition-colors duration-200 ease-out motion-reduce:transition-none";
|
|
19611
19824
|
var DOT_SIZE = 6;
|
|
19612
19825
|
function ChartLegend({
|
|
19613
19826
|
items,
|
|
@@ -19640,7 +19853,7 @@ function ChartLegend({
|
|
|
19640
19853
|
"flex items-center gap-(--cmp-chart-legendItem-gap)",
|
|
19641
19854
|
"py-(--cmp-chart-legendItem-paddingY)",
|
|
19642
19855
|
"typo-body-sm-medium text-(--cmp-chart-legendItem-color)",
|
|
19643
|
-
|
|
19856
|
+
CHART_DIM_OPACITY_TRANSITION,
|
|
19644
19857
|
activeIndex != null && activeIndex !== index && "opacity-(--opacity-060)"
|
|
19645
19858
|
),
|
|
19646
19859
|
children: [
|
|
@@ -19671,7 +19884,7 @@ function ChartLegend({
|
|
|
19671
19884
|
"flex items-center gap-(--cmp-chart-legendItem-gap)",
|
|
19672
19885
|
"py-(--cmp-chart-legendItem-paddingY)",
|
|
19673
19886
|
"typo-body-sm-medium text-(--cmp-chart-legendItem-color)",
|
|
19674
|
-
|
|
19887
|
+
CHART_DIM_OPACITY_TRANSITION,
|
|
19675
19888
|
activeIndex != null && activeIndex !== index && "opacity-(--opacity-060)"
|
|
19676
19889
|
),
|
|
19677
19890
|
children: [
|
|
@@ -19900,7 +20113,6 @@ var BAR_OPACITY_HOVER = 1;
|
|
|
19900
20113
|
var BAR_DATA_LABEL_COLOR = "var(--cmp-chart-dataLabel-color-default)";
|
|
19901
20114
|
var BAR_DATA_LABEL_TYPO = "typo-body-sm-medium";
|
|
19902
20115
|
var BAR_DATA_LABEL_TYPO_HOVER = "typo-body-md-bold";
|
|
19903
|
-
var BAR_HOVER_TRANSITION = "transition-opacity duration-200 ease-out motion-reduce:transition-none";
|
|
19904
20116
|
function bandLayout(size, categoryCount, seriesCount, barSizeMax = BAR_SIZE_MAX) {
|
|
19905
20117
|
const categories = Math.max(1, categoryCount);
|
|
19906
20118
|
const series = Math.max(1, seriesCount);
|
|
@@ -20167,7 +20379,7 @@ var SBarChart = /* @__PURE__ */ forwardRef(function SBarChart2({
|
|
|
20167
20379
|
"path",
|
|
20168
20380
|
{
|
|
20169
20381
|
d: barPath(x, y, width, barHeight, direction, negative),
|
|
20170
|
-
className:
|
|
20382
|
+
className: CHART_DIM_OPACITY_TRANSITION,
|
|
20171
20383
|
style: {
|
|
20172
20384
|
fill: colorAt(seriesIndex, categoryIndex),
|
|
20173
20385
|
opacity,
|
|
@@ -20184,7 +20396,7 @@ var SBarChart = /* @__PURE__ */ forwardRef(function SBarChart2({
|
|
|
20184
20396
|
y: labelY,
|
|
20185
20397
|
className: cn(
|
|
20186
20398
|
hoveredCategory === categoryIndex ? BAR_DATA_LABEL_TYPO_HOVER : BAR_DATA_LABEL_TYPO,
|
|
20187
|
-
|
|
20399
|
+
CHART_DIM_OPACITY_TRANSITION
|
|
20188
20400
|
),
|
|
20189
20401
|
style: {
|
|
20190
20402
|
fill: BAR_DATA_LABEL_COLOR,
|
|
@@ -20265,7 +20477,7 @@ var SBarChart = /* @__PURE__ */ forwardRef(function SBarChart2({
|
|
|
20265
20477
|
width: box3.width,
|
|
20266
20478
|
height: box3.height,
|
|
20267
20479
|
clipPath: `url(#${segment.value < 0 ? negativeClip : positiveClip})`,
|
|
20268
|
-
className:
|
|
20480
|
+
className: CHART_DIM_OPACITY_TRANSITION,
|
|
20269
20481
|
style: {
|
|
20270
20482
|
// 조각과 라벨에 따로 건다 — 묶음(<g>)에 걸면 호버가 없을 때의
|
|
20271
20483
|
// 기본 흐림까지 합계 라벨에 묻어 숫자가 늘 옅어진다.
|
|
@@ -20290,7 +20502,7 @@ var SBarChart = /* @__PURE__ */ forwardRef(function SBarChart2({
|
|
|
20290
20502
|
y: labelY,
|
|
20291
20503
|
className: cn(
|
|
20292
20504
|
hoveredCategory === categoryIndex ? BAR_DATA_LABEL_TYPO_HOVER : BAR_DATA_LABEL_TYPO,
|
|
20293
|
-
|
|
20505
|
+
CHART_DIM_OPACITY_TRANSITION
|
|
20294
20506
|
),
|
|
20295
20507
|
style: {
|
|
20296
20508
|
fill: BAR_DATA_LABEL_COLOR,
|
|
@@ -20813,6 +21025,7 @@ var SLineChart = /* @__PURE__ */ forwardRef(function SLineChart2({
|
|
|
20813
21025
|
cx: point.x,
|
|
20814
21026
|
cy: point.y,
|
|
20815
21027
|
r: hovered ? POINT_HOVER_RADIUS : POINT_RADIUS,
|
|
21028
|
+
className: CHART_DIM_COLOR_TRANSITION,
|
|
20816
21029
|
style: {
|
|
20817
21030
|
fill: dimmed ? dimmedColorAt(seriesIndex) : color,
|
|
20818
21031
|
cursor: onPointClick ? "pointer" : void 0
|
|
@@ -21167,7 +21380,7 @@ var RadialChart = /* @__PURE__ */ forwardRef(function RadialChart2({
|
|
|
21167
21380
|
{
|
|
21168
21381
|
d: slice(arc2),
|
|
21169
21382
|
fillRule: "evenodd",
|
|
21170
|
-
className:
|
|
21383
|
+
className: CHART_DIM_OPACITY_TRANSITION,
|
|
21171
21384
|
style: {
|
|
21172
21385
|
fill: arc2.color,
|
|
21173
21386
|
opacity,
|
|
@@ -21200,7 +21413,10 @@ var RadialChart = /* @__PURE__ */ forwardRef(function RadialChart2({
|
|
|
21200
21413
|
y: point.y,
|
|
21201
21414
|
textAnchor: "middle",
|
|
21202
21415
|
dominantBaseline: "central",
|
|
21203
|
-
className:
|
|
21416
|
+
className: cn(
|
|
21417
|
+
"pointer-events-none typo-body-sm-bold",
|
|
21418
|
+
CHART_DIM_OPACITY_TRANSITION
|
|
21419
|
+
),
|
|
21204
21420
|
style: {
|
|
21205
21421
|
fill: "var(--sys-color-fg-inverse)",
|
|
21206
21422
|
opacity: hovered != null && hovered !== arc2.index ? OPACITY_DIMMED : void 0
|
|
@@ -23217,10 +23433,10 @@ function EditorToolbarBar({
|
|
|
23217
23433
|
},
|
|
23218
23434
|
item4
|
|
23219
23435
|
);
|
|
23220
|
-
return /* @__PURE__ */ jsxs(
|
|
23221
|
-
/* @__PURE__ */ jsx(
|
|
23222
|
-
/* @__PURE__ */ jsx(
|
|
23223
|
-
|
|
23436
|
+
return /* @__PURE__ */ jsxs(RPopover13.Root, { open: linkOpen, onOpenChange: setLinkOpen, children: [
|
|
23437
|
+
/* @__PURE__ */ jsx(RPopover13.Trigger, { asChild: true, disabled: off, children: /* @__PURE__ */ jsx(ToolbarButton, { label: "\uB9C1\uD06C", active: state2.link, disabled: off, children: /* @__PURE__ */ jsx(IconLink, { size: ICON_SIZE }) }) }),
|
|
23438
|
+
/* @__PURE__ */ jsx(RPopover13.Portal, { container: portalContainer, children: /* @__PURE__ */ jsx(
|
|
23439
|
+
RPopover13.Content,
|
|
23224
23440
|
{
|
|
23225
23441
|
sideOffset: 4,
|
|
23226
23442
|
align: "start",
|
|
@@ -24613,8 +24829,8 @@ var SChipFilter = /* @__PURE__ */ forwardRef(function SChipFilter2({
|
|
|
24613
24829
|
})(),
|
|
24614
24830
|
hasRightActions && /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
24615
24831
|
/* @__PURE__ */ jsx(Divider, { inset: true }),
|
|
24616
|
-
hasAddButton && /* @__PURE__ */ jsxs(
|
|
24617
|
-
/* @__PURE__ */ jsx(
|
|
24832
|
+
hasAddButton && /* @__PURE__ */ jsxs(RPopover13.Root, { open: addOpen, onOpenChange: setAddOpen, children: [
|
|
24833
|
+
/* @__PURE__ */ jsx(RPopover13.Trigger, { asChild: true, children: /* @__PURE__ */ jsxs(
|
|
24618
24834
|
"button",
|
|
24619
24835
|
{
|
|
24620
24836
|
type: "button",
|
|
@@ -24639,8 +24855,8 @@ var SChipFilter = /* @__PURE__ */ forwardRef(function SChipFilter2({
|
|
|
24639
24855
|
]
|
|
24640
24856
|
}
|
|
24641
24857
|
) }),
|
|
24642
|
-
/* @__PURE__ */ jsx(
|
|
24643
|
-
|
|
24858
|
+
/* @__PURE__ */ jsx(RPopover13.Portal, { container: portalContainer, children: /* @__PURE__ */ jsx(
|
|
24859
|
+
RPopover13.Content,
|
|
24644
24860
|
{
|
|
24645
24861
|
side: "bottom",
|
|
24646
24862
|
align: "start",
|
|
@@ -24675,17 +24891,17 @@ var SChipFilter = /* @__PURE__ */ forwardRef(function SChipFilter2({
|
|
|
24675
24891
|
)
|
|
24676
24892
|
] })
|
|
24677
24893
|
] }),
|
|
24678
|
-
/* @__PURE__ */ jsxs(
|
|
24894
|
+
/* @__PURE__ */ jsxs(RPopover13.Root, { open: openKey != null, onOpenChange: (next) => !next && setOpenKey(null), children: [
|
|
24679
24895
|
/* @__PURE__ */ jsx(
|
|
24680
|
-
|
|
24896
|
+
RPopover13.Anchor,
|
|
24681
24897
|
{
|
|
24682
24898
|
virtualRef: {
|
|
24683
24899
|
current: openKey ? triggerRefs.current.get(openKey) : null
|
|
24684
24900
|
}
|
|
24685
24901
|
}
|
|
24686
24902
|
),
|
|
24687
|
-
/* @__PURE__ */ jsx(
|
|
24688
|
-
|
|
24903
|
+
/* @__PURE__ */ jsx(RPopover13.Portal, { container: portalContainer, children: /* @__PURE__ */ jsx(
|
|
24904
|
+
RPopover13.Content,
|
|
24689
24905
|
{
|
|
24690
24906
|
side: "bottom",
|
|
24691
24907
|
align: "start",
|
|
@@ -25278,8 +25494,8 @@ function InlineDatePresetFilter({
|
|
|
25278
25494
|
applied && (rangeValue ? (
|
|
25279
25495
|
// 뱃지 모양은 그대로 두고, 눌렀을 때 캘린더가 열려 기간을 직접 다시 고를 수 있게 한다.
|
|
25280
25496
|
// 직접 고르면 프리셋 선택은 해제된다.
|
|
25281
|
-
/* @__PURE__ */ jsxs(
|
|
25282
|
-
/* @__PURE__ */ jsx(
|
|
25497
|
+
/* @__PURE__ */ jsxs(RPopover13.Root, { open: pickerOpen, onOpenChange: setPickerOpen, children: [
|
|
25498
|
+
/* @__PURE__ */ jsx(RPopover13.Trigger, { asChild: true, children: /* @__PURE__ */ jsx(
|
|
25283
25499
|
"button",
|
|
25284
25500
|
{
|
|
25285
25501
|
type: "button",
|
|
@@ -25288,8 +25504,8 @@ function InlineDatePresetFilter({
|
|
|
25288
25504
|
children: badge
|
|
25289
25505
|
}
|
|
25290
25506
|
) }),
|
|
25291
|
-
/* @__PURE__ */ jsx(
|
|
25292
|
-
|
|
25507
|
+
/* @__PURE__ */ jsx(RPopover13.Portal, { container: portalContainer, children: /* @__PURE__ */ jsx(
|
|
25508
|
+
RPopover13.Content,
|
|
25293
25509
|
{
|
|
25294
25510
|
side: "bottom",
|
|
25295
25511
|
align: "start",
|
|
@@ -26751,8 +26967,8 @@ function STimePicker({
|
|
|
26751
26967
|
disabled,
|
|
26752
26968
|
className,
|
|
26753
26969
|
style,
|
|
26754
|
-
children: /* @__PURE__ */ jsxs(
|
|
26755
|
-
/* @__PURE__ */ jsx(
|
|
26970
|
+
children: /* @__PURE__ */ jsxs(RPopover13.Root, { open, onOpenChange: commitOpen, children: [
|
|
26971
|
+
/* @__PURE__ */ jsx(RPopover13.Trigger, { asChild: true, children: /* @__PURE__ */ jsxs(
|
|
26756
26972
|
"div",
|
|
26757
26973
|
{
|
|
26758
26974
|
ref: triggerRef,
|
|
@@ -26812,8 +27028,8 @@ function STimePicker({
|
|
|
26812
27028
|
]
|
|
26813
27029
|
}
|
|
26814
27030
|
) }),
|
|
26815
|
-
/* @__PURE__ */ jsx(
|
|
26816
|
-
|
|
27031
|
+
/* @__PURE__ */ jsx(RPopover13.Portal, { container: portalContainer, children: /* @__PURE__ */ jsx(
|
|
27032
|
+
RPopover13.Content,
|
|
26817
27033
|
{
|
|
26818
27034
|
side: "bottom",
|
|
26819
27035
|
align: "start",
|
|
@@ -27221,8 +27437,8 @@ function STimeRangePicker({
|
|
|
27221
27437
|
disabled,
|
|
27222
27438
|
className,
|
|
27223
27439
|
style,
|
|
27224
|
-
children: /* @__PURE__ */ jsxs(
|
|
27225
|
-
/* @__PURE__ */ jsx(
|
|
27440
|
+
children: /* @__PURE__ */ jsxs(RPopover13.Root, { open, onOpenChange: commitOpen, children: [
|
|
27441
|
+
/* @__PURE__ */ jsx(RPopover13.Trigger, { asChild: true, children: /* @__PURE__ */ jsxs(
|
|
27226
27442
|
"div",
|
|
27227
27443
|
{
|
|
27228
27444
|
ref: triggerRef,
|
|
@@ -27282,8 +27498,8 @@ function STimeRangePicker({
|
|
|
27282
27498
|
]
|
|
27283
27499
|
}
|
|
27284
27500
|
) }),
|
|
27285
|
-
/* @__PURE__ */ jsx(
|
|
27286
|
-
|
|
27501
|
+
/* @__PURE__ */ jsx(RPopover13.Portal, { container: portalContainer, children: /* @__PURE__ */ jsx(
|
|
27502
|
+
RPopover13.Content,
|
|
27287
27503
|
{
|
|
27288
27504
|
side: "bottom",
|
|
27289
27505
|
align: "start",
|
|
@@ -27310,6 +27526,6 @@ function STimeRangePicker({
|
|
|
27310
27526
|
);
|
|
27311
27527
|
}
|
|
27312
27528
|
|
|
27313
|
-
export { ACCOUNT_LIST_BOX_ICONS, ACCOUNT_LIST_BOX_ITEM_TONES, ACCOUNT_LIST_BOX_LABELS, ACCOUNT_LIST_BOX_LAYOUT, ACCOUNT_LIST_BOX_TONE_CONFIG, BADGE_COLORS, BAR_GAP, BAR_SIZE_MAX, BAR_SIZE_MIN, BUTTON_COLORS, BUTTON_SIZES, CALENDAR_BOARD_DAY_BG, CALENDAR_BOARD_DAY_COLORS, CALENDAR_BOARD_EVENT_COLORS, CALENDAR_BOARD_EVENT_PRESETS, CALENDAR_BOARD_MAX_VISIBLE_EVENTS, CHAT_ATTACHED_FILE_CONFIG, CHAT_FILE_CONFIG, CHAT_MESSAGE_DIRECTIONS, CHAT_MESSAGE_READ_STATUSES, CHAT_MESSAGE_VARIANTS, CHIP_COLORS, COLOR_KEYS, CONTEXT_ALERT_DEFAULT_ICON, CONTEXT_ALERT_ICON_COLOR, CONTEXT_ALERT_INTENTS, CONTEXT_ALERT_SURFACE, FIELD_WIDTH_GRADES, GNB_COLORS, GNB_COMMON, GNB_FOLD_MS, GNB_FULL_LOGO_WIDTH, GNB_HEADER, GNB_MENU, GNB_MENU_WIDTH, GNB_RAIL, GNB_RAIL_WIDTH, GNB_SYSTEM_COLORS, GNB_SYSTEM_COLOR_CONFIG, GNB_SYSTEM_LAYOUT, GNB_SYSTEM_PLACEMENTS, GNB_SYSTEM_TOP_COLOR_CONFIG, ICONS, IMAGE_FITS, LAUNCHER_LIST_BOX_LAYOUT, LAUNCHER_LIST_BOX_LOGO_HEIGHT, LAUNCHER_LIST_BOX_LOGO_SERVICE_GAP, LAUNCHER_LIST_BOX_TRAILING_ICON, LAUNCHER_LIST_BOX_WIDTH, LAUNCHER_SERVICES, LAUNCHER_SERVICE_CATALOG, LOGO_DEFAULT_SIZE, LOGO_NAMES, PAGE_BACKGROUNDS, PAGE_CONTENT_HEIGHTS, PAGE_CONTENT_WIDTHS, PAGE_HEADER_VARIANTS, PAGE_PADDINGS, RangeCalendar, SAccountListBox, SActionModal, SBadge, SBarChart, SBarcodeInput, SButton, SCROLL_AREA_AXES, SCalendar, SCalendarBoard, SCallout, SCard, SChatAttachedFile2 as SChatAttachedFile, SChatFile2 as SChatFile, SChatInput2 as SChatInput, SChatMessage2 as SChatMessage, SChatSystemMessage2 as SChatSystemMessage, SCheckbox, SChip2 as SChip, SChipFilter, SChipInput, SCircleProgress, SConfirmModal, SContextAlert, SDatePicker, SDatePickerMonthListbox, SDatePickerYearListbox, SDateRangePicker, SDivider, SDonutChart, SDraggableGroup, SDraggableItem2 as SDraggableItem, SDraggableList, SDraggableProvider, SDrawer, SDropdownButton2 as SDropdownButton, SEDITOR_DEFAULT_FONT_SIZE, SEDITOR_HEADING_LABELS, SEDITOR_HEADING_LEVELS, SEditor, SExpansionItem, SExpansionList2 as SExpansionList, SField, SFilePicker, SForm, SGhostButton, SGnb, SGnbSystem, SGnbSystemContext, SGuide, SIcon, SImage, SInput, SKeyValueTable, SLAYOUT_MIN_WIDTH, SLauncherListBox, SLayout, SLayoutContext, SLineChart, SLinearProgress, SList2 as SList, SListItem2 as SListItem, SLoadingContainer, SLoadingModal,
|
|
27529
|
+
export { ACCOUNT_LIST_BOX_ICONS, ACCOUNT_LIST_BOX_ITEM_TONES, ACCOUNT_LIST_BOX_LABELS, ACCOUNT_LIST_BOX_LAYOUT, ACCOUNT_LIST_BOX_TONE_CONFIG, BADGE_COLORS, BAR_GAP, BAR_SIZE_MAX, BAR_SIZE_MIN, BUTTON_COLORS, BUTTON_SIZES, CALENDAR_BOARD_DAY_BG, CALENDAR_BOARD_DAY_COLORS, CALENDAR_BOARD_EVENT_COLORS, CALENDAR_BOARD_EVENT_PRESETS, CALENDAR_BOARD_MAX_VISIBLE_EVENTS, CHAT_ATTACHED_FILE_CONFIG, CHAT_FILE_CONFIG, CHAT_MESSAGE_DIRECTIONS, CHAT_MESSAGE_READ_STATUSES, CHAT_MESSAGE_VARIANTS, CHIP_COLORS, COLOR_KEYS, CONTEXT_ALERT_DEFAULT_ICON, CONTEXT_ALERT_ICON_COLOR, CONTEXT_ALERT_INTENTS, CONTEXT_ALERT_SURFACE, FIELD_WIDTH_GRADES, GNB_COLORS, GNB_COMMON, GNB_FOLD_MS, GNB_FULL_LOGO_WIDTH, GNB_HEADER, GNB_MENU, GNB_MENU_WIDTH, GNB_RAIL, GNB_RAIL_WIDTH, GNB_SYSTEM_COLORS, GNB_SYSTEM_COLOR_CONFIG, GNB_SYSTEM_LAYOUT, GNB_SYSTEM_PLACEMENTS, GNB_SYSTEM_TOP_COLOR_CONFIG, ICONS, IMAGE_FITS, LAUNCHER_LIST_BOX_LAYOUT, LAUNCHER_LIST_BOX_LOGO_HEIGHT, LAUNCHER_LIST_BOX_LOGO_SERVICE_GAP, LAUNCHER_LIST_BOX_TRAILING_ICON, LAUNCHER_LIST_BOX_WIDTH, LAUNCHER_SERVICES, LAUNCHER_SERVICE_CATALOG, LOGO_DEFAULT_SIZE, LOGO_NAMES, PAGE_BACKGROUNDS, PAGE_CONTENT_HEIGHTS, PAGE_CONTENT_WIDTHS, PAGE_HEADER_VARIANTS, PAGE_PADDINGS, RangeCalendar, SAccountListBox, SActionModal, SBadge, SBarChart, SBarcodeInput, SButton, SCROLL_AREA_AXES, SCalendar, SCalendarBoard, SCallout, SCard, SChatAttachedFile2 as SChatAttachedFile, SChatFile2 as SChatFile, SChatInput2 as SChatInput, SChatMessage2 as SChatMessage, SChatSystemMessage2 as SChatSystemMessage, SCheckbox, SChip2 as SChip, SChipFilter, SChipInput, SCircleProgress, SConfirmModal, SContextAlert, SDatePicker, SDatePickerMonthListbox, SDatePickerYearListbox, SDateRangePicker, SDivider, SDonutChart, SDraggableGroup, SDraggableItem2 as SDraggableItem, SDraggableList, SDraggableProvider, SDrawer, SDropdownButton2 as SDropdownButton, SEDITOR_DEFAULT_FONT_SIZE, SEDITOR_HEADING_LABELS, SEDITOR_HEADING_LEVELS, SEditor, SExpansionItem, SExpansionList2 as SExpansionList, SField, SFilePicker, SForm, SGhostButton, SGnb, SGnbSystem, SGnbSystemContext, SGuide, SIcon, SImage, SInput, SKeyValueTable, SLAYOUT_MIN_WIDTH, SLauncherListBox, SLayout, SLayoutContext, SLineChart, SLinearProgress, SList2 as SList, SListItem2 as SListItem, SLoadingContainer, SLoadingModal, SLoginCard2 as SLoginCard, SLogo, SMeatballButton2 as SMeatballButton, SModal, SModalOutlet, SNumberInput, SPage, SPageHeader, SPagination, SPieChart, SPopover, SPopup, SPortal, SRadio, SRadioButton, SRadioCard, SRadioCardGroup, SRadioGroup, SSPLITTER_UNITS, SScrollArea, SSearchInput, SSectionHeaderCard2 as SSectionHeaderCard, SSelect2 as SSelect, SSplitter2 as SSplitter, SStepper, SSwitch, SSystemActionButton, STEPPER_SIZES, STable, STableBar, STabs, STag, STextLink, STextarea, STimePicker, STimeRangePicker, SToast, SToastContainer, SToggle, STooltip2 as STooltip, STree2 as STree, STreeItem2 as STreeItem, SYSTEM_ACTION_BUTTON_COLORS, SYSTEM_ACTION_BUTTON_COLOR_CONFIG, SYSTEM_ACTION_BUTTON_LAYOUT, SYSTEM_ACTION_BUTTON_TYPES, SYSTEM_ACTION_BUTTON_TYPE_CONFIG, TAG_COLORS, TAG_SHAPES, TAG_SIZES, TIMEPICKER_SIZES, TIMEPICKER_SIZE_CONFIG, buttonPreset, cn, fieldWidthValue, fileExtension, findGnbAncestors, findGnbRailValue, formatFileSize, isColorKey, isFieldWidthGrade, loading, normalizeExtension, resolveColor, useSLayout };
|
|
27314
27530
|
//# sourceMappingURL=index.js.map
|
|
27315
27531
|
//# sourceMappingURL=index.js.map
|