@coveord/plasma-mantine
Version:
A Plasma flavoured Mantine theme
70 lines (69 loc) • 2.79 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "TableLastUpdated", {
enumerable: true,
get: function() {
return TableLastUpdated;
}
});
var _interop_require_default = require("@swc/helpers/_/_interop_require_default");
var _object_spread = require("@swc/helpers/_/_object_spread");
var _object_spread_props = require("@swc/helpers/_/_object_spread_props");
var _object_without_properties = require("@swc/helpers/_/_object_without_properties");
var _sliced_to_array = require("@swc/helpers/_/_sliced_to_array");
var _jsxruntime = require("react/jsx-runtime");
var _core = require("@mantine/core");
var _hooks = require("@mantine/hooks");
var _dayjs = /*#__PURE__*/ _interop_require_default._(require("dayjs"));
var _react = require("react");
var _TableContext = require("../TableContext");
var defaultProps = {
label: 'Last update:'
};
var TableLastUpdated = (0, _core.factory)(function(props, ref) {
var _useTableContext = (0, _TableContext.useTableContext)(), table = _useTableContext.table, getStyles = _useTableContext.getStyles;
var _useProps = (0, _core.useProps)('PlasmaTableLastUpdated', defaultProps, props), label = _useProps.label, classNames = _useProps.classNames, className = _useProps.className, styles = _useProps.styles, style = _useProps.style, vars = _useProps.vars, others = _object_without_properties._(_useProps, [
"label",
"classNames",
"className",
"styles",
"style",
"vars"
]);
var _useState = _sliced_to_array._((0, _react.useState)(new Date()), 2), time = _useState[0], setTime = _useState[1];
(0, _hooks.useDidUpdate)(function() {
setTime(new Date());
}, [
table.options.data
]);
var stylesApiProps = {
classNames: classNames,
styles: styles
};
return /*#__PURE__*/ (0, _jsxruntime.jsx)(_core.Group, _object_spread_props._(_object_spread._({
px: "xl",
justify: "right",
ref: ref
}, getStyles('lastUpdatedRoot', _object_spread._({
className: className,
style: style
}, stylesApiProps)), others), {
children: /*#__PURE__*/ (0, _jsxruntime.jsxs)(_core.Text, _object_spread_props._(_object_spread._({
size: "xs"
}, getStyles('lastUpdatedLabel', _object_spread._({
className: className,
style: style
}, stylesApiProps))), {
children: [
label,
/*#__PURE__*/ (0, _jsxruntime.jsx)("span", {
role: "timer",
children: (0, _dayjs.default)(time).format('h:mm:ss A')
})
]
}))
}));
});
//# sourceMappingURL=TableLastUpdated.js.map