fulinqingjie/public/output/server/chunks/build/QualificationHonor-WKOjdncI...

162 lines
13 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

import { _ as __nuxt_component_1 } from './CustomTitle-2eWUrzRV.mjs';
import { defineComponent, ref, mergeProps, unref, computed, watch, useSSRContext } from 'vue';
import { ssrRenderAttrs, ssrRenderComponent, ssrRenderClass, ssrInterpolate, ssrRenderAttr, ssrRenderList } from 'vue/server-renderer';
import { useRouter } from 'vue-router';
import { _ as _export_sfc, u as useRoute } from './server.mjs';
const _sfc_main$1 = /* @__PURE__ */ defineComponent({
__name: "CompanyProfile",
__ssrInlineRender: true,
props: {
title: {
type: String,
default: "公司简介"
},
text: {
type: String,
default: ""
},
isShowMore: {
type: Boolean,
default: true
},
/** 正文响应式字号 class不传则用默认12/15/18/22/24px。例关于我们页传 xl:text-[16px] 等 */
bodySizeClass: {
type: String,
default: ""
}
},
emits: ["onClickMore"],
setup(__props, { emit: __emit }) {
useRouter();
useRoute();
const props = __props;
const dataList = ref([]);
dataList.value = [
{
name: "注册资本",
value: "500",
unit: "万"
},
{
name: "专业团队规模",
value: "1000+",
unit: "人"
},
{
name: "承接项目",
value: "35+",
unit: "个"
},
{
name: "管理面积",
value: "950W㎡+",
unit: ""
},
{
name: "年营收(元)",
value: "2600",
unit: "万"
},
{
name: "服务网络覆盖",
value: "4+",
unit: "省市"
}
];
return (_ctx, _push, _parent, _attrs) => {
const _component_CustomTitle = __nuxt_component_1;
_push(`<div${ssrRenderAttrs(mergeProps({ class: "w-full" }, _attrs))} data-v-38961b7c><section class="company-intro py-[28px] sm:py-[36px] md:py-[48px] lg:py-[56px] xl:min-h-[50vh] xl:flex xl:flex-col xl:justify-center xl:pb-[113px] 2xl:min-h-[55vh] 2xl:pb-[113px] lg:pt-[0px]" data-v-38961b7c><div class="flex flex-col items-center layout" data-v-38961b7c>`);
_push(ssrRenderComponent(_component_CustomTitle, { title: __props.title }, null, _parent));
_push(`<div class="mt-[24px] sm:mt-[32px] md:mt-[44px] lg:mt-[58px] xl:mt-[83px] w-full flex flex-col lg:grid lg:grid-cols-[3fr_2fr] lg:items-center lg:gap-[40px] xl:gap-[48px] 2xl:gap-[56px]" data-v-38961b7c><div class="flex flex-col w-full lg:min-w-0" data-v-38961b7c><p class="${ssrRenderClass([props.bodySizeClass || "text-[12px] sm:text-[15px] md:text-[18px] lg:text-[22px] xl:text-[24px]", "whitespace-pre-line text-left text-[#333] leading-[1.6] sm:leading-[1.65] indent-[2em]"])}" data-v-38961b7c>${ssrInterpolate(__props.text)}</p>`);
if (__props.isShowMore) {
_push(`<button type="button" class="hidden lg:inline-flex mt-[20px] lg:mt-[24px] xl:mt-[28px] self-start items-center justify-center h-[36px] lg:h-[40px] xl:h-[44px] px-[20px] lg:px-[24px] xl:px-[28px] border border-[#1364AF] text-[15px] lg:text-[16px] xl:text-[17px] font-medium text-[#2D75B5] hover:bg-[#2D75B5] hover:text-white transition-colors duration-300" data-v-38961b7c> 了解更多 &gt;&gt; </button>`);
} else {
_push(`<!---->`);
}
_push(`</div><img${ssrRenderAttr("src", "/images/首页/logo-拷贝-2.png")} alt="企业简介" class="mt-[32px] sm:mt-[36px] md:mt-[40px] lg:mt-0 w-full max-w-[260px] sm:max-w-[300px] md:max-w-[320px] lg:max-w-full object-contain mx-auto lg:mx-0" data-v-38961b7c></div></div></section><section class="w-full bg-[url(&#39;/images/首页/矩形-17-拷贝.png&#39;)] bg-no-repeat bg-[length:100%_100%] bg-center pt-[36px] sm:pt-[44px] md:pt-[50px] lg:pt-[56px] xl:pt-[48px] 2xl:pt-[48px] pb-[36px] sm:pb-[44px] md:pb-[50px] lg:pb-[56px] xl:pb-[64px] 2xl:pb-[72px]" data-v-38961b7c><div class="layout" data-v-38961b7c><div class="data-grid grid grid-cols-[1.35fr_1fr_1fr] grid-rows-2 gap-y-[20px] sm:gap-y-[24px] md:gap-y-[26px] lg:gap-y-[28px] xl:gap-y-[32px] xl:flex xl:justify-between" data-v-38961b7c><!--[-->`);
ssrRenderList(unref(dataList), (data, index) => {
_push(`<div class="${ssrRenderClass([{ "data-item-first-col": index % 3 === 0 }, "flex flex-row items-center data-item"])}" data-v-38961b7c><div class="data-divider w-[1px] h-[36px] sm:h-[40px] md:h-[44px] lg:h-[50px] xl:h-[56px] bg-[#FFFFFF] bg-opacity-[0.3] shrink-0" data-v-38961b7c></div><div class="ml-[14px] sm:ml-[16px] md:ml-[18px] lg:ml-[20px] xl:ml-[24px] min-w-0" data-v-38961b7c><div data-v-38961b7c><span class="text-[24px] sm:text-[26px] md:text-[34px] lg:text-[42px] xl:text-[50px] text-[#FFFFFF] font-bold" data-v-38961b7c>${ssrInterpolate(data.value)}</span><span class="text-[11px] sm:text-[14px] md:text-[18px] lg:text-[24px] xl:text-[30px] text-[#FFFFFF]" data-v-38961b7c>${ssrInterpolate(data.unit)}</span></div><div class="text-[10px] sm:text-[12px] md:text-[13px] lg:text-[15px] xl:text-[16px] text-[#FFFFFF] mt-[2px] sm:mt-[3px] md:mt-[4px] lg:mt-[5px]" data-v-38961b7c>${ssrInterpolate(data.name)}</div></div></div>`);
});
_push(`<!--]--></div></div></section></div>`);
};
}
});
const _sfc_setup$1 = _sfc_main$1.setup;
_sfc_main$1.setup = (props, ctx) => {
const ssrContext = useSSRContext();
(ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("components/CompanyProfile.vue");
return _sfc_setup$1 ? _sfc_setup$1(props, ctx) : void 0;
};
const __nuxt_component_2 = /* @__PURE__ */ Object.assign(_export_sfc(_sfc_main$1, [["__scopeId", "data-v-38961b7c"]]), { __name: "CompanyProfile" });
const _sfc_main = /* @__PURE__ */ defineComponent({
__name: "QualificationHonor",
__ssrInlineRender: true,
props: {
isTimeline: { type: Boolean, default: false },
tabList: { default: () => [] },
honorsByCategory: { default: () => ({}) },
fullWidth: { type: Boolean, default: false }
},
setup(__props) {
const props = __props;
const activeTabId = ref(0);
const tabList = computed(() => props.tabList ?? []);
const certificateList = computed(() => {
const id = activeTabId.value;
const first = tabList.value[0];
if (!id && first) return props.honorsByCategory?.[first.id] ?? [];
return props.honorsByCategory?.[id] ?? [];
});
watch(
() => props.tabList,
(list) => {
const first = list?.[0];
if (first && activeTabId.value === 0) {
activeTabId.value = first.id;
}
},
{ immediate: true }
);
return (_ctx, _push, _parent, _attrs) => {
const _component_CustomTitle = __nuxt_component_1;
_push(`<div${ssrRenderAttrs(mergeProps({ class: "w-full" }, _attrs))} data-v-8acf2dc5><div class="pt-[40px] sm:pt-[44px] md:pt-[48px] lg:pt-[54px] xl:pt-[60px] pb-[40px] sm:pb-[44px] md:pb-[48px] lg:pb-[54px] xl:pb-[60px] flex flex-col items-center bg-white xl:min-h-full xl:justify-center" data-v-8acf2dc5>`);
_push(ssrRenderComponent(_component_CustomTitle, { title: "资质荣誉" }, null, _parent));
_push(`<div class="${ssrRenderClass([__props.fullWidth ? "px-0" : "layout", "mt-[24px] sm:mt-[28px] md:mt-[36px] lg:mt-[48px] xl:mt-[64px] w-full flex justify-center"])}" data-v-8acf2dc5><div class="flex flex-row items-center justify-center gap-[12px] sm:gap-[14px] md:gap-[14px] lg:gap-[12px] xl:gap-[12px] cursor-pointer flex-wrap" data-v-8acf2dc5><!--[-->`);
ssrRenderList(tabList.value, (tab, index) => {
_push(`<div class="${ssrRenderClass([{
"bg-[#F0F2F5] text-[#333333]": tab.id === activeTabId.value,
"border-[1px] border-[#F0F2F5] text-[#888888]": tab.id !== activeTabId.value
}, "px-[12px] py-[6px] sm:px-[14px] sm:py-[6px] md:px-[15px] md:py-[6px] lg:px-[15px] lg:py-[6px] xl:px-[15px] xl:py-[6px] rounded-full text-[12px] sm:text-[14px] md:text-[15px] lg:text-[16px] xl:text-[16px] text-center transition-all duration-300 ease-out hover:scale-105 hover:-translate-y-0.5 active:scale-[0.98]"])}" data-v-8acf2dc5>${ssrInterpolate(tab.name)}</div>`);
});
_push(`<!--]--></div></div>`);
if (!__props.isTimeline) {
_push(`<div class="${ssrRenderClass([__props.fullWidth ? "px-0" : "layout", "w-full flex flex-col items-center mt-[20px] sm:mt-[24px] md:mt-[28px] lg:mt-[36px] xl:mt-[43px] pt-[8px] pb-[8px] sm:pt-[10px] sm:pb-[10px] md:pt-[12px] md:pb-[12px] lg:pt-[14px] lg:pb-[14px] xl:pt-[16px] xl:pb-[16px]"])}" data-v-8acf2dc5><div class="w-full grid grid-cols-2 sm:grid-cols-3 gap-x-[12px] sm:gap-x-[16px] md:gap-x-[18px] lg:gap-x-[18px] xl:gap-x-[18px] gap-y-[16px] sm:gap-y-[20px] md:gap-y-[24px] lg:gap-y-[32px] xl:gap-y-[43px]" data-v-8acf2dc5><!--[-->`);
ssrRenderList(certificateList.value, (certificate, index) => {
_push(`<div class="${ssrRenderClass([{
"xl:ml-[50%]": certificateList.value.length % 2 !== 0 && index === certificateList.value.length - 2 || index === certificateList.value.length - 1
}, "flex flex-col items-center w-full"])}" data-v-8acf2dc5><div class="w-full aspect-[173/123] overflow-hidden group p-[10px] sm:p-[10px] md:p-[12px] lg:p-[10px] xl:p-[8px] shadow-[0px_5px_8px_0px_rgba(1,137,232,0.17)] transition-all duration-300 ease-out hover:scale-[1.03] hover:-translate-y-1 hover:shadow-[0px_8px_16px_0px_rgba(1,137,232,0.25)]" data-v-8acf2dc5><img draggable="false" class="object-cover w-full h-full shadow-xl transition-all duration-300 ease-in-out group-hover:scale-110 group-hover:opacity-90 honor-card-img"${ssrRenderAttr("src", certificate.url)}${ssrRenderAttr("alt", certificate.name)} data-v-8acf2dc5></div><span class="mt-[10px] sm:mt-[10px] md:mt-[11px] lg:mt-[10px] xl:mt-[9px] text-[12px] sm:text-[14px] md:text-[18px] lg:text-[21px] xl:text-[24px] text-[#333333]" data-v-8acf2dc5>${ssrInterpolate(certificate.name)}</span></div>`);
});
_push(`<!--]--></div></div>`);
} else {
_push(`<div class="${ssrRenderClass([__props.fullWidth ? "px-0" : "xl:w-auto layout", "relative flex flex-col items-center w-full mt-[20px] sm:mt-[24px] md:mt-[28px] lg:mt-[32px] xl:mt-[40px] overflow-visible"])}" data-v-8acf2dc5><div class="absolute top-[44px] sm:top-[53px] md:top-[63px] lg:top-[74px] xl:top-[85px] left-0 right-0 z-[5] h-[1px] bg-[#EEF5FF]" data-v-8acf2dc5></div><div class="timeline-scroll w-full flex flex-row items-stretch justify-start sm:justify-center gap-[20px] sm:gap-[20px] md:gap-[24px] lg:gap-[32px] xl:gap-[40px] overflow-x-auto overflow-y-visible pt-[12px] pb-[24px] sm:pt-[14px] sm:pb-[24px] md:pt-[16px] md:pb-[28px] lg:pt-[18px] lg:pb-[28px] xl:pt-[20px] xl:pb-[32px] pl-[32px] pr-[32px] sm:pl-0 sm:pr-0" data-v-8acf2dc5><!--[-->`);
ssrRenderList(certificateList.value, (certificate, idx) => {
_push(`<div class="flex shrink-0 flex-col items-center w-[189px] sm:w-[220px] md:w-[270px] lg:w-[320px] xl:w-[378px]" data-v-8acf2dc5><div class="text-[18px] sm:text-[22px] md:text-[28px] lg:text-[34px] xl:text-[38px] font-bold text-[#336DF6] leading-none text-center w-full" data-v-8acf2dc5>${ssrInterpolate(certificate.year)}</div><div class="mt-[6px] sm:mt-[8px] w-[15px] h-[15px] sm:w-[18px] sm:h-[18px] md:w-[22px] md:h-[22px] lg:w-[28px] lg:h-[28px] xl:w-[38px] xl:h-[38px] shrink-0 rounded-full bg-[#336DF6] border-[4px] sm:border-[4px] md:border-4 xl:border-[8px] border-[#DDEAFF] relative z-10" data-v-8acf2dc5></div><div class="flex justify-center w-full z-[0]" data-v-8acf2dc5><div class="w-[1px] z-[0] xl:w-[2px] shrink-0 h-[40px] sm:h-[48px] md:h-[60px] lg:h-[68px] xl:h-[76px] bg-[#336DF6]" data-v-8acf2dc5></div></div><div class="relative z-[2] w-full max-w-[189px] sm:max-w-[220px] md:max-w-[270px] lg:max-w-[320px] xl:max-w-[378px] h-[134px] sm:h-[156px] md:h-[192px] lg:h-[227px] xl:h-[268px] flex items-center justify-center rounded-none group overflow-hidden px-[8px] py-[6px] sm:px-[12px] sm:py-[8px] md:px-[16px] md:py-[10px] lg:px-[20px] lg:py-[14px] xl:px-[25px] xl:py-[18px] shadow-[0px_6px_12px_0px_rgba(1,137,232,0.15)] md:shadow-[0px_8px_14px_0px_rgba(1,137,232,0.16)] xl:shadow-[0px_12px_20px_1px_rgba(1,137,232,0.17)] transition-all duration-300 ease-out hover:scale-[1.03] hover:-translate-y-1 hover:shadow-[0px_16px_28px_2px_rgba(1,137,232,0.22)]" data-v-8acf2dc5><img draggable="false" class="object-cover w-full h-full rounded-none transition-all duration-300 ease-in-out honor-card-img group-hover:scale-105 group-hover:opacity-90"${ssrRenderAttr("src", certificate.url)}${ssrRenderAttr("alt", certificate.name)} data-v-8acf2dc5></div></div>`);
});
_push(`<!--]--></div></div>`);
}
_push(`</div></div>`);
};
}
});
const _sfc_setup = _sfc_main.setup;
_sfc_main.setup = (props, ctx) => {
const ssrContext = useSSRContext();
(ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("components/QualificationHonor.vue");
return _sfc_setup ? _sfc_setup(props, ctx) : void 0;
};
const __nuxt_component_3 = /* @__PURE__ */ Object.assign(_export_sfc(_sfc_main, [["__scopeId", "data-v-8acf2dc5"]]), { __name: "QualificationHonor" });
export { __nuxt_component_2 as _, __nuxt_component_3 as a };
//# sourceMappingURL=QualificationHonor-WKOjdncI.mjs.map