@salesforce/lds-adapters-uiapi-lex 1.335.0 → 1.337.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 CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@salesforce/lds-adapters-uiapi-lex",
3
- "version": "1.335.0",
3
+ "version": "1.337.0",
4
4
  "license": "SEE LICENSE IN LICENSE.txt",
5
5
  "description": "UIAPI LWC Adapters built for LEX",
6
6
  "repository": {
@@ -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
- return waitForServices.then((services) => {
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.335.0-290eb12c27
668
+ // version: 1.337.0-d91af1f460