Add a SwiftTUI terminal app that lists race runners from the start list and results files, with an interactive menu to sort, filter by age group, toggle finishers vs. non-starters, and live-search by name. Parsing and transforms are written as pure functions over the file contents. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
39 lines
916 B
Text
39 lines
916 B
Text
load("@rules_swift//swift:swift.bzl", "swift_binary")
|
|
|
|
swift_binary(
|
|
name = "StadtRundlauf",
|
|
srcs = ["main.swift"],
|
|
data = glob(["data/*.txt"]),
|
|
visibility = ["//visibility:public"],
|
|
deps = ["@swifttui//:SwiftTUI"],
|
|
)
|
|
|
|
# BEGIN GENERATED XCODEPROJ
|
|
load("@rules_xcodeproj//xcodeproj:defs.bzl", "top_level_target", "xcodeproj")
|
|
|
|
filegroup(
|
|
name = "xcodeproj_extra_files",
|
|
srcs = glob(
|
|
["**/*"],
|
|
exclude = [
|
|
"BUILD.bazel",
|
|
"BUILD",
|
|
"**/*.xcodeproj/**",
|
|
"**/.*",
|
|
"**/.*/**",
|
|
],
|
|
allow_empty = True,
|
|
),
|
|
visibility = ["//visibility:public"],
|
|
)
|
|
|
|
xcodeproj(
|
|
name = "xcodeproj",
|
|
project_name = "MiniProject",
|
|
tags = ["manual"],
|
|
extra_files = [":xcodeproj_extra_files"],
|
|
top_level_targets = [
|
|
"//m323/Sources/MiniProject:StadtRundlauf",
|
|
],
|
|
)
|
|
# END GENERATED XCODEPROJ
|