adata-ui 2.1.40-beta.11 → 2.1.40-beta.13
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/assets/styles/index.scss +67 -5
- package/components/elements/a-select-row/ASelectRowV2.vue +8 -8
- package/components/elements/a-select-row/index.vue +3 -5
- package/components/elements/accordion/AAccordion.vue +5 -3
- package/components/elements/accordion/AAccordionGroup/AAccordionGroup.vue +3 -3
- package/components/elements/alert/AAlert.vue +34 -47
- package/components/elements/bg-block/ABgBlock.vue +1 -1
- package/components/elements/button/AButton.vue +3 -3
- package/components/elements/button/AButtonV2.vue +7 -5
- package/components/elements/button-login/index.vue +1 -1
- package/components/elements/chip-wrapper/AChipWrapper.vue +1 -1
- package/components/elements/chips/AChips.vue +2 -2
- package/components/elements/digit-badge/ADigitBadge.vue +21 -19
- package/components/elements/feature-description/AFeatureDescription.vue +1 -1
- package/components/elements/leave-note/ALeaveNote.vue +1 -1
- package/components/elements/pagination/APagination.vue +7 -7
- package/components/elements/segmented/ASegmentedV2.vue +103 -10
- package/components/elements/select/ASelect.vue +4 -4
- package/components/elements/select/ASelectMobile.vue +2 -2
- package/components/elements/select/ASelectV2.vue +10 -11
- package/components/elements/select/ui/select-button.vue +1 -1
- package/components/elements/status-badge/AStatusBadge.vue +22 -19
- package/components/elements/status-badge-v2/StatusBadgeV2.vue +1 -3
- package/components/elements/table/ATable.vue +1 -1
- package/components/elements/table/table.config.ts +2 -2
- package/components/elements/tree-select/ATreeSelect.vue +97 -113
- package/components/elements/tree-select/TreeService.ts +142 -207
- package/components/elements/tree-select/components/ATreeSelectNode.vue +104 -0
- package/components/elements/tree-select/types.ts +40 -11
- package/components/elements/tree-select/utils.ts +30 -0
- package/components/elements/tree-select-modal/ATreeSelectModal.vue +217 -0
- package/components/features/color-mode/AColorMode.client.vue +1 -1
- package/components/features/dropdown/ADropdownV2.vue +1 -2
- package/components/features/lang-switcher/lang-switcher.vue +9 -4
- package/components/features/payment/banner/BasicPlusLimitBanner.vue +3 -3
- package/components/features/payment/banner/PaymentBanner.vue +3 -3
- package/components/features/payment/banner/UpSellBanner.vue +3 -3
- package/components/features/payment/process/PaymentKaspiQrSidePanel.vue +3 -3
- package/components/features/payment/process/PaymentKaspiRedirectSidePanel.vue +1 -1
- package/components/features/payment/process/PaymentMethodSidePanel.vue +3 -3
- package/components/features/payment/process/PaymentTopUpSidePanel.vue +2 -2
- package/components/features/pk-mobile-services/APkMobileServices.vue +1 -1
- package/components/features//321/201hange-version/AChangeVersion.vue +2 -2
- package/components/forms/checkbox/ACheckbox.vue +1 -1
- package/components/forms/checkbox/ACheckboxV2.vue +5 -5
- package/components/forms/input/AInputV2.vue +4 -4
- package/components/forms/input/date/AInputDate.vue +2 -2
- package/components/forms/input/password/AInputPassword.vue +8 -2
- package/components/forms/input/standard/AInputStandard.vue +3 -3
- package/components/forms/input/textarea/ATextarea.vue +2 -2
- package/components/forms/toggle/AToggle.vue +2 -3
- package/components/forms/toggle/AToggleV2.vue +3 -3
- package/components/modals/AnotherDeviceModal.vue +1 -1
- package/components/modals/ContactsMobileModel.vue +1 -1
- package/components/modals/ContentNavigationModal.vue +3 -3
- package/components/modals/Insufficient-funds-modal.vue +1 -1
- package/components/modals/PaymentMethodModal.vue +1 -1
- package/components/modals/id/IdBanner.vue +3 -3
- package/components/modals/id/IdRecoveryModal.vue +1 -1
- package/components/navigation/breadcrumbs/ABreadcrumbs.vue +106 -45
- package/components/navigation/breadcrumbs/types.ts +3 -0
- package/components/navigation/footer/AFooter.vue +39 -40
- package/components/navigation/footer/ui/a-footer-accordion.vue +9 -9
- package/components/navigation/header/AHeader.vue +2 -4
- package/components/navigation/header/AlmatyContacts.vue +78 -78
- package/components/navigation/header/CardGallery.vue +4 -4
- package/components/navigation/header/HeaderUsage.vue +29 -15
- package/components/navigation/header/ListItem.vue +2 -2
- package/components/navigation/header/NavCard.vue +1 -1
- package/components/navigation/header/NavList.vue +2 -2
- package/components/navigation/header/NotificationsMenu.vue +2 -3
- package/components/navigation/header/ProductMenu.vue +1 -1
- package/components/navigation/header/ProfileMenu.vue +26 -35
- package/components/navigation/header/SystemNotification.vue +1 -3
- package/components/navigation/pill-tabs/APillTabs.vue +2 -2
- package/components/navigation/pill-tabs/APillTabsV2.vue +5 -5
- package/components/overlays/drawer/ADrawerV2.vue +335 -0
- package/components/overlays/modal/AModal.vue +4 -4
- package/components/overlays/modal/AModalV2.vue +10 -4
- package/components/overlays/side-panel/ASidePanel.vue +6 -6
- package/components/overlays/sideover/ASlideover.vue +6 -6
- package/components/overlays/tooltip/ATooltip.vue +1 -1
- package/components/overlays/tooltip/ATooltipV2.vue +2 -12
- package/components/transitions/ATransitionHeight.vue +1 -1
- package/composables/useHeaderNavigationLinks.ts +100 -94
- package/icons/archive.vue +16 -0
- package/icons/arrow/arrows-in.vue +11 -0
- package/icons/arrow/arrows-out.vue +11 -0
- package/icons/arrow/arrows-resize-in.vue +38 -0
- package/icons/arrow/arrows-resize-out.vue +17 -0
- package/icons/bot.vue +52 -0
- package/icons/clock-time.vue +24 -0
- package/icons/compare-outlined.vue +8 -0
- package/icons/dots-horizontal.vue +31 -0
- package/icons/download-line.vue +13 -0
- package/icons/egov.vue +41 -0
- package/icons/elicense.vue +38 -0
- package/icons/favourite-bookmark-outline.vue +17 -0
- package/icons/file-pen.vue +31 -0
- package/icons/file-stack.vue +31 -0
- package/icons/file-types/excel.vue +131 -0
- package/icons/file-types/html.vue +13 -0
- package/icons/file-types/jpeg.vue +16 -0
- package/icons/file-types/pdf.vue +11 -0
- package/icons/file-types/png.vue +11 -0
- package/icons/file-types/rar.vue +11 -0
- package/icons/file-types/word.vue +50 -0
- package/icons/file-types/zip.vue +11 -0
- package/icons/git-compare.vue +38 -0
- package/icons/graduation-cap.vue +31 -0
- package/icons/graph-loading.vue +34 -0
- package/icons/help-question-circle.vue +26 -0
- package/icons/in-row-type.vue +46 -0
- package/icons/in-table-type.vue +29 -0
- package/icons/message-dotted.vue +30 -0
- package/icons/notification-error.vue +17 -0
- package/icons/person.vue +22 -0
- package/icons/settings.vue +26 -0
- package/icons/shield-alert.vue +31 -0
- package/icons/socials/facebook-color.vue +16 -0
- package/icons/socials/globe-color.vue +16 -0
- package/icons/socials/instagram-color.vue +46 -0
- package/icons/socials/linkedin-color.vue +14 -0
- package/icons/socials/telegram-color.vue +16 -0
- package/icons/socials/tiktok-color.vue +14 -0
- package/icons/socials/vk-color.vue +16 -0
- package/icons/socials/youtube-color.vue +16 -0
- package/icons/view-eye-open.vue +13 -0
- package/package.json +1 -1
- package/plugins/toast.client.ts +38 -55
- package/tailwind.config.ts +147 -116
- package/utils/twMerge.ts +34 -0
- package/components/elements/tree-select/components/tree-select-nodes.vue +0 -91
|
@@ -20,6 +20,8 @@ const props = withDefaults(defineProps<{
|
|
|
20
20
|
swipeToClose?: boolean
|
|
21
21
|
swipeThreshold?: number
|
|
22
22
|
showDragHandle?: boolean
|
|
23
|
+
dataTestId?: string
|
|
24
|
+
iconXMarkTestId?: string
|
|
23
25
|
}>(), {
|
|
24
26
|
size: 'md',
|
|
25
27
|
closeOnOverlay: true,
|
|
@@ -34,6 +36,8 @@ const props = withDefaults(defineProps<{
|
|
|
34
36
|
swipeToClose: true,
|
|
35
37
|
swipeThreshold: 65,
|
|
36
38
|
showDragHandle: true,
|
|
39
|
+
dataTestId: undefined,
|
|
40
|
+
iconXMarkTestId: undefined,
|
|
37
41
|
})
|
|
38
42
|
|
|
39
43
|
const emit = defineEmits<{
|
|
@@ -98,10 +102,10 @@ const contentBaseClass = computed(() => {
|
|
|
98
102
|
const base = ['modal-v2-content flex flex-col overflow-hidden border bg-white shadow-2xl dark:bg-gray-900']
|
|
99
103
|
|
|
100
104
|
if (isSheet.value) {
|
|
101
|
-
base.push('w-full max-w-none max-h-[100dvh] rounded-t-
|
|
105
|
+
base.push('w-full max-w-none max-h-[100dvh] rounded-t-xl rounded-b-none border-x-0 border-b-0 border-t border-gray-200 dark:border-gray-800')
|
|
102
106
|
}
|
|
103
107
|
else {
|
|
104
|
-
const radius = props.size === 'fullscreen' ? 'rounded-none' : 'rounded-
|
|
108
|
+
const radius = props.size === 'fullscreen' ? 'rounded-none' : 'rounded-xl'
|
|
105
109
|
const widthCls = props.size === 'container'
|
|
106
110
|
? ' w-full max-w-screen-sm md:max-w-screen-md lg:max-w-screen-lg xl:max-w-screen-xl 2xl:max-w-screen-2xl'
|
|
107
111
|
: ''
|
|
@@ -286,6 +290,7 @@ function onTouchEnd() {
|
|
|
286
290
|
ref="contentRef"
|
|
287
291
|
:class="contentBaseClass"
|
|
288
292
|
:style="sizeStyle"
|
|
293
|
+
:data-test-id="dataTestId"
|
|
289
294
|
@mousedown.stop
|
|
290
295
|
>
|
|
291
296
|
<div
|
|
@@ -308,14 +313,15 @@ function onTouchEnd() {
|
|
|
308
313
|
@touchcancel="onTouchEnd"
|
|
309
314
|
>
|
|
310
315
|
<slot name="header">
|
|
311
|
-
<h2 v-if="title" class="text-
|
|
316
|
+
<h2 v-if="title" class="text-h5 text-gray-900 dark:text-gray-100">
|
|
312
317
|
{{ title }}
|
|
313
318
|
</h2>
|
|
314
319
|
</slot>
|
|
315
320
|
<button
|
|
316
321
|
v-if="!hideClose"
|
|
317
322
|
type="button"
|
|
318
|
-
class="ml-auto rounded-
|
|
323
|
+
class="ml-auto rounded-sm p-1 transition hover:bg-gray-100 dark:hover:bg-gray-800 dark:hover:text-gray-200"
|
|
324
|
+
:data-test-id="iconXMarkTestId"
|
|
319
325
|
@click="closeIfAllowed"
|
|
320
326
|
>
|
|
321
327
|
<a-icon-x-mark class="size-4" />
|
|
@@ -128,10 +128,10 @@ watch(() => [modelValue.value, panel.value], (newP, oldP) => {
|
|
|
128
128
|
|
|
129
129
|
const roundedClass = computed(() => {
|
|
130
130
|
const classes = {
|
|
131
|
-
left: "rounded-r-
|
|
132
|
-
right: "rounded-l-
|
|
133
|
-
top: "rounded-b-
|
|
134
|
-
bottom: "rounded-t-
|
|
131
|
+
left: "rounded-r-lg",
|
|
132
|
+
right: "rounded-l-lg",
|
|
133
|
+
top: "rounded-b-lg",
|
|
134
|
+
bottom: "rounded-t-lg",
|
|
135
135
|
}
|
|
136
136
|
|
|
137
137
|
return classes[panelSide.value]
|
|
@@ -170,7 +170,7 @@ const modalHeight = ref(0)
|
|
|
170
170
|
const touchstart = (event: TouchEvent) => {
|
|
171
171
|
isClose.value = false
|
|
172
172
|
positionStart.value = event.touches[0].clientY
|
|
173
|
-
modalHeight.value = panel.value?.offsetHeight || 0
|
|
173
|
+
modalHeight.value = panel.value?.offsetHeight || 0
|
|
174
174
|
}
|
|
175
175
|
|
|
176
176
|
const touchmove = (event: TouchEvent) => {
|
|
@@ -179,7 +179,7 @@ const touchmove = (event: TouchEvent) => {
|
|
|
179
179
|
const touchPosition = event.touches[0].clientY
|
|
180
180
|
const step = touchPosition - positionStart.value
|
|
181
181
|
|
|
182
|
-
if (step < 0) return
|
|
182
|
+
if (step < 0) return
|
|
183
183
|
|
|
184
184
|
const newHeight = modalHeight.value - step
|
|
185
185
|
panel.value.style.height = `${newHeight}px`
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
<script setup lang="ts">
|
|
2
2
|
|
|
3
|
-
import { twJoin, twMerge } from '
|
|
3
|
+
import { twJoin, twMerge } from '#adata-ui/utils/twMerge'
|
|
4
4
|
import { onClickOutside, useWindowSize } from '@vueuse/core'
|
|
5
5
|
import {disableBodyScroll, enableBodyScroll} from "body-scroll-lock";
|
|
6
6
|
|
|
@@ -37,10 +37,10 @@ const uiConfig = {
|
|
|
37
37
|
bottom: 'bottom-0 left-0 w-full'
|
|
38
38
|
},
|
|
39
39
|
rounded: {
|
|
40
|
-
top: 'rounded-b-
|
|
41
|
-
bottom: 'rounded-t-
|
|
42
|
-
left: 'rounded-r-
|
|
43
|
-
right: 'rounded-l-
|
|
40
|
+
top: 'rounded-b-md',
|
|
41
|
+
bottom: 'rounded-t-md',
|
|
42
|
+
left: 'rounded-r-md',
|
|
43
|
+
right: 'rounded-l-md'
|
|
44
44
|
},
|
|
45
45
|
fullscreen: 'w-screen h-screen rounded-none',
|
|
46
46
|
transition: {
|
|
@@ -219,7 +219,7 @@ const modalHeight = ref(0)
|
|
|
219
219
|
const touchstart = (event: TouchEvent) => {
|
|
220
220
|
isClose.value = false
|
|
221
221
|
positionStart.value = event.touches[0].clientY
|
|
222
|
-
modalHeight.value = slideover.value?.offsetHeight || 0
|
|
222
|
+
modalHeight.value = slideover.value?.offsetHeight || 0
|
|
223
223
|
}
|
|
224
224
|
|
|
225
225
|
const touchmove = (event: TouchEvent) => {
|
|
@@ -56,7 +56,7 @@ const baseClass = computed(() => {
|
|
|
56
56
|
const color = props.errorParsing ? 'text-[#E74135] dark:text-[#F47E75]' : 'text-white dark:text-deepblue-900'
|
|
57
57
|
const pad = props.size === 'sm' ? 'px-4 py-2' : 'px-4 py-4'
|
|
58
58
|
const truncated = props.truncate ? 'truncate' : 'max-w-[530px] w-max'
|
|
59
|
-
return ['text-
|
|
59
|
+
return ['text-body-sm font-normal absolute', bg, color, 'rounded-sm', pad, truncated].join(' ')
|
|
60
60
|
})
|
|
61
61
|
|
|
62
62
|
/* --- positioning logic --- */
|
|
@@ -9,27 +9,20 @@ import {
|
|
|
9
9
|
useFloating,
|
|
10
10
|
} from '@floating-ui/vue'
|
|
11
11
|
import { onClickOutside, onKeyStroke } from '@vueuse/core'
|
|
12
|
-
import { twMerge } from '
|
|
12
|
+
import { twMerge } from '#adata-ui/utils/twMerge'
|
|
13
13
|
import { useTooltipTrigger } from './useTooltipTrigger'
|
|
14
14
|
|
|
15
15
|
interface Props {
|
|
16
|
-
/** Preferred side; auto-flips when there isn't room. */
|
|
17
16
|
placement?: TooltipPlacement
|
|
18
|
-
/** How the tooltip opens. `manual` is fully driven by `v-model:open`. */
|
|
19
17
|
trigger?: TooltipTrigger
|
|
20
|
-
/** Show a pointer arrow aimed at the trigger. */
|
|
21
18
|
arrow?: boolean
|
|
22
|
-
/** Gap between trigger and tooltip, in px. */
|
|
23
19
|
offset?: number
|
|
24
20
|
openDelay?: number
|
|
25
21
|
closeDelay?: number
|
|
26
|
-
/** Render through `<Teleport to="body">` to escape overflow/stacking contexts. */
|
|
27
22
|
teleport?: boolean
|
|
28
23
|
disabled?: boolean
|
|
29
24
|
zIndex?: number
|
|
30
|
-
/** Plain-text fallback used when the `content` slot is empty. */
|
|
31
25
|
text?: string
|
|
32
|
-
/** Extra classes merged onto the tooltip box (e.g. width/padding overrides). */
|
|
33
26
|
contentClass?: string
|
|
34
27
|
}
|
|
35
28
|
|
|
@@ -80,7 +73,6 @@ const { x, y, strategy, middlewareData, placement: resolvedPlacement } = useFloa
|
|
|
80
73
|
const side = computed(() => resolvedPlacement.value.split('-')[0])
|
|
81
74
|
const opposite: Record<string, string> = { top: 'bottom', bottom: 'top', left: 'right', right: 'left' }
|
|
82
75
|
|
|
83
|
-
// Grow the panel out of the edge nearest the trigger.
|
|
84
76
|
const transformOrigin = computed(() => {
|
|
85
77
|
const [main, align] = resolvedPlacement.value.split('-')
|
|
86
78
|
const anchor = opposite[main] ?? 'center'
|
|
@@ -92,7 +84,6 @@ const transformOrigin = computed(() => {
|
|
|
92
84
|
return `${h} ${anchor}`
|
|
93
85
|
})
|
|
94
86
|
|
|
95
|
-
// The two outer edges of the rotated square form the visible point.
|
|
96
87
|
const arrowBorderClass = computed(() => {
|
|
97
88
|
switch (side.value) {
|
|
98
89
|
case 'top': return 'border-b border-r'
|
|
@@ -117,12 +108,11 @@ const interactive = computed(() => props.trigger !== 'hover')
|
|
|
117
108
|
|
|
118
109
|
const boxClass = computed(() =>
|
|
119
110
|
twMerge(
|
|
120
|
-
'rounded-
|
|
111
|
+
'rounded-md bg-white px-2.5 py-1.5 shadow-lg ring-1 ring-gray-200 dark:bg-gray-900 dark:ring-gray-700',
|
|
121
112
|
props.contentClass,
|
|
122
113
|
),
|
|
123
114
|
)
|
|
124
115
|
|
|
125
|
-
// Click mode dismisses on outside-click / Escape; hover leaves on its own; manual is parent-driven.
|
|
126
116
|
onClickOutside(
|
|
127
117
|
floating,
|
|
128
118
|
() => {
|
|
@@ -1,57 +1,63 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
1
|
+
import { useUrls } from '#adata-ui/composables/useUrls'
|
|
2
|
+
import AiAssistant from '#adata-ui/icons/ai-assistant.vue'
|
|
3
3
|
import IconArrowCircle from '#adata-ui/icons/arrow/arrow-circle-down.vue'
|
|
4
|
-
import
|
|
5
|
-
import IconGlobe from '#adata-ui/icons/globe.vue'
|
|
6
|
-
import IconScales from '#adata-ui/icons/scales/scale.vue'
|
|
7
|
-
import IconLink from '#adata-ui/icons/link-chain.vue'
|
|
4
|
+
import IconArrowGraph from '#adata-ui/icons/arrow/arrow-graph-up.vue'
|
|
8
5
|
import IconBlock from '#adata-ui/icons/block.vue'
|
|
9
|
-
import
|
|
10
|
-
import
|
|
11
|
-
import
|
|
12
|
-
import
|
|
6
|
+
import IconFavorite from '#adata-ui/icons/bookmark/bookmark.vue'
|
|
7
|
+
import IconBot from '#adata-ui/icons/bot.vue'
|
|
8
|
+
import AIconBriefcase from '#adata-ui/icons/briefcase.vue'
|
|
9
|
+
import IconCalc from '#adata-ui/icons/calculator.vue'
|
|
10
|
+
import AIconCarSide from '#adata-ui/icons/car-side.vue'
|
|
13
11
|
import IconCar from '#adata-ui/icons/car.vue'
|
|
14
|
-
import
|
|
15
|
-
import
|
|
16
|
-
import
|
|
12
|
+
import AIconCart from '#adata-ui/icons/cart.vue'
|
|
13
|
+
import CheckSb from '#adata-ui/icons/check-sb.vue'
|
|
14
|
+
import IconCheckCircle from '#adata-ui/icons/check/check-circle.vue'
|
|
17
15
|
import IconCompany from '#adata-ui/icons/company.vue'
|
|
16
|
+
import IconDollar from '#adata-ui/icons/currency/currency-dollar.vue'
|
|
17
|
+
import IconFilePen from '#adata-ui/icons/file-pen.vue'
|
|
18
|
+
import IconFileStack from '#adata-ui/icons/file-stack.vue'
|
|
19
|
+
import IconGitCompare from '#adata-ui/icons/git-compare.vue'
|
|
20
|
+
import IconGlobe from '#adata-ui/icons/globe.vue'
|
|
18
21
|
import IconHandshake from '#adata-ui/icons/handshake.vue'
|
|
19
|
-
import
|
|
20
|
-
import IconCalc from '#adata-ui/icons/calculator.vue'
|
|
21
|
-
import IconProfile from '#adata-ui/icons/profile.vue'
|
|
22
|
-
import { buildLocalizedUrl } from '#adata-ui/utils/localizedNavigation'
|
|
23
|
-
import IconLock from '#adata-ui/icons/lock.vue'
|
|
24
|
-
import IconReceipt from '#adata-ui/icons/receipt.vue'
|
|
25
|
-
import IconFavorite from '#adata-ui/icons/bookmark/bookmark.vue'
|
|
22
|
+
import IconDocument from '#adata-ui/icons/hdocument.vue'
|
|
26
23
|
import IconHistory from '#adata-ui/icons/history.vue'
|
|
24
|
+
import HotLine from '#adata-ui/icons/hot-line.vue'
|
|
25
|
+
import IconLink from '#adata-ui/icons/link-chain.vue'
|
|
26
|
+
import IconLock from '#adata-ui/icons/lock.vue'
|
|
27
|
+
import MapPaper from '#adata-ui/icons/map-paper.vue'
|
|
28
|
+
import MapPinRect from '#adata-ui/icons/map/map-pin-rect.vue'
|
|
29
|
+
import IconMedal from '#adata-ui/icons/medal.vue'
|
|
27
30
|
import IconMessage from '#adata-ui/icons/message/message.vue'
|
|
28
|
-
import
|
|
29
|
-
import
|
|
31
|
+
import IconProfile from '#adata-ui/icons/profile.vue'
|
|
32
|
+
import IconReceipt from '#adata-ui/icons/receipt.vue'
|
|
33
|
+
import Sanctions from '#adata-ui/icons/sanctions.vue'
|
|
34
|
+
import IconScales from '#adata-ui/icons/scales/scale.vue'
|
|
35
|
+
import IconSearch from '#adata-ui/icons/search.vue'
|
|
36
|
+
import IconShieldAlert from '#adata-ui/icons/shield-alert.vue'
|
|
30
37
|
import AIconShieldVerified from '#adata-ui/icons/shield-verified.vue'
|
|
31
|
-
import
|
|
38
|
+
import Connections from '#adata-ui/icons/sviazi.vue'
|
|
39
|
+
import Tasks from '#adata-ui/icons/tasks.vue'
|
|
40
|
+
import IconTruck from '#adata-ui/icons/truck.vue'
|
|
41
|
+
import IconUsers from '#adata-ui/icons/users.vue'
|
|
42
|
+
import IconWork from '#adata-ui/icons/work-bag.vue'
|
|
43
|
+
import { PAGES } from '#adata-ui/shared/constans/pages'
|
|
44
|
+
import { buildLocalizedUrl } from '#adata-ui/utils/localizedNavigation'
|
|
32
45
|
import {
|
|
33
|
-
|
|
46
|
+
AIconAkimat,
|
|
34
47
|
AIconArrowGraphUp,
|
|
35
|
-
AIconGlobe,
|
|
36
48
|
AIconArrowSquareDown,
|
|
49
|
+
AIconCurrencyTenge,
|
|
50
|
+
AIconExcelIcon,
|
|
37
51
|
AIconExpandWindow,
|
|
52
|
+
AIconFile,
|
|
53
|
+
AIconGlobe,
|
|
54
|
+
AIconSearch,
|
|
38
55
|
AIconUsers,
|
|
56
|
+
AIconUsersThree,
|
|
39
57
|
AIconWarningTriangle,
|
|
40
|
-
AIconSearch,
|
|
41
|
-
AIconAkimat,
|
|
42
|
-
AIconCurrencyTenge,
|
|
43
|
-
AIconExcelIcon, AIconFile,
|
|
44
58
|
} from '#components'
|
|
45
|
-
import MapPinRect from '#adata-ui/icons/map/map-pin-rect.vue'
|
|
46
|
-
import MapPaper from '#adata-ui/icons/map-paper.vue'
|
|
47
|
-
import { useUrls } from '#adata-ui/composables/useUrls'
|
|
48
|
-
import AiAssistant from '#adata-ui/icons/ai-assistant.vue'
|
|
49
|
-
import Tasks from '#adata-ui/icons/tasks.vue'
|
|
50
|
-
import HotLine from '#adata-ui/icons/hot-line.vue'
|
|
51
|
-
import Sanctions from '#adata-ui/icons/sanctions.vue'
|
|
52
|
-
import CheckSb from '#adata-ui/icons/check-sb.vue'
|
|
53
59
|
|
|
54
|
-
export
|
|
60
|
+
export function useHeaderNavigationLinks() {
|
|
55
61
|
const { t, locale } = useI18n()
|
|
56
62
|
const urls = useUrls()
|
|
57
63
|
|
|
@@ -97,19 +103,19 @@ export const useHeaderNavigationLinks = () => {
|
|
|
97
103
|
{
|
|
98
104
|
title: t('header.products.counterparties.items.networks.title'),
|
|
99
105
|
icon: IconLink,
|
|
100
|
-
to: buildLocalizedUrl(locale, urls.pk, PAGES.pk.connections)
|
|
106
|
+
to: buildLocalizedUrl(locale, urls.pk, PAGES.pk.connections),
|
|
101
107
|
},
|
|
102
108
|
{
|
|
103
109
|
title: t('header.products.counterparties.items.sanction.title'),
|
|
104
110
|
icon: IconBlock,
|
|
105
|
-
to: buildLocalizedUrl(locale, urls.pk, PAGES.pk.sanctions)
|
|
111
|
+
to: buildLocalizedUrl(locale, urls.pk, PAGES.pk.sanctions),
|
|
106
112
|
},
|
|
107
113
|
{
|
|
108
114
|
title: t('header.products.counterparties.items.offshore.title'),
|
|
109
115
|
icon: IconDollar,
|
|
110
|
-
to: buildLocalizedUrl(locale, urls.pk, PAGES.pk.offshore)
|
|
111
|
-
}
|
|
112
|
-
]
|
|
116
|
+
to: buildLocalizedUrl(locale, urls.pk, PAGES.pk.offshore),
|
|
117
|
+
},
|
|
118
|
+
],
|
|
113
119
|
},
|
|
114
120
|
{
|
|
115
121
|
key: 'fines',
|
|
@@ -122,13 +128,13 @@ export const useHeaderNavigationLinks = () => {
|
|
|
122
128
|
title: t('header.products.fines.items.fines.title'),
|
|
123
129
|
subtitle: t('header.products.fines.items.fines.subtitle'),
|
|
124
130
|
icon: IconCheckCircle,
|
|
125
|
-
to: buildLocalizedUrl(locale, urls.avto, PAGES.fines.main)
|
|
131
|
+
to: buildLocalizedUrl(locale, urls.avto, PAGES.fines.main),
|
|
126
132
|
},
|
|
127
133
|
{
|
|
128
134
|
title: t('header.products.fines.items.auto.title'),
|
|
129
135
|
subtitle: t('header.products.fines.items.auto.subtitle'),
|
|
130
136
|
icon: IconCar,
|
|
131
|
-
to: buildLocalizedUrl(locale, urls.avto, PAGES.fines.avto)
|
|
137
|
+
to: buildLocalizedUrl(locale, urls.avto, PAGES.fines.avto),
|
|
132
138
|
},
|
|
133
139
|
// {
|
|
134
140
|
// title: t('header.products.fines.items.wholesaleAuto.title'),
|
|
@@ -136,7 +142,7 @@ export const useHeaderNavigationLinks = () => {
|
|
|
136
142
|
// icon: IconTruck,
|
|
137
143
|
// to: buildLocalizedUrl(locale, urls.avto, PAGES.fines.bulk)
|
|
138
144
|
// }
|
|
139
|
-
]
|
|
145
|
+
],
|
|
140
146
|
},
|
|
141
147
|
{
|
|
142
148
|
key: 'work',
|
|
@@ -149,15 +155,15 @@ export const useHeaderNavigationLinks = () => {
|
|
|
149
155
|
title: t('header.products.jobs.items.vacancies.title'),
|
|
150
156
|
icon: IconWork,
|
|
151
157
|
subtitle: t('header.products.jobs.items.vacancies.subtitle'),
|
|
152
|
-
to: urls.work + PAGES.work.vacancy
|
|
158
|
+
to: urls.work + PAGES.work.vacancy,
|
|
153
159
|
},
|
|
154
160
|
{
|
|
155
161
|
title: t('header.products.jobs.items.resume.title'),
|
|
156
162
|
subtitle: t('header.products.jobs.items.resume.subtitle'),
|
|
157
163
|
icon: IconDocument,
|
|
158
|
-
to: urls.work + PAGES.work.summary
|
|
159
|
-
}
|
|
160
|
-
]
|
|
164
|
+
to: urls.work + PAGES.work.summary,
|
|
165
|
+
},
|
|
166
|
+
],
|
|
161
167
|
},
|
|
162
168
|
{
|
|
163
169
|
key: 'fea',
|
|
@@ -171,46 +177,46 @@ export const useHeaderNavigationLinks = () => {
|
|
|
171
177
|
title: t('header.products.fea.items.o.t'),
|
|
172
178
|
subtitle: t('header.products.fea.items.o.st'),
|
|
173
179
|
icon: Connections,
|
|
174
|
-
to: buildLocalizedUrl(locale, urls.tnved, PAGES.fea.o)
|
|
180
|
+
to: buildLocalizedUrl(locale, urls.tnved, PAGES.fea.o),
|
|
175
181
|
},
|
|
176
182
|
{
|
|
177
183
|
title: t('header.products.fea.items.i.t'),
|
|
178
184
|
subtitle: t('header.products.fea.items.i.st'),
|
|
179
185
|
icon: IconHandshake,
|
|
180
|
-
to: buildLocalizedUrl(locale, urls.tnved, PAGES.fea.t)
|
|
186
|
+
to: buildLocalizedUrl(locale, urls.tnved, PAGES.fea.t),
|
|
181
187
|
},
|
|
182
188
|
{
|
|
183
189
|
title: t('header.products.fea.items.cp.t'),
|
|
184
190
|
subtitle: t('header.products.fea.items.cp.st'),
|
|
185
191
|
icon: IconTruck,
|
|
186
|
-
to: buildLocalizedUrl(locale, urls.tnved, PAGES.fea.cp)
|
|
192
|
+
to: buildLocalizedUrl(locale, urls.tnved, PAGES.fea.cp),
|
|
187
193
|
|
|
188
194
|
},
|
|
189
195
|
{
|
|
190
196
|
title: t('header.products.fea.items.ca.t'),
|
|
191
197
|
subtitle: t('header.products.fea.items.ca.st'),
|
|
192
198
|
icon: IconCalc,
|
|
193
|
-
to: buildLocalizedUrl(locale, urls.tnved, PAGES.fea.ca)
|
|
199
|
+
to: buildLocalizedUrl(locale, urls.tnved, PAGES.fea.ca),
|
|
194
200
|
},
|
|
195
201
|
{
|
|
196
202
|
title: t('header.products.fea.items.tr.t'),
|
|
197
203
|
subtitle: t('header.products.fea.items.tr.st'),
|
|
198
204
|
icon: IconGlobe,
|
|
199
|
-
to: buildLocalizedUrl(locale, urls.tnved, PAGES.fea.tr)
|
|
205
|
+
to: buildLocalizedUrl(locale, urls.tnved, PAGES.fea.tr),
|
|
200
206
|
},
|
|
201
207
|
{
|
|
202
208
|
title: t('header.products.fea.items.containers.t'),
|
|
203
209
|
subtitle: t('header.products.fea.items.containers.st'),
|
|
204
210
|
icon: MapPaper,
|
|
205
|
-
to: buildLocalizedUrl(locale, urls.tnved, PAGES.fea.containers)
|
|
211
|
+
to: buildLocalizedUrl(locale, urls.tnved, PAGES.fea.containers),
|
|
206
212
|
},
|
|
207
213
|
{
|
|
208
214
|
title: t('header.products.fea.items.importerMap.t'),
|
|
209
215
|
subtitle: t('header.products.fea.items.importerMap.st'),
|
|
210
216
|
icon: MapPinRect,
|
|
211
|
-
to: buildLocalizedUrl(locale, urls.tnved, PAGES.fea.importerMap)
|
|
217
|
+
to: buildLocalizedUrl(locale, urls.tnved, PAGES.fea.importerMap),
|
|
212
218
|
},
|
|
213
|
-
]
|
|
219
|
+
],
|
|
214
220
|
},
|
|
215
221
|
{
|
|
216
222
|
key: 'tenders',
|
|
@@ -257,47 +263,47 @@ export const useHeaderNavigationLinks = () => {
|
|
|
257
263
|
icon: AIconSearch,
|
|
258
264
|
to: urls.tender,
|
|
259
265
|
},
|
|
260
|
-
]
|
|
266
|
+
],
|
|
261
267
|
},
|
|
262
268
|
{
|
|
263
269
|
key: 'edo',
|
|
264
270
|
is_new: true,
|
|
265
271
|
name: t('header.products.edo.label'),
|
|
266
|
-
link: buildLocalizedUrl(locale, urls.edo_docs
|
|
272
|
+
link: buildLocalizedUrl(locale, urls.edo_docs, ''),
|
|
267
273
|
icon: AIconFile,
|
|
268
274
|
data_attribute: 'navigation-menu-edo-block',
|
|
269
275
|
items: [
|
|
270
276
|
{
|
|
271
277
|
title: t('header.products.edo.items.docSign.t'),
|
|
272
278
|
subtitle: t('header.products.edo.items.docSign.st'),
|
|
273
|
-
icon:
|
|
274
|
-
to: buildLocalizedUrl(locale, urls.edo_docs
|
|
279
|
+
icon: IconFilePen,
|
|
280
|
+
to: buildLocalizedUrl(locale, urls.edo_docs, PAGES.edo.docSign),
|
|
275
281
|
},
|
|
276
282
|
{
|
|
277
283
|
title: t('header.products.edo.items.docTemplate.t'),
|
|
278
284
|
subtitle: t('header.products.edo.items.docTemplate.st'),
|
|
279
|
-
icon:
|
|
280
|
-
to: buildLocalizedUrl(locale, urls.edo_docs
|
|
285
|
+
icon: IconFileStack,
|
|
286
|
+
to: buildLocalizedUrl(locale, urls.edo_docs, PAGES.edo.docTemplate),
|
|
281
287
|
},
|
|
282
288
|
{
|
|
283
289
|
title: t('header.products.edo.items.docRisk.t'),
|
|
284
290
|
subtitle: t('header.products.edo.items.docRisk.st'),
|
|
285
|
-
icon:
|
|
286
|
-
to: buildLocalizedUrl(locale, urls.edo_docs
|
|
291
|
+
icon: IconShieldAlert,
|
|
292
|
+
to: buildLocalizedUrl(locale, urls.edo_docs, PAGES.edo.docRisk),
|
|
287
293
|
},
|
|
288
294
|
{
|
|
289
295
|
title: t('header.products.edo.items.docCompare.t'),
|
|
290
296
|
subtitle: t('header.products.edo.items.docCompare.st'),
|
|
291
|
-
icon:
|
|
292
|
-
to: buildLocalizedUrl(locale, urls.edo_docs
|
|
297
|
+
icon: IconGitCompare,
|
|
298
|
+
to: buildLocalizedUrl(locale, urls.edo_docs, PAGES.edo.docCompare),
|
|
293
299
|
},
|
|
294
300
|
{
|
|
295
301
|
title: t('header.products.edo.items.docAi.t'),
|
|
296
302
|
subtitle: t('header.products.edo.items.docAi.st'),
|
|
297
|
-
icon:
|
|
298
|
-
to: buildLocalizedUrl(locale, urls.edo_docs
|
|
303
|
+
icon: IconBot,
|
|
304
|
+
to: buildLocalizedUrl(locale, urls.edo_docs, PAGES.edo.docAi),
|
|
299
305
|
},
|
|
300
|
-
]
|
|
306
|
+
],
|
|
301
307
|
},
|
|
302
308
|
{
|
|
303
309
|
key: 'compliance',
|
|
@@ -311,39 +317,39 @@ export const useHeaderNavigationLinks = () => {
|
|
|
311
317
|
title: t('header.products.compliance.items.assistant.t'),
|
|
312
318
|
subtitle: t('header.products.compliance.items.assistant.st'),
|
|
313
319
|
icon: AiAssistant,
|
|
314
|
-
to: urls.compliancemain + PAGES.compliance.assistant
|
|
320
|
+
to: urls.compliancemain + PAGES.compliance.assistant,
|
|
315
321
|
},
|
|
316
322
|
{
|
|
317
323
|
title: t('header.products.compliance.items.assignments.t'),
|
|
318
324
|
subtitle: t('header.products.compliance.items.assignments.st'),
|
|
319
325
|
icon: Tasks,
|
|
320
|
-
to: urls.compliancemain + PAGES.compliance.assignments
|
|
326
|
+
to: urls.compliancemain + PAGES.compliance.assignments,
|
|
321
327
|
},
|
|
322
328
|
{
|
|
323
329
|
title: t('header.products.compliance.items.hotline.t'),
|
|
324
330
|
subtitle: t('header.products.compliance.items.hotline.st'),
|
|
325
331
|
icon: HotLine,
|
|
326
|
-
to: urls.compliancemain + PAGES.compliance.hotline
|
|
332
|
+
to: urls.compliancemain + PAGES.compliance.hotline,
|
|
327
333
|
},
|
|
328
334
|
{
|
|
329
335
|
title: t('header.products.compliance.items.sanctions.t'),
|
|
330
336
|
subtitle: t('header.products.compliance.items.sanctions.st'),
|
|
331
337
|
icon: Sanctions,
|
|
332
|
-
to: urls.compliancemain + PAGES.compliance.sanctions
|
|
338
|
+
to: urls.compliancemain + PAGES.compliance.sanctions,
|
|
333
339
|
},
|
|
334
340
|
{
|
|
335
341
|
title: t('header.products.compliance.items.suppliers.t'),
|
|
336
342
|
subtitle: t('header.products.compliance.items.suppliers.st'),
|
|
337
343
|
icon: IconProfile,
|
|
338
|
-
to: urls.compliancemain + PAGES.compliance.suppliers
|
|
344
|
+
to: urls.compliancemain + PAGES.compliance.suppliers,
|
|
339
345
|
},
|
|
340
346
|
{
|
|
341
347
|
title: t('header.products.compliance.items.sb.t'),
|
|
342
348
|
subtitle: t('header.products.compliance.items.sb.st'),
|
|
343
349
|
icon: CheckSb,
|
|
344
|
-
to: urls.compliancemain + PAGES.compliance.sb
|
|
350
|
+
to: urls.compliancemain + PAGES.compliance.sb,
|
|
345
351
|
},
|
|
346
|
-
]
|
|
352
|
+
],
|
|
347
353
|
},
|
|
348
354
|
{
|
|
349
355
|
key: 'analytics',
|
|
@@ -362,34 +368,34 @@ export const useHeaderNavigationLinks = () => {
|
|
|
362
368
|
title: t('header.products.analytics.items.activity.title'),
|
|
363
369
|
subtitle: t('header.products.analytics.items.activity.subtitle'),
|
|
364
370
|
icon: IconArrowGraph,
|
|
365
|
-
to: buildLocalizedUrl(locale, urls.analytics, PAGES.analytics.index)
|
|
371
|
+
to: buildLocalizedUrl(locale, urls.analytics, PAGES.analytics.index),
|
|
366
372
|
|
|
367
373
|
},
|
|
368
374
|
{
|
|
369
375
|
title: t('header.products.analytics.items.rate.title'),
|
|
370
376
|
subtitle: t('header.products.analytics.items.rate.subtitle'),
|
|
371
377
|
icon: IconMedal,
|
|
372
|
-
to: buildLocalizedUrl(locale, urls.analytics, PAGES.analytics.rating)
|
|
378
|
+
to: buildLocalizedUrl(locale, urls.analytics, PAGES.analytics.rating),
|
|
373
379
|
},
|
|
374
380
|
{
|
|
375
381
|
title: t('header.products.analytics.items.subjects.title'),
|
|
376
382
|
subtitle: t('header.products.analytics.items.subjects.subtitle'),
|
|
377
383
|
icon: IconCompany,
|
|
378
|
-
to: buildLocalizedUrl(locale, urls.analytics, PAGES.analytics.business)
|
|
384
|
+
to: buildLocalizedUrl(locale, urls.analytics, PAGES.analytics.business),
|
|
379
385
|
},
|
|
380
386
|
{
|
|
381
387
|
title: t('header.products.analytics.items.demography.title'),
|
|
382
388
|
subtitle: t('header.products.analytics.items.demography.subtitle'),
|
|
383
389
|
icon: IconCompany,
|
|
384
|
-
to: buildLocalizedUrl(locale, urls.analytics, PAGES.analytics.demography)
|
|
385
|
-
}
|
|
386
|
-
]
|
|
390
|
+
to: buildLocalizedUrl(locale, urls.analytics, PAGES.analytics.demography),
|
|
391
|
+
},
|
|
392
|
+
],
|
|
387
393
|
},
|
|
388
394
|
]
|
|
389
395
|
})
|
|
390
396
|
}
|
|
391
397
|
|
|
392
|
-
export
|
|
398
|
+
export function useHeaderMenuLinks() {
|
|
393
399
|
const { t, locale } = useI18n()
|
|
394
400
|
const urls = useUrls()
|
|
395
401
|
|
|
@@ -398,25 +404,25 @@ export const useHeaderMenuLinks = () => {
|
|
|
398
404
|
title: t('header.profile.menu.personalInfo'),
|
|
399
405
|
icon: IconProfile,
|
|
400
406
|
to: buildLocalizedUrl(locale.value, urls.landing, PAGES.profile.index),
|
|
401
|
-
dataTestId: 'dropdown-profile-button'
|
|
407
|
+
dataTestId: 'dropdown-profile-button',
|
|
402
408
|
},
|
|
403
409
|
{
|
|
404
410
|
title: t('header.profile.menu.security'),
|
|
405
411
|
icon: IconLock,
|
|
406
412
|
to: buildLocalizedUrl(locale.value, urls.landing, PAGES.profile.security),
|
|
407
|
-
dataTestId: 'dropdown-profile-change-password-button'
|
|
413
|
+
dataTestId: 'dropdown-profile-change-password-button',
|
|
408
414
|
},
|
|
409
415
|
{
|
|
410
416
|
title: t('header.profile.menu.paymentHistory'),
|
|
411
417
|
icon: IconReceipt,
|
|
412
418
|
to: buildLocalizedUrl(locale.value, urls.landing, PAGES.profile.paymentHistory),
|
|
413
|
-
dataTestId: 'dropdown-profile-payment-story-button'
|
|
419
|
+
dataTestId: 'dropdown-profile-payment-story-button',
|
|
414
420
|
},
|
|
415
421
|
{
|
|
416
422
|
title: t('header.profile.menu.favourites'),
|
|
417
423
|
icon: IconFavorite,
|
|
418
424
|
to: buildLocalizedUrl(locale.value, urls.landing, PAGES.profile.favourites),
|
|
419
|
-
dataTestId: 'dropdown-favourites-button'
|
|
425
|
+
dataTestId: 'dropdown-favourites-button',
|
|
420
426
|
},
|
|
421
427
|
// {
|
|
422
428
|
// title: t('header.profile.menu.myReports'),
|
|
@@ -427,24 +433,24 @@ export const useHeaderMenuLinks = () => {
|
|
|
427
433
|
title: t('header.profile.menu.browsingHistory'),
|
|
428
434
|
icon: IconHistory,
|
|
429
435
|
to: buildLocalizedUrl(locale.value, urls.landing, PAGES.profile.browsingHistory),
|
|
430
|
-
dataTestId: 'dropdown-profile-view-history-button'
|
|
436
|
+
dataTestId: 'dropdown-profile-view-history-button',
|
|
431
437
|
},
|
|
432
438
|
{
|
|
433
439
|
title: t('header.profile.menu.myGroups'),
|
|
434
440
|
icon: IconUsers,
|
|
435
441
|
to: buildLocalizedUrl(locale.value, urls.landing, PAGES.profile.myGroups),
|
|
436
|
-
dataTestId: 'dropdown-profile-my-groups-button'
|
|
442
|
+
dataTestId: 'dropdown-profile-my-groups-button',
|
|
437
443
|
},
|
|
438
444
|
{
|
|
439
445
|
title: t('header.profile.menu.notes'),
|
|
440
446
|
icon: IconMessage,
|
|
441
447
|
to: buildLocalizedUrl(locale.value, urls.landing, PAGES.profile.notes),
|
|
442
|
-
dataTestId: 'dropdown-profile-notes-button'
|
|
443
|
-
}
|
|
448
|
+
dataTestId: 'dropdown-profile-notes-button',
|
|
449
|
+
},
|
|
444
450
|
]
|
|
445
451
|
}
|
|
446
452
|
|
|
447
|
-
export
|
|
453
|
+
export function usePkServicesLinks() {
|
|
448
454
|
const { t, locale } = useI18n()
|
|
449
455
|
const urls = useUrls()
|
|
450
456
|
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<svg
|
|
3
|
+
width="24"
|
|
4
|
+
height="24"
|
|
5
|
+
viewBox="0 0 24 24"
|
|
6
|
+
fill="none"
|
|
7
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
8
|
+
>
|
|
9
|
+
<path
|
|
10
|
+
fill-rule="evenodd"
|
|
11
|
+
clip-rule="evenodd"
|
|
12
|
+
d="M20.5 4.29167C20.5 3.79679 20.1433 3.5 19.8269 3.5H4.17308C3.85674 3.5 3.5 3.79679 3.5 4.29167V7.375C3.5 7.86988 3.85674 8.16667 4.17308 8.16667H19.8269C20.1433 8.16667 20.5 7.86988 20.5 7.375V4.29167ZM19.8269 2C21.0825 2 22 3.08367 22 4.29167V7.375C22 8.32596 21.4314 9.19986 20.5769 9.52871V19.7084C20.5769 20.2976 20.3614 20.8737 19.9612 21.3072C19.5592 21.7427 19.0004 22 18.4038 22H5.59614C4.99955 22 4.44081 21.7427 4.03877 21.3072C3.63859 20.8737 3.42307 20.2976 3.42307 19.7084V9.5287C2.56859 9.19985 2 8.32595 2 7.375V4.29167C2 3.08367 2.91753 2 4.17308 2H19.8269ZM4.92307 9.66669V19.7084C4.92307 19.9368 5.0074 20.1451 5.14098 20.2898C5.27269 20.4325 5.43788 20.5 5.59614 20.5H18.4038C18.5621 20.5 18.7273 20.4325 18.859 20.2898C18.9926 20.1451 19.0769 19.9368 19.0769 19.7084V9.66669H4.92307ZM9.86539 12.7917C9.45117 12.7917 9.11539 13.1275 9.11539 13.5417C9.11539 13.9559 9.45117 14.2917 9.86539 14.2917H14.1346C14.5488 14.2917 14.8846 13.9559 14.8846 13.5417C14.8846 13.1275 14.5488 12.7917 14.1346 12.7917H9.86539Z"
|
|
13
|
+
fill="currentColor"
|
|
14
|
+
/>
|
|
15
|
+
</svg>
|
|
16
|
+
</template>
|