Skip to content

Commit

Permalink
fix: support for union using Array interface
Browse files Browse the repository at this point in the history
[converter][web]

=== changelog ===

```ts
export type NumberOrNumberArray = number | Array<number>
```

```fs
type NumberOrNumberArray =
    U2<float, ResizeArray<float>>
```

=== changelog ===
  • Loading branch information
MangelMaxime committed Oct 18, 2024
1 parent 60a0f83 commit 6eac374
Show file tree
Hide file tree
Showing 3 changed files with 13 additions and 12 deletions.
12 changes: 0 additions & 12 deletions src/Glutinum.Converter/Reader/UnionTypeNode.fs
Original file line number Diff line number Diff line change
Expand Up @@ -79,18 +79,6 @@ let rec private readUnionTypeCases
| Some declarations ->
if declarations.Count = 0 then
None // Should it be obj ?
else if declarations.Count > 1 then
let fullName = checker.getFullyQualifiedName symbol

({
Name = typeReferenceNode.getText ()
FullName = fullName
TypeArguments = []
IsStandardLibrary = isFromEs5Lib symbolOpt
})
|> GlueType.TypeReference
|> List.singleton
|> Some
else if isFromEs5Lib symbolOpt then
reader.ReadTypeNode typeReferenceNode
|> List.singleton
Expand Down
1 change: 1 addition & 0 deletions tests/specs/references/unionType/withArray.d.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
export type NumberOrNumberArray = number | Array<number>
12 changes: 12 additions & 0 deletions tests/specs/references/unionType/withArray.fsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
module rec Glutinum

open Fable.Core
open Fable.Core.JsInterop
open System

type NumberOrNumberArray =
U2<float, ResizeArray<float>>

(***)
#r "nuget: Fable.Core"
(***)

0 comments on commit 6eac374

Please sign in to comment.