lml-main
Version:
This is now a mono repository published into many standalone packages.
55 lines • 2.81 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const React = require("react");
const react_redux_1 = require("react-redux");
const cosmoui_1 = require("cosmoui");
const lodash_1 = require("lodash");
const ts_utils_1 = require("@lml/ts-utils");
const actions_1 = require("../../../jobs/actions");
const styles = require('./courier-stop.scss');
const getStreetsFromStopLocation = (stop) => {
let street1;
let street2;
let rest;
const streets = lodash_1.get(stop, 'location.address.streets', []);
if (streets) {
return [street1, street2, ...rest] = streets;
}
return [];
};
class CourierStopComponent extends React.Component {
constructor() {
super(...arguments);
this.showJobDetails = () => this.props.showJobDetails(lodash_1.get(this.props.stop, 'job.refId', ''));
}
render() {
const { label, stop, last } = this.props;
const [street1, street2, ...rest] = getStreetsFromStopLocation(stop);
// this is wrapped by a div because for some reason flexbox does not work well with
return (React.createElement(cosmoui_1.Row, { align: "flex-start" },
React.createElement(cosmoui_1.Column, { justify: "flex-start", align: "center", className: styles.waypoints },
React.createElement(cosmoui_1.Icon, { icon: stop.type === 'delivery' ? 'Delivery' : 'CollectNotReady', size: 11, className: styles.icon }),
React.createElement("div", { className: styles.connector })),
React.createElement(cosmoui_1.Column, { justify: "flex-start", className: styles.details },
React.createElement("p", null,
React.createElement("span", { className: styles.time }, ts_utils_1.formatTime(lodash_1.get(stop, 'stopTime.earliestTime', ''))),
React.createElement("span", null,
" - ",
lodash_1.get(stop, 'location.address.postcode', ''),
" \u2013 "),
React.createElement("span", { onClick: this.showJobDetails }, lodash_1.get(stop, 'job.jobNumber', ''))),
React.createElement("p", null,
street1,
`${street2 ? ', ' + street2 : ''}`),
React.createElement("p", null,
lodash_1.get(stop, 'job.customer.accountNumber', ''),
" |",
React.createElement("span", null, lodash_1.get(stop, 'job.customer.name', ''))))));
}
}
const mapStateToProps = (state, ownProps) => ({});
const mapDispatchToProps = {
showJobDetails: actions_1.showJobDetails,
};
exports.CourierStop = react_redux_1.connect(mapStateToProps, mapDispatchToProps)(CourierStopComponent);
//# sourceMappingURL=courier-stop.js.map