Skip to content

Commit ae8e173

Browse files
committed
Update bulma code
1 parent 70849f7 commit ae8e173

4 files changed

Lines changed: 34 additions & 32 deletions

File tree

Feliz.Bulma.ViewEngine/ElementBuilders.fs

Lines changed: 29 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -5,171 +5,171 @@ open Feliz.ViewEngine
55
module internal Helpers =
66
let [<Literal>] ClassName = "class"
77

8-
let inline getClasses (xs:ReactProperty list) =
8+
let inline getClasses (xs:IReactProperty list) =
99
xs
1010
|> List.choose (function | KeyValue (k, v) -> Some (k, v) | _ -> None)
1111
|> List.filter (fun (k,_) ->
1212
k = ClassName)
1313
|> List.map (snd >> string)
1414

15-
let inline partitionClasses (xs:ReactProperty list) =
15+
let inline partitionClasses (xs:IReactProperty list) =
1616
xs
1717
|> List.partition (function | KeyValue (k, v) -> k = ClassName | _ -> false)
1818

19-
let inline combineClasses cn (xs:ReactProperty list) =
19+
let inline combineClasses cn (xs:IReactProperty list) =
2020
xs
2121
|> getClasses
2222
|> List.append [cn]
2323
|> prop.classes
2424

2525
module Div =
26-
let inline props (cn:string) (xs:ReactProperty list) = Html.div [ yield! Helpers.partitionClasses xs ||> (fun c p -> Helpers.combineClasses cn c :: p) ]
26+
let inline props (cn:string) (xs:IReactProperty list) = Html.div [ yield! Helpers.partitionClasses xs ||> (fun c p -> Helpers.combineClasses cn c :: p) ]
2727
let inline children (cn:string) (children:seq<ReactElement>) = Html.div [ prop.className cn; prop.children children ]
2828
let inline valueElm (cn:string) (value:ReactElement) = value |> List.singleton |> children cn
2929
let inline valueStr (cn:string) (value:string) = Html.div [ prop.className cn; prop.text value ]
3030
let inline valueInt (cn:string) (value:int) = Html.div [ prop.className cn; prop.text value ]
3131

3232
module Nav =
33-
let inline props (cn:string) (xs:ReactProperty list) = Html.nav [ yield! Helpers.partitionClasses xs ||> (fun c p -> Helpers.combineClasses cn c :: p) ]
33+
let inline props (cn:string) (xs:IReactProperty list) = Html.nav [ yield! Helpers.partitionClasses xs ||> (fun c p -> Helpers.combineClasses cn c :: p) ]
3434
let inline children (cn:string) (children:seq<ReactElement>) = Html.nav [ prop.className cn; prop.children children ]
3535
let inline valueElm (cn:string) (value:ReactElement) = value |> List.singleton |> children cn
3636

3737
module Article =
38-
let inline props (cn:string) (xs:ReactProperty list) = Html.article [ yield! Helpers.partitionClasses xs ||> (fun c p -> Helpers.combineClasses cn c :: p) ]
38+
let inline props (cn:string) (xs:IReactProperty list) = Html.article [ yield! Helpers.partitionClasses xs ||> (fun c p -> Helpers.combineClasses cn c :: p) ]
3939
let inline children (cn:string) (children:seq<ReactElement>) = Html.article [ prop.className cn; prop.children children ]
4040
let inline valueElm (cn:string) (value:ReactElement) = value |> List.singleton |> children cn
4141

4242
module Section =
43-
let inline props (cn:string) (xs:ReactProperty list) = Html.section [ yield! Helpers.partitionClasses xs ||> (fun c p -> Helpers.combineClasses cn c :: p) ]
43+
let inline props (cn:string) (xs:IReactProperty list) = Html.section [ yield! Helpers.partitionClasses xs ||> (fun c p -> Helpers.combineClasses cn c :: p) ]
4444
let inline children (cn:string) (children:seq<ReactElement>) = Html.section [ prop.className cn; prop.children children ]
4545
let inline valueElm (cn:string) (value:ReactElement) = value |> List.singleton |> children cn
4646

