Files
KisaniCal/project.yml
kutesir 5e232f2d81 feat: add widget extension — small, medium, large
- KisaniCalWidget: 3 sizes sharing the app's design language
  Small: date badge + kisaniCAL. wordmark + task count
  Medium: badge + task list (3 items) + workout row
  Large: badge + full task list (6 items) + workout row

- WidgetDataStore (Shared/): lightweight Codable types for App Group
  UserDefaults cross-process data exchange

- WidgetBridge: TaskViewModel/WorkoutViewModel extensions that sync
  data into App Group and call WidgetCenter.reloadAllTimelines()

- ContentView: calls syncWidget() on appear and scene becoming active

- project.yml + entitlements updated; project regenerated via xcodegen
2026-05-28 19:48:01 +03:00

56 lines
2.2 KiB
YAML

name: KisaniCal
options:
bundleIdPrefix: com.kutesir
deploymentTarget:
iOS: "16.0"
xcodeVersion: "15.0"
createIntermediateGroups: true
targets:
KisaniCal:
type: application
platform: iOS
deploymentTarget: "16.0"
sources:
- path: KisaniCal
- path: Shared
settings:
base:
SWIFT_VERSION: 5.9
TARGETED_DEVICE_FAMILY: "1,2"
GENERATE_INFOPLIST_FILE: YES
INFOPLIST_KEY_UIApplicationSceneManifest_Generation: YES
INFOPLIST_KEY_UILaunchStoryboardName: ""
INFOPLIST_KEY_CFBundleDisplayName: "Kisani Cal"
INFOPLIST_KEY_UIStatusBarStyle: UIStatusBarStyleDefault
INFOPLIST_KEY_UISupportedInterfaceOrientations_iPad: "UIInterfaceOrientationPortrait UIInterfaceOrientationPortraitUpsideDown UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight"
INFOPLIST_KEY_UISupportedInterfaceOrientations_iPhone: "UIInterfaceOrientationPortrait UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight"
ASSETCATALOG_COMPILER_APPICON_NAME: AppIcon
ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME: AccentColor
CODE_SIGN_STYLE: Automatic
ENABLE_PREVIEWS: YES
CODE_SIGN_ENTITLEMENTS: KisaniCal/KisaniCal.entitlements
INFOPLIST_KEY_NSCalendarsUsageDescription: "Kisani Cal shows your calendar events alongside tasks."
INFOPLIST_KEY_NSCalendarsFullAccessUsageDescription: "Kisani Cal shows your calendar events alongside tasks."
dependencies:
- target: KisaniCalWidget
embed: true
KisaniCalWidget:
type: app-extension
platform: iOS
deploymentTarget: "16.0"
sources:
- path: KisaniCalWidget
- path: Shared
settings:
base:
SWIFT_VERSION: 5.9
PRODUCT_BUNDLE_IDENTIFIER: com.kutesir.KisaniCal.widget
GENERATE_INFOPLIST_FILE: YES
INFOPLIST_KEY_NSExtensionPointIdentifier: com.apple.widgetkit-extension
CODE_SIGN_STYLE: Automatic
CODE_SIGN_ENTITLEMENTS: KisaniCalWidget/KisaniCalWidget.entitlements
SKIP_INSTALL: YES
LD_RUNPATH_SEARCH_PATHS: "$(inherited) @executable_path/Frameworks @executable_path/../../Frameworks"