From 0231109223d2ab5995d0d6e721ef4ea1ad8cccfd Mon Sep 17 00:00:00 2001
From: wupengfei <834520024@qq.com>
Date: 星期五, 14 二月 2025 09:13:57 +0800
Subject: [PATCH] Merge branch 'master' of http://120.26.58.240:8888/r/flexJobMiniApp
---
apps/bMiniApp/src/assets/flexJob/icon-share.png | 0
apps/bMiniApp/src/assets/home/icon-localtion.png | 0
patches/@nutui__nutui-taro@4.3.13.patch | 12 +
apps/bMiniApp/src/constants/router.ts | 2
apps/bMiniApp/src/subpackages/flexJob/flexJobDetail/flexJobDetail.vue | 114 ++++++++++++++
apps/cMiniApp/project.private.config.json | 7
apps/bMiniApp/project.config.json | 3
apps/bMiniApp/project.private.config.json | 7
pnpm-lock.yaml | 18 -
apps/bMiniApp/src/app.config.ts | 4
apps/bMiniApp/src/assets/flexJob/icon-attention-lg-active.png | 0
packages/components/src/Card/FlexJobTopView.vue | 88 +++++++++++
packages/components/src/index.ts | 1
apps/bMiniApp/src/assets/flexJob/icon-attention-lg.png | 0
packages/components/src/Card/FlexJobCard.vue | 81 +--------
apps/bMiniApp/src/assets/home/icon-logo.png | 0
apps/bMiniApp/src/pages/home/index.vue | 70 ++++++--
apps/bMiniApp/src/pages/home/HomeQueryMenuView.vue | 40 ++++
apps/bMiniApp/src/subpackages/flexJob/flexJobDetail/flexJobDetail.config.ts | 3
packages/components/src/Menu/QueryMenuItem.vue | 4
20 files changed, 350 insertions(+), 104 deletions(-)
diff --git a/apps/bMiniApp/project.config.json b/apps/bMiniApp/project.config.json
index 75e8651..b1bd9c7 100644
--- a/apps/bMiniApp/project.config.json
+++ b/apps/bMiniApp/project.config.json
@@ -51,5 +51,6 @@
"ignore": [],
"include": []
},
- "appid": "wx88251c84f5cd886b"
+ "appid": "wx88251c84f5cd886b",
+ "projectname": "bMiniApp"
}
\ No newline at end of file
diff --git a/apps/bMiniApp/project.private.config.json b/apps/bMiniApp/project.private.config.json
index 390553f..3ff7cda 100644
--- a/apps/bMiniApp/project.private.config.json
+++ b/apps/bMiniApp/project.private.config.json
@@ -9,6 +9,13 @@
"miniprogram": {
"list": [
{
+ "name": "鐏靛伐璇︽儏",
+ "pathName": "subpackages/flexJob/flexJobDetail/flexJobDetail",
+ "query": "id=c4cfe028-23e7-0be8-ee56-3a11e3743b9d",
+ "launchMode": "default",
+ "scene": null
+ },
+ {
"name": "鎴戠殑鏀惰棌",
"pathName": "subpackages/mine/mineFavorites/mineFavorites",
"query": "",
diff --git a/apps/bMiniApp/src/app.config.ts b/apps/bMiniApp/src/app.config.ts
index 2a85fdd..8e23d6e 100644
--- a/apps/bMiniApp/src/app.config.ts
+++ b/apps/bMiniApp/src/app.config.ts
@@ -82,6 +82,10 @@
root: 'subpackages/city',
pages: ['citySelect/citySelect'],
},
+ {
+ root: 'subpackages/flexJob',
+ pages: ['flexJobDetail/flexJobDetail'],
+ },
],
// preloadRule: {
// 'pages/mine/index': {
diff --git a/apps/bMiniApp/src/assets/flexJob/icon-attention-lg-active.png b/apps/bMiniApp/src/assets/flexJob/icon-attention-lg-active.png
new file mode 100644
index 0000000..08f2982
--- /dev/null
+++ b/apps/bMiniApp/src/assets/flexJob/icon-attention-lg-active.png
Binary files differ
diff --git a/apps/bMiniApp/src/assets/flexJob/icon-attention-lg.png b/apps/bMiniApp/src/assets/flexJob/icon-attention-lg.png
new file mode 100644
index 0000000..34a1588
--- /dev/null
+++ b/apps/bMiniApp/src/assets/flexJob/icon-attention-lg.png
Binary files differ
diff --git a/apps/bMiniApp/src/assets/flexJob/icon-share.png b/apps/bMiniApp/src/assets/flexJob/icon-share.png
new file mode 100644
index 0000000..546e699
--- /dev/null
+++ b/apps/bMiniApp/src/assets/flexJob/icon-share.png
Binary files differ
diff --git a/apps/bMiniApp/src/assets/home/icon-localtion.png b/apps/bMiniApp/src/assets/home/icon-localtion.png
new file mode 100644
index 0000000..71784b5
--- /dev/null
+++ b/apps/bMiniApp/src/assets/home/icon-localtion.png
Binary files differ
diff --git a/apps/bMiniApp/src/assets/home/icon-logo.png b/apps/bMiniApp/src/assets/home/icon-logo.png
index 084a4b0..ec03de3 100644
--- a/apps/bMiniApp/src/assets/home/icon-logo.png
+++ b/apps/bMiniApp/src/assets/home/icon-logo.png
Binary files differ
diff --git a/apps/bMiniApp/src/constants/router.ts b/apps/bMiniApp/src/constants/router.ts
index 2be53e1..330c92a 100644
--- a/apps/bMiniApp/src/constants/router.ts
+++ b/apps/bMiniApp/src/constants/router.ts
@@ -10,6 +10,8 @@
workbenches = '/pages/workbenches/workbenches',
editRichContent = '/subpackages/editRichContent/editRichContent',
+ flexJobDetail = '/subpackages/flexJob/flexJobDetail/flexJobDetail',
+
// userInfo = '/subpackages/setting/userInfo/userInfo',
// setting = '/subpackages/setting/setting/setting',
// privacyAgreement = '/subpackages/setting/privacyAgreement/privacyAgreement',
diff --git a/apps/bMiniApp/src/pages/home/HomeQueryMenuView.vue b/apps/bMiniApp/src/pages/home/HomeQueryMenuView.vue
index 26a6979..4c5cdf1 100644
--- a/apps/bMiniApp/src/pages/home/HomeQueryMenuView.vue
+++ b/apps/bMiniApp/src/pages/home/HomeQueryMenuView.vue
@@ -1,13 +1,28 @@
<template>
<QueryMenuView @close="handleReset" @confirm="emit('close')" cancelText="閲嶇疆">
<div class="home-query-menu-view">
- <QueryMenuItem title="缁撶畻鏂瑰紡">
+ <QueryMenuItem title="鎬у埆">
<ProRadio v-model="query.gender" :value-enum="GenderText" show-all-btn></ProRadio>
</QueryMenuItem>
- <QueryMenuItem title="鍛樺伐绂忓埄">
+ <QueryMenuItem title="韬唤">
<ProRadio v-model="query.gender" :value-enum="GenderText" show-all-btn></ProRadio>
</QueryMenuItem>
- <QueryMenuItem title="鎬у埆瑕佹眰">
+ <QueryMenuItem>
+ <template #title>
+ <div class="rang-title-wrapper">
+ <div class="rang-title">骞撮緞</div>
+ <div class="rang-value">{{ query.age[0] }} - {{ query.age[1] }} 宀�</div>
+ </div>
+ </template>
+ <nut-range
+ v-model="query.age"
+ range
+ :min="15"
+ :max="65"
+ class="home-query-menu-range"
+ ></nut-range>
+ </QueryMenuItem>
+ <QueryMenuItem title="璧勬牸璇佷功">
<ProRadio v-model="query.gender" :value-enum="GenderText" show-all-btn></ProRadio>
</QueryMenuItem>
</div>
@@ -33,12 +48,14 @@
const query = defineModel<{
gender: number | string;
+ age: number[];
}>('query');
const DefaultQuery = {
...query.value,
};
+console.log('query: ', query.value);
function handleReset() {
for (const key in DefaultQuery) {
query.value[key] = DefaultQuery[key];
@@ -53,5 +70,22 @@
max-height: 400px;
padding: 30px;
overflow: auto;
+
+ .home-query-menu-range {
+ padding: 36px 0;
+ }
+
+ .rang-title-wrapper {
+ display: flex;
+ align-items: center;
+
+ .rang-title {
+ margin-right: 36px;
+ }
+
+ .rang-value {
+ color: boleGetCssVar('color', 'primary');
+ }
+ }
}
</style>
diff --git a/apps/bMiniApp/src/pages/home/index.vue b/apps/bMiniApp/src/pages/home/index.vue
index 637899a..4c9777e 100644
--- a/apps/bMiniApp/src/pages/home/index.vue
+++ b/apps/bMiniApp/src/pages/home/index.vue
@@ -6,20 +6,15 @@
</div>
</template>
<div class="home-header">
- <!-- <div class="home-searchbar-wrapper">
- <div class="searchbar-container">
- <BlSearchbar
- v-model.trim="searchValue"
- placeholder="鎼滅储浠诲姟"
- @search="handleSearch"
- @change="handleSearch"
- ></BlSearchbar>
+ <div class="home-searchbar-wrapper">
+ <div class="city-btn-wrapper">
+ <div class="city-btn" @click="goCitySelect">
+ <img :src="IconLocaltion" class="city-btn-icon" />
+ <div class="city-btn-text">{{ locationCity }}</div>
+ </div>
</div>
- <div class="city-btn" @click="goCitySelect">
- <img :src="IconLocaltion" class="city-btn-icon" />
- <div class="city-btn-text">{{ locationCity }}</div>
- </div>
- </div> -->
+ <div class="reset-localtion">閲嶆柊瀹氫綅</div>
+ </div>
<div class="home-banner-wrapper">
<nut-swiper :auto-play="3000">
<nut-swiper-item v-for="(item, index) in list" :key="index">
@@ -63,7 +58,7 @@
:key="queryState.orderType"
>
<template #renderItem="{ item }">
- <!-- <TaskCard @click="goTaskDetail(item)" /> -->
+ <FlexJobCard @click="goFlexJobDetail(item)" :showFooterLeft="false" />
</template>
</InfiniteLoading>
</PageLayoutWithBg>
@@ -76,7 +71,7 @@
import Taro from '@tarojs/taro';
import { LocationUtils, trim } from '@12333/utils';
import IconLogo from '@/assets/home/icon-logo.png';
-import { ProTabs, ProTabPane } from '@12333/components';
+import { ProTabs, ProTabPane, FlexJobCard } from '@12333/components';
import { HomeOrderType } from './constants';
import { useInfiniteLoading } from '@12333/hooks';
import { OrderInputType, Gender } from '@12333/constants';
@@ -84,7 +79,7 @@
import _ from 'lodash';
import HomeQueryMenuView from './HomeQueryMenuView.vue';
import HomeQueryPositionMenuView from './HomeQueryPositionMenuView.vue';
-import IconLocaltion from '@/assets/task/icon-localtion.png';
+import IconLocaltion from '@/assets/home/icon-localtion.png';
const { locationCity } = useUser();
@@ -92,6 +87,7 @@
const queryMenuState = reactive({
gender: '' as any as Gender,
+ age: [15, 65],
});
const queryPositionState = reactive({
@@ -148,6 +144,12 @@
function handleMenuSelectPositionClose() {
selectPositionItem.value?.toggle?.();
}
+
+function goFlexJobDetail(item: API.FrontOrderList) {
+ Taro.navigateTo({
+ url: `${RouterPath.flexJobDetail}?id=${item.id}`,
+ });
+}
</script>
<style lang="scss">
@@ -167,14 +169,40 @@
margin-left: 24px;
}
- .city-btn {
+ .home-searchbar-wrapper {
+ padding: 32px 0 28px;
display: flex;
align-items: center;
- .city-btn-text {
- max-width: 200px;
- @include ellipsis;
- margin-right: 12px;
+ .city-btn-wrapper {
+ flex: 1;
+ min-width: 0;
+
+ .city-btn {
+ display: flex;
+ align-items: center;
+ padding-right: 36px;
+ color: boleGetCssVar('text-color', 'primary');
+
+ .city-btn-icon {
+ width: 40px;
+ height: 40px;
+ }
+
+ .city-btn-text {
+ max-width: 200px;
+ @include ellipsis;
+ margin-left: 12px;
+ font-size: 30px;
+ }
+ }
+ }
+
+ .reset-localtion {
+ font-weight: 400;
+ font-size: 24px;
+ color: boleGetCssVar('color', 'primary');
+ line-height: 28px;
}
}
diff --git a/apps/bMiniApp/src/subpackages/flexJob/flexJobDetail/flexJobDetail.config.ts b/apps/bMiniApp/src/subpackages/flexJob/flexJobDetail/flexJobDetail.config.ts
new file mode 100644
index 0000000..305fdb1
--- /dev/null
+++ b/apps/bMiniApp/src/subpackages/flexJob/flexJobDetail/flexJobDetail.config.ts
@@ -0,0 +1,3 @@
+export default definePageConfig({
+ disableScroll: true,
+});
diff --git a/apps/bMiniApp/src/subpackages/flexJob/flexJobDetail/flexJobDetail.vue b/apps/bMiniApp/src/subpackages/flexJob/flexJobDetail/flexJobDetail.vue
new file mode 100644
index 0000000..054ed39
--- /dev/null
+++ b/apps/bMiniApp/src/subpackages/flexJob/flexJobDetail/flexJobDetail.vue
@@ -0,0 +1,114 @@
+<template>
+ <PageLayoutWithBg class="flexJobDetail-page-wrapper" title="鐏靛伐璇︽儏" :need-auth="false">
+ <LoadingLayout :loading="isLoading" :error="isError" :loadError="refetch">
+ <ContentScrollView style="background-color: transparent">
+ <FlexJobTopView size="small" class="flexJobDetail-top" />
+ <div class="flexJobDetail-contact-info">
+ <div class="flexJobDetail-contact-info-item">
+ <div class="flexJobDetail-contact-info-item-label">鎵嬫満鍙凤細</div>
+ <div class="flexJobDetail-contact-info-item-text">
+ {{ isCollapse ? '13333333333' : '绔嬪嵆鑱旂郴鍚庡彲鏌ョ湅' }}
+ </div>
+ </div>
+ <div class="flexJobDetail-contact-info-item">
+ <div class="flexJobDetail-contact-info-item-label">韬唤璇佸彿锛�</div>
+ <div class="flexJobDetail-contact-info-item-text">
+ {{ isCollapse ? '330902199909******' : '绔嬪嵆鑱旂郴鍚庡彲鏌ョ湅' }}
+ </div>
+ </div>
+ </div>
+ </ContentScrollView>
+ <PageFooter>
+ <PageFooterAction
+ :icon="IconShare"
+ text="鍒嗕韩"
+ :isFlex="false"
+ openType="share"
+ ></PageFooterAction>
+ <PageFooterAction
+ :icon="IconAttentionActive"
+ text="鏀惰棌"
+ :isFlex="false"
+ ></PageFooterAction>
+ <PageFooterBtn type="primary" @click="toggle">绔嬪嵆鑱旂郴</PageFooterBtn>
+ </PageFooter>
+ </LoadingLayout>
+ </PageLayoutWithBg>
+</template>
+
+<script setup lang="ts">
+import Taro from '@tarojs/taro';
+import { useQuery } from '@tanstack/vue-query';
+import * as orderServices from '@12333/services/api/Order';
+import { FlexJobTopView } from '@12333/components';
+import IconShare from '@/assets/flexJob/icon-share.png';
+import IconAttention from '@/assets/flexJob/icon-attention-lg.png';
+import IconAttentionActive from '@/assets/flexJob/icon-attention-lg-active.png';
+import { useToggle } from 'senin-mini/hooks';
+
+defineOptions({
+ name: 'flexJobDetail',
+});
+
+const router = Taro.useRouter();
+const taskId = router.params?.id ?? '';
+
+const {
+ isLoading,
+ isError,
+ data: detail,
+ refetch,
+} = useQuery({
+ queryKey: ['orderServices/getOrdeForDetail', taskId],
+ queryFn: async () => {
+ return await orderServices.getOrdeForDetail(
+ { id: taskId },
+ {
+ showLoading: false,
+ }
+ );
+ },
+ placeholderData: () => ({} as API.OrderInfoDto),
+});
+
+const { isCollapse, toggle } = useToggle();
+</script>
+
+<style lang="scss">
+@import '@/styles/common.scss';
+
+.flexJobDetail-page-wrapper {
+ .flexJobDetail-top {
+ margin-bottom: 20px;
+ }
+
+ .flexJobDetail-contact-info {
+ padding-left: 130px;
+
+ .flexJobDetail-contact-info-item {
+ display: flex;
+ align-items: center;
+ font-weight: 400;
+ font-size: 24px;
+ line-height: 28px;
+ margin-bottom: 22px;
+
+ &:last-child {
+ margin-bottom: 0;
+ }
+
+ .flexJobDetail-contact-info-item-label {
+ color: boleGetCssVar('text-color', 'secondary');
+ margin-right: 8px;
+ }
+
+ .flexJobDetail-contact-info-item-text {
+ color: boleGetCssVar('text-color', 'primary');
+ flex: 1;
+ min-width: 0;
+ @include ellipsis;
+ }
+ }
+ }
+}
+</style>
diff --git a/apps/cMiniApp/project.private.config.json b/apps/cMiniApp/project.private.config.json
index 53ae87f..73439be 100644
--- a/apps/cMiniApp/project.private.config.json
+++ b/apps/cMiniApp/project.private.config.json
@@ -9,6 +9,13 @@
"miniprogram": {
"list": [
{
+ "name": "鍩庡競閫夋嫨",
+ "pathName": "subpackages/city/citySelect/citySelect",
+ "query": "",
+ "launchMode": "default",
+ "scene": null
+ },
+ {
"name": "鏈熸湜宀椾綅",
"pathName": "subpackages/curriculum/expectPosition/expectPosition",
"query": "",
diff --git a/packages/components/src/Card/FlexJobCard.vue b/packages/components/src/Card/FlexJobCard.vue
index 6218572..ed27a18 100644
--- a/packages/components/src/Card/FlexJobCard.vue
+++ b/packages/components/src/Card/FlexJobCard.vue
@@ -1,19 +1,6 @@
<template>
<div class="flexJob-card-wrapper">
- <div class="flexJob-card-top-wrapper">
- <UserAvatar :size="60" class="flexJob-card-top-avatar" />
- <div class="flexJob-card-top-info">
- <div class="flexJob-card-top-info-item">
- <div class="flexJob-card-top-info-name">{{ '娲嬫磱' }}</div>
- <div class="flexJob-card-top-info-gender">
- <img v-if="1" :src="IconMale" class="flexJob-card-top-info-gender-icon" />
- <img v-else :src="IconFemale" class="flexJob-card-top-info-gender-icon" />
- </div>
- <div class="flexJob-card-top-info-auth">{{ '宸插疄鍚�' }}</div>
- </div>
- <div class="flexJob-card-top-info-detail">{{ '26宀� | 闈炲鐢� | 鏈 | 涓婂矖121娆�' }}</div>
- </div>
- </div>
+ <FlexJobTopView />
<div class="flexJob-card-done-list">
{{
'鍋氳繃锛氬鎴挎湇鍔″憳銆佸鎴挎湇鍔″憳銆佸鎴垮鎴挎湇鍔″憳銆佸鎴垮仛杩囷細瀹㈡埧鏈嶅姟鍛樸�佸鎴挎湇鍔″憳銆佸鎴垮鎴挎湇鍔″憳銆佸鎴�'
@@ -26,11 +13,14 @@
<div class="flexJob-card-done-detail-item">{{ '鍦ㄣ�屽畞娉㈤浄杩.閰掑簵銆嶏紝鍋氳繃瀹㈡埧鏈嶅姟鍛�' }}</div>
</div>
<div class="flexJob-card-footer">
- <div class="flexJob-card-footer-left" v-if="showFooterLeft">
- <slot name="footerLeft">
- <div class="flexJob-card-footer-text">鍙栨秷鏀惰棌</div>
- </slot>
+ <div class="flexJob-card-footer-left-wrapper">
+ <div class="flexJob-card-footer-left" v-if="showFooterLeft">
+ <slot name="footerLeft">
+ <div class="flexJob-card-footer-text">鍙栨秷鏀惰棌</div>
+ </slot>
+ </div>
</div>
+
<div class="flexJob-card-footer-right" v-if="showFooterRight">
<slot name="footerRight">
<nut-button type="primary">绔嬪嵆鑱旂郴</nut-button>
@@ -44,6 +34,7 @@
import IconMale from '@/assets/mine/icon-male.png';
import IconFemale from '@/assets/mine/icon-female.png';
import { CommonTaskCardProps } from './card';
+import FlexJobTopView from './FlexJobTopView.vue';
defineOptions({
name: 'FlexJobCard',
@@ -74,55 +65,7 @@
}
.flexJob-card-top-wrapper {
- display: flex;
- align-items: center;
margin-bottom: 38px;
-
- .flexJob-card-top-avatar {
- margin-right: 30px;
- }
-
- .flexJob-card-top-info {
- display: flex;
- flex-direction: column;
-
- .flexJob-card-top-info-item {
- display: flex;
- align-items: center;
-
- .flexJob-card-top-info-name {
- font-size: 34px;
- line-height: 34px;
- font-weight: bold;
- color: boleGetCssVar('text-color', 'primary');
- }
-
- .flexJob-card-top-info-gender {
- display: inline-flex;
- align-items: center;
- height: 34px;
- margin: 0 10px;
-
- .flexJob-card-top-info-gender-icon {
- width: 24px;
- height: 24px;
- }
- }
-
- .flexJob-card-top-info-auth {
- font-size: 28px;
- line-height: 34px;
- }
- }
-
- .flexJob-card-top-info-detail {
- font-size: 24px;
- font-weight: 400;
- line-height: 28px;
- margin-top: 12px;
- color: boleGetCssVar('text-color', 'secondary');
- }
- }
}
.flexJob-card-done-list {
@@ -153,11 +96,15 @@
.flexJob-card-footer {
display: flex;
align-items: center;
- justify-content: space-between;
border-top: #d9d9d9 1px solid;
padding-top: 24px;
margin-top: 18px;
+ .flexJob-card-footer-left-wrapper {
+ flex: 1;
+ min-width: 0;
+ }
+
.flexJob-card-footer-left {
.flexJob-card-footer-text {
font-size: 24px;
diff --git a/packages/components/src/Card/FlexJobTopView.vue b/packages/components/src/Card/FlexJobTopView.vue
new file mode 100644
index 0000000..4f938b6
--- /dev/null
+++ b/packages/components/src/Card/FlexJobTopView.vue
@@ -0,0 +1,88 @@
+<template>
+ <div :class="['flexJob-card-top-wrapper', size]">
+ <UserAvatar :size="size === 'small' ? 50 : 60" class="flexJob-card-top-avatar" />
+ <div class="flexJob-card-top-info">
+ <div class="flexJob-card-top-info-item">
+ <div class="flexJob-card-top-info-name">{{ '娲嬫磱' }}</div>
+ <div class="flexJob-card-top-info-gender">
+ <img v-if="1" :src="IconMale" class="flexJob-card-top-info-gender-icon" />
+ <img v-else :src="IconFemale" class="flexJob-card-top-info-gender-icon" />
+ </div>
+ <div class="flexJob-card-top-info-auth">{{ '宸插疄鍚�' }}</div>
+ </div>
+ <div class="flexJob-card-top-info-detail">{{ '26宀� | 闈炲鐢� | 鏈 | 涓婂矖121娆�' }}</div>
+ </div>
+ </div>
+</template>
+
+<script setup lang="ts">
+import IconMale from '@/assets/mine/icon-male.png';
+import IconFemale from '@/assets/mine/icon-female.png';
+
+defineOptions({
+ name: 'FlexJobTopView',
+});
+
+type Props = {
+ size?: 'normal' | 'small';
+};
+
+const props = withDefaults(defineProps<Props>(), {
+ size: 'normal',
+});
+</script>
+
+<style lang="scss">
+@import '@/styles/common.scss';
+
+.flexJob-card-top-wrapper {
+ display: flex;
+ align-items: center;
+
+ .flexJob-card-top-avatar {
+ margin-right: 30px;
+ }
+
+ .flexJob-card-top-info {
+ display: flex;
+ flex-direction: column;
+
+ .flexJob-card-top-info-item {
+ display: flex;
+ align-items: center;
+
+ .flexJob-card-top-info-name {
+ font-size: 34px;
+ line-height: 34px;
+ font-weight: bold;
+ color: boleGetCssVar('text-color', 'primary');
+ }
+
+ .flexJob-card-top-info-gender {
+ display: inline-flex;
+ align-items: center;
+ height: 34px;
+ margin: 0 10px;
+
+ .flexJob-card-top-info-gender-icon {
+ width: 24px;
+ height: 24px;
+ }
+ }
+
+ .flexJob-card-top-info-auth {
+ font-size: 28px;
+ line-height: 34px;
+ }
+ }
+
+ .flexJob-card-top-info-detail {
+ font-size: 24px;
+ font-weight: 400;
+ line-height: 28px;
+ margin-top: 12px;
+ color: boleGetCssVar('text-color', 'secondary');
+ }
+ }
+}
+</style>
diff --git a/packages/components/src/Menu/QueryMenuItem.vue b/packages/components/src/Menu/QueryMenuItem.vue
index 62ed33f..1a85e2e 100644
--- a/packages/components/src/Menu/QueryMenuItem.vue
+++ b/packages/components/src/Menu/QueryMenuItem.vue
@@ -1,7 +1,9 @@
<template>
<div class="query-menu-item">
<div class="query-menu-item-title">
- {{ title }}
+ <slot name="title">
+ {{ title }}
+ </slot>
</div>
<slot></slot>
</div>
diff --git a/packages/components/src/index.ts b/packages/components/src/index.ts
index 9547599..5a7567a 100644
--- a/packages/components/src/index.ts
+++ b/packages/components/src/index.ts
@@ -25,6 +25,7 @@
export { default as FlexJobCard } from './Card/FlexJobCard.vue';
export { default as TaskPrice } from './Card/TaskPrice.vue';
export { default as TaskDetailWelfareItem } from './Card/TaskDetailWelfareItem.vue';
+export { default as FlexJobTopView } from './Card/FlexJobTopView.vue';
export { default as QueryMenuView } from './Menu/QueryMenuView.vue';
export { default as QueryMenuItem } from './Menu/QueryMenuItem.vue';
export { default as ProRadio } from './Form/ProRadio.vue';
diff --git a/patches/@nutui__nutui-taro@4.3.13.patch b/patches/@nutui__nutui-taro@4.3.13.patch
index 04c7fa9..eba5d18 100644
--- a/patches/@nutui__nutui-taro@4.3.13.patch
+++ b/patches/@nutui__nutui-taro@4.3.13.patch
@@ -35,6 +35,18 @@
};
});
const styles = computed(() => {
+diff --git a/dist/packages/range/Range.js b/dist/packages/range/Range.js
+index 688b67464e4d05dc37996941d941033cea83ee2c..626db4d9889059aa08e1fd675e2333539efc766e 100644
+--- a/dist/packages/range/Range.js
++++ b/dist/packages/range/Range.js
+@@ -288,6 +288,7 @@ const _sfc_main = create({
+ if (disabled.value) {
+ return;
+ }
++ init();
+ touch.start(event);
+ currentValue = props.modelValue;
+ if (isRange(currentValue)) {
diff --git a/dist/packages/toast/Toast.js b/dist/packages/toast/Toast.js
index d9084afa94d8bc892f64cfca10eb098d2be4bcb0..ca2309339c0d8b2fca248081783c88c9fb57d2a2 100644
--- a/dist/packages/toast/Toast.js
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 81c0096..c9d1ace 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -5,7 +5,7 @@
patchedDependencies:
'@nutui/nutui-taro@4.3.13':
- hash: jq3denbtva5gwaaxiatjgbkrsm
+ hash: lbmiuhnkw3qnhgejnhbuepf6iq
path: patches/@nutui__nutui-taro@4.3.13.patch
importers:
@@ -150,7 +150,7 @@
version: 0.0.9
'@nutui/nutui-taro':
specifier: ^4.3.13
- version: 4.3.13(patch_hash=jq3denbtva5gwaaxiatjgbkrsm)(unplugin-vue-components@0.27.4)(vue@3.5.12)
+ version: 4.3.13(patch_hash=lbmiuhnkw3qnhgejnhbuepf6iq)(unplugin-vue-components@0.27.4)(vue@3.5.12)
'@tanstack/vue-query':
specifier: ^4.35.3
version: 4.35.3(@vue/composition-api@1.7.2)(vue@3.5.12)
@@ -412,7 +412,7 @@
version: 0.0.9
'@nutui/nutui-taro':
specifier: ^4.3.13
- version: 4.3.13(patch_hash=jq3denbtva5gwaaxiatjgbkrsm)(unplugin-vue-components@0.27.4)(vue@3.5.12)
+ version: 4.3.13(patch_hash=lbmiuhnkw3qnhgejnhbuepf6iq)(unplugin-vue-components@0.27.4)(vue@3.5.12)
'@tanstack/vue-query':
specifier: ^4.35.3
version: 4.35.3(@vue/composition-api@1.7.2)(vue@3.5.12)
@@ -1033,10 +1033,6 @@
engines: {node: '>=6.9.0'}
dependencies:
'@babel/types': 7.25.6
-
- /@babel/helper-plugin-utils@7.24.8:
- resolution: {integrity: sha512-FFWx5142D8h2Mgr/iPVGH5G7w6jDn4jUSpZTyDnQO0Yn7Ks2Kuz6Pci8H6MPCoUJegd/UZQ3tAvfLCxQSnWWwg==}
- engines: {node: '>=6.9.0'}
/@babel/helper-plugin-utils@7.26.5:
resolution: {integrity: sha512-RS+jZcRdZdRFzMyr+wcsaqOmld1/EqTghfaBGQQd/WnRdzdlvSZ//kF7U8VQTxf1ynZ4cjUcYgjVGx13ewNPMg==}
@@ -2110,7 +2106,7 @@
'@babel/core': ^7.0.0-0
dependencies:
'@babel/core': 7.25.2
- '@babel/helper-plugin-utils': 7.24.8
+ '@babel/helper-plugin-utils': 7.26.5
/@babel/plugin-syntax-jsx@7.24.7(@babel/core@7.8.0):
resolution: {integrity: sha512-6ddciUPe/mpMnOKv/U+RSd2vvVy+Yw/JfBB0ZHYjEZt9NLHmCUylNYlsbqCCS1Bffjlb0fCwC9Vqz+sBz6PsiQ==}
@@ -6207,7 +6203,7 @@
resolution: {integrity: sha512-10VYAtFC+o1X0anGs+y2PgF1NWMeLFz2JVMRw4BWLg6wbtVbYy9wukLxyGhZC6Yf6t39DcwaGVda8paV7K6/Ew==}
dev: false
- /@nutui/nutui-taro@4.3.13(patch_hash=jq3denbtva5gwaaxiatjgbkrsm)(unplugin-vue-components@0.27.4)(vue@3.5.12):
+ /@nutui/nutui-taro@4.3.13(patch_hash=lbmiuhnkw3qnhgejnhbuepf6iq)(unplugin-vue-components@0.27.4)(vue@3.5.12):
resolution: {integrity: sha512-+n8vVZAu92MUX6VEf6gO73Iz3JThjksdb6aSarvciCSydlWWdlQqZwYIGMTG4zOwDfCoQ3HfLa36zVaIJLSn3g==}
peerDependencies:
unplugin-vue-components: '>=0.25.1'
@@ -19571,7 +19567,7 @@
vue: '*'
dependencies:
'@nutui/icons-vue-taro': 0.0.9
- '@nutui/nutui-taro': 4.3.13(patch_hash=jq3denbtva5gwaaxiatjgbkrsm)(unplugin-vue-components@0.27.4)(vue@3.5.12)
+ '@nutui/nutui-taro': 4.3.13(patch_hash=lbmiuhnkw3qnhgejnhbuepf6iq)(unplugin-vue-components@0.27.4)(vue@3.5.12)
'@tanstack/vue-query': 4.35.3(@vue/composition-api@1.7.2)(vue@3.5.12)
'@tarojs/components': 3.6.20(postcss@8.4.19)(react@19.0.0)(vue@3.5.12)
'@tarojs/taro': 3.6.20(postcss@8.4.19)(vue@3.5.12)
@@ -21517,7 +21513,7 @@
peerDependencies:
eslint: '>=6.0.0'
dependencies:
- debug: 4.3.7
+ debug: 4.4.0
eslint: 8.23.1
eslint-scope: 7.2.2
eslint-visitor-keys: 3.4.3
--
Gitblit v1.9.1