nwb-video-widgets 0.1.1__py3-none-any.whl → 0.1.4__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.
@@ -3,7 +3,7 @@
3
3
  from __future__ import annotations
4
4
 
5
5
  import pathlib
6
- from pathlib import Path
6
+ from pathlib import PurePosixPath
7
7
  from typing import TYPE_CHECKING, Optional
8
8
 
9
9
  import anywidget
@@ -283,7 +283,8 @@ class NWBDANDIPoseEstimationWidget(anywidget.AnyWidget):
283
283
  client = DandiAPIClient()
284
284
  dandiset = client.get_dandiset(asset.dandiset_id, asset.version_id)
285
285
 
286
- nwb_parent = Path(asset.path).parent
286
+ # Use PurePosixPath because DANDI paths always use forward slashes
287
+ nwb_parent = PurePosixPath(asset.path).parent
287
288
  video_series = discover_video_series(nwbfile)
288
289
  video_urls = {}
289
290
 
@@ -3,7 +3,7 @@
3
3
  from __future__ import annotations
4
4
 
5
5
  import pathlib
6
- from pathlib import Path
6
+ from pathlib import PurePosixPath
7
7
  from typing import TYPE_CHECKING, Optional
8
8
 
9
9
  import anywidget
@@ -195,7 +195,8 @@ class NWBDANDIVideoPlayer(anywidget.AnyWidget):
195
195
  client = DandiAPIClient()
196
196
  dandiset = client.get_dandiset(asset.dandiset_id, asset.version_id)
197
197
 
198
- nwb_parent = Path(asset.path).parent
198
+ # Use PurePosixPath because DANDI paths always use forward slashes
199
+ nwb_parent = PurePosixPath(asset.path).parent
199
200
  video_series = discover_video_series(nwbfile)
200
201
  video_urls = {}
201
202
 
@@ -108,14 +108,15 @@ class NWBFileVideoPlayer(anywidget.AnyWidget):
108
108
  ... nwbfile_raw, dandi_asset
109
109
  ... )
