Skip to content

Commit 3d43364

Browse files
update flutter & node import pattern
1 parent ca50be1 commit 3d43364

36 files changed

Lines changed: 413 additions & 437 deletions

packages/design-sdk

packages/designto-flutter/make/border-radius.make.ts

Lines changed: 6 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,21 @@
1+
import * as flutter from "@bridged.xyz/flutter-builder";
12
import {
2-
BorderRadiusGeometry,
3-
BorderRadius,
4-
} from "@bridged.xyz/flutter-builder";
5-
import {
6-
ReflectRectangleNode,
73
ReflectEllipseNode,
8-
ReflectFrameNode,
4+
IReflectCornerMixin,
95
} from "@bridged.xyz/design-sdk/lib/nodes/types";
106
import { interpretRadius } from "../interpreter/radius.interpret";
117

128
export function makeBorderRadius(
13-
node: ReflectRectangleNode | ReflectEllipseNode | ReflectFrameNode
14-
): BorderRadiusGeometry {
9+
node: IReflectCornerMixin
10+
): flutter.BorderRadiusGeometry {
1511
if (node instanceof ReflectEllipseNode) return undefined;
1612
if (node.cornerRadius === undefined || node.cornerRadius.all === 0) {
1713
return undefined;
1814
}
1915

2016
return node.cornerRadius.all !== undefined
21-
? BorderRadius.circular(node.cornerRadius.all as number)
22-
: BorderRadius.only({
17+
? flutter.BorderRadius.circular(node.cornerRadius.all as number)
18+
: flutter.BorderRadius.only({
2319
topLeft: interpretRadius(node.cornerRadius.tl),
2420
topRight: interpretRadius(node.cornerRadius.tr),
2521
bottomLeft: interpretRadius(node.cornerRadius.bl),

packages/designto-flutter/make/border-side.make.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import { ReflectDefaultShapeMixin } from "@bridged.xyz/design-sdk/lib/nodes";
2-
import { BorderSide } from "@bridged.xyz/flutter-builder";
2+
import * as flutter from "@bridged.xyz/flutter-builder";
33
import { roundNumber } from "@reflect-ui/uiutils";
44
import { makeColor } from "./color.make";
55

@@ -9,7 +9,7 @@ export function makeBorderSide(node: ReflectDefaultShapeMixin) {
99
return undefined;
1010
}
1111

12-
return new BorderSide({
12+
return new flutter.BorderSide({
1313
color: makeColor(node.strokes),
1414
width: roundNumber(node.strokeWeight),
1515
});

packages/designto-flutter/make/border.make.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { Border } from "@bridged.xyz/flutter-builder";
1+
import * as flutter from "@bridged.xyz/flutter-builder";
22
import {
33
ReflectDefaultShapeMixin,
44
ReflectSceneNode,
@@ -7,15 +7,15 @@ import { roundNumber } from "@reflect-ui/uiutils";
77
import { makeColor } from "./color.make";
88

99
// generate the border, when it exists
10-
export function makeBorder(node: ReflectSceneNode): Border {
10+
export function makeBorder(node: ReflectSceneNode): flutter.Border {
1111
if (node instanceof ReflectDefaultShapeMixin) {
1212
if (!node.strokes || node.strokes.length === 0) {
1313
return undefined;
1414
}
1515

1616
// generate the border, when it should exist
1717
return node.strokeWeight
18-
? Border.all({
18+
? flutter.Border.all({
1919
color: makeColor(node.strokes),
2020
width: roundNumber(node.strokeWeight),
2121
})

packages/designto-flutter/make/box-decoration.make.ts

Lines changed: 21 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,6 @@
1-
import {
2-
ReflectEllipseNode,
3-
ReflectFrameNode,
4-
ReflectRectangleNode,
5-
} from "@bridged.xyz/design-sdk/lib/nodes";
1+
import { nodes } from "@bridged.xyz/design-sdk";
62
import { retrieveFill } from "@bridged.xyz/design-sdk/lib/utils";
7-
import {
8-
BoxDecoration,
9-
BoxFit,
10-
BoxShape,
11-
Color,
12-
DecorationImage,
13-
Gradient,
14-
ImageProvider,
15-
Snippet,
16-
} from "@bridged.xyz/flutter-builder";
3+
import * as flutter from "@bridged.xyz/flutter-builder";
174
import { interpretGradient } from "../interpreter/gradient.interpret";
185
import { interpretImageFills } from "../interpreter/image.interpret";
196
import { makeBorderRadius } from "./border-radius.make";
@@ -23,17 +10,20 @@ import { makeColorFromRGBO } from "./color.make";
2310
import { Figma } from "@bridged.xyz/design-sdk";
2411

2512
export function makeBoxDecoration(
26-
node: ReflectRectangleNode | ReflectEllipseNode | ReflectFrameNode
27-
): BoxDecoration | Color {
13+
node:
14+
| nodes.ReflectRectangleNode
15+
| nodes.ReflectEllipseNode
16+
| nodes.ReflectFrameNode
17+
): flutter.BoxDecoration | flutter.Color {
2818
const decorationBackground = makeBoxDecorationBg(node.fills);
2919
const decorationBorder = makeBorder(node);
3020
const decorationBoxShadow = makeBoxShadow(node);
3121
const decorationBorderRadius = makeBorderRadius(node);
3222

3323
// modify the circle's shape when type is ellipse
34-
const decorationShape: BoxShape =
35-
node instanceof ReflectEllipseNode
36-
? (BoxShape.circle as Snippet)
24+
const decorationShape: flutter.BoxShape =
25+
node instanceof nodes.ReflectEllipseNode
26+
? (flutter.BoxShape.circle as flutter.Snippet)
3727
: undefined;
3828

3929
// generate the decoration, or just the backgroundColor when color is SOLID.
@@ -45,35 +35,35 @@ export function makeBoxDecoration(
4535
decorationBackground;
4636

4737
return isNotSolid
48-
? new BoxDecoration({
38+
? new flutter.BoxDecoration({
4939
borderRadius: decorationBorderRadius,
5040
shape: decorationShape,
5141
image:
52-
decorationBackground instanceof ImageProvider
53-
? new DecorationImage({
42+
decorationBackground instanceof flutter.ImageProvider
43+
? new flutter.DecorationImage({
5444
image: decorationBackground,
55-
fit: BoxFit.cover as Snippet,
45+
fit: flutter.BoxFit.cover as flutter.Snippet,
5646
})
5747
: undefined,
5848
border: decorationBorder,
5949
boxShadow: decorationBoxShadow,
6050
color:
61-
decorationBackground instanceof Color
62-
? (decorationBackground as Color)
51+
decorationBackground instanceof flutter.Color
52+
? (decorationBackground as flutter.Color)
6353
: undefined,
6454
gradient:
65-
decorationBackground instanceof Gradient
66-
? (decorationBackground as Gradient)
55+
decorationBackground instanceof flutter.Gradient
56+
? (decorationBackground as flutter.Gradient)
6757
: undefined,
6858
})
69-
: decorationBackground instanceof Color
70-
? (decorationBackground as Color)
59+
: decorationBackground instanceof flutter.Color
60+
? (decorationBackground as flutter.Color)
7161
: undefined;
7262
}
7363

7464
export function makeBoxDecorationBg(
7565
fills: ReadonlyArray<Figma.Paint>
76-
): Gradient | Color | ImageProvider {
66+
): flutter.Gradient | flutter.Color | flutter.ImageProvider {
7767
const fill = retrieveFill(fills);
7868

7969
if (fill?.type === "SOLID") {

packages/designto-flutter/make/box-shadow.make.ts

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,13 @@
1-
import { BoxShadow, Offset } from "@bridged.xyz/flutter-builder";
1+
import * as flutter from "@bridged.xyz/flutter-builder";
22
import { ReflectSceneNode } from "@bridged.xyz/design-sdk/lib/nodes/types";
33
import { roundNumber } from "@reflect-ui/uiutils";
44
import { makeColorFromRGBO } from "./color.make";
55
import { Figma } from "@bridged.xyz/design-sdk";
66

7-
export function makeBoxShadow(node: ReflectSceneNode): Array<BoxShadow> {
8-
let boxShadows: Array<BoxShadow> = [];
7+
export function makeBoxShadow(
8+
node: ReflectSceneNode
9+
): Array<flutter.BoxShadow> {
10+
let boxShadows: Array<flutter.BoxShadow> = [];
911

1012
if (node.effects?.length > 0) {
1113
const shadows: Array<Figma.ShadowEffect> = node.effects.filter(
@@ -19,25 +21,25 @@ export function makeBoxShadow(node: ReflectSceneNode): Array<BoxShadow> {
1921
}
2022

2123
shadows.forEach(function (d: Figma.ShadowEffect) {
22-
let boxShadow: BoxShadow;
24+
let boxShadow: flutter.BoxShadow;
2325
if (d.type == "DROP_SHADOW") {
24-
boxShadow = new BoxShadow({
26+
boxShadow = new flutter.BoxShadow({
2527
color: makeColorFromRGBO(d.color, d.color.a),
2628
blurRadius: requiredNumber(d.radius),
2729
spreadRadius: requiredNumber(d.spread),
28-
offset: requiredOffset(new Offset(d.offset.x, d.offset.y)),
30+
offset: requiredOffset(new flutter.Offset(d.offset.x, d.offset.y)),
2931
});
3032
} else if (d.type == "INNER_SHADOW") {
3133
// handling inner shadow
3234
// https://stackoverflow.com/a/55096682/5463235
3335

34-
boxShadow = new BoxShadow({
36+
boxShadow = new flutter.BoxShadow({
3537
color: makeColorFromRGBO(d.color, d.color.a),
3638
blurRadius: requiredNumber(d.radius),
3739
// multiply -1 * blur for spread
3840
// TODO inspect this logic again.
3941
spreadRadius: requiredNumber((d.spread + d.radius) * -1),
40-
offset: requiredOffset(new Offset(d.offset.x, d.offset.y)),
42+
offset: requiredOffset(new flutter.Offset(d.offset.x, d.offset.y)),
4143
});
4244
}
4345

@@ -60,7 +62,7 @@ function requiredNumber(number: number): number {
6062
/**
6163
* returns undefined, if offset is redundant.
6264
*/
63-
function requiredOffset(offset: Offset): Offset {
65+
function requiredOffset(offset: flutter.Offset): flutter.Offset {
6466
if (offset.dx == 0 && offset.dy == 0) {
6567
return undefined;
6668
}

packages/designto-flutter/make/button.make.ts

Lines changed: 8 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,33 +1,27 @@
11
import { manifests } from "@reflect-ui/detection";
2-
import {
3-
Color,
4-
FlatButton,
5-
RoundedRectangleBorder,
6-
Text,
7-
Snippet,
8-
} from "@bridged.xyz/flutter-builder";
2+
import * as flutter from "@bridged.xyz/flutter-builder";
93
import { makeColor } from "./color.make";
104
import { makeBorderRadius } from "./border-radius.make";
115
import { makeBorderSide } from "./border-side.make";
126
import { makeDynamicIcon, makeIcon } from "./icon.make";
137

148
export function makeButton(manifest: manifests.DetectedButtonManifest) {
15-
const text = new Text(manifest.text?.characters);
16-
const color: Color = makeColor(manifest.base.fills);
17-
const textColor: Color = makeColor(manifest.text?.fills);
9+
const text = new flutter.Text(manifest.text?.characters);
10+
const color: flutter.Color = makeColor(manifest.base.fills);
11+
const textColor: flutter.Color = makeColor(manifest.text?.fills);
1812
const minWidth = manifest.base.width;
1913
const height = manifest.base.height;
20-
const shape = new RoundedRectangleBorder({
14+
const shape = new flutter.RoundedRectangleBorder({
2115
borderRadius: makeBorderRadius(manifest.base),
2216
side: makeBorderSide(manifest.base),
2317
});
24-
const onPressed = Snippet.fromStatic(
18+
const onPressed = flutter.Snippet.fromStatic(
2519
'(){ print("Button clicked!"); }'
2620
) as any;
2721

2822
if (manifest.icon) {
2923
const icon = makeDynamicIcon(manifest.icon);
30-
return FlatButton.icon({
24+
return flutter.FlatButton.icon({
3125
onPressed: onPressed,
3226
label: text,
3327
icon: icon,
@@ -39,7 +33,7 @@ export function makeButton(manifest: manifests.DetectedButtonManifest) {
3933
});
4034
}
4135

42-
return new FlatButton({
36+
return new flutter.FlatButton({
4337
onPressed: onPressed,
4438
child: text,
4539
color: color,

packages/designto-flutter/make/chip.make.ts

Lines changed: 9 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,4 @@
1-
import {
2-
Color,
3-
RoundedRectangleBorder,
4-
TextStyle,
5-
Text,
6-
Chip,
7-
Snippet,
8-
} from "@bridged.xyz/flutter-builder";
1+
import * as flutter from "@bridged.xyz/flutter-builder";
92
import { manifests } from "@reflect-ui/detection";
103
import { makeBorderRadius } from ".";
114
import { makeBorderSide } from "./border-side.make";
@@ -14,18 +7,18 @@ import { makeDynamicIcon } from "./icon.make";
147

158
export function makeChip(manifest: manifests.DetectedChipManifest) {
169
console.log({ manifest });
17-
var content = new Text(manifest.content?.characters);
18-
const color: Color = makeColor(manifest.base.fills);
19-
const textColor: Color = makeColor(manifest.content?.fills);
10+
var content = new flutter.Text(manifest.content?.characters);
11+
const color: flutter.Color = makeColor(manifest.base.fills);
12+
const textColor: flutter.Color = makeColor(manifest.content?.fills);
2013
const height = manifest.base.height;
21-
const shape = new RoundedRectangleBorder({
14+
const shape = new flutter.RoundedRectangleBorder({
2215
borderRadius: makeBorderRadius(manifest.base),
2316
side: makeBorderSide(manifest.base),
2417
});
25-
const onSelected = Snippet.fromStatic(
18+
const onSelected = flutter.Snippet.fromStatic(
2619
'(){ print("Chip onSelected"); }'
2720
) as any;
28-
const onDeleted = Snippet.fromStatic(
21+
const onDeleted = flutter.Snippet.fromStatic(
2922
'(){ print("Chip onSelected"); }'
3023
) as any;
3124

@@ -44,11 +37,11 @@ export function makeChip(manifest: manifests.DetectedChipManifest) {
4437
trailingWidget = icon;
4538
}
4639

47-
return new Chip({
40+
return new flutter.Chip({
4841
// onSelected : onSelected,
4942
onDeleted: onDeleted,
5043
label: content,
51-
labelStyle: new TextStyle({ color: textColor }),
44+
labelStyle: new flutter.TextStyle({ color: textColor }),
5245
backgroundColor: color,
5346
shape,
5447
avartar: leadingWidget,

packages/designto-flutter/make/color.make.ts

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
11
import { Figma } from "@bridged.xyz/design-sdk";
22
import { retrieveFill } from "@bridged.xyz/design-sdk/lib/utils";
3-
import { Color, Colors } from "@bridged.xyz/flutter-builder";
3+
import * as flutter from "@bridged.xyz/flutter-builder";
44
import { converters } from "@reflect-ui/core/lib";
55

66
/**
77
* Retrieve the SOLID color for Flutter when existent, otherwise ""
88
*/
99
export function makeColor(
1010
fills: ReadonlyArray<Figma.Paint> | Figma.Paint
11-
): Color | undefined {
11+
): flutter.Color | undefined {
1212
const fill = retrieveFill(fills);
1313

1414
if (fill?.type === "SOLID") {
@@ -20,19 +20,22 @@ export function makeColor(
2020
return undefined;
2121
}
2222

23-
export function makeColorFromRGBO(color: Figma.RGB, opacity: number): Color {
23+
export function makeColorFromRGBO(
24+
color: Figma.RGB,
25+
opacity: number
26+
): flutter.Color {
2427
try {
2528
if (color.r + color.g + color.b === 0 && opacity === 0) {
26-
return Colors.transparent;
29+
return flutter.Colors.transparent;
2730
}
2831
if (color.r + color.g + color.b === 0 && opacity === 1) {
29-
return Colors.black;
32+
return flutter.Colors.black;
3033
}
3134
if (color.r + color.g + color.b === 3 && opacity === 1) {
32-
return Colors.white;
35+
return flutter.Colors.white;
3336
}
3437

35-
return Color.fromHex(converters.color.rgbTo8hex(color, opacity));
38+
return flutter.Color.fromHex(converters.color.rgbTo8hex(color, opacity));
3639
} catch (e) {
3740
console.error(
3841
`error while converting color to rgba color:${color}, opacity:${opacity}`,

0 commit comments

Comments
 (0)