7c824b492e
Modernize networking layer and fix category navigation and recipe list bugs
...
Network layer:
- Replace static CookbookApi protocol with instance-based CookbookApiProtocol
using async/throws instead of tuple returns
- Refactor ApiRequest to use URLComponents for proper URL encoding, replace
print statements with OSLog, and return typed NetworkError cases
- Add structured NetworkError variants (httpError, connectionError, etc.)
- Remove global cookbookApi constant in favor of injected dependency on AppState
- Delete unused RecipeEditViewModel, RecipeScraper, and Scraper playground
Data & model fixes:
- Add custom Decodable for RecipeDetail with safe fallbacks for malformed JSON
- Make Category Hashable/Equatable use only `name` so NavigationSplitView
selection survives category refreshes with updated recipe_count
- Return server-assigned ID from uploadRecipe so new recipes get their ID
before the post-upload refresh block executes
View updates:
- Refresh both old and new category recipe lists after upload when category
changes, mapping empty recipeCategory to "*" for uncategorized recipes
- Raise deployment target to iOS 18, adopt new SwiftUI API conventions
- Clean up alerts, onboarding views, and settings
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com >
2026-02-15 00:47:28 +01:00
VincentMeilinger
b66ef63b6a
Recipe decoding fixes
2024-05-05 10:33:33 +02:00
VincentMeilinger
6ae9926c41
Code cleanup, translations, show empty categories
2024-03-26 18:13:24 +01:00
VincentMeilinger
d201690332
UI bug fixes (regarding recipe servings adjustment)
2024-03-22 14:31:45 +01:00
VincentMeilinger
7b59c79222
Number formatting settings, recipe ingredient amount calculation
2024-03-20 08:53:58 +01:00
VincentMeilinger
054e222d8e
Adjustable recipe ingredient amount
2024-03-18 09:09:49 +01:00
VincentMeilinger
eae72eb0ce
Basic ingredient amount adjustment
2024-03-11 20:07:50 +01:00
VincentMeilinger
f495449368
Minor UI adjustemnts
2024-03-10 18:11:57 +01:00
VincentMeilinger
da30c11e50
Updated README.md with a roadmap of upcoming features
2024-03-10 18:10:36 +01:00
VincentMeilinger
31a796e8a4
Added localization for success alerts
2024-03-10 16:06:47 +01:00
VincentMeilinger
d6caa18578
Minor bug fix
2024-03-10 16:00:26 +01:00
VincentMeilinger
5d82cdf0c2
Fixed a crash due to a race condition in RecipeListView
2024-03-10 12:50:42 +01:00
VincentMeilinger
2c749754f4
Bug fixes and UI polish
2024-03-10 11:56:51 +01:00
VincentMeilinger
29872611da
Fixed: edited recipes were not saved locally
2024-03-08 17:45:26 +01:00
VincentMeilinger
dbe626d595
Bug fixes and UI polish
2024-03-07 19:09:39 +01:00
VincentMeilinger
92decb773e
Recipe edit view fixes
2024-03-05 22:07:51 +01:00
VincentMeilinger
11359e11d4
Recipe edit view polish
2024-03-05 21:42:02 +01:00
VincentMeilinger
b5dbaad9aa
Recipe edit UI polish
2024-03-05 08:39:06 +01:00
VincentMeilinger
597477544d
Creating and updating recipes works in the new edit view
2024-03-04 11:58:16 +01:00
VincentMeilinger
aa45bbdbd8
Improved Recipe Editing
2024-03-01 17:35:12 +01:00
VincentMeilinger
650df2b67e
Updated Duration Picker during Recipe Editing
2024-03-01 15:32:04 +01:00
VincentMeilinger
744ea76a34
Updated RecipeView
2024-03-01 14:17:24 +01:00
VincentMeilinger
d3e0366ce6
New Recipe Edit View
2024-02-18 12:25:18 +01:00
VincentMeilinger
e88f1d329d
hotfix
2024-02-07 20:07:03 +01:00
VincentMeilinger
b39ca5e29f
version number update
2024-02-04 16:49:56 +01:00
VincentMeilinger
05aff9e43e
Login Procedure updated (login via in-app browser)
2024-02-04 16:48:51 +01:00
VincentMeilinger
a6bd25ce3b
Code cleanup
2024-02-03 17:51:51 +01:00
VincentMeilinger
d1d498cf2d
Fixed http login
2024-02-03 10:11:18 +01:00
VincentMeilinger
4c2b459683
Bug fixes
2024-02-03 10:07:15 +01:00
VincentMeilinger
9e8048b1dd
updated screenshots
2024-01-26 10:19:56 +01:00
VincentMeilinger
2eb3e9cff5
Fixed missing grocery list icon in iOS versions 16 and under
2024-01-26 09:46:24 +01:00
VincentMeilinger
49d7508fdf
Version number adjusted
2024-01-25 23:25:54 +01:00
VincentMeilinger
93d97ef4dd
Localization updates
2024-01-25 23:23:37 +01:00
VincentMeilinger
ba4df088a0
reverted timer in recipe detail for now
2024-01-25 23:07:18 +01:00
VincentMeilinger
10cb851a5a
Code cleanup
2024-01-25 22:51:08 +01:00
VincentMeilinger
f6f9ca553a
Minor fixes
2024-01-25 16:31:01 +01:00
VincentMeilinger
fbcdfbff12
Bugfixes
2024-01-24 20:54:50 +01:00
VincentMeilinger
48d3da1964
Improved Grocery List
2024-01-24 19:23:59 +01:00
VincentMeilinger
931364c57c
Added tabs and a grocery list
2024-01-23 19:02:04 +01:00
VincentMeilinger
59734fb0cc
Timer update
2024-01-16 18:44:58 +01:00
VincentMeilinger
c0314abbf7
Timer push notifications
2024-01-11 21:28:12 +01:00
VincentMeilinger
c6c60faf01
Timer plays sound when expired
2024-01-11 20:55:18 +01:00
VincentMeilinger
9b225f63b5
Improved timer widget
2024-01-11 14:15:12 +01:00
VincentMeilinger
b069555950
Added a timer view
2024-01-11 11:16:32 +01:00
VincentMeilinger
772ee6b0e0
'Keep Screen Awake'-Setting, Acknowledge used libraries
2024-01-11 10:12:59 +01:00
VincentMeilinger
eb3f11cd17
Version 1.7.1 (updated translations)
2024-01-11 09:40:18 +01:00
VincentMeilinger
d180b96ed8
New app icon and recipe sharing options (pdf and plain text)
2024-01-10 17:52:34 +01:00
VincentMeilinger
3bcf104a5d
Search for keywords
2024-01-08 11:24:01 +01:00
VincentMeilinger
f2dac7d2b8
Minor fixes for 1.6.1
2024-01-07 18:38:52 +01:00
VincentMeilinger
d774ef5dfc
Version 1.6.1
2024-01-07 17:37:50 +01:00