@@ -33,6 +33,7 @@ import {
3333 ExperienceProps ,
3434 VisibilityItem ,
3535 Tag ,
36+ SelectedUserIds ,
3637} from '../../interfaces/experience' ;
3738import { People } from '../../interfaces/people' ;
3839import { PostDetailExperience } from '../PostDetailExperience/PostDetailExperience' ;
@@ -408,6 +409,10 @@ export const ExperienceEditor: React.FC<ExperienceEditorProps> = props => {
408409 id : 'selected_user' ,
409410 name : i18n . t ( 'Experience.Editor.Visibility.Custom' ) ,
410411 } ,
412+ {
413+ id : 'friend' ,
414+ name : i18n . t ( 'Experience.Editor.Visibility.Friend_Only' ) ,
415+ } ,
411416 ] ;
412417
413418 const handleVisibilityChange = (
@@ -474,7 +479,15 @@ export const ExperienceEditor: React.FC<ExperienceEditorProps> = props => {
474479 const mappingUserIds = ( ) => {
475480 console . log ( { selectedVisibility } ) ;
476481 if ( selectedVisibility ?. id === 'selected_user' ) {
477- const mapIds = Object . values ( selectedUserIds . map ( option => option . id ) ) ;
482+ const timestamp = Date . now ( ) ;
483+ const mapIds = Object . values (
484+ selectedUserIds . map ( option => {
485+ return {
486+ userId : option . id ,
487+ addedAt : timestamp ,
488+ } ;
489+ } ) ,
490+ ) ;
478491 setNewExperience ( prevExperience => ( {
479492 ...prevExperience ,
480493 selectedUserIds : mapIds ,
@@ -493,8 +506,9 @@ export const ExperienceEditor: React.FC<ExperienceEditorProps> = props => {
493506 // eslint-disable-next-line react-hooks/exhaustive-deps
494507 } , [ selectedUserIds , experience ] ) ;
495508
496- const getSelectedIds = async ( userIds : string [ ] ) => {
509+ const getSelectedIds = async ( selected : SelectedUserIds [ ] ) => {
497510 setIsLoadingSelectedUser ( true ) ;
511+ const userIds = selected . map ( e => e . userId ) ;
498512 const response = await UserAPI . getUserByIds ( userIds , pageUserIds ) ;
499513 setSelectedUserIds ( [
500514 ...selectedUserIds ,
@@ -508,6 +522,7 @@ export const ExperienceEditor: React.FC<ExperienceEditorProps> = props => {
508522 React . useEffect ( ( ) => {
509523 getSelectedIds ( experience ?. selectedUserIds ) ;
510524 } , [ experience , pageUserIds ] ) ;
525+
511526 useEffect ( ( ) => {
512527 if ( experience ) {
513528 const visibility = visibilityList . find (
0 commit comments