gather-content-ui
Version:
GatherContent UI Library
80 lines (78 loc) • 2.79 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.DateSetTimeDropdown = DateSetTimeDropdown;
var _react = _interopRequireDefault(require("react"));
var _v = _interopRequireDefault(require("uuid/v1"));
var _ = require("../../..");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
// @ts-expect-error TS(7016): Could not find a declaration file for module 'uuid... Remove this comment to see the full error message
function DateSetTimeDropdown(_ref) {
var onTimeSelect = _ref.onTimeSelect,
selectedTime = _ref.selectedTime;
var getTimes = function getTimes() {
var times = [];
var minutes = ["00", "15", "30", "45"];
var hours = Array.from({
length: 24
}, function (x, i) {
return i;
});
hours.map(function (hour) {
return minutes.map(function (minute) {
var suffix = hour >= 12 ? "PM" : "AM";
var twelveHour;
if (hour > 12) {
twelveHour = hour - 12;
} else if (hour === 0) {
twelveHour = 12;
} else {
twelveHour = hour;
}
return times.push({
key: "".concat(hour, ":").concat(minute),
text: "".concat(twelveHour, ":").concat(minute, " ").concat(suffix)
});
});
});
return times;
};
var times = getTimes();
return /*#__PURE__*/_react["default"].createElement(_.Dropdown, {
id: "date-set-time-".concat((0, _v["default"])())
}, function (_ref2) {
var showContent = _ref2.showContent;
return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(_.Dropdown.Trigger, null, function (_ref3) {
var toggleShowContent = _ref3.toggleShowContent;
return /*#__PURE__*/_react["default"].createElement(_.ButtonSecondary, {
onClick: toggleShowContent,
size: _.ButtonSecondary.sizes.sm,
className: "ml-2",
contained: true,
title: "Select a time"
}, selectedTime, /*#__PURE__*/_react["default"].createElement(_.Icon, {
name: "down",
className: "ml-2",
types: ["dark"]
}));
}), showContent && /*#__PURE__*/_react["default"].createElement(_.Dropdown.Content, {
top: true,
collapse: true,
className: "gui-dropdown-max-height"
}, times.map(function (_ref4) {
var key = _ref4.key,
text = _ref4.text;
return /*#__PURE__*/_react["default"].createElement(_.Dropdown.Action, {
key: key,
action: function action() {
return onTimeSelect(text);
}
}, text);
})));
});
}
DateSetTimeDropdown.defaultProps = {
selectedTime: "5:00 PM"
};
//# sourceMappingURL=DateSetTimeDropdown.js.map