Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
34 commits
Select commit Hold shift + click to select a range
36768cc
Add setup script that Installs pre-commit hooks
atmamont Aug 21, 2025
e780131
Replace Internal/swiftlint with local environment binary
atmamont Aug 22, 2025
a892cdb
Update contribution guidelines to include setup script that installs …
atmamont Aug 25, 2025
2a55016
Move localization specific scripts to Scripts folder
atmamont Aug 26, 2025
4fecda8
Merge branch 'develop' into chore/move-internal-scripts-to-main-repo
atmamont Aug 26, 2025
0e9474f
Add missing references to localization docs
atmamont Aug 27, 2025
9ef3ed7
Make update_translations script executable
atmamont Aug 27, 2025
bb806a4
Make generate_localization_keys script executable
atmamont Aug 27, 2025
165c4be
Remove binary version of the script
atmamont Aug 27, 2025
21e6375
Update copyright year in autogenerated localization keys file
atmamont Aug 27, 2025
e331494
Merge branch 'develop' into chore/move-internal-scripts-to-main-repo
atmamont Aug 27, 2025
3853551
Update Scripts/update_translations.sh
atmamont Aug 28, 2025
1260e66
Update Scripts/generate_localization_keys.swift
atmamont Aug 28, 2025
2cd44ed
Update AdyenCardScanner podspec (#2237)
nauaros Aug 27, 2025
a6d0498
Update post_release.yml to include write access (#2234)
erenbesel Aug 27, 2025
d741fe7
Remove redundant SwiftUI config build step
atmamont Aug 28, 2025
4ffd200
Remove redundant AdyenUIHost config build step
atmamont Aug 28, 2025
e79eebb
Add exit codes to swiftformat and swiftlint build step error states
atmamont Aug 28, 2025
23d34ac
Merge branch 'develop' into chore/move-internal-scripts-to-main-repo
atmamont Aug 28, 2025
409a412
Revert changes suggested by gemini
atmamont Aug 28, 2025
a783b09
Extract internal development localization guide to a separate markdow…
atmamont Aug 28, 2025
8ef6e11
Minor text style improvements
atmamont Aug 28, 2025
a1691ef
Remove internal localization dics mentions
atmamont Aug 29, 2025
c7e6ade
Simplify environment selection logic by moving the value to to xcconf…
atmamont Sep 5, 2025
6643cb5
Merge branch 'develop' into chore/move-environment-to-xcconfig
atmamont Sep 8, 2025
3a92b4e
Merge branch 'develop' into chore/move-environment-to-xcconfig
atmamont Sep 22, 2025
478c440
Merge branch 'develop' into chore/move-environment-to-xcconfig
atmamont Sep 24, 2025
e217bb0
Remove `classicApiEnvironment` from Configuration
atmamont Sep 26, 2025
43841bb
Merge branch 'develop' of github.com:Adyen/adyen-ios into chore/move-…
atmamont Oct 16, 2025
de0ec48
Remove environment fallback to `test`, fail instead
atmamont Oct 16, 2025
da94122
Make `test` environment mapping explicit, add context to the error me…
atmamont Oct 16, 2025
ea4cff0
Fix typo for spellchecker
atmamont Oct 16, 2025
073e16c
Merge branch 'develop' into chore/move-environment-to-xcconfig
atmamont Oct 16, 2025
2527760
Add vscode build folder to .gitignore
atmamont Oct 17, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 2 additions & 8 deletions .github/workflows/publish-demo-app.yml
Original file line number Diff line number Diff line change
Expand Up @@ -97,14 +97,8 @@ jobs:
ENVIRONMENT: ${{ secrets.ENVIRONMENT }}
APPLE_PAY_MERCHANT_IDENTIFIER: ${{ secrets.APPLE_PAY_MERCHANT_IDENTIFIER }}
run: |
# demoServerEnvironment
sed -i '' "s/static let demoServerEnvironment.*=.*/static let demoServerEnvironment = DemoCheckoutAPIEnvironment.$ENVIRONMENT/g" ./Demo/Configuration.swift

# classicAPIEnvironment
sed -i '' "s/static let classicAPIEnvironment.*=.*/static let classicAPIEnvironment = DemoClassicAPIEnvironment.$ENVIRONMENT/g" ./Demo/Configuration.swift

# componentsEnvironment
sed -i '' "s/static let componentsEnvironment.*=.*/static let componentsEnvironment = Environment.$ENVIRONMENT/g" ./Demo/Configuration.swift
# Environment is now configured via xcconfig and Info.plist
echo "Using ENVIRONMENT=$ENVIRONMENT setting from configuration"
Copy link
Copy Markdown
Contributor

@descorp descorp Oct 17, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The whole step "⚙️ Configure Demo App" is no longer needed, right ?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is a very good point, @descorp ! Thanks for catching

- name: 🚀 Publish Demo App
env:
APPLE_ID_USERNAME: ${{ secrets.APPLE_ID_USERNAME }}
Expand Down
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ xcuserdata
[Bb]uild*
DerivedData
.index-build
.build

# macOS
.DS_Store
Expand All @@ -47,3 +48,4 @@ TempProject/

# Configuration files with secrets
Demo/Secrets.*.xcconfig
!Demo/Secrets.template.xcconfig
17 changes: 0 additions & 17 deletions Demo/Common/Networking/Environment.swift
Original file line number Diff line number Diff line change
Expand Up @@ -43,20 +43,3 @@ internal enum DemoCheckoutAPIEnvironment: String, AnyAPIEnvironment, CaseIterabl
internal var version: Int { ConfigurationConstants.current.apiVersion }

}

internal enum DemoClassicAPIEnvironment: String, AnyAPIEnvironment, CaseIterable {

case beta, test, local

internal var baseURL: URL {
switch self {
case .beta:
return URL(string: "https://pal-beta.adyen.com/pal/servlet/")!
case .test:
return URL(string: "https://pal-test.adyen.com/pal/servlet/")!
case .local:
return URL(string: "http://localhost:8080/pal/servlet/")!
}
}

}
1 change: 1 addition & 0 deletions Demo/Configuration+secrets.swift
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ internal extension ConfigurationConstants {
case merchantAccount = "ADYEN_MERCHANT_ACCOUNT"
case appleTeamIdentifier = "APPLE_TEAM_IDENTIFIER"
case applePayMerchantIdentifier = "APPLE_PAY_MERCHANT_IDENTIFIER"
case environment = "ENVIRONMENT"
}

static func secretValue(for key: SecretKey) -> String {
Expand Down
22 changes: 18 additions & 4 deletions Demo/Configuration.swift
Original file line number Diff line number Diff line change
Expand Up @@ -16,12 +16,26 @@ internal enum ConfigurationConstants {
// swiftlint:disable explicit_acl
// swiftlint:disable line_length

/// Please use your own web server between your app and adyen checkout API.
static let demoServerEnvironment = DemoCheckoutAPIEnvironment.test
/// Environment string read from Info.plist
static let environment = secretValue(for: .environment)

static let classicAPIEnvironment = DemoClassicAPIEnvironment.test
/// Please use your own web server between your app and adyen checkout API.
static let demoServerEnvironment: DemoCheckoutAPIEnvironment = {
DemoCheckoutAPIEnvironment(rawValue: environment) ?? .test
}()

static let componentsEnvironment = Environment.test
static let componentsEnvironment: Environment = {
switch environment.lowercased() {
case "test":
return .beta
case "beta":
return .beta
case "local":
return .local
default:
fatalError("Wrong environment: \(environment). Supported environments: `test`, `beta` and `local`")
}
}()

static let appName = "Adyen Demo"

Expand Down
3 changes: 3 additions & 0 deletions Demo/Secrets.template.xcconfig
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,9 @@
// Copy this file to Secrets.test.xcconfig and fill in your values
// Secrets.test.xcconfig will be ignored by git

// Environment setting (test, beta, or local)
ENVIRONMENT = test

// Adyen API related keys
ADYEN_CLIENT_KEY = YOUR_CLIENT_KEY
ADYEN_DEMO_SERVER_API_KEY = YOUR_DEMO_SERVER_API_KEY
Expand Down
12 changes: 12 additions & 0 deletions Demo/SwiftUI/Info.plist
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,18 @@
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>ENVIRONMENT</key>
<string>$(ENVIRONMENT)</string>
<key>ADYEN_CLIENT_KEY</key>
<string>$(ADYEN_CLIENT_KEY)</string>
<key>ADYEN_DEMO_SERVER_API_KEY</key>
<string>$(ADYEN_DEMO_SERVER_API_KEY)</string>
<key>ADYEN_MERCHANT_ACCOUNT</key>
<string>$(ADYEN_MERCHANT_ACCOUNT)</string>
<key>APPLE_PAY_MERCHANT_IDENTIFIER</key>
<string>$(APPLE_PAY_MERCHANT_IDENTIFIER)</string>
<key>APPLE_TEAM_IDENTIFIER</key>
<string>$(APPLE_TEAM_IDENTIFIER)</string>
<key>LSMinimumSystemVersion</key>
<string>14.0.0</string>
<key>CFBundleDevelopmentRegion</key>
Expand Down
2 changes: 2 additions & 0 deletions Demo/UIKit/Info.plist
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,8 @@
<string>$(APPLE_PAY_MERCHANT_IDENTIFIER)</string>
<key>APPLE_TEAM_IDENTIFIER</key>
<string>$(APPLE_TEAM_IDENTIFIER)</string>
<key>ENVIRONMENT</key>
<string>$(ENVIRONMENT)</string>
<key>CFBundleDevelopmentRegion</key>
<string>$(DEVELOPMENT_LANGUAGE)</string>
<key>CFBundleExecutable</key>
Expand Down
6 changes: 4 additions & 2 deletions Scripts/publish-demo-app.sh
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,8 @@ xcodebuild archive -project Adyen.xcodeproj \
ADYEN_DEMO_SERVER_API_KEY="$DEMO_SERVER_API_KEY" \
ADYEN_MERCHANT_ACCOUNT="$MERCHANT_ACCOUNT" \
APPLE_TEAM_IDENTIFIER="$APPLE_DEVELOPMENT_TEAM_ID" \
APPLE_PAY_MERCHANT_IDENTIFIER="${APPLE_PAY_MERCHANT_IDENTIFIER:-"merchant.com.adyen.test"}"
APPLE_PAY_MERCHANT_IDENTIFIER="${APPLE_PAY_MERCHANT_IDENTIFIER:-"merchant.com.adyen.test"}" \
ENVIRONMENT="$ENVIRONMENT"

echo "📤 Exporting .ipa with manual signing..."
xcodebuild -exportArchive \
Expand All @@ -68,7 +69,8 @@ xcodebuild -exportArchive \
ADYEN_DEMO_SERVER_API_KEY="$DEMO_SERVER_API_KEY" \
ADYEN_MERCHANT_ACCOUNT="$MERCHANT_ACCOUNT" \
APPLE_TEAM_IDENTIFIER="$APPLE_DEVELOPMENT_TEAM_ID" \
APPLE_PAY_MERCHANT_IDENTIFIER="${APPLE_PAY_MERCHANT_IDENTIFIER:-"merchant.com.adyen.test"}"
APPLE_PAY_MERCHANT_IDENTIFIER="${APPLE_PAY_MERCHANT_IDENTIFIER:-"merchant.com.adyen.test"}" \
ENVIRONMENT="$ENVIRONMENT"

echo "☁️ Uploading to App Store Connect..."
xcrun altool --upload-app \
Expand Down
Loading