summaryrefslogtreecommitdiffstats
path: root/browser/components/pocket/content/panels/js/components/TelemetryLink/TelemetryLink.jsx
diff options
context:
space:
mode:
Diffstat (limited to 'browser/components/pocket/content/panels/js/components/TelemetryLink/TelemetryLink.jsx')
-rw-r--r--browser/components/pocket/content/panels/js/components/TelemetryLink/TelemetryLink.jsx35
1 files changed, 35 insertions, 0 deletions
diff --git a/browser/components/pocket/content/panels/js/components/TelemetryLink/TelemetryLink.jsx b/browser/components/pocket/content/panels/js/components/TelemetryLink/TelemetryLink.jsx
new file mode 100644
index 0000000000..c23a24897f
--- /dev/null
+++ b/browser/components/pocket/content/panels/js/components/TelemetryLink/TelemetryLink.jsx
@@ -0,0 +1,35 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this file,
+ * You can obtain one at http://mozilla.org/MPL/2.0/. */
+
+import React from "react";
+import panelMessaging from "../../messages";
+
+function TelemetryLink(props) {
+ function onClick(event) {
+ if (props.onClick) {
+ props.onClick(event);
+ } else {
+ event.preventDefault();
+ panelMessaging.sendMessage("PKT_openTabWithUrl", {
+ url: event.currentTarget.getAttribute(`href`),
+ source: props.source,
+ model: props.model,
+ position: props.position,
+ });
+ }
+ }
+
+ return (
+ <a
+ href={props.href}
+ onClick={onClick}
+ target="_blank"
+ className={props.className}
+ >
+ {props.children}
+ </a>
+ );
+}
+
+export default TelemetryLink;