11import { nodes } from "@bridged.xyz/design-sdk" ;
22import { TextBuilder , WidgetBuilder } from "./builders" ;
3- import {
4- SizedBox ,
5- Widget ,
6- Stack ,
7- Size ,
8- MediaQuery ,
9- } from "@bridged.xyz/flutter-builder" ;
3+ import * as flutter from "@bridged.xyz/flutter-builder" ;
104import { makeSafelyAsStackList } from "./utils/make-as-safe-list" ;
115import { makeDivider } from "./make/divider.make" ;
126import { detectIf } from "@reflect-ui/detection" ;
@@ -23,7 +17,7 @@ let parentId = "";
2317export let currentBuildingNodeId : string ;
2418
2519interface AppBuildResult {
26- widget : Widget ;
20+ widget : flutter . Widget ;
2721 scrollable : boolean ;
2822}
2923
@@ -46,15 +40,13 @@ export function buildApp(sceneNode: nodes.ReflectSceneNode): AppBuildResult {
4640function generateWidget (
4741 sceneNode : nodes . ReflectSceneNode ,
4842 parentIdSrc : string = ""
49- ) : Widget {
50- console . log ( `parentId = parentIdSrc;` ) ;
43+ ) : flutter . Widget {
5144 parentId = parentIdSrc ;
52- console . log ( `setCurrentNode(sceneNode);` ) ;
5345 setCurrentNode ( sceneNode ) ;
54- console . log ( `let result = flutterWidgetGenerator(sceneNode);` ) ;
5546 let result = flutterWidgetGenerator ( sceneNode ) ;
5647
5748 if ( Array . isArray ( result ) ) {
49+ // this won't happen
5850 throw "result cannot be in array form." ;
5951 }
6052
@@ -63,7 +55,7 @@ function generateWidget(
6355
6456function flutterWidgetGenerator (
6557 sceneNode : ReadonlyArray < nodes . ReflectSceneNode > | nodes . ReflectSceneNode
66- ) : Array < Widget > | Widget {
58+ ) : Array < flutter . Widget > | flutter . Widget {
6759 console . log ( `flutterWidgetGenerator handling scene node -` , sceneNode ) ;
6860 if ( Array . isArray ( sceneNode ) && sceneNode . length > 0 ) {
6961 // explicit type casting
@@ -73,7 +65,7 @@ function flutterWidgetGenerator(
7365 const sceneLen = sceneNode . length ;
7466
7567 // initialize output widgets array
76- let widgets : Array < Widget > = [ ] ;
68+ let widgets : Array < flutter . Widget > = [ ] ;
7769
7870 console . log (
7971 `widget generator::
@@ -109,7 +101,7 @@ function flutterWidgetGenerator(
109101 return handleNode ( sceneNode ) ;
110102 }
111103
112- function handleNode ( node : nodes . ReflectSceneNode ) : Widget {
104+ function handleNode ( node : nodes . ReflectSceneNode ) : flutter . Widget {
113105 setCurrentNode ( node ) ;
114106 console . log (
115107 `starting handling node ${ node . toString ( ) } type of ${ node . type } `
@@ -177,7 +169,7 @@ function setCurrentNode(node: { id: string }) {
177169 currentBuildingNodeId = node . id ;
178170}
179171
180- function flutterGroupHandler ( node : nodes . ReflectGroupNode ) : Widget {
172+ function flutterGroupHandler ( node : nodes . ReflectGroupNode ) : flutter . Widget {
181173 console . log (
182174 `group handler :: making ${ node } as a stack with its children count of ${ node . childrenCount } `
183175 ) ;
@@ -193,14 +185,17 @@ function flutterContainer(
193185 | nodes . ReflectGroupNode
194186 | nodes . ReflectRectangleNode
195187 | nodes . ReflectEllipseNode ,
196- child ?: Widget
197- ) : Widget {
188+ child ?: flutter . Widget
189+ ) : flutter . Widget {
198190 const builder = new WidgetBuilder ( { child : child , node : node } ) ;
199191
200192 const isBuildRoot = targetId === node . id ;
201193 const sizeOptions = isBuildRoot
202194 ? {
203- size : new Size ( MediaQuery . of ( ) . size . width , undefined ) . addComment (
195+ size : new flutter . Size (
196+ flutter . MediaQuery . of ( ) . size . width ,
197+ undefined
198+ ) . addComment (
204199 'container building for target root node. making the width with "MediaQuery.of().size.width"'
205200 ) ,
206201 }
@@ -213,7 +208,7 @@ function flutterContainer(
213208 return builder . child ;
214209}
215210
216- function flutterText ( node : nodes . ReflectTextNode ) : Widget {
211+ function flutterText ( node : nodes . ReflectTextNode ) : flutter . Widget {
217212 const builder = new TextBuilder ( {
218213 child : undefined ,
219214 node : node ,
@@ -224,15 +219,15 @@ function flutterText(node: nodes.ReflectTextNode): Widget {
224219 return builder . child ;
225220}
226221
227- function flutterFrame ( node : nodes . ReflectFrameNode ) : Widget {
222+ function flutterFrame ( node : nodes . ReflectFrameNode ) : flutter . Widget {
228223 console . log ( `start handling frame node ${ node . toString ( ) } and its children` ) ;
229224 const children = flutterWidgetGenerator ( node . children ) ;
230225
231226 if ( node . children . length === 1 ) {
232227 // if there is only one child, there is no need for Container or Row. Padding works indepdently of them.
233- return flutterContainer ( node , children as Widget ) ;
228+ return flutterContainer ( node , children as flutter . Widget ) ;
234229 } else if ( node . layoutMode !== undefined ) {
235- const rowColumn = makeRowColumn ( node , children as Array < Widget > ) ;
230+ const rowColumn = makeRowColumn ( node , children as Array < flutter . Widget > ) ;
236231 return flutterContainer ( node , rowColumn ) ;
237232 } else {
238233 // node.layoutMode === "NONE" && node.children.length > 1
@@ -247,7 +242,7 @@ function flutterFrame(node: nodes.ReflectFrameNode): Widget {
247242
248243 return flutterContainer (
249244 node ,
250- new Stack ( {
245+ new flutter . Stack ( {
251246 children : makeSafelyAsStackList ( children ) ,
252247 } )
253248 ) ;
@@ -258,7 +253,7 @@ function addSpacingIfNeeded(
258253 node : nodes . ReflectSceneNode ,
259254 index : number ,
260255 length : number
261- ) : Widget | undefined {
256+ ) : flutter . Widget | undefined {
262257 if (
263258 node . parent instanceof nodes . ReflectFrameNode &&
264259 node . parent . layoutMode !== undefined
@@ -267,12 +262,12 @@ function addSpacingIfNeeded(
267262 // Don't add the SizedBox at last value. In Figma, itemSpacing CAN be negative; here it can't.
268263 if ( node . parent . itemSpacing > 0 && index < length - 1 ) {
269264 if ( node . parent . layoutMode === ReflectAxis . horizontal ) {
270- return new SizedBox ( {
265+ return new flutter . SizedBox ( {
271266 width : roundNumber ( node . parent . itemSpacing ) ,
272267 } ) ;
273268 } else {
274269 // node.parent.layoutMode === "VERTICAL"
275- return new SizedBox ( {
270+ return new flutter . SizedBox ( {
276271 height : roundNumber ( node . parent . itemSpacing ) ,
277272 } ) ;
278273 }
0 commit comments