@revturbine/sdk 0.2.37 → 0.2.38
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/headless.js +1 -1
- package/dist/headless.js.map +1 -1
- package/dist/index.js +12 -12
- package/dist/index.js.map +1 -1
- package/dist/types/web-sdk/react/EngagementArea.d.ts +35 -0
- package/dist/types/web-sdk/react/EngagementArea.d.ts.map +1 -0
- package/dist/types/web-sdk/react/TrackOnView.d.ts +31 -0
- package/dist/types/web-sdk/react/TrackOnView.d.ts.map +1 -0
- package/dist/types/web-sdk/react/index.d.ts +2 -0
- package/dist/types/web-sdk/react/index.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { type TrackPurpose } from './TelemetryScope';
|
|
3
|
+
/** Props for {@link EngagementArea}. */
|
|
4
|
+
export interface EngagementAreaProps {
|
|
5
|
+
/** Logical area name — set as the telemetry scope for descendants and stamped on emitted events. */
|
|
6
|
+
area: string;
|
|
7
|
+
/** Event emitted once when the area is first qualified-viewed. Default `engagement_view`. */
|
|
8
|
+
viewEvent?: string;
|
|
9
|
+
/** Event emitted with accrued dwell (`dwell_ms`) when the area unmounts. Default `engagement_dwell`. */
|
|
10
|
+
dwellEvent?: string;
|
|
11
|
+
/** Event emitted when a descendant is clicked. Default `engagement_interaction`. */
|
|
12
|
+
interactionEvent?: string;
|
|
13
|
+
/** Advisory purpose applied to the scope and emitted events. */
|
|
14
|
+
purpose?: TrackPurpose;
|
|
15
|
+
/** Visible fraction required to count as viewed / dwelling (0–1). Default 0.5. */
|
|
16
|
+
threshold?: number;
|
|
17
|
+
/** Host element tag. Default `'div'`. */
|
|
18
|
+
as?: keyof React.JSX.IntrinsicElements;
|
|
19
|
+
className?: string;
|
|
20
|
+
style?: React.CSSProperties;
|
|
21
|
+
children?: React.ReactNode;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* A qualified engagement region (plan 144 TASK-13 / REQ-21). It:
|
|
25
|
+
* - establishes a {@link TelemetryScope} (`area` / `purpose`) for its descendants;
|
|
26
|
+
* - emits `viewEvent` **once** when first viewport-qualified — one-shot across
|
|
27
|
+
* React Strict Mode's double-mount (AC-12);
|
|
28
|
+
* - accrues dwell only while the region is **onscreen and the tab is visible**,
|
|
29
|
+
* emitting `dwellEvent` with `dwell_ms` when it unmounts;
|
|
30
|
+
* - bubbles descendant clicks as `interactionEvent`.
|
|
31
|
+
*
|
|
32
|
+
* Renders its children and never throws without a provider (AC-13).
|
|
33
|
+
*/
|
|
34
|
+
export declare function EngagementArea({ area, viewEvent, dwellEvent, interactionEvent, purpose, threshold, as, className, style, children, }: EngagementAreaProps): React.ReactElement;
|
|
35
|
+
//# sourceMappingURL=EngagementArea.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EngagementArea.d.ts","sourceRoot":"","sources":["../../../../react/EngagementArea.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAyC,MAAM,OAAO,CAAC;AAC9D,OAAO,EAAkB,KAAK,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAGrE,wCAAwC;AACxC,MAAM,WAAW,mBAAmB;IAClC,oGAAoG;IACpG,IAAI,EAAE,MAAM,CAAC;IACb,6FAA6F;IAC7F,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,wGAAwG;IACxG,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oFAAoF;IACpF,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,gEAAgE;IAChE,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,kFAAkF;IAClF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,yCAAyC;IACzC,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC,GAAG,CAAC,iBAAiB,CAAC;IACvC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAC5B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,cAAc,CAAC,EAC7B,IAAI,EACJ,SAA6B,EAC7B,UAA+B,EAC/B,gBAA2C,EAC3C,OAAO,EACP,SAAe,EACf,EAAU,EACV,SAAS,EACT,KAAK,EACL,QAAQ,GACT,EAAE,mBAAmB,GAAG,KAAK,CAAC,YAAY,CAuG1C"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { type TrackOptions } from './useTrack';
|
|
3
|
+
import type { SdkEventProperties } from '../customer-side';
|
|
4
|
+
/** Props for {@link TrackOnView}. */
|
|
5
|
+
export interface TrackOnViewProps {
|
|
6
|
+
/** Event name emitted once when the element is qualified-viewed. */
|
|
7
|
+
event: string;
|
|
8
|
+
/** Event data (reserved names are dropped by {@link useTrack}). */
|
|
9
|
+
data?: SdkEventProperties;
|
|
10
|
+
/** Track options (area / action / purpose / immediate). */
|
|
11
|
+
options?: TrackOptions;
|
|
12
|
+
/** Visible fraction required (0–1). Default 0.5. */
|
|
13
|
+
threshold?: number;
|
|
14
|
+
/** Minimum visible dwell before it counts, in ms. Default 0. */
|
|
15
|
+
minVisibleMs?: number;
|
|
16
|
+
/** Host element tag. Default `'div'`. */
|
|
17
|
+
as?: keyof React.JSX.IntrinsicElements;
|
|
18
|
+
className?: string;
|
|
19
|
+
style?: React.CSSProperties;
|
|
20
|
+
children?: React.ReactNode;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Emits `event` exactly once, the first time its host element is
|
|
24
|
+
* viewport-qualified (plan 144 TASK-13 / REQ-21). Falls back to firing on render
|
|
25
|
+
* when `IntersectionObserver` is unavailable (AC-10 degradation). The one-shot
|
|
26
|
+
* guard is a ref that survives React Strict Mode's development double-mount, so
|
|
27
|
+
* the event fires once, not twice (AC-12). Renders its children in the host
|
|
28
|
+
* element and never throws without a provider (AC-13).
|
|
29
|
+
*/
|
|
30
|
+
export declare function TrackOnView({ event, data, options, threshold, minVisibleMs, as, className, style, children, }: TrackOnViewProps): React.ReactElement;
|
|
31
|
+
//# sourceMappingURL=TrackOnView.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TrackOnView.d.ts","sourceRoot":"","sources":["../../../../react/TrackOnView.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAyC,MAAM,OAAO,CAAC;AAE9D,OAAO,EAAY,KAAK,YAAY,EAAE,MAAM,YAAY,CAAC;AACzD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAE3D,qCAAqC;AACrC,MAAM,WAAW,gBAAgB;IAC/B,oEAAoE;IACpE,KAAK,EAAE,MAAM,CAAC;IACd,mEAAmE;IACnE,IAAI,CAAC,EAAE,kBAAkB,CAAC;IAC1B,2DAA2D;IAC3D,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,oDAAoD;IACpD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gEAAgE;IAChE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,yCAAyC;IACzC,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC,GAAG,CAAC,iBAAiB,CAAC;IACvC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAC5B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED;;;;;;;GAOG;AACH,wBAAgB,WAAW,CAAC,EAC1B,KAAK,EACL,IAAI,EACJ,OAAO,EACP,SAAS,EACT,YAAY,EACZ,EAAU,EACV,SAAS,EACT,KAAK,EACL,QAAQ,GACT,EAAE,gBAAgB,GAAG,KAAK,CAAC,YAAY,CAiCvC"}
|
|
@@ -8,6 +8,8 @@ export * from './UserProfile';
|
|
|
8
8
|
export * from './useEntitlement';
|
|
9
9
|
export * from './TelemetryScope';
|
|
10
10
|
export * from './useTrack';
|
|
11
|
+
export * from './TrackOnView';
|
|
12
|
+
export * from './EngagementArea';
|
|
11
13
|
export * from './useCan';
|
|
12
14
|
export * from './useUsageSnapshot';
|
|
13
15
|
export { useRevTurbineTheme } from '../theme/ThemeContext';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../react/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,8BAA8B,CAAC;AAC7C,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,oBAAoB,CAAC;AACnC,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../react/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,8BAA8B,CAAC;AAC7C,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,UAAU,CAAC;AACzB,cAAc,oBAAoB,CAAC;AACnC,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC"}
|
package/package.json
CHANGED