// Code generated by coz. DO NOT EDIT. /** * Mixin for set * @protected * @memberOf module:@the-/date.mixins * @function setMix * @param {function} Class * @returns {function} Class */ 'use strict' /** @lends module:@the-/date.mixins.setMix */ function setMix (Class) { const units = {{{unitsString}}} /** * @memberOf module:@the-/date.mixins.setMix * @inner * @class SetMixed */ class SetMixed extends Class { /** * Set value of * @param {Object} values - Values to set * @see https://momentjs.com/docs/#/set-set/set/ * @returns {TheDate} */ /** * Set value of * @param {string} key - Values to set * @param {number} value - Values to set * @see https://momentjs.com/docs/#/set-set/set/ * @returns {TheDate} */ set (values) { if (arguments.length === 2) { let [unit, value] = arguments unit = this.normalizeMomentUnits(unit) const unknown = !units.includes(unit) if (unknown) { throw new Error(`[TheDate] Unsupported unit: ${unit}`) } return this.set({[unit]: value}) } const moment = this.toMoment() this.date = moment.set(values).toDate() } {{#each units}} /** * Set {{this}} * @param {number} value * @returns {TheDate} */ set{{pascalcase this}} (value) { return this.set({'{{this}}': value}) } {{/each}} } return SetMixed } module.exports = setMix