Skip to content

Commit dfd88c9

Browse files
committed
Change the interface of getSketchVersion()
1 parent 1ad2d17 commit dfd88c9

File tree

6 files changed

+19
-17
lines changed

6 files changed

+19
-17
lines changed

src/Platform.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
1+
import getSketchVersion from './utils/getSketchVersion';
2+
13
const Platform = {
24
OS: 'sketch',
3-
Version: 1,
5+
Version: getSketchVersion(),
46
select: (obj: { sketch: any }) => obj.sketch,
57
};
68

src/jsonUtils/svgLayer.ts

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,11 @@
11
import { FileFormat1 as FileFormat } from '@sketch-hq/sketch-file-format-ts';
22
import { LayoutInfo } from '../types';
3-
import { getSketchVersion } from '../utils/getSketchVersion';
3+
import isRunningInSketch from '../utils/isRunningInSketch';
44
import sketchMethod from './sketchImpl/makeSvgLayer';
55
import nodeMethod from './nodeImpl/makeSvgLayer';
66

77
const makeSvgLayer = (layout: LayoutInfo, name: string, svg: string): FileFormat.Group => {
8-
if (getSketchVersion() === 'NodeJS') {
9-
return nodeMethod(layout, name, svg);
10-
}
11-
return sketchMethod(layout, name, svg);
8+
return isRunningInSketch() ? sketchMethod(layout, name, svg) : nodeMethod(layout, name, svg);
129
};
1310

1411
export default makeSvgLayer;

src/sharedStyles/TextStyles.ts

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
import { FileFormat1 as FileFormat } from '@sketch-hq/sketch-file-format-ts';
22
import { SketchDocumentData, SketchDocument, WrappedSketchDocument, TextStyle } from '../types';
3-
import { getSketchVersion } from '../utils/getSketchVersion';
3+
import getSketchVersion from '../utils/getSketchVersion';
4+
import isRunningInSketch from '../utils/isRunningInSketch';
45
import hashStyle from '../utils/hashStyle';
56
import { getDocument } from '../utils/getDocument';
67
import sharedTextStyles from '../utils/sharedTextStyles';
@@ -22,8 +23,6 @@ type StyleHash = { [key: string]: RegisteredStyle };
2223
let _styles: StyleHash = {};
2324
const _byName: { [key: string]: MurmurHash } = {};
2425

25-
const sketchVersion = getSketchVersion();
26-
2726
const registerStyle = (name: string, style: TextStyle): void => {
2827
const safeStyle = pick(style, INHERITABLE_FONT_STYLES);
2928
const hash = hashStyle(safeStyle);
@@ -51,7 +50,7 @@ const create = (styles: { [key: string]: TextStyle }, options: Options = {}): St
5150

5251
const doc = getDocument(document);
5352

54-
if (sketchVersion !== 'NodeJS' && sketchVersion < 50) {
53+
if (isRunningInSketch() && parseInt(getSketchVersion()) < 50) {
5554
doc.showMessage('💎 Requires Sketch 50+ 💎');
5655
return {};
5756
}

src/utils/getSketchVersion.ts

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
1-
export function getSketchVersion(): number | 'NodeJS' {
2-
if (typeof NSBundle !== 'undefined') {
3-
return parseFloat(NSBundle.mainBundle().infoDictionary().CFBundleShortVersionString);
4-
}
5-
return 'NodeJS';
1+
export default function getSketchVersion(): string {
2+
return typeof NSBundle !== 'undefined'
3+
? NSBundle.mainBundle().infoDictionary().CFBundleShortVersionString
4+
: '';
65
}

src/utils/isRunningInSketch.ts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
import getSketchVersion from './getSketchVersion';
2+
3+
export default function isRunningInSketch() {
4+
return getSketchVersion() !== '';
5+
}

src/utils/sharedTextStyles.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
import { getSketchVersion } from './getSketchVersion';
21
import SketchStyles from '../jsonUtils/sketchImpl/sharedTextStyles';
32
import NodeStyles from '../jsonUtils/nodeImpl/sharedTextStyles';
3+
import isRunningInSketch from './isRunningInSketch';
44

5-
export default getSketchVersion() === 'NodeJS' ? new NodeStyles() : new SketchStyles();
5+
export default isRunningInSketch() ? new NodeStyles() : new SketchStyles();

0 commit comments

Comments
 (0)