synapse-react-client
Version:
[](https://travis-ci.com/Sage-Bionetworks/Synapse-React-Client) [](https://badge.fury.io/js/synaps
33 lines • 2.4 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.CalendarWithIconFormGroup = void 0;
var tslib_1 = require("tslib");
var react_1 = (0, tslib_1.__importDefault)(require("react"));
var moment_timezone_1 = (0, tslib_1.__importDefault)(require("moment-timezone"));
var react_bootstrap_1 = require("react-bootstrap");
var calendar_clock_svg_1 = require("../../assets/icons/calendar-clock.svg");
var react_datetime_1 = (0, tslib_1.__importDefault)(require("react-datetime"));
require("react-datetime/css/react-datetime.css");
var SynapseContext_1 = require("../../utils/SynapseContext");
var CalendarWithIconFormGroup = function (_a) {
var value = _a.value, setterCallback = _a.setterCallback, label = _a.label, _b = _a.disabled, disabled = _b === void 0 ? false : _b, isValidDate = _a.isValidDate;
var utcTime = (0, SynapseContext_1.useSynapseContext)().utcTime;
return (react_1.default.createElement(react_bootstrap_1.Form.Group, { className: "calendar-with-icon-form-group" },
label && react_1.default.createElement("label", null, label),
react_1.default.createElement(react_bootstrap_1.InputGroup, null,
react_1.default.createElement(react_bootstrap_1.InputGroup.Prepend, null,
react_1.default.createElement(react_bootstrap_1.InputGroup.Text, null,
react_1.default.createElement(calendar_clock_svg_1.ReactComponent, null))),
react_1.default.createElement(react_datetime_1.default, { value: value, utc: utcTime,
// using 24-hour time format
timeFormat: 'HH:mm z', displayTimeZone: moment_timezone_1.default.tz.guess(), onChange: setterCallback, inputProps: {
disabled: disabled,
className: 'form-control calendar-date-time-input rounded-right',
// Chrome for some reason decides to autofill this input box with email address, so we must disable autofill
// this is a hacky, but consistent way to disable autofill because Chrome does not respect the spec :(
// https://bugs.chromium.org/p/chromium/issues/detail?id=914451
autoComplete: 'new-password',
}, isValidDate: isValidDate }))));
};
exports.CalendarWithIconFormGroup = CalendarWithIconFormGroup;
//# sourceMappingURL=CalendarWithIconFormGroup.js.map