@@ -382,13 +382,15 @@ export class Jira extends Tool<Jira> implements ProjectTool {
382382 email : reporter . emailAddress ,
383383 name : reporter . displayName ,
384384 avatar : reporter . avatarUrls ?. [ "48x48" ] ,
385+ ...atlassianSource ( reporter . accountId ) ,
385386 } ;
386387 }
387388 if ( assignee ?. emailAddress ) {
388389 assigneeContact = {
389390 email : assignee . emailAddress ,
390391 name : assignee . displayName ,
391392 avatar : assignee . avatarUrls ?. [ "48x48" ] ,
393+ ...atlassianSource ( assignee . accountId ) ,
392394 } ;
393395 }
394396
@@ -453,6 +455,7 @@ export class Jira extends Tool<Jira> implements ProjectTool {
453455 email : author . emailAddress ,
454456 name : author . displayName ,
455457 avatar : author . avatarUrl ,
458+ ...atlassianSource ( author . accountId ) ,
456459 } ;
457460 }
458461
@@ -721,13 +724,15 @@ export class Jira extends Tool<Jira> implements ProjectTool {
721724 email : reporter . emailAddress ,
722725 name : reporter . displayName ,
723726 avatar : reporter . avatarUrls ?. [ "48x48" ] ,
727+ ...atlassianSource ( reporter . accountId ) ,
724728 } ;
725729 }
726730 if ( assignee ?. emailAddress ) {
727731 assigneeContact = {
728732 email : assignee . emailAddress ,
729733 name : assignee . displayName ,
730734 avatar : assignee . avatarUrls ?. [ "48x48" ] ,
735+ ...atlassianSource ( assignee . accountId ) ,
731736 } ;
732737 }
733738
@@ -814,6 +819,7 @@ export class Jira extends Tool<Jira> implements ProjectTool {
814819 email : author . emailAddress ,
815820 name : author . displayName ,
816821 avatar : author . avatarUrls ?. [ "48x48" ] ,
822+ ...atlassianSource ( author . accountId ) ,
817823 } ;
818824 }
819825
@@ -873,4 +879,15 @@ export class Jira extends Tool<Jira> implements ProjectTool {
873879 }
874880}
875881
882+ /**
883+ * Returns a `source` property for NewContact if the Atlassian accountId is valid.
884+ * Used for Atlassian personal data reporting compliance.
885+ */
886+ function atlassianSource ( accountId : string | undefined ) : Pick < NewContact , "source" > | { } {
887+ if ( accountId && accountId !== "_unknown_" ) {
888+ return { source : { provider : AuthProvider . Atlassian , accountId } } ;
889+ }
890+ return { } ;
891+ }
892+
876893export default Jira ;
0 commit comments