New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More

can-define-backup

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

can-define-backup - npm Package Compare versions

Comparing version 0.0.1 to 1.0.0-pre.0

@@ -1,3 +0,4 @@

var compute = require('can-compute');
var DefineMap = require('can-define/map/map');
var Observation = require("can-observation");
var canReflect = require("can-reflect");

@@ -114,3 +115,3 @@ require('can-define-backup');

test('isDirty wrapped in a compute should trigger changes #1417', function() {
test('isDirty wrapped in an observation should trigger changes #1417', function() {
expect(2);

@@ -123,10 +124,10 @@ var recipe = new Recipe({

var c = compute(function() {
var obs = new Observation(function(){
return recipe.isDirty();
});
ok(!c(), 'isDirty is false');
ok(!obs.get(), 'isDirty is false');
c.bind('change', function() {
ok(c(), 'isDirty is true and a change has occurred');
canReflect.onValue(obs, function(){
ok(obs.get(), 'isDirty is true and a change has occurred');
});

@@ -133,0 +134,0 @@

//allows you to backup and restore a map instance
var compute = require('can-compute');
var DefineMap = require('can-define/map/map');
var compare = require('can-set/src/compare');
var assign = require("can-util/js/assign/assign");
var assign = require("can-assign");
var canReflect = require("can-reflect");
var SimpleObservable = require('can-simple-observable');

@@ -19,11 +20,18 @@ var flatProps = function (a, cur) {

var observables = new WeakMap();
// var oldSetup = DefineMap.prototype.init;
function getBackup(map) {
var obs = observables.get(map);
if(!obs) {
obs = new SimpleObservable();
observables.set(map, obs);
}
return obs;
}
assign(DefineMap.prototype, {
_backupStore: compute(),
backup: function () {
this._backupStore(this.serialize());
var store = getBackup(this);
canReflect.setValue(store, this.serialize());
return this;

@@ -33,3 +41,4 @@ },

isDirty: function (checkAssociations) {
var backupStore = this._backupStore();
var store = getBackup(this);
var backupStore = canReflect.getValue(store);
if(!backupStore){

@@ -47,3 +56,5 @@ return false;

restore: function (restoreAssociations) {
var props = restoreAssociations ? this._backupStore() : flatProps(this._backupStore(), this);
var store = getBackup(this);
var curVal = canReflect.getValue(store);
var props = restoreAssociations ? curVal : flatProps(curVal, this);
if (this.isDirty(restoreAssociations)) {

@@ -50,0 +61,0 @@ for(var prop in props) {

{
"name": "can-define-backup",
"version": "0.0.1",
"version": "1.0.0-pre.0",
"description": "Backup and restore a DefineMap state",

@@ -41,38 +41,21 @@ "homepage": "https://canjs.com",

"system": {
"main": "can-define-backup",
"configDependencies": [
"live-reload"
],
"npmIgnore": [
"documentjs",
"testee",
"generator-donejs",
"donejs-cli",
"steal-tools"
],
"npmAlgorithm": "flat"
"main": "can-define-backup"
},
"dependencies": {
"can-compute": "^3.0.0",
"can-connect": "^1.0.0",
"can-define": "^1.0.4",
"can-fixture": "^1.0.0",
"can-jquery": "^3.0.1",
"can-list": "^3.0.0",
"can-set": "^1.0.0",
"can-util": "^3.0.1"
"can-assign": "^1.1.1",
"can-define": "^2.0.0-pre.0",
"can-reflect": "^1.11.0",
"can-set": "^1.3.3",
"can-simple-observable": "^2.0.0-pre.25"
},
"devDependencies": {
"can-define-define": "^3.0.0-pre.2",
"can-ssr": "^0.11.6",
"can-observation": "^4.0.0-pre.0",
"cssify": "^0.6.0",
"documentjs": "^0.4.2",
"donejs-cli": "^0.7.0",
"generator-donejs": "^0.7.0",
"jshint": "^2.9.1",
"steal": "^0.14.0",
"steal-qunit": "^0.1.1",
"steal-tools": "^0.14.0",
"steal": "^1.0.0",
"steal-qunit": "^1.0.0",
"steal-tools": "^1.0.0",
"testee": "^0.2.4"
}
}