You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
39 lines
1.2 KiB
39 lines
1.2 KiB
'use strict'; |
|
|
|
const index = require('./prepare/index.cjs'); |
|
const _1MergeAtrule = require('./1-mergeAtrule.cjs'); |
|
const _2InitialMergeRuleset = require('./2-initialMergeRuleset.cjs'); |
|
const _3DisjoinRuleset = require('./3-disjoinRuleset.cjs'); |
|
const _4RestructShorthand = require('./4-restructShorthand.cjs'); |
|
const _6RestructBlock = require('./6-restructBlock.cjs'); |
|
const _7MergeRuleset = require('./7-mergeRuleset.cjs'); |
|
const _8RestructRuleset = require('./8-restructRuleset.cjs'); |
|
|
|
function restructure(ast, options) { |
|
// prepare ast for restructing |
|
const indexer = index(ast, options); |
|
options.logger('prepare', ast); |
|
|
|
_1MergeAtrule(ast, options); |
|
options.logger('mergeAtrule', ast); |
|
|
|
_2InitialMergeRuleset(ast); |
|
options.logger('initialMergeRuleset', ast); |
|
|
|
_3DisjoinRuleset(ast); |
|
options.logger('disjoinRuleset', ast); |
|
|
|
_4RestructShorthand(ast, indexer); |
|
options.logger('restructShorthand', ast); |
|
|
|
_6RestructBlock(ast); |
|
options.logger('restructBlock', ast); |
|
|
|
_7MergeRuleset(ast); |
|
options.logger('mergeRuleset', ast); |
|
|
|
_8RestructRuleset(ast); |
|
options.logger('restructRuleset', ast); |
|
} |
|
|
|
module.exports = restructure;
|
|
|