adata-ui 3.1.80 → 3.1.82
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/README.md +84 -84
- package/dist/module.json +1 -1
- package/dist/runtime/components/Alert.vue +26 -26
- package/dist/runtime/components/Alert.vue.d.ts +2 -37
- package/dist/runtime/components/Chip.vue +5 -5
- package/dist/runtime/components/Chip.vue.d.ts +2 -21
- package/dist/runtime/components/ColorMode.vue +12 -12
- package/dist/runtime/components/CurveBlock.vue +177 -177
- package/dist/runtime/components/DigitBadge.vue +5 -5
- package/dist/runtime/components/DigitBadge.vue.d.ts +1 -1
- package/dist/runtime/components/Drawer.vue +32 -32
- package/dist/runtime/components/Drawer.vue.d.ts +2 -47
- package/dist/runtime/components/EmptyHeader.vue +6 -6
- package/dist/runtime/components/Error.vue +59 -59
- package/dist/runtime/components/Footer.vue +73 -73
- package/dist/runtime/components/FooterAccordion.vue +45 -45
- package/dist/runtime/components/Header.vue +111 -111
- package/dist/runtime/components/Header.vue.d.ts +50 -0
- package/dist/runtime/components/Modal.vue +78 -78
- package/dist/runtime/components/Modal.vue.d.ts +9 -49
- package/dist/runtime/components/NewFooter.vue +114 -114
- package/dist/runtime/components/NewFooterAccordion.vue +52 -52
- package/dist/runtime/components/OtherServiceFeatures.vue +45 -45
- package/dist/runtime/components/PkMobileServices.vue +22 -22
- package/dist/runtime/components/SidePanel.vue +76 -76
- package/dist/runtime/components/SidePanel.vue.d.ts +3 -79
- package/dist/runtime/components/Tag.vue +4 -4
- package/dist/runtime/components/Tag.vue.d.ts +2 -12
- package/dist/runtime/components/Toggle.vue +30 -30
- package/dist/runtime/components/accordion/Accordion.vue +41 -41
- package/dist/runtime/components/accordion/Accordion.vue.d.ts +4 -44
- package/dist/runtime/components/button/Button.vue +22 -22
- package/dist/runtime/components/button/Button.vue.d.ts +4 -22
- package/dist/runtime/components/checkbox/Checkbox.vue +58 -58
- package/dist/runtime/components/checkbox/Checkbox.vue.d.ts +7 -39
- package/dist/runtime/components/date-picker/DatePicker.vue +38 -38
- package/dist/runtime/components/error-template/index.vue +32 -32
- package/dist/runtime/components/error-template/index.vue.d.ts +3 -5
- package/dist/runtime/components/feature-description/FeatureDescription.vue +46 -46
- package/dist/runtime/components/floating-label/FloatingLabel.vue +5 -5
- package/dist/runtime/components/floating-label/FloatingLabel.vue.d.ts +2 -7
- package/dist/runtime/components/forms/input/password/InputPassword.vue +25 -25
- package/dist/runtime/components/forms/input/password/InputPassword.vue.d.ts +1 -1
- package/dist/runtime/components/forms/input/standard/InputStandard.vue +108 -108
- package/dist/runtime/components/forms/input/textarea/ATextarea.vue +63 -63
- package/dist/runtime/components/forms/input/textarea/ATextarea.vue.d.ts +3 -35
- package/dist/runtime/components/forms/need-more-data/NeedMoreData.vue +61 -55
- package/dist/runtime/components/forms/need-more-data/NeedMoreData.vue.d.ts +11 -2
- package/dist/runtime/components/forms/request-demo/RequestDemo.vue +63 -59
- package/dist/runtime/components/forms/request-demo/RequestDemo.vue.d.ts +27 -0
- package/dist/runtime/components/header/AlmatyContacts.vue +76 -76
- package/dist/runtime/components/header/AstanaContacts.vue +31 -31
- package/dist/runtime/components/header/CardGallery.vue +60 -60
- package/dist/runtime/components/header/ContactMenu.vue +39 -39
- package/dist/runtime/components/header/ContactMenu.vue.d.ts +8 -2
- package/dist/runtime/components/header/HeaderLink.vue +68 -55
- package/dist/runtime/components/header/LangSwitcher.vue +26 -26
- package/dist/runtime/components/header/ListItem.vue +15 -15
- package/dist/runtime/components/header/NavCard.vue +28 -28
- package/dist/runtime/components/header/NavList.vue +52 -52
- package/dist/runtime/components/header/ProductMenu.vue +72 -72
- package/dist/runtime/components/header/ProductMenu.vue.d.ts +8 -2
- package/dist/runtime/components/header/ProfileMenu.vue +37 -37
- package/dist/runtime/components/header/ProfileMenu.vue.d.ts +5 -1
- package/dist/runtime/components/header/ProfileMenuContent.vue +140 -140
- package/dist/runtime/components/header/ProfileMenuContent.vue.d.ts +5 -1
- package/dist/runtime/components/header/TopHeader.vue +72 -72
- package/dist/runtime/components/header-mobile/HeaderMobile.vue +39 -39
- package/dist/runtime/components/header-mobile/HeaderMobile.vue.d.ts +9 -14
- package/dist/runtime/components/mobile-navigation/BottomNavigation.vue +41 -41
- package/dist/runtime/components/mobile-navigation/BottomNavigation.vue.d.ts +29 -0
- package/dist/runtime/components/mobile-navigation/MainButton.vue +8 -8
- package/dist/runtime/components/mobile-navigation/MainButton.vue.d.ts +5 -1
- package/dist/runtime/components/mobile-navigation/MobileProductMenu.vue +26 -26
- package/dist/runtime/components/modals/ApplicationAcceptedModal.vue +43 -0
- package/dist/runtime/components/modals/ApplicationAcceptedModal.vue.d.ts +9 -0
- package/dist/runtime/components/modals/ConnectingTariffModal.vue +58 -0
- package/dist/runtime/components/modals/ConnectingTariffModal.vue.d.ts +19 -0
- package/dist/runtime/components/modals/InsufficientFundsModal.vue +68 -0
- package/dist/runtime/components/modals/InsufficientFundsModal.vue.d.ts +18 -0
- package/dist/runtime/components/modals/NoAccessContent.vue +34 -34
- package/dist/runtime/components/modals/NoAccessContent.vue.d.ts +5 -1
- package/dist/runtime/components/modals/NoAccessSimple.vue +16 -16
- package/dist/runtime/components/modals/NoAccessSimple.vue.d.ts +5 -1
- package/dist/runtime/components/modals/SubmitApplicationModal.vue +114 -0
- package/dist/runtime/components/modals/SubmitApplicationModal.vue.d.ts +17 -0
- package/dist/runtime/components/modals/TokenTimeoutContent.vue +24 -24
- package/dist/runtime/components/modals/TokenTimeoutContent.vue.d.ts +5 -1
- package/dist/runtime/components/modals/id/IdAccessModal.vue +34 -34
- package/dist/runtime/components/modals/id/IdBanner.vue +29 -29
- package/dist/runtime/components/modals/id/IdConfirmAccountOtpModal.vue +43 -43
- package/dist/runtime/components/modals/id/IdConfirmSuccessfulModal.vue +17 -17
- package/dist/runtime/components/modals/id/IdLoginModal.vue +100 -100
- package/dist/runtime/components/modals/id/IdModals.vue +44 -44
- package/dist/runtime/components/modals/id/IdNewPasswordModal.vue +46 -46
- package/dist/runtime/components/modals/id/IdOtpInput.vue +30 -30
- package/dist/runtime/components/modals/id/IdPasswordSuccessfulModal.vue +14 -14
- package/dist/runtime/components/modals/id/IdRecoveryModal.vue +30 -30
- package/dist/runtime/components/modals/id/IdRegistrationModal.vue +68 -68
- package/dist/runtime/components/modals/id/IdResetPasswordOtpModal.vue +47 -47
- package/dist/runtime/components/modals/id/IdTwoFactorModal.vue +23 -23
- package/dist/runtime/components/payment/process/PaymentKaspiQrSidePanel.vue +51 -51
- package/dist/runtime/components/payment/process/PaymentKaspiRedirectSidePanel.vue +35 -35
- package/dist/runtime/components/payment/process/PaymentMethodSidePanel.vue +69 -69
- package/dist/runtime/components/payment/process/PaymentProcess.vue +26 -26
- package/dist/runtime/components/payment/process/PaymentTopUpSidePanel.vue +63 -63
- package/dist/runtime/components/photos-animation/PhotosAnimation.vue +9 -9
- package/dist/runtime/components/pill-tabs/PillTabs.vue +39 -39
- package/dist/runtime/components/pill-tabs/PillTabs.vue.d.ts +46 -0
- package/dist/runtime/components/radio-button/RadioButton.vue +33 -33
- package/dist/runtime/components/radio-button/RadioButton.vue.d.ts +2 -36
- package/dist/runtime/components/row-card/RowCard.vue +27 -27
- package/dist/runtime/components/row-card/RowCard.vue.d.ts +2 -9
- package/dist/runtime/components/select-row/index.vue +58 -58
- package/dist/runtime/components/select-row/index.vue.d.ts +1 -1
- package/dist/runtime/components/transitions/TransitionHeight.vue +9 -9
- package/dist/runtime/components/transitions/TransitionHeight.vue.d.ts +2 -20
- package/dist/runtime/components/tree-select/TreeSelect.vue +16 -16
- package/dist/runtime/components/tree-select/components/tree-select-nodes.vue +75 -75
- package/dist/runtime/composables/projectState.d.ts +2 -2
- package/dist/runtime/composables/useBuyTariffs.d.ts +7 -0
- package/dist/runtime/composables/useBuyTariffs.js +73 -0
- package/dist/runtime/composables/useIdModals.d.ts +11 -21
- package/dist/runtime/composables/usePayment.d.ts +5 -5
- package/dist/runtime/i18n/i18n.config.d.ts +9 -0
- package/dist/runtime/i18n.d.ts +1 -1
- package/dist/runtime/icons/ai-assistant.vue +13 -13
- package/dist/runtime/icons/akimat.vue +20 -20
- package/dist/runtime/icons/arrow/arrow-circle-down.vue +18 -18
- package/dist/runtime/icons/arrow/arrow-graph-up.vue +24 -24
- package/dist/runtime/icons/arrow/arrow-side-up.vue +19 -19
- package/dist/runtime/icons/arrow/arrow-top-right-on-square.vue +19 -19
- package/dist/runtime/icons/arrow/chevron-down.vue +19 -19
- package/dist/runtime/icons/avatar.vue +41 -41
- package/dist/runtime/icons/avto/car.vue +17 -17
- package/dist/runtime/icons/avto/truck.vue +17 -17
- package/dist/runtime/icons/bank.vue +14 -14
- package/dist/runtime/icons/block.vue +19 -19
- package/dist/runtime/icons/bookmark.vue +19 -19
- package/dist/runtime/icons/calculator.vue +19 -19
- package/dist/runtime/icons/chartBar.vue +14 -14
- package/dist/runtime/icons/check-circle.vue +25 -25
- package/dist/runtime/icons/check-sb.vue +7 -7
- package/dist/runtime/icons/checkbox/checkbox-active.vue +19 -19
- package/dist/runtime/icons/checkbox/checkbox-empty.vue +20 -20
- package/dist/runtime/icons/checkbox/checkbox-intermediate.vue +19 -19
- package/dist/runtime/icons/chevron/chevron-down.vue +16 -16
- package/dist/runtime/icons/chevron/chevron-left.vue +5 -5
- package/dist/runtime/icons/chevron/chevron-right.vue +5 -5
- package/dist/runtime/icons/chevron/chevron-up.vue +5 -5
- package/dist/runtime/icons/chevron/double-chevron-right.vue +12 -12
- package/dist/runtime/icons/clipboard-text.vue +17 -17
- package/dist/runtime/icons/clock.vue +25 -25
- package/dist/runtime/icons/color-mode/moon.vue +20 -20
- package/dist/runtime/icons/color-mode/sun.vue +27 -27
- package/dist/runtime/icons/communication/mail.vue +19 -19
- package/dist/runtime/icons/communication/phone.vue +19 -19
- package/dist/runtime/icons/company.vue +19 -19
- package/dist/runtime/icons/currency/dollar.vue +19 -19
- package/dist/runtime/icons/currency/down.vue +22 -22
- package/dist/runtime/icons/currency/eur.vue +69 -69
- package/dist/runtime/icons/currency/rub.vue +25 -25
- package/dist/runtime/icons/currency/tenge.vue +9 -9
- package/dist/runtime/icons/currency/usd.vue +269 -269
- package/dist/runtime/icons/currency/yuan.vue +37 -37
- package/dist/runtime/icons/document/hdocument.vue +17 -17
- package/dist/runtime/icons/document/id.vue +19 -19
- package/dist/runtime/icons/document/profile.vue +19 -19
- package/dist/runtime/icons/eye-closed.vue +26 -26
- package/dist/runtime/icons/eye-open.vue +7 -7
- package/dist/runtime/icons/eye-opened.vue +23 -23
- package/dist/runtime/icons/file/excel-icon.vue +14 -14
- package/dist/runtime/icons/file/file.vue +19 -19
- package/dist/runtime/icons/file/files.vue +17 -17
- package/dist/runtime/icons/globe.vue +19 -19
- package/dist/runtime/icons/hand-with-phone/hand-with-phone-dark.vue +52 -52
- package/dist/runtime/icons/hand-with-phone/hand-with-phone-light.vue +52 -52
- package/dist/runtime/icons/handshake.vue +19 -19
- package/dist/runtime/icons/history.vue +19 -19
- package/dist/runtime/icons/hot-line.vue +6 -6
- package/dist/runtime/icons/id.vue +9 -9
- package/dist/runtime/icons/info/info-circle.vue +29 -29
- package/dist/runtime/icons/invoice.vue +35 -35
- package/dist/runtime/icons/kaspi-qr.vue +13 -13
- package/dist/runtime/icons/link-chain.vue +31 -31
- package/dist/runtime/icons/loader-circle.vue +34 -34
- package/dist/runtime/icons/lock.vue +19 -19
- package/dist/runtime/icons/logo/adata.vue +48 -48
- package/dist/runtime/icons/logo/logo.vue +27 -27
- package/dist/runtime/icons/map-paper.vue +5 -5
- package/dist/runtime/icons/map-pin-rect.vue +15 -15
- package/dist/runtime/icons/medal.vue +17 -17
- package/dist/runtime/icons/menu/menu-filled.vue +61 -61
- package/dist/runtime/icons/menu/menu.vue +41 -41
- package/dist/runtime/icons/message.vue +24 -24
- package/dist/runtime/icons/modals/door.vue +162 -162
- package/dist/runtime/icons/moon.vue +10 -10
- package/dist/runtime/icons/navigation/expand-window.vue +19 -19
- package/dist/runtime/icons/navigation/location.vue +25 -25
- package/dist/runtime/icons/navigation/logout.vue +19 -19
- package/dist/runtime/icons/notifications.vue +25 -25
- package/dist/runtime/icons/other-service/arrow-square-down.vue +15 -15
- package/dist/runtime/icons/other-service/arrow-top-right-on-square.vue +6 -6
- package/dist/runtime/icons/other-service/block.vue +16 -16
- package/dist/runtime/icons/other-service/currency-dollar.vue +16 -16
- package/dist/runtime/icons/other-service/globe.vue +16 -16
- package/dist/runtime/icons/other-service/link.vue +7 -7
- package/dist/runtime/icons/other-service/magnifying-glass.vue +9 -9
- package/dist/runtime/icons/other-service/standing-scales.vue +15 -15
- package/dist/runtime/icons/other-service/users-three.vue +7 -7
- package/dist/runtime/icons/payment/payment-card.vue +6 -6
- package/dist/runtime/icons/payment/payment-kaspi.vue +11 -11
- package/dist/runtime/icons/plus.vue +24 -24
- package/dist/runtime/icons/radio/radio-check.vue +24 -24
- package/dist/runtime/icons/radio/radio-empty.vue +20 -20
- package/dist/runtime/icons/receipt/hcheck.vue +27 -27
- package/dist/runtime/icons/receipt/receipt.vue +27 -27
- package/dist/runtime/icons/sanctions.vue +8 -8
- package/dist/runtime/icons/scale.vue +19 -19
- package/dist/runtime/icons/search.vue +27 -27
- package/dist/runtime/icons/socials/facebook.vue +15 -15
- package/dist/runtime/icons/socials/google.vue +41 -41
- package/dist/runtime/icons/socials/instagram.vue +19 -19
- package/dist/runtime/icons/socials/linkedin.vue +24 -24
- package/dist/runtime/icons/socials/mailru.vue +34 -34
- package/dist/runtime/icons/socials/telegram.vue +15 -15
- package/dist/runtime/icons/socials/tik-tok.vue +15 -15
- package/dist/runtime/icons/socials/whatsapp.vue +21 -21
- package/dist/runtime/icons/socials/yandex.vue +28 -28
- package/dist/runtime/icons/socials/youtube.vue +16 -16
- package/dist/runtime/icons/sun.vue +14 -14
- package/dist/runtime/icons/sviazi.vue +19 -19
- package/dist/runtime/icons/tasks.vue +10 -10
- package/dist/runtime/icons/toasts/check-circle-toast.vue +6 -6
- package/dist/runtime/icons/toasts/warning-triangle-toast.vue +7 -7
- package/dist/runtime/icons/users/users-three.vue +17 -17
- package/dist/runtime/icons/users/users.vue +31 -31
- package/dist/runtime/icons/warning-triangle.vue +29 -29
- package/dist/runtime/icons/work-bag.vue +20 -20
- package/dist/runtime/icons/x-mark.vue +18 -18
- package/dist/runtime/illustrations/address-location.vue +38 -38
- package/dist/runtime/illustrations/ball-with-chain.vue +120 -120
- package/dist/runtime/illustrations/bill.vue +133 -133
- package/dist/runtime/illustrations/buildings.vue +82 -82
- package/dist/runtime/illustrations/calendar.vue +156 -156
- package/dist/runtime/illustrations/chains.vue +152 -152
- package/dist/runtime/illustrations/coin-percent.vue +126 -126
- package/dist/runtime/illustrations/coins-stack.vue +202 -202
- package/dist/runtime/illustrations/delete-dark.vue +31 -31
- package/dist/runtime/illustrations/delete.vue +32 -32
- package/dist/runtime/illustrations/doc-with-stamp.vue +126 -126
- package/dist/runtime/illustrations/document.vue +64 -64
- package/dist/runtime/illustrations/door.vue +74 -74
- package/dist/runtime/illustrations/empty-box.vue +77 -77
- package/dist/runtime/illustrations/empty-wallet.vue +161 -161
- package/dist/runtime/illustrations/graph-in-coin.vue +119 -119
- package/dist/runtime/illustrations/hammer.vue +156 -156
- package/dist/runtime/illustrations/hand-cash.vue +108 -108
- package/dist/runtime/illustrations/info.vue +39 -39
- package/dist/runtime/illustrations/mail.vue +68 -68
- package/dist/runtime/illustrations/ok.vue +62 -62
- package/dist/runtime/illustrations/people-group.vue +237 -237
- package/dist/runtime/illustrations/person-with-phone.vue +187 -187
- package/dist/runtime/illustrations/person.vue +159 -159
- package/dist/runtime/illustrations/phone-check.vue +90 -90
- package/dist/runtime/illustrations/phone-payment-method.vue +223 -223
- package/dist/runtime/illustrations/stop-hand.vue +77 -77
- package/dist/runtime/illustrations/stop-sign.vue +34 -34
- package/dist/runtime/illustrations/suit.vue +111 -111
- package/dist/runtime/illustrations/suitcase.vue +105 -105
- package/dist/runtime/illustrations/terminal-dark.vue +48 -48
- package/dist/runtime/illustrations/terminal.vue +234 -234
- package/dist/runtime/illustrations/trash-can.vue +108 -108
- package/dist/runtime/illustrations/turn-on-tariff.vue +38 -38
- package/dist/runtime/illustrations/two-persons.vue +169 -169
- package/dist/runtime/lang/en.js +5 -2
- package/dist/runtime/lang/kk.js +5 -2
- package/dist/runtime/lang/ru.d.ts +3 -0
- package/dist/runtime/lang/ru.js +5 -2
- package/dist/runtime/plugins/toast.d.ts +1 -503
- package/dist/runtime/public/kaspi/logo.svg +4 -4
- package/dist/runtime/server/tsconfig.json +3 -3
- package/dist/runtime/utils/getMaxZindex.d.ts +2 -0
- package/dist/runtime/utils/getMaxZindex.js +22 -0
- package/dist/runtime/utils/localizedNavigation.d.ts +1 -1
- package/dist/runtime/utils/useUrls.d.ts +1 -0
- package/dist/runtime/utils/useUrls.js +1 -0
- package/package.json +73 -73
|
@@ -1,5 +1,14 @@
|
|
|
1
|
-
type
|
|
1
|
+
type __VLS_Props = {
|
|
2
|
+
userInfo: any;
|
|
3
|
+
};
|
|
4
|
+
type __VLS_PublicProps = __VLS_Props & {
|
|
2
5
|
'isLoading'?: boolean;
|
|
3
6
|
};
|
|
4
|
-
declare const _default: import("vue").DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
7
|
+
declare const _default: import("vue").DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
8
|
+
submit: (...args: any[]) => void;
|
|
9
|
+
"update:isLoading": (value: boolean) => void;
|
|
10
|
+
}, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
|
|
11
|
+
onSubmit?: ((...args: any[]) => any) | undefined;
|
|
12
|
+
"onUpdate:isLoading"?: ((value: boolean) => any) | undefined;
|
|
13
|
+
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
5
14
|
export default _default;
|
|
@@ -4,7 +4,8 @@ import { reactive, ref, useI18n } from "#imports";
|
|
|
4
4
|
import useUIValidation from "../../../composables/useUIValidation";
|
|
5
5
|
const props = defineProps({
|
|
6
6
|
title: { type: String, required: false },
|
|
7
|
-
description: { type: String, required: false }
|
|
7
|
+
description: { type: String, required: false },
|
|
8
|
+
userInfo: { type: null, required: true }
|
|
8
9
|
});
|
|
9
10
|
const emit = defineEmits(["send"]);
|
|
10
11
|
const { t } = useI18n();
|
|
@@ -30,67 +31,70 @@ function onSend() {
|
|
|
30
31
|
emit("send", form);
|
|
31
32
|
submitted.value = false;
|
|
32
33
|
form.sender_name = "";
|
|
33
|
-
form.email = "";
|
|
34
|
+
form.email = props.userInfo?.email || "";
|
|
34
35
|
form.phone_number = "";
|
|
35
36
|
}
|
|
37
|
+
onMounted(() => {
|
|
38
|
+
form.email = props.userInfo?.email || "";
|
|
39
|
+
});
|
|
36
40
|
</script>
|
|
37
41
|
|
|
38
42
|
<template>
|
|
39
|
-
<div class="rounded-[20px] bg-blue-700 dark:bg-[#1B98E2] p-4 dark:bg-blue-500 lg:p-8">
|
|
40
|
-
<div class="flex w-full flex-col gap-4 lg:flex-row lg:justify-between">
|
|
41
|
-
<div class="flex flex-col gap-4 text-white dark:text-gray-900 lg:max-w-[50%] lg:gap-6">
|
|
42
|
-
<slot name="title">
|
|
43
|
-
<p class="md:text-[32px] text-[24px] font-bold">
|
|
44
|
-
{{ title || t("forms.request_demo.title") }}
|
|
45
|
-
</p>
|
|
46
|
-
</slot>
|
|
47
|
-
<slot name="description">
|
|
48
|
-
<p class="text-base whitespace-pre-line">
|
|
49
|
-
{{ description || t("forms.request_demo.info") }}
|
|
50
|
-
</p>
|
|
51
|
-
</slot>
|
|
52
|
-
</div>
|
|
53
|
-
<div class="rounded-[20px] bg-white p-6 dark:bg-gray-900 lg:w-[456px]">
|
|
54
|
-
<div class="flex flex-col gap-4">
|
|
55
|
-
<slot name="inputs">
|
|
56
|
-
<div class="flex flex-col gap-4">
|
|
57
|
-
<adt-forms-input-standard
|
|
58
|
-
v-model="form.sender_name"
|
|
59
|
-
required
|
|
60
|
-
:label="t('forms.demo.n')"
|
|
61
|
-
color-classes="bg-gray-50 dark:bg-gray-800"
|
|
62
|
-
:error="getError('sender_name')"
|
|
63
|
-
/>
|
|
64
|
-
<adt-forms-input-standard
|
|
65
|
-
v-model="form.email"
|
|
66
|
-
required
|
|
67
|
-
:label="t('forms.demo.e')"
|
|
68
|
-
color-classes="bg-gray-50 dark:bg-gray-800"
|
|
69
|
-
:error="getError('email')"
|
|
70
|
-
type="email"
|
|
71
|
-
/>
|
|
72
|
-
<adt-forms-input-standard
|
|
73
|
-
v-model="form.phone_number"
|
|
74
|
-
required
|
|
75
|
-
:label="t('forms.demo.p')"
|
|
76
|
-
color-classes="bg-gray-50 dark:bg-gray-800"
|
|
77
|
-
:error="getError('phone_number')"
|
|
78
|
-
type="tel"
|
|
79
|
-
@input="filterPhoneInput"
|
|
80
|
-
/>
|
|
81
|
-
</div>
|
|
82
|
-
</slot>
|
|
83
|
-
<div class="flex flex-col gap-2 w-full">
|
|
84
|
-
<adt-button
|
|
85
|
-
block
|
|
86
|
-
@click="onSend"
|
|
87
|
-
>
|
|
88
|
-
{{ t("forms.request_demo.send") }}
|
|
89
|
-
</adt-button>
|
|
90
|
-
<slot name="info" />
|
|
91
|
-
</div>
|
|
92
|
-
</div>
|
|
93
|
-
</div>
|
|
94
|
-
</div>
|
|
95
|
-
</div>
|
|
43
|
+
<div class="rounded-[20px] bg-blue-700 dark:bg-[#1B98E2] p-4 dark:bg-blue-500 lg:p-8">
|
|
44
|
+
<div class="flex w-full flex-col gap-4 lg:flex-row lg:justify-between">
|
|
45
|
+
<div class="flex flex-col gap-4 text-white dark:text-gray-900 lg:max-w-[50%] lg:gap-6">
|
|
46
|
+
<slot name="title">
|
|
47
|
+
<p class="md:text-[32px] text-[24px] font-bold">
|
|
48
|
+
{{ title || t("forms.request_demo.title") }}
|
|
49
|
+
</p>
|
|
50
|
+
</slot>
|
|
51
|
+
<slot name="description">
|
|
52
|
+
<p class="text-base whitespace-pre-line">
|
|
53
|
+
{{ description || t("forms.request_demo.info") }}
|
|
54
|
+
</p>
|
|
55
|
+
</slot>
|
|
56
|
+
</div>
|
|
57
|
+
<div class="rounded-[20px] bg-white p-6 dark:bg-gray-900 lg:w-[456px]">
|
|
58
|
+
<div class="flex flex-col gap-4">
|
|
59
|
+
<slot name="inputs">
|
|
60
|
+
<div class="flex flex-col gap-4">
|
|
61
|
+
<adt-forms-input-standard
|
|
62
|
+
v-model="form.sender_name"
|
|
63
|
+
required
|
|
64
|
+
:label="t('forms.demo.n')"
|
|
65
|
+
color-classes="bg-gray-50 dark:bg-gray-800"
|
|
66
|
+
:error="getError('sender_name')"
|
|
67
|
+
/>
|
|
68
|
+
<adt-forms-input-standard
|
|
69
|
+
v-model="form.email"
|
|
70
|
+
required
|
|
71
|
+
:label="t('forms.demo.e')"
|
|
72
|
+
color-classes="bg-gray-50 dark:bg-gray-800"
|
|
73
|
+
:error="getError('email')"
|
|
74
|
+
type="email"
|
|
75
|
+
/>
|
|
76
|
+
<adt-forms-input-standard
|
|
77
|
+
v-model="form.phone_number"
|
|
78
|
+
required
|
|
79
|
+
:label="t('forms.demo.p')"
|
|
80
|
+
color-classes="bg-gray-50 dark:bg-gray-800"
|
|
81
|
+
:error="getError('phone_number')"
|
|
82
|
+
type="tel"
|
|
83
|
+
@input="filterPhoneInput"
|
|
84
|
+
/>
|
|
85
|
+
</div>
|
|
86
|
+
</slot>
|
|
87
|
+
<div class="flex flex-col gap-2 w-full">
|
|
88
|
+
<adt-button
|
|
89
|
+
block
|
|
90
|
+
@click="onSend"
|
|
91
|
+
>
|
|
92
|
+
{{ t("forms.request_demo.send") }}
|
|
93
|
+
</adt-button>
|
|
94
|
+
<slot name="info" />
|
|
95
|
+
</div>
|
|
96
|
+
</div>
|
|
97
|
+
</div>
|
|
98
|
+
</div>
|
|
99
|
+
</div>
|
|
96
100
|
</template>
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
type __VLS_Props = {
|
|
2
|
+
title?: string;
|
|
3
|
+
description?: string;
|
|
4
|
+
userInfo: any;
|
|
5
|
+
};
|
|
6
|
+
declare var __VLS_1: {}, __VLS_3: {}, __VLS_5: {}, __VLS_31: {};
|
|
7
|
+
type __VLS_Slots = {} & {
|
|
8
|
+
title?: (props: typeof __VLS_1) => any;
|
|
9
|
+
} & {
|
|
10
|
+
description?: (props: typeof __VLS_3) => any;
|
|
11
|
+
} & {
|
|
12
|
+
inputs?: (props: typeof __VLS_5) => any;
|
|
13
|
+
} & {
|
|
14
|
+
info?: (props: typeof __VLS_31) => any;
|
|
15
|
+
};
|
|
16
|
+
declare const __VLS_component: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
17
|
+
send: (...args: any[]) => void;
|
|
18
|
+
}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
19
|
+
onSend?: ((...args: any[]) => any) | undefined;
|
|
20
|
+
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
21
|
+
declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
|
|
22
|
+
export default _default;
|
|
23
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
24
|
+
new (): {
|
|
25
|
+
$slots: S;
|
|
26
|
+
};
|
|
27
|
+
};
|
|
@@ -43,80 +43,80 @@ const newContacts = computed(() => contacts.value.map((item) => ({
|
|
|
43
43
|
</script>
|
|
44
44
|
|
|
45
45
|
<template>
|
|
46
|
-
<!--noindex-->
|
|
47
|
-
<div class="h-[272px]" data-nosnippet>
|
|
48
|
-
<h2 class="heading-02 mb-4">
|
|
49
|
-
{{ t("header.contacts.almaty.title") }}
|
|
50
|
-
</h2>
|
|
51
|
-
<div class="flex gap-10">
|
|
52
|
-
<div class="flex flex-col gap-4">
|
|
53
|
-
<div
|
|
54
|
-
v-for="item in AlmatyItems.slice(0, 3)"
|
|
55
|
-
class="flex flex-col gap-2 "
|
|
56
|
-
>
|
|
57
|
-
<div class="heading-04">
|
|
58
|
-
{{ t(item.title) }}
|
|
59
|
-
</div>
|
|
60
|
-
<a
|
|
61
|
-
class="flex items-center gap-1 text-deepblue-900 dark:text-white"
|
|
62
|
-
:href="item.to"
|
|
63
|
-
>
|
|
64
|
-
<component
|
|
65
|
-
:is="item.icon"
|
|
66
|
-
class="shrink-0"
|
|
67
|
-
/>
|
|
68
|
-
<div class=" body-400">
|
|
69
|
-
{{ t(item.subtitle) }}
|
|
70
|
-
</div>
|
|
71
|
-
</a>
|
|
72
|
-
</div>
|
|
73
|
-
</div>
|
|
74
|
-
<div class="flex flex-col gap-2 2xl:gap-4">
|
|
75
|
-
<div class="flex flex-col gap-4 h-full justify-between">
|
|
76
|
-
<div class="flex flex-col gap-2 ">
|
|
77
|
-
<div class="heading-04">
|
|
78
|
-
{{ t("header.contacts.almaty.sellDep.title") }}
|
|
79
|
-
</div>
|
|
80
|
-
<div class="grid grid-cols-3 gap-x-8 gap-y-2">
|
|
81
|
-
<a
|
|
82
|
-
v-for="link in newContacts"
|
|
83
|
-
:key="link.subtitle"
|
|
84
|
-
class="flex 2xl:items-center gap-1 text-deepblue-900 dark:text-white"
|
|
85
|
-
:href="link.to"
|
|
86
|
-
:target="link.icon === Whatsapp ? '_blank' : '_self'"
|
|
87
|
-
>
|
|
88
|
-
<component :is="link.icon" />
|
|
89
|
-
<div class="body-400 line-clamp-1">
|
|
90
|
-
{{ link.subtitle }}
|
|
91
|
-
</div>
|
|
92
|
-
</a>
|
|
93
|
-
</div>
|
|
94
|
-
</div>
|
|
95
|
-
<div class="flex flex-col gap-2 ">
|
|
96
|
-
<div class="heading-04 whitespace-nowrap">
|
|
97
|
-
{{ t("header.contacts.almaty.support.title") }}
|
|
98
|
-
</div>
|
|
99
|
-
<div class="flex flex-col lg:gap-y-5">
|
|
100
|
-
<a
|
|
101
|
-
v-for="link in technicalSupport"
|
|
102
|
-
:key="link.subtitle"
|
|
103
|
-
class="flex 2xl:items-center gap-1 text-deepblue-900 dark:text-white"
|
|
104
|
-
:href="link.to"
|
|
105
|
-
target="_blank"
|
|
106
|
-
>
|
|
107
|
-
<div class="body-400 line-clamp-1 text-blue-600">
|
|
108
|
-
{{ t(link.subtitle) }}
|
|
109
|
-
</div>
|
|
110
|
-
<component
|
|
111
|
-
:is="link.icon"
|
|
112
|
-
class="stroke-blue-600"
|
|
113
|
-
/>
|
|
114
|
-
</a>
|
|
115
|
-
</div>
|
|
116
|
-
</div>
|
|
117
|
-
</div>
|
|
118
|
-
</div>
|
|
119
|
-
</div>
|
|
120
|
-
</div>
|
|
121
|
-
<!--/noindex-->
|
|
46
|
+
<!--noindex-->
|
|
47
|
+
<div class="h-[272px]" data-nosnippet>
|
|
48
|
+
<h2 class="heading-02 mb-4">
|
|
49
|
+
{{ t("header.contacts.almaty.title") }}
|
|
50
|
+
</h2>
|
|
51
|
+
<div class="flex gap-10">
|
|
52
|
+
<div class="flex flex-col gap-4">
|
|
53
|
+
<div
|
|
54
|
+
v-for="item in AlmatyItems.slice(0, 3)"
|
|
55
|
+
class="flex flex-col gap-2 "
|
|
56
|
+
>
|
|
57
|
+
<div class="heading-04">
|
|
58
|
+
{{ t(item.title) }}
|
|
59
|
+
</div>
|
|
60
|
+
<a
|
|
61
|
+
class="flex items-center gap-1 text-deepblue-900 dark:text-white"
|
|
62
|
+
:href="item.to"
|
|
63
|
+
>
|
|
64
|
+
<component
|
|
65
|
+
:is="item.icon"
|
|
66
|
+
class="shrink-0"
|
|
67
|
+
/>
|
|
68
|
+
<div class=" body-400">
|
|
69
|
+
{{ t(item.subtitle) }}
|
|
70
|
+
</div>
|
|
71
|
+
</a>
|
|
72
|
+
</div>
|
|
73
|
+
</div>
|
|
74
|
+
<div class="flex flex-col gap-2 2xl:gap-4">
|
|
75
|
+
<div class="flex flex-col gap-4 h-full justify-between">
|
|
76
|
+
<div class="flex flex-col gap-2 ">
|
|
77
|
+
<div class="heading-04">
|
|
78
|
+
{{ t("header.contacts.almaty.sellDep.title") }}
|
|
79
|
+
</div>
|
|
80
|
+
<div class="grid grid-cols-3 gap-x-8 gap-y-2">
|
|
81
|
+
<a
|
|
82
|
+
v-for="link in newContacts"
|
|
83
|
+
:key="link.subtitle"
|
|
84
|
+
class="flex 2xl:items-center gap-1 text-deepblue-900 dark:text-white"
|
|
85
|
+
:href="link.to"
|
|
86
|
+
:target="link.icon === Whatsapp ? '_blank' : '_self'"
|
|
87
|
+
>
|
|
88
|
+
<component :is="link.icon" />
|
|
89
|
+
<div class="body-400 line-clamp-1">
|
|
90
|
+
{{ link.subtitle }}
|
|
91
|
+
</div>
|
|
92
|
+
</a>
|
|
93
|
+
</div>
|
|
94
|
+
</div>
|
|
95
|
+
<div class="flex flex-col gap-2 ">
|
|
96
|
+
<div class="heading-04 whitespace-nowrap">
|
|
97
|
+
{{ t("header.contacts.almaty.support.title") }}
|
|
98
|
+
</div>
|
|
99
|
+
<div class="flex flex-col lg:gap-y-5">
|
|
100
|
+
<a
|
|
101
|
+
v-for="link in technicalSupport"
|
|
102
|
+
:key="link.subtitle"
|
|
103
|
+
class="flex 2xl:items-center gap-1 text-deepblue-900 dark:text-white"
|
|
104
|
+
:href="link.to"
|
|
105
|
+
target="_blank"
|
|
106
|
+
>
|
|
107
|
+
<div class="body-400 line-clamp-1 text-blue-600">
|
|
108
|
+
{{ t(link.subtitle) }}
|
|
109
|
+
</div>
|
|
110
|
+
<component
|
|
111
|
+
:is="link.icon"
|
|
112
|
+
class="stroke-blue-600"
|
|
113
|
+
/>
|
|
114
|
+
</a>
|
|
115
|
+
</div>
|
|
116
|
+
</div>
|
|
117
|
+
</div>
|
|
118
|
+
</div>
|
|
119
|
+
</div>
|
|
120
|
+
</div>
|
|
121
|
+
<!--/noindex-->
|
|
122
122
|
</template>
|
|
@@ -33,35 +33,35 @@ const AstanaItems = [
|
|
|
33
33
|
</script>
|
|
34
34
|
|
|
35
35
|
<template>
|
|
36
|
-
<!--noindex-->
|
|
37
|
-
<div class="h-[272px]" data-nosnippet>
|
|
38
|
-
<h2 class="heading-02 mb-4">
|
|
39
|
-
{{ t("header.contacts.astana.title") }}
|
|
40
|
-
</h2>
|
|
41
|
-
<div class="grid grid-cols-2 gap-5 ">
|
|
42
|
-
<div class="xl:grid grid-cols-2 grid-rows-3 flex flex-wrap gap-4 ">
|
|
43
|
-
<div
|
|
44
|
-
v-for="(item, index) in AstanaItems"
|
|
45
|
-
:key="index"
|
|
46
|
-
class="flex flex-col gap-2 "
|
|
47
|
-
:class="{ 'col-span-2': index === 0 }"
|
|
48
|
-
>
|
|
49
|
-
<div class="heading-04">
|
|
50
|
-
{{ t(item.title) }}
|
|
51
|
-
</div>
|
|
52
|
-
<a
|
|
53
|
-
class="flex items-center gap-1 text-deepblue-900 dark:text-white"
|
|
54
|
-
:href="item?.to"
|
|
55
|
-
:target="item.icon === Whatsapp ? '_blank' : '_self'"
|
|
56
|
-
>
|
|
57
|
-
<component :is="item.icon" />
|
|
58
|
-
<div class=" body-400">
|
|
59
|
-
{{ t(item.subtitle) }}
|
|
60
|
-
</div>
|
|
61
|
-
</a>
|
|
62
|
-
</div>
|
|
63
|
-
</div>
|
|
64
|
-
</div>
|
|
65
|
-
</div>
|
|
66
|
-
<!--/noindex-->
|
|
36
|
+
<!--noindex-->
|
|
37
|
+
<div class="h-[272px]" data-nosnippet>
|
|
38
|
+
<h2 class="heading-02 mb-4">
|
|
39
|
+
{{ t("header.contacts.astana.title") }}
|
|
40
|
+
</h2>
|
|
41
|
+
<div class="grid grid-cols-2 gap-5 ">
|
|
42
|
+
<div class="xl:grid grid-cols-2 grid-rows-3 flex flex-wrap gap-4 ">
|
|
43
|
+
<div
|
|
44
|
+
v-for="(item, index) in AstanaItems"
|
|
45
|
+
:key="index"
|
|
46
|
+
class="flex flex-col gap-2 "
|
|
47
|
+
:class="{ 'col-span-2': index === 0 }"
|
|
48
|
+
>
|
|
49
|
+
<div class="heading-04">
|
|
50
|
+
{{ t(item.title) }}
|
|
51
|
+
</div>
|
|
52
|
+
<a
|
|
53
|
+
class="flex items-center gap-1 text-deepblue-900 dark:text-white"
|
|
54
|
+
:href="item?.to"
|
|
55
|
+
:target="item.icon === Whatsapp ? '_blank' : '_self'"
|
|
56
|
+
>
|
|
57
|
+
<component :is="item.icon" />
|
|
58
|
+
<div class=" body-400">
|
|
59
|
+
{{ t(item.subtitle) }}
|
|
60
|
+
</div>
|
|
61
|
+
</a>
|
|
62
|
+
</div>
|
|
63
|
+
</div>
|
|
64
|
+
</div>
|
|
65
|
+
</div>
|
|
66
|
+
<!--/noindex-->
|
|
67
67
|
</template>
|
|
@@ -94,66 +94,66 @@ onUnmounted(() => clearTimer());
|
|
|
94
94
|
</script>
|
|
95
95
|
|
|
96
96
|
<template>
|
|
97
|
-
<div
|
|
98
|
-
class="overflow-hidden relative w-[320px] h-[480px] rounded-2xl"
|
|
99
|
-
@mouseover="handleMouseOver"
|
|
100
|
-
@mouseout="handleMouseOut"
|
|
101
|
-
>
|
|
102
|
-
<transition :name="transitionName">
|
|
103
|
-
<div
|
|
104
|
-
:key="currentIndex"
|
|
105
|
-
class="relative"
|
|
106
|
-
>
|
|
107
|
-
<img
|
|
108
|
-
:src="items[currentIndex].image"
|
|
109
|
-
class="size-full object-cover rounded-2xl"
|
|
110
|
-
>
|
|
111
|
-
<nuxt-link :to="items[currentIndex].to">
|
|
112
|
-
<div class="absolute bottom-0 rounded-2xl w-full bg-blue-700/80 dark:bg-blue-500/80 px-4 pt-4 pb-12 shadow-[0_-2px_4px_0_rgba(0,0,0,0.25)] backdrop-blur-md flex flex-col gap-6">
|
|
113
|
-
<div class="flex flex-col gap-2">
|
|
114
|
-
<div class="flex items-center justify-between">
|
|
115
|
-
<div class="flex items-center gap-2">
|
|
116
|
-
<div class="flex items-center justify-center bg-white dark:bg-gray-900 text-blue-700 dark:text-blue-500 size-8 rounded-lg">
|
|
117
|
-
<component
|
|
118
|
-
:is="items[currentIndex].icon"
|
|
119
|
-
class="size-6"
|
|
120
|
-
/>
|
|
121
|
-
</div>
|
|
122
|
-
<p class="normal-case text-white dark:text-gray-900 font-semibold text-xl">
|
|
123
|
-
{{ t(items[currentIndex].title) }}
|
|
124
|
-
</p>
|
|
125
|
-
</div>
|
|
126
|
-
<arrow-side-up
|
|
127
|
-
class="icon-link size-6 text-white dark:text-gray-900"
|
|
128
|
-
:class="{ visible: isHovered }"
|
|
129
|
-
/>
|
|
130
|
-
</div>
|
|
131
|
-
<p class="normal-case text-white font-semibold dark:text-gray-900">
|
|
132
|
-
{{ t(items[currentIndex].subtitle) }}
|
|
133
|
-
</p>
|
|
134
|
-
</div>
|
|
135
|
-
</div>
|
|
136
|
-
</nuxt-link>
|
|
137
|
-
</div>
|
|
138
|
-
</transition>
|
|
139
|
-
<div class="absolute xl:bottom-4 w-full">
|
|
140
|
-
<div class="flex justify-center items-center gap-6">
|
|
141
|
-
<div
|
|
142
|
-
v-for="(item, index) in items"
|
|
143
|
-
:key="index"
|
|
144
|
-
class="relative bg-white/50 dark:bg-gray-900/50 rounded-full overflow-hidden cursor-pointer h-2 w-2"
|
|
145
|
-
:class="{ 'w-[52px]': currentIndex === index }"
|
|
146
|
-
@click="setCurrentIndex(index)"
|
|
147
|
-
>
|
|
148
|
-
<div
|
|
149
|
-
v-if="currentIndex === index"
|
|
150
|
-
class="absolute inset-0 bg-white dark:bg-gray-900 progress-bar"
|
|
151
|
-
:style="{ animationPlayState: isHovered ? 'paused' : 'running' }"
|
|
152
|
-
/>
|
|
153
|
-
</div>
|
|
154
|
-
</div>
|
|
155
|
-
</div>
|
|
156
|
-
</div>
|
|
97
|
+
<div
|
|
98
|
+
class="overflow-hidden relative w-[320px] h-[480px] rounded-2xl"
|
|
99
|
+
@mouseover="handleMouseOver"
|
|
100
|
+
@mouseout="handleMouseOut"
|
|
101
|
+
>
|
|
102
|
+
<transition :name="transitionName">
|
|
103
|
+
<div
|
|
104
|
+
:key="currentIndex"
|
|
105
|
+
class="relative"
|
|
106
|
+
>
|
|
107
|
+
<img
|
|
108
|
+
:src="items[currentIndex].image"
|
|
109
|
+
class="size-full object-cover rounded-2xl"
|
|
110
|
+
>
|
|
111
|
+
<nuxt-link :to="items[currentIndex].to">
|
|
112
|
+
<div class="absolute bottom-0 rounded-2xl w-full bg-blue-700/80 dark:bg-blue-500/80 px-4 pt-4 pb-12 shadow-[0_-2px_4px_0_rgba(0,0,0,0.25)] backdrop-blur-md flex flex-col gap-6">
|
|
113
|
+
<div class="flex flex-col gap-2">
|
|
114
|
+
<div class="flex items-center justify-between">
|
|
115
|
+
<div class="flex items-center gap-2">
|
|
116
|
+
<div class="flex items-center justify-center bg-white dark:bg-gray-900 text-blue-700 dark:text-blue-500 size-8 rounded-lg">
|
|
117
|
+
<component
|
|
118
|
+
:is="items[currentIndex].icon"
|
|
119
|
+
class="size-6"
|
|
120
|
+
/>
|
|
121
|
+
</div>
|
|
122
|
+
<p class="normal-case text-white dark:text-gray-900 font-semibold text-xl">
|
|
123
|
+
{{ t(items[currentIndex].title) }}
|
|
124
|
+
</p>
|
|
125
|
+
</div>
|
|
126
|
+
<arrow-side-up
|
|
127
|
+
class="icon-link size-6 text-white dark:text-gray-900"
|
|
128
|
+
:class="{ visible: isHovered }"
|
|
129
|
+
/>
|
|
130
|
+
</div>
|
|
131
|
+
<p class="normal-case text-white font-semibold dark:text-gray-900">
|
|
132
|
+
{{ t(items[currentIndex].subtitle) }}
|
|
133
|
+
</p>
|
|
134
|
+
</div>
|
|
135
|
+
</div>
|
|
136
|
+
</nuxt-link>
|
|
137
|
+
</div>
|
|
138
|
+
</transition>
|
|
139
|
+
<div class="absolute xl:bottom-4 w-full">
|
|
140
|
+
<div class="flex justify-center items-center gap-6">
|
|
141
|
+
<div
|
|
142
|
+
v-for="(item, index) in items"
|
|
143
|
+
:key="index"
|
|
144
|
+
class="relative bg-white/50 dark:bg-gray-900/50 rounded-full overflow-hidden cursor-pointer h-2 w-2"
|
|
145
|
+
:class="{ 'w-[52px]': currentIndex === index }"
|
|
146
|
+
@click="setCurrentIndex(index)"
|
|
147
|
+
>
|
|
148
|
+
<div
|
|
149
|
+
v-if="currentIndex === index"
|
|
150
|
+
class="absolute inset-0 bg-white dark:bg-gray-900 progress-bar"
|
|
151
|
+
:style="{ animationPlayState: isHovered ? 'paused' : 'running' }"
|
|
152
|
+
/>
|
|
153
|
+
</div>
|
|
154
|
+
</div>
|
|
155
|
+
</div>
|
|
156
|
+
</div>
|
|
157
157
|
</template>
|
|
158
158
|
|
|
159
159
|
<style scoped>
|
|
@@ -27,45 +27,45 @@ const options = [
|
|
|
27
27
|
</script>
|
|
28
28
|
|
|
29
29
|
<template>
|
|
30
|
-
<div class="normal-case">
|
|
31
|
-
<div class="bg-white dark:bg-gray-950">
|
|
32
|
-
<transition :name="animation">
|
|
33
|
-
<div
|
|
34
|
-
:key="index"
|
|
35
|
-
class="a-container"
|
|
36
|
-
>
|
|
37
|
-
<div class="pt-2 mb-8 flex justify-between">
|
|
38
|
-
<a-pill-tabs
|
|
39
|
-
v-model="activeTab"
|
|
40
|
-
class="gap-2"
|
|
41
|
-
size="lg"
|
|
42
|
-
view="mobile"
|
|
43
|
-
:options="options"
|
|
44
|
-
/>
|
|
45
|
-
<nuxt-link :to="url">
|
|
46
|
-
<a-button variant="gray">
|
|
47
|
-
{{ t("header.contacts.toContacts") }}
|
|
48
|
-
<arrow-top-right-on-square />
|
|
49
|
-
</a-button>
|
|
50
|
-
</nuxt-link>
|
|
51
|
-
</div>
|
|
52
|
-
<div>
|
|
53
|
-
<almaty-contacts v-show="activeTab === 0" />
|
|
54
|
-
<astana-contacts v-show="activeTab === 1" />
|
|
55
|
-
</div>
|
|
56
|
-
</div>
|
|
57
|
-
</transition>
|
|
58
|
-
<button
|
|
59
|
-
class="absolute right-8 top-4"
|
|
60
|
-
@click="$emit('outerClick')"
|
|
61
|
-
>
|
|
62
|
-
<i-x-mark
|
|
63
|
-
width="32"
|
|
64
|
-
height="32"
|
|
65
|
-
/>
|
|
66
|
-
</button>
|
|
67
|
-
</div>
|
|
68
|
-
</div>
|
|
30
|
+
<div class="normal-case">
|
|
31
|
+
<div class="bg-white dark:bg-gray-950">
|
|
32
|
+
<transition :name="animation">
|
|
33
|
+
<div
|
|
34
|
+
:key="index"
|
|
35
|
+
class="a-container"
|
|
36
|
+
>
|
|
37
|
+
<div class="pt-2 mb-8 flex justify-between">
|
|
38
|
+
<a-pill-tabs
|
|
39
|
+
v-model="activeTab"
|
|
40
|
+
class="gap-2"
|
|
41
|
+
size="lg"
|
|
42
|
+
view="mobile"
|
|
43
|
+
:options="options"
|
|
44
|
+
/>
|
|
45
|
+
<nuxt-link :to="url">
|
|
46
|
+
<a-button variant="gray">
|
|
47
|
+
{{ t("header.contacts.toContacts") }}
|
|
48
|
+
<arrow-top-right-on-square />
|
|
49
|
+
</a-button>
|
|
50
|
+
</nuxt-link>
|
|
51
|
+
</div>
|
|
52
|
+
<div>
|
|
53
|
+
<almaty-contacts v-show="activeTab === 0" />
|
|
54
|
+
<astana-contacts v-show="activeTab === 1" />
|
|
55
|
+
</div>
|
|
56
|
+
</div>
|
|
57
|
+
</transition>
|
|
58
|
+
<button
|
|
59
|
+
class="absolute right-8 top-4"
|
|
60
|
+
@click="$emit('outerClick')"
|
|
61
|
+
>
|
|
62
|
+
<i-x-mark
|
|
63
|
+
width="32"
|
|
64
|
+
height="32"
|
|
65
|
+
/>
|
|
66
|
+
</button>
|
|
67
|
+
</div>
|
|
68
|
+
</div>
|
|
69
69
|
</template>
|
|
70
70
|
|
|
71
71
|
<style scoped>
|
|
@@ -3,9 +3,15 @@ type __VLS_Props = {
|
|
|
3
3
|
index?: number;
|
|
4
4
|
url?: string;
|
|
5
5
|
};
|
|
6
|
-
declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin,
|
|
7
|
-
|
|
6
|
+
declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
7
|
+
outerClick: (...args: any[]) => void;
|
|
8
|
+
mouseOver: (...args: any[]) => void;
|
|
9
|
+
}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
10
|
+
onOuterClick?: ((...args: any[]) => any) | undefined;
|
|
11
|
+
onMouseOver?: ((...args: any[]) => any) | undefined;
|
|
12
|
+
}>, {
|
|
8
13
|
animation: string;
|
|
14
|
+
index: number;
|
|
9
15
|
url: string;
|
|
10
16
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
11
17
|
export default _default;
|