0.9.9 • Published 2 years ago

@holism/components v0.9.9

Weekly downloads
221
License
MIT
Repository
-
Last release
2 years ago

This project was bootstrapped with Create React App.

  • React
  • Styled-components
  • Typescript
import { Button, Input } from '@holism/components';

Темизация

В библиотеке реализована возможность темизации компонентов. Компоненты используют в своих стилях переменные, заданные в дефолтной теме (import { DefaultTheme } from '@holism/core';), с помощью темизации значения данных переменных можно перезадать, тем самым изменив внешний вид компонентов. Механизм темизации позаимствован из styled-components.

Как внедрить темизацию в свой проект: 1) с помощью функции createTheme нужно создать новую тему. Для этого в функцию необходимо передать объект, с теми свойствами, которые вы хотите перезадать. Внутри себя createTheme смерджит заданные вами опции с дефолтной темой. 2) затем нужно импортировать компонент ThemeProvider из @holism/core или styled-components. В ThemeProvider вы можете обернуть тот компонент, который хотите стилизовать, или сразу целую часть приложения, тогда тема будет применена сразу к нескольким компонентам. 3) В ThemeProvider задайте параметр theme, в который передайте результат выполнения функции createTheme

Подробнее о механизме темизации можно прочесть здесь https://styled-components.com/docs/advanced. Возможен вариант, когда один ThemeProvider вложен в другой и так далее.

Примеры темизации:

1) import { ThemeProvider, createTheme, Button } from '@holism/core';

render ( <ThemeProvider theme={createTheme({ borderWidth: '4px', shape: { borderRadiusSmall: '5px' } })}> Привет );

2) Если вы используйте в своем приложении ThemeProvider из styled-components и оборачиваете в него компоненты, но не передаете в нем дефолтную тему, возникнут ошибки в компонентах. Обязательно передайте в компоненты DefaultTheme, как в примере ниже!

import { ThemeProvider } from 'styled-components'; import { DefaultTheme } from '@holism/core';

const globalTheme = {
  primary: {
    bg: '#fff',
    logo: '#fff',
    colorText: '#000',
  },
  secondary: {
    bg: '#fff',
    logo: '#000',
    colorText: '#000',
  },
};

render (
  <ThemeProvider theme={{ ...globalTheme, ...DefaultTheme }}>
    // содержит компоненты из '@holism/core'
    <AppComponent/>
  <ThemeProvider theme={{ ...globalTheme, ...DefaultTheme }}>
);
0.9.8

2 years ago

0.9.9

2 years ago

0.9.7

3 years ago

0.9.6

3 years ago

0.9.5

3 years ago

0.9.4

3 years ago

0.9.2

3 years ago

0.9.1

3 years ago

0.9.0

3 years ago

0.8.11

3 years ago

0.8.10

3 years ago

0.8.9

3 years ago

0.8.7

3 years ago

0.8.6

3 years ago

0.8.5

3 years ago

0.8.4

3 years ago

0.8.2

3 years ago

0.8.1-test.0

3 years ago

0.8.0

3 years ago

0.7.4

3 years ago

0.7.3

3 years ago

0.7.7

3 years ago

0.7.2

3 years ago

0.7.1

3 years ago

0.7.0

3 years ago

1.0.0

3 years ago

0.6.2

3 years ago

0.6.1

3 years ago

0.6.0

3 years ago

0.5.8

3 years ago

0.5.7

3 years ago

0.5.6

3 years ago

0.5.5

3 years ago

0.5.4

3 years ago

0.5.3

3 years ago

0.5.2

3 years ago

0.5.1

3 years ago

0.5.0

3 years ago

0.4.10

3 years ago

0.4.9

3 years ago

0.4.8-0

3 years ago

0.4.7

3 years ago

0.4.5

3 years ago

0.4.6

3 years ago

0.4.4

3 years ago

0.4.3

3 years ago

0.4.3-test.0

3 years ago

0.4.2

3 years ago

0.4.1-test.1

3 years ago

0.4.1

3 years ago

0.4.1-test.0

3 years ago

0.4.0

3 years ago

0.3.4

3 years ago

0.3.2

3 years ago

0.3.0

3 years ago

0.2.14

3 years ago

0.2.13

3 years ago

0.2.12

3 years ago

0.2.11

3 years ago

0.2.9-test.1

3 years ago

0.2.9-test.0

3 years ago

0.2.10

3 years ago

0.2.9

3 years ago

0.2.8

3 years ago

0.2.7

3 years ago

0.2.6

3 years ago

0.2.6-test.0

3 years ago

0.2.6-test.2

3 years ago

0.2.6-test.1

3 years ago

0.2.5

3 years ago

0.2.4

3 years ago

0.2.3

3 years ago

0.2.2

3 years ago

0.2.1

3 years ago

0.2.0

3 years ago

0.1.8-0

3 years ago

0.1.7

3 years ago

0.1.6

3 years ago

0.1.5

3 years ago

0.1.3

3 years ago

0.1.4-test.0

3 years ago

0.1.2

3 years ago

0.1.1

3 years ago

0.1.0

3 years ago

0.0.11-test.4

3 years ago

0.0.11-test.5

3 years ago

0.0.11-test.6

3 years ago

0.0.11-test.3

3 years ago

0.0.11-test.2

3 years ago

0.0.10

3 years ago

0.0.11-test.0

3 years ago

0.0.11-test.1

3 years ago

0.0.9

3 years ago

0.0.8

3 years ago

0.0.7

3 years ago

0.0.5

3 years ago

0.0.6

3 years ago

0.0.3-test.36

3 years ago

0.0.4

3 years ago

0.0.3-test.35

3 years ago

0.0.3-test.34

3 years ago

0.0.3-test.33

3 years ago

0.0.3-test.32

3 years ago

0.0.3-test.31

3 years ago

0.0.3-test.30

4 years ago

0.0.3-test.29

4 years ago

0.0.3-test.28

4 years ago

0.0.3-test.27

4 years ago

0.0.3-test.25

4 years ago

0.0.3-test.24

4 years ago

0.0.3-test.23

4 years ago

0.0.3-test.22

4 years ago

0.0.3-test.21

4 years ago

0.0.3-test.20

4 years ago

0.0.3-test.19

4 years ago

0.0.3-test.18

4 years ago

0.0.3-test.16

4 years ago

0.0.3-test.17

4 years ago

0.0.3-test.10

4 years ago

0.0.3-test.12

4 years ago

0.0.3-test.11

4 years ago

0.0.3-test.14

4 years ago

0.0.3-test.13

4 years ago

0.0.3-test.15

4 years ago

0.0.3-test.9

4 years ago

0.0.3-test.8

4 years ago

0.0.3-test.7

4 years ago

0.0.3-test.6

4 years ago

0.0.3-test.5

4 years ago

0.0.3-test.4

4 years ago

0.0.3-test.3

4 years ago

0.0.3-test.2

4 years ago

0.0.3-test.1

4 years ago

0.0.3-test.0

4 years ago

0.0.2-0

4 years ago