@smartico/public-api 0.0.393 → 0.0.395

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.
@@ -2256,6 +2256,7 @@ const prizeTransform = items => {
2256
2256
  name: item.public_meta.name,
2257
2257
  description: item.public_meta.description,
2258
2258
  image_url: item.public_meta.image_url,
2259
+ custom_data: item.public_meta.custom_data,
2259
2260
  prizes_per_run: item.prizes_per_run,
2260
2261
  prizes_per_run_actual: item.prizes_per_run_actual,
2261
2262
  chances_to_win_perc: item.chances_to_win_perc,
@@ -9477,6 +9478,24 @@ const C_SOCKET_PROD = 'wss://api{ENV_ID}.smartico.ai/websocket/services';
9477
9478
  const GAMES_API_URL = 'https://r-games-api.smr.vc';
9478
9479
  const AVATAR_DOMAIN = 'https://img{ENV_ID}.smr.vc';
9479
9480
  const DEFAULT_LANG_EN = 'EN';
9481
+ const SMR_TO_CLOUDFRONT_DOMAINS = {
9482
+ 'img.smr.vc': 'd1am61onjxtys8.cloudfront.net',
9483
+ 'img3.smr.vc': 'd3dubbodzd2q05.cloudfront.net',
9484
+ 'img4.smr.vc': 'dvm0p9vsezqr2.cloudfront.net',
9485
+ 'img5.smr.vc': 'd3gen1ksvxhac8.cloudfront.net',
9486
+ 'img6.smr.vc': 'db1kmyg7iufeo.cloudfront.net',
9487
+ 'img7.smr.vc': 'd36om2g86xefo6.cloudfront.net',
9488
+ 'img8.smr.vc': 'd2zme31v54n5pb.cloudfront.net',
9489
+ 'static.smr.vc': 'dtt380pweilws.cloudfront.net',
9490
+ 'static3.smr.vc': 'd1qt8ake8g4imn.cloudfront.net',
9491
+ 'static4.smr.vc': 'd146b4m7rkvjkw.cloudfront.net',
9492
+ 'static5.smr.vc': 'd3l7suk1kl9rwh.cloudfront.net',
9493
+ 'static6.smr.vc': 'd121pfj16xdfcq.cloudfront.net',
9494
+ 'static7.smr.vc': 'd21deilz814qgl.cloudfront.net',
9495
+ 'static8.smr.vc': 'd1uffsroxjy2ku.cloudfront.net'
9496
+ };
9497
+ // Single combined matcher built once, so a call is one pass instead of one per domain.
9498
+ const SMR_DOMAIN_REGEX = new RegExp(Object.keys(SMR_TO_CLOUDFRONT_DOMAINS).map(d => d.replace(/[.*+?^${}()|[\]\\]/g, '\\$&')).join('|'), 'g');
9480
9499
  class SmarticoAPI {
9481
9500
  constructor(label_api_key, brand_api_key, messageSender, options = {}) {
9482
9501
  var _options$tracker, _options$tracker2;
@@ -9532,29 +9551,18 @@ class SmarticoAPI {
9532
9551
  if (!value) {
9533
9552
  return value;
9534
9553
  }
9535
- const domains = {
9536
- 'img.smr.vc': 'd1am61onjxtys8.cloudfront.net',
9537
- 'img3.smr.vc': 'd3dubbodzd2q05.cloudfront.net',
9538
- 'img4.smr.vc': 'dvm0p9vsezqr2.cloudfront.net',
9539
- 'img5.smr.vc': 'd3gen1ksvxhac8.cloudfront.net',
9540
- 'img6.smr.vc': 'db1kmyg7iufeo.cloudfront.net',
9541
- 'img7.smr.vc': 'd36om2g86xefo6.cloudfront.net',
9542
- 'img8.smr.vc': 'd2zme31v54n5pb.cloudfront.net',
9543
- 'static.smr.vc': 'dtt380pweilws.cloudfront.net',
9544
- 'static3.smr.vc': 'd1qt8ake8g4imn.cloudfront.net',
9545
- 'static4.smr.vc': 'd146b4m7rkvjkw.cloudfront.net',
9546
- 'static5.smr.vc': 'd3l7suk1kl9rwh.cloudfront.net',
9547
- 'static6.smr.vc': 'd121pfj16xdfcq.cloudfront.net',
9548
- 'static7.smr.vc': 'd21deilz814qgl.cloudfront.net',
9549
- 'static8.smr.vc': 'd1uffsroxjy2ku.cloudfront.net'
9550
- };
9551
- const escapeRegExp = str => str.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
9552
- let replacedValue = typeof value === 'string' ? value : JSON.stringify(value);
9553
- for (const [oldDomain, newDomain] of Object.entries(domains)) {
9554
- replacedValue = replacedValue.replace(new RegExp(escapeRegExp(oldDomain), 'g'), newDomain);
9554
+ const isString = typeof value === 'string';
9555
+ const source = isString ? value : JSON.stringify(value);
9556
+ const replaced = source.replace(SMR_DOMAIN_REGEX, match => SMR_TO_CLOUDFRONT_DOMAINS[match]);
9557
+ // No domain matched: skip the JSON re-parse and return the input untouched.
9558
+ if (replaced === source) {
9559
+ return value;
9560
+ }
9561
+ if (isString) {
9562
+ return replaced;
9555
9563
  }
9556
9564
  try {
9557
- return typeof value === 'string' ? replacedValue : JSON.parse(replacedValue);
9565
+ return JSON.parse(replaced);
9558
9566
  } catch (err) {
9559
9567
  return value;
9560
9568
  }