Skip to content

Commit 4c37c10

Browse files
committed
prettier formatting and removing bindOne and bindAll
1 parent 6f700f8 commit 4c37c10

File tree

1 file changed

+100
-157
lines changed

1 file changed

+100
-157
lines changed

src/index.js

Lines changed: 100 additions & 157 deletions
Original file line numberDiff line numberDiff line change
@@ -1,236 +1,179 @@
11
/* jshint loopfunc:true */
2-
let JSData = require('js-data')
3-
let DSHttpAdapter = require('../node_modules/js-data-http/src/index.js')
4-
let angular = require('angular')
2+
let JSData = require("js-data");
3+
let DSHttpAdapter = require("../node_modules/js-data-http/src/index.js");
4+
let angular = require("angular");
55

6-
let { DSUtils, DSErrors } = JSData
7-
let { isString, isNumber, isObject, set, resolveId } = DSUtils
6+
let { DSUtils, DSErrors } = JSData;
7+
let { isString, isObject, set } = DSUtils;
88

99
let adapters = [
1010
{
11-
project: 'js-data-localstorage',
12-
name: 'localstorage',
13-
'class': 'DSLocalStorageAdapter'
11+
project: "js-data-localstorage",
12+
name: "localstorage",
13+
class: "DSLocalStorageAdapter",
1414
},
1515
{
16-
project: 'js-data-localforage',
17-
name: 'localforage',
18-
'class': 'DSLocalForageAdapter'
16+
project: "js-data-localforage",
17+
name: "localforage",
18+
class: "DSLocalForageAdapter",
1919
},
2020
{
21-
project: 'js-data-firebase',
22-
name: 'firebase',
23-
'class': 'DSFirebaseAdapter'
21+
project: "js-data-firebase",
22+
name: "firebase",
23+
class: "DSFirebaseAdapter",
2424
},
2525
{
26-
project: 'js-data-sql',
27-
name: 'sql',
28-
'class': 'DSSqlAdapter'
29-
}
30-
]
26+
project: "js-data-sql",
27+
name: "sql",
28+
class: "DSSqlAdapter",
29+
},
30+
];
3131

32-
let functionsToWrap = [
33-
'compute',
34-
'digest',
35-
'eject',
36-
'inject'
37-
]
32+
let functionsToWrap = ["compute", "digest", "eject", "inject"];
3833

