@ornikar/kitt-universal 6.0.0 → 6.1.0

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.
Files changed (44) hide show
  1. package/dist/definitions/Button/AnimatedButtonPressable.d.ts +2 -1
  2. package/dist/definitions/Button/AnimatedButtonPressable.d.ts.map +1 -1
  3. package/dist/definitions/Button/AnimatedButtonPressable.web.d.ts +2 -1
  4. package/dist/definitions/Button/AnimatedButtonPressable.web.d.ts.map +1 -1
  5. package/dist/definitions/Button/BaseStyledButtonPressable.d.ts +2 -1
  6. package/dist/definitions/Button/BaseStyledButtonPressable.d.ts.map +1 -1
  7. package/dist/definitions/Button/Button.d.ts +2 -0
  8. package/dist/definitions/Button/Button.d.ts.map +1 -1
  9. package/dist/definitions/Button/ButtonContent.d.ts +3 -2
  10. package/dist/definitions/Button/ButtonContent.d.ts.map +1 -1
  11. package/dist/definitions/Button/getVariantValuesIfExist.d.ts +5 -0
  12. package/dist/definitions/Button/getVariantValuesIfExist.d.ts.map +1 -0
  13. package/dist/definitions/ExternalLink/ExternalLink.d.ts +3 -3
  14. package/dist/definitions/ExternalLink/ExternalLink.d.ts.map +1 -1
  15. package/dist/definitions/themes/late-ocean/button.d.ts +26 -9
  16. package/dist/definitions/themes/late-ocean/button.d.ts.map +1 -1
  17. package/dist/definitions/utils/tests/renderWithProvidersUtils.d.ts +4 -2
  18. package/dist/definitions/utils/tests/renderWithProvidersUtils.d.ts.map +1 -1
  19. package/dist/index-browser-all.es.android.js +103 -49
  20. package/dist/index-browser-all.es.android.js.map +1 -1
  21. package/dist/index-browser-all.es.ios.js +103 -49
  22. package/dist/index-browser-all.es.ios.js.map +1 -1
  23. package/dist/index-browser-all.es.js +103 -49
  24. package/dist/index-browser-all.es.js.map +1 -1
  25. package/dist/index-browser-all.es.web.js +117 -54
  26. package/dist/index-browser-all.es.web.js.map +1 -1
  27. package/dist/index-node-14.17.cjs.js +96 -46
  28. package/dist/index-node-14.17.cjs.js.map +1 -1
  29. package/dist/index-node-14.17.cjs.web.js +113 -52
  30. package/dist/index-node-14.17.cjs.web.js.map +1 -1
  31. package/dist/linaria-themes-browser-all.es.android.js +56 -35
  32. package/dist/linaria-themes-browser-all.es.android.js.map +1 -1
  33. package/dist/linaria-themes-browser-all.es.ios.js +56 -35
  34. package/dist/linaria-themes-browser-all.es.ios.js.map +1 -1
  35. package/dist/linaria-themes-browser-all.es.js +56 -35
  36. package/dist/linaria-themes-browser-all.es.js.map +1 -1
  37. package/dist/linaria-themes-browser-all.es.web.js +56 -35
  38. package/dist/linaria-themes-browser-all.es.web.js.map +1 -1
  39. package/dist/linaria-themes-node-14.17.cjs.js +56 -35
  40. package/dist/linaria-themes-node-14.17.cjs.js.map +1 -1
  41. package/dist/linaria-themes-node-14.17.cjs.web.js +56 -35
  42. package/dist/linaria-themes-node-14.17.cjs.web.js.map +1 -1
  43. package/dist/tsbuildinfo +1 -1
  44. package/package.json +4 -4
@@ -1,6 +1,6 @@
1
1
  /// <reference types="react" />
2
2
  import type { PressableProps, View } from 'react-native';
