Skip to content
This repository was archived by the owner on Apr 11, 2023. It is now read-only.

Commit 13515da

Browse files
committed
Blob converter fix, model binder fix
1 parent 919292d commit 13515da

File tree

4 files changed

+6
-5
lines changed

4 files changed

+6
-5
lines changed

TypeSystem/Types/Blob.js

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,6 @@ $data.Container.registerConverter('$data.Blob',{
8383
if (typeof Blob !== 'undefined' && value instanceof Blob){
8484
var req = new XMLHttpRequest();
8585
req.open('GET', URL.createObjectURL(value), false);
86-
req.responseType = 'arraybuffer';
8786
req.send(null);
8887
return $data.Container.convertTo(req.response, $data.Blob);
8988
} else if (typeof ArrayBuffer !== 'undefined' && value instanceof ArrayBuffer) {

Types/ModelBinder.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ $data.Class.define('$data.ModelBinder', null, null, {
5656
for (var j = 0; j < path.length; j++) {
5757
context.src += 'di.' + path.slice(0, j + 1).join('.') + (j < path.length - 1 ? ' && ' : ' !== undefined && typeof di.' + selector + ' === "object"');
5858
}
59-
context.src += '){di = di.' + selector + ';}' + (i < meta.$selector.length - 1 ? 'else ' : 'else return di.' + selector + ';');
59+
context.src += '){di = di.' + selector + ';}' + (i < meta.$selector.length - 1 ? 'else ' : '');
6060
}
6161

6262
context.src += 'if (di === null){';

Types/ServiceOperation.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,7 @@ $data.Class.define('$data.ServiceOperation', null, null, {}, {
8080
if (cfg.params) {
8181
paramConstExpression = [];
8282
//object as parameter
83+
//FIX: object type parameters with the same property name as the name of the first parameter
8384
if (arguments[0] && typeof arguments[0] === 'object' && arguments[0].constructor === $data.Object && cfg.params && cfg.params[0] && cfg.params[0].name in arguments[0]) {
8485
var argObj = arguments[0];
8586
for (var i = 0; i < cfg.params.length; i++) {

Types/StorageProviders/modelBinderConfigCompiler.js

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -156,9 +156,10 @@ $C('$data.modelBinder.ModelBinderConfigCompiler', $data.Expressions.EntityExpres
156156
$value: function (meta, data) { return data; }
157157
}
158158
}*/
159-
builder._binderConfig.$item = builder._binderConfig.$item || {};
160-
builder.modelBinderConfig = builder._binderConfig.$item;
161-
159+
if (builder._binderConfig.$type === $data.Array) {
160+
builder._binderConfig.$item = builder._binderConfig.$item || {};
161+
builder.modelBinderConfig = builder._binderConfig.$item;
162+
}
162163

163164

164165
}

0 commit comments

Comments
 (0)