@zeecoder/postcss-container-query
Advanced tools
Comparing version 2.7.4 to 3.0.0-alpha.0
@@ -1,1 +0,1 @@ | ||
"use strict";function _interopDefault(e){return e&&"object"==typeof e&&"default"in e?e.default:e}var fs=require("fs"),postcss=_interopDefault(require("postcss")),MetaBuilder=_interopDefault(require("@zeecoder/container-query-meta-builder"));function hasContainerDefinition(e){var r=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if(!e.nodes)return!1;for(var n=e.nodes.length,t=0;t<n;t++)if("atrule"===e.nodes[t].type&&"define-container"===e.nodes[t].name)return r&&e.nodes.splice(t,1),!0;return!1}function isValueUsingContainerUnits(e){if("string"!=typeof e)return!1;var r=e.toLowerCase().match(/(\d+(\.\d+)?)([rwhminax]+)/i);if(!Array.isArray(r)||"string"!=typeof r[3])return!1;var n=r[3];return"rh"===n||"rw"===n||"rmin"===n||"rmax"===n}function extractPropsFromNode(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{isContainer:!1,onlyContainerUnits:!1,stripContainerUnits:!1};if("rule"!==e.type)throw new Error('`ruleNode` must be of type "rule".');if(!1===Array.isArray(e.nodes))return{};for(var n={styles:{},values:{}},t=e.nodes.length,i=0;i<t;i++){var o=e.nodes[i],a=isValueUsingContainerUnits(o.value);if("decl"===o.type&&(!r.onlyContainerUnits||a)){if(r.isContainer&&a){if(!("width"!==o.prop&&"height"!==o.prop||-1===o.value.indexOf("rmin")&&-1===o.value.indexOf("rmax")))throw o.error("Width and height properties on containers cannot use rmin or rmax units.");if("width"===o.prop&&-1!==o.value.indexOf("rw"))throw o.error("Containers cannot use rw for the width property.");if("height"===o.prop&&-1!==o.value.indexOf("rh"))throw o.error("Containers cannot use rh for the height property.")}a?n.values[o.prop]=o.value:n.styles[o.prop]=o.value,r.stripContainerUnits&&a&&(e.nodes.splice(i,1),i--,t--)}}return 0===Object.keys(n.styles).length&&delete n.styles,0===Object.keys(n.values).length&&delete n.values,n}function saveMeta(e,r){return new Promise(function(n){var t=JSON.stringify(r),i=e+".json";fs.readFile(i,"utf8",function(e,r){e||r!==t?fs.writeFile(i,t,function(e){e&&console.error("Failed to save container query json file: "+e),n()}):n()})})}var plugin="postcss-container-query",isContainerQuery=function(e){return"atrule"===e.type&&"container"===e.name},walkRules=function(e,r,n){var t=[],i=function(e){return-1!==t.indexOf(e)},o=function(e,o){var a=hasContainerDefinition(e)||i(e.selector)||":self"===e.selector||r.singleContainer&&0===t.length,s={rule:e,isContainer:a};a&&!i(e.selector)&&t.push(e.selector),o&&(s.parentCQAtRule=o),n(s)};e.walk(function(e){if("rule"===e.type)o(e);else if("atrule"===e.type){if(!isContainerQuery(e))return;e.nodes.forEach(function(r){"rule"===r.type&&o(r,e)}),e.remove()}})};function containerQuery(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},r=e.getJSON||saveMeta,n=!1!==e.singleContainer;return function(e,t){var i={},o=null;for(var a in walkRules(e,{singleContainer:n},function(e){var r=e.rule,t=e.isContainer,a=e.parentCQAtRule;if(t&&":self"!==r.selector&&!i[r.selector]){var s=r.selector;if(n&&o)throw r.error('define-container declaration detected in singleContainer mode. Tried to override "'+o+'" with "'+s+'".');o=s,i[s]=new MetaBuilder(s)}var u=extractPropsFromNode(r,{isContainer:t,stripContainerUnits:!0});if(u.values||a&&u.styles){if(!o)throw r.error("Missing @define-container declaration before the processed node.");var l=i[o];if(l.resetQuery().resetDescendant(),a&&l.setQuery(a.params),t||l.setDescendant(r.selector),u.values)for(var f in u.values){var c=u.values[f];l.addStyle({prop:f,value:c})}if(a&&u.styles)for(var p in u.styles){var d=u.styles[p];l.addStyle({prop:p,value:d})}}}),i)i[a]=i[a].build();var s=n?o?i[o]:{}:i,u=e.source.input.file;t.messages.push({type:"metadata",plugin:plugin,meta:s,filepath:u}),r(u,s)}}var containerQuery$1=postcss.plugin(plugin,containerQuery);module.exports=containerQuery$1; | ||
"use strict";function _interopDefault(e){return e&&"object"==typeof e&&"default"in e?e.default:e}var postcss=_interopDefault(require("postcss")),MetaBuilder=_interopDefault(require("@zeecoder/container-query-meta-builder"));function hasContainerDefinition(e,t=!0){if(!e.nodes)return!1;const r=e.nodes.length;let n=0;for(;n<r;n++)if("atrule"===e.nodes[n].type&&"define-container"===e.nodes[n].name)return t&&e.nodes.splice(n,1),!0;return!1}function isValueUsingContainerUnits(e){if("string"!=typeof e)return!1;const t=e.toLowerCase().match(/(\d+(\.\d+)?)([rwhminax]+)/i);if(!Array.isArray(t)||"string"!=typeof t[3])return!1;const r=t[3];return"rh"===r||"rw"===r||"rmin"===r||"rmax"===r}function extractPropsFromNode(e,t={isContainer:!1,onlyContainerUnits:!1,stripContainerUnits:!1}){if("rule"!==e.type)throw new Error('`ruleNode` must be of type "rule".');if(!1===Array.isArray(e.nodes))return{};const r={styles:{},values:{}};let n=e.nodes.length;for(let i=0;i<n;i++){const o=e.nodes[i],s=isValueUsingContainerUnits(o.value);if("decl"===o.type&&(!t.onlyContainerUnits||s)){if(t.isContainer&&s){if(!("width"!==o.prop&&"height"!==o.prop||-1===o.value.indexOf("rmin")&&-1===o.value.indexOf("rmax")))throw o.error("Width and height properties on containers cannot use rmin or rmax units.");if("width"===o.prop&&-1!==o.value.indexOf("rw"))throw o.error("Containers cannot use rw for the width property.");if("height"===o.prop&&-1!==o.value.indexOf("rh"))throw o.error("Containers cannot use rh for the height property.")}s?r.values[o.prop]=o.value:r.styles[o.prop]=o.value,t.stripContainerUnits&&s&&(e.nodes.splice(i,1),i--,n--)}}return 0===Object.keys(r.styles).length&&delete r.styles,0===Object.keys(r.values).length&&delete r.values,r}const plugin="postcss-container-query",isContainerQuery=e=>"atrule"===e.type&&"container"===e.name,walkRules=(e,t,r)=>{const n=[],i=e=>-1!==n.indexOf(e),o=(e,o)=>{const s=hasContainerDefinition(e)||i(e.selector)||":self"===e.selector||t.singleContainer&&0===n.length,a={rule:e,isContainer:s};s&&!i(e.selector)&&n.push(e.selector),o&&(a.parentCQAtRule=o),r(a)};e.walk(e=>{if("rule"===e.type)o(e);else if("atrule"===e.type){if(!isContainerQuery(e))return;e.nodes.forEach(t=>{"rule"===t.type&&o(t,e)}),e.remove()}})};function containerQuery(e={}){const t=!1!==e.singleContainer,r=void 0!==e.exportMetaInCss?e.exportMetaInCss:"meta";return function(e,n){const i={};let o=null;walkRules(e,{singleContainer:t},({rule:e,isContainer:r,parentCQAtRule:n})=>{if(r&&":self"!==e.selector&&!i[e.selector]){const r=e.selector;if(t&&o)throw e.error("define-container declaration detected in singleContainer mode. "+`Tried to override "${o}" with "${r}".`);o=r,i[r]=new MetaBuilder(r)}const s=extractPropsFromNode(e,{isContainer:r,stripContainerUnits:!0});if(!(s.values||n&&s.styles))return;if(!o)throw e.error("Missing @define-container declaration before the processed node.");const a=i[o];if(a.resetQuery().resetDescendant(),n&&a.setQuery(n.params),r||a.setDescendant(e.selector),s.values)for(let e in s.values){const t=s.values[e];a.addStyle({prop:e,value:t})}if(n&&s.styles)for(let e in s.styles){const t=s.styles[e];a.addStyle({prop:e,value:t})}});for(let e in i)i[e]=i[e].build();const s=t?o?i[o]:{}:i,a=e.source.input.file;n.messages.push({type:"metadata",plugin:plugin,meta:s,filepath:a}),r&&e.append(`\n:export { ${r}: '${JSON.stringify(s)}' }`)}}var containerQuery$1=postcss.plugin(plugin,containerQuery);module.exports=containerQuery$1; |
@@ -1,1 +0,1 @@ | ||
"use strict";function getMetadataFromMessages(t){var e=t.filter(function(t){return"postcss-container-query"===t.plugin&&"metadata"===t.type});return e.length?e[0].meta:null}module.exports=getMetadataFromMessages; | ||
"use strict";function getMetadataFromMessages(t){const e=t.filter(t=>"postcss-container-query"===t.plugin&&"metadata"===t.type);return e.length?e[0].meta:null}module.exports=getMetadataFromMessages; |
@@ -6,6 +6,6 @@ { | ||
"license": "MIT", | ||
"version": "2.7.4", | ||
"version": "3.0.0-alpha.0", | ||
"author": "Viktor Hubert <rpgmorpheus@gmail.com>", | ||
"engines": { | ||
"node": ">=4" | ||
"node": ">=6" | ||
}, | ||
@@ -17,25 +17,21 @@ "main": "dist/index.js", | ||
"scripts": { | ||
"test": "yarn run flow && jest", | ||
"test": "yarn flow", | ||
"build": "rollup -c", | ||
"watch:build": "rollup -c --watch", | ||
"flow": "flow check", | ||
"prebuild": "yarn run flow", | ||
"prepublish": "yarn build" | ||
}, | ||
"devDependencies": { | ||
"babel-plugin-external-helpers": "^6.22.0", | ||
"babel-plugin-lodash": "^3.2.11", | ||
"babel-plugin-transform-flow-strip-types": "^6.22.0", | ||
"babel-preset-env": "^1.6.0", | ||
"flow-bin": "^0.66.0", | ||
"jest": "^22.4.2", | ||
"rollup": "^0.56.2", | ||
"rollup-plugin-babel": "^3.0.2", | ||
"@babel/core": "^7.1.6", | ||
"@babel/plugin-transform-flow-strip-types": "^7.1.6", | ||
"@babel/preset-env": "^7.1.6", | ||
"flow-bin": "^0.86.0", | ||
"rollup": "^0.67.3", | ||
"rollup-plugin-babel": "^4.0.3", | ||
"rollup-plugin-flow": "^1.1.1", | ||
"rollup-plugin-uglify": "^3.0.0" | ||
"rollup-plugin-terser": "^3.0.0" | ||
}, | ||
"dependencies": { | ||
"@zeecoder/container-query-meta-builder": "^2.7.4", | ||
"lodash": "^4.17.4", | ||
"postcss": "^6.0.1" | ||
"@zeecoder/container-query-meta-builder": "^3.0.0-alpha.0", | ||
"postcss": "^7.0.5" | ||
}, | ||
@@ -63,3 +59,4 @@ "keywords": [ | ||
"access": "public" | ||
} | ||
}, | ||
"gitHead": "b59a8de97d9bafcbd99da105396dddd63a40f72d" | ||
} |
No v1
QualityPackage is not semver >=1. This means it is not stable and does not support ^ ranges.
Found 1 instance in 1 package
Filesystem access
Supply chain riskAccesses the file system, and could potentially read sensitive data.
Found 1 instance in 1 package
Minified code
QualityThis package contains minified code. This may be harmless in some cases where minified code is included in packaged libraries, however packages on npm should not minify code.
Found 1 instance in 1 package
2
8
1
6504
6
26
+ Added@zeecoder/container-query-meta-builder@3.0.0(transitive)
+ Addedpicocolors@0.2.1(transitive)
+ Addedpostcss@7.0.39(transitive)
- Removedlodash@^4.17.4
- Removed@zeecoder/container-query-meta-builder@2.7.4(transitive)
- Removedansi-styles@3.2.1(transitive)
- Removedchalk@2.4.2(transitive)
- Removedcolor-convert@1.9.3(transitive)
- Removedcolor-name@1.1.3(transitive)
- Removedescape-string-regexp@1.0.5(transitive)
- Removedhas-flag@3.0.0(transitive)
- Removedlodash@4.17.21(transitive)
- Removedpostcss@6.0.23(transitive)
- Removedsupports-color@5.5.0(transitive)
Updated@zeecoder/container-query-meta-builder@^3.0.0-alpha.0
Updatedpostcss@^7.0.5