@huyooo/ui 0.5.4 → 0.5.5
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/{AuthkitAuthModal-MWWzynTx.js → AuthkitAuthModal-BjqMoIed.js} +10 -8
- package/dist/AuthkitAuthModal.vue_vue_type_style_index_1_lang-BpOmabWi.js +10 -0
- package/dist/{AuthkitAuthorize-D3vma2FV.js → AuthkitAuthorize-DWb0xKRa.js} +3 -3
- package/dist/{FeedbackItem-C1TqPuuy.js → FeedbackItem-bPlL6uEE.js} +14 -13
- package/dist/{FeedbackModal-CdBaCw5j.js → FeedbackModal-DJx3R3rM.js} +5 -4
- package/dist/Introduce-e3nEDSRY.js +390 -0
- package/dist/LandingPageSectionHeader-Dlc5rL21.js +463 -0
- package/dist/LandingPageSectionTabs-CrFrtbqu.js +1369 -0
- package/dist/{MessageHandle-JzX9UY1a.js → MessageHandle-BJH_S-61.js} +18 -17
- package/dist/{PaySubscriptions-Bak0mpKh.js → PaySubscriptions-BGl9BQru.js} +9 -8
- package/dist/{ReferrerReferees-Cuw4uhVu.js → ReferrerReferees-oi-zzWCo.js} +18 -17
- package/dist/{Upload.vue_vue_type_script_setup_true_lang-DQPtXtJ0.js → Upload.vue_vue_type_script_setup_true_lang-CDyUt05d.js} +10 -9
- package/dist/{UserAccountMenu-DD3zoOBd.js → UserAccountMenu-BD8F9vEK.js} +1 -1
- package/dist/{UserPanel-BBB9cA2b.js → UserPanel-C6XusLxb.js} +11 -10
- package/dist/{WidthContainer-Co60dOmv.js → WidthContainer-uWfPyPEH.js} +17 -16
- package/dist/authkit.js +12 -11
- package/dist/common.js +1 -1
- package/dist/components/PrivateCom/BodyAndFooterLayout.vue.d.ts +17 -0
- package/dist/components/PrivateCom/Footer.vue.d.ts +2 -0
- package/dist/components/PrivateCom/Introduce.vue.d.ts +2 -0
- package/dist/composables.js +26 -25
- package/dist/feedback.js +2 -2
- package/dist/index.js +191 -183
- package/dist/landingPage.js +46 -45
- package/dist/main.d.ts +1 -0
- package/dist/message.js +2 -2
- package/dist/pay.js +1 -1
- package/dist/privateCom.d.ts +4 -0
- package/dist/privateCom.js +8 -0
- package/dist/referrer.js +1 -1
- package/dist/style.css +1 -1
- package/dist/upload.js +2 -2
- package/dist/{AuthkitAuthModal.vue_vue_type_style_index_1_lang-B-QKS_BT.js → useAuthkitAppsAuthPageInfo-Dr5K7ULW.js} +16 -23
- package/dist/{useAuthkitUsersProfile-D2UZf7n0.js → useAuthkitUsersProfile-DNOB_Kuk.js} +1 -1
- package/dist/{useMessageNotifications-BahKMcby.js → useMessageNotifications-DOH1MS61.js} +1 -1
- package/dist/{useRoutePermission-DWJ-2G10.js → useRoutePermission-DuZZniIv.js} +17 -16
- package/dist/{useUploadCos-BdIk3m1E.js → useUploadCos-B5P_PDcy.js} +1 -1
- package/dist/user.js +2 -2
- package/package.json +5 -1
- package/dist/LandingPageSectionTabs-uO4kXpj7.js +0 -1825
- /package/dist/{index-DZIhLe1R.js → globalConfig-DZIhLe1R.js} +0 -0
|
@@ -1,1825 +0,0 @@
|
|
|
1
|
-
import { createElementBlock as n, openBlock as a, renderSlot as h, defineComponent as f, createVNode as u, withCtx as _, createElementVNode as e, normalizeStyle as w, unref as L, toDisplayString as l, Fragment as v, renderList as y, createBlock as C, normalizeClass as I, createTextVNode as g, ref as k, createCommentVNode as T, withModifiers as E, withDirectives as A, vModelText as q, computed as H, createStaticVNode as O, watch as z, vShow as N } from "vue";
|
|
2
|
-
import { _ as d } from "./_plugin-vue_export-helper-CHgC5LLL.js";
|
|
3
|
-
import { Icon as P } from "@iconify/vue";
|
|
4
|
-
import { C as W, a as Z } from "./CollapseItem-Cw1vcdLu.js";
|
|
5
|
-
import { c as R } from "./index-Bb-d5pBq.js";
|
|
6
|
-
/* empty css */
|
|
7
|
-
/* empty css */
|
|
8
|
-
import { Tag as K } from "@arco-design/web-vue";
|
|
9
|
-
const J = {}, Q = {
|
|
10
|
-
class: "SubTitle"
|
|
11
|
-
};
|
|
12
|
-
function Y(s, t) {
|
|
13
|
-
return a(), n("div", Q, [h(s.$slots, "default", {}, void 0, !0)]);
|
|
14
|
-
}
|
|
15
|
-
const D = /* @__PURE__ */ d(J, [["render", Y], ["__scopeId", "data-v-3decf2d4"]]), X = {}, ee = {
|
|
16
|
-
class: "Title"
|
|
17
|
-
};
|
|
18
|
-
function te(s, t) {
|
|
19
|
-
return a(), n("h2", ee, [h(s.$slots, "default", {}, void 0, !0)]);
|
|
20
|
-
}
|
|
21
|
-
const M = /* @__PURE__ */ d(X, [["render", te], ["__scopeId", "data-v-58078aa8"]]), se = {
|
|
22
|
-
class: "BlockHeader"
|
|
23
|
-
}, ae = /* @__PURE__ */ f({
|
|
24
|
-
__name: "LandingPageBlockHeader",
|
|
25
|
-
setup(s) {
|
|
26
|
-
return (t, c) => (a(), n("div", se, [u(M, {
|
|
27
|
-
class: "BlockHeaderTitle"
|
|
28
|
-
}, {
|
|
29
|
-
default: _(() => [h(t.$slots, "title", {}, void 0, !0)]),
|
|
30
|
-
_: 3
|
|
31
|
-
}), u(D, {
|
|
32
|
-
class: "BlockHeaderSubTitle"
|
|
33
|
-
}, {
|
|
34
|
-
default: _(() => [h(t.$slots, "subTitle", {}, void 0, !0)]),
|
|
35
|
-
_: 3
|
|
36
|
-
})]));
|
|
37
|
-
}
|
|
38
|
-
}), ne = /* @__PURE__ */ d(ae, [["__scopeId", "data-v-8d51bb3a"]]), ie = {
|
|
39
|
-
class: "BlockLayout"
|
|
40
|
-
}, oe = /* @__PURE__ */ f({
|
|
41
|
-
__name: "LandingPageBlockLayout",
|
|
42
|
-
props: {
|
|
43
|
-
columns: {
|
|
44
|
-
type: Number,
|
|
45
|
-
default: 1
|
|
46
|
-
},
|
|
47
|
-
flexDirection: {
|
|
48
|
-
type: String,
|
|
49
|
-
default: "column"
|
|
50
|
-
}
|
|
51
|
-
},
|
|
52
|
-
setup(s) {
|
|
53
|
-
const t = s;
|
|
54
|
-
return (c, i) => (a(), n("section", ie, [h(c.$slots, "BlockHeader", {}, void 0, !0), e("div", {
|
|
55
|
-
class: "BlockBody",
|
|
56
|
-
style: w({
|
|
57
|
-
gridTemplateColumns: `repeat(${t.columns}, 1fr)`,
|
|
58
|
-
flexDirection: t.flexDirection
|
|
59
|
-
})
|
|
60
|
-
}, [h(c.$slots, "BlockBody", {}, void 0, !0)], 4)]));
|
|
61
|
-
}
|
|
62
|
-
}), ce = /* @__PURE__ */ d(oe, [["__scopeId", "data-v-84ed1aaa"]]), le = {
|
|
63
|
-
description: "",
|
|
64
|
-
class: "mission-list-item"
|
|
65
|
-
}, re = {
|
|
66
|
-
class: "mission-list-text"
|
|
67
|
-
}, de = /* @__PURE__ */ f({
|
|
68
|
-
__name: "LandingPageListItem",
|
|
69
|
-
props: {
|
|
70
|
-
description: {
|
|
71
|
-
default: ""
|
|
72
|
-
}
|
|
73
|
-
},
|
|
74
|
-
setup(s) {
|
|
75
|
-
const t = s;
|
|
76
|
-
return (c, i) => (a(), n("div", le, [u(L(P), {
|
|
77
|
-
icon: "mingcute:check-circle-fill",
|
|
78
|
-
class: "mission-list-icon"
|
|
79
|
-
}), e("span", re, l(t.description), 1)]));
|
|
80
|
-
}
|
|
81
|
-
}), U = /* @__PURE__ */ d(de, [["__scopeId", "data-v-4973c791"]]), ue = {
|
|
82
|
-
class: "mission-container"
|
|
83
|
-
}, _e = {
|
|
84
|
-
class: "mission-image-wrapper"
|
|
85
|
-
}, pe = ["src", "alt"], fe = {
|
|
86
|
-
class: "mission-content"
|
|
87
|
-
}, me = {
|
|
88
|
-
class: "mission-title"
|
|
89
|
-
}, ge = {
|
|
90
|
-
class: "mission-title-highlight"
|
|
91
|
-
}, he = {
|
|
92
|
-
class: "mission-desc"
|
|
93
|
-
}, ve = {
|
|
94
|
-
class: "mission-list"
|
|
95
|
-
}, $e = {
|
|
96
|
-
style: {
|
|
97
|
-
display: "none"
|
|
98
|
-
}
|
|
99
|
-
}, ye = /* @__PURE__ */ f({
|
|
100
|
-
__name: "LandingPageMission",
|
|
101
|
-
props: {
|
|
102
|
-
image: {},
|
|
103
|
-
imageAlt: {},
|
|
104
|
-
title: {},
|
|
105
|
-
highlight: {},
|
|
106
|
-
description: {},
|
|
107
|
-
features: {}
|
|
108
|
-
},
|
|
109
|
-
setup(s) {
|
|
110
|
-
return (t, c) => (a(), n("div", ue, [e("div", _e, [c[0] || (c[0] = e("div", {
|
|
111
|
-
class: "mission-bg1"
|
|
112
|
-
}, null, -1)), e("img", {
|
|
113
|
-
src: s.image,
|
|
114
|
-
alt: s.imageAlt,
|
|
115
|
-
loading: "lazy",
|
|
116
|
-
width: "1270",
|
|
117
|
-
decoding: "async",
|
|
118
|
-
class: "mission-img"
|
|
119
|
-
}, null, 8, pe)]), e("div", fe, [e("h2", me, [e("span", ge, l(s.highlight), 1), e("strong", null, l(s.title), 1)]), e("p", he, l(s.description), 1), e("div", ve, [(a(!0), n(v, null, y(s.features, (i, o) => (a(), C(U, {
|
|
120
|
-
key: o,
|
|
121
|
-
description: i
|
|
122
|
-
}, null, 8, ["description"]))), 128))])]), (a(), n("svg", $e, [...c[1] || (c[1] = [e("symbol", {
|
|
123
|
-
id: "ai:ph:check-circle-fill"
|
|
124
|
-
}, [e("path", {
|
|
125
|
-
fill: "currentColor",
|
|
126
|
-
d: "M128 24a104 104 0 1 0 104 104A104.11 104.11 0 0 0 128 24m45.66 85.66l-56 56a8 8 0 0 1-11.32 0l-24-24a8 8 0 0 1 11.32-11.32L112 148.69l50.34-50.35a8 8 0 0 1 11.32 11.32"
|
|
127
|
-
})], -1)])]))]));
|
|
128
|
-
}
|
|
129
|
-
}), be = /* @__PURE__ */ d(ye, [["__scopeId", "data-v-511c032f"]]), ke = {
|
|
130
|
-
class: "team-info-container"
|
|
131
|
-
}, Ce = {
|
|
132
|
-
class: "team-info-title"
|
|
133
|
-
}, xe = {
|
|
134
|
-
class: "team-info-desc"
|
|
135
|
-
}, Le = /* @__PURE__ */ f({
|
|
136
|
-
__name: "LandingPageTeamInfo",
|
|
137
|
-
props: {
|
|
138
|
-
title: {},
|
|
139
|
-
description: {}
|
|
140
|
-
},
|
|
141
|
-
setup(s) {
|
|
142
|
-
const t = s;
|
|
143
|
-
return (c, i) => (a(), n("div", ke, [e("div", Ce, l(t.title), 1), e("p", xe, l(t.description), 1)]));
|
|
144
|
-
}
|
|
145
|
-
}), Pe = /* @__PURE__ */ d(Le, [["__scopeId", "data-v-2074e0d7"]]), we = {}, Ie = {
|
|
146
|
-
class: "Description"
|
|
147
|
-
};
|
|
148
|
-
function Se(s, t) {
|
|
149
|
-
return a(), n("div", Ie, [h(s.$slots, "default", {}, void 0, !0)]);
|
|
150
|
-
}
|
|
151
|
-
const S = /* @__PURE__ */ d(we, [["render", Se], ["__scopeId", "data-v-501deb41"]]), Te = {
|
|
152
|
-
class: "grid-container"
|
|
153
|
-
}, Ae = {
|
|
154
|
-
class: "square"
|
|
155
|
-
}, qe = ["src", "alt", "sizes", "width", "height"], Be = {
|
|
156
|
-
class: "footer"
|
|
157
|
-
}, ze = {
|
|
158
|
-
class: "name"
|
|
159
|
-
}, Fe = /* @__PURE__ */ f({
|
|
160
|
-
__name: "LandingPageTeamList",
|
|
161
|
-
props: {
|
|
162
|
-
publishedTeamMembers: {},
|
|
163
|
-
sizes: {},
|
|
164
|
-
width: {},
|
|
165
|
-
height: {},
|
|
166
|
-
pictureClass: {}
|
|
167
|
-
},
|
|
168
|
-
setup(s) {
|
|
169
|
-
return (t, c) => (a(), n("div", Te, [(a(!0), n(v, null, y(s.publishedTeamMembers, (i) => (a(), n("div", {
|
|
170
|
-
key: i.data.name,
|
|
171
|
-
class: "group"
|
|
172
|
-
}, [e("div", Ae, [e("img", {
|
|
173
|
-
src: i.data.avatar.src,
|
|
174
|
-
alt: i.data.avatar.alt,
|
|
175
|
-
sizes: s.sizes,
|
|
176
|
-
width: s.width,
|
|
177
|
-
height: s.height,
|
|
178
|
-
class: I(s.pictureClass ? `${s.pictureClass} picture-img` : "picture-img")
|
|
179
|
-
}, null, 10, qe)]), e("div", Be, [e("h2", ze, l(i.data.name), 1), u(S, null, {
|
|
180
|
-
default: _(() => [g(l(i.data.title), 1)]),
|
|
181
|
-
_: 2
|
|
182
|
-
}, 1024)])]))), 128))]));
|
|
183
|
-
}
|
|
184
|
-
}), Ve = /* @__PURE__ */ d(Fe, [["__scopeId", "data-v-aae1a797"]]), He = /* @__PURE__ */ f({
|
|
185
|
-
__name: "LandingPageAbout",
|
|
186
|
-
setup(s) {
|
|
187
|
-
const t = [{
|
|
188
|
-
data: {
|
|
189
|
-
name: "Janette Lynch",
|
|
190
|
-
title: "Senior Director",
|
|
191
|
-
avatar: {
|
|
192
|
-
src: "https://images.unsplash.com/photo-1580489944761-15a19d654956?&fit=crop&w=280",
|
|
193
|
-
alt: "Janette Lynch"
|
|
194
|
-
}
|
|
195
|
-
}
|
|
196
|
-
}, {
|
|
197
|
-
data: {
|
|
198
|
-
name: "Marcell Ziemann",
|
|
199
|
-
title: "Principal Strategist",
|
|
200
|
-
avatar: {
|
|
201
|
-
src: "https://images.unsplash.com/photo-1633332755192-727a05c4013d?&fit=crop&w=280",
|
|
202
|
-
alt: "Marcell Ziemann"
|
|
203
|
-
}
|
|
204
|
-
}
|
|
205
|
-
}, {
|
|
206
|
-
data: {
|
|
207
|
-
name: "Robert Palmer",
|
|
208
|
-
title: "Marketing Engineer",
|
|
209
|
-
avatar: {
|
|
210
|
-
src: "https://images.unsplash.com/photo-1535713875002-d1d0cf377fde?&fit=crop&w=280",
|
|
211
|
-
alt: "Robert Palmer"
|
|
212
|
-
}
|
|
213
|
-
}
|
|
214
|
-
}, {
|
|
215
|
-
data: {
|
|
216
|
-
name: "Daniel Collins",
|
|
217
|
-
title: "Chief Sales Officer",
|
|
218
|
-
avatar: {
|
|
219
|
-
src: "https://astroship-pro.web3templates.com/_astro/photo-1487309078313-fad80c3ec1e5_6PMfa.avif",
|
|
220
|
-
alt: "Robert Palmer"
|
|
221
|
-
}
|
|
222
|
-
}
|
|
223
|
-
}];
|
|
224
|
-
return (c, i) => (a(), n(v, null, [u(ce, null, {
|
|
225
|
-
BlockHeader: _(() => [u(ne, null, {
|
|
226
|
-
title: _(() => [...i[0] || (i[0] = [g("核心团队", -1)])]),
|
|
227
|
-
subTitle: _(() => [...i[1] || (i[1] = [g("我们是一个充满激情的小团队。", -1)])]),
|
|
228
|
-
_: 1
|
|
229
|
-
})]),
|
|
230
|
-
BlockBody: _(() => [u(Pe, {
|
|
231
|
-
title: "Empowering the world with Astro.",
|
|
232
|
-
description: "We're a multi-cultural team from around the world! We come from diverse backgrounds, bringing different personalities, experiences and skills to the job. This is what makes our team so special."
|
|
233
|
-
}), u(Ve, {
|
|
234
|
-
"published-team-members": t
|
|
235
|
-
})]),
|
|
236
|
-
_: 1
|
|
237
|
-
}), u(be, {
|
|
238
|
-
image: "https://astroship-pro.web3templates.com/_astro/employee.DPridi10_Z23eRat.avif",
|
|
239
|
-
"image-alt": "Happy Team",
|
|
240
|
-
title: "Mission",
|
|
241
|
-
highlight: "Our ",
|
|
242
|
-
description: "We're a multi-cultural team from around the world! ...",
|
|
243
|
-
features: ["Intelligent Task Management", "Real-time Collaboration", "Data Security & Privacy"]
|
|
244
|
-
})], 64));
|
|
245
|
-
}
|
|
246
|
-
}), wn = /* @__PURE__ */ d(He, [["__scopeId", "data-v-a40e05a5"]]), De = {
|
|
247
|
-
class: "nav"
|
|
248
|
-
}, Me = {
|
|
249
|
-
class: "section"
|
|
250
|
-
}, Ue = ["href"], Ge = {
|
|
251
|
-
class: "section"
|
|
252
|
-
}, je = ["href"], Ee = /* @__PURE__ */ f({
|
|
253
|
-
__name: "LandingPageAside",
|
|
254
|
-
setup(s) {
|
|
255
|
-
const t = k([{
|
|
256
|
-
text: "Editor",
|
|
257
|
-
href: "/docs/editor/getting-started/overview"
|
|
258
|
-
}, {
|
|
259
|
-
text: "Collaboration",
|
|
260
|
-
href: "/docs/collaboration/getting-started/overview"
|
|
261
|
-
}, {
|
|
262
|
-
text: "Content AI",
|
|
263
|
-
href: "/docs/content-ai/getting-started/overview"
|
|
264
|
-
}, {
|
|
265
|
-
text: "Comments",
|
|
266
|
-
href: "/docs/comments/getting-started/overview"
|
|
267
|
-
}, {
|
|
268
|
-
text: "Documents",
|
|
269
|
-
href: "/docs/collaboration/documents"
|
|
270
|
-
}]), c = k([{
|
|
271
|
-
text: "Guides",
|
|
272
|
-
href: "/docs/guides"
|
|
273
|
-
}, {
|
|
274
|
-
text: "Examples",
|
|
275
|
-
href: "/docs/examples"
|
|
276
|
-
}, {
|
|
277
|
-
text: "Contributing",
|
|
278
|
-
href: "/docs/resources/contributing"
|
|
279
|
-
}, {
|
|
280
|
-
text: "Editor changelog",
|
|
281
|
-
href: "/docs/resources/changelog"
|
|
282
|
-
}, {
|
|
283
|
-
text: "Pro license",
|
|
284
|
-
href: "/docs/resources/pro-license"
|
|
285
|
-
}]);
|
|
286
|
-
return (i, o) => (a(), n("nav", De, [o[2] || (o[2] = e("div", {
|
|
287
|
-
class: "section"
|
|
288
|
-
}, [e("div", {
|
|
289
|
-
class: "section-title"
|
|
290
|
-
}, "Getting started"), e("div", null, [e("a", {
|
|
291
|
-
class: "link active",
|
|
292
|
-
href: "/docs"
|
|
293
|
-
}, "Overview")])], -1)), e("div", Me, [o[0] || (o[0] = e("div", {
|
|
294
|
-
class: "section-title"
|
|
295
|
-
}, "Browse by feature", -1)), e("div", null, [(a(!0), n(v, null, y(t.value, (r) => (a(), n("a", {
|
|
296
|
-
key: r.text,
|
|
297
|
-
class: "link",
|
|
298
|
-
href: r.href
|
|
299
|
-
}, l(r.text), 9, Ue))), 128))])]), e("div", Ge, [o[1] || (o[1] = e("div", {
|
|
300
|
-
class: "section-title"
|
|
301
|
-
}, "Resources", -1)), e("div", null, [(a(!0), n(v, null, y(c.value, (r) => (a(), n("a", {
|
|
302
|
-
key: r.text,
|
|
303
|
-
class: "link",
|
|
304
|
-
href: r.href
|
|
305
|
-
}, l(r.text), 9, je))), 128))])])]));
|
|
306
|
-
}
|
|
307
|
-
}), In = /* @__PURE__ */ d(Ee, [["__scopeId", "data-v-b516bb75"]]), Oe = ["src"], Ne = /* @__PURE__ */ f({
|
|
308
|
-
__name: "LandingPageLogo",
|
|
309
|
-
props: {
|
|
310
|
-
name: {
|
|
311
|
-
type: String,
|
|
312
|
-
required: !1,
|
|
313
|
-
default: () => "#2d2d2d"
|
|
314
|
-
},
|
|
315
|
-
icon: {
|
|
316
|
-
type: String,
|
|
317
|
-
required: !1,
|
|
318
|
-
default: () => ""
|
|
319
|
-
},
|
|
320
|
-
color: {
|
|
321
|
-
type: String,
|
|
322
|
-
required: !1,
|
|
323
|
-
default: () => "#2d2d2d"
|
|
324
|
-
},
|
|
325
|
-
fontSize: {
|
|
326
|
-
type: String,
|
|
327
|
-
required: !1,
|
|
328
|
-
default: () => "16px"
|
|
329
|
-
},
|
|
330
|
-
iconSize: {
|
|
331
|
-
type: String,
|
|
332
|
-
required: !1,
|
|
333
|
-
default: () => "42px"
|
|
334
|
-
}
|
|
335
|
-
},
|
|
336
|
-
emits: ["to"],
|
|
337
|
-
setup(s, {
|
|
338
|
-
emit: t
|
|
339
|
-
}) {
|
|
340
|
-
const c = s, i = t;
|
|
341
|
-
function o() {
|
|
342
|
-
i("to");
|
|
343
|
-
}
|
|
344
|
-
return (r, m) => (a(), n("div", {
|
|
345
|
-
class: "Logo",
|
|
346
|
-
onClick: o
|
|
347
|
-
}, [s.icon ? (a(), n("img", {
|
|
348
|
-
key: 0,
|
|
349
|
-
class: "icon",
|
|
350
|
-
src: s.icon,
|
|
351
|
-
alt: "logo",
|
|
352
|
-
style: w({
|
|
353
|
-
width: c.iconSize,
|
|
354
|
-
height: c.iconSize
|
|
355
|
-
})
|
|
356
|
-
}, null, 12, Oe)) : T("", !0), e("div", {
|
|
357
|
-
class: "text",
|
|
358
|
-
style: w({
|
|
359
|
-
color: c.color,
|
|
360
|
-
fontSize: c.fontSize
|
|
361
|
-
})
|
|
362
|
-
}, l(s.name), 5)]));
|
|
363
|
-
}
|
|
364
|
-
}), We = /* @__PURE__ */ d(Ne, [["__scopeId", "data-v-f259564c"]]), Ze = {
|
|
365
|
-
class: "BrandInfo"
|
|
366
|
-
}, Re = /* @__PURE__ */ f({
|
|
367
|
-
__name: "LandingPageBrandInfo",
|
|
368
|
-
props: {
|
|
369
|
-
icon: {
|
|
370
|
-
type: String,
|
|
371
|
-
required: !0
|
|
372
|
-
},
|
|
373
|
-
name: {
|
|
374
|
-
type: String,
|
|
375
|
-
required: !0
|
|
376
|
-
},
|
|
377
|
-
description: {
|
|
378
|
-
type: String,
|
|
379
|
-
required: !0
|
|
380
|
-
},
|
|
381
|
-
color: {
|
|
382
|
-
type: String,
|
|
383
|
-
default: "#2d2d2d"
|
|
384
|
-
},
|
|
385
|
-
fontSize: {
|
|
386
|
-
type: String,
|
|
387
|
-
default: "14px"
|
|
388
|
-
},
|
|
389
|
-
iconSize: {
|
|
390
|
-
type: String,
|
|
391
|
-
default: "32px"
|
|
392
|
-
}
|
|
393
|
-
},
|
|
394
|
-
setup(s) {
|
|
395
|
-
const t = s;
|
|
396
|
-
return (c, i) => (a(), n("div", Ze, [u(We, {
|
|
397
|
-
icon: t.icon,
|
|
398
|
-
name: t.name,
|
|
399
|
-
color: t.color,
|
|
400
|
-
"font-size": t.fontSize,
|
|
401
|
-
"icon-size": t.iconSize
|
|
402
|
-
}, null, 8, ["icon", "name", "color", "font-size", "icon-size"]), u(S, null, {
|
|
403
|
-
default: _(() => [g(l(t.description), 1)]),
|
|
404
|
-
_: 1
|
|
405
|
-
})]));
|
|
406
|
-
}
|
|
407
|
-
}), Ke = /* @__PURE__ */ d(Re, [["__scopeId", "data-v-03121641"]]), Je = /* @__PURE__ */ f({
|
|
408
|
-
__name: "LandingPageButton",
|
|
409
|
-
props: {
|
|
410
|
-
type: {}
|
|
411
|
-
},
|
|
412
|
-
setup(s) {
|
|
413
|
-
return (t, c) => (a(), n("div", {
|
|
414
|
-
class: I(["heroButton", [s.type === "primary" ? "heroButtonPrimary" : "heroButtonSecondary"]])
|
|
415
|
-
}, [h(t.$slots, "default", {}, void 0, !0)], 2));
|
|
416
|
-
}
|
|
417
|
-
}), Qe = /* @__PURE__ */ d(Je, [["__scopeId", "data-v-d26fdf8b"]]), Ye = {}, Xe = {
|
|
418
|
-
class: "Card"
|
|
419
|
-
};
|
|
420
|
-
function et(s, t) {
|
|
421
|
-
return a(), n("div", Xe, [h(s.$slots, "default", {}, void 0, !0)]);
|
|
422
|
-
}
|
|
423
|
-
const G = /* @__PURE__ */ d(Ye, [["render", et], ["__scopeId", "data-v-cdb3f77d"]]), tt = {
|
|
424
|
-
class: "contact-container"
|
|
425
|
-
}, st = {
|
|
426
|
-
class: "contact-info-section"
|
|
427
|
-
}, at = {
|
|
428
|
-
class: "contact-title"
|
|
429
|
-
}, nt = {
|
|
430
|
-
class: "contact-info"
|
|
431
|
-
}, it = {
|
|
432
|
-
class: "contact-info-item"
|
|
433
|
-
}, ot = {
|
|
434
|
-
class: "contact-info-item"
|
|
435
|
-
}, ct = ["href"], lt = {
|
|
436
|
-
class: "contact-info-item"
|
|
437
|
-
}, rt = ["href"], dt = {
|
|
438
|
-
class: "contact-form-section"
|
|
439
|
-
}, ut = /* @__PURE__ */ f({
|
|
440
|
-
__name: "LandingPageContact",
|
|
441
|
-
props: {
|
|
442
|
-
title: {
|
|
443
|
-
default: ""
|
|
444
|
-
},
|
|
445
|
-
subTitle: {
|
|
446
|
-
default: ""
|
|
447
|
-
},
|
|
448
|
-
contact: {
|
|
449
|
-
default: () => ({
|
|
450
|
-
title: "联系我们",
|
|
451
|
-
description: "有什么想说的吗?我们随时为您提供帮助。请填写表单或发送邮件或拨打电话。"
|
|
452
|
-
})
|
|
453
|
-
},
|
|
454
|
-
address: {
|
|
455
|
-
default: "北京市朝阳区建国门外大街1号"
|
|
456
|
-
},
|
|
457
|
-
email: {
|
|
458
|
-
default: "hello@example.com"
|
|
459
|
-
},
|
|
460
|
-
phone: {
|
|
461
|
-
default: "+86 138 0000 0000"
|
|
462
|
-
},
|
|
463
|
-
mapIcon: {
|
|
464
|
-
default: "uil:map-marker"
|
|
465
|
-
},
|
|
466
|
-
emailIcon: {
|
|
467
|
-
default: "uil:envelope"
|
|
468
|
-
},
|
|
469
|
-
phoneIcon: {
|
|
470
|
-
default: "uil:phone"
|
|
471
|
-
}
|
|
472
|
-
},
|
|
473
|
-
setup(s) {
|
|
474
|
-
const t = s;
|
|
475
|
-
return (c, i) => (a(), n("div", tt, [e("div", st, [e("h2", at, l(t.contact.title), 1), u(S, null, {
|
|
476
|
-
default: _(() => [g(l(t.contact.description), 1)]),
|
|
477
|
-
_: 1
|
|
478
|
-
}), e("div", nt, [e("div", it, [u(L(P), {
|
|
479
|
-
class: "contact-info-icon",
|
|
480
|
-
icon: s.mapIcon
|
|
481
|
-
}, null, 8, ["icon"]), e("span", null, l(t.address), 1)]), e("div", ot, [u(L(P), {
|
|
482
|
-
class: "contact-info-icon",
|
|
483
|
-
icon: t.emailIcon
|
|
484
|
-
}, null, 8, ["icon"]), e("a", {
|
|
485
|
-
href: `mailto:${s.email}`
|
|
486
|
-
}, l(t.email), 9, ct)]), e("div", lt, [u(L(P), {
|
|
487
|
-
class: "contact-info-icon",
|
|
488
|
-
icon: t.phoneIcon
|
|
489
|
-
}, null, 8, ["icon"]), e("a", {
|
|
490
|
-
href: `tel:${s.phone}`
|
|
491
|
-
}, l(t.phone), 9, rt)])])]), e("div", dt, [h(c.$slots, "contact-form", {}, void 0, !0)])]));
|
|
492
|
-
}
|
|
493
|
-
}), Sn = /* @__PURE__ */ d(ut, [["__scopeId", "data-v-50d64cb9"]]), _t = ["value"], pt = ["value"], ft = {
|
|
494
|
-
class: "form-group"
|
|
495
|
-
}, mt = {
|
|
496
|
-
class: "form-group"
|
|
497
|
-
}, gt = {
|
|
498
|
-
class: "form-group"
|
|
499
|
-
}, ht = {
|
|
500
|
-
type: "submit",
|
|
501
|
-
class: "form-button"
|
|
502
|
-
}, vt = {
|
|
503
|
-
key: 0,
|
|
504
|
-
class: "button-content"
|
|
505
|
-
}, $t = {
|
|
506
|
-
key: 1
|
|
507
|
-
}, yt = /* @__PURE__ */ f({
|
|
508
|
-
__name: "LandingPageContactForm",
|
|
509
|
-
props: {
|
|
510
|
-
accessKey: {
|
|
511
|
-
default: "YOUR_ACCESS_KEY_HERE"
|
|
512
|
-
},
|
|
513
|
-
to: {
|
|
514
|
-
default: "support@huyooo.com"
|
|
515
|
-
}
|
|
516
|
-
},
|
|
517
|
-
setup(s) {
|
|
518
|
-
const t = s, c = k(!1), i = k(""), o = k(""), r = k({
|
|
519
|
-
name: "",
|
|
520
|
-
email: "",
|
|
521
|
-
message: ""
|
|
522
|
-
}), m = async (b) => {
|
|
523
|
-
c.value = !0;
|
|
524
|
-
const p = b.target;
|
|
525
|
-
if (!p.checkValidity()) {
|
|
526
|
-
p.querySelectorAll(":invalid")[0].focus();
|
|
527
|
-
return;
|
|
528
|
-
}
|
|
529
|
-
i.value = "发送中...", o.value = "";
|
|
530
|
-
try {
|
|
531
|
-
const $ = await fetch("https://api.web3forms.com/submit", {
|
|
532
|
-
method: "POST",
|
|
533
|
-
headers: {
|
|
534
|
-
"Content-Type": "application/json",
|
|
535
|
-
Accept: "application/json"
|
|
536
|
-
},
|
|
537
|
-
body: JSON.stringify({
|
|
538
|
-
access_key: t.accessKey,
|
|
539
|
-
to: t.to,
|
|
540
|
-
name: r.value.name,
|
|
541
|
-
email: r.value.email,
|
|
542
|
-
message: r.value.message
|
|
543
|
-
})
|
|
544
|
-
});
|
|
545
|
-
await $.json(), $.status === 200 ? (o.value = "text-green", i.value = "消息发送成功!我们会尽快回复您。") : (o.value = "text-red", i.value = "发送失败,请检查网络连接后重试。");
|
|
546
|
-
} catch {
|
|
547
|
-
o.value = "text-red", i.value = "发送失败,请稍后再试!";
|
|
548
|
-
} finally {
|
|
549
|
-
p.reset(), c.value = !1, setTimeout(() => {
|
|
550
|
-
i.value = "";
|
|
551
|
-
}, 5e3);
|
|
552
|
-
}
|
|
553
|
-
};
|
|
554
|
-
return (b, p) => (a(), n("form", {
|
|
555
|
-
id: "form",
|
|
556
|
-
action: "https://api.web3forms.com/submit",
|
|
557
|
-
method: "POST",
|
|
558
|
-
class: I(["contact-form", {
|
|
559
|
-
"was-validated": c.value
|
|
560
|
-
}]),
|
|
561
|
-
novalidate: "",
|
|
562
|
-
onSubmit: E(m, ["prevent"])
|
|
563
|
-
}, [e("input", {
|
|
564
|
-
type: "hidden",
|
|
565
|
-
name: "access_key",
|
|
566
|
-
value: t.accessKey
|
|
567
|
-
}, null, 8, _t), e("input", {
|
|
568
|
-
type: "hidden",
|
|
569
|
-
name: "to",
|
|
570
|
-
value: t.to
|
|
571
|
-
}, null, 8, pt), p[11] || (p[11] = e("input", {
|
|
572
|
-
type: "checkbox",
|
|
573
|
-
class: "hidden",
|
|
574
|
-
style: {
|
|
575
|
-
display: "none"
|
|
576
|
-
},
|
|
577
|
-
name: "botcheck"
|
|
578
|
-
}, null, -1)), e("div", ft, [p[3] || (p[3] = e("label", {
|
|
579
|
-
for: "name",
|
|
580
|
-
class: "form-label"
|
|
581
|
-
}, [g(" 姓名 "), e("span", {
|
|
582
|
-
class: "required"
|
|
583
|
-
}, "*")], -1)), A(e("input", {
|
|
584
|
-
id: "name",
|
|
585
|
-
"onUpdate:modelValue": p[0] || (p[0] = ($) => r.value.name = $),
|
|
586
|
-
type: "text",
|
|
587
|
-
placeholder: "请输入您的姓名",
|
|
588
|
-
required: "",
|
|
589
|
-
class: "form-input",
|
|
590
|
-
name: "name"
|
|
591
|
-
}, null, 512), [[q, r.value.name]]), p[4] || (p[4] = e("div", {
|
|
592
|
-
class: "empty-feedback invalid-feedback form-error"
|
|
593
|
-
}, " 请输入您的姓名。 ", -1))]), e("div", mt, [p[5] || (p[5] = e("label", {
|
|
594
|
-
for: "email_address",
|
|
595
|
-
class: "form-label"
|
|
596
|
-
}, [g(" 邮箱地址 "), e("span", {
|
|
597
|
-
class: "required"
|
|
598
|
-
}, "*")], -1)), A(e("input", {
|
|
599
|
-
id: "email_address",
|
|
600
|
-
"onUpdate:modelValue": p[1] || (p[1] = ($) => r.value.email = $),
|
|
601
|
-
type: "email",
|
|
602
|
-
placeholder: "请输入您的邮箱地址",
|
|
603
|
-
name: "email",
|
|
604
|
-
required: "",
|
|
605
|
-
class: "form-input"
|
|
606
|
-
}, null, 512), [[q, r.value.email]]), p[6] || (p[6] = e("div", {
|
|
607
|
-
class: "empty-feedback form-error"
|
|
608
|
-
}, " 请输入您的邮箱地址。 ", -1)), p[7] || (p[7] = e("div", {
|
|
609
|
-
class: "invalid-feedback form-error"
|
|
610
|
-
}, " 请输入有效的邮箱地址。 ", -1))]), e("div", gt, [p[8] || (p[8] = e("label", {
|
|
611
|
-
for: "message",
|
|
612
|
-
class: "form-label"
|
|
613
|
-
}, [g(" 留言内容 "), e("span", {
|
|
614
|
-
class: "required"
|
|
615
|
-
}, "*")], -1)), A(e("textarea", {
|
|
616
|
-
id: "message",
|
|
617
|
-
"onUpdate:modelValue": p[2] || (p[2] = ($) => r.value.message = $),
|
|
618
|
-
name: "message",
|
|
619
|
-
required: "",
|
|
620
|
-
placeholder: "请输入您的留言内容",
|
|
621
|
-
class: "form-textarea",
|
|
622
|
-
rows: "4"
|
|
623
|
-
}, null, 512), [[q, r.value.message]]), p[9] || (p[9] = e("div", {
|
|
624
|
-
class: "empty-feedback invalid-feedback form-error"
|
|
625
|
-
}, " 请输入您的留言内容。 ", -1))]), e("button", ht, [i.value === "发送中..." ? (a(), n("span", vt, [...p[10] || (p[10] = [e("svg", {
|
|
626
|
-
class: "spinner",
|
|
627
|
-
xmlns: "http://www.w3.org/2000/svg",
|
|
628
|
-
fill: "none",
|
|
629
|
-
viewBox: "0 0 24 24"
|
|
630
|
-
}, [e("circle", {
|
|
631
|
-
class: "spinner-circle",
|
|
632
|
-
cx: "12",
|
|
633
|
-
cy: "12",
|
|
634
|
-
r: "10",
|
|
635
|
-
stroke: "currentColor",
|
|
636
|
-
"stroke-width": "4"
|
|
637
|
-
}), e("path", {
|
|
638
|
-
class: "spinner-path",
|
|
639
|
-
fill: "currentColor",
|
|
640
|
-
d: "M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"
|
|
641
|
-
})], -1), g(" 发送中... ", -1)])])) : (a(), n("span", $t, "发送信息"))]), i.value && i.value !== "发送中..." ? (a(), n("div", {
|
|
642
|
-
key: 0,
|
|
643
|
-
class: I(["form-result", o.value])
|
|
644
|
-
}, l(i.value), 3)) : T("", !0)], 34));
|
|
645
|
-
}
|
|
646
|
-
}), Tn = /* @__PURE__ */ d(yt, [["__scopeId", "data-v-bd2eaefb"]]), bt = /* @__PURE__ */ f({
|
|
647
|
-
__name: "LandingPageContainer",
|
|
648
|
-
props: {
|
|
649
|
-
flexDirection: {
|
|
650
|
-
default: "column"
|
|
651
|
-
},
|
|
652
|
-
gap: {
|
|
653
|
-
default: "80px"
|
|
654
|
-
},
|
|
655
|
-
padding: {
|
|
656
|
-
default: "0px"
|
|
657
|
-
}
|
|
658
|
-
},
|
|
659
|
-
setup(s) {
|
|
660
|
-
const t = s;
|
|
661
|
-
return (c, i) => (a(), n("div", {
|
|
662
|
-
class: "landing-page-container",
|
|
663
|
-
style: w({
|
|
664
|
-
flexDirection: t.flexDirection,
|
|
665
|
-
gap: t.gap,
|
|
666
|
-
padding: t.padding
|
|
667
|
-
})
|
|
668
|
-
}, [h(c.$slots, "default", {}, void 0, !0)], 4));
|
|
669
|
-
}
|
|
670
|
-
}), An = /* @__PURE__ */ d(bt, [["__scopeId", "data-v-4566ee86"]]), kt = "data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='1744'%20height='480'%20viewBox='0%200%201744%20480'%20fill='none'%3e%3cg%20style='mix-blend-mode:luminosity'%20opacity='0.5'%3e%3ccircle%20opacity='0.7'%20cx='861.225'%20cy='247.836'%20r='322.59'%20stroke='%2300000050'%20stroke-width='1.29295'%20/%3e%3ccircle%20opacity='0.6'%20cx='861.225'%20cy='247.836'%20r='387.237'%20stroke='%2300000050'%20stroke-width='1.29295'%20/%3e%3ccircle%20opacity='0.5'%20cx='861.226'%20cy='247.836'%20r='451.884'%20stroke='%2300000050'%20stroke-width='1.29295'%20/%3e%3ccircle%20opacity='0.4'%20cx='861.225'%20cy='247.835'%20r='516.532'%20stroke='%2300000050'%20stroke-width='1.29295'%20/%3e%3ccircle%20opacity='0.3'%20cx='861.225'%20cy='247.836'%20r='581.179'%20stroke='%2300000050'%20stroke-width='1.29295'%20/%3e%3ccircle%20opacity='0.2'%20cx='861.225'%20cy='247.836'%20r='645.826'%20stroke='%2300000050'%20stroke-width='1.29295'%20/%3e%3ccircle%20opacity='0.15'%20cx='861.225'%20cy='247.836'%20r='710.473'%20stroke='%2300000050'%20stroke-width='1.29295'%20/%3e%3ccircle%20opacity='0.1'%20cx='861.225'%20cy='247.836'%20r='775.12'%20stroke='%2300000050'%20stroke-width='1.29295'%20/%3e%3ccircle%20opacity='0.1'%20cx='862.695'%20cy='238.041'%20r='842.161'%20stroke='%2300000050'%20stroke-width='1.40477'%20/%3e%3ccircle%20opacity='0.1'%20cx='872'%20cy='240'%20r='907.243'%20stroke='%2300000050'%20stroke-width='1.51333'%20/%3e%3c/g%3e%3c/svg%3e", Ct = {
|
|
671
|
-
class: "cta-container"
|
|
672
|
-
}, xt = ["src"], Lt = {
|
|
673
|
-
class: "cta-content"
|
|
674
|
-
}, Pt = {
|
|
675
|
-
class: "cta-title"
|
|
676
|
-
}, wt = {
|
|
677
|
-
class: "cta-description"
|
|
678
|
-
}, It = {
|
|
679
|
-
class: "cta-actions"
|
|
680
|
-
}, St = /* @__PURE__ */ f({
|
|
681
|
-
__name: "LandingPageCta",
|
|
682
|
-
props: {
|
|
683
|
-
title: {
|
|
684
|
-
default: "迫不及待想使用翻译?"
|
|
685
|
-
},
|
|
686
|
-
description: {
|
|
687
|
-
default: "立即开始您的翻译之旅"
|
|
688
|
-
},
|
|
689
|
-
backgroundUrl: {
|
|
690
|
-
default: kt
|
|
691
|
-
},
|
|
692
|
-
backgroundSize: {
|
|
693
|
-
default: "120%"
|
|
694
|
-
}
|
|
695
|
-
},
|
|
696
|
-
setup(s) {
|
|
697
|
-
const t = s;
|
|
698
|
-
return (c, i) => (a(), n("div", Ct, [e("img", {
|
|
699
|
-
src: t.backgroundUrl,
|
|
700
|
-
class: "cta-background",
|
|
701
|
-
alt: "background",
|
|
702
|
-
style: w({
|
|
703
|
-
width: t.backgroundSize,
|
|
704
|
-
height: t.backgroundSize
|
|
705
|
-
})
|
|
706
|
-
}, null, 12, xt), e("div", Lt, [e("h1", Pt, l(t.title), 1), e("div", wt, l(t.description), 1), e("div", It, [h(c.$slots, "actions", {}, void 0, !0)])])]));
|
|
707
|
-
}
|
|
708
|
-
}), qn = /* @__PURE__ */ d(St, [["__scopeId", "data-v-4a709ec3"]]), Tt = {}, At = {
|
|
709
|
-
role: "separator",
|
|
710
|
-
class: "divider divider-horizontal"
|
|
711
|
-
};
|
|
712
|
-
function qt(s, t) {
|
|
713
|
-
return a(), n("div", At);
|
|
714
|
-
}
|
|
715
|
-
const F = /* @__PURE__ */ d(Tt, [["render", qt], ["__scopeId", "data-v-997fc2a4"]]), Bt = /* @__PURE__ */ f({
|
|
716
|
-
__name: "LandingPageFAQ",
|
|
717
|
-
props: {
|
|
718
|
-
activeKeys: {
|
|
719
|
-
default: () => []
|
|
720
|
-
},
|
|
721
|
-
faqItems: {
|
|
722
|
-
default: () => [{
|
|
723
|
-
question: "你们有免费试用吗?",
|
|
724
|
-
answer: "我们提供1个月的免费试用"
|
|
725
|
-
}, {
|
|
726
|
-
question: "我可以申请退款吗?",
|
|
727
|
-
answer: "不支持退款,但您可以随时取消订阅。取消订阅后将于下一个结算日的次日生效,在此之前您可以使用服务。为了避免被收取下一计费期的费用,请在下一个计费日期前至少 24 小时取消。"
|
|
728
|
-
}, {
|
|
729
|
-
question: "付费会员的配额什么时候会重置?会在月初吗?",
|
|
730
|
-
answer: "配额重置发生在您订阅后一个月,并非基于日历月。例如,如果您在4月15日订阅,您的配额将在5月15日重置。"
|
|
731
|
-
}, {
|
|
732
|
-
question: "从月付费订阅升级至年付费订阅,费用和有效期是如何计算的?",
|
|
733
|
-
answer: "从月度付费升级至年度付费时,会基于您剩余的月度付费价值计算差额。服务期从升级日起至次年同日。"
|
|
734
|
-
}, {
|
|
735
|
-
question: "你们提供技术支持吗?",
|
|
736
|
-
answer: "是的,在付费期间我们提供全天候的技术支持,可以通过电子邮箱和微信联系我们。"
|
|
737
|
-
}, {
|
|
738
|
-
question: "使用期间有什么限制吗?",
|
|
739
|
-
answer: "在使用期间如果发现开发者违反法律法规或在恶意应用程序中使用等任何不当使用行为,包括但不限于共享或出售订阅,都是被禁止的,可能会导致您的账户被终止且不予退款。我们有权终止服务,详情请参阅《付费服务协议》"
|
|
740
|
-
}]
|
|
741
|
-
}
|
|
742
|
-
},
|
|
743
|
-
setup(s) {
|
|
744
|
-
const t = s;
|
|
745
|
-
return (c, i) => (a(), C(W, {
|
|
746
|
-
"active-keys": t.activeKeys
|
|
747
|
-
}, {
|
|
748
|
-
default: _(() => [(a(!0), n(v, null, y(t.faqItems, (o, r) => (a(), C(Z, {
|
|
749
|
-
key: r,
|
|
750
|
-
index: r
|
|
751
|
-
}, {
|
|
752
|
-
header: _(() => [g(l(o.question), 1)]),
|
|
753
|
-
default: _(() => [u(S, null, {
|
|
754
|
-
default: _(() => [g(l(o.answer), 1)]),
|
|
755
|
-
_: 2
|
|
756
|
-
}, 1024)]),
|
|
757
|
-
_: 2
|
|
758
|
-
}, 1032, ["index"]))), 128))]),
|
|
759
|
-
_: 1
|
|
760
|
-
}, 8, ["active-keys"]));
|
|
761
|
-
}
|
|
762
|
-
}), Bn = /* @__PURE__ */ d(Bt, [["__scopeId", "data-v-581e8f75"]]), zt = {
|
|
763
|
-
class: "Features"
|
|
764
|
-
}, Ft = {
|
|
765
|
-
class: "feature-title"
|
|
766
|
-
}, Vt = /* @__PURE__ */ f({
|
|
767
|
-
__name: "LandingPageFeatures",
|
|
768
|
-
props: {
|
|
769
|
-
features: {
|
|
770
|
-
default: () => [{
|
|
771
|
-
title: "什么是ShipAny?",
|
|
772
|
-
description: "ShipAny是一个无代码平台,帮助您在几小时内而不是几天内构建和发布AI产品。",
|
|
773
|
-
icon: ""
|
|
774
|
-
}, {
|
|
775
|
-
title: "认证与支付",
|
|
776
|
-
description: "内置认证和Stripe支付处理,开箱即用。",
|
|
777
|
-
icon: ""
|
|
778
|
-
}, {
|
|
779
|
-
title: "数据基础设施",
|
|
780
|
-
description: "为您的AI模型和用户数据提供安全且可扩展的数据库基础设施。",
|
|
781
|
-
icon: ""
|
|
782
|
-
}, {
|
|
783
|
-
title: "实时部署",
|
|
784
|
-
description: "持续部署工作流,确保您的AI创业公司始终保持最新状态。",
|
|
785
|
-
icon: ""
|
|
786
|
-
}, {
|
|
787
|
-
title: "业务分析",
|
|
788
|
-
description: "跟踪用户行为和业务指标,做出明智决策。",
|
|
789
|
-
icon: ""
|
|
790
|
-
}, {
|
|
791
|
-
title: "AI模型集成",
|
|
792
|
-
description: "轻松集成来自OpenAI、Anthropic等的最新AI模型。",
|
|
793
|
-
icon: ""
|
|
794
|
-
}]
|
|
795
|
-
},
|
|
796
|
-
iconColor: {
|
|
797
|
-
default: "rgb(184, 154, 120)"
|
|
798
|
-
},
|
|
799
|
-
iconBorderColor: {
|
|
800
|
-
default: "rgb(184, 154, 120)"
|
|
801
|
-
}
|
|
802
|
-
},
|
|
803
|
-
setup(s) {
|
|
804
|
-
const t = s;
|
|
805
|
-
return (c, i) => (a(), n("div", zt, [(a(!0), n(v, null, y(t.features, (o) => (a(), C(G, {
|
|
806
|
-
key: o.title
|
|
807
|
-
}, {
|
|
808
|
-
default: _(() => [e("div", {
|
|
809
|
-
class: "icon-container",
|
|
810
|
-
style: w({
|
|
811
|
-
color: t.iconColor,
|
|
812
|
-
border: `1px solid ${t.iconBorderColor}`
|
|
813
|
-
})
|
|
814
|
-
}, [u(L(P), {
|
|
815
|
-
class: "icon",
|
|
816
|
-
icon: o.icon
|
|
817
|
-
}, null, 8, ["icon"])], 4), e("h3", Ft, l(o.title), 1), u(S, null, {
|
|
818
|
-
default: _(() => [g(l(o.description), 1)]),
|
|
819
|
-
_: 2
|
|
820
|
-
}, 1024)]),
|
|
821
|
-
_: 2
|
|
822
|
-
}, 1024))), 128))]));
|
|
823
|
-
}
|
|
824
|
-
}), zn = /* @__PURE__ */ d(Vt, [["__scopeId", "data-v-1ee2db18"]]), Ht = {
|
|
825
|
-
class: "tt-feature-list"
|
|
826
|
-
}, Dt = {
|
|
827
|
-
class: "tt-feature-content"
|
|
828
|
-
}, Mt = {
|
|
829
|
-
class: "heading-small"
|
|
830
|
-
}, Ut = {
|
|
831
|
-
class: "text-small"
|
|
832
|
-
}, Gt = /* @__PURE__ */ f({
|
|
833
|
-
__name: "LandingPageFeatures2",
|
|
834
|
-
props: {
|
|
835
|
-
list: {
|
|
836
|
-
type: Array,
|
|
837
|
-
required: !0
|
|
838
|
-
}
|
|
839
|
-
},
|
|
840
|
-
setup(s) {
|
|
841
|
-
const t = s;
|
|
842
|
-
return (c, i) => (a(), n("div", Ht, [(a(!0), n(v, null, y(t.list, (o, r) => (a(), n("div", {
|
|
843
|
-
key: r,
|
|
844
|
-
class: "tt-feature-item centered"
|
|
845
|
-
}, [i[1] || (i[1] = e("div", {
|
|
846
|
-
class: "tt-feature-icon"
|
|
847
|
-
}, [e("img", {
|
|
848
|
-
src: "https://cdn.prod.website-files.com/645a9acecda2e0594fac6126/66cda872417824f6aabdc2ad_check-highlight-badge.svg",
|
|
849
|
-
loading: "lazy",
|
|
850
|
-
class: "feature-media"
|
|
851
|
-
})], -1)), e("div", Dt, [e("h3", Mt, l(o.title), 1), e("p", Ut, [g(l(o.descriptions) + " ", 1), i[0] || (i[0] = e("br", null, null, -1))])])]))), 128))]));
|
|
852
|
-
}
|
|
853
|
-
}), Fn = /* @__PURE__ */ d(Gt, [["__scopeId", "data-v-abd3c70a"]]), jt = {
|
|
854
|
-
class: "bottom"
|
|
855
|
-
}, Et = {
|
|
856
|
-
class: "socials"
|
|
857
|
-
}, Ot = ["onClick"], Nt = /* @__PURE__ */ f({
|
|
858
|
-
__name: "LandingPageFooterContact",
|
|
859
|
-
props: {
|
|
860
|
-
beianText: {
|
|
861
|
-
type: String,
|
|
862
|
-
required: !0
|
|
863
|
-
},
|
|
864
|
-
beianUrl: {
|
|
865
|
-
type: String,
|
|
866
|
-
required: !0
|
|
867
|
-
},
|
|
868
|
-
links: {
|
|
869
|
-
type: Array,
|
|
870
|
-
required: !0
|
|
871
|
-
}
|
|
872
|
-
},
|
|
873
|
-
setup(s) {
|
|
874
|
-
const t = s;
|
|
875
|
-
function c() {
|
|
876
|
-
window.open(t.beianUrl);
|
|
877
|
-
}
|
|
878
|
-
return (i, o) => (a(), n("div", jt, [e("span", {
|
|
879
|
-
onClick: c
|
|
880
|
-
}, l(t.beianText), 1), e("div", Et, [(a(!0), n(v, null, y(s.links, (r, m) => (a(), n("div", {
|
|
881
|
-
key: m,
|
|
882
|
-
class: "socialItem",
|
|
883
|
-
onClick: r.select
|
|
884
|
-
}, [r.type === "text" ? (a(), C(L(P), {
|
|
885
|
-
key: 0,
|
|
886
|
-
icon: r.icon
|
|
887
|
-
}, null, 8, ["icon"])) : T("", !0), r.type === "image" ? (a(), C(L(P), {
|
|
888
|
-
key: 1,
|
|
889
|
-
icon: r.icon
|
|
890
|
-
}, null, 8, ["icon"])) : T("", !0)], 8, Ot))), 128))])]));
|
|
891
|
-
}
|
|
892
|
-
}), Wt = /* @__PURE__ */ d(Nt, [["__scopeId", "data-v-ff6210b9"]]), Zt = {
|
|
893
|
-
class: "FooterLayout"
|
|
894
|
-
}, Rt = {
|
|
895
|
-
class: "body"
|
|
896
|
-
}, Kt = {
|
|
897
|
-
class: "logo"
|
|
898
|
-
}, Jt = {
|
|
899
|
-
class: "links"
|
|
900
|
-
}, Qt = /* @__PURE__ */ f({
|
|
901
|
-
__name: "LandingPageFooterLayout",
|
|
902
|
-
setup(s) {
|
|
903
|
-
return (t, c) => (a(), n("div", Zt, [u(F), e("div", Rt, [e("div", Kt, [h(t.$slots, "LandingPageBrandInfo", {}, void 0, !0)]), e("div", Jt, [h(t.$slots, "LandingPageLinkGroup", {}, void 0, !0)])]), u(F), h(t.$slots, "LandingPageFooterContact", {}, void 0, !0)]));
|
|
904
|
-
}
|
|
905
|
-
}), Yt = /* @__PURE__ */ d(Qt, [["__scopeId", "data-v-425841c7"]]), Xt = {}, es = {
|
|
906
|
-
class: "Description"
|
|
907
|
-
};
|
|
908
|
-
function ts(s, t) {
|
|
909
|
-
return a(), n("div", es, [h(s.$slots, "default", {}, void 0, !0)]);
|
|
910
|
-
}
|
|
911
|
-
const x = /* @__PURE__ */ d(Xt, [["render", ts], ["__scopeId", "data-v-ea9ec649"]]), ss = {
|
|
912
|
-
class: "list"
|
|
913
|
-
}, as = {
|
|
914
|
-
class: "title"
|
|
915
|
-
}, ns = {
|
|
916
|
-
class: "listItemContent"
|
|
917
|
-
}, is = /* @__PURE__ */ f({
|
|
918
|
-
__name: "LandingPageLinkGroup",
|
|
919
|
-
props: {
|
|
920
|
-
title: {
|
|
921
|
-
default: ""
|
|
922
|
-
}
|
|
923
|
-
},
|
|
924
|
-
setup(s) {
|
|
925
|
-
const t = s;
|
|
926
|
-
return (c, i) => (a(), n("div", ss, [e("div", as, l(t.title), 1), e("div", ns, [h(c.$slots, "item", {}, void 0, !0)])]));
|
|
927
|
-
}
|
|
928
|
-
}), B = /* @__PURE__ */ d(is, [["__scopeId", "data-v-0809a48c"]]), os = {
|
|
929
|
-
class: "Footer"
|
|
930
|
-
}, V = "support@huyooo.com", cs = /* @__PURE__ */ f({
|
|
931
|
-
__name: "LandingPageFooter",
|
|
932
|
-
setup(s) {
|
|
933
|
-
const t = k("京ICP备2024077422号 Copyright © 2024-2024 北京忽柚科技有限公司"), c = k("https://beian.miit.gov.cn/#/Integrated/index");
|
|
934
|
-
function i() {
|
|
935
|
-
const p = R(V, "", "");
|
|
936
|
-
window.location.href = p;
|
|
937
|
-
}
|
|
938
|
-
const o = k([{
|
|
939
|
-
type: "text",
|
|
940
|
-
icon: "ic:baseline-email",
|
|
941
|
-
content: V,
|
|
942
|
-
select: i
|
|
943
|
-
}, {
|
|
944
|
-
type: "image",
|
|
945
|
-
icon: "ic:baseline-wechat",
|
|
946
|
-
content: "https://beian.miit.gov.cn/#/Integrated/index",
|
|
947
|
-
select() {
|
|
948
|
-
}
|
|
949
|
-
}]);
|
|
950
|
-
return (r, m) => (a(), n("div", os, [u(Yt, null, {
|
|
951
|
-
LandingPageBrandInfo: _(() => [u(Ke, {
|
|
952
|
-
icon: "https://ghibliaigenerator.app/logo.png",
|
|
953
|
-
name: "ONES",
|
|
954
|
-
description: "几小时内构建和发布AI产品,无需数日。"
|
|
955
|
-
})]),
|
|
956
|
-
LandingPageLinkGroup: _(() => [u(B, {
|
|
957
|
-
title: "产品"
|
|
958
|
-
}, {
|
|
959
|
-
item: _(() => [u(x, null, {
|
|
960
|
-
default: _(() => [...m[0] || (m[0] = [g("功能", -1)])]),
|
|
961
|
-
_: 1
|
|
962
|
-
}), u(x, null, {
|
|
963
|
-
default: _(() => [...m[1] || (m[1] = [g("展示", -1)])]),
|
|
964
|
-
_: 1
|
|
965
|
-
}), u(x, null, {
|
|
966
|
-
default: _(() => [...m[2] || (m[2] = [g("价格", -1)])]),
|
|
967
|
-
_: 1
|
|
968
|
-
})]),
|
|
969
|
-
_: 1
|
|
970
|
-
}), u(B, {
|
|
971
|
-
title: "资源"
|
|
972
|
-
}, {
|
|
973
|
-
item: _(() => [u(x, null, {
|
|
974
|
-
default: _(() => [...m[3] || (m[3] = [g("安全性与合规性", -1)])]),
|
|
975
|
-
_: 1
|
|
976
|
-
})]),
|
|
977
|
-
_: 1
|
|
978
|
-
}), u(B, {
|
|
979
|
-
title: "公司"
|
|
980
|
-
}, {
|
|
981
|
-
item: _(() => [u(x, null, {
|
|
982
|
-
default: _(() => [...m[4] || (m[4] = [g("博客", -1)])]),
|
|
983
|
-
_: 1
|
|
984
|
-
}), u(x, null, {
|
|
985
|
-
default: _(() => [...m[5] || (m[5] = [g("公司简介", -1)])]),
|
|
986
|
-
_: 1
|
|
987
|
-
}), u(x, null, {
|
|
988
|
-
default: _(() => [...m[6] || (m[6] = [g("个人信息收集清单", -1)])]),
|
|
989
|
-
_: 1
|
|
990
|
-
}), u(x, null, {
|
|
991
|
-
default: _(() => [...m[7] || (m[7] = [g("第三方信息共享清单", -1)])]),
|
|
992
|
-
_: 1
|
|
993
|
-
}), u(x, null, {
|
|
994
|
-
default: _(() => [...m[8] || (m[8] = [g("用户服务协议", -1)])]),
|
|
995
|
-
_: 1
|
|
996
|
-
}), u(x, null, {
|
|
997
|
-
default: _(() => [...m[9] || (m[9] = [g("隐私协议", -1)])]),
|
|
998
|
-
_: 1
|
|
999
|
-
})]),
|
|
1000
|
-
_: 1
|
|
1001
|
-
})]),
|
|
1002
|
-
LandingPageFooterContact: _(() => [u(Wt, {
|
|
1003
|
-
"beian-text": t.value,
|
|
1004
|
-
"beian-url": c.value,
|
|
1005
|
-
links: o.value
|
|
1006
|
-
}, null, 8, ["beian-text", "beian-url", "links"])]),
|
|
1007
|
-
_: 1
|
|
1008
|
-
})]));
|
|
1009
|
-
}
|
|
1010
|
-
}), Vn = /* @__PURE__ */ d(cs, [["__scopeId", "data-v-619d1298"]]), ls = {
|
|
1011
|
-
class: "hero"
|
|
1012
|
-
}, rs = {
|
|
1013
|
-
class: "heroContent"
|
|
1014
|
-
}, ds = {
|
|
1015
|
-
class: "heroHeading"
|
|
1016
|
-
}, us = {
|
|
1017
|
-
class: "heroTitle"
|
|
1018
|
-
}, _s = {
|
|
1019
|
-
class: "heroDescription"
|
|
1020
|
-
}, ps = {
|
|
1021
|
-
class: "heroActions"
|
|
1022
|
-
}, fs = {
|
|
1023
|
-
class: "heroImage"
|
|
1024
|
-
}, ms = /* @__PURE__ */ f({
|
|
1025
|
-
__name: "LandingPageHero",
|
|
1026
|
-
props: {
|
|
1027
|
-
title: {
|
|
1028
|
-
type: String,
|
|
1029
|
-
default: () => ""
|
|
1030
|
-
},
|
|
1031
|
-
description: {
|
|
1032
|
-
type: String,
|
|
1033
|
-
default: () => ""
|
|
1034
|
-
},
|
|
1035
|
-
heroSource: {
|
|
1036
|
-
type: String,
|
|
1037
|
-
default: () => ""
|
|
1038
|
-
}
|
|
1039
|
-
},
|
|
1040
|
-
setup(s) {
|
|
1041
|
-
const t = s;
|
|
1042
|
-
return (c, i) => (a(), n("main", ls, [e("div", rs, [e("div", ds, [e("h1", us, [h(c.$slots, "title", {}, () => [g(l(t.title), 1)], !0)])]), e("div", _s, [e("div", null, l(t.description), 1)]), e("div", ps, [h(c.$slots, "actions", {}, void 0, !0)])]), e("div", fs, [h(c.$slots, "heroSource", {}, void 0, !0)])]));
|
|
1043
|
-
}
|
|
1044
|
-
}), Hn = /* @__PURE__ */ d(ms, [["__scopeId", "data-v-38f97a3c"]]), gs = {
|
|
1045
|
-
class: "logos-list"
|
|
1046
|
-
}, hs = /* @__PURE__ */ f({
|
|
1047
|
-
__name: "LandingPageLogos",
|
|
1048
|
-
props: {
|
|
1049
|
-
title: {
|
|
1050
|
-
default: "Works with your technologies"
|
|
1051
|
-
},
|
|
1052
|
-
subTitle: {
|
|
1053
|
-
default: ""
|
|
1054
|
-
},
|
|
1055
|
-
logos: {
|
|
1056
|
-
default: () => [{
|
|
1057
|
-
name: "simple-icons:react"
|
|
1058
|
-
}, {
|
|
1059
|
-
name: "simple-icons:svelte"
|
|
1060
|
-
}, {
|
|
1061
|
-
name: "simple-icons:astro"
|
|
1062
|
-
}, {
|
|
1063
|
-
name: "simple-icons:css3"
|
|
1064
|
-
}, {
|
|
1065
|
-
name: "simple-icons:alpinedotjs"
|
|
1066
|
-
}, {
|
|
1067
|
-
name: "simple-icons:vercel"
|
|
1068
|
-
}]
|
|
1069
|
-
}
|
|
1070
|
-
},
|
|
1071
|
-
setup(s) {
|
|
1072
|
-
const t = s;
|
|
1073
|
-
return (c, i) => (a(), n("div", gs, [(a(!0), n(v, null, y(t.logos, (o, r) => (a(), C(L(P), {
|
|
1074
|
-
key: r,
|
|
1075
|
-
icon: o.name,
|
|
1076
|
-
class: "logo-icon"
|
|
1077
|
-
}, null, 8, ["icon"]))), 128))]));
|
|
1078
|
-
}
|
|
1079
|
-
}), Dn = /* @__PURE__ */ d(hs, [["__scopeId", "data-v-1a08e627"]]), vs = /* @__PURE__ */ f({
|
|
1080
|
-
__name: "LandingPagePageContent",
|
|
1081
|
-
props: {
|
|
1082
|
-
maxWidth: {
|
|
1083
|
-
default: "1380px"
|
|
1084
|
-
},
|
|
1085
|
-
center: {
|
|
1086
|
-
type: Boolean,
|
|
1087
|
-
default: !0
|
|
1088
|
-
},
|
|
1089
|
-
padding: {
|
|
1090
|
-
default: "0px 0px 40px 0px "
|
|
1091
|
-
},
|
|
1092
|
-
gap: {
|
|
1093
|
-
default: "90px"
|
|
1094
|
-
},
|
|
1095
|
-
flexDirection: {
|
|
1096
|
-
default: "column"
|
|
1097
|
-
}
|
|
1098
|
-
},
|
|
1099
|
-
setup(s) {
|
|
1100
|
-
const t = s, c = H(() => ({
|
|
1101
|
-
maxWidth: t.maxWidth,
|
|
1102
|
-
margin: t.center ? "0 auto" : void 0,
|
|
1103
|
-
width: "100%",
|
|
1104
|
-
padding: t.padding,
|
|
1105
|
-
display: "flex",
|
|
1106
|
-
flexDirection: t.flexDirection ?? "column",
|
|
1107
|
-
gap: t.gap
|
|
1108
|
-
}));
|
|
1109
|
-
return (i, o) => (a(), n("div", {
|
|
1110
|
-
class: "PageContent",
|
|
1111
|
-
style: w(c.value)
|
|
1112
|
-
}, [h(i.$slots, "default", {}, void 0, !0)], 4));
|
|
1113
|
-
}
|
|
1114
|
-
}), Mn = /* @__PURE__ */ d(vs, [["__scopeId", "data-v-00ec8180"]]), $s = {
|
|
1115
|
-
class: "Tabs"
|
|
1116
|
-
}, ys = {
|
|
1117
|
-
class: "tabs-root"
|
|
1118
|
-
}, bs = {
|
|
1119
|
-
role: "radiogroup",
|
|
1120
|
-
"aria-required": "false",
|
|
1121
|
-
dir: "ltr",
|
|
1122
|
-
class: "tabs-group",
|
|
1123
|
-
tabindex: "0"
|
|
1124
|
-
}, ks = ["id", "aria-checked", "data-state", "value", "tabindex", "onClick"], Cs = {
|
|
1125
|
-
key: 0,
|
|
1126
|
-
"data-state": "checked",
|
|
1127
|
-
class: "tabs-radio-icon"
|
|
1128
|
-
}, xs = ["for"], Ls = {
|
|
1129
|
-
key: 0,
|
|
1130
|
-
class: "tabs-badge"
|
|
1131
|
-
}, Ps = /* @__PURE__ */ f({
|
|
1132
|
-
__name: "LandingPageTabs",
|
|
1133
|
-
props: {
|
|
1134
|
-
tabs: {
|
|
1135
|
-
type: Array,
|
|
1136
|
-
required: !0
|
|
1137
|
-
},
|
|
1138
|
-
modelValue: {
|
|
1139
|
-
type: String,
|
|
1140
|
-
required: !0
|
|
1141
|
-
}
|
|
1142
|
-
},
|
|
1143
|
-
emits: ["update:modelValue"],
|
|
1144
|
-
setup(s) {
|
|
1145
|
-
const t = s;
|
|
1146
|
-
return (c, i) => (a(), n("div", $s, [e("div", ys, [e("div", bs, [(a(!0), n(v, null, y(t.tabs, (o) => (a(), n("div", {
|
|
1147
|
-
key: o.value,
|
|
1148
|
-
class: I(["tabs-item", {
|
|
1149
|
-
"tabs-item-active": o.value === s.modelValue
|
|
1150
|
-
}])
|
|
1151
|
-
}, [e("button", {
|
|
1152
|
-
id: o.value,
|
|
1153
|
-
type: "button",
|
|
1154
|
-
role: "radio",
|
|
1155
|
-
"aria-checked": o.value === s.modelValue,
|
|
1156
|
-
"data-state": o.value === s.modelValue ? "checked" : "unchecked",
|
|
1157
|
-
value: o.value,
|
|
1158
|
-
class: "tabs-radio",
|
|
1159
|
-
tabindex: o.value === s.modelValue ? 0 : -1,
|
|
1160
|
-
onClick: (r) => c.$emit("update:modelValue", o.value)
|
|
1161
|
-
}, [o.value === s.modelValue ? (a(), n("span", Cs)) : T("", !0)], 8, ks), e("label", {
|
|
1162
|
-
class: "tabs-label",
|
|
1163
|
-
for: o.value
|
|
1164
|
-
}, [e("span", null, l(o.label), 1), o.badge ? (a(), n("div", Ls, l(o.badge), 1)) : T("", !0)], 8, xs)], 2))), 128))])])]));
|
|
1165
|
-
}
|
|
1166
|
-
}), ws = /* @__PURE__ */ d(Ps, [["__scopeId", "data-v-9eb67a93"]]), Is = {
|
|
1167
|
-
class: "PriceGroup"
|
|
1168
|
-
}, Ss = /* @__PURE__ */ f({
|
|
1169
|
-
__name: "LandingPagePriceGroup",
|
|
1170
|
-
setup(s) {
|
|
1171
|
-
const t = k("subscribe-monthly");
|
|
1172
|
-
return (c, i) => (a(), n("div", Is, [u(ws, {
|
|
1173
|
-
modelValue: t.value,
|
|
1174
|
-
"onUpdate:modelValue": i[0] || (i[0] = (o) => t.value = o),
|
|
1175
|
-
tabs: [{
|
|
1176
|
-
value: "subscribe-monthly",
|
|
1177
|
-
label: "按月订阅"
|
|
1178
|
-
}, {
|
|
1179
|
-
value: "subscribe-yearly",
|
|
1180
|
-
label: "按年订阅",
|
|
1181
|
-
badge: "节省17%"
|
|
1182
|
-
}, {
|
|
1183
|
-
value: "pay-as-you-go",
|
|
1184
|
-
label: "按需付费"
|
|
1185
|
-
}]
|
|
1186
|
-
}, null, 8, ["modelValue"]), h(c.$slots, "default", {}, void 0, !0)]));
|
|
1187
|
-
}
|
|
1188
|
-
}), Un = /* @__PURE__ */ d(Ss, [["__scopeId", "data-v-43a35f55"]]), Ts = {
|
|
1189
|
-
class: "PricingCard"
|
|
1190
|
-
}, As = {
|
|
1191
|
-
class: "title"
|
|
1192
|
-
}, qs = {
|
|
1193
|
-
class: "titleText"
|
|
1194
|
-
}, Bs = {
|
|
1195
|
-
class: "description"
|
|
1196
|
-
}, zs = {
|
|
1197
|
-
class: "priceAndDiscount"
|
|
1198
|
-
}, Fs = {
|
|
1199
|
-
class: "price"
|
|
1200
|
-
}, Vs = {
|
|
1201
|
-
class: "discount"
|
|
1202
|
-
}, Hs = {
|
|
1203
|
-
style: {
|
|
1204
|
-
position: "relative",
|
|
1205
|
-
top: "3px"
|
|
1206
|
-
}
|
|
1207
|
-
}, Ds = {
|
|
1208
|
-
key: 1,
|
|
1209
|
-
class: "priceNotDiscount"
|
|
1210
|
-
}, Ms = {
|
|
1211
|
-
class: "cycle"
|
|
1212
|
-
}, Us = {
|
|
1213
|
-
class: "features"
|
|
1214
|
-
}, Gs = /* @__PURE__ */ f({
|
|
1215
|
-
__name: "LandingPagePricingCard",
|
|
1216
|
-
props: {
|
|
1217
|
-
loading: {
|
|
1218
|
-
type: Boolean,
|
|
1219
|
-
required: !1,
|
|
1220
|
-
default: () => !1
|
|
1221
|
-
},
|
|
1222
|
-
title: {
|
|
1223
|
-
type: String,
|
|
1224
|
-
required: !0
|
|
1225
|
-
},
|
|
1226
|
-
description: {
|
|
1227
|
-
type: String,
|
|
1228
|
-
required: !0
|
|
1229
|
-
},
|
|
1230
|
-
price: {
|
|
1231
|
-
type: Number,
|
|
1232
|
-
required: !0
|
|
1233
|
-
},
|
|
1234
|
-
discount: {
|
|
1235
|
-
type: Number,
|
|
1236
|
-
required: !1,
|
|
1237
|
-
default: () => 99
|
|
1238
|
-
},
|
|
1239
|
-
unit: {
|
|
1240
|
-
type: String,
|
|
1241
|
-
required: !0
|
|
1242
|
-
},
|
|
1243
|
-
cycle: {
|
|
1244
|
-
type: String,
|
|
1245
|
-
required: !0
|
|
1246
|
-
},
|
|
1247
|
-
highlight: {
|
|
1248
|
-
type: Boolean,
|
|
1249
|
-
required: !0
|
|
1250
|
-
},
|
|
1251
|
-
badge: {
|
|
1252
|
-
type: Object,
|
|
1253
|
-
required: !0
|
|
1254
|
-
},
|
|
1255
|
-
button: {
|
|
1256
|
-
type: Object,
|
|
1257
|
-
required: !0
|
|
1258
|
-
},
|
|
1259
|
-
orientation: {
|
|
1260
|
-
type: String,
|
|
1261
|
-
required: !0
|
|
1262
|
-
},
|
|
1263
|
-
align: {
|
|
1264
|
-
type: String,
|
|
1265
|
-
required: !0
|
|
1266
|
-
},
|
|
1267
|
-
features: {
|
|
1268
|
-
type: Array,
|
|
1269
|
-
required: !0
|
|
1270
|
-
}
|
|
1271
|
-
},
|
|
1272
|
-
emits: ["toPay"],
|
|
1273
|
-
setup(s, {
|
|
1274
|
-
emit: t
|
|
1275
|
-
}) {
|
|
1276
|
-
const c = t, i = s;
|
|
1277
|
-
function o() {
|
|
1278
|
-
c("toPay");
|
|
1279
|
-
}
|
|
1280
|
-
return (r, m) => (a(), n("div", Ts, [e("div", null, [e("div", As, [e("span", qs, l(i.title), 1), i.badge.label ? (a(), C(L(K), {
|
|
1281
|
-
key: 0,
|
|
1282
|
-
color: "arcoblue"
|
|
1283
|
-
}, {
|
|
1284
|
-
default: _(() => [g(l(i.badge.label), 1)]),
|
|
1285
|
-
_: 1
|
|
1286
|
-
})) : T("", !0)]), e("div", Bs, l(i.description), 1)]), e("div", zs, [i.discount !== null ? (a(), n(v, {
|
|
1287
|
-
key: 0
|
|
1288
|
-
}, [e("span", Fs, [e("span", null, l(i.price), 1), e("span", null, l(i.unit), 1)]), e("span", Vs, [e("span", Hs, l(i.discount), 1), e("span", null, l(i.unit), 1)])], 64)) : (a(), n("span", Ds, [e("span", null, l(i.price), 1), e("span", null, l(i.unit), 1)])), e("span", Ms, l(i.cycle), 1)]), e("div", Us, [(a(!0), n(v, null, y(i.features, (b, p) => (a(), C(U, {
|
|
1289
|
-
key: p,
|
|
1290
|
-
description: b.title
|
|
1291
|
-
}, null, 8, ["description"]))), 128))]), u(Qe, {
|
|
1292
|
-
class: "handle",
|
|
1293
|
-
type: "primary",
|
|
1294
|
-
loading: i.loading,
|
|
1295
|
-
disabled: !(i.discount || i.price),
|
|
1296
|
-
onClick: o
|
|
1297
|
-
}, {
|
|
1298
|
-
default: _(() => [g(l(i.button.label), 1)]),
|
|
1299
|
-
_: 1
|
|
1300
|
-
}, 8, ["loading", "disabled"])]));
|
|
1301
|
-
}
|
|
1302
|
-
}), Gn = /* @__PURE__ */ d(Gs, [["__scopeId", "data-v-0b730439"]]), js = {}, Es = {
|
|
1303
|
-
class: "PricingGrid"
|
|
1304
|
-
}, Os = {
|
|
1305
|
-
class: "content"
|
|
1306
|
-
};
|
|
1307
|
-
function Ns(s, t) {
|
|
1308
|
-
return a(), n("div", Es, [e("div", Os, [h(s.$slots, "default", {}, void 0, !0)])]);
|
|
1309
|
-
}
|
|
1310
|
-
const jn = /* @__PURE__ */ d(js, [["render", Ns], ["__scopeId", "data-v-1f26d3ee"]]), Ws = "data:image/svg+xml,%3csvg%20width='40'%20height='40'%20viewBox='0%200%2040%2040'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3crect%20width='40'%20height='40'%20rx='14'%20fill='url(%23paint0_linear_1212_46228)'/%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M17%2011C13.6863%2011%2011%2013.6863%2011%2017V23C11%2026.3137%2013.6863%2029%2017%2029H23C26.3137%2029%2029%2026.3137%2029%2023V17C29%2013.6863%2026.3137%2011%2023%2011H17ZM20.0002%2015.9091C20.4521%2015.9091%2020.8184%2016.2754%2020.8184%2016.7273V19.1818H23.2718C23.7237%2019.1818%2024.09%2019.5481%2024.09%2020C24.09%2020.4519%2023.7237%2020.8182%2023.2718%2020.8182H20.8184V23.2727C20.8184%2023.7246%2020.4521%2024.0909%2020.0002%2024.0909C19.5484%2024.0909%2019.182%2023.7246%2019.182%2023.2727V20.8182H16.7264C16.2745%2020.8182%2015.9082%2020.4519%2015.9082%2020C15.9082%2019.5481%2016.2745%2019.1818%2016.7264%2019.1818H19.182V16.7273C19.182%2016.2754%2019.5484%2015.9091%2020.0002%2015.9091Z'%20fill='white'/%3e%3cdefs%3e%3clinearGradient%20id='paint0_linear_1212_46228'%20x1='20'%20y1='0'%20x2='20'%20y2='40'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20stop-color='%235766F0'/%3e%3cstop%20offset='1'%20stop-color='%23591EFF'%20stop-opacity='0.81'/%3e%3c/linearGradient%3e%3c/defs%3e%3c/svg%3e", Zs = "data:image/svg+xml,%3csvg%20width='72'%20height='48'%20viewBox='0%200%2072%2048'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cmask%20id='mask0_1212_46227'%20style='mask-type:alpha'%20maskUnits='userSpaceOnUse'%20x='0'%20y='0'%20width='72'%20height='48'%3e%3crect%20width='72'%20height='48'%20fill='%23D9D9D9'/%3e%3c/mask%3e%3cg%20mask='url(%23mask0_1212_46227)'%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M16.3789%2010.0001C16.3789%209.10554%2017.1041%208.38037%2017.9986%208.38037C18.8932%208.38037%2019.6183%209.10554%2019.6183%2010.0001C19.6183%2011.0172%2019.6664%2011.9775%2019.7585%2012.8841C19.8489%2013.7741%2019.2007%2014.5688%2018.3107%2014.6592C17.4208%2014.7497%2016.626%2014.1015%2016.5356%2013.2115C16.4317%2012.1889%2016.3789%2011.1191%2016.3789%2010.0001ZM18.0425%2019.547C17.7074%2018.7176%2018.1082%2017.7736%2018.9377%2017.4385C19.7671%2017.1035%2020.7111%2017.5043%2021.0461%2018.3337C21.7781%2020.146%2022.7687%2021.655%2023.9669%2022.9209C24.5819%2023.5705%2024.5537%2024.5957%2023.9041%2025.2106C23.2544%2025.8256%2022.2293%2025.7975%2021.6143%2025.1478C20.1362%2023.5862%2018.9254%2021.7329%2018.0425%2019.547ZM26.9161%2029.0658C26.1211%2028.6558%2025.8089%2027.6789%2026.219%2026.8838C26.629%2026.0888%2027.6059%2025.7767%2028.4009%2026.1867C30.0125%2027.0178%2031.8088%2027.6689%2033.753%2028.1757C34.6186%2028.4013%2035.1374%2029.286%2034.9118%2030.1516C34.6861%2031.0172%2033.8015%2031.536%2032.9359%2031.3104C30.8126%2030.7569%2028.7832%2030.0287%2026.9161%2029.0658ZM39.1207%2032.4579C38.2329%2032.348%2037.6022%2031.5393%2037.7121%2030.6516C37.8219%2029.7638%2038.6306%2029.1331%2039.5183%2029.2429C41.4424%2029.4809%2043.4322%2029.6311%2045.4551%2029.7252C46.3487%2029.7668%2047.0394%2030.5249%2046.9978%2031.4185C46.9562%2032.312%2046.1981%2033.0027%2045.3045%2032.9611C43.2229%2032.8643%2041.1475%2032.7086%2039.1207%2032.4579ZM51.4468%2033.1103C50.5523%2033.1036%2049.8326%2032.373%2049.8393%2031.4785C49.846%2030.584%2050.5766%2029.8643%2051.4711%2029.871C51.8002%2029.8735%2052.129%2029.8753%2052.4574%2029.8767L49.0395%2026.4589C48.4537%2025.8731%2048.4537%2024.9233%2049.0395%2024.3376C49.6253%2023.7518%2050.5751%2023.7518%2051.1608%2024.3376L56.5556%2029.7323C57.5319%2030.7086%2057.5319%2032.2915%2056.5556%2033.2678L51.1608%2038.6626C50.5751%2039.2484%2049.6253%2039.2484%2049.0395%2038.6626C48.4537%2038.0768%2048.4537%2037.1271%2049.0395%2036.5413L52.4646%2033.1162C52.1261%2033.1148%2051.7868%2033.1129%2051.4468%2033.1103Z'%20fill='black'%20fill-opacity='0.9'/%3e%3c/g%3e%3c/svg%3e", Rs = {
|
|
1311
|
-
class: "section-header"
|
|
1312
|
-
}, Ks = {
|
|
1313
|
-
class: "title-section"
|
|
1314
|
-
}, Js = {
|
|
1315
|
-
class: "icon-title"
|
|
1316
|
-
}, Qs = ["src", "width", "height"], Ys = {
|
|
1317
|
-
class: "title"
|
|
1318
|
-
}, Xs = {
|
|
1319
|
-
class: "subtitle-section"
|
|
1320
|
-
}, ea = ["src", "width", "height"], ta = {
|
|
1321
|
-
class: "subtitle"
|
|
1322
|
-
}, sa = "图标", aa = "装饰线条", na = /* @__PURE__ */ f({
|
|
1323
|
-
__name: "LandingPageSectionHeader",
|
|
1324
|
-
props: {
|
|
1325
|
-
title: {},
|
|
1326
|
-
subtitle: {},
|
|
1327
|
-
icon: {
|
|
1328
|
-
default: Ws
|
|
1329
|
-
},
|
|
1330
|
-
iconWidth: {
|
|
1331
|
-
default: 40
|
|
1332
|
-
},
|
|
1333
|
-
iconHeight: {
|
|
1334
|
-
default: 40
|
|
1335
|
-
},
|
|
1336
|
-
dashline: {
|
|
1337
|
-
default: Zs
|
|
1338
|
-
},
|
|
1339
|
-
dashlineWidth: {
|
|
1340
|
-
default: 72
|
|
1341
|
-
},
|
|
1342
|
-
dashlineHeight: {
|
|
1343
|
-
default: 48
|
|
1344
|
-
}
|
|
1345
|
-
},
|
|
1346
|
-
setup(s) {
|
|
1347
|
-
const t = s;
|
|
1348
|
-
return (c, i) => (a(), n("div", Rs, [e("div", Ks, [e("div", Js, [e("img", {
|
|
1349
|
-
src: t.icon,
|
|
1350
|
-
alt: sa,
|
|
1351
|
-
width: t.iconWidth,
|
|
1352
|
-
height: t.iconHeight,
|
|
1353
|
-
loading: "lazy",
|
|
1354
|
-
decoding: "async",
|
|
1355
|
-
class: "icon"
|
|
1356
|
-
}, null, 8, Qs), e("span", Ys, l(s.title), 1)]), e("div", Xs, [e("img", {
|
|
1357
|
-
src: t.dashline,
|
|
1358
|
-
alt: aa,
|
|
1359
|
-
width: t.dashlineWidth,
|
|
1360
|
-
height: t.dashlineHeight,
|
|
1361
|
-
loading: "lazy",
|
|
1362
|
-
decoding: "async",
|
|
1363
|
-
class: "dashline"
|
|
1364
|
-
}, null, 8, ea), e("span", ta, l(s.subtitle), 1)])])]));
|
|
1365
|
-
}
|
|
1366
|
-
}), En = /* @__PURE__ */ d(na, [["__scopeId", "data-v-83ea7b70"]]), ia = {
|
|
1367
|
-
class: "sections-container"
|
|
1368
|
-
}, oa = {
|
|
1369
|
-
class: "container"
|
|
1370
|
-
}, ca = {
|
|
1371
|
-
class: "image-container"
|
|
1372
|
-
}, la = ["src", "alt"], ra = {
|
|
1373
|
-
class: "text-container"
|
|
1374
|
-
}, da = {
|
|
1375
|
-
class: "header"
|
|
1376
|
-
}, ua = {
|
|
1377
|
-
class: "features-list"
|
|
1378
|
-
}, _a = {
|
|
1379
|
-
class: "content"
|
|
1380
|
-
}, pa = {
|
|
1381
|
-
class: "feature-title"
|
|
1382
|
-
}, fa = /* @__PURE__ */ f({
|
|
1383
|
-
__name: "LandingPageSections",
|
|
1384
|
-
props: {
|
|
1385
|
-
title: {
|
|
1386
|
-
default: "什么是ShipAny"
|
|
1387
|
-
},
|
|
1388
|
-
subTitle: {
|
|
1389
|
-
default: "ShipAny是一个用于构建AI优先创业公司的无代码框架。在几分钟内构建美观、生产就绪的AI应用程序。"
|
|
1390
|
-
},
|
|
1391
|
-
imageUrl: {
|
|
1392
|
-
default: "https://picsum.photos/600/400?random=6"
|
|
1393
|
-
},
|
|
1394
|
-
imageAlt: {
|
|
1395
|
-
default: "ShipAny平台截图"
|
|
1396
|
-
},
|
|
1397
|
-
features: {
|
|
1398
|
-
default: () => [{
|
|
1399
|
-
title: "即用型模板",
|
|
1400
|
-
description: "从数十个生产就绪的AI模板中选择,快速开始。",
|
|
1401
|
-
color: "green",
|
|
1402
|
-
iconPath: "M5 13l4 4L19 7"
|
|
1403
|
-
}, {
|
|
1404
|
-
title: "专业设计",
|
|
1405
|
-
description: "由专业人士精心打造的UI组件,遵循最佳实践。",
|
|
1406
|
-
color: "blue",
|
|
1407
|
-
iconPath: "M13 10V3L4 14h7v7l9-11h-7z"
|
|
1408
|
-
}, {
|
|
1409
|
-
title: "内置部署",
|
|
1410
|
-
description: "几分钟内将您的AI应用程序部署到生产环境。",
|
|
1411
|
-
color: "purple",
|
|
1412
|
-
iconPath: "M9 12l2 2 4-4m5.618-4.016A11.955 11.955 0 0112 2.944a11.955 11.955 0 01-8.618 3.04A12.02 12.02 0 003 9c0 5.591 3.824 10.29 9 11.622 5.176-1.332 9-6.03 9-11.622 0-1.042-.133-2.052-.382-3.016z"
|
|
1413
|
-
}]
|
|
1414
|
-
},
|
|
1415
|
-
reverse: {
|
|
1416
|
-
type: Boolean,
|
|
1417
|
-
default: !1
|
|
1418
|
-
}
|
|
1419
|
-
},
|
|
1420
|
-
setup(s) {
|
|
1421
|
-
const t = s;
|
|
1422
|
-
return (c, i) => (a(), n("section", ia, [e("div", oa, [e("div", {
|
|
1423
|
-
class: I(["content-wrapper", {
|
|
1424
|
-
reverse: t.reverse
|
|
1425
|
-
}])
|
|
1426
|
-
}, [e("div", ca, [e("img", {
|
|
1427
|
-
src: t.imageUrl,
|
|
1428
|
-
alt: t.imageAlt,
|
|
1429
|
-
class: "image"
|
|
1430
|
-
}, null, 8, la)]), e("div", ra, [e("div", da, [u(M, null, {
|
|
1431
|
-
default: _(() => [g(l(t.title), 1)]),
|
|
1432
|
-
_: 1
|
|
1433
|
-
}), u(D, null, {
|
|
1434
|
-
default: _(() => [g(l(t.subTitle), 1)]),
|
|
1435
|
-
_: 1
|
|
1436
|
-
})]), e("div", ua, [(a(!0), n(v, null, y(t.features, (o, r) => (a(), n("div", {
|
|
1437
|
-
key: r,
|
|
1438
|
-
class: "feature-item"
|
|
1439
|
-
}, [e("div", {
|
|
1440
|
-
class: I(["icon-container", [`icon-${o.color}`]])
|
|
1441
|
-
}, [...i[0] || (i[0] = [e("div", {
|
|
1442
|
-
class: "dot"
|
|
1443
|
-
}, null, -1)])], 2), e("div", _a, [e("div", pa, l(o.title), 1), u(S, null, {
|
|
1444
|
-
default: _(() => [g(l(o.description), 1)]),
|
|
1445
|
-
_: 2
|
|
1446
|
-
}, 1024)])]))), 128))])])], 2)])]));
|
|
1447
|
-
}
|
|
1448
|
-
}), On = /* @__PURE__ */ d(fa, [["__scopeId", "data-v-ac2b71bb"]]), ma = {
|
|
1449
|
-
class: "Showcase"
|
|
1450
|
-
}, ga = ["onClick"], ha = ["src", "alt"], va = {
|
|
1451
|
-
class: "card-content"
|
|
1452
|
-
}, $a = {
|
|
1453
|
-
class: "card-title"
|
|
1454
|
-
}, ya = /* @__PURE__ */ f({
|
|
1455
|
-
__name: "LandingPageShowcase",
|
|
1456
|
-
props: {
|
|
1457
|
-
items: {},
|
|
1458
|
-
showControls: {
|
|
1459
|
-
type: Boolean,
|
|
1460
|
-
default: !0
|
|
1461
|
-
},
|
|
1462
|
-
columns: {
|
|
1463
|
-
default: 4
|
|
1464
|
-
},
|
|
1465
|
-
cardHeight: {
|
|
1466
|
-
default: 160
|
|
1467
|
-
},
|
|
1468
|
-
objectFit: {
|
|
1469
|
-
default: "cover"
|
|
1470
|
-
}
|
|
1471
|
-
},
|
|
1472
|
-
emits: ["cardClick"],
|
|
1473
|
-
setup(s, {
|
|
1474
|
-
emit: t
|
|
1475
|
-
}) {
|
|
1476
|
-
const c = s, i = t;
|
|
1477
|
-
function o(m) {
|
|
1478
|
-
i("cardClick", m);
|
|
1479
|
-
}
|
|
1480
|
-
const r = H(() => ({
|
|
1481
|
-
height: `${c.cardHeight}px`,
|
|
1482
|
-
objectFit: c.objectFit
|
|
1483
|
-
}));
|
|
1484
|
-
return (m, b) => (a(), n("div", ma, [(a(!0), n(v, null, y(c.items, (p, $) => (a(), n("div", {
|
|
1485
|
-
key: $,
|
|
1486
|
-
class: "showcase-card",
|
|
1487
|
-
onClick: (j) => o(p)
|
|
1488
|
-
}, [e("img", {
|
|
1489
|
-
src: p.image,
|
|
1490
|
-
alt: p.alt,
|
|
1491
|
-
style: w(r.value)
|
|
1492
|
-
}, null, 12, ha), e("div", va, [e("div", $a, l(p.title), 1), u(S, null, {
|
|
1493
|
-
default: _(() => [g(l(p.description), 1)]),
|
|
1494
|
-
_: 2
|
|
1495
|
-
}, 1024)])], 8, ga))), 128))]));
|
|
1496
|
-
}
|
|
1497
|
-
}), Nn = /* @__PURE__ */ d(ya, [["__scopeId", "data-v-381ed6a6"]]), ba = {
|
|
1498
|
-
class: "Stats"
|
|
1499
|
-
}, ka = {
|
|
1500
|
-
key: 0,
|
|
1501
|
-
class: "stats-label"
|
|
1502
|
-
}, Ca = {
|
|
1503
|
-
class: "stats-number"
|
|
1504
|
-
}, xa = {
|
|
1505
|
-
class: "stats-label"
|
|
1506
|
-
}, La = /* @__PURE__ */ f({
|
|
1507
|
-
__name: "LandingPageStats",
|
|
1508
|
-
props: {
|
|
1509
|
-
title: {
|
|
1510
|
-
default: "用户喜爱ShipAny"
|
|
1511
|
-
},
|
|
1512
|
-
subTitle: {
|
|
1513
|
-
default: "看看我们的客户怎么说"
|
|
1514
|
-
},
|
|
1515
|
-
stats: {
|
|
1516
|
-
default: () => [{
|
|
1517
|
-
title: "",
|
|
1518
|
-
number: "250+",
|
|
1519
|
-
label: "已启动的创业公司"
|
|
1520
|
-
}, {
|
|
1521
|
-
title: "",
|
|
1522
|
-
number: "30+",
|
|
1523
|
-
label: "AI模板"
|
|
1524
|
-
}, {
|
|
1525
|
-
title: "",
|
|
1526
|
-
number: "5",
|
|
1527
|
-
label: "星级评分"
|
|
1528
|
-
}]
|
|
1529
|
-
}
|
|
1530
|
-
},
|
|
1531
|
-
setup(s) {
|
|
1532
|
-
const t = s;
|
|
1533
|
-
return (c, i) => (a(), n("div", ba, [(a(!0), n(v, null, y(t.stats, (o, r) => (a(), n("div", {
|
|
1534
|
-
key: r,
|
|
1535
|
-
class: "stats-item"
|
|
1536
|
-
}, [o.title ? (a(), n("div", ka, l(o.title), 1)) : T("", !0), e("div", Ca, l(o.number), 1), e("div", xa, l(o.label), 1)]))), 128))]));
|
|
1537
|
-
}
|
|
1538
|
-
}), Wn = /* @__PURE__ */ d(La, [["__scopeId", "data-v-7aa9af80"]]), Pa = {
|
|
1539
|
-
class: "stepNumber"
|
|
1540
|
-
}, wa = {
|
|
1541
|
-
class: "count"
|
|
1542
|
-
}, Ia = {
|
|
1543
|
-
class: "stepTitle"
|
|
1544
|
-
}, Sa = /* @__PURE__ */ f({
|
|
1545
|
-
__name: "LandingPageSteps",
|
|
1546
|
-
props: {
|
|
1547
|
-
columns: {
|
|
1548
|
-
type: Number,
|
|
1549
|
-
default: 3
|
|
1550
|
-
},
|
|
1551
|
-
steps: {
|
|
1552
|
-
type: Array,
|
|
1553
|
-
default: () => [{
|
|
1554
|
-
title: "选择您的项目",
|
|
1555
|
-
description: "从我们的AI模板库中选择或使用我们的拖放构建器从头开始。"
|
|
1556
|
-
}, {
|
|
1557
|
-
title: "构建您的项目",
|
|
1558
|
-
description: "使用我们的直观编辑器自定义您的项目。添加您的品牌、内容并配置AI模型。"
|
|
1559
|
-
}, {
|
|
1560
|
-
title: "部署到生产环境",
|
|
1561
|
-
description: "一键将您的AI应用程序部署到我们的全球基础设施并开始服务客户。"
|
|
1562
|
-
}]
|
|
1563
|
-
}
|
|
1564
|
-
},
|
|
1565
|
-
setup(s) {
|
|
1566
|
-
const t = s;
|
|
1567
|
-
return (c, i) => (a(), n("div", {
|
|
1568
|
-
class: "Steps",
|
|
1569
|
-
style: w({
|
|
1570
|
-
gridTemplateColumns: `repeat(${t.columns}, 1fr)`
|
|
1571
|
-
// flexDirection: props.flexDirection,
|
|
1572
|
-
})
|
|
1573
|
-
}, [(a(!0), n(v, null, y(t.steps, (o, r) => (a(), n("div", {
|
|
1574
|
-
key: r,
|
|
1575
|
-
class: "stepItem"
|
|
1576
|
-
}, [e("div", Pa, [e("span", wa, l(r + 1), 1)]), e("h3", Ia, l(o.title), 1), u(S, null, {
|
|
1577
|
-
default: _(() => [g(l(o.description), 1)]),
|
|
1578
|
-
_: 2
|
|
1579
|
-
}, 1024)]))), 128))], 4));
|
|
1580
|
-
}
|
|
1581
|
-
}), Zn = /* @__PURE__ */ d(Sa, [["__scopeId", "data-v-1ecd9597"]]), Ta = {
|
|
1582
|
-
class: "Testimonial"
|
|
1583
|
-
}, Aa = {
|
|
1584
|
-
class: "user-info"
|
|
1585
|
-
}, qa = {
|
|
1586
|
-
class: "user-avatar"
|
|
1587
|
-
}, Ba = ["src", "alt"], za = {
|
|
1588
|
-
class: "user-name"
|
|
1589
|
-
}, Fa = {
|
|
1590
|
-
class: "user-title"
|
|
1591
|
-
}, Va = /* @__PURE__ */ f({
|
|
1592
|
-
__name: "LandingPageTestimonial",
|
|
1593
|
-
props: {
|
|
1594
|
-
testimonials: {
|
|
1595
|
-
default: () => []
|
|
1596
|
-
}
|
|
1597
|
-
},
|
|
1598
|
-
setup(s) {
|
|
1599
|
-
const t = s;
|
|
1600
|
-
return (c, i) => (a(), n("div", Ta, [(a(!0), n(v, null, y(t.testimonials, (o, r) => (a(), C(G, {
|
|
1601
|
-
key: r
|
|
1602
|
-
}, {
|
|
1603
|
-
default: _(() => [e("div", null, [u(S, null, {
|
|
1604
|
-
default: _(() => [g(l(`"${o.content}"`), 1)]),
|
|
1605
|
-
_: 2
|
|
1606
|
-
}, 1024)]), e("div", Aa, [e("span", qa, [e("img", {
|
|
1607
|
-
src: o.avatar,
|
|
1608
|
-
alt: o.name
|
|
1609
|
-
}, null, 8, Ba)]), e("div", null, [e("div", za, l(o.name), 1), e("div", Fa, l(o.title), 1)])])]),
|
|
1610
|
-
_: 2
|
|
1611
|
-
}, 1024))), 128))]));
|
|
1612
|
-
}
|
|
1613
|
-
}), Rn = /* @__PURE__ */ d(Va, [["__scopeId", "data-v-bc49d7bc"]]), Ha = ["href"], Da = /* @__PURE__ */ f({
|
|
1614
|
-
__name: "LandingPageTips",
|
|
1615
|
-
props: {
|
|
1616
|
-
href: {
|
|
1617
|
-
type: String,
|
|
1618
|
-
default: "/zh"
|
|
1619
|
-
},
|
|
1620
|
-
text: {
|
|
1621
|
-
type: String,
|
|
1622
|
-
default: "✨ 免费吉卜力AI艺术!立即注册获得3次免费创作!☝️"
|
|
1623
|
-
}
|
|
1624
|
-
},
|
|
1625
|
-
setup(s) {
|
|
1626
|
-
const t = s;
|
|
1627
|
-
return (c, i) => (a(), n("a", {
|
|
1628
|
-
href: t.href,
|
|
1629
|
-
class: "tips-link"
|
|
1630
|
-
}, l(t.text), 9, Ha));
|
|
1631
|
-
}
|
|
1632
|
-
}), Kn = /* @__PURE__ */ d(Da, [["__scopeId", "data-v-f5784dd1"]]), Ma = {}, Ua = {
|
|
1633
|
-
class: "sidebar"
|
|
1634
|
-
};
|
|
1635
|
-
function Ga(s, t) {
|
|
1636
|
-
return a(), n("div", Ua, [...t[0] || (t[0] = [O('<div data-v-251905ff><div class="sidebar-title" data-v-251905ff>On this page</div><a class="sidebar-link active" href="#page-title" data-v-251905ff>Introduction</a><a class="sidebar-link" href="#browse-by-feature" data-v-251905ff>Browse by feature</a><a class="sidebar-link" href="#implement-a-template" data-v-251905ff>Implement a template</a><a class="sidebar-link" href="#integrate-or-deploy-tiptap" data-v-251905ff>Integrate or deploy Tiptap</a><a class="sidebar-link" href="#manage-your-documents" data-v-251905ff>Manage your documents</a><a class="sidebar-link" href="#examples" data-v-251905ff>Examples</a><a class="sidebar-link" href="#guides" data-v-251905ff>Guides</a><a class="sidebar-link" href="#community" data-v-251905ff>Community</a></div>', 1)])]);
|
|
1637
|
-
}
|
|
1638
|
-
const Jn = /* @__PURE__ */ d(Ma, [["render", Ga], ["__scopeId", "data-v-251905ff"]]), ja = {
|
|
1639
|
-
class: "feature-card"
|
|
1640
|
-
}, Ea = {
|
|
1641
|
-
class: "feature-image"
|
|
1642
|
-
}, Oa = ["src", "alt"], Na = {
|
|
1643
|
-
class: "feature-title"
|
|
1644
|
-
}, Wa = {
|
|
1645
|
-
class: "feature-description"
|
|
1646
|
-
}, Za = {
|
|
1647
|
-
class: "feature-platforms"
|
|
1648
|
-
}, Ra = /* @__PURE__ */ f({
|
|
1649
|
-
__name: "LandingPageFeatureCard",
|
|
1650
|
-
props: {
|
|
1651
|
-
feature: {}
|
|
1652
|
-
},
|
|
1653
|
-
setup(s) {
|
|
1654
|
-
return (t, c) => (a(), n("div", ja, [e("div", Ea, [e("img", {
|
|
1655
|
-
src: s.feature.image,
|
|
1656
|
-
alt: s.feature.title,
|
|
1657
|
-
loading: "lazy",
|
|
1658
|
-
decoding: "async"
|
|
1659
|
-
}, null, 8, Oa)]), e("h3", Na, l(s.feature.title), 1), e("p", Wa, l(s.feature.description), 1), e("div", Za, [(a(!0), n(v, null, y(s.feature.platforms, (i) => (a(), C(L(P), {
|
|
1660
|
-
key: i.name,
|
|
1661
|
-
icon: i.icon,
|
|
1662
|
-
class: "platform-icon"
|
|
1663
|
-
}, null, 8, ["icon"]))), 128))])]));
|
|
1664
|
-
}
|
|
1665
|
-
}), Qn = /* @__PURE__ */ d(Ra, [["__scopeId", "data-v-474acd19"]]), Ka = {
|
|
1666
|
-
class: "feature-section-header"
|
|
1667
|
-
}, Ja = {
|
|
1668
|
-
class: "feature-section-title"
|
|
1669
|
-
}, Qa = ["innerHTML"], Ya = /* @__PURE__ */ f({
|
|
1670
|
-
__name: "LandingPageFeatureSectionHeader",
|
|
1671
|
-
props: {
|
|
1672
|
-
title: {},
|
|
1673
|
-
description: {}
|
|
1674
|
-
},
|
|
1675
|
-
setup(s) {
|
|
1676
|
-
return (t, c) => (a(), n("div", Ka, [e("h2", Ja, l(s.title), 1), e("p", {
|
|
1677
|
-
class: "feature-section-description",
|
|
1678
|
-
innerHTML: s.description
|
|
1679
|
-
}, null, 8, Qa)]));
|
|
1680
|
-
}
|
|
1681
|
-
}), Yn = /* @__PURE__ */ d(Ya, [["__scopeId", "data-v-8fe145ad"]]), Xa = {}, en = {
|
|
1682
|
-
class: "features-grid"
|
|
1683
|
-
};
|
|
1684
|
-
function tn(s, t) {
|
|
1685
|
-
return a(), n("div", en, [h(s.$slots, "default", {}, void 0, !0)]);
|
|
1686
|
-
}
|
|
1687
|
-
const Xn = /* @__PURE__ */ d(Xa, [["render", tn], ["__scopeId", "data-v-392f636b"]]), sn = {
|
|
1688
|
-
class: "testimonials-container"
|
|
1689
|
-
}, an = {
|
|
1690
|
-
class: "testimonial-header"
|
|
1691
|
-
}, nn = ["onClick"], on = {
|
|
1692
|
-
class: "user-avatar"
|
|
1693
|
-
}, cn = ["src", "alt"], ln = {
|
|
1694
|
-
class: "user-info"
|
|
1695
|
-
}, rn = {
|
|
1696
|
-
class: "user-name"
|
|
1697
|
-
}, dn = {
|
|
1698
|
-
class: "user-title"
|
|
1699
|
-
}, un = {
|
|
1700
|
-
class: "testimonial-content"
|
|
1701
|
-
}, _n = /* @__PURE__ */ f({
|
|
1702
|
-
__name: "LandingPageTestimonialCard",
|
|
1703
|
-
props: {
|
|
1704
|
-
testimonials: {}
|
|
1705
|
-
},
|
|
1706
|
-
setup(s) {
|
|
1707
|
-
function t(c) {
|
|
1708
|
-
c.link && window.open(c.link, "_blank");
|
|
1709
|
-
}
|
|
1710
|
-
return (c, i) => (a(), n("div", sn, [(a(!0), n(v, null, y(s.testimonials, (o) => (a(), n("div", {
|
|
1711
|
-
key: o.name,
|
|
1712
|
-
class: "testimonial-card"
|
|
1713
|
-
}, [e("div", an, [e("div", {
|
|
1714
|
-
class: I(["user-link", {
|
|
1715
|
-
"no-link": !o.link
|
|
1716
|
-
}]),
|
|
1717
|
-
onClick: (r) => t(o)
|
|
1718
|
-
}, [e("div", on, [e("img", {
|
|
1719
|
-
src: o.avatar,
|
|
1720
|
-
alt: o.name,
|
|
1721
|
-
width: "260",
|
|
1722
|
-
height: "260",
|
|
1723
|
-
loading: "lazy",
|
|
1724
|
-
decoding: "async",
|
|
1725
|
-
class: "avatar-image"
|
|
1726
|
-
}, null, 8, cn)]), e("div", ln, [e("span", rn, l(o.name), 1), e("span", dn, l(o.title), 1)])], 10, nn)]), e("p", un, l(o.content), 1)]))), 128))]));
|
|
1727
|
-
}
|
|
1728
|
-
}), ei = /* @__PURE__ */ d(_n, [["__scopeId", "data-v-6e10d8a8"]]), pn = {
|
|
1729
|
-
class: "tabs"
|
|
1730
|
-
}, fn = {
|
|
1731
|
-
class: "tabs-header"
|
|
1732
|
-
}, mn = ["onClick"], gn = {
|
|
1733
|
-
class: "tab-label"
|
|
1734
|
-
}, hn = {
|
|
1735
|
-
class: "tabs-content"
|
|
1736
|
-
}, vn = /* @__PURE__ */ f({
|
|
1737
|
-
__name: "LandingPageSectionTabs",
|
|
1738
|
-
props: {
|
|
1739
|
-
tabs: {},
|
|
1740
|
-
defaultActiveTab: {
|
|
1741
|
-
default: ""
|
|
1742
|
-
},
|
|
1743
|
-
modelValue: {
|
|
1744
|
-
default: ""
|
|
1745
|
-
}
|
|
1746
|
-
},
|
|
1747
|
-
emits: ["update:modelValue", "tabChange"],
|
|
1748
|
-
setup(s, {
|
|
1749
|
-
emit: t
|
|
1750
|
-
}) {
|
|
1751
|
-
var m;
|
|
1752
|
-
const c = s, i = t, o = k(c.modelValue || c.defaultActiveTab || ((m = c.tabs[0]) == null ? void 0 : m.id) || "");
|
|
1753
|
-
function r(b) {
|
|
1754
|
-
o.value = b, i("update:modelValue", b), i("tabChange", b);
|
|
1755
|
-
}
|
|
1756
|
-
return z(() => c.modelValue, (b) => {
|
|
1757
|
-
b && (o.value = b);
|
|
1758
|
-
}), z(() => c.defaultActiveTab, (b) => {
|
|
1759
|
-
b && !c.modelValue && (o.value = b);
|
|
1760
|
-
}), (b, p) => (a(), n("div", pn, [e("div", fn, [(a(!0), n(v, null, y(s.tabs, ($) => (a(), n("div", {
|
|
1761
|
-
key: $.id,
|
|
1762
|
-
class: I(["tab-item", {
|
|
1763
|
-
active: o.value === $.id
|
|
1764
|
-
}]),
|
|
1765
|
-
onClick: (j) => r($.id)
|
|
1766
|
-
}, [e("span", gn, l($.label), 1)], 10, mn))), 128))]), e("div", hn, [(a(!0), n(v, null, y(s.tabs, ($) => A((a(), n("div", {
|
|
1767
|
-
key: $.id,
|
|
1768
|
-
class: "tab-panel"
|
|
1769
|
-
}, [h(b.$slots, $.id, {
|
|
1770
|
-
tab: $
|
|
1771
|
-
}, () => [h(b.$slots, "default", {
|
|
1772
|
-
tab: $
|
|
1773
|
-
}, void 0, !0)], !0)])), [[N, o.value === $.id]])), 128))])]));
|
|
1774
|
-
}
|
|
1775
|
-
}), ti = /* @__PURE__ */ d(vn, [["__scopeId", "data-v-22e880ae"]]);
|
|
1776
|
-
export {
|
|
1777
|
-
En as A,
|
|
1778
|
-
Qe as B,
|
|
1779
|
-
G as C,
|
|
1780
|
-
S as D,
|
|
1781
|
-
On as E,
|
|
1782
|
-
Nn as F,
|
|
1783
|
-
Wn as G,
|
|
1784
|
-
Zn as H,
|
|
1785
|
-
Pe as I,
|
|
1786
|
-
Ve as J,
|
|
1787
|
-
Rn as K,
|
|
1788
|
-
wn as L,
|
|
1789
|
-
Kn as M,
|
|
1790
|
-
M as N,
|
|
1791
|
-
Jn as O,
|
|
1792
|
-
Qn as P,
|
|
1793
|
-
Yn as Q,
|
|
1794
|
-
Xn as R,
|
|
1795
|
-
D as S,
|
|
1796
|
-
ws as T,
|
|
1797
|
-
ei as U,
|
|
1798
|
-
ti as V,
|
|
1799
|
-
In as a,
|
|
1800
|
-
ne as b,
|
|
1801
|
-
ce as c,
|
|
1802
|
-
Ke as d,
|
|
1803
|
-
Sn as e,
|
|
1804
|
-
Tn as f,
|
|
1805
|
-
An as g,
|
|
1806
|
-
qn as h,
|
|
1807
|
-
F as i,
|
|
1808
|
-
Bn as j,
|
|
1809
|
-
zn as k,
|
|
1810
|
-
Fn as l,
|
|
1811
|
-
Vn as m,
|
|
1812
|
-
Wt as n,
|
|
1813
|
-
Yt as o,
|
|
1814
|
-
Hn as p,
|
|
1815
|
-
x as q,
|
|
1816
|
-
B as r,
|
|
1817
|
-
U as s,
|
|
1818
|
-
We as t,
|
|
1819
|
-
Dn as u,
|
|
1820
|
-
be as v,
|
|
1821
|
-
Mn as w,
|
|
1822
|
-
Un as x,
|
|
1823
|
-
Gn as y,
|
|
1824
|
-
jn as z
|
|
1825
|
-
};
|