@mjhls/mjh-framework 1.0.811 → 1.0.813
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/README.md +1 -1
- package/dist/cjs/AD300x250.js +1 -1
- package/dist/cjs/AD300x250x600.js +1 -1
- package/dist/cjs/AD728x90.js +1 -1
- package/dist/cjs/ADFloatingFooter.js +1 -1
- package/dist/cjs/ADGutter.js +1 -1
- package/dist/cjs/ADSkyscraper.js +1 -1
- package/dist/cjs/ADSponsoredResources.js +1 -1
- package/dist/cjs/ADWebcast.js +1 -1
- package/dist/cjs/ADWelcome.js +1 -1
- package/dist/cjs/AdSlot.js +1 -1
- package/dist/cjs/AlgoliaSearch.js +2 -2
- package/dist/cjs/AlphabeticList.js +1 -1
- package/dist/cjs/ArticleCarousel.js +1 -1
- package/dist/cjs/ArticleProgramLandingPage.js +3 -3
- package/dist/cjs/ArticleSeriesLandingPage.js +4 -4
- package/dist/cjs/ArticleSeriesListing.js +2 -2
- package/dist/cjs/Auth.js +5 -322
- package/dist/cjs/AuthWrapper.js +725 -0
- package/dist/cjs/Column3.js +1 -1
- package/dist/cjs/DeckContent.js +3 -3
- package/dist/cjs/DeckQueue.js +2 -2
- package/dist/cjs/EventsDeck.js +1 -1
- package/dist/cjs/ExternalResources.js +3 -3
- package/dist/cjs/GridContent.js +4 -4
- package/dist/cjs/HorizontalArticleListing.js +3 -3
- package/dist/cjs/IssueDeck.js +1 -1
- package/dist/cjs/IssueLanding.js +3 -3
- package/dist/cjs/LeftNav.js +1 -1
- package/dist/cjs/MasterDeck.js +4 -4
- package/dist/cjs/MediaSeriesLanding.js +10 -18
- package/dist/cjs/PartnerDetailListing.js +5 -5
- package/dist/cjs/PubSection.js +3 -3
- package/dist/cjs/PublicationLanding.js +1 -1
- package/dist/cjs/QueueDeckExpanded.js +3 -3
- package/dist/cjs/SeriesListingDeck.js +1 -1
- package/dist/cjs/TaxonomyCard.js +1 -1
- package/dist/cjs/TaxonomyDescription.js +3 -3
- package/dist/cjs/TemplateNormal.js +1 -1
- package/dist/cjs/VideoProgramLandingPage.js +3 -3
- package/dist/cjs/VideoSeriesLandingPage.js +4 -4
- package/dist/cjs/VideoSeriesListing.js +2 -2
- package/dist/cjs/View.js +4 -4
- package/dist/cjs/{extends-9d158713.js → extends-29bdbc6d.js} +1 -0
- package/dist/cjs/faundadb.js +329 -0
- package/dist/cjs/getSerializers.js +3 -3
- package/dist/cjs/{getTargeting-fbbe92ba.js → getTargeting-a100d6e5.js} +1 -1
- package/dist/cjs/getTargeting.js +2 -2
- package/dist/cjs/{index-a766f892.js → index-70971c54.js} +280 -55
- package/dist/cjs/index.js +7 -6
- package/dist/cjs/{inherits-3ff1b657.js → inherits-c2065b95.js} +3 -0
- package/dist/cjs/md5-e1ca5797.js +323 -0
- package/dist/esm/AD300x250.js +1 -1
- package/dist/esm/AD300x250x600.js +1 -1
- package/dist/esm/AD728x90.js +1 -1
- package/dist/esm/ADFloatingFooter.js +1 -1
- package/dist/esm/ADGutter.js +1 -1
- package/dist/esm/ADSkyscraper.js +1 -1
- package/dist/esm/ADSponsoredResources.js +1 -1
- package/dist/esm/ADWebcast.js +1 -1
- package/dist/esm/ADWelcome.js +1 -1
- package/dist/esm/AdSlot.js +1 -1
- package/dist/esm/AlgoliaSearch.js +2 -2
- package/dist/esm/AlphabeticList.js +1 -1
- package/dist/esm/ArticleCarousel.js +1 -1
- package/dist/esm/ArticleProgramLandingPage.js +3 -3
- package/dist/esm/ArticleSeriesLandingPage.js +4 -4
- package/dist/esm/ArticleSeriesListing.js +2 -2
- package/dist/esm/Auth.js +2 -319
- package/dist/esm/AuthWrapper.js +719 -0
- package/dist/esm/Column3.js +1 -1
- package/dist/esm/DeckContent.js +3 -3
- package/dist/esm/DeckQueue.js +2 -2
- package/dist/esm/EventsDeck.js +1 -1
- package/dist/esm/ExternalResources.js +3 -3
- package/dist/esm/GridContent.js +4 -4
- package/dist/esm/HorizontalArticleListing.js +3 -3
- package/dist/esm/IssueDeck.js +1 -1
- package/dist/esm/IssueLanding.js +3 -3
- package/dist/esm/LeftNav.js +1 -1
- package/dist/esm/MasterDeck.js +4 -4
- package/dist/esm/MediaSeriesLanding.js +10 -18
- package/dist/esm/PartnerDetailListing.js +5 -5
- package/dist/esm/PubSection.js +3 -3
- package/dist/esm/PublicationLanding.js +1 -1
- package/dist/esm/QueueDeckExpanded.js +3 -3
- package/dist/esm/SeriesListingDeck.js +1 -1
- package/dist/esm/TaxonomyCard.js +1 -1
- package/dist/esm/TaxonomyDescription.js +3 -3
- package/dist/esm/TemplateNormal.js +1 -1
- package/dist/esm/VideoProgramLandingPage.js +3 -3
- package/dist/esm/VideoSeriesLandingPage.js +4 -4
- package/dist/esm/VideoSeriesListing.js +2 -2
- package/dist/esm/View.js +4 -4
- package/dist/esm/{extends-f076879e.js → extends-60e0e1c6.js} +1 -1
- package/dist/esm/faundadb.js +321 -0
- package/dist/esm/getSerializers.js +3 -3
- package/dist/esm/{getTargeting-0958ad0e.js → getTargeting-05c216d6.js} +1 -1
- package/dist/esm/getTargeting.js +2 -2
- package/dist/esm/{index-f354da27.js → index-a30e3b71.js} +280 -55
- package/dist/esm/index.js +7 -6
- package/dist/esm/{inherits-f71787cf.js → inherits-a41fe93f.js} +1 -1
- package/dist/esm/md5-4e42248e.js +321 -0
- package/package.json +2 -1
- /package/dist/cjs/{ADInfeed-d9976673.js → ADInfeed-7cf51090.js} +0 -0
- /package/dist/cjs/{ADlgInfeed-0610e1bb.js → ADlgInfeed-bf24708d.js} +0 -0
- /package/dist/esm/{ADInfeed-33e556f5.js → ADInfeed-f7d00a9a.js} +0 -0
- /package/dist/esm/{ADlgInfeed-1270c526.js → ADlgInfeed-db64f46d.js} +0 -0
|
@@ -0,0 +1,725 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var slicedToArray = require('./slicedToArray-5d1bc3b3.js');
|
|
4
|
+
var _commonjsHelpers = require('./_commonjsHelpers-06173234.js');
|
|
5
|
+
var React = require('react');
|
|
6
|
+
var reactBootstrap = require('react-bootstrap');
|
|
7
|
+
var styleInject_es = require('./style-inject.es-dcee06b6.js');
|
|
8
|
+
require('./web.dom.iterable-46657b5c.js');
|
|
9
|
+
require('./es6.string.iterator-c2573ffd.js');
|
|
10
|
+
require('./_to-object-6de10e57.js');
|
|
11
|
+
require('./core.get-iterator-method-f474eacc.js');
|
|
12
|
+
|
|
13
|
+
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
14
|
+
|
|
15
|
+
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
16
|
+
|
|
17
|
+
var logger = _commonjsHelpers.createCommonjsModule(function (module, exports) {
|
|
18
|
+
|
|
19
|
+
Object.defineProperty(exports, "__esModule", {
|
|
20
|
+
value: true
|
|
21
|
+
});
|
|
22
|
+
exports.setLogger = setLogger;
|
|
23
|
+
exports.proxyLogger = proxyLogger;
|
|
24
|
+
exports.default = void 0;
|
|
25
|
+
var _logger = {
|
|
26
|
+
error(code) {
|
|
27
|
+
for (var _len = arguments.length, message = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
|
|
28
|
+
message[_key - 1] = arguments[_key];
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
console.error("[next-auth][error][".concat(code.toLowerCase(), "]"), "\nhttps://next-auth.js.org/errors#".concat(code.toLowerCase()), ...message);
|
|
32
|
+
},
|
|
33
|
+
|
|
34
|
+
warn(code) {
|
|
35
|
+
for (var _len2 = arguments.length, message = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {
|
|
36
|
+
message[_key2 - 1] = arguments[_key2];
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
console.warn("[next-auth][warn][".concat(code.toLowerCase(), "]"), "\nhttps://next-auth.js.org/warnings#".concat(code.toLowerCase()), ...message);
|
|
40
|
+
},
|
|
41
|
+
|
|
42
|
+
debug(code) {
|
|
43
|
+
var _process, _process$env;
|
|
44
|
+
|
|
45
|
+
if (!((_process = process) !== null && _process !== void 0 && (_process$env = _process.env) !== null && _process$env !== void 0 && _process$env._NEXTAUTH_DEBUG)) return;
|
|
46
|
+
|
|
47
|
+
for (var _len3 = arguments.length, message = new Array(_len3 > 1 ? _len3 - 1 : 0), _key3 = 1; _key3 < _len3; _key3++) {
|
|
48
|
+
message[_key3 - 1] = arguments[_key3];
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
console.log("[next-auth][debug][".concat(code.toLowerCase(), "]"), ...message);
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
};
|
|
55
|
+
|
|
56
|
+
function setLogger() {
|
|
57
|
+
var newLogger = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
58
|
+
if (newLogger.error) _logger.error = newLogger.error;
|
|
59
|
+
if (newLogger.warn) _logger.warn = newLogger.warn;
|
|
60
|
+
if (newLogger.debug) _logger.debug = newLogger.debug;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
var _default = _logger;
|
|
64
|
+
exports.default = _default;
|
|
65
|
+
|
|
66
|
+
function proxyLogger() {
|
|
67
|
+
var logger = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : _logger;
|
|
68
|
+
var basePath = arguments.length > 1 ? arguments[1] : undefined;
|
|
69
|
+
|
|
70
|
+
try {
|
|
71
|
+
if (typeof window === 'undefined') {
|
|
72
|
+
return logger;
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
var clientLogger = {};
|
|
76
|
+
|
|
77
|
+
var _loop = function _loop(level) {
|
|
78
|
+
clientLogger[level] = function (code) {
|
|
79
|
+
for (var _len4 = arguments.length, message = new Array(_len4 > 1 ? _len4 - 1 : 0), _key4 = 1; _key4 < _len4; _key4++) {
|
|
80
|
+
message[_key4 - 1] = arguments[_key4];
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
_logger[level](code, ...message);
|
|
84
|
+
|
|
85
|
+
var url = "".concat(basePath, "/_log");
|
|
86
|
+
var body = new URLSearchParams({
|
|
87
|
+
level,
|
|
88
|
+
code,
|
|
89
|
+
message: JSON.stringify(message.map(m => {
|
|
90
|
+
if (m instanceof Error) {
|
|
91
|
+
return {
|
|
92
|
+
name: m.name,
|
|
93
|
+
message: m.message,
|
|
94
|
+
stack: m.stack
|
|
95
|
+
};
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
return m;
|
|
99
|
+
}))
|
|
100
|
+
});
|
|
101
|
+
|
|
102
|
+
if (navigator.sendBeacon) {
|
|
103
|
+
return navigator.sendBeacon(url, body);
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
return fetch(url, {
|
|
107
|
+
method: 'POST',
|
|
108
|
+
headers: {
|
|
109
|
+
'Content-Type': 'application/json'
|
|
110
|
+
},
|
|
111
|
+
body
|
|
112
|
+
});
|
|
113
|
+
};
|
|
114
|
+
};
|
|
115
|
+
|
|
116
|
+
for (var level in logger) {
|
|
117
|
+
_loop(level);
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
return clientLogger;
|
|
121
|
+
} catch (_unused) {
|
|
122
|
+
return _logger;
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
});
|
|
126
|
+
|
|
127
|
+
_commonjsHelpers.unwrapExports(logger);
|
|
128
|
+
logger.setLogger;
|
|
129
|
+
logger.proxyLogger;
|
|
130
|
+
|
|
131
|
+
var parseUrl_1 = _commonjsHelpers.createCommonjsModule(function (module, exports) {
|
|
132
|
+
|
|
133
|
+
Object.defineProperty(exports, "__esModule", {
|
|
134
|
+
value: true
|
|
135
|
+
});
|
|
136
|
+
exports.default = parseUrl;
|
|
137
|
+
|
|
138
|
+
function parseUrl(url) {
|
|
139
|
+
var defaultHost = 'http://localhost:3000';
|
|
140
|
+
var defaultPath = '/api/auth';
|
|
141
|
+
|
|
142
|
+
if (!url) {
|
|
143
|
+
url = "".concat(defaultHost).concat(defaultPath);
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
var protocol = url.startsWith('http:') ? 'http' : 'https';
|
|
147
|
+
url = url.replace(/^https?:\/\//, '').replace(/\/$/, '');
|
|
148
|
+
var [_host, ..._path] = url.split('/');
|
|
149
|
+
var baseUrl = _host ? "".concat(protocol, "://").concat(_host) : defaultHost;
|
|
150
|
+
var basePath = _path.length > 0 ? "/".concat(_path.join('/')) : defaultPath;
|
|
151
|
+
return {
|
|
152
|
+
baseUrl,
|
|
153
|
+
basePath
|
|
154
|
+
};
|
|
155
|
+
}
|
|
156
|
+
});
|
|
157
|
+
|
|
158
|
+
_commonjsHelpers.unwrapExports(parseUrl_1);
|
|
159
|
+
|
|
160
|
+
var client$1 = _commonjsHelpers.createCommonjsModule(function (module, exports) {
|
|
161
|
+
|
|
162
|
+
Object.defineProperty(exports, "__esModule", {
|
|
163
|
+
value: true
|
|
164
|
+
});
|
|
165
|
+
exports.useSession = useSession;
|
|
166
|
+
exports.getSession = getSession;
|
|
167
|
+
exports.getProviders = getProviders;
|
|
168
|
+
exports.signIn = signIn;
|
|
169
|
+
exports.signOut = signOut;
|
|
170
|
+
exports.setOptions = setOptions;
|
|
171
|
+
exports.Provider = Provider;
|
|
172
|
+
exports.default = void 0;
|
|
173
|
+
|
|
174
|
+
|
|
175
|
+
|
|
176
|
+
var _logger2 = _interopRequireWildcard(logger);
|
|
177
|
+
|
|
178
|
+
var _parseUrl = _interopRequireDefault(parseUrl_1);
|
|
179
|
+
|
|
180
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
181
|
+
|
|
182
|
+
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }
|
|
183
|
+
|
|
184
|
+
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (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; }
|
|
185
|
+
|
|
186
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
|
|
187
|
+
|
|
188
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
189
|
+
|
|
190
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
191
|
+
|
|
192
|
+
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
|
|
193
|
+
|
|
194
|
+
function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
|
|
195
|
+
|
|
196
|
+
var __NEXTAUTH = {
|
|
197
|
+
baseUrl: (0, _parseUrl.default)(process.env.NEXTAUTH_URL || process.env.VERCEL_URL).baseUrl,
|
|
198
|
+
basePath: (0, _parseUrl.default)(process.env.NEXTAUTH_URL).basePath,
|
|
199
|
+
baseUrlServer: (0, _parseUrl.default)(process.env.NEXTAUTH_URL_INTERNAL || process.env.NEXTAUTH_URL || process.env.VERCEL_URL).baseUrl,
|
|
200
|
+
basePathServer: (0, _parseUrl.default)(process.env.NEXTAUTH_URL_INTERNAL || process.env.NEXTAUTH_URL).basePath,
|
|
201
|
+
keepAlive: 0,
|
|
202
|
+
clientMaxAge: 0,
|
|
203
|
+
_clientLastSync: 0,
|
|
204
|
+
_clientSyncTimer: null,
|
|
205
|
+
_eventListenersAdded: false,
|
|
206
|
+
_clientSession: undefined,
|
|
207
|
+
_getSession: () => {}
|
|
208
|
+
};
|
|
209
|
+
var logger$1 = (0, _logger2.proxyLogger)(_logger2.default, __NEXTAUTH.basePath);
|
|
210
|
+
var broadcast = BroadcastChannel();
|
|
211
|
+
|
|
212
|
+
if (typeof window !== 'undefined' && !__NEXTAUTH._eventListenersAdded) {
|
|
213
|
+
__NEXTAUTH._eventListenersAdded = true;
|
|
214
|
+
broadcast.receive(() => __NEXTAUTH._getSession({
|
|
215
|
+
event: 'storage'
|
|
216
|
+
}));
|
|
217
|
+
document.addEventListener('visibilitychange', () => {
|
|
218
|
+
!document.hidden && __NEXTAUTH._getSession({
|
|
219
|
+
event: 'visibilitychange'
|
|
220
|
+
});
|
|
221
|
+
}, false);
|
|
222
|
+
}
|
|
223
|
+
|
|
224
|
+
var SessionContext = (0, React__default['default'].createContext)();
|
|
225
|
+
|
|
226
|
+
function useSession(session) {
|
|
227
|
+
var context = (0, React__default['default'].useContext)(SessionContext);
|
|
228
|
+
if (context) return context;
|
|
229
|
+
return _useSessionHook(session);
|
|
230
|
+
}
|
|
231
|
+
|
|
232
|
+
function _useSessionHook(session) {
|
|
233
|
+
var [data, setData] = (0, React__default['default'].useState)(session);
|
|
234
|
+
var [loading, setLoading] = (0, React__default['default'].useState)(!data);
|
|
235
|
+
(0, React__default['default'].useEffect)(() => {
|
|
236
|
+
__NEXTAUTH._getSession = _asyncToGenerator(function* () {
|
|
237
|
+
var {
|
|
238
|
+
event = null
|
|
239
|
+
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
240
|
+
|
|
241
|
+
try {
|
|
242
|
+
var triggredByEvent = event !== null;
|
|
243
|
+
var triggeredByStorageEvent = event === 'storage';
|
|
244
|
+
var clientMaxAge = __NEXTAUTH.clientMaxAge;
|
|
245
|
+
var clientLastSync = parseInt(__NEXTAUTH._clientLastSync);
|
|
246
|
+
|
|
247
|
+
var currentTime = _now();
|
|
248
|
+
|
|
249
|
+
var clientSession = __NEXTAUTH._clientSession;
|
|
250
|
+
|
|
251
|
+
if (!triggeredByStorageEvent && clientSession !== undefined) {
|
|
252
|
+
if (clientMaxAge === 0 && triggredByEvent !== true) {
|
|
253
|
+
return;
|
|
254
|
+
} else if (clientMaxAge > 0 && clientSession === null) {
|
|
255
|
+
return;
|
|
256
|
+
} else if (clientMaxAge > 0 && currentTime < clientLastSync + clientMaxAge) {
|
|
257
|
+
return;
|
|
258
|
+
}
|
|
259
|
+
}
|
|
260
|
+
|
|
261
|
+
if (clientSession === undefined) {
|
|
262
|
+
__NEXTAUTH._clientSession = null;
|
|
263
|
+
}
|
|
264
|
+
|
|
265
|
+
__NEXTAUTH._clientLastSync = _now();
|
|
266
|
+
var newClientSessionData = yield getSession({
|
|
267
|
+
triggerEvent: !triggeredByStorageEvent
|
|
268
|
+
});
|
|
269
|
+
__NEXTAUTH._clientSession = newClientSessionData;
|
|
270
|
+
setData(newClientSessionData);
|
|
271
|
+
setLoading(false);
|
|
272
|
+
} catch (error) {
|
|
273
|
+
logger$1.error('CLIENT_USE_SESSION_ERROR', error);
|
|
274
|
+
setLoading(false);
|
|
275
|
+
}
|
|
276
|
+
});
|
|
277
|
+
|
|
278
|
+
__NEXTAUTH._getSession();
|
|
279
|
+
});
|
|
280
|
+
return [data, loading];
|
|
281
|
+
}
|
|
282
|
+
|
|
283
|
+
function getSession(_x) {
|
|
284
|
+
return _getSession2.apply(this, arguments);
|
|
285
|
+
}
|
|
286
|
+
|
|
287
|
+
function _getSession2() {
|
|
288
|
+
_getSession2 = _asyncToGenerator(function* (ctx) {
|
|
289
|
+
var _ctx$triggerEvent;
|
|
290
|
+
|
|
291
|
+
var session = yield _fetchData('session', ctx);
|
|
292
|
+
|
|
293
|
+
if ((_ctx$triggerEvent = ctx === null || ctx === void 0 ? void 0 : ctx.triggerEvent) !== null && _ctx$triggerEvent !== void 0 ? _ctx$triggerEvent : true) {
|
|
294
|
+
broadcast.post({
|
|
295
|
+
event: 'session',
|
|
296
|
+
data: {
|
|
297
|
+
trigger: 'getSession'
|
|
298
|
+
}
|
|
299
|
+
});
|
|
300
|
+
}
|
|
301
|
+
|
|
302
|
+
return session;
|
|
303
|
+
});
|
|
304
|
+
return _getSession2.apply(this, arguments);
|
|
305
|
+
}
|
|
306
|
+
|
|
307
|
+
function getCsrfToken(_x2) {
|
|
308
|
+
return _getCsrfToken.apply(this, arguments);
|
|
309
|
+
}
|
|
310
|
+
|
|
311
|
+
function _getCsrfToken() {
|
|
312
|
+
_getCsrfToken = _asyncToGenerator(function* (ctx) {
|
|
313
|
+
var _yield$_fetchData;
|
|
314
|
+
|
|
315
|
+
return (_yield$_fetchData = yield _fetchData('csrf', ctx)) === null || _yield$_fetchData === void 0 ? void 0 : _yield$_fetchData.csrfToken;
|
|
316
|
+
});
|
|
317
|
+
return _getCsrfToken.apply(this, arguments);
|
|
318
|
+
}
|
|
319
|
+
|
|
320
|
+
function getProviders() {
|
|
321
|
+
return _getProviders.apply(this, arguments);
|
|
322
|
+
}
|
|
323
|
+
|
|
324
|
+
function _getProviders() {
|
|
325
|
+
_getProviders = _asyncToGenerator(function* () {
|
|
326
|
+
return _fetchData('providers');
|
|
327
|
+
});
|
|
328
|
+
return _getProviders.apply(this, arguments);
|
|
329
|
+
}
|
|
330
|
+
|
|
331
|
+
function signIn(_x3) {
|
|
332
|
+
return _signIn.apply(this, arguments);
|
|
333
|
+
}
|
|
334
|
+
|
|
335
|
+
function _signIn() {
|
|
336
|
+
_signIn = _asyncToGenerator(function* (provider) {
|
|
337
|
+
var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
338
|
+
var authorizationParams = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
|
|
339
|
+
var {
|
|
340
|
+
callbackUrl = window.location,
|
|
341
|
+
redirect = true
|
|
342
|
+
} = options;
|
|
343
|
+
|
|
344
|
+
var baseUrl = _apiBaseUrl();
|
|
345
|
+
|
|
346
|
+
var providers = yield getProviders();
|
|
347
|
+
|
|
348
|
+
if (!(provider in providers)) {
|
|
349
|
+
window.location = "".concat(baseUrl, "/signin?callbackUrl=").concat(encodeURIComponent(callbackUrl));
|
|
350
|
+
return;
|
|
351
|
+
}
|
|
352
|
+
|
|
353
|
+
var isCredentials = providers[provider].type === 'credentials';
|
|
354
|
+
var isEmail = providers[provider].type === 'email';
|
|
355
|
+
var canRedirectBeDisabled = isCredentials || isEmail;
|
|
356
|
+
var signInUrl = isCredentials ? "".concat(baseUrl, "/callback/").concat(provider) : "".concat(baseUrl, "/signin/").concat(provider);
|
|
357
|
+
var fetchOptions = {
|
|
358
|
+
method: 'post',
|
|
359
|
+
headers: {
|
|
360
|
+
'Content-Type': 'application/x-www-form-urlencoded'
|
|
361
|
+
},
|
|
362
|
+
body: new URLSearchParams(_objectSpread(_objectSpread({}, options), {}, {
|
|
363
|
+
csrfToken: yield getCsrfToken(),
|
|
364
|
+
callbackUrl,
|
|
365
|
+
json: true
|
|
366
|
+
}))
|
|
367
|
+
};
|
|
368
|
+
|
|
369
|
+
var _signInUrl = "".concat(signInUrl, "?").concat(new URLSearchParams(authorizationParams));
|
|
370
|
+
|
|
371
|
+
var res = yield fetch(_signInUrl, fetchOptions);
|
|
372
|
+
var data = yield res.json();
|
|
373
|
+
|
|
374
|
+
if (redirect || !canRedirectBeDisabled) {
|
|
375
|
+
var _data$url;
|
|
376
|
+
|
|
377
|
+
var url = (_data$url = data.url) !== null && _data$url !== void 0 ? _data$url : callbackUrl;
|
|
378
|
+
window.location = url;
|
|
379
|
+
if (url.includes('#')) window.location.reload();
|
|
380
|
+
return;
|
|
381
|
+
}
|
|
382
|
+
|
|
383
|
+
var error = new URL(data.url).searchParams.get('error');
|
|
384
|
+
|
|
385
|
+
if (res.ok) {
|
|
386
|
+
yield __NEXTAUTH._getSession({
|
|
387
|
+
event: 'storage'
|
|
388
|
+
});
|
|
389
|
+
}
|
|
390
|
+
|
|
391
|
+
return {
|
|
392
|
+
error,
|
|
393
|
+
status: res.status,
|
|
394
|
+
ok: res.ok,
|
|
395
|
+
url: error ? null : data.url
|
|
396
|
+
};
|
|
397
|
+
});
|
|
398
|
+
return _signIn.apply(this, arguments);
|
|
399
|
+
}
|
|
400
|
+
|
|
401
|
+
function signOut() {
|
|
402
|
+
return _signOut.apply(this, arguments);
|
|
403
|
+
}
|
|
404
|
+
|
|
405
|
+
function _signOut() {
|
|
406
|
+
_signOut = _asyncToGenerator(function* () {
|
|
407
|
+
var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
408
|
+
var {
|
|
409
|
+
callbackUrl = window.location,
|
|
410
|
+
redirect = true
|
|
411
|
+
} = options;
|
|
412
|
+
|
|
413
|
+
var baseUrl = _apiBaseUrl();
|
|
414
|
+
|
|
415
|
+
var fetchOptions = {
|
|
416
|
+
method: 'post',
|
|
417
|
+
headers: {
|
|
418
|
+
'Content-Type': 'application/x-www-form-urlencoded'
|
|
419
|
+
},
|
|
420
|
+
body: new URLSearchParams({
|
|
421
|
+
csrfToken: yield getCsrfToken(),
|
|
422
|
+
callbackUrl,
|
|
423
|
+
json: true
|
|
424
|
+
})
|
|
425
|
+
};
|
|
426
|
+
var res = yield fetch("".concat(baseUrl, "/signout"), fetchOptions);
|
|
427
|
+
var data = yield res.json();
|
|
428
|
+
broadcast.post({
|
|
429
|
+
event: 'session',
|
|
430
|
+
data: {
|
|
431
|
+
trigger: 'signout'
|
|
432
|
+
}
|
|
433
|
+
});
|
|
434
|
+
|
|
435
|
+
if (redirect) {
|
|
436
|
+
var _data$url2;
|
|
437
|
+
|
|
438
|
+
var url = (_data$url2 = data.url) !== null && _data$url2 !== void 0 ? _data$url2 : callbackUrl;
|
|
439
|
+
window.location = url;
|
|
440
|
+
if (url.includes('#')) window.location.reload();
|
|
441
|
+
return;
|
|
442
|
+
}
|
|
443
|
+
|
|
444
|
+
yield __NEXTAUTH._getSession({
|
|
445
|
+
event: 'storage'
|
|
446
|
+
});
|
|
447
|
+
return data;
|
|
448
|
+
});
|
|
449
|
+
return _signOut.apply(this, arguments);
|
|
450
|
+
}
|
|
451
|
+
|
|
452
|
+
function setOptions() {
|
|
453
|
+
var {
|
|
454
|
+
baseUrl,
|
|
455
|
+
basePath,
|
|
456
|
+
clientMaxAge,
|
|
457
|
+
keepAlive
|
|
458
|
+
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
459
|
+
if (baseUrl) __NEXTAUTH.baseUrl = baseUrl;
|
|
460
|
+
if (basePath) __NEXTAUTH.basePath = basePath;
|
|
461
|
+
if (clientMaxAge) __NEXTAUTH.clientMaxAge = clientMaxAge;
|
|
462
|
+
|
|
463
|
+
if (keepAlive) {
|
|
464
|
+
__NEXTAUTH.keepAlive = keepAlive;
|
|
465
|
+
if (typeof window === 'undefined') return;
|
|
466
|
+
|
|
467
|
+
if (__NEXTAUTH._clientSyncTimer !== null) {
|
|
468
|
+
clearTimeout(__NEXTAUTH._clientSyncTimer);
|
|
469
|
+
}
|
|
470
|
+
|
|
471
|
+
__NEXTAUTH._clientSyncTimer = setTimeout(_asyncToGenerator(function* () {
|
|
472
|
+
if (!__NEXTAUTH._clientSession) return;
|
|
473
|
+
yield __NEXTAUTH._getSession({
|
|
474
|
+
event: 'timer'
|
|
475
|
+
});
|
|
476
|
+
}), keepAlive * 1000);
|
|
477
|
+
}
|
|
478
|
+
}
|
|
479
|
+
|
|
480
|
+
function Provider(_ref3) {
|
|
481
|
+
var {
|
|
482
|
+
children,
|
|
483
|
+
session,
|
|
484
|
+
options
|
|
485
|
+
} = _ref3;
|
|
486
|
+
setOptions(options);
|
|
487
|
+
return (0, React__default['default'].createElement)(SessionContext.Provider, {
|
|
488
|
+
value: useSession(session)
|
|
489
|
+
}, children);
|
|
490
|
+
}
|
|
491
|
+
|
|
492
|
+
function _fetchData(_x4) {
|
|
493
|
+
return _fetchData2.apply(this, arguments);
|
|
494
|
+
}
|
|
495
|
+
|
|
496
|
+
function _fetchData2() {
|
|
497
|
+
_fetchData2 = _asyncToGenerator(function* (path) {
|
|
498
|
+
var {
|
|
499
|
+
ctx,
|
|
500
|
+
req = ctx === null || ctx === void 0 ? void 0 : ctx.req
|
|
501
|
+
} = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
502
|
+
|
|
503
|
+
try {
|
|
504
|
+
var baseUrl = yield _apiBaseUrl();
|
|
505
|
+
var options = req ? {
|
|
506
|
+
headers: {
|
|
507
|
+
cookie: req.headers.cookie
|
|
508
|
+
}
|
|
509
|
+
} : {};
|
|
510
|
+
var res = yield fetch("".concat(baseUrl, "/").concat(path), options);
|
|
511
|
+
var data = yield res.json();
|
|
512
|
+
return Object.keys(data).length > 0 ? data : null;
|
|
513
|
+
} catch (error) {
|
|
514
|
+
logger$1.error('CLIENT_FETCH_ERROR', path, error);
|
|
515
|
+
return null;
|
|
516
|
+
}
|
|
517
|
+
});
|
|
518
|
+
return _fetchData2.apply(this, arguments);
|
|
519
|
+
}
|
|
520
|
+
|
|
521
|
+
function _apiBaseUrl() {
|
|
522
|
+
if (typeof window === 'undefined') {
|
|
523
|
+
if (!process.env.NEXTAUTH_URL) {
|
|
524
|
+
logger$1.warn('NEXTAUTH_URL', 'NEXTAUTH_URL environment variable not set');
|
|
525
|
+
}
|
|
526
|
+
|
|
527
|
+
return "".concat(__NEXTAUTH.baseUrlServer).concat(__NEXTAUTH.basePathServer);
|
|
528
|
+
}
|
|
529
|
+
|
|
530
|
+
return __NEXTAUTH.basePath;
|
|
531
|
+
}
|
|
532
|
+
|
|
533
|
+
function _now() {
|
|
534
|
+
return Math.floor(Date.now() / 1000);
|
|
535
|
+
}
|
|
536
|
+
|
|
537
|
+
function BroadcastChannel() {
|
|
538
|
+
var name = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'nextauth.message';
|
|
539
|
+
return {
|
|
540
|
+
receive(onReceive) {
|
|
541
|
+
if (typeof window === 'undefined') return;
|
|
542
|
+
window.addEventListener('storage', function () {
|
|
543
|
+
var _ref4 = _asyncToGenerator(function* (event) {
|
|
544
|
+
if (event.key !== name) return;
|
|
545
|
+
var message = JSON.parse(event.newValue);
|
|
546
|
+
if ((message === null || message === void 0 ? void 0 : message.event) !== 'session' || !(message !== null && message !== void 0 && message.data)) return;
|
|
547
|
+
onReceive(message);
|
|
548
|
+
});
|
|
549
|
+
|
|
550
|
+
return function (_x5) {
|
|
551
|
+
return _ref4.apply(this, arguments);
|
|
552
|
+
};
|
|
553
|
+
}());
|
|
554
|
+
},
|
|
555
|
+
|
|
556
|
+
post(message) {
|
|
557
|
+
if (typeof localStorage === 'undefined') return;
|
|
558
|
+
localStorage.setItem(name, JSON.stringify(_objectSpread(_objectSpread({}, message), {}, {
|
|
559
|
+
timestamp: _now()
|
|
560
|
+
})));
|
|
561
|
+
}
|
|
562
|
+
|
|
563
|
+
};
|
|
564
|
+
}
|
|
565
|
+
|
|
566
|
+
var _default = {
|
|
567
|
+
getSession,
|
|
568
|
+
getCsrfToken,
|
|
569
|
+
getProviders,
|
|
570
|
+
useSession,
|
|
571
|
+
signIn,
|
|
572
|
+
signOut,
|
|
573
|
+
Provider,
|
|
574
|
+
setOptions,
|
|
575
|
+
options: setOptions,
|
|
576
|
+
session: getSession,
|
|
577
|
+
providers: getProviders,
|
|
578
|
+
csrfToken: getCsrfToken,
|
|
579
|
+
signin: signIn,
|
|
580
|
+
signout: signOut
|
|
581
|
+
};
|
|
582
|
+
exports.default = _default;
|
|
583
|
+
});
|
|
584
|
+
|
|
585
|
+
_commonjsHelpers.unwrapExports(client$1);
|
|
586
|
+
client$1.useSession;
|
|
587
|
+
client$1.getSession;
|
|
588
|
+
client$1.getProviders;
|
|
589
|
+
client$1.signIn;
|
|
590
|
+
client$1.signOut;
|
|
591
|
+
client$1.setOptions;
|
|
592
|
+
client$1.Provider;
|
|
593
|
+
|
|
594
|
+
var client = client$1.default;
|
|
595
|
+
|
|
596
|
+
var css = ".AuthWrapper-module_loginBox__3l-BE {\r\n margin-bottom: 2rem;\r\n width: 350px;\r\n max-width: 90vw;\r\n margin-left: auto;\r\n margin-right: auto;\r\n /* box-shadow: 2px 5px 12px rgba(0, 0, 0, 0.15); */\r\n background: #fff;\r\n z-index: 1;\r\n}\r\n.AuthWrapper-module_loginBox_title__12rGD {\r\n margin-bottom: 2rem;\r\n text-align: center;\r\n}\r\n.AuthWrapper-module_bar__1dafn {\r\n background: #eee;\r\n margin-left: unset;\r\n margin-right: unset;\r\n}\r\n.AuthWrapper-module_bar__1dafn:nth-child(1) {\r\n float: left;\r\n border-right: 1rem solid #fff;\r\n background: rgb(245, 245, 245);\r\n height: 10rem;\r\n width: 25%;\r\n margin-left: auto;\r\n margin-right: auto;\r\n margin-bottom: 2rem;\r\n}\r\n.AuthWrapper-module_bar__1dafn:nth-child(2n) {\r\n width: 97%;\r\n height: 1.5rem;\r\n margin-bottom: 0.25rem;\r\n}\r\n.AuthWrapper-module_bar__1dafn.AuthWrapper-module_bar__1dafn:nth-child(3n) {\r\n width: 96%;\r\n height: 1.5rem;\r\n margin-bottom: 1.5rem;\r\n}\r\n.AuthWrapper-module_bar__1dafn.AuthWrapper-module_bar__1dafn:nth-child(4n) {\r\n width: 72%;\r\n height: 1.5rem;\r\n margin-bottom: 0.25rem;\r\n}\r\n.AuthWrapper-module_bar__1dafn.AuthWrapper-module_bar__1dafn:nth-child(5n) {\r\n width: 88%;\r\n height: 1.5rem;\r\n margin-bottom: 0.25rem;\r\n}\r\n\r\n.AuthWrapper-module_iframe__2wDJW {\r\n margin-top: -3rem;\r\n border: none;\r\n width: 100%;\r\n height: 1900px;\r\n}";
|
|
597
|
+
var styles = { "loginBox": "AuthWrapper-module_loginBox__3l-BE", "loginBox_title": "AuthWrapper-module_loginBox_title__12rGD", "bar": "AuthWrapper-module_bar__1dafn", "iframe": "AuthWrapper-module_iframe__2wDJW" };
|
|
598
|
+
styleInject_es.styleInject(css);
|
|
599
|
+
|
|
600
|
+
var AuthWrapper = function AuthWrapper(_ref) {
|
|
601
|
+
var children = _ref.children,
|
|
602
|
+
needAuth = _ref.needAuth,
|
|
603
|
+
_ref$formUrl = _ref.formUrl,
|
|
604
|
+
formUrl = _ref$formUrl === undefined ? '' : _ref$formUrl;
|
|
605
|
+
|
|
606
|
+
var _nextAuth$useSession = client.useSession(),
|
|
607
|
+
_nextAuth$useSession2 = slicedToArray._slicedToArray(_nextAuth$useSession, 2),
|
|
608
|
+
session = _nextAuth$useSession2[0],
|
|
609
|
+
loading = _nextAuth$useSession2[1];
|
|
610
|
+
|
|
611
|
+
var _useState = React.useState(null),
|
|
612
|
+
_useState2 = slicedToArray._slicedToArray(_useState, 2),
|
|
613
|
+
callbackUrl = _useState2[0],
|
|
614
|
+
setCallbackUrl = _useState2[1];
|
|
615
|
+
|
|
616
|
+
var _useState3 = React.useState(),
|
|
617
|
+
_useState4 = slicedToArray._slicedToArray(_useState3, 2),
|
|
618
|
+
email = _useState4[0],
|
|
619
|
+
setEmail = _useState4[1];
|
|
620
|
+
|
|
621
|
+
var _useState5 = React.useState(false),
|
|
622
|
+
_useState6 = slicedToArray._slicedToArray(_useState5, 2),
|
|
623
|
+
showForm = _useState6[0],
|
|
624
|
+
setShowForm = _useState6[1];
|
|
625
|
+
|
|
626
|
+
var _useState7 = React.useState(),
|
|
627
|
+
_useState8 = slicedToArray._slicedToArray(_useState7, 2),
|
|
628
|
+
password = _useState8[0],
|
|
629
|
+
setPassword = _useState8[1];
|
|
630
|
+
|
|
631
|
+
React.useEffect(function () {
|
|
632
|
+
setCallbackUrl(window.location.href);
|
|
633
|
+
}, []);
|
|
634
|
+
|
|
635
|
+
if (session || !needAuth) {
|
|
636
|
+
return React__default['default'].createElement(
|
|
637
|
+
'div',
|
|
638
|
+
null,
|
|
639
|
+
children
|
|
640
|
+
);
|
|
641
|
+
}
|
|
642
|
+
|
|
643
|
+
if (!loading) {
|
|
644
|
+
return React__default['default'].createElement(
|
|
645
|
+
'div',
|
|
646
|
+
{ style: { position: 'relative', minHeight: '300px', paddingTop: '2rem' } },
|
|
647
|
+
callbackUrl && React__default['default'].createElement(
|
|
648
|
+
'div',
|
|
649
|
+
null,
|
|
650
|
+
!showForm && React__default['default'].createElement(
|
|
651
|
+
'div',
|
|
652
|
+
{ className: styles.loginBox },
|
|
653
|
+
React__default['default'].createElement(
|
|
654
|
+
'div',
|
|
655
|
+
{ className: styles.loginBox_title },
|
|
656
|
+
React__default['default'].createElement(
|
|
657
|
+
'b',
|
|
658
|
+
null,
|
|
659
|
+
'Please log in to view this content.'
|
|
660
|
+
)
|
|
661
|
+
),
|
|
662
|
+
React__default['default'].createElement(
|
|
663
|
+
reactBootstrap.Form,
|
|
664
|
+
{ onSubmit: function onSubmit(e) {
|
|
665
|
+
return e.preventDefault();
|
|
666
|
+
} },
|
|
667
|
+
React__default['default'].createElement(
|
|
668
|
+
reactBootstrap.Form.Group,
|
|
669
|
+
{ controlId: 'email' },
|
|
670
|
+
React__default['default'].createElement(reactBootstrap.Form.Control, { type: 'email', onChange: function onChange(e) {
|
|
671
|
+
return setEmail(e.target.value);
|
|
672
|
+
}, placeholder: 'Email' })
|
|
673
|
+
),
|
|
674
|
+
React__default['default'].createElement(
|
|
675
|
+
reactBootstrap.Form.Group,
|
|
676
|
+
{ controlId: 'password' },
|
|
677
|
+
React__default['default'].createElement(reactBootstrap.Form.Control, { type: 'password', onChange: function onChange(e) {
|
|
678
|
+
return setPassword(e.target.value);
|
|
679
|
+
}, placeholder: 'Password' })
|
|
680
|
+
),
|
|
681
|
+
React__default['default'].createElement(
|
|
682
|
+
'button',
|
|
683
|
+
{ className: 'btn btn-primary btn-block', onClick: function onClick() {
|
|
684
|
+
return client.signIn('credentials', { email: email, password: password, callbackUrl: callbackUrl });
|
|
685
|
+
} },
|
|
686
|
+
'Sign in'
|
|
687
|
+
)
|
|
688
|
+
),
|
|
689
|
+
React__default['default'].createElement(
|
|
690
|
+
'p',
|
|
691
|
+
{ style: { textAlign: 'center' }, className: 'mt-2 mb-0' },
|
|
692
|
+
'Don\'t have an account?',
|
|
693
|
+
' ',
|
|
694
|
+
React__default['default'].createElement(
|
|
695
|
+
'a',
|
|
696
|
+
{ style: { color: 'blue', textDecoration: 'underline' }, onClick: function onClick() {
|
|
697
|
+
return setShowForm(!showForm);
|
|
698
|
+
} },
|
|
699
|
+
'Click Here'
|
|
700
|
+
),
|
|
701
|
+
' to register.'
|
|
702
|
+
),
|
|
703
|
+
React__default['default'].createElement(
|
|
704
|
+
'p',
|
|
705
|
+
{ className: 'mt-1', style: { fontSize: '.8em', textAlign: 'center' } },
|
|
706
|
+
React__default['default'].createElement(
|
|
707
|
+
'em',
|
|
708
|
+
null,
|
|
709
|
+
React__default['default'].createElement(
|
|
710
|
+
'a',
|
|
711
|
+
{ href: '/forgotpassword', style: { color: 'blue', textDecoration: 'underline' } },
|
|
712
|
+
'Forgot your password? '
|
|
713
|
+
)
|
|
714
|
+
)
|
|
715
|
+
)
|
|
716
|
+
),
|
|
717
|
+
showForm && React__default['default'].createElement('iframe', { className: styles.iframe, src: formUrl })
|
|
718
|
+
)
|
|
719
|
+
);
|
|
720
|
+
} else {
|
|
721
|
+
return null;
|
|
722
|
+
}
|
|
723
|
+
};
|
|
724
|
+
|
|
725
|
+
module.exports = AuthWrapper;
|