@avantmedia/id-react 0.0.2 → 0.0.4
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/dist/assert.d.ts +3 -0
- package/dist/assert.d.ts.map +1 -0
- package/dist/assert.js +7 -0
- package/dist/assert.js.map +1 -0
- package/dist/assert.test.d.ts +2 -0
- package/dist/assert.test.d.ts.map +1 -0
- package/dist/assert.test.js +88 -0
- package/dist/assert.test.js.map +1 -0
- package/dist/hooks.d.ts +1 -1
- package/dist/hooks.js +1 -1
- package/dist/hooks.js.map +1 -1
- package/dist/index.d.ts +4 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -3
- package/dist/index.js.map +1 -1
- package/dist/pkce.d.ts.map +1 -1
- package/dist/pkce.js +22 -8
- package/dist/pkce.js.map +1 -1
- package/dist/provider.d.ts +2 -2
- package/dist/provider.d.ts.map +1 -1
- package/dist/provider.js +78 -53
- package/dist/provider.js.map +1 -1
- package/dist/types.d.ts.map +1 -1
- package/package.json +4 -4
package/dist/assert.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"assert.d.ts","sourceRoot":"","sources":["../src/assert.ts"],"names":[],"mappings":"AAAA,iBAAS,MAAM,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,GAAG,SAAqB,GAAG,OAAO,CAAC,SAAS,CAI5E;AAED,eAAe,MAAM,CAAC"}
|
package/dist/assert.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"assert.js","sourceRoot":"","sources":["../src/assert.ts"],"names":[],"mappings":"AAAA,SAAS,MAAM,CAAI,SAAY,EAAE,GAAG,GAAG,kBAAkB;IACrD,IAAI,CAAC,SAAS,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;AACL,CAAC;AAED,eAAe,MAAM,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"assert.test.d.ts","sourceRoot":"","sources":["../src/assert.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import { describe, expect, test } from 'vitest';
|
|
2
|
+
import assert from './assert';
|
|
3
|
+
describe('assert', () => {
|
|
4
|
+
test('should not throw when condition is truthy', () => {
|
|
5
|
+
expect(() => assert(true)).not.toThrow();
|
|
6
|
+
expect(() => assert(1)).not.toThrow();
|
|
7
|
+
expect(() => assert('non-empty string')).not.toThrow();
|
|
8
|
+
expect(() => assert({})).not.toThrow();
|
|
9
|
+
expect(() => assert([])).not.toThrow();
|
|
10
|
+
expect(() => assert(() => true)).not.toThrow();
|
|
11
|
+
});
|
|
12
|
+
test('should throw when condition is falsy', () => {
|
|
13
|
+
expect(() => assert(false)).toThrow('Assertion failed');
|
|
14
|
+
expect(() => assert(0)).toThrow('Assertion failed');
|
|
15
|
+
expect(() => assert('')).toThrow('Assertion failed');
|
|
16
|
+
expect(() => assert(null)).toThrow('Assertion failed');
|
|
17
|
+
expect(() => assert(undefined)).toThrow('Assertion failed');
|
|
18
|
+
expect(() => assert(NaN)).toThrow('Assertion failed');
|
|
19
|
+
});
|
|
20
|
+
test('should throw Error instance', () => {
|
|
21
|
+
try {
|
|
22
|
+
assert(false);
|
|
23
|
+
}
|
|
24
|
+
catch (error) {
|
|
25
|
+
expect(error).toBeInstanceOf(Error);
|
|
26
|
+
}
|
|
27
|
+
});
|
|
28
|
+
test('should use default error message when no message provided', () => {
|
|
29
|
+
expect(() => assert(false)).toThrow('Assertion failed');
|
|
30
|
+
});
|
|
31
|
+
test('should use custom error message when provided', () => {
|
|
32
|
+
const customMessage = 'Custom assertion error';
|
|
33
|
+
expect(() => assert(false, customMessage)).toThrow(customMessage);
|
|
34
|
+
});
|
|
35
|
+
test('should work with complex conditions', () => {
|
|
36
|
+
const obj = { prop: 'value' };
|
|
37
|
+
const arr = [1, 2, 3];
|
|
38
|
+
expect(() => assert(obj.prop === 'value')).not.toThrow();
|
|
39
|
+
expect(() => assert(arr.length > 0)).not.toThrow();
|
|
40
|
+
expect(() => assert(arr.includes(2))).not.toThrow();
|
|
41
|
+
expect(() => assert(obj.prop === 'wrong')).toThrow();
|
|
42
|
+
expect(() => assert(arr.length === 0)).toThrow();
|
|
43
|
+
expect(() => assert(arr.includes(999))).toThrow();
|
|
44
|
+
});
|
|
45
|
+
test('should work as type guard', () => {
|
|
46
|
+
// Use a deterministic value to avoid non-determinism in tests
|
|
47
|
+
const value = 'test';
|
|
48
|
+
if (value !== null) {
|
|
49
|
+
assert(value, 'Value should not be null');
|
|
50
|
+
// After assertion, TypeScript should know that value is string
|
|
51
|
+
expect(typeof value).toBe('string');
|
|
52
|
+
expect(value.toLowerCase()).toBe(value.toLowerCase()); // This wouldn't compile if value could be null
|
|
53
|
+
}
|
|
54
|
+
});
|
|
55
|
+
test('should work with function conditions', () => {
|
|
56
|
+
const isValid = (val) => val > 0;
|
|
57
|
+
expect(() => assert(isValid(5))).not.toThrow();
|
|
58
|
+
expect(() => assert(isValid(-1))).toThrow();
|
|
59
|
+
});
|
|
60
|
+
test('should preserve original condition value in type narrowing', () => {
|
|
61
|
+
function testFunction(input) {
|
|
62
|
+
assert(typeof input === 'string', 'Input must be a string');
|
|
63
|
+
// TypeScript should now know input is a string
|
|
64
|
+
return input.toUpperCase();
|
|
65
|
+
}
|
|
66
|
+
expect(testFunction('hello')).toBe('HELLO');
|
|
67
|
+
expect(() => testFunction(123)).toThrow('Input must be a string');
|
|
68
|
+
});
|
|
69
|
+
test('should work with array type narrowing', () => {
|
|
70
|
+
function processArray(input) {
|
|
71
|
+
assert(Array.isArray(input), 'Input must be an array');
|
|
72
|
+
// TypeScript should now know input is an array
|
|
73
|
+
return input.length;
|
|
74
|
+
}
|
|
75
|
+
expect(processArray([1, 2, 3])).toBe(3);
|
|
76
|
+
expect(() => processArray('not an array')).toThrow('Input must be an array');
|
|
77
|
+
});
|
|
78
|
+
test('should work with object property existence', () => {
|
|
79
|
+
function getUserName(user) {
|
|
80
|
+
assert(user.name, 'User must have a name');
|
|
81
|
+
// TypeScript should now know user.name is defined
|
|
82
|
+
return user.name.toUpperCase();
|
|
83
|
+
}
|
|
84
|
+
expect(getUserName({ id: 1, name: 'John' })).toBe('JOHN');
|
|
85
|
+
expect(() => getUserName({ id: 1 })).toThrow('User must have a name');
|
|
86
|
+
});
|
|
87
|
+
});
|
|
88
|
+
//# sourceMappingURL=assert.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"assert.test.js","sourceRoot":"","sources":["../src/assert.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAChD,OAAO,MAAM,MAAM,UAAU,CAAC;AAE9B,QAAQ,CAAC,QAAQ,EAAE,GAAG,EAAE;IACpB,IAAI,CAAC,2CAA2C,EAAE,GAAG,EAAE;QACnD,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;QACzC,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;QACtC,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;QACvD,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;QACvC,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;QACvC,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,sCAAsC,EAAE,GAAG,EAAE;QAC9C,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;QACxD,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;QACpD,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;QACrD,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;QACvD,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;QAC5D,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAC1D,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,6BAA6B,EAAE,GAAG,EAAE;QACrC,IAAI,CAAC;YACD,MAAM,CAAC,KAAK,CAAC,CAAC;QAClB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,CAAC,KAAK,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;QACxC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,2DAA2D,EAAE,GAAG,EAAE;QACnE,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAC5D,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,+CAA+C,EAAE,GAAG,EAAE;QACvD,MAAM,aAAa,GAAG,wBAAwB,CAAC;QAC/C,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IACtE,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,qCAAqC,EAAE,GAAG,EAAE;QAC7C,MAAM,GAAG,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;QAC9B,MAAM,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QAEtB,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;QACzD,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;QACnD,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;QAEpD,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;QACrD,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;QACjD,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;IACtD,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,2BAA2B,EAAE,GAAG,EAAE;QACnC,8DAA8D;QAC9D,MAAM,KAAK,GAAkB,MAAM,CAAC;QAEpC,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YACjB,MAAM,CAAC,KAAK,EAAE,0BAA0B,CAAC,CAAC;YAC1C,+DAA+D;YAC/D,MAAM,CAAC,OAAO,KAAK,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACpC,MAAM,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,+CAA+C;QAC1G,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,sCAAsC,EAAE,GAAG,EAAE;QAC9C,MAAM,OAAO,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC;QAEzC,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;QAC/C,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;IAChD,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,4DAA4D,EAAE,GAAG,EAAE;QACpE,SAAS,YAAY,CAAC,KAAc;YAChC,MAAM,CAAC,OAAO,KAAK,KAAK,QAAQ,EAAE,wBAAwB,CAAC,CAAC;YAC5D,+CAA+C;YAC/C,OAAO,KAAK,CAAC,WAAW,EAAE,CAAC;QAC/B,CAAC;QAED,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC5C,MAAM,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC;IACtE,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,uCAAuC,EAAE,GAAG,EAAE;QAC/C,SAAS,YAAY,CAAC,KAAc;YAChC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,wBAAwB,CAAC,CAAC;YACvD,+CAA+C;YAC/C,OAAO,KAAK,CAAC,MAAM,CAAC;QACxB,CAAC;QAED,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACxC,MAAM,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC,CAAC,OAAO,CAC9C,wBAAwB,CAC3B,CAAC;IACN,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,4CAA4C,EAAE,GAAG,EAAE;QAMpD,SAAS,WAAW,CAAC,IAAU;YAC3B,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,uBAAuB,CAAC,CAAC;YAC3C,kDAAkD;YAClD,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;QACnC,CAAC;QAED,MAAM,CAAC,WAAW,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC1D,MAAM,CAAC,GAAG,EAAE,CAAC,WAAW,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC;IAC1E,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
|
package/dist/hooks.d.ts
CHANGED
package/dist/hooks.js
CHANGED
package/dist/hooks.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hooks.js","sourceRoot":"","sources":["../src/hooks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAG5C;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,OAAO;
|
|
1
|
+
{"version":3,"file":"hooks.js","sourceRoot":"","sources":["../src/hooks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAG5C;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,OAAO;IACnB,MAAM,EAAE,MAAM,EAAE,GAAG,SAAS,EAAE,GAAG,cAAc,EAAE,CAAC;IAClD,OAAO,SAAS,CAAC;AACrB,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export { AvantIdProvider } from
|
|
2
|
-
export { useAuth } from
|
|
3
|
-
export type { AvantIdConfig, User, TokenResponse, AuthState
|
|
4
|
-
export { generateCodeVerifier, generateCodeChallenge
|
|
1
|
+
export { AvantIdProvider } from './provider';
|
|
2
|
+
export { useAuth } from './hooks';
|
|
3
|
+
export type { AvantIdConfig, User, TokenResponse, AuthState } from './types';
|
|
4
|
+
export { generateCodeVerifier, generateCodeChallenge } from './pkce';
|
|
5
5
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAG7C,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAGlC,YAAY,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAG7C,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAGlC,YAAY,EAAE,aAAa,EAAE,IAAI,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAG7E,OAAO,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,QAAQ,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// Components
|
|
2
|
-
export { AvantIdProvider } from
|
|
2
|
+
export { AvantIdProvider } from './provider';
|
|
3
3
|
// Hooks
|
|
4
|
-
export { useAuth } from
|
|
4
|
+
export { useAuth } from './hooks';
|
|
5
5
|
// PKCE utilities (for advanced use cases)
|
|
6
|
-
export { generateCodeVerifier, generateCodeChallenge
|
|
6
|
+
export { generateCodeVerifier, generateCodeChallenge } from './pkce';
|
|
7
7
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,aAAa;AACb,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE7C,QAAQ;AACR,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,aAAa;AACb,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE7C,QAAQ;AACR,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAKlC,0CAA0C;AAC1C,OAAO,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,QAAQ,CAAC"}
|
package/dist/pkce.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pkce.d.ts","sourceRoot":"","sources":["../src/pkce.ts"],"names":[],"mappings":"AAAA;;;GAGG;
|
|
1
|
+
{"version":3,"file":"pkce.d.ts","sourceRoot":"","sources":["../src/pkce.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAeH;;;GAGG;AACH,wBAAgB,oBAAoB,IAAI,MAAM,CAI7C;AAED;;;GAGG;AACH,wBAAsB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAc7E;AAgBD;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAExD;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,MAAM,GAAG,IAAI,CAIpD;AAED;;GAEG;AACH,wBAAgB,aAAa,IAAI,MAAM,CAMtC;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAIlD"}
|
package/dist/pkce.js
CHANGED
|
@@ -2,13 +2,25 @@
|
|
|
2
2
|
* PKCE (Proof Key for Code Exchange) utilities
|
|
3
3
|
* Used to secure the OAuth2 authorization code flow for SPAs
|
|
4
4
|
*/
|
|
5
|
+
/**
|
|
6
|
+
* Get the crypto object, checking for availability
|
|
7
|
+
*/
|
|
8
|
+
function getCrypto() {
|
|
9
|
+
if (typeof globalThis !== 'undefined' && globalThis.crypto) {
|
|
10
|
+
return globalThis.crypto;
|
|
11
|
+
}
|
|
12
|
+
if (typeof window !== 'undefined' && window.crypto) {
|
|
13
|
+
return window.crypto;
|
|
14
|
+
}
|
|
15
|
+
throw new Error('Web Crypto API is not available');
|
|
16
|
+
}
|
|
5
17
|
/**
|
|
6
18
|
* Generate a cryptographically random code verifier
|
|
7
19
|
* Must be between 43 and 128 characters
|
|
8
20
|
*/
|
|
9
21
|
export function generateCodeVerifier() {
|
|
10
22
|
const array = new Uint8Array(32);
|
|
11
|
-
|
|
23
|
+
getCrypto().getRandomValues(array);
|
|
12
24
|
return base64UrlEncode(array);
|
|
13
25
|
}
|
|
14
26
|
/**
|
|
@@ -16,9 +28,14 @@ export function generateCodeVerifier() {
|
|
|
16
28
|
* SHA256 hash of verifier, base64url encoded
|
|
17
29
|
*/
|
|
18
30
|
export async function generateCodeChallenge(verifier) {
|
|
31
|
+
const cryptoObj = getCrypto();
|
|
32
|
+
if (!cryptoObj.subtle) {
|
|
33
|
+
throw new Error('crypto.subtle is not available. This usually means you are not using HTTPS. ' +
|
|
34
|
+
'The Web Crypto API requires a secure context (HTTPS or localhost).');
|
|
35
|
+
}
|
|
19
36
|
const encoder = new TextEncoder();
|
|
20
37
|
const data = encoder.encode(verifier);
|
|
21
|
-
const hash = await
|
|
38
|
+
const hash = await cryptoObj.subtle.digest('SHA-256', data);
|
|
22
39
|
return base64UrlEncode(new Uint8Array(hash));
|
|
23
40
|
}
|
|
24
41
|
/**
|
|
@@ -26,16 +43,13 @@ export async function generateCodeChallenge(verifier) {
|
|
|
26
43
|
*/
|
|
27
44
|
function base64UrlEncode(buffer) {
|
|
28
45
|
const base64 = btoa(String.fromCharCode(...buffer));
|
|
29
|
-
return base64
|
|
30
|
-
.replace(/\+/g, "-")
|
|
31
|
-
.replace(/\//g, "_")
|
|
32
|
-
.replace(/=+$/, "");
|
|
46
|
+
return base64.replace(/\+/g, '-').replace(/\//g, '_').replace(/=+$/, '');
|
|
33
47
|
}
|
|
34
48
|
/**
|
|
35
49
|
* Storage keys for PKCE state
|
|
36
50
|
*/
|
|
37
|
-
const VERIFIER_KEY =
|
|
38
|
-
const STATE_KEY =
|
|
51
|
+
const VERIFIER_KEY = 'avant_id_pkce_verifier';
|
|
52
|
+
const STATE_KEY = 'avant_id_oauth_state';
|
|
39
53
|
/**
|
|
40
54
|
* Store code verifier in sessionStorage for later retrieval
|
|
41
55
|
*/
|
package/dist/pkce.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pkce.js","sourceRoot":"","sources":["../src/pkce.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;GAGG;AACH,MAAM,UAAU,oBAAoB;
|
|
1
|
+
{"version":3,"file":"pkce.js","sourceRoot":"","sources":["../src/pkce.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;GAEG;AACH,SAAS,SAAS;IACd,IAAI,OAAO,UAAU,KAAK,WAAW,IAAI,UAAU,CAAC,MAAM,EAAE,CAAC;QACzD,OAAO,UAAU,CAAC,MAAM,CAAC;IAC7B,CAAC;IACD,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;QACjD,OAAO,MAAM,CAAC,MAAM,CAAC;IACzB,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;AACvD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,oBAAoB;IAChC,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC;IACjC,SAAS,EAAE,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;IACnC,OAAO,eAAe,CAAC,KAAK,CAAC,CAAC;AAClC,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,QAAgB;IACxD,MAAM,SAAS,GAAG,SAAS,EAAE,CAAC;IAE9B,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CACX,8EAA8E;YAC1E,oEAAoE,CAC3E,CAAC;IACN,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC;IAClC,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACtC,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IAC5D,OAAO,eAAe,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;AACjD,CAAC;AAED;;GAEG;AACH,SAAS,eAAe,CAAC,MAAkB;IACvC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC;IACpD,OAAO,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;AAC7E,CAAC;AAED;;GAEG;AACH,MAAM,YAAY,GAAG,wBAAwB,CAAC;AAC9C,MAAM,SAAS,GAAG,sBAAsB,CAAC;AAEzC;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAAC,QAAgB;IAC9C,cAAc,CAAC,OAAO,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;AACnD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,oBAAoB;IAChC,MAAM,QAAQ,GAAG,cAAc,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IACtD,cAAc,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;IACxC,OAAO,QAAQ,CAAC;AACpB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa;IACzB,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC;IACjC,MAAM,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;IAC9B,MAAM,KAAK,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;IACrC,cAAc,CAAC,OAAO,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IACzC,OAAO,KAAK,CAAC;AACjB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,KAAa;IACrC,MAAM,WAAW,GAAG,cAAc,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACtD,cAAc,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;IACrC,OAAO,WAAW,KAAK,KAAK,CAAC;AACjC,CAAC"}
|
package/dist/provider.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { type ReactNode } from
|
|
2
|
-
import type {
|
|
1
|
+
import { type ReactNode } from 'react';
|
|
2
|
+
import type { AuthContextState, AvantIdConfig } from './types';
|
|
3
3
|
interface AvantIdProviderProps {
|
|
4
4
|
children: ReactNode;
|
|
5
5
|
config: AvantIdConfig;
|
package/dist/provider.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../src/provider.tsx"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../src/provider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAuE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAU5G,OAAO,KAAK,EAAE,gBAAgB,EAAE,aAAa,EAAuB,MAAM,SAAS,CAAC;AAkBpF,UAAU,oBAAoB;IAC1B,QAAQ,EAAE,SAAS,CAAC;IACpB,MAAM,EAAE,aAAa,CAAC;CACzB;AAED,wBAAgB,eAAe,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,oBAAoB,2CA2RzE;AAED,wBAAgB,cAAc,IAAI,gBAAgB,CAIjD"}
|
package/dist/provider.js
CHANGED
|
@@ -1,37 +1,51 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { createContext,
|
|
3
|
-
import
|
|
2
|
+
import { createContext, useCallback, useContext, useEffect, useRef, useState } from 'react';
|
|
3
|
+
import assert from './assert';
|
|
4
|
+
import { generateCodeChallenge, generateCodeVerifier, generateState, retrieveCodeVerifier, storeCodeVerifier, verifyState, } from './pkce';
|
|
4
5
|
const AuthContext = createContext(null);
|
|
6
|
+
function normalizeTokenResponse(raw) {
|
|
7
|
+
return {
|
|
8
|
+
access_token: raw.access_token ?? raw.accessToken,
|
|
9
|
+
refresh_token: raw.refresh_token ?? raw.refreshToken,
|
|
10
|
+
token_type: raw.token_type ?? raw.tokenType,
|
|
11
|
+
expires_in: raw.expires_in ?? raw.expiresIn,
|
|
12
|
+
};
|
|
13
|
+
}
|
|
5
14
|
// Token storage keys
|
|
6
|
-
const ACCESS_TOKEN_KEY =
|
|
7
|
-
const REFRESH_TOKEN_KEY =
|
|
8
|
-
const TOKEN_EXPIRY_KEY =
|
|
15
|
+
const ACCESS_TOKEN_KEY = 'avant_id_access_token';
|
|
16
|
+
const REFRESH_TOKEN_KEY = 'avant_id_refresh_token';
|
|
17
|
+
const TOKEN_EXPIRY_KEY = 'avant_id_token_expiry';
|
|
9
18
|
export function AvantIdProvider({ children, config }) {
|
|
10
19
|
const [user, setUser] = useState(null);
|
|
11
20
|
const [isLoading, setIsLoading] = useState(true);
|
|
12
|
-
const [
|
|
21
|
+
const [, setAccessToken] = useState(null);
|
|
13
22
|
const [refreshToken, setRefreshToken] = useState(null);
|
|
14
|
-
const [
|
|
23
|
+
const [, setTokenExpiry] = useState(null);
|
|
24
|
+
const refreshPromiseRef = useRef(null);
|
|
25
|
+
const accessTokenRef = useRef(null);
|
|
26
|
+
const tokenExpiryRef = useRef(null);
|
|
15
27
|
// Normalize domain to ensure it has protocol
|
|
16
|
-
const baseUrl = config.domain.startsWith(
|
|
17
|
-
? config.domain
|
|
18
|
-
: `https://${config.domain}`;
|
|
28
|
+
const baseUrl = config.domain.startsWith('http') ? config.domain : `https://${config.domain}`;
|
|
19
29
|
// Default redirect URI
|
|
20
30
|
const redirectUri = config.redirectUri || `${window.location.origin}/callback`;
|
|
21
31
|
// Store tokens
|
|
22
32
|
const storeTokens = useCallback((tokens) => {
|
|
23
33
|
const expiry = Date.now() + tokens.expires_in * 1000;
|
|
34
|
+
accessTokenRef.current = tokens.access_token;
|
|
35
|
+
tokenExpiryRef.current = expiry;
|
|
24
36
|
setAccessToken(tokens.access_token);
|
|
25
|
-
setRefreshToken(tokens.refresh_token);
|
|
37
|
+
setRefreshToken(tokens.refresh_token ?? null);
|
|
26
38
|
setTokenExpiry(expiry);
|
|
27
39
|
// Always store access token in memory, optionally persist refresh token
|
|
28
|
-
if (config.persistSession) {
|
|
40
|
+
if (config.persistSession && tokens.refresh_token) {
|
|
29
41
|
localStorage.setItem(REFRESH_TOKEN_KEY, tokens.refresh_token);
|
|
30
42
|
localStorage.setItem(TOKEN_EXPIRY_KEY, expiry.toString());
|
|
31
43
|
}
|
|
32
44
|
}, [config.persistSession]);
|
|
33
45
|
// Clear tokens
|
|
34
46
|
const clearTokens = useCallback(() => {
|
|
47
|
+
accessTokenRef.current = null;
|
|
48
|
+
tokenExpiryRef.current = null;
|
|
35
49
|
setAccessToken(null);
|
|
36
50
|
setRefreshToken(null);
|
|
37
51
|
setTokenExpiry(null);
|
|
@@ -59,14 +73,15 @@ export function AvantIdProvider({ children, config }) {
|
|
|
59
73
|
const refreshAccessToken = useCallback(async (token) => {
|
|
60
74
|
try {
|
|
61
75
|
const response = await fetch(`${baseUrl}/auth/refresh`, {
|
|
62
|
-
method:
|
|
63
|
-
headers: {
|
|
76
|
+
method: 'POST',
|
|
77
|
+
headers: { 'Content-Type': 'application/json' },
|
|
64
78
|
body: JSON.stringify({ refreshToken: token }),
|
|
65
79
|
});
|
|
66
80
|
if (!response.ok) {
|
|
67
81
|
return null;
|
|
68
82
|
}
|
|
69
|
-
|
|
83
|
+
const raw = await response.json();
|
|
84
|
+
return normalizeTokenResponse(raw);
|
|
70
85
|
}
|
|
71
86
|
catch {
|
|
72
87
|
return null;
|
|
@@ -74,30 +89,42 @@ export function AvantIdProvider({ children, config }) {
|
|
|
74
89
|
}, [baseUrl]);
|
|
75
90
|
// Get access token, refreshing if needed
|
|
76
91
|
const getAccessToken = useCallback(async () => {
|
|
77
|
-
// Check if current token is still valid (with 30s buffer)
|
|
78
|
-
if (
|
|
79
|
-
return
|
|
92
|
+
// Check if current token is still valid (with 30s buffer) — read from refs to avoid stale closures
|
|
93
|
+
if (accessTokenRef.current && tokenExpiryRef.current && Date.now() < tokenExpiryRef.current - 30000) {
|
|
94
|
+
return accessTokenRef.current;
|
|
95
|
+
}
|
|
96
|
+
// Deduplicate concurrent refresh attempts
|
|
97
|
+
if (refreshPromiseRef.current) {
|
|
98
|
+
const tokens = await refreshPromiseRef.current;
|
|
99
|
+
return tokens ? tokens.access_token : null;
|
|
80
100
|
}
|
|
81
101
|
// Try to refresh
|
|
82
102
|
if (refreshToken) {
|
|
83
|
-
const
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
103
|
+
const promise = refreshAccessToken(refreshToken);
|
|
104
|
+
refreshPromiseRef.current = promise;
|
|
105
|
+
try {
|
|
106
|
+
const tokens = await promise;
|
|
107
|
+
if (tokens) {
|
|
108
|
+
storeTokens(tokens);
|
|
109
|
+
return tokens.access_token;
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
finally {
|
|
113
|
+
refreshPromiseRef.current = null;
|
|
87
114
|
}
|
|
88
115
|
}
|
|
89
116
|
// No valid token
|
|
90
117
|
clearTokens();
|
|
91
118
|
return null;
|
|
92
|
-
}, [
|
|
119
|
+
}, [refreshToken, refreshAccessToken, storeTokens, clearTokens]);
|
|
93
120
|
// Exchange authorization code for tokens
|
|
94
121
|
const exchangeCode = useCallback(async (code, codeVerifier) => {
|
|
95
122
|
try {
|
|
96
123
|
const response = await fetch(`${baseUrl}/oauth/token`, {
|
|
97
|
-
method:
|
|
98
|
-
headers: {
|
|
124
|
+
method: 'POST',
|
|
125
|
+
headers: { 'Content-Type': 'application/json' },
|
|
99
126
|
body: JSON.stringify({
|
|
100
|
-
grant_type:
|
|
127
|
+
grant_type: 'authorization_code',
|
|
101
128
|
code,
|
|
102
129
|
code_verifier: codeVerifier,
|
|
103
130
|
client_id: config.clientId,
|
|
@@ -105,7 +132,7 @@ export function AvantIdProvider({ children, config }) {
|
|
|
105
132
|
}),
|
|
106
133
|
});
|
|
107
134
|
if (!response.ok) {
|
|
108
|
-
console.error(
|
|
135
|
+
console.error('Token exchange failed:', await response.text());
|
|
109
136
|
return false;
|
|
110
137
|
}
|
|
111
138
|
const tokens = await response.json();
|
|
@@ -118,7 +145,7 @@ export function AvantIdProvider({ children, config }) {
|
|
|
118
145
|
return true;
|
|
119
146
|
}
|
|
120
147
|
catch (err) {
|
|
121
|
-
console.error(
|
|
148
|
+
console.error('Token exchange error:', err);
|
|
122
149
|
return false;
|
|
123
150
|
}
|
|
124
151
|
}, [baseUrl, config.clientId, redirectUri, storeTokens, fetchUser]);
|
|
@@ -133,9 +160,9 @@ export function AvantIdProvider({ children, config }) {
|
|
|
133
160
|
const params = new URLSearchParams({
|
|
134
161
|
client_id: config.clientId,
|
|
135
162
|
redirect_uri: redirectUri,
|
|
136
|
-
response_type:
|
|
163
|
+
response_type: 'code',
|
|
137
164
|
code_challenge: challenge,
|
|
138
|
-
code_challenge_method:
|
|
165
|
+
code_challenge_method: 'S256',
|
|
139
166
|
state,
|
|
140
167
|
});
|
|
141
168
|
window.location.href = `${baseUrl}/oauth/authorize?${params.toString()}`;
|
|
@@ -146,8 +173,8 @@ export function AvantIdProvider({ children, config }) {
|
|
|
146
173
|
if (refreshToken) {
|
|
147
174
|
try {
|
|
148
175
|
await fetch(`${baseUrl}/auth/logout`, {
|
|
149
|
-
method:
|
|
150
|
-
headers: {
|
|
176
|
+
method: 'POST',
|
|
177
|
+
headers: { 'Content-Type': 'application/json' },
|
|
151
178
|
body: JSON.stringify({ refreshToken }),
|
|
152
179
|
});
|
|
153
180
|
}
|
|
@@ -161,39 +188,32 @@ export function AvantIdProvider({ children, config }) {
|
|
|
161
188
|
useEffect(() => {
|
|
162
189
|
const handleCallback = async () => {
|
|
163
190
|
const params = new URLSearchParams(window.location.search);
|
|
164
|
-
const code = params.get(
|
|
165
|
-
const state = params.get(
|
|
166
|
-
const error = params.get(
|
|
191
|
+
const code = params.get('code');
|
|
192
|
+
const state = params.get('state');
|
|
193
|
+
const error = params.get('error');
|
|
167
194
|
if (error) {
|
|
168
|
-
console.error(
|
|
195
|
+
console.error('OAuth error:', error, params.get('error_description'));
|
|
169
196
|
setIsLoading(false);
|
|
170
197
|
return;
|
|
171
198
|
}
|
|
172
199
|
if (code && state) {
|
|
173
200
|
// Verify state
|
|
174
|
-
|
|
175
|
-
console.error("State mismatch - possible CSRF attack");
|
|
176
|
-
setIsLoading(false);
|
|
177
|
-
return;
|
|
178
|
-
}
|
|
201
|
+
assert(verifyState(state), 'State mismatch - possible CSRF attack');
|
|
179
202
|
// Get stored code verifier
|
|
180
203
|
const codeVerifier = retrieveCodeVerifier();
|
|
181
|
-
|
|
182
|
-
console.error("No code verifier found");
|
|
183
|
-
setIsLoading(false);
|
|
184
|
-
return;
|
|
185
|
-
}
|
|
204
|
+
assert(codeVerifier, 'No code verifier found');
|
|
186
205
|
// Exchange code for tokens
|
|
187
|
-
|
|
206
|
+
await exchangeCode(code, codeVerifier);
|
|
188
207
|
// Clean up URL
|
|
189
|
-
window.history.replaceState({},
|
|
208
|
+
window.history.replaceState({}, '', window.location.pathname);
|
|
190
209
|
setIsLoading(false);
|
|
191
210
|
return;
|
|
192
211
|
}
|
|
193
212
|
// No callback params - check for existing session
|
|
194
213
|
if (config.persistSession) {
|
|
195
214
|
const storedRefresh = localStorage.getItem(REFRESH_TOKEN_KEY);
|
|
196
|
-
|
|
215
|
+
// Check for valid refresh token (not empty, not the string "undefined" or "null")
|
|
216
|
+
if (storedRefresh && storedRefresh !== 'undefined' && storedRefresh !== 'null') {
|
|
197
217
|
setRefreshToken(storedRefresh);
|
|
198
218
|
const tokens = await refreshAccessToken(storedRefresh);
|
|
199
219
|
if (tokens) {
|
|
@@ -211,7 +231,14 @@ export function AvantIdProvider({ children, config }) {
|
|
|
211
231
|
setIsLoading(false);
|
|
212
232
|
};
|
|
213
233
|
handleCallback();
|
|
214
|
-
}, [
|
|
234
|
+
}, [
|
|
235
|
+
config.persistSession,
|
|
236
|
+
exchangeCode,
|
|
237
|
+
refreshAccessToken,
|
|
238
|
+
storeTokens,
|
|
239
|
+
fetchUser,
|
|
240
|
+
clearTokens,
|
|
241
|
+
]);
|
|
215
242
|
const value = {
|
|
216
243
|
user,
|
|
217
244
|
isLoading,
|
|
@@ -225,9 +252,7 @@ export function AvantIdProvider({ children, config }) {
|
|
|
225
252
|
}
|
|
226
253
|
export function useAuthContext() {
|
|
227
254
|
const context = useContext(AuthContext);
|
|
228
|
-
|
|
229
|
-
throw new Error("useAuth must be used within an AvantIdProvider");
|
|
230
|
-
}
|
|
255
|
+
assert(context, 'useAuth must be used within an AvantIdProvider');
|
|
231
256
|
return context;
|
|
232
257
|
}
|
|
233
258
|
//# sourceMappingURL=provider.js.map
|
package/dist/provider.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider.js","sourceRoot":"","sources":["../src/provider.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,
|
|
1
|
+
{"version":3,"file":"provider.js","sourceRoot":"","sources":["../src/provider.tsx"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,aAAa;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,aAAa;IAC1B,+FAA+F;IAC/F,MAAM,EAAE,MAAM,CAAC;IACf,wCAAwC;IACxC,QAAQ,EAAE,MAAM,CAAC;IACjB,oFAAoF;IACpF,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,wEAAwE;IACxE,cAAc,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED;;GAEG;AACH,MAAM,WAAW,IAAI;IACjB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACxC;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC1B,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACtB,gDAAgD;IAChD,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC;IAClB,0DAA0D;IAC1D,SAAS,EAAE,OAAO,CAAC;IACnB,wCAAwC;IACxC,eAAe,EAAE,OAAO,CAAC;IACzB,sCAAsC;IACtC,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3B,0DAA0D;IAC1D,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5B,0DAA0D;IAC1D,cAAc,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;CAChD;AAED;;GAEG;AACH,MAAM,WAAW,gBAAiB,SAAQ,SAAS;IAC/C,MAAM,EAAE,aAAa,CAAC;CACzB"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@avantmedia/id-react",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.4",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"module": "./dist/index.js",
|
|
@@ -27,8 +27,8 @@
|
|
|
27
27
|
"react": "^18.0.0 || ^19.0.0"
|
|
28
28
|
},
|
|
29
29
|
"devDependencies": {
|
|
30
|
-
"@types/react": "^
|
|
31
|
-
"react": "^
|
|
32
|
-
"typescript": "^5.
|
|
30
|
+
"@types/react": "^19.2.13",
|
|
31
|
+
"react": "^19.2.4",
|
|
32
|
+
"typescript": "^5.9.3"
|
|
33
33
|
}
|
|
34
34
|
}
|