3
- import type { ButtonType } from './Button';
3
+ import type { ButtonType, ButtonVariant } from './Button';
4
4
  export interface StyledPressableProps extends PressableProps {
5
5
  $isStretch?: boolean;
6
6
  $type: ButtonType;
@@ -8,6 +8,7 @@ export interface StyledPressableProps extends PressableProps {
8
8
  export interface AnimatedButtonPressableProps extends PressableProps {
9
9
  accessibilityRole: NonNullable<PressableProps['accessibilityRole']>;
10
10
  $type: ButtonType;
11
+ $variant: ButtonVariant;
11
12
  $isStretch?: boolean;
12
13
  }
13
14
  export declare const AnimatedButtonPressable: import("react").ForwardRefExoticComponent<AnimatedButtonPressableProps & import("react").RefAttributes<View>>;
@@ -1 +1 @@
1
- {"version":3,"file":"AnimatedButtonPressable.d.ts","sourceRoot":"","sources":["../../../src/Button/AnimatedButtonPressable.tsx"],"names":[],"mappings":";AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAGzD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAE3C,MAAM,WAAW,oBAAqB,SAAQ,cAAc;IAC1D,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,KAAK,EAAE,UAAU,CAAC;CACnB;AAcD,MAAM,WAAW,4BAA6B,SAAQ,cAAc;IAClE,iBAAiB,EAAE,WAAW,CAAC,cAAc,CAAC,mBAAmB,CAAC,CAAC,CAAC;IACpE,KAAK,EAAE,UAAU,CAAC;IAClB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,eAAO,MAAM,uBAAuB,+GA8DnC,CAAC"}
1
+ {"version":3,"file":"AnimatedButtonPressable.d.ts","sourceRoot":"","sources":["../../../src/Button/AnimatedButtonPressable.tsx"],"names":[],"mappings":";AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAGzD,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAG1D,MAAM,WAAW,oBAAqB,SAAQ,cAAc;IAC1D,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,KAAK,EAAE,UAAU,CAAC;CACnB;AAcD,MAAM,WAAW,4BAA6B,SAAQ,cAAc;IAClE,iBAAiB,EAAE,WAAW,CAAC,cAAc,CAAC,mBAAmB,CAAC,CAAC,CAAC;IACpE,KAAK,EAAE,UAAU,CAAC;IAClB,QAAQ,EAAE,aAAa,CAAC;IACxB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,eAAO,MAAM,uBAAuB,+GA+DnC,CAAC"}
@@ -1,12 +1,13 @@
1
1
  import type { ReactNode } from 'react';
2
2
  import type { DefaultTheme } from 'styled-components/native';
3
3
  import type { AnimatedButtonPressableProps } from './AnimatedButtonPressable';
4
- import type { ButtonType } from './Button';
4
+ import type { ButtonType, ButtonVariant } from './Button';
5
5
  interface AnimatedButtonPressableContainerProps {
6
6
  theme: DefaultTheme;
7
7
  children: ReactNode;
8
8
  $isDisabled?: boolean;
9
9
  $type: ButtonType;
10
+ $variant: ButtonVariant;
10
11
  $isStretch?: boolean;
11
12
  $isSubtle?: boolean;
12
13
  }
@@ -1 +1 @@
1
- {"version":3,"file":"AnimatedButtonPressable.web.d.ts","sourceRoot":"","sources":["../../../src/Button/AnimatedButtonPressable.web.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAgB,SAAS,EAAE,MAAM,OAAO,CAAC;AAGrD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAG7D,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,2BAA2B,CAAC;AAC9E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAG3C,UAAU,qCAAqC;IAC7C,KAAK,EAAE,YAAY,CAAC;IACpB,QAAQ,EAAE,SAAS,CAAC;IACpB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,KAAK,EAAE,UAAU,CAAC;IAClB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,eAAO,MAAM,gCAAgC,uKA6H3C,CAAC;AAEH,eAAO,MAAM,uBAAuB,yHAQnC,CAAC"}
1
+ {"version":3,"file":"AnimatedButtonPressable.web.d.ts","sourceRoot":"","sources":["../../../src/Button/AnimatedButtonPressable.web.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAgB,SAAS,EAAE,MAAM,OAAO,CAAC;AAGrD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAI7D,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,2BAA2B,CAAC;AAC9E,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAI1D,UAAU,qCAAqC;IAC7C,KAAK,EAAE,YAAY,CAAC;IACpB,QAAQ,EAAE,SAAS,CAAC;IACpB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,KAAK,EAAE,UAAU,CAAC;IAClB,QAAQ,EAAE,aAAa,CAAC;IACxB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,eAAO,MAAM,gCAAgC,uKA0I3C,CAAC;AAEH,eAAO,MAAM,uBAAuB,yHAcnC,CAAC"}
@@ -1,8 +1,9 @@
1
1
  /// <reference types="styled-components-react-native" />
2
2
  import type { ViewProps } from 'react-native';
3
- import type { ButtonType } from './Button';
3
+ import type { ButtonType, ButtonVariant } from './Button';
4
4
  export interface BaseStyledButtonPressableProps extends ViewProps {
5
5
  $type: ButtonType;
6
+ $variant: ButtonVariant;
6
7
  $isLarge?: boolean;
7
8
  $isStretch?: boolean;
8
9
  $isDisabled?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"BaseStyledButtonPressable.d.ts","sourceRoot":"","sources":["../../../src/Button/BaseStyledButtonPressable.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAG9C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAE3C,MAAM,WAAW,8BAA+B,SAAQ,SAAS;IAC/D,KAAK,EAAE,UAAU,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,eAAO,MAAM,yBAAyB,kKA8BrC,CAAC"}
1
+ {"version":3,"file":"BaseStyledButtonPressable.d.ts","sourceRoot":"","sources":["../../../src/Button/BaseStyledButtonPressable.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAG9C,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAG1D,MAAM,WAAW,8BAA+B,SAAQ,SAAS;IAC/D,KAAK,EAAE,UAAU,CAAC;IAClB,QAAQ,EAAE,aAAa,CAAC;IACxB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,eAAO,MAAM,yBAAyB,kKA8BrC,CAAC"}
@@ -2,10 +2,12 @@ import type { ReactElement, ReactNode } from 'react';
2
2
  import type { PressableProps, View } from 'react-native';
3
3
  export declare type SubtleButtonType = 'subtle' | 'subtle-dark';
4
4
  export declare type ButtonType = 'primary' | 'default' | SubtleButtonType | 'white';
5
+ export declare type ButtonVariant = 'default' | 'ghost';
5
6
  declare type IconPosition = 'right' | 'left';
6
7
  export interface ButtonProps {
7
8
  children?: ReactNode;
8
9
  type?: ButtonType;
10
+ variant?: ButtonVariant;
9
11
  disabled?: boolean;
10
12
  stretch?: boolean;
11
13
  large?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../../src/Button/Button.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAErD,OAAO,KAAK,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAOzD,oBAAY,gBAAgB,GAAG,QAAQ,GAAG,aAAa,CAAC;AACxD,oBAAY,UAAU,GAAG,SAAS,GAAG,SAAS,GAAG,gBAAgB,GAAG,OAAO,CAAC;AAE5E,aAAK,YAAY,GAAG,OAAO,GAAG,MAAM,CAAC;AAErC,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,MAAM,CAAC,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAC;IAClC,IAAI,CAAC,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC;IAC9B,SAAS,CAAC,EAAE,cAAc,CAAC,WAAW,CAAC,CAAC;IACxC,iBAAiB,CAAC,EAAE,cAAc,CAAC,mBAAmB,CAAC,CAAC;IACxD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;IAChC,OAAO,CAAC,EAAE,cAAc,CAAC,SAAS,CAAC,CAAC;CACrC;AAED,eAAO,MAAM,MAAM,8FAuClB,CAAC"}
1
+ {"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../../src/Button/Button.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAErD,OAAO,KAAK,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAOzD,oBAAY,gBAAgB,GAAG,QAAQ,GAAG,aAAa,CAAC;AACxD,oBAAY,UAAU,GAAG,SAAS,GAAG,SAAS,GAAG,gBAAgB,GAAG,OAAO,CAAC;AAE5E,oBAAY,aAAa,GAAG,SAAS,GAAG,OAAO,CAAC;AAEhD,aAAK,YAAY,GAAG,OAAO,GAAG,MAAM,CAAC;AAErC,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,MAAM,CAAC,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAC;IAClC,IAAI,CAAC,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC;IAC9B,SAAS,CAAC,EAAE,cAAc,CAAC,WAAW,CAAC,CAAC;IACxC,iBAAiB,CAAC,EAAE,cAAc,CAAC,mBAAmB,CAAC,CAAC;IACxD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;IAChC,OAAO,CAAC,EAAE,cAAc,CAAC,SAAS,CAAC,CAAC;CACrC;AAED,eAAO,MAAM,MAAM,8FA0DlB,CAAC"}
@@ -1,10 +1,11 @@
1
1
  import type { ReactElement } from 'react';
2
2
  import type { Except } from 'type-fest';
3
3
  import type { TypographyColor } from '../typography/Typography';
4
- import type { ButtonProps, ButtonType } from './Button';
4
+ import type { ButtonProps, ButtonType, ButtonVariant } from './Button';
5
5
  interface ButtonContentProps extends Except<ButtonProps, 'onPress' | 'disabled' | 'stretch'> {
6
6
  isDisabled?: boolean;
7
7
  type: NonNullable<ButtonType>;
8
+ variant: NonNullable<ButtonVariant>;
8
9
  $isStretch: ButtonProps['stretch'];
9
10
  }
10
11
  interface ButtonContentChildrenProps extends Except<ButtonProps, 'onPress' | 'disabled' | 'stretch'> {
@@ -13,6 +14,6 @@ interface ButtonContentChildrenProps extends Except<ButtonProps, 'onPress' | 'di
13
14
  color: TypographyColor;
14
15
  }
15
16
  export declare function ButtonContentChildren({ type, icon, iconPosition, isDisabled, color, children, }: ButtonContentChildrenProps): ReactElement | null;
16
- export declare function ButtonContent({ type, isDisabled, $isStretch, icon, children, ...props }: ButtonContentProps): ReactElement;
17
+ export declare function ButtonContent({ type, variant, isDisabled, $isStretch, icon, children, ...props }: ButtonContentProps): ReactElement;
17
18
  export {};
18
19
  //# sourceMappingURL=ButtonContent.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ButtonContent.d.ts","sourceRoot":"","sources":["../../../src/Button/ButtonContent.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAG1C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,KAAK,EAAE,eAAe,EAAuB,MAAM,0BAA0B,CAAC;AAIrF,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AA8ExD,UAAU,kBAAmB,SAAQ,MAAM,CAAC,WAAW,EAAE,SAAS,GAAG,UAAU,GAAG,SAAS,CAAC;IAC1F,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,IAAI,EAAE,WAAW,CAAC,UAAU,CAAC,CAAC;IAC9B,UAAU,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC;CACpC;AAED,UAAU,0BAA2B,SAAQ,MAAM,CAAC,WAAW,EAAE,SAAS,GAAG,UAAU,GAAG,SAAS,CAAC;IAClG,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,IAAI,EAAE,WAAW,CAAC,UAAU,CAAC,CAAC;IAC9B,KAAK,EAAE,eAAe,CAAC;CACxB;AAQD,wBAAgB,qBAAqB,CAAC,EACpC,IAAI,EACJ,IAAI,EACJ,YAAY,EACZ,UAAU,EACV,KAAK,EACL,QAAQ,GACT,EAAE,0BAA0B,GAAG,YAAY,GAAG,IAAI,CA6ClD;AA4BD,wBAAgB,aAAa,CAAC,EAC5B,IAAI,EACJ,UAAU,EACV,UAAU,EACV,IAAI,EACJ,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,kBAAkB,GAAG,YAAY,CAUnC"}
1
+ {"version":3,"file":"ButtonContent.d.ts","sourceRoot":"","sources":["../../../src/Button/ButtonContent.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAG1C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,KAAK,EAAE,eAAe,EAAuB,MAAM,0BAA0B,CAAC;AAIrF,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AA8EvE,UAAU,kBAAmB,SAAQ,MAAM,CAAC,WAAW,EAAE,SAAS,GAAG,UAAU,GAAG,SAAS,CAAC;IAC1F,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,IAAI,EAAE,WAAW,CAAC,UAAU,CAAC,CAAC;IAC9B,OAAO,EAAE,WAAW,CAAC,aAAa,CAAC,CAAC;IACpC,UAAU,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC;CACpC;AAED,UAAU,0BAA2B,SAAQ,MAAM,CAAC,WAAW,EAAE,SAAS,GAAG,UAAU,GAAG,SAAS,CAAC;IAClG,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,IAAI,EAAE,WAAW,CAAC,UAAU,CAAC,CAAC;IAC9B,KAAK,EAAE,eAAe,CAAC;CACxB;AAQD,wBAAgB,qBAAqB,CAAC,EACpC,IAAI,EACJ,IAAI,EACJ,YAAY,EACZ,UAAU,EACV,KAAK,EACL,QAAQ,GACT,EAAE,0BAA0B,GAAG,YAAY,GAAG,IAAI,CA6ClD;AA4BD,wBAAgB,aAAa,CAAC,EAC5B,IAAI,EACJ,OAAO,EACP,UAAU,EACV,UAAU,EACV,IAAI,EACJ,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,kBAAkB,GAAG,YAAY,CAUnC"}
@@ -0,0 +1,5 @@
1
+ import type { DefaultTheme } from 'styled-components/native';
2
+ import type { BaseButtonTheme, BaseButtonWithVariant } from '../themes/late-ocean/button';
3
+ import type { ButtonType, ButtonVariant } from './Button';
4
+ export declare function getVariantValuesIfExist<V extends ButtonVariant>(theme: DefaultTheme, type: ButtonType, variant: ButtonVariant): BaseButtonTheme['default'] | BaseButtonWithVariant[V];
5
+ //# sourceMappingURL=getVariantValuesIfExist.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getVariantValuesIfExist.d.ts","sourceRoot":"","sources":["../../../src/Button/getVariantValuesIfExist.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,KAAK,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AAC1F,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAM1D,wBAAgB,uBAAuB,CAAC,CAAC,SAAS,aAAa,EAC7D,KAAK,EAAE,YAAY,EACnB,IAAI,EAAE,UAAU,EAChB,OAAO,EAAE,aAAa,GACrB,eAAe,CAAC,SAAS,CAAC,GAAG,qBAAqB,CAAC,CAAC,CAAC,CAQvD"}
@@ -1,16 +1,16 @@
1
1
  import type { ComponentProps, ReactElement, VoidFunctionComponent } from 'react';
2
- import type { TextProps } from 'react-native';
2
+ import type { PressableProps, TextProps } from 'react-native';
3
3
  import type { ExternalLinkOpenLinkBehavior } from './ExternalLinkOpenLinkBehavior';
4
4
  export interface ExternalLinkAsComponentMinimumRequiredProps {
5
5
  href?: TextProps['href'];
6
6
  hrefAttrs?: TextProps['hrefAttrs'];
7
- onPress?: () => void;
7
+ onPress?: PressableProps['onPress'];
8
8
  }
9
9
  export interface ExternalLinkProps<C extends VoidFunctionComponent<any>> {
10
10
  as: C;
11
11
  openLinkBehavior?: ExternalLinkOpenLinkBehavior;
12
12
  href?: string;
13
- onPress?: () => void;
13
+ onPress?: PressableProps['onPress'];
14
14
  }
15
15
  /** @internal for ExternalLink.web.tsx only */
16
16
  export declare type ExternalLinkSendableComponentProps<C extends VoidFunctionComponent<any>> = Omit<ComponentProps<C>, keyof ExternalLinkProps<C> & keyof ExternalLinkAsComponentMinimumRequiredProps>;
@@ -1 +1 @@
1
- {"version":3,"file":"ExternalLink.d.ts","sourceRoot":"","sources":["../../../src/ExternalLink/ExternalLink.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,qBAAqB,EAAE,MAAM,OAAO,CAAC;AACjF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAE9C,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAGnF,MAAM,WAAW,2CAA2C;IAC1D,IAAI,CAAC,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;IACzB,SAAS,CAAC,EAAE,SAAS,CAAC,WAAW,CAAC,CAAC;IACnC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB;AAED,MAAM,WAAW,iBAAiB,CAAC,CAAC,SAAS,qBAAqB,CAAC,GAAG,CAAC;IACrE,EAAE,EAAE,CAAC,CAAC;IACN,gBAAgB,CAAC,EAAE,4BAA4B,CAAC;IAChD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB;AAED,8CAA8C;AAE9C,oBAAY,kCAAkC,CAAC,CAAC,SAAS,qBAAqB,CAAC,GAAG,CAAC,IAAI,IAAI,CACzF,cAAc,CAAC,CAAC,CAAC,EACjB,MAAM,iBAAiB,CAAC,CAAC,CAAC,GAAG,MAAM,2CAA2C,CAC/E,CAAC;AAEF,wBAAgB,YAAY,CAAC,CAAC,SAAS,qBAAqB,CAAC,GAAG,CAAC,EAAE,EACjE,EAAE,EAAE,SAAS,EACb,IAAI,EACJ,gBAA0C,EAC1C,OAAO,EACP,GAAG,IAAI,EACR,EAAE,iBAAiB,CAAC,CAAC,CAAC,GAAG,kCAAkC,CAAC,CAAC,CAAC,GAAG,YAAY,CAwB7E"}
1
+ {"version":3,"file":"ExternalLink.d.ts","sourceRoot":"","sources":["../../../src/ExternalLink/ExternalLink.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,qBAAqB,EAAE,MAAM,OAAO,CAAC;AACjF,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAE9D,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAGnF,MAAM,WAAW,2CAA2C;IAC1D,IAAI,CAAC,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;IACzB,SAAS,CAAC,EAAE,SAAS,CAAC,WAAW,CAAC,CAAC;IACnC,OAAO,CAAC,EAAE,cAAc,CAAC,SAAS,CAAC,CAAC;CACrC;AAED,MAAM,WAAW,iBAAiB,CAAC,CAAC,SAAS,qBAAqB,CAAC,GAAG,CAAC;IACrE,EAAE,EAAE,CAAC,CAAC;IACN,gBAAgB,CAAC,EAAE,4BAA4B,CAAC;IAChD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,cAAc,CAAC,SAAS,CAAC,CAAC;CACrC;AAED,8CAA8C;AAE9C,oBAAY,kCAAkC,CAAC,CAAC,SAAS,qBAAqB,CAAC,GAAG,CAAC,IAAI,IAAI,CACzF,cAAc,CAAC,CAAC,CAAC,EACjB,MAAM,iBAAiB,CAAC,CAAC,CAAC,GAAG,MAAM,2CAA2C,CAC/E,CAAC;AAEF,wBAAgB,YAAY,CAAC,CAAC,SAAS,qBAAqB,CAAC,GAAG,CAAC,EAAE,EACjE,EAAE,EAAE,SAAS,EACb,IAAI,EACJ,gBAA0C,EAC1C,OAAO,EACP,GAAG,IAAI,EACR,EAAE,iBAAiB,CAAC,CAAC,CAAC,GAAG,kCAAkC,CAAC,CAAC,CAAC,GAAG,YAAY,CA6B7E"}
@@ -1,17 +1,34 @@
1
- export interface ButtonVariantTheme {
1
+ export interface BaseVariantTheme {
2
2
  backgroundColor: string;
3
3
  pressedBackgroundColor: string;
4
4
  hoverBackgroundColor: string;
5
5
  focusBorderColor: string;
6
6
  }
7
- export interface SubtleButtonVariantTheme extends ButtonVariantTheme {
7
+ export interface GhostVariantTheme extends BaseVariantTheme {
8
8
  color: string;
9
9
  hoverColor: string;
10
10
  activeColor: string;
11
11
  }
12
- export interface DisabledButtonVariantTheme extends ButtonVariantTheme {
12
+ export interface BaseButtonTheme {
13
+ default: BaseVariantTheme;
14
+ }
15
+ export interface BaseButtonWithVariant extends BaseButtonTheme {
16
+ ghost: GhostVariantTheme;
17
+ }
18
+ export interface SubtleBaseVariantTheme extends BaseVariantTheme {
19
+ color: string;
20
+ hoverColor: string;
21
+ activeColor: string;
22
+ }
23
+ export interface SubtleButtonTheme extends BaseButtonTheme {
24
+ default: SubtleBaseVariantTheme;
25
+ }
26
+ export interface DisabledBaseVariantTheme extends BaseVariantTheme {
13
27
  borderColor: string;
14
28
  }
29
+ export interface DisabledButtonTheme extends BaseButtonTheme {
30
+ default: DisabledBaseVariantTheme;
31
+ }
15
32
  export interface ButtonTheme {
16
33
  borderRadius: number;
17
34
  borderWidth: {
@@ -40,12 +57,12 @@ export interface ButtonTheme {
40
57
  duration: string;
41
58
  timingFunction: string;
42
59
  };
43
- default: ButtonVariantTheme;
44
- primary: ButtonVariantTheme;
45
- white: ButtonVariantTheme;
46
- subtle: SubtleButtonVariantTheme;
47
- 'subtle-dark': SubtleButtonVariantTheme;
48
- disabled: DisabledButtonVariantTheme;
60
+ default: BaseButtonTheme;
61
+ primary: BaseButtonWithVariant;
62
+ white: BaseButtonTheme;
63
+ subtle: SubtleButtonTheme;
64
+ 'subtle-dark': SubtleButtonTheme;
65
+ disabled: DisabledButtonTheme;
49
66
  }
50
67
  export declare const button: ButtonTheme;
51
68
  //# sourceMappingURL=button.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"button.d.ts","sourceRoot":"","sources":["../../../../src/themes/late-ocean/button.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,kBAAkB;IACjC,eAAe,EAAE,MAAM,CAAC;IACxB,sBAAsB,EAAE,MAAM,CAAC;IAC/B,oBAAoB,EAAE,MAAM,CAAC;IAC7B,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,wBAAyB,SAAQ,kBAAkB;IAClE,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,0BAA2B,SAAQ,kBAAkB;IACpE,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,WAAW;IAC1B,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE;QACX,QAAQ,EAAE,MAAM,CAAC;QACjB,KAAK,EAAE,MAAM,CAAC;KACf,CAAC;IACF,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE;QACL,IAAI,EAAE;YACJ,OAAO,EAAE,MAAM,CAAC;YAChB,KAAK,EAAE,MAAM,CAAC;YACd,MAAM,EAAE,MAAM,CAAC;SAChB,CAAC;QACF,MAAM,EAAE;YACN,KAAK,EAAE,MAAM,CAAC;SACf,CAAC;KACH,CAAC;IACF,cAAc,EAAE;QACd,OAAO,EAAE,MAAM,CAAC;QAChB,KAAK,EAAE,MAAM,CAAC;QACd,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,UAAU,EAAE;QACV,QAAQ,EAAE,MAAM,CAAC;QACjB,cAAc,EAAE,MAAM,CAAC;KACxB,CAAC;IACF,OAAO,EAAE,kBAAkB,CAAC;IAC5B,OAAO,EAAE,kBAAkB,CAAC;IAC5B,KAAK,EAAE,kBAAkB,CAAC;IAC1B,MAAM,EAAE,wBAAwB,CAAC;IACjC,aAAa,EAAE,wBAAwB,CAAC;IACxC,QAAQ,EAAE,0BAA0B,CAAC;CACtC;AAED,eAAO,MAAM,MAAM,EAAE,WAuEpB,CAAC"}
1
+ {"version":3,"file":"button.d.ts","sourceRoot":"","sources":["../../../../src/themes/late-ocean/button.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,gBAAgB;IAC/B,eAAe,EAAE,MAAM,CAAC;IACxB,sBAAsB,EAAE,MAAM,CAAC;IAC/B,oBAAoB,EAAE,MAAM,CAAC;IAC7B,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,iBAAkB,SAAQ,gBAAgB;IACzD,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;CACrB;AACD,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,gBAAgB,CAAC;CAC3B;AAED,MAAM,WAAW,qBAAsB,SAAQ,eAAe;IAC5D,KAAK,EAAE,iBAAiB,CAAC;CAC1B;AAED,MAAM,WAAW,sBAAuB,SAAQ,gBAAgB;IAC9D,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,iBAAkB,SAAQ,eAAe;IACxD,OAAO,EAAE,sBAAsB,CAAC;CACjC;AAED,MAAM,WAAW,wBAAyB,SAAQ,gBAAgB;IAChE,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,mBAAoB,SAAQ,eAAe;IAC1D,OAAO,EAAE,wBAAwB,CAAC;CACnC;AAED,MAAM,WAAW,WAAW;IAC1B,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE;QACX,QAAQ,EAAE,MAAM,CAAC;QACjB,KAAK,EAAE,MAAM,CAAC;KACf,CAAC;IACF,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE;QACL,IAAI,EAAE;YACJ,OAAO,EAAE,MAAM,CAAC;YAChB,KAAK,EAAE,MAAM,CAAC;YACd,MAAM,EAAE,MAAM,CAAC;SAChB,CAAC;QACF,MAAM,EAAE;YACN,KAAK,EAAE,MAAM,CAAC;SACf,CAAC;KACH,CAAC;IACF,cAAc,EAAE;QACd,OAAO,EAAE,MAAM,CAAC;QAChB,KAAK,EAAE,MAAM,CAAC;QACd,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,UAAU,EAAE;QACV,QAAQ,EAAE,MAAM,CAAC;QACjB,cAAc,EAAE,MAAM,CAAC;KACxB,CAAC;IACF,OAAO,EAAE,eAAe,CAAC;IACzB,OAAO,EAAE,qBAAqB,CAAC;IAC/B,KAAK,EAAE,eAAe,CAAC;IACvB,MAAM,EAAE,iBAAiB,CAAC;IAC1B,aAAa,EAAE,iBAAiB,CAAC;IACjC,QAAQ,EAAE,mBAAmB,CAAC;CAC/B;AAED,eAAO,MAAM,MAAM,EAAE,WA4FpB,CAAC"}
@@ -1,4 +1,6 @@
1
- import type { RenderResult } from '@testing-library/react';
1
+ import type { RenderResult as RenderResultWeb } from '@testing-library/react';
2
+ import type { RenderAPI as RenderAPINative } from '@testing-library/react-native';
2
3
  import type { ReactElement } from 'react';
3
- export declare function renderWithProviders(element: ReactElement): RenderResult;
4
+ export declare function renderWebWithProviders(element: ReactElement): RenderResultWeb;
5
+ export declare function renderNativeWithProviders(element: ReactElement): RenderAPINative;
4
6
  //# sourceMappingURL=renderWithProvidersUtils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"renderWithProvidersUtils.d.ts","sourceRoot":"","sources":["../../../../src/utils/tests/renderWithProvidersUtils.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAE3D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAG1C,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,YAAY,GAAG,YAAY,CAEvE"}
1
+ {"version":3,"file":"renderWithProvidersUtils.d.ts","sourceRoot":"","sources":["../../../../src/utils/tests/renderWithProvidersUtils.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,IAAI,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE9E,OAAO,KAAK,EAAE,SAAS,IAAI,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAElF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAG1C,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,YAAY,GAAG,eAAe,CAE7E;AAED,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,YAAY,GAAG,eAAe,CAEhF"}
@@ -349,6 +349,20 @@ function Avatar(_ref6) {
349
349
  });
350
350
  }
351
351
 
352
+ var hasVariant = function (button, variant) {
353
+ return variant in button;
354
+ };
355
+
356
+ function getVariantValuesIfExist(theme, type, variant) {
357
+ var button = theme.kitt.button[type];
358
+
359
+ if (hasVariant(button, variant)) {
360
+ return button[variant];
361
+ }
362
+
363
+ return theme.kitt.button[type]["default"];
364
+ }
365
+
352
366
  var StyledPressable = /*#__PURE__*/styled.Pressable.withConfig({
353
367
  displayName: "AnimatedButtonPressable__StyledPressable"
354
368
  })(["", ""], function (_ref) {
@@ -367,6 +381,7 @@ var AnimatedButtonPressable = /*#__PURE__*/forwardRef(function (_ref3, ref) {
367
381
  disabled = _ref3.disabled,
368
382
  accessibilityRole = _ref3.accessibilityRole,
369
383
  $type = _ref3.$type,
384
+ $variant = _ref3.$variant,
370
385
  $isStretch = _ref3.$isStretch,
371
386
  href = _ref3.href,
372
387
  hrefAttrs = _ref3.hrefAttrs,
@@ -375,9 +390,11 @@ var AnimatedButtonPressable = /*#__PURE__*/forwardRef(function (_ref3, ref) {
375
390
  var theme = /*#__PURE__*/useTheme();
376
391
  var pressed = useSharedValue(0);
377
392
  var color = useSharedValue(0);
378
- var _theme$kitt$button$$t = theme.kitt.button[$type],
379
- backgroundColor = _theme$kitt$button$$t.backgroundColor,
380
- pressedBackgroundColor = _theme$kitt$button$$t.pressedBackgroundColor;
393
+
394
+ var _getVariantValuesIfEx = getVariantValuesIfExist(theme, $type, $variant),
395
+ backgroundColor = _getVariantValuesIfEx.backgroundColor,
396
+ pressedBackgroundColor = _getVariantValuesIfEx.pressedBackgroundColor;
397
+
381
398
  var scale = theme.kitt.button.scale;
382
399
  var scaleStyles = useAnimatedStyle(function () {
383
400
  var _f = function () {
@@ -405,7 +422,7 @@ var AnimatedButtonPressable = /*#__PURE__*/forwardRef(function (_ref3, ref) {
405
422
  };
406
423
  _f.asString = "function _f(){const{interpolateColor,color,backgroundColor,pressedBackgroundColor,withSpring,pressed,scale}=jsThis._closure;{return{backgroundColor:interpolateColor(color.value,[0,1],[backgroundColor,pressedBackgroundColor]),transform:[{scale:withSpring(pressed.value?scale.base.active:scale.base.default)}]};}}";
407
424
  _f.__workletHash = 5368461229978;
408
- _f.__location = "/home/circleci/repo/@ornikar/kitt-universal/src/Button/AnimatedButtonPressable.tsx (53:41)";
425
+ _f.__location = "/home/circleci/repo/@ornikar/kitt-universal/src/Button/AnimatedButtonPressable.tsx (56:41)";
409
426
  _f.__optimalization = 2;
410
427
 
411
428
  global.__reanimatedWorkletInit(_f);
@@ -466,10 +483,11 @@ var BaseStyledButtonPressable = /*#__PURE__*/styled.View.withConfig({
466
483
  }, function (_ref6) {
467
484
  var theme = _ref6.theme,
468
485
  $isDisabled = _ref6.$isDisabled,
469
- $type = _ref6.$type;
470
- if ($isDisabled) return theme.kitt.button.disabled.backgroundColor;
486
+ $type = _ref6.$type,
487
+ $variant = _ref6.$variant;
488
+ if ($isDisabled) return theme.kitt.button.disabled["default"].backgroundColor;
471
489
  if (Platform.OS !== 'web') return 'transparent';
472
- return theme.kitt.button[$type].backgroundColor;
490
+ return getVariantValuesIfExist(theme, $type, $variant).backgroundColor;
473
491
  }, function (_ref7) {
474
492
  var theme = _ref7.theme,
475
493
  $isLarge = _ref7.$isLarge,
@@ -520,12 +538,12 @@ function isSubtle(type) {
520
538
  return type.startsWith('subtle');
521
539
  }
522
540
 
523
- var _excluded$f = ["type", "isDisabled", "$isStretch", "icon", "children"];
541
+ var _excluded$f = ["type", "variant", "isDisabled", "$isStretch", "icon", "children"];
524
542
 
525
- var getTextColorByType = function (type) {
543
+ var getTextColorByType = function (type, variant) {
526
544
  switch (type) {
527
545
  case 'primary':
528
- return 'white';
546
+ return variant === 'ghost' ? 'primary' : 'white';
529
547
 
530
548
  case 'white':
531
549
  return 'white';
@@ -654,13 +672,14 @@ var ButtonContentContainer = /*#__PURE__*/styled.View.withConfig({
654
672
  });
655
673
  function ButtonContent(_ref7) {
656
674
  var type = _ref7.type,
675
+ variant = _ref7.variant,
657
676
  isDisabled = _ref7.isDisabled,
658
677
  $isStretch = _ref7.$isStretch,
659
678
  icon = _ref7.icon,
660
679
  children = _ref7.children,
661
680
  props = _objectWithoutProperties(_ref7, _excluded$f);
662
681
 
663
- var color = isDisabled ? 'black-light' : getTextColorByType(type);
682
+ var color = isDisabled ? 'black-light' : getTextColorByType(type, variant);
664
683
  return /*#__PURE__*/jsx(ButtonContentContainer, {
665
684
  $isSubtle: isSubtle(type),
666
685
  $isStretch: $isStretch,
@@ -683,7 +702,7 @@ var StyledDisabled = /*#__PURE__*/styled.View.withConfig({
683
702
  var _theme$kitt$button = theme.kitt.button,
684
703
  borderWidth = _theme$kitt$button.borderWidth,
685
704
  disabled = _theme$kitt$button.disabled;
686
- return "".concat(borderWidth.disabled, "px solid ").concat(disabled.borderColor);
705
+ return "".concat(borderWidth.disabled, "px solid ").concat(disabled["default"].borderColor);
687
706
  }, function (_ref2) {
688
707
  var theme = _ref2.theme;
689
708
  return theme.kitt.button.borderRadius;
@@ -693,6 +712,8 @@ var Button = /*#__PURE__*/forwardRef(function (_ref, ref) {
693
712
  var children = _ref.children,
694
713
  _ref$type = _ref.type,
695
714
  type = _ref$type === void 0 ? 'default' : _ref$type,
715
+ _ref$variant = _ref.variant,
716
+ variant = _ref$variant === void 0 ? 'default' : _ref$variant,
696
717
  disabled = _ref.disabled,
697
718
  stretch = _ref.stretch,
698
719
  large = _ref.large,
@@ -705,6 +726,11 @@ var Button = /*#__PURE__*/forwardRef(function (_ref, ref) {
705
726
  _ref$accessibilityRol = _ref.accessibilityRole,
706
727
  accessibilityRole = _ref$accessibilityRol === void 0 ? 'button' : _ref$accessibilityRol,
707
728
  onPress = _ref.onPress;
729
+
730
+ if ((process.env.NODE_ENV !== "production") && variant === 'ghost' && type !== 'primary') {
731
+ throw new Error('variant=ghost is only allowed with type=primary');
732
+ }
733
+
708
734
  return /*#__PURE__*/jsx(AnimatedButtonPressable, {
709
735
  ref: ref,
710
736
  accessibilityRole: accessibilityRole,
@@ -714,14 +740,17 @@ var Button = /*#__PURE__*/forwardRef(function (_ref, ref) {
714
740
  disabled: disabled,
715
741
  $isStretch: stretch,
716
742
  $type: type,
743
+ $variant: variant,
717
744
  onPress: onPress,
718
745
  children: /*#__PURE__*/jsxs(BaseStyledButtonPressable, {
719
746
  $type: type,
747
+ $variant: variant,
720
748
  $isStretch: stretch,
721
749
  $isLarge: large,
722
750
  $isDisabled: disabled,
723
751
  children: [/*#__PURE__*/jsx(ButtonContent, {
724
752
  type: type,
753
+ variant: variant,
725
754
  $isStretch: stretch,
726
755
  isDisabled: disabled,
727
756
  icon: icon,
@@ -810,8 +839,12 @@ function ExternalLink(_ref) {
810
839
  rest = _objectWithoutProperties(_ref, _excluded$e);
811
840
 
812
841
  return /*#__PURE__*/jsx(Component, _objectSpread(_objectSpread({}, rest), {}, {
813
- onPress: function handleOnPress() {
814
- if (onPress) onPress();
842
+ onPress: function handleOnPress(e) {
843
+ if (onPress) {
844
+ onPress(e);
845
+ if (e !== null && e !== void 0 && e.defaultPrevented) return;
846
+ }
847
+
815
848
  if (!href) return;
816
849
 
817
850
  switch (openLinkBehavior["native"]) {
@@ -925,47 +958,68 @@ var button = {
925
958
  timingFunction: 'cubic-bezier(0.645, 0.045, 0.355, 1)'
926
959
  },
927
960
  "default": {
928
- backgroundColor: 'rgba(0, 0, 0, 0.05)',
929
- pressedBackgroundColor: 'rgba(0, 0, 0, 0.1)',
930
- hoverBackgroundColor: 'rgba(0, 0, 0, 0.1)',
931
- focusBorderColor: 'rgba(0, 0, 0, 0.1)'
961
+ "default": {
962
+ backgroundColor: 'rgba(0, 0, 0, 0.05)',
963
+ pressedBackgroundColor: 'rgba(0, 0, 0, 0.1)',
964
+ hoverBackgroundColor: 'rgba(0, 0, 0, 0.1)',
965
+ focusBorderColor: 'rgba(0, 0, 0, 0.1)'
966
+ }
932
967
  },
933
968
  primary: {
934
- backgroundColor: colors.primary,
935
- pressedBackgroundColor: colors.primaryLight,
936
- hoverBackgroundColor: colors.primaryLight,
937
- focusBorderColor: 'rgba(76, 52, 224, 0.2)'
969
+ "default": {
970
+ backgroundColor: colors.primary,
971
+ pressedBackgroundColor: colors.primaryLight,
972
+ hoverBackgroundColor: colors.primaryLight,
973
+ focusBorderColor: 'rgba(76, 52, 224, 0.2)'
974
+ },
975
+ ghost: {
976
+ backgroundColor: colors.uiBackgroundLight,
977
+ pressedBackgroundColor: colors.uiBackground,
978
+ hoverBackgroundColor: colors.hover,
979
+ focusBorderColor: 'rgba(255,255,255, 0.4)',
980
+ color: colors.primary,
981
+ hoverColor: colors.hover,
982
+ activeColor: colors.hover
983
+ }
938
984
  },
939
985
  white: {
940
- backgroundColor: 'rgba(255, 255, 255, 0.05)',
941
- pressedBackgroundColor: 'rgba(255, 255, 255, 0.1)',
942
- hoverBackgroundColor: 'rgba(255, 255, 255, 0.1)',
943
- focusBorderColor: 'rgba(255, 255, 255, 0.1)'
986
+ "default": {
987
+ backgroundColor: 'rgba(255, 255, 255, 0.05)',
988
+ pressedBackgroundColor: 'rgba(255, 255, 255, 0.1)',
989
+ hoverBackgroundColor: 'rgba(255, 255, 255, 0.1)',
990
+ focusBorderColor: 'rgba(255, 255, 255, 0.1)'
991
+ }
944
992
  },
945
993
  subtle: {
946
- backgroundColor: colors.transparent,
947
- pressedBackgroundColor: colors.transparent,
948
- hoverBackgroundColor: colors.transparent,
949
- focusBorderColor: 'rgba(76, 52, 224, 0.2)',
950
- color: colors.primary,
951
- hoverColor: 'rgba(76, 52, 224, 0.8)',
952
- activeColor: 'rgba(76, 52, 224, 0.8)'
994
+ "default": {
995
+ backgroundColor: colors.transparent,
996
+ pressedBackgroundColor: colors.transparent,
997
+ hoverBackgroundColor: colors.transparent,
998
+ focusBorderColor: 'rgba(76, 52, 224, 0.2)',
999
+ color: colors.primary,
1000
+ hoverColor: 'rgba(76, 52, 224, 0.8)',
1001
+ activeColor: 'rgba(76, 52, 224, 0.8)'
1002
+ }
953
1003
  },
954
1004
  'subtle-dark': {
955
- backgroundColor: colors.transparent,
956
- pressedBackgroundColor: colors.transparent,
957
- hoverBackgroundColor: colors.transparent,
958
- focusBorderColor: 'rgba(0, 0, 0, 0.1)',
959
- color: colors.black,
960
- hoverColor: 'rgba(0, 0, 0, 0.8)',
961
- activeColor: 'rgba(0, 0, 0, 0.8)'
1005
+ "default": {
1006
+ backgroundColor: colors.transparent,
1007
+ pressedBackgroundColor: colors.transparent,
1008
+ hoverBackgroundColor: colors.transparent,
1009
+ focusBorderColor: 'rgba(0, 0, 0, 0.1)',
1010
+ color: colors.black,
1011
+ hoverColor: 'rgba(0, 0, 0, 0.8)',
1012
+ activeColor: 'rgba(0, 0, 0, 0.8)'
1013
+ }
962
1014
  },
963
1015
  disabled: {
964
- backgroundColor: colors.disabled,
965
- pressedBackgroundColor: colors.disabled,
966
- hoverBackgroundColor: colors.disabled,
967
- focusBorderColor: lateOceanColorPalette.black100,
968
- borderColor: lateOceanColorPalette.black100
1016
+ "default": {
1017
+ backgroundColor: colors.disabled,
1018
+ pressedBackgroundColor: colors.disabled,
1019
+ hoverBackgroundColor: colors.disabled,
1020
+ focusBorderColor: lateOceanColorPalette.black100,
1021
+ borderColor: lateOceanColorPalette.black100
1022
+ }
969
1023
  }
970
1024
  };
971
1025
 
@@ -1245,14 +1299,14 @@ var iconButton = {
1245
1299
  },
1246
1300
  disabled: {
1247
1301
  scale: 1,
1248
- backgroundColor: button.disabled.backgroundColor,
1249
- borderColor: button.disabled.borderColor
1302
+ backgroundColor: button.disabled["default"].backgroundColor,
1303
+ borderColor: button.disabled["default"].borderColor
1250
1304
  },
1251
1305
  "default": {
1252
- pressedBackgroundColor: button["default"].pressedBackgroundColor
1306
+ pressedBackgroundColor: button["default"]["default"].pressedBackgroundColor
1253
1307
  },
1254
1308
  white: {
1255
- pressedBackgroundColor: button.white.hoverBackgroundColor
1309
+ pressedBackgroundColor: button.white["default"].hoverBackgroundColor
1256
1310
  }
1257
1311
  };
1258
1312