@axa-fr/react-oidc 6.14.4 → 6.14.5

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.
@@ -1 +1 @@
1
- {"version":3,"file":"crypto.d.ts","sourceRoot":"","sources":["../../src/oidc/vanilla/crypto.ts"],"names":[],"mappings":"AAqBA,eAAO,MAAM,cAAc,SAAU,MAAM,WAWxC,CAAC;AAEJ,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,cAQzC;AACC,eAAO,MAAM,oBAAoB,SAAU,MAAM,KAAG,QAAQ,MAAM,CAanE,CAAC"}
1
+ {"version":3,"file":"crypto.d.ts","sourceRoot":"","sources":["../../src/oidc/vanilla/crypto.ts"],"names":[],"mappings":"AAwBA,eAAO,MAAM,cAAc,SAAU,MAAM,WAYxC,CAAC;AAEJ,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,cAQzC;AACC,eAAO,MAAM,oBAAoB,SAAU,MAAM,KAAG,QAAQ,MAAM,CAcnE,CAAC"}
@@ -25,8 +25,11 @@ var __importStar = (this && this.__importStar) || function (mod) {
25
25
  Object.defineProperty(exports, "__esModule", { value: true });
26
26
  exports.deriveChallengeAsync = exports.textEncodeLite = exports.generateRandom = void 0;
27
27
  const base64 = __importStar(require("base64-js"));
28
- const hasCrypto = typeof window !== 'undefined' && !!window.crypto;
29
- const hasSubtleCrypto = hasCrypto && !!window.crypto.subtle;
28
+ const crytoInfo = () => {
29
+ const hasCrypto = typeof window !== 'undefined' && !!window.crypto;
30
+ const hasSubtleCrypto = hasCrypto && !!window.crypto.subtle;
31
+ return { hasCrypto, hasSubtleCrypto };
32
+ };
30
33
  const charset = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
31
34
  const bufferToString = (buffer) => {
32
35
  const state = [];
@@ -43,6 +46,7 @@ const urlSafe = (buffer) => {
43
46
  };
44
47
  const generateRandom = (size) => {
45
48
  const buffer = new Uint8Array(size);
49
+ const { hasCrypto } = crytoInfo();
46
50
  if (hasCrypto) {
47
51
  window.crypto.getRandomValues(buffer);
48
52
  }
@@ -68,6 +72,7 @@ const deriveChallengeAsync = (code) => {
68
72
  if (code.length < 43 || code.length > 128) {
69
73
  return Promise.reject(new Error('Invalid code length.'));
70
74
  }
75
+ const { hasSubtleCrypto } = crytoInfo();
71
76
  if (!hasSubtleCrypto) {
72
77
  return Promise.reject(new Error('window.crypto.subtle is unavailable.'));
73
78
  }
@@ -1 +1 @@
1
- {"version":3,"file":"crypto.js","sourceRoot":"","sources":["../../src/oidc/vanilla/crypto.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"crypto.js","sourceRoot":"","sources":["../../src/oidc/vanilla/crypto.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@axa-fr/react-oidc",
3
- "version": "6.14.4",
3
+ "version": "6.14.5",
4
4
  "private": false,
5
5
  "main": "dist/index.js",
6
6
  "jsnext:main": "dist/index.js",
@@ -26,6 +26,7 @@
26
26
  "oauth2",
27
27
  "oauth",
28
28
  "react",
29
+ "nextjs",
29
30
  "next"
30
31
  ],
31
32
  "scripts": {
@@ -1,7 +1,10 @@
1
1
  import * as base64 from 'base64-js';
2
2
 
3
- const hasCrypto = typeof window !== 'undefined' && !!(window.crypto as any);
4
- const hasSubtleCrypto = hasCrypto && !!(window.crypto.subtle as any);
3
+ const crytoInfo = () => {
4
+ const hasCrypto = typeof window !== 'undefined' && !!(window.crypto as any);
5
+ const hasSubtleCrypto = hasCrypto && !!(window.crypto.subtle as any);
6
+ return { hasCrypto, hasSubtleCrypto };
7
+ };
5
8
  const charset = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
6
9
 
7
10
  const bufferToString = (buffer: Uint8Array) => {
@@ -21,6 +24,7 @@ const urlSafe = (buffer: Uint8Array): string => {
21
24
 
22
25
  export const generateRandom = (size: number) => {
23
26
  const buffer = new Uint8Array(size);
27
+ const { hasCrypto } = crytoInfo();
24
28
  if (hasCrypto) {
25
29
  window.crypto.getRandomValues(buffer);
26
30
  } else {
@@ -45,6 +49,7 @@ export function textEncodeLite(str: string) {
45
49
  if (code.length < 43 || code.length > 128) {
46
50
  return Promise.reject(new Error('Invalid code length.'));
47
51
  }
52
+ const { hasSubtleCrypto } = crytoInfo();
48
53
  if (!hasSubtleCrypto) {
49
54
  return Promise.reject(new Error('window.crypto.subtle is unavailable.'));
50
55
  }