diff options
author | 2019-01-03 16:46:40 +0100 | |
---|---|---|
committer | 2019-01-03 16:46:40 +0100 | |
commit | ad585791493b09609be885e0304d987a0382db9a (patch) | |
tree | b36509117e1e60f827a56a2caec12e566e015274 /packages | |
parent | Add lerna (diff) | |
download | ferdium-app-ad585791493b09609be885e0304d987a0382db9a.tar.gz ferdium-app-ad585791493b09609be885e0304d987a0382db9a.tar.zst ferdium-app-ad585791493b09609be885e0304d987a0382db9a.zip |
Add theme
Diffstat (limited to 'packages')
-rw-r--r-- | packages/theme/.gitignore | 2 | ||||
-rw-r--r-- | packages/theme/README.md | 11 | ||||
-rw-r--r-- | packages/theme/package-lock.json | 371 | ||||
-rw-r--r-- | packages/theme/package.json | 34 | ||||
-rw-r--r-- | packages/theme/src/index.ts | 17 | ||||
-rw-r--r-- | packages/theme/src/themes/dark/index.ts | 26 | ||||
-rw-r--r-- | packages/theme/src/themes/default/index.ts | 44 | ||||
-rw-r--r-- | packages/theme/src/themes/legacy/index.ts | 38 | ||||
-rw-r--r-- | packages/theme/test/index.test.js | 17 | ||||
-rw-r--r-- | packages/theme/tsconfig.json | 64 | ||||
-rw-r--r-- | packages/theme/tslint.json | 13 | ||||
-rw-r--r-- | packages/theme/yarn.lock | 258 |
12 files changed, 895 insertions, 0 deletions
diff --git a/packages/theme/.gitignore b/packages/theme/.gitignore new file mode 100644 index 000000000..d01826a6b --- /dev/null +++ b/packages/theme/.gitignore | |||
@@ -0,0 +1,2 @@ | |||
1 | node_modules/ | ||
2 | lib | ||
diff --git a/packages/theme/README.md b/packages/theme/README.md new file mode 100644 index 000000000..6f9cc406b --- /dev/null +++ b/packages/theme/README.md | |||
@@ -0,0 +1,11 @@ | |||
1 | # `theme` | ||
2 | |||
3 | > TODO: description | ||
4 | |||
5 | ## Usage | ||
6 | |||
7 | ``` | ||
8 | const theme = require('theme'); | ||
9 | |||
10 | // TODO: DEMONSTRATE API | ||
11 | ``` | ||
diff --git a/packages/theme/package-lock.json b/packages/theme/package-lock.json new file mode 100644 index 000000000..42e4b7524 --- /dev/null +++ b/packages/theme/package-lock.json | |||
@@ -0,0 +1,371 @@ | |||
1 | { | ||
2 | "name": "@meetfranz/theme", | ||
3 | "version": "0.0.1", | ||
4 | "lockfileVersion": 1, | ||
5 | "requires": true, | ||
6 | "dependencies": { | ||
7 | "@babel/code-frame": { | ||
8 | "version": "7.0.0", | ||
9 | "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.0.0.tgz", | ||
10 | "integrity": "sha512-OfC2uemaknXr87bdLUkWog7nYuliM9Ij5HUcajsVcMCpQrcLmtxRbVFTIqmcSkSeYRBFBRxs2FiUqFJDLdiebA==", | ||
11 | "dev": true, | ||
12 | "requires": { | ||
13 | "@babel/highlight": "^7.0.0" | ||
14 | } | ||
15 | }, | ||
16 | "@babel/core": { | ||
17 | "version": "7.2.2", | ||
18 | "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.2.2.tgz", | ||
19 | "integrity": "sha512-59vB0RWt09cAct5EIe58+NzGP4TFSD3Bz//2/ELy3ZeTeKF6VTD1AXlH8BGGbCX0PuobZBsIzO7IAI9PH67eKw==", | ||
20 | "dev": true, | ||
21 | "requires": { | ||
22 | "@babel/code-frame": "^7.0.0", | ||
23 | "@babel/generator": "^7.2.2", | ||
24 | "@babel/helpers": "^7.2.0", | ||
25 | "@babel/parser": "^7.2.2", | ||
26 | "@babel/template": "^7.2.2", | ||
27 | "@babel/traverse": "^7.2.2", | ||
28 | "@babel/types": "^7.2.2", | ||
29 | "convert-source-map": "^1.1.0", | ||
30 | "debug": "^4.1.0", | ||
31 | "json5": "^2.1.0", | ||
32 | "lodash": "^4.17.10", | ||
33 | "resolve": "^1.3.2", | ||
34 | "semver": "^5.4.1", | ||
35 | "source-map": "^0.5.0" | ||
36 | } | ||
37 | }, | ||
38 | "@babel/generator": { | ||
39 | "version": "7.2.2", | ||
40 | "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.2.2.tgz", | ||
41 | "integrity": "sha512-I4o675J/iS8k+P38dvJ3IBGqObLXyQLTxtrR4u9cSUJOURvafeEWb/pFMOTwtNrmq73mJzyF6ueTbO1BtN0Zeg==", | ||
42 | "dev": true, | ||
43 | "requires": { | ||
44 | "@babel/types": "^7.2.2", | ||
45 | "jsesc": "^2.5.1", | ||
46 | "lodash": "^4.17.10", | ||
47 | "source-map": "^0.5.0", | ||
48 | "trim-right": "^1.0.1" | ||
49 | } | ||
50 | }, | ||
51 | "@babel/helper-function-name": { | ||
52 | "version": "7.1.0", | ||
53 | "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.1.0.tgz", | ||
54 | "integrity": "sha512-A95XEoCpb3TO+KZzJ4S/5uW5fNe26DjBGqf1o9ucyLyCmi1dXq/B3c8iaWTfBk3VvetUxl16e8tIrd5teOCfGw==", | ||
55 | "dev": true, | ||
56 | "requires": { | ||
57 | "@babel/helper-get-function-arity": "^7.0.0", | ||
58 | "@babel/template": "^7.1.0", | ||
59 | "@babel/types": "^7.0.0" | ||
60 | } | ||
61 | }, | ||
62 | "@babel/helper-get-function-arity": { | ||
63 | "version": "7.0.0", | ||
64 | "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0.tgz", | ||
65 | "integrity": "sha512-r2DbJeg4svYvt3HOS74U4eWKsUAMRH01Z1ds1zx8KNTPtpTL5JAsdFv8BNyOpVqdFhHkkRDIg5B4AsxmkjAlmQ==", | ||
66 | "dev": true, | ||
67 | "requires": { | ||
68 | "@babel/types": "^7.0.0" | ||
69 | } | ||
70 | }, | ||
71 | "@babel/helper-split-export-declaration": { | ||
72 | "version": "7.0.0", | ||
73 | "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.0.0.tgz", | ||
74 | "integrity": "sha512-MXkOJqva62dfC0w85mEf/LucPPS/1+04nmmRMPEBUB++hiiThQ2zPtX/mEWQ3mtzCEjIJvPY8nuwxXtQeQwUag==", | ||
75 | "dev": true, | ||
76 | "requires": { | ||
77 | "@babel/types": "^7.0.0" | ||
78 | } | ||
79 | }, | ||
80 | "@babel/helpers": { | ||
81 | "version": "7.2.0", | ||
82 | "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.2.0.tgz", | ||
83 | "integrity": "sha512-Fr07N+ea0dMcMN8nFpuK6dUIT7/ivt9yKQdEEnjVS83tG2pHwPi03gYmk/tyuwONnZ+sY+GFFPlWGgCtW1hF9A==", | ||
84 | "dev": true, | ||
85 | "requires": { | ||
86 | "@babel/template": "^7.1.2", | ||
87 | "@babel/traverse": "^7.1.5", | ||
88 | "@babel/types": "^7.2.0" | ||
89 | } | ||
90 | }, | ||
91 | "@babel/highlight": { | ||
92 | "version": "7.0.0", | ||
93 | "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.0.0.tgz", | ||
94 | "integrity": "sha512-UFMC4ZeFC48Tpvj7C8UgLvtkaUuovQX+5xNWrsIoMG8o2z+XFKjKaN9iVmS84dPwVN00W4wPmqvYoZF3EGAsfw==", | ||
95 | "dev": true, | ||
96 | "requires": { | ||
97 | "chalk": "^2.0.0", | ||
98 | "esutils": "^2.0.2", | ||
99 | "js-tokens": "^4.0.0" | ||
100 | } | ||
101 | }, | ||
102 | "@babel/parser": { | ||
103 | "version": "7.2.3", | ||
104 | "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.2.3.tgz", | ||
105 | "integrity": "sha512-0LyEcVlfCoFmci8mXx8A5oIkpkOgyo8dRHtxBnK9RRBwxO2+JZPNsqtVEZQ7mJFPxnXF9lfmU24mHOPI0qnlkA==", | ||
106 | "dev": true | ||
107 | }, | ||
108 | "@babel/template": { | ||
109 | "version": "7.2.2", | ||
110 | "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.2.2.tgz", | ||
111 | "integrity": "sha512-zRL0IMM02AUDwghf5LMSSDEz7sBCO2YnNmpg3uWTZj/v1rcG2BmQUvaGU8GhU8BvfMh1k2KIAYZ7Ji9KXPUg7g==", | ||
112 | "dev": true, | ||
113 | "requires": { | ||
114 | "@babel/code-frame": "^7.0.0", | ||
115 | "@babel/parser": "^7.2.2", | ||
116 | "@babel/types": "^7.2.2" | ||
117 | } | ||
118 | }, | ||
119 | "@babel/traverse": { | ||
120 | "version": "7.2.3", | ||
121 | "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.2.3.tgz", | ||
122 | "integrity": "sha512-Z31oUD/fJvEWVR0lNZtfgvVt512ForCTNKYcJBGbPb1QZfve4WGH8Wsy7+Mev33/45fhP/hwQtvgusNdcCMgSw==", | ||
123 | "dev": true, | ||
124 | "requires": { | ||
125 | "@babel/code-frame": "^7.0.0", | ||
126 | "@babel/generator": "^7.2.2", | ||
127 | "@babel/helper-function-name": "^7.1.0", | ||
128 | "@babel/helper-split-export-declaration": "^7.0.0", | ||
129 | "@babel/parser": "^7.2.3", | ||
130 | "@babel/types": "^7.2.2", | ||
131 | "debug": "^4.1.0", | ||
132 | "globals": "^11.1.0", | ||
133 | "lodash": "^4.17.10" | ||
134 | } | ||
135 | }, | ||
136 | "@babel/types": { | ||
137 | "version": "7.2.2", | ||
138 | "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.2.2.tgz", | ||
139 | "integrity": "sha512-fKCuD6UFUMkR541eDWL+2ih/xFZBXPOg/7EQFeTluMDebfqR4jrpaCjLhkWlQS4hT6nRa2PMEgXKbRB5/H2fpg==", | ||
140 | "dev": true, | ||
141 | "requires": { | ||
142 | "esutils": "^2.0.2", | ||
143 | "lodash": "^4.17.10", | ||
144 | "to-fast-properties": "^2.0.0" | ||
145 | } | ||
146 | }, | ||
147 | "@types/color": { | ||
148 | "version": "3.0.0", | ||
149 | "resolved": "https://registry.npmjs.org/@types/color/-/color-3.0.0.tgz", | ||
150 | "integrity": "sha512-5qqtNia+m2I0/85+pd2YzAXaTyKO8j+svirO5aN+XaQJ5+eZ8nx0jPtEWZLxCi50xwYsX10xUHetFzfb1WEs4Q==", | ||
151 | "dev": true, | ||
152 | "requires": { | ||
153 | "@types/color-convert": "*" | ||
154 | } | ||
155 | }, | ||
156 | "@types/color-convert": { | ||
157 | "version": "1.9.0", | ||
158 | "resolved": "https://registry.npmjs.org/@types/color-convert/-/color-convert-1.9.0.tgz", | ||
159 | "integrity": "sha512-OKGEfULrvSL2VRbkl/gnjjgbbF7ycIlpSsX7Nkab4MOWi5XxmgBYvuiQ7lcCFY5cPDz7MUNaKgxte2VRmtr4Fg==", | ||
160 | "dev": true, | ||
161 | "requires": { | ||
162 | "@types/color-name": "*" | ||
163 | } | ||
164 | }, | ||
165 | "@types/color-name": { | ||
166 | "version": "1.1.0", | ||
167 | "resolved": "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.0.tgz", | ||
168 | "integrity": "sha512-gZ/Rb+MFXF0pXSEQxdRoPMm5jeO3TycjOdvbpbcpHX/B+n9AqaHFe5q6Ga9CsZ7ir/UgIWPfrBzUzn3F19VH/w==", | ||
169 | "dev": true | ||
170 | }, | ||
171 | "ansi-styles": { | ||
172 | "version": "3.2.1", | ||
173 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", | ||
174 | "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", | ||
175 | "dev": true, | ||
176 | "requires": { | ||
177 | "color-convert": "^1.9.0" | ||
178 | } | ||
179 | }, | ||
180 | "chalk": { | ||
181 | "version": "2.4.1", | ||
182 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.1.tgz", | ||
183 | "integrity": "sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==", | ||
184 | "dev": true, | ||
185 | "requires": { | ||
186 | "ansi-styles": "^3.2.1", | ||
187 | "escape-string-regexp": "^1.0.5", | ||
188 | "supports-color": "^5.3.0" | ||
189 | } | ||
190 | }, | ||
191 | "color": { | ||
192 | "version": "3.1.0", | ||
193 | "resolved": "https://registry.npmjs.org/color/-/color-3.1.0.tgz", | ||
194 | "integrity": "sha512-CwyopLkuRYO5ei2EpzpIh6LqJMt6Mt+jZhO5VI5f/wJLZriXQE32/SSqzmrh+QB+AZT81Cj8yv+7zwToW8ahZg==", | ||
195 | "requires": { | ||
196 | "color-convert": "^1.9.1", | ||
197 | "color-string": "^1.5.2" | ||
198 | } | ||
199 | }, | ||
200 | "color-convert": { | ||
201 | "version": "1.9.3", | ||
202 | "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", | ||
203 | "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", | ||
204 | "requires": { | ||
205 | "color-name": "1.1.3" | ||
206 | } | ||
207 | }, | ||
208 | "color-name": { | ||
209 | "version": "1.1.3", | ||
210 | "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", | ||
211 | "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" | ||
212 | }, | ||
213 | "color-string": { | ||
214 | "version": "1.5.3", | ||
215 | "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.5.3.tgz", | ||
216 | "integrity": "sha512-dC2C5qeWoYkxki5UAXapdjqO672AM4vZuPGRQfO8b5HKuKGBbKWpITyDYN7TOFKvRW7kOgAn3746clDBMDJyQw==", | ||
217 | "requires": { | ||
218 | "color-name": "^1.0.0", | ||
219 | "simple-swizzle": "^0.2.2" | ||
220 | } | ||
221 | }, | ||
222 | "convert-source-map": { | ||
223 | "version": "1.6.0", | ||
224 | "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.6.0.tgz", | ||
225 | "integrity": "sha512-eFu7XigvxdZ1ETfbgPBohgyQ/Z++C0eEhTor0qRwBw9unw+L0/6V8wkSuGgzdThkiS5lSpdptOQPD8Ak40a+7A==", | ||
226 | "dev": true, | ||
227 | "requires": { | ||
228 | "safe-buffer": "~5.1.1" | ||
229 | } | ||
230 | }, | ||
231 | "debug": { | ||
232 | "version": "4.1.1", | ||
233 | "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", | ||
234 | "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", | ||
235 | "dev": true, | ||
236 | "requires": { | ||
237 | "ms": "^2.1.1" | ||
238 | } | ||
239 | }, | ||
240 | "escape-string-regexp": { | ||
241 | "version": "1.0.5", | ||
242 | "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", | ||
243 | "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", | ||
244 | "dev": true | ||
245 | }, | ||
246 | "esutils": { | ||
247 | "version": "2.0.2", | ||
248 | "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", | ||
249 | "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=", | ||
250 | "dev": true | ||
251 | }, | ||
252 | "globals": { | ||
253 | "version": "11.9.0", | ||
254 | "resolved": "https://registry.npmjs.org/globals/-/globals-11.9.0.tgz", | ||
255 | "integrity": "sha512-5cJVtyXWH8PiJPVLZzzoIizXx944O4OmRro5MWKx5fT4MgcN7OfaMutPeaTdJCCURwbWdhhcCWcKIffPnmTzBg==", | ||
256 | "dev": true | ||
257 | }, | ||
258 | "has-flag": { | ||
259 | "version": "3.0.0", | ||
260 | "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", | ||
261 | "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", | ||
262 | "dev": true | ||
263 | }, | ||
264 | "is-arrayish": { | ||
265 | "version": "0.3.2", | ||
266 | "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", | ||
267 | "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==" | ||
268 | }, | ||
269 | "js-tokens": { | ||
270 | "version": "4.0.0", | ||
271 | "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", | ||
272 | "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", | ||
273 | "dev": true | ||
274 | }, | ||
275 | "jsesc": { | ||
276 | "version": "2.5.2", | ||
277 | "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", | ||
278 | "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", | ||
279 | "dev": true | ||
280 | }, | ||
281 | "json5": { | ||
282 | "version": "2.1.0", | ||
283 | "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.0.tgz", | ||
284 | "integrity": "sha512-8Mh9h6xViijj36g7Dxi+Y4S6hNGV96vcJZr/SrlHh1LR/pEn/8j/+qIBbs44YKl69Lrfctp4QD+AdWLTMqEZAQ==", | ||
285 | "dev": true, | ||
286 | "requires": { | ||
287 | "minimist": "^1.2.0" | ||
288 | } | ||
289 | }, | ||
290 | "lodash": { | ||
291 | "version": "4.17.11", | ||
292 | "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", | ||
293 | "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==", | ||
294 | "dev": true | ||
295 | }, | ||
296 | "minimist": { | ||
297 | "version": "1.2.0", | ||
298 | "resolved": "http://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", | ||
299 | "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", | ||
300 | "dev": true | ||
301 | }, | ||
302 | "ms": { | ||
303 | "version": "2.1.1", | ||
304 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", | ||
305 | "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", | ||
306 | "dev": true | ||
307 | }, | ||
308 | "path-parse": { | ||
309 | "version": "1.0.6", | ||
310 | "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", | ||
311 | "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", | ||
312 | "dev": true | ||
313 | }, | ||
314 | "resolve": { | ||
315 | "version": "1.9.0", | ||
316 | "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.9.0.tgz", | ||
317 | "integrity": "sha512-TZNye00tI67lwYvzxCxHGjwTNlUV70io54/Ed4j6PscB8xVfuBJpRenI/o6dVk0cY0PYTY27AgCoGGxRnYuItQ==", | ||
318 | "dev": true, | ||
319 | "requires": { | ||
320 | "path-parse": "^1.0.6" | ||
321 | } | ||
322 | }, | ||
323 | "safe-buffer": { | ||
324 | "version": "5.1.2", | ||
325 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", | ||
326 | "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", | ||
327 | "dev": true | ||
328 | }, | ||
329 | "semver": { | ||
330 | "version": "5.6.0", | ||
331 | "resolved": "https://registry.npmjs.org/semver/-/semver-5.6.0.tgz", | ||
332 | "integrity": "sha512-RS9R6R35NYgQn++fkDWaOmqGoj4Ek9gGs+DPxNUZKuwE183xjJroKvyo1IzVFeXvUrvmALy6FWD5xrdJT25gMg==", | ||
333 | "dev": true | ||
334 | }, | ||
335 | "simple-swizzle": { | ||
336 | "version": "0.2.2", | ||
337 | "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", | ||
338 | "integrity": "sha1-pNprY1/8zMoz9w0Xy5JZLeleVXo=", | ||
339 | "requires": { | ||
340 | "is-arrayish": "^0.3.1" | ||
341 | } | ||
342 | }, | ||
343 | "source-map": { | ||
344 | "version": "0.5.7", | ||
345 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", | ||
346 | "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", | ||
347 | "dev": true | ||
348 | }, | ||
349 | "supports-color": { | ||
350 | "version": "5.5.0", | ||
351 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", | ||
352 | "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", | ||
353 | "dev": true, | ||
354 | "requires": { | ||
355 | "has-flag": "^3.0.0" | ||
356 | } | ||
357 | }, | ||
358 | "to-fast-properties": { | ||
359 | "version": "2.0.0", | ||
360 | "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", | ||
361 | "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", | ||
362 | "dev": true | ||
363 | }, | ||
364 | "trim-right": { | ||
365 | "version": "1.0.1", | ||
366 | "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz", | ||
367 | "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=", | ||
368 | "dev": true | ||
369 | } | ||
370 | } | ||
371 | } | ||
diff --git a/packages/theme/package.json b/packages/theme/package.json new file mode 100644 index 000000000..c07eee950 --- /dev/null +++ b/packages/theme/package.json | |||
@@ -0,0 +1,34 @@ | |||
1 | { | ||
2 | "name": "@meetfranz/theme", | ||
3 | "version": "1.0.0", | ||
4 | "description": "Theme configuration for Franz", | ||
5 | "author": "Stefan Malzner <stefan@adlk.io>", | ||
6 | "homepage": "https://github.com/meetfranz/franz", | ||
7 | "license": "Apache-2.0", | ||
8 | "main": "lib/index.js", | ||
9 | "files": [ | ||
10 | "lib/**/*" | ||
11 | ], | ||
12 | "publishConfig": { | ||
13 | "access": "public" | ||
14 | }, | ||
15 | "repository": { | ||
16 | "type": "git", | ||
17 | "url": "git+https://github.com/meetfranz/franz.git" | ||
18 | }, | ||
19 | "scripts": { | ||
20 | "dev": "tsc -w", | ||
21 | "prepare": "tsc", | ||
22 | "preprepare": "npm run test", | ||
23 | "test": "npx mocha" | ||
24 | }, | ||
25 | "bugs": { | ||
26 | "url": "https://github.com/meetfranz/franz/issues" | ||
27 | }, | ||
28 | "dependencies": { | ||
29 | "color": "^3.1.0" | ||
30 | }, | ||
31 | "devDependencies": { | ||
32 | "@types/color": "^3.0.0" | ||
33 | } | ||
34 | } | ||
diff --git a/packages/theme/src/index.ts b/packages/theme/src/index.ts new file mode 100644 index 000000000..35dad298c --- /dev/null +++ b/packages/theme/src/index.ts | |||
@@ -0,0 +1,17 @@ | |||
1 | enum Themes { | ||
2 | default = 'default', | ||
3 | dark = 'dark', | ||
4 | } | ||
5 | |||
6 | import * as darkThemeConfig from './themes/dark'; | ||
7 | import * as defaultThemeConfig from './themes/default'; | ||
8 | |||
9 | export default (themeId: Themes) => { | ||
10 | if (themeId === Themes.dark) { | ||
11 | return Object.assign({}, defaultThemeConfig, darkThemeConfig); | ||
12 | } | ||
13 | |||
14 | return Object.assign({}, defaultThemeConfig); | ||
15 | }; | ||
16 | |||
17 | export type Theme = typeof defaultThemeConfig; | ||
diff --git a/packages/theme/src/themes/dark/index.ts b/packages/theme/src/themes/dark/index.ts new file mode 100644 index 000000000..7eac5a3c3 --- /dev/null +++ b/packages/theme/src/themes/dark/index.ts | |||
@@ -0,0 +1,26 @@ | |||
1 | import color from 'color'; | ||
2 | |||
3 | import * as legacyStyles from '../legacy'; | ||
4 | |||
5 | export const colorBackground = legacyStyles.darkThemeGrayDarkest; | ||
6 | export const colorContentBackground = legacyStyles.darkThemeGrayDarkest; | ||
7 | export const colorBackgroundSubscriptionContainer = legacyStyles.themeBrandInfo; | ||
8 | |||
9 | export const colorHeadline = legacyStyles.darkThemeTextColor; | ||
10 | export const colorText = legacyStyles.darkThemeTextColor; | ||
11 | |||
12 | // Loader | ||
13 | export const colorFullscreenLoaderSpinner = '#FFF'; | ||
14 | export const colorWebviewLoaderBackground = color(legacyStyles.darkThemeGrayDarkest).alpha(0.5).rgb().string(); | ||
15 | |||
16 | // Input | ||
17 | export const labelColor = legacyStyles.darkThemeTextColor; | ||
18 | export const inputColor = legacyStyles.darkThemeGrayLightest; | ||
19 | export const inputBackground = legacyStyles.themeGrayDark; | ||
20 | export const inputBorder = `1px solid ${legacyStyles.darkThemeGrayLight}`; | ||
21 | export const inputPrefixColor = color(legacyStyles.darkThemeGrayLighter).lighten(0.3).hex(); | ||
22 | export const inputPrefixBackground = legacyStyles.darkThemeGray; | ||
23 | export const inputDisabledOpacity = 0.5; | ||
24 | export const inputScorePasswordBackground = legacyStyles.darkThemeGrayDark; | ||
25 | export const inputModifierColor = color(legacyStyles.darkThemeGrayLighter).lighten(0.3).hex(); | ||
26 | export const inputPlaceholderColor = color(legacyStyles.darkThemeGrayLighter).darken(0.1).hex(); | ||
diff --git a/packages/theme/src/themes/default/index.ts b/packages/theme/src/themes/default/index.ts new file mode 100644 index 000000000..b22730413 --- /dev/null +++ b/packages/theme/src/themes/default/index.ts | |||
@@ -0,0 +1,44 @@ | |||
1 | import color from 'color'; | ||
2 | |||
3 | import * as legacyStyles from '../legacy'; | ||
4 | |||
5 | export const brandPrimary = '#3498db'; | ||
6 | export const brandSuccess = '#5cb85c'; | ||
7 | export const brandInfo = '#5bc0de'; | ||
8 | export const brandWarning = '#FF9F00'; | ||
9 | export const brandDanger = '#d9534f'; | ||
10 | |||
11 | export const borderRadius = legacyStyles.themeBorderRadius; | ||
12 | export const borderRadiusSmall = legacyStyles.themeBorderRadiusSmall; | ||
13 | |||
14 | export const colorBackground = legacyStyles.themeGrayLighter; | ||
15 | export const colorContentBackground = '#FFFFFF'; | ||
16 | export const colorHeadline = legacyStyles.themeGrayDark; | ||
17 | |||
18 | export const colorText = legacyStyles.themeTextColor; | ||
19 | |||
20 | // Subscription Container Component | ||
21 | export const colorSubscriptionContainerBackground = 'none'; | ||
22 | export const colorSubscriptionContainerBorder = `1px solid ${brandPrimary}`; | ||
23 | export const colorSubscriptionContainerTitle = brandPrimary; | ||
24 | export const colorSubscriptionContainerActionButtonBackground = brandPrimary; | ||
25 | export const colorSubscriptionContainerActionButtonColor = '#FFF'; | ||
26 | |||
27 | // Loader | ||
28 | export const colorAppLoaderSpinner = '#FFF'; | ||
29 | export const colorFullscreenLoaderSpinner = legacyStyles.themeGrayDark; | ||
30 | export const colorWebviewLoaderBackground = color(legacyStyles.themeGrayLighter).alpha(0.8).rgb().string(); | ||
31 | |||
32 | // Input | ||
33 | export const labelColor = legacyStyles.themeGrayLight; | ||
34 | export const inputColor = legacyStyles.themeGray; | ||
35 | export const inputHeight = '35px'; | ||
36 | export const inputFontSize = '14px'; | ||
37 | export const inputBackground = legacyStyles.themeGrayLightest; | ||
38 | export const inputBorder = `1px solid ${legacyStyles.themeGrayLighter}`; | ||
39 | export const inputModifierColor = legacyStyles.themeGrayLight; | ||
40 | export const inputPlaceholderColor = color(legacyStyles.themeGrayLight).lighten(0.3).hex(); | ||
41 | export const inputPrefixColor = legacyStyles.themeGrayLight; | ||
42 | export const inputPrefixBackground = legacyStyles.themeGrayLighter; | ||
43 | export const inputDisabledOpacity = 0.5; | ||
44 | export const inputScorePasswordBackground = legacyStyles.themeGrayLighter; | ||
diff --git a/packages/theme/src/themes/legacy/index.ts b/packages/theme/src/themes/legacy/index.ts new file mode 100644 index 000000000..2114b92c1 --- /dev/null +++ b/packages/theme/src/themes/legacy/index.ts | |||
@@ -0,0 +1,38 @@ | |||
1 | /* legacy config, injected into sass */ | ||
2 | export const themeBrandPrimary = '#3498db'; | ||
3 | export const themeBrandSuccess = '#5cb85c'; | ||
4 | export const themeBrandInfo = '#5bc0de'; | ||
5 | export const themeBrandWarning = '#FF9F00'; | ||
6 | export const themeBrandDanger = '#d9534f'; | ||
7 | |||
8 | export const themeGrayDark = '#373a3c'; | ||
9 | export const themeGray = '#55595c'; | ||
10 | export const themeGrayLight = '#818a91'; | ||
11 | export const themeGrayLighter = '#eceeef'; | ||
12 | export const themeGrayLightest = '#f7f7f9'; | ||
13 | |||
14 | export const themeBorderRadius = '6px'; | ||
15 | export const themeBorderRadiusSmall = '3px'; | ||
16 | |||
17 | export const themeSidebarWidth = '68px'; | ||
18 | |||
19 | export const themeTextColor = themeGrayDark; | ||
20 | |||
21 | export const themeTransitionTime = '.5s'; | ||
22 | |||
23 | export const themeInsetShadow = 'inset 0 2px 5px rgba(0, 0, 0, .03)'; | ||
24 | |||
25 | export const darkThemeBlack = '#1A1A1A'; | ||
26 | |||
27 | export const darkThemeGrayDarkest = '#1E1E1E'; | ||
28 | export const darkThemeGrayDarker = '#2D2F31'; | ||
29 | export const darkThemeGrayDark = '#383A3B'; | ||
30 | |||
31 | export const darkThemeGray = '#47494B'; | ||
32 | |||
33 | export const darkThemeGrayLight = '#515355'; | ||
34 | export const darkThemeGrayLighter = '#8a8b8b'; | ||
35 | export const darkThemeGrayLightest = '#FFFFFF'; | ||
36 | |||
37 | export const darkThemeGraySmoke = '#CED0D1'; | ||
38 | export const darkThemeTextColor = '#FFFFFF'; | ||
diff --git a/packages/theme/test/index.test.js b/packages/theme/test/index.test.js new file mode 100644 index 000000000..3906433c1 --- /dev/null +++ b/packages/theme/test/index.test.js | |||
@@ -0,0 +1,17 @@ | |||
1 | const expect = require('expect.js'); | ||
2 | |||
3 | const { colorBackground: colorBackgroundDefault } = require('../lib/themes/default'); | ||
4 | const { colorBackground: colorBackgroundDark } = require('../lib/themes/dark'); | ||
5 | const { default: theme } = require('../lib'); | ||
6 | |||
7 | describe('Load theme', () => { | ||
8 | it('Should load default theme', () => { | ||
9 | const { colorBackground } = theme('default'); | ||
10 | expect(colorBackground).to.be(colorBackgroundDefault); | ||
11 | }); | ||
12 | |||
13 | it('Should load dark theme', () => { | ||
14 | const { colorBackground } = theme('dark'); | ||
15 | expect(colorBackground).to.be(colorBackgroundDark); | ||
16 | }); | ||
17 | }); | ||
diff --git a/packages/theme/tsconfig.json b/packages/theme/tsconfig.json new file mode 100644 index 000000000..de5e11c56 --- /dev/null +++ b/packages/theme/tsconfig.json | |||
@@ -0,0 +1,64 @@ | |||
1 | { | ||
2 | "compilerOptions": { | ||
3 | /* Basic Options */ | ||
4 | "target": "es5", /* Specify ECMAScript target version: 'ES3' (default), 'ES5', 'ES2015', 'ES2016', 'ES2017','ES2018' or 'ESNEXT'. */ | ||
5 | "module": "commonjs", /* Specify module code generation: 'none', 'commonjs', 'amd', 'system', 'umd', 'es2015', or 'ESNext'. */ | ||
6 | "lib": [ | ||
7 | "es2015", | ||
8 | "es2017", | ||
9 | "dom" | ||
10 | ], /* Specify library files to be included in the compilation. */ | ||
11 | // "allowJs": true, /* Allow javascript files to be compiled. */ | ||
12 | // "checkJs": true, /* Report errors in .js files. */ | ||
13 | // "jsx": "preserve", /* Specify JSX code generation: 'preserve', 'react-native', or 'react'. */ | ||
14 | "declaration": true, /* Generates corresponding '.d.ts' file. */ | ||
15 | // "declarationDir": "./", /* Output directory for generated declaration files. */ | ||
16 | // "declarationMap": true, /* Generates a sourcemap for each corresponding '.d.ts' file. */ | ||
17 | // "sourceMap": true, /* Generates corresponding '.map' file. */ | ||
18 | // "outFile": "./", /* Concatenate and emit output to single file. */ | ||
19 | "outDir": "./lib", /* Redirect output structure to the directory. */ | ||
20 | // "rootDir": "./src", /* Specify the root directory of input files. Use to control the output directory structure with --outDir. */ | ||
21 | // "composite": true, /* Enable project compilation */ | ||
22 | // "removeComments": true, /* Do not emit comments to output. */ | ||
23 | // "noEmit": true, /* Do not emit outputs. */ | ||
24 | // "importHelpers": true, /* Import emit helpers from 'tslib'. */ | ||
25 | // "downlevelIteration": true, /* Provide full support for iterables in 'for-of', spread, and destructuring when targeting 'ES5' or 'ES3'. */ | ||
26 | // "isolatedModules": true, /* Transpile each file as a separate module (similar to 'ts.transpileModule'). */ | ||
27 | |||
28 | /* Strict Type-Checking Options */ | ||
29 | "strict": true, /* Enable all strict type-checking options. */ | ||
30 | // "noImplicitAny": true, /* Raise error on expressions and declarations with an implied 'any' type. */ | ||
31 | // "strictNullChecks": true, /* Enable strict null checks. */ | ||
32 | // "strictFunctionTypes": true, /* Enable strict checking of function types. */ | ||
33 | // "strictPropertyInitialization": true, /* Enable strict checking of property initialization in classes. */ | ||
34 | // "noImplicitThis": true, /* Raise error on 'this' expressions with an implied 'any' type. */ | ||
35 | // "alwaysStrict": true, /* Parse in strict mode and emit "use strict" for each source file. */ | ||
36 | |||
37 | /* Additional Checks */ | ||
38 | // "noUnusedLocals": true, /* Report errors on unused locals. */ | ||
39 | // "noUnusedParameters": true, /* Report errors on unused parameters. */ | ||
40 | // "noImplicitReturns": true, /* Report error when not all code paths in function return a value. */ | ||
41 | // "noFallthroughCasesInSwitch": true, /* Report errors for fallthrough cases in switch statement. */ | ||
42 | |||
43 | /* Module Resolution Options */ | ||
44 | // "moduleResolution": "node", /* Specify module resolution strategy: 'node' (Node.js) or 'classic' (TypeScript pre-1.6). */ | ||
45 | // "baseUrl": "./", /* Base directory to resolve non-absolute module names. */ | ||
46 | // "paths": {}, /* A series of entries which re-map imports to lookup locations relative to the 'baseUrl'. */ | ||
47 | // "rootDirs": [], /* List of root folders whose combined content represents the structure of the project at runtime. */ | ||
48 | // "typeRoots": [], /* List of folders to include type definitions from. */ | ||
49 | // "types": [], /* Type declaration files to be included in compilation. */ | ||
50 | // "allowSyntheticDefaultImports": true, /* Allow default imports from modules with no default export. This does not affect code emit, just typechecking. */ | ||
51 | "esModuleInterop": true /* Enables emit interoperability between CommonJS and ES Modules via creation of namespace objects for all imports. Implies 'allowSyntheticDefaultImports'. */ | ||
52 | // "preserveSymlinks": true, /* Do not resolve the real path of symlinks. */ | ||
53 | |||
54 | /* Source Map Options */ | ||
55 | // "sourceRoot": "./", /* Specify the location where debugger should locate TypeScript files instead of source locations. */ | ||
56 | // "mapRoot": "./", /* Specify the location where debugger should locate map files instead of generated locations. */ | ||
57 | // "inlineSourceMap": true, /* Emit a single file with source maps instead of having a separate file. */ | ||
58 | // "inlineSources": true, /* Emit the source alongside the sourcemaps within a single file; requires '--inlineSourceMap' or '--sourceMap' to be set. */ | ||
59 | |||
60 | /* Experimental Options */ | ||
61 | // "experimentalDecorators": true, /* Enables experimental support for ES7 decorators. */ | ||
62 | // "emitDecoratorMetadata": true, /* Enables experimental support for emitting type metadata for decorators. */ | ||
63 | } | ||
64 | } | ||
diff --git a/packages/theme/tslint.json b/packages/theme/tslint.json new file mode 100644 index 000000000..a2f4dec71 --- /dev/null +++ b/packages/theme/tslint.json | |||
@@ -0,0 +1,13 @@ | |||
1 | { | ||
2 | "extends": ["tslint-config-airbnb"], | ||
3 | "rules": { | ||
4 | "import-name": false, | ||
5 | "variable-name": false, | ||
6 | "class-name": false, | ||
7 | "prefer-array-literal": false, | ||
8 | "semicolon": [true, "always"], | ||
9 | "max-line-length": false, | ||
10 | "ordered-imports": true, | ||
11 | "object-literal-sort-keys": true | ||
12 | } | ||
13 | } | ||
diff --git a/packages/theme/yarn.lock b/packages/theme/yarn.lock new file mode 100644 index 000000000..f652784e2 --- /dev/null +++ b/packages/theme/yarn.lock | |||
@@ -0,0 +1,258 @@ | |||
1 | # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. | ||
2 | # yarn lockfile v1 | ||
3 | |||
4 | |||
5 | "@babel/code-frame@^7.0.0": | ||
6 | version "7.0.0" | ||
7 | resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.0.0.tgz#06e2ab19bdb535385559aabb5ba59729482800f8" | ||
8 | integrity sha512-OfC2uemaknXr87bdLUkWog7nYuliM9Ij5HUcajsVcMCpQrcLmtxRbVFTIqmcSkSeYRBFBRxs2FiUqFJDLdiebA== | ||
9 | dependencies: | ||
10 | "@babel/highlight" "^7.0.0" | ||
11 | |||
12 | "@babel/core@^7.2.2": | ||
13 | version "7.2.2" | ||
14 | resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.2.2.tgz#07adba6dde27bb5ad8d8672f15fde3e08184a687" | ||
15 | integrity sha512-59vB0RWt09cAct5EIe58+NzGP4TFSD3Bz//2/ELy3ZeTeKF6VTD1AXlH8BGGbCX0PuobZBsIzO7IAI9PH67eKw== | ||
16 | dependencies: | ||
17 | "@babel/code-frame" "^7.0.0" | ||
18 | "@babel/generator" "^7.2.2" | ||
19 | "@babel/helpers" "^7.2.0" | ||
20 | "@babel/parser" "^7.2.2" | ||
21 | "@babel/template" "^7.2.2" | ||
22 | "@babel/traverse" "^7.2.2" | ||
23 | "@babel/types" "^7.2.2" | ||
24 | convert-source-map "^1.1.0" | ||
25 | debug "^4.1.0" | ||
26 | json5 "^2.1.0" | ||
27 | lodash "^4.17.10" | ||
28 | resolve "^1.3.2" | ||
29 | semver "^5.4.1" | ||
30 | source-map "^0.5.0" | ||
31 | |||
32 | "@babel/generator@^7.2.2": | ||
33 | version "7.2.2" | ||
34 | resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.2.2.tgz#18c816c70962640eab42fe8cae5f3947a5c65ccc" | ||
35 | integrity sha512-I4o675J/iS8k+P38dvJ3IBGqObLXyQLTxtrR4u9cSUJOURvafeEWb/pFMOTwtNrmq73mJzyF6ueTbO1BtN0Zeg== | ||
36 | dependencies: | ||
37 | "@babel/types" "^7.2.2" | ||
38 | jsesc "^2.5.1" | ||
39 | lodash "^4.17.10" | ||
40 | source-map "^0.5.0" | ||
41 | trim-right "^1.0.1" | ||
42 | |||
43 | "@babel/helper-function-name@^7.1.0": | ||
44 | version "7.1.0" | ||
45 | resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.1.0.tgz#a0ceb01685f73355d4360c1247f582bfafc8ff53" | ||
46 | integrity sha512-A95XEoCpb3TO+KZzJ4S/5uW5fNe26DjBGqf1o9ucyLyCmi1dXq/B3c8iaWTfBk3VvetUxl16e8tIrd5teOCfGw== | ||
47 | dependencies: | ||
48 | "@babel/helper-get-function-arity" "^7.0.0" | ||
49 | "@babel/template" "^7.1.0" | ||
50 | "@babel/types" "^7.0.0" | ||
51 | |||
52 | "@babel/helper-get-function-arity@^7.0.0": | ||
53 | version "7.0.0" | ||
54 | resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0.tgz#83572d4320e2a4657263734113c42868b64e49c3" | ||
55 | integrity sha512-r2DbJeg4svYvt3HOS74U4eWKsUAMRH01Z1ds1zx8KNTPtpTL5JAsdFv8BNyOpVqdFhHkkRDIg5B4AsxmkjAlmQ== | ||
56 | dependencies: | ||
57 | "@babel/types" "^7.0.0" | ||
58 | |||
59 | "@babel/helper-split-export-declaration@^7.0.0": | ||
60 | version "7.0.0" | ||
61 | resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.0.0.tgz#3aae285c0311c2ab095d997b8c9a94cad547d813" | ||
62 | integrity sha512-MXkOJqva62dfC0w85mEf/LucPPS/1+04nmmRMPEBUB++hiiThQ2zPtX/mEWQ3mtzCEjIJvPY8nuwxXtQeQwUag== | ||
63 | dependencies: | ||
64 | "@babel/types" "^7.0.0" | ||
65 | |||
66 | "@babel/helpers@^7.2.0": | ||
67 | version "7.2.0" | ||
68 | resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.2.0.tgz#8335f3140f3144270dc63c4732a4f8b0a50b7a21" | ||
69 | integrity sha512-Fr07N+ea0dMcMN8nFpuK6dUIT7/ivt9yKQdEEnjVS83tG2pHwPi03gYmk/tyuwONnZ+sY+GFFPlWGgCtW1hF9A== | ||
70 | dependencies: | ||
71 | "@babel/template" "^7.1.2" | ||
72 | "@babel/traverse" "^7.1.5" | ||
73 | "@babel/types" "^7.2.0" | ||
74 | |||
75 | "@babel/highlight@^7.0.0": | ||
76 | version "7.0.0" | ||
77 | resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.0.0.tgz#f710c38c8d458e6dd9a201afb637fcb781ce99e4" | ||
78 | integrity sha512-UFMC4ZeFC48Tpvj7C8UgLvtkaUuovQX+5xNWrsIoMG8o2z+XFKjKaN9iVmS84dPwVN00W4wPmqvYoZF3EGAsfw== | ||
79 | dependencies: | ||
80 | chalk "^2.0.0" | ||
81 | esutils "^2.0.2" | ||
82 | js-tokens "^4.0.0" | ||
83 | |||
84 | "@babel/parser@^7.2.2", "@babel/parser@^7.2.3": | ||
85 | version "7.2.3" | ||
86 | resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.2.3.tgz#32f5df65744b70888d17872ec106b02434ba1489" | ||
87 | integrity sha512-0LyEcVlfCoFmci8mXx8A5oIkpkOgyo8dRHtxBnK9RRBwxO2+JZPNsqtVEZQ7mJFPxnXF9lfmU24mHOPI0qnlkA== | ||
88 | |||
89 | "@babel/template@^7.1.0", "@babel/template@^7.1.2", "@babel/template@^7.2.2": | ||
90 | version "7.2.2" | ||
91 | resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.2.2.tgz#005b3fdf0ed96e88041330379e0da9a708eb2907" | ||
92 | integrity sha512-zRL0IMM02AUDwghf5LMSSDEz7sBCO2YnNmpg3uWTZj/v1rcG2BmQUvaGU8GhU8BvfMh1k2KIAYZ7Ji9KXPUg7g== | ||
93 | dependencies: | ||
94 | "@babel/code-frame" "^7.0.0" | ||
95 | "@babel/parser" "^7.2.2" | ||
96 | "@babel/types" "^7.2.2" | ||
97 | |||
98 | "@babel/traverse@^7.1.5", "@babel/traverse@^7.2.2": | ||
99 | version "7.2.3" | ||
100 | resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.2.3.tgz#7ff50cefa9c7c0bd2d81231fdac122f3957748d8" | ||
101 | integrity sha512-Z31oUD/fJvEWVR0lNZtfgvVt512ForCTNKYcJBGbPb1QZfve4WGH8Wsy7+Mev33/45fhP/hwQtvgusNdcCMgSw== | ||
102 | dependencies: | ||
103 | "@babel/code-frame" "^7.0.0" | ||
104 | "@babel/generator" "^7.2.2" | ||
105 | "@babel/helper-function-name" "^7.1.0" | ||
106 | "@babel/helper-split-export-declaration" "^7.0.0" | ||
107 | "@babel/parser" "^7.2.3" | ||
108 | "@babel/types" "^7.2.2" | ||
109 | debug "^4.1.0" | ||
110 | globals "^11.1.0" | ||
111 | lodash "^4.17.10" | ||
112 | |||
113 | "@babel/types@^7.0.0", "@babel/types@^7.2.0", "@babel/types@^7.2.2": | ||
114 | version "7.2.2" | ||
115 | resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.2.2.tgz#44e10fc24e33af524488b716cdaee5360ea8ed1e" | ||
116 | integrity sha512-fKCuD6UFUMkR541eDWL+2ih/xFZBXPOg/7EQFeTluMDebfqR4jrpaCjLhkWlQS4hT6nRa2PMEgXKbRB5/H2fpg== | ||
117 | dependencies: | ||
118 | esutils "^2.0.2" | ||
119 | lodash "^4.17.10" | ||
120 | to-fast-properties "^2.0.0" | ||
121 | |||
122 | ansi-styles@^3.2.1: | ||
123 | version "3.2.1" | ||
124 | resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" | ||
125 | integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== | ||
126 | dependencies: | ||
127 | color-convert "^1.9.0" | ||
128 | |||
129 | chalk@^2.0.0: | ||
130 | version "2.4.1" | ||
131 | resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.1.tgz#18c49ab16a037b6eb0152cc83e3471338215b66e" | ||
132 | integrity sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ== | ||
133 | dependencies: | ||
134 | ansi-styles "^3.2.1" | ||
135 | escape-string-regexp "^1.0.5" | ||
136 | supports-color "^5.3.0" | ||
137 | |||
138 | color-convert@^1.9.0: | ||
139 | version "1.9.3" | ||
140 | resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" | ||
141 | integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== | ||
142 | dependencies: | ||
143 | color-name "1.1.3" | ||
144 | |||
145 | color-name@1.1.3: | ||
146 | version "1.1.3" | ||
147 | resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" | ||
148 | integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= | ||
149 | |||
150 | convert-source-map@^1.1.0: | ||
151 | version "1.6.0" | ||
152 | resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.6.0.tgz#51b537a8c43e0f04dec1993bffcdd504e758ac20" | ||
153 | integrity sha512-eFu7XigvxdZ1ETfbgPBohgyQ/Z++C0eEhTor0qRwBw9unw+L0/6V8wkSuGgzdThkiS5lSpdptOQPD8Ak40a+7A== | ||
154 | dependencies: | ||
155 | safe-buffer "~5.1.1" | ||
156 | |||
157 | debug@^4.1.0: | ||
158 | version "4.1.1" | ||
159 | resolved "https://registry.yarnpkg.com/debug/-/debug-4.1.1.tgz#3b72260255109c6b589cee050f1d516139664791" | ||
160 | integrity sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw== | ||
161 | dependencies: | ||
162 | ms "^2.1.1" | ||
163 | |||
164 | escape-string-regexp@^1.0.5: | ||
165 | version "1.0.5" | ||
166 | resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" | ||
167 | integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= | ||
168 | |||
169 | esutils@^2.0.2: | ||
170 | version "2.0.2" | ||
171 | resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b" | ||
172 | integrity sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs= | ||
173 | |||
174 | globals@^11.1.0: | ||
175 | version "11.9.0" | ||
176 | resolved "https://registry.yarnpkg.com/globals/-/globals-11.9.0.tgz#bde236808e987f290768a93d065060d78e6ab249" | ||
177 | integrity sha512-5cJVtyXWH8PiJPVLZzzoIizXx944O4OmRro5MWKx5fT4MgcN7OfaMutPeaTdJCCURwbWdhhcCWcKIffPnmTzBg== | ||
178 | |||
179 | has-flag@^3.0.0: | ||
180 | version "3.0.0" | ||
181 | resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" | ||
182 | integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= | ||
183 | |||
184 | js-tokens@^4.0.0: | ||
185 | version "4.0.0" | ||
186 | resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" | ||
187 | integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== | ||
188 | |||
189 | jsesc@^2.5.1: | ||
190 | version "2.5.2" | ||
191 | resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" | ||
192 | integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA== | ||
193 | |||
194 | json5@^2.1.0: | ||
195 | version "2.1.0" | ||
196 | resolved "https://registry.yarnpkg.com/json5/-/json5-2.1.0.tgz#e7a0c62c48285c628d20a10b85c89bb807c32850" | ||
197 | integrity sha512-8Mh9h6xViijj36g7Dxi+Y4S6hNGV96vcJZr/SrlHh1LR/pEn/8j/+qIBbs44YKl69Lrfctp4QD+AdWLTMqEZAQ== | ||
198 | dependencies: | ||
199 | minimist "^1.2.0" | ||
200 | |||
201 | lodash@^4.17.10: | ||
202 | version "4.17.11" | ||
203 | resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.11.tgz#b39ea6229ef607ecd89e2c8df12536891cac9b8d" | ||
204 | integrity sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg== | ||
205 | |||
206 | minimist@^1.2.0: | ||
207 | version "1.2.0" | ||
208 | resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" | ||
209 | integrity sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ= | ||
210 | |||
211 | ms@^2.1.1: | ||
212 | version "2.1.1" | ||
213 | resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.1.tgz#30a5864eb3ebb0a66f2ebe6d727af06a09d86e0a" | ||
214 | integrity sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg== | ||
215 | |||
216 | path-parse@^1.0.6: | ||
217 | version "1.0.6" | ||
218 | resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.6.tgz#d62dbb5679405d72c4737ec58600e9ddcf06d24c" | ||
219 | integrity sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw== | ||
220 | |||
221 | resolve@^1.3.2: | ||
222 | version "1.9.0" | ||
223 | resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.9.0.tgz#a14c6fdfa8f92a7df1d996cb7105fa744658ea06" | ||
224 | integrity sha512-TZNye00tI67lwYvzxCxHGjwTNlUV70io54/Ed4j6PscB8xVfuBJpRenI/o6dVk0cY0PYTY27AgCoGGxRnYuItQ== | ||
225 | dependencies: | ||
226 | path-parse "^1.0.6" | ||
227 | |||
228 | safe-buffer@~5.1.1: | ||
229 | version "5.1.2" | ||
230 | resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" | ||
231 | integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== | ||
232 | |||
233 | semver@^5.4.1: | ||
234 | version "5.6.0" | ||
235 | resolved "https://registry.yarnpkg.com/semver/-/semver-5.6.0.tgz#7e74256fbaa49c75aa7c7a205cc22799cac80004" | ||
236 | integrity sha512-RS9R6R35NYgQn++fkDWaOmqGoj4Ek9gGs+DPxNUZKuwE183xjJroKvyo1IzVFeXvUrvmALy6FWD5xrdJT25gMg== | ||
237 | |||
238 | source-map@^0.5.0: | ||
239 | version "0.5.7" | ||
240 | resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" | ||
241 | integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w= | ||
242 | |||
243 | supports-color@^5.3.0: | ||
244 | version "5.5.0" | ||
245 | resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" | ||
246 | integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== | ||
247 | dependencies: | ||
248 | has-flag "^3.0.0" | ||
249 | |||
250 | to-fast-properties@^2.0.0: | ||
251 | version "2.0.0" | ||
252 | resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" | ||
253 | integrity sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4= | ||
254 | |||
255 | trim-right@^1.0.1: | ||
256 | version "1.0.1" | ||
257 | resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003" | ||
258 | integrity sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM= | ||