mirror of
https://github.com/lensapp/lens.git
synced 2025-05-20 05:10:56 +00:00
- Add distinction between `getInstance` and `getInstanceOrCreate` since it is not always possible to create an instance (since you might not know the correct arguments) - Remove all the `export const *Store = *Store.getInstance<*Store>();` calls as it defeats the purpose of `Singleton`. Plus with the typing changes the appropriate `*Store.getInstance()` is "short enough". - Special case the two extension export facades to not need to use `getInstanceOrCreate`. Plus since they are just facades it is always possible to create them. - Move some other types to be also `Singleton`'s: ExtensionLoader, ExtensionDiscovery, ThemeStore, LocalizationStore, ... - Fixed dev-run always using the same port with electron inspect - Update Store documentation with new recommendations about creating instances of singletons - Fix all unit tests to create their dependent singletons Signed-off-by: Sebastian Malton <sebastian@malton.name>
30 lines
757 B
TypeScript
30 lines
757 B
TypeScript
import request from "request";
|
|
import requestPromise from "request-promise-native";
|
|
import { UserStore } from "./user-store";
|
|
|
|
// todo: get rid of "request" (deprecated)
|
|
// https://github.com/lensapp/lens/issues/459
|
|
|
|
function getDefaultRequestOpts(): Partial<request.Options> {
|
|
const { httpsProxy, allowUntrustedCAs } = UserStore.getInstance().preferences;
|
|
|
|
return {
|
|
proxy: httpsProxy || undefined,
|
|
rejectUnauthorized: !allowUntrustedCAs,
|
|
};
|
|
}
|
|
|
|
/**
|
|
* @deprecated
|
|
*/
|
|
export function customRequest(opts: request.Options) {
|
|
return request.defaults(getDefaultRequestOpts())(opts);
|
|
}
|
|
|
|
/**
|
|
* @deprecated
|
|
*/
|
|
export function customRequestPromise(opts: requestPromise.Options) {
|
|
return requestPromise.defaults(getDefaultRequestOpts())(opts);
|
|
}
|