adata-ui 2.1.41-beta.7 → 2.1.41-beta.8
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/-error.vue +170 -170
- package/.editorconfig +12 -12
- package/.gitlab-ci.yml +16 -16
- package/.nuxtrc +1 -1
- package/.nvmrc +1 -1
- package/.playground/app.config.ts +5 -5
- package/.playground/app.vue +102 -102
- package/.playground/nuxt.config.ts +4 -4
- package/CLAUDE.md +63 -63
- package/README.md +75 -75
- package/app.config.ts +28 -28
- package/app.vue +8 -8
- package/assets/styles/main.css +12 -12
- package/assets/styles/theme.css +590 -590
- package/assets/styles/ui.css +247 -247
- package/components/elements/README.md +1 -1
- package/components/elements/a-select-row/ASelectRowV2.vue +210 -210
- package/components/elements/a-select-row/index.vue +139 -139
- package/components/elements/accordion/AAccordion.vue +199 -199
- package/components/elements/accordion/AAccordionGroup/AAccordionGroup.vue +145 -145
- package/components/elements/accordion/AAccordionGroup/types.ts +20 -20
- package/components/elements/accordion/AAccordionGroup/ui.config.ts +22 -22
- package/components/elements/accordion/types.ts +14 -14
- package/components/elements/accordion/ui.config.ts +22 -22
- package/components/elements/alert/AAlert.vue +52 -52
- package/components/elements/banner/ABanner.vue +49 -49
- package/components/elements/bg-block/ABgBlock.vue +11 -11
- package/components/elements/button/AButton.vue +191 -191
- package/components/elements/button/AButtonV2.vue +179 -179
- package/components/elements/button/types.ts +24 -24
- package/components/elements/button-login/index.vue +19 -19
- package/components/elements/calendar/ACalendar.vue +83 -83
- package/components/elements/carousel/ACarousel.vue +159 -159
- package/components/elements/carousel/config.ui.ts +15 -15
- package/components/elements/carousel/types.ts +18 -18
- package/components/elements/chip-wrapper/AChipWrapper.vue +81 -81
- package/components/elements/chip-wrapper/types.ts +12 -12
- package/components/elements/chips/AChips.vue +33 -33
- package/components/elements/companies/AOurClients.vue +47 -47
- package/components/elements/count-up/ACountUp.vue +54 -54
- package/components/elements/curve-block/ACurveBlock.vue +259 -259
- package/components/elements/curve-block-v2/ACurveBlockV2.vue +122 -122
- package/components/elements/digit-badge/ADigitBadge.vue +86 -86
- package/components/elements/empty-box/empty-box-V2.vue +92 -92
- package/components/elements/error-template/index.vue +121 -119
- package/components/elements/feature-description/AFeatureDescription.vue +112 -112
- package/components/elements/illustrations/noAccess.vue +71 -71
- package/components/elements/infinite-carousel/AInfiniteCarousel.vue +85 -85
- package/components/elements/infinite-scroll/AInfiniteScroll.vue +33 -33
- package/components/elements/leave-note/ALeaveNote.vue +102 -102
- package/components/elements/pagination/APagination.vue +110 -110
- package/components/elements/photos-animation/APhotosAnimation.vue +85 -85
- package/components/elements/section-heading/ASectionHeading.vue +35 -35
- package/components/elements/segmented/ASegmentedV2.vue +154 -154
- package/components/elements/select/ACascadeSelectV2.vue +710 -710
- package/components/elements/select/ASelect.vue +448 -448
- package/components/elements/select/ASelectMobile.vue +186 -186
- package/components/elements/select/ASelectV2.vue +507 -507
- package/components/elements/select/cascade-utils.ts +115 -115
- package/components/elements/select/types.ts +27 -27
- package/components/elements/select/ui/cascade-drawer.vue +146 -146
- package/components/elements/select/ui/cascade-panel.vue +237 -237
- package/components/elements/select/ui/select-button.vue +112 -112
- package/components/elements/select/ui/select-list.vue +99 -99
- package/components/elements/select/ui/select-trigger.vue +167 -167
- package/components/elements/show-more/AShowMore.vue +35 -35
- package/components/elements/show-more/AShowMoreV2.vue +26 -26
- package/components/elements/skeleton/ASkeleton.vue +44 -44
- package/components/elements/slider/ASlider.vue +175 -175
- package/components/elements/slider/ASliderItem.vue +31 -31
- package/components/elements/slider/ASliderV2.vue +182 -182
- package/components/elements/slider/types.ts +21 -21
- package/components/elements/star-rating/AStarRating.vue +189 -189
- package/components/elements/star-rating/types.ts +7 -7
- package/components/elements/star-rating/ui/Star.vue +74 -74
- package/components/elements/status-badge/AStatusBadge.vue +125 -125
- package/components/elements/step-slider/AStepSliderColCard.vue +270 -270
- package/components/elements/step-slider/AStepSliderColNumber.vue +199 -199
- package/components/elements/table/ATable.vue +93 -93
- package/components/elements/table/table.config.ts +32 -32
- package/components/elements/tree-select/ATreeSelect.vue +157 -157
- package/components/elements/tree-select/TreeService.ts +184 -184
- package/components/elements/tree-select/components/ATreeSelectNode.vue +104 -104
- package/components/elements/tree-select/types.ts +63 -63
- package/components/elements/tree-select/utils.ts +30 -30
- package/components/elements/tree-select-mobile/ATreeSelectMobile.vue +79 -79
- package/components/elements/tree-select-mobile/components/ATreeSelectNodesMobile.vue +175 -175
- package/components/elements/tree-select-modal/ATreeSelectModal.vue +217 -217
- package/components/features/color-mode/AColorMode.client.vue +74 -74
- package/components/features/dropdown/ADropdown.vue +127 -127
- package/components/features/dropdown/ADropdownV2.vue +140 -140
- package/components/features/go-top/GoTop.vue +67 -67
- package/components/features/lang-switcher/lang-switcher.vue +158 -158
- package/components/features/payment/banner/BasicPlusLimitBanner.vue +84 -84
- package/components/features/payment/banner/PaymentBanner.vue +88 -88
- package/components/features/payment/banner/UpSellBanner.vue +105 -105
- package/components/features/payment/process/PaymentKaspiQrSidePanel.vue +180 -180
- package/components/features/payment/process/PaymentKaspiRedirectSidePanel.vue +123 -123
- package/components/features/payment/process/PaymentMethodSidePanel.vue +138 -138
- package/components/features/payment/process/PaymentProcess.vue +158 -158
- package/components/features/payment/process/PaymentTopUpSidePanel.vue +119 -119
- package/components/features/pk-mobile-services/APkMobileServices.vue +107 -107
- package/components/features//321/201hange-version/AChangeVersion.vue +20 -20
- package/components/forms/README.md +1 -1
- package/components/forms/checkbox/ACheckbox.vue +149 -149
- package/components/forms/checkbox/ACheckboxV2.vue +229 -229
- package/components/forms/feedback-form/FeedbackForm.vue +177 -177
- package/components/forms/feedback-form/FeedbackFormV2.vue +183 -183
- package/components/forms/input/AInputV2.vue +560 -560
- package/components/forms/input/button/AInputButton.vue +53 -53
- package/components/forms/input/date/AInputDate.vue +217 -217
- package/components/forms/input/password/AInputPassword.vue +59 -59
- package/components/forms/input/standard/AInputStandard.vue +424 -424
- package/components/forms/input/textarea/ATextarea.vue +207 -207
- package/components/forms/input/textarea/ATextareaV2.vue +253 -253
- package/components/forms/radio-button/ARadioButton.vue +95 -95
- package/components/forms/request-demo/ARequestDemo.vue +108 -108
- package/components/forms/toggle/AToggle.vue +157 -157
- package/components/forms/toggle/AToggleV2.vue +72 -72
- package/components/forms/toggle/types.ts +16 -16
- package/components/modals/AConfirmationEmail.vue +40 -40
- package/components/modals/AboutTariffModal.vue +115 -115
- package/components/modals/AnotherDeviceModal.vue +65 -65
- package/components/modals/ApplicationAcceptedModal.vue +45 -45
- package/components/modals/ConnectingTariffModal.vue +60 -60
- package/components/modals/ContactsMobileModel.vue +182 -182
- package/components/modals/ContentNavigationModal.vue +100 -100
- package/components/modals/Insufficient-funds-modal.vue +62 -62
- package/components/modals/LimitReachedModal.vue +44 -44
- package/components/modals/NoAccessModal.vue +39 -39
- package/components/modals/PaymentMethodModal.vue +101 -101
- package/components/modals/RedirectsBanksModal.vue +69 -69
- package/components/modals/ReplenishModal.vue +132 -132
- package/components/modals/ReportBugConfirmModal.vue +32 -32
- package/components/modals/ReportBugModal.vue +172 -172
- package/components/modals/Resend.vue +81 -81
- package/components/modals/SubmitApplicationModal.vue +126 -126
- package/components/modals/id/AuthModal.vue +72 -72
- package/components/modals/id/IdAutoLogoutModal.vue +44 -44
- package/components/modals/id/IdBanner.vue +41 -41
- package/components/modals/id/IdConfirmAccountOtpModal.vue +182 -182
- package/components/modals/id/IdConfirmSuccessfulModal.vue +41 -41
- package/components/modals/id/IdLoginModal.vue +336 -336
- package/components/modals/id/IdModals.vue +129 -129
- package/components/modals/id/IdNewPasswordModal.vue +129 -129
- package/components/modals/id/IdOtpInput.vue +156 -156
- package/components/modals/id/IdPasswordSuccessfulModal.vue +25 -25
- package/components/modals/id/IdRecoveryModal.vue +117 -117
- package/components/modals/id/IdRegistrationModal.vue +215 -215
- package/components/modals/id/IdResetPasswordOtpModal.vue +159 -159
- package/components/modals/id/IdTwoFactorModal.vue +126 -126
- package/components/navigation/README.md +1 -1
- package/components/navigation/bottom-navigation/ABottomNavigation.vue +106 -106
- package/components/navigation/breadcrumbs/ABreadcrumbs.vue +128 -128
- package/components/navigation/breadcrumbs/types.ts +8 -8
- package/components/navigation/footer/AFooter.vue +283 -283
- package/components/navigation/footer/ui/a-footer-accordion.vue +118 -118
- package/components/navigation/header/AHeader.vue +241 -241
- package/components/navigation/header/AlmatyContacts.vue +145 -145
- package/components/navigation/header/AstanaContacts.vue +67 -67
- package/components/navigation/header/CardGallery.vue +252 -252
- package/components/navigation/header/ContactMenu.vue +48 -48
- package/components/navigation/header/HeaderLink.vue +250 -250
- package/components/navigation/header/HeaderUsage.vue +139 -139
- package/components/navigation/header/ListItem.vue +32 -32
- package/components/navigation/header/NavCard.vue +42 -42
- package/components/navigation/header/NavList.vue +73 -73
- package/components/navigation/header/NotificationsMenu.vue +50 -50
- package/components/navigation/header/ProductMenu.vue +101 -101
- package/components/navigation/header/ProfileMenu.vue +168 -168
- package/components/navigation/header/SystemNotification.vue +108 -108
- package/components/navigation/header/types.ts +28 -28
- package/components/navigation/line-tabs/ALineTabs.vue +112 -112
- package/components/navigation/line-tabs/types.ts +21 -21
- package/components/navigation/mobile-navigation/AMobileNavigation.vue +112 -112
- package/components/navigation/pill-tabs/APillTabs.vue +179 -179
- package/components/navigation/pill-tabs/APillTabsV2.vue +241 -241
- package/components/navigation/pill-tabs/types.ts +24 -24
- package/components/navigation/side-navigation/ASideNavigation.vue +406 -406
- package/components/overlays/README.md +1 -1
- package/components/overlays/drawer/ADrawerV2.vue +342 -342
- package/components/overlays/modal/AModal.vue +335 -335
- package/components/overlays/modal/AModalV2.vue +401 -401
- package/components/overlays/side-panel/ASidePanel.vue +445 -445
- package/components/overlays/sideover/ASlideover.vue +351 -351
- package/components/overlays/tooltip/ATooltip.vue +238 -238
- package/components/overlays/tooltip/ATooltipV2.vue +226 -226
- package/components/overlays/tooltip/types.ts +26 -26
- package/components/overlays/tooltip/useTooltipTrigger.ts +101 -101
- package/components/transitions/ATransitionHeight.vue +67 -67
- package/components/utils/index.ts +19 -19
- package/components/utils/removeTrailingSlash.ts +7 -7
- package/composables/highlight.ts +19 -19
- package/composables/modalsState.ts +8 -8
- package/composables/projectState.ts +2 -2
- package/composables/useAccessTokenCookie.ts +25 -25
- package/composables/useActiveNavigation.ts +84 -84
- package/composables/useAdaptive.ts +46 -46
- package/composables/useBuyTariffs.ts +91 -91
- package/composables/useCarouselScroll.ts +49 -49
- package/composables/useChipOverflow.ts +92 -92
- package/composables/useHeaderNavigationLinks.ts +519 -519
- package/composables/useIdModals.ts +36 -36
- package/composables/usePayment.ts +78 -78
- package/composables/useUIValidation.ts +16 -16
- package/composables/useUrls.ts +23 -23
- package/eslint.config.mjs +58 -58
- package/i18n/i18n.config.ts +21 -21
- package/i18n.config.ts +21 -21
- package/icons/adata-logo.vue +17 -17
- package/icons/ai-assistant.vue +13 -13
- package/icons/akimat.vue +20 -20
- package/icons/archive.vue +16 -16
- package/icons/arrow/arrow-bottom-left-on-square.vue +5 -5
- package/icons/arrow/arrow-circle-down.vue +16 -16
- package/icons/arrow/arrow-circle-reset.vue +16 -16
- package/icons/arrow/arrow-corner.vue +9 -9
- package/icons/arrow/arrow-down-left.vue +6 -6
- package/icons/arrow/arrow-graph-down.vue +13 -13
- package/icons/arrow/arrow-graph-up.vue +14 -14
- package/icons/arrow/arrow-left-right.vue +8 -8
- package/icons/arrow/arrow-left.vue +14 -14
- package/icons/arrow/arrow-right.vue +14 -14
- package/icons/arrow/arrow-square-down.vue +15 -15
- package/icons/arrow/arrow-top-right-on-square.vue +6 -6
- package/icons/arrow/arrow-up-right.vue +6 -6
- package/icons/arrow/arrows-in.vue +11 -11
- package/icons/arrow/arrows-out.vue +11 -11
- package/icons/arrow/arrows-resize-in.vue +38 -38
- package/icons/arrow/arrows-resize-out.vue +17 -17
- package/icons/arrow-currency-gray.vue +5 -5
- package/icons/arrow-currency-green.vue +5 -5
- package/icons/arrow-currency-red.vue +5 -5
- package/icons/arrow-side-up.vue +6 -6
- package/icons/avatar.vue +12 -12
- package/icons/bank.vue +5 -5
- package/icons/bar-chart-3.vue +3 -3
- package/icons/bill.vue +3 -3
- package/icons/block.vue +16 -16
- package/icons/book-open.vue +3 -3
- package/icons/bookmark/bookmark-filled.vue +19 -19
- package/icons/bookmark/bookmark.vue +5 -5
- package/icons/bot.vue +52 -52
- package/icons/braces.vue +3 -3
- package/icons/briefcase.vue +14 -14
- package/icons/browsers/browser-duck.vue +65 -65
- package/icons/browsers/browser-google.vue +30 -30
- package/icons/browsers/browser-yandex.vue +13 -13
- package/icons/building-vector.vue +7 -7
- package/icons/building.vue +9 -9
- package/icons/calculator.vue +7 -7
- package/icons/calendar.vue +24 -24
- package/icons/car-side.vue +16 -16
- package/icons/car.vue +7 -7
- package/icons/cart.vue +15 -15
- package/icons/chart-bar.vue +5 -5
- package/icons/chart-no-axes-column.vue +3 -3
- package/icons/chart-pie.vue +16 -16
- package/icons/check/check-circle.vue +6 -6
- package/icons/check/check-outline.vue +3 -3
- package/icons/check/check-shield.vue +14 -14
- package/icons/check/check.vue +17 -17
- package/icons/check/checkmark-circle.vue +6 -6
- package/icons/check-sb.vue +7 -7
- package/icons/checkbox/checkbox-active.vue +17 -17
- package/icons/checkbox/checkbox-empty.vue +10 -10
- package/icons/checkbox/checkbox-intermediate.vue +7 -7
- package/icons/chevron/chevron-down-outline.vue +3 -3
- package/icons/chevron/chevron-down.vue +5 -5
- package/icons/chevron/chevron-left.vue +5 -5
- package/icons/chevron/chevron-right.vue +5 -5
- package/icons/chevron/chevron-up.vue +5 -5
- package/icons/chevron/double-chevron-right.vue +12 -12
- package/icons/clipboard-list.vue +3 -3
- package/icons/clipboard-text.vue +7 -7
- package/icons/clock-outline.vue +3 -3
- package/icons/clock-time.vue +24 -24
- package/icons/clock.vue +25 -25
- package/icons/close.vue +16 -16
- package/icons/cloud/cloud-upload.vue +3 -3
- package/icons/code.vue +9 -9
- package/icons/company/company-bazis.vue +21 -21
- package/icons/company/company-bereke.vue +25 -25
- package/icons/company/company-bigroup.vue +16 -16
- package/icons/company/company-erg.vue +17 -17
- package/icons/company/company-forte.vue +21 -21
- package/icons/company/company-halyk.vue +15 -15
- package/icons/company/company-jusan.vue +31 -31
- package/icons/company/company-kaspi.vue +14 -14
- package/icons/company/company-kazzinc.vue +22 -22
- package/icons/company/company-mycar.vue +13 -13
- package/icons/company/company-samruk.vue +21 -21
- package/icons/company-egov-small.vue +15 -15
- package/icons/company.vue +8 -8
- package/icons/compare-outlined.vue +8 -8
- package/icons/copy.vue +7 -7
- package/icons/crown.vue +6 -6
- package/icons/currency/currency-dollar.vue +16 -16
- package/icons/currency/currency-down.vue +22 -22
- package/icons/currency/currency-eur.vue +57 -57
- package/icons/currency/currency-rub.vue +7 -7
- package/icons/currency/currency-tenge.vue +9 -9
- package/icons/currency/currency-usd.vue +221 -221
- package/icons/currency/currency-yuan.vue +25 -25
- package/icons/database.vue +3 -3
- package/icons/default-avatar.vue +20 -20
- package/icons/delete.vue +7 -7
- package/icons/document.vue +5 -5
- package/icons/dots-horizontal.vue +31 -31
- package/icons/download-line.vue +13 -13
- package/icons/download-outline.vue +3 -3
- package/icons/download-rounded.vue +15 -15
- package/icons/download.vue +11 -11
- package/icons/edit.vue +7 -7
- package/icons/education.vue +16 -16
- package/icons/egov-small.vue +7 -7
- package/icons/egov.vue +41 -41
- package/icons/elicense.vue +38 -38
- package/icons/excel-icon.vue +14 -14
- package/icons/expand-window.vue +7 -7
- package/icons/eye-closed.vue +26 -26
- package/icons/eye-open.vue +7 -7
- package/icons/eye-opened.vue +23 -23
- package/icons/favourite-bookmark-outline.vue +17 -17
- package/icons/file/file-check-corner.vue +3 -3
- package/icons/file/file-spreadsheet.vue +3 -3
- package/icons/file/file.vue +16 -16
- package/icons/file/files.vue +16 -16
- package/icons/file-json.vue +3 -3
- package/icons/file-pen.vue +31 -31
- package/icons/file-search.vue +3 -3
- package/icons/file-stack.vue +31 -31
- package/icons/file-text.vue +3 -3
- package/icons/file-types/excel.vue +131 -131
- package/icons/file-types/html.vue +13 -13
- package/icons/file-types/jpeg.vue +16 -16
- package/icons/file-types/pdf.vue +11 -11
- package/icons/file-types/png.vue +11 -11
- package/icons/file-types/rar.vue +11 -11
- package/icons/file-types/word.vue +50 -50
- package/icons/file-types/zip.vue +11 -11
- package/icons/filter.vue +5 -5
- package/icons/flag.vue +7 -7
- package/icons/flask-conical.vue +3 -3
- package/icons/folder-open.vue +3 -3
- package/icons/gauge.vue +17 -17
- package/icons/gift-outline.vue +3 -3
- package/icons/gift.vue +8 -8
- package/icons/git-compare.vue +38 -38
- package/icons/git-fork.vue +3 -3
- package/icons/globe-2.vue +3 -3
- package/icons/globe.vue +16 -16
- package/icons/google.vue +41 -41
- package/icons/gradiend-icons/files-gradient.vue +22 -22
- package/icons/gradiend-icons/hammer-gradient.vue +62 -62
- package/icons/graduation-cap.vue +31 -31
- package/icons/graph-loading.vue +34 -34
- package/icons/graph-pie.vue +14 -14
- package/icons/hand/hand-thumb-up-filled.vue +5 -5
- package/icons/hand/hand-thumb-up.vue +5 -5
- package/icons/hand-with-phone/hand-with-phone-dark.vue +52 -52
- package/icons/hand-with-phone/hand-with-phone-light.vue +52 -52
- package/icons/handshake.vue +5 -5
- package/icons/hcheck.vue +14 -14
- package/icons/hdocument.vue +7 -7
- package/icons/headset.vue +6 -6
- package/icons/help-question-circle.vue +26 -26
- package/icons/history.vue +5 -5
- package/icons/home.vue +14 -14
- package/icons/horizontal-more.vue +13 -13
- package/icons/hot-line.vue +6 -6
- package/icons/hummer.vue +16 -16
- package/icons/id.vue +7 -7
- package/icons/in-row-type.vue +46 -46
- package/icons/in-table-type.vue +29 -29
- package/icons/info/info-circle.vue +29 -29
- package/icons/invoice.vue +8 -8
- package/icons/judge.vue +14 -14
- package/icons/kaspi-qr.vue +13 -13
- package/icons/key-round.vue +3 -3
- package/icons/landmark.vue +3 -3
- package/icons/layers.vue +3 -3
- package/icons/letter/letter-a.vue +8 -8
- package/icons/letter/letter-b.vue +6 -6
- package/icons/letter/letter-c.vue +6 -6
- package/icons/letter/letter-d.vue +6 -6
- package/icons/letter/letter-e.vue +6 -6
- package/icons/link-chain.vue +28 -28
- package/icons/link-url.vue +3 -3
- package/icons/link.vue +7 -7
- package/icons/linkedin.vue +24 -24
- package/icons/list-tree.vue +3 -3
- package/icons/loader-circle.vue +27 -27
- package/icons/location.vue +8 -8
- package/icons/lock.vue +5 -5
- package/icons/log-out.vue +21 -0
- package/icons/logo.vue +15 -15
- package/icons/logout.vue +16 -16
- package/icons/magnify/magnifying-glass-minus.vue +8 -8
- package/icons/magnify/magnifying-glass-plus.vue +9 -9
- package/icons/magnify/magnifying-glass.vue +9 -9
- package/icons/mail-question-mark.vue +8 -8
- package/icons/mail.vue +7 -7
- package/icons/mailru.vue +34 -34
- package/icons/main-filter.vue +10 -10
- package/icons/map/map-pin-filled.vue +7 -7
- package/icons/map/map-pin-rect.vue +15 -15
- package/icons/map/map-pin.vue +7 -7
- package/icons/map-marker-start.vue +7 -7
- package/icons/map-paper.vue +5 -5
- package/icons/medal.vue +7 -7
- package/icons/menu-filled.vue +20 -20
- package/icons/menu.vue +8 -8
- package/icons/message/message-square.vue +3 -3
- package/icons/message/message.vue +12 -12
- package/icons/message-dotted.vue +30 -30
- package/icons/messages-square.vue +3 -3
- package/icons/minus/minus-circle.vue +10 -10
- package/icons/money.vue +5 -5
- package/icons/monitoring.vue +10 -10
- package/icons/moon.vue +8 -8
- package/icons/more.vue +29 -29
- package/icons/network.vue +3 -3
- package/icons/newspaper.vue +3 -3
- package/icons/note-pencil.vue +14 -14
- package/icons/note.vue +14 -14
- package/icons/notification-error.vue +17 -17
- package/icons/notification.vue +16 -16
- package/icons/paperclip.vue +7 -7
- package/icons/payment/payment-card.vue +6 -6
- package/icons/payment/payment-kaspi.vue +11 -11
- package/icons/person-vector.vue +7 -7
- package/icons/person-with-briefcase.vue +10 -10
- package/icons/person.vue +22 -22
- package/icons/phone-call.vue +6 -6
- package/icons/phone-filled.vue +5 -5
- package/icons/phone-reversed.vue +3 -3
- package/icons/phone.vue +7 -7
- package/icons/plus/plus-circle.vue +8 -8
- package/icons/plus/plus.vue +13 -13
- package/icons/profile.vue +5 -5
- package/icons/radio/radio-check.vue +8 -8
- package/icons/radio/radio-empty.vue +10 -10
- package/icons/receipt.vue +8 -8
- package/icons/refresh-cw.vue +8 -8
- package/icons/robot-outline.vue +3 -3
- package/icons/robot.vue +14 -14
- package/icons/route.vue +7 -7
- package/icons/sanctions.vue +8 -8
- package/icons/scales/scale-outline.vue +3 -3
- package/icons/scales/scale.vue +16 -16
- package/icons/scales/scales.vue +5 -5
- package/icons/scales/standing-scales.vue +15 -15
- package/icons/scan-search.vue +3 -3
- package/icons/search-outline.vue +3 -3
- package/icons/search.vue +27 -27
- package/icons/send.vue +3 -3
- package/icons/settings.vue +26 -26
- package/icons/share/share-alt.vue +5 -5
- package/icons/share/share.vue +14 -14
- package/icons/shield-alert.vue +31 -31
- package/icons/shield-check.vue +20 -0
- package/icons/shield-verified.vue +14 -14
- package/icons/ship.vue +8 -8
- package/icons/socials/face-book.vue +15 -15
- package/icons/socials/facebook-color.vue +16 -16
- package/icons/socials/globe-color.vue +16 -16
- package/icons/socials/instagram-color.vue +46 -46
- package/icons/socials/instagram.vue +19 -19
- package/icons/socials/linkedin-color.vue +14 -14
- package/icons/socials/telegram-color.vue +16 -16
- package/icons/socials/telegram.vue +15 -15
- package/icons/socials/tik-tok.vue +15 -15
- package/icons/socials/tiktok-color.vue +14 -14
- package/icons/socials/vk-color.vue +16 -16
- package/icons/socials/youtube-color.vue +16 -16
- package/icons/socials/youtube.vue +16 -16
- package/icons/sort/sort-asc.vue +15 -15
- package/icons/sort/sort-desc.vue +15 -15
- package/icons/sparkles.vue +3 -3
- package/icons/splitting-arrows.vue +8 -8
- package/icons/star/star-filled.vue +41 -41
- package/icons/star/star-half-filled.vue +21 -21
- package/icons/star/star.vue +25 -25
- package/icons/sun.vue +25 -25
- package/icons/sviazi.vue +5 -5
- package/icons/tag.vue +30 -30
- package/icons/tasks.vue +10 -10
- package/icons/tender-search.vue +11 -11
- package/icons/terminal.vue +3 -3
- package/icons/toasts/check-circle-toast.vue +6 -6
- package/icons/toasts/warning-triangle-toast.vue +8 -8
- package/icons/trash.vue +13 -13
- package/icons/triangle-alert.vue +3 -3
- package/icons/triangle.vue +10 -10
- package/icons/truck.vue +7 -7
- package/icons/user-plus.vue +3 -3
- package/icons/user-square.vue +14 -14
- package/icons/user.vue +22 -22
- package/icons/users-focus.vue +8 -8
- package/icons/users-outline.vue +3 -3
- package/icons/users-round.vue +3 -3
- package/icons/users-three.vue +7 -7
- package/icons/users.vue +8 -8
- package/icons/view-eye-open.vue +13 -13
- package/icons/warning/warning-circle.vue +29 -29
- package/icons/warning/warning-triangle-filled.vue +12 -12
- package/icons/warning/warning-triangle.vue +28 -28
- package/icons/webhook.vue +3 -3
- package/icons/whatsapp.vue +8 -8
- package/icons/work-bag.vue +11 -11
- package/icons/work-case.vue +9 -9
- package/icons/work-search.vue +10 -10
- package/icons/work.vue +5 -5
- package/icons/workflow.vue +3 -3
- package/icons/x-mark.vue +15 -15
- package/icons/x-outline.vue +3 -3
- package/icons/yandex.vue +29 -29
- package/icons/zap.vue +3 -3
- package/illustrations/address-location.vue +38 -38
- package/illustrations/award-badge.vue +105 -105
- package/illustrations/ball-with-chain.vue +120 -120
- package/illustrations/bill.vue +133 -133
- package/illustrations/buildings.vue +82 -82
- package/illustrations/calendar.vue +156 -156
- package/illustrations/chains.vue +152 -152
- package/illustrations/coin-percent.vue +126 -126
- package/illustrations/coins-stack.vue +202 -202
- package/illustrations/delete-dark.vue +32 -32
- package/illustrations/delete.vue +33 -33
- package/illustrations/doc-with-stamp.vue +126 -126
- package/illustrations/document.vue +64 -64
- package/illustrations/door.vue +85 -85
- package/illustrations/empty-badge-check.vue +20 -20
- package/illustrations/empty-ban.vue +18 -18
- package/illustrations/empty-box.vue +77 -77
- package/illustrations/empty-filter.vue +20 -20
- package/illustrations/empty-inbox.vue +19 -19
- package/illustrations/empty-scale.vue +22 -22
- package/illustrations/empty-search-x.vue +21 -21
- package/illustrations/empty-shopping-cart.vue +21 -21
- package/illustrations/empty-users-round.vue +20 -20
- package/illustrations/empty-wallet.vue +127 -127
- package/illustrations/graph-in-coin.vue +119 -119
- package/illustrations/hammer.vue +156 -156
- package/illustrations/hand-cash.vue +108 -108
- package/illustrations/info.vue +52 -52
- package/illustrations/mail-active.vue +86 -86
- package/illustrations/mail.vue +68 -68
- package/illustrations/no-access.vue +92 -92
- package/illustrations/notes-search.vue +20 -20
- package/illustrations/notes-sticky.vue +20 -20
- package/illustrations/ok.vue +90 -90
- package/illustrations/people-group.vue +237 -237
- package/illustrations/person-with-phone.vue +187 -187
- package/illustrations/person.vue +159 -159
- package/illustrations/phone-check.vue +110 -110
- package/illustrations/phone-payment-method.vue +223 -223
- package/illustrations/scheme-notes.vue +21 -21
- package/illustrations/scheme-waypoints.vue +25 -25
- package/illustrations/search.vue +14 -14
- package/illustrations/shield-user.vue +94 -94
- package/illustrations/stop-hand.vue +84 -84
- package/illustrations/stop-sign.vue +34 -34
- package/illustrations/suit.vue +97 -97
- package/illustrations/suitcase.vue +105 -105
- package/illustrations/terminal.vue +100 -100
- package/illustrations/trash-can.vue +66 -66
- package/illustrations/turn-on-tariff.vue +38 -38
- package/illustrations/two-persons.vue +169 -169
- package/lang/en.ts +878 -878
- package/lang/kk.ts +880 -880
- package/lang/ru.ts +880 -880
- package/layouts/default.vue +13 -13
- package/nuxt.config.ts +95 -95
- package/package.json +64 -64
- package/plugins/maska.ts +4 -4
- package/plugins/toast.client.ts +41 -41
- package/public/kaspi/logo.svg +4 -4
- package/shared/constans/pages.ts +96 -96
- package/tsconfig.json +6 -6
- package/utils/getMaxZindex.ts +25 -25
- package/utils/localizedNavigation.ts +36 -36
- package/utils/toCssSize.ts +11 -11
- package/utils/twMerge.ts +34 -34
- package/vitest.config.ts +14 -14
- package/.claude/settings.local.json +0 -19
package/CLAUDE.md
CHANGED
|
@@ -1,63 +1,63 @@
|
|
|
1
|
-
# CLAUDE.md
|
|
2
|
-
|
|
3
|
-
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
|
|
4
|
-
|
|
5
|
-
## Что это
|
|
6
|
-
|
|
7
|
-
adata-ui — UI-кит проектов adata.kz, оформленный как **Nuxt 3 layer** (`main` = `nuxt.config.ts`, публикуется npm-пакетом `adata-ui`). Консьюмеры (pk-frontend) подключают его через `extends` и автоматически получают компоненты, Tailwind и стили. Разработка и просмотр компонентов — в `.playground` (extends `'..'`).
|
|
8
|
-
|
|
9
|
-
Миграция на Tailwind v4 + новая палитра + тёмная тема на семантических токенах влита в `predesign` (ветка `tailwind-v4`, 2026-07) — рабочая ветка уже на v4. pk-frontend мигрирован на v4/семантику (ветка ADTC-8931, extends `'../adata-ui'`); `deepblue` удалён из theme.css после его миграции (2026-07-28). Каталог `docs/` удалён из дерева; реестр миграции — в git-истории: `git show 69039ec:docs/color-migration.md`.
|
|
10
|
-
|
|
11
|
-
## Команды
|
|
12
|
-
|
|
13
|
-
- `pnpm dev` — dev-сервер playground; `pnpm build` — сборка playground.
|
|
14
|
-
- Тесты: сейчас тестовых файлов в репо нет (vitest-инфраструктура осталась). Если появятся: `npx vitest run --coverage.enabled=false`. НЕ `pnpm test` (открывает UI). Флаг обязателен: coverage сломан (в devDeps `@vitest/coverage-v8` 1.6.x при vitest 3.x). Один файл: `npx vitest run <путь-к-файлу> --coverage.enabled=false`.
|
|
15
|
-
- `pnpm lint` / `pnpm type-check` — в репо большой предсуществующий долг (тысячи style-ошибок, десятки type-ошибок в нетронутых файлах). Проверяй точечно только изменённые файлы: `npx eslint <files>`.
|
|
16
|
-
- Скомпилированный Tailwind после `pnpm build` искать в `.playground/.output/server/chunks/build/entry-styles.*.mjs` — Nuxt инлайнит глобальный CSS в SSR-бандл; клиентский `entry.css` содержит только библиотечные стили (это норма, не баг).
|
|
17
|
-
|
|
18
|
-
## Архитектура слоя
|
|
19
|
-
|
|
20
|
-
- Компоненты авто-регистрируются с префиксами: `components/` → `<a-*>`, `icons/` → `<a-icon-*>`, `illustrations/` → `<a-ill-*>` (имя из имени файла, `pathPrefix: false`; в шаблонах только kebab-case — eslint-правило).
|
|
21
|
-
- Алиас `#adata-ui` → корень репо.
|
|
22
|
-
- Tailwind v4 подключён на уровне слоя: vite-плагин в `vite.plugins` конфига слоя, CSS-вход `assets/styles/main.css` через `css:` слоя. Консьюмерам и playground настраивать нечего. **Никогда не добавляй второй `@import "tailwindcss"`** — второй tailwind-корень = дубли утилит.
|
|
23
|
-
- `utils/twMerge.ts` — расширенный tailwind-merge (знает кастомный `rounded-10` и `text-*`-токены ДС) — использовать его, а не голый `twMerge` из пакета.
|
|
24
|
-
|
|
25
|
-
## Дизайн-система (Tailwind v4, CSS-first)
|
|
26
|
-
|
|
27
|
-
Вся конфигурация — в `assets/styles/theme.css` (`tailwind.config` не существует). Реестр миграции, маппингов и осознанных исключений — в git-истории (docs/ удалён): `git show 69039ec:docs/color-migration.md`.
|
|
28
|
-
|
|
29
|
-
### Палитра
|
|
30
|
-
|
|
31
|
-
- Стоковая палитра Tailwind v4 + фирменные: `brand` (500 = #068DFF), `secondary` (500 = #2C3E50), `chart-{amber,blue,green,red}`, `surface-dark`/`surface-dark-2`, `base-bg-light`/`base-bg-dark`. Deprecated-группы (`ink-*`, `deepblue-*`) удалены — использовать семантику.
|
|
32
|
-
- Сырые hex запрещены: классы палитры/семантики в разметке, `var(--…-*)` в `<style>`. Никаких `style="color: #…"`. Исключения (логотипы `icons/company/`, `.bg-gradient-blue`, тени `#1B64B3`, error-тултип ATooltip) перечислены в реестре: `git show 69039ec:docs/color-migration.md`.
|
|
33
|
-
|
|
34
|
-
### Тёмная тема — семантические токены
|
|
35
|
-
|
|
36
|
-
- **Примитивные шкалы (`gray-*`, `red-*`, `brand-*`, `secondary-*`, `white`/`black`) константны в обеих темах.** Под `.dark` переключаются только семантические токены (блоки `@generated-semantic-colors[-dark]` в theme.css, источник — Figma-артефакт «Семантические цвета»).
|
|
37
|
-
- В новом коде цвета задавать семантикой: `text-primary/secondary/quaternary/disabled/brand/link/success/warning/danger`, `bg-main/subtle/muted/overlay/badge/brand[-subtle]/{success,warning,danger,red…rose}[-subtle]`, `border-default/strong/focus/brand/…`, `bg-action-{primary,secondary,danger}[-hover|-active]` + `text-action-*-fg`, `text/fill/stroke-icon-*`, `fill-main`/`stroke-main` (флип белых заливок иллюстраций). Реестр и маппинг — `git show 69039ec:docs/color-migration.md`.
|
|
38
|
-
- **Роли поверхностей (по Figma-макетам ДС)**: страница — `bg-main`; карточки/секции — `bg-subtle` + `border-default` (subtle полупрозрачен и без бордера не читается); утилитарный непрозрачный серый (thead, скелетоны, зебра, треки, плашки) — `bg-muted`; hover поверхностей — `bg-action-secondary-hover` (не `bg-subtle` — в дарке невидим); «утопленная» зона (инпуты, плитки, «экраны» иллюстраций) — `bg-canvas` (dark #0F0F10 — глубже `bg-main`; прежний сине-серый #1E2939 заменён аудитом семантических цветов 2026-08).
|
|
39
|
-
- **Пара иконка+плитка**: цвет `text-icon-{цвет}` всегда идёт с плиткой `bg-{цвет}-subtle` того же оттенка — колор-кодирование блоков (лендинги, карточки модулей) строится только так.
|
|
40
|
-
- Примитив в разметке легален, когда цвет должен быть одинаков в темах: инвертированные поверхности (`bg-secondary-500` футера/тултипов), белый декор на цветном (`bg-white` точки/бегунки), `chart-*`, `surface-dark*`. Цветовые `dark:`-классы разрешены для краевых случаев без токена (`dark:bg-white/5`-тинты и т.п.).
|
|
41
|
-
- Для ring/outline border-токены доступны var-синтаксисом: `ring-(--border-color-default)`, `outline-(--border-color-danger)/60`.
|
|
42
|
-
- В `<style>`-блоках: `var(--text-color-*)`, `var(--background-color-*)`, `var(--border-color-*)`, `var(--color-action-*|icon-*)`; полупрозрачность — `color-mix(in srgb, var(--…) N%, transparent)`. `theme('colors…')` в v4 не работает. **Не вешать `/N` на полупрозрачные токены** (`bg-subtle`, `bg-overlay`, dark `brand-subtle`/`danger-subtle`) — альфа перемножается.
|
|
43
|
-
- Цветные тени: форма и цвет раздельно — `shadow-[0_-2px_8px_0] shadow-gray-400/25`; разная плотность по темам — `shadow-surface-dark/10 dark:shadow-surface-dark/30`.
|
|
44
|
-
|
|
45
|
-
### Типографика и радиусы
|
|
46
|
-
|
|
47
|
-
- Токены `text-h1…text-h5`, `text-display-{hero,lg,sm}`, `text-body-{lg,md,sm}[-medium|-strong]`, `text-overline[-medium]` — размер + межстрочный + вес одним классом.
|
|
48
|
-
- Легаси-классы `.heading-*`, `.body-400`, `.link-*` и пр. живут в theme.css `@layer components` — для старого дизайна; в новом коде использовать `text-*`-токены.
|
|
49
|
-
- Шкала скруглений кастомная (не v4-дефолт): `rounded` = 4px, xs = 4, sm = 6, md = 8, `rounded-10` = 10px, lg = 12, xl = 16, 2xl = 20.
|
|
50
|
-
|
|
51
|
-
### Динамические классы
|
|
52
|
-
|
|
53
|
-
Сканер не видит собранные в рантайме классы (`bg-${color}-…`) — такие семьи/оттенки/утилиты должны быть в safelist `@source inline(…)` в theme.css. Расширяй его при добавлении новой динамики.
|
|
54
|
-
|
|
55
|
-
### Изменение палитры из Figma
|
|
56
|
-
|
|
57
|
-
Светлый блок примитивов между маркерами `@generated-colors:*` сгенерирован из Figma-экспортов (DTCG). Генератор и токен-JSONы удалены из дерева — восстановить: `git show 8862721:scripts/generate-theme-colors.mjs` (там же `scripts/design-tokens/*.tokens.json`); исходники продублированы в `git show 69039ec:docs/update-plan.md` (docs/ удалён из дерева). Семантические блоки `@generated-semantic-colors[-dark]:*` этим генератором НЕ покрываются — их источник — Figma-артефакт «Семантические цвета»; актуальные значения живут в самих блоках theme.css, регенерация = дамп таблицы артефакта между маркерами.
|
|
58
|
-
|
|
59
|
-
## Грабли окружения
|
|
60
|
-
|
|
61
|
-
- `rg` на машине разработчика — shell-функция: в скриптах/подпроцессах использовать `grep`.
|
|
62
|
-
- В репо есть путь с кириллической буквой (`components/features/сhange-version/`) — `git ls-files` только с `-z`.
|
|
63
|
-
- Каталог `docs/` удалён из дерева (доступен через git show, см. выше), поэтому строки `@source not "../../docs";` в main.css больше нет. Если docs/ с именами старых классов вернётся — вернуть и исключение, иначе сканер Tailwind сгенерирует по ним мёртвый CSS.
|
|
1
|
+
# CLAUDE.md
|
|
2
|
+
|
|
3
|
+
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
|
|
4
|
+
|
|
5
|
+
## Что это
|
|
6
|
+
|
|
7
|
+
adata-ui — UI-кит проектов adata.kz, оформленный как **Nuxt 3 layer** (`main` = `nuxt.config.ts`, публикуется npm-пакетом `adata-ui`). Консьюмеры (pk-frontend) подключают его через `extends` и автоматически получают компоненты, Tailwind и стили. Разработка и просмотр компонентов — в `.playground` (extends `'..'`).
|
|
8
|
+
|
|
9
|
+
Миграция на Tailwind v4 + новая палитра + тёмная тема на семантических токенах влита в `predesign` (ветка `tailwind-v4`, 2026-07) — рабочая ветка уже на v4. pk-frontend мигрирован на v4/семантику (ветка ADTC-8931, extends `'../adata-ui'`); `deepblue` удалён из theme.css после его миграции (2026-07-28). Каталог `docs/` удалён из дерева; реестр миграции — в git-истории: `git show 69039ec:docs/color-migration.md`.
|
|
10
|
+
|
|
11
|
+
## Команды
|
|
12
|
+
|
|
13
|
+
- `pnpm dev` — dev-сервер playground; `pnpm build` — сборка playground.
|
|
14
|
+
- Тесты: сейчас тестовых файлов в репо нет (vitest-инфраструктура осталась). Если появятся: `npx vitest run --coverage.enabled=false`. НЕ `pnpm test` (открывает UI). Флаг обязателен: coverage сломан (в devDeps `@vitest/coverage-v8` 1.6.x при vitest 3.x). Один файл: `npx vitest run <путь-к-файлу> --coverage.enabled=false`.
|
|
15
|
+
- `pnpm lint` / `pnpm type-check` — в репо большой предсуществующий долг (тысячи style-ошибок, десятки type-ошибок в нетронутых файлах). Проверяй точечно только изменённые файлы: `npx eslint <files>`.
|
|
16
|
+
- Скомпилированный Tailwind после `pnpm build` искать в `.playground/.output/server/chunks/build/entry-styles.*.mjs` — Nuxt инлайнит глобальный CSS в SSR-бандл; клиентский `entry.css` содержит только библиотечные стили (это норма, не баг).
|
|
17
|
+
|
|
18
|
+
## Архитектура слоя
|
|
19
|
+
|
|
20
|
+
- Компоненты авто-регистрируются с префиксами: `components/` → `<a-*>`, `icons/` → `<a-icon-*>`, `illustrations/` → `<a-ill-*>` (имя из имени файла, `pathPrefix: false`; в шаблонах только kebab-case — eslint-правило).
|
|
21
|
+
- Алиас `#adata-ui` → корень репо.
|
|
22
|
+
- Tailwind v4 подключён на уровне слоя: vite-плагин в `vite.plugins` конфига слоя, CSS-вход `assets/styles/main.css` через `css:` слоя. Консьюмерам и playground настраивать нечего. **Никогда не добавляй второй `@import "tailwindcss"`** — второй tailwind-корень = дубли утилит.
|
|
23
|
+
- `utils/twMerge.ts` — расширенный tailwind-merge (знает кастомный `rounded-10` и `text-*`-токены ДС) — использовать его, а не голый `twMerge` из пакета.
|
|
24
|
+
|
|
25
|
+
## Дизайн-система (Tailwind v4, CSS-first)
|
|
26
|
+
|
|
27
|
+
Вся конфигурация — в `assets/styles/theme.css` (`tailwind.config` не существует). Реестр миграции, маппингов и осознанных исключений — в git-истории (docs/ удалён): `git show 69039ec:docs/color-migration.md`.
|
|
28
|
+
|
|
29
|
+
### Палитра
|
|
30
|
+
|
|
31
|
+
- Стоковая палитра Tailwind v4 + фирменные: `brand` (500 = #068DFF), `secondary` (500 = #2C3E50), `chart-{amber,blue,green,red}`, `surface-dark`/`surface-dark-2`, `base-bg-light`/`base-bg-dark`. Deprecated-группы (`ink-*`, `deepblue-*`) удалены — использовать семантику.
|
|
32
|
+
- Сырые hex запрещены: классы палитры/семантики в разметке, `var(--…-*)` в `<style>`. Никаких `style="color: #…"`. Исключения (логотипы `icons/company/`, `.bg-gradient-blue`, тени `#1B64B3`, error-тултип ATooltip) перечислены в реестре: `git show 69039ec:docs/color-migration.md`.
|
|
33
|
+
|
|
34
|
+
### Тёмная тема — семантические токены
|
|
35
|
+
|
|
36
|
+
- **Примитивные шкалы (`gray-*`, `red-*`, `brand-*`, `secondary-*`, `white`/`black`) константны в обеих темах.** Под `.dark` переключаются только семантические токены (блоки `@generated-semantic-colors[-dark]` в theme.css, источник — Figma-артефакт «Семантические цвета»).
|
|
37
|
+
- В новом коде цвета задавать семантикой: `text-primary/secondary/quaternary/disabled/brand/link/success/warning/danger`, `bg-main/subtle/muted/overlay/badge/brand[-subtle]/{success,warning,danger,red…rose}[-subtle]`, `border-default/strong/focus/brand/…`, `bg-action-{primary,secondary,danger}[-hover|-active]` + `text-action-*-fg`, `text/fill/stroke-icon-*`, `fill-main`/`stroke-main` (флип белых заливок иллюстраций). Реестр и маппинг — `git show 69039ec:docs/color-migration.md`.
|
|
38
|
+
- **Роли поверхностей (по Figma-макетам ДС)**: страница — `bg-main`; карточки/секции — `bg-subtle` + `border-default` (subtle полупрозрачен и без бордера не читается); утилитарный непрозрачный серый (thead, скелетоны, зебра, треки, плашки) — `bg-muted`; hover поверхностей — `bg-action-secondary-hover` (не `bg-subtle` — в дарке невидим); «утопленная» зона (инпуты, плитки, «экраны» иллюстраций) — `bg-canvas` (dark #0F0F10 — глубже `bg-main`; прежний сине-серый #1E2939 заменён аудитом семантических цветов 2026-08).
|
|
39
|
+
- **Пара иконка+плитка**: цвет `text-icon-{цвет}` всегда идёт с плиткой `bg-{цвет}-subtle` того же оттенка — колор-кодирование блоков (лендинги, карточки модулей) строится только так.
|
|
40
|
+
- Примитив в разметке легален, когда цвет должен быть одинаков в темах: инвертированные поверхности (`bg-secondary-500` футера/тултипов), белый декор на цветном (`bg-white` точки/бегунки), `chart-*`, `surface-dark*`. Цветовые `dark:`-классы разрешены для краевых случаев без токена (`dark:bg-white/5`-тинты и т.п.).
|
|
41
|
+
- Для ring/outline border-токены доступны var-синтаксисом: `ring-(--border-color-default)`, `outline-(--border-color-danger)/60`.
|
|
42
|
+
- В `<style>`-блоках: `var(--text-color-*)`, `var(--background-color-*)`, `var(--border-color-*)`, `var(--color-action-*|icon-*)`; полупрозрачность — `color-mix(in srgb, var(--…) N%, transparent)`. `theme('colors…')` в v4 не работает. **Не вешать `/N` на полупрозрачные токены** (`bg-subtle`, `bg-overlay`, dark `brand-subtle`/`danger-subtle`) — альфа перемножается.
|
|
43
|
+
- Цветные тени: форма и цвет раздельно — `shadow-[0_-2px_8px_0] shadow-gray-400/25`; разная плотность по темам — `shadow-surface-dark/10 dark:shadow-surface-dark/30`.
|
|
44
|
+
|
|
45
|
+
### Типографика и радиусы
|
|
46
|
+
|
|
47
|
+
- Токены `text-h1…text-h5`, `text-display-{hero,lg,sm}`, `text-body-{lg,md,sm}[-medium|-strong]`, `text-overline[-medium]` — размер + межстрочный + вес одним классом.
|
|
48
|
+
- Легаси-классы `.heading-*`, `.body-400`, `.link-*` и пр. живут в theme.css `@layer components` — для старого дизайна; в новом коде использовать `text-*`-токены.
|
|
49
|
+
- Шкала скруглений кастомная (не v4-дефолт): `rounded` = 4px, xs = 4, sm = 6, md = 8, `rounded-10` = 10px, lg = 12, xl = 16, 2xl = 20.
|
|
50
|
+
|
|
51
|
+
### Динамические классы
|
|
52
|
+
|
|
53
|
+
Сканер не видит собранные в рантайме классы (`bg-${color}-…`) — такие семьи/оттенки/утилиты должны быть в safelist `@source inline(…)` в theme.css. Расширяй его при добавлении новой динамики.
|
|
54
|
+
|
|
55
|
+
### Изменение палитры из Figma
|
|
56
|
+
|
|
57
|
+
Светлый блок примитивов между маркерами `@generated-colors:*` сгенерирован из Figma-экспортов (DTCG). Генератор и токен-JSONы удалены из дерева — восстановить: `git show 8862721:scripts/generate-theme-colors.mjs` (там же `scripts/design-tokens/*.tokens.json`); исходники продублированы в `git show 69039ec:docs/update-plan.md` (docs/ удалён из дерева). Семантические блоки `@generated-semantic-colors[-dark]:*` этим генератором НЕ покрываются — их источник — Figma-артефакт «Семантические цвета»; актуальные значения живут в самих блоках theme.css, регенерация = дамп таблицы артефакта между маркерами.
|
|
58
|
+
|
|
59
|
+
## Грабли окружения
|
|
60
|
+
|
|
61
|
+
- `rg` на машине разработчика — shell-функция: в скриптах/подпроцессах использовать `grep`.
|
|
62
|
+
- В репо есть путь с кириллической буквой (`components/features/сhange-version/`) — `git ls-files` только с `-z`.
|
|
63
|
+
- Каталог `docs/` удалён из дерева (доступен через git show, см. выше), поэтому строки `@source not "../../docs";` в main.css больше нет. Если docs/ с именами старых классов вернётся — вернуть и исключение, иначе сканер Tailwind сгенерирует по ним мёртвый CSS.
|
package/README.md
CHANGED
|
@@ -1,75 +1,75 @@
|
|
|
1
|
-
# Adata UI with Nuxt 3 using Layers
|
|
2
|
-
|
|
3
|
-
Look at the [Nuxt 3 documentation](https://nuxt.com/docs/getting-started/introduction) to learn more.
|
|
4
|
-
|
|
5
|
-
## Setup
|
|
6
|
-
|
|
7
|
-
Make sure to install the dependencies:
|
|
8
|
-
|
|
9
|
-
```bash
|
|
10
|
-
# npm
|
|
11
|
-
npm install
|
|
12
|
-
|
|
13
|
-
# pnpm
|
|
14
|
-
pnpm install
|
|
15
|
-
|
|
16
|
-
# yarn
|
|
17
|
-
yarn install
|
|
18
|
-
|
|
19
|
-
# bun
|
|
20
|
-
bun install
|
|
21
|
-
```
|
|
22
|
-
|
|
23
|
-
## Development Server
|
|
24
|
-
|
|
25
|
-
Start the development server on `https://localhost:3000`:
|
|
26
|
-
|
|
27
|
-
```bash
|
|
28
|
-
# npm
|
|
29
|
-
npm run dev
|
|
30
|
-
|
|
31
|
-
# pnpm
|
|
32
|
-
pnpm run dev
|
|
33
|
-
|
|
34
|
-
# yarn
|
|
35
|
-
yarn dev
|
|
36
|
-
|
|
37
|
-
# bun
|
|
38
|
-
bun run dev
|
|
39
|
-
```
|
|
40
|
-
|
|
41
|
-
## Production
|
|
42
|
-
|
|
43
|
-
Build the application for production:
|
|
44
|
-
|
|
45
|
-
```bash
|
|
46
|
-
# npm
|
|
47
|
-
npm run build
|
|
48
|
-
|
|
49
|
-
# pnpm
|
|
50
|
-
pnpm run build
|
|
51
|
-
|
|
52
|
-
# yarn
|
|
53
|
-
yarn build
|
|
54
|
-
|
|
55
|
-
# bun
|
|
56
|
-
bun run build
|
|
57
|
-
```
|
|
58
|
-
|
|
59
|
-
Locally preview production build:
|
|
60
|
-
|
|
61
|
-
```bash
|
|
62
|
-
# npm
|
|
63
|
-
npm run preview
|
|
64
|
-
|
|
65
|
-
# pnpm
|
|
66
|
-
pnpm run preview
|
|
67
|
-
|
|
68
|
-
# yarn
|
|
69
|
-
yarn preview
|
|
70
|
-
|
|
71
|
-
# bun
|
|
72
|
-
bun run preview
|
|
73
|
-
```
|
|
74
|
-
|
|
75
|
-
Check out the [deployment documentation](https://nuxt.com/docs/getting-started/deployment) for more information.
|
|
1
|
+
# Adata UI with Nuxt 3 using Layers
|
|
2
|
+
|
|
3
|
+
Look at the [Nuxt 3 documentation](https://nuxt.com/docs/getting-started/introduction) to learn more.
|
|
4
|
+
|
|
5
|
+
## Setup
|
|
6
|
+
|
|
7
|
+
Make sure to install the dependencies:
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
# npm
|
|
11
|
+
npm install
|
|
12
|
+
|
|
13
|
+
# pnpm
|
|
14
|
+
pnpm install
|
|
15
|
+
|
|
16
|
+
# yarn
|
|
17
|
+
yarn install
|
|
18
|
+
|
|
19
|
+
# bun
|
|
20
|
+
bun install
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
## Development Server
|
|
24
|
+
|
|
25
|
+
Start the development server on `https://localhost:3000`:
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
# npm
|
|
29
|
+
npm run dev
|
|
30
|
+
|
|
31
|
+
# pnpm
|
|
32
|
+
pnpm run dev
|
|
33
|
+
|
|
34
|
+
# yarn
|
|
35
|
+
yarn dev
|
|
36
|
+
|
|
37
|
+
# bun
|
|
38
|
+
bun run dev
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
## Production
|
|
42
|
+
|
|
43
|
+
Build the application for production:
|
|
44
|
+
|
|
45
|
+
```bash
|
|
46
|
+
# npm
|
|
47
|
+
npm run build
|
|
48
|
+
|
|
49
|
+
# pnpm
|
|
50
|
+
pnpm run build
|
|
51
|
+
|
|
52
|
+
# yarn
|
|
53
|
+
yarn build
|
|
54
|
+
|
|
55
|
+
# bun
|
|
56
|
+
bun run build
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
Locally preview production build:
|
|
60
|
+
|
|
61
|
+
```bash
|
|
62
|
+
# npm
|
|
63
|
+
npm run preview
|
|
64
|
+
|
|
65
|
+
# pnpm
|
|
66
|
+
pnpm run preview
|
|
67
|
+
|
|
68
|
+
# yarn
|
|
69
|
+
yarn preview
|
|
70
|
+
|
|
71
|
+
# bun
|
|
72
|
+
bun run preview
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
Check out the [deployment documentation](https://nuxt.com/docs/getting-started/deployment) for more information.
|
package/app.config.ts
CHANGED
|
@@ -1,28 +1,28 @@
|
|
|
1
|
-
export default defineAppConfig({
|
|
2
|
-
myLayer: {
|
|
3
|
-
name: 'Adata UI v2',
|
|
4
|
-
},
|
|
5
|
-
})
|
|
6
|
-
|
|
7
|
-
declare module '@nuxt/schema' {
|
|
8
|
-
interface AppConfigInput {
|
|
9
|
-
myLayer?: {
|
|
10
|
-
/** Project name */
|
|
11
|
-
name?: string
|
|
12
|
-
loginUrl?: string
|
|
13
|
-
oldVersion?: string
|
|
14
|
-
landingUrl?: string
|
|
15
|
-
pkUrl?: string
|
|
16
|
-
tenderUrl?: string
|
|
17
|
-
workUrl?: string
|
|
18
|
-
avtoUrl?: string
|
|
19
|
-
analyticsUrl?: string
|
|
20
|
-
tnvedUrl?: string
|
|
21
|
-
complianceUrl?: string
|
|
22
|
-
counterParty?: string
|
|
23
|
-
langIsOn?: boolean
|
|
24
|
-
authMode?: 'local' | 'separate'
|
|
25
|
-
cloudPayments?: string
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
}
|
|
1
|
+
export default defineAppConfig({
|
|
2
|
+
myLayer: {
|
|
3
|
+
name: 'Adata UI v2',
|
|
4
|
+
},
|
|
5
|
+
})
|
|
6
|
+
|
|
7
|
+
declare module '@nuxt/schema' {
|
|
8
|
+
interface AppConfigInput {
|
|
9
|
+
myLayer?: {
|
|
10
|
+
/** Project name */
|
|
11
|
+
name?: string
|
|
12
|
+
loginUrl?: string
|
|
13
|
+
oldVersion?: string
|
|
14
|
+
landingUrl?: string
|
|
15
|
+
pkUrl?: string
|
|
16
|
+
tenderUrl?: string
|
|
17
|
+
workUrl?: string
|
|
18
|
+
avtoUrl?: string
|
|
19
|
+
analyticsUrl?: string
|
|
20
|
+
tnvedUrl?: string
|
|
21
|
+
complianceUrl?: string
|
|
22
|
+
counterParty?: string
|
|
23
|
+
langIsOn?: boolean
|
|
24
|
+
authMode?: 'local' | 'separate'
|
|
25
|
+
cloudPayments?: string
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
}
|
package/app.vue
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
<template>
|
|
2
|
-
<nuxt-layout>
|
|
3
|
-
<a-header />
|
|
4
|
-
<nuxt-page></nuxt-page>
|
|
5
|
-
</nuxt-layout>
|
|
6
|
-
</template>
|
|
7
|
-
<script setup lang="ts">
|
|
8
|
-
</script>
|
|
1
|
+
<template>
|
|
2
|
+
<nuxt-layout>
|
|
3
|
+
<a-header />
|
|
4
|
+
<nuxt-page></nuxt-page>
|
|
5
|
+
</nuxt-layout>
|
|
6
|
+
</template>
|
|
7
|
+
<script setup lang="ts">
|
|
8
|
+
</script>
|
package/assets/styles/main.css
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
/* CSS-вход adata-ui. Подключать его обязан КОНСЬЮМЕР (css: в своём nuxt.config),
|
|
2
|
-
а не слой: у слоя из node_modules Nuxt дописывает авто-импорты в сам CSS и
|
|
3
|
-
ломает dev-SSR. Свой @import "tailwindcss" в приложении не заводить —
|
|
4
|
-
будет второй tailwind-корень и дубли утилит. */
|
|
5
|
-
@import "tailwindcss";
|
|
6
|
-
@import "./theme.css";
|
|
7
|
-
@import "./ui.css";
|
|
8
|
-
|
|
9
|
-
/* Слой всегда в скане: сам он лежит в node_modules консьюмера и дефолтной
|
|
10
|
-
базой (корень приложения) не покрывается. Путь от этого файла. */
|
|
11
|
-
@source "../..";
|
|
12
|
-
|
|
1
|
+
/* CSS-вход adata-ui. Подключать его обязан КОНСЬЮМЕР (css: в своём nuxt.config),
|
|
2
|
+
а не слой: у слоя из node_modules Nuxt дописывает авто-импорты в сам CSS и
|
|
3
|
+
ломает dev-SSR. Свой @import "tailwindcss" в приложении не заводить —
|
|
4
|
+
будет второй tailwind-корень и дубли утилит. */
|
|
5
|
+
@import "tailwindcss";
|
|
6
|
+
@import "./theme.css";
|
|
7
|
+
@import "./ui.css";
|
|
8
|
+
|
|
9
|
+
/* Слой всегда в скане: сам он лежит в node_modules консьюмера и дефолтной
|
|
10
|
+
базой (корень приложения) не покрывается. Путь от этого файла. */
|
|
11
|
+
@source "../..";
|
|
12
|
+
|