4747
module Footer =
48-
let inline props (cn:string) (xs:ReactProperty list) = Html.footer [ yield! Helpers.partitionClasses xs ||> (fun c p -> Helpers.combineClasses cn c :: p) ]
48+
let inline props (cn:string) (xs:IReactProperty list) = Html.footer [ yield! Helpers.partitionClasses xs ||> (fun c p -> Helpers.combineClasses cn c :: p) ]
4949
let inline children (cn:string) (children:seq<ReactElement>) = Html.footer [ prop.className cn; prop.children children ]
5050
let inline valueElm (cn:string) (value:ReactElement) = value |> List.singleton |> children cn
5151

5252
module Label =
53-
let inline props (cn:string) (xs:ReactProperty list) = Html.label [ yield! Helpers.partitionClasses xs ||> (fun c p -> Helpers.combineClasses cn c :: p) ]
53+
let inline props (cn:string) (xs:IReactProperty list) = Html.label [ yield! Helpers.partitionClasses xs ||> (fun c p -> Helpers.combineClasses cn c :: p) ]
5454
let inline children (cn:string) (children:seq<ReactElement>) = Html.label [ prop.className cn; prop.children children ]
5555
let inline valueElm (cn:string) (value:ReactElement) = value |> List.singleton |> children cn
5656
let inline valueStr (cn:string) (value:string) = Html.label [ prop.className cn; prop.text value ]
5757
let inline valueInt (cn:string) (value:int) = Html.label [ prop.className cn; prop.text value ]
5858

5959
module Input =
60-
let inline propsWithType (cn:string) (typ: ReactProperty) (xs:ReactProperty list) =
60+
let inline propsWithType (cn:string) (typ: IReactProperty) (xs:IReactProperty list) =
6161
Html.input [ yield! xs; typ; Helpers.combineClasses cn xs ]
6262

6363
module Textarea =
64-
let inline props (cn:string) (xs:ReactProperty list) = Html.textarea [ yield! Helpers.partitionClasses xs ||> (fun c p -> Helpers.combineClasses cn c :: p) ]
64+
let inline props (cn:string) (xs:IReactProperty list) = Html.textarea [ yield! Helpers.partitionClasses xs ||> (fun c p -> Helpers.combineClasses cn c :: p) ]
6565
let inline children (cn:string) (children:seq<ReactElement>) = Html.textarea [ prop.className cn; prop.children children ]
6666
let inline valueElm (cn:string) (value:ReactElement) = value |> List.singleton |> children cn
6767

6868
module Button =
69-
let inline props (cn:string) (xs:ReactProperty list) = Html.button [ yield! Helpers.partitionClasses xs ||> (fun c p -> Helpers.combineClasses cn c :: p) ]
69+
let inline props (cn:string) (xs:IReactProperty list) = Html.button [ yield! Helpers.partitionClasses xs ||> (fun c p -> Helpers.combineClasses cn c :: p) ]
7070
let inline children (cn:string) (children:seq<ReactElement>) = Html.button [ prop.className cn; prop.children children ]
7171
let inline valueElm (cn:string) (value:ReactElement) = value |> List.singleton |> children cn
7272
let inline valueStr (cn:string) (value:string) = Html.button [ prop.className cn; prop.text value ]
7373
let inline valueInt (cn:string) (value:int) = Html.button [ prop.className cn; prop.text value ]
7474

7575
module Span =
76-
let inline props (cn:string) (xs:ReactProperty list) = Html.span [ yield! Helpers.partitionClasses xs ||> (fun c p -> Helpers.combineClasses cn c :: p) ]
76+
let inline props (cn:string) (xs:IReactProperty list) = Html.span [ yield! Helpers.partitionClasses xs ||> (fun c p -> Helpers.combineClasses cn c :: p) ]
7777
let inline children (cn:string) (children:seq<ReactElement>) = Html.span [ prop.className cn; prop.children children ]
7878
let inline valueElm (cn:string) (value:ReactElement) = value |> List.singleton |> children cn
7979
let inline valueStr (cn:string) (value:string) = Html.span [ prop.className cn; prop.text value ]
8080
let inline valueInt (cn:string) (value:int) = Html.span [ prop.className cn; prop.text value ]
8181

8282
module Figure =
83-
let inline props (cn:string) (xs:ReactProperty list) = Html.figure [ yield! Helpers.partitionClasses xs ||> (fun c p -> Helpers.combineClasses cn c :: p) ]
83+
let inline props (cn:string) (xs:IReactProperty list) = Html.figure [ yield! Helpers.partitionClasses xs ||> (fun c p -> Helpers.combineClasses cn c :: p) ]
8484
let inline children (cn:string) (children:seq<ReactElement>) = Html.figure [ prop.className cn; prop.children children ]
8585
let inline valueElm (cn:string) (value:ReactElement) = value |> List.singleton |> children cn
8686

