@x-plat/design-system 0.12.0 → 0.14.0
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/{breakpoints-DsXkJgdl.d.cts → breakpoints-CKkNxA-y.d.cts} +1 -1
- package/dist/{breakpoints-DsXkJgdl.d.ts → breakpoints-CKkNxA-y.d.ts} +1 -1
- package/dist/components/AutoResizeTextArea/index.cjs +2 -2
- package/dist/components/AutoResizeTextArea/index.js +2 -2
- package/dist/components/Badge/index.d.cts +1 -1
- package/dist/components/Badge/index.d.ts +1 -1
- package/dist/components/ChatInput/index.cjs +2 -2
- package/dist/components/ChatInput/index.js +2 -2
- package/dist/components/CheckBox/index.cjs +2 -2
- package/dist/components/CheckBox/index.js +2 -2
- package/dist/components/DatePicker/index.cjs +109 -75
- package/dist/components/DatePicker/index.d.cts +19 -0
- package/dist/components/DatePicker/index.d.ts +19 -0
- package/dist/components/DatePicker/index.js +109 -75
- package/dist/components/Editor/index.css +3 -0
- package/dist/components/FieldMessage/index.cjs +2 -2
- package/dist/components/FieldMessage/index.d.cts +8 -0
- package/dist/components/FieldMessage/index.d.ts +8 -0
- package/dist/components/FieldMessage/index.js +2 -2
- package/dist/components/FileUpload/index.cjs +10 -6
- package/dist/components/FileUpload/index.d.cts +15 -2
- package/dist/components/FileUpload/index.d.ts +15 -2
- package/dist/components/FileUpload/index.js +10 -6
- package/dist/components/ImageSelector/index.cjs +7 -6
- package/dist/components/ImageSelector/index.d.cts +15 -2
- package/dist/components/ImageSelector/index.d.ts +15 -2
- package/dist/components/ImageSelector/index.js +7 -6
- package/dist/components/Input/index.cjs +2 -2
- package/dist/components/Input/index.d.cts +4 -0
- package/dist/components/Input/index.d.ts +4 -0
- package/dist/components/Input/index.js +2 -2
- package/dist/components/Radio/index.cjs +2 -2
- package/dist/components/Radio/index.js +2 -2
- package/dist/components/Select/index.cjs +2 -2
- package/dist/components/Select/index.d.cts +1 -2
- package/dist/components/Select/index.d.ts +1 -2
- package/dist/components/Select/index.js +2 -2
- package/dist/components/Switch/index.cjs +2 -2
- package/dist/components/Switch/index.js +2 -2
- package/dist/components/TextArea/index.cjs +2 -2
- package/dist/components/TextArea/index.js +2 -2
- package/dist/components/TimePicker/index.cjs +2 -2
- package/dist/components/TimePicker/index.js +2 -2
- package/dist/components/ToggleChip/index.cjs +69 -0
- package/dist/components/ToggleChip/index.css +102 -0
- package/dist/components/ToggleChip/index.d.cts +37 -0
- package/dist/components/ToggleChip/index.d.ts +37 -0
- package/dist/components/ToggleChip/index.js +42 -0
- package/dist/components/index.cjs +184 -119
- package/dist/components/index.css +40 -0
- package/dist/components/index.d.cts +2 -1
- package/dist/components/index.d.ts +2 -1
- package/dist/components/index.js +174 -110
- package/dist/index.cjs +203 -138
- package/dist/index.css +40 -0
- package/dist/index.d.cts +4 -3
- package/dist/index.d.ts +4 -3
- package/dist/index.js +191 -127
- package/dist/layout/Grid/Item/index.d.cts +1 -1
- package/dist/layout/Grid/Item/index.d.ts +1 -1
- package/dist/layout/Grid/index.d.cts +1 -1
- package/dist/layout/Grid/index.d.ts +1 -1
- package/dist/layout/index.d.cts +1 -1
- package/dist/layout/index.d.ts +1 -1
- package/dist/tokens/index.d.cts +1 -1
- package/dist/tokens/index.d.ts +1 -1
- package/guidelines/Guidelines.md +13 -1
- package/guidelines/MIGRATION.md +297 -0
- package/guidelines/components/chip-tag.md +75 -2
- package/guidelines/components/datepicker.md +26 -0
- package/guidelines/components/file-media.md +21 -4
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -347,6 +347,7 @@ __export(index_exports, {
|
|
|
347
347
|
ThumbsUpIcon: () => ThumbsUpIcon_default,
|
|
348
348
|
TimePicker: () => TimePicker_default,
|
|
349
349
|
ToastProvider: () => ToastProvider,
|
|
350
|
+
ToggleChip: () => ToggleChip_default,
|
|
350
351
|
ToggleLeftIcon: () => ToggleLeftIcon_default,
|
|
351
352
|
ToggleRightIcon: () => ToggleRightIcon_default,
|
|
352
353
|
ToolIcon: () => ToolIcon_default,
|
|
@@ -6031,11 +6032,11 @@ var FieldMessage = (props) => {
|
|
|
6031
6032
|
FieldMessage.displayName = "FieldMessage";
|
|
6032
6033
|
var FieldMessage_default = FieldMessage;
|
|
6033
6034
|
var Field = (props) => {
|
|
6034
|
-
const { label, required = false, htmlFor, validations, children } = props;
|
|
6035
|
+
const { label, required = false, htmlFor, labelId, validations, children } = props;
|
|
6035
6036
|
const hasMessages = !!validations && validations.length > 0;
|
|
6036
6037
|
if (!label && !hasMessages) return /* @__PURE__ */ (0, import_jsx_runtime297.jsx)(import_jsx_runtime297.Fragment, { children });
|
|
6037
6038
|
return /* @__PURE__ */ (0, import_jsx_runtime297.jsxs)("div", { className: "lib-xplat-field", children: [
|
|
6038
|
-
label && /* @__PURE__ */ (0, import_jsx_runtime297.jsxs)("label", { className: "lib-xplat-field-label", htmlFor, children: [
|
|
6039
|
+
label && /* @__PURE__ */ (0, import_jsx_runtime297.jsxs)("label", { className: "lib-xplat-field-label", id: labelId, htmlFor, children: [
|
|
6039
6040
|
label,
|
|
6040
6041
|
required && /* @__PURE__ */ (0, import_jsx_runtime297.jsx)("span", { className: "required", "aria-hidden": "true", children: "*" })
|
|
6041
6042
|
] }),
|
|
@@ -7815,8 +7816,12 @@ var SingleDatePicker = (props) => {
|
|
|
7815
7816
|
highlightDates = [],
|
|
7816
7817
|
locale = "ko",
|
|
7817
7818
|
rangeStart,
|
|
7818
|
-
rangeEnd
|
|
7819
|
+
rangeEnd,
|
|
7820
|
+
label,
|
|
7821
|
+
required,
|
|
7822
|
+
validations
|
|
7819
7823
|
} = props;
|
|
7824
|
+
const labelId = import_react12.default.useId();
|
|
7820
7825
|
const initialYear = value?.getFullYear();
|
|
7821
7826
|
const initialMonth = value?.getMonth();
|
|
7822
7827
|
const { year, month, days, goToPrevMonth, goToNextMonth, setYear, setMonth } = useCalendar(
|
|
@@ -7879,10 +7884,12 @@ var SingleDatePicker = (props) => {
|
|
|
7879
7884
|
const monthLabels = MONTH_LABELS[locale];
|
|
7880
7885
|
const titleText = pickerMode === "days" ? locale === "ko" ? `${year}\uB144 ${monthLabels[month]}` : `${monthLabels[month]} ${year}` : pickerMode === "months" ? `${year}` : `${yearRangeStart} - ${yearRangeStart + 11}`;
|
|
7881
7886
|
const hasRange = rangeStart != null && rangeEnd != null;
|
|
7882
|
-
|
|
7887
|
+
const calendar = /* @__PURE__ */ (0, import_jsx_runtime314.jsxs)(
|
|
7883
7888
|
"div",
|
|
7884
7889
|
{
|
|
7885
7890
|
className: clsx_default("lib-xplat-datepicker", "single"),
|
|
7891
|
+
role: "group",
|
|
7892
|
+
"aria-labelledby": label ? labelId : void 0,
|
|
7886
7893
|
children: [
|
|
7887
7894
|
/* @__PURE__ */ (0, import_jsx_runtime314.jsxs)("div", { className: "datepicker-header", children: [
|
|
7888
7895
|
/* @__PURE__ */ (0, import_jsx_runtime314.jsx)("button", { className: "datepicker-nav", onClick: handlePrev, type: "button", children: /* @__PURE__ */ (0, import_jsx_runtime314.jsx)(ChevronLeftIcon_default, {}) }),
|
|
@@ -7903,18 +7910,18 @@ var SingleDatePicker = (props) => {
|
|
|
7903
7910
|
y
|
|
7904
7911
|
);
|
|
7905
7912
|
}) }),
|
|
7906
|
-
pickerMode === "months" && /* @__PURE__ */ (0, import_jsx_runtime314.jsx)("div", { className: "datepicker-picker-grid", children: monthLabels.map((
|
|
7913
|
+
pickerMode === "months" && /* @__PURE__ */ (0, import_jsx_runtime314.jsx)("div", { className: "datepicker-picker-grid", children: monthLabels.map((label2, i) => /* @__PURE__ */ (0, import_jsx_runtime314.jsx)(
|
|
7907
7914
|
"button",
|
|
7908
7915
|
{
|
|
7909
7916
|
type: "button",
|
|
7910
7917
|
className: clsx_default("datepicker-picker-cell", i === month && "active"),
|
|
7911
7918
|
onClick: () => handleMonthSelect(i),
|
|
7912
|
-
children:
|
|
7919
|
+
children: label2
|
|
7913
7920
|
},
|
|
7914
7921
|
i
|
|
7915
7922
|
)) }),
|
|
7916
7923
|
pickerMode === "days" && /* @__PURE__ */ (0, import_jsx_runtime314.jsxs)(import_jsx_runtime314.Fragment, { children: [
|
|
7917
|
-
/* @__PURE__ */ (0, import_jsx_runtime314.jsx)("div", { className: "datepicker-weekdays", children: weekdays.map((
|
|
7924
|
+
/* @__PURE__ */ (0, import_jsx_runtime314.jsx)("div", { className: "datepicker-weekdays", children: weekdays.map((label2, i) => /* @__PURE__ */ (0, import_jsx_runtime314.jsx)(
|
|
7918
7925
|
"div",
|
|
7919
7926
|
{
|
|
7920
7927
|
className: clsx_default(
|
|
@@ -7922,9 +7929,9 @@ var SingleDatePicker = (props) => {
|
|
|
7922
7929
|
i === 0 && "sunday",
|
|
7923
7930
|
i === 6 && "saturday"
|
|
7924
7931
|
),
|
|
7925
|
-
children:
|
|
7932
|
+
children: label2
|
|
7926
7933
|
},
|
|
7927
|
-
|
|
7934
|
+
label2
|
|
7928
7935
|
)) }),
|
|
7929
7936
|
/* @__PURE__ */ (0, import_jsx_runtime314.jsx)("div", { className: "datepicker-grid", children: days.map((day, idx) => {
|
|
7930
7937
|
const t = day.date.getTime();
|
|
@@ -7956,6 +7963,7 @@ var SingleDatePicker = (props) => {
|
|
|
7956
7963
|
]
|
|
7957
7964
|
}
|
|
7958
7965
|
);
|
|
7966
|
+
return /* @__PURE__ */ (0, import_jsx_runtime314.jsx)(Field, { label, required, labelId, validations, children: calendar });
|
|
7959
7967
|
};
|
|
7960
7968
|
SingleDatePicker.displayName = "SingleDatePicker";
|
|
7961
7969
|
var SingleDatePicker_default = SingleDatePicker;
|
|
@@ -7970,7 +7978,18 @@ var formatDate = (date) => {
|
|
|
7970
7978
|
return `${y}/${m}/${d}`;
|
|
7971
7979
|
};
|
|
7972
7980
|
var InputDatePicker = (props) => {
|
|
7973
|
-
const {
|
|
7981
|
+
const {
|
|
7982
|
+
value,
|
|
7983
|
+
onChange,
|
|
7984
|
+
minDate,
|
|
7985
|
+
maxDate,
|
|
7986
|
+
disabled,
|
|
7987
|
+
locale = "ko",
|
|
7988
|
+
placeholder,
|
|
7989
|
+
label,
|
|
7990
|
+
required,
|
|
7991
|
+
validations
|
|
7992
|
+
} = props;
|
|
7974
7993
|
const [isOpen, setIsOpen] = import_react13.default.useState(false);
|
|
7975
7994
|
const [tempDate, setTempDate] = import_react13.default.useState(value ?? /* @__PURE__ */ new Date());
|
|
7976
7995
|
const handleOpen = () => {
|
|
@@ -7996,6 +8015,9 @@ var InputDatePicker = (props) => {
|
|
|
7996
8015
|
placeholder,
|
|
7997
8016
|
suffix: /* @__PURE__ */ (0, import_jsx_runtime315.jsx)(CalenderIcon_default, {}),
|
|
7998
8017
|
disabled,
|
|
8018
|
+
label,
|
|
8019
|
+
required,
|
|
8020
|
+
validations,
|
|
7999
8021
|
readOnly: true
|
|
8000
8022
|
}
|
|
8001
8023
|
) }),
|
|
@@ -8127,8 +8149,12 @@ var RangePicker = (props) => {
|
|
|
8127
8149
|
onChange,
|
|
8128
8150
|
minDate,
|
|
8129
8151
|
maxDate,
|
|
8130
|
-
locale = "ko"
|
|
8152
|
+
locale = "ko",
|
|
8153
|
+
label,
|
|
8154
|
+
required,
|
|
8155
|
+
validations
|
|
8131
8156
|
} = props;
|
|
8157
|
+
const labelId = import_react16.default.useId();
|
|
8132
8158
|
const [activeTab, setActiveTab] = import_react16.default.useState("start");
|
|
8133
8159
|
const handleStartChange = (date) => {
|
|
8134
8160
|
if (!date) return;
|
|
@@ -8142,70 +8168,79 @@ var RangePicker = (props) => {
|
|
|
8142
8168
|
};
|
|
8143
8169
|
const startMaxDate = maxDate && endDate < maxDate ? endDate : endDate;
|
|
8144
8170
|
const endMinDate = minDate && startDate > minDate ? startDate : startDate;
|
|
8145
|
-
|
|
8146
|
-
|
|
8147
|
-
|
|
8148
|
-
|
|
8149
|
-
|
|
8150
|
-
|
|
8151
|
-
|
|
8152
|
-
|
|
8153
|
-
|
|
8154
|
-
|
|
8155
|
-
|
|
8156
|
-
|
|
8157
|
-
|
|
8158
|
-
|
|
8159
|
-
|
|
8160
|
-
|
|
8161
|
-
|
|
8162
|
-
|
|
8163
|
-
|
|
8164
|
-
|
|
8165
|
-
|
|
8166
|
-
|
|
8167
|
-
|
|
8168
|
-
|
|
8169
|
-
|
|
8170
|
-
|
|
8171
|
-
|
|
8172
|
-
|
|
8173
|
-
|
|
8174
|
-
|
|
8175
|
-
|
|
8176
|
-
|
|
8177
|
-
|
|
8178
|
-
|
|
8179
|
-
|
|
8180
|
-
|
|
8181
|
-
|
|
8182
|
-
|
|
8183
|
-
|
|
8184
|
-
|
|
8185
|
-
|
|
8186
|
-
|
|
8187
|
-
|
|
8188
|
-
|
|
8189
|
-
|
|
8190
|
-
|
|
8191
|
-
|
|
8192
|
-
|
|
8193
|
-
|
|
8194
|
-
|
|
8195
|
-
|
|
8196
|
-
|
|
8197
|
-
|
|
8198
|
-
|
|
8199
|
-
|
|
8200
|
-
|
|
8201
|
-
|
|
8202
|
-
|
|
8203
|
-
|
|
8204
|
-
|
|
8205
|
-
|
|
8206
|
-
|
|
8207
|
-
|
|
8208
|
-
|
|
8171
|
+
const calendar = /* @__PURE__ */ (0, import_jsx_runtime318.jsxs)(
|
|
8172
|
+
"div",
|
|
8173
|
+
{
|
|
8174
|
+
className: clsx_default("lib-xplat-datepicker", "range"),
|
|
8175
|
+
role: "group",
|
|
8176
|
+
"aria-labelledby": label ? labelId : void 0,
|
|
8177
|
+
children: [
|
|
8178
|
+
/* @__PURE__ */ (0, import_jsx_runtime318.jsx)("div", { className: "datepicker-range-tabs", children: /* @__PURE__ */ (0, import_jsx_runtime318.jsx)(
|
|
8179
|
+
Tab_default,
|
|
8180
|
+
{
|
|
8181
|
+
activeIndex: activeTab === "start" ? 0 : 1,
|
|
8182
|
+
tabs: [
|
|
8183
|
+
{ value: "start", title: locale === "ko" ? "\uC2DC\uC791\uC77C" : "Start" },
|
|
8184
|
+
{ value: "end", title: locale === "ko" ? "\uC885\uB8CC\uC77C" : "End" }
|
|
8185
|
+
],
|
|
8186
|
+
onChange: (tab) => setActiveTab(tab.value),
|
|
8187
|
+
type: "toggle",
|
|
8188
|
+
size: "sm"
|
|
8189
|
+
}
|
|
8190
|
+
) }),
|
|
8191
|
+
/* @__PURE__ */ (0, import_jsx_runtime318.jsxs)("div", { className: "datepicker-range-panels", children: [
|
|
8192
|
+
/* @__PURE__ */ (0, import_jsx_runtime318.jsx)(
|
|
8193
|
+
SingleDatePicker_default,
|
|
8194
|
+
{
|
|
8195
|
+
value: startDate,
|
|
8196
|
+
onChange: handleStartChange,
|
|
8197
|
+
minDate,
|
|
8198
|
+
maxDate: startMaxDate,
|
|
8199
|
+
rangeStart: startDate,
|
|
8200
|
+
rangeEnd: endDate,
|
|
8201
|
+
locale
|
|
8202
|
+
}
|
|
8203
|
+
),
|
|
8204
|
+
/* @__PURE__ */ (0, import_jsx_runtime318.jsx)(
|
|
8205
|
+
SingleDatePicker_default,
|
|
8206
|
+
{
|
|
8207
|
+
value: endDate,
|
|
8208
|
+
onChange: handleEndChange,
|
|
8209
|
+
minDate: endMinDate,
|
|
8210
|
+
maxDate,
|
|
8211
|
+
rangeStart: startDate,
|
|
8212
|
+
rangeEnd: endDate,
|
|
8213
|
+
locale
|
|
8214
|
+
}
|
|
8215
|
+
)
|
|
8216
|
+
] }),
|
|
8217
|
+
/* @__PURE__ */ (0, import_jsx_runtime318.jsx)("div", { className: "datepicker-range-mobile", children: activeTab === "start" ? /* @__PURE__ */ (0, import_jsx_runtime318.jsx)(
|
|
8218
|
+
SingleDatePicker_default,
|
|
8219
|
+
{
|
|
8220
|
+
value: startDate,
|
|
8221
|
+
onChange: handleStartChange,
|
|
8222
|
+
minDate,
|
|
8223
|
+
maxDate: startMaxDate,
|
|
8224
|
+
rangeStart: startDate,
|
|
8225
|
+
rangeEnd: endDate,
|
|
8226
|
+
locale
|
|
8227
|
+
}
|
|
8228
|
+
) : /* @__PURE__ */ (0, import_jsx_runtime318.jsx)(
|
|
8229
|
+
SingleDatePicker_default,
|
|
8230
|
+
{
|
|
8231
|
+
value: endDate,
|
|
8232
|
+
onChange: handleEndChange,
|
|
8233
|
+
minDate: endMinDate,
|
|
8234
|
+
maxDate,
|
|
8235
|
+
rangeStart: startDate,
|
|
8236
|
+
rangeEnd: endDate,
|
|
8237
|
+
locale
|
|
8238
|
+
}
|
|
8239
|
+
) })
|
|
8240
|
+
]
|
|
8241
|
+
}
|
|
8242
|
+
);
|
|
8243
|
+
return /* @__PURE__ */ (0, import_jsx_runtime318.jsx)(Field, { label, required, labelId, validations, children: calendar });
|
|
8209
8244
|
};
|
|
8210
8245
|
RangePicker.displayName = "RangePicker";
|
|
8211
8246
|
var RangePicker_default = RangePicker;
|
|
@@ -9978,10 +10013,13 @@ var FileUpload = (props) => {
|
|
|
9978
10013
|
multiple = false,
|
|
9979
10014
|
maxSize,
|
|
9980
10015
|
onChange,
|
|
9981
|
-
|
|
10016
|
+
placeholder = "\uD30C\uC77C\uC744 \uB4DC\uB798\uADF8\uD558\uAC70\uB098 \uD074\uB9AD\uD558\uC5EC \uC5C5\uB85C\uB4DC",
|
|
9982
10017
|
description,
|
|
9983
|
-
validations
|
|
10018
|
+
validations,
|
|
10019
|
+
label,
|
|
10020
|
+
required
|
|
9984
10021
|
} = props;
|
|
10022
|
+
const fieldId = import_react23.default.useId();
|
|
9985
10023
|
const [isDragOver, setIsDragOver] = import_react23.default.useState(false);
|
|
9986
10024
|
const inputRef = import_react23.default.useRef(null);
|
|
9987
10025
|
const handleFiles = (fileList) => {
|
|
@@ -10026,6 +10064,7 @@ var FileUpload = (props) => {
|
|
|
10026
10064
|
"input",
|
|
10027
10065
|
{
|
|
10028
10066
|
ref: inputRef,
|
|
10067
|
+
id: fieldId,
|
|
10029
10068
|
type: "file",
|
|
10030
10069
|
accept,
|
|
10031
10070
|
multiple,
|
|
@@ -10034,12 +10073,12 @@ var FileUpload = (props) => {
|
|
|
10034
10073
|
}
|
|
10035
10074
|
),
|
|
10036
10075
|
/* @__PURE__ */ (0, import_jsx_runtime325.jsx)("div", { className: "upload-icon", children: /* @__PURE__ */ (0, import_jsx_runtime325.jsx)(UploadIcon_default, {}) }),
|
|
10037
|
-
/* @__PURE__ */ (0, import_jsx_runtime325.jsx)("p", { className: "upload-label", children:
|
|
10076
|
+
/* @__PURE__ */ (0, import_jsx_runtime325.jsx)("p", { className: "upload-label", children: placeholder }),
|
|
10038
10077
|
description && /* @__PURE__ */ (0, import_jsx_runtime325.jsx)("p", { className: "upload-description", children: description })
|
|
10039
10078
|
]
|
|
10040
10079
|
}
|
|
10041
10080
|
);
|
|
10042
|
-
return /* @__PURE__ */ (0, import_jsx_runtime325.jsx)(Field, { validations, children: control });
|
|
10081
|
+
return /* @__PURE__ */ (0, import_jsx_runtime325.jsx)(Field, { label, required, htmlFor: fieldId, validations, children: control });
|
|
10043
10082
|
};
|
|
10044
10083
|
FileUpload.displayName = "FileUpload";
|
|
10045
10084
|
var FileUpload_default = FileUpload;
|
|
@@ -10182,7 +10221,8 @@ var HtmlTypeWriter_default = HtmlTypeWriter;
|
|
|
10182
10221
|
var import_react26 = __toESM(require("react"), 1);
|
|
10183
10222
|
var import_jsx_runtime327 = require("react/jsx-runtime");
|
|
10184
10223
|
var ImageSelector = (props) => {
|
|
10185
|
-
const { value,
|
|
10224
|
+
const { value, placeholder, onChange, validations, label, required } = props;
|
|
10225
|
+
const fieldId = import_react26.default.useId();
|
|
10186
10226
|
const [previewUrl, setPreviewUrl] = import_react26.default.useState();
|
|
10187
10227
|
import_react26.default.useEffect(() => {
|
|
10188
10228
|
if (!value) {
|
|
@@ -10212,7 +10252,7 @@ var ImageSelector = (props) => {
|
|
|
10212
10252
|
{
|
|
10213
10253
|
type: "file",
|
|
10214
10254
|
accept: "image/*",
|
|
10215
|
-
id:
|
|
10255
|
+
id: fieldId,
|
|
10216
10256
|
onChange: handleFileChange,
|
|
10217
10257
|
ref: inputRef,
|
|
10218
10258
|
"aria-invalid": hasError(validations) || void 0
|
|
@@ -10224,10 +10264,10 @@ var ImageSelector = (props) => {
|
|
|
10224
10264
|
] }),
|
|
10225
10265
|
/* @__PURE__ */ (0, import_jsx_runtime327.jsx)("div", { className: "content", children: previewUrl ? /* @__PURE__ */ (0, import_jsx_runtime327.jsx)("img", { src: previewUrl, alt: "preview" }) : /* @__PURE__ */ (0, import_jsx_runtime327.jsxs)("div", { className: "skeleton", onClick: handleOpenFileDialog, children: [
|
|
10226
10266
|
/* @__PURE__ */ (0, import_jsx_runtime327.jsx)("div", { className: "icon-wrapper", children: /* @__PURE__ */ (0, import_jsx_runtime327.jsx)(ImageIcon_default, {}) }),
|
|
10227
|
-
/* @__PURE__ */ (0, import_jsx_runtime327.jsx)("div", { className: "label", children:
|
|
10267
|
+
/* @__PURE__ */ (0, import_jsx_runtime327.jsx)("div", { className: "label", children: placeholder || "\uC774\uBBF8\uC9C0 \uCD94\uAC00\uD558\uAE30" })
|
|
10228
10268
|
] }) })
|
|
10229
10269
|
] });
|
|
10230
|
-
return /* @__PURE__ */ (0, import_jsx_runtime327.jsx)(Field, { validations, children: control });
|
|
10270
|
+
return /* @__PURE__ */ (0, import_jsx_runtime327.jsx)(Field, { label, required, htmlFor: fieldId, validations, children: control });
|
|
10231
10271
|
};
|
|
10232
10272
|
ImageSelector.displayName = "ImageSelector";
|
|
10233
10273
|
var ImageSelector_default = ImageSelector;
|
|
@@ -11779,9 +11819,33 @@ var ToastProvider = ({
|
|
|
11779
11819
|
};
|
|
11780
11820
|
ToastProvider.displayName = "ToastProvider";
|
|
11781
11821
|
|
|
11822
|
+
// src/components/ToggleChip/ToggleChip.tsx
|
|
11823
|
+
var import_jsx_runtime353 = require("react/jsx-runtime");
|
|
11824
|
+
var ToggleChip = (props) => {
|
|
11825
|
+
const { children, selected = false, onClick, disabled = false, size = "md" } = props;
|
|
11826
|
+
return /* @__PURE__ */ (0, import_jsx_runtime353.jsx)(
|
|
11827
|
+
"button",
|
|
11828
|
+
{
|
|
11829
|
+
type: "button",
|
|
11830
|
+
className: clsx_default(
|
|
11831
|
+
"lib-xplat-chip",
|
|
11832
|
+
"lib-xplat-toggle-chip",
|
|
11833
|
+
size,
|
|
11834
|
+
selected ? "selected" : "unselected"
|
|
11835
|
+
),
|
|
11836
|
+
"aria-pressed": selected,
|
|
11837
|
+
disabled,
|
|
11838
|
+
onClick,
|
|
11839
|
+
children
|
|
11840
|
+
}
|
|
11841
|
+
);
|
|
11842
|
+
};
|
|
11843
|
+
ToggleChip.displayName = "ToggleChip";
|
|
11844
|
+
var ToggleChip_default = ToggleChip;
|
|
11845
|
+
|
|
11782
11846
|
// src/components/Tooltip/Tooltip.tsx
|
|
11783
11847
|
var import_react42 = __toESM(require("react"), 1);
|
|
11784
|
-
var
|
|
11848
|
+
var import_jsx_runtime354 = require("react/jsx-runtime");
|
|
11785
11849
|
var OFFSET = 12;
|
|
11786
11850
|
var GAP = 8;
|
|
11787
11851
|
var SHOW_DELAY = 300;
|
|
@@ -11886,8 +11950,8 @@ var Tooltip = (props) => {
|
|
|
11886
11950
|
window.clearTimeout(delayTimer.current);
|
|
11887
11951
|
cancelAnimationFrame(rafRef.current);
|
|
11888
11952
|
}, []);
|
|
11889
|
-
if (!title && !description) return /* @__PURE__ */ (0,
|
|
11890
|
-
return /* @__PURE__ */ (0,
|
|
11953
|
+
if (!title && !description) return /* @__PURE__ */ (0, import_jsx_runtime354.jsx)(import_jsx_runtime354.Fragment, { children });
|
|
11954
|
+
return /* @__PURE__ */ (0, import_jsx_runtime354.jsxs)(
|
|
11891
11955
|
"div",
|
|
11892
11956
|
{
|
|
11893
11957
|
ref: triggerRef,
|
|
@@ -11900,7 +11964,7 @@ var Tooltip = (props) => {
|
|
|
11900
11964
|
onBlur: close,
|
|
11901
11965
|
children: [
|
|
11902
11966
|
children,
|
|
11903
|
-
visible && /* @__PURE__ */ (0,
|
|
11967
|
+
visible && /* @__PURE__ */ (0, import_jsx_runtime354.jsx)(Portal_default, { children: /* @__PURE__ */ (0, import_jsx_runtime354.jsxs)(
|
|
11904
11968
|
"div",
|
|
11905
11969
|
{
|
|
11906
11970
|
ref: tooltipRef,
|
|
@@ -11908,8 +11972,8 @@ var Tooltip = (props) => {
|
|
|
11908
11972
|
className: clsx_default("lib-xplat-tooltip", shape),
|
|
11909
11973
|
style: { position: "fixed", left: pos.left, top: pos.top },
|
|
11910
11974
|
children: [
|
|
11911
|
-
title && /* @__PURE__ */ (0,
|
|
11912
|
-
description && /* @__PURE__ */ (0,
|
|
11975
|
+
title && /* @__PURE__ */ (0, import_jsx_runtime354.jsx)("div", { className: "tooltip-title", children: title }),
|
|
11976
|
+
description && /* @__PURE__ */ (0, import_jsx_runtime354.jsx)("div", { className: "tooltip-desc", children: description })
|
|
11913
11977
|
]
|
|
11914
11978
|
}
|
|
11915
11979
|
) })
|
|
@@ -11922,10 +11986,10 @@ var Tooltip_default = Tooltip;
|
|
|
11922
11986
|
|
|
11923
11987
|
// src/components/Video/Video.tsx
|
|
11924
11988
|
var import_react43 = __toESM(require("react"), 1);
|
|
11925
|
-
var
|
|
11926
|
-
var PipIcon = () => /* @__PURE__ */ (0,
|
|
11927
|
-
/* @__PURE__ */ (0,
|
|
11928
|
-
/* @__PURE__ */ (0,
|
|
11989
|
+
var import_jsx_runtime355 = require("react/jsx-runtime");
|
|
11990
|
+
var PipIcon = () => /* @__PURE__ */ (0, import_jsx_runtime355.jsxs)("svg", { viewBox: "0 0 24 24", width: "1em", height: "1em", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", "aria-hidden": "true", children: [
|
|
11991
|
+
/* @__PURE__ */ (0, import_jsx_runtime355.jsx)("rect", { x: "3", y: "5", width: "18", height: "14", rx: "2" }),
|
|
11992
|
+
/* @__PURE__ */ (0, import_jsx_runtime355.jsx)("rect", { x: "12", y: "11", width: "7", height: "6", rx: "1", fill: "currentColor" })
|
|
11929
11993
|
] });
|
|
11930
11994
|
var formatTime = (sec) => {
|
|
11931
11995
|
if (!Number.isFinite(sec) || sec < 0) return "0:00";
|
|
@@ -12100,13 +12164,13 @@ var Video = import_react43.default.forwardRef((props, ref) => {
|
|
|
12100
12164
|
const volumePct = (isMuted ? 0 : volume) * 100;
|
|
12101
12165
|
const VolumeGlyph = isMuted || volume === 0 ? VolumeXIcon_default : volume < 0.5 ? VolumeIcon_default : Volume2Icon_default;
|
|
12102
12166
|
const pipSupported = typeof document !== "undefined" && "pictureInPictureEnabled" in document && document.pictureInPictureEnabled;
|
|
12103
|
-
return /* @__PURE__ */ (0,
|
|
12167
|
+
return /* @__PURE__ */ (0, import_jsx_runtime355.jsxs)(
|
|
12104
12168
|
"div",
|
|
12105
12169
|
{
|
|
12106
12170
|
ref: containerRef,
|
|
12107
12171
|
className: clsx_default("lib-xplat-video", showControls && "has-controls"),
|
|
12108
12172
|
children: [
|
|
12109
|
-
/* @__PURE__ */ (0,
|
|
12173
|
+
/* @__PURE__ */ (0, import_jsx_runtime355.jsx)(
|
|
12110
12174
|
"video",
|
|
12111
12175
|
{
|
|
12112
12176
|
ref: setRefs,
|
|
@@ -12127,7 +12191,7 @@ var Video = import_react43.default.forwardRef((props, ref) => {
|
|
|
12127
12191
|
children
|
|
12128
12192
|
}
|
|
12129
12193
|
),
|
|
12130
|
-
showCenterPlay && /* @__PURE__ */ (0,
|
|
12194
|
+
showCenterPlay && /* @__PURE__ */ (0, import_jsx_runtime355.jsx)(
|
|
12131
12195
|
"button",
|
|
12132
12196
|
{
|
|
12133
12197
|
type: "button",
|
|
@@ -12139,11 +12203,11 @@ var Video = import_react43.default.forwardRef((props, ref) => {
|
|
|
12139
12203
|
onClick: togglePlay,
|
|
12140
12204
|
"aria-label": isPlaying ? "\uC77C\uC2DC\uC815\uC9C0" : "\uC7AC\uC0DD",
|
|
12141
12205
|
tabIndex: -1,
|
|
12142
|
-
children: /* @__PURE__ */ (0,
|
|
12206
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime355.jsx)("span", { className: "center-play-icon", children: /* @__PURE__ */ (0, import_jsx_runtime355.jsx)(PlayCircleIcon_default, {}) })
|
|
12143
12207
|
}
|
|
12144
12208
|
),
|
|
12145
|
-
showControls && /* @__PURE__ */ (0,
|
|
12146
|
-
/* @__PURE__ */ (0,
|
|
12209
|
+
showControls && /* @__PURE__ */ (0, import_jsx_runtime355.jsxs)("div", { className: "controls", onClick: (e) => e.stopPropagation(), children: [
|
|
12210
|
+
/* @__PURE__ */ (0, import_jsx_runtime355.jsx)(
|
|
12147
12211
|
"input",
|
|
12148
12212
|
{
|
|
12149
12213
|
type: "range",
|
|
@@ -12160,29 +12224,29 @@ var Video = import_react43.default.forwardRef((props, ref) => {
|
|
|
12160
12224
|
}
|
|
12161
12225
|
}
|
|
12162
12226
|
),
|
|
12163
|
-
/* @__PURE__ */ (0,
|
|
12164
|
-
/* @__PURE__ */ (0,
|
|
12227
|
+
/* @__PURE__ */ (0, import_jsx_runtime355.jsxs)("div", { className: "controls-row", children: [
|
|
12228
|
+
/* @__PURE__ */ (0, import_jsx_runtime355.jsx)(
|
|
12165
12229
|
"button",
|
|
12166
12230
|
{
|
|
12167
12231
|
type: "button",
|
|
12168
12232
|
className: "control-btn",
|
|
12169
12233
|
onClick: togglePlay,
|
|
12170
12234
|
"aria-label": isPlaying ? "\uC77C\uC2DC\uC815\uC9C0" : "\uC7AC\uC0DD",
|
|
12171
|
-
children: isPlaying ? /* @__PURE__ */ (0,
|
|
12235
|
+
children: isPlaying ? /* @__PURE__ */ (0, import_jsx_runtime355.jsx)(PauseIcon_default, {}) : /* @__PURE__ */ (0, import_jsx_runtime355.jsx)(PlayIcon_default, {})
|
|
12172
12236
|
}
|
|
12173
12237
|
),
|
|
12174
|
-
/* @__PURE__ */ (0,
|
|
12175
|
-
/* @__PURE__ */ (0,
|
|
12238
|
+
/* @__PURE__ */ (0, import_jsx_runtime355.jsxs)("div", { className: "volume-group", children: [
|
|
12239
|
+
/* @__PURE__ */ (0, import_jsx_runtime355.jsx)(
|
|
12176
12240
|
"button",
|
|
12177
12241
|
{
|
|
12178
12242
|
type: "button",
|
|
12179
12243
|
className: "control-btn",
|
|
12180
12244
|
onClick: toggleMute,
|
|
12181
12245
|
"aria-label": isMuted ? "\uC74C\uC18C\uAC70 \uD574\uC81C" : "\uC74C\uC18C\uAC70",
|
|
12182
|
-
children: /* @__PURE__ */ (0,
|
|
12246
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime355.jsx)(VolumeGlyph, {})
|
|
12183
12247
|
}
|
|
12184
12248
|
),
|
|
12185
|
-
/* @__PURE__ */ (0,
|
|
12249
|
+
/* @__PURE__ */ (0, import_jsx_runtime355.jsx)(
|
|
12186
12250
|
"input",
|
|
12187
12251
|
{
|
|
12188
12252
|
type: "range",
|
|
@@ -12197,14 +12261,14 @@ var Video = import_react43.default.forwardRef((props, ref) => {
|
|
|
12197
12261
|
}
|
|
12198
12262
|
)
|
|
12199
12263
|
] }),
|
|
12200
|
-
/* @__PURE__ */ (0,
|
|
12264
|
+
/* @__PURE__ */ (0, import_jsx_runtime355.jsxs)("span", { className: "time", children: [
|
|
12201
12265
|
formatTime(currentTime),
|
|
12202
12266
|
" / ",
|
|
12203
12267
|
formatTime(duration)
|
|
12204
12268
|
] }),
|
|
12205
|
-
/* @__PURE__ */ (0,
|
|
12206
|
-
playbackRates && playbackRates.length > 0 && /* @__PURE__ */ (0,
|
|
12207
|
-
/* @__PURE__ */ (0,
|
|
12269
|
+
/* @__PURE__ */ (0, import_jsx_runtime355.jsx)("div", { className: "controls-spacer" }),
|
|
12270
|
+
playbackRates && playbackRates.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime355.jsxs)("div", { className: clsx_default("rate-group", rateMenuOpen && "is-open"), children: [
|
|
12271
|
+
/* @__PURE__ */ (0, import_jsx_runtime355.jsxs)(
|
|
12208
12272
|
"button",
|
|
12209
12273
|
{
|
|
12210
12274
|
type: "button",
|
|
@@ -12218,7 +12282,7 @@ var Video = import_react43.default.forwardRef((props, ref) => {
|
|
|
12218
12282
|
]
|
|
12219
12283
|
}
|
|
12220
12284
|
),
|
|
12221
|
-
rateMenuOpen && /* @__PURE__ */ (0,
|
|
12285
|
+
rateMenuOpen && /* @__PURE__ */ (0, import_jsx_runtime355.jsx)("ul", { className: "rate-menu", role: "menu", children: playbackRates.map((r2) => /* @__PURE__ */ (0, import_jsx_runtime355.jsx)("li", { children: /* @__PURE__ */ (0, import_jsx_runtime355.jsxs)(
|
|
12222
12286
|
"button",
|
|
12223
12287
|
{
|
|
12224
12288
|
type: "button",
|
|
@@ -12232,7 +12296,7 @@ var Video = import_react43.default.forwardRef((props, ref) => {
|
|
|
12232
12296
|
}
|
|
12233
12297
|
) }, r2)) })
|
|
12234
12298
|
] }),
|
|
12235
|
-
showCaptions && /* @__PURE__ */ (0,
|
|
12299
|
+
showCaptions && /* @__PURE__ */ (0, import_jsx_runtime355.jsx)(
|
|
12236
12300
|
"button",
|
|
12237
12301
|
{
|
|
12238
12302
|
type: "button",
|
|
@@ -12240,37 +12304,37 @@ var Video = import_react43.default.forwardRef((props, ref) => {
|
|
|
12240
12304
|
onClick: toggleCaptions,
|
|
12241
12305
|
"aria-label": captionsOn ? "\uC790\uB9C9 \uB044\uAE30" : "\uC790\uB9C9 \uCF1C\uAE30",
|
|
12242
12306
|
"aria-pressed": captionsOn,
|
|
12243
|
-
children: /* @__PURE__ */ (0,
|
|
12307
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime355.jsx)(TypeIcon_default, {})
|
|
12244
12308
|
}
|
|
12245
12309
|
),
|
|
12246
|
-
showPip && pipSupported && /* @__PURE__ */ (0,
|
|
12310
|
+
showPip && pipSupported && /* @__PURE__ */ (0, import_jsx_runtime355.jsx)(
|
|
12247
12311
|
"button",
|
|
12248
12312
|
{
|
|
12249
12313
|
type: "button",
|
|
12250
12314
|
className: clsx_default("control-btn", isPip && "is-active"),
|
|
12251
12315
|
onClick: togglePip,
|
|
12252
12316
|
"aria-label": isPip ? "PIP \uC885\uB8CC" : "PIP",
|
|
12253
|
-
children: /* @__PURE__ */ (0,
|
|
12317
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime355.jsx)(PipIcon, {})
|
|
12254
12318
|
}
|
|
12255
12319
|
),
|
|
12256
|
-
showDownload && /* @__PURE__ */ (0,
|
|
12320
|
+
showDownload && /* @__PURE__ */ (0, import_jsx_runtime355.jsx)(
|
|
12257
12321
|
"a",
|
|
12258
12322
|
{
|
|
12259
12323
|
className: "control-btn",
|
|
12260
12324
|
href: src,
|
|
12261
12325
|
download: downloadFileName ?? true,
|
|
12262
12326
|
"aria-label": "\uB2E4\uC6B4\uB85C\uB4DC",
|
|
12263
|
-
children: /* @__PURE__ */ (0,
|
|
12327
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime355.jsx)(DownloadIcon_default, {})
|
|
12264
12328
|
}
|
|
12265
12329
|
),
|
|
12266
|
-
/* @__PURE__ */ (0,
|
|
12330
|
+
/* @__PURE__ */ (0, import_jsx_runtime355.jsx)(
|
|
12267
12331
|
"button",
|
|
12268
12332
|
{
|
|
12269
12333
|
type: "button",
|
|
12270
12334
|
className: "control-btn",
|
|
12271
12335
|
onClick: toggleFullscreen,
|
|
12272
12336
|
"aria-label": isFullscreen ? "\uC804\uCCB4\uD654\uBA74 \uC885\uB8CC" : "\uC804\uCCB4\uD654\uBA74",
|
|
12273
|
-
children: isFullscreen ? /* @__PURE__ */ (0,
|
|
12337
|
+
children: isFullscreen ? /* @__PURE__ */ (0, import_jsx_runtime355.jsx)(MinimizeIcon_default, {}) : /* @__PURE__ */ (0, import_jsx_runtime355.jsx)(MaximizeIcon_default, {})
|
|
12274
12338
|
}
|
|
12275
12339
|
)
|
|
12276
12340
|
] })
|
|
@@ -12283,7 +12347,7 @@ Video.displayName = "Video";
|
|
|
12283
12347
|
var Video_default = Video;
|
|
12284
12348
|
|
|
12285
12349
|
// src/layout/Grid/FullGrid/FullGrid.tsx
|
|
12286
|
-
var
|
|
12350
|
+
var import_jsx_runtime356 = require("react/jsx-runtime");
|
|
12287
12351
|
var GAP_MAP = {
|
|
12288
12352
|
none: "var(--spacing-space-none)",
|
|
12289
12353
|
xs: "var(--spacing-space-1)",
|
|
@@ -12296,13 +12360,13 @@ var GAP_MAP = {
|
|
|
12296
12360
|
var FullGrid = (props) => {
|
|
12297
12361
|
const { children, gap } = props;
|
|
12298
12362
|
const style = gap != null ? { gap: GAP_MAP[gap] } : void 0;
|
|
12299
|
-
return /* @__PURE__ */ (0,
|
|
12363
|
+
return /* @__PURE__ */ (0, import_jsx_runtime356.jsx)("div", { className: "lib-xplat-full-grid", style, children });
|
|
12300
12364
|
};
|
|
12301
12365
|
FullGrid.displayName = "FullGrid";
|
|
12302
12366
|
var FullGrid_default = FullGrid;
|
|
12303
12367
|
|
|
12304
12368
|
// src/layout/Grid/FullScreen/FullScreen.tsx
|
|
12305
|
-
var
|
|
12369
|
+
var import_jsx_runtime357 = require("react/jsx-runtime");
|
|
12306
12370
|
var GAP_MAP2 = {
|
|
12307
12371
|
none: "var(--spacing-space-none)",
|
|
12308
12372
|
xs: "var(--spacing-space-1)",
|
|
@@ -12315,13 +12379,13 @@ var GAP_MAP2 = {
|
|
|
12315
12379
|
var FullScreen = (props) => {
|
|
12316
12380
|
const { children, gap } = props;
|
|
12317
12381
|
const style = gap != null ? { gap: GAP_MAP2[gap] } : void 0;
|
|
12318
|
-
return /* @__PURE__ */ (0,
|
|
12382
|
+
return /* @__PURE__ */ (0, import_jsx_runtime357.jsx)("div", { className: "lib-xplat-full-screen", style, children });
|
|
12319
12383
|
};
|
|
12320
12384
|
FullScreen.displayName = "FullScreen";
|
|
12321
12385
|
var FullScreen_default = FullScreen;
|
|
12322
12386
|
|
|
12323
12387
|
// src/layout/Grid/Item/Item.tsx
|
|
12324
|
-
var
|
|
12388
|
+
var import_jsx_runtime358 = require("react/jsx-runtime");
|
|
12325
12389
|
var calculateSpans = (column) => {
|
|
12326
12390
|
const spans = {};
|
|
12327
12391
|
let inherited = column.default;
|
|
@@ -12338,35 +12402,35 @@ var GridItem = ({ column, children, className }) => {
|
|
|
12338
12402
|
Object.entries(spans).forEach(([key, value]) => {
|
|
12339
12403
|
style[`--column-${key}`] = value;
|
|
12340
12404
|
});
|
|
12341
|
-
return /* @__PURE__ */ (0,
|
|
12405
|
+
return /* @__PURE__ */ (0, import_jsx_runtime358.jsx)("div", { className: clsx_default("lib-xplat-grid-item", className), style, children });
|
|
12342
12406
|
};
|
|
12343
12407
|
GridItem.displayName = "GridItem";
|
|
12344
12408
|
var Item_default = GridItem;
|
|
12345
12409
|
|
|
12346
12410
|
// src/layout/Header/Header.tsx
|
|
12347
|
-
var
|
|
12411
|
+
var import_jsx_runtime359 = require("react/jsx-runtime");
|
|
12348
12412
|
var Header = ({
|
|
12349
12413
|
logo,
|
|
12350
12414
|
centerContent,
|
|
12351
12415
|
rightContent
|
|
12352
12416
|
}) => {
|
|
12353
|
-
return /* @__PURE__ */ (0,
|
|
12354
|
-
/* @__PURE__ */ (0,
|
|
12355
|
-
/* @__PURE__ */ (0,
|
|
12356
|
-
/* @__PURE__ */ (0,
|
|
12417
|
+
return /* @__PURE__ */ (0, import_jsx_runtime359.jsxs)("div", { className: "lib-xplat-layout-header", children: [
|
|
12418
|
+
/* @__PURE__ */ (0, import_jsx_runtime359.jsx)("div", { children: logo }),
|
|
12419
|
+
/* @__PURE__ */ (0, import_jsx_runtime359.jsx)("div", { children: centerContent }),
|
|
12420
|
+
/* @__PURE__ */ (0, import_jsx_runtime359.jsx)("div", { children: rightContent })
|
|
12357
12421
|
] });
|
|
12358
12422
|
};
|
|
12359
12423
|
Header.displayName = "Header";
|
|
12360
12424
|
var Header_default = Header;
|
|
12361
12425
|
|
|
12362
12426
|
// src/layout/Layout/Layout.tsx
|
|
12363
|
-
var
|
|
12427
|
+
var import_jsx_runtime360 = require("react/jsx-runtime");
|
|
12364
12428
|
var Layout = (props) => {
|
|
12365
12429
|
const { header, sideBar, children } = props;
|
|
12366
|
-
return /* @__PURE__ */ (0,
|
|
12367
|
-
sideBar && /* @__PURE__ */ (0,
|
|
12368
|
-
/* @__PURE__ */ (0,
|
|
12369
|
-
header && /* @__PURE__ */ (0,
|
|
12430
|
+
return /* @__PURE__ */ (0, import_jsx_runtime360.jsx)("div", { className: "lib-xplat-layout", children: /* @__PURE__ */ (0, import_jsx_runtime360.jsxs)("div", { className: "lib-xplat-layout-content-wrapper", children: [
|
|
12431
|
+
sideBar && /* @__PURE__ */ (0, import_jsx_runtime360.jsx)(import_jsx_runtime360.Fragment, { children: sideBar }),
|
|
12432
|
+
/* @__PURE__ */ (0, import_jsx_runtime360.jsxs)("div", { className: "lib-xplat-layout-content", children: [
|
|
12433
|
+
header && /* @__PURE__ */ (0, import_jsx_runtime360.jsx)("div", { className: "lib-xplat-layout-conent-header", children: header }),
|
|
12370
12434
|
children
|
|
12371
12435
|
] })
|
|
12372
12436
|
] }) });
|
|
@@ -12388,18 +12452,18 @@ var useSideBarContext = () => {
|
|
|
12388
12452
|
var SideBarContext_default = SideBarContext;
|
|
12389
12453
|
|
|
12390
12454
|
// src/layout/SideBar/SideBar.tsx
|
|
12391
|
-
var
|
|
12455
|
+
var import_jsx_runtime361 = require("react/jsx-runtime");
|
|
12392
12456
|
var SideBar = (props) => {
|
|
12393
12457
|
const { children, className } = props;
|
|
12394
12458
|
const [isOpen, setIsOpen] = import_react45.default.useState(true);
|
|
12395
12459
|
const handleSwitchSideBar = () => {
|
|
12396
12460
|
setIsOpen((prev) => !prev);
|
|
12397
12461
|
};
|
|
12398
|
-
return /* @__PURE__ */ (0,
|
|
12462
|
+
return /* @__PURE__ */ (0, import_jsx_runtime361.jsx)(
|
|
12399
12463
|
SideBarContext_default.Provider,
|
|
12400
12464
|
{
|
|
12401
12465
|
value: { isSidebarOpen: isOpen, handleSwitchSideBar },
|
|
12402
|
-
children: /* @__PURE__ */ (0,
|
|
12466
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime361.jsx)(
|
|
12403
12467
|
"div",
|
|
12404
12468
|
{
|
|
12405
12469
|
className: clsx_default(
|
|
@@ -12734,6 +12798,7 @@ var SideBar_default = SideBar;
|
|
|
12734
12798
|
ThumbsUpIcon,
|
|
12735
12799
|
TimePicker,
|
|
12736
12800
|
ToastProvider,
|
|
12801
|
+
ToggleChip,
|
|
12737
12802
|
ToggleLeftIcon,
|
|
12738
12803
|
ToggleRightIcon,
|
|
12739
12804
|
ToolIcon,
|