86 lines
2.4 KiB
JavaScript
86 lines
2.4 KiB
JavaScript
import {
|
|
capitalise
|
|
} from "./chunk-P4VL3IHZ.js";
|
|
import {
|
|
intervalToDuration,
|
|
isPast
|
|
} from "./chunk-KFLQQE5L.js";
|
|
import {
|
|
Status,
|
|
Typography,
|
|
useIntl
|
|
} from "./chunk-7XB6XSWQ.js";
|
|
import {
|
|
require_jsx_runtime
|
|
} from "./chunk-NIAJZ5MX.js";
|
|
import {
|
|
require_react
|
|
} from "./chunk-MADUDGYZ.js";
|
|
import {
|
|
__toESM
|
|
} from "./chunk-PLDDJCW6.js";
|
|
|
|
// node_modules/@strapi/content-manager/dist/admin/pages/EditView/components/DocumentStatus.mjs
|
|
var import_jsx_runtime = __toESM(require_jsx_runtime(), 1);
|
|
var DocumentStatus = ({ status = "draft", size = "S", ...restProps }) => {
|
|
const statusVariant = status === "draft" ? "secondary" : status === "published" ? "success" : "alternative";
|
|
const { formatMessage } = useIntl();
|
|
return (0, import_jsx_runtime.jsx)(Status, {
|
|
...restProps,
|
|
size,
|
|
variant: statusVariant,
|
|
role: "status",
|
|
"aria-label": status,
|
|
children: (0, import_jsx_runtime.jsx)(Typography, {
|
|
tag: "span",
|
|
variant: "omega",
|
|
fontWeight: "bold",
|
|
children: formatMessage({
|
|
id: `content-manager.containers.List.${status}`,
|
|
defaultMessage: capitalise(status)
|
|
})
|
|
})
|
|
});
|
|
};
|
|
|
|
// node_modules/@strapi/content-manager/dist/admin/components/RelativeTime.mjs
|
|
var import_jsx_runtime2 = __toESM(require_jsx_runtime(), 1);
|
|
var React = __toESM(require_react(), 1);
|
|
var intervals = [
|
|
"years",
|
|
"months",
|
|
"days",
|
|
"hours",
|
|
"minutes",
|
|
"seconds"
|
|
];
|
|
var RelativeTime = React.forwardRef(({ timestamp, customIntervals = [], ...restProps }, forwardedRef) => {
|
|
const { formatRelativeTime, formatDate, formatTime } = useIntl();
|
|
const interval = intervalToDuration({
|
|
start: timestamp,
|
|
end: Date.now()
|
|
});
|
|
const unit = intervals.find((intervalUnit) => {
|
|
return interval[intervalUnit] > 0 && Object.keys(interval).includes(intervalUnit);
|
|
}) ?? "seconds";
|
|
const relativeTime = isPast(timestamp) ? -interval[unit] : interval[unit];
|
|
const customInterval = customIntervals.find((custom) => interval[custom.unit] < custom.threshold);
|
|
const displayText = customInterval ? customInterval.text : formatRelativeTime(relativeTime, unit, {
|
|
numeric: "auto"
|
|
});
|
|
return (0, import_jsx_runtime2.jsx)("time", {
|
|
ref: forwardedRef,
|
|
dateTime: timestamp.toISOString(),
|
|
role: "time",
|
|
title: `${formatDate(timestamp)} ${formatTime(timestamp)}`,
|
|
...restProps,
|
|
children: displayText
|
|
});
|
|
});
|
|
|
|
export {
|
|
DocumentStatus,
|
|
RelativeTime
|
|
};
|
|
//# sourceMappingURL=chunk-7FUKGPNR.js.map
|