Size: a a a

2019 November 08

AM

Alexander Mittsel in БЭМ
Eugeniy World
Мы пока используем storybook 🙂
Как вы парсите ts пропсы? Я хочу добавть компонент на страницу и чтобы автоматически из всех модификаторов подтянулись типы из interface
источник

AM

Alexander Mittsel in БЭМ
Как-то не хочется импортить их отовсюду
источник

EW

Eugeniy World in БЭМ
м... не совсем понял, ведь когда ты делаешь композицию, то все пропсы собираются в один интерфейс
источник

EW

Eugeniy World in БЭМ
compose(withThemeNormal, withSizeM)(BaseComponent) -> BaseComponentProps + WithThemeNormalProps + WithSizeMProps
источник

AM

Alexander Mittsel in БЭМ
Eugeniy World
compose(withThemeNormal, withSizeM)(BaseComponent) -> BaseComponentProps + WithThemeNormalProps + WithSizeMProps
да я тоже делаю compose
import { ReactType } from 'react'
import { IClassNameProps, compose, composeU } from '@bem-react/core'
import { Button as ButtonPresenter } from './Button';
import { withButtonTypeLink } from './_type/Button_type_link';
import { withButtonThemeAction, IButtonThemeActionProps } from './_theme/Button_theme_action';

export interface IButtonProps extends IClassNameProps {
 as?: ReactType
}

type My = IClassNameProps & IClassNameProps;

export const Button = compose(
 composeU(withButtonThemeAction),
 withButtonTypeLink,
)(ButtonPresenter);

но на ст ранице с описанием самого компонента styleguidist propsParser ищет описание типов, которые я описываю через extends пропсов компонента, но их не видно
import React from 'react';
import { Button as BemButton, IButtonProps } from '../BEM_components/Button'

/**
* Button properties.
*/
export interface IComposedButtonProps extends IButtonProps {
   
}

/**
* Form Button.
*/
export const Button = (props: IComposedButtonProps) => {
   return <div>
   <BemButton>I'm basic</BemButton>

   <BemButton type="link" href="#stub">I'm type link</BemButton>

   <BemButton theme="action">I'm theme action</BemButton>

   <BemButton theme="action" type="link">I'm all together</BemButton>
 </div>;
};
источник

AM

Alexander Mittsel in БЭМ
Я вот не монимаю как прокинуть описание composed пропсов выше
источник

EW

Eugeniy World in БЭМ
Ну, у тебя в IButtonProps только 2 свойства, судя по коду 🙂 ты можешь из композиции заэкстрактить все пропсы:
import { ExtractProps } from '@bem-react/core'

export const EnhancedComponent = compose(...)(...)
export type EnhancedComponentProps = ExtractProps<typeof EnhancedComponent>
источник

AM

Alexander Mittsel in БЭМ
Eugeniy World
Ну, у тебя в IButtonProps только 2 свойства, судя по коду 🙂 ты можешь из композиции заэкстрактить все пропсы:
import { ExtractProps } from '@bem-react/core'

export const EnhancedComponent = compose(...)(...)
export type EnhancedComponentProps = ExtractProps<typeof EnhancedComponent>
Спасибо! То что нужно
источник
2019 November 11

MF

Mireq Fallen in БЭМ
а форум мертв или просто поспать ушел?
источник

SB

Sergey Berezhnoy in БЭМ
Mireq Fallen
а форум мертв или просто поспать ушел?
источник

MF

Mireq Fallen in БЭМ
о, проснулся
источник

AY

Alexey Yarrr (qfox) in БЭМ
Mireq Fallen
а форум мертв или просто поспать ушел?
спал)
источник
2019 November 12

EZ

Ekaterina Zharkova in БЭМ
www.bem.info закончился сертификат
источник

SB

Sergey Berezhnoy in БЭМ
Ekaterina Zharkova
www.bem.info закончился сертификат
спасибо за репорт — обновим
источник
2019 November 13

EZ

Ekaterina Zharkova in БЭМ
Sergey Berezhnoy
спасибо за репорт — обновим
ок, ждём
источник
2019 November 14

co

cup of tea ☕️ in БЭМ
Два вопроса есть по Классическому стэку БЭМа:
1) В директории *.bundles в каждой страницы-бандла при билде собирает все зависимости только конкретные для этой страницы-бандла или все зависимости по проекту в целом?
upd. Ответ нашел тут https://bit.ly/34WG5b6
2) Есть возможность как-то отключить стандартные/встроенные/загатовленные блоки стэка (кнопка, радио, инпуты и т.п.) или они сами, при передакларации на уровне common.blocks, исключаются из бандла при билде?
источник

co

cup of tea ☕️ in БЭМ
Ну и так, из любопытства: Трекер, как я вижу, тоже на классическом стэке сидит.. или нет?
источник

EW

Eugeniy World in БЭМ
Трекер был очень давно написан :)
источник

AY

Alexey Yarrr (qfox) in БЭМ
cup of tea ☕️
Два вопроса есть по Классическому стэку БЭМа:
1) В директории *.bundles в каждой страницы-бандла при билде собирает все зависимости только конкретные для этой страницы-бандла или все зависимости по проекту в целом?
upd. Ответ нашел тут https://bit.ly/34WG5b6
2) Есть возможность как-то отключить стандартные/встроенные/загатовленные блоки стэка (кнопка, радио, инпуты и т.п.) или они сами, при передакларации на уровне common.blocks, исключаются из бандла при билде?
То, что не указано в бандле, не приезжает в сборку, да.
Работает так же, как импорты
источник

MF

Mireq Fallen in БЭМ
всем привет

а я правильно понимаю, что будет дублирование кода для tablet.blocks/* и mobile.blocks/*, если у меня логика для некоторых блоков будет одинакова для этих устройств?
источник