@flagship.io/react-sdk 5.1.1 → 5.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.
@@ -14,10 +14,10 @@ __webpack_require__.r(__webpack_exports__);
14
14
  /* harmony export */ });
15
15
  /* harmony import */ var core_js_modules_es_regexp_flags_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core-js/modules/es.regexp.flags.js */ "./node_modules/core-js/modules/es.regexp.flags.js");
16
16
  /* harmony import */ var core_js_modules_es_regexp_flags_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_regexp_flags_js__WEBPACK_IMPORTED_MODULE_0__);
17
- /* harmony import */ var _flagship_io_js_sdk__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @flagship.io/js-sdk */ "@flagship.io/js-sdk");
18
- /* harmony import */ var _flagship_io_js_sdk__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_flagship_io_js_sdk__WEBPACK_IMPORTED_MODULE_1__);
17
+ /* harmony import */ var _deps__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./deps */ "@flagship.io/js-sdk");
18
+ /* harmony import */ var _deps__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_deps__WEBPACK_IMPORTED_MODULE_2__);
19
19
  /* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./constants */ "./src/constants.ts");
20
- /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./utils */ "./src/utils.ts");
20
+ /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./utils */ "./src/utils.ts");
21
21
 
22
22
  function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
23
23
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
@@ -31,7 +31,7 @@ class FSFlag {
31
31
  _defineProperty(this, "flag", void 0);
32
32
  const flagsData = state.flags;
33
33
  if (!state.hasVisitorData) {
34
- (0,_utils__WEBPACK_IMPORTED_MODULE_2__.logWarn)(_flagship_io_js_sdk__WEBPACK_IMPORTED_MODULE_1__.Flagship.getConfig(), _constants__WEBPACK_IMPORTED_MODULE_3__.noVisitorMessage, 'GetFlag');
34
+ (0,_utils__WEBPACK_IMPORTED_MODULE_1__.logWarn)(_deps__WEBPACK_IMPORTED_MODULE_2__.Flagship.getConfig(), _constants__WEBPACK_IMPORTED_MODULE_3__.noVisitorMessage, 'GetFlag');
35
35
  }
36
36
  this.key = key;
37
37
  this.flag = flagsData === null || flagsData === void 0 ? void 0 : flagsData.get(key);
@@ -43,8 +43,8 @@ class FSFlag {
43
43
  if (this.flag.value === null || this.flag.value === undefined) {
44
44
  return defaultValue;
45
45
  }
46
- if (defaultValue !== null && defaultValue !== undefined && !(0,_utils__WEBPACK_IMPORTED_MODULE_2__.hasSameType)(this.flag.value, defaultValue)) {
47
- (0,_utils__WEBPACK_IMPORTED_MODULE_2__.logInfo)(_flagship_io_js_sdk__WEBPACK_IMPORTED_MODULE_1__.Flagship.getConfig(), (0,_utils__WEBPACK_IMPORTED_MODULE_2__.sprintf)(_constants__WEBPACK_IMPORTED_MODULE_3__.GET_FLAG_CAST_ERROR, this.key), 'getValue');
46
+ if (defaultValue !== null && defaultValue !== undefined && !(0,_utils__WEBPACK_IMPORTED_MODULE_1__.hasSameType)(this.flag.value, defaultValue)) {
47
+ (0,_utils__WEBPACK_IMPORTED_MODULE_1__.logInfo)(_deps__WEBPACK_IMPORTED_MODULE_2__.Flagship.getConfig(), (0,_utils__WEBPACK_IMPORTED_MODULE_1__.sprintf)(_constants__WEBPACK_IMPORTED_MODULE_3__.GET_FLAG_CAST_ERROR, this.key), 'getValue');
48
48
  return defaultValue;
49
49
  }
50
50
  return this.flag.value;
@@ -60,9 +60,9 @@ class FSFlag {
60
60
  }
61
61
  get metadata() {
62
62
  if (!this.flag) {
63
- return _flagship_io_js_sdk__WEBPACK_IMPORTED_MODULE_1__.FSFlagMetadata.Empty();
63
+ return _deps__WEBPACK_IMPORTED_MODULE_2__.FSFlagMetadata.Empty();
64
64
  }
65
- return new _flagship_io_js_sdk__WEBPACK_IMPORTED_MODULE_1__.FSFlagMetadata({
65
+ return new _deps__WEBPACK_IMPORTED_MODULE_2__.FSFlagMetadata({
66
66
  campaignId: this.flag.campaignId,
67
67
  campaignName: this.flag.campaignName,
68
68
  variationGroupId: this.flag.variationGroupId,
@@ -76,9 +76,9 @@ class FSFlag {
76
76
  }
77
77
  get status() {
78
78
  if (!this.exists()) {
79
- return _flagship_io_js_sdk__WEBPACK_IMPORTED_MODULE_1__.FSFlagStatus.NOT_FOUND;
79
+ return _deps__WEBPACK_IMPORTED_MODULE_2__.FSFlagStatus.NOT_FOUND;
80
80
  }
81
- return _flagship_io_js_sdk__WEBPACK_IMPORTED_MODULE_1__.FSFlagStatus.FETCHED;
81
+ return _deps__WEBPACK_IMPORTED_MODULE_2__.FSFlagStatus.FETCHED;
82
82
  }
83
83
  }
84
84
 
@@ -126,12 +126,12 @@ __webpack_require__.r(__webpack_exports__);
126
126
  /* harmony import */ var core_js_modules_es_regexp_flags_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_regexp_flags_js__WEBPACK_IMPORTED_MODULE_0__);
127
127
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ "react");
128
128
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
129
- /* harmony import */ var _flagship_io_js_sdk__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @flagship.io/js-sdk */ "@flagship.io/js-sdk");
130
- /* harmony import */ var _flagship_io_js_sdk__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_flagship_io_js_sdk__WEBPACK_IMPORTED_MODULE_2__);
131
- /* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./constants */ "./src/constants.ts");
132
- /* harmony import */ var _FlagshipContext__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./FlagshipContext */ "./src/FlagshipContext.tsx");
133
- /* harmony import */ var _FSFlag__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./FSFlag */ "./src/FSFlag.ts");
134
- /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./utils */ "./src/utils.ts");
129
+ /* harmony import */ var _deps__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./deps */ "@flagship.io/js-sdk");
130
+ /* harmony import */ var _deps__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_deps__WEBPACK_IMPORTED_MODULE_6__);
131
+ /* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./constants */ "./src/constants.ts");
132
+ /* harmony import */ var _FlagshipContext__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./FlagshipContext */ "./src/FlagshipContext.tsx");
133
+ /* harmony import */ var _FSFlag__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./FSFlag */ "./src/FSFlag.ts");
134
+ /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./utils */ "./src/utils.ts");
135
135
  'use client';