39-
function registerAdapter (adapter) {
40-
let Adapter
34+
function registerAdapter(adapter) {
35+
let Adapter;
4136

4237
try {
43-
Adapter = require(adapter.project)
38+
Adapter = require(adapter.project);
4439
} catch (e) {}
4540

4641
if (!Adapter) {
47-
Adapter = window[adapter.class]
42+
Adapter = window[adapter.class];
4843
}
4944

5045
if (Adapter) {
51-
adapter.loaded = true
52-
angular.module('js-data').provider(adapter.class, function () {
53-
let _this = this
54-
_this.defaults = {}
55-
_this.$get = [() => new Adapter(_this.defaults)]
56-
})
46+
adapter.loaded = true;
47+
angular.module("js-data").provider(adapter.class, function () {
48+
let _this = this;
49+
_this.defaults = {};
50+
_this.$get = [() => new Adapter(_this.defaults)];
51+
});
5752
}
5853
}
5954

6055
class DSHttpAdapterProvider {
61-
constructor () {
62-
let defaults = {}
63-
this.defaults = defaults
64-
65-
this.$get = ['$http', 'DS', ($http, DS) => {
66-
defaults.http = defaults.http || $http
67-
let adapter = new DSHttpAdapter(defaults)
68-
DS.registerAdapter('http', adapter, { 'default': true })
69-
return adapter
70-
}]
56+
constructor() {
57+
let defaults = {};
58+
this.defaults = defaults;
59+
60+
this.$get = [
61+
"$http",
62+
"DS",
63+
($http, DS) => {
64+
defaults.http = defaults.http || $http;
65+
let adapter = new DSHttpAdapter(defaults);
66+
DS.registerAdapter("http", adapter, { default: true });
67+
return adapter;
68+
},
69+
];
7170
}
7271
}
7372

7473
class DSProvider {
75-
constructor () {
76-
let _this = this
77-
let deps = []
74+
constructor() {
75+
let _this = this;
76+
let deps = [];
7877

7978
for (var i = 0; i < adapters.length; i++) {
8079
if (adapters[i].loaded) {
81-
deps.push(adapters[i].class)
82-
}
83-
}
84-
85-
_this.defaults = {}
86-
87-
JSData.DS.prototype.bindAll = function (resourceName, params, scope, expr, cb) {
88-
let _this = this
89-
90-
params = params || {}
91-
92-
if (!_this.definitions[resourceName]) {
93-
throw new DSErrors.NER(resourceName)
94-
} else if (!isObject(params)) {
95-
throw new DSErrors.IA('"params" must be an object!')
96-
} else if (!isObject(scope)) {
97-
throw new DSErrors.IA('"scope" must be an object!')
98-
} else if (!isString(expr)) {
99-
throw new DSErrors.IA('"expr" must be a string!')
100-
}
101-
102-
try {
103-
return scope.$watch(() => _this.lastModified(resourceName), () => {
104-
let items = _this.filter(resourceName, params)
105-
set(scope, expr, items)
106-
if (cb) {
107-
cb(null, items)
108-
}
109-
})
110-
} catch (err) {
111-
if (cb) {
112-
cb(err)
113-
} else {
114-
throw err
115-
}
80+
deps.push(adapters[i].class);
11681
}
11782
}
11883

119-
JSData.DS.prototype.bindOne = function (resourceName, id, scope, expr, cb) {
120-
let _this = this
121-
122-
id = resolveId(_this.definitions[resourceName], id)
123-
if (!_this.definitions[resourceName]) {
124-
throw new DSErrors.NER(resourceName)
125-
} else if (!isString(id) && !isNumber(id)) {
126-
throw new DSErrors.IA('"id" must be a string or a number!')
127-
} else if (!isObject(scope)) {
128-
throw new DSErrors.IA('"scope" must be an object!')
129-
} else if (!isString(expr)) {
130-
throw new DSErrors.IA('"expr" must be a string!')
131-
}
132-
133-
try {
134-
return scope.$watch(() => _this.lastModified(resourceName, id), () => {
135-
let item = _this.get(resourceName, id)
136-
if (item) {
137-
_this.compute(resourceName, id)
138-
}
139-
set(scope, expr, item)
140-
if (cb) {
141-
cb(null, item)
142-
}
143-
})
144-
} catch (err) {
145-
if (cb) {
146-
cb(err)
147-
} else {
148-
throw err
149-
}
150-
}
151-
}
84+
_this.defaults = {};
15285

153-
function load (...args) {
154-
let $rootScope = args[args.length - 2]
155-
let $q = args[args.length - 1]
156-
let store = new JSData.DS(_this.defaults)
157-
let originals = {}
86+
function load(...args) {
87+
let $rootScope = args[args.length - 2];
88+
let $q = args[args.length - 1];
89+
let store = new JSData.DS(_this.defaults);
90+
let originals = {};
15891

159-
function QPromise (executor) {
160-
let deferred = $q.defer()
92+
function QPromise(executor) {
93+
let deferred = $q.defer();
16194

16295
try {
16396
executor(
16497
angular.bind(deferred, deferred.resolve),
16598
angular.bind(deferred, deferred.reject)
166-
)
99+
);
167100
} catch (err) {
168-
deferred.reject(err)
101+
deferred.reject(err);
169102
}
170103

171-
return deferred.promise
104+
return deferred.promise;
172105
}
173106

174-
QPromise.all = $q.all
175-
QPromise.when = $q.when
176-
QPromise.reject = $q.reject
107+
QPromise.all = $q.all;
108+
QPromise.when = $q.when;
109+
QPromise.reject = $q.reject;
177110

178-
DSUtils.Promise = QPromise
111+
DSUtils.Promise = QPromise;
179112

180113
// Register any adapters that have been loaded
181114
if (args.length) {
182115
for (var i = 0; i < args.length; i++) {
183116
for (var j = 0; j < adapters.length; j++) {
184117
if (adapters[j].loaded && !adapters[j].registered) {
185-
adapters[j].registered = true
186-
store.registerAdapter(adapters[j].name, args[i])
187-
break
118+
adapters[j].registered = true;
119+
store.registerAdapter(adapters[j].name, args[i]);
120+
break;
188121
}
189122
}
190123
}
191124
}
192125

193126
// Wrap certain sync functions with $apply
194127
for (var k = 0; k < functionsToWrap.length; k++) {
195-
let name = functionsToWrap[k]
196-
originals[name] = store[name]
128+
let name = functionsToWrap[k];
129+
originals[name] = store[name];
197130
store[name] = (...args) => {
198131
if (!$rootScope.$$phase) {
199-
return $rootScope.$apply(() => originals[name].apply(store, args))
132+
return $rootScope.$apply(() => originals[name].apply(store, args));
200133
}
201-
return originals[name].apply(store, args)
202-
}
134+
return originals[name].apply(store, args);
135+
};
203136
}
204137

205138
// Hook into the digest loop
206-
if (typeof Object.observe !== 'function' || typeof Array.observe !== 'function') {
207-
$rootScope.$watch(() => store.observe.Platform.performMicrotaskCheckpoint())
139+
if (
140+
typeof Object.observe !== "function" ||
141+
typeof Array.observe !== "function"
142+
) {
143+
$rootScope.$watch(() =>
144+
store.observe.Platform.performMicrotaskCheckpoint()
145+
);
208146
}
209147

210-
return store
148+
return store;
211149
}
212150

213-
deps.push('$rootScope')
214-
deps.push('$q')
215-
deps.push(load)
151+
deps.push("$rootScope");
152+
deps.push("$q");
153+
deps.push(load);
216154

217-
_this.$get = deps
155+
_this.$get = deps;
218156
}
219157
}
220-
angular.module('js-data', ['ng'])
221-
.value('DSUtils', DSUtils)
222-
.value('DSErrors', DSErrors)
223-
.value('DSVersion', JSData.version)
224-
.provider('DS', DSProvider)
225-
.provider('DSHttpAdapter', DSHttpAdapterProvider)
226-
.run(['DS', 'DSHttpAdapter', (DS, DSHttpAdapter) => {
227-
DS.registerAdapter('http', DSHttpAdapter, { 'default': true })
228-
}])
158+
angular
159+
.module("js-data", ["ng"])
160+
.value("DSUtils", DSUtils)
161+
.value("DSErrors", DSErrors)
162+
.value("DSVersion", JSData.version)
163+
.provider("DS", DSProvider)
164+
.provider("DSHttpAdapter", DSHttpAdapterProvider)
165+
.run([
166+
"DS",
167+
"DSHttpAdapter",
168+
(DS, DSHttpAdapter) => {
169+
DS.registerAdapter("http", DSHttpAdapter, { default: true });
170+
},
171+
]);
229172

230173
for (var i = 0; i < adapters.length; i++) {
231-
registerAdapter(adapters[i])
174+
registerAdapter(adapters[i]);
232175
}
233176

234177
// return the module name
235-
module.exports = 'js-data'
236-
module.exports.name = 'js-data'
178+
module.exports = "js-data";
179+
module.exports.name = "js-data";

0 commit comments

Comments
 (0)