saltfish 0.3.57 → 0.3.59
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.
- package/dist/managers/CursorManager.d.ts +5 -2
- package/dist/managers/CursorManager.d.ts.map +1 -1
- package/dist/managers/TriggerManager.d.ts +2 -0
- package/dist/managers/TriggerManager.d.ts.map +1 -1
- package/dist/player.js +2 -2
- package/dist/player.min.js +2 -2
- package/dist/saltfish-playlist-player.es.js +136 -54
- package/dist/saltfish-playlist-player.umd.js +1 -1
- package/dist/types/index.d.ts +13 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/utils/elementSizeValidator.d.ts +35 -10
- package/dist/utils/elementSizeValidator.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/types/index.d.ts
CHANGED
|
@@ -161,6 +161,15 @@ export interface ExpectedSize {
|
|
|
161
161
|
width: number;
|
|
162
162
|
height: number;
|
|
163
163
|
}
|
|
164
|
+
/**
|
|
165
|
+
* Expected element tag and text for validation
|
|
166
|
+
* Used to validate that found elements match the expected tag name and text content from recording
|
|
167
|
+
* This is tried first before falling back to size-based validation
|
|
168
|
+
*/
|
|
169
|
+
export interface ExpectedElement {
|
|
170
|
+
tagName: string;
|
|
171
|
+
textContent: string;
|
|
172
|
+
}
|
|
164
173
|
/**
|
|
165
174
|
* Cursor animation configuration
|
|
166
175
|
*/
|
|
@@ -184,6 +193,7 @@ export interface CursorAnimation {
|
|
|
184
193
|
padding?: string | number;
|
|
185
194
|
};
|
|
186
195
|
expectedSize?: ExpectedSize;
|
|
196
|
+
expectedElement?: ExpectedElement;
|
|
187
197
|
}
|
|
188
198
|
/**
|
|
189
199
|
* Step transition condition
|
|
@@ -195,6 +205,7 @@ export interface TransitionCondition {
|
|
|
195
205
|
timeout?: number;
|
|
196
206
|
nextStep: string;
|
|
197
207
|
expectedSize?: ExpectedSize;
|
|
208
|
+
expectedElement?: ExpectedElement;
|
|
198
209
|
}
|
|
199
210
|
/**
|
|
200
211
|
* Transcript chunk with timing information (word-level)
|
|
@@ -322,8 +333,10 @@ export interface PlaylistTriggers {
|
|
|
322
333
|
urlMatchType?: 'exact' | 'contains' | 'regex';
|
|
323
334
|
elementClicked: string | null;
|
|
324
335
|
elementClickedExpectedSize?: ExpectedSize;
|
|
336
|
+
elementClickedExpectedElement?: ExpectedElement;
|
|
325
337
|
elementVisible: string | null;
|
|
326
338
|
elementVisibleExpectedSize?: ExpectedSize;
|
|
339
|
+
elementVisibleExpectedElement?: ExpectedElement;
|
|
327
340
|
userAttributes: UserAttributeCondition[];
|
|
328
341
|
}
|
|
329
342
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,aAAa;;;;;;;;;;;;;CAahB,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,SAAS;;;CAGZ,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,YAAY;;;;CAIf,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;CAsBd,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,GAAG;;;;;;;CAON,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,WAAW;;;;;;;;;;;;CAYd,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,QAAQ;;;;;CAKX,CAAC;AAEX;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,OAAO,aAAa,CAAC,MAAM,OAAO,aAAa,CAAC,CAAC;AAE3E;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,OAAO,SAAS,CAAC,MAAM,OAAO,SAAS,CAAC,CAAC;AAEhE;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,oDAAoD;IACpD,KAAK,IAAI,IAAI,CAAC;IACd,8DAA8D;IAC9D,OAAO,IAAI,IAAI,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,mCAAmC;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,8EAA8E;IAC9E,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,uFAAuF;IACvF,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,0BAA0B,CAAC,EAAE,OAAO,CAAC;IACrC,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,KAAK;IACpB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,GAAG,CAAC;IACZ,MAAM,EAAE;QACN,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,KAAK,GAAG,UAAU,CAAC;QAC3C,MAAM,EAAE,MAAM,CAAC;QACf,GAAG,CAAC,EAAE,MAAM,CAAC;KACd,CAAC;CACH;AAED;;;GAGG;AACH,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,MAAM,CAAC,EAAE,QAAQ,GAAG,SAAS,GAAG,UAAU,GAAG,aAAa,CAAC;IAC3D,cAAc,EAAE,MAAM,CAAC;IACvB,IAAI,CAAC,EAAE,SAAS,GAAG,WAAW,CAAC;IAC/B;;;;;;;OAOG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,eAAe,CAAC,EAAE;QAChB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;KAC3B,CAAC;IACF,YAAY,CAAC,EAAE,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,15 +1,22 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Element
|
|
2
|
+
* Element Validator
|
|
3
3
|
*
|
|
4
|
-
* Validates that DOM elements match expected
|
|
5
|
-
*
|
|
4
|
+
* Validates that DOM elements match expected characteristics from recording.
|
|
5
|
+
* Supports two validation strategies:
|
|
6
|
+
* 1. Tag+Text validation: Matches element by tag name and text content (tried first)
|
|
7
|
+
* 2. Size validation: Matches element by dimensions (fallback)
|
|
6
8
|
*
|
|
9
|
+
* Used to prevent cursor/transitions targeting obviously wrong elements.
|
|
7
10
|
* If validation fails, returns null (acts as "element not found").
|
|
8
11
|
*/
|
|
9
12
|
export interface ExpectedSize {
|
|
10
13
|
width: number;
|
|
11
14
|
height: number;
|
|
12
15
|
}
|
|
16
|
+
export interface ExpectedElement {
|
|
17
|
+
tagName: string;
|
|
18
|
+
textContent: string;
|
|
19
|
+
}
|
|
13
20
|
interface SizeValidationConfig {
|
|
14
21
|
/** Max allowed size difference ratio (0.5 = 50%) */
|
|
15
22
|
tolerance: number;
|
|
@@ -19,31 +26,49 @@ interface SizeValidationConfig {
|
|
|
19
26
|
/**
|
|
20
27
|
* Find a single valid element matching selector
|
|
21
28
|
*
|
|
29
|
+
* Validation strategy (in order):
|
|
30
|
+
* 1. If expectedElement provided: Try tag+text matching first
|
|
31
|
+
* 2. If expectedSize provided (or tag+text failed): Use size validation
|
|
32
|
+
* 3. If neither provided: Return first visible element
|
|
33
|
+
*
|
|
22
34
|
* @param selector - CSS selector
|
|
23
|
-
* @param
|
|
35
|
+
* @param expectedElement - Expected tag+text (optional, tried first)
|
|
36
|
+
* @param expectedSize - Expected width/height (optional, fallback)
|
|
24
37
|
* @param config - Validation config (optional)
|
|
25
38
|
* @returns Element if valid, null if not found or all rejected
|
|
26
39
|
*/
|
|
27
|
-
export declare function findValidElement(selector: string, expectedSize?: ExpectedSize | null, config?: SizeValidationConfig): Element | null;
|
|
40
|
+
export declare function findValidElement(selector: string, expectedElement?: ExpectedElement | null, expectedSize?: ExpectedSize | null, config?: SizeValidationConfig): Element | null;
|
|
28
41
|
/**
|
|
29
42
|
* Find all valid elements matching selector
|
|
30
43
|
* Used when attaching listeners to multiple elements (e.g., dom-click transitions)
|
|
31
44
|
*
|
|
45
|
+
* Validation strategy (in order):
|
|
46
|
+
* 1. If expectedElement provided: Try tag+text matching first
|
|
47
|
+
* 2. If expectedSize provided (or tag+text failed): Use size validation
|
|
48
|
+
* 3. If neither provided: Return all visible elements
|
|
49
|
+
*
|
|
32
50
|
* @param selector - CSS selector
|
|
33
|
-
* @param
|
|
51
|
+
* @param expectedElement - Expected tag+text (optional, tried first)
|
|
52
|
+
* @param expectedSize - Expected width/height (optional, fallback)
|
|
34
53
|
* @param config - Validation config (optional)
|
|
35
54
|
* @returns Array of valid elements (may be empty)
|
|
36
55
|
*/
|
|
37
|
-
export declare function findAllValidElements(selector: string, expectedSize?: ExpectedSize | null, config?: SizeValidationConfig): Element[];
|
|
56
|
+
export declare function findAllValidElements(selector: string, expectedElement?: ExpectedElement | null, expectedSize?: ExpectedSize | null, config?: SizeValidationConfig): Element[];
|
|
38
57
|
/**
|
|
39
|
-
* Validate a specific element against expected
|
|
58
|
+
* Validate a specific element against expected characteristics
|
|
40
59
|
* Used when you already have an element reference
|
|
41
60
|
*
|
|
61
|
+
* Validation strategy (in order):
|
|
62
|
+
* 1. If expectedElement provided: Check tag+text match
|
|
63
|
+
* 2. If expectedSize provided (and tag+text passed or not provided): Check size match
|
|
64
|
+
* 3. If neither provided: Just check basic visibility
|
|
65
|
+
*
|
|
42
66
|
* @param element - Element to validate
|
|
43
|
-
* @param
|
|
67
|
+
* @param expectedElement - Expected tag+text (optional, tried first)
|
|
68
|
+
* @param expectedSize - Expected width/height (optional, fallback)
|
|
44
69
|
* @param config - Validation config (optional)
|
|
45
70
|
* @returns true if valid, false if rejected
|
|
46
71
|
*/
|
|
47
|
-
export declare function isElementValid(element: Element, expectedSize?: ExpectedSize | null, config?: SizeValidationConfig): boolean;
|
|
72
|
+
export declare function isElementValid(element: Element, expectedElement?: ExpectedElement | null, expectedSize?: ExpectedSize | null, config?: SizeValidationConfig): boolean;
|
|
48
73
|
export {};
|
|
49
74
|
//# sourceMappingURL=elementSizeValidator.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"elementSizeValidator.d.ts","sourceRoot":"","sources":["../../src/utils/elementSizeValidator.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"elementSizeValidator.d.ts","sourceRoot":"","sources":["../../src/utils/elementSizeValidator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAQH,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,UAAU,oBAAoB;IAC5B,oDAAoD;IACpD,SAAS,EAAE,MAAM,CAAC;IAClB,qCAAqC;IACrC,OAAO,EAAE,MAAM,CAAC;CACjB;AAiKD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,MAAM,EAChB,eAAe,CAAC,EAAE,eAAe,GAAG,IAAI,EACxC,YAAY,CAAC,EAAE,YAAY,GAAG,IAAI,EAClC,MAAM,GAAE,oBAAqC,GAC5C,OAAO,GAAG,IAAI,CAmChB;AAmED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,MAAM,EAChB,eAAe,CAAC,EAAE,eAAe,GAAG,IAAI,EACxC,YAAY,CAAC,EAAE,YAAY,GAAG,IAAI,EAClC,MAAM,GAAE,oBAAqC,GAC5C,OAAO,EAAE,CAyDX;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,cAAc,CAC5B,OAAO,EAAE,OAAO,EAChB,eAAe,CAAC,EAAE,eAAe,GAAG,IAAI,EACxC,YAAY,CAAC,EAAE,YAAY,GAAG,IAAI,EAClC,MAAM,GAAE,oBAAqC,GAC5C,OAAO,CAuBT"}
|