File tree Expand file tree Collapse file tree
templates/next/components Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -2,10 +2,20 @@ import Link from "next/link";
22import { Fragment , FunctionComponent } from "react" ;
33
44interface Props {
5- items : string | string [ ] | { href : string ; name : string } | { href : string ; name : string } [ ] ;
5+ items :
6+ | string
7+ | string [ ]
8+ | { href : string ; name : string | undefined }
9+ | { href : string ; name : string | undefined } [ ]
10+ | null
11+ | undefined ;
612}
713
814const ReferenceLinks : FunctionComponent < Props > = ( { items } ) => {
15+ if ( ! items ) {
16+ return null ;
17+ }
18+
919 if ( Array . isArray ( items ) ) {
1020 return (
1121 < Fragment >
@@ -23,7 +33,7 @@ const ReferenceLinks: FunctionComponent<Props> = ({ items }) => {
2333 href = { typeof items === "string" ? items : items . href }
2434 className = "text-cyan-700 font-bold"
2535 >
26- { typeof items === "string" ? items : items . name }
36+ { typeof items === "string" ? items : items . name || items . href }
2737 </ Link >
2838 ) ;
2939} ;
Original file line number Diff line number Diff line change @@ -40,13 +40,17 @@ export const List: FunctionComponent<Props> = ({ {{{lc}}}s }) => (
4040 { { #each fields} }
4141 < td >
4242 { { #if isReferences} }
43- < ReferenceLinks items = { { { { . . / lc} } } [ '{{{name}}}' ] . map ( ( ref : any ) => ( { href : getItemPath ( ref , '/{{{lowercase reference.title}}}s/[id]' ) , name : ref } ) ) } / >
43+ { { { { . . / lc} } } [ '{{{name}}}' ] & & (
44+ < ReferenceLinks items = { { { { . . / lc} } } [ '{{{name}}}' ] . map ( ( ref : any ) => ( { href : getItemPath ( ref , '/{{{lowercase reference.title}}}s/[id]' ) , name : ref } ) ) } / >
45+ ) }
4446 { { else if reference} }
4547 < ReferenceLinks items = { { href : getItemPath ( { { { . . / lc} } } [ '{{{name}}}' ] , '/{{{lowercase reference.title}}}s/[id]' ) , name : { { { . . / lc} } } [ '{{{name}}}' ] } } / >
4648 { { else if isEmbeddeds} }
47- < ReferenceLinks items = { { { { . . / lc} } } [ '{{{name}}}' ] . map ( ( emb : any ) => ( { href : getItemPath ( emb [ '@id' ] , '/{{{lowercase embedded.title}}}s/[id]' ) , name : emb [ '@id' ] } ) ) } / >
49+ { { { { . . / lc} } } [ '{{{name}}}' ] & & (
50+ < ReferenceLinks items = { { { { . . / lc} } } [ '{{{name}}}' ] . map ( ( emb : any ) => ( { href : getItemPath ( emb [ '@id' ] , '/{{{lowercase embedded.title}}}s/[id]' ) , name : emb [ '@id' ] } ) ) } / >
51+ ) }
4852 { { else if embedded} }
49- < ReferenceLinks items = { { href : getItemPath ( { { { . . / lc} } } [ '{{{name}}}' ] [ '@id' ] , '/{{{lowercase embedded.title}}}s/[id]' ) , name : { { { . . / lc} } } [ '{{{name}}}' ] [ '@id' ] } } / >
53+ < ReferenceLinks items = { { href : getItemPath ( { { { . . / lc} } } [ '{{{name}}}' ] ? . [ '@id' ] , '/{{{lowercase embedded.title}}}s/[id]' ) , name : { { { . . / lc} } } [ '{{{name}}}' ] ? . [ '@id' ] } } / >
5054 { { else if ( compare type "==" "Date" ) } }
5155 { { { { . . / lc} } } [ '{{{name}}}' ] ?. toLocaleString( ) }
5256 { { else} }
Original file line number Diff line number Diff line change @@ -55,13 +55,17 @@ export const Show: FunctionComponent<Props> = ({ {{{lc}}}, text }) => {
5555 < th scope = "row" > { { name} } </ th >
5656 < td >
5757 { { #if isReferences} }
58- < ReferenceLinks items = { { { { . . / lc} } } [ '{{{name}}}' ] . map ( ( ref : any ) => ( { href : getItemPath ( ref , '/{{{lowercase reference.title}}}s/[id]' ) , name : ref } ) ) } / >
58+ { { { { . . / lc} } } [ '{{{name}}}' ] & & (
59+ < ReferenceLinks items = { { { { . . / lc} } } [ '{{{name}}}' ] . map ( ( ref : any ) => ( { href : getItemPath ( ref , '/{{{lowercase reference.title}}}s/[id]' ) , name : ref } ) ) } / >
60+ ) }
5961 { { else if reference} }
6062 < ReferenceLinks items = { { href : getItemPath ( { { { . . / lc} } } [ '{{{name}}}' ] , '/{{{lowercase reference.title}}}s/[id]' ) , name : { { { . . / lc} } } [ '{{{name}}}' ] } } / >
6163 { { else if isEmbeddeds} }
62- < ReferenceLinks items = { { { { . . / lc} } } [ '{{{name}}}' ] . map ( ( emb : any ) => ( { href : getItemPath ( emb [ '@id' ] , '/{{{lowercase embedded.title}}}s/[id]' ) , name : emb [ '@id' ] } ) ) } / >
64+ { { { { . . / lc} } } [ '{{{name}}}' ] & & (
65+ < ReferenceLinks items = { { { { . . / lc} } } [ '{{{name}}}' ] . map ( ( emb : any ) => ( { href : getItemPath ( emb [ '@id' ] , '/{{{lowercase embedded.title}}}s/[id]' ) , name : emb [ '@id' ] } ) ) } / >
66+ ) }
6367 { { else if embedded} }
64- < ReferenceLinks items = { { href : getItemPath ( { { { . . / lc} } } [ '{{{name}}}' ] [ '@id' ] , '/{{{lowercase embedded.title}}}s/[id]' ) , name : { { { . . / lc} } } [ '{{{name}}}' ] [ '@id' ] } } / >
68+ < ReferenceLinks items = { { href : getItemPath ( { { { . . / lc} } } [ '{{{name}}}' ] ? . [ '@id' ] , '/{{{lowercase embedded.title}}}s/[id]' ) , name : { { { . . / lc} } } [ '{{{name}}}' ] ? . [ '@id' ] } } / >
6569 { { else if ( compare type "==" "Date" ) } }
6670 { { { { . . / lc} } } [ '{{{name}}}' ] ?. toLocaleString( ) }
6771 { { else} }
You can’t perform that action at this time.
0 commit comments