summaryrefslogtreecommitdiff
path: root/node_modules/autoprefixer/lib/hacks/grid-template-areas.js
diff options
context:
space:
mode:
Diffstat (limited to 'node_modules/autoprefixer/lib/hacks/grid-template-areas.js')
-rw-r--r--node_modules/autoprefixer/lib/hacks/grid-template-areas.js84
1 files changed, 0 insertions, 84 deletions
diff --git a/node_modules/autoprefixer/lib/hacks/grid-template-areas.js b/node_modules/autoprefixer/lib/hacks/grid-template-areas.js
deleted file mode 100644
index ffc9673f..00000000
--- a/node_modules/autoprefixer/lib/hacks/grid-template-areas.js
+++ /dev/null
@@ -1,84 +0,0 @@
-let Declaration = require('../declaration')
-let {
- getGridGap,
- inheritGridGap,
- parseGridAreas,
- prefixTrackProp,
- prefixTrackValue,
- warnGridGap,
- warnMissedAreas
-} = require('./grid-utils')
-
-function getGridRows(tpl) {
- return tpl
- .trim()
- .slice(1, -1)
- .split(/["']\s*["']?/g)
-}
-
-class GridTemplateAreas extends Declaration {
- /**
- * Translate grid-template-areas to separate -ms- prefixed properties
- */
- insert(decl, prefix, prefixes, result) {
- if (prefix !== '-ms-') return super.insert(decl, prefix, prefixes)
-
- let hasColumns = false
- let hasRows = false
- let parent = decl.parent
- let gap = getGridGap(decl)
- gap = inheritGridGap(decl, gap) || gap
-
- // remove already prefixed rows
- // to prevent doubling prefixes
- parent.walkDecls(/-ms-grid-rows/, i => i.remove())
-
- // add empty tracks to rows
- parent.walkDecls(/grid-template-(rows|columns)/, trackDecl => {
- if (trackDecl.prop === 'grid-template-rows') {
- hasRows = true
- let { prop, value } = trackDecl
- trackDecl.cloneBefore({
- prop: prefixTrackProp({ prefix, prop }),
- value: prefixTrackValue({ gap: gap.row, value })
- })
- } else {
- hasColumns = true
- }
- })
-
- let gridRows = getGridRows(decl.value)
-
- if (hasColumns && !hasRows && gap.row && gridRows.length > 1) {
- decl.cloneBefore({
- prop: '-ms-grid-rows',
- raws: {},
- value: prefixTrackValue({
- gap: gap.row,
- value: `repeat(${gridRows.length}, auto)`
- })
- })
- }
-
- // warnings
- warnGridGap({
- decl,
- gap,
- hasColumns,
- result
- })
-
- let areas = parseGridAreas({
- gap,
- rows: gridRows
- })
-
- warnMissedAreas(areas, decl, result)
-
- return decl
- }
-}
-
-GridTemplateAreas.names = ['grid-template-areas']
-
-module.exports = GridTemplateAreas