@boomerang-io/carbon-addons-boomerang-react
Version:
Carbon Addons for Boomerang apps
39 lines (32 loc) • 2.18 kB
JavaScript
;
Object.defineProperty(exports, '__esModule', { value: true });
var React = require('react');
var cx = require('classnames');
var icons = require('@carbon/react/icons');
var dayjs = require('dayjs');
var relativeTime = require('dayjs/plugin/relativeTime');
var settings = require('../../internal/settings.js');
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
var React__default = /*#__PURE__*/_interopDefault(React);
var cx__default = /*#__PURE__*/_interopDefault(cx);
var dayjs__default = /*#__PURE__*/_interopDefault(dayjs);
var relativeTime__default = /*#__PURE__*/_interopDefault(relativeTime);
/*
IBM Confidential
694970X, 69497O0
© Copyright IBM Corp. 2022, 2024
*/
dayjs__default.default.extend(relativeTime__default.default);
function Notification({ readNotification, data }) {
return (React__default.default.createElement("div", { className: cx__default.default(`${settings.prefix}--bmrg-notification`, {
[`--${data.type}`]: data.type,
}), "aria-label": `${data.title} notification` },
React__default.default.createElement("div", { className: `${settings.prefix}--bmrg-notification-content` },
React__default.default.createElement("div", { className: `${settings.prefix}--bmrg-notification-content__creator` }, data.creator),
React__default.default.createElement("h2", { className: `${settings.prefix}--bmrg-notification-content__title` }, data.title),
React__default.default.createElement("p", { className: `${settings.prefix}--bmrg-notification-content__desc` }, data.detail),
React__default.default.createElement("time", { className: `${settings.prefix}--bmrg-notification-content__date` }, `${dayjs__default.default(data.date).fromNow()} at ${dayjs__default.default(data.date).format("hh:mma")}`),
React__default.default.createElement("button", { className: `${settings.prefix}--bmrg-notification-content__close`, onClick: () => readNotification(data.id) },
React__default.default.createElement(icons.Close, { size: 16, title: "Mark as read icon" })))));
}
exports.default = Notification;