vwo-fme-node-sdk 1.40.0 → 1.40.1

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.
Files changed (51) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/dist/VERSION.js +1 -1
  3. package/dist/client/vwo-fme-javascript-sdk.js +95 -15
  4. package/dist/client/vwo-fme-javascript-sdk.js.map +1 -1
  5. package/dist/client/vwo-fme-javascript-sdk.min.js +2 -2
  6. package/dist/client/vwo-fme-javascript-sdk.min.js.map +1 -1
  7. package/dist/esm/VWOClient.js +3 -0
  8. package/dist/esm/VWOClient.js.map +1 -1
  9. package/dist/esm/models/VWOOptionsModel.js +24 -0
  10. package/dist/esm/models/VWOOptionsModel.js.map +1 -1
  11. package/dist/esm/packages/network-layer/client/NetworkBrowserClient.js.map +1 -1
  12. package/dist/esm/services/BatchEventsQueue.js +3 -2
  13. package/dist/esm/services/BatchEventsQueue.js.map +1 -1
  14. package/dist/esm/services/SettingsService.js +3 -2
  15. package/dist/esm/services/SettingsService.js.map +1 -1
  16. package/dist/esm/utils/ImpressionUtil.js +3 -2
  17. package/dist/esm/utils/ImpressionUtil.js.map +1 -1
  18. package/dist/esm/utils/NetworkUtil.js +10 -8
  19. package/dist/esm/utils/NetworkUtil.js.map +1 -1
  20. package/dist/esm/utils/SDKMetaUtil.js +57 -0
  21. package/dist/esm/utils/SDKMetaUtil.js.map +1 -0
  22. package/dist/package.json +1 -1
  23. package/dist/server/vwo-fme-node-sdk.js +99 -16
  24. package/dist/server/vwo-fme-node-sdk.js.map +1 -1
  25. package/dist/server/vwo-fme-node-sdk.min.js +2 -2
  26. package/dist/server/vwo-fme-node-sdk.min.js.map +1 -1
  27. package/dist/server-unpacked/VWOClient.js +3 -0
  28. package/dist/server-unpacked/VWOClient.js.map +1 -1
  29. package/dist/server-unpacked/models/VWOOptionsModel.js +26 -0
  30. package/dist/server-unpacked/models/VWOOptionsModel.js.map +1 -1
  31. package/dist/server-unpacked/packages/network-layer/client/NetworkBrowserClient.js.map +1 -1
  32. package/dist/server-unpacked/services/BatchEventsQueue.js +3 -2
  33. package/dist/server-unpacked/services/BatchEventsQueue.js.map +1 -1
  34. package/dist/server-unpacked/services/SettingsService.js +3 -2
  35. package/dist/server-unpacked/services/SettingsService.js.map +1 -1
  36. package/dist/server-unpacked/utils/ImpressionUtil.js +3 -2
  37. package/dist/server-unpacked/utils/ImpressionUtil.js.map +1 -1
  38. package/dist/server-unpacked/utils/NetworkUtil.js +8 -7
  39. package/dist/server-unpacked/utils/NetworkUtil.js.map +1 -1
  40. package/dist/server-unpacked/utils/SDKMetaUtil.js +63 -0
  41. package/dist/server-unpacked/utils/SDKMetaUtil.js.map +1 -0
  42. package/dist/types/models/VWOOptionsModel.d.ts +21 -0
  43. package/dist/types/utils/SDKMetaUtil.d.ts +43 -0
  44. package/lib/VWOClient.ts +3 -0
  45. package/lib/models/VWOOptionsModel.ts +35 -0
  46. package/lib/services/BatchEventsQueue.ts +3 -2
  47. package/lib/services/SettingsService.ts +3 -2
  48. package/lib/utils/ImpressionUtil.ts +3 -2
  49. package/lib/utils/NetworkUtil.ts +10 -8
  50. package/lib/utils/SDKMetaUtil.ts +72 -0
  51. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -5,6 +5,12 @@ All notable changes to this project will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [1.40.1] - 2026-03-02
9
+
10
+ ### Changed
11
+
12
+ - Introduced `SDKMetaUtil` and `sdkMeta` config to allow overriding the default SDK name and version used in events. VWO FE React SDK will consume via it.
13
+
8
14
  ## [1.40.0] - 2026-02-26
