@frontegg/js 6.0.3-alpha.3 → 6.2.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.
@@ -1,5 +1,4 @@
1
- import { EnhancedStore } from '@reduxjs/toolkit';
2
- import { Dispatch, FronteggState } from '@frontegg/redux-store';
1
+ import { EnhancedStore } from '@frontegg/redux-store';
3
2
  import { FronteggAppOptions, FronteggCheckoutDialogOptions, LocalizationsOverrides } from '@frontegg/types';
4
3
  declare type FronteggAppContainers = {
5
4
  adminPortalEl: HTMLElement;
@@ -25,9 +24,7 @@ export declare class FronteggApp {
25
24
  loginBoxContainer?: HTMLElement;
26
25
  checkoutDialogContainer?: HTMLElement;
27
26
  loginBoxRenderer?: any;
28
- store: Omit<EnhancedStore<FronteggState>, 'dispatch'> & {
29
- dispatch: Dispatch;
30
- };
27
+ store: EnhancedStore;
31
28
  loadingListeners: (() => void)[];
32
29
  updateLocalizations?: (localizations: LocalizationsOverrides) => void;
33
30
  constructor(_options: FronteggAppOptions, name: string, iframeRendering?: boolean);
@@ -4,6 +4,8 @@ import { Metadata } from '@frontegg/types';
4
4
  import { formatName } from '../utils';
5
5
  import { AppHolder } from '../AppHolder';
6
6
  import { fetch as FronteggFetch } from '@frontegg/rest-api';
7
+ import * as FronteggRestApi from '@frontegg/rest-api';
8
+ import * as FronteggTypes from '@frontegg/types';
7
9
  import versions from '../version';
8
10
  export class FronteggApp {
9
11
  constructor(_options, name, iframeRendering = false) {
@@ -133,10 +135,13 @@ export class FronteggApp {
133
135
 
134
136
  loadScript(component) {
135
137
  return new Promise((resolve, reject) => {
138
+ // TODO: prevent this behavior if development
136
139
  if (window[component]) {
137
140
  resolve(window[component]);
138
141
  return;
139
142
  }
143
+
144
+
140
145
 
141
146
  const entries = {
142
147
  FronteggLoginBox: 'login-box/index.js',
@@ -148,7 +153,14 @@ export class FronteggApp {
148
153
  script.setAttribute('cdn-url', this.cdnUrl);
149
154
 
150
155
  script.onload = () => {
151
- resolve(window[component]);
156
+ if (window[`${component}Init`]) {
157
+ resolve(window[`${component}Init`]({
158
+ FronteggRestApi,
159
+ FronteggTypes
160
+ }));
161
+ } else {
162
+ resolve(window[component]);
163
+ }
152
164
  };
153
165
 
154
166
  script.onerror = e => {
@@ -3,6 +3,7 @@ import { FronteggAppOptions, FronteggThemeOptions } from '@frontegg/types';
3
3
  import { FronteggApp } from '../FronteggApp';
4
4
  declare const defaultTheme = "modern";
5
5
  export { defaultTheme };
6
+ export declare const getThemeByName: (name: any) => any;
6
7
  export declare class LoginBoxRenderer {
7
8
  app: FronteggApp;
8
9
  options: FronteggAppOptions;
@@ -4,6 +4,13 @@ import { Metadata } from '@frontegg/types';
4
4
  import { FronteggApp } from '../FronteggApp';
5
5
  const defaultTheme = 'modern';
6
6
  export { defaultTheme };
7
+ export const getThemeByName = name => {
8
+ var _name;
9
+
10
+ // Load themes from window chunk to support cdn getThemeByName
11
+ const themes = window['FronteggAdminPortal'].themes;
12
+ return (_name = themes[name]) != null ? _name : themes[defaultTheme];
13
+ };
7
14
  export class LoginBoxRenderer {
8
15
  constructor(name, themeOptions, store, appOptions) {
9
16
  this.app = void 0;
package/index.js CHANGED
@@ -1,4 +1,4 @@
1
- /** @license Frontegg v6.0.3-alpha.3
1
+ /** @license Frontegg v6.2.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.
@@ -11,16 +11,20 @@ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")
11
11
 
12
12
  var _reduxStore = require("@frontegg/redux-store");
13
13
 
14
- var _types = require("@frontegg/types");
14
+ var FronteggTypes = _interopRequireWildcard(require("@frontegg/types"));
15
15
 
16
16
  var _utils = require("../utils");
17
17
 
18
18
  var _AppHolder = require("../AppHolder");
19
19
 
20
- var _restApi = require("@frontegg/rest-api");
20
+ var FronteggRestApi = _interopRequireWildcard(require("@frontegg/rest-api"));
21
21
 
22
22
  var _version = _interopRequireDefault(require("../version"));
23
23
 
24
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
25
+
26
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
27
+
24
28
  class FronteggApp {
25
29
  constructor(_options, name, iframeRendering = false) {
26
30
  var _this$options$store, _this$options$authOpt, _this$options$auditsO;
@@ -47,7 +51,7 @@ class FronteggApp {
47
51
  this.loadAdminBoxMetadata = async () => {
48
52
  const {
49
53
  Get
50
- } = _restApi.fetch;
54
+ } = FronteggRestApi.fetch;
51
55
 
52
56
  if (!this.options.metadata) {
53
57
  try {
@@ -62,7 +66,7 @@ class FronteggApp {
62
66
  }
63
67
  }
64
68
 
65
- _types.Metadata.set(this.options.metadata, this.name);
69
+ FronteggTypes.Metadata.set(this.options.metadata, this.name);
66
70
  };
67
71
 
68
72
  this.requestAuthorize = async () => {
@@ -130,7 +134,7 @@ class FronteggApp {
130
134
  }
131
135
 
132
136
  updateMetadata(metadata) {
133
- _types.Metadata.set(metadata, this.name);
137
+ FronteggTypes.Metadata.set(metadata, this.name);
134
138
 
135
139
  if (metadata != null && metadata.localizations) {
136
140
  var _this$updateLocalizat;
@@ -150,10 +154,13 @@ class FronteggApp {
150
154
 
151
155
  loadScript(component) {
152
156
  return new Promise((resolve, reject) => {
157
+ // TODO: prevent this behavior if development
153
158
  if (window[component]) {
154
159
  resolve(window[component]);
155
160
  return;
156
161
  }
162
+
163
+
157
164
 
158
165
  const entries = {
159
166
  FronteggLoginBox: 'login-box/index.js',
@@ -165,7 +172,14 @@ class FronteggApp {
165
172
  script.setAttribute('cdn-url', this.cdnUrl);
166
173
 
167
174
  script.onload = () => {
168
- resolve(window[component]);
175
+ if (window[`${component}Init`]) {
176
+ resolve(window[`${component}Init`]({
177
+ FronteggRestApi,
178
+ FronteggTypes
179
+ }));
180
+ } else {
181
+ resolve(window[component]);
182
+ }
169
183
  };
170
184
 
171
185
  script.onerror = e => {
@@ -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.defaultTheme = exports.default = exports.LoginBoxRenderer = void 0;
8
+ exports.getThemeByName = exports.defaultTheme = exports.default = exports.LoginBoxRenderer = void 0;
9
9
 
10
10
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
11
 
@@ -18,6 +18,16 @@ var _FronteggApp = require("../FronteggApp");
18
18
  const defaultTheme = 'modern';
19
19
  exports.defaultTheme = defaultTheme;
20
20
 
21
+ const getThemeByName = name => {
22
+ var _name;
23
+
24
+ // Load themes from window chunk to support cdn getThemeByName
25
+ const themes = window['FronteggAdminPortal'].themes;
26
+ return (_name = themes[name]) != null ? _name : themes[defaultTheme];
27
+ };
28
+
29
+ exports.getThemeByName = getThemeByName;
30
+
21
31
  class LoginBoxRenderer {
22
32
  constructor(name, themeOptions, store, appOptions) {
23
33
  this.app = void 0;
package/node/index.js CHANGED
@@ -1,4 +1,4 @@
1
- /** @license Frontegg v6.0.3-alpha.3
1
+ /** @license Frontegg v6.2.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.
package/node/version.js CHANGED
@@ -5,6 +5,6 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.default = void 0;
7
7
  var _default = {
8
- "cdnVersion": "6.0.3-alpha.3"
8
+ "cdnVersion": "6.0.4"
9
9
  };
10
10
  exports.default = _default;
package/package.json CHANGED
@@ -1,11 +1,11 @@
1
1
  {
2
2
  "name": "@frontegg/js",
3
- "version": "6.0.3-alpha.3",
3
+ "version": "6.2.0",
4
4
  "main": "./node/index.js",
5
5
  "license": "MIT",
6
6
  "dependencies": {
7
7
  "@babel/runtime": "^7.17.2",
8
- "@frontegg/types": "6.0.3-alpha.3"
8
+ "@frontegg/types": "6.2.0"
9
9
  },
10
10
  "sideEffects": false,
11
11
  "private": false,
package/version.js CHANGED
@@ -1,3 +1,3 @@
1
1
  export default {
2
- "cdnVersion": "6.0.3-alpha.3"
2
+ "cdnVersion": "6.0.4"
3
3
  };