@usertour/helpers 0.0.12 → 0.0.14

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.
@@ -439,6 +439,8 @@ var wait = (seconds) => {
439
439
  export {
440
440
  PRIORITIES,
441
441
  rulesTypes,
442
+ isActiveRulesByCurrentPage,
443
+ isActiveRulesByCurrentTime,
442
444
  activedRulesConditions,
443
445
  activedContentRulesConditions,
444
446
  activedContentCondition,
@@ -43,6 +43,8 @@ __export(conditions_exports, {
43
43
  flowIsSeen: () => flowIsSeen,
44
44
  isActive: () => isActive,
45
45
  isActiveContent: () => isActiveContent,
46
+ isActiveRulesByCurrentPage: () => isActiveRulesByCurrentPage,
47
+ isActiveRulesByCurrentTime: () => isActiveRulesByCurrentTime,
46
48
  isDismissedEventMapping: () => isDismissedEventMapping,
47
49
  isHasActivedContents: () => isHasActivedContents,
48
50
  isSameContents: () => isSameContents,
@@ -601,6 +603,8 @@ var wait = (seconds) => {
601
603
  flowIsSeen,
602
604
  isActive,
603
605
  isActiveContent,
606
+ isActiveRulesByCurrentPage,
607
+ isActiveRulesByCurrentTime,
604
608
  isDismissedEventMapping,
605
609
  isHasActivedContents,
606
610
  isSameContents,
@@ -2,6 +2,8 @@ import { ContentPriority, RulesType, RulesCondition, SDKContent, BizEvent, BizEv
2
2
 
3
3
  declare const PRIORITIES: ContentPriority[];
4
4
  declare const rulesTypes: RulesType[];
5
+ declare const isActiveRulesByCurrentPage: (rules: RulesCondition) => boolean;
6
+ declare const isActiveRulesByCurrentTime: (rules: RulesCondition) => boolean;
5
7
  type RewriteRulesCondition = Partial<Record<RulesType, boolean>>;
6
8
  declare const activedRulesConditions: (conditions: RulesCondition[], rewrite?: RewriteRulesCondition) => Promise<RulesCondition[]>;
7
9
  declare const activedContentRulesConditions: (conditions: RulesCondition[], contents: SDKContent[]) => Promise<RulesCondition[]>;
@@ -30,4 +32,4 @@ declare const isValidContent: (content: SDKContent, contents: SDKContent[]) => b
30
32
  declare const parseUrlParams: (url: string, paramName: string) => string | null;
31
33
  declare const wait: (seconds: number) => Promise<void>;
32
34
 
33
- export { PRIORITIES, activedContentCondition, activedContentRulesConditions, activedRulesConditions, checklistIsDimissed, checklistIsSeen, completeEventMapping, filterAutoStartContent, findLatestEvent, flowIsDismissed, flowIsSeen, isActive, isActiveContent, isDismissedEventMapping, isHasActivedContents, isSameContents, isValidContent, parseUrlParams, rulesTypes, wait };
35
+ export { PRIORITIES, activedContentCondition, activedContentRulesConditions, activedRulesConditions, checklistIsDimissed, checklistIsSeen, completeEventMapping, filterAutoStartContent, findLatestEvent, flowIsDismissed, flowIsSeen, isActive, isActiveContent, isActiveRulesByCurrentPage, isActiveRulesByCurrentTime, isDismissedEventMapping, isHasActivedContents, isSameContents, isValidContent, parseUrlParams, rulesTypes, wait };
@@ -2,6 +2,8 @@ import { ContentPriority, RulesType, RulesCondition, SDKContent, BizEvent, BizEv
2
2
 
3
3
  declare const PRIORITIES: ContentPriority[];
4
4
  declare const rulesTypes: RulesType[];
5
+ declare const isActiveRulesByCurrentPage: (rules: RulesCondition) => boolean;
6
+ declare const isActiveRulesByCurrentTime: (rules: RulesCondition) => boolean;
5
7
  type RewriteRulesCondition = Partial<Record<RulesType, boolean>>;
6
8
  declare const activedRulesConditions: (conditions: RulesCondition[], rewrite?: RewriteRulesCondition) => Promise<RulesCondition[]>;
7
9
  declare const activedContentRulesConditions: (conditions: RulesCondition[], contents: SDKContent[]) => Promise<RulesCondition[]>;
@@ -30,4 +32,4 @@ declare const isValidContent: (content: SDKContent, contents: SDKContent[]) => b
30
32
  declare const parseUrlParams: (url: string, paramName: string) => string | null;
31
33
  declare const wait: (seconds: number) => Promise<void>;
32
34
 
33
- export { PRIORITIES, activedContentCondition, activedContentRulesConditions, activedRulesConditions, checklistIsDimissed, checklistIsSeen, completeEventMapping, filterAutoStartContent, findLatestEvent, flowIsDismissed, flowIsSeen, isActive, isActiveContent, isDismissedEventMapping, isHasActivedContents, isSameContents, isValidContent, parseUrlParams, rulesTypes, wait };
35
+ export { PRIORITIES, activedContentCondition, activedContentRulesConditions, activedRulesConditions, checklistIsDimissed, checklistIsSeen, completeEventMapping, filterAutoStartContent, findLatestEvent, flowIsDismissed, flowIsSeen, isActive, isActiveContent, isActiveRulesByCurrentPage, isActiveRulesByCurrentTime, isDismissedEventMapping, isHasActivedContents, isSameContents, isValidContent, parseUrlParams, rulesTypes, wait };
@@ -12,6 +12,8 @@ import {
12
12
  flowIsSeen,
13
13
  isActive,
14
14
  isActiveContent,
15
+ isActiveRulesByCurrentPage,
16
+ isActiveRulesByCurrentTime,
15
17
  isDismissedEventMapping,
16
18
  isHasActivedContents,
17
19
  isSameContents,
@@ -19,7 +21,7 @@ import {
19
21
  parseUrlParams,
20
22
  rulesTypes,
21
23
  wait
22
- } from "./chunk-UT6OPCUX.js";
24
+ } from "./chunk-SYVTGB2A.js";
23
25
  import "./chunk-FNQIIEWK.js";
24
26
  import "./chunk-XEO3YXBM.js";
25
27
  export {
@@ -36,6 +38,8 @@ export {
36
38
  flowIsSeen,
37
39
  isActive,
38
40
  isActiveContent,
41
+ isActiveRulesByCurrentPage,
42
+ isActiveRulesByCurrentTime,
39
43
  isDismissedEventMapping,
40
44
  isHasActivedContents,
41
45
  isSameContents,
package/dist/index.cjs CHANGED
@@ -37,10 +37,8 @@ var src_exports = {};
37
37
  __export(src_exports, {
38
38
  AbortController: () => AbortController,
39
39
  ArrayProto: () => ArrayProto,
40
- PRIORITIES: () => PRIORITIES,
41
40
  XMLHttpRequest: () => XMLHttpRequest,
42
41
  absoluteUrl: () => absoluteUrl,
43
- activedContentCondition: () => activedContentCondition,
44
42
  activedContentRulesConditions: () => activedContentRulesConditions,
45
43
  activedRulesConditions: () => activedRulesConditions,
46
44
  assignableWindow: () => assignableWindow,
@@ -49,7 +47,6 @@ __export(src_exports, {
49
47
  checklistIsDimissed: () => checklistIsDimissed,
50
48
  checklistIsSeen: () => checklistIsSeen,
51
49
  cn: () => cn,
52
- completeEventMapping: () => completeEventMapping,
53
50
  conditionsIsSame: () => conditionsIsSame,
54
51
  convertSettings: () => convertSettings,
55
52
  convertToCssVars: () => convertToCssVars,
@@ -87,12 +84,11 @@ __export(src_exports, {
87
84
  hexToRGBStr: () => hexToRGBStr,
88
85
  hexToRgb: () => hexToRgb,
89
86
  isActive: () => isActive,
90
- isActiveContent: () => isActiveContent,
87
+ isActiveRulesByCurrentTime: () => isActiveRulesByCurrentTime,
91
88
  isArray: () => isArray,
92
89
  isBoolean: () => isBoolean,
93
90
  isDark: () => isDark,
94
91
  isDate: () => isDate,
95
- isDismissedEventMapping: () => isDismissedEventMapping,
96
92
  isDocument: () => isDocument,
97
93
  isEmptyObject: () => isEmptyObject,
98
94
  isEmptyString: () => isEmptyString,
@@ -100,7 +96,6 @@ __export(src_exports, {
100
96
  isFile: () => isFile,
101
97
  isFormData: () => isFormData,
102
98
  isFunction: () => isFunction,
103
- isHasActivedContents: () => isHasActivedContents,
104
99
  isMatchUrlPattern: () => isMatchUrlPattern,
105
100
  isNull: () => isNull,
106
101
  isNullish: () => isNullish,
@@ -108,7 +103,6 @@ __export(src_exports, {
108
103
  isObject: () => isObject,
109
104
  isPublishedAtLeastOneEnvironment: () => isPublishedAtLeastOneEnvironment,
110
105
  isPublishedInAllEnvironments: () => isPublishedInAllEnvironments,
111
- isSameContents: () => isSameContents,
112
106
  isString: () => isString,
113
107
  isUint8Array: () => isUint8Array,
114
108
  isUndefined: () => isUndefined,
@@ -122,12 +116,10 @@ __export(src_exports, {
122
116
  navigator: () => navigator,
123
117
  parseUrlParams: () => parseUrlParams,
124
118
  removeAuthToken: () => removeAuthToken,
125
- rulesTypes: () => rulesTypes,
126
119
  setAuthToken: () => setAuthToken,
127
120
  storage: () => storage,
128
121
  userAgent: () => userAgent,
129
122
  uuidV4: () => uuidV4,
130
- wait: () => wait,
131
123
  window: () => win
132
124
  });
133
125
  module.exports = __toCommonJS(src_exports);
@@ -1219,20 +1211,6 @@ var activedContentRulesConditions = async (conditions, contents) => {
1219
1211
  }
1220
1212
  return rulesCondition;
1221
1213
  };
1222
- var activedContentCondition = async (contents) => {
1223
- const _contents = JSON.parse(JSON.stringify(contents));
1224
- for (let index = 0; index < _contents.length; index++) {
1225
- const content = _contents[index];
1226
- const { enabledAutoStartRules, autoStartRules, hideRules, enabledHideRules } = content.config;
1227
- if (enabledAutoStartRules && autoStartRules && autoStartRules.length > 0) {
1228
- content.config.autoStartRules = await activedRulesConditions(autoStartRules);
1229
- }
1230
- if (enabledHideRules && hideRules && hideRules.length > 0) {
1231
- content.config.hideRules = await activedRulesConditions(hideRules);
1232
- }
1233
- }
1234
- return _contents;
1235
- };
1236
1214
  var isActive = (autoStartRules) => {
1237
1215
  if (!autoStartRules || autoStartRules.length === 0) {
1238
1216
  return false;
@@ -1277,35 +1255,6 @@ var filterAutoStartContent = (contents, type) => {
1277
1255
  return content.type === type && isActive2 && isValid;
1278
1256
  }).sort(priorityCompare);
1279
1257
  };
1280
- var isHasActivedContents = (source, dest) => {
1281
- for (let index = 0; index < source.length; index++) {
1282
- const content1 = source[index];
1283
- const content2 = dest.find((c) => c.id === content1.id);
1284
- if (!content2) {
1285
- return true;
1286
- }
1287
- if (isActiveContent(content1) !== isActiveContent(content2)) {
1288
- return true;
1289
- }
1290
- }
1291
- return false;
1292
- };
1293
- var isSameContents = (source, dest) => {
1294
- if (!source || !dest || source.length !== dest.length) {
1295
- return false;
1296
- }
1297
- for (let index = 0; index < source.length; index++) {
1298
- const content1 = source[index];
1299
- const content2 = dest.find((c) => c.id === content1.id);
1300
- if (!content2) {
1301
- return false;
1302
- }
1303
- if (!conditionsIsSame(content1.config.autoStartRules, content2.config.autoStartRules)) {
1304
- return false;
1305
- }
1306
- }
1307
- return true;
1308
- };
1309
1258
  var getLatestEvent = (currentContent, contents, eventCodeName) => {
1310
1259
  var _a;
1311
1260
  const bizEvents = [];
@@ -1506,32 +1455,12 @@ var parseUrlParams = (url, paramName) => {
1506
1455
  return null;
1507
1456
  }
1508
1457
  };
1509
- var wait = (seconds) => {
1510
- if (typeof seconds !== "number" || Number.isNaN(seconds)) {
1511
- return Promise.reject(new Error("Invalid wait time: must be a number"));
1512
- }
1513
- if (seconds < 0) {
1514
- return Promise.reject(new Error("Invalid wait time: cannot be negative"));
1515
- }
1516
- if (seconds === 0) {
1517
- return Promise.resolve();
1518
- }
1519
- return new Promise((resolve, reject) => {
1520
- try {
1521
- setTimeout(resolve, seconds * 1e3);
1522
- } catch (error) {
1523
- reject(error);
1524
- }
1525
- });
1526
- };
1527
1458
  // Annotate the CommonJS export names for ESM import in node:
1528
1459
  0 && (module.exports = {
1529
1460
  AbortController,
1530
1461
  ArrayProto,
1531
- PRIORITIES,
1532
1462
  XMLHttpRequest,
1533
1463
  absoluteUrl,
1534
- activedContentCondition,
1535
1464
  activedContentRulesConditions,
1536
1465
  activedRulesConditions,
1537
1466
  assignableWindow,
@@ -1540,7 +1469,6 @@ var wait = (seconds) => {
1540
1469
  checklistIsDimissed,
1541
1470
  checklistIsSeen,
1542
1471
  cn,
1543
- completeEventMapping,
1544
1472
  conditionsIsSame,
1545
1473
  convertSettings,
1546
1474
  convertToCssVars,
@@ -1578,12 +1506,11 @@ var wait = (seconds) => {
1578
1506
  hexToRGBStr,
1579
1507
  hexToRgb,
1580
1508
  isActive,
1581
- isActiveContent,
1509
+ isActiveRulesByCurrentTime,
1582
1510
  isArray,
1583
1511
  isBoolean,
1584
1512
  isDark,
1585
1513
  isDate,
1586
- isDismissedEventMapping,
1587
1514
  isDocument,
1588
1515
  isEmptyObject,
1589
1516
  isEmptyString,
@@ -1591,7 +1518,6 @@ var wait = (seconds) => {
1591
1518
  isFile,
1592
1519
  isFormData,
1593
1520
  isFunction,
1594
- isHasActivedContents,
1595
1521
  isMatchUrlPattern,
1596
1522
  isNull,
1597
1523
  isNullish,
@@ -1599,7 +1525,6 @@ var wait = (seconds) => {
1599
1525
  isObject,
1600
1526
  isPublishedAtLeastOneEnvironment,
1601
1527
  isPublishedInAllEnvironments,
1602
- isSameContents,
1603
1528
  isString,
1604
1529
  isUint8Array,
1605
1530
  isUndefined,
@@ -1613,11 +1538,9 @@ var wait = (seconds) => {
1613
1538
  navigator,
1614
1539
  parseUrlParams,
1615
1540
  removeAuthToken,
1616
- rulesTypes,
1617
1541
  setAuthToken,
1618
1542
  storage,
1619
1543
  userAgent,
1620
1544
  uuidV4,
1621
- wait,
1622
1545
  window
1623
1546
  });
package/dist/index.d.cts CHANGED
@@ -11,7 +11,7 @@ export { isPublishedAtLeastOneEnvironment, isPublishedInAllEnvironments } from '
11
11
  export { deepClone } from './utils.cjs';
12
12
  export { generateAutoStateColors, hexToHSLString, hexToRGBStr } from './color.cjs';
13
13
  export { absoluteUrl, cn, cuid, evalCode, formatDate, getRandomColor, hexToRgb, isDark, uuidV4 } from './helper.cjs';
14
- export { PRIORITIES, activedContentCondition, activedContentRulesConditions, activedRulesConditions, checklistIsDimissed, checklistIsSeen, completeEventMapping, filterAutoStartContent, findLatestEvent, flowIsDismissed, flowIsSeen, isActive, isActiveContent, isDismissedEventMapping, isHasActivedContents, isSameContents, isValidContent, parseUrlParams, rulesTypes, wait } from './conditions.cjs';
14
+ export { activedContentRulesConditions, activedRulesConditions, checklistIsDimissed, checklistIsSeen, filterAutoStartContent, findLatestEvent, flowIsDismissed, flowIsSeen, isActive, isActiveRulesByCurrentTime, isValidContent, parseUrlParams } from './conditions.cjs';
15
15
  export { default as isEqual } from 'fast-deep-equal';
16
16
  import '@usertour/types';
17
17
  import './storage.cjs';
package/dist/index.d.ts CHANGED
@@ -11,7 +11,7 @@ export { isPublishedAtLeastOneEnvironment, isPublishedInAllEnvironments } from '
11
11
  export { deepClone } from './utils.js';
12
12
  export { generateAutoStateColors, hexToHSLString, hexToRGBStr } from './color.js';
13
13
  export { absoluteUrl, cn, cuid, evalCode, formatDate, getRandomColor, hexToRgb, isDark, uuidV4 } from './helper.js';
14
- export { PRIORITIES, activedContentCondition, activedContentRulesConditions, activedRulesConditions, checklistIsDimissed, checklistIsSeen, completeEventMapping, filterAutoStartContent, findLatestEvent, flowIsDismissed, flowIsSeen, isActive, isActiveContent, isDismissedEventMapping, isHasActivedContents, isSameContents, isValidContent, parseUrlParams, rulesTypes, wait } from './conditions.js';
14
+ export { activedContentRulesConditions, activedRulesConditions, checklistIsDimissed, checklistIsSeen, filterAutoStartContent, findLatestEvent, flowIsDismissed, flowIsSeen, isActive, isActiveRulesByCurrentTime, isValidContent, parseUrlParams } from './conditions.js';
15
15
  export { default as isEqual } from 'fast-deep-equal';
16
16
  import '@usertour/types';
17
17
  import './storage.js';
package/dist/index.js CHANGED
@@ -40,27 +40,19 @@ import {
40
40
  win
41
41
  } from "./chunk-H7VA3ML2.js";
42
42
  import {
43
- PRIORITIES,
44
- activedContentCondition,
45
43
  activedContentRulesConditions,
46
44
  activedRulesConditions,
47
45
  checklistIsDimissed,
48
46
  checklistIsSeen,
49
- completeEventMapping,
50
47
  filterAutoStartContent,
51
48
  findLatestEvent,
52
49
  flowIsDismissed,
53
50
  flowIsSeen,
54
51
  isActive,
55
- isActiveContent,
56
- isDismissedEventMapping,
57
- isHasActivedContents,
58
- isSameContents,
52
+ isActiveRulesByCurrentTime,
59
53
  isValidContent,
60
- parseUrlParams,
61
- rulesTypes,
62
- wait
63
- } from "./chunk-UT6OPCUX.js";
54
+ parseUrlParams
55
+ } from "./chunk-SYVTGB2A.js";
64
56
  import {
65
57
  conditionsIsSame,
66
58
  isEqual,
@@ -125,10 +117,8 @@ import "./chunk-XEO3YXBM.js";
125
117
  export {
126
118
  AbortController,
127
119
  ArrayProto,
128
- PRIORITIES,
129
120
  XMLHttpRequest,
130
121
  absoluteUrl,
131
- activedContentCondition,
132
122
  activedContentRulesConditions,
133
123
  activedRulesConditions,
134
124
  assignableWindow,
@@ -137,7 +127,6 @@ export {
137
127
  checklistIsDimissed,
138
128
  checklistIsSeen,
139
129
  cn,
140
- completeEventMapping,
141
130
  conditionsIsSame,
142
131
  convertSettings,
143
132
  convertToCssVars,
@@ -175,12 +164,11 @@ export {
175
164
  hexToRGBStr,
176
165
  hexToRgb,
177
166
  isActive,
178
- isActiveContent,
167
+ isActiveRulesByCurrentTime,
179
168
  isArray,
180
169
  isBoolean,
181
170
  isDark,
182
171
  isDate,
183
- isDismissedEventMapping,
184
172
  isDocument,
185
173
  isEmptyObject,
186
174
  isEmptyString,
@@ -188,7 +176,6 @@ export {
188
176
  isFile,
189
177
  isFormData,
190
178
  isFunction,
191
- isHasActivedContents,
192
179
  isMatchUrlPattern,
193
180
  isNull,
194
181
  isNullish,
@@ -196,7 +183,6 @@ export {
196
183
  isObject,
197
184
  isPublishedAtLeastOneEnvironment,
198
185
  isPublishedInAllEnvironments,
199
- isSameContents,
200
186
  isString,
201
187
  isUint8Array,
202
188
  isUndefined,
@@ -210,11 +196,9 @@ export {
210
196
  navigator,
211
197
  parseUrlParams,
212
198
  removeAuthToken,
213
- rulesTypes,
214
199
  setAuthToken,
215
200
  storage,
216
201
  userAgent,
217
202
  uuidV4,
218
- wait,
219
203
  win as window
220
204
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@usertour/helpers",
3
- "version": "0.0.12",
3
+ "version": "0.0.14",
4
4
  "type": "module",
5
5
  "description": "Utility functions and helpers shared across the UserTour project",
6
6
  "homepage": "https://www.usertour.io",