Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

2.6.0 Public Beta #1860

Merged
merged 122 commits into from
Jan 11, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
122 commits
Select commit Hold shift + click to select a range
4f7d775
fix: Compile station target on Xcode 15
priyonto Nov 12, 2023
caa7cd8
task: Adopt new widgets API of Xcode 15 #1714
priyonto Nov 12, 2023
656b943
Merge pull request #1715 from ruuvi/task/1714
priyonto Nov 12, 2023
6cc7f56
Add project.yml for xcodegened project with SPM (#1713)
rinat-enikeev Nov 18, 2023
fa5c452
fix: Trigger sync call when app is launched from killed state #1718
priyonto Nov 21, 2023
9ebc241
Merge pull request #1719 from ruuvi/fix/1718
priyonto Nov 21, 2023
236213d
fix: Remove extra call when app moves to foreground #1718
priyonto Nov 22, 2023
93203fd
Modify project.yml for xcodegened project with Frameworks (#1717)
rinat-enikeev Nov 23, 2023
77baf7f
Make commands for project gen and CLI build (#1723)
rinat-enikeev Nov 24, 2023
6241503
Make mergable frameworks to improve launch time (#1724)
rinat-enikeev Nov 24, 2023
5a8589f
Remove confusing project files (#1725)
rinat-enikeev Nov 24, 2023
23cf255
Remove ActivityRuuviLogo Storyboard (#1726)
rinat-enikeev Nov 25, 2023
4a04a8a
Xcodegen tool installation if needed (#1727)
rinat-enikeev Nov 25, 2023
287ab8d
Xcodegen for Widget target (#1728)
rinat-enikeev Nov 25, 2023
4840a07
Intents and PNService targets from xcodegen (#1729)
rinat-enikeev Nov 25, 2023
8a1c973
Implement localization swiftgen step (#1731)
rinat-enikeev Nov 25, 2023
985b81a
Fix SPM build (#1732)
rinat-enikeev Nov 25, 2023
9241d74
Update README with xcodegen instructions (#1733)
rinat-enikeev Nov 25, 2023
55c881a
FLEX support for spm/framework project (#1735)
rinat-enikeev Nov 26, 2023
cd810a5
Remove Virtual Tags (#1734)
rinat-enikeev Nov 26, 2023
2237a64
Fill the iOS device model mapping PLIST (#1742)
rinat-enikeev Dec 1, 2023
c4d5040
Remove outdated files (#1743)
rinat-enikeev Dec 1, 2023
710490f
Use [framworks] xcodeproj to build the app (#1737)
rinat-enikeev Dec 1, 2023
f977f49
Add ChangeLog to firebase [frameworks] workflow (#1744)
rinat-enikeev Dec 2, 2023
7a91987
Feature: upgrade firmware option on NFC scan of df3 tag (#1746)
rinat-enikeev Dec 3, 2023
443fc2e
Replace [pod] based build with [frameworks] on alpha merge (#1745)
rinat-enikeev Dec 3, 2023
d21d4df
Merge branch 'alpha' into dev
rinat-enikeev Dec 3, 2023
ef361ef
Merge pull request #1749 from ruuvi/dev
rinat-enikeev Dec 6, 2023
1cfeba4
Script for setting build number to datetime (#1752)
rinat-enikeev Dec 6, 2023
8d3f778
Merge pull request #1753 from ruuvi/dev
rinat-enikeev Dec 6, 2023
3500e76
task: Implement toast based activity indicator #1600
priyonto Dec 3, 2023
df1ad18
Merge pull request #1747 from ruuvi/task/1600-1
priyonto Dec 6, 2023
046eec6
Install firebase CLI locally (#1754)
rinat-enikeev Dec 6, 2023
8ee4b1e
Merge pull request #1755 from ruuvi/dev
rinat-enikeev Dec 6, 2023
921d160
Use Firebase CLI 12 (#1756)
rinat-enikeev Dec 6, 2023
29aae17
Merge pull request #1757 from ruuvi/dev
rinat-enikeev Dec 6, 2023
3c468da
Use SwiftGen for localization (#1759)
rinat-enikeev Dec 9, 2023
2e1024b
update localization
rinat-enikeev Dec 9, 2023
b050b71
Formats the swift codebase with a SwiftFormat (#1760)
rinat-enikeev Dec 9, 2023
86ce4ed
Run SwiftLint --fix and --format (#1761)
rinat-enikeev Dec 9, 2023
d40a2b4
Eliminate warnings and fix localization (#1762)
rinat-enikeev Dec 9, 2023
568caad
fix: Update localised string identifiers #1714
priyonto Dec 10, 2023
cc4d7ac
Merge pull request #1763 from ruuvi/fix/1714
priyonto Dec 10, 2023
4cd7399
Implements SwiftLint as post compile step (#1764)
rinat-enikeev Dec 10, 2023
3767990
Disable Lint script dependency analysis (#1765)
rinat-enikeev Dec 10, 2023
ace2482
Add pr_checks GitHub Actions workflow (#1766)
rinat-enikeev Dec 11, 2023
95cc379
fix: Show cloud connection alert for only users with pro+ plans #1750
priyonto Dec 12, 2023
da13238
Merge pull request #1767 from ruuvi/fix/1750
priyonto Dec 12, 2023
4719179
Remove Pods and SPM projects (#1768)
rinat-enikeev Dec 12, 2023
0a51f49
Use Ruuvi as xcodeproj name (#1769)
rinat-enikeev Dec 12, 2023
1ddaf5f
feature: Show cloud saving state on sensor settings #1600
priyonto Dec 12, 2023
085016a
Merge pull request #1770 from ruuvi/feature/1600
priyonto Dec 12, 2023
6ef949b
Merge pull request #1771 from ruuvi/dev
rinat-enikeev Dec 12, 2023
50d57f9
Reorganise the project (#1772)
rinat-enikeev Dec 12, 2023
c146f8b
fix: Incorrect icon for failed events on sensor settings #1600 (#1774)
priyonto Dec 13, 2023
58128dc
Fix Intents (#1775)
rinat-enikeev Dec 13, 2023
967def6
Merge pull request #1776 from ruuvi/dev
rinat-enikeev Dec 13, 2023
dbe8fe0
Remove #if canImport() (#1777)
rinat-enikeev Dec 13, 2023
c061f20
RuuviColor generated enum (#1778)
rinat-enikeev Dec 13, 2023
eeb3a90
Remvoe all custom localization from Frameworks (#1782)
rinat-enikeev Dec 15, 2023
dfb8682
Fix colors on Storyboards (#1784)
rinat-enikeev Dec 15, 2023
67e8979
Merge pull request #1785 from ruuvi/dev
rinat-enikeev Dec 15, 2023
7872ff5
Fix dependencies of RuuviPresenters (#1786)
rinat-enikeev Dec 15, 2023
ca79e2a
Merge pull request #1787 from ruuvi/dev
rinat-enikeev Dec 15, 2023
b34937c
Remove Realm dependency (#1788)
rinat-enikeev Dec 15, 2023
06e6999
Merge pull request #1789 from ruuvi/dev
rinat-enikeev Dec 15, 2023
784b180
Fix type in table creation (#1790)
rinat-enikeev Dec 16, 2023
7c395fc
Remove dependency on RuuviLocalization in RuuviDFU (#1791)
rinat-enikeev Dec 16, 2023
e804d3f
Firmware update popup for df3 (#1792)
rinat-enikeev Dec 16, 2023
fcf619c
Merge pull request #1793 from ruuvi/dev
rinat-enikeev Dec 16, 2023
b6e052f
Quiet xcodebuild and dev branch for localization (#1794)
rinat-enikeev Dec 16, 2023
ad9f80f
Merge pull request #1795 from ruuvi/dev
rinat-enikeev Dec 16, 2023
79819c5
feature: Implement drag and drop for cards on dashboard #1632 (#1796)
priyonto Dec 17, 2023
d51e0d3
Merge pull request #1797 from ruuvi/dev
rinat-enikeev Dec 17, 2023
b4e1822
Remove podspec files (#1798)
rinat-enikeev Dec 17, 2023
d0e6f18
Remove all Info.plists (#1799)
rinat-enikeev Dec 17, 2023
b262753
fix: Remove context menu for force tap on dashboard #1632 (#1801)
priyonto Dec 18, 2023
fccc37f
fix: Hide sensor order action for alphabetical sorting #1690 (#1802)
priyonto Dec 18, 2023
e583b72
Bump BTKit version (#1800)
rinat-enikeev Dec 18, 2023
7b96bd7
Merge pull request #1803 from ruuvi/dev
rinat-enikeev Dec 18, 2023
3391e22
NotificationService localization fixes (#1804)
rinat-enikeev Dec 19, 2023
4401f77
Merge pull request #1806 from ruuvi/dev
rinat-enikeev Dec 19, 2023
3f94a75
Fix localizations in PN service (#1807)
rinat-enikeev Dec 20, 2023
1a96ad8
TestFlight workflow (#1808)
rinat-enikeev Dec 20, 2023
c069e77
Bump version to 2.6.0 (#1809)
rinat-enikeev Dec 20, 2023
d1b0385
Merge pull request #1810 from ruuvi/dev
rinat-enikeev Dec 20, 2023
9ea0cf1
Merge pull request #1811 from ruuvi/alpha
rinat-enikeev Dec 20, 2023
cb9bd00
fix: Fix sensor order not updated on sensor cards page #1632 (#1812)
priyonto Dec 20, 2023
cd3f07e
Respect app extension only API requirement (#1813)
rinat-enikeev Dec 20, 2023
1901ebe
Merge pull request #1814 from ruuvi/dev
rinat-enikeev Dec 20, 2023
02b3eab
Merge pull request #1815 from ruuvi/alpha
rinat-enikeev Dec 20, 2023
567c245
fix: Fix UI glitch after toast is dismissed #1600 (#1816) (#1817)
priyonto Dec 21, 2023
58f145e
Enhancements and bug fixes (#1823)
priyonto Dec 27, 2023
440da60
fix: Disable RSSI alert after unclaim #1751 (#1826)
priyonto Dec 29, 2023
a864d92
Merge pull request #1827 from ruuvi/dev
rinat-enikeev Dec 29, 2023
95fdcbd
Fix signed in initial empty screen (#1829)
rinat-enikeev Jan 1, 2024
169312e
Merge pull request #1830 from ruuvi/dev
rinat-enikeev Jan 1, 2024
0fde50a
Fix signed in initial empty screen (#1831)
rinat-enikeev Jan 1, 2024
f521eee
Merge pull request #1832 from ruuvi/dev
rinat-enikeev Jan 1, 2024
2b01984
fix: Show message for cloud connection alert #1833 (#1834)
priyonto Jan 2, 2024
42f806d
Merge pull request #1835 from ruuvi/dev
priyonto Jan 2, 2024
0bb8afc
update station.localization pointer
rinat-enikeev Jan 6, 2024
0386f97
Dont remove localIds when signing out (#1837)
rinat-enikeev Jan 6, 2024
cda030a
Dont abort if same RuuviTag is added by id - just replace it (#1838)
rinat-enikeev Jan 6, 2024
85574c9
Merge pull request #1839 from ruuvi/dev
rinat-enikeev Jan 6, 2024
9449eb7
Listen to UUID updates for given MAC (#1841)
rinat-enikeev Jan 6, 2024
0731526
Merge pull request #1842 from ruuvi/dev
rinat-enikeev Jan 6, 2024
d071966
Update in SQLite the luid of a sensor (#1843)
rinat-enikeev Jan 6, 2024
f891069
Merge pull request #1844 from ruuvi/dev
rinat-enikeev Jan 6, 2024
913cf6d
Merge pull request #1845 from ruuvi/alpha
rinat-enikeev Jan 6, 2024
4121ecf
Upgrade Charts to 5+ (#1846)
rinat-enikeev Jan 6, 2024
baab231
Move Assets to RuuviLocalization (#1847)
rinat-enikeev Jan 6, 2024
efdaf76
update station.localization
rinat-enikeev Jan 9, 2024
26601ad
Show last seen date on widget (#1851)
rinat-enikeev Jan 9, 2024
df5e3ae
Don't support transferring Ruuvi Station data on device change (#1852)
rinat-enikeev Jan 9, 2024
d5a3bda
Merge pull request #1853 from ruuvi/dev
rinat-enikeev Jan 9, 2024
7d0fc87
fix swiftgen
rinat-enikeev Jan 9, 2024
7aa21fa
Merge pull request #1854 from ruuvi/dev
rinat-enikeev Jan 9, 2024
8b2d747
Merge pull request #1855 from ruuvi/alpha
rinat-enikeev Jan 9, 2024
a449a24
DFU improvements (#1856)
rinat-enikeev Jan 10, 2024
44a8391
Merge pull request #1857 from ruuvi/dev
rinat-enikeev Jan 10, 2024
f03396f
Merge pull request #1858 from ruuvi/alpha
rinat-enikeev Jan 10, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
63 changes: 43 additions & 20 deletions .github/workflows/firebase.yml
Original file line number Diff line number Diff line change
@@ -1,17 +1,21 @@
name: Upload to Firebase
name: Deploy to Firebase [Ruuvi Station]

on:
pull_request:
types:
- closed
branches: [ alpha ]
branches: [alpha]

jobs:
build:
if: github.event.pull_request.merged == true
runs-on: macos-latest
runs-on: macos-13

steps:
- uses: maxim-lobanov/setup-xcode@v1
with:
xcode-version: '15'

- name: Checkout repository
uses: actions/checkout@v4

Expand All @@ -26,17 +30,6 @@ jobs:
- name: Clone localisation submodule
run: git clone -b dev https://github.com/ruuvi/station.localization.git ${{ github.workspace }}/station.localization

- name: Cocoapods Cache
uses: actions/cache@v2
with:
path: Pods
key: ${{ runner.os }}-pods-${{ hashFiles('**/Podfile.lock') }}
restore-keys: |
${{ runner.os }}-pods-

- name: CocoaPods Install
run: pod install

- name: Install the Apple certificate and provisioning profiles
env:
BUILD_CERTIFICATE_BASE64: ${{ secrets.BUILD_CERTIFICATE_BASE64 }}
Expand All @@ -61,10 +54,33 @@ jobs:
echo -n "${{ secrets.INTENTS_APP_ADHOC_PROVISION_PROFILE_BASE64 }}" | base64 --decode > ~/Library/MobileDevice/Provisioning\ Profiles/match_AdHoc_com.ruuvi.station.intents.mobileprovision
echo -n "${{ secrets.PNSERVICE_APP_ADHOC_PROVISION_PROFILE_BASE64 }}" | base64 --decode > ~/Library/MobileDevice/Provisioning\ Profiles/match_AdHoc_com.ruuvi.station.pnservice.mobileprovision

- name: Increment build number
run: |
make set_build_number

- name: Tools cache
uses: actions/cache@v2
with:
path: .tools/
key: ${{ runner.os }}-tools-${{ hashFiles('/.tools/') }}
restore-keys: |
${{ runner.os }}-tools-

- name: Make xcodeproj
run: |
make xcodeproj

- name: SPM Cache
uses: actions/cache@v2
with:
path: ~/Library/Developer/Xcode/DerivedData/Ruuvi*/SourcePackages/
key: ${{ runner.os }}-Ruuvi-${{ hashFiles('Ruuvi.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved') }}
restore-keys: |
${{ runner.os }}-Ruuvi-

- name: Build app
run: |
xcodebuild -workspace station.xcworkspace -scheme station_dev -configuration Debug -archivePath ./Build/Station_Dev.xcarchive archive -allowProvisioningUpdates

xcodebuild -project Ruuvi.xcodeproj -scheme station -configuration Alpha -archivePath ./Build/Station_Dev.xcarchive archive -allowProvisioningUpdates -quiet
- name: Export IPA
env:
EXPORT_PLIST: ${{ secrets.ADHOC_EXPORT_OPTIONS }}
Expand All @@ -73,14 +89,21 @@ jobs:
echo -n "$EXPORT_PLIST" | base64 --decode > $EXPORT_PLIST_PATH
xcodebuild -exportArchive -archivePath ./Build/Station_Dev.xcarchive -exportOptionsPlist $EXPORT_PLIST_PATH -exportPath ${{ runner.temp }}/export

- name: Build Changelog
id: build_changelog
uses: mikepenz/[email protected]

- name: Install firebase CLI
run: |
make installed_firebase

- name: Distribute to Firebase
run: |
curl -sL https://firebase.tools | bash
firebase appdistribution:distribute ${{ runner.temp }}/export/*.ipa \
.tools/firebase/firebase appdistribution:distribute ${{ runner.temp }}/export/*.ipa \
--app ${{ secrets.GOOGLE_APP_ID }} \
--token ${{ secrets.FIREBASE_REFRESH_TOKEN }} \
--groups ${{ secrets.ALPHA_TESTERS_GROUP }} \
--release-notes "Features, enhancements and bug fixes."
--release-notes "${{ steps.build_changelog.outputs.changelog }}"

- name: Zip dSYM files
run: |
Expand All @@ -89,7 +112,7 @@ jobs:
- name: Upload dSYM to Firebase
run: |
find ${{ runner.temp }}/export -name '*.dSYM.zip' | xargs -I \{\} firebase crashlytics:upload-symbols --app ${{ secrets.GOOGLE_APP_ID }} -g \{\}

- name: Clean up keychain and provisioning profiles
if: ${{ always() }}
run: |
Expand Down
16 changes: 16 additions & 0 deletions .github/workflows/pr_checks.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
name: Checks for opened PR

on:
pull_request:
types: [opened, synchronize]

jobs:
swiftlint:
runs-on: ubuntu-latest
name: SwiftLint
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Lint
uses: norio-nomura/[email protected]
49 changes: 33 additions & 16 deletions .github/workflows/testflight.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,14 +4,18 @@ on:
pull_request:
types:
- closed
branches: [ testflight ]
branches: [testflight]

jobs:
build:
if: github.event.pull_request.merged == true
runs-on: macos-latest
runs-on: macos-13

steps:
- uses: maxim-lobanov/setup-xcode@v1
with:
xcode-version: '15'

- name: Checkout repository
uses: actions/checkout@v4

Expand All @@ -24,18 +28,7 @@ jobs:
run: rm -rf ${{ github.workspace }}/station.localization

- name: Clone localisation submodule
run: git clone -b dev https://github.com/ruuvi/station.localization.git ${{ github.workspace }}/station.localization

- name: Cocoapods Cache
uses: actions/cache@v2
with:
path: Pods
key: ${{ runner.os }}-pods-${{ hashFiles('**/Podfile.lock') }}
restore-keys: |
${{ runner.os }}-pods-

- name: CocoaPods Install
run: pod install
run: git clone -b master https://github.com/ruuvi/station.localization.git ${{ github.workspace }}/station.localization

- name: Install the Apple certificate and provisioning profiles
env:
Expand Down Expand Up @@ -66,10 +59,34 @@ jobs:
echo -n "${{ secrets.INTENTS_APP_APPSTORE_PROVISION_PROFILE_BASE64 }}" | base64 --decode > ~/Library/MobileDevice/Provisioning\ Profiles/match__AppStore_com.ruuvi.station.intents.mobileprovision
echo -n "${{ secrets.PNSERVICE_APP_APPSTORE_PROVISION_PROFILE_BASE64 }}" | base64 --decode > ~/Library/MobileDevice/Provisioning\ Profiles/match_AppStore_com.ruuvi.station.pnservice.mobileprovision

- name: Increment build number
run: |
make set_build_number

- name: Tools cache
uses: actions/cache@v2
with:
path: .tools/
key: ${{ runner.os }}-tools-${{ hashFiles('/.tools/') }}
restore-keys: |
${{ runner.os }}-tools-

- name: Make xcodeproj
run: |
make xcodeproj

- name: SPM Cache
uses: actions/cache@v2
with:
path: ~/Library/Developer/Xcode/DerivedData/Ruuvi*/SourcePackages/
key: ${{ runner.os }}-Ruuvi-${{ hashFiles('Ruuvi.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved') }}
restore-keys: |
${{ runner.os }}-Ruuvi-

- name: Build app
run: |
xcodebuild -workspace station.xcworkspace -scheme station -configuration Release -archivePath ./Build/Station.xcarchive archive -allowProvisioningUpdates
xcodebuild -project Ruuvi.xcodeproj -scheme station -configuration Release -archivePath ./Build/Station.xcarchive archive -allowProvisioningUpdates -quiet

- name: Export IPA
env:
EXPORT_PLIST: ${{ secrets.APPSTORE_EXPORT_OPTIONS }}
Expand Down
8 changes: 7 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,10 @@
# Tools
.tools

# Generated
Ruuvi.xcodeproj
**/Info.plist

# Private
station/Resources/Plists/GoogleService-Info.plist
station/Classes/Networking/Assembly/Networking.plist
Expand All @@ -7,7 +14,6 @@ station/Classes/Networking/Assembly/Networking.plist
# gitignore contributors: remember to update Global/Xcode.gitignore, Objective-C.gitignore & Swift.gitignore

## Build generated
build/
DerivedData/

## Various settings
Expand Down
3 changes: 0 additions & 3 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -1,6 +1,3 @@
[submodule "station.localization"]
path = station.localization
url = [email protected]:ruuvi/station.localization.git
[submodule "Templates/swifty_vm_viper"]
path = Templates/swifty_vm_viper
url = [email protected]:viikufa/swifty_vm_viper.git
4 changes: 4 additions & 0 deletions .swiftformat
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
--swiftversion 5.9
--disable wrapMultilineStatementBraces,trailingCommas
--xcodeindentation enabled
--wraparguments before-first
27 changes: 27 additions & 0 deletions .swiftgen.assets.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
strings:
- inputs: ./Common/RuuviLocalization/Sources/Resources/en.lproj/Localizable.strings
outputs:
- templatePath: ./Common/RuuviLocalization/Templates/strings-swift5.stencil
output: ./Common/RuuviLocalization/Sources/RuuviLocalization.swift
params:
forceProvidesNamespaces: true
publicAccess: true
enumName: RuuviLocalization

xcassets:
- inputs: ./Common/RuuviLocalization/Sources/Resources/RuuviAssets.xcassets
outputs:
- templatePath: ./Common/RuuviLocalization/Templates/xcassets-swift5.stencil
output: ./Common/RuuviLocalization/Sources/RuuviAsset.swift
params:
forceProvidesNamespaces: true
publicAccess: true
enumName: RuuviAsset
- inputs: ./Common/RuuviLocalization/Sources/Resources/RuuviColors.xcassets
outputs:
- templatePath: ./Common/RuuviLocalization/Templates/xcassets-swift5.stencil
output: ./Common/RuuviLocalization/Sources/RuuviColor.swift
params:
forceProvidesNamespaces: true
publicAccess: true
enumName: RuuviColor
25 changes: 25 additions & 0 deletions .swiftgen.localizable.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
json:
- inputs: ./station.localization/station.localization.json
outputs:
- templatePath: ./Common/RuuviLocalization/Templates/Localizable_en.strings.stencil
output: ./Common/RuuviLocalization/Sources/Resources/en.lproj/Localizable.strings
- inputs: ./station.localization/station.localization.json
outputs:
- templatePath: ./Common/RuuviLocalization/Templates/Localizable_sv.strings.stencil
output: ./Common/RuuviLocalization/Sources/Resources/sv.lproj/Localizable.strings
- inputs: ./station.localization/station.localization.json
outputs:
- templatePath: ./Common/RuuviLocalization/Templates/Localizable_ru.strings.stencil
output: ./Common/RuuviLocalization/Sources/Resources/ru.lproj/Localizable.strings
- inputs: ./station.localization/station.localization.json
outputs:
- templatePath: ./Common/RuuviLocalization/Templates/Localizable_fi.strings.stencil
output: ./Common/RuuviLocalization/Sources/Resources/fi.lproj/Localizable.strings
- inputs: ./station.localization/station.localization.json
outputs:
- templatePath: ./Common/RuuviLocalization/Templates/Localizable_fr.strings.stencil
output: ./Common/RuuviLocalization/Sources/Resources/fr.lproj/Localizable.strings
- inputs: ./station.localization/station.localization.json
outputs:
- templatePath: ./Common/RuuviLocalization/Templates/Localizable_de.strings.stencil
output: ./Common/RuuviLocalization/Sources/Resources/de.lproj/Localizable.strings
13 changes: 7 additions & 6 deletions .swiftlint.yml
Original file line number Diff line number Diff line change
@@ -1,13 +1,14 @@
trailing_comma:
mandatory_comma: true
opening_brace:
allow_multiline_func: true
nesting:
type_level: 3
excluded: # paths to ignore during linting. Takes precedence over `included`.
excluded:
- Carthage
- Pods
- stationTests
- Package
- station/ThirdParty
disabled_rules: # rule identifiers to exclude from running
disabled_rules:
- closure_parameter_position
- identifier_name
- force_try
- closure_parameter_position
- todo
13 changes: 0 additions & 13 deletions .travis.yml

This file was deleted.

22 changes: 22 additions & 0 deletions Apps/RuuviStation/Intents/Sources/IntentHandler.swift
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
import Intents

class IntentHandler: INExtension, RuuviTagSelectionIntentHandling {
private let viewModel = WidgetViewModel()
func provideRuuviWidgetTagOptionsCollection(
for _: RuuviTagSelectionIntent,
with completion: @escaping (
INObjectCollection<RuuviWidgetTag>?,
Error?
) -> Void
) {
viewModel.fetchRuuviTags(completion: { response in
let newValues = response.compactMap { sensor in
RuuviWidgetTag(identifier: sensor.sensor.id, display: sensor.sensor.name)
}.sorted(by: { first, second in
first.displayString.lowercased() < second.displayString.lowercased()
})
let items = INObjectCollection(items: newValues)
completion(items, nil)
})
}
}
Loading