@salesforce/lds-adapters-uiapi-lex 1.335.0 → 1.336.0
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/package.json +1 -1
- package/sfdc/ldsAdaptersUiapiLex.js +103 -3
package/package.json
CHANGED
@@ -21,6 +21,93 @@ import { CommandWireAdapterConstructor } from 'force/luvioLwcBindings5';
|
|
21
21
|
*/
|
22
22
|
|
23
23
|
|
24
|
+
/**
|
25
|
+
* Returns a PromiseLike object that resolves with the specified result.
|
26
|
+
*
|
27
|
+
* @param result resolved result
|
28
|
+
* @returns
|
29
|
+
*/
|
30
|
+
function resolvedPromiseLike$1(result) {
|
31
|
+
// Don't nest anything promise like
|
32
|
+
if (isPromiseLike$1(result)) {
|
33
|
+
return result.then((nextResult) => nextResult);
|
34
|
+
}
|
35
|
+
return {
|
36
|
+
then: (onFulfilled, _onRejected) => {
|
37
|
+
if (onFulfilled) {
|
38
|
+
try {
|
39
|
+
return resolvedPromiseLike$1(onFulfilled(result));
|
40
|
+
}
|
41
|
+
catch (e) {
|
42
|
+
return rejectedPromiseLike$1(e);
|
43
|
+
}
|
44
|
+
}
|
45
|
+
// assume TResult1 == Result and just pass result down the chain
|
46
|
+
return resolvedPromiseLike$1(result);
|
47
|
+
},
|
48
|
+
};
|
49
|
+
}
|
50
|
+
/**
|
51
|
+
* Returns a PromiseLike object that rejects with the specified reason.
|
52
|
+
*
|
53
|
+
* @param reason rejection value
|
54
|
+
* @returns PromiseLike that rejects with reason
|
55
|
+
*/
|
56
|
+
function rejectedPromiseLike$1(reason) {
|
57
|
+
if (isPromiseLike$1(reason)) {
|
58
|
+
return reason.then((nextResult) => nextResult);
|
59
|
+
}
|
60
|
+
return {
|
61
|
+
then: (_onFulfilled, onRejected) => {
|
62
|
+
if (onRejected) {
|
63
|
+
try {
|
64
|
+
return resolvedPromiseLike$1(onRejected(reason));
|
65
|
+
}
|
66
|
+
catch (e) {
|
67
|
+
return rejectedPromiseLike$1(e);
|
68
|
+
}
|
69
|
+
}
|
70
|
+
// assume TResult2 == Result and just pass rejection down the chain
|
71
|
+
return rejectedPromiseLike$1(reason);
|
72
|
+
},
|
73
|
+
};
|
74
|
+
}
|
75
|
+
/**
|
76
|
+
* Indicates if an object is PromiseLike.
|
77
|
+
*
|
78
|
+
* @param x anything
|
79
|
+
* @returns true if x is PromiseLike; false if not
|
80
|
+
*/
|
81
|
+
function isPromiseLike$1(x) {
|
82
|
+
return typeof x === 'object' && typeof (x === null || x === void 0 ? void 0 : x.then) === 'function';
|
83
|
+
}
|
84
|
+
/**
|
85
|
+
* As Promise.race, but returns sychronously if any of the supplied values resolve/reject
|
86
|
+
* synchronously.
|
87
|
+
*
|
88
|
+
* @param values as Promise.race
|
89
|
+
* @returns as Promise.race
|
90
|
+
*/
|
91
|
+
function racesync$1(values) {
|
92
|
+
for (const value of values) {
|
93
|
+
let settled = undefined;
|
94
|
+
if (isPromiseLike$1(value)) {
|
95
|
+
value.then((_) => {
|
96
|
+
settled = value;
|
97
|
+
}, (_) => {
|
98
|
+
settled = value;
|
99
|
+
});
|
100
|
+
}
|
101
|
+
else {
|
102
|
+
settled = resolvedPromiseLike$1(value);
|
103
|
+
}
|
104
|
+
if (settled !== undefined) {
|
105
|
+
return settled;
|
106
|
+
}
|
107
|
+
}
|
108
|
+
return Promise.race(values);
|
109
|
+
}
|
110
|
+
|
24
111
|
/**
|
25
112
|
* Indicates if a given instance of a service satisfies a request. Note that this function
|
26
113
|
* assumes the version numbers are valid strings.
|
@@ -104,8 +191,8 @@ let waitForServices = new Promise((resolve) => (resolve));
|
|
104
191
|
* @returns PromiseLike for the requested services; rejects if the requested
|
105
192
|
* services are not available
|
106
193
|
*/
|
107
|
-
function getServices(request) {
|
108
|
-
|
194
|
+
function getServices(request, timeout = 30000) {
|
195
|
+
const servicesPromise = waitForServices.then((services) => {
|
109
196
|
// try to resolve the requested services against our services
|
110
197
|
const result = resolve(services, request);
|
111
198
|
// resolve/reject based on whether we have all the requested services
|
@@ -114,6 +201,19 @@ function getServices(request) {
|
|
114
201
|
}
|
115
202
|
throw new Error('no matches found for one or more requested services');
|
116
203
|
});
|
204
|
+
let timeoutId;
|
205
|
+
let timeoutPromise = new Promise((_, reject) => {
|
206
|
+
timeoutId = setTimeout(() => reject(new Error('OneStore services unavailable')), timeout);
|
207
|
+
});
|
208
|
+
return racesync$1([servicesPromise, timeoutPromise]).then((value) => {
|
209
|
+
clearTimeout(timeoutId);
|
210
|
+
return value;
|
211
|
+
}, (reason) => {
|
212
|
+
clearTimeout(timeoutId);
|
213
|
+
// eslint-disable-next-line
|
214
|
+
console.error(reason);
|
215
|
+
throw reason;
|
216
|
+
});
|
117
217
|
}
|
118
218
|
|
119
219
|
/**
|
@@ -565,4 +665,4 @@ racesync([getServices(serviceRequirements)]).then(
|
|
565
665
|
);
|
566
666
|
|
567
667
|
export { getObjectInfo, getObjectInfos };
|
568
|
-
// version: 1.
|
668
|
+
// version: 1.336.0-7d2c781c74
|