jss-isolate
Advanced tools
Comparing version 2.0.0 to 2.0.1
@@ -0,1 +1,5 @@ | ||
## 2.0.1 / 2016-12-09 | ||
- fixed isolate: false with jss-nested (cssinjs/jss#401) | ||
## 2.0.0 / 2016-12-09 | ||
@@ -2,0 +6,0 @@ |
@@ -103,3 +103,3 @@ (function webpackUniversalModuleDefinition(root, factory) { | ||
if (rule.options.sheet.options.isolate === false) return; | ||
if (rule.options.parent && rule.options.parent.type === 'keyframe') return; | ||
if (rule.options.parent && (rule.options.parent.type === 'keyframe' || rule.options.parent.type === 'conditional')) return; | ||
if (rule.style && rule.style.isolate === false) { | ||
@@ -106,0 +106,0 @@ delete rule.style.isolate; |
@@ -1,2 +0,2 @@ | ||
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.jssIsolate=t():e.jssIsolate=t()}(this,function(){return function(e){function t(n){if(o[n])return o[n].exports;var r=o[n]={exports:{},id:n,loaded:!1};return e[n].call(r.exports,r,r.exports,t),r.loaded=!0,r.exports}var o={};return t.m=e,t.c=o,t.p="",t(0)}([function(e,t,o){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}function r(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=null,o=void 0,n=[];return function(r){if("regular"===r.type&&r.options.sheet&&r.options.sheet!==t&&r.options.sheet.options.isolate!==!1&&(!r.options.parent||"keyframe"!==r.options.parent.type)){if(r.style&&r.style.isolate===!1)return void delete r.style.isolate;if(!t&&r.options.jss){t=r.options.jss.createStyleSheet({},{link:!0,meta:"jss-isolate",index:-(1/0)});var i=e.reset?s({},a.default,e.reset):a.default;o=t.addRule("reset",i),t.attach()}n.indexOf(r.selector)===-1&&n.push(r.selector),u(o,n)}}}Object.defineProperty(t,"__esModule",{value:!0});var s=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var o=arguments[t];for(var n in o)Object.prototype.hasOwnProperty.call(o,n)&&(e[n]=o[n])}return e};t.default=r;var i=o(1),a=n(i),l=function(e){var t=void 0;return function(){for(var o=arguments.length,n=Array(o),r=0;r<o;r++)n[r]=arguments[r];clearTimeout(t),t=setTimeout(function(){return e.apply(void 0,n)})}},u=l(function(e,t){e.selector=t.join(",\n")})},function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={"border-collapse":"separate","border-spacing":"0","caption-side":"top",cursor:"auto",direction:"ltr","empty-cells":"show","font-family":"serif","font-size":"medium","font-style":"normal","font-variant":"normal","font-weight":"normal","font-stretch":"normal","line-height":"normal",hyphens:"none","letter-spacing":"normal","list-style":"disc outside none","tab-size":"8","text-align":"left","text-align-last":"auto","text-indent":"0","text-shadow":"none","text-transform":"none",visibility:"visible","white-space":"normal",widows:"2","word-spacing":"normal"}}])}); | ||
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.jssIsolate=t():e.jssIsolate=t()}(this,function(){return function(e){function t(n){if(o[n])return o[n].exports;var r=o[n]={exports:{},id:n,loaded:!1};return e[n].call(r.exports,r,r.exports,t),r.loaded=!0,r.exports}var o={};return t.m=e,t.c=o,t.p="",t(0)}([function(e,t,o){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}function r(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=null,o=void 0,n=[];return function(r){if("regular"===r.type&&r.options.sheet&&r.options.sheet!==t&&r.options.sheet.options.isolate!==!1&&(!r.options.parent||"keyframe"!==r.options.parent.type&&"conditional"!==r.options.parent.type)){if(r.style&&r.style.isolate===!1)return void delete r.style.isolate;if(!t&&r.options.jss){t=r.options.jss.createStyleSheet({},{link:!0,meta:"jss-isolate",index:-(1/0)});var s=e.reset?i({},a.default,e.reset):a.default;o=t.addRule("reset",s),t.attach()}n.indexOf(r.selector)===-1&&n.push(r.selector),u(o,n)}}}Object.defineProperty(t,"__esModule",{value:!0});var i=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var o=arguments[t];for(var n in o)Object.prototype.hasOwnProperty.call(o,n)&&(e[n]=o[n])}return e};t.default=r;var s=o(1),a=n(s),l=function(e){var t=void 0;return function(){for(var o=arguments.length,n=Array(o),r=0;r<o;r++)n[r]=arguments[r];clearTimeout(t),t=setTimeout(function(){return e.apply(void 0,n)})}},u=l(function(e,t){e.selector=t.join(",\n")})},function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={"border-collapse":"separate","border-spacing":"0","caption-side":"top",cursor:"auto",direction:"ltr","empty-cells":"show","font-family":"serif","font-size":"medium","font-style":"normal","font-variant":"normal","font-weight":"normal","font-stretch":"normal","line-height":"normal",hyphens:"none","letter-spacing":"normal","list-style":"disc outside none","tab-size":"8","text-align":"left","text-align-last":"auto","text-indent":"0","text-shadow":"none","text-transform":"none",visibility:"visible","white-space":"normal",widows:"2","word-spacing":"normal"}}])}); | ||
//# sourceMappingURL=jss-isolate.min.js.map |
@@ -47,3 +47,3 @@ 'use strict'; | ||
if (rule.options.sheet.options.isolate === false) return; | ||
if (rule.options.parent && rule.options.parent.type === 'keyframe') return; | ||
if (rule.options.parent && (rule.options.parent.type === 'keyframe' || rule.options.parent.type === 'conditional')) return; | ||
if (rule.style && rule.style.isolate === false) { | ||
@@ -50,0 +50,0 @@ delete rule.style.isolate; |
@@ -9,2 +9,6 @@ 'use strict'; | ||
var _jssNested = require('jss-nested'); | ||
var _jssNested2 = _interopRequireDefault(_jssNested); | ||
var _index = require('./index'); | ||
@@ -229,2 +233,45 @@ | ||
}); | ||
describe('nested media queries with jss-nested', function () { | ||
var sheet = void 0; | ||
beforeEach(function (done) { | ||
jss = (0, _jss.create)().use((0, _index2['default'])(), (0, _jssNested2['default'])()); | ||
sheet = jss.createStyleSheet({ | ||
link: { | ||
color: 'darksalmon', | ||
'@media (min-width: 320px)': { | ||
color: 'steelblue' | ||
} | ||
} | ||
}); | ||
setTimeout(done); | ||
}); | ||
it('should add selectors to the reset rule', function () { | ||
var resetRule = _jss.sheets.registry[0].getRule('reset'); | ||
(0, _expect2['default'])(resetRule.selector).to.contain(sheet.classes.link); | ||
}); | ||
}); | ||
describe('nested media queries with jss-nested with isolate:false', function () { | ||
beforeEach(function (done) { | ||
jss = (0, _jss.create)().use((0, _index2['default'])(), (0, _jssNested2['default'])()); | ||
jss.createStyleSheet({ | ||
link: { | ||
isolate: false, | ||
color: 'darksalmon', | ||
'@media (min-width: 320px)': { | ||
color: 'steelblue' | ||
} | ||
} | ||
}); | ||
setTimeout(done); | ||
}); | ||
it('should not add selectors to the reset rule', function () { | ||
var resetRule = _jss.sheets.registry[0].getRule('reset'); | ||
(0, _expect2['default'])(resetRule).to.be(undefined); | ||
}); | ||
}); | ||
}); |
{ | ||
"name": "jss-isolate", | ||
"description": "True rules isolation through automatic inheritable properties reset.", | ||
"version": "2.0.0", | ||
"version": "2.0.1", | ||
"author": { | ||
@@ -61,2 +61,3 @@ "name": "Maksim Koretskiy", | ||
"jss": "^6.0.0", | ||
"jss-nested": "^3.0.1", | ||
"karma": "^1.1.1", | ||
@@ -63,0 +64,0 @@ "karma-benchmark": "^0.6.0", |
@@ -14,6 +14,5 @@ # True rules isolation through automatic inheritable properties reset | ||
[Demo](http://cssinjs.github.io/examples/index.html#plugin-jss-isolate) - | ||
[JSS](https://github.com/cssinjs/jss) | ||
[Demo](http://cssinjs.github.io/examples/index.html#plugin-jss-isolate) | ||
[![Gitter](https://badges.gitter.im/Join Chat.svg)](https://gitter.im/cssinjs/lobby) | ||
[![Gitter](https://badges.gitter.im/JoinChat.svg)](https://gitter.im/cssinjs/lobby) | ||
@@ -23,9 +22,3 @@ ## Usage example | ||
```javascript | ||
import jss from 'jss' | ||
import preset from 'jss-preset-default' | ||
import isolate from 'jss-isolate' | ||
jss.setup(preset()).use(isolate()) | ||
const sheet = jss.createStyleSheet({ | ||
const styles = { | ||
// All atRules will be ignored in reset. | ||
@@ -47,4 +40,3 @@ '@font-face': { | ||
} | ||
}) | ||
} | ||
``` | ||
@@ -59,3 +51,3 @@ | ||
```javascript | ||
export default { | ||
const styles = { | ||
button: { | ||
@@ -67,3 +59,3 @@ isolate: false | ||
2. For a style sheet | ||
1. For a Style Sheet | ||
@@ -74,3 +66,3 @@ ```javascript | ||
## Additional reset. | ||
## Custom reset. | ||
@@ -77,0 +69,0 @@ If you want to pass additional properties that need to be resetted. |
@@ -47,3 +47,3 @@ 'use strict'; | ||
if (rule.options.sheet.options.isolate === false) return; | ||
if (rule.options.parent && rule.options.parent.type === 'keyframe') return; | ||
if (rule.options.parent && (rule.options.parent.type === 'keyframe' || rule.options.parent.type === 'conditional')) return; | ||
if (rule.style && rule.style.isolate === false) { | ||
@@ -50,0 +50,0 @@ delete rule.style.isolate; |
@@ -9,2 +9,6 @@ 'use strict'; | ||
var _jssNested = require('jss-nested'); | ||
var _jssNested2 = _interopRequireDefault(_jssNested); | ||
var _index = require('./index'); | ||
@@ -229,2 +233,45 @@ | ||
}); | ||
describe('nested media queries with jss-nested', function () { | ||
var sheet = void 0; | ||
beforeEach(function (done) { | ||
jss = (0, _jss.create)().use((0, _index2['default'])(), (0, _jssNested2['default'])()); | ||
sheet = jss.createStyleSheet({ | ||
link: { | ||
color: 'darksalmon', | ||
'@media (min-width: 320px)': { | ||
color: 'steelblue' | ||
} | ||
} | ||
}); | ||
setTimeout(done); | ||
}); | ||
it('should add selectors to the reset rule', function () { | ||
var resetRule = _jss.sheets.registry[0].getRule('reset'); | ||
(0, _expect2['default'])(resetRule.selector).to.contain(sheet.classes.link); | ||
}); | ||
}); | ||
describe('nested media queries with jss-nested with isolate:false', function () { | ||
beforeEach(function (done) { | ||
jss = (0, _jss.create)().use((0, _index2['default'])(), (0, _jssNested2['default'])()); | ||
jss.createStyleSheet({ | ||
link: { | ||
isolate: false, | ||
color: 'darksalmon', | ||
'@media (min-width: 320px)': { | ||
color: 'steelblue' | ||
} | ||
} | ||
}); | ||
setTimeout(done); | ||
}); | ||
it('should not add selectors to the reset rule', function () { | ||
var resetRule = _jss.sheets.registry[0].getRule('reset'); | ||
(0, _expect2['default'])(resetRule).to.be(undefined); | ||
}); | ||
}); | ||
}); |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
56830
857
34
91