@frontegg/react-hooks 6.4.0 → 6.6.0
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/FronteggProvider.js +7 -3
- package/common/index.d.ts +2 -0
- package/common/index.js +5 -0
- package/flags/index.d.ts +1 -0
- package/flags/index.js +1 -0
- package/flags/package.json +6 -0
- package/flags/useFeatureFlags.d.ts +1 -0
- package/flags/useFeatureFlags.js +10 -0
- package/index.d.ts +1 -0
- package/index.js +2 -1
- package/node/FronteggProvider.js +7 -3
- package/node/common/index.js +12 -2
- package/node/flags/index.js +18 -0
- package/node/flags/useFeatureFlags.js +20 -0
- package/node/index.js +14 -1
- package/package.json +3 -3
package/FronteggProvider.js
CHANGED
|
@@ -127,9 +127,13 @@ export const FronteggStoreProvider = props => {
|
|
|
127
127
|
hostedLoginBox: app == null ? void 0 : (_app$options7 = app.options) == null ? void 0 : _app$options7.hostedLoginBox
|
|
128
128
|
};
|
|
129
129
|
ContextHolder.setContext(context);
|
|
130
|
-
const store = useMemo(() =>
|
|
131
|
-
|
|
132
|
-
|
|
130
|
+
const store = useMemo(() => {
|
|
131
|
+
var _app$options8;
|
|
132
|
+
|
|
133
|
+
return createFronteggStore({
|
|
134
|
+
context: context
|
|
135
|
+
}, app, previewMode, authOptions, undefined, false, app == null ? void 0 : (_app$options8 = app.options) == null ? void 0 : _app$options8.urlStrategy);
|
|
136
|
+
}, [app, previewMode]);
|
|
133
137
|
return /*#__PURE__*/_jsx(Provider, {
|
|
134
138
|
context: FronteggStoreContext,
|
|
135
139
|
store: store,
|
package/common/index.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { Dispatch, SetStateAction } from 'react';
|
|
2
2
|
import { FronteggAppInstance, FronteggAppOptions } from '@frontegg/types';
|
|
3
|
+
import { FronteggState } from '@frontegg/redux-store';
|
|
3
4
|
interface ShadowDomContextData extends FronteggAppOptions {
|
|
4
5
|
injector: FronteggAppInstance;
|
|
5
6
|
iframeRendering: boolean;
|
|
@@ -14,4 +15,5 @@ export interface DomContext extends ShadowDomContextData {
|
|
|
14
15
|
}
|
|
15
16
|
export declare const ShadowDomContext: import("react").Context<ShadowDomContextData>;
|
|
16
17
|
export declare const useShadowDom: () => DomContext;
|
|
18
|
+
export declare const useRootState: () => FronteggState['root'];
|
|
17
19
|
export {};
|
package/common/index.js
CHANGED
|
@@ -2,6 +2,8 @@ import _extends from "@babel/runtime/helpers/esm/extends";
|
|
|
2
2
|
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
|
|
3
3
|
const _excluded = ["urlStrategy", "onRedirectTo", "renderByRoute", "customLoader", "customStyles", "contextOptions"];
|
|
4
4
|
import { createContext, useContext } from 'react';
|
|
5
|
+
import { useSelector } from '../FronteggStoreContext';
|
|
6
|
+
import { shallowEqual } from 'react-redux';
|
|
5
7
|
export const ShadowDomContext = /*#__PURE__*/createContext({});
|
|
6
8
|
export const useShadowDom = () => {
|
|
7
9
|
const context = useContext(ShadowDomContext);
|
|
@@ -27,4 +29,7 @@ export const useShadowDom = () => {
|
|
|
27
29
|
requestCredentials: 'include'
|
|
28
30
|
}, contextOptions)
|
|
29
31
|
}, rest);
|
|
32
|
+
};
|
|
33
|
+
export const useRootState = () => {
|
|
34
|
+
return useSelector(state => state.root, shallowEqual);
|
|
30
35
|
};
|
package/flags/index.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './useFeatureFlags';
|
package/flags/index.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './useFeatureFlags';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const useFeatureFlags: (...flags: string[]) => boolean[];
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { useShadowDom } from '../common';
|
|
2
|
+
export const useFeatureFlags = (...flags) => {
|
|
3
|
+
var _injector$flags;
|
|
4
|
+
|
|
5
|
+
const {
|
|
6
|
+
injector
|
|
7
|
+
} = useShadowDom();
|
|
8
|
+
const featureFlags = (_injector$flags = injector.flags) != null ? _injector$flags : {};
|
|
9
|
+
return flags.map(flag => featureFlags[flag] === 'on');
|
|
10
|
+
};
|
package/index.d.ts
CHANGED
package/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/** @license Frontegg v6.
|
|
1
|
+
/** @license Frontegg v6.6.0
|
|
2
2
|
*
|
|
3
3
|
* This source code is licensed under the MIT license found in the
|
|
4
4
|
* LICENSE file in the root directory of this source tree.
|
|
@@ -9,5 +9,6 @@ export * from './auth';
|
|
|
9
9
|
export * from './connectivity';
|
|
10
10
|
export * from './subscriptions';
|
|
11
11
|
export * from './vendor';
|
|
12
|
+
export * from './flags';
|
|
12
13
|
export * from './FronteggProvider';
|
|
13
14
|
export * from './FronteggStoreContext';
|
package/node/FronteggProvider.js
CHANGED
|
@@ -148,9 +148,13 @@ const FronteggStoreProvider = props => {
|
|
|
148
148
|
|
|
149
149
|
_restApi.ContextHolder.setContext(context);
|
|
150
150
|
|
|
151
|
-
const store = (0, _react.useMemo)(() =>
|
|
152
|
-
|
|
153
|
-
|
|
151
|
+
const store = (0, _react.useMemo)(() => {
|
|
152
|
+
var _app$options8;
|
|
153
|
+
|
|
154
|
+
return (0, _reduxStore.createFronteggStore)({
|
|
155
|
+
context: context
|
|
156
|
+
}, app, previewMode, authOptions, undefined, false, app == null ? void 0 : (_app$options8 = app.options) == null ? void 0 : _app$options8.urlStrategy);
|
|
157
|
+
}, [app, previewMode]);
|
|
154
158
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_FronteggStoreContext.Provider, {
|
|
155
159
|
context: _FronteggStoreContext.FronteggStoreContext,
|
|
156
160
|
store: store,
|
package/node/common/index.js
CHANGED
|
@@ -5,7 +5,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
|
-
exports.useShadowDom = exports.ShadowDomContext = void 0;
|
|
8
|
+
exports.useShadowDom = exports.useRootState = exports.ShadowDomContext = void 0;
|
|
9
9
|
|
|
10
10
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
11
11
|
|
|
@@ -13,6 +13,10 @@ var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runt
|
|
|
13
13
|
|
|
14
14
|
var _react = require("react");
|
|
15
15
|
|
|
16
|
+
var _FronteggStoreContext = require("../FronteggStoreContext");
|
|
17
|
+
|
|
18
|
+
var _reactRedux = require("react-redux");
|
|
19
|
+
|
|
16
20
|
const _excluded = ["urlStrategy", "onRedirectTo", "renderByRoute", "customLoader", "customStyles", "contextOptions"];
|
|
17
21
|
const ShadowDomContext = /*#__PURE__*/(0, _react.createContext)({});
|
|
18
22
|
exports.ShadowDomContext = ShadowDomContext;
|
|
@@ -41,4 +45,10 @@ const useShadowDom = () => {
|
|
|
41
45
|
}, rest);
|
|
42
46
|
};
|
|
43
47
|
|
|
44
|
-
exports.useShadowDom = useShadowDom;
|
|
48
|
+
exports.useShadowDom = useShadowDom;
|
|
49
|
+
|
|
50
|
+
const useRootState = () => {
|
|
51
|
+
return (0, _FronteggStoreContext.useSelector)(state => state.root, _reactRedux.shallowEqual);
|
|
52
|
+
};
|
|
53
|
+
|
|
54
|
+
exports.useRootState = useRootState;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
|
|
7
|
+
var _useFeatureFlags = require("./useFeatureFlags");
|
|
8
|
+
|
|
9
|
+
Object.keys(_useFeatureFlags).forEach(function (key) {
|
|
10
|
+
if (key === "default" || key === "__esModule") return;
|
|
11
|
+
if (key in exports && exports[key] === _useFeatureFlags[key]) return;
|
|
12
|
+
Object.defineProperty(exports, key, {
|
|
13
|
+
enumerable: true,
|
|
14
|
+
get: function () {
|
|
15
|
+
return _useFeatureFlags[key];
|
|
16
|
+
}
|
|
17
|
+
});
|
|
18
|
+
});
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.useFeatureFlags = void 0;
|
|
7
|
+
|
|
8
|
+
var _common = require("../common");
|
|
9
|
+
|
|
10
|
+
const useFeatureFlags = (...flags) => {
|
|
11
|
+
var _injector$flags;
|
|
12
|
+
|
|
13
|
+
const {
|
|
14
|
+
injector
|
|
15
|
+
} = (0, _common.useShadowDom)();
|
|
16
|
+
const featureFlags = (_injector$flags = injector.flags) != null ? _injector$flags : {};
|
|
17
|
+
return flags.map(flag => featureFlags[flag] === 'on');
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
exports.useFeatureFlags = useFeatureFlags;
|
package/node/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/** @license Frontegg v6.
|
|
1
|
+
/** @license Frontegg v6.6.0
|
|
2
2
|
*
|
|
3
3
|
* This source code is licensed under the MIT license found in the
|
|
4
4
|
* LICENSE file in the root directory of this source tree.
|
|
@@ -87,6 +87,19 @@ Object.keys(_vendor).forEach(function (key) {
|
|
|
87
87
|
});
|
|
88
88
|
});
|
|
89
89
|
|
|
90
|
+
var _flags = require("./flags");
|
|
91
|
+
|
|
92
|
+
Object.keys(_flags).forEach(function (key) {
|
|
93
|
+
if (key === "default" || key === "__esModule") return;
|
|
94
|
+
if (key in exports && exports[key] === _flags[key]) return;
|
|
95
|
+
Object.defineProperty(exports, key, {
|
|
96
|
+
enumerable: true,
|
|
97
|
+
get: function () {
|
|
98
|
+
return _flags[key];
|
|
99
|
+
}
|
|
100
|
+
});
|
|
101
|
+
});
|
|
102
|
+
|
|
90
103
|
var _FronteggProvider = require("./FronteggProvider");
|
|
91
104
|
|
|
92
105
|
Object.keys(_FronteggProvider).forEach(function (key) {
|
package/package.json
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@frontegg/react-hooks",
|
|
3
|
-
"version": "6.
|
|
3
|
+
"version": "6.6.0",
|
|
4
4
|
"main": "./node/index.js",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "Frontegg LTD",
|
|
7
7
|
"dependencies": {
|
|
8
8
|
"@babel/runtime": "^7.18.6",
|
|
9
|
-
"@frontegg/redux-store": "6.
|
|
10
|
-
"@frontegg/types": "6.
|
|
9
|
+
"@frontegg/redux-store": "6.6.0",
|
|
10
|
+
"@frontegg/types": "6.6.0",
|
|
11
11
|
"@types/react": "*",
|
|
12
12
|
"react-redux": "^7.x"
|
|
13
13
|
},
|