@sanity/client 3.3.3-esm.1 → 3.3.3-esm.12
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.
- package/dist/sanityClient.browser.mjs +2833 -1054
- package/dist/sanityClient.browser.mjs.map +4 -4
- package/lib/assets/assetsClient.js +26 -14
- package/lib/auth/authClient.js +10 -4
- package/lib/config.js +39 -23
- package/lib/data/dataMethods.js +37 -25
- package/lib/data/encodeQueryString.js +9 -2
- package/lib/data/listen.js +26 -20
- package/lib/data/patch.js +35 -28
- package/lib/data/transaction.js +25 -11
- package/lib/datasets/datasetsClient.js +17 -5
- package/lib/generateHelpUrl.js +8 -2
- package/lib/http/browserMiddleware.js +7 -1
- package/lib/http/errors.js +13 -7
- package/lib/http/nodeMiddleware.js +8 -1
- package/lib/http/queryString.js +10 -2
- package/lib/http/request.js +21 -23
- package/lib/http/requestOptions.js +12 -6
- package/lib/projects/projectsClient.js +10 -4
- package/lib/sanityClient.js +58 -46
- package/lib/users/usersClient.js +10 -4
- package/lib/util/defaults.js +10 -2
- package/lib/util/getSelection.js +9 -2
- package/lib/util/observable.js +23 -9
- package/lib/util/once.js +10 -2
- package/lib/util/pick.js +10 -2
- package/lib/validators.js +38 -15
- package/lib/warnings.js +16 -6
- package/package.json +13 -7
- package/umd/sanityClient.js +168 -100
- package/umd/sanityClient.min.js +1 -1
package/lib/auth/authClient.js
CHANGED
|
@@ -1,14 +1,17 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
4
7
|
|
|
5
|
-
function
|
|
8
|
+
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
6
9
|
|
|
7
10
|
function AuthClient(client) {
|
|
8
11
|
this.client = client;
|
|
9
12
|
}
|
|
10
13
|
|
|
11
|
-
(
|
|
14
|
+
_extends(AuthClient.prototype, {
|
|
12
15
|
getLoginProviders: function getLoginProviders() {
|
|
13
16
|
return this.client.request({
|
|
14
17
|
uri: '/auth/providers'
|
|
@@ -21,4 +24,7 @@ function AuthClient(client) {
|
|
|
21
24
|
});
|
|
22
25
|
}
|
|
23
26
|
});
|
|
24
|
-
|
|
27
|
+
|
|
28
|
+
var _default = AuthClient;
|
|
29
|
+
exports.default = _default;
|
|
30
|
+
module.exports = exports.default;
|
package/lib/config.js
CHANGED
|
@@ -1,14 +1,25 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.validateApiVersion = exports.initConfig = exports.defaultConfig = void 0;
|
|
9
|
+
|
|
10
|
+
var _generateHelpUrl = _interopRequireDefault(require("./generateHelpUrl"));
|
|
11
|
+
|
|
12
|
+
var validate = _interopRequireWildcard(require("./validators"));
|
|
13
|
+
|
|
14
|
+
var warnings = _interopRequireWildcard(require("./warnings"));
|
|
6
15
|
|
|
7
|
-
var
|
|
16
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
8
17
|
|
|
9
|
-
var
|
|
18
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
10
19
|
|
|
11
|
-
|
|
20
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
21
|
+
|
|
22
|
+
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
12
23
|
|
|
13
24
|
var defaultCdnHost = 'apicdn.sanity.io';
|
|
14
25
|
var defaultConfig = {
|
|
@@ -17,26 +28,42 @@ var defaultConfig = {
|
|
|
17
28
|
useProjectHostname: true,
|
|
18
29
|
isPromiseAPI: true
|
|
19
30
|
};
|
|
31
|
+
exports.defaultConfig = defaultConfig;
|
|
20
32
|
var LOCALHOSTS = ['localhost', '127.0.0.1', '0.0.0.0'];
|
|
21
33
|
|
|
22
34
|
var isLocal = function isLocal(host) {
|
|
23
35
|
return LOCALHOSTS.indexOf(host) !== -1;
|
|
24
36
|
};
|
|
25
37
|
|
|
26
|
-
|
|
38
|
+
var validateApiVersion = function validateApiVersion(apiVersion) {
|
|
39
|
+
if (apiVersion === '1' || apiVersion === 'X') {
|
|
40
|
+
return;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
var apiDate = new Date(apiVersion);
|
|
44
|
+
var apiVersionValid = /^\d{4}-\d{2}-\d{2}$/.test(apiVersion) && apiDate instanceof Date && apiDate.getTime() > 0;
|
|
27
45
|
|
|
28
|
-
|
|
29
|
-
|
|
46
|
+
if (!apiVersionValid) {
|
|
47
|
+
throw new Error('Invalid API version string, expected `1` or date in format `YYYY-MM-DD`');
|
|
48
|
+
}
|
|
49
|
+
}; // eslint-disable-next-line complexity
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
exports.validateApiVersion = validateApiVersion;
|
|
53
|
+
|
|
54
|
+
var initConfig = function initConfig(config, prevConfig) {
|
|
55
|
+
var specifiedConfig = _extends({}, prevConfig, config);
|
|
30
56
|
|
|
31
57
|
if (!specifiedConfig.apiVersion) {
|
|
32
58
|
warnings.printNoApiVersionSpecifiedWarning();
|
|
33
59
|
}
|
|
34
60
|
|
|
35
|
-
var newConfig = (
|
|
61
|
+
var newConfig = _extends({}, defaultConfig, specifiedConfig);
|
|
62
|
+
|
|
36
63
|
var projectBased = newConfig.useProjectHostname;
|
|
37
64
|
|
|
38
65
|
if (typeof Promise === 'undefined') {
|
|
39
|
-
var helpUrl =
|
|
66
|
+
var helpUrl = (0, _generateHelpUrl.default)('js-client-promise-polyfill');
|
|
40
67
|
throw new Error("No native Promise-implementation found, polyfill needed - see ".concat(helpUrl));
|
|
41
68
|
}
|
|
42
69
|
|
|
@@ -69,7 +96,7 @@ exports.initConfig = function (config, prevConfig) {
|
|
|
69
96
|
newConfig.apiVersion = "".concat(newConfig.apiVersion).replace(/^v/, '');
|
|
70
97
|
newConfig.isDefaultApi = newConfig.apiHost === defaultConfig.apiHost;
|
|
71
98
|
newConfig.useCdn = Boolean(newConfig.useCdn) && !newConfig.withCredentials;
|
|
72
|
-
|
|
99
|
+
validateApiVersion(newConfig.apiVersion);
|
|
73
100
|
var hostParts = newConfig.apiHost.split('://', 2);
|
|
74
101
|
var protocol = hostParts[0];
|
|
75
102
|
var host = hostParts[1];
|
|
@@ -86,15 +113,4 @@ exports.initConfig = function (config, prevConfig) {
|
|
|
86
113
|
return newConfig;
|
|
87
114
|
};
|
|
88
115
|
|
|
89
|
-
exports.
|
|
90
|
-
if (apiVersion === '1' || apiVersion === 'X') {
|
|
91
|
-
return;
|
|
92
|
-
}
|
|
93
|
-
|
|
94
|
-
var apiDate = new Date(apiVersion);
|
|
95
|
-
var apiVersionValid = /^\d{4}-\d{2}-\d{2}$/.test(apiVersion) && apiDate instanceof Date && apiDate.getTime() > 0;
|
|
96
|
-
|
|
97
|
-
if (!apiVersionValid) {
|
|
98
|
-
throw new Error('Invalid API version string, expected `1` or date in format `YYYY-MM-DD`');
|
|
99
|
-
}
|
|
100
|
-
};
|
|
116
|
+
exports.initConfig = initConfig;
|
package/lib/data/dataMethods.js
CHANGED
|
@@ -1,26 +1,35 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.default = void 0;
|
|
6
9
|
|
|
7
|
-
|
|
10
|
+
var _observable = require("../util/observable");
|
|
11
|
+
|
|
12
|
+
var validators = _interopRequireWildcard(require("../validators"));
|
|
13
|
+
|
|
14
|
+
var _getSelection = _interopRequireDefault(require("../util/getSelection"));
|
|
15
|
+
|
|
16
|
+
var _encodeQueryString = _interopRequireDefault(require("./encodeQueryString"));
|
|
8
17
|
|
|
9
|
-
var
|
|
10
|
-
map = _require.map,
|
|
11
|
-
filter = _require.filter;
|
|
18
|
+
var _transaction = _interopRequireDefault(require("./transaction"));
|
|
12
19
|
|
|
13
|
-
var
|
|
20
|
+
var _patch = _interopRequireDefault(require("./patch"));
|
|
14
21
|
|
|
15
|
-
var
|
|
22
|
+
var _listen = _interopRequireDefault(require("./listen"));
|
|
16
23
|
|
|
17
|
-
|
|
24
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
25
|
+
|
|
26
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
18
27
|
|
|
19
|
-
var
|
|
28
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
20
29
|
|
|
21
|
-
var
|
|
30
|
+
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
22
31
|
|
|
23
|
-
|
|
32
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
24
33
|
|
|
25
34
|
var excludeFalsey = function excludeFalsey(param, defValue) {
|
|
26
35
|
var value = typeof param === 'undefined' ? defValue : param;
|
|
@@ -59,8 +68,8 @@ var toPromise = function toPromise(observable) {
|
|
|
59
68
|
};
|
|
60
69
|
|
|
61
70
|
var getQuerySizeLimit = 11264;
|
|
62
|
-
|
|
63
|
-
listen:
|
|
71
|
+
var _default = {
|
|
72
|
+
listen: _listen.default,
|
|
64
73
|
getDataUrl: function getDataUrl(operation, path) {
|
|
65
74
|
var config = this.clientConfig;
|
|
66
75
|
var catalog = validators.hasDataset(config);
|
|
@@ -79,7 +88,7 @@ module.exports = {
|
|
|
79
88
|
var observable = this._dataRequest('query', {
|
|
80
89
|
query: query,
|
|
81
90
|
params: params
|
|
82
|
-
}, options).pipe(map(mapResponse));
|
|
91
|
+
}, options).pipe((0, _observable.map)(mapResponse));
|
|
83
92
|
|
|
84
93
|
return this.isPromiseAPI() ? toPromise(observable) : observable;
|
|
85
94
|
},
|
|
@@ -91,7 +100,7 @@ module.exports = {
|
|
|
91
100
|
tag: opts.tag
|
|
92
101
|
};
|
|
93
102
|
|
|
94
|
-
var observable = this._requestObservable(options).pipe(filter(isResponse), map(function (event) {
|
|
103
|
+
var observable = this._requestObservable(options).pipe((0, _observable.filter)(isResponse), (0, _observable.map)(function (event) {
|
|
95
104
|
return event.body.documents && event.body.documents[0];
|
|
96
105
|
}));
|
|
97
106
|
|
|
@@ -105,7 +114,7 @@ module.exports = {
|
|
|
105
114
|
tag: opts.tag
|
|
106
115
|
};
|
|
107
116
|
|
|
108
|
-
var observable = this._requestObservable(options).pipe(filter(isResponse), map(function (event) {
|
|
117
|
+
var observable = this._requestObservable(options).pipe((0, _observable.filter)(isResponse), (0, _observable.map)(function (event) {
|
|
109
118
|
var indexed = indexBy(event.body.documents || [], function (doc) {
|
|
110
119
|
return doc._id;
|
|
111
120
|
});
|
|
@@ -128,17 +137,17 @@ module.exports = {
|
|
|
128
137
|
return this._create(doc, 'createOrReplace', options);
|
|
129
138
|
},
|
|
130
139
|
patch: function patch(selector, operations) {
|
|
131
|
-
return new
|
|
140
|
+
return new _patch.default(selector, operations, this);
|
|
132
141
|
},
|
|
133
142
|
delete: function _delete(selection, options) {
|
|
134
143
|
return this.dataRequest('mutate', {
|
|
135
144
|
mutations: [{
|
|
136
|
-
delete:
|
|
145
|
+
delete: (0, _getSelection.default)(selection)
|
|
137
146
|
}]
|
|
138
147
|
}, options);
|
|
139
148
|
},
|
|
140
149
|
mutate: function mutate(mutations, options) {
|
|
141
|
-
var mut = mutations instanceof
|
|
150
|
+
var mut = mutations instanceof _patch.default || mutations instanceof _transaction.default ? mutations.serialize() : mutations;
|
|
142
151
|
var muts = Array.isArray(mut) ? mut : [mut];
|
|
143
152
|
var transactionId = options && options.transactionId;
|
|
144
153
|
return this.dataRequest('mutate', {
|
|
@@ -147,7 +156,7 @@ module.exports = {
|
|
|
147
156
|
}, options);
|
|
148
157
|
},
|
|
149
158
|
transaction: function transaction(operations) {
|
|
150
|
-
return new
|
|
159
|
+
return new _transaction.default(operations, this);
|
|
151
160
|
},
|
|
152
161
|
dataRequest: function dataRequest(endpoint, body) {
|
|
153
162
|
var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
|
|
@@ -162,7 +171,7 @@ module.exports = {
|
|
|
162
171
|
var isQuery = endpoint === 'query'; // Check if the query string is within a configured threshold,
|
|
163
172
|
// in which case we can use GET. Otherwise, use POST.
|
|
164
173
|
|
|
165
|
-
var strQuery = !isMutation &&
|
|
174
|
+
var strQuery = !isMutation && (0, _encodeQueryString.default)(body);
|
|
166
175
|
var useGet = !isMutation && strQuery.length < getQuerySizeLimit;
|
|
167
176
|
var stringQuery = useGet ? strQuery : '';
|
|
168
177
|
var returnFirst = options.returnFirst;
|
|
@@ -183,7 +192,7 @@ module.exports = {
|
|
|
183
192
|
tag: tag,
|
|
184
193
|
canUseCdn: isQuery
|
|
185
194
|
};
|
|
186
|
-
return this._requestObservable(reqOptions).pipe(filter(isResponse), map(getBody), map(function (res) {
|
|
195
|
+
return this._requestObservable(reqOptions).pipe((0, _observable.filter)(isResponse), (0, _observable.map)(getBody), (0, _observable.map)(function (res) {
|
|
187
196
|
if (!isMutation) {
|
|
188
197
|
return res;
|
|
189
198
|
} // Should we return documents?
|
|
@@ -213,12 +222,15 @@ module.exports = {
|
|
|
213
222
|
|
|
214
223
|
var mutation = _defineProperty({}, op, doc);
|
|
215
224
|
|
|
216
|
-
var opts = (
|
|
225
|
+
var opts = _extends({
|
|
217
226
|
returnFirst: true,
|
|
218
227
|
returnDocuments: true
|
|
219
228
|
}, options);
|
|
229
|
+
|
|
220
230
|
return this.dataRequest('mutate', {
|
|
221
231
|
mutations: [mutation]
|
|
222
232
|
}, opts);
|
|
223
233
|
}
|
|
224
|
-
};
|
|
234
|
+
};
|
|
235
|
+
exports.default = _default;
|
|
236
|
+
module.exports = exports.default;
|
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
3
7
|
var _excluded = ["tag"];
|
|
4
8
|
|
|
5
9
|
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
@@ -8,7 +12,7 @@ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) r
|
|
|
8
12
|
|
|
9
13
|
var enc = encodeURIComponent;
|
|
10
14
|
|
|
11
|
-
|
|
15
|
+
var _default = function _default(_ref) {
|
|
12
16
|
var query = _ref.query,
|
|
13
17
|
_ref$params = _ref.params,
|
|
14
18
|
params = _ref$params === void 0 ? {} : _ref$params,
|
|
@@ -28,4 +32,7 @@ module.exports = function (_ref) {
|
|
|
28
32
|
// Only include the option if it is truthy
|
|
29
33
|
return options[option] ? "".concat(qs, "&").concat(enc(option), "=").concat(enc(options[option])) : qs;
|
|
30
34
|
}, qString);
|
|
31
|
-
};
|
|
35
|
+
};
|
|
36
|
+
|
|
37
|
+
exports.default = _default;
|
|
38
|
+
module.exports = exports.default;
|
package/lib/data/listen.js
CHANGED
|
@@ -1,29 +1,33 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = listen;
|
|
7
|
+
|
|
8
|
+
var _observable = require("../util/observable");
|
|
4
9
|
|
|
5
10
|
var _eventsource = _interopRequireDefault(require("@sanity/eventsource"));
|
|
6
11
|
|
|
12
|
+
var _pick = _interopRequireDefault(require("../util/pick"));
|
|
13
|
+
|
|
14
|
+
var _defaults = _interopRequireDefault(require("../util/defaults"));
|
|
15
|
+
|
|
16
|
+
var _encodeQueryString = _interopRequireDefault(require("./encodeQueryString"));
|
|
17
|
+
|
|
7
18
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
8
19
|
|
|
20
|
+
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
21
|
+
|
|
9
22
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
10
23
|
|
|
11
24
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
12
25
|
|
|
13
26
|
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
14
27
|
|
|
15
|
-
|
|
16
|
-
Observable = _require.Observable;
|
|
17
|
-
|
|
18
|
-
var pick = require('../util/pick');
|
|
19
|
-
|
|
20
|
-
var defaults = require('../util/defaults');
|
|
21
|
-
|
|
22
|
-
var encodeQueryString = require('./encodeQueryString'); // Limit is 16K for a _request_, eg including headers. Have to account for an
|
|
28
|
+
// Limit is 16K for a _request_, eg including headers. Have to account for an
|
|
23
29
|
// unknown range of headers, but an average EventSource request from Chrome seems
|
|
24
30
|
// to have around 700 bytes of cruft, so let us account for 1.2K to be "safe"
|
|
25
|
-
|
|
26
|
-
|
|
27
31
|
var MAX_URL_LENGTH = 16000 - 1200;
|
|
28
32
|
var EventSource = _eventsource.default;
|
|
29
33
|
var possibleOptions = ['includePreviousRevision', 'includeResult', 'visibility', 'effectFormat', 'tag'];
|
|
@@ -31,7 +35,7 @@ var defaultOptions = {
|
|
|
31
35
|
includeResult: true
|
|
32
36
|
};
|
|
33
37
|
|
|
34
|
-
|
|
38
|
+
function listen(query, params) {
|
|
35
39
|
var opts = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
|
|
36
40
|
var _this$clientConfig = this.clientConfig,
|
|
37
41
|
url = _this$clientConfig.url,
|
|
@@ -40,12 +44,12 @@ module.exports = function listen(query, params) {
|
|
|
40
44
|
requestTagPrefix = _this$clientConfig.requestTagPrefix;
|
|
41
45
|
var tag = opts.tag && requestTagPrefix ? [requestTagPrefix, opts.tag].join('.') : opts.tag;
|
|
42
46
|
|
|
43
|
-
var options = _objectSpread(_objectSpread({},
|
|
47
|
+
var options = _objectSpread(_objectSpread({}, (0, _defaults.default)(opts, defaultOptions)), {}, {
|
|
44
48
|
tag: tag
|
|
45
49
|
});
|
|
46
50
|
|
|
47
|
-
var listenOpts =
|
|
48
|
-
var qs =
|
|
51
|
+
var listenOpts = (0, _pick.default)(options, possibleOptions);
|
|
52
|
+
var qs = (0, _encodeQueryString.default)({
|
|
49
53
|
query: query,
|
|
50
54
|
params: params,
|
|
51
55
|
options: listenOpts,
|
|
@@ -54,7 +58,7 @@ module.exports = function listen(query, params) {
|
|
|
54
58
|
var uri = "".concat(url).concat(this.getDataUrl('listen', qs));
|
|
55
59
|
|
|
56
60
|
if (uri.length > MAX_URL_LENGTH) {
|
|
57
|
-
return new Observable(function (observer) {
|
|
61
|
+
return new _observable.Observable(function (observer) {
|
|
58
62
|
return observer.error(new Error('Query too large for listener'));
|
|
59
63
|
});
|
|
60
64
|
}
|
|
@@ -73,7 +77,7 @@ module.exports = function listen(query, params) {
|
|
|
73
77
|
};
|
|
74
78
|
}
|
|
75
79
|
|
|
76
|
-
return new Observable(function (observer) {
|
|
80
|
+
return new _observable.Observable(function (observer) {
|
|
77
81
|
var es = getEventSource();
|
|
78
82
|
var reconnectTimer;
|
|
79
83
|
var stopped = false;
|
|
@@ -156,12 +160,12 @@ module.exports = function listen(query, params) {
|
|
|
156
160
|
|
|
157
161
|
return stop;
|
|
158
162
|
});
|
|
159
|
-
}
|
|
163
|
+
}
|
|
160
164
|
|
|
161
165
|
function parseEvent(event) {
|
|
162
166
|
try {
|
|
163
167
|
var data = event.data && JSON.parse(event.data) || {};
|
|
164
|
-
return (
|
|
168
|
+
return _extends({
|
|
165
169
|
type: event.type
|
|
166
170
|
}, data);
|
|
167
171
|
} catch (err) {
|
|
@@ -188,4 +192,6 @@ function extractErrorMessage(err) {
|
|
|
188
192
|
}
|
|
189
193
|
|
|
190
194
|
return typeof err.error === 'string' ? err.error : JSON.stringify(err.error, null, 2);
|
|
191
|
-
}
|
|
195
|
+
}
|
|
196
|
+
|
|
197
|
+
module.exports = exports.default;
|
package/lib/data/patch.js
CHANGED
|
@@ -1,67 +1,69 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
4
7
|
|
|
5
|
-
|
|
8
|
+
var _getSelection = _interopRequireDefault(require("../util/getSelection"));
|
|
6
9
|
|
|
7
|
-
|
|
10
|
+
var _validators = require("../validators");
|
|
8
11
|
|
|
9
|
-
|
|
12
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
10
13
|
|
|
11
|
-
|
|
14
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
12
15
|
|
|
13
|
-
var
|
|
14
|
-
var validateInsert = validate.validateInsert;
|
|
16
|
+
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
15
17
|
|
|
16
18
|
function Patch(selection) {
|
|
17
19
|
var operations = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
18
20
|
var client = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;
|
|
19
21
|
this.selection = selection;
|
|
20
|
-
this.operations = (
|
|
22
|
+
this.operations = _extends({}, operations);
|
|
21
23
|
this.client = client;
|
|
22
24
|
}
|
|
23
25
|
|
|
24
|
-
(
|
|
26
|
+
_extends(Patch.prototype, {
|
|
25
27
|
clone: function clone() {
|
|
26
|
-
return new Patch(this.selection, (
|
|
28
|
+
return new Patch(this.selection, _extends({}, this.operations), this.client);
|
|
27
29
|
},
|
|
28
30
|
set: function set(props) {
|
|
29
|
-
return this.
|
|
31
|
+
return this.assign('set', props);
|
|
30
32
|
},
|
|
31
33
|
diffMatchPatch: function diffMatchPatch(props) {
|
|
32
|
-
validateObject('diffMatchPatch', props);
|
|
33
|
-
return this.
|
|
34
|
+
(0, _validators.validateObject)('diffMatchPatch', props);
|
|
35
|
+
return this.assign('diffMatchPatch', props);
|
|
34
36
|
},
|
|
35
37
|
unset: function unset(attrs) {
|
|
36
38
|
if (!Array.isArray(attrs)) {
|
|
37
39
|
throw new Error('unset(attrs) takes an array of attributes to unset, non-array given');
|
|
38
40
|
}
|
|
39
41
|
|
|
40
|
-
this.operations = (
|
|
42
|
+
this.operations = _extends({}, this.operations, {
|
|
41
43
|
unset: attrs
|
|
42
44
|
});
|
|
43
45
|
return this;
|
|
44
46
|
},
|
|
45
47
|
setIfMissing: function setIfMissing(props) {
|
|
46
|
-
return this.
|
|
48
|
+
return this.assign('setIfMissing', props);
|
|
47
49
|
},
|
|
48
50
|
replace: function replace(props) {
|
|
49
|
-
validateObject('replace', props);
|
|
51
|
+
(0, _validators.validateObject)('replace', props);
|
|
50
52
|
return this._set('set', {
|
|
51
53
|
$: props
|
|
52
54
|
}); // eslint-disable-line id-length
|
|
53
55
|
},
|
|
54
56
|
inc: function inc(props) {
|
|
55
|
-
return this.
|
|
57
|
+
return this.assign('inc', props);
|
|
56
58
|
},
|
|
57
59
|
dec: function dec(props) {
|
|
58
|
-
return this.
|
|
60
|
+
return this.assign('dec', props);
|
|
59
61
|
},
|
|
60
62
|
insert: function insert(at, selector, items) {
|
|
61
|
-
var _this$
|
|
63
|
+
var _this$assign;
|
|
62
64
|
|
|
63
|
-
validateInsert(at, selector, items);
|
|
64
|
-
return this.
|
|
65
|
+
(0, _validators.validateInsert)(at, selector, items);
|
|
66
|
+
return this.assign('insert', (_this$assign = {}, _defineProperty(_this$assign, at, selector), _defineProperty(_this$assign, "items", items), _this$assign));
|
|
65
67
|
},
|
|
66
68
|
append: function append(selector, items) {
|
|
67
69
|
return this.insert('after', "".concat(selector, "[-1]"), items);
|
|
@@ -87,7 +89,7 @@ function Patch(selection) {
|
|
|
87
89
|
return this;
|
|
88
90
|
},
|
|
89
91
|
serialize: function serialize() {
|
|
90
|
-
return (0,
|
|
92
|
+
return _extends((0, _getSelection.default)(this.selection), this.operations);
|
|
91
93
|
},
|
|
92
94
|
toJSON: function toJSON() {
|
|
93
95
|
return this.serialize();
|
|
@@ -100,10 +102,12 @@ function Patch(selection) {
|
|
|
100
102
|
}
|
|
101
103
|
|
|
102
104
|
var returnFirst = typeof this.selection === 'string';
|
|
103
|
-
|
|
105
|
+
|
|
106
|
+
var opts = _extends({
|
|
104
107
|
returnFirst: returnFirst,
|
|
105
108
|
returnDocuments: true
|
|
106
109
|
}, options);
|
|
110
|
+
|
|
107
111
|
return this.client.mutate({
|
|
108
112
|
patch: this.serialize()
|
|
109
113
|
}, opts);
|
|
@@ -113,13 +117,16 @@ function Patch(selection) {
|
|
|
113
117
|
return this;
|
|
114
118
|
},
|
|
115
119
|
_set: function _set(op, props) {
|
|
116
|
-
return this.
|
|
120
|
+
return this.assign(op, props, false);
|
|
117
121
|
},
|
|
118
|
-
|
|
122
|
+
assign: function assign(op, props) {
|
|
119
123
|
var merge = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
|
|
120
|
-
validateObject(op, props);
|
|
121
|
-
this.operations = (
|
|
124
|
+
(0, _validators.validateObject)(op, props);
|
|
125
|
+
this.operations = _extends({}, this.operations, _defineProperty({}, op, _extends({}, merge && this.operations[op] || {}, props)));
|
|
122
126
|
return this;
|
|
123
127
|
}
|
|
124
128
|
});
|
|
125
|
-
|
|
129
|
+
|
|
130
|
+
var _default = Patch;
|
|
131
|
+
exports.default = _default;
|
|
132
|
+
module.exports = exports.default;
|
package/lib/data/transaction.js
CHANGED
|
@@ -1,14 +1,25 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.default = void 0;
|
|
9
|
+
|
|
10
|
+
var validators = _interopRequireWildcard(require("../validators"));
|
|
11
|
+
|
|
12
|
+
var _patch = _interopRequireDefault(require("./patch"));
|
|
4
13
|
|
|
5
14
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
6
15
|
|
|
7
|
-
function
|
|
16
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
17
|
+
|
|
18
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
8
19
|
|
|
9
|
-
|
|
20
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
10
21
|
|
|
11
|
-
var
|
|
22
|
+
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
12
23
|
|
|
13
24
|
var defaultMutateOptions = {
|
|
14
25
|
returnDocuments: false
|
|
@@ -23,7 +34,7 @@ function Transaction() {
|
|
|
23
34
|
this.client = client;
|
|
24
35
|
}
|
|
25
36
|
|
|
26
|
-
(
|
|
37
|
+
_extends(Transaction.prototype, {
|
|
27
38
|
clone: function clone() {
|
|
28
39
|
return new Transaction(this.operations.slice(0), this.client, this.trxId);
|
|
29
40
|
},
|
|
@@ -55,7 +66,7 @@ function Transaction() {
|
|
|
55
66
|
},
|
|
56
67
|
patch: function patch(documentId, patchOps) {
|
|
57
68
|
var isBuilder = typeof patchOps === 'function';
|
|
58
|
-
var isPatch = documentId instanceof
|
|
69
|
+
var isPatch = documentId instanceof _patch.default; // transaction.patch(client.patch('documentId').inc({visits: 1}))
|
|
59
70
|
|
|
60
71
|
if (isPatch) {
|
|
61
72
|
return this._add({
|
|
@@ -65,9 +76,9 @@ function Transaction() {
|
|
|
65
76
|
|
|
66
77
|
|
|
67
78
|
if (isBuilder) {
|
|
68
|
-
var patch = patchOps(new
|
|
79
|
+
var patch = patchOps(new _patch.default(documentId, {}, this.client));
|
|
69
80
|
|
|
70
|
-
if (!(patch instanceof
|
|
81
|
+
if (!(patch instanceof _patch.default)) {
|
|
71
82
|
throw new Error('function passed to `patch()` must return the patch');
|
|
72
83
|
}
|
|
73
84
|
|
|
@@ -77,7 +88,7 @@ function Transaction() {
|
|
|
77
88
|
}
|
|
78
89
|
|
|
79
90
|
return this._add({
|
|
80
|
-
patch: (
|
|
91
|
+
patch: _extends({
|
|
81
92
|
id: documentId
|
|
82
93
|
}, patchOps)
|
|
83
94
|
});
|
|
@@ -101,7 +112,7 @@ function Transaction() {
|
|
|
101
112
|
throw new Error('No `client` passed to transaction, either provide one or pass the ' + 'transaction to a clients `mutate()` method');
|
|
102
113
|
}
|
|
103
114
|
|
|
104
|
-
return this.client.mutate(this.serialize(), (
|
|
115
|
+
return this.client.mutate(this.serialize(), _extends({
|
|
105
116
|
transactionId: this.trxId
|
|
106
117
|
}, defaultMutateOptions, options || {}));
|
|
107
118
|
},
|
|
@@ -114,4 +125,7 @@ function Transaction() {
|
|
|
114
125
|
return this;
|
|
115
126
|
}
|
|
116
127
|
});
|
|
117
|
-
|
|
128
|
+
|
|
129
|
+
var _default = Transaction;
|
|
130
|
+
exports.default = _default;
|
|
131
|
+
module.exports = exports.default;
|