From 143f13f98827bf08fe58895bf5fdcabfe3a11036 Mon Sep 17 00:00:00 2001 From: vitalets Date: Sun, 24 Apr 2016 17:19:43 +0300 Subject: [PATCH 1/8] media queries beta ready, fix #5 --- README.md | 14 --- package.json | 5 +- src/__tests__/sheet.test.js | 35 +++++--- src/__tests__/style.test.js | 23 ++++- src/__tests__/utils.test.js | 28 ++++++ src/replacers/__tests__/media-queries.test.js | 88 +++++++++++++++++++ src/replacers/__tests__/osprop.test.js | 41 --------- src/replacers/__tests__/vars.test.js | 15 +--- src/replacers/media-queries.js | 74 ++++++++++++++++ src/replacers/osprop.js | 20 ----- src/replacers/vars.js | 24 ++--- src/sheet.js | 39 +++++--- src/style.js | 44 ++++++---- src/utils.js | 24 +++++ 14 files changed, 328 insertions(+), 146 deletions(-) create mode 100644 src/__tests__/utils.test.js create mode 100644 src/replacers/__tests__/media-queries.test.js delete mode 100644 src/replacers/__tests__/osprop.test.js create mode 100644 src/replacers/media-queries.js delete mode 100644 src/replacers/osprop.js create mode 100644 src/utils.js diff --git a/README.md b/README.md index 8b262d0..bdab121 100644 --- a/README.md +++ b/README.md @@ -20,7 +20,6 @@ math operations, scaling and other stuff to control app styling. - [scaling](#scaling) - [_underscored styles](#underscored-styles) - [pseudo classes (:nth-child)](#pseudo-classes-nth-child) - - [OS specific props](#os-specific-props) - [value as a function](#value-as-a-function) - [caching](#caching) - [outline for debug](#outline-for-debug) @@ -324,19 +323,6 @@ render() { ``` \[[top](#)\] -### OS specific props -If you want different values of the same prop for IOS / Android, just name prop with appropriate suffix: -```js -const styles = EStyleSheet.create({ - container: { - marginTopIOS: 10, - marginTopAndroid: 0 - } -}); -``` -The output style will have only one property `marginTop` depending on OS. -\[[top](#)\] - ### Value as a function For the deepest customization you can specify any value as a function that will be executed on EStyleSheet build. It is practically useful if you need to calculate value depending on some global variable. diff --git a/package.json b/package.json index d4b6528..3e6175d 100644 --- a/package.json +++ b/package.json @@ -10,7 +10,7 @@ "scripts": { "code": "eslint src && jscs src", "code-fix": "eslint src --fix && jscs src --fix", - "test": "jest", + "test": "jest --coverage", "coveralls": "coveralls < coverage/lcov.info", "release": "npm run code && npm test && npm version patch && npm publish && git push --follow-tags" }, @@ -23,6 +23,7 @@ }, "license": "MIT", "dependencies": { + "css-mediaquery": "^0.1.2", "object-resolve-path": "^1.1.0" }, "devDependencies": { @@ -57,7 +58,7 @@ "test.js" ], "verbose": true, - "collectCoverage": true + "collectCoverage": false }, "keywords": [ "react", diff --git a/src/__tests__/sheet.test.js b/src/__tests__/sheet.test.js index 625912d..bc5bad1 100644 --- a/src/__tests__/sheet.test.js +++ b/src/__tests__/sheet.test.js @@ -14,11 +14,7 @@ describe('sheet', function () { } }; const variables = {$a: 2, $d: 2, $e: 'abc'}; - const sheet = new Sheet(source); - - sheet.calc(variables); - - const result = sheet.getResult(); + const result = new Sheet(source).calc(variables); expect(result).toEqual({ $a: 1, $b: 2, @@ -39,11 +35,7 @@ describe('sheet', function () { borderWidth: '$b', } }; - const sheet = new Sheet(source); - - sheet.calc(); - - const result = sheet.getResult(); + const result = new Sheet(source).calc(); expect(result).toEqual({ $b: 2, _text: { @@ -52,4 +44,27 @@ describe('sheet', function () { }); }); + it('should support media queries', function () { + const source = { + $b: 2, + '@media ios': { + $b: 3 + }, + button: { + prop: 2, + '@media ios': { + prop: '$b' + }, + } + }; + const result = new Sheet(source).calc(); + expect(result).toEqual({ + $b: 3, + _button: { + prop: 3, + }, + button: 0, + }); + }); + }); diff --git a/src/__tests__/style.test.js b/src/__tests__/style.test.js index 6dd016d..d24f3b7 100644 --- a/src/__tests__/style.test.js +++ b/src/__tests__/style.test.js @@ -9,8 +9,6 @@ describe('style', function () { $b: '$d', fontSize: '$a', borderWidth: '$b', - propAndroid: 1, - propIOS: 2, color: '$e', }; let varsArr = [{$a: 3, $d: 3, $e: 'abc'}]; @@ -25,7 +23,6 @@ describe('style', function () { calculatedProps: { fontSize: 1, borderWidth: 3, - prop: 2, color: 'abc', } }); @@ -113,4 +110,24 @@ describe('style', function () { expect(Math.random.mock.calls.length).toBe(1); }); + it('should support media queries', function () { + const source = { + $b: 2, + c: 1, + '@media ios': { + $b: 3, + c: '$b', + } + }; + const result = new Style(source).calc(); + expect(result).toEqual({ + calculatedVars: { + $b: 3, + }, + calculatedProps: { + c: 3, + } + }); + }); + }); diff --git a/src/__tests__/utils.test.js b/src/__tests__/utils.test.js new file mode 100644 index 0000000..ec3452c --- /dev/null +++ b/src/__tests__/utils.test.js @@ -0,0 +1,28 @@ +import utils from '../utils'; + +describe('utils', function () { + + describe('excludeKeys', function () { + + it('should exclude by array', function () { + const obj = {a: 1, b: 2}; + const keys = ['a', 'c']; + expect(utils.excludeKeys(obj, keys)).toEqual({b: 2}); + }); + + it('should exclude by obj', function () { + const obj = {a: 1, b: 2}; + const keys = {a: 2, c: 3}; + expect(utils.excludeKeys(obj, keys)).toEqual({b: 2}); + }); + + it('should work correct with empty keys', function () { + const obj = {a: 1, b: 2}; + expect(utils.excludeKeys(obj)).toEqual(obj); + expect(utils.excludeKeys(obj, null)).toEqual(obj); + expect(utils.excludeKeys(obj, {})).toEqual(obj); + expect(utils.excludeKeys(obj, [])).toEqual(obj); + }); + }); + +}); diff --git a/src/replacers/__tests__/media-queries.test.js b/src/replacers/__tests__/media-queries.test.js new file mode 100644 index 0000000..ac256e9 --- /dev/null +++ b/src/replacers/__tests__/media-queries.test.js @@ -0,0 +1,88 @@ +const rn = { + Platform: { + OS: 'ios' + }, + Dimensions: { + get: () => { + return {width: 110, height: 100}; + } + } +}; + +jest.setMock('react-native', rn); + +delete require.cache['../media-queries']; +const mq = require('../media-queries').default; + +describe('media-queries', function () { + + it('should extract and apply media queries', function () { + const obj = { + a: 1, + b: 2, + '@media (min-width: 50) and (min-height: 100)': { + a: 2, + c: 3, + d: 4 + }, + '@media ios': { + d: 5, + } + }; + expect(mq.process(obj)).toEqual({ + a: 2, + b: 2, + c: 3, + d: 5 + }); + }); + + it('should process width', function () { + const obj = { + '@media (min-width: 50) and (max-width: 150)': { + a: 1, + }, + '@media (min-width: 150) and (max-width: 200)': { + a: 2, + } + }; + expect(mq.process(obj)).toEqual({a: 1}); + }); + + it('should process height', function () { + const obj = { + '@media (min-height: 50) and (max-height: 150)': { + a: 1, + }, + '@media (min-height: 150) and (max-height: 200)': { + a: 2, + } + }; + expect(mq.process(obj)).toEqual({a: 1}); + }); + + it('should process orientation', function () { + const obj = { + '@media (orientation: landscape)': { + a: 1, + }, + '@media (orientation: portrait)': { + a: 2, + } + }; + expect(mq.process(obj)).toEqual({a: 1}); + }); + + it('should process type', function () { + const obj = { + '@media ios': { + a: 1, + }, + '@media android': { + a: 2, + } + }; + expect(mq.process(obj)).toEqual({a: 1}); + }); + +}); diff --git a/src/replacers/__tests__/osprop.test.js b/src/replacers/__tests__/osprop.test.js deleted file mode 100644 index 0509532..0000000 --- a/src/replacers/__tests__/osprop.test.js +++ /dev/null @@ -1,41 +0,0 @@ -// as osprop detects os on start, mock react-native nere manually -let Platform = { - OS: 'ios' -}; -jest.setMock('react-native', {Platform}); - -describe('osprop', function () { - beforeEach(function () { - delete require.cache['../osprop']; - }); - - it('should replace android prop on android', function () { - Platform.OS = 'android'; - const osprop = require('../osprop').default; - expect(osprop.replace('propAndroid')).toBe('prop'); - }); - - it('should remove android prop on ios', function () { - Platform.OS = 'ios'; - const osprop = require('../osprop').default; - expect(osprop.replace('propAndroid')).toBe(''); - }); - - it('should replace ios prop on ios', function () { - Platform.OS = 'ios'; - const osprop = require('../osprop').default; - expect(osprop.replace('propIOS')).toBe('prop'); - }); - - it('should remove ios prop on android', function () { - Platform.OS = 'android'; - const osprop = require('../osprop').default; - expect(osprop.replace('propIOS')).toBe(''); - }); - - it('should keep non-os props', function () { - Platform.OS = 'android'; - const osprop = require('../osprop').default; - expect(osprop.replace('prop')).toBe('prop'); - }); -}); diff --git a/src/replacers/__tests__/vars.test.js b/src/replacers/__tests__/vars.test.js index aeb0a21..30d9f6f 100644 --- a/src/replacers/__tests__/vars.test.js +++ b/src/replacers/__tests__/vars.test.js @@ -1,4 +1,3 @@ - import vars from '../vars'; describe('vars', function () { @@ -24,16 +23,8 @@ describe('vars', function () { } }; expect(vars.extract(obj)).toEqual({ - extractedProps: { - c: 3, - d: { - $e: 1, - }, - }, - extractedVars: { - $a: 1, - $b: 2 - } + $a: 1, + $b: 2 }); }); @@ -78,7 +69,7 @@ describe('vars', function () { it('should add prefix', function () { let obj = { a: 1, - b: '2', + $b: '2', d: { e: 1, } diff --git a/src/replacers/media-queries.js b/src/replacers/media-queries.js new file mode 100644 index 0000000..385af79 --- /dev/null +++ b/src/replacers/media-queries.js @@ -0,0 +1,74 @@ +/** + * Media queries + * Supported values: + * - (type) ios, android + * - height, min-height, max-height + * - width, min-width, max-width + * - orientation + * - aspect-ratio + */ + +import {Dimensions, Platform} from 'react-native'; +import mediaQuery from 'css-mediaquery'; + +const PREFIX = '@media'; + +export default { + process +}; + +/** + * Is string is media query + * @param {String} str + */ +function isMediaQuery(str) { + return typeof str === 'string' && str.indexOf(PREFIX) === 0; +} + +/** + * Process and apply media queries in object + * @param {Object} obj + * @returns {null|Object} + */ +function process(obj) { + const mqKeys = []; + + // copy non-media-query stuff + const res = Object.keys(obj).reduce((res, key) => { + if (!isMediaQuery(key)) { + res[key] = obj[key]; + } else { + mqKeys.push(key); + } + return res; + }, {}); + + // apply media query stuff + if (mqKeys.length) { + const matchObject = getMatchObject(); + mqKeys.forEach(key => { + const mqStr = key.replace(PREFIX, ''); + const isMatch = mediaQuery.match(mqStr, matchObject); + if (isMatch) { + Object.assign(res, obj[key]); + } + }); + } + + return res; +} + +/** + * Returns object to match media query + * @returns {Object} + */ +function getMatchObject() { + const win = Dimensions.get('window'); + return { + width: win.width, + height: win.height, + orientation: win.width > win.height ? 'landscape' : 'portrait', + 'aspect-ratio': win.width / win.height, + type: Platform.OS, + }; +} diff --git a/src/replacers/osprop.js b/src/replacers/osprop.js deleted file mode 100644 index 02594c1..0000000 --- a/src/replacers/osprop.js +++ /dev/null @@ -1,20 +0,0 @@ -/** - * OS dependent props - */ -import {Platform} from 'react-native'; - -const isIOS = Platform.OS === 'ios'; -const isAndroid = !isIOS; - -export default { - replace: function (prop) { - const l = prop.length; - if (prop.substr(l - 7) === 'Android') { - return isAndroid ? prop.substr(0, l - 7) : ''; - } - if (prop.substr(l - 3) === 'IOS') { - return isIOS ? prop.substr(0, l - 3) : ''; - } - return prop; - } -}; diff --git a/src/replacers/vars.js b/src/replacers/vars.js index 132edc0..05ee469 100644 --- a/src/replacers/vars.js +++ b/src/replacers/vars.js @@ -1,3 +1,7 @@ +/** + * Variables + */ + import resolvePath from 'object-resolve-path'; const PREFIX = '$'; @@ -32,21 +36,18 @@ function calc(str, varsArr) { } /** - * Extract variables / props from mixed object + * Extract variables from mixed object * @param {Object} obj + * @returns {null|Object} */ function extract(obj) { - let extractedProps = {}; - let extractedVars = null; - Object.keys(obj).forEach(key => { + return Object.keys(obj).reduce((res, key) => { if (isVar(key)) { - extractedVars = extractedVars || {}; - extractedVars[key] = obj[key]; - } else { - extractedProps[key] = obj[key]; + res = res || {}; + res[key] = obj[key]; } - }); - return {extractedProps, extractedVars}; + return res; + }, null); } /** @@ -86,7 +87,8 @@ function get(name, varsArr) { */ function addPrefix(obj) { return Object.keys(obj).reduce((res, key) => { - res[`${PREFIX}${key}`] = obj[key]; + const resKey = key.charAt(0) !== PREFIX ? PREFIX + key : key; + res[resKey] = obj[key]; return res; }, {}); } diff --git a/src/sheet.js b/src/sheet.js index 258b56a..e6031c5 100644 --- a/src/sheet.js +++ b/src/sheet.js @@ -1,6 +1,8 @@ import {StyleSheet} from 'react-native'; import Style from './style'; +import utils from './utils'; import vars from './replacers/vars'; +import mediaQueries from './replacers/media-queries'; export default class { /** @@ -12,6 +14,8 @@ export default class { this.result = {}; this.nativeSheet = {}; this.varsArr = []; + this.extractedVars = null; + this.processedSource = null; } /** @@ -19,26 +23,33 @@ export default class { * @param {Object} inVars */ calc(inVars) { - let {extractedProps: extractedStyles, extractedVars} = vars.extract(this.source); - this.varsArr = inVars ? [inVars] : []; - if (extractedVars) { - this.calcVars(extractedVars); - } - this.calcStyles(extractedStyles); + this.processSource(); + this.calcVars(inVars); + this.calcStyles(); this.calcNative(); + return this.getResult(); + } + + processSource() { + this.processedSource = mediaQueries.process(this.source); } - calcVars(extractedVars) { - let varsArrForVars = [extractedVars].concat(this.varsArr); - let {calculatedVars} = new Style(extractedVars, varsArrForVars).calc(); - Object.assign(this.result, calculatedVars); - this.varsArr = [calculatedVars].concat(this.varsArr); + calcVars(inVars) { + this.varsArr = inVars ? [inVars] : []; + this.extractedVars = vars.extract(this.processedSource); + if (this.extractedVars) { + let varsArrForVars = [this.extractedVars].concat(this.varsArr); + let {calculatedVars} = new Style(this.extractedVars, varsArrForVars).calc(); + Object.assign(this.result, calculatedVars); + this.varsArr = [calculatedVars].concat(this.varsArr); + } } - calcStyles(extractedStyles) { + calcStyles() { + const extractedStyles = utils.excludeKeys(this.processedSource, this.extractedVars); Object.keys(extractedStyles).forEach(key => { - let {calculatedProps, calculatedVars} = new Style(extractedStyles[key], this.varsArr).calc(); - let merged = Object.assign({}, calculatedVars, calculatedProps); + const {calculatedProps, calculatedVars} = new Style(extractedStyles[key], this.varsArr).calc(); + const merged = Object.assign({}, calculatedVars, calculatedProps); if (key.charAt(0) === '_') { this.result[key] = merged; } else { diff --git a/src/style.js b/src/style.js index ed50519..cdeb3a3 100644 --- a/src/style.js +++ b/src/style.js @@ -2,9 +2,10 @@ * Style */ -import osprop from './replacers/osprop'; import vars from './replacers/vars'; +import mediaQueries from './replacers/media-queries'; import Value from './value'; +import utils from './utils'; export default class { /** @@ -15,35 +16,44 @@ export default class { constructor(source, varsArr = []) { this.source = source; this.varsArr = varsArr; + this.processedSource = null; + this.extractedVars = null; + this.extractedProps = null; this.calculatedVars = null; this.calculatedProps = null; } /** * Calculates style - * @returns {Object} {calculatedVars, calculatedStyles} + * @returns {Object} */ calc() { - let {extractedProps, extractedVars} = vars.extract(this.source); - if (extractedVars) { - this.calcVars(extractedVars); - } - this.calcProps(extractedProps); + this.processSource(); + this.calcVars(); + this.calcProps(); + this.tryOutline(); return { calculatedVars: this.calculatedVars, calculatedProps: this.calculatedProps, }; } - calcVars(extractedVars) { - let varsArrForVars = [extractedVars].concat(this.varsArr); - this.calculatedVars = calcPlainObject(extractedVars, varsArrForVars); - this.varsArr = [this.calculatedVars].concat(this.varsArr); + processSource() { + this.processedSource = mediaQueries.process(this.source); } - calcProps(extractedProps) { - this.calculatedProps = calcPlainObject(extractedProps, this.varsArr); - this.tryOutline(); + calcVars() { + this.extractedVars = vars.extract(this.processedSource); + if (this.extractedVars) { + const varsArrForVars = [this.extractedVars].concat(this.varsArr); + this.calculatedVars = calcPlainObject(this.extractedVars, varsArrForVars); + this.varsArr = [this.calculatedVars].concat(this.varsArr); + } + } + + calcProps() { + this.extractedProps = utils.excludeKeys(this.processedSource, this.extractedVars); + this.calculatedProps = calcPlainObject(this.extractedProps, this.varsArr); } tryOutline() { @@ -65,11 +75,7 @@ export default class { */ function calcPlainObject(obj, varsArr) { return Object.keys(obj).reduce((res, prop) => { - let value = obj[prop]; - prop = osprop.replace(prop); - if (prop) { - res[prop] = new Value(value, prop, varsArr).calc(); - } + res[prop] = new Value(obj[prop], prop, varsArr).calc(); return res; }, {}); } diff --git a/src/utils.js b/src/utils.js new file mode 100644 index 0000000..4c2ff2f --- /dev/null +++ b/src/utils.js @@ -0,0 +1,24 @@ +/** + * Utils + */ + +export default { + excludeKeys +}; + +/** + * Returns new object with excluded keys + * @param {Object} obj + * @param {Array|Object} keys + */ +function excludeKeys(obj, keys) { + keys = Array.isArray(keys) + ? keys + : (keys ? Object.keys(keys) : []); + return Object.keys(obj).reduce((res, key) => { + if (keys.indexOf(key) === -1) { + res[key] = obj[key]; + } + return res; + }, {}); +} From a2a4810874f98c607281738b31c83429ac7c3850 Mon Sep 17 00:00:00 2001 From: vitalets Date: Sun, 24 Apr 2016 23:20:35 +0300 Subject: [PATCH 2/8] media queries: refactor examples --- example/theme.js | 5 -- {example => examples}/README.md | 6 +-- examples/media-queries/app.js | 14 +++++ examples/media-queries/component.js | 50 ++++++++++++++++++ examples/readme/app.js | 18 +++++++ {example => examples/readme}/component.js | 14 +++-- {example => examples/rem}/app.js | 12 ++--- examples/rem/component.js | 17 ++++++ {example => examples}/screenshot.png | Bin examples/simple/app.js | 16 ++++++ examples/simple/component.js | 27 ++++++++++ src/replacers/__tests__/media-queries.test.js | 30 ++++++++++- src/replacers/media-queries.js | 18 ++++++- src/utils.js | 11 +++- 14 files changed, 215 insertions(+), 23 deletions(-) delete mode 100644 example/theme.js rename {example => examples}/README.md (80%) create mode 100644 examples/media-queries/app.js create mode 100644 examples/media-queries/component.js create mode 100644 examples/readme/app.js rename {example => examples/readme}/component.js (82%) rename {example => examples/rem}/app.js (66%) create mode 100644 examples/rem/component.js rename {example => examples}/screenshot.png (100%) create mode 100644 examples/simple/app.js create mode 100644 examples/simple/component.js diff --git a/example/theme.js b/example/theme.js deleted file mode 100644 index c05af42..0000000 --- a/example/theme.js +++ /dev/null @@ -1,5 +0,0 @@ -export default { - textColor: 'black', - buttonColor: '#679267', - outline: 0, -} \ No newline at end of file diff --git a/example/README.md b/examples/README.md similarity index 80% rename from example/README.md rename to examples/README.md index 04041f8..d32398d 100644 --- a/example/README.md +++ b/examples/README.md @@ -1,4 +1,4 @@ -## How to run this example +## How to run examples 1. Create new react-native project @@ -17,7 +17,7 @@ ```js import {AppRegistry} from 'react-native'; - import App from 'react-native-extended-stylesheet/example/app'; + import App from 'react-native-extended-stylesheet/examples/simple/app'; AppRegistry.registerComponent('ExtendedStyleSheetExample', () => App); ``` - \ No newline at end of file + diff --git a/examples/media-queries/app.js b/examples/media-queries/app.js new file mode 100644 index 0000000..7799b7c --- /dev/null +++ b/examples/media-queries/app.js @@ -0,0 +1,14 @@ +import React from 'react-native'; +import EStyleSheet from '../../src'; +import MyComponent from './component'; + +// calc styles +EStyleSheet.build(); + +export default class extends React.Component { + render() { + return ( + + ); + } +} diff --git a/examples/media-queries/component.js b/examples/media-queries/component.js new file mode 100644 index 0000000..3541187 --- /dev/null +++ b/examples/media-queries/component.js @@ -0,0 +1,50 @@ +import React, {View, Text} from 'react-native'; +import EStyleSheet from '../../src'; + +export default class extends React.Component { + render() { + return ( + + + Width: {styles._column.width}, + margin: {styles._column.marginHorizontal} + + + ); + } +} + +const styles = EStyleSheet.create({ + column: { + alignItems: 'center', + borderWidth: 1, + marginTop: '10%', + }, + '@media (max-width: 350)': { // media query on sheet level + column: { + width: '70%', + marginHorizontal: '15%', + } + }, + '@media (min-width: 350) and (max-width: 500)': { // media query on sheet level + column: { + width: '80%', + marginHorizontal: '10%', + } + }, + '@media (min-width: 500)': { // media query on sheet level + column: { + width: '90%', + marginHorizontal: '5%', + } + }, + header: { + fontSize: 18, + '@media ios': { // media query on style level + color: 'green', + }, + '@media android': { // media query on style level + color: 'blue', + }, + } +}); diff --git a/examples/readme/app.js b/examples/readme/app.js new file mode 100644 index 0000000..4f9e845 --- /dev/null +++ b/examples/readme/app.js @@ -0,0 +1,18 @@ +import React from 'react-native'; +import EStyleSheet from '../../src'; +import MyComponent from './component'; + +EStyleSheet.build({ + textColor: 'black', + buttonColor: '#679267', + outline: 0, + rem: 18, +}); + +export default class extends React.Component { + render() { + return ( + + ); + } +} diff --git a/example/component.js b/examples/readme/component.js similarity index 82% rename from example/component.js rename to examples/readme/component.js index fff3d15..50b6116 100644 --- a/example/component.js +++ b/examples/readme/component.js @@ -1,5 +1,5 @@ import React, {View, Text, TouchableHighlight} from 'react-native'; -import EStyleSheet from '../src'; +import EStyleSheet from '../../src'; const items = [ 'first-child', @@ -16,9 +16,12 @@ export default class extends React.Component { return ( Extended StyleSheets - Container: width=80%, margin=10% + + Percent + values: width=80%, margin=10% + - Stripped rows: + Stripped rows via pseudo-classes {items.map((item, index) => { return ( @@ -27,13 +30,14 @@ export default class extends React.Component { ); })} - Button: width=$size, + Circle button via variables: + width=$size, height=$size, borderRadius=0.5*$size Like it! - Circle button scaled to 1.4x + Scaled to 1.4x Like it! diff --git a/example/app.js b/examples/rem/app.js similarity index 66% rename from example/app.js rename to examples/rem/app.js index 3a5aedc..6971b8c 100644 --- a/example/app.js +++ b/examples/rem/app.js @@ -1,15 +1,15 @@ import React, {Dimensions} from 'react-native'; -import EStyleSheet from '../src'; - +import EStyleSheet from '../../src'; import MyComponent from './component'; -import theme from './theme'; // define REM depending on screen width -let {width} = Dimensions.get('window'); +const {width} = Dimensions.get('window'); const rem = width > 340 ? 18 : 17; // calc styles -EStyleSheet.build({...theme, rem}); +EStyleSheet.build({ + rem: rem, +}); export default class extends React.Component { render() { @@ -17,4 +17,4 @@ export default class extends React.Component { ); } -} \ No newline at end of file +} diff --git a/examples/rem/component.js b/examples/rem/component.js new file mode 100644 index 0000000..68ecc16 --- /dev/null +++ b/examples/rem/component.js @@ -0,0 +1,17 @@ +import React, {Text} from 'react-native'; +import EStyleSheet from '../../src'; + +export default class extends React.Component { + render() { + return ( + Font size via REM + ); + } +} + +const styles = EStyleSheet.create({ + text: { + padding: '0.5rem', + fontSize: '1rem', + } +}); diff --git a/example/screenshot.png b/examples/screenshot.png similarity index 100% rename from example/screenshot.png rename to examples/screenshot.png diff --git a/examples/simple/app.js b/examples/simple/app.js new file mode 100644 index 0000000..9f8389f --- /dev/null +++ b/examples/simple/app.js @@ -0,0 +1,16 @@ +import React from 'react-native'; +import EStyleSheet from '../../src'; +import MyComponent from './component'; + +// calc styles +EStyleSheet.build({ + fontColor: 'black' +}); + +export default class extends React.Component { + render() { + return ( + + ); + } +} diff --git a/examples/simple/component.js b/examples/simple/component.js new file mode 100644 index 0000000..1421b18 --- /dev/null +++ b/examples/simple/component.js @@ -0,0 +1,27 @@ +import React, {View, Text} from 'react-native'; +import EStyleSheet from '../../src'; + +export default class extends React.Component { + render() { + return ( + + Welcome to Extended StyleSheet! + + ); + } +} + +const styles = EStyleSheet.create({ + column: { + width: '80%', + marginHorizontal: '10%', + marginTop: '10%', + backgroundColor: '#e6e6e6', + alignItems: 'center', + padding: '0.5rem', + }, + header: { + fontSize: '1rem', + color: '$fontColor', + } +}); diff --git a/src/replacers/__tests__/media-queries.test.js b/src/replacers/__tests__/media-queries.test.js index ac256e9..47d7ddd 100644 --- a/src/replacers/__tests__/media-queries.test.js +++ b/src/replacers/__tests__/media-queries.test.js @@ -20,10 +20,18 @@ describe('media-queries', function () { const obj = { a: 1, b: 2, + e: { + x: 1, + y: 2, + }, '@media (min-width: 50) and (min-height: 100)': { a: 2, c: 3, - d: 4 + d: 4, + e: { + x: 2, + z: 3, + } }, '@media ios': { d: 5, @@ -33,7 +41,12 @@ describe('media-queries', function () { a: 2, b: 2, c: 3, - d: 5 + d: 5, + e: { + x: 2, + y: 2, + z: 3, + } }); }); @@ -85,4 +98,17 @@ describe('media-queries', function () { expect(mq.process(obj)).toEqual({a: 1}); }); + it('should ignore invalid media queries', function () { + const obj = { + a: 0, + '@media sdfgsdfg': { + a: 1, + }, + '@media (min-width)': { + a: 2, + } + }; + expect(mq.process(obj)).toEqual({a: 0}); + }); + }); diff --git a/src/replacers/media-queries.js b/src/replacers/media-queries.js index 385af79..4b0d1c1 100644 --- a/src/replacers/media-queries.js +++ b/src/replacers/media-queries.js @@ -10,6 +10,7 @@ import {Dimensions, Platform} from 'react-native'; import mediaQuery from 'css-mediaquery'; +import utils from '../utils'; const PREFIX = '@media'; @@ -50,7 +51,7 @@ function process(obj) { const mqStr = key.replace(PREFIX, ''); const isMatch = mediaQuery.match(mqStr, matchObject); if (isMatch) { - Object.assign(res, obj[key]); + merge(res, obj[key]); } }); } @@ -72,3 +73,18 @@ function getMatchObject() { type: Platform.OS, }; } + +/** + * Merge media query obj into parent obj + * @param {Object} obj + * @param {Object} mqObj + */ +function merge(obj, mqObj) { + Object.keys(mqObj).forEach(key => { + if (utils.isObject(obj[key]) && utils.isObject(mqObj[key])) { + Object.assign(obj[key], mqObj[key]); + } else { + obj[key] = mqObj[key]; + } + }); +} diff --git a/src/utils.js b/src/utils.js index 4c2ff2f..e4d59ff 100644 --- a/src/utils.js +++ b/src/utils.js @@ -3,7 +3,8 @@ */ export default { - excludeKeys + excludeKeys, + isObject, }; /** @@ -22,3 +23,11 @@ function excludeKeys(obj, keys) { return res; }, {}); } + +/** + * Is object + * @param {*} obj + */ +function isObject(obj) { + return typeof obj === 'object' && obj !== null; +} From 466250ffd48028f0a4e90e8fe84dc51d2e89a152 Mon Sep 17 00:00:00 2001 From: vitalets Date: Sun, 24 Apr 2016 23:58:47 +0300 Subject: [PATCH 3/8] readme --- README.md | 84 ++++++++++++++++++++++++++++++++++++++++++------------- 1 file changed, 65 insertions(+), 19 deletions(-) diff --git a/README.md b/README.md index bdab121..d15edee 100644 --- a/README.md +++ b/README.md @@ -4,8 +4,8 @@ [![Build Status](https://travis-ci.org/vitalets/react-native-extended-stylesheet.svg?branch=master)](https://travis-ci.org/vitalets/react-native-extended-stylesheet) [![Coverage Status](https://coveralls.io/repos/github/vitalets/react-native-extended-stylesheet/badge.svg?branch=master)](https://coveralls.io/github/vitalets/react-native-extended-stylesheet?branch=master) -Extend [React Native](https://facebook.github.io/react-native/) stylesheets with variables, relative units, percents, -math operations, scaling and other stuff to control app styling. +Extend [React Native](https://facebook.github.io/react-native/) stylesheets with media-queries, variables, themes, +relative units, percents, math operations, scaling and other stuff. @@ -17,6 +17,7 @@ math operations, scaling and other stuff to control app styling. - [math operations](#math-operations) - [rem units](#rem-units) - [percents](#percents) + - [media queries](#media-queries) - [scaling](#scaling) - [_underscored styles](#underscored-styles) - [pseudo classes (:nth-child)](#pseudo-classes-nth-child) @@ -67,16 +68,16 @@ npm i react-native-extended-stylesheet --save } ``` -2. Call `EStyleSheet.build()` in entry point of your app: +2. Call `EStyleSheet.build()` in entry point of your app to actually calculate styles: ```js // app.js import EStyleSheet from 'react-native-extended-stylesheet'; - // build styles + // calculate styles EStyleSheet.build(); - // build styles with passed variables + // calculate styles with passed variables EStyleSheet.build({ textColor: '#0275d8' }); @@ -166,8 +167,9 @@ EStyleSheet.build({ \[[top](#)\] ### Percents -Percents are useful only for **single-orientation apps** as calculation performed once on start using screen dimensions. -You can apply it to top-level components to render layout. +Percents are useful for **single-orientation apps** because calculation is performed on app start only. +You can apply it to top-level components as percent values are calculated from **screen** width/height +(not from parent component). ```js const styles = EStyleSheet.create({ column: { @@ -177,11 +179,11 @@ const styles = EStyleSheet.create({ } }); ``` -Supporting orientation change is always design-decision but sometimes it's really unneeded and makes life much easier. +Note: supporting orientation change is always design-decision but sometimes it's really unneeded and makes life much easier. How to lock orientaion for [IOS](http://stackoverflow.com/a/24205653/740245), [Android](http://stackoverflow.com/a/4675801/740245). **Percents in nested components** -If you need sub-components with percentage props based on parent, you can easily achieve it with variables. +If you need sub-components with percentage props based on parent, you can achieve it with variables. For example, to render 2 sub-columns with 30%/70% width of parent: ```js const styles = EStyleSheet.create({ @@ -212,8 +214,47 @@ render() { ``` \[[top](#)\] +### Media queries +Media queries are supported in standard format (thanks for idea to @grabbou, +[#5](https://github.com/vitalets/react-native-extended-stylesheet/issues/5)). +They allows to have different styles for different screens, platforms, orienation etc. +You can define media queries on sheet level or style level. + +Supported values are: + +* media type: `ios|android` +* `width`, `min-width`, `max-width` +* `height`, `min-height`, `max-height` +* `orientation` (`landscape|portrait`) +* `aspect-ratio` + +Example: +```js +const styles = EStyleSheet.create({ + column: { + width: '80%', + }, + '@media (min-width: 350) and (max-width: 500)': { // media query on sheet level + column: { + width: '90%', + } + }, + header: { + fontSize: 18, + '@media ios': { // media query on style level + color: 'green', + }, + '@media android': { + color: 'blue', + }, + } +}); +``` +See full example [here](examples/media-queries). +\[[top](#)\] + ### Scaling -You can easily scale your components by setting special `$scale` variable. +You can apply scale to components by setting special `$scale` variable. ```js const styles = EStyleSheet.create({ $scale: 1.5, @@ -224,7 +265,7 @@ const styles = EStyleSheet.create({ } }); ``` -This also helps to create reusable components that could be scaled depending on prop. +This helps to create reusable components that could be scaled depending on prop: ```js class Button extends React.Component { static propTypes = { @@ -250,12 +291,16 @@ let getStyle = function (scale = 1) { }); } ``` +To cache calculated styles please have a look on [caching](#caching) section. \[[top](#)\] ### Underscored styles -Usual react-native stylesheets are calculated to integer numbers and original values are unavailable. But sometimes they are needed. Let's take an example: -You want to render text and icon with the same size and color. You can take this [awesome icon library](https://github.com/oblador/react-native-vector-icons) and see that `` component has `size` and `color` props. -It would be convenient to define style for text and keep icon's size and color in sync. +Original react-native stylesheets are calculated to integer numbers and original values are unavailable. +But sometimes they are needed. Let's take an example: +You want to render text and icon with the same size and color. +You can take this [awesome icon library](https://github.com/oblador/react-native-vector-icons) +and see that `` component has `size` and `color` props. +It would be convenient to define style for text and keep icon's size/color in sync. ```js const styles = EStyleSheet.create({ text: { @@ -270,7 +315,7 @@ styles = { text: 0 } ``` -But extended stylesheet saves original values under `_text` property: +But extended stylesheet saves calculated values under `_text` property: ```js styles = { text: 0, @@ -324,8 +369,7 @@ render() { \[[top](#)\] ### Value as a function -For the deepest customization you can specify any value as a function that will be executed on EStyleSheet build. -It is practically useful if you need to calculate value depending on some global variable. +For the deepest customization you can specify any value as a function that will be executed on EStyleSheet build. For example, you may *darken* or *lighten* color of variable via [npm color package](https://www.npmjs.com/package/color): ```js import Color from 'color'; @@ -350,7 +394,8 @@ render() { \[[top](#)\] ### Caching -If you use dynamic styles depending on runtime prop or you are making reusable component with dynamic styling you may need stylesheet creation in every `render()` call. Let's take example from [scaling](#scaling) section: +If you use dynamic styles depending on runtime prop or you are making reusable component with dynamic styling +you may need stylesheet creation in every `render()` call. Let's take example from [scaling](#scaling) section: ```js class Button extends React.Component { static propTypes = { @@ -389,7 +434,8 @@ let getStyle = EStyleSheet.memoize(function (scale = 1) { }); }); ``` -Now if you call `getStyle(1.5)` 3 times actually style will be created on the first call and two other calls will get it from cache. +Now if you call `getStyle(1.5)` 3 times actually style will be created on the first call +and two other calls will get it from cache. \[[top](#)\] ### Outline for debug From c80321f38768092e6edb6bec2b2cc0375e55e53a Mon Sep 17 00:00:00 2001 From: vitalets Date: Mon, 25 Apr 2016 00:04:13 +0300 Subject: [PATCH 4/8] readme --- README.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index d15edee..01c074b 100644 --- a/README.md +++ b/README.md @@ -215,9 +215,9 @@ render() { \[[top](#)\] ### Media queries -Media queries are supported in standard format (thanks for idea to @grabbou, +Media queries are supported in standard format (thanks for idea to [@grabbou](https://github.com/grabbou), [#5](https://github.com/vitalets/react-native-extended-stylesheet/issues/5)). -They allows to have different styles for different screens, platforms, orienation etc. +They allows to have different styles for different screens, platform, orienation etc. You can define media queries on sheet level or style level. Supported values are: @@ -241,7 +241,7 @@ const styles = EStyleSheet.create({ }, header: { fontSize: 18, - '@media ios': { // media query on style level + '@media ios': { // media query on style level color: 'green', }, '@media android': { @@ -250,7 +250,7 @@ const styles = EStyleSheet.create({ } }); ``` -See full example [here](examples/media-queries). +See full example [here](examples/media-queries). \[[top](#)\] ### Scaling @@ -291,7 +291,7 @@ let getStyle = function (scale = 1) { }); } ``` -To cache calculated styles please have a look on [caching](#caching) section. +To cache calculated styles please have a look on [caching](#caching) section. \[[top](#)\] ### Underscored styles From 135667cb0bfcaa6d82a170efe355cf6bf3638170 Mon Sep 17 00:00:00 2001 From: vitalets Date: Mon, 25 Apr 2016 00:12:28 +0300 Subject: [PATCH 5/8] readme --- README.md | 26 ++++++++++++++++++++------ 1 file changed, 20 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 01c074b..d806196 100644 --- a/README.md +++ b/README.md @@ -5,7 +5,7 @@ [![Coverage Status](https://coveralls.io/repos/github/vitalets/react-native-extended-stylesheet/badge.svg?branch=master)](https://coveralls.io/github/vitalets/react-native-extended-stylesheet?branch=master) Extend [React Native](https://facebook.github.io/react-native/) stylesheets with media-queries, variables, themes, -relative units, percents, math operations, scaling and other stuff. +relative units, percents, math operations, scaling and other styling stuff. @@ -76,12 +76,8 @@ npm i react-native-extended-stylesheet --save // calculate styles EStyleSheet.build(); - - // calculate styles with passed variables - EStyleSheet.build({ - textColor: '#0275d8' - }); ``` + \[[top](#)\] ## Features @@ -115,6 +111,24 @@ export default { import theme from '.theme'; EStyleSheet.build(theme); ``` + +You can define nested variables and access them via dot path: +```js +// entry +EStyleSheet.build({ + button: { + size: 10 + } +}); + +// component +const styles = EStyleSheet.create({ + text: { + color: '$button.size' + } +}); +``` + \[[top](#)\] ### Local variables From 1fdc7cd6f4c91a6394ee057077e1198850b7f73b Mon Sep 17 00:00:00 2001 From: vitalets Date: Mon, 25 Apr 2016 00:21:05 +0300 Subject: [PATCH 6/8] readme --- README.md | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index d806196..bb68e7a 100644 --- a/README.md +++ b/README.md @@ -108,7 +108,7 @@ export default { } // app entry -import theme from '.theme'; +import theme from './theme'; EStyleSheet.build(theme); ``` @@ -133,6 +133,7 @@ const styles = EStyleSheet.create({ ### Local variables Local variables can be defined directly in sylesheet and have priority over global variables. +To define local variable just start it with `$`: ```js const styles = EStyleSheet.create({ $textColor: '#0275d8', @@ -181,9 +182,8 @@ EStyleSheet.build({ \[[top](#)\] ### Percents -Percents are useful for **single-orientation apps** because calculation is performed on app start only. -You can apply it to top-level components as percent values are calculated from **screen** width/height -(not from parent component). +Percent values are useful for **single-orientation apps** because calculation is performed on app start only. +They are calculated relative to **screen width/height** (not parent component!). ```js const styles = EStyleSheet.create({ column: { @@ -232,7 +232,6 @@ render() { Media queries are supported in standard format (thanks for idea to [@grabbou](https://github.com/grabbou), [#5](https://github.com/vitalets/react-native-extended-stylesheet/issues/5)). They allows to have different styles for different screens, platform, orienation etc. -You can define media queries on sheet level or style level. Supported values are: @@ -242,7 +241,7 @@ Supported values are: * `orientation` (`landscape|portrait`) * `aspect-ratio` -Example: +You can define media queries on sheet level or style level: ```js const styles = EStyleSheet.create({ column: { From 113488e11f9ece7b3b5ead4e0c02f6c3ed301185 Mon Sep 17 00:00:00 2001 From: vitalets Date: Mon, 25 Apr 2016 10:08:09 +0300 Subject: [PATCH 7/8] api: clear sheets array after build --- src/__tests__/api.test.js | 6 +++--- src/api.js | 4 +++- src/sheet.js | 2 +- 3 files changed, 7 insertions(+), 5 deletions(-) diff --git a/src/__tests__/api.test.js b/src/__tests__/api.test.js index b2b229c..8713985 100644 --- a/src/__tests__/api.test.js +++ b/src/__tests__/api.test.js @@ -78,9 +78,9 @@ describe('EStyleSheet API', function () { const res2 = api.create({$b: '$a'}); expect(res1).toEqual({$b: 1}); expect(res2).toEqual({$b: 1}); - api.build({a: 2}); - expect(res1).toEqual({$b: 2}); - expect(res2).toEqual({$b: 2}); + api.build({a: 1}); + expect(res1).toEqual({$b: 1}); + expect(res2).toEqual({$b: 1}); }); it('should calculate value', function () { diff --git a/src/api.js b/src/api.js index 37f7fb7..9bab280 100644 --- a/src/api.js +++ b/src/api.js @@ -34,8 +34,9 @@ export default class { let sheet = new Sheet(obj); if (this.builded) { sheet.calc(this.globalVars); + } else { + this.sheets.push(sheet); } - this.sheets.push(sheet); return sheet.getResult(); } @@ -90,6 +91,7 @@ export default class { _calcSheets() { this.sheets.forEach(sheet => sheet.calc(this.globalVars)); + this.sheets.length = 0; } _callListeners(event) { diff --git a/src/sheet.js b/src/sheet.js index e6031c5..e1ffa9f 100644 --- a/src/sheet.js +++ b/src/sheet.js @@ -11,7 +11,7 @@ export default class { */ constructor(source) { this.source = source; - this.result = {}; + this.result = Object.create(null); this.nativeSheet = {}; this.varsArr = []; this.extractedVars = null; From 7babe54601f88aebd2ec06b488b9f1705780d208 Mon Sep 17 00:00:00 2001 From: vitalets Date: Mon, 25 Apr 2016 10:08:27 +0300 Subject: [PATCH 8/8] update exmaples for readme --- examples/readme/component.js | 7 ++++--- examples/screenshot.png | Bin 67289 -> 101076 bytes 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/examples/readme/component.js b/examples/readme/component.js index 50b6116..80dc3b3 100644 --- a/examples/readme/component.js +++ b/examples/readme/component.js @@ -17,8 +17,9 @@ export default class extends React.Component { Extended StyleSheets - Percent - values: width=80%, margin=10% + Percent values: + width=80%, + margin=10% Stripped rows via pseudo-classes @@ -30,7 +31,7 @@ export default class extends React.Component { ); })} - Circle button via variables: + Circle button via variables{'\n'} width=$size, height=$size, borderRadius=0.5*$size diff --git a/examples/screenshot.png b/examples/screenshot.png index 3b8410e8ffa86a7ccb616eeb108fd8810a56897f..73f5d0779c1493a71ba1f1b089822f98a81cc51c 100644 GIT binary patch literal 101076 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 z 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

OS*xZvS2zA&}2S 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 GG3I}S1F}#6 literal 67289 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�X`2KdF`tw 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