openxiangda 1.0.90 → 1.0.91
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/lib/cli.js +2 -1
- package/lib/http.js +2 -2
- package/lib/utils.js +13 -0
- package/package.json +1 -1
- package/packages/sdk/dist/runtime/index.cjs +10 -6
- package/packages/sdk/dist/runtime/index.cjs.map +1 -1
- package/packages/sdk/dist/runtime/index.mjs +263 -258
- package/packages/sdk/dist/runtime/index.mjs.map +1 -1
- package/packages/sdk/dist/runtime/react.cjs +10 -6
- package/packages/sdk/dist/runtime/react.cjs.map +1 -1
- package/packages/sdk/dist/runtime/react.d.mts +3 -0
- package/packages/sdk/dist/runtime/react.d.ts +3 -0
- package/packages/sdk/dist/runtime/react.mjs +11 -6
- package/packages/sdk/dist/runtime/react.mjs.map +1 -1
package/lib/cli.js
CHANGED
|
@@ -24,6 +24,7 @@ const { assertCanInitializeWorkspace, initWorkspace } = require('./workspace-ini
|
|
|
24
24
|
const { bootstrapWorkspace } = require('./workspace-bootstrap');
|
|
25
25
|
const {
|
|
26
26
|
fail,
|
|
27
|
+
formatFetchError,
|
|
27
28
|
maskText,
|
|
28
29
|
openBrowser,
|
|
29
30
|
parseArgs,
|
|
@@ -7972,7 +7973,7 @@ async function requestForm(baseUrl, apiPath, formData, accessToken, options = {}
|
|
|
7972
7973
|
if (isAbortError(error)) {
|
|
7973
7974
|
throw new Error(maskText(`HTTP form request timed out after ${timeoutMs}ms: ${apiPath}`));
|
|
7974
7975
|
}
|
|
7975
|
-
throw error;
|
|
7976
|
+
throw new Error(formatFetchError(error, apiPath));
|
|
7976
7977
|
} finally {
|
|
7977
7978
|
clearTimeout(timer);
|
|
7978
7979
|
}
|
package/lib/http.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const { maskText } = require('./utils');
|
|
1
|
+
const { formatFetchError, maskText } = require('./utils');
|
|
2
2
|
|
|
3
3
|
const DEFAULT_REQUEST_TIMEOUT_MS = 60000;
|
|
4
4
|
|
|
@@ -35,7 +35,7 @@ async function requestJson(baseUrl, apiPath, options = {}) {
|
|
|
35
35
|
if (isAbortError(error)) {
|
|
36
36
|
throw new Error(maskText(`HTTP request timed out after ${timeoutMs}ms: ${apiPath}`));
|
|
37
37
|
}
|
|
38
|
-
throw error;
|
|
38
|
+
throw new Error(formatFetchError(error, apiPath));
|
|
39
39
|
} finally {
|
|
40
40
|
clearTimeout(timer);
|
|
41
41
|
}
|
package/lib/utils.js
CHANGED
|
@@ -11,6 +11,18 @@ function maskText(value) {
|
|
|
11
11
|
.replace(/\b1[3-9]\d{9}\b/g, match => `${match.slice(0, 3)}****${match.slice(-4)}`);
|
|
12
12
|
}
|
|
13
13
|
|
|
14
|
+
function formatFetchError(error, context) {
|
|
15
|
+
const message = error && error.message ? String(error.message) : String(error || 'fetch failed');
|
|
16
|
+
const cause = error && error.cause;
|
|
17
|
+
const causeParts = [];
|
|
18
|
+
if (cause?.code) causeParts.push(String(cause.code));
|
|
19
|
+
if (cause?.name) causeParts.push(String(cause.name));
|
|
20
|
+
if (cause?.message) causeParts.push(String(cause.message));
|
|
21
|
+
const suffix = causeParts.length ? `; cause=${causeParts.join(': ')}` : '';
|
|
22
|
+
const contextSuffix = context ? `; request=${context}` : '';
|
|
23
|
+
return maskText(`${message}${suffix}${contextSuffix}`);
|
|
24
|
+
}
|
|
25
|
+
|
|
14
26
|
function print(value) {
|
|
15
27
|
console.log(maskText(value));
|
|
16
28
|
}
|
|
@@ -81,6 +93,7 @@ function writeJson(value) {
|
|
|
81
93
|
|
|
82
94
|
module.exports = {
|
|
83
95
|
fail,
|
|
96
|
+
formatFetchError,
|
|
84
97
|
maskText,
|
|
85
98
|
openBrowser,
|
|
86
99
|
parseArgs,
|
package/package.json
CHANGED
|
@@ -4519,9 +4519,12 @@ var OpenXiangdaProvider = ({
|
|
|
4519
4519
|
[appType]
|
|
4520
4520
|
);
|
|
4521
4521
|
const [accessToken, setAccessTokenState] = (0, import_react8.useState)(null);
|
|
4522
|
+
const accessTokenRef = (0, import_react8.useRef)(null);
|
|
4522
4523
|
const setAccessToken = (0, import_react8.useCallback)(
|
|
4523
4524
|
(nextAccessToken) => {
|
|
4524
|
-
|
|
4525
|
+
const normalizedAccessToken = nextAccessToken || null;
|
|
4526
|
+
accessTokenRef.current = normalizedAccessToken;
|
|
4527
|
+
setAccessTokenState(normalizedAccessToken);
|
|
4525
4528
|
},
|
|
4526
4529
|
[]
|
|
4527
4530
|
);
|
|
@@ -4547,7 +4550,7 @@ var OpenXiangdaProvider = ({
|
|
|
4547
4550
|
return;
|
|
4548
4551
|
}
|
|
4549
4552
|
setState((prev) => ({ ...prev, loading: true, error: null }));
|
|
4550
|
-
const requestFetch = options.accessToken !== void 0 ? createAuthorizedFetch(resolvedFetch, options.accessToken || null) :
|
|
4553
|
+
const requestFetch = options.accessToken !== void 0 ? createAuthorizedFetch(resolvedFetch, options.accessToken || null) : createAuthorizedFetch(resolvedFetch, accessTokenRef.current);
|
|
4551
4554
|
try {
|
|
4552
4555
|
const response = await requestFetch(
|
|
4553
4556
|
buildServiceUrl3(
|
|
@@ -4581,7 +4584,7 @@ var OpenXiangdaProvider = ({
|
|
|
4581
4584
|
error: normalizeRuntimeError(error)
|
|
4582
4585
|
});
|
|
4583
4586
|
}
|
|
4584
|
-
}, [
|
|
4587
|
+
}, [resolvedAppType, resolvedFetch, servicePrefix]);
|
|
4585
4588
|
(0, import_react8.useEffect)(() => {
|
|
4586
4589
|
void reload();
|
|
4587
4590
|
}, [reload]);
|
|
@@ -4591,10 +4594,11 @@ var OpenXiangdaProvider = ({
|
|
|
4591
4594
|
appType: resolvedAppType,
|
|
4592
4595
|
servicePrefix,
|
|
4593
4596
|
fetchImpl: authorizedFetch,
|
|
4597
|
+
baseFetchImpl: resolvedFetch,
|
|
4594
4598
|
reload,
|
|
4595
4599
|
setAccessToken
|
|
4596
4600
|
}),
|
|
4597
|
-
[authorizedFetch, reload, resolvedAppType, servicePrefix, state]
|
|
4601
|
+
[authorizedFetch, reload, resolvedAppType, resolvedFetch, servicePrefix, state]
|
|
4598
4602
|
);
|
|
4599
4603
|
return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(OpenXiangdaRuntimeContext.Provider, { value, children });
|
|
4600
4604
|
};
|
|
@@ -5142,14 +5146,14 @@ var usePublicAccess = (options = {}) => {
|
|
|
5142
5146
|
const {
|
|
5143
5147
|
appType: runtimeAppType,
|
|
5144
5148
|
servicePrefix: runtimeServicePrefix,
|
|
5145
|
-
|
|
5149
|
+
baseFetchImpl: runtimeBaseFetchImpl,
|
|
5146
5150
|
reload: reloadRuntime,
|
|
5147
5151
|
setAccessToken
|
|
5148
5152
|
} = runtime;
|
|
5149
5153
|
const {
|
|
5150
5154
|
appType = runtimeAppType,
|
|
5151
5155
|
servicePrefix = runtimeServicePrefix,
|
|
5152
|
-
fetchImpl =
|
|
5156
|
+
fetchImpl = runtimeBaseFetchImpl,
|
|
5153
5157
|
autoStart = true,
|
|
5154
5158
|
...sessionInput
|
|
5155
5159
|
} = options;
|