cesiumjs-anywidget 0.6.0__py3-none-any.whl → 0.8.0__py3-none-any.whl

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.
@@ -0,0 +1,73 @@
1
+ """Logging configuration for cesiumjs_anywidget package."""
2
+
3
+ import logging
4
+ import sys
5
+
6
+
7
+ def get_logger(name: str) -> logging.Logger:
8
+ """Get a configured logger instance.
9
+
10
+ Parameters
11
+ ----------
12
+ name : str
13
+ The name of the logger (typically __name__ from the calling module)
14
+
15
+ Returns
16
+ -------
17
+ logging.Logger
18
+ A configured logger instance
19
+
20
+ Examples
21
+ --------
22
+ >>> from cesiumjs_anywidget.logger import get_logger
23
+ >>> logger = get_logger(__name__)
24
+ >>> logger.info("This is an info message")
25
+ """
26
+ logger = logging.getLogger(name)
27
+
28
+ # Only configure if this logger hasn't been configured yet
29
+ if not logger.handlers:
30
+ # Set default level to INFO
31
+ logger.setLevel(logging.INFO)
32
+
33
+ # Create console handler
34
+ handler = logging.StreamHandler(sys.stdout)
35
+ handler.setLevel(logging.DEBUG)
36
+
37
+ # Create formatter
38
+ formatter = logging.Formatter(
39
+ '%(levelname)s - %(name)s - %(message)s'
40
+ )
41
+ handler.setFormatter(formatter)
42
+
43
+ # Add handler to logger
44
+ logger.addHandler(handler)
45
+
46
+ return logger
47
+
48
+
49
+ def set_log_level(level: str | int):
50
+ """Set the logging level for all cesiumjs_anywidget loggers.
51
+
52
+ Parameters
53
+ ----------
54
+ level : str or int
55
+ The logging level ('DEBUG', 'INFO', 'WARNING', 'ERROR', 'CRITICAL')
56
+ or a logging constant (logging.DEBUG, logging.INFO, etc.)
57
+
58
+ Examples
59
+ --------
60
+ >>> from cesiumjs_anywidget.logger import set_log_level
61
+ >>> set_log_level('DEBUG') # Show all messages
62
+ >>> set_log_level('WARNING') # Show only warnings and errors
63
+ """
64
+ if isinstance(level, str):
65
+ level = getattr(logging, level.upper())
66
+
67
+ # Set level for the base logger
68
+ base_logger = logging.getLogger('cesiumjs_anywidget')
69
+ base_logger.setLevel(level)
70
+
71
+ # Update all child loggers
72
+ for handler in base_logger.handlers:
73
+ handler.setLevel(level)
@@ -5,7 +5,7 @@
5
5
  */
6
6
 
7
7
  /* Import CesiumJS base styles from official CDN */
8
- @import url("https://cesium.com/downloads/cesiumjs/releases/1.135/Build/Cesium/Widgets/widgets.css");
8
+ @import url("https://cesium.com/downloads/cesiumjs/releases/1.137/Build/Cesium/Widgets/widgets.css");
9
9
 
10
10
  /* Ensure the widget container has proper dimensions and overflow handling */
11
11
  .cesium-widget {
@@ -30,3 +30,26 @@
30
30
  display: block;
31
31
  }
32
32
 
33
+ /* Custom scrollbar styling for measurement panels */
34
+ .measurement-panel-scrollable {
35
+ scrollbar-width: thin;
36
+ scrollbar-color: rgba(255, 255, 255, 0.3) rgba(0, 0, 0, 0.1);
37
+ }
38
+
39
+ .measurement-panel-scrollable::-webkit-scrollbar {
40
+ width: 8px;
41
+ }
42
+
43
+ .measurement-panel-scrollable::-webkit-scrollbar-track {
44
+ background: rgba(0, 0, 0, 0.1);
45
+ border-radius: 4px;
46
+ }
47
+
48
+ .measurement-panel-scrollable::-webkit-scrollbar-thumb {
49
+ background: rgba(255, 255, 255, 0.3);
50
+ border-radius: 4px;
51
+ }
52
+
53
+ .measurement-panel-scrollable::-webkit-scrollbar-thumb:hover {
54
+ background: rgba(255, 255, 255, 0.5);
55
+ }