@ovotech/element-native 0.0.2 → 1.0.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.
@@ -1,7 +1,7 @@
1
1
  import React, { PropsWithChildren, ComponentProps, Ref } from 'react';
2
2
  import { TouchableOpacityProps, TouchableOpacity } from 'react-native';
3
3
  import { IconName } from '../Icon/Icon';
4
- export declare type CTAVariantName = 'primary' | 'secondary' | 'destructive';
4
+ export declare type CTAVariantName = 'primary' | 'secondary' | 'destructive' | 'missionPrimary' | 'missionSecondary';
5
5
  export declare type CTAVariant = {
6
6
  background: string;
7
7
  foreground: string;
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
  import { SvgProps } from 'react-native-svg';
3
- export declare type IconName = 'caret-down' | 'caret-right' | 'chevron-left' | 'chevron-right' | 'chevron-up' | 'chevron-down' | 'cross' | 'new-window' | 'euro' | 'pound' | 'dollar' | 'check' | 'gas' | 'electricity' | 'link' | 'download' | 'plus' | 'minus';
3
+ export declare type IconName = 'caret-down' | 'caret-right' | 'chevron-left' | 'chevron-right' | 'chevron-up' | 'chevron-down' | 'cross' | 'new-window' | 'euro' | 'pound' | 'dollar' | 'check' | 'gas' | 'electricity' | 'link' | 'download' | 'plus' | 'minus' | 'logo';
4
4
  export declare type IconBase = React.FunctionComponent<SvgProps>;
5
5
  declare type Props = SvgProps & {
6
6
  name: IconName | (string & {});
@@ -10,7 +10,7 @@ var __assign = (this && this.__assign) || function () {
10
10
  return __assign.apply(this, arguments);
11
11
  };
12
12
  import React, { createContext, useContext } from 'react';
13
- import { CaretDown, CaretRight, ChevronLeft, ChevronRight, ChevronUp, ChevronDown, Cross, Check, Euro, Pound, Dollar, NewWindow, Gas, Electricity, Link, Download, Plus, Minus, } from './icons';
13
+ import { CaretDown, CaretRight, ChevronLeft, ChevronRight, ChevronUp, ChevronDown, Cross, Check, Euro, Pound, Dollar, NewWindow, Gas, Electricity, Link, Download, Plus, Minus, Logo, } from './icons';
14
14
  var defaultIcons = {
15
15
  'caret-down': CaretDown,
16
16
  'caret-right': CaretRight,
@@ -30,6 +30,7 @@ var defaultIcons = {
30
30
  download: Download,
31
31
  plus: Plus,
32
32
  minus: Minus,
33
+ logo: Logo,
33
34
  };
34
35
  var IconsContext = createContext(null);
35
36
  function useIcons() {
@@ -11,6 +11,5 @@ var __assign = (this && this.__assign) || function () {
11
11
  };
12
12
  import React from 'react';
13
13
  import { Path, Svg } from 'react-native-svg';
14
- var Electricity = function (props) { return (React.createElement(Svg, __assign({ viewBox: "0 0 16 16" }, props),
15
- React.createElement(Path, { d: "M6.246 9.44l1 6.56L14.5 4H10l1.5-4H5c-.382 1.015-1.93 5.196-2.834 7.64L1.5 9.44h4.746zm-2.161-1.8A8716.587 8716.587 0 016.249 1.8h2.654l-1.5 4h3.906l-3.033 5.016-.484-3.176H4.085z", fill: "currentColor" }))); };
16
- export { Electricity };
14
+ export var Electricity = function (props) { return (React.createElement(Svg, __assign({ viewBox: "0 0 16 16" }, props),
15
+ React.createElement(Path, { d: "M9.52,0V6.22h4L6,16V9.78H2Z", fill: "currentColor" }))); };
@@ -11,6 +11,6 @@ var __assign = (this && this.__assign) || function () {
11
11
  };
12
12
  import React from 'react';
13
13
  import { Path, Svg } from 'react-native-svg';
14
- var Gas = function (props) { return (React.createElement(Svg, __assign({ viewBox: "0 0 16 16" }, props),
15
- React.createElement(Path, { d: "M8 16c1.59-.001 3.116-.564 4.24-1.565 1.126-1.001 1.758-2.358 1.76-3.774C14 7 8 0 8 0S2 7 2 10.661c0 1.473.634 2.773 1.76 3.774 1.124 1 2.65 1.564 4.24 1.565zm-1.5-3.114C6.5 11.877 7.5 10.5 8 10c.5.5 1.5 2 1.5 2.886 0 .354-.158.693-.44.944a1.6 1.6 0 01-1.06.39 1.6 1.6 0 01-1.06-.39c-.282-.25-.44-.59-.44-.944zM8 2.5c1.349 1.65 4 5.5 4 8.161a3.227 3.227 0 01-.531 1.739C11 10 8 6.5 8 6.5S5 10 4.531 12.4A3.227 3.227 0 014 10.661C4 8 6.651 4.151 8 2.5z", fill: "currentColor" }))); };
16
- export { Gas };
14
+ export var Gas = function (props) { return (React.createElement(Svg, __assign({ viewBox: "0 0 16 16" }, props),
15
+ React.createElement(Path, { d: "M8 0v.31a3.59 3.59 0 01-2.09 3.25 4.68 4.68 0 00-2.8 4.22A4.77 4.77 0 008 12.44v-.31a3.57 3.57 0 012.09-3.24 4.7 4.7 0 002.8-4.22A4.78 4.78 0 008 0z", fill: "currentColor" }),
16
+ React.createElement(Path, { d: "M1.33 14.22V16h13.34v-1.78z", fill: "currentColor", opacity: 0.3 }))); };
@@ -0,0 +1,15 @@
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
12
+ import React from 'react';
13
+ import { Path, Svg } from 'react-native-svg';
14
+ export var Logo = function (props) { return (React.createElement(Svg, __assign({ viewBox: "0 0 155 64", width: 155, height: 64 }, props),
15
+ React.createElement(Path, { fill: "#0a9928", d: "M10.6,19a15.29,15.29,0,0,1,8.8,2.7l-.9-2.3H28l3.2,11.4.7,2.6s.4-1.3.7-2.6l3.3-11.4h9.5l-.8,2.4a14.59,14.59,0,0,1,8.8-2.7,6.6,6.6,0,0,1,1.4.1L49.9.8.7,14l1.9,7.2A15.22,15.22,0,0,1,10.6,19Zm42.8,8.3a4.62,4.62,0,0,0-4.7,4.9A4.49,4.49,0,0,0,53.4,37a4.54,4.54,0,0,0,4.7-4.8,3.75,3.75,0,0,0-.1-1.1l-.2-.6A4.44,4.44,0,0,0,53.4,27.3ZM15.2,32.1a4.62,4.62,0,0,0-4.7-4.9,4.62,4.62,0,0,0-4.7,4.9,4.49,4.49,0,0,0,4.7,4.8C13.3,37,15.2,35,15.2,32.1ZM53.4,44.9c-6.9,0-12.6-3.9-13.7-10.5L35.8,44.5H28.1L24.2,34.4C23.1,41,17.4,44.9,10.5,44.9a8.6,8.6,0,0,1-1.6-.1l4.9,18.4L63,50l-1.9-7.1A14.7,14.7,0,0,1,53.4,44.9ZM70.8,33.5a4.7,4.7,0,0,0,4.9,5c3.6,0,4.6-2.2,5.6-2.2a1.06,1.06,0,0,1,1,1.2c0,1.3-3.4,3.4-6.6,3.4-5.3,0-7.6-4.1-7.6-8.5s2.8-8.5,7.4-8.5S82.6,28,82.6,32c0,1-.3,1.5-1.5,1.5Zm9.1-2.1c0-2.4-1.4-5.1-4.4-5.1-3.4-.1-4.6,2.6-4.7,5.1Zm4.9-6a1.34,1.34,0,0,1,1.4-1.5,1.39,1.39,0,0,1,1.4,1.5v.7l.1.1A5.53,5.53,0,0,1,92.3,24c2.6,0,5.8,1.6,5.8,6.3v9.2A1.34,1.34,0,0,1,96.7,41a1.39,1.39,0,0,1-1.4-1.5v-9a3.81,3.81,0,1,0-7.6,0v9A1.34,1.34,0,0,1,86.3,41a1.39,1.39,0,0,1-1.4-1.5V25.4ZM103,33.5a4.7,4.7,0,0,0,4.9,5c3.6,0,4.6-2.2,5.6-2.2a1.06,1.06,0,0,1,1,1.2c0,1.3-3.4,3.4-6.6,3.4-5.3,0-7.6-4.1-7.6-8.5s2.8-8.5,7.4-8.5,7.1,4.1,7.1,8.1c0,1-.3,1.5-1.5,1.5Zm9.1-2.1c0-2.4-1.4-5.1-4.4-5.1-3.4-.1-4.6,2.6-4.7,5.1Zm4.9-6a1.34,1.34,0,0,1,1.4-1.5,1.39,1.39,0,0,1,1.4,1.5v1.4h.1c.6-1.3,2.1-2.9,3.7-2.9a1.34,1.34,0,0,1,1.5,1.4c0,.8-.6,1.3-1.7,1.5-1.6.3-3.6,1.5-3.6,4.7v7.9a1.34,1.34,0,0,1-1.4,1.5,1.39,1.39,0,0,1-1.4-1.5Zm23,14.1c0,4.9-3,7.9-7.5,7.9-2.8,0-6.3-1.6-6.3-3a1.17,1.17,0,0,1,1.2-1.3c1.2,0,2.5,1.9,5.4,1.9,3.5,0,4.5-2.7,4.5-5.1V38.5h-.1a4.75,4.75,0,0,1-4.2,2.4c-4.7,0-7.3-4.1-7.3-8.5s2.6-8.5,7.3-8.5a5.53,5.53,0,0,1,4.2,2.1h.1v-.7c0-1,.7-1.3,1.5-1.3a1.31,1.31,0,0,1,1.3,1.3V39.5Zm-7-1c3.4,0,4.5-3.3,4.5-6.1s-1.2-6.1-4.5-6.1-4.5,3.3-4.5,6.1S129.6,38.5,133,38.5Zm9.4-11.9a5.37,5.37,0,0,1-.4-1.5,1.22,1.22,0,0,1,1.2-1.2,1.41,1.41,0,0,1,1.4,1l3.8,11.4h.1l3.7-11.4a1.3,1.3,0,0,1,1.3-1,1.22,1.22,0,0,1,1.2,1.2,5.37,5.37,0,0,1-.4,1.5l-6.9,19.7a1.38,1.38,0,0,1-1.3,1,1.22,1.22,0,0,1-1.2-1.2,5.37,5.37,0,0,1,.4-1.5L147,40Z" }))); };
@@ -16,3 +16,4 @@ export * from './Minus';
16
16
  export * from './NewWindow';
17
17
  export * from './Plus';
18
18
  export * from './Pound';
19
+ export * from './Logo';
@@ -1,4 +1,44 @@
1
1
  import deepMerge from 'deepmerge';
2
+ var brand = {
3
+ focus: { base: '#028FC8' },
4
+ primary: {
5
+ lightest: '#B6D727',
6
+ lighter: '#9DC431',
7
+ light: '#6CBD27',
8
+ base: '#0A9828',
9
+ dark: '#0D8426',
10
+ darker: '#006945',
11
+ },
12
+ grey: {
13
+ lightest: '#FFFFFF',
14
+ lighter: '#F9F9F9',
15
+ light: '#F3F3F3',
16
+ base: '#D1D6DE',
17
+ dark: '#555C6B',
18
+ darker: '#2F3749',
19
+ darkest: '#111111',
20
+ },
21
+ mission: {
22
+ base: '#DE1D8D',
23
+ dark: '#C6187D',
24
+ },
25
+ complementary: {
26
+ base: '#197278',
27
+ },
28
+ electricity: {
29
+ base: '#E7A234',
30
+ dark: '#D1760A',
31
+ },
32
+ gas: {
33
+ base: '#26ADE4',
34
+ dark: '#028FC8',
35
+ },
36
+ error: {
37
+ lightest: '#FCF3F5',
38
+ base: '#C7153E',
39
+ dark: '#AE0A30',
40
+ },
41
+ };
2
42
  export var defaultTokens = {
3
43
  borderWidths: {
4
44
  standard: '1px',
@@ -33,28 +73,35 @@ export var defaultTokens = {
33
73
  12: '48px',
34
74
  },
35
75
  fonts: {
36
- display: 'Arial',
37
- body: 'Arial',
76
+ display: 'Montserrat-Regular',
77
+ body: 'OpenSans-Regular',
38
78
  monospace: 'Courier',
39
79
  },
40
80
  lineHeights: {
41
81
  standard: 1.5,
42
82
  },
43
- fontSizes: ['12px', '14px', '16px', '20px', '24px', '28px', '32px'],
83
+ fontSizes: ['12px', '14px', '16px', '20px', '24px', '28px', '32px', '48px'],
44
84
  fontWeights: {
45
85
  normal: 400,
46
86
  bold: 700,
47
87
  semiBold: 600,
48
88
  },
49
89
  colors: {
50
- primary: '#0C7494',
51
- primaryAlt: '#096885',
90
+ primary: '#0D8426',
91
+ primaryAlt: '#006945',
52
92
  primaryContrast: '#FFFFFF',
53
93
  primaryMuted: '#F3F7F9',
54
94
  error: '#C7153E',
55
95
  errorAlt: '#AE0A30',
56
96
  errorContrast: '#FFFFFF',
57
97
  errorMuted: '#FCF3F5',
98
+ focus: '#028FC8',
99
+ canvas: '#FFFFFF',
100
+ body: '#555C6B',
101
+ heading: '#2F3749',
102
+ border: '#2F3749',
103
+ canvasMuted: '#F9F9F9',
104
+ borderMuted: '#F3F3F3',
58
105
  info: '#147D88',
59
106
  infoAlt: '#05696C',
60
107
  infoContrast: '#FFFFFF',
@@ -67,13 +114,11 @@ export var defaultTokens = {
67
114
  successAlt: '#1E6937',
68
115
  successContrast: '#FFFFFF',
69
116
  successMuted: '#F4F9F6',
70
- focus: '#2A71BE',
71
- canvas: '#FFFFFF',
72
- body: '#555C6B',
73
- heading: '#2F3749',
74
- border: '#2F3749',
75
- canvasMuted: '#F9F9F9',
76
- borderMuted: '#D9D9D9',
117
+ mission: '#DE1D8D',
118
+ missionMuted: '#FDF4F9',
119
+ missionAlt: '#C6187D',
120
+ missionContrast: '#FFFFFF',
121
+ brand: brand,
77
122
  },
78
123
  responsiveFontSizes: {
79
124
  small: ['12px', '14px'],
@@ -82,6 +127,7 @@ export var defaultTokens = {
82
127
  level2: ['24px', '28px'],
83
128
  level3: ['20px', '24px'],
84
129
  level4: ['16px', '20px'],
130
+ display: ['32px', '48px'],
85
131
  },
86
132
  };
87
133
  export function createTheme(customTheme, additional) {
@@ -216,6 +262,16 @@ export function createTheme(customTheme, additional) {
216
262
  foreground: colors.errorContrast,
217
263
  border: colors.error,
218
264
  },
265
+ missionPrimary: {
266
+ background: colors.mission,
267
+ foreground: colors.missionContrast,
268
+ border: colors.mission,
269
+ },
270
+ missionSecondary: {
271
+ background: colors.missionContrast,
272
+ foreground: colors.mission,
273
+ border: colors.mission,
274
+ },
219
275
  },
220
276
  },
221
277
  checkbox: {
@@ -387,8 +443,8 @@ export function createTheme(customTheme, additional) {
387
443
  paddingHorizontal: space[3],
388
444
  },
389
445
  tableRow: {
390
- backgroundColor: colors.canvasMuted,
391
- stripeColor: colors.canvas,
446
+ backgroundColor: colors.canvas,
447
+ stripeColor: colors.canvasMuted,
392
448
  },
393
449
  },
394
450
  accordion: {
@@ -56,6 +56,7 @@ var defaultIcons = {
56
56
  download: icons_1.Download,
57
57
  plus: icons_1.Plus,
58
58
  minus: icons_1.Minus,
59
+ logo: icons_1.Logo,
59
60
  };
60
61
  exports.defaultIcons = defaultIcons;
61
62
  var IconsContext = (0, react_1.createContext)(null);
@@ -1,3 +1,2 @@
1
1
  import { SvgProps } from 'react-native-svg';
2
- declare const Electricity: (props: SvgProps) => JSX.Element;
3
- export { Electricity };
2
+ export declare const Electricity: (props: SvgProps) => JSX.Element;
@@ -18,5 +18,5 @@ exports.Electricity = void 0;
18
18
  var react_1 = __importDefault(require("react"));
19
19
  var react_native_svg_1 = require("react-native-svg");
20
20
  var Electricity = function (props) { return (react_1.default.createElement(react_native_svg_1.Svg, __assign({ viewBox: "0 0 16 16" }, props),
21
- react_1.default.createElement(react_native_svg_1.Path, { d: "M6.246 9.44l1 6.56L14.5 4H10l1.5-4H5c-.382 1.015-1.93 5.196-2.834 7.64L1.5 9.44h4.746zm-2.161-1.8A8716.587 8716.587 0 016.249 1.8h2.654l-1.5 4h3.906l-3.033 5.016-.484-3.176H4.085z", fill: "currentColor" }))); };
21
+ react_1.default.createElement(react_native_svg_1.Path, { d: "M9.52,0V6.22h4L6,16V9.78H2Z", fill: "currentColor" }))); };
22
22
  exports.Electricity = Electricity;
@@ -1,3 +1,2 @@
1
1
  import { SvgProps } from 'react-native-svg';
2
- declare const Gas: (props: SvgProps) => JSX.Element;
3
- export { Gas };
2
+ export declare const Gas: (props: SvgProps) => JSX.Element;
@@ -18,5 +18,6 @@ exports.Gas = void 0;
18
18
  var react_1 = __importDefault(require("react"));
19
19
  var react_native_svg_1 = require("react-native-svg");
20
20
  var Gas = function (props) { return (react_1.default.createElement(react_native_svg_1.Svg, __assign({ viewBox: "0 0 16 16" }, props),
21
- react_1.default.createElement(react_native_svg_1.Path, { d: "M8 16c1.59-.001 3.116-.564 4.24-1.565 1.126-1.001 1.758-2.358 1.76-3.774C14 7 8 0 8 0S2 7 2 10.661c0 1.473.634 2.773 1.76 3.774 1.124 1 2.65 1.564 4.24 1.565zm-1.5-3.114C6.5 11.877 7.5 10.5 8 10c.5.5 1.5 2 1.5 2.886 0 .354-.158.693-.44.944a1.6 1.6 0 01-1.06.39 1.6 1.6 0 01-1.06-.39c-.282-.25-.44-.59-.44-.944zM8 2.5c1.349 1.65 4 5.5 4 8.161a3.227 3.227 0 01-.531 1.739C11 10 8 6.5 8 6.5S5 10 4.531 12.4A3.227 3.227 0 014 10.661C4 8 6.651 4.151 8 2.5z", fill: "currentColor" }))); };
21
+ react_1.default.createElement(react_native_svg_1.Path, { d: "M8 0v.31a3.59 3.59 0 01-2.09 3.25 4.68 4.68 0 00-2.8 4.22A4.77 4.77 0 008 12.44v-.31a3.57 3.57 0 012.09-3.24 4.7 4.7 0 002.8-4.22A4.78 4.78 0 008 0z", fill: "currentColor" }),
22
+ react_1.default.createElement(react_native_svg_1.Path, { d: "M1.33 14.22V16h13.34v-1.78z", fill: "currentColor", opacity: 0.3 }))); };
22
23
  exports.Gas = Gas;
@@ -0,0 +1,2 @@
1
+ import { SvgProps } from 'react-native-svg';
2
+ export declare const Logo: (props: SvgProps) => JSX.Element;
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __importDefault = (this && this.__importDefault) || function (mod) {
14
+ return (mod && mod.__esModule) ? mod : { "default": mod };
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.Logo = void 0;
18
+ var react_1 = __importDefault(require("react"));
19
+ var react_native_svg_1 = require("react-native-svg");
20
+ var Logo = function (props) { return (react_1.default.createElement(react_native_svg_1.Svg, __assign({ viewBox: "0 0 155 64", width: 155, height: 64 }, props),
21
+ react_1.default.createElement(react_native_svg_1.Path, { fill: "#0a9928", d: "M10.6,19a15.29,15.29,0,0,1,8.8,2.7l-.9-2.3H28l3.2,11.4.7,2.6s.4-1.3.7-2.6l3.3-11.4h9.5l-.8,2.4a14.59,14.59,0,0,1,8.8-2.7,6.6,6.6,0,0,1,1.4.1L49.9.8.7,14l1.9,7.2A15.22,15.22,0,0,1,10.6,19Zm42.8,8.3a4.62,4.62,0,0,0-4.7,4.9A4.49,4.49,0,0,0,53.4,37a4.54,4.54,0,0,0,4.7-4.8,3.75,3.75,0,0,0-.1-1.1l-.2-.6A4.44,4.44,0,0,0,53.4,27.3ZM15.2,32.1a4.62,4.62,0,0,0-4.7-4.9,4.62,4.62,0,0,0-4.7,4.9,4.49,4.49,0,0,0,4.7,4.8C13.3,37,15.2,35,15.2,32.1ZM53.4,44.9c-6.9,0-12.6-3.9-13.7-10.5L35.8,44.5H28.1L24.2,34.4C23.1,41,17.4,44.9,10.5,44.9a8.6,8.6,0,0,1-1.6-.1l4.9,18.4L63,50l-1.9-7.1A14.7,14.7,0,0,1,53.4,44.9ZM70.8,33.5a4.7,4.7,0,0,0,4.9,5c3.6,0,4.6-2.2,5.6-2.2a1.06,1.06,0,0,1,1,1.2c0,1.3-3.4,3.4-6.6,3.4-5.3,0-7.6-4.1-7.6-8.5s2.8-8.5,7.4-8.5S82.6,28,82.6,32c0,1-.3,1.5-1.5,1.5Zm9.1-2.1c0-2.4-1.4-5.1-4.4-5.1-3.4-.1-4.6,2.6-4.7,5.1Zm4.9-6a1.34,1.34,0,0,1,1.4-1.5,1.39,1.39,0,0,1,1.4,1.5v.7l.1.1A5.53,5.53,0,0,1,92.3,24c2.6,0,5.8,1.6,5.8,6.3v9.2A1.34,1.34,0,0,1,96.7,41a1.39,1.39,0,0,1-1.4-1.5v-9a3.81,3.81,0,1,0-7.6,0v9A1.34,1.34,0,0,1,86.3,41a1.39,1.39,0,0,1-1.4-1.5V25.4ZM103,33.5a4.7,4.7,0,0,0,4.9,5c3.6,0,4.6-2.2,5.6-2.2a1.06,1.06,0,0,1,1,1.2c0,1.3-3.4,3.4-6.6,3.4-5.3,0-7.6-4.1-7.6-8.5s2.8-8.5,7.4-8.5,7.1,4.1,7.1,8.1c0,1-.3,1.5-1.5,1.5Zm9.1-2.1c0-2.4-1.4-5.1-4.4-5.1-3.4-.1-4.6,2.6-4.7,5.1Zm4.9-6a1.34,1.34,0,0,1,1.4-1.5,1.39,1.39,0,0,1,1.4,1.5v1.4h.1c.6-1.3,2.1-2.9,3.7-2.9a1.34,1.34,0,0,1,1.5,1.4c0,.8-.6,1.3-1.7,1.5-1.6.3-3.6,1.5-3.6,4.7v7.9a1.34,1.34,0,0,1-1.4,1.5,1.39,1.39,0,0,1-1.4-1.5Zm23,14.1c0,4.9-3,7.9-7.5,7.9-2.8,0-6.3-1.6-6.3-3a1.17,1.17,0,0,1,1.2-1.3c1.2,0,2.5,1.9,5.4,1.9,3.5,0,4.5-2.7,4.5-5.1V38.5h-.1a4.75,4.75,0,0,1-4.2,2.4c-4.7,0-7.3-4.1-7.3-8.5s2.6-8.5,7.3-8.5a5.53,5.53,0,0,1,4.2,2.1h.1v-.7c0-1,.7-1.3,1.5-1.3a1.31,1.31,0,0,1,1.3,1.3V39.5Zm-7-1c3.4,0,4.5-3.3,4.5-6.1s-1.2-6.1-4.5-6.1-4.5,3.3-4.5,6.1S129.6,38.5,133,38.5Zm9.4-11.9a5.37,5.37,0,0,1-.4-1.5,1.22,1.22,0,0,1,1.2-1.2,1.41,1.41,0,0,1,1.4,1l3.8,11.4h.1l3.7-11.4a1.3,1.3,0,0,1,1.3-1,1.22,1.22,0,0,1,1.2,1.2,5.37,5.37,0,0,1-.4,1.5l-6.9,19.7a1.38,1.38,0,0,1-1.3,1,1.22,1.22,0,0,1-1.2-1.2,5.37,5.37,0,0,1,.4-1.5L147,40Z" }))); };
22
+ exports.Logo = Logo;
@@ -16,3 +16,4 @@ export * from './Minus';
16
16
  export * from './NewWindow';
17
17
  export * from './Plus';
18
18
  export * from './Pound';
19
+ export * from './Logo';
@@ -32,3 +32,4 @@ __exportStar(require("./Minus"), exports);
32
32
  __exportStar(require("./NewWindow"), exports);
33
33
  __exportStar(require("./Plus"), exports);
34
34
  __exportStar(require("./Pound"), exports);
35
+ __exportStar(require("./Logo"), exports);
@@ -1,4 +1,4 @@
1
1
  import { FunctionComponent } from 'react';
2
2
  import { SvgProps } from 'react-native-svg';
3
- export declare type IconName = 'caret-down' | 'caret-right' | 'chevron-left' | 'chevron-right' | 'chevron-up' | 'chevron-down' | 'cross' | 'euro' | 'pound' | 'new-window' | 'gas' | 'electricity' | 'link' | 'download' | 'plus' | 'minus' | 'check';
3
+ export declare type IconName = 'caret-down' | 'caret-right' | 'chevron-left' | 'chevron-right' | 'chevron-up' | 'chevron-down' | 'cross' | 'euro' | 'pound' | 'new-window' | 'gas' | 'electricity' | 'link' | 'download' | 'plus' | 'minus' | 'check' | 'logo';
4
4
  export declare type IconsType = Record<string, FunctionComponent<SvgProps>>;
@@ -5,6 +5,46 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.createTheme = exports.defaultTokens = void 0;
7
7
  var deepmerge_1 = __importDefault(require("deepmerge"));
8
+ var brand = {
9
+ focus: { base: '#028FC8' },
10
+ primary: {
11
+ lightest: '#B6D727',
12
+ lighter: '#9DC431',
13
+ light: '#6CBD27',
14
+ base: '#0A9828',
15
+ dark: '#0D8426',
16
+ darker: '#006945',
17
+ },
18
+ grey: {
19
+ lightest: '#FFFFFF',
20
+ lighter: '#F9F9F9',
21
+ light: '#F3F3F3',
22
+ base: '#D1D6DE',
23
+ dark: '#555C6B',
24
+ darker: '#2F3749',
25
+ darkest: '#111111',
26
+ },
27
+ mission: {
28
+ base: '#DE1D8D',
29
+ dark: '#C6187D',
30
+ },
31
+ complementary: {
32
+ base: '#197278',
33
+ },
34
+ electricity: {
35
+ base: '#E7A234',
36
+ dark: '#D1760A',
37
+ },
38
+ gas: {
39
+ base: '#26ADE4',
40
+ dark: '#028FC8',
41
+ },
42
+ error: {
43
+ lightest: '#FCF3F5',
44
+ base: '#C7153E',
45
+ dark: '#AE0A30',
46
+ },
47
+ };
8
48
  exports.defaultTokens = {
9
49
  borderWidths: {
10
50
  standard: '1px',
@@ -39,28 +79,35 @@ exports.defaultTokens = {
39
79
  12: '48px',
40
80
  },
41
81
  fonts: {
42
- display: 'Arial',
43
- body: 'Arial',
82
+ display: 'Montserrat-Regular',
83
+ body: 'OpenSans-Regular',
44
84
  monospace: 'Courier',
45
85
  },
46
86
  lineHeights: {
47
87
  standard: 1.5,
48
88
  },
49
- fontSizes: ['12px', '14px', '16px', '20px', '24px', '28px', '32px'],
89
+ fontSizes: ['12px', '14px', '16px', '20px', '24px', '28px', '32px', '48px'],
50
90
  fontWeights: {
51
91
  normal: 400,
52
92
  bold: 700,
53
93
  semiBold: 600,
54
94
  },
55
95
  colors: {
56
- primary: '#0C7494',
57
- primaryAlt: '#096885',
96
+ primary: '#0D8426',
97
+ primaryAlt: '#006945',
58
98
  primaryContrast: '#FFFFFF',
59
99
  primaryMuted: '#F3F7F9',
60
100
  error: '#C7153E',
61
101
  errorAlt: '#AE0A30',
62
102
  errorContrast: '#FFFFFF',
63
103
  errorMuted: '#FCF3F5',
104
+ focus: '#028FC8',
105
+ canvas: '#FFFFFF',
106
+ body: '#555C6B',
107
+ heading: '#2F3749',
108
+ border: '#2F3749',
109
+ canvasMuted: '#F9F9F9',
110
+ borderMuted: '#F3F3F3',
64
111
  info: '#147D88',
65
112
  infoAlt: '#05696C',
66
113
  infoContrast: '#FFFFFF',
@@ -73,13 +120,11 @@ exports.defaultTokens = {
73
120
  successAlt: '#1E6937',
74
121
  successContrast: '#FFFFFF',
75
122
  successMuted: '#F4F9F6',
76
- focus: '#2A71BE',
77
- canvas: '#FFFFFF',
78
- body: '#555C6B',
79
- heading: '#2F3749',
80
- border: '#2F3749',
81
- canvasMuted: '#F9F9F9',
82
- borderMuted: '#D9D9D9',
123
+ mission: '#DE1D8D',
124
+ missionMuted: '#FDF4F9',
125
+ missionAlt: '#C6187D',
126
+ missionContrast: '#FFFFFF',
127
+ brand: brand,
83
128
  },
84
129
  responsiveFontSizes: {
85
130
  small: ['12px', '14px'],
@@ -88,6 +133,7 @@ exports.defaultTokens = {
88
133
  level2: ['24px', '28px'],
89
134
  level3: ['20px', '24px'],
90
135
  level4: ['16px', '20px'],
136
+ display: ['32px', '48px'],
91
137
  },
92
138
  };
93
139
  function createTheme(customTheme, additional) {
@@ -222,6 +268,16 @@ function createTheme(customTheme, additional) {
222
268
  foreground: colors.errorContrast,
223
269
  border: colors.error,
224
270
  },
271
+ missionPrimary: {
272
+ background: colors.mission,
273
+ foreground: colors.missionContrast,
274
+ border: colors.mission,
275
+ },
276
+ missionSecondary: {
277
+ background: colors.missionContrast,
278
+ foreground: colors.mission,
279
+ border: colors.mission,
280
+ },
225
281
  },
226
282
  },
227
283
  checkbox: {
@@ -393,8 +449,8 @@ function createTheme(customTheme, additional) {
393
449
  paddingHorizontal: space[3],
394
450
  },
395
451
  tableRow: {
396
- backgroundColor: colors.canvasMuted,
397
- stripeColor: colors.canvas,
452
+ backgroundColor: colors.canvas,
453
+ stripeColor: colors.canvasMuted,
398
454
  },
399
455
  },
400
456
  accordion: {
@@ -11,11 +11,13 @@ declare type Shadow = {
11
11
  };
12
12
  export declare type Theme = {
13
13
  space: Record<1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12, string>;
14
- colors: Record<'primary' | 'primaryAlt' | 'primaryContrast' | 'primaryMuted' | 'error' | 'errorAlt' | 'errorContrast' | 'errorMuted' | 'info' | 'infoAlt' | 'infoContrast' | 'infoMuted' | 'warning' | 'warningAlt' | 'warningContrast' | 'warningMuted' | 'success' | 'successAlt' | 'successContrast' | 'successMuted' | 'focus' | 'body' | 'heading' | 'border' | 'borderMuted' | 'canvas' | 'canvasMuted', string>;
14
+ colors: Record<'primary' | 'primaryAlt' | 'primaryContrast' | 'primaryMuted' | 'error' | 'errorAlt' | 'errorContrast' | 'errorMuted' | 'info' | 'infoAlt' | 'infoContrast' | 'infoMuted' | 'warning' | 'warningAlt' | 'warningContrast' | 'warningMuted' | 'success' | 'successAlt' | 'successContrast' | 'successMuted' | 'focus' | 'body' | 'heading' | 'border' | 'borderMuted' | 'canvas' | 'canvasMuted' | 'mission' | 'missionMuted' | 'missionAlt' | 'missionContrast', string> & {
15
+ brand: Record<string, Record<string, string>>;
16
+ };
15
17
  fonts: Record<'display' | 'body' | 'monospace', string>;
16
18
  lineHeights: Record<'standard', number>;
17
19
  fontSizes: string[];
18
- responsiveFontSizes: Record<'body' | 'small' | 'level1' | 'level2' | 'level3' | 'level4', string[]>;
20
+ responsiveFontSizes: Record<'body' | 'small' | 'level1' | 'level2' | 'level3' | 'level4' | 'display', string[]>;
19
21
  breakpoints: Record<'small' | 'medium' | 'large', number>;
20
22
  radii: Record<'standard', string>;
21
23
  shadows: Record<'standard', Shadow>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ovotech/element-native",
3
- "version": "0.0.2",
3
+ "version": "1.0.0",
4
4
  "main": "dist/index.js",
5
5
  "module": "dist/esm/index.js",
6
6
  "types": "dist/index.d.ts",