splitsmith 0.2.0__tar.gz → 0.2.1__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.
- {splitsmith-0.2.0 → splitsmith-0.2.1}/CHANGELOG.md +7 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/PKG-INFO +23 -24
- {splitsmith-0.2.0 → splitsmith-0.2.1}/README.md +22 -23
- {splitsmith-0.2.0 → splitsmith-0.2.1}/pyproject.toml +1 -1
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/__init__.py +1 -1
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/config.py +2 -3
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/fcpxml_gen.py +1 -1
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui/__init__.py +1 -2
- {splitsmith-0.2.0 → splitsmith-0.2.1}/.gitignore +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/LICENSE +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/docs/local-slim/README.md +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/docs/saas-readiness/README.md +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/site/README.md +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/skills/splitsmith-match/README.md +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/audit.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/automation.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/backup.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/beep_calibration.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/beep_detect.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/cleanup.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/cli.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/coach.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/coach_distributions.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/compare/__init__.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/compare/cli.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/compare/emitter.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/compare/filler.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/compare/layout.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/compare/manifest.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/compare/project_loader.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/composition.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/cross_align.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/csv_gen.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/data/ensemble_calibration.json +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/data/fonts/Antonio-OFL.txt +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/data/fonts/Antonio-VariableFont.ttf +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/data/fonts/JetBrainsMono-Bold.ttf +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/data/fonts/JetBrainsMono-OFL.txt +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/data/overlay_theme.json +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/data/templates/action-cut.yaml +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/data/templates/match-recap.yaml +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/data/voter_c_gbdt.joblib +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/data/voter_e_visual_probe.joblib +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ensemble/__init__.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ensemble/agc_state.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ensemble/api.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ensemble/backend.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ensemble/calibration.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ensemble/clap_mel.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ensemble/features.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ensemble/fixtures.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ensemble/tta.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ensemble/visual.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ensemble/voters.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/fcp7xml_render.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/fixture_schema.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/lab/__init__.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/lab/core.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/lab/promote.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/lab/snap_window.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/lab/sweeps.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/lab_cli.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/match_cli.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/match_model.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/match_registry.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/mcp/__init__.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/mcp/__main__.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/mcp/detect_tools.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/mcp/export_tools.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/mcp/sandbox.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/mcp/server.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/mcp/tools.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/mcp/write_tools.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/model_cli.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/models/__init__.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/models/cache.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/models/download.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/models/errors.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/models/manifest.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/models/registry.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/mp4_render.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/overlay_render.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/overlay_theme.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/relink.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/report.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/runtime.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/shot_detect.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/shot_refine.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/system_check.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/templates.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/thumbnail.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/trim.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui/audio.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui/embedded.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui/exports.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui/jobs.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui/logging_setup.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui/match_exports.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui/project.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui/scoreboard/__init__.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui/scoreboard/cache.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui/scoreboard/http.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui/scoreboard/local.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui/scoreboard/models.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui/scoreboard/protocol.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui/server.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/.gitignore +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/index.html +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/package-lock.json +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/package.json +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/pnpm-lock.yaml +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/App.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/AddFootageModal.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/AppShell.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/AuditControls.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/BeepSection.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/CameraModelSelect.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/CleanupDialog.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/DirectoryPickerModal.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/FolderPicker.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/HelpOverlay.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/HitlQueuePanel.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/Jobs.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/ListDrawer.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/MarkerGlyph.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/MarkerLayer.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/MountSelect.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/RelinkDialog.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/SettingProvenance.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/ShooterScopedRoute.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/ShotStepper.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/StageTimeSection.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/SweepsCard.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/VideoPanel.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/Waveform.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/audit/AnomalyChips.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/audit/AnomalyPins.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/audit/BeepStatusChip.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/audit/CamGridModal.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/audit/CamSyncPill.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/audit/MultiCamColumn.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/audit/PrereqGate.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/audit/SessionSummary.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/audit/StageActionBar.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/audit/StageChipRail.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/audit/SyncBanner.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/developer/DeveloperShell.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/match/MatchShell.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/match/MatchSidebar.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/match/ShooterChipStrip.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/ui/AvatarStack.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/ui/Brand.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/ui/ContextBar.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/ui/DisplayHeading.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/ui/IconButton.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/ui/Kbd.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/ui/Kicker.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/ui/ModeSwitch.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/ui/Readout.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/ui/ShotTimerShell.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/ui/StageDot.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/ui/StatusPill.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/ui/Tick.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/ui/badge.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/ui/button.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/ui/card.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/ui/index.ts +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/ui/skeleton.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/lib/anomalies.ts +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/lib/api.ts +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/lib/audit-input.ts +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/lib/audit-next-step.ts +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/lib/features.ts +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/lib/matchHref.ts +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/lib/mode.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/lib/slugify.ts +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/lib/stageStatus.ts +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/lib/utils.ts +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/main.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/pages/Audit.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/pages/BeepReview.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/pages/Coach.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/pages/Compare.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/pages/CreateMatch.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/pages/Design.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/pages/Export.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/pages/Home.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/pages/Ingest.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/pages/Lab.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/pages/MergeMatches.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/pages/Pick.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/pages/PromoteReview.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/pages/Review.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/pages/Shooters.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/pages/dev/DevCorpus.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/pages/dev/DevRetrain.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/pages/dev/DevReviewQueue.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/pages/dev/DevValidate.tsx +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/styles/index.css +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/tsconfig.app.json +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/tsconfig.app.tsbuildinfo +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/tsconfig.json +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/tsconfig.node.json +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/tsconfig.node.tsbuildinfo +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/vite.config.ts +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/user_config.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/video_match.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/video_probe.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/waveform.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/youtube_sidecar.py +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/tests/fixtures/beep_calibration/README.md +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/tests/fixtures/schemas/README.md +0 -0
- {splitsmith-0.2.0 → splitsmith-0.2.1}/uv.lock +0 -0
|
@@ -1,5 +1,12 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [0.2.1](https://github.com/mandakan/splitsmith/compare/v0.2.0...v0.2.1) (2026-05-24)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### Bug Fixes
|
|
7
|
+
|
|
8
|
+
* **docs:** use absolute GitHub URLs for README images on PyPI ([#398](https://github.com/mandakan/splitsmith/issues/398)) ([de435a6](https://github.com/mandakan/splitsmith/commit/de435a6981b0532f05c159a73da86a9d107bf6af))
|
|
9
|
+
|
|
3
10
|
## 0.2.0 (2026-05-24)
|
|
4
11
|
|
|
5
12
|
First public release.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: splitsmith
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.1
|
|
4
4
|
Summary: Extract IPSC shot splits from head-mounted camera footage
|
|
5
5
|
Author: Mathias Axell
|
|
6
6
|
License: MIT
|
|
@@ -29,9 +29,14 @@ Description-Content-Type: text/markdown
|
|
|
29
29
|
|
|
30
30
|
# splitsmith
|
|
31
31
|
|
|
32
|
+
[](https://pypi.org/project/splitsmith/)
|
|
33
|
+
[](https://pypi.org/project/splitsmith/)
|
|
34
|
+
[](https://github.com/mandakan/splitsmith/blob/main/LICENSE)
|
|
35
|
+
[](https://github.com/mandakan/splitsmith/actions/workflows/ci.yml)
|
|
36
|
+
|
|
32
37
|
Extract per-shot split times from head-mounted camera footage of IPSC matches and generate Final Cut Pro timelines with per-shot markers.
|
|
33
38
|
|
|
34
|
-

|
|
39
|
+

|
|
35
40
|
|
|
36
41
|
Built to do two things from a single stage video: get per-shot splits for analysis and coaching, and prepare frame-marked clips for match-footage review. Your head-mounted cam (Insta360 Go 3S in this case) already captures audio of every shot; the RO's timer only records your total stage time, so the splits live in the video and nowhere else. Splitsmith extracts them and turns them into a CSV plus an FCPXML timeline with per-shot markers you can step through in Final Cut Pro.
|
|
37
42
|
|
|
@@ -42,30 +47,24 @@ Built to do two things from a single stage video: get per-shot splits for analys
|
|
|
42
47
|
|
|
43
48
|
| | |
|
|
44
49
|
|---|---|
|
|
45
|
-
|  | **Ingest.** Drop a folder of GoPro clips; the engine auto-matches them to stages by file timestamp. |
|
|
46
|
-
|  | **Beep review.** Auto-snap to the start beep on each stage; low-confidence detections land in a HITL queue. |
|
|
47
|
-
|  | **Audit.** Waveform + per-shot markers from the 3-voter ensemble. Click a marker to inspect votes; drag to fine-tune. |
|
|
48
|
-
|  | **Compare.** Multi-shooter grid, all beep-aligned to t=0. Audio from one shooter, video tiles for everyone else. |
|
|
49
|
-
|  | **Export.** Per-stage or whole-match FCPXML. Open in Final Cut Pro, M / Shift+M to navigate markers. |
|
|
50
|
+
|  | **Ingest.** Drop a folder of GoPro clips; the engine auto-matches them to stages by file timestamp. |
|
|
51
|
+
|  | **Beep review.** Auto-snap to the start beep on each stage; low-confidence detections land in a HITL queue. |
|
|
52
|
+
|  | **Audit.** Waveform + per-shot markers from the 3-voter ensemble. Click a marker to inspect votes; drag to fine-tune. |
|
|
53
|
+
|  | **Compare.** Multi-shooter grid, all beep-aligned to t=0. Audio from one shooter, video tiles for everyone else. |
|
|
54
|
+
|  | **Export.** Per-stage or whole-match FCPXML. Open in Final Cut Pro, M / Shift+M to navigate markers. |
|
|
50
55
|
|
|
51
|
-
> Screenshots regenerate from a live `splitsmith ui` via `scripts/capture_screenshots.py`. See [
|
|
56
|
+
> Screenshots regenerate from a live `splitsmith ui` via `scripts/capture_screenshots.py`. See [Regenerating screenshots](#regenerating-screenshots) below.
|
|
52
57
|
|
|
53
58
|
## Quickstart
|
|
54
59
|
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
You need: `uv`, `ffmpeg`/`ffprobe` on PATH, and (for source checkouts) Node 20 + `pnpm` to build the SPA. See [Install](#install) for OS-specific package commands.
|
|
60
|
+
You need: `uv` and `ffmpeg`/`ffprobe` on PATH. See [Install](#install) for OS-specific package commands.
|
|
58
61
|
|
|
59
62
|
```bash
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
cd splitsmith
|
|
63
|
-
uv sync # slim runtime deps only (~100 MB)
|
|
64
|
-
(cd src/splitsmith/ui_static && pnpm install && pnpm build)
|
|
65
|
-
uv run splitsmith fetch-models # ~440 MB ONNX artifacts; one-time
|
|
63
|
+
uv tool install splitsmith # slim runtime, ~100 MB
|
|
64
|
+
splitsmith fetch-models # ~440 MB ONNX artifacts; one-time
|
|
66
65
|
|
|
67
66
|
# Bring your own head-cam clip and stage time (or use any IPSC video at hand)
|
|
68
|
-
|
|
67
|
+
splitsmith single \
|
|
69
68
|
--video path/to/your_stage.mp4 \
|
|
70
69
|
--time 14.74 \
|
|
71
70
|
--output ./demo_analysis \
|
|
@@ -79,7 +78,7 @@ cat ./demo_analysis/stage3_per-told-me-to-do-it_report.txt
|
|
|
79
78
|
For the full ingest -> audit -> export workflow with persistent project state, use the UI:
|
|
80
79
|
|
|
81
80
|
```bash
|
|
82
|
-
|
|
81
|
+
splitsmith ui --project ~/matches/your-match
|
|
83
82
|
```
|
|
84
83
|
|
|
85
84
|
The repo ships a real Stage 3 audio sample at `tests/fixtures/stage-shots-tallmilan-2026-stage3-s97dcec94.wav` (Tallmilan 2026, 14.74s, 14 audited shots) plus its sibling JSON with ground-truth shot times. The companion source MP4 is gitignored -- bring your own video to exercise the full ingest pipeline.
|
|
@@ -105,17 +104,17 @@ The repo ships a real Stage 3 audio sample at `tests/fixtures/stage-shots-tallmi
|
|
|
105
104
|
|
|
106
105
|
`splitsmith ui` checks for both on first launch and prints a copy-pasteable install hint if they're missing.
|
|
107
106
|
|
|
108
|
-
### Option 1: slim wheel (end users, ~100 MB)
|
|
109
|
-
|
|
110
|
-
The shipped install will be `uv tool install splitsmith` once the first release-please release lands on `main` (see [Releases](#releases) below). Detection models (~440 MB total) download from `models.splitsmith.app` on first detection -- pre-fetch with `splitsmith fetch-models`. No torch, transformers, or panns_inference in the install.
|
|
107
|
+
### Option 1: slim wheel (end users, ~100 MB)
|
|
111
108
|
|
|
112
109
|
```bash
|
|
113
|
-
uv tool install splitsmith #
|
|
110
|
+
uv tool install splitsmith # from PyPI
|
|
114
111
|
splitsmith fetch-models # pre-fetch ONNX artifacts (optional)
|
|
115
112
|
splitsmith ui --project ~/matches/your-match
|
|
116
113
|
```
|
|
117
114
|
|
|
118
|
-
|
|
115
|
+
Detection models (~440 MB total) download from `models.splitsmith.app` on first detection -- pre-fetch with `splitsmith fetch-models`. No torch, transformers, or panns_inference in the install.
|
|
116
|
+
|
|
117
|
+
### Option 2: from source (required for contributors)
|
|
119
118
|
|
|
120
119
|
```bash
|
|
121
120
|
git clone https://github.com/mandakan/splitsmith.git
|
|
@@ -1,8 +1,13 @@
|
|
|
1
1
|
# splitsmith
|
|
2
2
|
|
|
3
|
+
[](https://pypi.org/project/splitsmith/)
|
|
4
|
+
[](https://pypi.org/project/splitsmith/)
|
|
5
|
+
[](https://github.com/mandakan/splitsmith/blob/main/LICENSE)
|
|
6
|
+
[](https://github.com/mandakan/splitsmith/actions/workflows/ci.yml)
|
|
7
|
+
|
|
3
8
|
Extract per-shot split times from head-mounted camera footage of IPSC matches and generate Final Cut Pro timelines with per-shot markers.
|
|
4
9
|
|
|
5
|
-

|
|
10
|
+

|
|
6
11
|
|
|
7
12
|
Built to do two things from a single stage video: get per-shot splits for analysis and coaching, and prepare frame-marked clips for match-footage review. Your head-mounted cam (Insta360 Go 3S in this case) already captures audio of every shot; the RO's timer only records your total stage time, so the splits live in the video and nowhere else. Splitsmith extracts them and turns them into a CSV plus an FCPXML timeline with per-shot markers you can step through in Final Cut Pro.
|
|
8
13
|
|
|
@@ -13,30 +18,24 @@ Built to do two things from a single stage video: get per-shot splits for analys
|
|
|
13
18
|
|
|
14
19
|
| | |
|
|
15
20
|
|---|---|
|
|
16
|
-
|  | **Ingest.** Drop a folder of GoPro clips; the engine auto-matches them to stages by file timestamp. |
|
|
17
|
-
|  | **Beep review.** Auto-snap to the start beep on each stage; low-confidence detections land in a HITL queue. |
|
|
18
|
-
|  | **Audit.** Waveform + per-shot markers from the 3-voter ensemble. Click a marker to inspect votes; drag to fine-tune. |
|
|
19
|
-
|  | **Compare.** Multi-shooter grid, all beep-aligned to t=0. Audio from one shooter, video tiles for everyone else. |
|
|
20
|
-
|  | **Export.** Per-stage or whole-match FCPXML. Open in Final Cut Pro, M / Shift+M to navigate markers. |
|
|
21
|
+
|  | **Ingest.** Drop a folder of GoPro clips; the engine auto-matches them to stages by file timestamp. |
|
|
22
|
+
|  | **Beep review.** Auto-snap to the start beep on each stage; low-confidence detections land in a HITL queue. |
|
|
23
|
+
|  | **Audit.** Waveform + per-shot markers from the 3-voter ensemble. Click a marker to inspect votes; drag to fine-tune. |
|
|
24
|
+
|  | **Compare.** Multi-shooter grid, all beep-aligned to t=0. Audio from one shooter, video tiles for everyone else. |
|
|
25
|
+
|  | **Export.** Per-stage or whole-match FCPXML. Open in Final Cut Pro, M / Shift+M to navigate markers. |
|
|
21
26
|
|
|
22
|
-
> Screenshots regenerate from a live `splitsmith ui` via `scripts/capture_screenshots.py`. See [
|
|
27
|
+
> Screenshots regenerate from a live `splitsmith ui` via `scripts/capture_screenshots.py`. See [Regenerating screenshots](#regenerating-screenshots) below.
|
|
23
28
|
|
|
24
29
|
## Quickstart
|
|
25
30
|
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
You need: `uv`, `ffmpeg`/`ffprobe` on PATH, and (for source checkouts) Node 20 + `pnpm` to build the SPA. See [Install](#install) for OS-specific package commands.
|
|
31
|
+
You need: `uv` and `ffmpeg`/`ffprobe` on PATH. See [Install](#install) for OS-specific package commands.
|
|
29
32
|
|
|
30
33
|
```bash
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
cd splitsmith
|
|
34
|
-
uv sync # slim runtime deps only (~100 MB)
|
|
35
|
-
(cd src/splitsmith/ui_static && pnpm install && pnpm build)
|
|
36
|
-
uv run splitsmith fetch-models # ~440 MB ONNX artifacts; one-time
|
|
34
|
+
uv tool install splitsmith # slim runtime, ~100 MB
|
|
35
|
+
splitsmith fetch-models # ~440 MB ONNX artifacts; one-time
|
|
37
36
|
|
|
38
37
|
# Bring your own head-cam clip and stage time (or use any IPSC video at hand)
|
|
39
|
-
|
|
38
|
+
splitsmith single \
|
|
40
39
|
--video path/to/your_stage.mp4 \
|
|
41
40
|
--time 14.74 \
|
|
42
41
|
--output ./demo_analysis \
|
|
@@ -50,7 +49,7 @@ cat ./demo_analysis/stage3_per-told-me-to-do-it_report.txt
|
|
|
50
49
|
For the full ingest -> audit -> export workflow with persistent project state, use the UI:
|
|
51
50
|
|
|
52
51
|
```bash
|
|
53
|
-
|
|
52
|
+
splitsmith ui --project ~/matches/your-match
|
|
54
53
|
```
|
|
55
54
|
|
|
56
55
|
The repo ships a real Stage 3 audio sample at `tests/fixtures/stage-shots-tallmilan-2026-stage3-s97dcec94.wav` (Tallmilan 2026, 14.74s, 14 audited shots) plus its sibling JSON with ground-truth shot times. The companion source MP4 is gitignored -- bring your own video to exercise the full ingest pipeline.
|
|
@@ -76,17 +75,17 @@ The repo ships a real Stage 3 audio sample at `tests/fixtures/stage-shots-tallmi
|
|
|
76
75
|
|
|
77
76
|
`splitsmith ui` checks for both on first launch and prints a copy-pasteable install hint if they're missing.
|
|
78
77
|
|
|
79
|
-
### Option 1: slim wheel (end users, ~100 MB)
|
|
80
|
-
|
|
81
|
-
The shipped install will be `uv tool install splitsmith` once the first release-please release lands on `main` (see [Releases](#releases) below). Detection models (~440 MB total) download from `models.splitsmith.app` on first detection -- pre-fetch with `splitsmith fetch-models`. No torch, transformers, or panns_inference in the install.
|
|
78
|
+
### Option 1: slim wheel (end users, ~100 MB)
|
|
82
79
|
|
|
83
80
|
```bash
|
|
84
|
-
uv tool install splitsmith #
|
|
81
|
+
uv tool install splitsmith # from PyPI
|
|
85
82
|
splitsmith fetch-models # pre-fetch ONNX artifacts (optional)
|
|
86
83
|
splitsmith ui --project ~/matches/your-match
|
|
87
84
|
```
|
|
88
85
|
|
|
89
|
-
|
|
86
|
+
Detection models (~440 MB total) download from `models.splitsmith.app` on first detection -- pre-fetch with `splitsmith fetch-models`. No torch, transformers, or panns_inference in the install.
|
|
87
|
+
|
|
88
|
+
### Option 2: from source (required for contributors)
|
|
90
89
|
|
|
91
90
|
```bash
|
|
92
91
|
git clone https://github.com/mandakan/splitsmith.git
|
|
@@ -328,8 +328,7 @@ class ShotRefineConfig(BaseModel):
|
|
|
328
328
|
method: Literal["envelope", "aic"] = "envelope"
|
|
329
329
|
# Half-width of the audio window scanned around each approximate time.
|
|
330
330
|
# 200 ms covers reverb-anchored cases where the candidate generator
|
|
331
|
-
# placed its rise foot 100-200 ms after the true onset
|
|
332
|
-
# PRECISION_LIMITS.md section 4a).
|
|
331
|
+
# placed its rise foot 100-200 ms after the true onset.
|
|
333
332
|
search_half_window_ms: float = 200.0
|
|
334
333
|
# Reject refinements whose confidence falls below this threshold and
|
|
335
334
|
# keep the original timestamp instead. 0.0 = always accept.
|
|
@@ -338,7 +337,7 @@ class ShotRefineConfig(BaseModel):
|
|
|
338
337
|
# least this much louder than the local-position peak. Small ratios
|
|
339
338
|
# (< 2.0) mean the original was already on a peak; tight rise-foot
|
|
340
339
|
# adjustment is used instead. Mirrors the same heuristic as the
|
|
341
|
-
# candidate-time reverb-chain re-anchor
|
|
340
|
+
# candidate-time reverb-chain re-anchor.
|
|
342
341
|
reanchor_ratio: float = 2.0
|
|
343
342
|
# AIC-only: bandpass before AIC. Muzzle-blast energy concentrates above
|
|
344
343
|
# ~500 Hz; bandpassing reduces wind/handling noise that can mask the
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"""Generate Final Cut Pro XML timelines (FCPXML 1.10).
|
|
2
2
|
|
|
3
|
-
v1 scope (
|
|
3
|
+
v1 scope (intentionally minimal):
|
|
4
4
|
- One asset (the trimmed video) + one sequence at the source frame rate.
|
|
5
5
|
- V1 = ref-clip of the trimmed video.
|
|
6
6
|
- One ``<marker>`` per shot, frame-aligned, with a descriptive name that
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
"""Production UI package for splitsmith.
|
|
2
2
|
|
|
3
3
|
The UI is a localhost SPA driven by a FastAPI backend that orchestrates the
|
|
4
|
-
existing engine modules unchanged.
|
|
5
|
-
for the v1 contract.
|
|
4
|
+
existing engine modules unchanged.
|
|
6
5
|
|
|
7
6
|
Sub-packages:
|
|
8
7
|
- ``project``: Pydantic models for the on-disk match-project layout
|
|
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
|
|
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
|
{splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/AddFootageModal.tsx
RENAMED
|
File without changes
|
|
File without changes
|
{splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/AuditControls.tsx
RENAMED
|
File without changes
|
{splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/BeepSection.tsx
RENAMED
|
File without changes
|
{splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/CameraModelSelect.tsx
RENAMED
|
File without changes
|
{splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/CleanupDialog.tsx
RENAMED
|
File without changes
|
|
File without changes
|
{splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/FolderPicker.tsx
RENAMED
|
File without changes
|
{splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/HelpOverlay.tsx
RENAMED
|
File without changes
|
{splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/HitlQueuePanel.tsx
RENAMED
|
File without changes
|
|
File without changes
|
{splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/ListDrawer.tsx
RENAMED
|
File without changes
|
{splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/MarkerGlyph.tsx
RENAMED
|
File without changes
|
{splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/MarkerLayer.tsx
RENAMED
|
File without changes
|
{splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/MountSelect.tsx
RENAMED
|
File without changes
|
{splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/RelinkDialog.tsx
RENAMED
|
File without changes
|
{splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/SettingProvenance.tsx
RENAMED
|
File without changes
|
{splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/ShooterScopedRoute.tsx
RENAMED
|
File without changes
|
{splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/ShotStepper.tsx
RENAMED
|
File without changes
|
{splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/StageTimeSection.tsx
RENAMED
|
File without changes
|
{splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/SweepsCard.tsx
RENAMED
|
File without changes
|
{splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/VideoPanel.tsx
RENAMED
|
File without changes
|
|
File without changes
|
{splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/audit/AnomalyChips.tsx
RENAMED
|
File without changes
|
{splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/audit/AnomalyPins.tsx
RENAMED
|
File without changes
|
|
File without changes
|
{splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/audit/CamGridModal.tsx
RENAMED
|
File without changes
|
{splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/audit/CamSyncPill.tsx
RENAMED
|
File without changes
|
|
File without changes
|
{splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/audit/PrereqGate.tsx
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/audit/SyncBanner.tsx
RENAMED
|
File without changes
|
|
File without changes
|
{splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/match/MatchShell.tsx
RENAMED
|
File without changes
|
{splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/match/MatchSidebar.tsx
RENAMED
|
File without changes
|
|
File without changes
|
{splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/ui/AvatarStack.tsx
RENAMED
|
File without changes
|
|
File without changes
|
{splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/ui/ContextBar.tsx
RENAMED
|
File without changes
|
{splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/ui/DisplayHeading.tsx
RENAMED
|
File without changes
|
{splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/ui/IconButton.tsx
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/ui/ModeSwitch.tsx
RENAMED
|
File without changes
|
{splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/ui/Readout.tsx
RENAMED
|
File without changes
|
{splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/ui/ShotTimerShell.tsx
RENAMED
|
File without changes
|
{splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/ui/StageDot.tsx
RENAMED
|
File without changes
|
{splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/ui/StatusPill.tsx
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/components/ui/skeleton.tsx
RENAMED
|
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
|
{splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/pages/dev/DevReviewQueue.tsx
RENAMED
|
File without changes
|
{splitsmith-0.2.0 → splitsmith-0.2.1}/src/splitsmith/ui_static/src/pages/dev/DevValidate.tsx
RENAMED
|
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
|