110
110
  """
111
- from pathlib import Path
111
+ from pathlib import PurePosixPath
112
112
 
113
113
  from pynwb.image import ImageSeries
114
114
 
115
115
  # Derive dandiset from dandi_asset
116
116
  dandiset = dandi_asset.client.get_dandiset(dandi_asset.dandiset_id)
117
117
 
118
- nwb_parent = Path(dandi_asset.path).parent
118
+ # Use PurePosixPath because DANDI paths always use forward slashes
119
+ nwb_parent = PurePosixPath(dandi_asset.path).parent
119
120
  video_urls = {}
120
121
 
121
122
  for name, obj in nwbfile_raw.acquisition.items():
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: nwb-video-widgets
3
- Version: 0.1.1
3
+ Version: 0.1.4
4
4
  Summary: Interactive Jupyter widgets for NWB video and pose visualization
5
5
  Project-URL: Homepage, https://github.com/catalystneuro/nwb-video-widgets
6
6
  Project-URL: Repository, https://github.com/catalystneuro/nwb-video-widgets
@@ -12,11 +12,12 @@ Classifier: Development Status :: 4 - Beta
12
12
  Classifier: Framework :: Jupyter
13
13
  Classifier: Intended Audience :: Science/Research
14
14
  Classifier: License :: OSI Approved :: MIT License
15
+ Classifier: Programming Language :: JavaScript
15
16
  Classifier: Programming Language :: Python :: 3
16
- Classifier: Programming Language :: Python :: 3.10
17
17
  Classifier: Programming Language :: Python :: 3.11
18
18
  Classifier: Programming Language :: Python :: 3.12
19
- Requires-Python: >=3.10
19
+ Classifier: Programming Language :: Python :: 3.13
20
+ Requires-Python: <3.14,>=3.10
20
21
  Requires-Dist: anywidget>=0.9.0
21
22
  Requires-Dist: matplotlib
22
23
  Requires-Dist: numpy
@@ -25,10 +26,6 @@ Provides-Extra: dandi
25
26
  Requires-Dist: dandi>=0.60.0; extra == 'dandi'
26
27
  Requires-Dist: h5py; extra == 'dandi'
27
28
  Requires-Dist: remfile>=0.1.13; extra == 'dandi'
28
- Provides-Extra: test
29
- Requires-Dist: opencv-python-headless; extra == 'test'
30
- Requires-Dist: pytest-cov; extra == 'test'
31
- Requires-Dist: pytest>=7.0; extra == 'test'
32
29
  Description-Content-Type: text/markdown
33
30
 
34
31
  # nwb-video-widgets
@@ -1,15 +1,15 @@
1
1
  nwb_video_widgets/__init__.py,sha256=4m-AlratOMO31jFrnWQSRqU2duXHMs7ZI3Iogs-hbAs,616
2
2
  nwb_video_widgets/_utils.py,sha256=kXcgjbq8mdgR0P4drPRy_Wrag3F5Od_7Ysikrr_VQMk,10566
3
- nwb_video_widgets/dandi_pose_widget.py,sha256=Tk_ZnqZIRIJzIAghuc1OEh0tmP9tMDP8UVDzZ4CoySg,13511
4
- nwb_video_widgets/dandi_video_widget.py,sha256=Jnn1-AXjZMNwVf9oL-0pZREjqdO6IS3YT5X_F2-4_Us,7342
3
+ nwb_video_widgets/dandi_pose_widget.py,sha256=YyEg_swyvVhrH2V2VSHq_k_DMeytY9GQ3yhNKNbgUCs,13604
4
+ nwb_video_widgets/dandi_video_widget.py,sha256=e5pv0bAVQJCwlitjMrUhY8gepvt6tJcMQPKyyLYuQ6o,7435
5
5
  nwb_video_widgets/local_pose_widget.py,sha256=6yrm3qoRf0C1s2CFQXTv9xCUG9NrDm4_mEv2Z8_QYww,12774
6
6
  nwb_video_widgets/local_video_widget.py,sha256=V0JK9C04DLfa1fLFWxrikNML5Xs7vFNP1BC-VKqPeNs,6703
7
7
  nwb_video_widgets/pose_widget.css,sha256=nTaPfxr-6TC2IlcjNf0jVHDEqG3dx0i5jF1mtf1tzPo,15172
8
8
  nwb_video_widgets/pose_widget.js,sha256=zoXoLI1j63BOvngQ-Riufy7ae297VUidXW1KA7Z2TjI,26888
9
9
  nwb_video_widgets/video_widget.css,sha256=h6G67yoRNaVR9obRZWJ8xgo6KBKbzuRfUgDPKCYlBFo,11893
10
10
  nwb_video_widgets/video_widget.js,sha256=BV0lNXCvA_zIGtgWgL9rEbAJOfS7HCthJmjUl9cB6b0,21401
11
- nwb_video_widgets/video_widget.py,sha256=glRQOBquOHDFeKC_aW_fMvJGqqh90AsMRWzMGSokonA,6252
12
- nwb_video_widgets-0.1.1.dist-info/METADATA,sha256=OlMt_GmlSUf8qSt9MH83QWyT4yd3bBbrRnGOwh4ng5s,6861
13
- nwb_video_widgets-0.1.1.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
14
- nwb_video_widgets-0.1.1.dist-info/licenses/LICENSE,sha256=9Xuwwu2OWDAyD-b0_T2W-E13CysuHPPHYu7aNSOtIMI,1070
15
- nwb_video_widgets-0.1.1.dist-info/RECORD,,
11
+ nwb_video_widgets/video_widget.py,sha256=G4ZZ_XorD-1X8qsSdVRjbTouNU_KouU2dCMbkiTmF7E,6345
12
+ nwb_video_widgets-0.1.4.dist-info/METADATA,sha256=Lp1yy-mwc7oJJhhek36kLXSzcYwZys-l83yu_E6mx-k,6751
13
+ nwb_video_widgets-0.1.4.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
14
+ nwb_video_widgets-0.1.4.dist-info/licenses/LICENSE,sha256=9Xuwwu2OWDAyD-b0_T2W-E13CysuHPPHYu7aNSOtIMI,1070
15
+ nwb_video_widgets-0.1.4.dist-info/RECORD,,