lmnr 0.6.14__tar.gz → 0.6.15__tar.gz
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.
- {lmnr-0.6.14 → lmnr-0.6.15}/PKG-INFO +1 -1
- {lmnr-0.6.14 → lmnr-0.6.15}/pyproject.toml +1 -1
- {lmnr-0.6.14 → lmnr-0.6.15}/src/lmnr/sdk/browser/pw_utils.py +7 -26
- {lmnr-0.6.14 → lmnr-0.6.15}/src/lmnr/version.py +1 -1
- {lmnr-0.6.14 → lmnr-0.6.15}/LICENSE +0 -0
- {lmnr-0.6.14 → lmnr-0.6.15}/README.md +0 -0
- {lmnr-0.6.14 → lmnr-0.6.15}/src/lmnr/__init__.py +0 -0
- {lmnr-0.6.14 → lmnr-0.6.15}/src/lmnr/cli.py +0 -0
- {lmnr-0.6.14 → lmnr-0.6.15}/src/lmnr/opentelemetry_lib/.flake8 +0 -0
- {lmnr-0.6.14 → lmnr-0.6.15}/src/lmnr/opentelemetry_lib/__init__.py +0 -0
- {lmnr-0.6.14 → lmnr-0.6.15}/src/lmnr/opentelemetry_lib/decorators/__init__.py +0 -0
- {lmnr-0.6.14 → lmnr-0.6.15}/src/lmnr/opentelemetry_lib/litellm/__init__.py +0 -0
- {lmnr-0.6.14 → lmnr-0.6.15}/src/lmnr/opentelemetry_lib/litellm/utils.py +0 -0
- {lmnr-0.6.14 → lmnr-0.6.15}/src/lmnr/opentelemetry_lib/opentelemetry/instrumentation/google_genai/__init__.py +0 -0
- {lmnr-0.6.14 → lmnr-0.6.15}/src/lmnr/opentelemetry_lib/opentelemetry/instrumentation/google_genai/config.py +0 -0
- {lmnr-0.6.14 → lmnr-0.6.15}/src/lmnr/opentelemetry_lib/opentelemetry/instrumentation/google_genai/utils.py +0 -0
- {lmnr-0.6.14 → lmnr-0.6.15}/src/lmnr/opentelemetry_lib/opentelemetry/instrumentation/langgraph/__init__.py +0 -0
- {lmnr-0.6.14 → lmnr-0.6.15}/src/lmnr/opentelemetry_lib/opentelemetry/instrumentation/langgraph/utils.py +0 -0
- {lmnr-0.6.14 → lmnr-0.6.15}/src/lmnr/opentelemetry_lib/tracing/__init__.py +0 -0
- {lmnr-0.6.14 → lmnr-0.6.15}/src/lmnr/opentelemetry_lib/tracing/_instrument_initializers.py +0 -0
- {lmnr-0.6.14 → lmnr-0.6.15}/src/lmnr/opentelemetry_lib/tracing/attributes.py +0 -0
- {lmnr-0.6.14 → lmnr-0.6.15}/src/lmnr/opentelemetry_lib/tracing/context_properties.py +0 -0
- {lmnr-0.6.14 → lmnr-0.6.15}/src/lmnr/opentelemetry_lib/tracing/exporter.py +0 -0
- {lmnr-0.6.14 → lmnr-0.6.15}/src/lmnr/opentelemetry_lib/tracing/instruments.py +0 -0
- {lmnr-0.6.14 → lmnr-0.6.15}/src/lmnr/opentelemetry_lib/tracing/processor.py +0 -0
- {lmnr-0.6.14 → lmnr-0.6.15}/src/lmnr/opentelemetry_lib/tracing/tracer.py +0 -0
- {lmnr-0.6.14 → lmnr-0.6.15}/src/lmnr/opentelemetry_lib/utils/__init__.py +0 -0
- {lmnr-0.6.14 → lmnr-0.6.15}/src/lmnr/opentelemetry_lib/utils/json_encoder.py +0 -0
- {lmnr-0.6.14 → lmnr-0.6.15}/src/lmnr/opentelemetry_lib/utils/package_check.py +0 -0
- {lmnr-0.6.14 → lmnr-0.6.15}/src/lmnr/py.typed +0 -0
- {lmnr-0.6.14 → lmnr-0.6.15}/src/lmnr/sdk/__init__.py +0 -0
- {lmnr-0.6.14 → lmnr-0.6.15}/src/lmnr/sdk/browser/__init__.py +0 -0
- {lmnr-0.6.14 → lmnr-0.6.15}/src/lmnr/sdk/browser/browser_use_otel.py +0 -0
- {lmnr-0.6.14 → lmnr-0.6.15}/src/lmnr/sdk/browser/patchright_otel.py +0 -0
- {lmnr-0.6.14 → lmnr-0.6.15}/src/lmnr/sdk/browser/playwright_otel.py +0 -0
- {lmnr-0.6.14 → lmnr-0.6.15}/src/lmnr/sdk/browser/rrweb/rrweb.umd.min.cjs +0 -0
- {lmnr-0.6.14 → lmnr-0.6.15}/src/lmnr/sdk/browser/utils.py +0 -0
- {lmnr-0.6.14 → lmnr-0.6.15}/src/lmnr/sdk/client/asynchronous/async_client.py +0 -0
- {lmnr-0.6.14 → lmnr-0.6.15}/src/lmnr/sdk/client/asynchronous/resources/__init__.py +0 -0
- {lmnr-0.6.14 → lmnr-0.6.15}/src/lmnr/sdk/client/asynchronous/resources/agent.py +0 -0
- {lmnr-0.6.14 → lmnr-0.6.15}/src/lmnr/sdk/client/asynchronous/resources/base.py +0 -0
- {lmnr-0.6.14 → lmnr-0.6.15}/src/lmnr/sdk/client/asynchronous/resources/browser_events.py +0 -0
- {lmnr-0.6.14 → lmnr-0.6.15}/src/lmnr/sdk/client/asynchronous/resources/evals.py +0 -0
- {lmnr-0.6.14 → lmnr-0.6.15}/src/lmnr/sdk/client/asynchronous/resources/tags.py +0 -0
- {lmnr-0.6.14 → lmnr-0.6.15}/src/lmnr/sdk/client/synchronous/resources/__init__.py +0 -0
- {lmnr-0.6.14 → lmnr-0.6.15}/src/lmnr/sdk/client/synchronous/resources/agent.py +0 -0
- {lmnr-0.6.14 → lmnr-0.6.15}/src/lmnr/sdk/client/synchronous/resources/base.py +0 -0
- {lmnr-0.6.14 → lmnr-0.6.15}/src/lmnr/sdk/client/synchronous/resources/browser_events.py +0 -0
- {lmnr-0.6.14 → lmnr-0.6.15}/src/lmnr/sdk/client/synchronous/resources/evals.py +0 -0
- {lmnr-0.6.14 → lmnr-0.6.15}/src/lmnr/sdk/client/synchronous/resources/tags.py +0 -0
- {lmnr-0.6.14 → lmnr-0.6.15}/src/lmnr/sdk/client/synchronous/sync_client.py +0 -0
- {lmnr-0.6.14 → lmnr-0.6.15}/src/lmnr/sdk/datasets.py +0 -0
- {lmnr-0.6.14 → lmnr-0.6.15}/src/lmnr/sdk/decorators.py +0 -0
- {lmnr-0.6.14 → lmnr-0.6.15}/src/lmnr/sdk/eval_control.py +0 -0
- {lmnr-0.6.14 → lmnr-0.6.15}/src/lmnr/sdk/evaluations.py +0 -0
- {lmnr-0.6.14 → lmnr-0.6.15}/src/lmnr/sdk/laminar.py +0 -0
- {lmnr-0.6.14 → lmnr-0.6.15}/src/lmnr/sdk/log.py +0 -0
- {lmnr-0.6.14 → lmnr-0.6.15}/src/lmnr/sdk/types.py +0 -0
- {lmnr-0.6.14 → lmnr-0.6.15}/src/lmnr/sdk/utils.py +0 -0
@@ -45,19 +45,6 @@ INJECT_PLACEHOLDER = """
|
|
45
45
|
|
46
46
|
window.lmnrRrwebEventsBatch = new Set();
|
47
47
|
|
48
|
-
// Track page focus state
|
49
|
-
window.lmnrPageIsFocused = true;
|
50
|
-
|
51
|
-
window.addEventListener('blur', () => {
|
52
|
-
window.lmnrPageIsFocused = false;
|
53
|
-
console.log('Page lost focus');
|
54
|
-
});
|
55
|
-
|
56
|
-
window.addEventListener('focus', () => {
|
57
|
-
window.lmnrPageIsFocused = true;
|
58
|
-
console.log('Page gained focus');
|
59
|
-
});
|
60
|
-
|
61
48
|
// Utility function to compress individual event data
|
62
49
|
async function compressEventData(data) {
|
63
50
|
const jsonString = JSON.stringify(data);
|
@@ -76,10 +63,6 @@ INJECT_PLACEHOLDER = """
|
|
76
63
|
|
77
64
|
// Add heartbeat events
|
78
65
|
setInterval(async () => {
|
79
|
-
if (!window.lmnrPageIsFocused) {
|
80
|
-
return;
|
81
|
-
}
|
82
|
-
|
83
66
|
window.lmnrRrweb.record.addCustomEvent('heartbeat', {
|
84
67
|
title: document.title,
|
85
68
|
url: document.URL,
|
@@ -88,19 +71,17 @@ INJECT_PLACEHOLDER = """
|
|
88
71
|
}, 1000);
|
89
72
|
|
90
73
|
window.lmnrRrweb.record({
|
91
|
-
async emit(event) {
|
92
|
-
// Ignore events when page is not focused
|
93
|
-
if (!window.lmnrPageIsFocused) {
|
94
|
-
return;
|
95
|
-
}
|
96
|
-
|
74
|
+
async emit(event) {
|
97
75
|
// Compress the data field
|
98
76
|
const compressedEvent = {
|
99
77
|
...event,
|
100
78
|
data: await compressEventData(event.data)
|
101
79
|
};
|
102
80
|
window.lmnrRrwebEventsBatch.add(compressedEvent);
|
103
|
-
}
|
81
|
+
},
|
82
|
+
recordCanvas: true,
|
83
|
+
collectFonts: true,
|
84
|
+
recordCrossOriginIframes: true
|
104
85
|
});
|
105
86
|
}
|
106
87
|
"""
|
@@ -115,7 +96,7 @@ async def send_events_async(
|
|
115
96
|
events = await page.evaluate(
|
116
97
|
"""
|
117
98
|
() => {
|
118
|
-
if (
|
99
|
+
if (typeof window.lmnrGetAndClearEvents !== 'function') {
|
119
100
|
return [];
|
120
101
|
}
|
121
102
|
return window.lmnrGetAndClearEvents();
|
@@ -144,7 +125,7 @@ def send_events_sync(
|
|
144
125
|
events = page.evaluate(
|
145
126
|
"""
|
146
127
|
() => {
|
147
|
-
if (
|
128
|
+
if (typeof window.lmnrGetAndClearEvents !== 'function') {
|
148
129
|
return [];
|
149
130
|
}
|
150
131
|
return window.lmnrGetAndClearEvents();
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|