8787
module Progress =
88-
let inline props (cn:string) (xs:ReactProperty list) = Html.progress [ yield! Helpers.partitionClasses xs ||> (fun c p -> Helpers.combineClasses cn c :: p) ]
88+
let inline props (cn:string) (xs:IReactProperty list) = Html.progress [ yield! Helpers.partitionClasses xs ||> (fun c p -> Helpers.combineClasses cn c :: p) ]
8989
let inline children (cn:string) (children:seq<ReactElement>) = Html.progress [ prop.className cn; prop.children children ]
9090
let inline valueElm (cn:string) (value:ReactElement) = value |> List.singleton |> children cn
9191
let inline valueStr (cn:string) (value:string) = Html.progress [ prop.className cn; prop.text value ]
9292
let inline valueInt (cn:string) (value:int) = Html.progress [ prop.className cn; prop.text value ]
9393

9494
module Table =
95-
let inline props (cn:string) (xs:ReactProperty list) = Html.table [ yield! Helpers.partitionClasses xs ||> (fun c p -> Helpers.combineClasses cn c :: p) ]
95+
let inline props (cn:string) (xs:IReactProperty list) = Html.table [ yield! Helpers.partitionClasses xs ||> (fun c p -> Helpers.combineClasses cn c :: p) ]
9696
let inline children (cn:string) (children:seq<ReactElement>) = Html.table [ prop.className cn; prop.children children ]
9797
let inline valueElm (cn:string) (value:ReactElement) = value |> List.singleton |> children cn
9898

9999
module H1 =
100-
let inline props (cn:string) (xs:ReactProperty list) = Html.h1 [ yield! Helpers.partitionClasses xs ||> (fun c p -> Helpers.combineClasses cn c :: p) ]
100+
let inline props (cn:string) (xs:IReactProperty list) = Html.h1 [ yield! Helpers.partitionClasses xs ||> (fun c p -> Helpers.combineClasses cn c :: p) ]
101101
let inline children (cn:string) (children:seq<ReactElement>) = Html.h1 [ prop.className cn; prop.children children ]
102102
let inline valueElm (cn:string) (value:ReactElement) = value |> List.singleton |> children cn
103103
let inline valueStr (cn:string) (value:string) = Html.h1 [ prop.className cn; prop.text value ]
104104
let inline valueInt (cn:string) (value:int) = Html.h1 [ prop.className cn; prop.text value ]
105105

106106
module H2 =
107-
let inline props (cn:string) (xs:ReactProperty list) = Html.h2 [ yield! Helpers.partitionClasses xs ||> (fun c p -> Helpers.combineClasses cn c :: p) ]
107+
let inline props (cn:string) (xs:IReactProperty list) = Html.h2 [ yield! Helpers.partitionClasses xs ||> (fun c p -> Helpers.combineClasses cn c :: p) ]
108108
let inline children (cn:string) (children:seq<ReactElement>) = Html.h2 [ prop.className cn; prop.children children ]
109109
let inline valueElm (cn:string) (value:ReactElement) = value |> List.singleton |> children cn
110110
let inline valueStr (cn:string) (value:string) = Html.h2 [ prop.className cn; prop.text value ]
111111
let inline valueInt (cn:string) (value:int) = Html.h2 [ prop.className cn; prop.text value ]
112112

113113
module H3 =
114-
let inline props (cn:string) (xs:ReactProperty list) = Html.h3 [ yield! Helpers.partitionClasses xs ||> (fun c p -> Helpers.combineClasses cn c :: p) ]
114+
let inline props (cn:string) (xs:IReactProperty list) = Html.h3 [ yield! Helpers.partitionClasses xs ||> (fun c p -> Helpers.combineClasses cn c :: p) ]
115115
let inline children (cn:string) (children:seq<ReactElement>) = Html.h3 [ prop.className cn; prop.children children ]
116116
let inline valueElm (cn:string) (value:ReactElement) = value |> List.singleton |> children cn
117117
let inline valueStr (cn:string) (value:string) = Html.h3 [ prop.className cn; prop.text value ]
118118
let inline valueInt (cn:string) (value:int) = Html.h3 [ prop.className cn; prop.text value ]
119119

