apollo-client
Advanced tools
Comparing version 0.5.2 to 0.5.3
@@ -41,7 +41,8 @@ "use strict"; | ||
}); | ||
var idValue = { type: 'id', generated: false, id: dataId }; | ||
if (where === 'PREPEND') { | ||
array.unshift(dataId); | ||
array.unshift(idValue); | ||
} | ||
else if (where === 'APPEND') { | ||
array.push(dataId); | ||
array.push(idValue); | ||
} | ||
@@ -74,3 +75,3 @@ else { | ||
var cleanedObj = mapValues(storeObj, function (value) { | ||
if (value === dataId) { | ||
if (value && value.id === dataId) { | ||
affected = true; | ||
@@ -112,3 +113,3 @@ return null; | ||
else { | ||
var filteredArray = originalArray.filter(function (item) { return item !== dataId; }); | ||
var filteredArray = originalArray.filter(function (item) { return item.id !== dataId; }); | ||
if (filteredArray.length === originalArray.length) { | ||
@@ -130,3 +131,14 @@ return originalArray; | ||
}); | ||
array.splice(array.indexOf(dataId), 1); | ||
var index = -1; | ||
array.some(function (item, i) { | ||
if (item && item.id === dataId) { | ||
index = i; | ||
return true; | ||
} | ||
return false; | ||
}); | ||
if (index === -1) { | ||
return state; | ||
} | ||
array.splice(index, 1); | ||
return assign(state, (_c = {}, | ||
@@ -133,0 +145,0 @@ _c[dataIdOfObj] = clonedObj, |
@@ -18,4 +18,5 @@ "use strict"; | ||
var haveWarned = false; | ||
var fragmentMatcher = function (objId, typeCondition, context) { | ||
var obj = context.store[objId]; | ||
var fragmentMatcher = function (idValue, typeCondition, context) { | ||
assertIdValue(idValue); | ||
var obj = context.store[idValue.id]; | ||
if (!obj) { | ||
@@ -40,3 +41,5 @@ return false; | ||
}; | ||
var readStoreResolver = function (fieldName, objId, args, context) { | ||
var readStoreResolver = function (fieldName, idValue, args, context) { | ||
assertIdValue(idValue); | ||
var objId = idValue.id; | ||
var obj = context.store[objId]; | ||
@@ -55,5 +58,2 @@ var storeKeyName = storeUtils_2.storeKeyNameFromFieldNameAndArgs(fieldName, args); | ||
} | ||
if (storeUtils_1.isIdValue(fieldValue)) { | ||
return fieldValue.id; | ||
} | ||
return fieldValue; | ||
@@ -69,3 +69,7 @@ }; | ||
}; | ||
var result = graphql_anywhere_1.default(readStoreResolver, query, 'ROOT_QUERY', context, variables, { | ||
var rootIdValue = { | ||
type: 'id', | ||
id: 'ROOT_QUERY', | ||
}; | ||
var result = graphql_anywhere_1.default(readStoreResolver, query, rootIdValue, context, variables, { | ||
fragmentMatcher: fragmentMatcher, | ||
@@ -79,2 +83,7 @@ }); | ||
exports.diffQueryAgainstStore = diffQueryAgainstStore; | ||
function assertIdValue(idValue) { | ||
if (!storeUtils_1.isIdValue(idValue)) { | ||
throw new Error("Encountered a sub-selection on the query, but the store doesn't have an object reference. This should never happen during normal use unless you have custom code that is directly manipulating the store; please file an issue."); | ||
} | ||
} | ||
//# sourceMappingURL=readFromStore.js.map |
@@ -193,2 +193,3 @@ "use strict"; | ||
} | ||
var generated = true; | ||
if (context.dataIdFromObject) { | ||
@@ -198,2 +199,3 @@ var semanticId = context.dataIdFromObject(item); | ||
itemDataId = semanticId; | ||
generated = false; | ||
} | ||
@@ -207,5 +209,10 @@ } | ||
}); | ||
return itemDataId; | ||
var idStoreValue = { | ||
type: 'id', | ||
id: itemDataId, | ||
generated: generated, | ||
}; | ||
return idStoreValue; | ||
}); | ||
} | ||
//# sourceMappingURL=writeToStore.js.map |
{ | ||
"name": "apollo-client", | ||
"version": "0.5.2", | ||
"version": "0.5.3", | ||
"description": "A simple yet functional GraphQL client.", | ||
@@ -45,3 +45,3 @@ "main": "index.js", | ||
"symbol-observable": "^1.0.2", | ||
"whatwg-fetch": "^1.0.0" | ||
"whatwg-fetch": "^2.0.0" | ||
}, | ||
@@ -48,0 +48,0 @@ "devDependencies": { |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
261225
3814
+ Addedwhatwg-fetch@2.0.4(transitive)
- Removedwhatwg-fetch@1.1.1(transitive)
Updatedwhatwg-fetch@^2.0.0