Files
dewedev/node_modules/postcss-page-break/index.js
dwindown 7f2dd5260f Initial commit: Developer Tools MVP with visual editor
- Complete React app with 7 developer tools
- JSON Tool with visual structured editor
- Serialize Tool with visual structured editor
- URL, Base64, CSV/JSON, Beautifier, Diff tools
- Responsive navigation with dropdown menu
- Dark/light mode toggle
- Mobile-responsive design with sticky header
- All tools working with copy/paste functionality
2025-08-02 09:31:26 +07:00

36 lines
1.1 KiB
JavaScript

module.exports = function(options) {
return {
postcssPlugin: 'postcss-page-break',
Declaration(decl) {
if (decl.prop.startsWith('break-') && /^break-(inside|before|after)/.test(decl.prop)) {
// do not process column|region related properties
if (decl.value.search(/column|region/) >= 0) {
return;
}
let newValue;
switch (decl.value) {
case 'page':
newValue = 'always';
break;
case 'avoid-page':
newValue = 'avoid';
break;
default:
newValue = decl.value;
}
const newProperty = 'page-' + decl.prop;
if (decl.parent.every((sibling) => sibling.prop !== newProperty)) {
decl.cloneBefore({
prop: newProperty,
value: newValue,
});
}
}
},
};
};
module.exports.postcss = true;