@usertour/helpers 0.0.22 → 0.0.24

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.
@@ -353,12 +353,16 @@ var filterConditionsByType = (conditions, allowedTypes) => {
353
353
  };
354
354
  var evaluateRule = (rule, options) => {
355
355
  var _a;
356
- const { typeControl = {}, activatedIds, deactivatedIds } = options;
356
+ const { typeControl = {}, activatedIds, deactivatedIds, customEvaluators } = options;
357
357
  const ruleId = rule.id;
358
358
  if (activatedIds == null ? void 0 : activatedIds.includes(ruleId))
359
359
  return true;
360
360
  if (deactivatedIds == null ? void 0 : deactivatedIds.includes(ruleId))
361
361
  return false;
362
+ const customEvaluator = customEvaluators == null ? void 0 : customEvaluators[rule.type];
363
+ if (customEvaluator) {
364
+ return customEvaluator(rule, options);
365
+ }
362
366
  if (typeControl[rule.type] !== true) {
363
367
  return rule.actived || false;
364
368
  }
@@ -2,7 +2,7 @@ import {
2
2
  activedRulesConditions,
3
3
  filterConditionsByType,
4
4
  isConditionsActived
5
- } from "../chunk-BJ42SRQ6.js";
5
+ } from "../chunk-WDSNF52D.js";
6
6
  import "../chunk-YYIGUZNZ.js";
7
7
  import "../chunk-PAESAL23.js";
8
8
  import "../chunk-PBZSPV5R.js";
@@ -9,9 +9,7 @@ import {
9
9
  } from "./chunk-CEK3SCQO.js";
10
10
 
11
11
  // src/conditions/condition.ts
12
- import {
13
- RulesType
14
- } from "@usertour/types";
12
+ import { RulesType } from "@usertour/types";
15
13
  import isEqual from "fast-deep-equal";
