@raona/components
Version:
React components used at Raona to work with SPFx
61 lines (60 loc) • 3.32 kB
JavaScript
var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
Object.defineProperty(exports, "__esModule", { value: true });
var React = require("react");
var react_1 = require("react");
var stylesConstants_1 = require("./stylesConstants");
var VacancyCard = /** @class */ (function (_super) {
__extends(VacancyCard, _super);
function VacancyCard() {
return _super !== null && _super.apply(this, arguments) || this;
}
VacancyCard.prototype.render = function () {
var _a = this.props, item = _a.item, vacancyBodyStyle = _a.vacancyBodyStyle, handleCardClick = _a.handleCardClick;
var daysSincePublished = Math.floor((Date.now().valueOf() - new Date(item.date).valueOf()) / (1000 * 60 * 60 * 24));
var stringDaysAgo = ' days ago';
if (daysSincePublished == 1)
stringDaysAgo = ' day ago';
else if (daysSincePublished == 0)
stringDaysAgo = 'Today';
var styles = vacancyBodyStyle ? __assign({}, vacancyBodyStyle) : __assign({}, stylesConstants_1.vacancyConstantBodyStyles); // Default Style for this component
return (React.createElement("div", { className: styles.card, onClick: function () { return handleCardClick && handleCardClick(item); } },
React.createElement("div", { className: styles.inner },
React.createElement("div", { className: styles.bg }),
React.createElement("div", { className: styles.content },
React.createElement("span", { className: styles.country }, item.description),
React.createElement("h3", { className: styles.title }, item.title),
React.createElement("div", { className: styles.meta.meta },
React.createElement("span", { className: styles.meta.metaItem },
React.createElement("i", { className: styles.meta.time_icon }),
daysSincePublished > 0 ? daysSincePublished + '' + stringDaysAgo : stringDaysAgo),
React.createElement("span", { className: styles.meta.metaItem },
React.createElement("i", { className: styles.meta.location_icon }),
item.location))))));
};
return VacancyCard;
}(react_1.Component));
exports.VacancyCard = VacancyCard;
;