Signed-off-by: Matt Bruce <mbrucedogs@gmail.com>

This commit is contained in:
Matt Bruce 2026-01-27 11:42:54 -06:00
parent 92e6de53c5
commit 7859b22927
8 changed files with 15 additions and 39 deletions

View File

@ -73,9 +73,7 @@ public extension View {
.clipShape(.rect(cornerRadius: Design.CornerRadius.medium))
.pulsing(isActive: true)
Text("Pulsing highlights interactive areas")
.foregroundStyle(Color.TextColors.secondary)
.font(.caption)
StyledLabel("Pulsing highlights interactive areas", .caption, emphasis: .secondary)
}
}
}

View File

@ -75,26 +75,18 @@ public struct LicensesView: View {
private func licenseCard(_ license: License) -> some View {
SettingsCard(backgroundColor: cardBackgroundColor, borderColor: cardBorderColor) {
VStack(alignment: .leading, spacing: Design.Spacing.small) {
Text(license.name)
.typography(.bodyEmphasis)
.foregroundStyle(.white)
StyledLabel(license.name, .bodyEmphasis, emphasis: .inverse)
Text(license.description)
.typography(.caption)
.foregroundStyle(.white.opacity(Design.Opacity.strong))
StyledLabel(license.description, .caption, emphasis: .secondary)
HStack {
Label(license.licenseType, systemImage: "doc.text")
.typography(.caption2)
.foregroundStyle(accentColor)
IconLabel("doc.text", license.licenseType, .caption2, emphasis: .custom(accentColor))
Spacer()
if let linkURL = URL(string: license.url) {
Link(destination: linkURL) {
Label(String(localized: "View on GitHub"), systemImage: "arrow.up.right.square")
.typography(.caption2)
.foregroundStyle(accentColor)
IconLabel("arrow.up.right.square", String(localized: "View on GitHub"), .caption2, emphasis: .custom(accentColor))
}
}
}

View File

@ -51,9 +51,7 @@ public struct SegmentedPicker<T: Equatable>: View {
public var body: some View {
VStack(alignment: .leading, spacing: Design.Spacing.small) {
Text(title)
.typography(.subheadingEmphasis)
.foregroundStyle(.white)
StyledLabel(title, .subheadingEmphasis, emphasis: .inverse)
HStack(spacing: Design.Spacing.small) {
ForEach(options.indices, id: \.self) { index in
@ -61,9 +59,7 @@ public struct SegmentedPicker<T: Equatable>: View {
Button {
selection = option.1
} label: {
Text(option.0)
.typography(.subheadingEmphasis)
.foregroundStyle(selection == option.1 ? .black : .white.opacity(Design.Opacity.strong))
StyledLabel(option.0, .subheadingEmphasis, emphasis: .custom(selection == option.1 ? .black : .white.opacity(Design.Opacity.strong)))
.padding(.vertical, Design.Spacing.small)
.frame(maxWidth: .infinity)
.background(

View File

@ -67,13 +67,9 @@ public struct SelectableRow<Badge: View>: View {
Button(action: action) {
HStack {
VStack(alignment: .leading, spacing: Design.Spacing.xxSmall) {
Text(title)
.typography(.calloutEmphasis)
.foregroundStyle(.white)
StyledLabel(title, .calloutEmphasis, emphasis: .inverse)
Text(subtitle)
.typography(.subheading)
.foregroundStyle(.white.opacity(Design.Opacity.medium))
StyledLabel(subtitle, .subheading, emphasis: .tertiary)
}
Spacer()

View File

@ -40,8 +40,8 @@ public struct SettingsSectionHeader: View {
}
Text(title)
.typography(.captionEmphasis)
.foregroundStyle(.secondary)
.font(Typography.captionEmphasis.font)
.foregroundStyle(Theme.Text.secondary)
.textCase(.uppercase)
.tracking(0.5)

View File

@ -97,9 +97,7 @@ public struct SettingsSegmentedPicker<T: Equatable, Accessory: View>: View {
Button {
selection = option.1
} label: {
Text(option.0)
.typography(.subheadingEmphasis)
.foregroundStyle(selection == option.1 ? Color.white : .primary)
StyledLabel(option.0, .subheadingEmphasis, emphasis: .custom(selection == option.1 ? Color.white : Theme.Text.primary))
.padding(.vertical, Design.Spacing.small)
.frame(maxWidth: .infinity)
.background(

View File

@ -117,18 +117,14 @@ public struct iCloudSyncSettingsView<ViewModel: CloudSyncable>: View {
HStack(spacing: Design.Spacing.small) {
SymbolIcon(syncStatusIcon, size: .inline, color: syncStatusColor)
Text(syncStatusText)
.typography(.caption)
.foregroundStyle(.white.opacity(Design.Opacity.medium))
StyledLabel(syncStatusText, .caption, emphasis: .tertiary)
Spacer()
Button {
viewModel.forceSync()
} label: {
Text(String(localized: "Sync Now"))
.typography(.captionEmphasis)
.foregroundStyle(accentColor)
StyledLabel(String(localized: "Sync Now"), .captionEmphasis, emphasis: .custom(accentColor))
}
}
.padding(.top, Design.Spacing.xSmall)

View File

@ -138,7 +138,7 @@ public struct SectionHeader: View {
Text(title)
.font(Typography.caption.font)
.foregroundStyle(Color.TextColors.secondary)
.foregroundStyle(Theme.Text.secondary)
.textCase(.uppercase)
.tracking(0.5)
}