sa2kit 1.6.78 → 1.6.79
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/ai/llm/electron/index.js +2 -2
- package/dist/ai/llm/electron/index.js.map +1 -1
- package/dist/ai/llm/electron/index.mjs +2 -2
- package/dist/ai/llm/electron/index.mjs.map +1 -1
- package/dist/ai/llm/ui/electron/index.js +2 -2
- package/dist/ai/llm/ui/electron/index.js.map +1 -1
- package/dist/ai/llm/ui/electron/index.mjs +2 -2
- package/dist/ai/llm/ui/electron/index.mjs.map +1 -1
- package/dist/ai/llm/ui/web/index.js +2 -2
- package/dist/ai/llm/ui/web/index.js.map +1 -1
- package/dist/ai/llm/ui/web/index.mjs +2 -2
- package/dist/ai/llm/ui/web/index.mjs.map +1 -1
- package/dist/ai/llm/web/index.js +2 -2
- package/dist/ai/llm/web/index.js.map +1 -1
- package/dist/ai/llm/web/index.mjs +2 -2
- package/dist/ai/llm/web/index.mjs.map +1 -1
- package/dist/ar/index.d.mts +2 -2
- package/dist/ar/index.d.ts +2 -2
- package/dist/ar/index.js +43 -4
- package/dist/ar/index.js.map +1 -1
- package/dist/ar/index.mjs +43 -4
- package/dist/ar/index.mjs.map +1 -1
- package/dist/{booking-BX_0AXU6.d.mts → booking-473Db8Bo.d.mts} +6 -0
- package/dist/{booking-BX_0AXU6.d.ts → booking-473Db8Bo.d.ts} +6 -0
- package/dist/{bookingAdminService-ChzuoCUx.d.ts → bookingAdminService-DqQ7hEGw.d.ts} +1 -1
- package/dist/{bookingAdminService-B_D_Jq1W.d.mts → bookingAdminService-SBX4JA_U.d.mts} +1 -1
- package/dist/calendar/index.js +8 -4
- package/dist/calendar/index.js.map +1 -1
- package/dist/calendar/index.mjs +8 -4
- package/dist/calendar/index.mjs.map +1 -1
- package/dist/calendar/web/index.js +8 -4
- package/dist/calendar/web/index.js.map +1 -1
- package/dist/calendar/web/index.mjs +8 -4
- package/dist/calendar/web/index.mjs.map +1 -1
- package/dist/{client-B6JtOkEq.d.ts → client-Bkn6mRI7.d.ts} +1 -1
- package/dist/{client-DkSveTk-.d.mts → client-exYn2Qla.d.mts} +1 -1
- package/dist/components/index.d.mts +2 -0
- package/dist/components/index.d.ts +2 -0
- package/dist/components/index.js +8 -4
- package/dist/components/index.js.map +1 -1
- package/dist/components/index.mjs +8 -4
- package/dist/components/index.mjs.map +1 -1
- package/dist/{index-B9vIHUEv.d.ts → index-BJpxvH7X.d.ts} +1 -1
- package/dist/{index-C3_UPPdv.d.ts → index-CdTIsNsy.d.ts} +2 -2
- package/dist/{index-DDuTPOHu.d.mts → index-Cum2EknK.d.mts} +1 -1
- package/dist/{index-D6ZIkvt-.d.mts → index-DyxLpkmm.d.mts} +2 -2
- package/dist/{index-BjYZSfZa.d.ts → index-XTV6IU-M.d.ts} +2 -2
- package/dist/{index-3qQN9Lh_.d.mts → index-z15F7afa.d.mts} +2 -2
- package/dist/index.js +8 -4
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +8 -4
- package/dist/index.mjs.map +1 -1
- package/dist/mmd/index.d.mts +9 -3
- package/dist/mmd/index.d.ts +9 -3
- package/dist/mmd/index.js +95 -13
- package/dist/mmd/index.js.map +1 -1
- package/dist/mmd/index.mjs +95 -13
- package/dist/mmd/index.mjs.map +1 -1
- package/dist/portfolio/index.js +2 -2
- package/dist/portfolio/index.js.map +1 -1
- package/dist/portfolio/index.mjs +2 -2
- package/dist/portfolio/index.mjs.map +1 -1
- package/dist/showmasterpiece/core.d.mts +3 -3
- package/dist/showmasterpiece/core.d.ts +3 -3
- package/dist/showmasterpiece/db.d.mts +25 -0
- package/dist/showmasterpiece/db.d.ts +25 -0
- package/dist/showmasterpiece/db.js +35 -0
- package/dist/showmasterpiece/db.js.map +1 -1
- package/dist/showmasterpiece/db.mjs +35 -0
- package/dist/showmasterpiece/db.mjs.map +1 -1
- package/dist/showmasterpiece/index.js +279 -226
- package/dist/showmasterpiece/index.js.map +1 -1
- package/dist/showmasterpiece/index.mjs +279 -226
- package/dist/showmasterpiece/index.mjs.map +1 -1
- package/dist/showmasterpiece/logic/index.d.mts +2 -2
- package/dist/showmasterpiece/logic/index.d.ts +2 -2
- package/dist/showmasterpiece/server/index.js +35 -0
- package/dist/showmasterpiece/server/index.js.map +1 -1
- package/dist/showmasterpiece/server/index.mjs +35 -0
- package/dist/showmasterpiece/server/index.mjs.map +1 -1
- package/dist/showmasterpiece/service/api/index.d.mts +1 -1
- package/dist/showmasterpiece/service/api/index.d.ts +1 -1
- package/dist/showmasterpiece/service/client-business/index.d.mts +3 -3
- package/dist/showmasterpiece/service/client-business/index.d.ts +3 -3
- package/dist/showmasterpiece/service/index.d.mts +6 -6
- package/dist/showmasterpiece/service/index.d.ts +6 -6
- package/dist/showmasterpiece/service/miniapp/index.d.mts +2 -2
- package/dist/showmasterpiece/service/miniapp/index.d.ts +2 -2
- package/dist/showmasterpiece/service/web/index.d.mts +4 -4
- package/dist/showmasterpiece/service/web/index.d.ts +4 -4
- package/dist/showmasterpiece/ui/miniapp/index.d.mts +2 -2
- package/dist/showmasterpiece/ui/miniapp/index.d.ts +2 -2
- package/dist/showmasterpiece/ui/miniapp/index.js +38 -8
- package/dist/showmasterpiece/ui/miniapp/index.js.map +1 -1
- package/dist/showmasterpiece/ui/miniapp/index.mjs +38 -8
- package/dist/showmasterpiece/ui/miniapp/index.mjs.map +1 -1
- package/dist/showmasterpiece/ui/web/index.js +279 -226
- package/dist/showmasterpiece/ui/web/index.js.map +1 -1
- package/dist/showmasterpiece/ui/web/index.mjs +279 -226
- package/dist/showmasterpiece/ui/web/index.mjs.map +1 -1
- package/dist/showmasterpiece/web/index.js +279 -226
- package/dist/showmasterpiece/web/index.js.map +1 -1
- package/dist/showmasterpiece/web/index.mjs +279 -226
- package/dist/showmasterpiece/web/index.mjs.map +1 -1
- package/dist/{types-CvKvpyN8.d.mts → types-D4vSK3AJ.d.mts} +2 -1
- package/dist/{types-CvKvpyN8.d.ts → types-D4vSK3AJ.d.ts} +2 -1
- package/package.json +1 -1
|
@@ -2681,6 +2681,12 @@ function normalizeHomeTabConfig(input) {
|
|
|
2681
2681
|
}
|
|
2682
2682
|
return normalized;
|
|
2683
2683
|
}
|
|
2684
|
+
function normalizeMiniappFloatingButtonsConfig(input) {
|
|
2685
|
+
return {
|
|
2686
|
+
showCart: input?.showCart ?? true,
|
|
2687
|
+
showHistory: input?.showHistory ?? true
|
|
2688
|
+
};
|
|
2689
|
+
}
|
|
2684
2690
|
var categories = {
|
|
2685
2691
|
["collection" /* COLLECTION */]: {
|
|
2686
2692
|
value: "collection" /* COLLECTION */,
|
|
@@ -3267,7 +3273,7 @@ var DialogOverlay = React56__namespace.forwardRef(({ className, ...props }, ref)
|
|
|
3267
3273
|
});
|
|
3268
3274
|
DialogOverlay.displayName = "DialogOverlay";
|
|
3269
3275
|
var DialogContent = React56__namespace.forwardRef(
|
|
3270
|
-
({ className, children, onPointerDownOutside, onEscapeKeyDown, showCloseButton = true, ...props }, ref) => {
|
|
3276
|
+
({ className, children, onPointerDownOutside, onEscapeKeyDown, showCloseButton = true, overlayClassName, ...props }, ref) => {
|
|
3271
3277
|
const ctx = React56__namespace.useContext(DialogContext);
|
|
3272
3278
|
const open = !!ctx?.open;
|
|
3273
3279
|
useOnClickOutside(
|
|
@@ -3293,7 +3299,7 @@ var DialogContent = React56__namespace.forwardRef(
|
|
|
3293
3299
|
return () => document.removeEventListener("keydown", onKey);
|
|
3294
3300
|
}, [ctx, onEscapeKeyDown, open]);
|
|
3295
3301
|
if (!ctx || !open) return null;
|
|
3296
|
-
return /* @__PURE__ */ React56__namespace.createElement(DialogPortal, null, /* @__PURE__ */ React56__namespace.createElement(DialogOverlay,
|
|
3302
|
+
return /* @__PURE__ */ React56__namespace.createElement(DialogPortal, null, /* @__PURE__ */ React56__namespace.createElement(DialogOverlay, { className: overlayClassName }), /* @__PURE__ */ React56__namespace.createElement(
|
|
3297
3303
|
"div",
|
|
3298
3304
|
{
|
|
3299
3305
|
ref: mergeRefs(ctx.contentRef, ref),
|
|
@@ -4252,8 +4258,10 @@ var Modal = ({
|
|
|
4252
4258
|
className,
|
|
4253
4259
|
maskClosable = true,
|
|
4254
4260
|
children,
|
|
4255
|
-
zIndex = 50
|
|
4261
|
+
zIndex = 50,
|
|
4262
|
+
overlayClassName
|
|
4256
4263
|
}) => {
|
|
4264
|
+
const contentZIndex = Math.max(zIndex, 1e4);
|
|
4257
4265
|
return /* @__PURE__ */ React56__namespace.default.createElement(Dialog, { open: isOpen, onOpenChange: (open) => {
|
|
4258
4266
|
if (!open) {
|
|
4259
4267
|
if (maskClosable) {
|
|
@@ -4263,7 +4271,8 @@ var Modal = ({
|
|
|
4263
4271
|
} }, /* @__PURE__ */ React56__namespace.default.createElement(
|
|
4264
4272
|
DialogContent,
|
|
4265
4273
|
{
|
|
4266
|
-
className: cn("sm:max-w-[425px]", className)
|
|
4274
|
+
className: cn("sm:max-w-[425px]", className),
|
|
4275
|
+
overlayClassName,
|
|
4267
4276
|
onPointerDownOutside: (e) => {
|
|
4268
4277
|
if (!maskClosable) e.preventDefault();
|
|
4269
4278
|
},
|
|
@@ -4271,6 +4280,7 @@ var Modal = ({
|
|
|
4271
4280
|
if (!maskClosable) e.preventDefault();
|
|
4272
4281
|
},
|
|
4273
4282
|
style: {
|
|
4283
|
+
zIndex: contentZIndex,
|
|
4274
4284
|
...width ? { maxWidth: typeof width === "number" ? `${width}px` : width } : void 0,
|
|
4275
4285
|
...height ? { height: typeof height === "number" ? `${height}px` : height } : void 0
|
|
4276
4286
|
}
|
|
@@ -9064,230 +9074,241 @@ var PopupConfigManagement = () => {
|
|
|
9064
9074
|
},
|
|
9065
9075
|
title: editingConfig ? "\u7F16\u8F91\u5F39\u7A97\u914D\u7F6E" : "\u521B\u5EFA\u5F39\u7A97\u914D\u7F6E",
|
|
9066
9076
|
width: 600,
|
|
9067
|
-
maskClosable: false
|
|
9077
|
+
maskClosable: false,
|
|
9078
|
+
overlayClassName: "bg-black/45 backdrop-blur-[1px]"
|
|
9068
9079
|
},
|
|
9069
|
-
/* @__PURE__ */ React56__namespace.default.createElement(
|
|
9070
|
-
"
|
|
9071
|
-
{
|
|
9072
|
-
type: "text",
|
|
9073
|
-
value: formData.name,
|
|
9074
|
-
onChange: (e) => setFormData((prev) => ({ ...prev, name: e.target.value })),
|
|
9075
|
-
className: "w-full px-3 py-2 border border-slate-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500",
|
|
9076
|
-
placeholder: "\u8BF7\u8F93\u5165\u914D\u7F6E\u540D\u79F0"
|
|
9077
|
-
}
|
|
9078
|
-
)), /* @__PURE__ */ React56__namespace.default.createElement("div", null, /* @__PURE__ */ React56__namespace.default.createElement("label", { className: "block text-sm font-medium text-slate-700 mb-1" }, "\u914D\u7F6E\u63CF\u8FF0"), /* @__PURE__ */ React56__namespace.default.createElement(
|
|
9079
|
-
"textarea",
|
|
9080
|
-
{
|
|
9081
|
-
value: formData.description,
|
|
9082
|
-
onChange: (e) => setFormData((prev) => ({ ...prev, description: e.target.value })),
|
|
9083
|
-
rows: 2,
|
|
9084
|
-
className: "w-full px-3 py-2 border border-slate-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500",
|
|
9085
|
-
placeholder: "\u8BF7\u8F93\u5165\u914D\u7F6E\u63CF\u8FF0"
|
|
9086
|
-
}
|
|
9087
|
-
)), /* @__PURE__ */ React56__namespace.default.createElement("div", null, /* @__PURE__ */ React56__namespace.default.createElement("label", { className: "block text-sm font-medium text-slate-700 mb-1" }, "\u4E1A\u52A1\u573A\u666F *"), /* @__PURE__ */ React56__namespace.default.createElement(
|
|
9088
|
-
"select",
|
|
9089
|
-
{
|
|
9090
|
-
value: formData.businessScene,
|
|
9091
|
-
onChange: (e) => setFormData((prev) => ({ ...prev, businessScene: e.target.value })),
|
|
9092
|
-
className: "w-full px-3 py-2 border border-slate-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500"
|
|
9093
|
-
},
|
|
9094
|
-
/* @__PURE__ */ React56__namespace.default.createElement("option", { value: "cart_checkout" }, "\u8D2D\u7269\u8F66\u63D0\u4EA4"),
|
|
9095
|
-
/* @__PURE__ */ React56__namespace.default.createElement("option", { value: "homepage_visit" }, "\u4E3B\u9875\u8BBF\u95EE"),
|
|
9096
|
-
/* @__PURE__ */ React56__namespace.default.createElement("option", { value: "collection_view" }, "\u753B\u96C6\u6D4F\u89C8"),
|
|
9097
|
-
/* @__PURE__ */ React56__namespace.default.createElement("option", { value: "artwork_detail" }, "\u4F5C\u54C1\u8BE6\u60C5")
|
|
9098
|
-
), /* @__PURE__ */ React56__namespace.default.createElement("div", { className: "text-xs text-slate-500 mt-1" }, "\u9009\u62E9\u5F39\u7A97\u5728\u54EA\u4E2A\u573A\u666F\u4E0B\u89E6\u53D1\u663E\u793A")), /* @__PURE__ */ React56__namespace.default.createElement("div", { className: "flex items-center gap-2" }, /* @__PURE__ */ React56__namespace.default.createElement(
|
|
9099
|
-
"input",
|
|
9100
|
-
{
|
|
9101
|
-
type: "checkbox",
|
|
9102
|
-
id: "enabled",
|
|
9103
|
-
checked: formData.enabled,
|
|
9104
|
-
onChange: (e) => setFormData((prev) => ({ ...prev, enabled: e.target.checked })),
|
|
9105
|
-
className: "rounded border-slate-300 text-blue-600 focus:ring-blue-500"
|
|
9106
|
-
}
|
|
9107
|
-
), /* @__PURE__ */ React56__namespace.default.createElement("label", { htmlFor: "enabled", className: "text-sm font-medium text-slate-700" }, "\u542F\u7528\u6B64\u914D\u7F6E"))), /* @__PURE__ */ React56__namespace.default.createElement("div", { className: "space-y-4" }, /* @__PURE__ */ React56__namespace.default.createElement("h4", { className: "font-medium text-slate-800" }, "\u89E6\u53D1\u6761\u4EF6"), /* @__PURE__ */ React56__namespace.default.createElement("div", null, /* @__PURE__ */ React56__namespace.default.createElement("label", { className: "block text-sm font-medium text-slate-700 mb-1" }, "\u89E6\u53D1\u7C7B\u578B"), /* @__PURE__ */ React56__namespace.default.createElement(
|
|
9108
|
-
"select",
|
|
9109
|
-
{
|
|
9110
|
-
value: formData.triggerConfig.triggerType,
|
|
9111
|
-
onChange: (e) => setFormData((prev) => ({
|
|
9112
|
-
...prev,
|
|
9113
|
-
triggerConfig: {
|
|
9114
|
-
...prev.triggerConfig,
|
|
9115
|
-
triggerType: e.target.value
|
|
9116
|
-
}
|
|
9117
|
-
})),
|
|
9118
|
-
className: "w-full px-3 py-2 border border-slate-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500"
|
|
9119
|
-
},
|
|
9120
|
-
/* @__PURE__ */ React56__namespace.default.createElement("option", { value: "after_deadline" }, "\u8D85\u8FC7\u622A\u6B62\u65F6\u95F4\u540E\u663E\u793A"),
|
|
9121
|
-
/* @__PURE__ */ React56__namespace.default.createElement("option", { value: "before_deadline" }, "\u622A\u6B62\u65F6\u95F4\u524D\u663E\u793A"),
|
|
9122
|
-
/* @__PURE__ */ React56__namespace.default.createElement("option", { value: "always" }, "\u603B\u662F\u663E\u793A")
|
|
9123
|
-
)), formData.triggerConfig.triggerType !== "always" && /* @__PURE__ */ React56__namespace.default.createElement("div", null, /* @__PURE__ */ React56__namespace.default.createElement("label", { className: "block text-sm font-medium text-slate-700 mb-1" }, "\u622A\u6B62\u65F6\u95F4"), /* @__PURE__ */ React56__namespace.default.createElement(
|
|
9124
|
-
"input",
|
|
9125
|
-
{
|
|
9126
|
-
type: "datetime-local",
|
|
9127
|
-
value: formData.triggerConfig.deadlineTime,
|
|
9128
|
-
onChange: (e) => setFormData((prev) => ({
|
|
9129
|
-
...prev,
|
|
9130
|
-
triggerConfig: {
|
|
9131
|
-
...prev.triggerConfig,
|
|
9132
|
-
deadlineTime: e.target.value
|
|
9133
|
-
}
|
|
9134
|
-
})),
|
|
9135
|
-
className: "w-full px-3 py-2 border border-slate-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500"
|
|
9136
|
-
}
|
|
9137
|
-
)), formData.triggerConfig.triggerType === "before_deadline" && /* @__PURE__ */ React56__namespace.default.createElement("div", null, /* @__PURE__ */ React56__namespace.default.createElement("label", { className: "block text-sm font-medium text-slate-700 mb-1" }, "\u63D0\u524D\u5206\u949F\u6570"), /* @__PURE__ */ React56__namespace.default.createElement(
|
|
9138
|
-
"input",
|
|
9139
|
-
{
|
|
9140
|
-
type: "number",
|
|
9141
|
-
min: "0",
|
|
9142
|
-
value: formData.triggerConfig.advanceMinutes,
|
|
9143
|
-
onChange: (e) => setFormData((prev) => ({
|
|
9144
|
-
...prev,
|
|
9145
|
-
triggerConfig: {
|
|
9146
|
-
...prev.triggerConfig,
|
|
9147
|
-
advanceMinutes: parseInt(e.target.value) || 0
|
|
9148
|
-
}
|
|
9149
|
-
})),
|
|
9150
|
-
className: "w-full px-3 py-2 border border-slate-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500",
|
|
9151
|
-
placeholder: "\u5728\u622A\u6B62\u65F6\u95F4\u524D\u591A\u5C11\u5206\u949F\u663E\u793A"
|
|
9152
|
-
}
|
|
9153
|
-
))), /* @__PURE__ */ React56__namespace.default.createElement("div", { className: "space-y-4" }, /* @__PURE__ */ React56__namespace.default.createElement("h4", { className: "font-medium text-slate-800" }, "\u5F39\u7A97\u5185\u5BB9"), /* @__PURE__ */ React56__namespace.default.createElement("div", null, /* @__PURE__ */ React56__namespace.default.createElement("label", { className: "block text-sm font-medium text-slate-700 mb-1" }, "\u5F39\u7A97\u6807\u9898 *"), /* @__PURE__ */ React56__namespace.default.createElement(
|
|
9154
|
-
"input",
|
|
9155
|
-
{
|
|
9156
|
-
type: "text",
|
|
9157
|
-
value: formData.contentConfig.title,
|
|
9158
|
-
onChange: (e) => setFormData((prev) => ({
|
|
9159
|
-
...prev,
|
|
9160
|
-
contentConfig: {
|
|
9161
|
-
...prev.contentConfig,
|
|
9162
|
-
title: e.target.value
|
|
9163
|
-
}
|
|
9164
|
-
})),
|
|
9165
|
-
className: "w-full px-3 py-2 border border-slate-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500",
|
|
9166
|
-
placeholder: "\u8BF7\u8F93\u5165\u5F39\u7A97\u6807\u9898"
|
|
9167
|
-
}
|
|
9168
|
-
)), /* @__PURE__ */ React56__namespace.default.createElement("div", null, /* @__PURE__ */ React56__namespace.default.createElement("label", { className: "block text-sm font-medium text-slate-700 mb-1" }, "\u5F39\u7A97\u5185\u5BB9 *"), /* @__PURE__ */ React56__namespace.default.createElement(
|
|
9169
|
-
"textarea",
|
|
9170
|
-
{
|
|
9171
|
-
value: formData.contentConfig.message,
|
|
9172
|
-
onChange: (e) => setFormData((prev) => ({
|
|
9173
|
-
...prev,
|
|
9174
|
-
contentConfig: {
|
|
9175
|
-
...prev.contentConfig,
|
|
9176
|
-
message: e.target.value
|
|
9177
|
-
}
|
|
9178
|
-
})),
|
|
9179
|
-
rows: 4,
|
|
9180
|
-
className: "w-full px-3 py-2 border border-slate-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500",
|
|
9181
|
-
placeholder: "\u8BF7\u8F93\u5165\u5F39\u7A97\u5185\u5BB9"
|
|
9182
|
-
}
|
|
9183
|
-
)), /* @__PURE__ */ React56__namespace.default.createElement("div", { className: "grid grid-cols-2 gap-4" }, /* @__PURE__ */ React56__namespace.default.createElement("div", null, /* @__PURE__ */ React56__namespace.default.createElement("label", { className: "block text-sm font-medium text-slate-700 mb-1" }, "\u786E\u8BA4\u6309\u94AE\u6587\u672C"), /* @__PURE__ */ React56__namespace.default.createElement(
|
|
9184
|
-
"input",
|
|
9185
|
-
{
|
|
9186
|
-
type: "text",
|
|
9187
|
-
value: formData.contentConfig.confirmText,
|
|
9188
|
-
onChange: (e) => setFormData((prev) => ({
|
|
9189
|
-
...prev,
|
|
9190
|
-
contentConfig: {
|
|
9191
|
-
...prev.contentConfig,
|
|
9192
|
-
confirmText: e.target.value
|
|
9193
|
-
}
|
|
9194
|
-
})),
|
|
9195
|
-
className: "w-full px-3 py-2 border border-slate-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500"
|
|
9196
|
-
}
|
|
9197
|
-
)), /* @__PURE__ */ React56__namespace.default.createElement("div", null, /* @__PURE__ */ React56__namespace.default.createElement("label", { className: "block text-sm font-medium text-slate-700 mb-1" }, "\u53D6\u6D88\u6309\u94AE\u6587\u672C"), /* @__PURE__ */ React56__namespace.default.createElement(
|
|
9198
|
-
"input",
|
|
9199
|
-
{
|
|
9200
|
-
type: "text",
|
|
9201
|
-
value: formData.contentConfig.cancelText,
|
|
9202
|
-
onChange: (e) => setFormData((prev) => ({
|
|
9203
|
-
...prev,
|
|
9204
|
-
contentConfig: {
|
|
9205
|
-
...prev.contentConfig,
|
|
9206
|
-
cancelText: e.target.value
|
|
9207
|
-
}
|
|
9208
|
-
})),
|
|
9209
|
-
className: "w-full px-3 py-2 border border-slate-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500"
|
|
9210
|
-
}
|
|
9211
|
-
))), /* @__PURE__ */ React56__namespace.default.createElement("div", null, /* @__PURE__ */ React56__namespace.default.createElement("label", { className: "block text-sm font-medium text-slate-700 mb-1" }, "\u5F39\u7A97\u4E3B\u9898"), /* @__PURE__ */ React56__namespace.default.createElement(
|
|
9212
|
-
"select",
|
|
9080
|
+
/* @__PURE__ */ React56__namespace.default.createElement(
|
|
9081
|
+
"div",
|
|
9213
9082
|
{
|
|
9214
|
-
|
|
9215
|
-
|
|
9216
|
-
...prev,
|
|
9217
|
-
contentConfig: {
|
|
9218
|
-
...prev.contentConfig,
|
|
9219
|
-
theme: e.target.value
|
|
9220
|
-
}
|
|
9221
|
-
})),
|
|
9222
|
-
className: "w-full px-3 py-2 border border-slate-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500"
|
|
9083
|
+
className: "space-y-6 max-h-[76vh] overflow-y-auto overscroll-contain pr-1",
|
|
9084
|
+
style: { WebkitOverflowScrolling: "touch" }
|
|
9223
9085
|
},
|
|
9224
|
-
/* @__PURE__ */ React56__namespace.default.createElement("
|
|
9225
|
-
|
|
9226
|
-
|
|
9227
|
-
|
|
9228
|
-
|
|
9229
|
-
|
|
9230
|
-
|
|
9231
|
-
|
|
9232
|
-
|
|
9233
|
-
|
|
9234
|
-
|
|
9235
|
-
|
|
9236
|
-
|
|
9237
|
-
|
|
9238
|
-
|
|
9239
|
-
|
|
9240
|
-
|
|
9241
|
-
|
|
9242
|
-
}
|
|
9243
|
-
|
|
9244
|
-
|
|
9245
|
-
|
|
9246
|
-
|
|
9247
|
-
|
|
9248
|
-
|
|
9249
|
-
|
|
9250
|
-
|
|
9251
|
-
|
|
9252
|
-
|
|
9253
|
-
|
|
9254
|
-
|
|
9255
|
-
|
|
9256
|
-
|
|
9257
|
-
|
|
9258
|
-
|
|
9259
|
-
|
|
9260
|
-
|
|
9261
|
-
|
|
9262
|
-
|
|
9263
|
-
|
|
9264
|
-
|
|
9265
|
-
|
|
9266
|
-
|
|
9267
|
-
|
|
9268
|
-
|
|
9269
|
-
|
|
9270
|
-
|
|
9271
|
-
|
|
9272
|
-
|
|
9273
|
-
|
|
9274
|
-
|
|
9275
|
-
|
|
9276
|
-
|
|
9277
|
-
|
|
9278
|
-
|
|
9279
|
-
|
|
9280
|
-
|
|
9281
|
-
|
|
9282
|
-
|
|
9283
|
-
|
|
9284
|
-
|
|
9285
|
-
|
|
9286
|
-
|
|
9287
|
-
|
|
9288
|
-
|
|
9289
|
-
|
|
9290
|
-
|
|
9086
|
+
/* @__PURE__ */ React56__namespace.default.createElement("div", { className: "space-y-4" }, /* @__PURE__ */ React56__namespace.default.createElement("h4", { className: "font-medium text-slate-800" }, "\u57FA\u672C\u4FE1\u606F"), /* @__PURE__ */ React56__namespace.default.createElement("div", null, /* @__PURE__ */ React56__namespace.default.createElement("label", { className: "block text-sm font-medium text-slate-700 mb-1" }, "\u914D\u7F6E\u540D\u79F0 *"), /* @__PURE__ */ React56__namespace.default.createElement(
|
|
9087
|
+
"input",
|
|
9088
|
+
{
|
|
9089
|
+
type: "text",
|
|
9090
|
+
value: formData.name,
|
|
9091
|
+
onChange: (e) => setFormData((prev) => ({ ...prev, name: e.target.value })),
|
|
9092
|
+
className: "w-full px-3 py-2 border border-slate-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500",
|
|
9093
|
+
placeholder: "\u8BF7\u8F93\u5165\u914D\u7F6E\u540D\u79F0"
|
|
9094
|
+
}
|
|
9095
|
+
)), /* @__PURE__ */ React56__namespace.default.createElement("div", null, /* @__PURE__ */ React56__namespace.default.createElement("label", { className: "block text-sm font-medium text-slate-700 mb-1" }, "\u914D\u7F6E\u63CF\u8FF0"), /* @__PURE__ */ React56__namespace.default.createElement(
|
|
9096
|
+
"textarea",
|
|
9097
|
+
{
|
|
9098
|
+
value: formData.description,
|
|
9099
|
+
onChange: (e) => setFormData((prev) => ({ ...prev, description: e.target.value })),
|
|
9100
|
+
rows: 2,
|
|
9101
|
+
className: "w-full px-3 py-2 border border-slate-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500",
|
|
9102
|
+
placeholder: "\u8BF7\u8F93\u5165\u914D\u7F6E\u63CF\u8FF0"
|
|
9103
|
+
}
|
|
9104
|
+
)), /* @__PURE__ */ React56__namespace.default.createElement("div", null, /* @__PURE__ */ React56__namespace.default.createElement("label", { className: "block text-sm font-medium text-slate-700 mb-1" }, "\u4E1A\u52A1\u573A\u666F *"), /* @__PURE__ */ React56__namespace.default.createElement(
|
|
9105
|
+
"select",
|
|
9106
|
+
{
|
|
9107
|
+
value: formData.businessScene,
|
|
9108
|
+
onChange: (e) => setFormData((prev) => ({ ...prev, businessScene: e.target.value })),
|
|
9109
|
+
className: "w-full px-3 py-2 border border-slate-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500"
|
|
9110
|
+
},
|
|
9111
|
+
/* @__PURE__ */ React56__namespace.default.createElement("option", { value: "cart_checkout" }, "\u8D2D\u7269\u8F66\u63D0\u4EA4"),
|
|
9112
|
+
/* @__PURE__ */ React56__namespace.default.createElement("option", { value: "homepage_visit" }, "\u4E3B\u9875\u8BBF\u95EE"),
|
|
9113
|
+
/* @__PURE__ */ React56__namespace.default.createElement("option", { value: "collection_view" }, "\u753B\u96C6\u6D4F\u89C8"),
|
|
9114
|
+
/* @__PURE__ */ React56__namespace.default.createElement("option", { value: "artwork_detail" }, "\u4F5C\u54C1\u8BE6\u60C5")
|
|
9115
|
+
), /* @__PURE__ */ React56__namespace.default.createElement("div", { className: "text-xs text-slate-500 mt-1" }, "\u9009\u62E9\u5F39\u7A97\u5728\u54EA\u4E2A\u573A\u666F\u4E0B\u89E6\u53D1\u663E\u793A")), /* @__PURE__ */ React56__namespace.default.createElement("div", { className: "flex items-center gap-2" }, /* @__PURE__ */ React56__namespace.default.createElement(
|
|
9116
|
+
"input",
|
|
9117
|
+
{
|
|
9118
|
+
type: "checkbox",
|
|
9119
|
+
id: "enabled",
|
|
9120
|
+
checked: formData.enabled,
|
|
9121
|
+
onChange: (e) => setFormData((prev) => ({ ...prev, enabled: e.target.checked })),
|
|
9122
|
+
className: "rounded border-slate-300 text-blue-600 focus:ring-blue-500"
|
|
9123
|
+
}
|
|
9124
|
+
), /* @__PURE__ */ React56__namespace.default.createElement("label", { htmlFor: "enabled", className: "text-sm font-medium text-slate-700" }, "\u542F\u7528\u6B64\u914D\u7F6E"))),
|
|
9125
|
+
/* @__PURE__ */ React56__namespace.default.createElement("div", { className: "space-y-4" }, /* @__PURE__ */ React56__namespace.default.createElement("h4", { className: "font-medium text-slate-800" }, "\u89E6\u53D1\u6761\u4EF6"), /* @__PURE__ */ React56__namespace.default.createElement("div", null, /* @__PURE__ */ React56__namespace.default.createElement("label", { className: "block text-sm font-medium text-slate-700 mb-1" }, "\u89E6\u53D1\u7C7B\u578B"), /* @__PURE__ */ React56__namespace.default.createElement(
|
|
9126
|
+
"select",
|
|
9127
|
+
{
|
|
9128
|
+
value: formData.triggerConfig.triggerType,
|
|
9129
|
+
onChange: (e) => setFormData((prev) => ({
|
|
9130
|
+
...prev,
|
|
9131
|
+
triggerConfig: {
|
|
9132
|
+
...prev.triggerConfig,
|
|
9133
|
+
triggerType: e.target.value
|
|
9134
|
+
}
|
|
9135
|
+
})),
|
|
9136
|
+
className: "w-full px-3 py-2 border border-slate-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500"
|
|
9137
|
+
},
|
|
9138
|
+
/* @__PURE__ */ React56__namespace.default.createElement("option", { value: "after_deadline" }, "\u8D85\u8FC7\u622A\u6B62\u65F6\u95F4\u540E\u663E\u793A"),
|
|
9139
|
+
/* @__PURE__ */ React56__namespace.default.createElement("option", { value: "before_deadline" }, "\u622A\u6B62\u65F6\u95F4\u524D\u663E\u793A"),
|
|
9140
|
+
/* @__PURE__ */ React56__namespace.default.createElement("option", { value: "always" }, "\u603B\u662F\u663E\u793A")
|
|
9141
|
+
)), formData.triggerConfig.triggerType !== "always" && /* @__PURE__ */ React56__namespace.default.createElement("div", null, /* @__PURE__ */ React56__namespace.default.createElement("label", { className: "block text-sm font-medium text-slate-700 mb-1" }, "\u622A\u6B62\u65F6\u95F4"), /* @__PURE__ */ React56__namespace.default.createElement(
|
|
9142
|
+
"input",
|
|
9143
|
+
{
|
|
9144
|
+
type: "datetime-local",
|
|
9145
|
+
value: formData.triggerConfig.deadlineTime,
|
|
9146
|
+
onChange: (e) => setFormData((prev) => ({
|
|
9147
|
+
...prev,
|
|
9148
|
+
triggerConfig: {
|
|
9149
|
+
...prev.triggerConfig,
|
|
9150
|
+
deadlineTime: e.target.value
|
|
9151
|
+
}
|
|
9152
|
+
})),
|
|
9153
|
+
className: "w-full px-3 py-2 border border-slate-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500"
|
|
9154
|
+
}
|
|
9155
|
+
)), formData.triggerConfig.triggerType === "before_deadline" && /* @__PURE__ */ React56__namespace.default.createElement("div", null, /* @__PURE__ */ React56__namespace.default.createElement("label", { className: "block text-sm font-medium text-slate-700 mb-1" }, "\u63D0\u524D\u5206\u949F\u6570"), /* @__PURE__ */ React56__namespace.default.createElement(
|
|
9156
|
+
"input",
|
|
9157
|
+
{
|
|
9158
|
+
type: "number",
|
|
9159
|
+
min: "0",
|
|
9160
|
+
value: formData.triggerConfig.advanceMinutes,
|
|
9161
|
+
onChange: (e) => setFormData((prev) => ({
|
|
9162
|
+
...prev,
|
|
9163
|
+
triggerConfig: {
|
|
9164
|
+
...prev.triggerConfig,
|
|
9165
|
+
advanceMinutes: parseInt(e.target.value) || 0
|
|
9166
|
+
}
|
|
9167
|
+
})),
|
|
9168
|
+
className: "w-full px-3 py-2 border border-slate-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500",
|
|
9169
|
+
placeholder: "\u5728\u622A\u6B62\u65F6\u95F4\u524D\u591A\u5C11\u5206\u949F\u663E\u793A"
|
|
9170
|
+
}
|
|
9171
|
+
))),
|
|
9172
|
+
/* @__PURE__ */ React56__namespace.default.createElement("div", { className: "space-y-4" }, /* @__PURE__ */ React56__namespace.default.createElement("h4", { className: "font-medium text-slate-800" }, "\u5F39\u7A97\u5185\u5BB9"), /* @__PURE__ */ React56__namespace.default.createElement("div", null, /* @__PURE__ */ React56__namespace.default.createElement("label", { className: "block text-sm font-medium text-slate-700 mb-1" }, "\u5F39\u7A97\u6807\u9898 *"), /* @__PURE__ */ React56__namespace.default.createElement(
|
|
9173
|
+
"input",
|
|
9174
|
+
{
|
|
9175
|
+
type: "text",
|
|
9176
|
+
value: formData.contentConfig.title,
|
|
9177
|
+
onChange: (e) => setFormData((prev) => ({
|
|
9178
|
+
...prev,
|
|
9179
|
+
contentConfig: {
|
|
9180
|
+
...prev.contentConfig,
|
|
9181
|
+
title: e.target.value
|
|
9182
|
+
}
|
|
9183
|
+
})),
|
|
9184
|
+
className: "w-full px-3 py-2 border border-slate-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500",
|
|
9185
|
+
placeholder: "\u8BF7\u8F93\u5165\u5F39\u7A97\u6807\u9898"
|
|
9186
|
+
}
|
|
9187
|
+
)), /* @__PURE__ */ React56__namespace.default.createElement("div", null, /* @__PURE__ */ React56__namespace.default.createElement("label", { className: "block text-sm font-medium text-slate-700 mb-1" }, "\u5F39\u7A97\u5185\u5BB9 *"), /* @__PURE__ */ React56__namespace.default.createElement(
|
|
9188
|
+
"textarea",
|
|
9189
|
+
{
|
|
9190
|
+
value: formData.contentConfig.message,
|
|
9191
|
+
onChange: (e) => setFormData((prev) => ({
|
|
9192
|
+
...prev,
|
|
9193
|
+
contentConfig: {
|
|
9194
|
+
...prev.contentConfig,
|
|
9195
|
+
message: e.target.value
|
|
9196
|
+
}
|
|
9197
|
+
})),
|
|
9198
|
+
rows: 4,
|
|
9199
|
+
className: "w-full px-3 py-2 border border-slate-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500",
|
|
9200
|
+
placeholder: "\u8BF7\u8F93\u5165\u5F39\u7A97\u5185\u5BB9"
|
|
9201
|
+
}
|
|
9202
|
+
)), /* @__PURE__ */ React56__namespace.default.createElement("div", { className: "grid grid-cols-2 gap-4" }, /* @__PURE__ */ React56__namespace.default.createElement("div", null, /* @__PURE__ */ React56__namespace.default.createElement("label", { className: "block text-sm font-medium text-slate-700 mb-1" }, "\u786E\u8BA4\u6309\u94AE\u6587\u672C"), /* @__PURE__ */ React56__namespace.default.createElement(
|
|
9203
|
+
"input",
|
|
9204
|
+
{
|
|
9205
|
+
type: "text",
|
|
9206
|
+
value: formData.contentConfig.confirmText,
|
|
9207
|
+
onChange: (e) => setFormData((prev) => ({
|
|
9208
|
+
...prev,
|
|
9209
|
+
contentConfig: {
|
|
9210
|
+
...prev.contentConfig,
|
|
9211
|
+
confirmText: e.target.value
|
|
9212
|
+
}
|
|
9213
|
+
})),
|
|
9214
|
+
className: "w-full px-3 py-2 border border-slate-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500"
|
|
9215
|
+
}
|
|
9216
|
+
)), /* @__PURE__ */ React56__namespace.default.createElement("div", null, /* @__PURE__ */ React56__namespace.default.createElement("label", { className: "block text-sm font-medium text-slate-700 mb-1" }, "\u53D6\u6D88\u6309\u94AE\u6587\u672C"), /* @__PURE__ */ React56__namespace.default.createElement(
|
|
9217
|
+
"input",
|
|
9218
|
+
{
|
|
9219
|
+
type: "text",
|
|
9220
|
+
value: formData.contentConfig.cancelText,
|
|
9221
|
+
onChange: (e) => setFormData((prev) => ({
|
|
9222
|
+
...prev,
|
|
9223
|
+
contentConfig: {
|
|
9224
|
+
...prev.contentConfig,
|
|
9225
|
+
cancelText: e.target.value
|
|
9226
|
+
}
|
|
9227
|
+
})),
|
|
9228
|
+
className: "w-full px-3 py-2 border border-slate-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500"
|
|
9229
|
+
}
|
|
9230
|
+
))), /* @__PURE__ */ React56__namespace.default.createElement("div", null, /* @__PURE__ */ React56__namespace.default.createElement("label", { className: "block text-sm font-medium text-slate-700 mb-1" }, "\u5F39\u7A97\u4E3B\u9898"), /* @__PURE__ */ React56__namespace.default.createElement(
|
|
9231
|
+
"select",
|
|
9232
|
+
{
|
|
9233
|
+
value: formData.contentConfig.theme,
|
|
9234
|
+
onChange: (e) => setFormData((prev) => ({
|
|
9235
|
+
...prev,
|
|
9236
|
+
contentConfig: {
|
|
9237
|
+
...prev.contentConfig,
|
|
9238
|
+
theme: e.target.value
|
|
9239
|
+
}
|
|
9240
|
+
})),
|
|
9241
|
+
className: "w-full px-3 py-2 border border-slate-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500"
|
|
9242
|
+
},
|
|
9243
|
+
/* @__PURE__ */ React56__namespace.default.createElement("option", { value: "warning" }, "\u8B66\u544A"),
|
|
9244
|
+
/* @__PURE__ */ React56__namespace.default.createElement("option", { value: "info" }, "\u4FE1\u606F"),
|
|
9245
|
+
/* @__PURE__ */ React56__namespace.default.createElement("option", { value: "error" }, "\u9519\u8BEF"),
|
|
9246
|
+
/* @__PURE__ */ React56__namespace.default.createElement("option", { value: "success" }, "\u6210\u529F")
|
|
9247
|
+
)), /* @__PURE__ */ React56__namespace.default.createElement("div", { className: "flex items-center gap-2" }, /* @__PURE__ */ React56__namespace.default.createElement(
|
|
9248
|
+
"input",
|
|
9249
|
+
{
|
|
9250
|
+
type: "checkbox",
|
|
9251
|
+
id: "showCancel",
|
|
9252
|
+
checked: formData.contentConfig.showCancel,
|
|
9253
|
+
onChange: (e) => setFormData((prev) => ({
|
|
9254
|
+
...prev,
|
|
9255
|
+
contentConfig: {
|
|
9256
|
+
...prev.contentConfig,
|
|
9257
|
+
showCancel: e.target.checked
|
|
9258
|
+
}
|
|
9259
|
+
})),
|
|
9260
|
+
className: "rounded border-slate-300 text-blue-600 focus:ring-blue-500"
|
|
9261
|
+
}
|
|
9262
|
+
), /* @__PURE__ */ React56__namespace.default.createElement("label", { htmlFor: "showCancel", className: "text-sm font-medium text-slate-700" }, "\u663E\u793A\u53D6\u6D88\u6309\u94AE"))),
|
|
9263
|
+
/* @__PURE__ */ React56__namespace.default.createElement("div", { className: "space-y-4" }, /* @__PURE__ */ React56__namespace.default.createElement("h4", { className: "font-medium text-slate-800" }, "\u663E\u793A\u8BBE\u7F6E"), /* @__PURE__ */ React56__namespace.default.createElement("div", { className: "grid grid-cols-2 gap-4" }, /* @__PURE__ */ React56__namespace.default.createElement("div", null, /* @__PURE__ */ React56__namespace.default.createElement("label", { className: "block text-sm font-medium text-slate-700 mb-1" }, "\u5F39\u7A97\u5BBD\u5EA6 (px)"), /* @__PURE__ */ React56__namespace.default.createElement(
|
|
9264
|
+
"input",
|
|
9265
|
+
{
|
|
9266
|
+
type: "number",
|
|
9267
|
+
min: "200",
|
|
9268
|
+
max: "800",
|
|
9269
|
+
value: formData.displayConfig.width,
|
|
9270
|
+
onChange: (e) => setFormData((prev) => ({
|
|
9271
|
+
...prev,
|
|
9272
|
+
displayConfig: {
|
|
9273
|
+
...prev.displayConfig,
|
|
9274
|
+
width: parseInt(e.target.value) || 400
|
|
9275
|
+
}
|
|
9276
|
+
})),
|
|
9277
|
+
className: "w-full px-3 py-2 border border-slate-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500"
|
|
9278
|
+
}
|
|
9279
|
+
)), /* @__PURE__ */ React56__namespace.default.createElement("div", null, /* @__PURE__ */ React56__namespace.default.createElement("label", { className: "block text-sm font-medium text-slate-700 mb-1" }, "\u81EA\u52A8\u5173\u95ED (\u79D2\uFF0C0=\u4E0D\u5173\u95ED)"), /* @__PURE__ */ React56__namespace.default.createElement(
|
|
9280
|
+
"input",
|
|
9281
|
+
{
|
|
9282
|
+
type: "number",
|
|
9283
|
+
min: "0",
|
|
9284
|
+
max: "60",
|
|
9285
|
+
value: formData.displayConfig.autoCloseSeconds,
|
|
9286
|
+
onChange: (e) => setFormData((prev) => ({
|
|
9287
|
+
...prev,
|
|
9288
|
+
displayConfig: {
|
|
9289
|
+
...prev.displayConfig,
|
|
9290
|
+
autoCloseSeconds: parseInt(e.target.value) || 0
|
|
9291
|
+
}
|
|
9292
|
+
})),
|
|
9293
|
+
className: "w-full px-3 py-2 border border-slate-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500"
|
|
9294
|
+
}
|
|
9295
|
+
))), /* @__PURE__ */ React56__namespace.default.createElement("div", { className: "flex items-center gap-2" }, /* @__PURE__ */ React56__namespace.default.createElement(
|
|
9296
|
+
"input",
|
|
9297
|
+
{
|
|
9298
|
+
type: "checkbox",
|
|
9299
|
+
id: "maskClosable",
|
|
9300
|
+
checked: formData.displayConfig.maskClosable,
|
|
9301
|
+
onChange: (e) => setFormData((prev) => ({
|
|
9302
|
+
...prev,
|
|
9303
|
+
displayConfig: {
|
|
9304
|
+
...prev.displayConfig,
|
|
9305
|
+
maskClosable: e.target.checked
|
|
9306
|
+
}
|
|
9307
|
+
})),
|
|
9308
|
+
className: "rounded border-slate-300 text-blue-600 focus:ring-blue-500"
|
|
9309
|
+
}
|
|
9310
|
+
), /* @__PURE__ */ React56__namespace.default.createElement("label", { htmlFor: "maskClosable", className: "text-sm font-medium text-slate-700" }, "\u5141\u8BB8\u70B9\u51FB\u906E\u7F69\u5173\u95ED")))
|
|
9311
|
+
),
|
|
9291
9312
|
/* @__PURE__ */ React56__namespace.default.createElement("div", null, /* @__PURE__ */ React56__namespace.default.createElement("h4", { className: "text-sm font-medium text-slate-800 mb-3" }, "\u6D41\u7A0B\u63A7\u5236"), /* @__PURE__ */ React56__namespace.default.createElement("div", { className: "space-y-3" }, /* @__PURE__ */ React56__namespace.default.createElement("div", { className: "flex items-center gap-3" }, /* @__PURE__ */ React56__namespace.default.createElement(
|
|
9292
9313
|
"input",
|
|
9293
9314
|
{
|
|
@@ -10446,6 +10467,7 @@ function ConfigPageContent() {
|
|
|
10446
10467
|
enableCategories: config?.enableCategories || true,
|
|
10447
10468
|
defaultCategory: config?.defaultCategory || "all",
|
|
10448
10469
|
homeTabConfig: normalizeHomeTabConfig(config?.homeTabConfig),
|
|
10470
|
+
miniappFloatingButtons: normalizeMiniappFloatingButtonsConfig(config?.miniappFloatingButtons),
|
|
10449
10471
|
theme: config?.theme || "light",
|
|
10450
10472
|
language: config?.language || "zh"
|
|
10451
10473
|
});
|
|
@@ -10480,6 +10502,7 @@ function ConfigPageContent() {
|
|
|
10480
10502
|
enableCategories: config.enableCategories,
|
|
10481
10503
|
defaultCategory: config.defaultCategory,
|
|
10482
10504
|
homeTabConfig: normalizeHomeTabConfig(config.homeTabConfig),
|
|
10505
|
+
miniappFloatingButtons: normalizeMiniappFloatingButtonsConfig(config.miniappFloatingButtons),
|
|
10483
10506
|
theme: config.theme,
|
|
10484
10507
|
language: config.language
|
|
10485
10508
|
});
|
|
@@ -10882,7 +10905,37 @@ function ConfigPageContent() {
|
|
|
10882
10905
|
onChange: (e) => setConfigForm((prev) => ({ ...prev, enableCategories: e.target.checked })),
|
|
10883
10906
|
className: "h-4 w-4 rounded border-gray-300"
|
|
10884
10907
|
}
|
|
10885
|
-
), /* @__PURE__ */ React56__namespace.default.createElement(Label, { htmlFor: "enableCategories", className: "text-sm font-medium" }, "\u542F\u7528\u5206\u7C7B\u529F\u80FD"))
|
|
10908
|
+
), /* @__PURE__ */ React56__namespace.default.createElement(Label, { htmlFor: "enableCategories", className: "text-sm font-medium" }, "\u542F\u7528\u5206\u7C7B\u529F\u80FD")), /* @__PURE__ */ React56__namespace.default.createElement("div", { className: "space-y-2 rounded-xl border border-slate-200 p-3" }, /* @__PURE__ */ React56__namespace.default.createElement("p", { className: "text-sm font-medium text-slate-900" }, "\u5C0F\u7A0B\u5E8F\u60AC\u6D6E\u6309\u94AE"), /* @__PURE__ */ React56__namespace.default.createElement("div", { className: "flex items-center space-x-2" }, /* @__PURE__ */ React56__namespace.default.createElement(
|
|
10909
|
+
"input",
|
|
10910
|
+
{
|
|
10911
|
+
id: "miniappShowCart",
|
|
10912
|
+
type: "checkbox",
|
|
10913
|
+
checked: configForm.miniappFloatingButtons.showCart,
|
|
10914
|
+
onChange: (e) => setConfigForm((prev) => ({
|
|
10915
|
+
...prev,
|
|
10916
|
+
miniappFloatingButtons: {
|
|
10917
|
+
...prev.miniappFloatingButtons,
|
|
10918
|
+
showCart: e.target.checked
|
|
10919
|
+
}
|
|
10920
|
+
})),
|
|
10921
|
+
className: "h-4 w-4 rounded border-gray-300"
|
|
10922
|
+
}
|
|
10923
|
+
), /* @__PURE__ */ React56__namespace.default.createElement(Label, { htmlFor: "miniappShowCart", className: "text-sm font-medium" }, "\u663E\u793A\u201C\u8D2D\u7269\u8F66\u201D\u6309\u94AE")), /* @__PURE__ */ React56__namespace.default.createElement("div", { className: "flex items-center space-x-2" }, /* @__PURE__ */ React56__namespace.default.createElement(
|
|
10924
|
+
"input",
|
|
10925
|
+
{
|
|
10926
|
+
id: "miniappShowHistory",
|
|
10927
|
+
type: "checkbox",
|
|
10928
|
+
checked: configForm.miniappFloatingButtons.showHistory,
|
|
10929
|
+
onChange: (e) => setConfigForm((prev) => ({
|
|
10930
|
+
...prev,
|
|
10931
|
+
miniappFloatingButtons: {
|
|
10932
|
+
...prev.miniappFloatingButtons,
|
|
10933
|
+
showHistory: e.target.checked
|
|
10934
|
+
}
|
|
10935
|
+
})),
|
|
10936
|
+
className: "h-4 w-4 rounded border-gray-300"
|
|
10937
|
+
}
|
|
10938
|
+
), /* @__PURE__ */ React56__namespace.default.createElement(Label, { htmlFor: "miniappShowHistory", className: "text-sm font-medium" }, "\u663E\u793A\u201C\u5386\u53F2\u8BB0\u5F55\u201D\u6309\u94AE"))))))), /* @__PURE__ */ React56__namespace.default.createElement(TabsContent, { value: "homeTabs", className: "space-y-6" }, /* @__PURE__ */ React56__namespace.default.createElement(Card, null, /* @__PURE__ */ React56__namespace.default.createElement(CardHeader, null, /* @__PURE__ */ React56__namespace.default.createElement("div", { className: "flex items-center justify-between" }, /* @__PURE__ */ React56__namespace.default.createElement("div", null, /* @__PURE__ */ React56__namespace.default.createElement(CardTitle, null, "\u9996\u9875\u5206\u7C7BTab\u914D\u7F6E"), /* @__PURE__ */ React56__namespace.default.createElement(CardDescription, null, "\u7BA1\u7406\u9996\u9875\u5206\u7C7BTab\u7684\u663E\u793A\u987A\u5E8F\u4E0E\u663E\u793A/\u9690\u85CF")), /* @__PURE__ */ React56__namespace.default.createElement("div", { className: "flex gap-3" }, /* @__PURE__ */ React56__namespace.default.createElement(Button, { variant: "outline", onClick: () => handleSetAllHomeTabsVisible(true) }, "\u5168\u90E8\u663E\u793A"), /* @__PURE__ */ React56__namespace.default.createElement(Button, { variant: "outline", onClick: () => handleSetAllHomeTabsVisible(false) }, "\u5168\u90E8\u9690\u85CF"), /* @__PURE__ */ React56__namespace.default.createElement(Button, { variant: "outline", onClick: handleResetHomeTabs, className: "gap-2" }, /* @__PURE__ */ React56__namespace.default.createElement(lucideReact.RotateCcw, { size: 16 }), "\u91CD\u7F6E\u987A\u5E8F"), /* @__PURE__ */ React56__namespace.default.createElement(Button, { onClick: handleSaveConfig, className: "gap-2" }, /* @__PURE__ */ React56__namespace.default.createElement(lucideReact.Save, { size: 16 }), "\u4FDD\u5B58\u914D\u7F6E")))), /* @__PURE__ */ React56__namespace.default.createElement(CardContent, null, /* @__PURE__ */ React56__namespace.default.createElement("div", { className: "flex flex-col lg:flex-row lg:items-end gap-3 mb-4" }, /* @__PURE__ */ React56__namespace.default.createElement("div", { className: "flex-1 space-y-2" }, /* @__PURE__ */ React56__namespace.default.createElement(Label, null, "\u5206\u7C7B\u540D\u79F0"), /* @__PURE__ */ React56__namespace.default.createElement(
|
|
10886
10939
|
Input,
|
|
10887
10940
|
{
|
|
10888
10941
|
value: newHomeTabCategory,
|