@@ -25,21 +25,20 @@ render({ type: "string-tags", editable: true }, ({ field, obj, spec }) => {
25
25
const ref = useRef < any > ( undefined ) ;
26
26
const { save, saving, counter, edit, error, ClickToEdit } =
27
27
useEditableContext < string > ( field ) ;
28
- const [ value , setValue ] = useState < string > ( obj [ field ] ?. join ( "," ) ?? "" ) ;
28
+ const [ value , setValue ] = useState < string > ( obj [ field ] ?. join ( ", " ) ?? "" ) ;
29
29
useEffect ( ( ) => {
30
- setValue ( obj [ field ] ) ;
30
+ setValue ( obj [ field ] ?. join ( ", " ) ?? "" ) ;
31
31
} , [ counter , obj [ field ] ] ) ;
32
32
33
33
if ( spec . type != "string-tags" || ! spec . editable ) {
34
34
throw Error ( "bug" ) ;
35
35
}
36
36
if ( ! edit ) {
37
- const tags = obj [ field ] ;
38
37
return (
39
- < ClickToEdit empty = { ! tags || tags . length == 0 } >
38
+ < ClickToEdit empty = { ! value . trim ( ) } >
40
39
< div style = { { lineHeight : "2em" , display : "inline-block" } } >
41
- { tags ?. map ( ( value ) => (
42
- < Tag key = { value } > { value } </ Tag >
40
+ { value . split ( "," ) . map ( ( tag ) => (
41
+ < Tag key = { value } > { tag . trim ( ) } </ Tag >
43
42
) ) }
44
43
</ div >
45
44
</ ClickToEdit >
@@ -58,11 +57,17 @@ render({ type: "string-tags", editable: true }, ({ field, obj, spec }) => {
58
57
} }
59
58
onBlur = { ( ) => {
60
59
setValue ( ref . current . input . value ) ;
61
- save ( obj , ref . current . input . value . split ( "," ) ) ;
60
+ save (
61
+ obj ,
62
+ ref . current . input . value . split ( "," ) . map ( ( x ) => x . trim ( ) ) ,
63
+ ) ;
62
64
} }
63
65
onPressEnter = { ( ) => {
64
66
setValue ( ref . current . input . value ) ;
65
- save ( obj , ref . current . input . value . split ( "," ) ) ;
67
+ save (
68
+ obj ,
69
+ ref . current . input . value . split ( "," ) . map ( ( x ) => x . trim ( ) ) ,
70
+ ) ;
66
71
} }
67
72
/>
68
73
{ error }
0 commit comments