Skip to content

Commit c4e74c9

Browse files
fix common position - drop feature
1 parent 3959532 commit c4e74c9

4 files changed

Lines changed: 88 additions & 91 deletions

File tree

packages/design-sdk

Lines changed: 82 additions & 81 deletions
Original file line numberDiff line numberDiff line change
@@ -1,90 +1,91 @@
1+
import { Figma } from "@bridged.xyz/design-sdk";
12
// interpret https://www.figma.com/plugin-docs/api/Action/
2-
export function isRouteAction(reaction: Reaction) {
3-
const validTrigger = reaction.trigger.type === "ON_CLICK" ||
4-
reaction.trigger.type === "ON_PRESS"
3+
export function isRouteAction(reaction: Figma.Reaction) {
4+
const validTrigger =
5+
reaction.trigger.type === "ON_CLICK" ||
6+
reaction.trigger.type === "ON_PRESS";
57

6-
// no need to check for valid action. all action is representable with route
7-
return validTrigger
8+
// no need to check for valid action. all action is representable with route
9+
return validTrigger;
810
}
911

10-
export function interpretAction(reaction: Reaction) {
11-
const trigger = reaction.trigger
12-
const action = reaction.action
12+
export function interpretAction(reaction: Figma.Reaction) {
13+
const trigger = reaction.trigger;
14+
const action = reaction.action;
1315

14-
switch (trigger.type) {
15-
case "ON_CLICK":
16-
break;
17-
case "ON_HOVER":
18-
break;
19-
case "ON_PRESS":
20-
break
21-
case "ON_DRAG":
22-
break;
23-
case "AFTER_TIMEOUT":
24-
// @ts-ignore
25-
const timeout = trigger.timeout
26-
break;
27-
case "MOUSE_ENTER":
28-
// @ts-ignore
29-
const timeout = trigger.delay
30-
break;
31-
case "MOUSE_LEAVE":
32-
// @ts-ignore
33-
const timeout = trigger.delay
34-
break;
35-
case "MOUSE_UP":
36-
// @ts-ignore
37-
const timeout = trigger.delay
38-
break;
39-
case "MOUSE_DOWN":
40-
// @ts-ignore
41-
const timeout = trigger.delay
42-
break;
43-
}
16+
switch (trigger.type) {
17+
case "ON_CLICK":
18+
break;
19+
case "ON_HOVER":
20+
break;
21+
case "ON_PRESS":
22+
break;
23+
case "ON_DRAG":
24+
break;
25+
case "AFTER_TIMEOUT":
26+
// @ts-ignore
27+
const timeout = trigger.timeout;
28+
break;
29+
case "MOUSE_ENTER":
30+
// @ts-ignore
31+
const timeout = trigger.delay;
32+
break;
33+
case "MOUSE_LEAVE":
34+
// @ts-ignore
35+
const timeout = trigger.delay;
36+
break;
37+
case "MOUSE_UP":
38+
// @ts-ignore
39+
const timeout = trigger.delay;
40+
break;
41+
case "MOUSE_DOWN":
42+
// @ts-ignore
43+
const timeout = trigger.delay;
44+
break;
45+
}
4446

47+
switch (action.type) {
48+
case "BACK" || "CLOSE":
49+
// pop route
50+
// cloes -> pop
51+
// back -> pop until
52+
break;
53+
case "NODE":
54+
// route
55+
switch (action.navigation) {
56+
case "NAVIGATE":
57+
// push route
58+
break;
59+
case "OVERLAY":
60+
// show dialog
4561

46-
switch (action.type) {
47-
case "BACK" || "CLOSE":
48-
// pop route
49-
// cloes -> pop
50-
// back -> pop until
51-
break;
52-
case "NODE":
53-
// route
54-
switch (action.navigation) {
55-
case "NAVIGATE":
56-
// push route
57-
break;
58-
case "OVERLAY":
59-
// show dialog
62+
// handle animation type
63+
switch (action.transition.type) {
64+
case "DISSOLVE":
65+
break;
66+
case "SMART_ANIMATE":
67+
break;
68+
case "MOVE_IN":
69+
break;
70+
case "MOVE_OUT":
71+
break;
72+
case "PUSH":
73+
break;
74+
case "SLIDE_IN":
75+
break;
76+
case "SLIDE_OUT":
77+
break;
78+
}
6079

61-
// handle animation type
62-
switch (action.transition.type) {
63-
case "DISSOLVE":
64-
break;
65-
case "SMART_ANIMATE":
66-
break
67-
case "MOVE_IN":
68-
break
69-
case "MOVE_OUT":
70-
break
71-
case "PUSH":
72-
break
73-
case "SLIDE_IN":
74-
break
75-
case "SLIDE_OUT":
76-
break
77-
}
78-
79-
break;
80-
case "SWAP":
81-
// push replacement
82-
break;
83-
}
84-
break;
85-
case "URL":
86-
const url = action.url
87-
// open url
88-
break;
89-
}
80+
break;
81+
case "SWAP":
82+
// push replacement
83+
break;
84+
}
85+
break;
86+
case "URL":
87+
const url = action.url;
88+
// open url
89+
break;
90+
}
9091
}
Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,10 @@
1-
import { Radius } from "@bridged.xyz/flutter-builder";
1+
import * as flutter from "@bridged.xyz/flutter-builder";
22
import { IRadius } from "@reflect-ui/core/lib/ui/radius/radius.manifest";
33

4-
export function interpretRadius(radius: IRadius): Radius {
4+
export function interpretRadius(radius: IRadius): flutter.Radius {
55
if (typeof radius == "number") {
6-
return Radius.circular(radius as number);
6+
return flutter.Radius.circular(radius as number);
77
} else {
8-
// TODO
9-
// console.warn(
10-
// "elliptical radius is not supported. returning undefined instead"
11-
// );
12-
return;
8+
return flutter.Radius.elliptical(radius.x, radius.y);
139
}
1410
}

packages/designto-flutter/wrappers/positioned.wrap.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ function retrieveAbsolutePosOrMakeWidget(
5757
};
5858

5959
switch (utils.commonPosition(node)) {
60-
case "":
60+
case "None":
6161
return child;
6262
case "Absolute":
6363
return "Absolute";

0 commit comments

Comments
 (0)