120120
module H4 =
121-
let inline props (cn:string) (xs:ReactProperty list) = Html.h4 [ yield! Helpers.partitionClasses xs ||> (fun c p -> Helpers.combineClasses cn c :: p) ]
121+
let inline props (cn:string) (xs:IReactProperty list) = Html.h4 [ yield! Helpers.partitionClasses xs ||> (fun c p -> Helpers.combineClasses cn c :: p) ]
122122
let inline children (cn:string) (children:seq<ReactElement>) = Html.h4 [ prop.className cn; prop.children children ]
123123
let inline valueElm (cn:string) (value:ReactElement) = value |> List.singleton |> children cn
124124
let inline valueStr (cn:string) (value:string) = Html.h4 [ prop.className cn; prop.text value ]
125125
let inline valueInt (cn:string) (value:int) = Html.h4 [ prop.className cn; prop.text value ]
126126

127127
module H5 =
128-
let inline props (cn:string) (xs:ReactProperty list) = Html.h5 [ yield! Helpers.partitionClasses xs ||> (fun c p -> Helpers.combineClasses cn c :: p) ]
128+
let inline props (cn:string) (xs:IReactProperty list) = Html.h5 [ yield! Helpers.partitionClasses xs ||> (fun c p -> Helpers.combineClasses cn c :: p) ]
129129
let inline children (cn:string) (children:seq<ReactElement>) = Html.h5 [ prop.className cn; prop.children children ]
130130
let inline valueElm (cn:string) (value:ReactElement) = value |> List.singleton |> children cn
131131
let inline valueStr (cn:string) (value:string) = Html.h5 [ prop.className cn; prop.text value ]
132132
let inline valueInt (cn:string) (value:int) = Html.h5 [ prop.className cn; prop.text value ]
133133

134134
module H6 =
135-
let inline props (cn:string) (xs:ReactProperty list) = Html.h6 [ yield! Helpers.partitionClasses xs ||> (fun c p -> Helpers.combineClasses cn c :: p) ]
135+
let inline props (cn:string) (xs:IReactProperty list) = Html.h6 [ yield! Helpers.partitionClasses xs ||> (fun c p -> Helpers.combineClasses cn c :: p) ]
136136
let inline children (cn:string) (children:seq<ReactElement>) = Html.h6 [ prop.className cn; prop.children children ]
137137
let inline valueElm (cn:string) (value:ReactElement) = value |> List.singleton |> children cn
138138
let inline valueStr (cn:string) (value:string) = Html.h6 [ prop.className cn; prop.text value ]
139139
let inline valueInt (cn:string) (value:int) = Html.h6 [ prop.className cn; prop.text value ]
140140

141141
module Hr =
142-
let inline props (cn:string) (xs:ReactProperty list) = Html.hr [ yield! Helpers.partitionClasses xs ||> (fun c p -> Helpers.combineClasses cn c :: p) ]
142+
let inline props (cn:string) (xs:IReactProperty list) = Html.hr [ yield! Helpers.partitionClasses xs ||> (fun c p -> Helpers.combineClasses cn c :: p) ]
143143

144144
module Aside =
145-
let inline props (cn:string) (xs:ReactProperty list) = Html.aside [ yield! Helpers.partitionClasses xs ||> (fun c p -> Helpers.combineClasses cn c :: p) ]
145+
let inline props (cn:string) (xs:IReactProperty list) = Html.aside [ yield! Helpers.partitionClasses xs ||> (fun c p -> Helpers.combineClasses cn c :: p) ]
146146
let inline children (cn:string) (children:seq<ReactElement>) = Html.aside [ prop.className cn; prop.children children ]
147147
let inline valueElm (cn:string) (value:ReactElement) = value |> List.singleton |> children cn
148148

149149
module P =
150-
let inline props (cn:string) (xs:ReactProperty list) = Html.p [ yield! Helpers.partitionClasses xs ||> (fun c p -> Helpers.combineClasses cn c :: p) ]
150+
let inline props (cn:string) (xs:IReactProperty list) = Html.p [ yield! Helpers.partitionClasses xs ||> (fun c p -> Helpers.combineClasses cn c :: p) ]
151151
let inline children (cn:string) (children:seq<ReactElement>) = Html.p [ prop.className cn; prop.children children ]
152152
let inline valueElm (cn:string) (value:ReactElement) = value |> List.singleton |> children cn
153153
let inline valueStr (cn:string) (value:string) = Html.p [ prop.className cn; prop.text value ]
154154
let inline valueInt (cn:string) (value:int) = Html.p [ prop.className cn; prop.text value ]
155155

