Skip to content

Commit

Permalink
add tests & remae getStyles to filterByNameProperty
Browse files Browse the repository at this point in the history
  • Loading branch information
lukasoppermann committed Oct 2, 2020
1 parent 9c413da commit 5a5ef45
Show file tree
Hide file tree
Showing 9 changed files with 46 additions and 44 deletions.
34 changes: 17 additions & 17 deletions dist/plugin.js
Original file line number Diff line number Diff line change
Expand Up @@ -61,22 +61,22 @@
};
exports.convertRgbaObjectToString = (rgbaObject) => `rgba(${rgbaObject.r}, ${rgbaObject.g}, ${rgbaObject.b}, ${rgbaObject.a})`;
});
define("src/utilities/getTokenStyles", ["require", "exports"], function (require, exports) {
define("src/utilities/filterByNameProperty", ["require", "exports"], function (require, exports) {
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const excludeUnderscoreStyles = true;
const getTokenStyles = (styles) => {
const filterByNameProperty = (objects) => {
if (excludeUnderscoreStyles === true) {
return styles.filter(style => style.name.trim().substr(0, 1) !== '_');
return objects.filter(style => style.name.trim().substr(0, 1) !== '_');
}
return styles;
return objects;
};
exports.default = getTokenStyles;
exports.default = filterByNameProperty;
});
define("src/extractor/extractColors", ["require", "exports", "src/utilities/convertColor", "src/utilities/getTokenStyles", "src/utilities/roundWithDecimals"], function (require, exports, convertColor_1, getTokenStyles_1, roundWithDecimals_2) {
define("src/extractor/extractColors", ["require", "exports", "src/utilities/convertColor", "src/utilities/filterByNameProperty", "src/utilities/roundWithDecimals"], function (require, exports, convertColor_1, filterByNameProperty_1, roundWithDecimals_2) {
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
getTokenStyles_1 = __importDefault(getTokenStyles_1);
filterByNameProperty_1 = __importDefault(filterByNameProperty_1);
roundWithDecimals_2 = __importDefault(roundWithDecimals_2);
const gradientType = {
"GRADIENT_LINEAR": "linear",
Expand Down Expand Up @@ -119,7 +119,7 @@
};
const extractColors = (tokenNodes) => {
// get all paint styles
return getTokenStyles_1.default(tokenNodes)
return filterByNameProperty_1.default(tokenNodes)
// remove images fills from tokens
.map(node => {
node.paints = node.paints.filter(paint => paint.type !== "IMAGE");
Expand All @@ -138,10 +138,10 @@
};
exports.default = extractColors;
});
define("src/extractor/extractGrids", ["require", "exports", "src/utilities/getTokenStyles"], function (require, exports, getTokenStyles_2) {
define("src/extractor/extractGrids", ["require", "exports", "src/utilities/filterByNameProperty"], function (require, exports, filterByNameProperty_2) {
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
getTokenStyles_2 = __importDefault(getTokenStyles_2);
filterByNameProperty_2 = __importDefault(filterByNameProperty_2);
const gridValues = (grid) => ({
pattern: {
value: grid.pattern.toLowerCase()
Expand Down Expand Up @@ -185,7 +185,7 @@
} })));
const extractGrids = (tokenNodes) => {
// get grid styles
return getTokenStyles_2.default(tokenNodes).map(node => ({
return filterByNameProperty_2.default(tokenNodes).map(node => ({
name: node.name,
description: node.description || null,
category: 'grid',
Expand All @@ -194,10 +194,10 @@
};
exports.default = extractGrids;
});
define("src/extractor/extractFonts", ["require", "exports", "src/utilities/getTokenStyles", "src/utilities/roundWithDecimals"], function (require, exports, getTokenStyles_3, roundWithDecimals_3) {
define("src/extractor/extractFonts", ["require", "exports", "src/utilities/filterByNameProperty", "src/utilities/roundWithDecimals"], function (require, exports, filterByNameProperty_3, roundWithDecimals_3) {
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
getTokenStyles_3 = __importDefault(getTokenStyles_3);
filterByNameProperty_3 = __importDefault(filterByNameProperty_3);
roundWithDecimals_3 = __importDefault(roundWithDecimals_3);
const textDecorations = {
'NONE': 'none',
Expand All @@ -212,7 +212,7 @@
};
const extractFonts = (tokenNodes) => {
// get raw text styles
return getTokenStyles_3.default(tokenNodes).map(node => ({
return filterByNameProperty_3.default(tokenNodes).map(node => ({
name: node.name,
description: node.description || undefined,
values: {
Expand Down Expand Up @@ -263,10 +263,10 @@
};
exports.default = extractFonts;
});
define("src/extractor/extractEffects", ["require", "exports", "src/utilities/convertColor", "src/utilities/getTokenStyles"], function (require, exports, convertColor_2, getTokenStyles_4) {
define("src/extractor/extractEffects", ["require", "exports", "src/utilities/convertColor", "src/utilities/filterByNameProperty"], function (require, exports, convertColor_2, filterByNameProperty_4) {
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
getTokenStyles_4 = __importDefault(getTokenStyles_4);
filterByNameProperty_4 = __importDefault(filterByNameProperty_4);
const effectType = {
"LAYER_BLUR": 'layerBlur',
"BACKGROUND_BLUR": 'backgroundBlur',
Expand Down Expand Up @@ -318,7 +318,7 @@
});
const extractEffects = (tokenNodes) => {
// get effect styles
return getTokenStyles_4.default(tokenNodes).map(node => ({
return filterByNameProperty_4.default(tokenNodes).map(node => ({
name: node.name,
description: node.description || null,
category: 'effect',
Expand Down
4 changes: 2 additions & 2 deletions src/extractor/extractColors.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import extractorInterface from '../../types/extractorInterface'
import { colorPropertyInterface, fillValuesType, gradientValuesType } from '../../types/propertyObject'
import { GradientType, PropertyType } from '../../types/valueTypes'
import { convertPaintToRgba, roundRgba } from '../utilities/convertColor'
import getTokenStyles from '../utilities/getTokenStyles'
import filterByNameProperty from '../utilities/filterByNameProperty'
import roundWithDecimals from '../utilities/roundWithDecimals'

const gradientType = {
Expand Down Expand Up @@ -48,7 +48,7 @@ const extractFills = (paint): fillValuesType | gradientValuesType => {

const extractColors: extractorInterface = (tokenNodes: PaintStyle[]): colorPropertyInterface[] => {
// get all paint styles
return getTokenStyles(tokenNodes)
return filterByNameProperty(tokenNodes)
// remove images fills from tokens
.map(node => {
node.paints = node.paints.filter(paint => paint.type !== "IMAGE")
Expand Down
4 changes: 2 additions & 2 deletions src/extractor/extractEffects.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import extractorInterface from '../../types/extractorInterface'
import { effectPropertyInterface } from '../../types/propertyObject'
import { EffectType, UnitTypePixel, PropertyType } from '../../types/valueTypes'
import { roundRgba } from '../utilities/convertColor'
import getTokenStyles from '../utilities/getTokenStyles'
import filterByNameProperty from '../utilities/filterByNameProperty'

const effectType = {
"LAYER_BLUR": 'layerBlur',
Expand Down Expand Up @@ -58,7 +58,7 @@ const shadowValues = effect => ({

const extractEffects: extractorInterface = (tokenNodes: EffectStyle[]): effectPropertyInterface[] => {
// get effect styles
return getTokenStyles(tokenNodes).map(node => ({
return filterByNameProperty(tokenNodes).map(node => ({
name: node.name,
description: node.description || null,
category: 'effect',
Expand Down
4 changes: 2 additions & 2 deletions src/extractor/extractFonts.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import extractorInterface from '../../types/extractorInterface'
import { fontPropertyInterface } from '../../types/propertyObject'
import { UnitTypePixel, TextCase, TextDecoration, NumericUnitTypes, PropertyType } from '../../types/valueTypes'
import getTokenStyles from '../utilities/getTokenStyles'
import filterByNameProperty from '../utilities/filterByNameProperty'
import roundWithDecimals from '../utilities/roundWithDecimals'

const textDecorations = {
Expand All @@ -19,7 +19,7 @@ const textCases = {

const extractFonts: extractorInterface = (tokenNodes: TextStyle[]): fontPropertyInterface[] => {
// get raw text styles
return getTokenStyles(tokenNodes).map(node => ({
return filterByNameProperty(tokenNodes).map(node => ({
name: node.name,
description: node.description || undefined,
values: {
Expand Down
4 changes: 2 additions & 2 deletions src/extractor/extractGrids.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import extractorInterface from '../../types/extractorInterface'
import { gridPropertyInterface } from '../../types/propertyObject'
import { GridAlignment, GridPattern, PropertyType } from '../../types/valueTypes'
import getTokenStyles from '../utilities/getTokenStyles'
import filterByNameProperty from '../utilities/filterByNameProperty'

const gridValues = (grid: GridLayoutGrid) => ({
pattern: {
Expand Down Expand Up @@ -58,7 +58,7 @@ const rowColumnValues = (grid: RowsColsLayoutGrid) => ({

const extractGrids: extractorInterface = (tokenNodes: GridStyle[]): gridPropertyInterface[] => {
// get grid styles
return getTokenStyles(tokenNodes).map(node => ({
return filterByNameProperty(tokenNodes).map(node => ({
name: node.name,
description: node.description || null,
category: 'grid',
Expand Down
15 changes: 15 additions & 0 deletions src/utilities/filterByNameProperty.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
const excludeUnderscoreStyles = true

type objectWithNameProperty = {
name: string,
[key: string]: any
}

const filterByNameProperty = (objects: objectWithNameProperty[]): any[] => {
if (excludeUnderscoreStyles === true) {
return objects.filter(style => style.name.trim().substr(0, 1) !== '_')
}
return objects
}

export default filterByNameProperty
12 changes: 0 additions & 12 deletions src/utilities/getTokenStyles.ts

This file was deleted.

2 changes: 1 addition & 1 deletion tests/integration/data/variables.css
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
/**
* Do not edit directly
* Generated on Fri, 02 Oct 2020 13:02:49 GMT
* Generated on Fri, 02 Oct 2020 14:06:02 GMT
*/

:root {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,25 +1,24 @@
import getTokenStyles from '../../src/utilities/getTokenStyles'
import { BaseStyle, StyleType } from '../../types/styles'
import filterByNameProperty from '../../src/utilities/filterByNameProperty'

describe("getTokenStyles", () => {
test("exclude _ prefix", () => {
expect(getTokenStyles([
expect(filterByNameProperty([
{
id: "valid",
type: "PAINT" as StyleType,
type: "PAINT",
name: 'valid',
description: ''
},
{
id: "invalid",
type: "PAINT" as StyleType,
type: "PAINT",
name: '_invalid',
description: ''
}
])).toStrictEqual([
{
id: "valid",
type: "PAINT" as StyleType,
type: "PAINT",
name: 'valid',
description: ''
}
Expand Down

0 comments on commit 5a5ef45

Please sign in to comment.