lml-main
Version:
This is now a mono repository published into many standalone packages.
69 lines • 3.25 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const React = require("react");
const lodash_1 = require("lodash");
const selectors_1 = require("../../../selectors");
const abstract_field_1 = require("./abstract-field");
const cosmoui_1 = require("cosmoui");
const styles = require('./job-fields.scss');
class CustomerField extends abstract_field_1.AbstractJobField {
constructor() {
super(...arguments);
this.returnIcon = () => (React.createElement(cosmoui_1.Row, null,
React.createElement("div", { style: this.arrowStyle() }),
React.createElement("div", { style: this.returnTextStyle() }, "R")));
this.arrowStyle = () => ({
width: 0,
height: 0,
borderTop: '6px solid transparent',
borderBottom: '6px solid transparent',
borderRight: '6px solid darkgray',
marginLeft: '5px',
});
this.returnTextStyle = () => ({
backgroundColor: 'darkgray',
color: 'white',
height: '12px',
width: '12px',
textAlign: 'center',
fontSize: '8px',
});
this.jobNumberOverflow = () => ({
overflow: 'hidden',
textOverflow: 'ellipsis',
overflowWrap: 'break-word',
});
}
render() {
const { job, expanded } = this.props;
return (React.createElement(cosmoui_1.Column, { className: styles.customerField },
React.createElement("div", { className: expanded ? '' : styles.ellipsis }, lodash_1.get(job, 'customer.name', '')),
React.createElement(cosmoui_1.Row, { className: expanded ? '' : styles.ellipsis },
React.createElement("span", { style: this.jobNumberOverflow() },
React.createElement("b", null, "CS: "),
job.jobNumber),
selectors_1.jobTypeIsCustomerReturn(job) && this.returnIcon())));
}
}
exports.CustomerField = CustomerField;
class ExpandedCustomerField extends abstract_field_1.AbstractJobField {
render() {
const { job } = this.props;
const serviceDescription = lodash_1.get(job, 'metadata.service.description', '');
const collectionSLA = lodash_1.get(lodash_1.find(job.stops, { type: 'collection' }), 'metadata.sla', '');
const deliverySLA = lodash_1.get(lodash_1.find(job.stops, { type: 'delivery' }), 'metadata.sla', '');
return (React.createElement(cosmoui_1.Column, { className: styles.customerField },
React.createElement("strong", null, serviceDescription.toUpperCase()),
React.createElement(cosmoui_1.Row, null,
collectionSLA &&
React.createElement(cosmoui_1.Row, null,
React.createElement(cosmoui_1.Icon, { icon: "Collection", size: 14 }),
collectionSLA),
deliverySLA &&
React.createElement(cosmoui_1.Row, null,
React.createElement(cosmoui_1.Icon, { icon: "Delivery", size: 14 }),
deliverySLA))));
}
}
exports.ExpandedCustomerField = ExpandedCustomerField;
//# sourceMappingURL=customer-field.js.map