Skip to content

Commit

Permalink
Minor optimizations of lost-column
Browse files Browse the repository at this point in the history
  • Loading branch information
peterramsing committed Aug 21, 2023
1 parent ded97cd commit 099651a
Showing 1 changed file with 43 additions and 43 deletions.
86 changes: 43 additions & 43 deletions src/lost-column.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,59 +3,58 @@ import { lgLogic } from './core/lg-logic';
import { lgUtils } from './core/lg-utilities';

export const lostColumn = (css: any, settings: any, result: any) => {
css.walkDecls('lost-column', function lostColumnFunction(decl: any) {
let declArr = [];
css.walkDecls('lost-column', (decl: any) => {
const gridDirection = settings.direction;
let lostColumn;
let lostColumnCycle;
const validUnits = ['%', 'vw'];

let lostColumnCycle =
settings.cycle === 'auto' ? decl.value.split('/')[1] : settings.cycle;
let unit = settings.gridUnit;
let lostColumnRounder = settings.rounder;
let lostColumnGutter = settings.gutter;
let lostColumnFlexbox = settings.flexbox;
const validUnits = ['%', 'vw'];
let lostColumn;

if (decl.value !== 'none') {
if (settings.cycle === 'auto') {
lostColumnCycle = decl.value.split('/')[1];
} else {
lostColumnCycle = settings.cycle;
}

const sanitizedDecl = lgUtils.glueFractionMembers(decl.value);
declArr = sanitizedDecl.split(' ');
const declArr = sanitizedDecl.split(' ');
lostColumn = declArr[0];

if (declArr[1] !== undefined && declArr[1].search(/^\d/) !== -1) {
lostColumnCycle = declArr[1];
}

if (
declArr[1] === 'flex' ||
declArr[1] === 'no-flex' ||
declArr[1] === 'auto'
) {
lostColumnCycle = declArr[0].split('/')[1];
}
// eslint-disable-next-line
if (declArr[2] !== undefined && declArr[2].search(/^[\.\d]/) !== -1) {
lostColumnGutter = declArr[2];
}

if (declArr.indexOf('flex') !== -1) {
lostColumnFlexbox = 'flex';
}

if (declArr.indexOf('no-flex') !== -1) {
lostColumnFlexbox = 'no-flex';
}

decl.parent.nodes.forEach(function lostColumnCycleFunction(
declaration: any
) {
if (declaration.prop === 'lost-column-cycle') {
lostColumnCycle = declaration.value;

declaration.remove();
decl.parent.nodes.forEach((declaration: any) => {
switch (declaration.prop) {
case 'lost-column-cycle':
lostColumnCycle = declaration.value;
declaration.remove();
break;
case 'lost-unit':
if (lgLogic.validateUnit(declaration.value, validUnits)) {
unit = declaration.value;
} else {
decl.warn(
result,
`${declaration.value} is not a valid unit for lost-column`
);
}
declaration.remove();
break;
case 'lost-column-rounder':
lostColumnRounder = declaration.value;
declaration.remove();
break;
case 'lost-column-gutter':
lostColumnGutter = declaration.value;
declaration.remove();
break;
case 'lost-column-flexbox':
if (declaration.value === 'flex') {
lostColumnFlexbox = 'flex';
} else {
throw declaration.error(
`lost-column-flexbox: property '${declaration.value}' is unknown.`
);
}
declaration.remove();
break;
}
});

Expand Down Expand Up @@ -272,6 +271,7 @@ export const lostColumn = (css: any, settings: any, result: any) => {
),
});
} else {
// If decl.value is 'none'
decl.parent.nodes.forEach((declaration: any) => {
if (declaration.prop === 'lost-column-flexbox') {
if (declaration.value === 'flex') {
Expand Down

0 comments on commit 099651a

Please sign in to comment.