@pnp/spfx-controls-react
Version:
Reusable React controls for SharePoint Framework solutions
66 lines • 2.83 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
var tslib_1 = require("tslib");
var strings = tslib_1.__importStar(require("ControlStrings"));
var React = tslib_1.__importStar(require("react"));
var TextField_1 = require("@fluentui/react/lib/TextField");
var TimeHelper_1 = require("./TimeHelper");
var Dropdown_1 = require("@fluentui/react/lib/Dropdown");
var TimeDisplayControlType_1 = require("./TimeDisplayControlType");
/**
* Minutes component, renders the minutes dropdown
*/
var MinutesComponent = /** @class */ (function (_super) {
tslib_1.__extends(MinutesComponent, _super);
function MinutesComponent(props) {
var _this = _super.call(this, props) || this;
_this._initMinutesOptions(props.minutesIncrementStep || 1);
return _this;
}
MinutesComponent.prototype.render = function () {
var _a = this.props, disabled = _a.disabled, value = _a.value, onChange = _a.onChange, timeDisplayControlType = _a.timeDisplayControlType;
var renderDropdown = timeDisplayControlType === TimeDisplayControlType_1.TimeDisplayControlType.Dropdown;
if (renderDropdown) {
return (React.createElement(Dropdown_1.Dropdown, { disabled: disabled, label: '', options: this._minutes, selectedKey: value, onChanged: function (option) {
onChange(option.text);
} }));
}
else {
return (React.createElement(TextField_1.MaskedTextField, { disabled: disabled, label: "", value: value ? TimeHelper_1.TimeHelper.suffixZero(value.toString()) : "00", onGetErrorMessage: function (val) {
var message = "";
var minutes = parseInt(val);
if (isNaN(minutes)) {
message = strings.DateTimePickerMinuteValueInvalid;
}
if (!message) {
onChange(val);
}
return message;
}, mask: "59", maskFormat: {
'5': /[0-5]/,
'9': /[0-9]/
} }));
}
};
MinutesComponent.prototype._initMinutesOptions = function (step) {
var minutes = [];
for (var j = 0; j < 60; j += step) {
var digitMin = void 0;
if (j < 10) {
digitMin = '0' + j;
}
else {
digitMin = j.toString();
}
/*let selected: boolean = false;
if (j === this.props.value) {
selected = true;
}*/
minutes.push({ key: j, text: digitMin });
}
this._minutes = minutes;
};
return MinutesComponent;
}(React.Component));
exports.default = MinutesComponent;
//# sourceMappingURL=MinutesComponent.js.map