From d3674de88212db48409dd476e5450f4e7d8df0f0 Mon Sep 17 00:00:00 2001 From: farfromrefuge Date: Tue, 1 Mar 2022 21:34:28 +0100 Subject: [PATCH] feat: allow better tree shaking (#9798) --- packages/core/ui/styling/css-selector/index.ts | 16 ++++++++-------- packages/core/ui/styling/linear-gradient.ts | 2 +- packages/core/ui/styling/style-properties.ts | 6 +++--- 3 files changed, 12 insertions(+), 12 deletions(-) diff --git a/packages/core/ui/styling/css-selector/index.ts b/packages/core/ui/styling/css-selector/index.ts index b661399fa..4f8b6556d 100644 --- a/packages/core/ui/styling/css-selector/index.ts +++ b/packages/core/ui/styling/css-selector/index.ts @@ -3,7 +3,7 @@ import { isCssVariable } from '../../core/properties'; import { isNullOrUndefined } from '../../../utils/types'; import * as cssParser from '../../../css'; -import * as parser from '../../../css/parser'; +import { Combinator as ICombinator , SimpleSelectorSequence as ISimpleSelectorSequence, Selector as ISelector, SimpleSelector as ISimpleSelector, parseSelector} from '../../../css/parser'; /** * An interface describing the shape of a type on which the selectors may apply. @@ -527,7 +527,7 @@ function createDeclaration(decl: cssParser.Declaration): any { return { property: isCssVariable(decl.property) ? decl.property : decl.property.toLowerCase(), value: decl.value }; } -function createSimpleSelectorFromAst(ast: parser.SimpleSelector): SimpleSelector { +function createSimpleSelectorFromAst(ast: ISimpleSelector): SimpleSelector { if (ast.type === '.') { return new ClassSelector(ast.identifier); } @@ -553,7 +553,7 @@ function createSimpleSelectorFromAst(ast: parser.SimpleSelector): SimpleSelector } } -function createSimpleSelectorSequenceFromAst(ast: parser.SimpleSelectorSequence): SimpleSelectorSequence | SimpleSelector { +function createSimpleSelectorSequenceFromAst(ast: ISimpleSelectorSequence): SimpleSelectorSequence | SimpleSelector { if (ast.length === 0) { return new InvalidSelector(new Error('Empty simple selector sequence.')); } else if (ast.length === 1) { @@ -563,7 +563,7 @@ function createSimpleSelectorSequenceFromAst(ast: parser.SimpleSelectorSequence) } } -function createSelectorFromAst(ast: parser.Selector): SimpleSelector | SimpleSelectorSequence | Selector { +function createSelectorFromAst(ast: ISelector): SimpleSelector | SimpleSelectorSequence | Selector { if (ast.length === 0) { return new InvalidSelector(new Error('Empty selector.')); } else if (ast.length === 1) { @@ -571,10 +571,10 @@ function createSelectorFromAst(ast: parser.Selector): SimpleSelector | SimpleSel } else { const simpleSelectorSequences = []; let simpleSelectorSequence: SimpleSelectorSequence | SimpleSelector; - let combinator: parser.Combinator; + let combinator: ICombinator; for (let i = 0; i < ast.length; i++) { - simpleSelectorSequence = createSimpleSelectorSequenceFromAst(ast[i][0]); - combinator = ast[i][1]; + simpleSelectorSequence = createSimpleSelectorSequenceFromAst(ast[i][0]); + combinator = ast[i][1]; if (combinator) { simpleSelectorSequence.combinator = combinator; } @@ -587,7 +587,7 @@ function createSelectorFromAst(ast: parser.Selector): SimpleSelector | SimpleSel export function createSelector(sel: string): SimpleSelector | SimpleSelectorSequence | Selector { try { - const parsedSelector = parser.parseSelector(sel); + const parsedSelector = parseSelector(sel); if (!parsedSelector) { return new InvalidSelector(new Error('Empty selector')); } diff --git a/packages/core/ui/styling/linear-gradient.ts b/packages/core/ui/styling/linear-gradient.ts index 72b3cad6a..04a6fb6bc 100644 --- a/packages/core/ui/styling/linear-gradient.ts +++ b/packages/core/ui/styling/linear-gradient.ts @@ -1,7 +1,7 @@ import { CoreTypes } from '../../core-types'; import { Color } from '../../color'; import { ColorStop } from './gradient'; -import { LinearGradient as CSSLinearGradient } from '../../css/parser'; +import type { LinearGradient as CSSLinearGradient } from '../../css/parser'; export class LinearGradient { public angle: number; diff --git a/packages/core/ui/styling/style-properties.ts b/packages/core/ui/styling/style-properties.ts index e57310201..8e04803b1 100644 --- a/packages/core/ui/styling/style-properties.ts +++ b/packages/core/ui/styling/style-properties.ts @@ -14,7 +14,7 @@ import { decompose2DTransformMatrix, getTransformMatrix, matrixArrayToCssMatrix, import { Trace } from '../../trace'; import { CoreTypes } from '../../core-types'; -import * as parser from '../../css/parser'; +import { parseBackground } from '../../css/parser'; import { LinearGradient } from './linear-gradient'; import { CSSShadow, parseCSSShadow } from './css-shadow'; @@ -785,7 +785,7 @@ export const backgroundImageProperty = new CssProperty { if (typeof value === 'string') { - const parsed = parser.parseBackground(value); + const parsed = parseBackground(value); if (parsed) { value = typeof parsed.value.image === 'object' ? LinearGradient.parse(parsed.value.image) : value; } @@ -837,7 +837,7 @@ backgroundPositionProperty.register(Style); function convertToBackgrounds(this: void, value: string): [CssProperty, any][] { if (typeof value === 'string') { - const backgrounds = parser.parseBackground(value).value; + const backgrounds = parseBackground(value).value; let backgroundColor = unsetValue; if (backgrounds.color) { backgroundColor = backgrounds.color instanceof Color ? backgrounds.color : new Color(backgrounds.color);