Skip to content

Commit c2ddca2

Browse files
committed
Use weakRequire instead of ad-hoc evals
1 parent 9aee3ce commit c2ddca2

File tree

7 files changed

+19
-27
lines changed

7 files changed

+19
-27
lines changed
Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
1-
import requireObjCBridge from './requireObjCBridge';
2-
1+
import weakRequire from '../../utils/weakRequire';
32
import { TextNode, Size } from '../../types';
43

4+
const bridge = weakRequire(module, 'node-sketch-bridge');
5+
56
export default function createStringMeasurer(textNodes: TextNode[], width: number): Size {
6-
return requireObjCBridge().createStringMeasurer(textNodes, width);
7+
return bridge.createStringMeasurer(textNodes, width);
78
}
Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
1-
import requireObjCBridge from './requireObjCBridge';
21
import { TextStyle } from '../../types';
2+
import weakRequire from '../../utils/weakRequire';
3+
4+
const bridge = weakRequire(module, 'node-sketch-bridge');
35

46
export default function findFontName(style: TextStyle): string {
5-
return requireObjCBridge().findFontName(style);
7+
return bridge.findFontName(style);
68
}

src/jsonUtils/nodeImpl/makeImageDataFromUrl.ts

Lines changed: 0 additions & 5 deletions
This file was deleted.

src/jsonUtils/nodeImpl/makeSvgLayer.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ import { createUniformBorder } from '../borders';
66
import layerGroup from '../layerGroup';
77
import { makePathsFromCommands, makeLineCapStyle } from './graphics/path';
88
import { unionRects, scaleRect, makeBoundingRectFromCommands, resize } from './graphics/rect';
9-
import requireSvgModel from './requireSvgModel';
9+
import weakRequire from '../../utils/weakRequire';
1010

1111
function makeLayerFromPathElement(pathElement, _parentFrame: FileFormat.Rect, scale: number) {
1212
const {
@@ -79,7 +79,7 @@ function makeLayerGroup(
7979
}
8080

8181
export default function makeSvgLayer(layout: LayoutInfo, name: string, svg: string) {
82-
const svgModel = requireSvgModel();
82+
const svgModel = weakRequire(module, '@lona/svg-model');
8383

8484
const {
8585
data: { params, children },

src/jsonUtils/nodeImpl/requireObjCBridge.ts

Lines changed: 0 additions & 11 deletions
This file was deleted.

src/jsonUtils/nodeImpl/requireSvgModel.ts

Lines changed: 0 additions & 4 deletions
This file was deleted.

src/utils/weakRequire.ts

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
/**
2+
* Requires a module without having webpack including it in the bundle.
3+
*
4+
* @param sourceModule reference to the `module` instance from where this request originated.
5+
* @param request name of the module to require.
6+
*/
7+
export default function weakRequire(sourceModule: NodeModule, request: string): any {
8+
return 'require' in sourceModule ? sourceModule.require(request) : {};
9+
}

0 commit comments

Comments
 (0)