-
+
{{
isDeposit
? `از موجودی آزاد «${fund?.product?.title || 'محصول'}» — حداکثر ${formatPiggyAmount(freeGold)} گرم`
@@ -218,46 +220,62 @@ onMounted(async () => {
diff --git a/src/views/base/piggy/new.vue b/src/views/base/piggy/new.vue
index db30f49..3a914c0 100644
--- a/src/views/base/piggy/new.vue
+++ b/src/views/base/piggy/new.vue
@@ -1,78 +1,80 @@
-
-
- {{ editId ? 'ویرایش قلک' : 'ساخت قلک' }}
-
-
+
+
+
+ {{ editId ? 'ویرایش قلک' : 'ساخت قلک' }}
+
+
-
-
-
-
-
۱
-
-
محصول
-
این قلک فقط برای همین محصول پر میشود
+
+
+
+
+
۱
+
+
محصول
+
این قلک فقط برای همین محصول پر میشود
+
-
-
-
- {{ lockedProductTitle || 'محصول ثابت' }}
-
-
-
+
+
@@ -161,62 +163,194 @@ onMounted(async () => {
diff --git a/src/views/base/user/composables/useUserPage.ts b/src/views/base/user/composables/useUserPage.ts
index 19b437a..6e64e0c 100644
--- a/src/views/base/user/composables/useUserPage.ts
+++ b/src/views/base/user/composables/useUserPage.ts
@@ -125,6 +125,13 @@ export function useUserPage() {
onClick: () => router.push({ name: 'about' }),
visible: true,
},
+ {
+ id: 'giftCard',
+ label: 'ثبت کارت هدیه',
+ icon: 'vuesax-linear:gift',
+ onClick: () => router.push({ name: 'giftCard' }),
+ visible: settingsStore.isSettingTruthy('has_page_gift_card'),
+ },
{
id: 'support',
label: 'پشتیبانی',
diff --git a/src/views/support/components/SupportChatMessages.vue b/src/views/support/components/SupportChatMessages.vue
index abe604f..c433d15 100644
--- a/src/views/support/components/SupportChatMessages.vue
+++ b/src/views/support/components/SupportChatMessages.vue
@@ -94,7 +94,7 @@
"
:style="{ opacity: getSwipeOpacity(message.id) }"
>
- ↩
+
@@ -1129,7 +1132,8 @@ defineExpose({
}
.support-day-group {
- display: contents;
+ display: block;
+ position: relative;
}
.support-day-sticky {
@@ -1148,12 +1152,12 @@ defineExpose({
justify-content: center;
padding: 7px 14px;
border-radius: 999px;
- background: color-mix(in srgb, var(--bg, #fff) 72%, transparent);
+ background: var(--bg, #fff);
border: 1px solid rgb(var(--colorPrimaryRGB) / 0.18);
color: var(--colorText, #111827);
- backdrop-filter: blur(8px);
font-size: 12px;
font-weight: 700;
+ white-space: nowrap;
box-shadow: 0 6px 20px rgb(var(--colorPrimaryRGB) / 0.08);
}
@@ -1221,6 +1225,10 @@ defineExpose({
transform 0.15s ease;
}
+.support-reply-button :deep(svg) {
+ display: block;
+}
+
.support-row:hover .support-reply-button,
.support-row:focus-within .support-reply-button {
opacity: 1;
@@ -1316,27 +1324,36 @@ defineExpose({
position: relative;
display: flex;
gap: 8px;
- margin-bottom: 9px;
- padding: 8px 10px;
- border-radius: 14px;
+ margin-bottom: 10px;
+ padding: 9px 11px;
+ border-radius: 12px;
overflow: hidden;
min-width: 10rem;
+ border: 1px solid transparent;
}
.support-bubble__reply--user {
- background: rgba(255, 255, 255, 0.14);
+ background: rgba(255, 255, 255, 0.22);
+ border-color: rgba(255, 255, 255, 0.28);
}
.support-bubble__reply--support {
- background: rgb(var(--colorPrimaryRGB) / 0.08);
+ background: #f4f4f5;
+ border-color: #e4e4e7;
}
.support-bubble__reply-line {
width: 3px;
border-radius: 999px;
flex: 0 0 3px;
- background: currentColor;
- opacity: 0.75;
+ align-self: stretch;
+ min-height: 28px;
+ background: var(--colorPrimary, #2563eb);
+ opacity: 1;
+}
+
+.support-bubble__reply--user .support-bubble__reply-line {
+ background: rgba(255, 255, 255, 0.92);
}
.support-bubble__reply-content {
@@ -1362,7 +1379,7 @@ defineExpose({
unicode-bidi: plaintext;
font-size: 12px;
line-height: 1.7;
- opacity: 0.86;
+ opacity: 1;
}
.support-bubble--user .support-bubble__reply-text,
@@ -1375,7 +1392,7 @@ defineExpose({
}
.support-bubble--support .support-bubble__reply-text {
- color: color-mix(in srgb, var(--colorText, #111827) 72%, transparent);
+ color: #52525b;
}
.support-bubble__attachments {