Sha256: c88f3f716729918258d5f49bdab04975dc89ad3aa360e9e5cbb86684d0f6936f

Contents?: true

Size: 520 Bytes

Versions: 4

Compression:

Stored size: 520 Bytes

Contents

const mongoose = require('mongoose');
const cql = require('cql-execution');

function DateTime(key, options) {
  mongoose.SchemaType.call(this, key, options, 'DateTime');
}
DateTime.prototype = Object.create(mongoose.SchemaType.prototype);

DateTime.prototype.cast = (dateTime) => {
  if (!Date.parse(dateTime)) {
    throw new Error(`DateTime: ${dateTime} is not a valid DateTime`);
  }

  return cql.DateTime.fromJSDate(new Date(dateTime), 0);
};

mongoose.Schema.Types.DateTime = DateTime;
module.exports = DateTime;

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
cqm-models-1.0.3 app/assets/javascripts/basetypes/DateTime.js
cqm-models-1.0.2 app/assets/javascripts/basetypes/DateTime.js
cqm-models-1.0.1 app/assets/javascripts/basetypes/DateTime.js
cqm-models-1.0.0 app/assets/javascripts/basetypes/DateTime.js