9
15
 
10
16
  ### Added
package/dist/VERSION.js CHANGED
@@ -1 +1 @@
1
- module.exports = { version: "1.40.0" };
1
+ module.exports = { version: "1.40.1" };
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * vwo-fme-javascript-sdk - v1.40.0
2
+ * vwo-fme-javascript-sdk - v1.40.1
3
3
  * URL - https://github.com/wingify/vwo-fme-javascript-sdk
4
4
  *
5
5
  * Copyright 2024-2026 Wingify Software Pvt. Ltd.
@@ -46,7 +46,7 @@ return /******/ (() => { // webpackBootstrap
46
46
  /***/ ((module) => {
47
47
 
48
48
  module.exports = {
49
- version: "1.40.0"
49
+ version: "1.40.1"
50
50
  };
51
51
 
52
52
  /***/ }),
@@ -811,6 +811,7 @@ var SdkInitAndUsageStatsUtil_1 = __webpack_require__(/*! ./utils/SdkInitAndUsage
811
811
  var UsageStatsUtil_1 = __webpack_require__(/*! ./utils/UsageStatsUtil */ "./lib/utils/UsageStatsUtil.ts");
812
812
  var StorageService_1 = __webpack_require__(/*! ./services/StorageService */ "./lib/services/StorageService.ts");
813
813
  var UuidUtil_1 = __webpack_require__(/*! ./utils/UuidUtil */ "./lib/utils/UuidUtil.ts");
814
+ var SDKMetaUtil_1 = __webpack_require__(/*! ./utils/SDKMetaUtil */ "./lib/utils/SDKMetaUtil.ts");
814
815
  var VWOClient = /** @class */ (function () {
815
816
  /**
816
817
  * Constructor for the VWOClient class.
@@ -842,6 +843,8 @@ var VWOClient = /** @class */ (function () {
842
843
  this.vwoClientInstance = this;
843
844
  var usageStatsUtil = new UsageStatsUtil_1.UsageStatsUtil(this.options);
844
845
  this.sendSdkInitAndUsageStatsEvents(usageStatsUtil);
846
+ // initialize the sdk meta util
847
+ new SDKMetaUtil_1.SDKMetaUtil(this.options);
845
848
  return this;
846
849
  }
847
850
  catch (err) {
@@ -7757,6 +7760,7 @@ var DataTypeUtil_1 = __webpack_require__(/*! ../utils/DataTypeUtil */ "./lib/uti
7757
7760
  var LogMessageUtil_1 = __webpack_require__(/*! ../utils/LogMessageUtil */ "./lib/utils/LogMessageUtil.ts");
7758
7761
  var log_messages_1 = __webpack_require__(/*! ../enums/log-messages */ "./lib/enums/log-messages/index.ts");
7759
7762
  var BatchEventsDispatcher_1 = __importDefault(__webpack_require__(/*! ../utils/BatchEventsDispatcher */ "./lib/utils/BatchEventsDispatcher.ts"));
7763
+ var SDKMetaUtil_1 = __webpack_require__(/*! ../utils/SDKMetaUtil */ "./lib/utils/SDKMetaUtil.ts");
7760
7764
  var BatchEventsQueue = /** @class */ (function () {
7761
7765
  /**
7762
7766
  * Constructor for the BatchEventsQueue
@@ -7853,8 +7857,8 @@ var BatchEventsQueue = /** @class */ (function () {
7853
7857
  }, this.flushCallback, Object.assign({}, {
7854
7858
  a: this.accountId,
7855
7859
  env: this.serviceContainer.getSettingsService().sdkKey,
7856
- sn: constants_1.Constants.SDK_NAME,
7857
- sv: constants_1.Constants.SDK_VERSION,
7860
+ sn: SDKMetaUtil_1.SDKMetaUtil.getInstance().getSdkName(),
7861
+ sv: SDKMetaUtil_1.SDKMetaUtil.getInstance().getVersion(),
7858
7862
  }))
7859
7863
  .then(function (result) {
7860
7864
  var _a;
@@ -8477,6 +8481,7 @@ var FunctionUtil_1 = __webpack_require__(/*! ../utils/FunctionUtil */ "./lib/uti
8477
8481
  var ApiEnum_1 = __webpack_require__(/*! ../enums/ApiEnum */ "./lib/enums/ApiEnum.ts");
8478
8482
  var StorageService_1 = __webpack_require__(/*! ./StorageService */ "./lib/services/StorageService.ts");
8479
8483
  var DataTypeUtil_1 = __webpack_require__(/*! ../utils/DataTypeUtil */ "./lib/utils/DataTypeUtil.ts");
8484
+ var SDKMetaUtil_1 = __webpack_require__(/*! ../utils/SDKMetaUtil */ "./lib/utils/SDKMetaUtil.ts");
8480
8485
  var SettingsService = /** @class */ (function () {
8481
8486
  function SettingsService(options, logManager) {
8482
8487
  var _a, _b, _c, _d, _e, _f;
@@ -8612,8 +8617,8 @@ var SettingsService = /** @class */ (function () {
8612
8617
  var options = (0, NetworkUtil_1.getSettingsPath)(this.sdkKey, this.accountId);
8613
8618
  var retryConfig = this.serviceContainer.getNetworkManager().getRetryConfig();
8614
8619
  options.platform = constants_1.Constants.PLATFORM;
8615
- options.sn = constants_1.Constants.SDK_NAME;
8616
- options.sv = constants_1.Constants.SDK_VERSION;
8620
+ options.sn = SDKMetaUtil_1.SDKMetaUtil.getInstance().getSdkName();
8621
+ options.sv = SDKMetaUtil_1.SDKMetaUtil.getInstance().getVersion();
8617
8622
  options['api-version'] = constants_1.Constants.API_VERSION;
8618
8623
  if (!this.serviceContainer.getNetworkManager().getConfig().getDevelopmentMode()) {
8619
8624
  options.s = 'prod';
@@ -11560,6 +11565,7 @@ var CampaignUtil_1 = __webpack_require__(/*! ./CampaignUtil */ "./lib/utils/Camp
11560
11565
  var CampaignUtil_2 = __webpack_require__(/*! ./CampaignUtil */ "./lib/utils/CampaignUtil.ts");
11561
11566
  var constants_1 = __webpack_require__(/*! ../constants */ "./lib/constants/index.ts");
11562
11567
  var BatchEventsDispatcher_1 = __webpack_require__(/*! ./BatchEventsDispatcher */ "./lib/utils/BatchEventsDispatcher.ts");
11568
+ var SDKMetaUtil_1 = __webpack_require__(/*! ./SDKMetaUtil */ "./lib/utils/SDKMetaUtil.ts");
11563
11569
  /**
11564
11570
  * Creates and sends an impression for a variation shown event.
11565
11571
  * This function constructs the necessary properties and payload for the event
@@ -11624,8 +11630,8 @@ var sendImpressionForVariationShownInBatch = function (serviceContainer, payload
11624
11630
  BatchEventsDispatcher_1.BatchEventsDispatcher.dispatch(serviceContainer, { ev: payloads }, function () { }, {
11625
11631
  a: serviceContainer.getSettingsService().accountId,
11626
11632
  env: serviceContainer.getSettingsService().sdkKey,
11627
- sn: constants_1.Constants.SDK_NAME,
11628
- sv: constants_1.Constants.SDK_VERSION,
11633
+ sn: SDKMetaUtil_1.SDKMetaUtil.getInstance().getSdkName(),
11634
+ sv: SDKMetaUtil_1.SDKMetaUtil.getInstance().getVersion(),
11629
11635
  });
11630
11636
  }
11631
11637
  return [2 /*return*/];
@@ -12364,6 +12370,7 @@ var DebuggerCategoryEnum_1 = __webpack_require__(/*! ../enums/DebuggerCategoryEn
12364
12370
  var DebuggerServiceUtil_1 = __webpack_require__(/*! ./DebuggerServiceUtil */ "./lib/utils/DebuggerServiceUtil.ts");
12365
12371
  var ApiEnum_1 = __webpack_require__(/*! ../enums/ApiEnum */ "./lib/enums/ApiEnum.ts");
12366
12372
  var CampaignTypeEnum_1 = __webpack_require__(/*! ../enums/CampaignTypeEnum */ "./lib/enums/CampaignTypeEnum.ts");
12373
+ var SDKMetaUtil_1 = __webpack_require__(/*! ./SDKMetaUtil */ "./lib/utils/SDKMetaUtil.ts");
12367
12374
  /**
12368
12375
  * Constructs the settings path with API key and account ID.
12369
12376
  * @param {string} sdkKey - The API key.
@@ -12391,8 +12398,8 @@ function getTrackEventPath(event, accountId, userId) {
12391
12398
  account_id: accountId, // Account ID
12392
12399
  uId: userId, // User ID
12393
12400
  u: (0, UuidUtil_1.getUUID)(userId, accountId), // UUID generated for the user
12394
- sdk: constants_1.Constants.SDK_NAME, // SDK name constant
12395
- 'sdk-v': constants_1.Constants.SDK_VERSION, // SDK version
12401
+ sdk: SDKMetaUtil_1.SDKMetaUtil.getInstance().getSdkName(), // SDK name constant
12402
+ 'sdk-v': SDKMetaUtil_1.SDKMetaUtil.getInstance().getVersion(), // SDK version
12396
12403
  random: (0, FunctionUtil_1.getRandomNumber)(), // Random number for uniqueness
12397
12404
  ap: constants_1.Constants.PLATFORM, // Application platform
12398
12405
  sId: (0, FunctionUtil_1.getCurrentUnixTimestamp)(), // Session ID
@@ -12423,8 +12430,8 @@ function getEventsBaseProperties(settingsService, eventName, visitorUserAgent, i
12423
12430
  p: 'FS',
12424
12431
  visitor_ua: visitorUserAgent,
12425
12432
  visitor_ip: ipAddress,
12426
- sn: constants_1.Constants.SDK_NAME,
12427
- sv: constants_1.Constants.SDK_VERSION,
12433
+ sn: SDKMetaUtil_1.SDKMetaUtil.getInstance().getSdkName(),
12434
+ sv: SDKMetaUtil_1.SDKMetaUtil.getInstance().getVersion(),
12428
12435
  });
12429
12436
  if (!isUsageStatsEvent) {
12430
12437
  // set env key for standard sdk events
@@ -12474,8 +12481,8 @@ function _getEventBasePayload(settingsService, userId, eventName, visitorUserAge
12474
12481
  uuid = userId.toString();
12475
12482
  }
12476
12483
  var props = {
12477
- vwo_sdkName: constants_1.Constants.SDK_NAME,
12478
- vwo_sdkVersion: constants_1.Constants.SDK_VERSION,
12484
+ vwo_sdkName: SDKMetaUtil_1.SDKMetaUtil.getInstance().getSdkName(),
12485
+ vwo_sdkVersion: SDKMetaUtil_1.SDKMetaUtil.getInstance().getVersion(),
12479
12486
  };
12480
12487
  if (!isUsageStatsEvent) {
12481
12488
  // set env key for standard sdk events
@@ -12806,7 +12813,7 @@ function getDebuggerEventPayload(settingsService, eventProps) {
12806
12813
  eventProps.an = EventEnum_1.EventEnum.VWO_DEBUGGER_EVENT;
12807
12814
  }
12808
12815
  // add all debugger props inside vwoMeta
12809
- properties.d.event.props.vwoMeta = __assign(__assign({}, eventProps), { a: settingsService.accountId.toString(), product: constants_1.Constants.PRODUCT_NAME, sn: constants_1.Constants.SDK_NAME, sv: constants_1.Constants.SDK_VERSION, eventId: (0, UuidUtil_1.getRandomUUID)(settingsService.sdkKey) });
12816
+ properties.d.event.props.vwoMeta = __assign(__assign({}, eventProps), { a: settingsService.accountId.toString(), product: constants_1.Constants.PRODUCT_NAME, sn: SDKMetaUtil_1.SDKMetaUtil.getInstance().getSdkName(), sv: SDKMetaUtil_1.SDKMetaUtil.getInstance().getVersion(), 'src-v': constants_1.Constants.SDK_NAME + '-' + constants_1.Constants.SDK_VERSION, eventId: (0, UuidUtil_1.getRandomUUID)(settingsService.sdkKey) });
12810
12817
  return properties;
12811
12818
  }
12812
12819
  /**
@@ -13061,6 +13068,79 @@ var evaluateRule = function (serviceContainer, feature, campaign, context, evalu
13061
13068
  exports.evaluateRule = evaluateRule;
13062
13069
 
13063
13070
 
13071
+ /***/ }),
13072
+
13073
+ /***/ "./lib/utils/SDKMetaUtil.ts":
13074
+ /*!**********************************!*\
13075
+ !*** ./lib/utils/SDKMetaUtil.ts ***!
13076
+ \**********************************/
13077
+ /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
13078
+
13079
+ "use strict";
13080
+
13081
+ /**
13082
+ * Copyright 2024-2026 Wingify Software Pvt. Ltd.
13083
+ *
13084
+ * Licensed under the Apache License, Version 2.0 (the "License");
13085
+ * you may not use this file except in compliance with the License.
13086
+ * You may obtain a copy of the License at
13087
+ *
13088
+ * http://www.apache.org/licenses/LICENSE-2.0
13089
+ *
13090
+ * Unless required by applicable law or agreed to in writing, software
13091
+ * distributed under the License is distributed on an "AS IS" BASIS,
13092
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13093
+ * See the License for the specific language governing permissions and
13094
+ * limitations under the License.
13095
+ */
13096
+ Object.defineProperty(exports, "__esModule", ({ value: true }));
13097
+ exports.SDKMetaUtil = void 0;
13098
+ var constants_1 = __webpack_require__(/*! ../constants */ "./lib/constants/index.ts");
13099
+ /**
13100
+ * Singleton utility to manage SDK name and version.
13101
+ *
13102
+ * Usage:
13103
+ * SDKMetaUtil.init(options); // typically during SDK init
13104
+ * const sdkMetaUtil = SDKMetaUtil.getInstance();
13105
+ * const name = sdkMetaUtil.getSdkName();
13106
+ * const version = sdkMetaUtil.getVersion();
13107
+ */
13108
+ var SDKMetaUtil = /** @class */ (function () {
13109
+ function SDKMetaUtil(options) {
13110
+ var _a, _b;
13111
+ var sdkMeta = options === null || options === void 0 ? void 0 : options.sdkMeta;
13112
+ this.sdkName = (_a = sdkMeta === null || sdkMeta === void 0 ? void 0 : sdkMeta._vwo_sdkName) !== null && _a !== void 0 ? _a : constants_1.Constants.SDK_NAME;
13113
+ this.version = (_b = sdkMeta === null || sdkMeta === void 0 ? void 0 : sdkMeta._vwo_sdkVersion) !== null && _b !== void 0 ? _b : constants_1.Constants.SDK_VERSION;
13114
+ SDKMetaUtil.instance = this;
13115
+ }
13116
+ /**
13117
+ * Returns the singleton instance. If not initialized, it initializes it with default constants for sdkName and version.
13118
+ * @returns The singleton instance.
13119
+ */
13120
+ SDKMetaUtil.getInstance = function () {
13121
+ if (!SDKMetaUtil.instance) {
13122
+ SDKMetaUtil.instance = new SDKMetaUtil(null);
13123
+ }
13124
+ return SDKMetaUtil.instance;
13125
+ };
13126
+ SDKMetaUtil.prototype.getSdkName = function () {
13127
+ return this.sdkName;
13128
+ };
13129
+ SDKMetaUtil.prototype.getVersion = function () {
13130
+ return this.version;
13131
+ };
13132
+ SDKMetaUtil.prototype.getMeta = function () {
13133
+ return {
13134
+ sdkName: this.sdkName,
13135
+ version: this.version,
13136
+ };
13137
+ };
13138
+ SDKMetaUtil.instance = null;
13139
+ return SDKMetaUtil;
13140
+ }());
13141
+ exports.SDKMetaUtil = SDKMetaUtil;
13142
+
13143
+
13064
13144
  /***/ }),
13065
13145
 
13066
13146
  /***/ "./lib/utils/SdkInitAndUsageStatsUtil.ts":