fix: 修复配额说明重复和undefined问题
- 在editStorageForm中初始化oss_storage_quota_value和oss_quota_unit - 删除重复的旧配额说明块,保留新的当前配额设置显示 Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
117
backend/node_modules/@smithy/property-provider/dist-cjs/index.js
generated
vendored
Normal file
117
backend/node_modules/@smithy/property-provider/dist-cjs/index.js
generated
vendored
Normal file
@@ -0,0 +1,117 @@
|
||||
'use strict';
|
||||
|
||||
class ProviderError extends Error {
|
||||
name = "ProviderError";
|
||||
tryNextLink;
|
||||
constructor(message, options = true) {
|
||||
let logger;
|
||||
let tryNextLink = true;
|
||||
if (typeof options === "boolean") {
|
||||
logger = undefined;
|
||||
tryNextLink = options;
|
||||
}
|
||||
else if (options != null && typeof options === "object") {
|
||||
logger = options.logger;
|
||||
tryNextLink = options.tryNextLink ?? true;
|
||||
}
|
||||
super(message);
|
||||
this.tryNextLink = tryNextLink;
|
||||
Object.setPrototypeOf(this, ProviderError.prototype);
|
||||
logger?.debug?.(`@smithy/property-provider ${tryNextLink ? "->" : "(!)"} ${message}`);
|
||||
}
|
||||
static from(error, options = true) {
|
||||
return Object.assign(new this(error.message, options), error);
|
||||
}
|
||||
}
|
||||
|
||||
class CredentialsProviderError extends ProviderError {
|
||||
name = "CredentialsProviderError";
|
||||
constructor(message, options = true) {
|
||||
super(message, options);
|
||||
Object.setPrototypeOf(this, CredentialsProviderError.prototype);
|
||||
}
|
||||
}
|
||||
|
||||
class TokenProviderError extends ProviderError {
|
||||
name = "TokenProviderError";
|
||||
constructor(message, options = true) {
|
||||
super(message, options);
|
||||
Object.setPrototypeOf(this, TokenProviderError.prototype);
|
||||
}
|
||||
}
|
||||
|
||||
const chain = (...providers) => async () => {
|
||||
if (providers.length === 0) {
|
||||
throw new ProviderError("No providers in chain");
|
||||
}
|
||||
let lastProviderError;
|
||||
for (const provider of providers) {
|
||||
try {
|
||||
const credentials = await provider();
|
||||
return credentials;
|
||||
}
|
||||
catch (err) {
|
||||
lastProviderError = err;
|
||||
if (err?.tryNextLink) {
|
||||
continue;
|
||||
}
|
||||
throw err;
|
||||
}
|
||||
}
|
||||
throw lastProviderError;
|
||||
};
|
||||
|
||||
const fromStatic = (staticValue) => () => Promise.resolve(staticValue);
|
||||
|
||||
const memoize = (provider, isExpired, requiresRefresh) => {
|
||||
let resolved;
|
||||
let pending;
|
||||
let hasResult;
|
||||
let isConstant = false;
|
||||
const coalesceProvider = async () => {
|
||||
if (!pending) {
|
||||
pending = provider();
|
||||
}
|
||||
try {
|
||||
resolved = await pending;
|
||||
hasResult = true;
|
||||
isConstant = false;
|
||||
}
|
||||
finally {
|
||||
pending = undefined;
|
||||
}
|
||||
return resolved;
|
||||
};
|
||||
if (isExpired === undefined) {
|
||||
return async (options) => {
|
||||
if (!hasResult || options?.forceRefresh) {
|
||||
resolved = await coalesceProvider();
|
||||
}
|
||||
return resolved;
|
||||
};
|
||||
}
|
||||
return async (options) => {
|
||||
if (!hasResult || options?.forceRefresh) {
|
||||
resolved = await coalesceProvider();
|
||||
}
|
||||
if (isConstant) {
|
||||
return resolved;
|
||||
}
|
||||
if (requiresRefresh && !requiresRefresh(resolved)) {
|
||||
isConstant = true;
|
||||
return resolved;
|
||||
}
|
||||
if (isExpired(resolved)) {
|
||||
await coalesceProvider();
|
||||
return resolved;
|
||||
}
|
||||
return resolved;
|
||||
};
|
||||
};
|
||||
|
||||
exports.CredentialsProviderError = CredentialsProviderError;
|
||||
exports.ProviderError = ProviderError;
|
||||
exports.TokenProviderError = TokenProviderError;
|
||||
exports.chain = chain;
|
||||
exports.fromStatic = fromStatic;
|
||||
exports.memoize = memoize;
|
||||
Reference in New Issue
Block a user