umami/components/forms/ShareUrlForm.js

43 lines
1.3 KiB
JavaScript
Raw Normal View History

2020-08-08 03:36:57 +00:00
import React, { useRef } from 'react';
2020-09-06 00:27:01 +00:00
import { FormattedMessage } from 'react-intl';
2021-01-14 08:34:51 +00:00
import { useRouter } from 'next/router';
2020-08-08 03:36:57 +00:00
import Button from 'components/common/Button';
import FormLayout, { FormButtons, FormRow } from 'components/layout/FormLayout';
2020-09-06 00:27:01 +00:00
import CopyButton from 'components/common/CopyButton';
2020-08-08 03:36:57 +00:00
2020-08-15 08:17:15 +00:00
export default function TrackingCodeForm({ values, onClose }) {
2020-08-08 03:36:57 +00:00
const ref = useRef();
2021-01-14 08:34:51 +00:00
const { basePath } = useRouter();
2020-08-15 08:17:15 +00:00
const { name, share_id } = values;
2020-08-08 03:36:57 +00:00
return (
<FormLayout>
<p>
2020-09-06 00:27:01 +00:00
<FormattedMessage
id="message.share-url"
defaultMessage="This is the publicly shared URL for {target}."
values={{ target: <b>{values.name}</b> }}
/>
2020-08-08 03:36:57 +00:00
</p>
<FormRow>
<textarea
ref={ref}
rows={3}
cols={60}
2020-08-17 04:28:54 +00:00
spellCheck={false}
2021-01-14 08:34:51 +00:00
defaultValue={`${
document.location.origin
}${basePath}/share/${share_id}/${encodeURIComponent(name)}`}
2020-08-08 03:36:57 +00:00
readOnly
/>
</FormRow>
<FormButtons>
<CopyButton type="submit" variant="action" element={ref} />
2020-09-06 00:27:01 +00:00
<Button onClick={onClose}>
2020-10-13 05:53:59 +00:00
<FormattedMessage id="label.cancel" defaultMessage="Cancel" />
2020-09-06 00:27:01 +00:00
</Button>
2020-08-08 03:36:57 +00:00
</FormButtons>
</FormLayout>
);
}