Skip to content

Commit 3ca6b21

Browse files
committed
Get rid of default exports
1 parent 6ca56f1 commit 3ca6b21

20 files changed

+52
-71
lines changed

packages/sdk-crypto/lib/CryptoProvider.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ export interface ProviderOptions {
44
inputEncoding?: string;
55
}
66

7-
interface CryptoProvider {
7+
export interface CryptoProvider {
88
sha256Digest(toHash: SourceData): Promise<Uint8Array>;
99
hmacSha256(toHash: SourceData, secret: SourceData): Promise<Uint8Array>;
1010
randomValues(length: number): Promise<Uint8Array>;

packages/sdk-crypto/lib/Ie11CryptoProvider/CryptoOperation.ts

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1-
import Key from "./Key";
1+
import {Key} from "./Key";
22

33
type EventHandler = (event: Event) => void;
44

5-
interface CryptoOperation {
5+
export interface CryptoOperation {
66
readonly algorithm: string;
77
readonly key: Key;
88
onabort: EventHandler;
@@ -15,5 +15,3 @@ interface CryptoOperation {
1515
finish(): void;
1616
process(buffer: ArrayBufferView): void;
1717
}
18-
19-
export default CryptoOperation;
Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,6 @@
1-
interface Key {
1+
export interface Key {
22
readonly algorithm: string;
33
readonly extractable: boolean;
44
readonly keyUsage: Array<string>;
55
readonly type: string;
66
}
7-
8-
export default Key;
Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,9 @@
1-
import Key from "./Key";
1+
import {Key} from "./Key";
22

33
type EventHandler = (event: Event) => void;
44

5-
interface KeyOperation {
5+
export interface KeyOperation {
66
oncomplete: EventHandler;
77
onerror: EventHandler;
88
readonly result: Key|undefined;
99
}
10-
11-
export default KeyOperation;

packages/sdk-crypto/lib/Ie11CryptoProvider/MsSubtleCrypto.ts

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
import CryptoOperation from './CryptoOperation';
2-
import Key from './Key';
3-
import KeyOperation from './KeyOperation';
1+
import {CryptoOperation} from './CryptoOperation';
2+
import {Key} from './Key';
3+
import {KeyOperation} from './KeyOperation';
44

55
export type KeyUsage = 'encrypt'|'decrypt'|'sign'|'verify'|'derive'|'wrap'|'unwrap';
66

@@ -19,7 +19,7 @@ interface HmacAlgorithm {
1919

2020
type SigningAlgorithm = HmacAlgorithm;
2121

22-
interface MsSubtleCrypto {
22+
export interface MsSubtleCrypto {
2323
decrypt(
2424
algorithm: Ie11EncryptionAlgorithm,
2525
key: Key,
@@ -69,5 +69,3 @@ interface MsSubtleCrypto {
6969
buffer?: ArrayBufferView
7070
): CryptoOperation;
7171
}
72-
73-
export default MsSubtleCrypto;

packages/sdk-crypto/lib/Ie11CryptoProvider/MsWindow.ts

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
import isNativeCode from '../isNativeCode';
2-
import MsSubtleCrypto from "./MsSubtleCrypto";
1+
import {isNativeCode} from '../isNativeCode';
2+
import {MsSubtleCrypto} from "./MsSubtleCrypto";
33
import {SubtleCryptoMethod} from "../supportsWebCrypto";
44

55
const msSubtleCryptoMethods: Array<SubtleCryptoMethod> = [
@@ -18,13 +18,11 @@ export interface MsCrypto {
1818
subtle: MsSubtleCrypto;
1919
}
2020

21-
interface MsWindow extends Window {
21+
export interface MsWindow extends Window {
2222
MSInputMethodContext: any;
2323
msCrypto: MsCrypto;
2424
}
2525

26-
export default MsWindow;
27-
2826
function quacksLikeAnMsWindow(window: Window): window is MsWindow {
2927
return 'MSInputMethodContext' in window &&
3028
'msCrypto' in window;

packages/sdk-crypto/lib/Ie11CryptoProvider/index.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
1-
import CryptoProvider, {ProviderOptions, SourceData} from "../CryptoProvider";
2-
import isEmptyData, {emptyDataSha256} from '../isEmptyData';
3-
import Key from './Key';
1+
import {CryptoProvider, ProviderOptions, SourceData} from "../CryptoProvider";
2+
import {isEmptyData, emptyDataSha256} from '../isEmptyData';
3+
import {Key} from './Key';
44
import {isMsWindow, MsCrypto} from './MsWindow';
55
import {KeyUsage} from "./MsSubtleCrypto";
66

7-
export default class Ie11CryptoProvider implements CryptoProvider {
7+
export class Ie11CryptoProvider implements CryptoProvider {
88
constructor(options: ProviderOptions = {}) {}
99

1010
sha256Digest(toHash: SourceData): Promise<Uint8Array> {

packages/sdk-crypto/lib/NodeCryptoProvider.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import CryptoProvider, {ProviderOptions, SourceData} from './CryptoProvider';
1+
import {CryptoProvider, ProviderOptions, SourceData} from './CryptoProvider';
22
import {
33
createHash,
44
createHmac,
@@ -8,7 +8,7 @@ import {
88

99
const SHA256 = 'sha256';
1010

11-
export default class NodeCryptoProvider implements CryptoProvider {
11+
export class NodeCryptoProvider implements CryptoProvider {
1212
private readonly encoding: Utf8AsciiLatin1Encoding;
1313

1414
constructor(options: ProviderOptions = {}) {

packages/sdk-crypto/lib/PureJsCryptoProvider.ts

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1-
import CryptoProvider, {SourceData, ProviderOptions} from './CryptoProvider';
2-
import isNativeCode from './isNativeCode';
1+
import {CryptoProvider, SourceData, ProviderOptions} from './CryptoProvider';
2+
import {isNativeCode} from './isNativeCode';
33
import * as sjcl from '../vendor/sjcl';
44

5-
export default class PureJsCryptoProvider implements CryptoProvider {
5+
export class PureJsCryptoProvider implements CryptoProvider {
66
constructor(options: ProviderOptions = {}) {}
77

88
hmacSha256(toHash: SourceData, secret: SourceData): Promise<Uint8Array> {
@@ -35,6 +35,7 @@ export default class PureJsCryptoProvider implements CryptoProvider {
3535
return getRandomValuesFromSjcl(length);
3636
}
3737
}
38+
3839
function getRandomValuesFromSjcl(byteLength: number): Promise<Uint8Array> {
3940
if (!sjcl.random.isReady()) {
4041
sjcl.random.startCollectors();

packages/sdk-crypto/lib/BrowserCryptoProvider.ts renamed to packages/sdk-crypto/lib/WebCryptoProvider.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
1-
import CryptoProvider, {ProviderOptions, SourceData} from "./CryptoProvider";
2-
import isEmptyData, {emptyDataSha256} from './isEmptyData';
1+
import {CryptoProvider, ProviderOptions, SourceData} from "./CryptoProvider";
2+
import {isEmptyData, emptyDataSha256} from './isEmptyData';
33

44
const SHA_256_HASH = {name: 'SHA-256'};
55
const SHA_256_HMAC_ALGO = {name: 'HMAC', hash: SHA_256_HASH};
66

7-
export default class BrowserCryptoProvider implements CryptoProvider {
7+
export class WebCryptoProvider implements CryptoProvider {
88
private readonly encoder: TextEncoding.TextEncoder|undefined;
99
private readonly inputEncoding: string;
1010

packages/sdk-crypto/lib/browser.ts

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1-
import BrowserCryptoProvider from "./BrowserCryptoProvider";
2-
import CryptoProvider, {ProviderOptions} from "./CryptoProvider";
3-
import Ie11CryptoProvider from './Ie11CryptoProvider';
4-
import PureJsCryptoProvider from "./PureJsCryptoProvider";
5-
import supportsWebCrypto from './supportsWebCrypto';
1+
import {WebCryptoProvider} from "./WebCryptoProvider";
2+
import {CryptoProvider, ProviderOptions} from "./CryptoProvider";
3+
import {Ie11CryptoProvider} from './Ie11CryptoProvider';
4+
import {PureJsCryptoProvider} from "./PureJsCryptoProvider";
5+
import {supportsWebCrypto} from './supportsWebCrypto';
66
import {isMsWindow} from './Ie11CryptoProvider/MsWindow';
77

88
const instanceCache: {[key: string]: CryptoProvider} = {};
@@ -22,7 +22,7 @@ function instantiateProvider(options: ProviderOptions): CryptoProvider {
2222
if (isMsWindow(window)) {
2323
return new Ie11CryptoProvider(options);
2424
} else if (supportsWebCrypto(window)) {
25-
return new BrowserCryptoProvider(options);
25+
return new WebCryptoProvider(options);
2626
}
2727

2828
return new PureJsCryptoProvider(options);

packages/sdk-crypto/lib/index.ts

Lines changed: 5 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,5 @@
1-
import CryptoProvider, {ProviderOptions} from "./CryptoProvider";
2-
import NodeCryptoProvider from "./NodeCryptoProvider";
3-
4-
const instanceCache: {[key: string]: CryptoProvider} = {};
5-
6-
export function getProviderInstance(
7-
options: ProviderOptions = {}
8-
): CryptoProvider {
9-
const cacheKey = `inputEncoding=${options.inputEncoding}`;
10-
if (!(cacheKey in instanceCache)) {
11-
instanceCache[cacheKey] = new NodeCryptoProvider(options);
12-
}
13-
14-
return instanceCache[cacheKey];
15-
}
1+
export * from './WebCryptoProvider';
2+
export * from './CryptoProvider';
3+
export * from './Ie11CryptoProvider';
4+
export * from './NodeCryptoProvider';
5+
export * from './PureJsCryptoProvider';

packages/sdk-crypto/lib/isEmptyData.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import {SourceData} from "./CryptoProvider";
22

3-
export default function isEmptyData(data: SourceData): boolean {
3+
export function isEmptyData(data: SourceData): boolean {
44
if (typeof data === 'string') {
55
return data.length === 0;
66
}

packages/sdk-crypto/lib/isNativeCode.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
const nativeCodeRegex = /\[native code]/;
2-
export default function isNativeCode(func: Function): boolean {
2+
3+
export function isNativeCode(func: Function): boolean {
34
try {
45
if (nativeCodeRegex.test(Function.prototype.toString.call(func))) {
56
return true;

packages/sdk-crypto/lib/supportsWebCrypto.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import isNativeCode from "./isNativeCode";
1+
import {isNativeCode} from "./isNativeCode";
22

33
export type SubtleCryptoMethod = 'decrypt'|'digest'|'encrypt'|'exportKey'|'generateKey'|'importKey'|'sign'|'verify';
44

@@ -13,7 +13,7 @@ const subtleCryptoMethods: Array<SubtleCryptoMethod> = [
1313
'verify',
1414
];
1515

16-
export default function supportsWebCrypto(window: Window): boolean {
16+
export function supportsWebCrypto(window: Window): boolean {
1717
if (
1818
typeof window === 'object' &&
1919
typeof window.crypto === 'object' &&

packages/sdk-crypto/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,6 @@
3232
"karma-safari-launcher": "^1.0.0",
3333
"mocha": "^3.2.0",
3434
"sjcl": "^1.0.6",
35-
"typescript": "^2.2.2"
35+
"typescript": "^2.3"
3636
}
3737
}

packages/sdk-crypto/test/BrowserCryptoProviderTests.ts

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
/// <reference types="mocha"/>
22

3-
import BrowserCryptoProvider from '../lib/BrowserCryptoProvider';
4-
import CryptoProvider from "../lib/CryptoProvider";
5-
import supportsWebCrypto from '../lib/supportsWebCrypto';
3+
import {WebCryptoProvider} from '../lib/WebCryptoProvider';
4+
import {CryptoProvider} from "../lib/CryptoProvider";
5+
import {supportsWebCrypto} from '../lib/supportsWebCrypto';
66
import {
77
HASH_TEST_CASES,
88
hexEncode,
@@ -11,15 +11,15 @@ import {
1111
} from './TestCases';
1212
import {expect} from 'chai';
1313

14-
describe('BrowserCryptoProvider', function () {
14+
describe('WebCryptoProvider', function () {
1515
let instance: CryptoProvider;
1616
before(function () {
1717
if (
1818
!isNode() &&
1919
typeof window !== 'undefined' &&
2020
supportsWebCrypto(window)
2121
) {
22-
instance = new BrowserCryptoProvider();
22+
instance = new WebCryptoProvider();
2323
} else {
2424
this.skip();
2525
}

packages/sdk-crypto/test/Ie11CryptoProviderTests.ts

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
/// <reference types="chai"/>
2-
3-
import CryptoProvider from "../lib/CryptoProvider";
4-
import Ie11CryptoProvider from "../lib/Ie11CryptoProvider/index";
2+
import {CryptoProvider} from "../lib/CryptoProvider";
3+
import {Ie11CryptoProvider} from "../lib/Ie11CryptoProvider/index";
54
import {
65
HASH_TEST_CASES,
76
hexEncode,

packages/sdk-crypto/test/NodeCryptoProviderTests.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import NodeCryptoProvider from '../lib/NodeCryptoProvider';
1+
import {NodeCryptoProvider} from '../lib/NodeCryptoProvider';
22
import {
33
HASH_TEST_CASES,
44
hexEncode,

packages/sdk-crypto/test/PureJsCryptoProviderTests.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import PureJsCryptoProvider from '../lib/PureJsCryptoProvider';
1+
import {PureJsCryptoProvider} from '../lib/PureJsCryptoProvider';
22
import {
33
HASH_TEST_CASES,
44
hexEncode,

0 commit comments

Comments
 (0)