@helpwave/hightide-native 0.0.5 → 0.0.7
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/package.json +4 -3
- package/src/components/chat/ChatAttachmentCard.tsx +4 -4
- package/src/components/chat/ChatConversationList.tsx +3 -3
- package/src/components/chat/ChatConversationRow.tsx +3 -3
- package/src/components/chat/ChatDateDivider.tsx +3 -3
- package/src/components/chat/ChatMessageBubble.tsx +3 -3
- package/src/components/chat/ChatMessageCard.tsx +4 -4
- package/src/components/chat/ChatMessageComposer.tsx +4 -4
- package/src/components/chat/ChatMessageList.tsx +3 -3
- package/src/components/chat/ChatQuickReplyChip.tsx +3 -3
- package/src/components/chat/ChatSystemLine.tsx +4 -4
- package/src/components/chat/ChatThreadHeader.tsx +3 -3
- package/src/components/menu/Menu.tsx +3 -3
- package/src/components/menu/MenuActionItem.tsx +3 -3
- package/src/components/menu/MenuItem.tsx +3 -3
- package/src/components/menu/MenuNavigationItem.tsx +3 -3
- package/src/components/user-interaction/Button.tsx +4 -4
- package/src/components/user-interaction/Checkbox.tsx +5 -5
- package/src/components/user-interaction/IconButton.tsx +5 -5
- package/src/components/user-interaction/Input.tsx +4 -4
- package/src/components/user-interaction/MultiSelect.tsx +6 -6
- package/src/components/user-interaction/Select.tsx +4 -4
- package/src/components/visualization-and-display/Avatar.tsx +286 -0
- package/src/components/visualization-and-display/Chip.tsx +4 -4
- package/src/components/visualization-and-display/Icon.tsx +1 -1
- package/src/components/visualization-and-display/index.ts +1 -0
- package/src/global-contexts/HightideProvider.tsx +5 -5
- package/src/global-contexts/hightide-config/HightideConfigUtils.ts +4 -4
- package/src/global-contexts/localization/LocalizationProvider.tsx +2 -2
- package/src/global-contexts/theme/ThemeContext.ts +3 -3
- package/src/global-contexts/theme/ThemeProvider.tsx +7 -7
- package/src/theme/resolvers/avatar.ts +231 -0
- package/src/theme/resolvers/button.ts +6 -6
- package/src/theme/resolvers/chat.ts +6 -6
- package/src/theme/resolvers/checkbox.ts +4 -4
- package/src/theme/resolvers/chip.ts +6 -6
- package/src/theme/resolvers/coloring.ts +4 -4
- package/src/theme/resolvers/iconButton.ts +6 -6
- package/src/theme/resolvers/index.ts +1 -0
- package/src/theme/resolvers/input.ts +4 -4
- package/src/theme/resolvers/menu.ts +4 -4
- package/src/theme/resolvers/multiSelect.ts +4 -4
- package/src/theme/resolvers/select.ts +4 -4
- package/src/theme/themes/{createTheme.ts → createHightideTheme.ts} +16 -14
- package/src/theme/themes/hightideThemes.ts +14 -0
- package/src/theme/themes/index.ts +2 -2
- package/src/theme/types/components/avatar.ts +77 -0
- package/src/theme/types/components/button.ts +2 -2
- package/src/theme/types/components/chat.ts +3 -3
- package/src/theme/types/components/checkbox.ts +2 -2
- package/src/theme/types/components/chip.ts +2 -2
- package/src/theme/types/components/hightide.ts +12 -10
- package/src/theme/types/components/iconButton.ts +3 -3
- package/src/theme/types/components/index.ts +1 -0
- package/src/theme/types/components/input.ts +2 -2
- package/src/theme/types/components/menu.ts +2 -2
- package/src/theme/types/components/multiSelect.ts +3 -3
- package/src/theme/types/components/select.ts +2 -2
- package/src/theme/types/layout.ts +12 -0
- package/src/theme/types/theme.ts +20 -11
- package/src/theme/themes/nativeThemes.ts +0 -16
|
@@ -8,21 +8,21 @@ import {
|
|
|
8
8
|
fontWeights
|
|
9
9
|
} from '@helpwave/hightide-design/tokens'
|
|
10
10
|
import type {
|
|
11
|
-
|
|
11
|
+
HightideThemeTokens as DesignTokensTheme,
|
|
12
12
|
ElementSize
|
|
13
13
|
} from '@helpwave/hightide-design/types'
|
|
14
14
|
|
|
15
15
|
import {
|
|
16
16
|
isOutlineColoringStyle,
|
|
17
17
|
resolveColoringStyles
|
|
18
|
-
} from '
|
|
19
|
-
import type { HightideSemanticColors } from '
|
|
18
|
+
} from './coloring'
|
|
19
|
+
import type { HightideSemanticColors } from '../types/color'
|
|
20
20
|
import type {
|
|
21
21
|
ButtonState,
|
|
22
22
|
ButtonTheme
|
|
23
|
-
} from '
|
|
24
|
-
import type { HightideComponentThemes } from '
|
|
25
|
-
import { createStyleResolver } from '
|
|
23
|
+
} from '../types/components/button'
|
|
24
|
+
import type { HightideComponentThemes } from '../types/components/hightide'
|
|
25
|
+
import { createStyleResolver } from '../types/resolver'
|
|
26
26
|
|
|
27
27
|
const buttonFontSizes: Record<ElementSize, number> = {
|
|
28
28
|
xs: 12,
|
|
@@ -4,17 +4,17 @@ import {
|
|
|
4
4
|
type ViewStyle
|
|
5
5
|
} from 'react-native'
|
|
6
6
|
|
|
7
|
-
import { hexWithAlpha } from '@helpwave/hightide-design/
|
|
7
|
+
import { hexWithAlpha } from '@helpwave/hightide-design/utils'
|
|
8
8
|
import { fontWeights } from '@helpwave/hightide-design/tokens'
|
|
9
9
|
import type {
|
|
10
10
|
ComponentColorTokens,
|
|
11
|
-
|
|
11
|
+
HightideThemeTokens as DesignTokensTheme
|
|
12
12
|
} from '@helpwave/hightide-design/types'
|
|
13
13
|
|
|
14
14
|
import type {
|
|
15
15
|
Color,
|
|
16
16
|
HightideSemanticColors
|
|
17
|
-
} from '
|
|
17
|
+
} from '../types/color'
|
|
18
18
|
import type {
|
|
19
19
|
ChatAttachmentCardState,
|
|
20
20
|
ChatConversationRowState,
|
|
@@ -23,12 +23,12 @@ import type {
|
|
|
23
23
|
ChatQuickReplyChipState,
|
|
24
24
|
ChatSystemLineState,
|
|
25
25
|
ChatTheme
|
|
26
|
-
} from '
|
|
27
|
-
import type { HightideComponentThemes } from '
|
|
26
|
+
} from '../types/components/chat'
|
|
27
|
+
import type { HightideComponentThemes } from '../types/components/hightide'
|
|
28
28
|
import {
|
|
29
29
|
createStyleResolver,
|
|
30
30
|
createValueResolver
|
|
31
|
-
} from '
|
|
31
|
+
} from '../types/resolver'
|
|
32
32
|
|
|
33
33
|
export type CreateChatThemeOptions = {
|
|
34
34
|
semantic: HightideSemanticColors,
|
|
@@ -3,20 +3,20 @@ import type { ViewStyle } from 'react-native'
|
|
|
3
3
|
import { componentLayouts } from '@helpwave/hightide-design/tokens'
|
|
4
4
|
import type {
|
|
5
5
|
ComponentColorTokens,
|
|
6
|
-
|
|
6
|
+
HightideThemeTokens as DesignTokensTheme,
|
|
7
7
|
ElementSize
|
|
8
8
|
} from '@helpwave/hightide-design/types'
|
|
9
9
|
|
|
10
|
-
import type { HightideSemanticColors } from '
|
|
10
|
+
import type { HightideSemanticColors } from '../types/color'
|
|
11
11
|
import type {
|
|
12
12
|
CheckboxSize,
|
|
13
13
|
CheckboxState,
|
|
14
14
|
CheckboxTheme
|
|
15
|
-
} from '
|
|
15
|
+
} from '../types/components/checkbox'
|
|
16
16
|
import {
|
|
17
17
|
createStyleResolver,
|
|
18
18
|
createValueResolver
|
|
19
|
-
} from '
|
|
19
|
+
} from '../types/resolver'
|
|
20
20
|
|
|
21
21
|
const checkboxSizes: Record<CheckboxSize, number> = {
|
|
22
22
|
sm: 20,
|
|
@@ -7,16 +7,16 @@ import {
|
|
|
7
7
|
componentLayouts,
|
|
8
8
|
fontWeights
|
|
9
9
|
} from '@helpwave/hightide-design/tokens'
|
|
10
|
-
import type {
|
|
10
|
+
import type { HightideThemeTokens as DesignTokensTheme } from '@helpwave/hightide-design/types'
|
|
11
11
|
|
|
12
|
-
import { resolveColoringStyles } from '
|
|
13
|
-
import type { HightideSemanticColors } from '
|
|
12
|
+
import { resolveColoringStyles } from './coloring'
|
|
13
|
+
import type { HightideSemanticColors } from '../types/color'
|
|
14
14
|
import type {
|
|
15
15
|
ChipState,
|
|
16
16
|
ChipTheme
|
|
17
|
-
} from '
|
|
18
|
-
import type { HightideComponentThemes } from '
|
|
19
|
-
import { createStyleResolver } from '
|
|
17
|
+
} from '../types/components/chip'
|
|
18
|
+
import type { HightideComponentThemes } from '../types/components/hightide'
|
|
19
|
+
import { createStyleResolver } from '../types/resolver'
|
|
20
20
|
|
|
21
21
|
export type CreateChipThemeOptions = {
|
|
22
22
|
semantic: HightideSemanticColors,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
hexWithAlpha
|
|
3
|
-
} from '@helpwave/hightide-design/
|
|
3
|
+
} from '@helpwave/hightide-design/utils'
|
|
4
4
|
import { componentLayouts } from '@helpwave/hightide-design/tokens'
|
|
5
5
|
import type {
|
|
6
6
|
ButtonColoringStyle,
|
|
@@ -11,9 +11,9 @@ import type {
|
|
|
11
11
|
import type {
|
|
12
12
|
Color,
|
|
13
13
|
HightideSemanticColors
|
|
14
|
-
} from '
|
|
15
|
-
import type { ColoringDefinition } from '
|
|
16
|
-
import type { InteractionState } from '
|
|
14
|
+
} from '../types/color'
|
|
15
|
+
import type { ColoringDefinition } from '../types/components/hightide'
|
|
16
|
+
import type { InteractionState } from '../types/resolver'
|
|
17
17
|
|
|
18
18
|
export type ResolvedColoringStyles = {
|
|
19
19
|
backgroundColor: Color | 'transparent',
|
|
@@ -1,22 +1,22 @@
|
|
|
1
1
|
import type { ViewStyle } from 'react-native'
|
|
2
2
|
|
|
3
3
|
import { componentLayouts } from '@helpwave/hightide-design/tokens'
|
|
4
|
-
import type {
|
|
4
|
+
import type { HightideThemeTokens as DesignTokensTheme } from '@helpwave/hightide-design/types'
|
|
5
5
|
|
|
6
6
|
import {
|
|
7
7
|
isOutlineColoringStyle,
|
|
8
8
|
resolveColoringStyles
|
|
9
|
-
} from '
|
|
10
|
-
import type { HightideSemanticColors } from '
|
|
11
|
-
import type { HightideComponentThemes } from '
|
|
9
|
+
} from './coloring'
|
|
10
|
+
import type { HightideSemanticColors } from '../types/color'
|
|
11
|
+
import type { HightideComponentThemes } from '../types/components/hightide'
|
|
12
12
|
import type {
|
|
13
13
|
IconButtonState,
|
|
14
14
|
IconButtonTheme
|
|
15
|
-
} from '
|
|
15
|
+
} from '../types/components/iconButton'
|
|
16
16
|
import {
|
|
17
17
|
createStyleResolver,
|
|
18
18
|
createValueResolver
|
|
19
|
-
} from '
|
|
19
|
+
} from '../types/resolver'
|
|
20
20
|
|
|
21
21
|
export type CreateIconButtonThemeOptions = {
|
|
22
22
|
semantic: HightideSemanticColors,
|
|
@@ -3,18 +3,18 @@ import type { TextStyle } from 'react-native'
|
|
|
3
3
|
import { componentLayouts } from '@helpwave/hightide-design/tokens'
|
|
4
4
|
import type {
|
|
5
5
|
ComponentColorTokens,
|
|
6
|
-
|
|
6
|
+
HightideThemeTokens as DesignTokensTheme
|
|
7
7
|
} from '@helpwave/hightide-design/types'
|
|
8
8
|
|
|
9
|
-
import type { HightideSemanticColors } from '
|
|
9
|
+
import type { HightideSemanticColors } from '../types/color'
|
|
10
10
|
import type {
|
|
11
11
|
InputState,
|
|
12
12
|
InputTheme
|
|
13
|
-
} from '
|
|
13
|
+
} from '../types/components/input'
|
|
14
14
|
import {
|
|
15
15
|
createStyleResolver,
|
|
16
16
|
createValueResolver
|
|
17
|
-
} from '
|
|
17
|
+
} from '../types/resolver'
|
|
18
18
|
|
|
19
19
|
export type CreateInputThemeOptions = {
|
|
20
20
|
semantic: HightideSemanticColors,
|
|
@@ -3,18 +3,18 @@ import { StyleSheet } from 'react-native'
|
|
|
3
3
|
import { fontWeights } from '@helpwave/hightide-design/tokens'
|
|
4
4
|
import type {
|
|
5
5
|
ComponentColorTokens,
|
|
6
|
-
|
|
6
|
+
HightideThemeTokens as DesignTokensTheme
|
|
7
7
|
} from '@helpwave/hightide-design/types'
|
|
8
8
|
|
|
9
|
-
import type { HightideSemanticColors } from '
|
|
9
|
+
import type { HightideSemanticColors } from '../types/color'
|
|
10
10
|
import type {
|
|
11
11
|
MenuActionItemState,
|
|
12
12
|
MenuTheme
|
|
13
|
-
} from '
|
|
13
|
+
} from '../types/components/menu'
|
|
14
14
|
import {
|
|
15
15
|
createStyleResolver,
|
|
16
16
|
createValueResolver
|
|
17
|
-
} from '
|
|
17
|
+
} from '../types/resolver'
|
|
18
18
|
|
|
19
19
|
export type CreateMenuThemeOptions = {
|
|
20
20
|
semantic: HightideSemanticColors,
|
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
import { fontWeights } from '@helpwave/hightide-design/tokens'
|
|
2
2
|
import type {
|
|
3
3
|
ComponentColorTokens,
|
|
4
|
-
|
|
4
|
+
HightideThemeTokens as DesignTokensTheme
|
|
5
5
|
} from '@helpwave/hightide-design/types'
|
|
6
6
|
|
|
7
|
-
import type { HightideSemanticColors } from '
|
|
7
|
+
import type { HightideSemanticColors } from '../types/color'
|
|
8
8
|
import type {
|
|
9
9
|
MultiSelectOptionState,
|
|
10
10
|
MultiSelectState,
|
|
11
11
|
MultiSelectTheme
|
|
12
|
-
} from '
|
|
12
|
+
} from '../types/components/multiSelect'
|
|
13
13
|
import {
|
|
14
14
|
createStyleResolver,
|
|
15
15
|
createValueResolver
|
|
16
|
-
} from '
|
|
16
|
+
} from '../types/resolver'
|
|
17
17
|
|
|
18
18
|
export type CreateMultiSelectThemeOptions = {
|
|
19
19
|
semantic: HightideSemanticColors,
|
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
import { fontWeights } from '@helpwave/hightide-design/tokens'
|
|
2
2
|
import type {
|
|
3
3
|
ComponentColorTokens,
|
|
4
|
-
|
|
4
|
+
HightideThemeTokens as DesignTokensTheme
|
|
5
5
|
} from '@helpwave/hightide-design/types'
|
|
6
6
|
|
|
7
|
-
import type { HightideSemanticColors } from '
|
|
7
|
+
import type { HightideSemanticColors } from '../types/color'
|
|
8
8
|
import type {
|
|
9
9
|
SelectOptionState,
|
|
10
10
|
SelectState,
|
|
11
11
|
SelectTheme
|
|
12
|
-
} from '
|
|
12
|
+
} from '../types/components/select'
|
|
13
13
|
import {
|
|
14
14
|
createStyleResolver,
|
|
15
15
|
createValueResolver
|
|
16
|
-
} from '
|
|
16
|
+
} from '../types/resolver'
|
|
17
17
|
|
|
18
18
|
export type CreateSelectThemeOptions = {
|
|
19
19
|
semantic: HightideSemanticColors,
|
|
@@ -1,23 +1,24 @@
|
|
|
1
1
|
import type {
|
|
2
2
|
ColorPaletteToken,
|
|
3
|
-
|
|
3
|
+
HightideThemeTokens
|
|
4
4
|
} from '@helpwave/hightide-design/types'
|
|
5
5
|
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
14
|
-
import {
|
|
6
|
+
import { createAvatarThemeFromDesign } from '../resolvers/avatar'
|
|
7
|
+
import { createButtonThemeFromDesign } from '../resolvers/button'
|
|
8
|
+
import { createChatThemeFromDesign } from '../resolvers/chat'
|
|
9
|
+
import { createCheckboxThemeFromDesign } from '../resolvers/checkbox'
|
|
10
|
+
import { createChipThemeFromDesign } from '../resolvers/chip'
|
|
11
|
+
import { createIconButtonThemeFromDesign } from '../resolvers/iconButton'
|
|
12
|
+
import { createInputThemeFromDesign } from '../resolvers/input'
|
|
13
|
+
import { createMenuThemeFromDesign } from '../resolvers/menu'
|
|
14
|
+
import { createMultiSelectThemeFromDesign } from '../resolvers/multiSelect'
|
|
15
|
+
import { createSelectThemeFromDesign } from '../resolvers/select'
|
|
15
16
|
import type {
|
|
16
17
|
Color,
|
|
17
18
|
ColorPalette,
|
|
18
19
|
HightideColors
|
|
19
|
-
} from '
|
|
20
|
-
import type {
|
|
20
|
+
} from '../types/color'
|
|
21
|
+
import type { HightideTheme } from '../types/theme'
|
|
21
22
|
|
|
22
23
|
const unwrapColorPaletteToken = (token: ColorPaletteToken): Color | ColorPalette => {
|
|
23
24
|
if (token.type === 'singleValue') {
|
|
@@ -26,7 +27,7 @@ const unwrapColorPaletteToken = (token: ColorPaletteToken): Color | ColorPalette
|
|
|
26
27
|
return token.value
|
|
27
28
|
}
|
|
28
29
|
|
|
29
|
-
const unwrapColors = (colors:
|
|
30
|
+
const unwrapColors = (colors: HightideThemeTokens['colors']): HightideColors & Record<string, Color | ColorPalette> => {
|
|
30
31
|
const result: Record<string, Color | ColorPalette> = {}
|
|
31
32
|
for (const [key, token] of Object.entries(colors)) {
|
|
32
33
|
result[key] = unwrapColorPaletteToken(token)
|
|
@@ -34,7 +35,7 @@ const unwrapColors = (colors: HightideDesignTokens['colors']): HightideColors &
|
|
|
34
35
|
return result as HightideColors & Record<string, Color | ColorPalette>
|
|
35
36
|
}
|
|
36
37
|
|
|
37
|
-
export const
|
|
38
|
+
export const createHightideTheme = (tokens: HightideThemeTokens): HightideTheme => ({
|
|
38
39
|
colors: unwrapColors(tokens.colors),
|
|
39
40
|
semantic: tokens.semanticColors,
|
|
40
41
|
typography: tokens.typography,
|
|
@@ -51,5 +52,6 @@ export const createTheme = (tokens: HightideDesignTokens): Theme => ({
|
|
|
51
52
|
multiSelect: createMultiSelectThemeFromDesign(tokens),
|
|
52
53
|
chat: createChatThemeFromDesign(tokens),
|
|
53
54
|
menu: createMenuThemeFromDesign(tokens),
|
|
55
|
+
avatar: createAvatarThemeFromDesign(tokens),
|
|
54
56
|
},
|
|
55
57
|
})
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { ThemeTokens as designThemes } from '@helpwave/hightide-design/tokens'
|
|
2
|
+
import { createHightideTheme } from './createHightideTheme'
|
|
3
|
+
|
|
4
|
+
export const lightTheme = createHightideTheme(designThemes.light)
|
|
5
|
+
export const darkTheme = createHightideTheme(designThemes.dark)
|
|
6
|
+
|
|
7
|
+
export const themes = {
|
|
8
|
+
light: lightTheme,
|
|
9
|
+
dark: darkTheme,
|
|
10
|
+
} as const
|
|
11
|
+
|
|
12
|
+
export type HightideThemeModes = 'dark' | 'light'
|
|
13
|
+
|
|
14
|
+
export type ThemeMode = string | HightideThemeModes
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export * from './
|
|
2
|
-
export * from './
|
|
1
|
+
export * from './createHightideTheme'
|
|
2
|
+
export * from './hightideThemes'
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import type {
|
|
2
|
+
ImageStyle,
|
|
3
|
+
TextStyle,
|
|
4
|
+
ViewStyle
|
|
5
|
+
} from 'react-native'
|
|
6
|
+
|
|
7
|
+
import type { ElementSize } from '@helpwave/hightide-design/types'
|
|
8
|
+
|
|
9
|
+
import type { StyleResolverFunction } from '../resolver'
|
|
10
|
+
|
|
11
|
+
export type AvatarStatus = 'online' | 'offline' | 'away' | 'busy' | 'unknown'
|
|
12
|
+
|
|
13
|
+
export type AvatarState = {
|
|
14
|
+
size?: ElementSize,
|
|
15
|
+
isGrouped?: boolean,
|
|
16
|
+
groupIndex?: number,
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
export type AvatarWithStatusState = {
|
|
20
|
+
size?: ElementSize,
|
|
21
|
+
status?: AvatarStatus,
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
export type AvatarWithLabelState = {
|
|
25
|
+
size?: ElementSize,
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
export type AvatarGroupState = {
|
|
29
|
+
size?: ElementSize,
|
|
30
|
+
count?: number,
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
export type AvatarStyle = ViewStyle
|
|
34
|
+
|
|
35
|
+
export type AvatarImageStyle = ImageStyle
|
|
36
|
+
|
|
37
|
+
export type AvatarTextStyle = TextStyle
|
|
38
|
+
|
|
39
|
+
export type AvatarIconStyle = {
|
|
40
|
+
size: number,
|
|
41
|
+
strokeWidth: number,
|
|
42
|
+
color: string,
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
export type AvatarStatusDotStyle = ViewStyle
|
|
46
|
+
|
|
47
|
+
export type AvatarWithStatusContainerStyle = ViewStyle
|
|
48
|
+
|
|
49
|
+
export type AvatarWithLabelContainerStyle = ViewStyle
|
|
50
|
+
|
|
51
|
+
export type AvatarWithLabelTextStyle = TextStyle
|
|
52
|
+
|
|
53
|
+
export type AvatarGroupContainerStyle = ViewStyle
|
|
54
|
+
|
|
55
|
+
export type AvatarGroupStackStyle = ViewStyle
|
|
56
|
+
|
|
57
|
+
export type AvatarGroupMoreStyle = TextStyle
|
|
58
|
+
|
|
59
|
+
export type AvatarTheme = {
|
|
60
|
+
avatar: StyleResolverFunction<AvatarState, AvatarStyle>,
|
|
61
|
+
image: StyleResolverFunction<AvatarState, AvatarImageStyle>,
|
|
62
|
+
text: StyleResolverFunction<AvatarState, AvatarTextStyle>,
|
|
63
|
+
icon: StyleResolverFunction<AvatarState, AvatarIconStyle>,
|
|
64
|
+
withStatus: {
|
|
65
|
+
container: StyleResolverFunction<AvatarWithStatusState, AvatarWithStatusContainerStyle>,
|
|
66
|
+
statusDot: StyleResolverFunction<AvatarWithStatusState, AvatarStatusDotStyle>,
|
|
67
|
+
},
|
|
68
|
+
withLabel: {
|
|
69
|
+
container: StyleResolverFunction<AvatarWithLabelState, AvatarWithLabelContainerStyle>,
|
|
70
|
+
text: StyleResolverFunction<AvatarWithLabelState, AvatarWithLabelTextStyle>,
|
|
71
|
+
},
|
|
72
|
+
group: {
|
|
73
|
+
container: StyleResolverFunction<AvatarGroupState, AvatarGroupContainerStyle>,
|
|
74
|
+
stack: StyleResolverFunction<AvatarGroupState, AvatarGroupStackStyle>,
|
|
75
|
+
more: StyleResolverFunction<AvatarGroupState, AvatarGroupMoreStyle>,
|
|
76
|
+
},
|
|
77
|
+
}
|
|
@@ -3,7 +3,7 @@ import type {
|
|
|
3
3
|
ViewStyle
|
|
4
4
|
} from 'react-native'
|
|
5
5
|
|
|
6
|
-
import type { ColoringType } from '@helpwave/hightide-design/
|
|
6
|
+
import type { ColoringType } from '@helpwave/hightide-design/utils'
|
|
7
7
|
import type {
|
|
8
8
|
ButtonColoringStyle,
|
|
9
9
|
ElementSize
|
|
@@ -12,7 +12,7 @@ import type {
|
|
|
12
12
|
import type {
|
|
13
13
|
InteractionState,
|
|
14
14
|
StyleResolverFunction
|
|
15
|
-
} from '
|
|
15
|
+
} from '../resolver'
|
|
16
16
|
|
|
17
17
|
export type ButtonState = InteractionState & {
|
|
18
18
|
size?: ElementSize,
|
|
@@ -3,13 +3,13 @@ import type {
|
|
|
3
3
|
ViewStyle
|
|
4
4
|
} from 'react-native'
|
|
5
5
|
|
|
6
|
-
import type { ColoringType } from '@helpwave/hightide-design/
|
|
6
|
+
import type { ColoringType } from '@helpwave/hightide-design/utils'
|
|
7
7
|
|
|
8
|
-
import type { Color } from '
|
|
8
|
+
import type { Color } from '../color'
|
|
9
9
|
import type {
|
|
10
10
|
InteractionState,
|
|
11
11
|
StyleResolverFunction
|
|
12
|
-
} from '
|
|
12
|
+
} from '../resolver'
|
|
13
13
|
|
|
14
14
|
export type ChatMessageDirection = 'incoming' | 'outgoing'
|
|
15
15
|
|
|
@@ -2,11 +2,11 @@ import type { ViewStyle } from 'react-native'
|
|
|
2
2
|
|
|
3
3
|
import type { ElementSize } from '@helpwave/hightide-design/types'
|
|
4
4
|
|
|
5
|
-
import type { Color } from '
|
|
5
|
+
import type { Color } from '../color'
|
|
6
6
|
import type {
|
|
7
7
|
InteractionState,
|
|
8
8
|
StyleResolverFunction
|
|
9
|
-
} from '
|
|
9
|
+
} from '../resolver'
|
|
10
10
|
|
|
11
11
|
export type CheckboxSize = 'sm' | 'md' | 'lg'
|
|
12
12
|
|
|
@@ -3,7 +3,7 @@ import type {
|
|
|
3
3
|
ViewStyle
|
|
4
4
|
} from 'react-native'
|
|
5
5
|
|
|
6
|
-
import type { ColoringType } from '@helpwave/hightide-design/
|
|
6
|
+
import type { ColoringType } from '@helpwave/hightide-design/utils'
|
|
7
7
|
import type {
|
|
8
8
|
ChipColoringStyle,
|
|
9
9
|
ElementSize
|
|
@@ -12,7 +12,7 @@ import type {
|
|
|
12
12
|
import type {
|
|
13
13
|
InteractionState,
|
|
14
14
|
StyleResolverFunction
|
|
15
|
-
} from '
|
|
15
|
+
} from '../resolver'
|
|
16
16
|
|
|
17
17
|
export type ChipState = InteractionState & {
|
|
18
18
|
size?: ElementSize,
|
|
@@ -1,13 +1,14 @@
|
|
|
1
|
-
import type { Color } from '
|
|
2
|
-
import type {
|
|
3
|
-
import type {
|
|
4
|
-
import type {
|
|
5
|
-
import type {
|
|
6
|
-
import type {
|
|
7
|
-
import type {
|
|
8
|
-
import type {
|
|
9
|
-
import type {
|
|
10
|
-
import type {
|
|
1
|
+
import type { Color } from '../color'
|
|
2
|
+
import type { AvatarTheme } from './avatar'
|
|
3
|
+
import type { ButtonTheme } from './button'
|
|
4
|
+
import type { ChatTheme } from './chat'
|
|
5
|
+
import type { CheckboxTheme } from './checkbox'
|
|
6
|
+
import type { ChipTheme } from './chip'
|
|
7
|
+
import type { IconButtonTheme } from './iconButton'
|
|
8
|
+
import type { InputTheme } from './input'
|
|
9
|
+
import type { MenuTheme } from './menu'
|
|
10
|
+
import type { MultiSelectTheme } from './multiSelect'
|
|
11
|
+
import type { SelectTheme } from './select'
|
|
11
12
|
|
|
12
13
|
export type ColoringDefinition = {
|
|
13
14
|
color: Color,
|
|
@@ -39,4 +40,5 @@ export type HightideComponentThemes = {
|
|
|
39
40
|
multiSelect: MultiSelectTheme,
|
|
40
41
|
chat: ChatTheme,
|
|
41
42
|
menu: MenuTheme,
|
|
43
|
+
avatar: AvatarTheme,
|
|
42
44
|
}
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import type { ViewStyle } from 'react-native'
|
|
2
2
|
|
|
3
|
-
import type { ColoringType } from '@helpwave/hightide-design/
|
|
3
|
+
import type { ColoringType } from '@helpwave/hightide-design/utils'
|
|
4
4
|
import type {
|
|
5
5
|
ButtonColoringStyle,
|
|
6
6
|
ElementSize
|
|
7
7
|
} from '@helpwave/hightide-design/types'
|
|
8
8
|
|
|
9
|
-
import type { Color } from '
|
|
9
|
+
import type { Color } from '../color'
|
|
10
10
|
import type {
|
|
11
11
|
InteractionState,
|
|
12
12
|
StyleResolverFunction
|
|
13
|
-
} from '
|
|
13
|
+
} from '../resolver'
|
|
14
14
|
|
|
15
15
|
export type IconButtonState = InteractionState & {
|
|
16
16
|
size?: ElementSize,
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import type { TextStyle } from 'react-native'
|
|
2
2
|
|
|
3
|
-
import type { Color } from '
|
|
3
|
+
import type { Color } from '../color'
|
|
4
4
|
import type {
|
|
5
5
|
InteractionState,
|
|
6
6
|
StyleResolverFunction
|
|
7
|
-
} from '
|
|
7
|
+
} from '../resolver'
|
|
8
8
|
|
|
9
9
|
export type InputState = InteractionState & {
|
|
10
10
|
isInvalid?: boolean,
|
|
@@ -3,11 +3,11 @@ import type {
|
|
|
3
3
|
ViewStyle
|
|
4
4
|
} from 'react-native'
|
|
5
5
|
|
|
6
|
-
import type { Color } from '
|
|
6
|
+
import type { Color } from '../color'
|
|
7
7
|
import type {
|
|
8
8
|
InteractionState,
|
|
9
9
|
StyleResolverFunction
|
|
10
|
-
} from '
|
|
10
|
+
} from '../resolver'
|
|
11
11
|
|
|
12
12
|
export type MenuSectionStyle = ViewStyle
|
|
13
13
|
|
|
@@ -3,7 +3,7 @@ import type {
|
|
|
3
3
|
ViewStyle
|
|
4
4
|
} from 'react-native'
|
|
5
5
|
|
|
6
|
-
import type { Color } from '
|
|
6
|
+
import type { Color } from '../color'
|
|
7
7
|
import type {
|
|
8
8
|
SelectMenuStyle,
|
|
9
9
|
SelectOptionState,
|
|
@@ -11,8 +11,8 @@ import type {
|
|
|
11
11
|
SelectSearchStyle,
|
|
12
12
|
SelectState,
|
|
13
13
|
SelectTriggerTextStyle
|
|
14
|
-
} from '
|
|
15
|
-
import type { StyleResolverFunction } from '
|
|
14
|
+
} from './select'
|
|
15
|
+
import type { StyleResolverFunction } from '../resolver'
|
|
16
16
|
|
|
17
17
|
export type MultiSelectState = SelectState & {
|
|
18
18
|
hasSelections?: boolean,
|
|
@@ -3,11 +3,11 @@ import type {
|
|
|
3
3
|
ViewStyle
|
|
4
4
|
} from 'react-native'
|
|
5
5
|
|
|
6
|
-
import type { Color } from '
|
|
6
|
+
import type { Color } from '../color'
|
|
7
7
|
import type {
|
|
8
8
|
InteractionState,
|
|
9
9
|
StyleResolverFunction
|
|
10
|
-
} from '
|
|
10
|
+
} from '../resolver'
|
|
11
11
|
|
|
12
12
|
export type SelectState = InteractionState & {
|
|
13
13
|
isInvalid?: boolean,
|
|
@@ -43,4 +43,16 @@ export type HightideLayout = {
|
|
|
43
43
|
borderRadius: number,
|
|
44
44
|
fontSize: number,
|
|
45
45
|
}>,
|
|
46
|
+
avatar: Record<ElementSize, {
|
|
47
|
+
size: number,
|
|
48
|
+
padding: number,
|
|
49
|
+
fontSize: number,
|
|
50
|
+
statusDotSize: number,
|
|
51
|
+
statusDotBorderWidth: number,
|
|
52
|
+
}>,
|
|
53
|
+
avatarGroup: {
|
|
54
|
+
overlap: number,
|
|
55
|
+
maxShown: number,
|
|
56
|
+
gap: number,
|
|
57
|
+
},
|
|
46
58
|
}
|