🚀 Socket Launch Week 🚀 Day 5: Introducing Socket Fix.Learn More
Socket
Sign inDemoInstall
Socket

can-data-types

Package Overview
Dependencies
Maintainers
1
Versions
7
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

can-data-types - npm Package Compare versions

Comparing version

to
0.1.1

maybe-boolean/maybe-boolean.md

33

can-data-types-test.js
var dataTypes = require("./can-data-types");
var QUnit = require("steal-qunit");
var canReflect = require("can-reflect");
var canSymbol = require("can-symbol");
var MaybeNumber = dataTypes.MaybeNumber;
var isMemberSymbol = canSymbol.for("can.isMember");
QUnit.module('can-data-types');

@@ -9,2 +13,8 @@

QUnit.equal( canReflect.convert("true", dataTypes.MaybeBoolean), true, "converted");
QUnit.equal(canReflect.new(dataTypes.MaybeBoolean, "true") , true);
QUnit.equal(dataTypes.MaybeBoolean[Symbol.for("can.isMember")](true) , true);
QUnit.equal(dataTypes.MaybeBoolean[Symbol.for("can.isMember")]("true") , false);
QUnit.equal(dataTypes.MaybeBoolean[Symbol.for("can.isMember")](null) , true);
});

@@ -15,6 +25,20 @@

QUnit.equal( canReflect.convert(date.toString(), dataTypes.MaybeDate).getTime(), date.getTime(), "converted");
QUnit.deepEqual(canReflect.new(dataTypes.MaybeDate, "2018-1-31") , new Date( Date.parse("2018-1-31") ), "new" );
QUnit.equal(dataTypes.MaybeDate[Symbol.for("can.isMember")](new Date()) , true);
QUnit.equal(dataTypes.MaybeDate[Symbol.for("can.isMember")]({}) , false);
QUnit.equal(dataTypes.MaybeDate[Symbol.for("can.isMember")](null) , true);
});
QUnit.test('MaybeNumber', function(){
QUnit.equal( canReflect.convert("5", dataTypes.MaybeNumber), 5, "converted");
QUnit.equal( canReflect.convert("5", MaybeNumber), 5, "converted");
QUnit.equal( canReflect.new(MaybeNumber, "1"), 1);
QUnit.equal( MaybeNumber[isMemberSymbol](1) , true);
QUnit.equal( MaybeNumber[isMemberSymbol]("1") , false);
QUnit.equal( MaybeNumber[isMemberSymbol](null) , true);
});

@@ -24,2 +48,9 @@

QUnit.equal( canReflect.convert(1, dataTypes.MaybeString), "1", "converted");
QUnit.equal( canReflect.new(dataTypes.MaybeString, 1) , "1");
QUnit.equal( dataTypes.MaybeString[Symbol.for("can.isMember")]("1") , true);
QUnit.equal( dataTypes.MaybeString[Symbol.for("can.isMember")](1) , false);
QUnit.equal( dataTypes.MaybeString[Symbol.for("can.isMember")](null) , true);
});

@@ -1,5 +0,24 @@

@page can-data-types
@module {Object} can-data-types
@parent can-typed-data
@collection can-infrastructure
@package ./package.json
@description A package of type objects that are used to test if a value is a
member of the type and convert values to the type.
# can-data-types
@body
Reusable special data types
## Use
This package is used by [can-define] (and eventually [can-observe]) to define
types. These types include a [can-reflect.getSchema] that enables them to be
converted to [can-query-logic] set types.
```js
import {DefineMap, MaybeDate, MaybeString, MaybeNumber} from "can";
const Todo = DefineMap.extend({
id: MaybeNumber,
name: MaybeString,
dueDate: MaybeDate
});
```

5

maybe-boolean/maybe-boolean.js

@@ -23,3 +23,6 @@ var canReflect = require("can-reflect");

return "MaybeBoolean";
}
},
"can.isMember": function(value) {
return value == null || typeof value === "boolean";
}
});

@@ -40,3 +40,6 @@ var canReflect = require("can-reflect");

return "MaybeDate";
}
},
"can.isMember": function(value) {
return value == null || (value instanceof Date);
}
});

@@ -20,3 +20,6 @@ var canReflect = require("can-reflect");

return "MaybeNumber";
}
},
"can.isMember": function(value) {
return value == null || typeof value === "number";
}
});

@@ -20,3 +20,6 @@ var canReflect = require("can-reflect");

return "MaybeString";
}
},
"can.isMember": function(value) {
return value == null || typeof value === "string";
}
});
{
"name": "can-data-types",
"version": "0.1.0",
"version": "0.1.1",
"description": "Reusable special data types",

@@ -50,2 +50,3 @@ "homepage": "",

"devDependencies": {
"can-symbol": "^1.6.1",
"jshint": "^2.9.1",

@@ -52,0 +53,0 @@ "steal": "^1.6.5",