jss-extend
Advanced tools
Comparing version 3.0.1 to 4.0.0
@@ -0,1 +1,5 @@ | ||
## 4.0.0 / 2017-04-10 | ||
- support jss 7.0 | ||
## 3.0.1 / 2017-03-01 | ||
@@ -2,0 +6,0 @@ |
@@ -65,2 +65,4 @@ (function webpackUniversalModuleDefinition(root, factory) { | ||
exports['default'] = jssExtend; | ||
var _warning = __webpack_require__(1); | ||
@@ -72,5 +74,5 @@ | ||
function isObject(obj) { | ||
var isObject = function isObject(obj) { | ||
return obj && (typeof obj === 'undefined' ? 'undefined' : _typeof(obj)) === 'object' && !Array.isArray(obj); | ||
} | ||
}; | ||
@@ -80,8 +82,13 @@ /** | ||
*/ | ||
function extend(rule, newStyle, style) { | ||
if (typeof style.extend == 'string') { | ||
if (rule.options && rule.options.sheet) { | ||
var refRule = rule.options.sheet.getRule(style.extend); | ||
function extend(style, rule, sheet) { | ||
var newStyle = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {}; | ||
if (typeof style.extend === 'string') { | ||
if (sheet) { | ||
var refRule = sheet.getRule(style.extend); | ||
if (refRule) { | ||
if (refRule === rule) (0, _warning2['default'])(false, '[JSS] A rule tries to extend itself \r\n%s', rule);else extend(rule, newStyle, refRule.originalStyle); | ||
if (refRule === rule) (0, _warning2['default'])(false, '[JSS] A rule tries to extend itself \r\n%s', rule);else if (refRule.options.parent) { | ||
var originalStyle = refRule.options.parent.rules.raw[style.extend]; | ||
extend(originalStyle, rule, sheet, newStyle); | ||
} | ||
} | ||
@@ -91,3 +98,3 @@ } | ||
for (var index = 0; index < style.extend.length; index++) { | ||
extend(rule, newStyle, style.extend[index]); | ||
extend(style.extend[index], rule, sheet, newStyle); | ||
} | ||
@@ -97,6 +104,6 @@ } else { | ||
if (prop === 'extend') { | ||
extend(rule, newStyle, style.extend.extend); | ||
extend(style.extend.extend, rule, sheet, newStyle); | ||
} else if (isObject(style.extend[prop])) { | ||
if (!newStyle[prop]) newStyle[prop] = {}; | ||
extend(rule, newStyle[prop], style.extend[prop]); | ||
extend(style.extend[prop], rule, sheet, newStyle[prop]); | ||
} else { | ||
@@ -111,5 +118,5 @@ newStyle[prop] = style.extend[prop]; | ||
if (isObject(newStyle[_prop]) && isObject(style[_prop])) { | ||
extend(rule, newStyle[_prop], style[_prop]); | ||
extend(style[_prop], rule, sheet, newStyle[_prop]); | ||
} else if (isObject(style[_prop])) { | ||
newStyle[_prop] = extend(rule, {}, style[_prop]); | ||
newStyle[_prop] = extend(style[_prop], rule, sheet); | ||
} else { | ||
@@ -129,9 +136,9 @@ newStyle[_prop] = style[_prop]; | ||
*/ | ||
function jssExtend() { | ||
function onProcessStyle(style, rule, sheet) { | ||
return style.extend ? extend(style, rule, sheet) : style; | ||
} | ||
exports['default'] = function () { | ||
return function (rule) { | ||
if (!rule.style || !rule.style.extend) return; | ||
rule.style = extend(rule, {}, rule.style); | ||
}; | ||
}; | ||
return { onProcessStyle: onProcessStyle }; | ||
} | ||
@@ -138,0 +145,0 @@ /***/ }, |
@@ -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.jssExtend=t():e.jssExtend=t()}(this,function(){return function(e){function t(o){if(n[o])return n[o].exports;var r=n[o]={exports:{},id:o,loaded:!1};return e[o].call(r.exports,r,r.exports,t),r.loaded=!0,r.exports}var n={};return t.m=e,t.c=n,t.p="",t(0)}([function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e){return e&&"object"===("undefined"==typeof e?"undefined":i(e))&&!Array.isArray(e)}function f(e,t,n){if("string"==typeof n.extend){if(e.options&&e.options.sheet){var o=e.options.sheet.getRule(n.extend);o&&(o===e?(0,s.default)(!1,"[JSS] A rule tries to extend itself \r\n%s",e):f(e,t,o.originalStyle))}}else if(Array.isArray(n.extend))for(var i=0;i<n.extend.length;i++)f(e,t,n.extend[i]);else for(var u in n.extend)"extend"===u?f(e,t,n.extend.extend):r(n.extend[u])?(t[u]||(t[u]={}),f(e,t[u],n.extend[u])):t[u]=n.extend[u];for(var d in n)"extend"!==d&&(r(t[d])&&r(n[d])?f(e,t[d],n[d]):r(n[d])?t[d]=f(e,{},n[d]):t[d]=n[d]);return t}Object.defineProperty(t,"__esModule",{value:!0});var i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},u=n(1),s=o(u);t.default=function(){return function(e){e.style&&e.style.extend&&(e.style=f(e,{},e.style))}}},function(e,t,n){"use strict";var o=function(){};e.exports=o}])}); | ||
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.jssExtend=t():e.jssExtend=t()}(this,function(){return function(e){function t(o){if(n[o])return n[o].exports;var r=n[o]={exports:{},id:o,loaded:!1};return e[o].call(r.exports,r,r.exports,t),r.loaded=!0,r.exports}var n={};return t.m=e,t.c=n,t.p="",t(0)}([function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function r(e,t,n){var o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};if("string"==typeof e.extend){if(n){var f=n.getRule(e.extend);if(f)if(f===t)(0,d.default)(!1,"[JSS] A rule tries to extend itself \r\n%s",t);else if(f.options.parent){var i=f.options.parent.rules.raw[e.extend];r(i,t,n,o)}}}else if(Array.isArray(e.extend))for(var u=0;u<e.extend.length;u++)r(e.extend[u],t,n,o);else for(var c in e.extend)"extend"===c?r(e.extend.extend,t,n,o):s(e.extend[c])?(o[c]||(o[c]={}),r(e.extend[c],t,n,o[c])):o[c]=e.extend[c];for(var l in e)"extend"!==l&&(s(o[l])&&s(e[l])?r(e[l],t,n,o[l]):s(e[l])?o[l]=r(e[l],t,n):o[l]=e[l]);return o}function f(){function e(e,t,n){return e.extend?r(e,t,n):e}return{onProcessStyle:e}}Object.defineProperty(t,"__esModule",{value:!0});var i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};t.default=f;var u=n(1),d=o(u),s=function(e){return e&&"object"===("undefined"==typeof e?"undefined":i(e))&&!Array.isArray(e)}},function(e,t,n){"use strict";var o=function(){};e.exports=o}])}); | ||
//# sourceMappingURL=jss-extend.min.js.map |
@@ -9,2 +9,4 @@ 'use strict'; | ||
exports['default'] = jssExtend; | ||
var _warning = require('warning'); | ||
@@ -16,5 +18,5 @@ | ||
function isObject(obj) { | ||
var isObject = function isObject(obj) { | ||
return obj && (typeof obj === 'undefined' ? 'undefined' : _typeof(obj)) === 'object' && !Array.isArray(obj); | ||
} | ||
}; | ||
@@ -24,8 +26,13 @@ /** | ||
*/ | ||
function extend(rule, newStyle, style) { | ||
if (typeof style.extend == 'string') { | ||
if (rule.options && rule.options.sheet) { | ||
var refRule = rule.options.sheet.getRule(style.extend); | ||
function extend(style, rule, sheet) { | ||
var newStyle = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {}; | ||
if (typeof style.extend === 'string') { | ||
if (sheet) { | ||
var refRule = sheet.getRule(style.extend); | ||
if (refRule) { | ||
if (refRule === rule) (0, _warning2['default'])(false, '[JSS] A rule tries to extend itself \r\n%s', rule);else extend(rule, newStyle, refRule.originalStyle); | ||
if (refRule === rule) (0, _warning2['default'])(false, '[JSS] A rule tries to extend itself \r\n%s', rule);else if (refRule.options.parent) { | ||
var originalStyle = refRule.options.parent.rules.raw[style.extend]; | ||
extend(originalStyle, rule, sheet, newStyle); | ||
} | ||
} | ||
@@ -35,3 +42,3 @@ } | ||
for (var index = 0; index < style.extend.length; index++) { | ||
extend(rule, newStyle, style.extend[index]); | ||
extend(style.extend[index], rule, sheet, newStyle); | ||
} | ||
@@ -41,6 +48,6 @@ } else { | ||
if (prop === 'extend') { | ||
extend(rule, newStyle, style.extend.extend); | ||
extend(style.extend.extend, rule, sheet, newStyle); | ||
} else if (isObject(style.extend[prop])) { | ||
if (!newStyle[prop]) newStyle[prop] = {}; | ||
extend(rule, newStyle[prop], style.extend[prop]); | ||
extend(style.extend[prop], rule, sheet, newStyle[prop]); | ||
} else { | ||
@@ -55,5 +62,5 @@ newStyle[prop] = style.extend[prop]; | ||
if (isObject(newStyle[_prop]) && isObject(style[_prop])) { | ||
extend(rule, newStyle[_prop], style[_prop]); | ||
extend(style[_prop], rule, sheet, newStyle[_prop]); | ||
} else if (isObject(style[_prop])) { | ||
newStyle[_prop] = extend(rule, {}, style[_prop]); | ||
newStyle[_prop] = extend(style[_prop], rule, sheet); | ||
} else { | ||
@@ -73,8 +80,8 @@ newStyle[_prop] = style[_prop]; | ||
*/ | ||
function jssExtend() { | ||
function onProcessStyle(style, rule, sheet) { | ||
return style.extend ? extend(style, rule, sheet) : style; | ||
} | ||
exports['default'] = function () { | ||
return function (rule) { | ||
if (!rule.style || !rule.style.extend) return; | ||
rule.style = extend(rule, {}, rule.style); | ||
}; | ||
}; | ||
return { onProcessStyle: onProcessStyle }; | ||
} |
@@ -24,3 +24,3 @@ 'use strict'; | ||
var settings = { | ||
generateClassName: function generateClassName(str, rule) { | ||
generateClassName: function generateClassName(rule) { | ||
return rule.name + '-id'; | ||
@@ -27,0 +27,0 @@ } |
{ | ||
"name": "jss-extend", | ||
"description": "JSS plugin that enables inheritance", | ||
"version": "3.0.1", | ||
"version": "4.0.0", | ||
"author": { | ||
@@ -60,3 +60,3 @@ "name": "Oleg Slobodskoi", | ||
"json-loader": "^0.5.4", | ||
"jss": "^6.0.0", | ||
"jss": "^7.0.0", | ||
"jss-expand": "^2.0.0", | ||
@@ -83,3 +83,3 @@ "jss-nested": "^3.0.0", | ||
"peerDependencies": { | ||
"jss": "^6.0.0" | ||
"jss": "^7.0.0" | ||
}, | ||
@@ -86,0 +86,0 @@ "lint-staged": { |
@@ -10,2 +10,4 @@ 'use strict'; | ||
exports['default'] = jssExtend; | ||
var _warning = require('warning'); | ||
@@ -17,5 +19,5 @@ | ||
function isObject(obj) { | ||
var isObject = function isObject(obj) { | ||
return obj && (typeof obj === 'undefined' ? 'undefined' : _typeof(obj)) === 'object' && !Array.isArray(obj); | ||
} | ||
}; | ||
@@ -25,8 +27,13 @@ /** | ||
*/ | ||
function extend(rule, newStyle, style) { | ||
if (typeof style.extend == 'string') { | ||
if (rule.options && rule.options.sheet) { | ||
var refRule = rule.options.sheet.getRule(style.extend); | ||
function extend(style, rule, sheet) { | ||
var newStyle = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {}; | ||
if (typeof style.extend === 'string') { | ||
if (sheet) { | ||
var refRule = sheet.getRule(style.extend); | ||
if (refRule) { | ||
if (refRule === rule) _get__('warning')(false, '[JSS] A rule tries to extend itself \r\n%s', rule);else _get__('extend')(rule, newStyle, refRule.originalStyle); | ||
if (refRule === rule) _get__('warning')(false, '[JSS] A rule tries to extend itself \r\n%s', rule);else if (refRule.options.parent) { | ||
var originalStyle = refRule.options.parent.rules.raw[style.extend]; | ||
_get__('extend')(originalStyle, rule, sheet, newStyle); | ||
} | ||
} | ||
@@ -36,3 +43,3 @@ } | ||
for (var index = 0; index < style.extend.length; index++) { | ||
_get__('extend')(rule, newStyle, style.extend[index]); | ||
_get__('extend')(style.extend[index], rule, sheet, newStyle); | ||
} | ||
@@ -42,6 +49,6 @@ } else { | ||
if (prop === 'extend') { | ||
_get__('extend')(rule, newStyle, style.extend.extend); | ||
_get__('extend')(style.extend.extend, rule, sheet, newStyle); | ||
} else if (_get__('isObject')(style.extend[prop])) { | ||
if (!newStyle[prop]) newStyle[prop] = {}; | ||
_get__('extend')(rule, newStyle[prop], style.extend[prop]); | ||
_get__('extend')(style.extend[prop], rule, sheet, newStyle[prop]); | ||
} else { | ||
@@ -56,5 +63,5 @@ newStyle[prop] = style.extend[prop]; | ||
if (_get__('isObject')(newStyle[_prop]) && _get__('isObject')(style[_prop])) { | ||
_get__('extend')(rule, newStyle[_prop], style[_prop]); | ||
_get__('extend')(style[_prop], rule, sheet, newStyle[_prop]); | ||
} else if (_get__('isObject')(style[_prop])) { | ||
newStyle[_prop] = _get__('extend')(rule, {}, style[_prop]); | ||
newStyle[_prop] = _get__('extend')(style[_prop], rule, sheet); | ||
} else { | ||
@@ -74,12 +81,10 @@ newStyle[_prop] = style[_prop]; | ||
*/ | ||
function jssExtend() { | ||
function onProcessStyle(style, rule, sheet) { | ||
return style.extend ? _get__('extend')(style, rule, sheet) : style; | ||
} | ||
var _DefaultExportValue = function _DefaultExportValue() { | ||
return function (rule) { | ||
if (!rule.style || !rule.style.extend) return; | ||
rule.style = _get__('extend')(rule, {}, rule.style); | ||
}; | ||
}; | ||
return { onProcessStyle: onProcessStyle }; | ||
} | ||
exports['default'] = _DefaultExportValue; | ||
var _RewiredData__ = Object.create(null); | ||
@@ -210,6 +215,6 @@ | ||
var _typeOfOriginalExport = typeof _DefaultExportValue === 'undefined' ? 'undefined' : _typeof(_DefaultExportValue); | ||
var _typeOfOriginalExport = typeof jssExtend === 'undefined' ? 'undefined' : _typeof(jssExtend); | ||
function addNonEnumerableProperty(name, value) { | ||
Object.defineProperty(_DefaultExportValue, name, { | ||
Object.defineProperty(jssExtend, name, { | ||
value: value, | ||
@@ -221,3 +226,3 @@ enumerable: false, | ||
if ((_typeOfOriginalExport === 'object' || _typeOfOriginalExport === 'function') && Object.isExtensible(_DefaultExportValue)) { | ||
if ((_typeOfOriginalExport === 'object' || _typeOfOriginalExport === 'function') && Object.isExtensible(jssExtend)) { | ||
addNonEnumerableProperty('__get__', _get__); | ||
@@ -224,0 +229,0 @@ addNonEnumerableProperty('__GetDependency__', _get__); |
@@ -31,3 +31,3 @@ 'use strict'; | ||
var settings = { | ||
generateClassName: function generateClassName(str, rule) { | ||
generateClassName: function generateClassName(rule) { | ||
return rule.name + '-id'; | ||
@@ -34,0 +34,0 @@ } |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
68763
1067