136
136
 
137
137
 
@@ -151,12 +151,12 @@ __webpack_require__.r(__webpack_exports__);
151
151
  const useFsFlag = key => {
152
152
  const {
153
153
  state
154
- } = (0,react__WEBPACK_IMPORTED_MODULE_1__.useContext)(_FlagshipContext__WEBPACK_IMPORTED_MODULE_3__.FlagshipContext);
154
+ } = (0,react__WEBPACK_IMPORTED_MODULE_1__.useContext)(_FlagshipContext__WEBPACK_IMPORTED_MODULE_2__.FlagshipContext);
155
155
  const {
156
156
  visitor
157
157
  } = state;
158
158
  if (!visitor) {
159
- return new _FSFlag__WEBPACK_IMPORTED_MODULE_4__.FSFlag(key, state);
159
+ return new _FSFlag__WEBPACK_IMPORTED_MODULE_3__.FSFlag(key, state);
160
160
  }
161
161
  return visitor.getFlag(key);
162
162
  };
@@ -168,20 +168,20 @@ const handleContextChange = param => {
168
168
  config
169
169
  } = param;
170
170
  if (!visitor) {
171
- (0,_utils__WEBPACK_IMPORTED_MODULE_5__.logError)(config, _constants__WEBPACK_IMPORTED_MODULE_6__.noVisitorMessage, functionName);
171
+ (0,_utils__WEBPACK_IMPORTED_MODULE_4__.logError)(config, _constants__WEBPACK_IMPORTED_MODULE_5__.noVisitorMessage, functionName);
172
172
  return;
173
173
  }
174
- const originalContextClone = (0,_utils__WEBPACK_IMPORTED_MODULE_5__.deepClone)(visitor.context);
174
+ const originalContextClone = (0,_utils__WEBPACK_IMPORTED_MODULE_4__.deepClone)(visitor.context);
175
175
  updateFunction();
176
176
  const updatedContext = visitor.context;
177
- if ((0,_utils__WEBPACK_IMPORTED_MODULE_5__.hasContextChanged)(originalContextClone, updatedContext)) {
177
+ if ((0,_utils__WEBPACK_IMPORTED_MODULE_4__.hasContextChanged)(originalContextClone, updatedContext)) {
178
178
  visitor.fetchFlags();
179
179
  }
180
180
  };
