@redneckz/wildless-cms-uni-blocks 0.14.152 → 0.14.154
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/bundle/blocks.schema.json +1 -1
- package/bundle/bundle.umd.js +31 -12
- package/bundle/bundle.umd.min.js +1 -1
- package/bundle/components/TabsLayout/TabsLayoutRedirectSection.d.ts +6 -0
- package/bundle/components/TabsLayout/useScrollToTab.d.ts +2 -0
- package/bundle/icons/IconName.d.ts +2 -2
- package/cosmos-static/icons/HuaweiIcon.svg +1 -1
- package/cosmos-static/icons/sprites.svg +1 -1
- package/dist/components/TabsLayout/TabsLayout.js +5 -6
- package/dist/components/TabsLayout/TabsLayout.js.map +1 -1
- package/dist/components/TabsLayout/TabsLayoutRedirectSection.d.ts +6 -0
- package/dist/components/TabsLayout/TabsLayoutRedirectSection.js +27 -0
- package/dist/components/TabsLayout/TabsLayoutRedirectSection.js.map +1 -0
- package/dist/components/TabsLayout/useScrollToTab.d.ts +2 -0
- package/dist/components/TabsLayout/useScrollToTab.js +17 -0
- package/dist/components/TabsLayout/useScrollToTab.js.map +1 -0
- package/dist/icons/IconName.d.ts +2 -2
- package/dist/icons/IconName.js +2 -2
- package/dist/icons/IconName.js.map +1 -1
- package/lib/components/TabsLayout/TabsLayout.js +6 -7
- package/lib/components/TabsLayout/TabsLayout.js.map +1 -1
- package/lib/components/TabsLayout/TabsLayoutRedirectSection.d.ts +6 -0
- package/lib/components/TabsLayout/TabsLayoutRedirectSection.js +25 -0
- package/lib/components/TabsLayout/TabsLayoutRedirectSection.js.map +1 -0
- package/lib/components/TabsLayout/useScrollToTab.d.ts +2 -0
- package/lib/components/TabsLayout/useScrollToTab.js +14 -0
- package/lib/components/TabsLayout/useScrollToTab.js.map +1 -0
- package/lib/icons/IconName.d.ts +2 -2
- package/lib/icons/IconName.js +2 -2
- package/lib/icons/IconName.js.map +1 -1
- package/mobile/bundle/bundle.umd.js +31 -12
- package/mobile/bundle/bundle.umd.min.js +1 -1
- package/mobile/bundle/components/TabsLayout/TabsLayoutRedirectSection.d.ts +6 -0
- package/mobile/bundle/components/TabsLayout/useScrollToTab.d.ts +2 -0
- package/mobile/bundle/icons/IconName.d.ts +2 -2
- package/mobile/dist/components/TabsLayout/TabsLayout.js +5 -6
- package/mobile/dist/components/TabsLayout/TabsLayout.js.map +1 -1
- package/mobile/dist/components/TabsLayout/TabsLayoutRedirectSection.d.ts +6 -0
- package/mobile/dist/components/TabsLayout/TabsLayoutRedirectSection.js +27 -0
- package/mobile/dist/components/TabsLayout/TabsLayoutRedirectSection.js.map +1 -0
- package/mobile/dist/components/TabsLayout/useScrollToTab.d.ts +2 -0
- package/mobile/dist/components/TabsLayout/useScrollToTab.js +17 -0
- package/mobile/dist/components/TabsLayout/useScrollToTab.js.map +1 -0
- package/mobile/dist/icons/IconName.d.ts +2 -2
- package/mobile/dist/icons/IconName.js +2 -2
- package/mobile/dist/icons/IconName.js.map +1 -1
- package/mobile/lib/components/TabsLayout/TabsLayout.js +6 -7
- package/mobile/lib/components/TabsLayout/TabsLayout.js.map +1 -1
- package/mobile/lib/components/TabsLayout/TabsLayoutRedirectSection.d.ts +6 -0
- package/mobile/lib/components/TabsLayout/TabsLayoutRedirectSection.js +25 -0
- package/mobile/lib/components/TabsLayout/TabsLayoutRedirectSection.js.map +1 -0
- package/mobile/lib/components/TabsLayout/useScrollToTab.d.ts +2 -0
- package/mobile/lib/components/TabsLayout/useScrollToTab.js +14 -0
- package/mobile/lib/components/TabsLayout/useScrollToTab.js.map +1 -0
- package/mobile/lib/icons/IconName.d.ts +2 -2
- package/mobile/lib/icons/IconName.js +2 -2
- package/mobile/lib/icons/IconName.js.map +1 -1
- package/mobile/src/components/TabsLayout/TabsLayout.tsx +6 -7
- package/mobile/src/components/TabsLayout/TabsLayoutRedirectSection.tsx +32 -0
- package/mobile/src/components/TabsLayout/useScrollToTab.ts +16 -0
- package/mobile/src/icons/HuaweiIcon.svg +3 -1
- package/mobile/src/icons/IconName.ts +3 -3
- package/package.json +1 -1
- package/src/components/TabsLayout/TabsLayout.tsx +6 -7
- package/src/components/TabsLayout/TabsLayoutRedirectSection.tsx +32 -0
- package/src/components/TabsLayout/useScrollToTab.ts +16 -0
- package/src/icons/HuaweiIcon.svg +3 -1
- package/src/icons/IconName.ts +2 -3
- package/bundle/components/TabsLayout/TabsLayoutRedirectTab.d.ts +0 -6
- package/dist/components/TabsLayout/TabsLayoutRedirectTab.d.ts +0 -6
- package/dist/components/TabsLayout/TabsLayoutRedirectTab.js +0 -17
- package/dist/components/TabsLayout/TabsLayoutRedirectTab.js.map +0 -1
- package/lib/components/TabsLayout/TabsLayoutRedirectTab.d.ts +0 -6
- package/lib/components/TabsLayout/TabsLayoutRedirectTab.js +0 -15
- package/lib/components/TabsLayout/TabsLayoutRedirectTab.js.map +0 -1
- package/mobile/bundle/components/TabsLayout/TabsLayoutRedirectTab.d.ts +0 -6
- package/mobile/dist/components/TabsLayout/TabsLayoutRedirectTab.d.ts +0 -6
- package/mobile/dist/components/TabsLayout/TabsLayoutRedirectTab.js +0 -17
- package/mobile/dist/components/TabsLayout/TabsLayoutRedirectTab.js.map +0 -1
- package/mobile/lib/components/TabsLayout/TabsLayoutRedirectTab.d.ts +0 -6
- package/mobile/lib/components/TabsLayout/TabsLayoutRedirectTab.js +0 -15
- package/mobile/lib/components/TabsLayout/TabsLayoutRedirectTab.js.map +0 -1
- package/mobile/src/components/TabsLayout/TabsLayoutRedirectTab.tsx +0 -26
- package/src/components/TabsLayout/TabsLayoutRedirectTab.tsx +0 -26
|
@@ -159,7 +159,7 @@ export declare enum IconTitleMap {
|
|
|
159
159
|
HeartIcon = "\u0421\u0435\u0440\u0434\u0446\u0435",
|
|
160
160
|
HeartTickIcon = "\u0421\u0435\u0440\u0434\u0446\u0435\u0431\u0435\u0435\u043D\u0438\u0435",
|
|
161
161
|
HouseIcon = "\u0418\u043F\u043E\u0442\u0435\u043A\u0430",
|
|
162
|
-
HuaweiIcon = "\u041B\u043E\u0433\u043E
|
|
162
|
+
HuaweiIcon = "\u041B\u043E\u0433\u043E 'Huawei'",
|
|
163
163
|
LockIcon = "\u0417\u0430\u043C\u043E\u043A",
|
|
164
164
|
LogoIcon = "Logo",
|
|
165
165
|
LoupeIcon = "\u041B\u0443\u043F\u0430",
|
|
@@ -212,7 +212,7 @@ export declare enum IconTitleMap {
|
|
|
212
212
|
* @title Иконка
|
|
213
213
|
* @enumNames [
|
|
214
214
|
* "",
|
|
215
|
-
* 'Достижение', 'Деньги', 'Лого «Apple»', 'Стрелка \'Вниз\'', 'Стрелка сплошная \'Вниз\'', 'Стрелка \'Влево\'', 'Стрелка \'Вправо\'', 'Стрелка \'Вверх-право\'', 'Стрелка \'Вверх\'', 'Стрелка сплошная \'Вверх\'', 'Банкомат', 'Банк', 'Белорусский флаг', 'Портфель', 'Здание с деревом', 'Бургер', 'Скруглённый календарь', 'Календарь', 'Календарь с галочкой', 'Кред. карта', 'Кред. карта под наклоном', 'Карта', 'Кред. карта с галочкой', 'Инвестиции', 'Диаграмма (в круге)', 'Деньги внутри кошелька', 'Стрелка \'Влево\'', 'Клиент', 'Крестик', 'Монеты', 'Конвертирование', 'Копирование', 'Здание суда', 'Кубок', 'Разработка', 'Скидка', 'Скачать документ', 'Документ', 'Доллар', 'Зелёная \'галочка\' в круге', 'Зелёная \'галочка\'', 'Лого «Дзен»', 'Пустой кошелёк с возвратом', 'Пустой кошелёк', 'Евро', 'Факс', 'FullScreenIcon', 'Геолокация', 'Глобус', 'Gps', 'Сетка (белая)', 'HeadphonesIcon', 'Сердце', 'Сердцебеение', 'Ипотека', 'Лого
|
|
215
|
+
* 'Достижение', 'Деньги', 'Лого «Apple»', 'Стрелка \'Вниз\'', 'Стрелка сплошная \'Вниз\'', 'Стрелка \'Влево\'', 'Стрелка \'Вправо\'', 'Стрелка \'Вверх-право\'', 'Стрелка \'Вверх\'', 'Стрелка сплошная \'Вверх\'', 'Банкомат', 'Банк', 'Белорусский флаг', 'Портфель', 'Здание с деревом', 'Бургер', 'Скруглённый календарь', 'Календарь', 'Календарь с галочкой', 'Кред. карта', 'Кред. карта под наклоном', 'Карта', 'Кред. карта с галочкой', 'Инвестиции', 'Диаграмма (в круге)', 'Деньги внутри кошелька', 'Стрелка \'Влево\'', 'Клиент', 'Крестик', 'Монеты', 'Конвертирование', 'Копирование', 'Здание суда', 'Кубок', 'Разработка', 'Скидка', 'Скачать документ', 'Документ', 'Доллар', 'Зелёная \'галочка\' в круге', 'Зелёная \'галочка\'', 'Лого «Дзен»', 'Пустой кошелёк с возвратом', 'Пустой кошелёк', 'Евро', 'Факс', 'FullScreenIcon', 'Геолокация', 'Глобус', 'Gps', 'Сетка (белая)', 'HeadphonesIcon', 'Сердце', 'Сердцебеение', 'Ипотека', 'Лого \'Huawei\'', 'Замок', 'Logo', 'Лупа', 'MagnifierIcon', 'E-mail', 'Маркер карты', 'Маркер карты РСХБ', 'Иконка Развёрнутая карта', 'Минус', 'Деньги', 'Денежное страхование', 'Монитор и мобильный', 'Новый документ', 'Колокольчик нотификаций', 'Лого «Одноклассники»', 'Пачка бумаги А4', 'Бизнес', 'Проценты (круг.)', 'PercentIcon', 'Персональная карта', 'Звонящий телефон', 'Телефон', 'Лого «PlayMarket»', 'Плюс в круге', 'Плюс', 'Профиль, 2 персоны', 'Профиль', 'Ошибка', 'Ок', 'Рубль (круг.)', 'Лого «Rutube»', 'Сейф', 'Безопасность', 'Безопасность', 'Подписанные документы', 'Маленькие часы', 'Кольцо', 'Лого «Telegram»', 'Самолётик', 'Пользователь в рамке', 'Пользователь', 'Лого «VK»', 'Кошелёк с плюсом', 'Кошелёк', 'Кошелёк с деньгами', 'Лого «Youtube»'
|
|
216
216
|
* ]
|
|
217
217
|
*/
|
|
218
218
|
export declare type IconName = '' | 'AchievementIcon' | 'ActualBalanceIcon' | 'AppleIcon' | 'ArrowDownIcon' | 'ArrowDownSolidIcon' | 'ArrowLeftIcon' | 'ArrowRightIcon' | 'ArrowTopRightIcon' | 'ArrowUpIcon' | 'ArrowUpSolidIcon' | 'AtmIcon' | 'BankIcon' | 'BelarusianFlag' | 'BriefcaseIcon' | 'BuildingIcon' | 'BurgerIcon' | 'CalendarCircleIcon' | 'CalendarIcon' | 'CalendarTickIcon' | 'CardIcon' | 'CardPosIcon' | 'CardSendIcon' | 'CardTickIcon' | 'ChartIcon' | 'ChartRoundIcon' | 'ChartSquareIcon' | 'ChevronLeftIcon' | 'ClientIcon' | 'CloseIcon' | 'CoinIcon' | 'ConvertCardIcon' | 'CopyIcon' | 'CourtHouseIcon' | 'CupIcon' | 'DevIcon' | 'DiscountShapeIcon' | 'DocDownloadIcon' | 'DocIcon' | 'DollarIcon' | 'DoneIcon' | 'DoneSimpleIcon' | 'DzenIcon' | 'EmptyWalletChangeIcon' | 'EmptyWalletIcon' | 'EuroIcon' | 'FaxIcon' | 'FullScreenIcon' | 'GeolocationIcon' | 'GlobalIcon' | 'GpsIcon' | 'GridIcon' | 'HeadphonesIcon' | 'HeartIcon' | 'HeartTickIcon' | 'HouseIcon' | 'HuaweiIcon' | 'LockIcon' | 'LogoIcon' | 'LoupeIcon' | 'MagnifierIcon' | 'MailIcon' | 'MapMarkerClusterIcon' | 'MapMarkerSingleIcon' | 'MapOpenedIcon' | 'MinusIcon' | 'MoneyIcon' | 'MoneyInsuranceIcon' | 'MonitorMobileIcon' | 'NewDocIcon' | 'NotificationBingIcon' | 'OkIcon' | 'PackA4Icon' | 'PassSendIcon' | 'PercentageRoundIcon' | 'PercentIcon' | 'PersonalCardIcon' | 'PhoneCallingIcon' | 'PhoneIcon' | 'PlayMarketIcon' | 'PlusCircleIcon' | 'PlusIcon' | 'Profile2UserIcon' | 'ProfileIcon' | 'ResponseFailIcon' | 'ResponseOKIcon' | 'RoundRubleIcon' | 'RutubeIcon' | 'SafeIcon' | 'SecurityСardIcon' | 'ShieldTickIcon' | 'SignDocsIcon' | 'SmallClockIcon' | 'SoundIcon' | 'TelegramIcon' | 'UserGeoLocationIcon' | 'UserSquareIcon' | 'UserTickIcon' | 'VKIcon' | 'WalletAddIcon' | 'WalletIcon' | 'WalletWithMoneyIcon' | 'YoutubeIcon';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
<svg fill="none" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 28 28"><path
|
|
1
|
+
<svg fill="none" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 28 28"><path clip-rule="evenodd" d="M8.471 1.4c-5.177 0-7.07 1.894-7.07 7.07v11.06c0 5.176 1.893 7.07 7.07 7.07h11.055c5.177 0 7.074-1.894 7.074-7.07V8.47c0-5.176-1.893-7.07-7.07-7.07H8.47z"/><path fill-rule="evenodd" clip-rule="evenodd" d="M12.393 16.015h1.012l-.508-1.18-.504 1.18zm-.249.595-.3.687h-.683L12.614 14h.59l1.448 3.297h-.702l-.296-.687h-1.51zm10.997.685h.66V14h-.66v3.295zm-2.63-1.416h1.218v-.6h-1.217v-.676h1.767v-.6h-2.427v3.294h2.49v-.601h-1.83v-.817zm-2.623.39L17.138 14h-.546l-.748 2.269-.73-2.267h-.712l1.15 3.297h.554l.75-2.166.75 2.166h.56l1.146-3.297h-.694l-.73 2.267zm-7.736-.38c0 .536-.266.822-.75.822-.486 0-.754-.294-.754-.845v-1.864H7.98v1.886c0 .928.516 1.46 1.414 1.46.908 0 1.428-.542 1.428-1.487V14h-.669v1.888zM6.382 14h.669v3.3h-.67v-1.34h-1.51v1.34H4.2V14h.67v1.33h1.51V14zM14 9.8a4.205 4.205 0 0 1-4.2-4.2h.594a3.61 3.61 0 0 0 3.607 3.607 3.61 3.61 0 0 0 3.607-3.606h.593c0 2.316-1.884 4.2-4.2 4.2z" fill="currentColor"/></svg>
|
|
@@ -52,7 +52,7 @@
|
|
|
52
52
|
<symbol id="HeartIcon" viewBox="0 0 24 22" fill="none" ><path d="M7.876 3.667a5.042 5.042 0 0 0-5.042 5.041c0 5.042 5.958 9.625 9.167 10.692 3.208-1.067 9.166-5.65 9.166-10.692a5.042 5.042 0 0 0-9.166-2.9 5.036 5.036 0 0 0-4.125-2.141Z" fill="currentColor" stroke="currentColor" stroke-width="4" stroke-linecap="round" stroke-linejoin="round"/></symbol>
|
|
53
53
|
<symbol id="HeartTickIcon" viewBox="0 0 24 24" fill="none" ><path d="M7.56 3.1c1.81 0 3.43.88 4.44 2.23a5.549 5.549 0 0 1 4.44-2.23C19.51 3.1 22 5.6 22 8.69c0 1.97-.51 3.71-1.31 5.22a4.794 4.794 0 0 0-3.49-1.51c-2.65 0-4.8 2.15-4.8 4.8 0 1.23.47 2.35 1.23 3.2-.37.17-.71.31-1.01.41-.34.12-.9.12-1.24 0C8.48 19.82 2 15.69 2 8.69c0-1.55.62-2.95 1.63-3.96" stroke="#000" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/><path d="M22 17.2c0 .9-.25 1.75-.7 2.47A4.768 4.768 0 0 1 17.2 22c-1.75 0-3.28-.94-4.1-2.33-.44-.72-.7-1.57-.7-2.47a4.801 4.801 0 0 1 9.6 0Z" stroke="currentColor" stroke-width="2" stroke-miterlimit="10" stroke-linecap="round" stroke-linejoin="round"/><path d="m15.33 17.2 1.18 1.18 2.56-2.36" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></symbol>
|
|
54
54
|
<symbol id="HouseIcon" viewBox="0 0 24 24" fill="none" ><path d="M2 22h20M3 9.971c0-.61.29-1.19.77-1.57l7-5.45c.72-.56 1.73-.56 2.46 0l7 5.44c.49.38.77.96.77 1.58v12.03M2.95 22.001l.03-7.97" stroke="currentColor" stroke-width="2" stroke-miterlimit="10" stroke-linecap="round" stroke-linejoin="round"/><path d="M13 17h-2c-.83 0-1.5.67-1.5 1.5V22h5v-3.5c0-.83-.67-1.5-1.5-1.5ZM9.5 13.75h-2c-.55 0-1-.45-1-1v-1.5c0-.55.45-1 1-1h2c.55 0 1 .45 1 1v1.5c0 .55-.45 1-1 1ZM16.5 13.75h-2c-.55 0-1-.45-1-1v-1.5c0-.55.45-1 1-1h2c.55 0 1 .45 1 1v1.5c0 .55-.45 1-1 1Z" stroke="currentColor" stroke-width="2" stroke-miterlimit="10" stroke-linejoin="round"/><path d="m19 7-.03-3h-4.4" stroke="currentColor" stroke-width="2" stroke-miterlimit="10" stroke-linecap="round" stroke-linejoin="round"/></symbol>
|
|
55
|
-
<symbol id="HuaweiIcon" fill="none" viewBox="0 0 28 28"><path
|
|
55
|
+
<symbol id="HuaweiIcon" fill="none" viewBox="0 0 28 28"><path clip-rule="evenodd" d="M8.471 1.4c-5.177 0-7.07 1.894-7.07 7.07v11.06c0 5.176 1.893 7.07 7.07 7.07h11.055c5.177 0 7.074-1.894 7.074-7.07V8.47c0-5.176-1.893-7.07-7.07-7.07H8.47z"/><path fill-rule="evenodd" clip-rule="evenodd" d="M12.393 16.015h1.012l-.508-1.18-.504 1.18zm-.249.595-.3.687h-.683L12.614 14h.59l1.448 3.297h-.702l-.296-.687h-1.51zm10.997.685h.66V14h-.66v3.295zm-2.63-1.416h1.218v-.6h-1.217v-.676h1.767v-.6h-2.427v3.294h2.49v-.601h-1.83v-.817zm-2.623.39L17.138 14h-.546l-.748 2.269-.73-2.267h-.712l1.15 3.297h.554l.75-2.166.75 2.166h.56l1.146-3.297h-.694l-.73 2.267zm-7.736-.38c0 .536-.266.822-.75.822-.486 0-.754-.294-.754-.845v-1.864H7.98v1.886c0 .928.516 1.46 1.414 1.46.908 0 1.428-.542 1.428-1.487V14h-.669v1.888zM6.382 14h.669v3.3h-.67v-1.34h-1.51v1.34H4.2V14h.67v1.33h1.51V14zM14 9.8a4.205 4.205 0 0 1-4.2-4.2h.594a3.61 3.61 0 0 0 3.607 3.607 3.61 3.61 0 0 0 3.607-3.606h.593c0 2.316-1.884 4.2-4.2 4.2z" fill="currentColor"/></symbol>
|
|
56
56
|
<symbol id="LockIcon" viewBox="0 0 20 20" fill="none" ><path d="M5 8.335V6.668c0-2.758.833-5 5-5s5 2.242 5 5v1.667m-7.083 4.998A2.084 2.084 0 1 0 10 11.25" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/><path d="M18.334 14.165V12.5c0-3.334-.834-4.167-4.167-4.167H5.834c-3.334 0-4.167.833-4.167 4.167v1.666c0 3.334.833 4.167 4.167 4.167h8.333c1.467 0 2.45-.158 3.092-.625" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></symbol>
|
|
57
57
|
<symbol id="LogoIcon" fill="none" viewBox="0 0 40 45"><path fill="currentColor" d="m13.72 25.51 4.42-4.33v-2.95l-4.42 4.32v2.96Zm0-10.98 4.42-4.35V7.41l-4.42 4.31v2.8Zm0 3.63 4.42-4.33v-2.78l-4.42 4.32v2.8ZM12.46 7.44l-.6-.56V0h-.66v6.22l-.58-.57V0h-.67v5l-.59-.58V0H8.7v6.56l4.44 4.33V0h-.67v7.44Zm1.26 14.35 4.42-4.33v-2.78L13.72 19v2.8Zm-5.03-.61 4.44 4.33v-2.96l-4.44-4.32v2.95Zm8.79-16.76-.59.58V0h-.66v5.66l-.6.56V0h-.66v6.87l-.58.57V0h-.67v10.9l4.42-4.34V0h-.66v4.42Zm-8.79 5.76 4.44 4.35v-2.8L8.69 7.4v2.77Zm0 3.65 4.44 4.33v-2.8l-4.44-4.3v2.77Zm0 3.63 4.44 4.33V19l-4.44-4.31v2.78Zm26.37 2.29H24.3a2.25 2.25 0 0 0 .36-1.22 2.32 2.32 0 0 0-2.33-2.31 2.32 2.32 0 0 0-2.31 2.31c0 .5.16.96.43 1.34a.74.74 0 0 0-.33.61c0 .26.14.49.33.62a2.32 2.32 0 0 0-.43 1.34 2.31 2.31 0 0 0 2.31 2.31 2.32 2.32 0 0 0 2.33-2.31c0-.45-.13-.87-.36-1.22h8.01v.49h-.8v.68h.8v.7h-.8v1.3h.8v-.58h1.17v.58h.79v-1.3h-.79v-.7h.79v-.68h-.79v-.5h1.58a.56.56 0 0 0 .56-.56v-.34a.57.57 0 0 0-.56-.56Zm-11.53 2.7a1.2 1.2 0 0 1-2.4 0c0-.24.08-.47.2-.66l.34-.56a.97.97 0 0 1-.34-.75c0-.3.13-.56.33-.74l-.32-.56a1.13 1.13 0 0 1-.2-.66 1.2 1.2 0 0 1 2.4 0c0 .49-.56 1.65-.56 1.65v.62c-.01.01.55 1.17.55 1.66ZM4.67 18.34v2.89c0 2.75 1.2 4.53 1.9 5.21l4.58 4.5c1.28 1.25 1.5 1.66 1.79 2.37v-3.2c0-2.84-1.44-3.94-2.19-4.67-1.73-1.68-2.89-2.8-3.82-3.73a8.98 8.98 0 0 1-2.26-3.37Zm6.08 14.24c-1.73-1.7-2.89-2.8-3.82-3.73a10 10 0 0 1-2.25-2.98v2.49a7.87 7.87 0 0 0 1.89 5.24l4.58 4.47c1.28 1.25 1.5 1.85 1.79 2.55v-3.37c0-2.85-1.45-3.95-2.19-4.67Z"/>,<path fill="currentColor" d="M19.88 5.34c-.32 0-.64 0-.96.02V6.7a18.5 18.5 0 1 1 .95 36.94A18.5 18.5 0 0 1 1.35 25.17c0-5.67 2.55-10.73 6.58-14.13V9.32A19.78 19.78 0 0 0 0 25.17C0 36.12 8.9 45 19.88 45a19.85 19.85 0 0 0 19.86-19.83c0-10.95-8.9-19.83-19.87-19.83Z"/>,<path fill="currentColor" d="M33.93 35.53c.3-.41.6-.85.87-1.3v-2.66h-.87v3.96Zm2.54-4.92c.12-.4.24-.78.34-1.16h-2.88v.7h.43c.77-.02 1.63-.03 2.11.46Zm-19.19-1.27h-.78v7.91h.78v-7.9Z"/>,<path fill="currentColor" d="M14.7 27.83h2.58c.67 0 1.14.14 1.4.4.27.25.4.72.4 1.38v7.4c0 .66-.12 1.12-.4 1.38-.4.41-1.16.41-1.78.41l-.4-.01v3.5l.78.14v-2.88c1.2 0 1.97-.4 2.34-1.22v4.29h.26l.5-.01V29.74c0-.68.13-1.16.4-1.43.25-.27.72-.4 1.37-.4.67 0 1.65-.1 2.16.4.26.27.38.76.38 1.43v3.8h-1.77v-4.06h-.77v12.99c.26-.03.5-.07.77-.12V34.3h1.77v7.64c.36-.1.72-.21 1.08-.34v-7c0-.8.19-1.4 1-1.67l-.9-4.87h1.8l.3 5.31h.22l.3-5.31h1.88l-1.01 4.87c.84.3 1.01.81 1.01 1.66v4.53a16.63 16.63 0 0 0 1.5-1.27v-9.83h5.25l.1-.72H24.93l.17.89c-.38-.72-1.12-1.08-2.2-1.08h-.77c-1.3 0-2.1.52-2.4 1.55-.27-1.08-1.1-1.62-2.46-1.62h-3.36v14.52c.26.09.52.18.78.25V27.84Zm16.29 5.58-.85-.8.85-4.37v5.17Z"/>,<path fill="currentColor" d="M27.66 40.79c.27-.14.55-.28.8-.43v-5.98h-.8v6.4Z"/></symbol>
|
|
58
58
|
<symbol id="LoupeIcon" fill="none" viewBox="0 0 24 24"><path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M19.5 20.5 16 17a7.5 7.5 0 1 1 2.376-3"/></symbol>
|
|
@@ -12,20 +12,19 @@ const style_1 = require("../../utils/style");
|
|
|
12
12
|
const CarouselScrollButtons_1 = require("../Carousel/CarouselScrollButtons");
|
|
13
13
|
const alignTabStyle_1 = require("./alignTabStyle");
|
|
14
14
|
const TabsLayoutButton_1 = require("./TabsLayoutButton");
|
|
15
|
-
const
|
|
15
|
+
const TabsLayoutRedirectSection_1 = require("./TabsLayoutRedirectSection");
|
|
16
|
+
const useScrollToTab_1 = require("./useScrollToTab");
|
|
16
17
|
exports.TabsLayout = (0, uni_jsx_1.JSX)(({ className = '', tabs = [], block, tabAlign, ...rest }) => {
|
|
17
18
|
const [activeTabIndex, setActiveTabIndex] = (0, hooks_1.useState)(getInitSelectedIndex(tabs));
|
|
18
19
|
const slotName = getSlotName(tabs[activeTabIndex], activeTabIndex);
|
|
19
20
|
const itemCount = tabs.length;
|
|
20
21
|
const [activeSlideIndex, { inc: incActiveSlideIndex, dec: decActiveSlideIndex }] = (0, useCarouselControls_1.useCarouselControls)({ itemCount }, activeTabIndex);
|
|
21
22
|
const [containerRef, scroll] = (0, useSwipeListScroll_1.useSwipeListScroll)({ itemCount });
|
|
22
|
-
(0,
|
|
23
|
-
|
|
24
|
-
}, []);
|
|
25
|
-
return ((0, jsx_runtime_1.jsxs)(BlockWrapper_1.BlockWrapper, { className: (0, style_1.style)(className), defaultPadding: "p-0", ...rest, children: [(0, jsx_runtime_1.jsxs)("div", { className: "relative border-b-8 border-primary-main", children: [(0, jsx_runtime_1.jsx)(SwipeListContainer_1.SwipeListContainer, { itemClassName: "flex", containerRef: containerRef, snapAlign: "snap-end", gap: 8, onVisibleIndicesChange: scroll.handleVisibleIndicesChange, children: tabs.map(renderTabButton(activeTabIndex, setActiveTabIndex, tabAlign)) }), (0, jsx_runtime_1.jsx)(CarouselScrollButtons_1.CarouselScrollButtons, { scroll: scroll, arrowsPadded: true, onScrollLeft: decActiveSlideIndex, onScrollRight: incActiveSlideIndex, activeIndex: activeSlideIndex, itemCount: itemCount })] }), (0, jsx_runtime_1.jsx)("div", { className: "space-y-px @5xl:space-y-0 @5xl:grid @5xl:grid-cols-12 @5xl:gap-2xs", children: tabs[activeTabIndex]?.href ? ((0, jsx_runtime_1.jsx)(TabsLayoutRedirectTab_1.TabsLayoutRedirectTab, { tab: tabs[activeTabIndex] })) : ((0, renderBlockList_1.renderBlocksList)(block?.slots?.[slotName], { ...rest?.options, slotName })) })] }));
|
|
23
|
+
(0, useScrollToTab_1.useScrollToTab)(activeTabIndex, scroll);
|
|
24
|
+
return ((0, jsx_runtime_1.jsxs)(BlockWrapper_1.BlockWrapper, { className: (0, style_1.style)(className), defaultPadding: "p-0", ...rest, children: [(0, jsx_runtime_1.jsxs)("div", { className: "relative border-b-8 border-primary-main", children: [(0, jsx_runtime_1.jsx)(SwipeListContainer_1.SwipeListContainer, { itemClassName: "flex", containerRef: containerRef, snapAlign: "snap-end", gap: 8, onVisibleIndicesChange: scroll.handleVisibleIndicesChange, children: tabs.map(renderTabButton(activeTabIndex, setActiveTabIndex, tabAlign)) }), (0, jsx_runtime_1.jsx)(CarouselScrollButtons_1.CarouselScrollButtons, { scroll: scroll, arrowsPadded: true, onScrollLeft: decActiveSlideIndex, onScrollRight: incActiveSlideIndex, activeIndex: activeSlideIndex, itemCount: itemCount })] }), (0, jsx_runtime_1.jsx)("div", { className: "space-y-px @5xl:space-y-0 @5xl:grid @5xl:grid-cols-12 @5xl:gap-2xs", children: tabs[activeTabIndex]?.href ? ((0, jsx_runtime_1.jsx)(TabsLayoutRedirectSection_1.TabsLayoutRedirectSection, { tab: tabs[activeTabIndex] })) : ((0, renderBlockList_1.renderBlocksList)(block?.slots?.[slotName], { ...rest?.options, slotName })) })] }));
|
|
26
25
|
});
|
|
27
26
|
exports.TabsLayout.slots = ({ tabs }) => tabs?.filter((_) => !_.href).map(getSlotName) || [];
|
|
28
|
-
exports.TabsLayout.childrenTypes = { exclude: ['TabsLayout'] };
|
|
27
|
+
exports.TabsLayout.childrenTypes = { exclude: ['TabsLayout'] }; //TODO: fix this on wcms
|
|
29
28
|
const getSlotName = (tab, index) => tab?.title || `Слот №${index}`;
|
|
30
29
|
const getInitSelectedIndex = (tabs) => tabs.reduce((selectedIndex, tab, i) => (tab.selected ? i : selectedIndex), 0);
|
|
31
30
|
const renderTabButton = (activeTabIndex, onClick, tabAlign = 'start') => (tab, i) => ((0, jsx_runtime_1.jsx)(TabsLayoutButton_1.TabsLayoutButton, { className: alignTabStyle_1.alignTabStyle[tabAlign], tab: tab, isActive: activeTabIndex === i, onClick: () => onClick(i) }, String(i)));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TabsLayout.js","sourceRoot":"","sources":["../../../src/components/TabsLayout/TabsLayout.tsx"],"names":[],"mappings":";;;AAAA,+CAAwC;AACxC,
|
|
1
|
+
{"version":3,"file":"TabsLayout.js","sourceRoot":"","sources":["../../../src/components/TabsLayout/TabsLayout.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
2
|
+
exports.TabsLayoutRedirectSection = void 0;
|
|
3
|
+
const jsx_runtime_1 = require("@redneckz/uni-jsx/jsx-runtime");
|
|
4
|
+
const uni_jsx_1 = require("@redneckz/uni-jsx");
|
|
5
|
+
const useDebouncedEffect_1 = require("@redneckz/uni-jsx/lib/hooks/useDebouncedEffect");
|
|
6
|
+
const useLink_1 = require("../../hooks/useLink");
|
|
7
|
+
const Shimmer_1 = require("../../ui-kit/Shimmer/Shimmer");
|
|
8
|
+
const url_1 = require("../../utils/url");
|
|
9
|
+
const REDIRECT_DELAY = 0.8 * 1000;
|
|
10
|
+
exports.TabsLayoutRedirectSection = (0, uni_jsx_1.JSX)(({ tab }) => {
|
|
11
|
+
const link = (0, useLink_1.useLink)();
|
|
12
|
+
const { onClick } = link({
|
|
13
|
+
...tab,
|
|
14
|
+
onClick: () => {
|
|
15
|
+
/**
|
|
16
|
+
* In the current implementation of useLink, there is no follow-by-link method,
|
|
17
|
+
* and default routing won't work if the link is external.
|
|
18
|
+
*/
|
|
19
|
+
if (tab.href && !(0, url_1.isLocalURL)(tab.href)) {
|
|
20
|
+
globalThis.location.href = tab.href;
|
|
21
|
+
}
|
|
22
|
+
},
|
|
23
|
+
});
|
|
24
|
+
(0, useDebouncedEffect_1.useDebouncedEffect)(onClick, [], REDIRECT_DELAY);
|
|
25
|
+
return (0, jsx_runtime_1.jsx)(Shimmer_1.Shimmer, { className: "col-span-12 p-xl", size: 5 });
|
|
26
|
+
});
|
|
27
|
+
//# sourceMappingURL=TabsLayoutRedirectSection.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TabsLayoutRedirectSection.js","sourceRoot":"","sources":["../../../src/components/TabsLayout/TabsLayoutRedirectSection.tsx"],"names":[],"mappings":";;;AAAA,+CAAwC;AACxC,uFAAoF;AACpF,iDAA8C;AAC9C,0DAAuD;AACvD,yCAA6C;AAG7C,MAAM,cAAc,GAAG,GAAG,GAAG,IAAI,CAAC;AAMrB,QAAA,yBAAyB,GAAG,IAAA,aAAG,EAAiC,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE;IACvF,MAAM,IAAI,GAAG,IAAA,iBAAO,GAAE,CAAC;IACvB,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;QACvB,GAAG,GAAG;QACN,OAAO,EAAE,GAAG,EAAE;YACZ;;;eAGG;YACH,IAAI,GAAG,CAAC,IAAI,IAAI,CAAC,IAAA,gBAAU,EAAC,GAAG,CAAC,IAAI,CAAC,EAAE;gBACrC,UAAU,CAAC,QAAQ,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC;aACrC;QACH,CAAC;KACF,CAAC,CAAC;IAEH,IAAA,uCAAkB,EAAC,OAAO,EAAE,EAAE,EAAE,cAAc,CAAC,CAAC;IAEhD,OAAO,uBAAC,iBAAO,IAAC,SAAS,EAAC,kBAAkB,EAAC,IAAI,EAAE,CAAC,GAAI,CAAC;AAC3D,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
2
|
+
exports.useScrollToTab = void 0;
|
|
3
|
+
const hooks_1 = require("@redneckz/uni-jsx/lib/hooks");
|
|
4
|
+
const useBool_1 = require("@redneckz/uni-jsx/lib/hooks/useBool");
|
|
5
|
+
const useScrollToTab = (activeTabIndex, scroll) => {
|
|
6
|
+
const [initState, { setTrue: setInitStateTrue }] = (0, useBool_1.useBool)(false);
|
|
7
|
+
(0, hooks_1.useEffect)(() => {
|
|
8
|
+
scroll.scrollTo(activeTabIndex, {
|
|
9
|
+
behavior: initState ? 'smooth' : 'auto',
|
|
10
|
+
block: 'nearest',
|
|
11
|
+
inline: 'center',
|
|
12
|
+
});
|
|
13
|
+
!initState && setInitStateTrue();
|
|
14
|
+
}, [activeTabIndex, initState]);
|
|
15
|
+
};
|
|
16
|
+
exports.useScrollToTab = useScrollToTab;
|
|
17
|
+
//# sourceMappingURL=useScrollToTab.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useScrollToTab.js","sourceRoot":"","sources":["../../../src/components/TabsLayout/useScrollToTab.ts"],"names":[],"mappings":";;AAAA,uDAAwD;AACxD,iEAA8D;AAGvD,MAAM,cAAc,GAAG,CAAC,cAAsB,EAAE,MAAuB,EAAE,EAAE;IAChF,MAAM,CAAC,SAAS,EAAE,EAAE,OAAO,EAAE,gBAAgB,EAAE,CAAC,GAAG,IAAA,iBAAO,EAAC,KAAK,CAAC,CAAC;IAElE,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,MAAM,CAAC,QAAQ,CAAC,cAAc,EAAE;YAC9B,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM;YACvC,KAAK,EAAE,SAAS;YAChB,MAAM,EAAE,QAAQ;SACjB,CAAC,CAAC;QACH,CAAC,SAAS,IAAI,gBAAgB,EAAE,CAAC;IACnC,CAAC,EAAE,CAAC,cAAc,EAAE,SAAS,CAAC,CAAC,CAAC;AAClC,CAAC,CAAC;AAXW,QAAA,cAAc,kBAWzB"}
|
package/dist/icons/IconName.d.ts
CHANGED
|
@@ -159,7 +159,7 @@ export declare enum IconTitleMap {
|
|
|
159
159
|
HeartIcon = "\u0421\u0435\u0440\u0434\u0446\u0435",
|
|
160
160
|
HeartTickIcon = "\u0421\u0435\u0440\u0434\u0446\u0435\u0431\u0435\u0435\u043D\u0438\u0435",
|
|
161
161
|
HouseIcon = "\u0418\u043F\u043E\u0442\u0435\u043A\u0430",
|
|
162
|
-
HuaweiIcon = "\u041B\u043E\u0433\u043E
|
|
162
|
+
HuaweiIcon = "\u041B\u043E\u0433\u043E 'Huawei'",
|
|
163
163
|
LockIcon = "\u0417\u0430\u043C\u043E\u043A",
|
|
164
164
|
LogoIcon = "Logo",
|
|
165
165
|
LoupeIcon = "\u041B\u0443\u043F\u0430",
|
|
@@ -212,7 +212,7 @@ export declare enum IconTitleMap {
|
|
|
212
212
|
* @title Иконка
|
|
213
213
|
* @enumNames [
|
|
214
214
|
* "",
|
|
215
|
-
* 'Достижение', 'Деньги', 'Лого «Apple»', 'Стрелка \'Вниз\'', 'Стрелка сплошная \'Вниз\'', 'Стрелка \'Влево\'', 'Стрелка \'Вправо\'', 'Стрелка \'Вверх-право\'', 'Стрелка \'Вверх\'', 'Стрелка сплошная \'Вверх\'', 'Банкомат', 'Банк', 'Белорусский флаг', 'Портфель', 'Здание с деревом', 'Бургер', 'Скруглённый календарь', 'Календарь', 'Календарь с галочкой', 'Кред. карта', 'Кред. карта под наклоном', 'Карта', 'Кред. карта с галочкой', 'Инвестиции', 'Диаграмма (в круге)', 'Деньги внутри кошелька', 'Стрелка \'Влево\'', 'Клиент', 'Крестик', 'Монеты', 'Конвертирование', 'Копирование', 'Здание суда', 'Кубок', 'Разработка', 'Скидка', 'Скачать документ', 'Документ', 'Доллар', 'Зелёная \'галочка\' в круге', 'Зелёная \'галочка\'', 'Лого «Дзен»', 'Пустой кошелёк с возвратом', 'Пустой кошелёк', 'Евро', 'Факс', 'FullScreenIcon', 'Геолокация', 'Глобус', 'Gps', 'Сетка (белая)', 'HeadphonesIcon', 'Сердце', 'Сердцебеение', 'Ипотека', 'Лого
|
|
215
|
+
* 'Достижение', 'Деньги', 'Лого «Apple»', 'Стрелка \'Вниз\'', 'Стрелка сплошная \'Вниз\'', 'Стрелка \'Влево\'', 'Стрелка \'Вправо\'', 'Стрелка \'Вверх-право\'', 'Стрелка \'Вверх\'', 'Стрелка сплошная \'Вверх\'', 'Банкомат', 'Банк', 'Белорусский флаг', 'Портфель', 'Здание с деревом', 'Бургер', 'Скруглённый календарь', 'Календарь', 'Календарь с галочкой', 'Кред. карта', 'Кред. карта под наклоном', 'Карта', 'Кред. карта с галочкой', 'Инвестиции', 'Диаграмма (в круге)', 'Деньги внутри кошелька', 'Стрелка \'Влево\'', 'Клиент', 'Крестик', 'Монеты', 'Конвертирование', 'Копирование', 'Здание суда', 'Кубок', 'Разработка', 'Скидка', 'Скачать документ', 'Документ', 'Доллар', 'Зелёная \'галочка\' в круге', 'Зелёная \'галочка\'', 'Лого «Дзен»', 'Пустой кошелёк с возвратом', 'Пустой кошелёк', 'Евро', 'Факс', 'FullScreenIcon', 'Геолокация', 'Глобус', 'Gps', 'Сетка (белая)', 'HeadphonesIcon', 'Сердце', 'Сердцебеение', 'Ипотека', 'Лого \'Huawei\'', 'Замок', 'Logo', 'Лупа', 'MagnifierIcon', 'E-mail', 'Маркер карты', 'Маркер карты РСХБ', 'Иконка Развёрнутая карта', 'Минус', 'Деньги', 'Денежное страхование', 'Монитор и мобильный', 'Новый документ', 'Колокольчик нотификаций', 'Лого «Одноклассники»', 'Пачка бумаги А4', 'Бизнес', 'Проценты (круг.)', 'PercentIcon', 'Персональная карта', 'Звонящий телефон', 'Телефон', 'Лого «PlayMarket»', 'Плюс в круге', 'Плюс', 'Профиль, 2 персоны', 'Профиль', 'Ошибка', 'Ок', 'Рубль (круг.)', 'Лого «Rutube»', 'Сейф', 'Безопасность', 'Безопасность', 'Подписанные документы', 'Маленькие часы', 'Кольцо', 'Лого «Telegram»', 'Самолётик', 'Пользователь в рамке', 'Пользователь', 'Лого «VK»', 'Кошелёк с плюсом', 'Кошелёк', 'Кошелёк с деньгами', 'Лого «Youtube»'
|
|
216
216
|
* ]
|
|
217
217
|
*/
|
|
218
218
|
export declare type IconName = '' | 'AchievementIcon' | 'ActualBalanceIcon' | 'AppleIcon' | 'ArrowDownIcon' | 'ArrowDownSolidIcon' | 'ArrowLeftIcon' | 'ArrowRightIcon' | 'ArrowTopRightIcon' | 'ArrowUpIcon' | 'ArrowUpSolidIcon' | 'AtmIcon' | 'BankIcon' | 'BelarusianFlag' | 'BriefcaseIcon' | 'BuildingIcon' | 'BurgerIcon' | 'CalendarCircleIcon' | 'CalendarIcon' | 'CalendarTickIcon' | 'CardIcon' | 'CardPosIcon' | 'CardSendIcon' | 'CardTickIcon' | 'ChartIcon' | 'ChartRoundIcon' | 'ChartSquareIcon' | 'ChevronLeftIcon' | 'ClientIcon' | 'CloseIcon' | 'CoinIcon' | 'ConvertCardIcon' | 'CopyIcon' | 'CourtHouseIcon' | 'CupIcon' | 'DevIcon' | 'DiscountShapeIcon' | 'DocDownloadIcon' | 'DocIcon' | 'DollarIcon' | 'DoneIcon' | 'DoneSimpleIcon' | 'DzenIcon' | 'EmptyWalletChangeIcon' | 'EmptyWalletIcon' | 'EuroIcon' | 'FaxIcon' | 'FullScreenIcon' | 'GeolocationIcon' | 'GlobalIcon' | 'GpsIcon' | 'GridIcon' | 'HeadphonesIcon' | 'HeartIcon' | 'HeartTickIcon' | 'HouseIcon' | 'HuaweiIcon' | 'LockIcon' | 'LogoIcon' | 'LoupeIcon' | 'MagnifierIcon' | 'MailIcon' | 'MapMarkerClusterIcon' | 'MapMarkerSingleIcon' | 'MapOpenedIcon' | 'MinusIcon' | 'MoneyIcon' | 'MoneyInsuranceIcon' | 'MonitorMobileIcon' | 'NewDocIcon' | 'NotificationBingIcon' | 'OkIcon' | 'PackA4Icon' | 'PassSendIcon' | 'PercentageRoundIcon' | 'PercentIcon' | 'PersonalCardIcon' | 'PhoneCallingIcon' | 'PhoneIcon' | 'PlayMarketIcon' | 'PlusCircleIcon' | 'PlusIcon' | 'Profile2UserIcon' | 'ProfileIcon' | 'ResponseFailIcon' | 'ResponseOKIcon' | 'RoundRubleIcon' | 'RutubeIcon' | 'SafeIcon' | 'SecurityСardIcon' | 'ShieldTickIcon' | 'SignDocsIcon' | 'SmallClockIcon' | 'SoundIcon' | 'TelegramIcon' | 'UserGeoLocationIcon' | 'UserSquareIcon' | 'UserTickIcon' | 'VKIcon' | 'WalletAddIcon' | 'WalletIcon' | 'WalletWithMoneyIcon' | 'YoutubeIcon';
|
package/dist/icons/IconName.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
4
|
exports.IconTitleMap = exports.IconMap = exports.IconsWithoutInversion = void 0;
|
|
5
5
|
exports.IconsWithoutInversion = new Set([
|
|
6
|
-
'ActualBalanceIcon', 'BelarusianFlag', 'ChartIcon', 'ChevronLeftIcon', 'ClientIcon', 'DollarIcon', 'DoneIcon', 'EuroIcon', 'FullScreenIcon', 'HeadphonesIcon', 'HeartIcon', 'HouseIcon', '
|
|
6
|
+
'ActualBalanceIcon', 'BelarusianFlag', 'ChartIcon', 'ChevronLeftIcon', 'ClientIcon', 'DollarIcon', 'DoneIcon', 'EuroIcon', 'FullScreenIcon', 'HeadphonesIcon', 'HeartIcon', 'HouseIcon', 'MagnifierIcon', 'MapMarkerClusterIcon', 'MapMarkerSingleIcon', 'MapOpenedIcon', 'MoneyInsuranceIcon', 'NewDocIcon', 'PackA4Icon', 'PassSendIcon', 'PercentIcon', 'ResponseFailIcon', 'ResponseOKIcon', 'SignDocsIcon', 'SoundIcon'
|
|
7
7
|
]);
|
|
8
8
|
var IconMap;
|
|
9
9
|
(function (IconMap) {
|
|
@@ -167,7 +167,7 @@ var IconTitleMap;
|
|
|
167
167
|
IconTitleMap["HeartIcon"] = "\u0421\u0435\u0440\u0434\u0446\u0435";
|
|
168
168
|
IconTitleMap["HeartTickIcon"] = "\u0421\u0435\u0440\u0434\u0446\u0435\u0431\u0435\u0435\u043D\u0438\u0435";
|
|
169
169
|
IconTitleMap["HouseIcon"] = "\u0418\u043F\u043E\u0442\u0435\u043A\u0430";
|
|
170
|
-
IconTitleMap["HuaweiIcon"] = "\u041B\u043E\u0433\u043E
|
|
170
|
+
IconTitleMap["HuaweiIcon"] = "\u041B\u043E\u0433\u043E 'Huawei'";
|
|
171
171
|
IconTitleMap["LockIcon"] = "\u0417\u0430\u043C\u043E\u043A";
|
|
172
172
|
IconTitleMap["LogoIcon"] = "Logo";
|
|
173
173
|
IconTitleMap["LoupeIcon"] = "\u041B\u0443\u043F\u0430";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IconName.js","sourceRoot":"","sources":["../../src/icons/IconName.ts"],"names":[],"mappings":"AACA,0BAA0B;AAC1B,uCAAuC;;;AAE1B,QAAA,qBAAqB,GAAG,IAAI,GAAG,CAAC;IAC3C,mBAAmB,EAAE,gBAAgB,EAAE,WAAW,EAAE,iBAAiB,EAAE,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,WAAW,EAAE,WAAW,EAAE,
|
|
1
|
+
{"version":3,"file":"IconName.js","sourceRoot":"","sources":["../../src/icons/IconName.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "@redneckz/uni-jsx/jsx-runtime";
|
|
2
2
|
import { JSX } from '@redneckz/uni-jsx';
|
|
3
|
-
import {
|
|
3
|
+
import { useState } from '@redneckz/uni-jsx/lib/hooks';
|
|
4
4
|
import { renderBlocksList } from '../../BlockRenderer/renderBlockList.js';
|
|
5
5
|
import { useCarouselControls } from '../../hooks/useCarouselControls.js';
|
|
6
6
|
import { BlockWrapper } from '../../ui-kit/BlockWrapper.js';
|
|
@@ -10,20 +10,19 @@ import { style } from '../../utils/style.js';
|
|
|
10
10
|
import { CarouselScrollButtons } from '../Carousel/CarouselScrollButtons.js';
|
|
11
11
|
import { alignTabStyle } from './alignTabStyle.js';
|
|
12
12
|
import { TabsLayoutButton } from './TabsLayoutButton.js';
|
|
13
|
-
import {
|
|
13
|
+
import { TabsLayoutRedirectSection } from './TabsLayoutRedirectSection.js';
|
|
14
|
+
import { useScrollToTab } from './useScrollToTab.js';
|
|
14
15
|
export const TabsLayout = JSX(({ className = '', tabs = [], block, tabAlign, ...rest }) => {
|
|
15
16
|
const [activeTabIndex, setActiveTabIndex] = useState(getInitSelectedIndex(tabs));
|
|
16
17
|
const slotName = getSlotName(tabs[activeTabIndex], activeTabIndex);
|
|
17
18
|
const itemCount = tabs.length;
|
|
18
19
|
const [activeSlideIndex, { inc: incActiveSlideIndex, dec: decActiveSlideIndex }] = useCarouselControls({ itemCount }, activeTabIndex);
|
|
19
20
|
const [containerRef, scroll] = useSwipeListScroll({ itemCount });
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
}, []);
|
|
23
|
-
return (_jsxs(BlockWrapper, { className: style(className), defaultPadding: "p-0", ...rest, children: [_jsxs("div", { className: "relative border-b-8 border-primary-main", children: [_jsx(SwipeListContainer, { itemClassName: "flex", containerRef: containerRef, snapAlign: "snap-end", gap: 8, onVisibleIndicesChange: scroll.handleVisibleIndicesChange, children: tabs.map(renderTabButton(activeTabIndex, setActiveTabIndex, tabAlign)) }), _jsx(CarouselScrollButtons, { scroll: scroll, arrowsPadded: true, onScrollLeft: decActiveSlideIndex, onScrollRight: incActiveSlideIndex, activeIndex: activeSlideIndex, itemCount: itemCount })] }), _jsx("div", { className: "space-y-px @5xl:space-y-0 @5xl:grid @5xl:grid-cols-12 @5xl:gap-2xs", children: tabs[activeTabIndex]?.href ? (_jsx(TabsLayoutRedirectTab, { tab: tabs[activeTabIndex] })) : (renderBlocksList(block?.slots?.[slotName], { ...rest?.options, slotName })) })] }));
|
|
21
|
+
useScrollToTab(activeTabIndex, scroll);
|
|
22
|
+
return (_jsxs(BlockWrapper, { className: style(className), defaultPadding: "p-0", ...rest, children: [_jsxs("div", { className: "relative border-b-8 border-primary-main", children: [_jsx(SwipeListContainer, { itemClassName: "flex", containerRef: containerRef, snapAlign: "snap-end", gap: 8, onVisibleIndicesChange: scroll.handleVisibleIndicesChange, children: tabs.map(renderTabButton(activeTabIndex, setActiveTabIndex, tabAlign)) }), _jsx(CarouselScrollButtons, { scroll: scroll, arrowsPadded: true, onScrollLeft: decActiveSlideIndex, onScrollRight: incActiveSlideIndex, activeIndex: activeSlideIndex, itemCount: itemCount })] }), _jsx("div", { className: "space-y-px @5xl:space-y-0 @5xl:grid @5xl:grid-cols-12 @5xl:gap-2xs", children: tabs[activeTabIndex]?.href ? (_jsx(TabsLayoutRedirectSection, { tab: tabs[activeTabIndex] })) : (renderBlocksList(block?.slots?.[slotName], { ...rest?.options, slotName })) })] }));
|
|
24
23
|
});
|
|
25
24
|
TabsLayout.slots = ({ tabs }) => tabs?.filter((_) => !_.href).map(getSlotName) || [];
|
|
26
|
-
TabsLayout.childrenTypes = { exclude: ['TabsLayout'] };
|
|
25
|
+
TabsLayout.childrenTypes = { exclude: ['TabsLayout'] }; //TODO: fix this on wcms
|
|
27
26
|
const getSlotName = (tab, index) => tab?.title || `Слот №${index}`;
|
|
28
27
|
const getInitSelectedIndex = (tabs) => tabs.reduce((selectedIndex, tab, i) => (tab.selected ? i : selectedIndex), 0);
|
|
29
28
|
const renderTabButton = (activeTabIndex, onClick, tabAlign = 'start') => (tab, i) => (_jsx(TabsLayoutButton, { className: alignTabStyle[tabAlign], tab: tab, isActive: activeTabIndex === i, onClick: () => onClick(i) }, String(i)));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TabsLayout.js","sourceRoot":"","sources":["../../../src/components/TabsLayout/TabsLayout.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"TabsLayout.js","sourceRoot":"","sources":["../../../src/components/TabsLayout/TabsLayout.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { jsx as _jsx } from "@redneckz/uni-jsx/jsx-runtime";
|
|
2
|
+
import { JSX } from '@redneckz/uni-jsx';
|
|
3
|
+
import { useDebouncedEffect } from '@redneckz/uni-jsx/lib/hooks/useDebouncedEffect';
|
|
4
|
+
import { useLink } from '../../hooks/useLink.js';
|
|
5
|
+
import { Shimmer } from '../../ui-kit/Shimmer/Shimmer.js';
|
|
6
|
+
import { isLocalURL } from '../../utils/url.js';
|
|
7
|
+
const REDIRECT_DELAY = 0.8 * 1000;
|
|
8
|
+
export const TabsLayoutRedirectSection = JSX(({ tab }) => {
|
|
9
|
+
const link = useLink();
|
|
10
|
+
const { onClick } = link({
|
|
11
|
+
...tab,
|
|
12
|
+
onClick: () => {
|
|
13
|
+
/**
|
|
14
|
+
* In the current implementation of useLink, there is no follow-by-link method,
|
|
15
|
+
* and default routing won't work if the link is external.
|
|
16
|
+
*/
|
|
17
|
+
if (tab.href && !isLocalURL(tab.href)) {
|
|
18
|
+
globalThis.location.href = tab.href;
|
|
19
|
+
}
|
|
20
|
+
},
|
|
21
|
+
});
|
|
22
|
+
useDebouncedEffect(onClick, [], REDIRECT_DELAY);
|
|
23
|
+
return _jsx(Shimmer, { className: "col-span-12 p-xl", size: 5 });
|
|
24
|
+
});
|
|
25
|
+
//# sourceMappingURL=TabsLayoutRedirectSection.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TabsLayoutRedirectSection.js","sourceRoot":"","sources":["../../../src/components/TabsLayout/TabsLayoutRedirectSection.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAE,kBAAkB,EAAE,MAAM,gDAAgD,CAAC;AACpF,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAG7C,MAAM,cAAc,GAAG,GAAG,GAAG,IAAI,CAAC;AAMlC,MAAM,CAAC,MAAM,yBAAyB,GAAG,GAAG,CAAiC,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE;IACvF,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC;IACvB,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;QACvB,GAAG,GAAG;QACN,OAAO,EAAE,GAAG,EAAE;YACZ;;;eAGG;YACH,IAAI,GAAG,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;gBACrC,UAAU,CAAC,QAAQ,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC;aACrC;QACH,CAAC;KACF,CAAC,CAAC;IAEH,kBAAkB,CAAC,OAAO,EAAE,EAAE,EAAE,cAAc,CAAC,CAAC;IAEhD,OAAO,KAAC,OAAO,IAAC,SAAS,EAAC,kBAAkB,EAAC,IAAI,EAAE,CAAC,GAAI,CAAC;AAC3D,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { useEffect } from '@redneckz/uni-jsx/lib/hooks';
|
|
2
|
+
import { useBool } from '@redneckz/uni-jsx/lib/hooks/useBool';
|
|
3
|
+
export const useScrollToTab = (activeTabIndex, scroll) => {
|
|
4
|
+
const [initState, { setTrue: setInitStateTrue }] = useBool(false);
|
|
5
|
+
useEffect(() => {
|
|
6
|
+
scroll.scrollTo(activeTabIndex, {
|
|
7
|
+
behavior: initState ? 'smooth' : 'auto',
|
|
8
|
+
block: 'nearest',
|
|
9
|
+
inline: 'center',
|
|
10
|
+
});
|
|
11
|
+
!initState && setInitStateTrue();
|
|
12
|
+
}, [activeTabIndex, initState]);
|
|
13
|
+
};
|
|
14
|
+
//# sourceMappingURL=useScrollToTab.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useScrollToTab.js","sourceRoot":"","sources":["../../../src/components/TabsLayout/useScrollToTab.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AACxD,OAAO,EAAE,OAAO,EAAE,MAAM,qCAAqC,CAAC;AAG9D,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,cAAsB,EAAE,MAAuB,EAAE,EAAE;IAChF,MAAM,CAAC,SAAS,EAAE,EAAE,OAAO,EAAE,gBAAgB,EAAE,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;IAElE,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,CAAC,QAAQ,CAAC,cAAc,EAAE;YAC9B,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM;YACvC,KAAK,EAAE,SAAS;YAChB,MAAM,EAAE,QAAQ;SACjB,CAAC,CAAC;QACH,CAAC,SAAS,IAAI,gBAAgB,EAAE,CAAC;IACnC,CAAC,EAAE,CAAC,cAAc,EAAE,SAAS,CAAC,CAAC,CAAC;AAClC,CAAC,CAAC"}
|
package/lib/icons/IconName.d.ts
CHANGED
|
@@ -159,7 +159,7 @@ export declare enum IconTitleMap {
|
|
|
159
159
|
HeartIcon = "\u0421\u0435\u0440\u0434\u0446\u0435",
|
|
160
160
|
HeartTickIcon = "\u0421\u0435\u0440\u0434\u0446\u0435\u0431\u0435\u0435\u043D\u0438\u0435",
|
|
161
161
|
HouseIcon = "\u0418\u043F\u043E\u0442\u0435\u043A\u0430",
|
|
162
|
-
HuaweiIcon = "\u041B\u043E\u0433\u043E
|
|
162
|
+
HuaweiIcon = "\u041B\u043E\u0433\u043E 'Huawei'",
|
|
163
163
|
LockIcon = "\u0417\u0430\u043C\u043E\u043A",
|
|
164
164
|
LogoIcon = "Logo",
|
|
165
165
|
LoupeIcon = "\u041B\u0443\u043F\u0430",
|
|
@@ -212,7 +212,7 @@ export declare enum IconTitleMap {
|
|
|
212
212
|
* @title Иконка
|
|
213
213
|
* @enumNames [
|
|
214
214
|
* "",
|
|
215
|
-
* 'Достижение', 'Деньги', 'Лого «Apple»', 'Стрелка \'Вниз\'', 'Стрелка сплошная \'Вниз\'', 'Стрелка \'Влево\'', 'Стрелка \'Вправо\'', 'Стрелка \'Вверх-право\'', 'Стрелка \'Вверх\'', 'Стрелка сплошная \'Вверх\'', 'Банкомат', 'Банк', 'Белорусский флаг', 'Портфель', 'Здание с деревом', 'Бургер', 'Скруглённый календарь', 'Календарь', 'Календарь с галочкой', 'Кред. карта', 'Кред. карта под наклоном', 'Карта', 'Кред. карта с галочкой', 'Инвестиции', 'Диаграмма (в круге)', 'Деньги внутри кошелька', 'Стрелка \'Влево\'', 'Клиент', 'Крестик', 'Монеты', 'Конвертирование', 'Копирование', 'Здание суда', 'Кубок', 'Разработка', 'Скидка', 'Скачать документ', 'Документ', 'Доллар', 'Зелёная \'галочка\' в круге', 'Зелёная \'галочка\'', 'Лого «Дзен»', 'Пустой кошелёк с возвратом', 'Пустой кошелёк', 'Евро', 'Факс', 'FullScreenIcon', 'Геолокация', 'Глобус', 'Gps', 'Сетка (белая)', 'HeadphonesIcon', 'Сердце', 'Сердцебеение', 'Ипотека', 'Лого
|
|
215
|
+
* 'Достижение', 'Деньги', 'Лого «Apple»', 'Стрелка \'Вниз\'', 'Стрелка сплошная \'Вниз\'', 'Стрелка \'Влево\'', 'Стрелка \'Вправо\'', 'Стрелка \'Вверх-право\'', 'Стрелка \'Вверх\'', 'Стрелка сплошная \'Вверх\'', 'Банкомат', 'Банк', 'Белорусский флаг', 'Портфель', 'Здание с деревом', 'Бургер', 'Скруглённый календарь', 'Календарь', 'Календарь с галочкой', 'Кред. карта', 'Кред. карта под наклоном', 'Карта', 'Кред. карта с галочкой', 'Инвестиции', 'Диаграмма (в круге)', 'Деньги внутри кошелька', 'Стрелка \'Влево\'', 'Клиент', 'Крестик', 'Монеты', 'Конвертирование', 'Копирование', 'Здание суда', 'Кубок', 'Разработка', 'Скидка', 'Скачать документ', 'Документ', 'Доллар', 'Зелёная \'галочка\' в круге', 'Зелёная \'галочка\'', 'Лого «Дзен»', 'Пустой кошелёк с возвратом', 'Пустой кошелёк', 'Евро', 'Факс', 'FullScreenIcon', 'Геолокация', 'Глобус', 'Gps', 'Сетка (белая)', 'HeadphonesIcon', 'Сердце', 'Сердцебеение', 'Ипотека', 'Лого \'Huawei\'', 'Замок', 'Logo', 'Лупа', 'MagnifierIcon', 'E-mail', 'Маркер карты', 'Маркер карты РСХБ', 'Иконка Развёрнутая карта', 'Минус', 'Деньги', 'Денежное страхование', 'Монитор и мобильный', 'Новый документ', 'Колокольчик нотификаций', 'Лого «Одноклассники»', 'Пачка бумаги А4', 'Бизнес', 'Проценты (круг.)', 'PercentIcon', 'Персональная карта', 'Звонящий телефон', 'Телефон', 'Лого «PlayMarket»', 'Плюс в круге', 'Плюс', 'Профиль, 2 персоны', 'Профиль', 'Ошибка', 'Ок', 'Рубль (круг.)', 'Лого «Rutube»', 'Сейф', 'Безопасность', 'Безопасность', 'Подписанные документы', 'Маленькие часы', 'Кольцо', 'Лого «Telegram»', 'Самолётик', 'Пользователь в рамке', 'Пользователь', 'Лого «VK»', 'Кошелёк с плюсом', 'Кошелёк', 'Кошелёк с деньгами', 'Лого «Youtube»'
|
|
216
216
|
* ]
|
|
217
217
|
*/
|
|
218
218
|
export declare type IconName = '' | 'AchievementIcon' | 'ActualBalanceIcon' | 'AppleIcon' | 'ArrowDownIcon' | 'ArrowDownSolidIcon' | 'ArrowLeftIcon' | 'ArrowRightIcon' | 'ArrowTopRightIcon' | 'ArrowUpIcon' | 'ArrowUpSolidIcon' | 'AtmIcon' | 'BankIcon' | 'BelarusianFlag' | 'BriefcaseIcon' | 'BuildingIcon' | 'BurgerIcon' | 'CalendarCircleIcon' | 'CalendarIcon' | 'CalendarTickIcon' | 'CardIcon' | 'CardPosIcon' | 'CardSendIcon' | 'CardTickIcon' | 'ChartIcon' | 'ChartRoundIcon' | 'ChartSquareIcon' | 'ChevronLeftIcon' | 'ClientIcon' | 'CloseIcon' | 'CoinIcon' | 'ConvertCardIcon' | 'CopyIcon' | 'CourtHouseIcon' | 'CupIcon' | 'DevIcon' | 'DiscountShapeIcon' | 'DocDownloadIcon' | 'DocIcon' | 'DollarIcon' | 'DoneIcon' | 'DoneSimpleIcon' | 'DzenIcon' | 'EmptyWalletChangeIcon' | 'EmptyWalletIcon' | 'EuroIcon' | 'FaxIcon' | 'FullScreenIcon' | 'GeolocationIcon' | 'GlobalIcon' | 'GpsIcon' | 'GridIcon' | 'HeadphonesIcon' | 'HeartIcon' | 'HeartTickIcon' | 'HouseIcon' | 'HuaweiIcon' | 'LockIcon' | 'LogoIcon' | 'LoupeIcon' | 'MagnifierIcon' | 'MailIcon' | 'MapMarkerClusterIcon' | 'MapMarkerSingleIcon' | 'MapOpenedIcon' | 'MinusIcon' | 'MoneyIcon' | 'MoneyInsuranceIcon' | 'MonitorMobileIcon' | 'NewDocIcon' | 'NotificationBingIcon' | 'OkIcon' | 'PackA4Icon' | 'PassSendIcon' | 'PercentageRoundIcon' | 'PercentIcon' | 'PersonalCardIcon' | 'PhoneCallingIcon' | 'PhoneIcon' | 'PlayMarketIcon' | 'PlusCircleIcon' | 'PlusIcon' | 'Profile2UserIcon' | 'ProfileIcon' | 'ResponseFailIcon' | 'ResponseOKIcon' | 'RoundRubleIcon' | 'RutubeIcon' | 'SafeIcon' | 'SecurityСardIcon' | 'ShieldTickIcon' | 'SignDocsIcon' | 'SmallClockIcon' | 'SoundIcon' | 'TelegramIcon' | 'UserGeoLocationIcon' | 'UserSquareIcon' | 'UserTickIcon' | 'VKIcon' | 'WalletAddIcon' | 'WalletIcon' | 'WalletWithMoneyIcon' | 'YoutubeIcon';
|
package/lib/icons/IconName.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// Generated. Do not touch
|
|
2
2
|
/* eslint-disable max-len, max-lines */
|
|
3
3
|
export const IconsWithoutInversion = new Set([
|
|
4
|
-
'ActualBalanceIcon', 'BelarusianFlag', 'ChartIcon', 'ChevronLeftIcon', 'ClientIcon', 'DollarIcon', 'DoneIcon', 'EuroIcon', 'FullScreenIcon', 'HeadphonesIcon', 'HeartIcon', 'HouseIcon', '
|
|
4
|
+
'ActualBalanceIcon', 'BelarusianFlag', 'ChartIcon', 'ChevronLeftIcon', 'ClientIcon', 'DollarIcon', 'DoneIcon', 'EuroIcon', 'FullScreenIcon', 'HeadphonesIcon', 'HeartIcon', 'HouseIcon', 'MagnifierIcon', 'MapMarkerClusterIcon', 'MapMarkerSingleIcon', 'MapOpenedIcon', 'MoneyInsuranceIcon', 'NewDocIcon', 'PackA4Icon', 'PassSendIcon', 'PercentIcon', 'ResponseFailIcon', 'ResponseOKIcon', 'SignDocsIcon', 'SoundIcon'
|
|
5
5
|
]);
|
|
6
6
|
export var IconMap;
|
|
7
7
|
(function (IconMap) {
|
|
@@ -165,7 +165,7 @@ export var IconTitleMap;
|
|
|
165
165
|
IconTitleMap["HeartIcon"] = "\u0421\u0435\u0440\u0434\u0446\u0435";
|
|
166
166
|
IconTitleMap["HeartTickIcon"] = "\u0421\u0435\u0440\u0434\u0446\u0435\u0431\u0435\u0435\u043D\u0438\u0435";
|
|
167
167
|
IconTitleMap["HouseIcon"] = "\u0418\u043F\u043E\u0442\u0435\u043A\u0430";
|
|
168
|
-
IconTitleMap["HuaweiIcon"] = "\u041B\u043E\u0433\u043E
|
|
168
|
+
IconTitleMap["HuaweiIcon"] = "\u041B\u043E\u0433\u043E 'Huawei'";
|
|
169
169
|
IconTitleMap["LockIcon"] = "\u0417\u0430\u043C\u043E\u043A";
|
|
170
170
|
IconTitleMap["LogoIcon"] = "Logo";
|
|
171
171
|
IconTitleMap["LoupeIcon"] = "\u041B\u0443\u043F\u0430";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IconName.js","sourceRoot":"","sources":["../../src/icons/IconName.ts"],"names":[],"mappings":"AACA,0BAA0B;AAC1B,uCAAuC;AAEvC,MAAM,CAAC,MAAM,qBAAqB,GAAG,IAAI,GAAG,CAAC;IAC3C,mBAAmB,EAAE,gBAAgB,EAAE,WAAW,EAAE,iBAAiB,EAAE,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,WAAW,EAAE,WAAW,EAAE,
|
|
1
|
+
{"version":3,"file":"IconName.js","sourceRoot":"","sources":["../../src/icons/IconName.ts"],"names":[],"mappings":"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"}
|
|
@@ -4998,29 +4998,48 @@
|
|
|
4998
4998
|
}, deps);
|
|
4999
4999
|
}
|
|
5000
5000
|
|
|
5001
|
-
const REDIRECT_DELAY = 0.
|
|
5002
|
-
const
|
|
5001
|
+
const REDIRECT_DELAY = 0.8 * 1000;
|
|
5002
|
+
const TabsLayoutRedirectSection = JSX(({ tab }) => {
|
|
5003
5003
|
const link = useLink();
|
|
5004
|
-
|
|
5005
|
-
|
|
5006
|
-
onClick()
|
|
5007
|
-
|
|
5004
|
+
const { onClick } = link({
|
|
5005
|
+
...tab,
|
|
5006
|
+
onClick: () => {
|
|
5007
|
+
/**
|
|
5008
|
+
* In the current implementation of useLink, there is no follow-by-link method,
|
|
5009
|
+
* and default routing won't work if the link is external.
|
|
5010
|
+
*/
|
|
5011
|
+
if (tab.href && !isLocalURL(tab.href)) {
|
|
5012
|
+
globalThis.location.href = tab.href;
|
|
5013
|
+
}
|
|
5014
|
+
},
|
|
5015
|
+
});
|
|
5016
|
+
useDebouncedEffect(onClick, [], REDIRECT_DELAY);
|
|
5008
5017
|
return jsx(Shimmer, { className: "col-span-12 p-xl", size: 5 });
|
|
5009
5018
|
});
|
|
5010
5019
|
|
|
5020
|
+
const useScrollToTab = (activeTabIndex, scroll) => {
|
|
5021
|
+
const [initState, { setTrue: setInitStateTrue }] = useBool(false);
|
|
5022
|
+
useEffect(() => {
|
|
5023
|
+
scroll.scrollTo(activeTabIndex, {
|
|
5024
|
+
behavior: initState ? 'smooth' : 'auto',
|
|
5025
|
+
block: 'nearest',
|
|
5026
|
+
inline: 'center',
|
|
5027
|
+
});
|
|
5028
|
+
!initState && setInitStateTrue();
|
|
5029
|
+
}, [activeTabIndex, initState]);
|
|
5030
|
+
};
|
|
5031
|
+
|
|
5011
5032
|
const TabsLayout = JSX(({ className = '', tabs = [], block, tabAlign, ...rest }) => {
|
|
5012
5033
|
const [activeTabIndex, setActiveTabIndex] = useState(getInitSelectedIndex(tabs));
|
|
5013
5034
|
const slotName = getSlotName(tabs[activeTabIndex], activeTabIndex);
|
|
5014
5035
|
const itemCount = tabs.length;
|
|
5015
5036
|
const [activeSlideIndex, { inc: incActiveSlideIndex, dec: decActiveSlideIndex }] = useCarouselControls({ itemCount }, activeTabIndex);
|
|
5016
5037
|
const [containerRef, scroll] = useSwipeListScroll({ itemCount });
|
|
5017
|
-
|
|
5018
|
-
|
|
5019
|
-
}, []);
|
|
5020
|
-
return (jsxs(BlockWrapper, { className: style(className), defaultPadding: "p-0", ...rest, children: [jsxs("div", { className: "relative border-b-8 border-primary-main", children: [jsx(SwipeListContainer, { itemClassName: "flex", containerRef: containerRef, snapAlign: "snap-end", gap: 8, onVisibleIndicesChange: scroll.handleVisibleIndicesChange, children: tabs.map(renderTabButton(activeTabIndex, setActiveTabIndex, tabAlign)) }), jsx(CarouselScrollButtons, { scroll: scroll, arrowsPadded: true, onScrollLeft: decActiveSlideIndex, onScrollRight: incActiveSlideIndex, activeIndex: activeSlideIndex, itemCount: itemCount })] }), jsx("div", { className: "space-y-px @5xl:space-y-0 @5xl:grid @5xl:grid-cols-12 @5xl:gap-2xs", children: tabs[activeTabIndex]?.href ? (jsx(TabsLayoutRedirectTab, { tab: tabs[activeTabIndex] })) : (renderBlocksList(block?.slots?.[slotName], { ...rest?.options, slotName })) })] }));
|
|
5038
|
+
useScrollToTab(activeTabIndex, scroll);
|
|
5039
|
+
return (jsxs(BlockWrapper, { className: style(className), defaultPadding: "p-0", ...rest, children: [jsxs("div", { className: "relative border-b-8 border-primary-main", children: [jsx(SwipeListContainer, { itemClassName: "flex", containerRef: containerRef, snapAlign: "snap-end", gap: 8, onVisibleIndicesChange: scroll.handleVisibleIndicesChange, children: tabs.map(renderTabButton(activeTabIndex, setActiveTabIndex, tabAlign)) }), jsx(CarouselScrollButtons, { scroll: scroll, arrowsPadded: true, onScrollLeft: decActiveSlideIndex, onScrollRight: incActiveSlideIndex, activeIndex: activeSlideIndex, itemCount: itemCount })] }), jsx("div", { className: "space-y-px @5xl:space-y-0 @5xl:grid @5xl:grid-cols-12 @5xl:gap-2xs", children: tabs[activeTabIndex]?.href ? (jsx(TabsLayoutRedirectSection, { tab: tabs[activeTabIndex] })) : (renderBlocksList(block?.slots?.[slotName], { ...rest?.options, slotName })) })] }));
|
|
5021
5040
|
});
|
|
5022
5041
|
TabsLayout.slots = ({ tabs }) => tabs?.filter((_) => !_.href).map(getSlotName) || [];
|
|
5023
|
-
TabsLayout.childrenTypes = { exclude: ['TabsLayout'] };
|
|
5042
|
+
TabsLayout.childrenTypes = { exclude: ['TabsLayout'] }; //TODO: fix this on wcms
|
|
5024
5043
|
const getSlotName = (tab, index) => tab?.title || `Слот №${index}`;
|
|
5025
5044
|
const getInitSelectedIndex = (tabs) => tabs.reduce((selectedIndex, tab, i) => (tab.selected ? i : selectedIndex), 0);
|
|
5026
5045
|
const renderTabButton = (activeTabIndex, onClick, tabAlign = 'start') => (tab, i) => (jsx(TabsLayoutButton, { className: alignTabStyle[tabAlign], tab: tab, isActive: activeTabIndex === i, onClick: () => onClick(i) }, String(i)));
|
|
@@ -5794,7 +5813,7 @@
|
|
|
5794
5813
|
|
|
5795
5814
|
const joinList = (sep) => (list) => list.reduce((acc, el, i) => (acc.length ? acc.concat({ ...sep, key: `sep-${i}` }, el) : [el]), []);
|
|
5796
5815
|
|
|
5797
|
-
const packageVersion = "0.14.
|
|
5816
|
+
const packageVersion = "0.14.153";
|
|
5798
5817
|
|
|
5799
5818
|
exports.Blocks = Blocks;
|
|
5800
5819
|
exports.ContentPage = ContentPage;
|