vuejs-rails 1.0.4 → 1.0.16
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/vuejs-rails/version.rb +1 -1
- data/vendor/assets/javascripts/vue-resource.js +1146 -428
- data/vendor/assets/javascripts/vue-router.js +2631 -2994
- data/vendor/assets/javascripts/vue.js +9588 -10371
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e174ae583339c6007caf8ffdf834c9ad8610dbce
|
4
|
+
data.tar.gz: 4f23d0e8167cf6100179dfab9a27d70bb70fb53d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 5e5e62bb2ebe40a7e79e92e9973cd3d40316d82bac922a1d443ea3eb4d81cc2e5f15013f29cef8c1a316a03112d20d9130307affb91369d9361fc6c760bde6da
|
7
|
+
data.tar.gz: a326fa7b3db116e0a0e66478e04972836b92971184579a1683d2c231b3bbc45cb32ff0299eeda2f1c0733997ecee67ccdcfbe818975aa59195f6e951e7db24ff
|
data/lib/vuejs-rails/version.rb
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
/**
|
2
|
-
* vue-resource v0.
|
2
|
+
* vue-resource v0.7.0
|
3
3
|
* https://github.com/vuejs/vue-resource
|
4
4
|
* Released under the MIT License.
|
5
5
|
*/
|
@@ -8,7 +8,7 @@
|
|
8
8
|
if(typeof exports === 'object' && typeof module === 'object')
|
9
9
|
module.exports = factory();
|
10
10
|
else if(typeof define === 'function' && define.amd)
|
11
|
-
define(factory);
|
11
|
+
define([], factory);
|
12
12
|
else if(typeof exports === 'object')
|
13
13
|
exports["VueResource"] = factory();
|
14
14
|
else
|
@@ -66,23 +66,28 @@ return /******/ (function(modules) { // webpackBootstrap
|
|
66
66
|
|
67
67
|
function install(Vue) {
|
68
68
|
|
69
|
-
var _ = __webpack_require__(1)
|
69
|
+
var _ = __webpack_require__(1);
|
70
70
|
|
71
|
-
|
72
|
-
|
73
|
-
|
71
|
+
_.config = Vue.config;
|
72
|
+
_.warning = Vue.util.warn;
|
73
|
+
_.nextTick = Vue.util.nextTick;
|
74
|
+
|
75
|
+
Vue.url = __webpack_require__(2);
|
76
|
+
Vue.http = __webpack_require__(8);
|
77
|
+
Vue.resource = __webpack_require__(23);
|
78
|
+
Vue.Promise = __webpack_require__(10);
|
74
79
|
|
75
80
|
Object.defineProperties(Vue.prototype, {
|
76
81
|
|
77
82
|
$url: {
|
78
83
|
get: function () {
|
79
|
-
return
|
84
|
+
return _.options(Vue.url, this, this.$options.url);
|
80
85
|
}
|
81
86
|
},
|
82
87
|
|
83
88
|
$http: {
|
84
89
|
get: function () {
|
85
|
-
return
|
90
|
+
return _.options(Vue.http, this, this.$options.http);
|
86
91
|
}
|
87
92
|
},
|
88
93
|
|
@@ -90,6 +95,14 @@ return /******/ (function(modules) { // webpackBootstrap
|
|
90
95
|
get: function () {
|
91
96
|
return Vue.resource.bind(this);
|
92
97
|
}
|
98
|
+
},
|
99
|
+
|
100
|
+
$promise: {
|
101
|
+
get: function () {
|
102
|
+
return function (executor) {
|
103
|
+
return new Vue.Promise(executor, this);
|
104
|
+
}.bind(this);
|
105
|
+
}
|
93
106
|
}
|
94
107
|
|
95
108
|
});
|
@@ -101,6 +114,7 @@ return /******/ (function(modules) { // webpackBootstrap
|
|
101
114
|
|
102
115
|
module.exports = install;
|
103
116
|
|
117
|
+
|
104
118
|
/***/ },
|
105
119
|
/* 1 */
|
106
120
|
/***/ function(module, exports) {
|
@@ -109,478 +123,844 @@ return /******/ (function(modules) { // webpackBootstrap
|
|
109
123
|
* Utility functions.
|
110
124
|
*/
|
111
125
|
|
112
|
-
|
126
|
+
var _ = exports, array = [], console = window.console;
|
113
127
|
|
114
|
-
|
128
|
+
_.warn = function (msg) {
|
129
|
+
if (console && _.warning && (!_.config.silent || _.config.debug)) {
|
130
|
+
console.warn('[VueResource warn]: ' + msg);
|
131
|
+
}
|
132
|
+
};
|
115
133
|
|
116
|
-
|
117
|
-
|
118
|
-
|
134
|
+
_.error = function (msg) {
|
135
|
+
if (console) {
|
136
|
+
console.error(msg);
|
137
|
+
}
|
138
|
+
};
|
119
139
|
|
120
|
-
|
121
|
-
|
122
|
-
|
140
|
+
_.trim = function (str) {
|
141
|
+
return str.replace(/^\s*|\s*$/g, '');
|
142
|
+
};
|
123
143
|
|
124
|
-
|
144
|
+
_.toLower = function (str) {
|
145
|
+
return str ? str.toLowerCase() : '';
|
146
|
+
};
|
125
147
|
|
126
|
-
|
148
|
+
_.isArray = Array.isArray;
|
127
149
|
|
128
|
-
|
129
|
-
|
130
|
-
|
150
|
+
_.isString = function (val) {
|
151
|
+
return typeof val === 'string';
|
152
|
+
};
|
131
153
|
|
132
|
-
|
133
|
-
|
154
|
+
_.isFunction = function (val) {
|
155
|
+
return typeof val === 'function';
|
156
|
+
};
|
134
157
|
|
135
|
-
|
158
|
+
_.isObject = function (obj) {
|
159
|
+
return obj !== null && typeof obj === 'object';
|
160
|
+
};
|
136
161
|
|
137
|
-
|
162
|
+
_.isPlainObject = function (obj) {
|
163
|
+
return _.isObject(obj) && Object.getPrototypeOf(obj) == Object.prototype;
|
164
|
+
};
|
138
165
|
|
139
|
-
|
140
|
-
for (i = 0; i < obj.length; i++) {
|
141
|
-
iterator.call(obj[i], obj[i], i);
|
142
|
-
}
|
143
|
-
} else if (_.isObject(obj)) {
|
144
|
-
for (key in obj) {
|
145
|
-
if (obj.hasOwnProperty(key)) {
|
146
|
-
iterator.call(obj[key], obj[key], key);
|
147
|
-
}
|
148
|
-
}
|
149
|
-
}
|
166
|
+
_.options = function (fn, obj, options) {
|
150
167
|
|
151
|
-
|
152
|
-
};
|
168
|
+
options = options || {};
|
153
169
|
|
154
|
-
_.
|
170
|
+
if (_.isFunction(options)) {
|
171
|
+
options = options.call(obj);
|
172
|
+
}
|
173
|
+
|
174
|
+
return _.merge(fn.bind({$vm: obj, $options: options}), fn, {$options: options});
|
175
|
+
};
|
155
176
|
|
156
|
-
|
177
|
+
_.each = function (obj, iterator) {
|
157
178
|
|
158
|
-
|
159
|
-
|
160
|
-
|
179
|
+
var i, key;
|
180
|
+
|
181
|
+
if (typeof obj.length == 'number') {
|
182
|
+
for (i = 0; i < obj.length; i++) {
|
183
|
+
iterator.call(obj[i], obj[i], i);
|
161
184
|
}
|
185
|
+
} else if (_.isObject(obj)) {
|
186
|
+
for (key in obj) {
|
187
|
+
if (obj.hasOwnProperty(key)) {
|
188
|
+
iterator.call(obj[key], obj[key], key);
|
189
|
+
}
|
190
|
+
}
|
191
|
+
}
|
162
192
|
|
163
|
-
|
164
|
-
|
165
|
-
});
|
193
|
+
return obj;
|
194
|
+
};
|
166
195
|
|
167
|
-
|
168
|
-
};
|
196
|
+
_.defaults = function (target, source) {
|
169
197
|
|
170
|
-
|
171
|
-
|
172
|
-
|
173
|
-
if (_.isPlainObject(source[key]) && !_.isPlainObject(target[key])) {
|
174
|
-
target[key] = {};
|
175
|
-
}
|
176
|
-
if (_.isArray(source[key]) && !_.isArray(target[key])) {
|
177
|
-
target[key] = [];
|
178
|
-
}
|
179
|
-
extend(target[key], source[key], deep);
|
180
|
-
} else if (source[key] !== undefined) {
|
181
|
-
target[key] = source[key];
|
182
|
-
}
|
198
|
+
for (var key in source) {
|
199
|
+
if (target[key] === undefined) {
|
200
|
+
target[key] = source[key];
|
183
201
|
}
|
184
202
|
}
|
185
203
|
|
186
|
-
return
|
204
|
+
return target;
|
205
|
+
};
|
206
|
+
|
207
|
+
_.extend = function (target) {
|
208
|
+
|
209
|
+
var args = array.slice.call(arguments, 1);
|
210
|
+
|
211
|
+
args.forEach(function (arg) {
|
212
|
+
merge(target, arg);
|
213
|
+
});
|
214
|
+
|
215
|
+
return target;
|
216
|
+
};
|
217
|
+
|
218
|
+
_.merge = function (target) {
|
219
|
+
|
220
|
+
var args = array.slice.call(arguments, 1);
|
221
|
+
|
222
|
+
args.forEach(function (arg) {
|
223
|
+
merge(target, arg, true);
|
224
|
+
});
|
225
|
+
|
226
|
+
return target;
|
187
227
|
};
|
188
228
|
|
229
|
+
function merge(target, source, deep) {
|
230
|
+
for (var key in source) {
|
231
|
+
if (deep && (_.isPlainObject(source[key]) || _.isArray(source[key]))) {
|
232
|
+
if (_.isPlainObject(source[key]) && !_.isPlainObject(target[key])) {
|
233
|
+
target[key] = {};
|
234
|
+
}
|
235
|
+
if (_.isArray(source[key]) && !_.isArray(target[key])) {
|
236
|
+
target[key] = [];
|
237
|
+
}
|
238
|
+
merge(target[key], source[key], deep);
|
239
|
+
} else if (source[key] !== undefined) {
|
240
|
+
target[key] = source[key];
|
241
|
+
}
|
242
|
+
}
|
243
|
+
}
|
244
|
+
|
189
245
|
|
190
246
|
/***/ },
|
191
247
|
/* 2 */
|
192
|
-
/***/ function(module, exports) {
|
248
|
+
/***/ function(module, exports, __webpack_require__) {
|
193
249
|
|
194
250
|
/**
|
195
251
|
* Service for URL templating.
|
196
252
|
*/
|
197
253
|
|
254
|
+
var _ = __webpack_require__(1);
|
198
255
|
var ie = document.documentMode;
|
199
256
|
var el = document.createElement('a');
|
200
257
|
|
201
|
-
|
258
|
+
function Url(url, params) {
|
202
259
|
|
203
|
-
|
260
|
+
var options = url, transform;
|
204
261
|
|
205
|
-
|
262
|
+
if (_.isString(url)) {
|
263
|
+
options = {url: url, params: params};
|
264
|
+
}
|
206
265
|
|
207
|
-
|
208
|
-
options = {url: url, params: params};
|
209
|
-
}
|
266
|
+
options = _.merge({}, Url.options, this.$options, options);
|
210
267
|
|
211
|
-
|
212
|
-
|
213
|
-
|
268
|
+
Url.transforms.forEach(function (handler) {
|
269
|
+
transform = factory(handler, transform, this.$vm);
|
270
|
+
}, this);
|
214
271
|
|
215
|
-
|
272
|
+
return transform(options);
|
273
|
+
};
|
216
274
|
|
217
|
-
|
218
|
-
|
219
|
-
|
220
|
-
}
|
275
|
+
/**
|
276
|
+
* Url options.
|
277
|
+
*/
|
221
278
|
|
222
|
-
|
223
|
-
|
279
|
+
Url.options = {
|
280
|
+
url: '',
|
281
|
+
root: null,
|
282
|
+
params: {}
|
283
|
+
};
|
224
284
|
|
225
|
-
|
226
|
-
|
227
|
-
|
285
|
+
/**
|
286
|
+
* Url transforms.
|
287
|
+
*/
|
228
288
|
|
229
|
-
|
230
|
-
|
231
|
-
|
232
|
-
|
233
|
-
|
289
|
+
Url.transforms = [
|
290
|
+
__webpack_require__(3),
|
291
|
+
__webpack_require__(5),
|
292
|
+
__webpack_require__(6),
|
293
|
+
__webpack_require__(7)
|
294
|
+
];
|
295
|
+
|
296
|
+
/**
|
297
|
+
* Encodes a Url parameter string.
|
298
|
+
*
|
299
|
+
* @param {Object} obj
|
300
|
+
*/
|
301
|
+
|
302
|
+
Url.params = function (obj) {
|
303
|
+
|
304
|
+
var params = [], escape = encodeURIComponent;
|
305
|
+
|
306
|
+
params.add = function (key, value) {
|
234
307
|
|
235
|
-
|
308
|
+
if (_.isFunction(value)) {
|
309
|
+
value = value();
|
310
|
+
}
|
236
311
|
|
237
|
-
if (
|
238
|
-
|
312
|
+
if (value === null) {
|
313
|
+
value = '';
|
239
314
|
}
|
240
315
|
|
241
|
-
|
316
|
+
this.push(escape(key) + '=' + escape(value));
|
317
|
+
};
|
318
|
+
|
319
|
+
serialize(params, obj);
|
320
|
+
|
321
|
+
return params.join('&').replace(/%20/g, '+');
|
322
|
+
};
|
323
|
+
|
324
|
+
/**
|
325
|
+
* Parse a URL and return its components.
|
326
|
+
*
|
327
|
+
* @param {String} url
|
328
|
+
*/
|
329
|
+
|
330
|
+
Url.parse = function (url) {
|
331
|
+
|
332
|
+
if (ie) {
|
333
|
+
el.href = url;
|
334
|
+
url = el.href;
|
242
335
|
}
|
243
336
|
|
244
|
-
|
245
|
-
|
246
|
-
|
337
|
+
el.href = url;
|
338
|
+
|
339
|
+
return {
|
340
|
+
href: el.href,
|
341
|
+
protocol: el.protocol ? el.protocol.replace(/:$/, '') : '',
|
342
|
+
port: el.port,
|
343
|
+
host: el.host,
|
344
|
+
hostname: el.hostname,
|
345
|
+
pathname: el.pathname.charAt(0) === '/' ? el.pathname : '/' + el.pathname,
|
346
|
+
search: el.search ? el.search.replace(/^\?/, '') : '',
|
347
|
+
hash: el.hash ? el.hash.replace(/^#/, '') : ''
|
348
|
+
};
|
349
|
+
};
|
247
350
|
|
248
|
-
|
249
|
-
|
250
|
-
|
251
|
-
params: {}
|
351
|
+
function factory(handler, next, vm) {
|
352
|
+
return function (options) {
|
353
|
+
return handler.call(vm, options, next);
|
252
354
|
};
|
355
|
+
}
|
253
356
|
|
254
|
-
|
255
|
-
* Encodes a Url parameter string.
|
256
|
-
*
|
257
|
-
* @param {Object} obj
|
258
|
-
*/
|
357
|
+
function serialize(params, obj, scope) {
|
259
358
|
|
260
|
-
|
359
|
+
var array = _.isArray(obj), plain = _.isPlainObject(obj), hash;
|
261
360
|
|
262
|
-
|
361
|
+
_.each(obj, function (value, key) {
|
263
362
|
|
264
|
-
|
363
|
+
hash = _.isObject(value) || _.isArray(value);
|
265
364
|
|
266
|
-
|
267
|
-
|
268
|
-
|
365
|
+
if (scope) {
|
366
|
+
key = scope + '[' + (plain || hash ? key : '') + ']';
|
367
|
+
}
|
269
368
|
|
270
|
-
|
271
|
-
|
272
|
-
|
369
|
+
if (!scope && array) {
|
370
|
+
params.add(value.name, value.value);
|
371
|
+
} else if (hash) {
|
372
|
+
serialize(params, value, key);
|
373
|
+
} else {
|
374
|
+
params.add(key, value);
|
375
|
+
}
|
376
|
+
});
|
377
|
+
}
|
273
378
|
|
274
|
-
|
275
|
-
};
|
379
|
+
module.exports = _.url = Url;
|
276
380
|
|
277
|
-
serialize(params, obj);
|
278
381
|
|
279
|
-
|
280
|
-
|
382
|
+
/***/ },
|
383
|
+
/* 3 */
|
384
|
+
/***/ function(module, exports, __webpack_require__) {
|
281
385
|
|
282
|
-
|
283
|
-
|
284
|
-
|
285
|
-
* @param {String} url
|
286
|
-
*/
|
386
|
+
/**
|
387
|
+
* URL Template (RFC 6570) Transform.
|
388
|
+
*/
|
287
389
|
|
288
|
-
|
390
|
+
var UrlTemplate = __webpack_require__(4);
|
289
391
|
|
290
|
-
|
291
|
-
el.href = url;
|
292
|
-
url = el.href;
|
293
|
-
}
|
392
|
+
module.exports = function (options) {
|
294
393
|
|
295
|
-
|
394
|
+
var variables = [], url = UrlTemplate.expand(options.url, options.params, variables);
|
296
395
|
|
297
|
-
|
298
|
-
|
299
|
-
|
300
|
-
|
301
|
-
|
302
|
-
|
303
|
-
|
304
|
-
|
305
|
-
|
306
|
-
|
307
|
-
|
396
|
+
variables.forEach(function (key) {
|
397
|
+
delete options.params[key];
|
398
|
+
});
|
399
|
+
|
400
|
+
return url;
|
401
|
+
};
|
402
|
+
|
403
|
+
|
404
|
+
/***/ },
|
405
|
+
/* 4 */
|
406
|
+
/***/ function(module, exports) {
|
308
407
|
|
309
|
-
|
408
|
+
/**
|
409
|
+
* URL Template v2.0.6 (https://github.com/bramstein/url-template)
|
410
|
+
*/
|
411
|
+
|
412
|
+
exports.expand = function (url, params, variables) {
|
413
|
+
|
414
|
+
var tmpl = this.parse(url), expanded = tmpl.expand(params);
|
415
|
+
|
416
|
+
if (variables) {
|
417
|
+
variables.push.apply(variables, tmpl.vars);
|
418
|
+
}
|
419
|
+
|
420
|
+
return expanded;
|
421
|
+
};
|
422
|
+
|
423
|
+
exports.parse = function (template) {
|
424
|
+
|
425
|
+
var operators = ['+', '#', '.', '/', ';', '?', '&'], variables = [];
|
310
426
|
|
311
|
-
|
427
|
+
return {
|
428
|
+
vars: variables,
|
429
|
+
expand: function (context) {
|
430
|
+
return template.replace(/\{([^\{\}]+)\}|([^\{\}]+)/g, function (_, expression, literal) {
|
431
|
+
if (expression) {
|
312
432
|
|
313
|
-
|
433
|
+
var operator = null, values = [];
|
314
434
|
|
315
|
-
|
435
|
+
if (operators.indexOf(expression.charAt(0)) !== -1) {
|
436
|
+
operator = expression.charAt(0);
|
437
|
+
expression = expression.substr(1);
|
438
|
+
}
|
439
|
+
|
440
|
+
expression.split(/,/g).forEach(function (variable) {
|
441
|
+
var tmp = /([^:\*]*)(?::(\d+)|(\*))?/.exec(variable);
|
442
|
+
values.push.apply(values, exports.getValues(context, operator, tmp[1], tmp[2] || tmp[3]));
|
443
|
+
variables.push(tmp[1]);
|
444
|
+
});
|
445
|
+
|
446
|
+
if (operator && operator !== '+') {
|
447
|
+
|
448
|
+
var separator = ',';
|
449
|
+
|
450
|
+
if (operator === '?') {
|
451
|
+
separator = '&';
|
452
|
+
} else if (operator !== '#') {
|
453
|
+
separator = operator;
|
454
|
+
}
|
455
|
+
|
456
|
+
return (values.length !== 0 ? operator : '') + values.join(separator);
|
457
|
+
} else {
|
458
|
+
return values.join(',');
|
459
|
+
}
|
316
460
|
|
317
|
-
|
318
|
-
|
461
|
+
} else {
|
462
|
+
return exports.encodeReserved(literal);
|
463
|
+
}
|
464
|
+
});
|
465
|
+
}
|
466
|
+
};
|
467
|
+
};
|
468
|
+
|
469
|
+
exports.getValues = function (context, operator, key, modifier) {
|
470
|
+
|
471
|
+
var value = context[key], result = [];
|
472
|
+
|
473
|
+
if (this.isDefined(value) && value !== '') {
|
474
|
+
if (typeof value === 'string' || typeof value === 'number' || typeof value === 'boolean') {
|
475
|
+
value = value.toString();
|
476
|
+
|
477
|
+
if (modifier && modifier !== '*') {
|
478
|
+
value = value.substring(0, parseInt(modifier, 10));
|
319
479
|
}
|
320
480
|
|
321
|
-
|
322
|
-
|
323
|
-
|
324
|
-
|
481
|
+
result.push(this.encodeValue(operator, value, this.isKeyOperator(operator) ? key : null));
|
482
|
+
} else {
|
483
|
+
if (modifier === '*') {
|
484
|
+
if (Array.isArray(value)) {
|
485
|
+
value.filter(this.isDefined).forEach(function (value) {
|
486
|
+
result.push(this.encodeValue(operator, value, this.isKeyOperator(operator) ? key : null));
|
487
|
+
}, this);
|
488
|
+
} else {
|
489
|
+
Object.keys(value).forEach(function (k) {
|
490
|
+
if (this.isDefined(value[k])) {
|
491
|
+
result.push(this.encodeValue(operator, value[k], k));
|
492
|
+
}
|
493
|
+
}, this);
|
494
|
+
}
|
325
495
|
} else {
|
326
|
-
|
496
|
+
var tmp = [];
|
497
|
+
|
498
|
+
if (Array.isArray(value)) {
|
499
|
+
value.filter(this.isDefined).forEach(function (value) {
|
500
|
+
tmp.push(this.encodeValue(operator, value));
|
501
|
+
}, this);
|
502
|
+
} else {
|
503
|
+
Object.keys(value).forEach(function (k) {
|
504
|
+
if (this.isDefined(value[k])) {
|
505
|
+
tmp.push(encodeURIComponent(k));
|
506
|
+
tmp.push(this.encodeValue(operator, value[k].toString()));
|
507
|
+
}
|
508
|
+
}, this);
|
509
|
+
}
|
510
|
+
|
511
|
+
if (this.isKeyOperator(operator)) {
|
512
|
+
result.push(encodeURIComponent(key) + '=' + tmp.join(','));
|
513
|
+
} else if (tmp.length !== 0) {
|
514
|
+
result.push(tmp.join(','));
|
515
|
+
}
|
327
516
|
}
|
328
|
-
}
|
517
|
+
}
|
518
|
+
} else {
|
519
|
+
if (operator === ';') {
|
520
|
+
result.push(encodeURIComponent(key));
|
521
|
+
} else if (value === '' && (operator === '&' || operator === '?')) {
|
522
|
+
result.push(encodeURIComponent(key) + '=');
|
523
|
+
} else if (value === '') {
|
524
|
+
result.push('');
|
525
|
+
}
|
329
526
|
}
|
330
527
|
|
331
|
-
|
528
|
+
return result;
|
529
|
+
};
|
332
530
|
|
333
|
-
|
334
|
-
|
335
|
-
|
336
|
-
|
337
|
-
|
531
|
+
exports.isDefined = function (value) {
|
532
|
+
return value !== undefined && value !== null;
|
533
|
+
};
|
534
|
+
|
535
|
+
exports.isKeyOperator = function (operator) {
|
536
|
+
return operator === ';' || operator === '&' || operator === '?';
|
537
|
+
};
|
338
538
|
|
339
|
-
|
539
|
+
exports.encodeValue = function (operator, value, key) {
|
340
540
|
|
341
|
-
|
342
|
-
|
343
|
-
|
344
|
-
|
345
|
-
|
346
|
-
|
541
|
+
value = (operator === '+' || operator === '#') ? this.encodeReserved(value) : encodeURIComponent(value);
|
542
|
+
|
543
|
+
if (key) {
|
544
|
+
return encodeURIComponent(key) + '=' + value;
|
545
|
+
} else {
|
546
|
+
return value;
|
347
547
|
}
|
548
|
+
};
|
348
549
|
|
349
|
-
|
550
|
+
exports.encodeReserved = function (str) {
|
551
|
+
return str.split(/(%[0-9A-Fa-f]{2})/g).map(function (part) {
|
552
|
+
if (!/%[0-9A-Fa-f]/.test(part)) {
|
553
|
+
part = encodeURI(part);
|
554
|
+
}
|
555
|
+
return part;
|
556
|
+
}).join('');
|
350
557
|
};
|
351
558
|
|
352
559
|
|
353
560
|
/***/ },
|
354
|
-
/*
|
561
|
+
/* 5 */
|
355
562
|
/***/ function(module, exports, __webpack_require__) {
|
356
563
|
|
357
564
|
/**
|
358
|
-
*
|
565
|
+
* Legacy Transform.
|
359
566
|
*/
|
360
567
|
|
361
|
-
var
|
362
|
-
var jsonp = __webpack_require__(6);
|
363
|
-
var Promise = __webpack_require__(5);
|
568
|
+
var _ = __webpack_require__(1);
|
364
569
|
|
365
|
-
module.exports = function (
|
570
|
+
module.exports = function (options, next) {
|
366
571
|
|
367
|
-
var
|
368
|
-
var jsonType = {'Content-Type': 'application/json;charset=utf-8'};
|
572
|
+
var variables = [], url = next(options);
|
369
573
|
|
370
|
-
function
|
574
|
+
url = url.replace(/(\/?):([a-z]\w*)/gi, function (match, slash, name) {
|
371
575
|
|
372
|
-
|
576
|
+
_.warn('The `:' + name + '` parameter syntax has been deprecated. Use the `{' + name + '}` syntax instead.');
|
373
577
|
|
374
|
-
if (
|
375
|
-
|
376
|
-
|
578
|
+
if (options.params[name]) {
|
579
|
+
variables.push(name);
|
580
|
+
return slash + encodeUriSegment(options.params[name]);
|
377
581
|
}
|
378
582
|
|
379
|
-
|
380
|
-
|
381
|
-
Http.options, this.options, options
|
382
|
-
);
|
583
|
+
return '';
|
584
|
+
});
|
383
585
|
|
384
|
-
|
385
|
-
|
386
|
-
|
586
|
+
variables.forEach(function (key) {
|
587
|
+
delete options.params[key];
|
588
|
+
});
|
387
589
|
|
388
|
-
|
389
|
-
|
390
|
-
!options.crossOrigin ? Http.headers.custom : {},
|
391
|
-
Http.headers[options.method.toLowerCase()],
|
392
|
-
options.headers
|
393
|
-
);
|
590
|
+
return url;
|
591
|
+
};
|
394
592
|
|
395
|
-
|
396
|
-
_.extend(options.params, options.data);
|
397
|
-
delete options.data;
|
398
|
-
}
|
593
|
+
function encodeUriSegment(value) {
|
399
594
|
|
400
|
-
|
401
|
-
|
402
|
-
|
403
|
-
|
595
|
+
return encodeUriQuery(value, true).
|
596
|
+
replace(/%26/gi, '&').
|
597
|
+
replace(/%3D/gi, '=').
|
598
|
+
replace(/%2B/gi, '+');
|
599
|
+
}
|
404
600
|
|
405
|
-
|
406
|
-
options.headers['Content-Type'] = 'application/x-www-form-urlencoded';
|
407
|
-
options.data = _.url.params(options.data);
|
408
|
-
}
|
601
|
+
function encodeUriQuery(value, spaces) {
|
409
602
|
|
410
|
-
|
411
|
-
|
412
|
-
|
603
|
+
return encodeURIComponent(value).
|
604
|
+
replace(/%40/gi, '@').
|
605
|
+
replace(/%3A/gi, ':').
|
606
|
+
replace(/%24/g, '$').
|
607
|
+
replace(/%2C/gi, ',').
|
608
|
+
replace(/%20/g, (spaces ? '%20' : '+'));
|
609
|
+
}
|
413
610
|
|
414
|
-
if (_.isPlainObject(options.data)) {
|
415
|
-
options.data = JSON.stringify(options.data);
|
416
|
-
}
|
417
611
|
|
418
|
-
|
419
|
-
|
612
|
+
/***/ },
|
613
|
+
/* 6 */
|
614
|
+
/***/ function(module, exports, __webpack_require__) {
|
420
615
|
|
421
|
-
|
422
|
-
|
423
|
-
|
616
|
+
/**
|
617
|
+
* Query Parameter Transform.
|
618
|
+
*/
|
424
619
|
|
425
|
-
|
426
|
-
|
620
|
+
var _ = __webpack_require__(1);
|
621
|
+
|
622
|
+
module.exports = function (options, next) {
|
623
|
+
|
624
|
+
var urlParams = Object.keys(_.url.options.params), query = {}, url = next(options);
|
625
|
+
|
626
|
+
_.each(options.params, function (value, key) {
|
627
|
+
if (urlParams.indexOf(key) === -1) {
|
628
|
+
query[key] = value;
|
427
629
|
}
|
630
|
+
});
|
428
631
|
|
429
|
-
|
632
|
+
query = _.url.params(query);
|
633
|
+
|
634
|
+
if (query) {
|
635
|
+
url += (url.indexOf('?') == -1 ? '?' : '&') + query;
|
430
636
|
}
|
431
637
|
|
432
|
-
|
638
|
+
return url;
|
639
|
+
};
|
640
|
+
|
641
|
+
|
642
|
+
/***/ },
|
643
|
+
/* 7 */
|
644
|
+
/***/ function(module, exports, __webpack_require__) {
|
433
645
|
|
434
|
-
|
646
|
+
/**
|
647
|
+
* Root Prefix Transform.
|
648
|
+
*/
|
435
649
|
|
436
|
-
|
437
|
-
return fn.call(vm, response.data, response.status, response) || response;
|
438
|
-
}), vm);
|
650
|
+
var _ = __webpack_require__(1);
|
439
651
|
|
440
|
-
|
652
|
+
module.exports = function (options, next) {
|
441
653
|
|
442
|
-
|
654
|
+
var url = next(options);
|
443
655
|
|
444
|
-
|
445
|
-
|
446
|
-
|
656
|
+
if (_.isString(options.root) && !url.match(/^(https?:)?\//)) {
|
657
|
+
url = options.root + '/' + url;
|
658
|
+
}
|
447
659
|
|
448
|
-
|
660
|
+
return url;
|
661
|
+
};
|
449
662
|
|
450
|
-
promise.always = function (fn) {
|
451
663
|
|
452
|
-
|
453
|
-
|
454
|
-
|
664
|
+
/***/ },
|
665
|
+
/* 8 */
|
666
|
+
/***/ function(module, exports, __webpack_require__) {
|
455
667
|
|
456
|
-
|
457
|
-
|
668
|
+
/**
|
669
|
+
* Service for sending network requests.
|
670
|
+
*/
|
458
671
|
|
459
|
-
|
460
|
-
|
672
|
+
var _ = __webpack_require__(1);
|
673
|
+
var Client = __webpack_require__(9);
|
674
|
+
var Promise = __webpack_require__(10);
|
675
|
+
var interceptor = __webpack_require__(13);
|
676
|
+
var jsonType = {'Content-Type': 'application/json'};
|
461
677
|
|
462
|
-
|
678
|
+
function Http(url, options) {
|
463
679
|
|
464
|
-
|
465
|
-
|
466
|
-
|
467
|
-
|
468
|
-
|
680
|
+
var client = Client, request, promise;
|
681
|
+
|
682
|
+
Http.interceptors.forEach(function (handler) {
|
683
|
+
client = interceptor(handler, this.$vm)(client);
|
684
|
+
}, this);
|
685
|
+
|
686
|
+
options = _.isObject(url) ? url : _.extend({url: url}, options);
|
687
|
+
request = _.merge({}, Http.options, this.$options, options);
|
688
|
+
promise = client(request).bind(this.$vm).then(function (response) {
|
469
689
|
|
470
690
|
return response.ok ? response : Promise.reject(response);
|
471
|
-
}
|
472
691
|
|
473
|
-
function
|
692
|
+
}, function (response) {
|
693
|
+
|
694
|
+
if (response instanceof Error) {
|
695
|
+
_.error(response);
|
696
|
+
}
|
474
697
|
|
475
|
-
|
698
|
+
return Promise.reject(response);
|
699
|
+
});
|
476
700
|
|
477
|
-
|
701
|
+
if (request.success) {
|
702
|
+
promise.success(request.success);
|
478
703
|
}
|
479
704
|
|
480
|
-
|
481
|
-
|
482
|
-
|
483
|
-
|
484
|
-
|
485
|
-
|
486
|
-
|
487
|
-
|
488
|
-
|
489
|
-
|
490
|
-
}
|
705
|
+
if (request.error) {
|
706
|
+
promise.error(request.error);
|
707
|
+
}
|
708
|
+
|
709
|
+
return promise;
|
710
|
+
}
|
711
|
+
|
712
|
+
Http.options = {
|
713
|
+
method: 'get',
|
714
|
+
data: '',
|
715
|
+
params: {},
|
716
|
+
headers: {},
|
717
|
+
xhr: null,
|
718
|
+
upload: null,
|
719
|
+
jsonp: 'callback',
|
720
|
+
beforeSend: null,
|
721
|
+
crossOrigin: null,
|
722
|
+
emulateHTTP: false,
|
723
|
+
emulateJSON: false,
|
724
|
+
timeout: 0
|
725
|
+
};
|
726
|
+
|
727
|
+
Http.interceptors = [
|
728
|
+
__webpack_require__(14),
|
729
|
+
__webpack_require__(15),
|
730
|
+
__webpack_require__(16),
|
731
|
+
__webpack_require__(18),
|
732
|
+
__webpack_require__(19),
|
733
|
+
__webpack_require__(20),
|
734
|
+
__webpack_require__(21)
|
735
|
+
];
|
736
|
+
|
737
|
+
Http.headers = {
|
738
|
+
put: jsonType,
|
739
|
+
post: jsonType,
|
740
|
+
patch: jsonType,
|
741
|
+
delete: jsonType,
|
742
|
+
common: {'Accept': 'application/json, text/plain, */*'},
|
743
|
+
custom: {'X-Requested-With': 'XMLHttpRequest'}
|
744
|
+
};
|
745
|
+
|
746
|
+
['get', 'put', 'post', 'patch', 'delete', 'jsonp'].forEach(function (method) {
|
747
|
+
|
748
|
+
Http[method] = function (url, data, success, options) {
|
749
|
+
|
750
|
+
if (_.isFunction(data)) {
|
751
|
+
options = success;
|
752
|
+
success = data;
|
753
|
+
data = undefined;
|
754
|
+
}
|
755
|
+
|
756
|
+
if (_.isObject(success)) {
|
757
|
+
options = success;
|
758
|
+
success = undefined;
|
759
|
+
}
|
491
760
|
|
492
|
-
|
493
|
-
put: jsonType,
|
494
|
-
post: jsonType,
|
495
|
-
patch: jsonType,
|
496
|
-
delete: jsonType,
|
497
|
-
common: {'Accept': 'application/json, text/plain, */*'},
|
498
|
-
custom: {'X-Requested-With': 'XMLHttpRequest'}
|
761
|
+
return this(url, _.extend({method: method, data: data, success: success}, options));
|
499
762
|
};
|
763
|
+
});
|
500
764
|
|
501
|
-
|
765
|
+
module.exports = _.http = Http;
|
502
766
|
|
503
|
-
Http[method] = function (url, data, success, options) {
|
504
767
|
|
505
|
-
|
506
|
-
|
507
|
-
|
508
|
-
data = undefined;
|
509
|
-
}
|
768
|
+
/***/ },
|
769
|
+
/* 9 */
|
770
|
+
/***/ function(module, exports, __webpack_require__) {
|
510
771
|
|
511
|
-
|
512
|
-
|
772
|
+
/**
|
773
|
+
* Base client.
|
774
|
+
*/
|
775
|
+
|
776
|
+
var _ = __webpack_require__(1);
|
777
|
+
var Promise = __webpack_require__(10);
|
778
|
+
var xhrClient = __webpack_require__(12);
|
779
|
+
|
780
|
+
module.exports = function (request) {
|
781
|
+
|
782
|
+
var response = (request.client || xhrClient)(request);
|
783
|
+
|
784
|
+
return Promise.resolve(response).then(function (response) {
|
785
|
+
|
786
|
+
if (response.headers) {
|
787
|
+
|
788
|
+
var headers = parseHeaders(response.headers);
|
789
|
+
|
790
|
+
response.headers = function (name) {
|
791
|
+
|
792
|
+
if (name) {
|
793
|
+
return headers[_.toLower(name)];
|
794
|
+
}
|
795
|
+
|
796
|
+
return headers;
|
797
|
+
};
|
798
|
+
|
799
|
+
}
|
800
|
+
|
801
|
+
response.ok = response.status >= 200 && response.status < 300;
|
802
|
+
|
803
|
+
return response;
|
513
804
|
});
|
514
805
|
|
515
|
-
return _.http = Http;
|
516
806
|
};
|
517
807
|
|
808
|
+
function parseHeaders(str) {
|
809
|
+
|
810
|
+
var headers = {}, value, name, i;
|
811
|
+
|
812
|
+
if (_.isString(str)) {
|
813
|
+
_.each(str.split('\n'), function (row) {
|
814
|
+
|
815
|
+
i = row.indexOf(':');
|
816
|
+
name = _.trim(_.toLower(row.slice(0, i)));
|
817
|
+
value = _.trim(row.slice(i + 1));
|
818
|
+
|
819
|
+
if (headers[name]) {
|
820
|
+
|
821
|
+
if (_.isArray(headers[name])) {
|
822
|
+
headers[name].push(value);
|
823
|
+
} else {
|
824
|
+
headers[name] = [headers[name], value];
|
825
|
+
}
|
826
|
+
|
827
|
+
} else {
|
828
|
+
|
829
|
+
headers[name] = value;
|
830
|
+
}
|
831
|
+
|
832
|
+
});
|
833
|
+
}
|
834
|
+
|
835
|
+
return headers;
|
836
|
+
}
|
837
|
+
|
518
838
|
|
519
839
|
/***/ },
|
520
|
-
/*
|
840
|
+
/* 10 */
|
521
841
|
/***/ function(module, exports, __webpack_require__) {
|
522
842
|
|
523
843
|
/**
|
524
|
-
*
|
844
|
+
* Promise adapter.
|
525
845
|
*/
|
526
846
|
|
527
|
-
var
|
528
|
-
var
|
847
|
+
var _ = __webpack_require__(1);
|
848
|
+
var PromiseObj = window.Promise || __webpack_require__(11);
|
849
|
+
|
850
|
+
function Promise(executor, context) {
|
851
|
+
|
852
|
+
if (executor instanceof PromiseObj) {
|
853
|
+
this.promise = executor;
|
854
|
+
} else {
|
855
|
+
this.promise = new PromiseObj(executor.bind(context));
|
856
|
+
}
|
857
|
+
|
858
|
+
this.context = context;
|
859
|
+
}
|
860
|
+
|
861
|
+
Promise.all = function (iterable, context) {
|
862
|
+
return new Promise(PromiseObj.all(iterable), context);
|
863
|
+
};
|
864
|
+
|
865
|
+
Promise.resolve = function (value, context) {
|
866
|
+
return new Promise(PromiseObj.resolve(value), context);
|
867
|
+
};
|
868
|
+
|
869
|
+
Promise.reject = function (reason, context) {
|
870
|
+
return new Promise(PromiseObj.reject(reason), context);
|
871
|
+
};
|
872
|
+
|
873
|
+
Promise.race = function (iterable, context) {
|
874
|
+
return new Promise(PromiseObj.race(iterable), context);
|
875
|
+
};
|
529
876
|
|
530
|
-
|
877
|
+
var p = Promise.prototype;
|
531
878
|
|
532
|
-
|
879
|
+
p.bind = function (context) {
|
880
|
+
this.context = context;
|
881
|
+
return this;
|
882
|
+
};
|
533
883
|
|
534
|
-
|
535
|
-
|
884
|
+
p.then = function (fulfilled, rejected) {
|
885
|
+
|
886
|
+
if (fulfilled && fulfilled.bind && this.context) {
|
887
|
+
fulfilled = fulfilled.bind(this.context);
|
536
888
|
}
|
537
889
|
|
538
|
-
if (
|
539
|
-
|
890
|
+
if (rejected && rejected.bind && this.context) {
|
891
|
+
rejected = rejected.bind(this.context);
|
540
892
|
}
|
541
893
|
|
542
|
-
|
543
|
-
|
894
|
+
this.promise = this.promise.then(fulfilled, rejected);
|
895
|
+
|
896
|
+
return this;
|
897
|
+
};
|
898
|
+
|
899
|
+
p.catch = function (rejected) {
|
900
|
+
|
901
|
+
if (rejected && rejected.bind && this.context) {
|
902
|
+
rejected = rejected.bind(this.context);
|
544
903
|
}
|
545
904
|
|
546
|
-
promise =
|
905
|
+
this.promise = this.promise.catch(rejected);
|
547
906
|
|
548
|
-
|
907
|
+
return this;
|
908
|
+
};
|
549
909
|
|
550
|
-
|
551
|
-
request.setRequestHeader(header, value);
|
552
|
-
});
|
910
|
+
p.finally = function (callback) {
|
553
911
|
|
554
|
-
|
912
|
+
return this.then(function (value) {
|
913
|
+
callback.call(this);
|
914
|
+
return value;
|
915
|
+
}, function (reason) {
|
916
|
+
callback.call(this);
|
917
|
+
return PromiseObj.reject(reason);
|
918
|
+
}
|
919
|
+
);
|
920
|
+
};
|
555
921
|
|
556
|
-
|
922
|
+
p.success = function (callback) {
|
557
923
|
|
558
|
-
|
559
|
-
request.ok = request.status >= 200 && request.status < 300;
|
560
|
-
}
|
924
|
+
_.warn('The `success` method has been deprecated. Use the `then` method instead.');
|
561
925
|
|
562
|
-
|
563
|
-
|
926
|
+
return this.then(function (response) {
|
927
|
+
return callback.call(this, response.data, response.status, response) || response;
|
928
|
+
});
|
929
|
+
};
|
930
|
+
|
931
|
+
p.error = function (callback) {
|
564
932
|
|
565
|
-
|
566
|
-
request.onabort = handler;
|
567
|
-
request.onerror = handler;
|
933
|
+
_.warn('The `error` method has been deprecated. Use the `catch` method instead.');
|
568
934
|
|
569
|
-
|
935
|
+
return this.catch(function (response) {
|
936
|
+
return callback.call(this, response.data, response.status, response) || response;
|
570
937
|
});
|
938
|
+
};
|
571
939
|
|
572
|
-
|
940
|
+
p.always = function (callback) {
|
941
|
+
|
942
|
+
_.warn('The `always` method has been deprecated. Use the `finally` method instead.');
|
943
|
+
|
944
|
+
var cb = function (response) {
|
945
|
+
return callback.call(this, response.data, response.status, response) || response;
|
946
|
+
};
|
947
|
+
|
948
|
+
return this.then(cb, cb);
|
573
949
|
};
|
574
950
|
|
951
|
+
module.exports = Promise;
|
952
|
+
|
575
953
|
|
576
954
|
/***/ },
|
577
|
-
/*
|
578
|
-
/***/ function(module, exports) {
|
955
|
+
/* 11 */
|
956
|
+
/***/ function(module, exports, __webpack_require__) {
|
579
957
|
|
580
958
|
/**
|
581
|
-
* Promises/A+ polyfill v1.1.
|
959
|
+
* Promises/A+ polyfill v1.1.4 (https://github.com/bramstein/promis)
|
582
960
|
*/
|
583
961
|
|
962
|
+
var _ = __webpack_require__(1);
|
963
|
+
|
584
964
|
var RESOLVED = 0;
|
585
965
|
var REJECTED = 1;
|
586
966
|
var PENDING = 2;
|
@@ -618,8 +998,7 @@ return /******/ (function(modules) { // webpackBootstrap
|
|
618
998
|
|
619
999
|
Promise.all = function all(iterable) {
|
620
1000
|
return new Promise(function (resolve, reject) {
|
621
|
-
var count = 0,
|
622
|
-
result = [];
|
1001
|
+
var count = 0, result = [];
|
623
1002
|
|
624
1003
|
if (iterable.length === 0) {
|
625
1004
|
resolve(result);
|
@@ -637,7 +1016,7 @@ return /******/ (function(modules) { // webpackBootstrap
|
|
637
1016
|
}
|
638
1017
|
|
639
1018
|
for (var i = 0; i < iterable.length; i += 1) {
|
640
|
-
iterable[i].then(resolver(i), reject);
|
1019
|
+
Promise.resolve(iterable[i]).then(resolver(i), reject);
|
641
1020
|
}
|
642
1021
|
});
|
643
1022
|
};
|
@@ -645,7 +1024,7 @@ return /******/ (function(modules) { // webpackBootstrap
|
|
645
1024
|
Promise.race = function race(iterable) {
|
646
1025
|
return new Promise(function (resolve, reject) {
|
647
1026
|
for (var i = 0; i < iterable.length; i += 1) {
|
648
|
-
iterable[i].then(resolve, reject);
|
1027
|
+
Promise.resolve(iterable[i]).then(resolve, reject);
|
649
1028
|
}
|
650
1029
|
});
|
651
1030
|
};
|
@@ -686,6 +1065,7 @@ return /******/ (function(modules) { // webpackBootstrap
|
|
686
1065
|
}
|
687
1066
|
return;
|
688
1067
|
}
|
1068
|
+
|
689
1069
|
promise.state = RESOLVED;
|
690
1070
|
promise.value = x;
|
691
1071
|
promise.notify();
|
@@ -709,7 +1089,7 @@ return /******/ (function(modules) { // webpackBootstrap
|
|
709
1089
|
p.notify = function notify() {
|
710
1090
|
var promise = this;
|
711
1091
|
|
712
|
-
|
1092
|
+
_.nextTick(function () {
|
713
1093
|
if (promise.state !== PENDING) {
|
714
1094
|
while (promise.deferred.length) {
|
715
1095
|
var deferred = promise.deferred.shift(),
|
@@ -740,10 +1120,6 @@ return /******/ (function(modules) { // webpackBootstrap
|
|
740
1120
|
});
|
741
1121
|
};
|
742
1122
|
|
743
|
-
p.catch = function (onRejected) {
|
744
|
-
return this.then(undefined, onRejected);
|
745
|
-
};
|
746
|
-
|
747
1123
|
p.then = function then(onResolved, onRejected) {
|
748
1124
|
var promise = this;
|
749
1125
|
|
@@ -753,87 +1129,248 @@ return /******/ (function(modules) { // webpackBootstrap
|
|
753
1129
|
});
|
754
1130
|
};
|
755
1131
|
|
756
|
-
|
757
|
-
|
758
|
-
queue.push(callback);
|
759
|
-
|
760
|
-
if (queue.length === 1) {
|
761
|
-
async.async();
|
762
|
-
}
|
1132
|
+
p.catch = function (onRejected) {
|
1133
|
+
return this.then(undefined, onRejected);
|
763
1134
|
};
|
764
1135
|
|
765
|
-
|
766
|
-
|
767
|
-
|
768
|
-
|
769
|
-
|
770
|
-
|
1136
|
+
module.exports = Promise;
|
1137
|
+
|
1138
|
+
|
1139
|
+
/***/ },
|
1140
|
+
/* 12 */
|
1141
|
+
/***/ function(module, exports, __webpack_require__) {
|
1142
|
+
|
1143
|
+
/**
|
1144
|
+
* XMLHttp client.
|
1145
|
+
*/
|
1146
|
+
|
1147
|
+
var _ = __webpack_require__(1);
|
1148
|
+
var Promise = __webpack_require__(10);
|
1149
|
+
|
1150
|
+
module.exports = function (request) {
|
1151
|
+
return new Promise(function (resolve) {
|
1152
|
+
|
1153
|
+
var xhr = new XMLHttpRequest(), response = {request: request}, handler;
|
1154
|
+
|
1155
|
+
request.cancel = function () {
|
1156
|
+
xhr.abort();
|
1157
|
+
};
|
1158
|
+
|
1159
|
+
xhr.open(request.method, _.url(request), true);
|
1160
|
+
|
1161
|
+
handler = function (event) {
|
1162
|
+
|
1163
|
+
response.data = xhr.responseText;
|
1164
|
+
response.status = xhr.status;
|
1165
|
+
response.statusText = xhr.statusText;
|
1166
|
+
response.headers = xhr.getAllResponseHeaders();
|
1167
|
+
|
1168
|
+
resolve(response);
|
1169
|
+
};
|
771
1170
|
|
772
|
-
|
773
|
-
|
774
|
-
|
1171
|
+
xhr.timeout = 0;
|
1172
|
+
xhr.onload = handler;
|
1173
|
+
xhr.onabort = handler;
|
1174
|
+
xhr.onerror = handler;
|
1175
|
+
xhr.ontimeout = function () {};
|
1176
|
+
xhr.onprogress = function () {};
|
775
1177
|
|
776
|
-
|
777
|
-
|
1178
|
+
if (_.isPlainObject(request.xhr)) {
|
1179
|
+
_.extend(xhr, request.xhr);
|
1180
|
+
}
|
1181
|
+
|
1182
|
+
if (_.isPlainObject(request.upload)) {
|
1183
|
+
_.extend(xhr.upload, request.upload);
|
1184
|
+
}
|
1185
|
+
|
1186
|
+
_.each(request.headers || {}, function (value, header) {
|
1187
|
+
xhr.setRequestHeader(header, value);
|
1188
|
+
});
|
1189
|
+
|
1190
|
+
xhr.send(request.data);
|
778
1191
|
});
|
1192
|
+
};
|
779
1193
|
|
780
|
-
|
781
|
-
|
782
|
-
|
783
|
-
|
784
|
-
|
785
|
-
|
1194
|
+
|
1195
|
+
/***/ },
|
1196
|
+
/* 13 */
|
1197
|
+
/***/ function(module, exports, __webpack_require__) {
|
1198
|
+
|
1199
|
+
/**
|
1200
|
+
* Interceptor factory.
|
1201
|
+
*/
|
1202
|
+
|
1203
|
+
var _ = __webpack_require__(1);
|
1204
|
+
var Promise = __webpack_require__(10);
|
1205
|
+
|
1206
|
+
module.exports = function (handler, vm) {
|
1207
|
+
|
1208
|
+
return function (client) {
|
1209
|
+
|
1210
|
+
if (_.isFunction(handler)) {
|
1211
|
+
handler = handler.call(vm, Promise);
|
1212
|
+
}
|
1213
|
+
|
1214
|
+
return function (request) {
|
1215
|
+
|
1216
|
+
if (_.isFunction(handler.request)) {
|
1217
|
+
request = handler.request.call(vm, request);
|
1218
|
+
}
|
1219
|
+
|
1220
|
+
return when(request, function (request) {
|
1221
|
+
return when(client(request), function (response) {
|
1222
|
+
|
1223
|
+
if (_.isFunction(handler.response)) {
|
1224
|
+
response = handler.response.call(vm, response);
|
1225
|
+
}
|
1226
|
+
|
1227
|
+
return response;
|
1228
|
+
});
|
1229
|
+
});
|
1230
|
+
};
|
786
1231
|
};
|
1232
|
+
};
|
1233
|
+
|
1234
|
+
function when(value, fulfilled, rejected) {
|
1235
|
+
|
1236
|
+
var promise = Promise.resolve(value);
|
1237
|
+
|
1238
|
+
if (arguments.length < 2) {
|
1239
|
+
return promise;
|
1240
|
+
}
|
1241
|
+
|
1242
|
+
return promise.then(fulfilled, rejected);
|
787
1243
|
}
|
788
1244
|
|
789
|
-
|
1245
|
+
|
1246
|
+
/***/ },
|
1247
|
+
/* 14 */
|
1248
|
+
/***/ function(module, exports, __webpack_require__) {
|
1249
|
+
|
1250
|
+
/**
|
1251
|
+
* Before Interceptor.
|
1252
|
+
*/
|
1253
|
+
|
1254
|
+
var _ = __webpack_require__(1);
|
1255
|
+
|
1256
|
+
module.exports = {
|
1257
|
+
|
1258
|
+
request: function (request) {
|
1259
|
+
|
1260
|
+
if (_.isFunction(request.beforeSend)) {
|
1261
|
+
request.beforeSend.call(this, request);
|
1262
|
+
}
|
1263
|
+
|
1264
|
+
return request;
|
1265
|
+
}
|
1266
|
+
|
1267
|
+
};
|
790
1268
|
|
791
1269
|
|
792
1270
|
/***/ },
|
793
|
-
/*
|
1271
|
+
/* 15 */
|
1272
|
+
/***/ function(module, exports) {
|
1273
|
+
|
1274
|
+
/**
|
1275
|
+
* Timeout Interceptor.
|
1276
|
+
*/
|
1277
|
+
|
1278
|
+
module.exports = function () {
|
1279
|
+
|
1280
|
+
var timeout;
|
1281
|
+
|
1282
|
+
return {
|
1283
|
+
|
1284
|
+
request: function (request) {
|
1285
|
+
|
1286
|
+
if (request.timeout) {
|
1287
|
+
timeout = setTimeout(function () {
|
1288
|
+
request.cancel();
|
1289
|
+
}, request.timeout);
|
1290
|
+
}
|
1291
|
+
|
1292
|
+
return request;
|
1293
|
+
},
|
1294
|
+
|
1295
|
+
response: function (response) {
|
1296
|
+
|
1297
|
+
clearTimeout(timeout);
|
1298
|
+
|
1299
|
+
return response;
|
1300
|
+
}
|
1301
|
+
|
1302
|
+
};
|
1303
|
+
};
|
1304
|
+
|
1305
|
+
|
1306
|
+
/***/ },
|
1307
|
+
/* 16 */
|
794
1308
|
/***/ function(module, exports, __webpack_require__) {
|
795
1309
|
|
796
1310
|
/**
|
797
|
-
* JSONP
|
1311
|
+
* JSONP Interceptor.
|
798
1312
|
*/
|
799
1313
|
|
800
|
-
var
|
1314
|
+
var jsonpClient = __webpack_require__(17);
|
801
1315
|
|
802
|
-
module.exports =
|
1316
|
+
module.exports = {
|
803
1317
|
|
804
|
-
|
1318
|
+
request: function (request) {
|
805
1319
|
|
806
|
-
|
1320
|
+
if (request.method == 'JSONP') {
|
1321
|
+
request.client = jsonpClient;
|
1322
|
+
}
|
807
1323
|
|
808
|
-
|
809
|
-
options.beforeSend.call(this, {}, options);
|
1324
|
+
return request;
|
810
1325
|
}
|
811
1326
|
|
812
|
-
|
1327
|
+
};
|
1328
|
+
|
1329
|
+
|
1330
|
+
/***/ },
|
1331
|
+
/* 17 */
|
1332
|
+
/***/ function(module, exports, __webpack_require__) {
|
1333
|
+
|
1334
|
+
/**
|
1335
|
+
* JSONP client.
|
1336
|
+
*/
|
1337
|
+
|
1338
|
+
var _ = __webpack_require__(1);
|
1339
|
+
var Promise = __webpack_require__(10);
|
1340
|
+
|
1341
|
+
module.exports = function (request) {
|
1342
|
+
return new Promise(function (resolve) {
|
1343
|
+
|
1344
|
+
var callback = '_jsonp' + Math.random().toString(36).substr(2), response = {request: request, data: null}, handler, script;
|
1345
|
+
|
1346
|
+
request.params[request.jsonp] = callback;
|
1347
|
+
request.cancel = function () {
|
1348
|
+
handler({type: 'cancel'});
|
1349
|
+
};
|
813
1350
|
|
814
1351
|
script = document.createElement('script');
|
815
|
-
script.src = _.url(
|
1352
|
+
script.src = _.url(request);
|
816
1353
|
script.type = 'text/javascript';
|
817
1354
|
script.async = true;
|
818
1355
|
|
819
1356
|
window[callback] = function (data) {
|
820
|
-
|
1357
|
+
response.data = data;
|
821
1358
|
};
|
822
1359
|
|
823
|
-
|
1360
|
+
handler = function (event) {
|
824
1361
|
|
825
|
-
|
826
|
-
|
827
|
-
|
828
|
-
|
829
|
-
|
1362
|
+
if (event.type === 'load' && response.data !== null) {
|
1363
|
+
response.status = 200;
|
1364
|
+
} else if (event.type === 'error') {
|
1365
|
+
response.status = 404;
|
1366
|
+
} else {
|
1367
|
+
response.status = 0;
|
830
1368
|
}
|
831
1369
|
|
832
|
-
response
|
833
|
-
response.status = response.ok ? 200 : 404;
|
834
|
-
response.responseText = body ? body : event.type;
|
1370
|
+
resolve(response);
|
835
1371
|
|
836
|
-
|
1372
|
+
delete window[callback];
|
1373
|
+
document.body.removeChild(script);
|
837
1374
|
};
|
838
1375
|
|
839
1376
|
script.onload = handler;
|
@@ -841,128 +1378,309 @@ return /******/ (function(modules) { // webpackBootstrap
|
|
841
1378
|
|
842
1379
|
document.body.appendChild(script);
|
843
1380
|
});
|
844
|
-
|
845
1381
|
};
|
846
1382
|
|
847
1383
|
|
848
1384
|
/***/ },
|
849
|
-
/*
|
1385
|
+
/* 18 */
|
850
1386
|
/***/ function(module, exports) {
|
851
1387
|
|
852
1388
|
/**
|
853
|
-
*
|
1389
|
+
* HTTP method override Interceptor.
|
1390
|
+
*/
|
1391
|
+
|
1392
|
+
module.exports = {
|
1393
|
+
|
1394
|
+
request: function (request) {
|
1395
|
+
|
1396
|
+
if (request.emulateHTTP && /^(PUT|PATCH|DELETE)$/i.test(request.method)) {
|
1397
|
+
request.headers['X-HTTP-Method-Override'] = request.method;
|
1398
|
+
request.method = 'POST';
|
1399
|
+
}
|
1400
|
+
|
1401
|
+
return request;
|
1402
|
+
}
|
1403
|
+
|
1404
|
+
};
|
1405
|
+
|
1406
|
+
|
1407
|
+
/***/ },
|
1408
|
+
/* 19 */
|
1409
|
+
/***/ function(module, exports, __webpack_require__) {
|
1410
|
+
|
1411
|
+
/**
|
1412
|
+
* Mime Interceptor.
|
1413
|
+
*/
|
1414
|
+
|
1415
|
+
var _ = __webpack_require__(1);
|
1416
|
+
|
1417
|
+
module.exports = {
|
1418
|
+
|
1419
|
+
request: function (request) {
|
1420
|
+
|
1421
|
+
if (request.emulateJSON && _.isPlainObject(request.data)) {
|
1422
|
+
request.headers['Content-Type'] = 'application/x-www-form-urlencoded';
|
1423
|
+
request.data = _.url.params(request.data);
|
1424
|
+
}
|
1425
|
+
|
1426
|
+
if (_.isObject(request.data) && /FormData/i.test(request.data.toString())) {
|
1427
|
+
delete request.headers['Content-Type'];
|
1428
|
+
}
|
1429
|
+
|
1430
|
+
if (_.isPlainObject(request.data)) {
|
1431
|
+
request.data = JSON.stringify(request.data);
|
1432
|
+
}
|
1433
|
+
|
1434
|
+
return request;
|
1435
|
+
},
|
1436
|
+
|
1437
|
+
response: function (response) {
|
1438
|
+
|
1439
|
+
try {
|
1440
|
+
response.data = JSON.parse(response.data);
|
1441
|
+
} catch (e) {}
|
1442
|
+
|
1443
|
+
return response;
|
1444
|
+
}
|
1445
|
+
|
1446
|
+
};
|
1447
|
+
|
1448
|
+
|
1449
|
+
/***/ },
|
1450
|
+
/* 20 */
|
1451
|
+
/***/ function(module, exports, __webpack_require__) {
|
1452
|
+
|
1453
|
+
/**
|
1454
|
+
* Header Interceptor.
|
854
1455
|
*/
|
855
1456
|
|
856
|
-
|
1457
|
+
var _ = __webpack_require__(1);
|
857
1458
|
|
858
|
-
|
1459
|
+
module.exports = {
|
859
1460
|
|
860
|
-
|
1461
|
+
request: function (request) {
|
861
1462
|
|
862
|
-
|
863
|
-
|
864
|
-
|
1463
|
+
request.method = request.method.toUpperCase();
|
1464
|
+
request.headers = _.extend({}, _.http.headers.common,
|
1465
|
+
!request.crossOrigin ? _.http.headers.custom : {},
|
1466
|
+
_.http.headers[request.method.toLowerCase()],
|
1467
|
+
request.headers
|
865
1468
|
);
|
866
1469
|
|
867
|
-
_.
|
1470
|
+
if (_.isPlainObject(request.data) && /^(GET|JSONP)$/i.test(request.method)) {
|
1471
|
+
_.extend(request.params, request.data);
|
1472
|
+
delete request.data;
|
1473
|
+
}
|
868
1474
|
|
869
|
-
|
1475
|
+
return request;
|
1476
|
+
}
|
870
1477
|
|
871
|
-
|
872
|
-
|
873
|
-
|
874
|
-
|
1478
|
+
};
|
1479
|
+
|
1480
|
+
|
1481
|
+
/***/ },
|
1482
|
+
/* 21 */
|
1483
|
+
/***/ function(module, exports, __webpack_require__) {
|
1484
|
+
|
1485
|
+
/**
|
1486
|
+
* CORS Interceptor.
|
1487
|
+
*/
|
1488
|
+
|
1489
|
+
var _ = __webpack_require__(1);
|
1490
|
+
var xdrClient = __webpack_require__(22);
|
1491
|
+
var xhrCors = 'withCredentials' in new XMLHttpRequest();
|
1492
|
+
var originUrl = _.url.parse(location.href);
|
1493
|
+
|
1494
|
+
module.exports = {
|
1495
|
+
|
1496
|
+
request: function (request) {
|
1497
|
+
|
1498
|
+
if (request.crossOrigin === null) {
|
1499
|
+
request.crossOrigin = crossOrigin(request);
|
1500
|
+
}
|
1501
|
+
|
1502
|
+
if (request.crossOrigin) {
|
1503
|
+
|
1504
|
+
if (!xhrCors) {
|
1505
|
+
request.client = xdrClient;
|
1506
|
+
}
|
875
1507
|
|
876
|
-
|
1508
|
+
request.emulateHTTP = false;
|
1509
|
+
}
|
1510
|
+
|
1511
|
+
return request;
|
877
1512
|
}
|
878
1513
|
|
879
|
-
|
1514
|
+
};
|
1515
|
+
|
1516
|
+
function crossOrigin(request) {
|
880
1517
|
|
881
|
-
|
1518
|
+
var requestUrl = _.url.parse(_.url(request));
|
882
1519
|
|
883
|
-
|
1520
|
+
return (requestUrl.protocol !== originUrl.protocol || requestUrl.host !== originUrl.host);
|
1521
|
+
}
|
884
1522
|
|
885
|
-
case 4:
|
886
1523
|
|
887
|
-
|
888
|
-
|
1524
|
+
/***/ },
|
1525
|
+
/* 22 */
|
1526
|
+
/***/ function(module, exports, __webpack_require__) {
|
889
1527
|
|
890
|
-
|
891
|
-
|
1528
|
+
/**
|
1529
|
+
* XDomain client (Internet Explorer).
|
1530
|
+
*/
|
892
1531
|
|
893
|
-
|
1532
|
+
var _ = __webpack_require__(1);
|
1533
|
+
var Promise = __webpack_require__(10);
|
894
1534
|
|
895
|
-
|
1535
|
+
module.exports = function (request) {
|
1536
|
+
return new Promise(function (resolve) {
|
896
1537
|
|
897
|
-
|
898
|
-
error = args[1];
|
1538
|
+
var xdr = new XDomainRequest(), response = {request: request}, handler;
|
899
1539
|
|
900
|
-
|
901
|
-
|
1540
|
+
request.cancel = function () {
|
1541
|
+
xdr.abort();
|
1542
|
+
};
|
902
1543
|
|
903
|
-
|
904
|
-
error = args[2];
|
1544
|
+
xdr.open(request.method, _.url(request), true);
|
905
1545
|
|
906
|
-
|
1546
|
+
handler = function (event) {
|
907
1547
|
|
908
|
-
|
909
|
-
|
910
|
-
|
1548
|
+
response.data = xdr.responseText;
|
1549
|
+
response.status = xdr.status;
|
1550
|
+
response.statusText = xdr.statusText;
|
911
1551
|
|
912
|
-
|
913
|
-
|
1552
|
+
resolve(response);
|
1553
|
+
};
|
1554
|
+
|
1555
|
+
xdr.timeout = 0;
|
1556
|
+
xdr.onload = handler;
|
1557
|
+
xdr.onabort = handler;
|
1558
|
+
xdr.onerror = handler;
|
1559
|
+
xdr.ontimeout = function () {};
|
1560
|
+
xdr.onprogress = function () {};
|
1561
|
+
|
1562
|
+
xdr.send(request.data);
|
1563
|
+
});
|
1564
|
+
};
|
1565
|
+
|
1566
|
+
|
1567
|
+
/***/ },
|
1568
|
+
/* 23 */
|
1569
|
+
/***/ function(module, exports, __webpack_require__) {
|
1570
|
+
|
1571
|
+
/**
|
1572
|
+
* Service for interacting with RESTful services.
|
1573
|
+
*/
|
1574
|
+
|
1575
|
+
var _ = __webpack_require__(1);
|
1576
|
+
|
1577
|
+
function Resource(url, params, actions, options) {
|
1578
|
+
|
1579
|
+
var self = this, resource = {};
|
1580
|
+
|
1581
|
+
actions = _.extend({},
|
1582
|
+
Resource.actions,
|
1583
|
+
actions
|
1584
|
+
);
|
1585
|
+
|
1586
|
+
_.each(actions, function (action, name) {
|
1587
|
+
|
1588
|
+
action = _.merge({url: url, params: params || {}}, options, action);
|
1589
|
+
|
1590
|
+
resource[name] = function () {
|
1591
|
+
return (self.$http || _.http)(opts(action, arguments));
|
1592
|
+
};
|
1593
|
+
});
|
1594
|
+
|
1595
|
+
return resource;
|
1596
|
+
}
|
1597
|
+
|
1598
|
+
function opts(action, args) {
|
1599
|
+
|
1600
|
+
var options = _.extend({}, action), params = {}, data, success, error;
|
1601
|
+
|
1602
|
+
switch (args.length) {
|
1603
|
+
|
1604
|
+
case 4:
|
1605
|
+
|
1606
|
+
error = args[3];
|
1607
|
+
success = args[2];
|
914
1608
|
|
915
|
-
|
1609
|
+
case 3:
|
1610
|
+
case 2:
|
1611
|
+
|
1612
|
+
if (_.isFunction(args[1])) {
|
916
1613
|
|
917
1614
|
if (_.isFunction(args[0])) {
|
1615
|
+
|
918
1616
|
success = args[0];
|
919
|
-
|
920
|
-
|
921
|
-
|
922
|
-
params = args[0];
|
1617
|
+
error = args[1];
|
1618
|
+
|
1619
|
+
break;
|
923
1620
|
}
|
924
1621
|
|
925
|
-
|
1622
|
+
success = args[1];
|
1623
|
+
error = args[2];
|
1624
|
+
|
1625
|
+
} else {
|
926
1626
|
|
927
|
-
|
1627
|
+
params = args[0];
|
1628
|
+
data = args[1];
|
1629
|
+
success = args[2];
|
928
1630
|
|
929
1631
|
break;
|
1632
|
+
}
|
930
1633
|
|
931
|
-
|
1634
|
+
case 1:
|
932
1635
|
|
933
|
-
|
934
|
-
|
1636
|
+
if (_.isFunction(args[0])) {
|
1637
|
+
success = args[0];
|
1638
|
+
} else if (/^(POST|PUT|PATCH)$/i.test(options.method)) {
|
1639
|
+
data = args[0];
|
1640
|
+
} else {
|
1641
|
+
params = args[0];
|
1642
|
+
}
|
935
1643
|
|
936
|
-
|
937
|
-
options.params = _.extend({}, options.params, params);
|
1644
|
+
break;
|
938
1645
|
|
939
|
-
|
940
|
-
options.success = success;
|
941
|
-
}
|
1646
|
+
case 0:
|
942
1647
|
|
943
|
-
|
944
|
-
|
945
|
-
|
1648
|
+
break;
|
1649
|
+
|
1650
|
+
default:
|
946
1651
|
|
947
|
-
|
1652
|
+
throw 'Expected up to 4 arguments [params, data, success, error], got ' + args.length + ' arguments';
|
948
1653
|
}
|
949
1654
|
|
950
|
-
|
1655
|
+
options.data = data;
|
1656
|
+
options.params = _.extend({}, options.params, params);
|
951
1657
|
|
952
|
-
|
953
|
-
|
954
|
-
|
955
|
-
update: {method: 'PUT'},
|
956
|
-
remove: {method: 'DELETE'},
|
957
|
-
delete: {method: 'DELETE'}
|
1658
|
+
if (success) {
|
1659
|
+
options.success = success;
|
1660
|
+
}
|
958
1661
|
|
959
|
-
|
1662
|
+
if (error) {
|
1663
|
+
options.error = error;
|
1664
|
+
}
|
1665
|
+
|
1666
|
+
return options;
|
1667
|
+
}
|
1668
|
+
|
1669
|
+
Resource.actions = {
|
1670
|
+
|
1671
|
+
get: {method: 'GET'},
|
1672
|
+
save: {method: 'POST'},
|
1673
|
+
query: {method: 'GET'},
|
1674
|
+
update: {method: 'PUT'},
|
1675
|
+
remove: {method: 'DELETE'},
|
1676
|
+
delete: {method: 'DELETE'}
|
960
1677
|
|
961
|
-
return _.resource = Resource;
|
962
1678
|
};
|
963
1679
|
|
1680
|
+
module.exports = _.resource = Resource;
|
1681
|
+
|
964
1682
|
|
965
1683
|
/***/ }
|
966
1684
|
/******/ ])
|
967
1685
|
});
|
968
|
-
;
|
1686
|
+
;
|