File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -82,6 +82,10 @@ var orejimeConfig = {
8282 // You must provide a link to your privacy policy page for GDPR compliance.
8383 privacyPolicyUrl: ' ' ,
8484
85+ // [optional]
86+ // Opens the privacy policy link in a new window (target="_blank" and rel="noopener noreferrer").
87+ privacyPolicyNewWindow: false ,
88+
8589 // The list of third-party purposes that Orejime will manage for you.
8690 // The purposes will appear in the modal in the same order as defined here.
8791 purposes: [
Original file line number Diff line number Diff line change @@ -47,6 +47,7 @@ const ContextualNoticeContainer = ({
4747 purpose = { purpose }
4848 data = { data }
4949 privacyPolicyUrl = { config . privacyPolicyUrl }
50+ privacyPolicyNewWindow = { config . privacyPolicyNewWindow }
5051 onAccept = { ( ) => {
5152 manager . setConsent ( purpose . id , true ) ;
5253 setIsBeingDisabled ( true ) ;
Original file line number Diff line number Diff line change @@ -52,6 +52,7 @@ const Main = ({apiRef}: MainProps) => {
5252 needsUpdate = { manager . needsUpdate ( ) }
5353 purposeTitles = { config . purposes . map ( ( { title} ) => title ) }
5454 privacyPolicyUrl = { config . privacyPolicyUrl }
55+ privacyPolicyNewWindow = { config . privacyPolicyNewWindow }
5556 logo = { config . logo }
5657 onConfigure = { openModal }
5758 onAccept = { ( ) => {
@@ -74,6 +75,7 @@ const Main = ({apiRef}: MainProps) => {
7475 isForced = { config . forceModal && manager . isDirty ( ) }
7576 needsUpdate = { manager . needsUpdate ( ) }
7677 privacyPolicyUrl = { config . privacyPolicyUrl }
78+ privacyPolicyNewWindow = { config . privacyPolicyNewWindow }
7779 onClose = { closeModal }
7880 onSave = { commit }
7981 >
Original file line number Diff line number Diff line change @@ -6,6 +6,7 @@ export interface BannerProps {
66 needsUpdate : boolean ;
77 purposeTitles : string [ ] ;
88 privacyPolicyUrl : string ;
9+ privacyPolicyNewWindow ?: boolean ;
910 logo ?: ImageDescriptor ;
1011 onAccept : ( ) => void ;
1112 onDecline : ( ) => void ;
Original file line number Diff line number Diff line change @@ -9,6 +9,7 @@ export interface ContextualNoticeProps<Data extends ContextualNoticeOptions> {
99 purpose : Purpose ;
1010 data : Data ;
1111 privacyPolicyUrl : string ;
12+ privacyPolicyNewWindow ?: boolean ;
1213 onAccept : ( ) => void ;
1314}
1415
Original file line number Diff line number Diff line change @@ -4,6 +4,7 @@ export interface ModalProps {
44 isForced : boolean ;
55 needsUpdate : boolean ;
66 privacyPolicyUrl : string ;
7+ privacyPolicyNewWindow ?: boolean ;
78 onClose : ( ) => void ;
89 onSave : ( ) => void ;
910 children : ComponentChildren ;
Original file line number Diff line number Diff line change @@ -8,6 +8,7 @@ const Banner: BannerComponent = ({
88 isHidden,
99 purposeTitles,
1010 privacyPolicyUrl,
11+ privacyPolicyNewWindow,
1112 onAccept,
1213 onDecline,
1314 onConfigure
@@ -28,7 +29,17 @@ const Banner: BannerComponent = ({
2829 < strong key = "purposes" > { purposeTitles . join ( ', ' ) } </ strong >
2930 ) ,
3031 privacyPolicy : (
31- < a key = "privacyPolicyUrl" href = { privacyPolicyUrl } >
32+ < a
33+ key = "privacyPolicyUrl"
34+ href = { privacyPolicyUrl }
35+ { ...( privacyPolicyNewWindow
36+ ? {
37+ target : '_blank' ,
38+ rel : 'noopener noreferrer' ,
39+ title : t . misc . newWindowTitle
40+ }
41+ : { } ) }
42+ >
3243 { t . banner . privacyPolicyLabel }
3344 </ a >
3445 )
Original file line number Diff line number Diff line change @@ -8,6 +8,7 @@ const Modal: ModalComponent = ({
88 isForced,
99 needsUpdate,
1010 privacyPolicyUrl,
11+ privacyPolicyNewWindow,
1112 onClose,
1213 onSave,
1314 children
@@ -55,17 +56,24 @@ const Modal: ModalComponent = ({
5556 ) : null }
5657
5758 < p >
58- { template ( t . modal . description , {
59- privacyPolicy : (
60- < a
61- key = "privacyPolicyLink"
62- href = { privacyPolicyUrl }
63- onClick = { onClose }
64- >
65- { t . modal . privacyPolicyLabel }
66- </ a >
67- )
68- } ) }
59+ { template ( t . modal . description , {
60+ privacyPolicy : (
61+ < a
62+ key = "privacyPolicyLink"
63+ href = { privacyPolicyUrl }
64+ onClick = { onClose }
65+ { ...( privacyPolicyNewWindow
66+ ? {
67+ target : '_blank' ,
68+ rel : 'noopener noreferrer' ,
69+ title : t . misc . newWindowTitle
70+ }
71+ : { } ) }
72+ >
73+ { t . modal . privacyPolicyLabel }
74+ </ a >
75+ )
76+ } ) }
6977 </ p >
7078 </ div >
7179
Original file line number Diff line number Diff line change @@ -9,6 +9,7 @@ const Banner: BannerComponent = ({
99 needsUpdate,
1010 purposeTitles,
1111 privacyPolicyUrl,
12+ privacyPolicyNewWindow,
1213 logo,
1314 onAccept : onSaveRequest ,
1415 onDecline : onDeclineRequest ,
@@ -61,6 +62,13 @@ const Banner: BannerComponent = ({
6162 key = "privacyPolicyLink"
6263 className = "orejime-Banner-privacyPolicyLink"
6364 href = { privacyPolicyUrl }
65+ { ...( privacyPolicyNewWindow
66+ ? {
67+ target : '_blank' ,
68+ rel : 'noopener noreferrer' ,
69+ title : t . misc . newWindowTitle
70+ }
71+ : { } ) }
6472 >
6573 { t . banner . privacyPolicyLabel }
6674 </ a >
Original file line number Diff line number Diff line change @@ -9,7 +9,8 @@ const ContextualNotice: ContextualNoticeComponent = ({
99 purpose,
1010 data,
1111 onAccept,
12- privacyPolicyUrl
12+ privacyPolicyUrl,
13+ privacyPolicyNewWindow
1314} ) => {
1415 const t = useTranslations ( ) ;
1516 const { titleLevel} = data ;
@@ -18,7 +19,13 @@ const ContextualNotice: ContextualNoticeComponent = ({
1819 const templateProps = {
1920 purpose : purpose . title ,
2021 privacyPolicy : (
21- < a key = "privacyPolicyUrl" href = { privacyPolicyUrl } >
22+ < a
23+ key = "privacyPolicyUrl"
24+ href = { privacyPolicyUrl }
25+ { ...( privacyPolicyNewWindow
26+ ? { target : '_blank' , rel : 'noopener noreferrer' , title : t . misc . newWindowTitle }
27+ : { } ) }
28+ >
2229 { t . contextual . privacyPolicyLabel }
2330 </ a >
2431 )
You can’t perform that action at this time.
0 commit comments