156156
module Ul =
157-
let inline props (cn:string) (xs:ReactProperty list) = Html.ul [ yield! Helpers.partitionClasses xs ||> (fun c p -> Helpers.combineClasses cn c :: p) ]
157+
let inline props (cn:string) (xs:IReactProperty list) = Html.ul [ yield! Helpers.partitionClasses xs ||> (fun c p -> Helpers.combineClasses cn c :: p) ]
158158
let inline children (cn:string) (children:seq<ReactElement>) = Html.ul [ prop.className cn; prop.children children ]
159159
let inline valueElm (cn:string) (value:ReactElement) = value |> List.singleton |> children cn
160160

161161
module Li =
162-
let inline props (cn:string) (xs:ReactProperty list) = Html.li [ yield! Helpers.partitionClasses xs ||> (fun c p -> Helpers.combineClasses cn c :: p) ]
162+
let inline props (cn:string) (xs:IReactProperty list) = Html.li [ yield! Helpers.partitionClasses xs ||> (fun c p -> Helpers.combineClasses cn c :: p) ]
163163
let inline children (cn:string) (children:seq<ReactElement>) = Html.li [ prop.className cn; prop.children children ]
164164
let inline valueElm (cn:string) (value:ReactElement) = value |> List.singleton |> children cn
165165

166166
module Header =
167-
let inline props (cn:string) (xs:ReactProperty list) = Html.header [ yield! Helpers.partitionClasses xs ||> (fun c p -> Helpers.combineClasses cn c :: p) ]
167+
let inline props (cn:string) (xs:IReactProperty list) = Html.header [ yield! Helpers.partitionClasses xs ||> (fun c p -> Helpers.combineClasses cn c :: p) ]
168168
let inline children (cn:string) (children:seq<ReactElement>) = Html.header [ prop.className cn; prop.children children ]
169169
let inline valueElm (cn:string) (value:ReactElement) = value |> List.singleton |> children cn
170170

171171
module A =
172-
let inline props (cn:string) (xs:ReactProperty list) = Html.a [ yield! Helpers.partitionClasses xs ||> (fun c p -> Helpers.combineClasses cn c :: p) ]
172+
let inline props (cn:string) (xs:IReactProperty list) = Html.a [ yield! Helpers.partitionClasses xs ||> (fun c p -> Helpers.combineClasses cn c :: p) ]
173173
let inline children (cn:string) (children:seq<ReactElement>) = Html.a [ prop.className cn; prop.children children ]
174174
let inline valueElm (cn:string) (value:ReactElement) = value |> List.singleton |> children cn
175175
let inline valueStr (cn:string) (value:string) = Html.a [ prop.className cn; prop.text value ]

Feliz.Bulma.ViewEngine/Operators.fs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,6 @@
22

33
open Feliz.ViewEngine
44

5-
let (++) (prop1:ReactProperty) (prop2:ReactProperty) =
5+
let (++) (prop1: IReactProperty) (prop2: IReactProperty) =
66
ElementBuilders.Helpers.getClasses [prop1; prop2]
7-
|> fun classes -> prop.classes classes
7+
|> prop.classes

Feliz.Bulma.ViewEngine/paket.lock

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,6 @@ STORAGE: NONE
22
RESTRICTION: == netstandard2.0
33
NUGET
44
remote: https://www.nuget.org/api/v2
5-
Feliz.ViewEngine (0.18)
5+
Feliz.ViewEngine (0.23)
66
FSharp.Core (>= 4.7)
77
FSharp.Core (4.7)

test/Tests.Feliz.ViewEngine.fsproj

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,11 @@
99
<ProjectReference Include="../src/Feliz.ViewEngine.fsproj">
1010
<Name>Feliz.ViewEngine.fsproj</Name>
1111
</ProjectReference>
12+
<ProjectReference Include="..\Feliz.Bulma.ViewEngine\Feliz.Bulma.ViewEngine.fsproj" />
1213
</ItemGroup>
1314
<ItemGroup>
1415
<Compile Include="ViewEngineTest.fs" />
16+
<Compile Include="Bulma.ViewEngineTest.fs" />
1517
<Compile Include="Program.fs" />
1618
</ItemGroup>
1719
<Import Project="..\.paket\Paket.Restore.targets" />

0 commit comments

Comments
 (0)