16
14
  var conditionsIsSame = (rr1, rr2) => {
17
15
  return isEqual(rr1, rr2);
@@ -48,12 +46,16 @@ var filterConditionsByType = (conditions, allowedTypes) => {
48
46
  };
49
47
  var evaluateRule = (rule, options) => {
50
48
  var _a;
51
- const { typeControl = {}, activatedIds, deactivatedIds } = options;
49
+ const { typeControl = {}, activatedIds, deactivatedIds, customEvaluators } = options;
52
50
  const ruleId = rule.id;
53
51
  if (activatedIds == null ? void 0 : activatedIds.includes(ruleId))
54
52
  return true;
55
53
  if (deactivatedIds == null ? void 0 : deactivatedIds.includes(ruleId))
56
54
  return false;
55
+ const customEvaluator = customEvaluators == null ? void 0 : customEvaluators[rule.type];
56
+ if (customEvaluator) {
57
+ return customEvaluator(rule, options);
58
+ }
57
59
  if (typeControl[rule.type] !== true) {
58
60
  return rule.actived || false;
59
61
  }
@@ -368,12 +368,16 @@ var filterConditionsByType = (conditions, allowedTypes) => {
368
368
  };
369
369
  var evaluateRule = (rule, options) => {
370
370
  var _a;
371
- const { typeControl = {}, activatedIds, deactivatedIds } = options;
371
+ const { typeControl = {}, activatedIds, deactivatedIds, customEvaluators } = options;
372
372
  const ruleId = rule.id;
373
373
  if (activatedIds == null ? void 0 : activatedIds.includes(ruleId))
374
374
  return true;
375
375
  if (deactivatedIds == null ? void 0 : deactivatedIds.includes(ruleId))
376
376
  return false;
377
+ const customEvaluator = customEvaluators == null ? void 0 : customEvaluators[rule.type];
378
+ if (customEvaluator) {
379
+ return customEvaluator(rule, options);
380
+ }
377
381
  if (typeControl[rule.type] !== true) {
378
382
  return rule.actived || false;
379
383
  }
@@ -5,7 +5,7 @@ import {
5
5
  filterConditionsByType,
6
6
  isConditionsActived,
7
7
  isEqual
8
- } from "../chunk-BJ42SRQ6.js";
8
+ } from "../chunk-WDSNF52D.js";
9
9
  import "../chunk-YYIGUZNZ.js";
10
10
  import "../chunk-PAESAL23.js";
11
11
  import "../chunk-PBZSPV5R.js";
@@ -374,12 +374,16 @@ var filterConditionsByType = (conditions, allowedTypes) => {
374
374
  };
375
375
  var evaluateRule = (rule, options) => {
376
376
  var _a;
377
- const { typeControl = {}, activatedIds, deactivatedIds } = options;
377
+ const { typeControl = {}, activatedIds, deactivatedIds, customEvaluators } = options;
378
378
  const ruleId = rule.id;
379
379
  if (activatedIds == null ? void 0 : activatedIds.includes(ruleId))
380
380
  return true;
381
381
  if (deactivatedIds == null ? void 0 : deactivatedIds.includes(ruleId))
382
382
  return false;
383
+ const customEvaluator = customEvaluators == null ? void 0 : customEvaluators[rule.type];
384
+ if (customEvaluator) {
385
+ return customEvaluator(rule, options);
386
+ }
383
387
  if (typeControl[rule.type] !== true) {
384
388
  return rule.actived || false;
385
389
  }
@@ -6,7 +6,7 @@ import {
6
6
  filterConditionsByType,
7
7
  isConditionsActived,
8
8
  isEqual
9
- } from "../chunk-BJ42SRQ6.js";
9
+ } from "../chunk-WDSNF52D.js";
10
10
  import {
11
11
  evaluateUrlCondition,
12
12
  isMatchUrlPattern
package/dist/index.cjs CHANGED
@@ -1295,12 +1295,16 @@ var filterConditionsByType = (conditions, allowedTypes) => {
1295
1295
  };
1296
1296
  var evaluateRule = (rule, options) => {
1297
1297
  var _a;
1298
- const { typeControl = {}, activatedIds, deactivatedIds } = options;
1298
+ const { typeControl = {}, activatedIds, deactivatedIds, customEvaluators } = options;
1299
1299
  const ruleId = rule.id;
1300
1300
  if (activatedIds == null ? void 0 : activatedIds.includes(ruleId))
1301
1301
  return true;
1302
1302
  if (deactivatedIds == null ? void 0 : deactivatedIds.includes(ruleId))
1303
1303
  return false;
1304
+ const customEvaluator = customEvaluators == null ? void 0 : customEvaluators[rule.type];
1305
+ if (customEvaluator) {
1306
+ return customEvaluator(rule, options);
1307
+ }
1304
1308
  if (typeControl[rule.type] !== true) {
1305
1309
  return rule.actived || false;
1306
1310
  }
package/dist/index.js CHANGED
@@ -15,7 +15,7 @@ import {
15
15
  filterConditionsByType,
16
16
  isConditionsActived,
17
17
  isEqual
18
- } from "./chunk-BJ42SRQ6.js";
18
+ } from "./chunk-WDSNF52D.js";
19
19
  import {
20
20
  evaluateUrlCondition,
21
21
  isMatchUrlPattern
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@usertour/helpers",
3
- "version": "0.0.22",
3
+ "version": "0.0.24",
4
4
  "type": "module",
5
5
  "description": "Utility functions and helpers shared across the UserTour project",
6
6
  "homepage": "https://www.usertour.io",
@@ -29,7 +29,7 @@
29
29
  },
30
30
  "dependencies": {
31
31
  "@paralleldrive/cuid2": "^2.2.2",
32
- "@usertour/types": "^0.0.11",
32
+ "@usertour/types": "^0.0.13",
33
33
  "chroma-js": "^3.1.2",
34
34
  "class-variance-authority": "^0.4.0",
35
35
  "clsx": "^1.2.1",