aboutsummaryrefslogtreecommitdiffstats
path: root/packages/instant/src/style
diff options
context:
space:
mode:
authorFrancesco Agosti <francesco.agosti93@gmail.com>2018-10-11 09:27:54 +0800
committerGitHub <noreply@github.com>2018-10-11 09:27:54 +0800
commita5a033c359a1a00a144ae0655080b4e6d0e43c88 (patch)
tree50b79c4061c91753030bafa34ff6a60a5c97ea02 /packages/instant/src/style
parent01ccd8ff1a995f6b74f52533bc595cbc428b9eef (diff)
parent50442c3ebbf7a27e49f04a7f0512dcfed9686857 (diff)
downloaddexon-sol-tools-a5a033c359a1a00a144ae0655080b4e6d0e43c88.tar
dexon-sol-tools-a5a033c359a1a00a144ae0655080b4e6d0e43c88.tar.gz
dexon-sol-tools-a5a033c359a1a00a144ae0655080b4e6d0e43c88.tar.bz2
dexon-sol-tools-a5a033c359a1a00a144ae0655080b4e6d0e43c88.tar.lz
dexon-sol-tools-a5a033c359a1a00a144ae0655080b4e6d0e43c88.tar.xz
dexon-sol-tools-a5a033c359a1a00a144ae0655080b4e6d0e43c88.tar.zst
dexon-sol-tools-a5a033c359a1a00a144ae0655080b4e6d0e43c88.zip
Merge pull request #1114 from 0xProject/feature/instant/redux-styles-container
[instant] Add styles and redux to instant
Diffstat (limited to 'packages/instant/src/style')
-rw-r--r--packages/instant/src/style/fonts.ts10
-rw-r--r--packages/instant/src/style/theme.ts27
-rw-r--r--packages/instant/src/style/util.ts11
3 files changed, 48 insertions, 0 deletions
diff --git a/packages/instant/src/style/fonts.ts b/packages/instant/src/style/fonts.ts
new file mode 100644
index 000000000..975a30a61
--- /dev/null
+++ b/packages/instant/src/style/fonts.ts
@@ -0,0 +1,10 @@
+import { injectGlobal } from './theme';
+
+export const fonts = {
+ include: () => {
+ // Inject the inter-ui font into the page
+ return injectGlobal`
+ @import url('https://rsms.me/inter/inter-ui.css');
+ `;
+ },
+};
diff --git a/packages/instant/src/style/theme.ts b/packages/instant/src/style/theme.ts
new file mode 100644
index 000000000..cf9da5378
--- /dev/null
+++ b/packages/instant/src/style/theme.ts
@@ -0,0 +1,27 @@
+import * as styledComponents from 'styled-components';
+
+const { default: styled, css, injectGlobal, keyframes, ThemeProvider } = styledComponents;
+
+export type Theme = { [key in ColorOption]: string };
+
+export enum ColorOption {
+ primaryColor = 'primaryColor',
+ black = 'black',
+ lightGrey = 'lightGrey',
+ grey = 'grey',
+ feintGrey = 'feintGrey',
+ darkGrey = 'darkGrey',
+ white = 'white',
+}
+
+export const theme: Theme = {
+ primaryColor: '#512D80',
+ black: 'black',
+ lightGrey: '#999999',
+ grey: '#666666',
+ feintGrey: '#DEDEDE',
+ darkGrey: '#333333',
+ white: 'white',
+};
+
+export { styled, css, injectGlobal, keyframes, ThemeProvider };
diff --git a/packages/instant/src/style/util.ts b/packages/instant/src/style/util.ts
new file mode 100644
index 000000000..c9df0f834
--- /dev/null
+++ b/packages/instant/src/style/util.ts
@@ -0,0 +1,11 @@
+import { ObjectMap } from '@0xproject/types';
+import * as _ from 'lodash';
+
+export const cssRuleIfExists = (props: ObjectMap<any>, rule: string): string => {
+ const camelCaseRule = _.camelCase(rule);
+ const ruleValueIfExists = props[camelCaseRule];
+ if (!_.isUndefined(ruleValueIfExists)) {
+ return `${rule}: ${ruleValueIfExists};`;
+ }
+ return '';
+};