181
181
  const useFlagship = () => {
182
182
  const {
183
183
  state
184
- } = (0,react__WEBPACK_IMPORTED_MODULE_1__.useContext)(_FlagshipContext__WEBPACK_IMPORTED_MODULE_3__.FlagshipContext);
184
+ } = (0,react__WEBPACK_IMPORTED_MODULE_1__.useContext)(_FlagshipContext__WEBPACK_IMPORTED_MODULE_2__.FlagshipContext);
185
185
  const {
186
186
  visitor,
187
187
  config
@@ -205,7 +205,7 @@ const useFlagship = () => {
205
205
  const fsAuthenticate = (0,react__WEBPACK_IMPORTED_MODULE_1__.useCallback)(visitorId => {
206
206
  const functionName = 'authenticate';
207
207
  if (!visitor) {
208
- (0,_utils__WEBPACK_IMPORTED_MODULE_5__.logError)(config, _constants__WEBPACK_IMPORTED_MODULE_6__.noVisitorMessage, functionName);
208
+ (0,_utils__WEBPACK_IMPORTED_MODULE_4__.logError)(config, _constants__WEBPACK_IMPORTED_MODULE_5__.noVisitorMessage, functionName);
209
209
  return;
210
210
  }
211
211
  const originalVisitorId = visitor.visitorId;
@@ -217,7 +217,7 @@ const useFlagship = () => {
217
217
  const fsUnauthenticate = (0,react__WEBPACK_IMPORTED_MODULE_1__.useCallback)(() => {
218
218
  const functionName = 'unauthenticate';
219
219
  if (!visitor) {
220
- (0,_utils__WEBPACK_IMPORTED_MODULE_5__.logError)(config, _constants__WEBPACK_IMPORTED_MODULE_6__.noVisitorMessage, functionName);
220
+ (0,_utils__WEBPACK_IMPORTED_MODULE_4__.logError)(config, _constants__WEBPACK_IMPORTED_MODULE_5__.noVisitorMessage, functionName);
221
221
  return;
222
222
  }
223
223
  const originalVisitorId = visitor.visitorId;
@@ -229,7 +229,7 @@ const useFlagship = () => {
229
229
  const fsSendHit = (0,react__WEBPACK_IMPORTED_MODULE_1__.useCallback)(hit => {
230
230
  const functionName = 'sendHit';
231
231
  if (!visitor) {
232
- (0,_utils__WEBPACK_IMPORTED_MODULE_5__.logError)(config, _constants__WEBPACK_IMPORTED_MODULE_6__.noVisitorMessage, functionName);
232
+ (0,_utils__WEBPACK_IMPORTED_MODULE_4__.logError)(config, _constants__WEBPACK_IMPORTED_MODULE_5__.noVisitorMessage, functionName);
233
233
  return Promise.resolve();
234
234
  }
235
235
  if (Array.isArray(hit)) {
@@ -239,35 +239,35 @@ const useFlagship = () => {
239
239
  }, [visitor]);
240
240
  const getFlag = (0,react__WEBPACK_IMPORTED_MODULE_1__.useCallback)(key => {
241
241
  if (!visitor) {
242
- return new _FSFlag__WEBPACK_IMPORTED_MODULE_4__.FSFlag(key, state);
242
+ return new _FSFlag__WEBPACK_IMPORTED_MODULE_3__.FSFlag(key, state);
243
243
  }
244
244
  return visitor.getFlag(key);
245
245
  }, [visitor]);
246
246
  const fetchFlags = (0,react__WEBPACK_IMPORTED_MODULE_1__.useCallback)(async () => {
247
247
  if (!visitor) {
248
- (0,_utils__WEBPACK_IMPORTED_MODULE_5__.logWarn)(config, _constants__WEBPACK_IMPORTED_MODULE_6__.noVisitorMessage, 'fetchFlags');
248
+ (0,_utils__WEBPACK_IMPORTED_MODULE_4__.logWarn)(config, _constants__WEBPACK_IMPORTED_MODULE_5__.noVisitorMessage, 'fetchFlags');
249
249
  return Promise.resolve();
250
250
  }
251
251
  return visitor.fetchFlags();
252
252
  }, [visitor]);
253
253
  const setConsent = (0,react__WEBPACK_IMPORTED_MODULE_1__.useCallback)(hasConsented => {
254
254
  if (!visitor) {
255
- (0,_utils__WEBPACK_IMPORTED_MODULE_5__.logWarn)(config, _constants__WEBPACK_IMPORTED_MODULE_6__.noVisitorMessage, 'setConsent');
255
+ (0,_utils__WEBPACK_IMPORTED_MODULE_4__.logWarn)(config, _constants__WEBPACK_IMPORTED_MODULE_5__.noVisitorMessage, 'setConsent');
256
256
  return;
257
257
  }
258
258
  visitor.setConsent(hasConsented);
259
259
  }, [visitor]);
260
260
  const close = (0,react__WEBPACK_IMPORTED_MODULE_1__.useCallback)(() => {
261
- return _flagship_io_js_sdk__WEBPACK_IMPORTED_MODULE_2__.Flagship.close();
261
+ return _deps__WEBPACK_IMPORTED_MODULE_6__.Flagship.close();
262
262
  }, []);
263
263
  const getFlags = (0,react__WEBPACK_IMPORTED_MODULE_1__.useCallback)(() => {
264
264
  if (!visitor) {
265
265
  var _state$flags;
266
266
  const flags = new Map();
267
267
  (_state$flags = state.flags) === null || _state$flags === void 0 || _state$flags.forEach((flag, key) => {
268
- flags.set(key, new _FSFlag__WEBPACK_IMPORTED_MODULE_4__.FSFlag(key, state));
268
+ flags.set(key, new _FSFlag__WEBPACK_IMPORTED_MODULE_3__.FSFlag(key, state));
269
269
  });
270
- return new _flagship_io_js_sdk__WEBPACK_IMPORTED_MODULE_2__.FSFlagCollection({
270
+ return new _deps__WEBPACK_IMPORTED_MODULE_6__.FSFlagCollection({
271
271
  flags
272
272
  });
273
273
  }
@@ -286,7 +286,7 @@ const useFlagship = () => {
286
286
  ...(visitor === null || visitor === void 0 ? void 0 : visitor.context)
287
287
  },
288
288
  hasConsented: visitor === null || visitor === void 0 ? void 0 : visitor.hasConsented,
289
- sdkStatus: _flagship_io_js_sdk__WEBPACK_IMPORTED_MODULE_2__.Flagship.getStatus(),
289
+ sdkStatus: _deps__WEBPACK_IMPORTED_MODULE_6__.Flagship.getStatus(),
290
290
  flagsStatus: visitor === null || visitor === void 0 ? void 0 : visitor.flagsStatus,
291
291
  setConsent,
292
292
  updateContext: fsUpdateContext,
@@ -316,13 +316,13 @@ __webpack_require__.r(__webpack_exports__);
316
316
  /* harmony export */ });
317
317
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
318
318
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
319
- /* harmony import */ var _flagship_io_js_sdk__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @flagship.io/js-sdk */ "@flagship.io/js-sdk");
320
- /* harmony import */ var _flagship_io_js_sdk__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_flagship_io_js_sdk__WEBPACK_IMPORTED_MODULE_1__);
319
+ /* harmony import */ var _deps__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./deps */ "@flagship.io/js-sdk");
320
+ /* harmony import */ var _deps__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_deps__WEBPACK_IMPORTED_MODULE_1__);
321
321
  /* harmony import */ var _FlagshipContext__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./FlagshipContext */ "./src/FlagshipContext.tsx");
322
322
  /* harmony import */ var _internalType__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./internalType */ "./src/internalType.ts");
323
323
  /* harmony import */ var _sdkVersion__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./sdkVersion */ "./src/sdkVersion.ts");
324
324
  /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./utils */ "./src/utils.ts");
325
- 'use client';
325
+ "use client";
326
326
 
327
327
 
328
328
 
@@ -334,7 +334,7 @@ function FlagshipProvider({
334
334
  children,
335
335
  envId,
336
336
  apiKey,
337
- decisionMode = _flagship_io_js_sdk__WEBPACK_IMPORTED_MODULE_1__.DecisionMode.DECISION_API,
337
+ decisionMode = _deps__WEBPACK_IMPORTED_MODULE_1__.DecisionMode.DECISION_API,
338
338
  visitorData,
339
339
  loadingComponent,
340
340
  onSdkStatusChanged,
@@ -375,21 +375,21 @@ function FlagshipProvider({
375
375
  onSdkStatusChanged(status);
376
376
  }
377
377
  switch (status) {
378
- case _flagship_io_js_sdk__WEBPACK_IMPORTED_MODULE_1__.FSSdkStatus.SDK_PANIC:
379
- case _flagship_io_js_sdk__WEBPACK_IMPORTED_MODULE_1__.FSSdkStatus.SDK_INITIALIZED:
378
+ case _deps__WEBPACK_IMPORTED_MODULE_1__.FSSdkStatus.SDK_PANIC:
379
+ case _deps__WEBPACK_IMPORTED_MODULE_1__.FSSdkStatus.SDK_INITIALIZED:
380
380
  createVisitor();
381
381
  break;
382
- case _flagship_io_js_sdk__WEBPACK_IMPORTED_MODULE_1__.FSSdkStatus.SDK_NOT_INITIALIZED:
382
+ case _deps__WEBPACK_IMPORTED_MODULE_1__.FSSdkStatus.SDK_NOT_INITIALIZED:
383
383
  setState(prev => ({
384
384
  ...prev,
385
- config: _flagship_io_js_sdk__WEBPACK_IMPORTED_MODULE_1___default().getConfig(),
385
+ config: _deps__WEBPACK_IMPORTED_MODULE_1__.Flagship.getConfig(),
386
386
  isInitializing: false
387
387
  }));
388
388
  break;
389
389
  }
390
390
  };
391
391
  const initSdk = () => {
392
- _flagship_io_js_sdk__WEBPACK_IMPORTED_MODULE_1___default().start(envId, apiKey, {
392
+ _deps__WEBPACK_IMPORTED_MODULE_1__.Flagship.start(envId, apiKey, {
393
393
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
394
394
  decisionMode: decisionMode,
395
395
  fetchNow,
@@ -405,7 +405,7 @@ function FlagshipProvider({
405
405
  setState(currentState => ({
406
406
  ...currentState,
407
407
  visitor: param.fsVisitor,
408
- config: _flagship_io_js_sdk__WEBPACK_IMPORTED_MODULE_1___default().getConfig(),
408
+ config: _deps__WEBPACK_IMPORTED_MODULE_1__.Flagship.getConfig(),
409
409
  isInitializing: false,
410
410
  hasVisitorData: !!visitorData
411
411
  }));
@@ -414,7 +414,7 @@ function FlagshipProvider({
414
414
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
415
415
  const onVisitorReady = (fsVisitor, error) => {
416
416
  if (error) {
417
- (0,_utils__WEBPACK_IMPORTED_MODULE_3__.logError)(_flagship_io_js_sdk__WEBPACK_IMPORTED_MODULE_1___default().getConfig(), error.message || error, 'onReady');
417
+ (0,_utils__WEBPACK_IMPORTED_MODULE_3__.logError)(_deps__WEBPACK_IMPORTED_MODULE_1__.Flagship.getConfig(), error.message || error, "onReady");
418
418
  }
419
419
  initializeState({
420
420
  fsVisitor
@@ -424,7 +424,7 @@ function FlagshipProvider({
424
424
  if (!visitorDataRef.current) {
425
425
  return;
426
426
  }
427
- const fsVisitor = _flagship_io_js_sdk__WEBPACK_IMPORTED_MODULE_1___default().newVisitor({
427
+ const fsVisitor = _deps__WEBPACK_IMPORTED_MODULE_1__.Flagship.newVisitor({
428
428
  visitorId: visitorDataRef.current.id,
429
429
  context: visitorDataRef.current.context,
430
430
  isAuthenticated: visitorDataRef.current.isAuthenticated,
@@ -434,7 +434,7 @@ function FlagshipProvider({
434
434
  onFlagsStatusChanged,
435
435
  shouldSaveInstance
436
436
  });
437
- fsVisitor === null || fsVisitor === void 0 || fsVisitor.on('ready', error => {
437
+ fsVisitor === null || fsVisitor === void 0 || fsVisitor.on("ready", error => {
438
438
  onVisitorReady(fsVisitor, error);
439
439
  });
440
440
  if (!fetchNow) {
@@ -444,7 +444,7 @@ function FlagshipProvider({
444
444
  }
445
445
  };
446
446
  function updateVisitor() {
447
- if (!visitorDataRef.current || _flagship_io_js_sdk__WEBPACK_IMPORTED_MODULE_1___default().getStatus() !== _flagship_io_js_sdk__WEBPACK_IMPORTED_MODULE_1__.FSSdkStatus.SDK_INITIALIZED) {
447
+ if (!visitorDataRef.current || _deps__WEBPACK_IMPORTED_MODULE_1__.Flagship.getStatus() !== _deps__WEBPACK_IMPORTED_MODULE_1__.FSSdkStatus.SDK_INITIALIZED) {
448
448
  return;
449
449
  }
450
450
  if (!state.visitor || state.visitor.visitorId !== visitorDataRef.current.id && (!visitorDataRef.current.isAuthenticated || visitorDataRef.current.isAuthenticated && state.visitor.anonymousId)) {
@@ -522,6 +522,112 @@ function FlagshipProvider({
522
522
 
523
523
  /***/ }),
524
524
 
525
+ /***/ "./src/FlagshipProviderSSR.tsx":
526
+ /*!*************************************!*\
527
+ !*** ./src/FlagshipProviderSSR.tsx ***!
528
+ \*************************************/
529
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
530
+
531
+ __webpack_require__.r(__webpack_exports__);
532
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
533
+ /* harmony export */ FlagshipProviderSSR: () => (/* binding */ FlagshipProviderSSR)
534
+ /* harmony export */ });
535
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
536
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
537
+ /* harmony import */ var _deps__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./deps */ "@flagship.io/js-sdk");
538
+ /* harmony import */ var _deps__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_deps__WEBPACK_IMPORTED_MODULE_1__);
539
+ /* harmony import */ var _FlagshipProvider__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./FlagshipProvider */ "./src/FlagshipProvider.tsx");
540
+ /* harmony import */ var _sdkVersion__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./sdkVersion */ "./src/sdkVersion.ts");
541
+ function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
542
+
543
+
544
+
545
+
546
+ async function initFlagship({
547
+ envId,
548
+ apiKey,
549
+ config
550
+ }) {
551
+ if (_deps__WEBPACK_IMPORTED_MODULE_1__.Flagship.getStatus() !== _deps__WEBPACK_IMPORTED_MODULE_1__.FSSdkStatus.SDK_NOT_INITIALIZED) {
552
+ return _deps__WEBPACK_IMPORTED_MODULE_1__.Flagship;
553
+ }
554
+ await _deps__WEBPACK_IMPORTED_MODULE_1__.Flagship.start(envId, apiKey, {
555
+ ...config,
556
+ fetchNow: false,
557
+ sdkVersion: _sdkVersion__WEBPACK_IMPORTED_MODULE_2__.version
558
+ });
559
+ return _deps__WEBPACK_IMPORTED_MODULE_1__.Flagship;
560
+ }
561
+
562
+ /**
563
+ * FlagshipProviderSSR is a server-side rendering component for Flagship.
564
+ * It initializes the Flagship SDK and provides the necessary context for rendering.
565
+ * This component is designed to be used in server-side environments where you need to fetch and provide
566
+ * Flagship data before rendering the React application.
567
+ * @returns
568
+ */
569
+ async function FlagshipProviderSSR({
570
+ children,
571
+ envId,
572
+ apiKey,
573
+ decisionMode = _deps__WEBPACK_IMPORTED_MODULE_1__.DecisionMode.DECISION_API,
574
+ visitorData,
575
+ loadingComponent,
576
+ onSdkStatusChanged,
577
+ onBucketingUpdated,
578
+ fetchFlagsOnBucketingUpdated,
579
+ hitDeduplicationTime = 2,
580
+ fetchNow = false,
581
+ onFlagsStatusChanged,
582
+ shouldSaveInstance,
583
+ ...props
584
+ }) {
585
+ const language = 1;
586
+ const fs = await initFlagship({
587
+ envId,
588
+ apiKey,
589
+ config: {
590
+ ...props,
591
+ decisionMode: decisionMode,
592
+ initialBucketing: props.initialBucketing,
593
+ hitDeduplicationTime,
594
+ language
595
+ }
596
+ });
597
+ let initialFlagsData = props.initialFlagsData;
598
+ if (!props.initialFlagsData && !props.initialCampaigns) {
599
+ const visitor = fs.newVisitor({
600
+ visitorId: visitorData === null || visitorData === void 0 ? void 0 : visitorData.id,
601
+ context: visitorData === null || visitorData === void 0 ? void 0 : visitorData.context,
602
+ isAuthenticated: visitorData === null || visitorData === void 0 ? void 0 : visitorData.isAuthenticated,
603
+ hasConsented: visitorData === null || visitorData === void 0 ? void 0 : visitorData.hasConsented,
604
+ onFlagsStatusChanged,
605
+ shouldSaveInstance
606
+ });
607
+ await visitor.fetchFlags();
608
+ initialFlagsData = visitor.getFlags().toJSON();
609
+ }
610
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_FlagshipProvider__WEBPACK_IMPORTED_MODULE_3__.FlagshipProvider, _extends({
611
+ envId: envId,
612
+ apiKey: apiKey,
613
+ decisionMode: decisionMode,
614
+ visitorData: visitorData,
615
+ loadingComponent: loadingComponent,
616
+ onSdkStatusChanged: onSdkStatusChanged,
617
+ onBucketingUpdated: onBucketingUpdated,
618
+ initialFlagsData: initialFlagsData,
619
+ fetchFlagsOnBucketingUpdated: fetchFlagsOnBucketingUpdated,
620
+ hitDeduplicationTime: hitDeduplicationTime,
621
+ fetchNow: fetchNow,
622
+ language: language,
623
+ sdkVersion: _sdkVersion__WEBPACK_IMPORTED_MODULE_2__.version,
624
+ onFlagsStatusChanged: onFlagsStatusChanged,
625
+ shouldSaveInstance: shouldSaveInstance
626
+ }, props), children);
627
+ }
628
+
629
+ /***/ }),
630
+
525
631
  /***/ "./src/constants.ts":
526
632
  /*!**************************!*\
527
633
  !*** ./src/constants.ts ***!
@@ -540,6 +646,22 @@ const noVisitorDefault = 'fsVisitor not initialized, returns default value';
540
646
  const GET_FLAG_CAST_ERROR = 'Flag for key {0} has a different type. Default value is returned.';
541
647
  const GET_METADATA_CAST_ERROR = 'Flag for key {0} has a different type with defaultValue, an empty metadata object is returned';
542
648
 
649
+ /***/ }),
650
+
651
+ /***/ "./src/deps.ts":
652
+ /*!*********************!*\
653
+ !*** ./src/deps.ts ***!
654
+ \*********************/
655
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
656
+
657
+ __webpack_require__.r(__webpack_exports__);
658
+ /* harmony import */ var _flagship_io_js_sdk__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @flagship.io/js-sdk */ "@flagship.io/js-sdk");
659
+ /* harmony import */ var _flagship_io_js_sdk__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_flagship_io_js_sdk__WEBPACK_IMPORTED_MODULE_0__);
660
+ /* harmony reexport (unknown) */ var __WEBPACK_REEXPORT_OBJECT__ = {};
661
+ /* harmony reexport (unknown) */ for(const __WEBPACK_IMPORT_KEY__ in _flagship_io_js_sdk__WEBPACK_IMPORTED_MODULE_0__) if(__WEBPACK_IMPORT_KEY__ !== "default") __WEBPACK_REEXPORT_OBJECT__[__WEBPACK_IMPORT_KEY__] = () => _flagship_io_js_sdk__WEBPACK_IMPORTED_MODULE_0__[__WEBPACK_IMPORT_KEY__]
662
+ /* harmony reexport (unknown) */ __webpack_require__.d(__webpack_exports__, __WEBPACK_REEXPORT_OBJECT__);
663
+
664
+
543
665
  /***/ }),
544
666
 
545
667
  /***/ "./src/internalType.ts":
@@ -570,7 +692,7 @@ __webpack_require__.r(__webpack_exports__);
570
692
  /* harmony export */ version: () => (/* binding */ version)
571
693
  /* harmony export */ });
572
694
  // Generated by genversion.
573
- const version = '5.1.1';
695
+ const version = '5.2.0';
574
696
 
575
697
  /***/ }),
576
698
 
@@ -597,40 +719,40 @@ __webpack_require__.r(__webpack_exports__);
597
719
  /* harmony export */ });
598
720
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
599
721
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
600
- /* harmony import */ var _flagship_io_js_sdk__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @flagship.io/js-sdk */ "@flagship.io/js-sdk");
601
- /* harmony import */ var _flagship_io_js_sdk__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_flagship_io_js_sdk__WEBPACK_IMPORTED_MODULE_1__);
722
+ /* harmony import */ var _deps__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./deps */ "@flagship.io/js-sdk");
723
+ /* harmony import */ var _deps__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_deps__WEBPACK_IMPORTED_MODULE_1__);
602
724
  'use client';
603
725
 
604
726
 
605
727
 
606
728
  function logError(config, message, tag) {
607
- if (!config || !config.logLevel || config.logLevel < _flagship_io_js_sdk__WEBPACK_IMPORTED_MODULE_1__.LogLevel.ERROR) {
729
+ if (!config || !config.logLevel || config.logLevel < _deps__WEBPACK_IMPORTED_MODULE_1__.LogLevel.ERROR) {
608
730
  return;
609
731
  }
610
732
  if (typeof config.onLog === 'function') {
611
- config.onLog(_flagship_io_js_sdk__WEBPACK_IMPORTED_MODULE_1__.LogLevel.ERROR, tag, message);
733
+ config.onLog(_deps__WEBPACK_IMPORTED_MODULE_1__.LogLevel.ERROR, tag, message);
612
734
  }
613
735
  if (config.logManager && typeof config.logManager.error === 'function') {
614
736
  config.logManager.error(message, tag);
615
737
  }
616
738
  }
617
739
  function logInfo(config, message, tag) {
618
- if (!config || !config.logLevel || config.logLevel < _flagship_io_js_sdk__WEBPACK_IMPORTED_MODULE_1__.LogLevel.INFO) {
740
+ if (!config || !config.logLevel || config.logLevel < _deps__WEBPACK_IMPORTED_MODULE_1__.LogLevel.INFO) {
619
741
  return;
620
742
  }
621
743
  if (typeof config.onLog === 'function') {
622
- config.onLog(_flagship_io_js_sdk__WEBPACK_IMPORTED_MODULE_1__.LogLevel.INFO, tag, message);
744
+ config.onLog(_deps__WEBPACK_IMPORTED_MODULE_1__.LogLevel.INFO, tag, message);
623
745
  }
624
746
  if (config.logManager && typeof config.logManager.info === 'function') {
625
747
  config.logManager.info(message, tag);
626
748
  }
627
749
  }
628
750
  function logWarn(config, message, tag) {
629
- if (!config || !config.logLevel || config.logLevel < _flagship_io_js_sdk__WEBPACK_IMPORTED_MODULE_1__.LogLevel.WARNING) {
751
+ if (!config || !config.logLevel || config.logLevel < _deps__WEBPACK_IMPORTED_MODULE_1__.LogLevel.WARNING) {
630
752
  return;
631
753
  }
632
754
  if (typeof config.onLog === 'function') {
633
- config.onLog(_flagship_io_js_sdk__WEBPACK_IMPORTED_MODULE_1__.LogLevel.WARNING, tag, message);
755
+ config.onLog(_deps__WEBPACK_IMPORTED_MODULE_1__.LogLevel.WARNING, tag, message);
634
756
  }
635
757
  if (config.logManager && typeof config.logManager.warning === 'function') {
636
758
  config.logManager.warning(message, tag);
@@ -739,7 +861,7 @@ function extractFlagsMap(initialFlagsData, initialCampaigns) {
739
861
  isReference: flag.isReference,
740
862
  campaignType: flag.campaignType,
741
863
  slug: flag.slug,
742
- value: (_hexToValue = hexToValue(flag.hex, _flagship_io_js_sdk__WEBPACK_IMPORTED_MODULE_1___default().getConfig())) === null || _hexToValue === void 0 ? void 0 : _hexToValue.v
864
+ value: (_hexToValue = hexToValue(flag.hex, _deps__WEBPACK_IMPORTED_MODULE_1__.Flagship.getConfig())) === null || _hexToValue === void 0 ? void 0 : _hexToValue.v
743
865
  });
744
866
  });
745
867
  } else if (initialCampaigns) {
@@ -2055,17 +2177,19 @@ var __webpack_exports__ = {};
2055
2177
  __webpack_require__.r(__webpack_exports__);
2056
2178
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
2057
2179
  /* harmony export */ FlagshipProvider: () => (/* reexport safe */ _FlagshipProvider__WEBPACK_IMPORTED_MODULE_2__.FlagshipProvider),
2180
+ /* harmony export */ FlagshipProviderSSR: () => (/* reexport safe */ _FlagshipProviderSSR__WEBPACK_IMPORTED_MODULE_3__.FlagshipProviderSSR),
2058
2181
  /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__),
2059
2182
  /* harmony export */ useFlagship: () => (/* reexport safe */ _FlagshipHooks__WEBPACK_IMPORTED_MODULE_1__.useFlagship),
2060
2183
  /* harmony export */ useFsFlag: () => (/* reexport safe */ _FlagshipHooks__WEBPACK_IMPORTED_MODULE_1__.useFsFlag)
2061
2184
  /* harmony export */ });
2062
2185
  /* harmony import */ var _FlagshipProvider__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./FlagshipProvider */ "./src/FlagshipProvider.tsx");
2063
- /* harmony import */ var _flagship_io_js_sdk__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @flagship.io/js-sdk */ "@flagship.io/js-sdk");
2064
- /* harmony import */ var _flagship_io_js_sdk__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_flagship_io_js_sdk__WEBPACK_IMPORTED_MODULE_0__);
2186
+ /* harmony import */ var _deps__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./deps */ "./src/deps.ts");
2065
2187
  /* harmony reexport (unknown) */ var __WEBPACK_REEXPORT_OBJECT__ = {};
