@smartico/public-api 0.0.306 → 0.0.308

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.
@@ -3,4 +3,9 @@ export interface AchievementTaskPublicMeta {
3
3
  display_progress_as_count?: boolean;
4
4
  stage_image?: string;
5
5
  priority?: number;
6
+ user_state_operations?: {
7
+ [key: string]: {
8
+ op: string;
9
+ };
10
+ };
6
11
  }
@@ -1,6 +1,8 @@
1
1
  import { AchievementAvailabilityStatus } from "./AchievementAvailabilityStatus";
2
2
  import { UserAchievement } from "./UserAchievement";
3
+ import { UserAchievementTask } from "./UserAchievementTask";
3
4
  export declare class MissionUtils {
4
5
  static getAvailabilityStatus: (mission: UserAchievement) => AchievementAvailabilityStatus;
5
6
  static getMs: (ts: number) => number;
7
+ static replaceFavGameNameTag: (task: UserAchievementTask) => UserAchievementTask;
6
8
  }
@@ -12,4 +12,9 @@ export interface UserAchievementTask {
12
12
  lastExecutionDate: string;
13
13
  unlocked_by_mission_id?: number;
14
14
  unlocked_by_level_id?: number;
15
+ user_state_params?: {
16
+ map: {
17
+ [key: string]: any;
18
+ };
19
+ };
15
20
  }
@@ -19,3 +19,4 @@ export * from './AchClaimPrizeRequest';
19
19
  export * from './AchClaimPrizeResponse';
20
20
  export * from './AchievementAvailabilityStatus';
21
21
  export * from './GetRelatedAchTourResponse';
22
+ export * from './MissionsUtils';
package/dist/index.js CHANGED
@@ -1279,6 +1279,42 @@ MissionUtils.getAvailabilityStatus = function (mission) {
1279
1279
  MissionUtils.getMs = function (ts) {
1280
1280
  return new Date(ts).getTime();
1281
1281
  };
1282
+ MissionUtils.replaceFavGameNameTag = function (task) {
1283
+ var _task$user_state_para, _task$task_public_met;
1284
+ if (!task) {
1285
+ return task;
1286
+ }
1287
+ var userStateParams = ((_task$user_state_para = task.user_state_params) == null ? void 0 : _task$user_state_para.map) || {};
1288
+ var userStateOperator = (_task$task_public_met = task.task_public_meta) == null ? void 0 : _task$task_public_met.user_state_operations;
1289
+ var userStateParamsKeys = Object.keys(userStateParams);
1290
+ if (userStateParamsKeys.length === 0 || !userStateOperator) {
1291
+ return task;
1292
+ }
1293
+ var operatorsMulti = ['has', '!has'];
1294
+ var operatorsPos = ['pos1', 'pos2', 'pos3'];
1295
+ var replacementValue = '';
1296
+ userStateParamsKeys.forEach(function (k) {
1297
+ var _userStateOperator$k;
1298
+ var operator = (_userStateOperator$k = userStateOperator[k]) == null ? void 0 : _userStateOperator$k.op;
1299
+ if (operatorsMulti.includes(operator)) {
1300
+ var value = userStateParams[k];
1301
+ if (value && value.length > 0) {
1302
+ replacementValue = value.join(' ,');
1303
+ }
1304
+ }
1305
+ if (operatorsPos.includes(operator)) {
1306
+ var _value = userStateParams[k];
1307
+ var pos = Number(operator.replace('pos', '')) - 1;
1308
+ if (IntUtils.isNotNull(pos) && _value && _value[pos]) {
1309
+ replacementValue = _value[pos];
1310
+ }
1311
+ }
1312
+ });
1313
+ if (replacementValue) {
1314
+ task.task_public_meta.name = task.task_public_meta.name.replace('{{suggested_games}}', replacementValue);
1315
+ }
1316
+ return task;
1317
+ };
1282
1318
 
1283
1319
  var UserAchievementTransform = function UserAchievementTransform(items) {
1284
1320
  return items.filter(function (r) {
@@ -1317,6 +1353,7 @@ var UserAchievementTransform = function UserAchievementTransform(items) {
1317
1353
  return t.task_type_id === exports.AchievementTaskType.CompleteAchievement;
1318
1354
  }).map(function (t) {
1319
1355
  var _t$task_public_meta;
1356
+ MissionUtils.replaceFavGameNameTag(t);
1320
1357
  return {
1321
1358
  id: t.task_id,
1322
1359
  name: (_t$task_public_meta = t.task_public_meta) == null ? void 0 : _t$task_public_meta.name,
@@ -1358,7 +1395,7 @@ var UserAchievementTransform = function UserAchievementTransform(items) {
1358
1395
  claim_button_action: r.ach_public_meta.claim_button_action
1359
1396
  };
1360
1397
  if (r.ach_status_id === exports.AchievementStatus.Recurring) {
1361
- x.next_recurrence_date_ts = r.next_recurrence_date_ts;
1398
+ x.next_recurrence_date_ts = Date.now() + (r == null ? void 0 : r.milliseconds_till_available);
1362
1399
  }
1363
1400
  if (r.ach_status_id === exports.AchievementStatus.RecurringUponCompletion) {
1364
1401
  x.completion_count = r.completed_count;
@@ -5206,6 +5243,7 @@ exports.GetLevelMapResponseTransform = GetLevelMapResponseTransform;
5206
5243
  exports.InboxMessageBodyTransform = InboxMessageBodyTransform;
5207
5244
  exports.InboxMessagesTransform = InboxMessagesTransform;
5208
5245
  exports.MiniGamePrizeTypeNamed = MiniGamePrizeTypeNamed;
5246
+ exports.MissionUtils = MissionUtils;
5209
5247
  exports.OCache = OCache;
5210
5248
  exports.PrizeModifiersKeysNames = PrizeModifiersKeysNames;
5211
5249
  exports.QuizMarketPerSport = QuizMarketPerSport;