2066
- /* harmony reexport (unknown) */ for(const __WEBPACK_IMPORT_KEY__ in _flagship_io_js_sdk__WEBPACK_IMPORTED_MODULE_0__) if(["default","FlagshipProvider"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) __WEBPACK_REEXPORT_OBJECT__[__WEBPACK_IMPORT_KEY__] = () => _flagship_io_js_sdk__WEBPACK_IMPORTED_MODULE_0__[__WEBPACK_IMPORT_KEY__]
2188
+ /* harmony reexport (unknown) */ for(const __WEBPACK_IMPORT_KEY__ in _deps__WEBPACK_IMPORTED_MODULE_0__) if(["default","FlagshipProvider","FlagshipProviderSSR"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) __WEBPACK_REEXPORT_OBJECT__[__WEBPACK_IMPORT_KEY__] = () => _deps__WEBPACK_IMPORTED_MODULE_0__[__WEBPACK_IMPORT_KEY__]
2067
2189
  /* harmony reexport (unknown) */ __webpack_require__.d(__webpack_exports__, __WEBPACK_REEXPORT_OBJECT__);
2068
2190
  /* harmony import */ var _FlagshipHooks__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./FlagshipHooks */ "./src/FlagshipHooks.ts");
2191
+ /* harmony import */ var _FlagshipProviderSSR__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./FlagshipProviderSSR */ "./src/FlagshipProviderSSR.tsx");
2192
+
2069
2193
 
2070
2194
 
2071
2195
 
@@ -2077,4 +2201,4 @@ __webpack_require__.r(__webpack_exports__);
2077
2201
  module.exports = __webpack_exports__;
2078
2202
  /******/ })()
2079
2203
  ;
2080
- //# sourceMappingURL=index.node.js.map
2204
+ //# sourceMappingURL=index.node.cjs.map