├── Pods ├── MaterialDesignColor │ ├── LICENSE.txt │ └── README.md ├── Headers │ └── Private │ │ ├── PNChart │ │ ├── PNBar.h │ │ ├── PNChart.h │ │ ├── PNColor.h │ │ ├── PNBarChart.h │ │ ├── PNPieChart.h │ │ ├── PNChartLabel.h │ │ ├── PNLineChart.h │ │ ├── PNRadarChart.h │ │ ├── PNChartDelegate.h │ │ ├── PNCircleChart.h │ │ ├── PNGenericChart.h │ │ ├── PNLineChartData.h │ │ ├── PNScatterChart.h │ │ ├── PNLineChartDataItem.h │ │ ├── PNPieChartDataItem.h │ │ ├── PNRadarChartDataItem.h │ │ ├── PNScatterChartData.h │ │ └── PNScatterChartDataItem.h │ │ ├── FSCalendar │ │ ├── FSCalendar.h │ │ ├── FSCalendarCell.h │ │ ├── FSCalendarHeader.h │ │ ├── NSDate+FSExtension.h │ │ ├── UIView+FSExtension.h │ │ ├── FSCalendarAppearance.h │ │ ├── FSCalendarConstance.h │ │ ├── FSCalendarFlowLayout.h │ │ ├── NSString+FSExtension.h │ │ ├── FSCalendar+IBExtension.h │ │ ├── FSCalendarDynamicHeader.h │ │ ├── FSCalendarStickyHeader.h │ │ └── FSCalendarCollectionView.h │ │ ├── UICountingLabel │ │ └── UICountingLabel.h │ │ ├── RKDropdownAlert │ │ └── RKDropdownAlert.h │ │ └── BGTableViewRowActionWithImage │ │ └── BGTableViewRowActionWithImage.h ├── Target Support Files │ ├── PNChart │ │ ├── PNChart-prefix.pch │ │ ├── PNChart.modulemap │ │ ├── PNChart-dummy.m │ │ ├── PNChart.xcconfig │ │ ├── PNChart-umbrella.h │ │ └── Info.plist │ ├── FSCalendar │ │ ├── FSCalendar-prefix.pch │ │ ├── FSCalendar.modulemap │ │ ├── FSCalendar-dummy.m │ │ ├── FSCalendar.xcconfig │ │ ├── FSCalendar-umbrella.h │ │ └── Info.plist │ ├── RKDropdownAlert │ │ ├── RKDropdownAlert-prefix.pch │ │ ├── RKDropdownAlert.modulemap │ │ ├── RKDropdownAlert-dummy.m │ │ ├── RKDropdownAlert-umbrella.h │ │ ├── RKDropdownAlert.xcconfig │ │ └── Info.plist │ ├── UICountingLabel │ │ ├── UICountingLabel-prefix.pch │ │ ├── UICountingLabel.modulemap │ │ ├── UICountingLabel-dummy.m │ │ ├── UICountingLabel-umbrella.h │ │ ├── UICountingLabel.xcconfig │ │ └── Info.plist │ ├── DGRunkeeperSwitch │ │ ├── DGRunkeeperSwitch-prefix.pch │ │ ├── DGRunkeeperSwitch.modulemap │ │ ├── DGRunkeeperSwitch-dummy.m │ │ ├── DGRunkeeperSwitch-umbrella.h │ │ ├── DGRunkeeperSwitch.xcconfig │ │ └── Info.plist │ ├── MaterialDesignColor │ │ ├── MaterialDesignColor-prefix.pch │ │ ├── MaterialDesignColor.modulemap │ │ ├── MaterialDesignColor-dummy.m │ │ ├── MaterialDesignColor-umbrella.h │ │ ├── MaterialDesignColor.xcconfig │ │ └── Info.plist │ ├── NVActivityIndicatorView │ │ ├── NVActivityIndicatorView-prefix.pch │ │ ├── NVActivityIndicatorView.modulemap │ │ ├── NVActivityIndicatorView-dummy.m │ │ ├── NVActivityIndicatorView-umbrella.h │ │ ├── NVActivityIndicatorView.xcconfig │ │ └── Info.plist │ ├── BGTableViewRowActionWithImage │ │ ├── BGTableViewRowActionWithImage-prefix.pch │ │ ├── BGTableViewRowActionWithImage.modulemap │ │ ├── BGTableViewRowActionWithImage-dummy.m │ │ ├── BGTableViewRowActionWithImage-umbrella.h │ │ ├── BGTableViewRowActionWithImage.xcconfig │ │ └── Info.plist │ └── Pods-Nutrition Cal │ │ ├── Pods-Nutrition Cal.modulemap │ │ ├── Pods-Nutrition Cal-dummy.m │ │ ├── Pods-Nutrition Cal-umbrella.h │ │ ├── Info.plist │ │ ├── Pods-Nutrition Cal.debug.xcconfig │ │ └── Pods-Nutrition Cal.release.xcconfig ├── PNChart │ ├── PNChart │ │ ├── PNChartLabel.h │ │ ├── PNLineChartDataItem.h │ │ ├── PNRadarChartDataItem.h │ │ ├── PNScatterChartDataItem.h │ │ ├── PNChart.h │ │ ├── PNLineChartData.m │ │ ├── PNScatterChartData.m │ │ ├── PNLineChartDataItem.m │ │ ├── PNColor.m │ │ ├── PNPieChartDataItem.h │ │ ├── PNRadarChartDataItem.m │ │ ├── PNBar.h │ │ ├── PNChartLabel.m │ │ ├── PNScatterChartDataItem.m │ │ ├── PNChartDelegate.h │ │ ├── PNPieChartDataItem.m │ │ ├── PNScatterChartData.h │ │ ├── PNGenericChart.m │ │ ├── PNLineChartData.h │ │ ├── PNGenericChart.h │ │ ├── PNRadarChart.h │ │ ├── PNPieChart.h │ │ ├── PNScatterChart.h │ │ └── PNCircleChart.h │ └── LICENSE ├── FSCalendar │ ├── FSCalendar │ │ ├── FSCalendarCollectionView.h │ │ ├── NSString+FSExtension.h │ │ ├── FSCalendarFlowLayout.h │ │ ├── UIView+FSExtension.h │ │ ├── FSCalendarStickyHeader.h │ │ ├── NSString+FSExtension.m │ │ ├── FSCalendarConstance.m │ │ ├── FSCalendarHeader.h │ │ ├── FSCalendarCollectionView.m │ │ ├── UIView+FSExtension.m │ │ ├── FSCalendarCell.h │ │ ├── FSCalendarDynamicHeader.h │ │ ├── FSCalendarConstance.h │ │ ├── FSCalendarFlowLayout.m │ │ └── NSDate+FSExtension.h │ └── LICENSE ├── NVActivityIndicatorView │ ├── NVActivityIndicatorView │ │ ├── NVActivityIndicatorAnimationDelegate.swift │ │ └── Animations │ │ │ ├── NVActivityIndicatorAnimationBlank.swift │ │ │ ├── NVActivityIndicatorAnimationSemiCircleSpin.swift │ │ │ ├── NVActivityIndicatorAnimationLineScale.swift │ │ │ ├── NVActivityIndicatorAnimationLineScaleParty.swift │ │ │ ├── NVActivityIndicatorAnimationBallScale.swift │ │ │ ├── NVActivityIndicatorAnimationLineScalePulseOut.swift │ │ │ ├── NVActivityIndicatorAnimationBallClipRotate.swift │ │ │ ├── NVActivityIndicatorAnimationLineScalePulseOutRapid.swift │ │ │ ├── NVActivityIndicatorAnimationBallPulse.swift │ │ │ ├── NVActivityIndicatorAnimationBallScaleRipple.swift │ │ │ ├── NVActivityIndicatorAnimationBallPulseSync.swift │ │ │ ├── NVActivityIndicatorAnimationBallScaleMultiple.swift │ │ │ ├── NVActivityIndicatorAnimationBallGridBeat.swift │ │ │ ├── NVActivityIndicatorAnimationBallScaleRippleMultiple.swift │ │ │ ├── NVActivityIndicatorAnimationBallBeat.swift │ │ │ ├── NVActivityIndicatorAnimationTriangleSkewSpin.swift │ │ │ ├── NVActivityIndicatorAnimationSquareSpin.swift │ │ │ ├── NVActivityIndicatorAnimationBallZigZag.swift │ │ │ └── NVActivityIndicatorAnimationBallZigZagDeflect.swift │ └── LICENSE ├── BGTableViewRowActionWithImage │ ├── BGTableViewRowActionWithImage.h │ ├── LICENSE │ └── README.md ├── UICountingLabel │ ├── LICENSE │ └── UICountingLabel.h ├── Manifest.lock ├── RKDropdownAlert │ └── LICENSE └── DGRunkeeperSwitch │ └── LICENSE ├── icon.png ├── screenShots ├── 1.jpg ├── 2.jpg ├── 3.jpg ├── 4.jpg ├── tutorial.gif └── readme_header.jpg ├── Open_Ended_Capstone_Rubric.png ├── Nutrition Cal ├── Assets.xcassets │ ├── Contents.json │ ├── actionsIcons │ │ ├── Contents.json │ │ ├── eatActionIcon.imageset │ │ │ ├── eatActionIcon.png │ │ │ ├── eatActionIcon@2x.png │ │ │ ├── eatActionIcon@3x.png │ │ │ └── Contents.json │ │ ├── saveActionIcon.imageset │ │ │ ├── saveActionIcon.png │ │ │ ├── saveActionIcon@2x.png │ │ │ ├── saveActionIcon@3x.png │ │ │ └── Contents.json │ │ ├── deleteActionIcon.imageset │ │ │ ├── deleteActionIcon.png │ │ │ ├── deleteActionIcon@2x.png │ │ │ ├── deleteActionIcon@3x.png │ │ │ └── Contents.json │ │ └── deleteDayEntryActionIcon.imageset │ │ │ ├── deleteDayEntryActionIcon.png │ │ │ ├── deleteDayEntryActionIcon@2x.png │ │ │ ├── deleteDayEntryActionIcon@3x.png │ │ │ └── Contents.json │ ├── tabBarIcons │ │ ├── Contents.json │ │ ├── foodsTabBarButton.imageset │ │ │ ├── foodsTabBarButton.png │ │ │ ├── foodsTabBarButton@2x.png │ │ │ ├── foodsTabBarButton@3x.png │ │ │ └── Contents.json │ │ ├── historyTabBarButton.imageset │ │ │ ├── historyTabBarButton.png │ │ │ ├── historyTabBarButton@2x.png │ │ │ ├── historyTabBarButton@3x.png │ │ │ └── Contents.json │ │ ├── settingsTabBarButton.imageset │ │ │ ├── settingsTabBarButton.png │ │ │ ├── settingsTabBarButton@2x.png │ │ │ ├── settingsTabBarButton@3x.png │ │ │ └── Contents.json │ │ ├── foodsTabBarButtonSelected.imageset │ │ │ ├── foodsTabBarButtonSelected.png │ │ │ ├── foodsTabBarButtonSelected@2x.png │ │ │ ├── foodsTabBarButtonSelected@3x.png │ │ │ └── Contents.json │ │ ├── historyTabBarButtonSelected.imageset │ │ │ ├── historyTabBarButtonSelected.png │ │ │ ├── historyTabBarButtonSelected@2x.png │ │ │ ├── historyTabBarButtonSelected@3x.png │ │ │ └── Contents.json │ │ └── settingsTabBarButtonSelected.imageset │ │ │ ├── settingsTabBarButtonSelected.png │ │ │ ├── settingsTabBarButtonSelected@2x.png │ │ │ ├── settingsTabBarButtonSelected@3x.png │ │ │ └── Contents.json │ ├── settingsIcons │ │ ├── Contents.json │ │ ├── aboutSettingsIcon.imageset │ │ │ ├── aboutSettingsIcon.png │ │ │ ├── aboutSettingsIcon@2x.png │ │ │ ├── aboutSettingsIcon@3x.png │ │ │ └── Contents.json │ │ ├── moreSettingsIcon.imageset │ │ │ ├── moreSettingsIcon.png │ │ │ ├── moreSettingsIcon@2x.png │ │ │ ├── moreSettingsIcon@3x.png │ │ │ └── Contents.json │ │ ├── rateSettingsIcon.imageset │ │ │ ├── rateSettingsIcon.png │ │ │ ├── rateSettingsIcon@2x.png │ │ │ ├── rateSettingsIcon@3x.png │ │ │ └── Contents.json │ │ ├── shareSettingsIcon.imageset │ │ │ ├── shareSettingsIcon.png │ │ │ ├── shareSettingsIcon@2x.png │ │ │ ├── shareSettingsIcon@3x.png │ │ │ └── Contents.json │ │ ├── syncSettingsIcon.imageset │ │ │ ├── syncSettingsIcon.png │ │ │ ├── syncSettingsIcon@2x.png │ │ │ ├── syncSettingsIcon@3x.png │ │ │ └── Contents.json │ │ └── replaySettingsIcon.imageset │ │ │ ├── replaySettingsIcon.png │ │ │ ├── replaySettingsIcon@2x.png │ │ │ ├── replaySettingsIcon@3x.png │ │ │ └── Contents.json │ ├── tutorialImages │ │ ├── Contents.json │ │ ├── tutorial_1.imageset │ │ │ ├── tutorial_1.png │ │ │ ├── tutorial_1@2x.png │ │ │ ├── tutorial_1@3x.png │ │ │ └── Contents.json │ │ ├── tutorial_2.imageset │ │ │ ├── tutorial_2.png │ │ │ ├── tutorial_2@2x.png │ │ │ ├── tutorial_2@3x.png │ │ │ └── Contents.json │ │ ├── tutorial_3.imageset │ │ │ ├── tutorial_3.png │ │ │ ├── tutorial_3@2x.png │ │ │ ├── tutorial_3@3x.png │ │ │ └── Contents.json │ │ ├── tutorial_4.imageset │ │ │ ├── tutorial_4.png │ │ │ ├── tutorial_4@2x.png │ │ │ ├── tutorial_4@3x.png │ │ │ └── Contents.json │ │ ├── tutorial_5.imageset │ │ │ ├── tutorial_5.png │ │ │ ├── tutorial_5@2x.png │ │ │ ├── tutorial_5@3x.png │ │ │ └── Contents.json │ │ ├── tutorial_6.imageset │ │ │ ├── tutorial_6.png │ │ │ ├── tutorial_6@2x.png │ │ │ ├── tutorial_6@3x.png │ │ │ └── Contents.json │ │ └── tutorial_7.imageset │ │ │ ├── tutorial_7.png │ │ │ ├── tutorial_7@2x.png │ │ │ ├── tutorial_7@3x.png │ │ │ └── Contents.json │ ├── dayLine.imageset │ │ ├── dayLine.png │ │ ├── dayLine@2x.png │ │ ├── dayLine@3x.png │ │ └── Contents.json │ ├── noImage.imageset │ │ ├── noImage.png │ │ ├── noImage@2x.png │ │ ├── noImage@3x.png │ │ └── Contents.json │ ├── AppIcon.appiconset │ │ ├── Icon-40.png │ │ ├── Icon-76.png │ │ ├── Icon-40@2x.png │ │ ├── Icon-40@3x.png │ │ ├── Icon-60@2x.png │ │ ├── Icon-60@3x.png │ │ ├── Icon-76@2x.png │ │ ├── Icon-Small.png │ │ ├── Icon-Small@2x.png │ │ ├── Icon-Small@3x.png │ │ └── Contents.json │ ├── nutritionCal.imageset │ │ ├── nutritionCal.png │ │ ├── nutritionCal@2x.png │ │ ├── nutritionCal@3x.png │ │ └── Contents.json │ ├── launchScreenLogo.imageset │ │ ├── launchScreenLogo.png │ │ ├── launchScreenLogo@2x.png │ │ ├── launchScreenLogo@3x.png │ │ └── Contents.json │ └── skipTutorialButton.imageset │ │ ├── skipTutorialButton.png │ │ ├── skipTutorialButton@2x.png │ │ ├── skipTutorialButton@3x.png │ │ └── Contents.json ├── Nutrition Cal.entitlements ├── AboutViewController.swift ├── Reachability.swift ├── TutorialContentViewController.swift ├── DayEntry.swift ├── NDBNutrient.swift ├── NDBMeasure.swift ├── NDBItem.swift ├── Info.plist └── Extensions.swift ├── Nutrition Cal.xcodeproj └── project.xcworkspace │ └── contents.xcworkspacedata ├── Nutrition Cal.xcworkspace └── contents.xcworkspacedata ├── Podfile ├── privacy-policy.md ├── .gitignore ├── Podfile.lock └── README.md /Pods/MaterialDesignColor/LICENSE.txt: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Pods/Headers/Private/PNChart/PNBar.h: -------------------------------------------------------------------------------- 1 | ../../../PNChart/PNChart/PNBar.h -------------------------------------------------------------------------------- /Pods/Headers/Private/PNChart/PNChart.h: -------------------------------------------------------------------------------- 1 | ../../../PNChart/PNChart/PNChart.h -------------------------------------------------------------------------------- /Pods/Headers/Private/PNChart/PNColor.h: -------------------------------------------------------------------------------- 1 | ../../../PNChart/PNChart/PNColor.h -------------------------------------------------------------------------------- /Pods/Headers/Private/PNChart/PNBarChart.h: -------------------------------------------------------------------------------- 1 | ../../../PNChart/PNChart/PNBarChart.h -------------------------------------------------------------------------------- /Pods/Headers/Private/PNChart/PNPieChart.h: -------------------------------------------------------------------------------- 1 | ../../../PNChart/PNChart/PNPieChart.h -------------------------------------------------------------------------------- /icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/icon.png -------------------------------------------------------------------------------- /Pods/Headers/Private/PNChart/PNChartLabel.h: -------------------------------------------------------------------------------- 1 | ../../../PNChart/PNChart/PNChartLabel.h -------------------------------------------------------------------------------- /Pods/Headers/Private/PNChart/PNLineChart.h: -------------------------------------------------------------------------------- 1 | ../../../PNChart/PNChart/PNLineChart.h -------------------------------------------------------------------------------- /Pods/Headers/Private/PNChart/PNRadarChart.h: -------------------------------------------------------------------------------- 1 | ../../../PNChart/PNChart/PNRadarChart.h -------------------------------------------------------------------------------- /Pods/Headers/Private/FSCalendar/FSCalendar.h: -------------------------------------------------------------------------------- 1 | ../../../FSCalendar/FSCalendar/FSCalendar.h -------------------------------------------------------------------------------- /Pods/Headers/Private/PNChart/PNChartDelegate.h: -------------------------------------------------------------------------------- 1 | ../../../PNChart/PNChart/PNChartDelegate.h -------------------------------------------------------------------------------- /Pods/Headers/Private/PNChart/PNCircleChart.h: -------------------------------------------------------------------------------- 1 | ../../../PNChart/PNChart/PNCircleChart.h -------------------------------------------------------------------------------- /Pods/Headers/Private/PNChart/PNGenericChart.h: -------------------------------------------------------------------------------- 1 | ../../../PNChart/PNChart/PNGenericChart.h -------------------------------------------------------------------------------- /Pods/Headers/Private/PNChart/PNLineChartData.h: -------------------------------------------------------------------------------- 1 | ../../../PNChart/PNChart/PNLineChartData.h -------------------------------------------------------------------------------- /Pods/Headers/Private/PNChart/PNScatterChart.h: -------------------------------------------------------------------------------- 1 | ../../../PNChart/PNChart/PNScatterChart.h -------------------------------------------------------------------------------- /screenShots/1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/screenShots/1.jpg -------------------------------------------------------------------------------- /screenShots/2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/screenShots/2.jpg -------------------------------------------------------------------------------- /screenShots/3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/screenShots/3.jpg -------------------------------------------------------------------------------- /screenShots/4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/screenShots/4.jpg -------------------------------------------------------------------------------- /Pods/Headers/Private/FSCalendar/FSCalendarCell.h: -------------------------------------------------------------------------------- 1 | ../../../FSCalendar/FSCalendar/FSCalendarCell.h -------------------------------------------------------------------------------- /Pods/Headers/Private/PNChart/PNLineChartDataItem.h: -------------------------------------------------------------------------------- 1 | ../../../PNChart/PNChart/PNLineChartDataItem.h -------------------------------------------------------------------------------- /Pods/Headers/Private/PNChart/PNPieChartDataItem.h: -------------------------------------------------------------------------------- 1 | ../../../PNChart/PNChart/PNPieChartDataItem.h -------------------------------------------------------------------------------- /Pods/Headers/Private/PNChart/PNRadarChartDataItem.h: -------------------------------------------------------------------------------- 1 | ../../../PNChart/PNChart/PNRadarChartDataItem.h -------------------------------------------------------------------------------- /Pods/Headers/Private/PNChart/PNScatterChartData.h: -------------------------------------------------------------------------------- 1 | ../../../PNChart/PNChart/PNScatterChartData.h -------------------------------------------------------------------------------- /Pods/Headers/Private/UICountingLabel/UICountingLabel.h: -------------------------------------------------------------------------------- 1 | ../../../UICountingLabel/UICountingLabel.h -------------------------------------------------------------------------------- /Pods/Headers/Private/FSCalendar/FSCalendarHeader.h: -------------------------------------------------------------------------------- 1 | ../../../FSCalendar/FSCalendar/FSCalendarHeader.h -------------------------------------------------------------------------------- /Pods/Headers/Private/FSCalendar/NSDate+FSExtension.h: -------------------------------------------------------------------------------- 1 | ../../../FSCalendar/FSCalendar/NSDate+FSExtension.h -------------------------------------------------------------------------------- /Pods/Headers/Private/FSCalendar/UIView+FSExtension.h: -------------------------------------------------------------------------------- 1 | ../../../FSCalendar/FSCalendar/UIView+FSExtension.h -------------------------------------------------------------------------------- /Pods/Headers/Private/PNChart/PNScatterChartDataItem.h: -------------------------------------------------------------------------------- 1 | ../../../PNChart/PNChart/PNScatterChartDataItem.h -------------------------------------------------------------------------------- /Pods/Headers/Private/FSCalendar/FSCalendarAppearance.h: -------------------------------------------------------------------------------- 1 | ../../../FSCalendar/FSCalendar/FSCalendarAppearance.h -------------------------------------------------------------------------------- /Pods/Headers/Private/FSCalendar/FSCalendarConstance.h: -------------------------------------------------------------------------------- 1 | ../../../FSCalendar/FSCalendar/FSCalendarConstance.h -------------------------------------------------------------------------------- /Pods/Headers/Private/FSCalendar/FSCalendarFlowLayout.h: -------------------------------------------------------------------------------- 1 | ../../../FSCalendar/FSCalendar/FSCalendarFlowLayout.h -------------------------------------------------------------------------------- /Pods/Headers/Private/FSCalendar/NSString+FSExtension.h: -------------------------------------------------------------------------------- 1 | ../../../FSCalendar/FSCalendar/NSString+FSExtension.h -------------------------------------------------------------------------------- /screenShots/tutorial.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/screenShots/tutorial.gif -------------------------------------------------------------------------------- /Pods/Headers/Private/FSCalendar/FSCalendar+IBExtension.h: -------------------------------------------------------------------------------- 1 | ../../../FSCalendar/FSCalendar/FSCalendar+IBExtension.h -------------------------------------------------------------------------------- /Pods/Headers/Private/FSCalendar/FSCalendarDynamicHeader.h: -------------------------------------------------------------------------------- 1 | ../../../FSCalendar/FSCalendar/FSCalendarDynamicHeader.h -------------------------------------------------------------------------------- /Pods/Headers/Private/FSCalendar/FSCalendarStickyHeader.h: -------------------------------------------------------------------------------- 1 | ../../../FSCalendar/FSCalendar/FSCalendarStickyHeader.h -------------------------------------------------------------------------------- /Pods/Headers/Private/FSCalendar/FSCalendarCollectionView.h: -------------------------------------------------------------------------------- 1 | ../../../FSCalendar/FSCalendar/FSCalendarCollectionView.h -------------------------------------------------------------------------------- /Pods/Target Support Files/PNChart/PNChart-prefix.pch: -------------------------------------------------------------------------------- 1 | #ifdef __OBJC__ 2 | #import 3 | #endif 4 | 5 | -------------------------------------------------------------------------------- /screenShots/readme_header.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/screenShots/readme_header.jpg -------------------------------------------------------------------------------- /Open_Ended_Capstone_Rubric.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Open_Ended_Capstone_Rubric.png -------------------------------------------------------------------------------- /Pods/Headers/Private/RKDropdownAlert/RKDropdownAlert.h: -------------------------------------------------------------------------------- 1 | ../../../RKDropdownAlert/SlingshotDropdownAlert/RKDropdownAlert.h -------------------------------------------------------------------------------- /Pods/Target Support Files/FSCalendar/FSCalendar-prefix.pch: -------------------------------------------------------------------------------- 1 | #ifdef __OBJC__ 2 | #import 3 | #endif 4 | 5 | -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } -------------------------------------------------------------------------------- /Pods/Target Support Files/RKDropdownAlert/RKDropdownAlert-prefix.pch: -------------------------------------------------------------------------------- 1 | #ifdef __OBJC__ 2 | #import 3 | #endif 4 | 5 | -------------------------------------------------------------------------------- /Pods/Target Support Files/UICountingLabel/UICountingLabel-prefix.pch: -------------------------------------------------------------------------------- 1 | #ifdef __OBJC__ 2 | #import 3 | #endif 4 | 5 | -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/actionsIcons/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/tabBarIcons/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } -------------------------------------------------------------------------------- /Pods/Target Support Files/DGRunkeeperSwitch/DGRunkeeperSwitch-prefix.pch: -------------------------------------------------------------------------------- 1 | #ifdef __OBJC__ 2 | #import 3 | #endif 4 | 5 | -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/settingsIcons/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/tutorialImages/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } -------------------------------------------------------------------------------- /Pods/Target Support Files/MaterialDesignColor/MaterialDesignColor-prefix.pch: -------------------------------------------------------------------------------- 1 | #ifdef __OBJC__ 2 | #import 3 | #endif 4 | 5 | -------------------------------------------------------------------------------- /Pods/Target Support Files/NVActivityIndicatorView/NVActivityIndicatorView-prefix.pch: -------------------------------------------------------------------------------- 1 | #ifdef __OBJC__ 2 | #import 3 | #endif 4 | 5 | -------------------------------------------------------------------------------- /Pods/Headers/Private/BGTableViewRowActionWithImage/BGTableViewRowActionWithImage.h: -------------------------------------------------------------------------------- 1 | ../../../BGTableViewRowActionWithImage/BGTableViewRowActionWithImage.h -------------------------------------------------------------------------------- /Pods/Target Support Files/BGTableViewRowActionWithImage/BGTableViewRowActionWithImage-prefix.pch: -------------------------------------------------------------------------------- 1 | #ifdef __OBJC__ 2 | #import 3 | #endif 4 | 5 | -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/dayLine.imageset/dayLine.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/dayLine.imageset/dayLine.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/noImage.imageset/noImage.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/noImage.imageset/noImage.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/AppIcon.appiconset/Icon-40.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/AppIcon.appiconset/Icon-40.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/AppIcon.appiconset/Icon-76.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/AppIcon.appiconset/Icon-76.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/dayLine.imageset/dayLine@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/dayLine.imageset/dayLine@2x.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/dayLine.imageset/dayLine@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/dayLine.imageset/dayLine@3x.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/noImage.imageset/noImage@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/noImage.imageset/noImage@2x.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/noImage.imageset/noImage@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/noImage.imageset/noImage@3x.png -------------------------------------------------------------------------------- /Pods/Target Support Files/PNChart/PNChart.modulemap: -------------------------------------------------------------------------------- 1 | framework module PNChart { 2 | umbrella header "PNChart-umbrella.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/AppIcon.appiconset/Icon-40@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/AppIcon.appiconset/Icon-40@2x.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/AppIcon.appiconset/Icon-40@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/AppIcon.appiconset/Icon-40@3x.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/AppIcon.appiconset/Icon-60@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/AppIcon.appiconset/Icon-60@2x.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/AppIcon.appiconset/Icon-60@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/AppIcon.appiconset/Icon-60@3x.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/AppIcon.appiconset/Icon-76@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/AppIcon.appiconset/Icon-76@2x.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/AppIcon.appiconset/Icon-Small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/AppIcon.appiconset/Icon-Small.png -------------------------------------------------------------------------------- /Pods/Target Support Files/PNChart/PNChart-dummy.m: -------------------------------------------------------------------------------- 1 | #import 2 | @interface PodsDummy_PNChart : NSObject 3 | @end 4 | @implementation PodsDummy_PNChart 5 | @end 6 | -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/AppIcon.appiconset/Icon-Small@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/AppIcon.appiconset/Icon-Small@2x.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/AppIcon.appiconset/Icon-Small@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/AppIcon.appiconset/Icon-Small@3x.png -------------------------------------------------------------------------------- /Pods/Target Support Files/FSCalendar/FSCalendar.modulemap: -------------------------------------------------------------------------------- 1 | framework module FSCalendar { 2 | umbrella header "FSCalendar-umbrella.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/nutritionCal.imageset/nutritionCal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/nutritionCal.imageset/nutritionCal.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/nutritionCal.imageset/nutritionCal@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/nutritionCal.imageset/nutritionCal@2x.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/nutritionCal.imageset/nutritionCal@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/nutritionCal.imageset/nutritionCal@3x.png -------------------------------------------------------------------------------- /Pods/Target Support Files/FSCalendar/FSCalendar-dummy.m: -------------------------------------------------------------------------------- 1 | #import 2 | @interface PodsDummy_FSCalendar : NSObject 3 | @end 4 | @implementation PodsDummy_FSCalendar 5 | @end 6 | -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/launchScreenLogo.imageset/launchScreenLogo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/launchScreenLogo.imageset/launchScreenLogo.png -------------------------------------------------------------------------------- /Pods/Target Support Files/RKDropdownAlert/RKDropdownAlert.modulemap: -------------------------------------------------------------------------------- 1 | framework module RKDropdownAlert { 2 | umbrella header "RKDropdownAlert-umbrella.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | -------------------------------------------------------------------------------- /Pods/Target Support Files/UICountingLabel/UICountingLabel.modulemap: -------------------------------------------------------------------------------- 1 | framework module UICountingLabel { 2 | umbrella header "UICountingLabel-umbrella.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/launchScreenLogo.imageset/launchScreenLogo@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/launchScreenLogo.imageset/launchScreenLogo@2x.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/launchScreenLogo.imageset/launchScreenLogo@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/launchScreenLogo.imageset/launchScreenLogo@3x.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/tutorialImages/tutorial_1.imageset/tutorial_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/tutorialImages/tutorial_1.imageset/tutorial_1.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/tutorialImages/tutorial_2.imageset/tutorial_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/tutorialImages/tutorial_2.imageset/tutorial_2.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/tutorialImages/tutorial_3.imageset/tutorial_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/tutorialImages/tutorial_3.imageset/tutorial_3.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/tutorialImages/tutorial_4.imageset/tutorial_4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/tutorialImages/tutorial_4.imageset/tutorial_4.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/tutorialImages/tutorial_5.imageset/tutorial_5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/tutorialImages/tutorial_5.imageset/tutorial_5.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/tutorialImages/tutorial_6.imageset/tutorial_6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/tutorialImages/tutorial_6.imageset/tutorial_6.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/tutorialImages/tutorial_7.imageset/tutorial_7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/tutorialImages/tutorial_7.imageset/tutorial_7.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/skipTutorialButton.imageset/skipTutorialButton.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/skipTutorialButton.imageset/skipTutorialButton.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/tutorialImages/tutorial_1.imageset/tutorial_1@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/tutorialImages/tutorial_1.imageset/tutorial_1@2x.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/tutorialImages/tutorial_1.imageset/tutorial_1@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/tutorialImages/tutorial_1.imageset/tutorial_1@3x.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/tutorialImages/tutorial_2.imageset/tutorial_2@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/tutorialImages/tutorial_2.imageset/tutorial_2@2x.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/tutorialImages/tutorial_2.imageset/tutorial_2@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/tutorialImages/tutorial_2.imageset/tutorial_2@3x.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/tutorialImages/tutorial_3.imageset/tutorial_3@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/tutorialImages/tutorial_3.imageset/tutorial_3@2x.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/tutorialImages/tutorial_3.imageset/tutorial_3@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/tutorialImages/tutorial_3.imageset/tutorial_3@3x.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/tutorialImages/tutorial_4.imageset/tutorial_4@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/tutorialImages/tutorial_4.imageset/tutorial_4@2x.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/tutorialImages/tutorial_4.imageset/tutorial_4@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/tutorialImages/tutorial_4.imageset/tutorial_4@3x.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/tutorialImages/tutorial_5.imageset/tutorial_5@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/tutorialImages/tutorial_5.imageset/tutorial_5@2x.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/tutorialImages/tutorial_5.imageset/tutorial_5@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/tutorialImages/tutorial_5.imageset/tutorial_5@3x.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/tutorialImages/tutorial_6.imageset/tutorial_6@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/tutorialImages/tutorial_6.imageset/tutorial_6@2x.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/tutorialImages/tutorial_6.imageset/tutorial_6@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/tutorialImages/tutorial_6.imageset/tutorial_6@3x.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/tutorialImages/tutorial_7.imageset/tutorial_7@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/tutorialImages/tutorial_7.imageset/tutorial_7@2x.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/tutorialImages/tutorial_7.imageset/tutorial_7@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/tutorialImages/tutorial_7.imageset/tutorial_7@3x.png -------------------------------------------------------------------------------- /Pods/Target Support Files/DGRunkeeperSwitch/DGRunkeeperSwitch.modulemap: -------------------------------------------------------------------------------- 1 | framework module DGRunkeeperSwitch { 2 | umbrella header "DGRunkeeperSwitch-umbrella.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | -------------------------------------------------------------------------------- /Pods/Target Support Files/Pods-Nutrition Cal/Pods-Nutrition Cal.modulemap: -------------------------------------------------------------------------------- 1 | framework module Pods_Nutrition_Cal { 2 | umbrella header "Pods-Nutrition Cal-umbrella.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | -------------------------------------------------------------------------------- /Pods/Target Support Files/RKDropdownAlert/RKDropdownAlert-dummy.m: -------------------------------------------------------------------------------- 1 | #import 2 | @interface PodsDummy_RKDropdownAlert : NSObject 3 | @end 4 | @implementation PodsDummy_RKDropdownAlert 5 | @end 6 | -------------------------------------------------------------------------------- /Pods/Target Support Files/UICountingLabel/UICountingLabel-dummy.m: -------------------------------------------------------------------------------- 1 | #import 2 | @interface PodsDummy_UICountingLabel : NSObject 3 | @end 4 | @implementation PodsDummy_UICountingLabel 5 | @end 6 | -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/actionsIcons/eatActionIcon.imageset/eatActionIcon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/actionsIcons/eatActionIcon.imageset/eatActionIcon.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/skipTutorialButton.imageset/skipTutorialButton@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/skipTutorialButton.imageset/skipTutorialButton@2x.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/skipTutorialButton.imageset/skipTutorialButton@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/skipTutorialButton.imageset/skipTutorialButton@3x.png -------------------------------------------------------------------------------- /Pods/Target Support Files/DGRunkeeperSwitch/DGRunkeeperSwitch-dummy.m: -------------------------------------------------------------------------------- 1 | #import 2 | @interface PodsDummy_DGRunkeeperSwitch : NSObject 3 | @end 4 | @implementation PodsDummy_DGRunkeeperSwitch 5 | @end 6 | -------------------------------------------------------------------------------- /Pods/Target Support Files/MaterialDesignColor/MaterialDesignColor.modulemap: -------------------------------------------------------------------------------- 1 | framework module MaterialDesignColor { 2 | umbrella header "MaterialDesignColor-umbrella.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/actionsIcons/eatActionIcon.imageset/eatActionIcon@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/actionsIcons/eatActionIcon.imageset/eatActionIcon@2x.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/actionsIcons/eatActionIcon.imageset/eatActionIcon@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/actionsIcons/eatActionIcon.imageset/eatActionIcon@3x.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/actionsIcons/saveActionIcon.imageset/saveActionIcon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/actionsIcons/saveActionIcon.imageset/saveActionIcon.png -------------------------------------------------------------------------------- /Pods/Target Support Files/Pods-Nutrition Cal/Pods-Nutrition Cal-dummy.m: -------------------------------------------------------------------------------- 1 | #import 2 | @interface PodsDummy_Pods_Nutrition_Cal : NSObject 3 | @end 4 | @implementation PodsDummy_Pods_Nutrition_Cal 5 | @end 6 | -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/actionsIcons/deleteActionIcon.imageset/deleteActionIcon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/actionsIcons/deleteActionIcon.imageset/deleteActionIcon.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/actionsIcons/saveActionIcon.imageset/saveActionIcon@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/actionsIcons/saveActionIcon.imageset/saveActionIcon@2x.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/actionsIcons/saveActionIcon.imageset/saveActionIcon@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/actionsIcons/saveActionIcon.imageset/saveActionIcon@3x.png -------------------------------------------------------------------------------- /Pods/Target Support Files/MaterialDesignColor/MaterialDesignColor-dummy.m: -------------------------------------------------------------------------------- 1 | #import 2 | @interface PodsDummy_MaterialDesignColor : NSObject 3 | @end 4 | @implementation PodsDummy_MaterialDesignColor 5 | @end 6 | -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/actionsIcons/deleteActionIcon.imageset/deleteActionIcon@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/actionsIcons/deleteActionIcon.imageset/deleteActionIcon@2x.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/actionsIcons/deleteActionIcon.imageset/deleteActionIcon@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/actionsIcons/deleteActionIcon.imageset/deleteActionIcon@3x.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/settingsIcons/aboutSettingsIcon.imageset/aboutSettingsIcon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/settingsIcons/aboutSettingsIcon.imageset/aboutSettingsIcon.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/settingsIcons/moreSettingsIcon.imageset/moreSettingsIcon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/settingsIcons/moreSettingsIcon.imageset/moreSettingsIcon.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/settingsIcons/rateSettingsIcon.imageset/rateSettingsIcon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/settingsIcons/rateSettingsIcon.imageset/rateSettingsIcon.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/settingsIcons/shareSettingsIcon.imageset/shareSettingsIcon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/settingsIcons/shareSettingsIcon.imageset/shareSettingsIcon.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/settingsIcons/syncSettingsIcon.imageset/syncSettingsIcon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/settingsIcons/syncSettingsIcon.imageset/syncSettingsIcon.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/tabBarIcons/foodsTabBarButton.imageset/foodsTabBarButton.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/tabBarIcons/foodsTabBarButton.imageset/foodsTabBarButton.png -------------------------------------------------------------------------------- /Pods/Target Support Files/NVActivityIndicatorView/NVActivityIndicatorView.modulemap: -------------------------------------------------------------------------------- 1 | framework module NVActivityIndicatorView { 2 | umbrella header "NVActivityIndicatorView-umbrella.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/settingsIcons/moreSettingsIcon.imageset/moreSettingsIcon@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/settingsIcons/moreSettingsIcon.imageset/moreSettingsIcon@2x.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/settingsIcons/moreSettingsIcon.imageset/moreSettingsIcon@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/settingsIcons/moreSettingsIcon.imageset/moreSettingsIcon@3x.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/settingsIcons/rateSettingsIcon.imageset/rateSettingsIcon@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/settingsIcons/rateSettingsIcon.imageset/rateSettingsIcon@2x.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/settingsIcons/rateSettingsIcon.imageset/rateSettingsIcon@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/settingsIcons/rateSettingsIcon.imageset/rateSettingsIcon@3x.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/settingsIcons/replaySettingsIcon.imageset/replaySettingsIcon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/settingsIcons/replaySettingsIcon.imageset/replaySettingsIcon.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/settingsIcons/syncSettingsIcon.imageset/syncSettingsIcon@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/settingsIcons/syncSettingsIcon.imageset/syncSettingsIcon@2x.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/settingsIcons/syncSettingsIcon.imageset/syncSettingsIcon@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/settingsIcons/syncSettingsIcon.imageset/syncSettingsIcon@3x.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/tabBarIcons/foodsTabBarButton.imageset/foodsTabBarButton@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/tabBarIcons/foodsTabBarButton.imageset/foodsTabBarButton@2x.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/tabBarIcons/foodsTabBarButton.imageset/foodsTabBarButton@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/tabBarIcons/foodsTabBarButton.imageset/foodsTabBarButton@3x.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/tabBarIcons/historyTabBarButton.imageset/historyTabBarButton.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/tabBarIcons/historyTabBarButton.imageset/historyTabBarButton.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/settingsIcons/aboutSettingsIcon.imageset/aboutSettingsIcon@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/settingsIcons/aboutSettingsIcon.imageset/aboutSettingsIcon@2x.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/settingsIcons/aboutSettingsIcon.imageset/aboutSettingsIcon@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/settingsIcons/aboutSettingsIcon.imageset/aboutSettingsIcon@3x.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/settingsIcons/replaySettingsIcon.imageset/replaySettingsIcon@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/settingsIcons/replaySettingsIcon.imageset/replaySettingsIcon@2x.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/settingsIcons/replaySettingsIcon.imageset/replaySettingsIcon@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/settingsIcons/replaySettingsIcon.imageset/replaySettingsIcon@3x.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/settingsIcons/shareSettingsIcon.imageset/shareSettingsIcon@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/settingsIcons/shareSettingsIcon.imageset/shareSettingsIcon@2x.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/settingsIcons/shareSettingsIcon.imageset/shareSettingsIcon@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/settingsIcons/shareSettingsIcon.imageset/shareSettingsIcon@3x.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/tabBarIcons/historyTabBarButton.imageset/historyTabBarButton@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/tabBarIcons/historyTabBarButton.imageset/historyTabBarButton@2x.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/tabBarIcons/historyTabBarButton.imageset/historyTabBarButton@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/tabBarIcons/historyTabBarButton.imageset/historyTabBarButton@3x.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/tabBarIcons/settingsTabBarButton.imageset/settingsTabBarButton.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/tabBarIcons/settingsTabBarButton.imageset/settingsTabBarButton.png -------------------------------------------------------------------------------- /Pods/Target Support Files/DGRunkeeperSwitch/DGRunkeeperSwitch-umbrella.h: -------------------------------------------------------------------------------- 1 | #import 2 | 3 | 4 | FOUNDATION_EXPORT double DGRunkeeperSwitchVersionNumber; 5 | FOUNDATION_EXPORT const unsigned char DGRunkeeperSwitchVersionString[]; 6 | 7 | -------------------------------------------------------------------------------- /Pods/Target Support Files/NVActivityIndicatorView/NVActivityIndicatorView-dummy.m: -------------------------------------------------------------------------------- 1 | #import 2 | @interface PodsDummy_NVActivityIndicatorView : NSObject 3 | @end 4 | @implementation PodsDummy_NVActivityIndicatorView 5 | @end 6 | -------------------------------------------------------------------------------- /Nutrition Cal.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/tabBarIcons/settingsTabBarButton.imageset/settingsTabBarButton@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/tabBarIcons/settingsTabBarButton.imageset/settingsTabBarButton@2x.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/tabBarIcons/settingsTabBarButton.imageset/settingsTabBarButton@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/tabBarIcons/settingsTabBarButton.imageset/settingsTabBarButton@3x.png -------------------------------------------------------------------------------- /Pods/Target Support Files/Pods-Nutrition Cal/Pods-Nutrition Cal-umbrella.h: -------------------------------------------------------------------------------- 1 | #import 2 | 3 | 4 | FOUNDATION_EXPORT double Pods_Nutrition_CalVersionNumber; 5 | FOUNDATION_EXPORT const unsigned char Pods_Nutrition_CalVersionString[]; 6 | 7 | -------------------------------------------------------------------------------- /Pods/Target Support Files/MaterialDesignColor/MaterialDesignColor-umbrella.h: -------------------------------------------------------------------------------- 1 | #import 2 | 3 | 4 | FOUNDATION_EXPORT double MaterialDesignColorVersionNumber; 5 | FOUNDATION_EXPORT const unsigned char MaterialDesignColorVersionString[]; 6 | 7 | -------------------------------------------------------------------------------- /Pods/Target Support Files/BGTableViewRowActionWithImage/BGTableViewRowActionWithImage.modulemap: -------------------------------------------------------------------------------- 1 | framework module BGTableViewRowActionWithImage { 2 | umbrella header "BGTableViewRowActionWithImage-umbrella.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/actionsIcons/deleteDayEntryActionIcon.imageset/deleteDayEntryActionIcon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/actionsIcons/deleteDayEntryActionIcon.imageset/deleteDayEntryActionIcon.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/tabBarIcons/foodsTabBarButtonSelected.imageset/foodsTabBarButtonSelected.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/tabBarIcons/foodsTabBarButtonSelected.imageset/foodsTabBarButtonSelected.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/actionsIcons/deleteDayEntryActionIcon.imageset/deleteDayEntryActionIcon@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/actionsIcons/deleteDayEntryActionIcon.imageset/deleteDayEntryActionIcon@2x.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/actionsIcons/deleteDayEntryActionIcon.imageset/deleteDayEntryActionIcon@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/actionsIcons/deleteDayEntryActionIcon.imageset/deleteDayEntryActionIcon@3x.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/tabBarIcons/foodsTabBarButtonSelected.imageset/foodsTabBarButtonSelected@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/tabBarIcons/foodsTabBarButtonSelected.imageset/foodsTabBarButtonSelected@2x.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/tabBarIcons/foodsTabBarButtonSelected.imageset/foodsTabBarButtonSelected@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/tabBarIcons/foodsTabBarButtonSelected.imageset/foodsTabBarButtonSelected@3x.png -------------------------------------------------------------------------------- /Pods/Target Support Files/BGTableViewRowActionWithImage/BGTableViewRowActionWithImage-dummy.m: -------------------------------------------------------------------------------- 1 | #import 2 | @interface PodsDummy_BGTableViewRowActionWithImage : NSObject 3 | @end 4 | @implementation PodsDummy_BGTableViewRowActionWithImage 5 | @end 6 | -------------------------------------------------------------------------------- /Pods/Target Support Files/NVActivityIndicatorView/NVActivityIndicatorView-umbrella.h: -------------------------------------------------------------------------------- 1 | #import 2 | 3 | 4 | FOUNDATION_EXPORT double NVActivityIndicatorViewVersionNumber; 5 | FOUNDATION_EXPORT const unsigned char NVActivityIndicatorViewVersionString[]; 6 | 7 | -------------------------------------------------------------------------------- /Pods/Target Support Files/RKDropdownAlert/RKDropdownAlert-umbrella.h: -------------------------------------------------------------------------------- 1 | #import 2 | 3 | #import "RKDropdownAlert.h" 4 | 5 | FOUNDATION_EXPORT double RKDropdownAlertVersionNumber; 6 | FOUNDATION_EXPORT const unsigned char RKDropdownAlertVersionString[]; 7 | 8 | -------------------------------------------------------------------------------- /Pods/Target Support Files/UICountingLabel/UICountingLabel-umbrella.h: -------------------------------------------------------------------------------- 1 | #import 2 | 3 | #import "UICountingLabel.h" 4 | 5 | FOUNDATION_EXPORT double UICountingLabelVersionNumber; 6 | FOUNDATION_EXPORT const unsigned char UICountingLabelVersionString[]; 7 | 8 | -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/tabBarIcons/historyTabBarButtonSelected.imageset/historyTabBarButtonSelected.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/tabBarIcons/historyTabBarButtonSelected.imageset/historyTabBarButtonSelected.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/tabBarIcons/settingsTabBarButtonSelected.imageset/settingsTabBarButtonSelected.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/tabBarIcons/settingsTabBarButtonSelected.imageset/settingsTabBarButtonSelected.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/tabBarIcons/historyTabBarButtonSelected.imageset/historyTabBarButtonSelected@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/tabBarIcons/historyTabBarButtonSelected.imageset/historyTabBarButtonSelected@2x.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/tabBarIcons/historyTabBarButtonSelected.imageset/historyTabBarButtonSelected@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/tabBarIcons/historyTabBarButtonSelected.imageset/historyTabBarButtonSelected@3x.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/tabBarIcons/settingsTabBarButtonSelected.imageset/settingsTabBarButtonSelected@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/tabBarIcons/settingsTabBarButtonSelected.imageset/settingsTabBarButtonSelected@2x.png -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/tabBarIcons/settingsTabBarButtonSelected.imageset/settingsTabBarButtonSelected@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/omaralbeik/NutritionCal/HEAD/Nutrition Cal/Assets.xcassets/tabBarIcons/settingsTabBarButtonSelected.imageset/settingsTabBarButtonSelected@3x.png -------------------------------------------------------------------------------- /Pods/PNChart/PNChart/PNChartLabel.h: -------------------------------------------------------------------------------- 1 | // 2 | // PNChartLabel.h 3 | // PNChart 4 | // 5 | // Created by kevin on 10/3/13. 6 | // Copyright (c) 2013年 kevinzhow. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface PNChartLabel : UILabel 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /Pods/Target Support Files/RKDropdownAlert/RKDropdownAlert.xcconfig: -------------------------------------------------------------------------------- 1 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 2 | HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Private/RKDropdownAlert" "${PODS_ROOT}/Headers/Public" 3 | PODS_ROOT = ${SRCROOT} 4 | SKIP_INSTALL = YES -------------------------------------------------------------------------------- /Pods/Target Support Files/UICountingLabel/UICountingLabel.xcconfig: -------------------------------------------------------------------------------- 1 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 2 | HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Private/UICountingLabel" "${PODS_ROOT}/Headers/Public" 3 | PODS_ROOT = ${SRCROOT} 4 | SKIP_INSTALL = YES -------------------------------------------------------------------------------- /Nutrition Cal/Nutrition Cal.entitlements: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | com.apple.developer.healthkit 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Nutrition Cal.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /Pods/Target Support Files/BGTableViewRowActionWithImage/BGTableViewRowActionWithImage-umbrella.h: -------------------------------------------------------------------------------- 1 | #import 2 | 3 | #import "BGTableViewRowActionWithImage.h" 4 | 5 | FOUNDATION_EXPORT double BGTableViewRowActionWithImageVersionNumber; 6 | FOUNDATION_EXPORT const unsigned char BGTableViewRowActionWithImageVersionString[]; 7 | 8 | -------------------------------------------------------------------------------- /Pods/Target Support Files/FSCalendar/FSCalendar.xcconfig: -------------------------------------------------------------------------------- 1 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 2 | HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Private/FSCalendar" "${PODS_ROOT}/Headers/Public" 3 | OTHER_LDFLAGS = -framework "QuartzCore" -framework "UIKit" 4 | PODS_ROOT = ${SRCROOT} 5 | SKIP_INSTALL = YES -------------------------------------------------------------------------------- /Pods/FSCalendar/FSCalendar/FSCalendarCollectionView.h: -------------------------------------------------------------------------------- 1 | // 2 | // FSCalendarCollectionView.h 3 | // FSCalendar 4 | // 5 | // Created by Wenchao Ding on 10/25/15. 6 | // Copyright (c) 2015 wenchaoios. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface FSCalendarCollectionView : UICollectionView 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /Pods/Target Support Files/MaterialDesignColor/MaterialDesignColor.xcconfig: -------------------------------------------------------------------------------- 1 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 2 | HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Private/MaterialDesignColor" "${PODS_ROOT}/Headers/Public" 3 | OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS" 4 | PODS_ROOT = ${SRCROOT} 5 | SKIP_INSTALL = YES -------------------------------------------------------------------------------- /Pods/Target Support Files/BGTableViewRowActionWithImage/BGTableViewRowActionWithImage.xcconfig: -------------------------------------------------------------------------------- 1 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 2 | HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Private/BGTableViewRowActionWithImage" "${PODS_ROOT}/Headers/Public" 3 | OTHER_LDFLAGS = -framework "UIKit" 4 | PODS_ROOT = ${SRCROOT} 5 | SKIP_INSTALL = YES -------------------------------------------------------------------------------- /Pods/Target Support Files/PNChart/PNChart.xcconfig: -------------------------------------------------------------------------------- 1 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 2 | HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Private/PNChart" "${PODS_ROOT}/Headers/Public" 3 | OTHER_LDFLAGS = -framework "CoreGraphics" -framework "Foundation" -framework "QuartzCore" -framework "UIKit" 4 | PODS_ROOT = ${SRCROOT} 5 | SKIP_INSTALL = YES -------------------------------------------------------------------------------- /Pods/FSCalendar/FSCalendar/NSString+FSExtension.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSString+FSExtension.h 3 | // FSCalendar 4 | // 5 | // Created by Wenchao Ding on 8/29/15. 6 | // Copyright (c) 2015 wenchaoios. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface NSString (FSExtension) 12 | 13 | - (NSDate *)fs_dateWithFormat:(NSString *)format; 14 | - (NSDate *)fs_date; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /Pods/Target Support Files/DGRunkeeperSwitch/DGRunkeeperSwitch.xcconfig: -------------------------------------------------------------------------------- 1 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 2 | HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Private/DGRunkeeperSwitch" "${PODS_ROOT}/Headers/Public" 3 | OTHER_LDFLAGS = -framework "Foundation" -framework "UIKit" 4 | OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS" 5 | PODS_ROOT = ${SRCROOT} 6 | SKIP_INSTALL = YES -------------------------------------------------------------------------------- /Pods/FSCalendar/FSCalendar/FSCalendarFlowLayout.h: -------------------------------------------------------------------------------- 1 | // 2 | // FSCalendarFlowLayout.h 3 | // FSCalendar 4 | // 5 | // Created by Wenchao Ding on 10/25/15. 6 | // Copyright (c) 2015 wenchaoios. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @class FSCalendar; 12 | 13 | @interface FSCalendarFlowLayout : UICollectionViewFlowLayout 14 | 15 | @property (weak, nonatomic) FSCalendar *calendar; 16 | 17 | @end 18 | -------------------------------------------------------------------------------- /Pods/PNChart/PNChart/PNLineChartDataItem.h: -------------------------------------------------------------------------------- 1 | // 2 | // Created by Jörg Polakowski on 14/12/13. 3 | // Copyright (c) 2013 kevinzhow. All rights reserved. 4 | // 5 | 6 | #import 7 | #import 8 | 9 | @interface PNLineChartDataItem : NSObject 10 | 11 | + (PNLineChartDataItem *)dataItemWithY:(CGFloat)y; 12 | 13 | @property (readonly) CGFloat y; // should be within the y range 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /Pods/Target Support Files/NVActivityIndicatorView/NVActivityIndicatorView.xcconfig: -------------------------------------------------------------------------------- 1 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 2 | HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Private/NVActivityIndicatorView" "${PODS_ROOT}/Headers/Public" 3 | OTHER_LDFLAGS = -framework "QuartzCore" -framework "UIKit" 4 | OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS" 5 | PODS_ROOT = ${SRCROOT} 6 | SKIP_INSTALL = YES -------------------------------------------------------------------------------- /Pods/NVActivityIndicatorView/NVActivityIndicatorView/NVActivityIndicatorAnimationDelegate.swift: -------------------------------------------------------------------------------- 1 | // 2 | // NVActivityIndicatorDelegate.swift 3 | // NVActivityIndicatorViewDemo 4 | // 5 | // Created by Nguyen Vinh on 7/23/15. 6 | // Copyright (c) 2015 Nguyen Vinh. All rights reserved. 7 | // 8 | 9 | import UIKit 10 | 11 | protocol NVActivityIndicatorAnimationDelegate { 12 | func setUpAnimationInLayer(layer: CALayer, size: CGSize, color: UIColor) 13 | } 14 | -------------------------------------------------------------------------------- /Pods/FSCalendar/FSCalendar/UIView+FSExtension.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIView+FSExtension.h 3 | // Pods 4 | // 5 | // Created by Wenchao Ding on 29/1/15. 6 | // 7 | // 8 | 9 | #import 10 | 11 | @interface UIView (FSExtension) 12 | 13 | @property (nonatomic) CGFloat fs_width; 14 | @property (nonatomic) CGFloat fs_height; 15 | 16 | @property (nonatomic) CGFloat fs_top; 17 | @property (nonatomic) CGFloat fs_left; 18 | @property (nonatomic) CGFloat fs_bottom; 19 | @property (nonatomic) CGFloat fs_right; 20 | 21 | @end 22 | -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/dayLine.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "dayLine.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "filename" : "dayLine@2x.png", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "filename" : "dayLine@3x.png", 16 | "scale" : "3x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/noImage.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "noImage.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "filename" : "noImage@2x.png", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "filename" : "noImage@3x.png", 16 | "scale" : "3x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Podfile: -------------------------------------------------------------------------------- 1 | # Uncomment this line to define a global platform for your project 2 | # platform :ios, '8.0' 3 | # Uncomment this line if you're using Swift 4 | # use_frameworks! 5 | 6 | target 'Nutrition Cal' do 7 | 8 | platform :ios, "8.0" 9 | use_frameworks! 10 | 11 | pod 'FSCalendar', '~> 1.6' 12 | pod 'MaterialDesignColor', '~> 1.3' 13 | pod 'NVActivityIndicatorView', '~> 2.1' 14 | pod 'BGTableViewRowActionWithImage', '~> 0.1' 15 | pod 'PNChart', '~> 0.8' 16 | pod 'RKDropdownAlert', '~> 0.3' 17 | pod 'DGRunkeeperSwitch', '~> 1.1' 18 | 19 | end -------------------------------------------------------------------------------- /Pods/PNChart/PNChart/PNRadarChartDataItem.h: -------------------------------------------------------------------------------- 1 | // 2 | // PNRadarChartDataItem.h 3 | // PNChartDemo 4 | // 5 | // Created by Lei on 15/7/1. 6 | // Copyright (c) 2015年 kevinzhow. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface PNRadarChartDataItem : NSObject 12 | 13 | + (instancetype)dataItemWithValue:(CGFloat)value 14 | description:(NSString *)description; 15 | 16 | @property (nonatomic) CGFloat value; 17 | @property (nonatomic,copy) NSString *textDescription; 18 | 19 | @end 20 | -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/nutritionCal.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "nutritionCal.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "filename" : "nutritionCal@2x.png", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "filename" : "nutritionCal@3x.png", 16 | "scale" : "3x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/tutorialImages/tutorial_1.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "tutorial_1.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "filename" : "tutorial_1@2x.png", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "filename" : "tutorial_1@3x.png", 16 | "scale" : "3x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/tutorialImages/tutorial_2.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "tutorial_2.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "filename" : "tutorial_2@2x.png", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "filename" : "tutorial_2@3x.png", 16 | "scale" : "3x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/tutorialImages/tutorial_3.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "tutorial_3.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "filename" : "tutorial_3@2x.png", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "filename" : "tutorial_3@3x.png", 16 | "scale" : "3x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/tutorialImages/tutorial_4.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "tutorial_4.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "filename" : "tutorial_4@2x.png", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "filename" : "tutorial_4@3x.png", 16 | "scale" : "3x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/tutorialImages/tutorial_5.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "tutorial_5.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "filename" : "tutorial_5@2x.png", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "filename" : "tutorial_5@3x.png", 16 | "scale" : "3x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/tutorialImages/tutorial_6.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "tutorial_6.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "filename" : "tutorial_6@2x.png", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "filename" : "tutorial_6@3x.png", 16 | "scale" : "3x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/tutorialImages/tutorial_7.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "tutorial_7.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "filename" : "tutorial_7@2x.png", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "filename" : "tutorial_7@3x.png", 16 | "scale" : "3x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Pods/NVActivityIndicatorView/NVActivityIndicatorView/Animations/NVActivityIndicatorAnimationBlank.swift: -------------------------------------------------------------------------------- 1 | // 2 | // NVActivityIndicatorAnimationBlank.swift 3 | // NVActivityIndicatorViewDemo 4 | // 5 | // Created by Nguyen Vinh on 7/23/15. 6 | // Copyright (c) 2015 Nguyen Vinh. All rights reserved. 7 | // 8 | 9 | import UIKit 10 | 11 | class NVActivityIndicatorAnimationBlank: NVActivityIndicatorAnimationDelegate { 12 | 13 | func setUpAnimationInLayer(layer: CALayer, size: CGSize, color: UIColor) { 14 | // Do nothing 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/actionsIcons/eatActionIcon.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "eatActionIcon.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "filename" : "eatActionIcon@2x.png", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "filename" : "eatActionIcon@3x.png", 16 | "scale" : "3x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/launchScreenLogo.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "launchScreenLogo.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "filename" : "launchScreenLogo@2x.png", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "filename" : "launchScreenLogo@3x.png", 16 | "scale" : "3x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/actionsIcons/saveActionIcon.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "saveActionIcon.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "filename" : "saveActionIcon@2x.png", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "filename" : "saveActionIcon@3x.png", 16 | "scale" : "3x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/skipTutorialButton.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "skipTutorialButton.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "filename" : "skipTutorialButton@2x.png", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "filename" : "skipTutorialButton@3x.png", 16 | "scale" : "3x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/actionsIcons/deleteActionIcon.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "deleteActionIcon.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "filename" : "deleteActionIcon@2x.png", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "filename" : "deleteActionIcon@3x.png", 16 | "scale" : "3x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/settingsIcons/aboutSettingsIcon.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "aboutSettingsIcon.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "filename" : "aboutSettingsIcon@2x.png", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "filename" : "aboutSettingsIcon@3x.png", 16 | "scale" : "3x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/settingsIcons/moreSettingsIcon.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "moreSettingsIcon.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "filename" : "moreSettingsIcon@2x.png", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "filename" : "moreSettingsIcon@3x.png", 16 | "scale" : "3x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/settingsIcons/rateSettingsIcon.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "rateSettingsIcon.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "filename" : "rateSettingsIcon@2x.png", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "filename" : "rateSettingsIcon@3x.png", 16 | "scale" : "3x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/settingsIcons/shareSettingsIcon.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "shareSettingsIcon.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "filename" : "shareSettingsIcon@2x.png", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "filename" : "shareSettingsIcon@3x.png", 16 | "scale" : "3x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/settingsIcons/syncSettingsIcon.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "syncSettingsIcon.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "filename" : "syncSettingsIcon@2x.png", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "filename" : "syncSettingsIcon@3x.png", 16 | "scale" : "3x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/tabBarIcons/foodsTabBarButton.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "foodsTabBarButton.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "filename" : "foodsTabBarButton@2x.png", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "filename" : "foodsTabBarButton@3x.png", 16 | "scale" : "3x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/settingsIcons/replaySettingsIcon.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "replaySettingsIcon.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "filename" : "replaySettingsIcon@2x.png", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "filename" : "replaySettingsIcon@3x.png", 16 | "scale" : "3x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Pods/PNChart/PNChart/PNScatterChartDataItem.h: -------------------------------------------------------------------------------- 1 | // 2 | // PNScatterChartDataItem.h 3 | // PNChartDemo 4 | // 5 | // Created by Alireza Arabi on 12/4/14. 6 | // Copyright (c) 2014 kevinzhow. All rights reserved. 7 | // 8 | 9 | #import 10 | #import 11 | 12 | @interface PNScatterChartDataItem : NSObject 13 | 14 | + (PNScatterChartDataItem *)dataItemWithX:(CGFloat)x AndWithY:(CGFloat)y; 15 | 16 | @property (readonly) CGFloat x; // should be within the x range 17 | @property (readonly) CGFloat y; // should be within the y range 18 | 19 | @end 20 | -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/tabBarIcons/historyTabBarButton.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "historyTabBarButton.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "filename" : "historyTabBarButton@2x.png", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "filename" : "historyTabBarButton@3x.png", 16 | "scale" : "3x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/tabBarIcons/settingsTabBarButton.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "settingsTabBarButton.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "filename" : "settingsTabBarButton@2x.png", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "filename" : "settingsTabBarButton@3x.png", 16 | "scale" : "3x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Pods/PNChart/PNChart/PNChart.h: -------------------------------------------------------------------------------- 1 | // 2 | // PNChart.h 3 | // Version 0.1 4 | // PNChart 5 | // 6 | // Created by kevin on 10/3/13. 7 | // Copyright (c) 2013年 kevinzhow. All rights reserved. 8 | // 9 | 10 | #import 11 | #import "PNChart.h" 12 | #import "PNColor.h" 13 | #import "PNLineChart.h" 14 | #import "PNLineChartData.h" 15 | #import "PNLineChartDataItem.h" 16 | #import "PNBarChart.h" 17 | #import "PNCircleChart.h" 18 | #import "PNChartDelegate.h" 19 | #import "PNPieChart.h" 20 | #import "PNScatterChart.h" 21 | #import "PNRadarChart.h" 22 | #import "PNRadarChartDataItem.h" 23 | -------------------------------------------------------------------------------- /Pods/PNChart/PNChart/PNLineChartData.m: -------------------------------------------------------------------------------- 1 | // 2 | // Created by Jörg Polakowski on 14/12/13. 3 | // Copyright (c) 2013 kevinzhow. All rights reserved. 4 | // 5 | 6 | #import "PNLineChartData.h" 7 | 8 | @implementation PNLineChartData 9 | 10 | - (id)init 11 | { 12 | self = [super init]; 13 | if (self) { 14 | [self setupDefaultValues]; 15 | } 16 | 17 | return self; 18 | } 19 | 20 | - (void)setupDefaultValues 21 | { 22 | _inflexionPointStyle = PNLineChartPointStyleNone; 23 | _inflexionPointWidth = 6.f; 24 | _lineWidth = 2.f; 25 | _alpha = 1.f; 26 | } 27 | 28 | @end 29 | -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/actionsIcons/deleteDayEntryActionIcon.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "deleteDayEntryActionIcon.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "filename" : "deleteDayEntryActionIcon@2x.png", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "filename" : "deleteDayEntryActionIcon@3x.png", 16 | "scale" : "3x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/tabBarIcons/foodsTabBarButtonSelected.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "foodsTabBarButtonSelected.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "filename" : "foodsTabBarButtonSelected@2x.png", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "filename" : "foodsTabBarButtonSelected@3x.png", 16 | "scale" : "3x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/tabBarIcons/historyTabBarButtonSelected.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "historyTabBarButtonSelected.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "filename" : "historyTabBarButtonSelected@2x.png", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "filename" : "historyTabBarButtonSelected@3x.png", 16 | "scale" : "3x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/tabBarIcons/settingsTabBarButtonSelected.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "settingsTabBarButtonSelected.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "filename" : "settingsTabBarButtonSelected@2x.png", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "filename" : "settingsTabBarButtonSelected@3x.png", 16 | "scale" : "3x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Pods/BGTableViewRowActionWithImage/BGTableViewRowActionWithImage.h: -------------------------------------------------------------------------------- 1 | // 2 | // BGTableViewRowActionWithImage.h 3 | // BGTableViewRowActionWithImage 4 | // 5 | // Created by Ben Guild on 8/20/15. 6 | // Copyright (c) 2015 Ben Guild. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface BGTableViewRowActionWithImage : UITableViewRowAction 12 | 13 | + (instancetype)rowActionWithStyle:(UITableViewRowActionStyle)style title:(NSString *)title backgroundColor:(UIColor *)backgroundColor image:(UIImage *)image forCellHeight:(NSUInteger)cellHeight handler:(void (^)(UITableViewRowAction *, NSIndexPath *))handler; 14 | 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /Nutrition Cal/AboutViewController.swift: -------------------------------------------------------------------------------- 1 | // 2 | // AboutViewController.swift 3 | // Nutrition Cal 4 | // 5 | // Created by Omar Albeik on 11/26/15. 6 | // Copyright © 2015 Omar Albeik. All rights reserved. 7 | // 8 | 9 | import UIKit 10 | 11 | class AboutViewController: UIViewController { 12 | 13 | @IBOutlet weak var aboutTextView: UITextView! 14 | 15 | override func viewDidLoad() { 16 | super.viewDidLoad() 17 | 18 | } 19 | 20 | override func viewDidLayoutSubviews() { 21 | super.viewDidLayoutSubviews() 22 | 23 | aboutTextView.scrollRectToVisible(CGRect(x: 0, y: 0, width: 1, height: 1), animated: false) 24 | 25 | } 26 | 27 | } 28 | -------------------------------------------------------------------------------- /privacy-policy.md: -------------------------------------------------------------------------------- 1 | #Privacy Policy 2 | ###Last updated: (March 1st, 2016) 3 | 4 | Nutrition Cal doesn't share any of your data, all data is stored locally, and synced offline with Apple Health App 5 | All items nutritions info is from: National Agricultural Library, Agricultural Research Service, U.S. Department of Agriculture http://www.nal.usda.gov/ 6 | we don't save any of your search terms, although they could be shared anonymously with Agricultural Research Service, U.S. Department of Agriculture 7 | please refer to http://www.nal.usda.gov/web-policies-and-important-links for more information 8 | 9 | If you have any questions about this Privacy Policy, please contact us. 10 | -------------------------------------------------------------------------------- /Pods/FSCalendar/FSCalendar/FSCalendarStickyHeader.h: -------------------------------------------------------------------------------- 1 | // 2 | // FSCalendarStaticHeader.h 3 | // FSCalendar 4 | // 5 | // Created by dingwenchao on 9/17/15. 6 | // Copyright (c) 2015 wenchaoios. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @class FSCalendar,FSCalendarAppearance; 12 | 13 | @interface FSCalendarStickyHeader : UICollectionReusableView 14 | 15 | @property (weak, nonatomic) FSCalendar *calendar; 16 | @property (weak, nonatomic) FSCalendarAppearance *appearance; 17 | 18 | @property (weak, nonatomic) UILabel *titleLabel; 19 | 20 | @property (strong, nonatomic) NSArray *weekdayLabels; 21 | @property (strong, nonatomic) NSDate *month; 22 | 23 | @end -------------------------------------------------------------------------------- /Pods/Target Support Files/FSCalendar/FSCalendar-umbrella.h: -------------------------------------------------------------------------------- 1 | #import 2 | 3 | #import "FSCalendar+IBExtension.h" 4 | #import "FSCalendar.h" 5 | #import "FSCalendarAppearance.h" 6 | #import "FSCalendarCell.h" 7 | #import "FSCalendarCollectionView.h" 8 | #import "FSCalendarConstance.h" 9 | #import "FSCalendarDynamicHeader.h" 10 | #import "FSCalendarFlowLayout.h" 11 | #import "FSCalendarHeader.h" 12 | #import "FSCalendarStickyHeader.h" 13 | #import "NSDate+FSExtension.h" 14 | #import "NSString+FSExtension.h" 15 | #import "UIView+FSExtension.h" 16 | 17 | FOUNDATION_EXPORT double FSCalendarVersionNumber; 18 | FOUNDATION_EXPORT const unsigned char FSCalendarVersionString[]; 19 | 20 | -------------------------------------------------------------------------------- /Pods/FSCalendar/FSCalendar/NSString+FSExtension.m: -------------------------------------------------------------------------------- 1 | // 2 | // NSString+FSExtension.m 3 | // FSCalendar 4 | // 5 | // Created by Wenchao Ding on 8/29/15. 6 | // Copyright (c) 2015 wenchaoios. All rights reserved. 7 | // 8 | 9 | #import "NSString+FSExtension.h" 10 | #import "NSDate+FSExtension.h" 11 | 12 | @implementation NSString (FSExtension) 13 | 14 | - (NSDate *)fs_dateWithFormat:(NSString *)format 15 | { 16 | NSDateFormatter *formatter = [NSDateFormatter fs_sharedDateFormatter]; 17 | formatter.dateFormat = format; 18 | return [formatter dateFromString:self]; 19 | } 20 | 21 | - (NSDate *)fs_date 22 | { 23 | return [self fs_dateWithFormat:@"yyyyMMdd"]; 24 | } 25 | 26 | @end 27 | -------------------------------------------------------------------------------- /Pods/PNChart/PNChart/PNScatterChartData.m: -------------------------------------------------------------------------------- 1 | // 2 | // PNScatterChartData.m 3 | // PNChartDemo 4 | // 5 | // Created by Alireza Arabi on 12/4/14. 6 | // Copyright (c) 2014 kevinzhow. All rights reserved. 7 | // 8 | 9 | #import "PNScatterChartData.h" 10 | 11 | @implementation PNScatterChartData 12 | 13 | - (id)init 14 | { 15 | self = [super init]; 16 | if (self) { 17 | [self setupDefaultValues]; 18 | } 19 | 20 | return self; 21 | } 22 | 23 | - (void)setupDefaultValues 24 | { 25 | _inflexionPointStyle = PNScatterChartPointStyleCircle; 26 | _fillColor = [UIColor grayColor]; 27 | _strokeColor = [UIColor clearColor]; 28 | _size = 3 ; 29 | } 30 | 31 | @end 32 | -------------------------------------------------------------------------------- /Pods/PNChart/PNChart/PNLineChartDataItem.m: -------------------------------------------------------------------------------- 1 | // 2 | // Created by Jörg Polakowski on 14/12/13. 3 | // Copyright (c) 2013 kevinzhow. All rights reserved. 4 | // 5 | 6 | #import "PNLineChartDataItem.h" 7 | 8 | @interface PNLineChartDataItem () 9 | 10 | - (id)initWithY:(CGFloat)y; 11 | 12 | @property (readwrite) CGFloat y; // should be within the y range 13 | 14 | @end 15 | 16 | @implementation PNLineChartDataItem 17 | 18 | + (PNLineChartDataItem *)dataItemWithY:(CGFloat)y 19 | { 20 | return [[PNLineChartDataItem alloc] initWithY:y]; 21 | } 22 | 23 | - (id)initWithY:(CGFloat)y 24 | { 25 | if ((self = [super init])) { 26 | self.y = y; 27 | } 28 | 29 | return self; 30 | } 31 | 32 | @end 33 | -------------------------------------------------------------------------------- /Pods/PNChart/PNChart/PNColor.m: -------------------------------------------------------------------------------- 1 | // 2 | // PNColor.m 3 | // PNChart 4 | // 5 | // Created by kevin on 13-6-8. 6 | // Copyright (c) 2013年 kevinzhow. All rights reserved. 7 | // 8 | 9 | #import "PNColor.h" 10 | #import 11 | 12 | @implementation PNColor 13 | 14 | - (UIImage *)imageFromColor:(UIColor *)color 15 | { 16 | CGRect rect = CGRectMake(0, 0, 1, 1); 17 | 18 | UIGraphicsBeginImageContext(rect.size); 19 | CGContextRef context = UIGraphicsGetCurrentContext(); 20 | CGContextSetFillColorWithColor(context, [color CGColor]); 21 | CGContextFillRect(context, rect); 22 | UIImage *img = UIGraphicsGetImageFromCurrentImageContext(); 23 | UIGraphicsEndImageContext(); 24 | 25 | return img; 26 | } 27 | 28 | 29 | @end 30 | -------------------------------------------------------------------------------- /Pods/Target Support Files/PNChart/PNChart-umbrella.h: -------------------------------------------------------------------------------- 1 | #import 2 | 3 | #import "PNBar.h" 4 | #import "PNBarChart.h" 5 | #import "PNChart.h" 6 | #import "PNChartDelegate.h" 7 | #import "PNChartLabel.h" 8 | #import "PNCircleChart.h" 9 | #import "PNColor.h" 10 | #import "PNGenericChart.h" 11 | #import "PNLineChart.h" 12 | #import "PNLineChartData.h" 13 | #import "PNLineChartDataItem.h" 14 | #import "PNPieChart.h" 15 | #import "PNPieChartDataItem.h" 16 | #import "PNRadarChart.h" 17 | #import "PNRadarChartDataItem.h" 18 | #import "PNScatterChart.h" 19 | #import "PNScatterChartData.h" 20 | #import "PNScatterChartDataItem.h" 21 | 22 | FOUNDATION_EXPORT double PNChartVersionNumber; 23 | FOUNDATION_EXPORT const unsigned char PNChartVersionString[]; 24 | 25 | -------------------------------------------------------------------------------- /Pods/PNChart/PNChart/PNPieChartDataItem.h: -------------------------------------------------------------------------------- 1 | // 2 | // PNPieChartDataItem.h 3 | // PNChartDemo 4 | // 5 | // Created by Hang Zhang on 14-5-5. 6 | // Copyright (c) 2014年 kevinzhow. All rights reserved. 7 | // 8 | 9 | #import 10 | #import 11 | 12 | @interface PNPieChartDataItem : NSObject 13 | 14 | + (instancetype)dataItemWithValue:(CGFloat)value 15 | color:(UIColor*)color; 16 | 17 | + (instancetype)dataItemWithValue:(CGFloat)value 18 | color:(UIColor*)color 19 | description:(NSString *)description; 20 | 21 | @property (nonatomic) CGFloat value; 22 | @property (nonatomic) UIColor *color; 23 | @property (nonatomic) NSString *textDescription; 24 | 25 | @end 26 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Xcode 2 | # 3 | build/ 4 | *.pbxuser 5 | !default.pbxuser 6 | *.mode1v3 7 | !default.mode1v3 8 | *.mode2v3 9 | !default.mode2v3 10 | *.perspectivev3 11 | !default.perspectivev3 12 | xcuserdata 13 | *.xccheckout 14 | *.moved-aside 15 | DerivedData 16 | *.hmap 17 | *.ipa 18 | *.xcuserstate 19 | 20 | # CocoaPods 21 | # 22 | # We recommend against adding the Pods directory to your .gitignore. However 23 | # you should judge for yourself, the pros and cons are mentioned at: 24 | # http://guides.cocoapods.org/using/using-cocoapods.html#should-i-ignore-the-pods-directory-in-source-control 25 | # 26 | # Pods/ 27 | 28 | # Carthage 29 | # 30 | # Add this line if you want to avoid checking in source code from Carthage dependencies. 31 | # Carthage/Checkouts 32 | 33 | Carthage/Build 34 | -------------------------------------------------------------------------------- /Pods/PNChart/PNChart/PNRadarChartDataItem.m: -------------------------------------------------------------------------------- 1 | // 2 | // PNRadarChartDataItem.m 3 | // PNChartDemo 4 | // 5 | // Created by Lei on 15/7/1. 6 | // Copyright (c) 2015年 kevinzhow. All rights reserved. 7 | // 8 | 9 | #import "PNRadarChartDataItem.h" 10 | 11 | @implementation PNRadarChartDataItem 12 | 13 | + (instancetype)dataItemWithValue:(CGFloat)value 14 | description:(NSString *)description { 15 | PNRadarChartDataItem *item = [PNRadarChartDataItem new]; 16 | item.value = value; 17 | item.textDescription = description; 18 | return item; 19 | } 20 | 21 | - (void)setValue:(CGFloat)value { 22 | if (value<0) { 23 | _value = 0; 24 | NSLog(@"Value value can not be negative"); 25 | } 26 | _value = value; 27 | } 28 | 29 | @end 30 | -------------------------------------------------------------------------------- /Pods/MaterialDesignColor/README.md: -------------------------------------------------------------------------------- 1 | #### MaterialDesignColor ![Cocoapods Version](https://img.shields.io/cocoapods/v/MaterialDesignColor.svg?style=flat) ![Platform](https://img.shields.io/cocoapods/p/MaterialDesignColor.svg?style=flat) ![License](https://img.shields.io/cocoapods/l/MaterialDesignColor.svg?style=flat) 2 | ============== 3 | 4 | ![image](https://s3.amazonaws.com/cocoacontrols_production/uploads/control_image/image/6689/iOS_Simulator_Screen_Shot_2015.06.09_23.45.20.png) 5 | 6 | Color library for Swift. Currently supports [GoogleMaterialDesignColor](https://www.google.com/design/spec/style/color.html) 7 | 8 | #### Examples 9 | 10 | ```html 11 | import MaterialDesignColor 12 | 13 | textLabel.textColor = MaterialDesignColor.lightGreen400 14 | ``` 15 | 16 | #### Installation (CocoaPods) 17 | `pod MaterialDesignColor` 18 | -------------------------------------------------------------------------------- /Pods/PNChart/PNChart/PNBar.h: -------------------------------------------------------------------------------- 1 | // 2 | // PNBar.h 3 | // PNChartDemo 4 | // 5 | // Created by kevin on 11/7/13. 6 | // Copyright (c) 2013年 kevinzhow. All rights reserved. 7 | // 8 | 9 | #import 10 | #import 11 | 12 | @interface PNBar : UIView 13 | 14 | 15 | - (void)rollBack; 16 | 17 | @property (nonatomic) float grade; 18 | @property (nonatomic) float maxDivisor; 19 | 20 | @property (nonatomic) CAShapeLayer *chartLine; 21 | @property (nonatomic) UIColor *barColor; 22 | @property (nonatomic) UIColor *barColorGradientStart; 23 | @property (nonatomic) CGFloat barRadius; 24 | @property (nonatomic) CAShapeLayer *gradientMask; 25 | 26 | @property (nonatomic) CAShapeLayer *gradeLayer; 27 | @property (nonatomic) CATextLayer* textLayer; 28 | 29 | @property (nonatomic, assign) BOOL isNegative; //!< 是否是负数 30 | @property (nonatomic, assign) BOOL isShowNumber; //!< 是否显示numbers 31 | @end 32 | -------------------------------------------------------------------------------- /Pods/PNChart/PNChart/PNChartLabel.m: -------------------------------------------------------------------------------- 1 | // 2 | // PNChartLabel.m 3 | // PNChart 4 | // 5 | // Created by kevin on 10/3/13. 6 | // Copyright (c) 2013年 kevinzhow. All rights reserved. 7 | // 8 | 9 | #import "PNChartLabel.h" 10 | 11 | @implementation PNChartLabel 12 | 13 | - (id)initWithFrame:(CGRect)frame 14 | { 15 | self = [super initWithFrame:frame]; 16 | 17 | if (self) { 18 | self.font = [UIFont boldSystemFontOfSize:11.0f]; 19 | self.backgroundColor = [UIColor clearColor]; 20 | self.textAlignment = NSTextAlignmentCenter; 21 | self.userInteractionEnabled = YES; 22 | self.adjustsFontSizeToFitWidth = YES; 23 | self.numberOfLines = 0; 24 | /* if you want to see ... in large labels un-comment this line 25 | self.minimumScaleFactor = 0.8; 26 | */ 27 | } 28 | 29 | return self; 30 | } 31 | 32 | @end 33 | -------------------------------------------------------------------------------- /Pods/PNChart/PNChart/PNScatterChartDataItem.m: -------------------------------------------------------------------------------- 1 | // 2 | // PNScatterChartDataItem.m 3 | // PNChartDemo 4 | // 5 | // Created by Alireza Arabi on 12/4/14. 6 | // Copyright (c) 2014 kevinzhow. All rights reserved. 7 | // 8 | 9 | #import "PNScatterChartDataItem.h" 10 | 11 | @interface PNScatterChartDataItem () 12 | 13 | - (id)initWithX:(CGFloat)x AndWithY:(CGFloat)y; 14 | 15 | @property (readwrite) CGFloat x; // should be within the x range 16 | @property (readwrite) CGFloat y; // should be within the y range 17 | 18 | @end 19 | 20 | @implementation PNScatterChartDataItem 21 | 22 | + (PNScatterChartDataItem *)dataItemWithX:(CGFloat)x AndWithY:(CGFloat)y 23 | { 24 | return [[PNScatterChartDataItem alloc] initWithX:x AndWithY:y]; 25 | } 26 | 27 | - (id)initWithX:(CGFloat)x AndWithY:(CGFloat)y 28 | { 29 | if ((self = [super init])) { 30 | self.x = x; 31 | self.y = y; 32 | } 33 | 34 | return self; 35 | } 36 | 37 | @end 38 | -------------------------------------------------------------------------------- /Pods/FSCalendar/FSCalendar/FSCalendarConstance.m: -------------------------------------------------------------------------------- 1 | // 2 | // FSCalendarConstane.m 3 | // FSCalendar 4 | // 5 | // Created by dingwenchao on 8/28/15. 6 | // Copyright (c) 2015 wenchaoios. All rights reserved. 7 | // 8 | 9 | #import "FSCalendarConstance.h" 10 | 11 | CGFloat const FSCalendarStandardHeaderHeight = 40; 12 | CGFloat const FSCalendarStandardWeekdayHeight = 25; 13 | CGFloat const FSCalendarStandardMonthlyPageHeight = 300.0; 14 | CGFloat const FSCalendarStandardWeeklyPageHeight = 108+1/3.0; 15 | CGFloat const FSCalendarStandardCellDiameter = 100/3.0; 16 | CGFloat const FSCalendarAutomaticDimension = -1; 17 | CGFloat const FSCalendarDefaultBounceAnimationDuration = 0.15; 18 | CGFloat const FSCalendarStandardRowHeight = 38+1.0/3; 19 | CGFloat const FSCalendarStandardTitleTextSize = 13.5; 20 | CGFloat const FSCalendarStandardSubtitleTextSize = 10; 21 | CGFloat const FSCalendarStandardWeekdayTextSize = 14; 22 | CGFloat const FSCalendarStandardHeaderTextSize = 16.5; -------------------------------------------------------------------------------- /Pods/Target Support Files/PNChart/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIdentifier 10 | org.cocoapods.${PRODUCT_NAME:rfc1034identifier} 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | ${PRODUCT_NAME} 15 | CFBundlePackageType 16 | FMWK 17 | CFBundleShortVersionString 18 | 0.8.7 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | ${CURRENT_PROJECT_VERSION} 23 | NSPrincipalClass 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /Pods/Target Support Files/FSCalendar/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIdentifier 10 | org.cocoapods.${PRODUCT_NAME:rfc1034identifier} 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | ${PRODUCT_NAME} 15 | CFBundlePackageType 16 | FMWK 17 | CFBundleShortVersionString 18 | 1.7.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | ${CURRENT_PROJECT_VERSION} 23 | NSPrincipalClass 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /Pods/Target Support Files/DGRunkeeperSwitch/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIdentifier 10 | org.cocoapods.${PRODUCT_NAME:rfc1034identifier} 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | ${PRODUCT_NAME} 15 | CFBundlePackageType 16 | FMWK 17 | CFBundleShortVersionString 18 | 1.1.1 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | ${CURRENT_PROJECT_VERSION} 23 | NSPrincipalClass 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /Pods/Target Support Files/MaterialDesignColor/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIdentifier 10 | org.cocoapods.${PRODUCT_NAME:rfc1034identifier} 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | ${PRODUCT_NAME} 15 | CFBundlePackageType 16 | FMWK 17 | CFBundleShortVersionString 18 | 1.3 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | ${CURRENT_PROJECT_VERSION} 23 | NSPrincipalClass 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /Pods/Target Support Files/Pods-Nutrition Cal/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIdentifier 10 | org.cocoapods.${PRODUCT_NAME:rfc1034identifier} 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | ${PRODUCT_NAME} 15 | CFBundlePackageType 16 | FMWK 17 | CFBundleShortVersionString 18 | 1.0.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | ${CURRENT_PROJECT_VERSION} 23 | NSPrincipalClass 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /Pods/Target Support Files/RKDropdownAlert/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIdentifier 10 | org.cocoapods.${PRODUCT_NAME:rfc1034identifier} 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | ${PRODUCT_NAME} 15 | CFBundlePackageType 16 | FMWK 17 | CFBundleShortVersionString 18 | 0.3.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | ${CURRENT_PROJECT_VERSION} 23 | NSPrincipalClass 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /Pods/Target Support Files/UICountingLabel/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIdentifier 10 | org.cocoapods.${PRODUCT_NAME:rfc1034identifier} 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | ${PRODUCT_NAME} 15 | CFBundlePackageType 16 | FMWK 17 | CFBundleShortVersionString 18 | 1.2.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | ${CURRENT_PROJECT_VERSION} 23 | NSPrincipalClass 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /Nutrition Cal/Reachability.swift: -------------------------------------------------------------------------------- 1 | // 2 | // Reachability.swift 3 | // Nutrition Cal 4 | // 5 | // Created by Omar Albeik on 11/26/15. 6 | // Copyright © 2015 Omar Albeik. All rights reserved. 7 | // 8 | 9 | import SystemConfiguration 10 | 11 | public class Reachability { 12 | class func isConnectedToNetwork() -> Bool { 13 | var zeroAddress = sockaddr_in() 14 | zeroAddress.sin_len = UInt8(sizeofValue(zeroAddress)) 15 | zeroAddress.sin_family = sa_family_t(AF_INET) 16 | let defaultRouteReachability = withUnsafePointer(&zeroAddress) { 17 | SCNetworkReachabilityCreateWithAddress(nil, UnsafePointer($0)) 18 | } 19 | var flags = SCNetworkReachabilityFlags() 20 | if !SCNetworkReachabilityGetFlags(defaultRouteReachability!, &flags) { 21 | return false 22 | } 23 | let isReachable = (flags.rawValue & UInt32(kSCNetworkFlagsReachable)) != 0 24 | let needsConnection = (flags.rawValue & UInt32(kSCNetworkFlagsConnectionRequired)) != 0 25 | return (isReachable && !needsConnection) 26 | } 27 | } -------------------------------------------------------------------------------- /Pods/Target Support Files/NVActivityIndicatorView/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIdentifier 10 | org.cocoapods.${PRODUCT_NAME:rfc1034identifier} 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | ${PRODUCT_NAME} 15 | CFBundlePackageType 16 | FMWK 17 | CFBundleShortVersionString 18 | 2.1 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | ${CURRENT_PROJECT_VERSION} 23 | NSPrincipalClass 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /Pods/Target Support Files/BGTableViewRowActionWithImage/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIdentifier 10 | org.cocoapods.${PRODUCT_NAME:rfc1034identifier} 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | ${PRODUCT_NAME} 15 | CFBundlePackageType 16 | FMWK 17 | CFBundleShortVersionString 18 | 0.1.2 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | ${CURRENT_PROJECT_VERSION} 23 | NSPrincipalClass 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /Pods/PNChart/PNChart/PNChartDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // PNChartDelegate.h 3 | // PNChartDemo 4 | // 5 | // Created by kevinzhow on 13-12-11. 6 | // Copyright (c) 2013年 kevinzhow. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @protocol PNChartDelegate 12 | @optional 13 | /** 14 | * Callback method that gets invoked when the user taps on the chart line. 15 | */ 16 | - (void)userClickedOnLinePoint:(CGPoint)point lineIndex:(NSInteger)lineIndex; 17 | 18 | /** 19 | * Callback method that gets invoked when the user taps on a chart line key point. 20 | */ 21 | - (void)userClickedOnLineKeyPoint:(CGPoint)point 22 | lineIndex:(NSInteger)lineIndex 23 | pointIndex:(NSInteger)pointIndex; 24 | 25 | /** 26 | * Callback method that gets invoked when the user taps on a chart bar. 27 | */ 28 | - (void)userClickedOnBarAtIndex:(NSInteger)barIndex; 29 | 30 | 31 | - (void)userClickedOnPieIndexItem:(NSInteger)pieIndex; 32 | - (void)didUnselectPieItem; 33 | @end 34 | -------------------------------------------------------------------------------- /Pods/PNChart/PNChart/PNPieChartDataItem.m: -------------------------------------------------------------------------------- 1 | // 2 | // PNPieChartDataItem.m 3 | // PNChartDemo 4 | // 5 | // Created by Hang Zhang on 14-5-5. 6 | // Copyright (c) 2014年 kevinzhow. All rights reserved. 7 | // 8 | 9 | #import "PNPieChartDataItem.h" 10 | #import 11 | 12 | @implementation PNPieChartDataItem 13 | 14 | 15 | + (instancetype)dataItemWithValue:(CGFloat)value 16 | color:(UIColor*)color{ 17 | PNPieChartDataItem *item = [PNPieChartDataItem new]; 18 | item.value = value; 19 | item.color = color; 20 | return item; 21 | } 22 | 23 | + (instancetype)dataItemWithValue:(CGFloat)value 24 | color:(UIColor*)color 25 | description:(NSString *)description { 26 | PNPieChartDataItem *item = [PNPieChartDataItem dataItemWithValue:value color:color]; 27 | item.textDescription = description; 28 | return item; 29 | } 30 | 31 | - (void)setValue:(CGFloat)value{ 32 | NSAssert(value >= 0, @"value should >= 0"); 33 | if (value != _value){ 34 | _value = value; 35 | } 36 | } 37 | 38 | @end 39 | -------------------------------------------------------------------------------- /Pods/PNChart/LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2013 Kevin 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy of 6 | this software and associated documentation files (the "Software"), to deal in 7 | the Software without restriction, including without limitation the rights to 8 | use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of 9 | the Software, and to permit persons to whom the Software is furnished to do so, 10 | subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS 17 | FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR 18 | COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER 19 | IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 20 | CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 21 | -------------------------------------------------------------------------------- /Pods/FSCalendar/FSCalendar/FSCalendarHeader.h: -------------------------------------------------------------------------------- 1 | // 2 | // FSCalendarHeader.h 3 | // Pods 4 | // 5 | // Created by Wenchao Ding on 29/1/15. 6 | // 7 | // 8 | 9 | #import 10 | #import "FSCalendarCollectionView.h" 11 | 12 | @class FSCalendar,FSCalendarAppearance; 13 | 14 | @interface FSCalendarHeader : UIView 15 | 16 | @property (weak, nonatomic) FSCalendarCollectionView *collectionView; 17 | @property (weak, nonatomic) FSCalendar *calendar; 18 | @property (weak, nonatomic) FSCalendarAppearance *appearance; 19 | 20 | @property (assign, nonatomic) CGFloat scrollOffset; 21 | @property (assign, nonatomic) UICollectionViewScrollDirection scrollDirection; 22 | @property (assign, nonatomic) BOOL scrollEnabled; 23 | 24 | - (void)reloadData; 25 | 26 | @end 27 | 28 | 29 | @interface FSCalendarHeaderCell : UICollectionViewCell 30 | 31 | @property (weak, nonatomic) UILabel *titleLabel; 32 | @property (weak, nonatomic) FSCalendarHeader *header; 33 | 34 | @end 35 | 36 | 37 | @interface FSCalendarHeaderTouchDeliver : UIView 38 | 39 | @property (weak, nonatomic) FSCalendar *calendar; 40 | @property (weak, nonatomic) FSCalendarHeader *header; 41 | 42 | @end 43 | -------------------------------------------------------------------------------- /Podfile.lock: -------------------------------------------------------------------------------- 1 | PODS: 2 | - BGTableViewRowActionWithImage (0.1.2) 3 | - DGRunkeeperSwitch (1.1.1) 4 | - FSCalendar (1.7.0) 5 | - MaterialDesignColor (1.3) 6 | - NVActivityIndicatorView (2.1) 7 | - PNChart (0.8.7): 8 | - UICountingLabel (~> 1.2.0) 9 | - RKDropdownAlert (0.3.0) 10 | - UICountingLabel (1.2.0) 11 | 12 | DEPENDENCIES: 13 | - BGTableViewRowActionWithImage (~> 0.1) 14 | - DGRunkeeperSwitch (~> 1.1) 15 | - FSCalendar (~> 1.6) 16 | - MaterialDesignColor (~> 1.3) 17 | - NVActivityIndicatorView (~> 2.1) 18 | - PNChart (~> 0.8) 19 | - RKDropdownAlert (~> 0.3) 20 | 21 | SPEC CHECKSUMS: 22 | BGTableViewRowActionWithImage: 4093bc2f297e6f3aed95096c3df94418acef3cdb 23 | DGRunkeeperSwitch: da12f199532a99958a1e87ec0a5af61efdba11ec 24 | FSCalendar: ee727a0db4e915a606813ba9e87522ba59920b25 25 | MaterialDesignColor: a2ccceb2816a7573692805aa56bbd6f81ad77231 26 | NVActivityIndicatorView: 84aa48f7ec1efbfd0645e9f469097d94c6f65417 27 | PNChart: c1755716bbd45386d2035b2bf2ce73e6d3f8cb22 28 | RKDropdownAlert: f4b3364c251829ad439dc666836a1f2dad26f4c7 29 | UICountingLabel: 1db4e7d023e1762171eb226d6dff47a7a84f27aa 30 | 31 | COCOAPODS: 0.39.0 32 | -------------------------------------------------------------------------------- /Pods/UICountingLabel/LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2013 Tim Gostony 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in 13 | all copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 21 | THE SOFTWARE. -------------------------------------------------------------------------------- /Pods/Manifest.lock: -------------------------------------------------------------------------------- 1 | PODS: 2 | - BGTableViewRowActionWithImage (0.1.2) 3 | - DGRunkeeperSwitch (1.1.1) 4 | - FSCalendar (1.7.0) 5 | - MaterialDesignColor (1.3) 6 | - NVActivityIndicatorView (2.1) 7 | - PNChart (0.8.7): 8 | - UICountingLabel (~> 1.2.0) 9 | - RKDropdownAlert (0.3.0) 10 | - UICountingLabel (1.2.0) 11 | 12 | DEPENDENCIES: 13 | - BGTableViewRowActionWithImage (~> 0.1) 14 | - DGRunkeeperSwitch (~> 1.1) 15 | - FSCalendar (~> 1.6) 16 | - MaterialDesignColor (~> 1.3) 17 | - NVActivityIndicatorView (~> 2.1) 18 | - PNChart (~> 0.8) 19 | - RKDropdownAlert (~> 0.3) 20 | 21 | SPEC CHECKSUMS: 22 | BGTableViewRowActionWithImage: 4093bc2f297e6f3aed95096c3df94418acef3cdb 23 | DGRunkeeperSwitch: da12f199532a99958a1e87ec0a5af61efdba11ec 24 | FSCalendar: ee727a0db4e915a606813ba9e87522ba59920b25 25 | MaterialDesignColor: a2ccceb2816a7573692805aa56bbd6f81ad77231 26 | NVActivityIndicatorView: 84aa48f7ec1efbfd0645e9f469097d94c6f65417 27 | PNChart: c1755716bbd45386d2035b2bf2ce73e6d3f8cb22 28 | RKDropdownAlert: f4b3364c251829ad439dc666836a1f2dad26f4c7 29 | UICountingLabel: 1db4e7d023e1762171eb226d6dff47a7a84f27aa 30 | 31 | COCOAPODS: 0.39.0 32 | -------------------------------------------------------------------------------- /Pods/PNChart/PNChart/PNScatterChartData.h: -------------------------------------------------------------------------------- 1 | // 2 | // PNScatterChartData.h 3 | // PNChartDemo 4 | // 5 | // Created by Alireza Arabi on 12/4/14. 6 | // Copyright (c) 2014 kevinzhow. All rights reserved. 7 | // 8 | 9 | #import 10 | #import 11 | 12 | typedef NS_ENUM(NSUInteger, PNScatterChartPointStyle) { 13 | PNScatterChartPointStyleCircle = 0, 14 | PNScatterChartPointStyleSquare = 1, 15 | }; 16 | 17 | @class PNScatterChartDataItem; 18 | 19 | typedef PNScatterChartDataItem *(^LCScatterChartDataGetter)(NSUInteger item); 20 | 21 | @interface PNScatterChartData : NSObject 22 | 23 | @property (strong) UIColor *fillColor; 24 | @property (strong) UIColor *strokeColor; 25 | 26 | @property NSUInteger itemCount; 27 | @property (copy) LCScatterChartDataGetter getData; 28 | 29 | @property (nonatomic, assign) PNScatterChartPointStyle inflexionPointStyle; 30 | 31 | /** 32 | * If PNLineChartPointStyle is circle, this returns the circle's diameter. 33 | * If PNLineChartPointStyle is square, each point is a square with each side equal in length to this value. 34 | */ 35 | @property (nonatomic, assign) CGFloat size; 36 | 37 | 38 | @end 39 | -------------------------------------------------------------------------------- /Pods/RKDropdownAlert/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2014 Choong-Won Richard Kim 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy 4 | of this software and associated documentation files (the "Software"), to deal 5 | in the Software without restriction, including without limitation the rights 6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | copies of the Software, and to permit persons to whom the Software is 8 | furnished to do so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in 11 | all copies or substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | THE SOFTWARE. 20 | -------------------------------------------------------------------------------- /Pods/FSCalendar/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2013-2015 FSCalendar (https://github.com/WenchaoIOS/FSCalendar) 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy 4 | of this software and associated documentation files (the "Software"), to deal 5 | in the Software without restriction, including without limitation the rights 6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | copies of the Software, and to permit persons to whom the Software is 8 | furnished to do so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in 11 | all copies or substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | THE SOFTWARE. 20 | -------------------------------------------------------------------------------- /Pods/NVActivityIndicatorView/LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2015 Nguyen Vinh 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /Pods/BGTableViewRowActionWithImage/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2015 Ben Guild 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy 4 | of this software and associated documentation files (the "Software"), to deal 5 | in the Software without restriction, including without limitation the rights 6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | copies of the Software, and to permit persons to whom the Software is 8 | furnished to do so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in 11 | all copies or substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | THE SOFTWARE. 20 | -------------------------------------------------------------------------------- /Pods/DGRunkeeperSwitch/LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2015 Danil Gontovnik 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | 23 | -------------------------------------------------------------------------------- /Nutrition Cal/TutorialContentViewController.swift: -------------------------------------------------------------------------------- 1 | // 2 | // TutorialContentViewController.swift 3 | // Nutrition Cal 4 | // 5 | // Created by Omar Albeik on 11/26/15. 6 | // Copyright © 2015 Omar Albeik. All rights reserved. 7 | // 8 | 9 | import UIKit 10 | import HealthKit 11 | 12 | class TutorialContentViewController: UIViewController { 13 | 14 | var image: UIImage! 15 | var titleText: String! 16 | var index :Int! 17 | 18 | @IBOutlet weak var imageView: UIImageView! 19 | @IBOutlet weak var titleLabel: UILabel! 20 | @IBOutlet weak var letsGoButton: UIButton! 21 | 22 | override func viewDidLoad() { 23 | super.viewDidLoad() 24 | 25 | let healthStore = HealthStore.sharedInstance() 26 | 27 | imageView.image = self.image 28 | titleLabel.text = titleText 29 | 30 | 31 | if index == 6 { 32 | healthStore.requestAuthorizationForHealthStore() 33 | letsGoButton.hidden = false 34 | } 35 | } 36 | 37 | @IBAction func letsGoButtonTapped(sender: UIButton) { 38 | 39 | let mainTabBar = storyboard?.instantiateViewControllerWithIdentifier("mainTabBar") as! UITabBarController 40 | presentViewController(mainTabBar, animated: true, completion: nil) 41 | 42 | } 43 | 44 | } 45 | -------------------------------------------------------------------------------- /Nutrition Cal/DayEntry.swift: -------------------------------------------------------------------------------- 1 | // 2 | // DayEntry.swift 3 | // Nutrition Cal 4 | // 5 | // Created by Omar Albeik on 11/26/15. 6 | // Copyright © 2015 Omar Albeik. All rights reserved. 7 | // 8 | 9 | import Foundation 10 | import CoreData 11 | 12 | 13 | class DayEntry: NSManagedObject { 14 | 15 | @NSManaged var ndbItemId: String 16 | @NSManaged var ndbItemName: String 17 | @NSManaged var measureLabel: String 18 | @NSManaged var qty: NSNumber 19 | @NSManaged var date: NSDate 20 | @NSManaged var daysSince1970: NSNumber 21 | 22 | override init(entity: NSEntityDescription, insertIntoManagedObjectContext context: NSManagedObjectContext?) { 23 | super.init(entity: entity, insertIntoManagedObjectContext: context) 24 | } 25 | 26 | init (item: NDBItem, measure: NDBMeasure, qty: Int, context: NSManagedObjectContext) { 27 | let entity = NSEntityDescription.entityForName("DayEntry", inManagedObjectContext: context)! 28 | super.init(entity: entity, insertIntoManagedObjectContext: context) 29 | 30 | self.ndbItemName = item.name 31 | self.ndbItemId = item.name 32 | self.measureLabel = measure.label! 33 | self.qty = qty 34 | self.date = NSDate() 35 | self.daysSince1970 = NSDate().daysSince1970() 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /Pods/PNChart/PNChart/PNGenericChart.m: -------------------------------------------------------------------------------- 1 | // 2 | // PNGenericChart.m 3 | // PNChartDemo 4 | // 5 | // Created by Andi Palo on 26/02/15. 6 | // Copyright (c) 2015 kevinzhow. All rights reserved. 7 | // 8 | 9 | #import "PNGenericChart.h" 10 | 11 | @interface PNGenericChart () 12 | 13 | 14 | 15 | @end 16 | 17 | @implementation PNGenericChart 18 | 19 | /* 20 | // Only override drawRect: if you perform custom drawing. 21 | // An empty implementation adversely affects performance during animation. 22 | - (void)drawRect:(CGRect)rect { 23 | // Drawing code 24 | } 25 | */ 26 | 27 | - (void) setupDefaultValues{ 28 | self.hasLegend = YES; 29 | self.legendPosition = PNLegendPositionBottom; 30 | self.legendStyle = PNLegendItemStyleStacked; 31 | self.labelRowsInSerialMode = 1; 32 | } 33 | 34 | 35 | 36 | /** 37 | * to be implemented in subclass 38 | */ 39 | - (UIView*) getLegendWithMaxWidth:(CGFloat)mWidth{ 40 | [self doesNotRecognizeSelector:_cmd]; 41 | return nil; 42 | } 43 | 44 | - (void) setLabelRowsInSerialMode:(NSUInteger)num{ 45 | if (self.legendStyle == PNLegendItemStyleSerial) { 46 | _labelRowsInSerialMode = num; 47 | }else{ 48 | _labelRowsInSerialMode = 1; 49 | } 50 | } 51 | 52 | 53 | @end 54 | -------------------------------------------------------------------------------- /Nutrition Cal/NDBNutrient.swift: -------------------------------------------------------------------------------- 1 | // 2 | // NDBNutrient.swift 3 | // Nutrition Cal 4 | // 5 | // Created by Omar Albeik on 11/26/15. 6 | // Copyright © 2015 Omar Albeik. All rights reserved. 7 | // 8 | 9 | import Foundation 10 | import CoreData 11 | 12 | 13 | class NDBNutrient: NSManagedObject { 14 | 15 | @NSManaged var id: NSNumber? 16 | @NSManaged var name: String? 17 | @NSManaged var unit: String? 18 | @NSManaged var value: NSNumber? 19 | 20 | @NSManaged var item: NDBItem 21 | @NSManaged var measures: [NDBMeasure]? 22 | 23 | override init(entity: NSEntityDescription, insertIntoManagedObjectContext context: NSManagedObjectContext?) { 24 | super.init(entity: entity, insertIntoManagedObjectContext: context) 25 | } 26 | 27 | init(item: NDBItem, dictionary: [String : AnyObject], context: NSManagedObjectContext) { 28 | let entity = NSEntityDescription.entityForName("NDBNutrient", inManagedObjectContext: context)! 29 | super.init(entity: entity, insertIntoManagedObjectContext: context) 30 | 31 | self.id = (dictionary["nutrient_id"] as! Int) 32 | self.name = (dictionary["name"] as! String) 33 | self.unit = (dictionary["unit"] as! String) 34 | self.value = (dictionary["value"] as! Double) 35 | self.item = item 36 | } 37 | 38 | } 39 | -------------------------------------------------------------------------------- /Pods/FSCalendar/FSCalendar/FSCalendarCollectionView.m: -------------------------------------------------------------------------------- 1 | // 2 | // FSCalendarCollectionView.m 3 | // FSCalendar 4 | // 5 | // Created by Wenchao Ding on 10/25/15. 6 | // Copyright (c) 2015 wenchaoios. All rights reserved. 7 | // 8 | 9 | #import "FSCalendarCollectionView.h" 10 | #import "FSCalendarCell.h" 11 | 12 | @implementation FSCalendarCollectionView 13 | 14 | @synthesize scrollsToTop = _scrollsToTop, contentInset = _contentInset; 15 | 16 | - (instancetype)initWithFrame:(CGRect)frame collectionViewLayout:(UICollectionViewLayout *)layout 17 | { 18 | self = [super initWithFrame:frame collectionViewLayout:layout]; 19 | if (self) { 20 | self.scrollsToTop = NO; 21 | self.contentInset = UIEdgeInsetsZero; 22 | } 23 | return self; 24 | } 25 | 26 | - (instancetype)initWithFrame:(CGRect)frame 27 | { 28 | self = [super initWithFrame:frame]; 29 | if (self) { 30 | self.scrollsToTop = NO; 31 | self.contentInset = UIEdgeInsetsZero; 32 | } 33 | return self; 34 | } 35 | 36 | - (void)setContentInset:(UIEdgeInsets)contentInset 37 | { 38 | [super setContentInset:UIEdgeInsetsZero]; 39 | } 40 | 41 | - (void)setScrollsToTop:(BOOL)scrollsToTop 42 | { 43 | [super setScrollsToTop:NO]; 44 | } 45 | 46 | @end 47 | 48 | -------------------------------------------------------------------------------- /Pods/PNChart/PNChart/PNLineChartData.h: -------------------------------------------------------------------------------- 1 | // 2 | // Created by Jörg Polakowski on 14/12/13. 3 | // Copyright (c) 2013 kevinzhow. All rights reserved. 4 | // 5 | 6 | #import 7 | #import 8 | 9 | typedef NS_ENUM(NSUInteger, PNLineChartPointStyle) { 10 | PNLineChartPointStyleNone = 0, 11 | PNLineChartPointStyleCircle = 1, 12 | PNLineChartPointStyleSquare = 3, 13 | PNLineChartPointStyleTriangle = 4 14 | }; 15 | 16 | @class PNLineChartDataItem; 17 | 18 | typedef PNLineChartDataItem *(^LCLineChartDataGetter)(NSUInteger item); 19 | 20 | @interface PNLineChartData : NSObject 21 | 22 | @property (strong) UIColor *color; 23 | @property (nonatomic) CGFloat alpha; 24 | @property NSUInteger itemCount; 25 | @property (copy) LCLineChartDataGetter getData; 26 | @property (strong, nonatomic) NSString *dataTitle; 27 | 28 | @property (nonatomic, assign) PNLineChartPointStyle inflexionPointStyle; 29 | 30 | /** 31 | * If PNLineChartPointStyle is circle, this returns the circle's diameter. 32 | * If PNLineChartPointStyle is square, each point is a square with each side equal in length to this value. 33 | */ 34 | @property (nonatomic, assign) CGFloat inflexionPointWidth; 35 | 36 | @property (nonatomic, assign) CGFloat lineWidth; 37 | 38 | @end 39 | -------------------------------------------------------------------------------- /Pods/Target Support Files/Pods-Nutrition Cal/Pods-Nutrition Cal.debug.xcconfig: -------------------------------------------------------------------------------- 1 | EMBEDDED_CONTENT_CONTAINS_SWIFT = YES 2 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 3 | LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks' 4 | OTHER_CFLAGS = $(inherited) -iquote "$CONFIGURATION_BUILD_DIR/BGTableViewRowActionWithImage.framework/Headers" -iquote "$CONFIGURATION_BUILD_DIR/DGRunkeeperSwitch.framework/Headers" -iquote "$CONFIGURATION_BUILD_DIR/FSCalendar.framework/Headers" -iquote "$CONFIGURATION_BUILD_DIR/MaterialDesignColor.framework/Headers" -iquote "$CONFIGURATION_BUILD_DIR/NVActivityIndicatorView.framework/Headers" -iquote "$CONFIGURATION_BUILD_DIR/PNChart.framework/Headers" -iquote "$CONFIGURATION_BUILD_DIR/RKDropdownAlert.framework/Headers" -iquote "$CONFIGURATION_BUILD_DIR/UICountingLabel.framework/Headers" 5 | OTHER_LDFLAGS = $(inherited) -framework "BGTableViewRowActionWithImage" -framework "DGRunkeeperSwitch" -framework "FSCalendar" -framework "MaterialDesignColor" -framework "NVActivityIndicatorView" -framework "PNChart" -framework "RKDropdownAlert" -framework "UICountingLabel" 6 | OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS" 7 | PODS_FRAMEWORK_BUILD_PATH = $(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/Pods-Nutrition Cal 8 | PODS_ROOT = ${SRCROOT}/Pods -------------------------------------------------------------------------------- /Pods/Target Support Files/Pods-Nutrition Cal/Pods-Nutrition Cal.release.xcconfig: -------------------------------------------------------------------------------- 1 | EMBEDDED_CONTENT_CONTAINS_SWIFT = YES 2 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 3 | LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks' 4 | OTHER_CFLAGS = $(inherited) -iquote "$CONFIGURATION_BUILD_DIR/BGTableViewRowActionWithImage.framework/Headers" -iquote "$CONFIGURATION_BUILD_DIR/DGRunkeeperSwitch.framework/Headers" -iquote "$CONFIGURATION_BUILD_DIR/FSCalendar.framework/Headers" -iquote "$CONFIGURATION_BUILD_DIR/MaterialDesignColor.framework/Headers" -iquote "$CONFIGURATION_BUILD_DIR/NVActivityIndicatorView.framework/Headers" -iquote "$CONFIGURATION_BUILD_DIR/PNChart.framework/Headers" -iquote "$CONFIGURATION_BUILD_DIR/RKDropdownAlert.framework/Headers" -iquote "$CONFIGURATION_BUILD_DIR/UICountingLabel.framework/Headers" 5 | OTHER_LDFLAGS = $(inherited) -framework "BGTableViewRowActionWithImage" -framework "DGRunkeeperSwitch" -framework "FSCalendar" -framework "MaterialDesignColor" -framework "NVActivityIndicatorView" -framework "PNChart" -framework "RKDropdownAlert" -framework "UICountingLabel" 6 | OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS" 7 | PODS_FRAMEWORK_BUILD_PATH = $(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/Pods-Nutrition Cal 8 | PODS_ROOT = ${SRCROOT}/Pods -------------------------------------------------------------------------------- /Pods/UICountingLabel/UICountingLabel.h: -------------------------------------------------------------------------------- 1 | #import 2 | #import 3 | 4 | typedef enum { 5 | UILabelCountingMethodEaseInOut, 6 | UILabelCountingMethodEaseIn, 7 | UILabelCountingMethodEaseOut, 8 | UILabelCountingMethodLinear 9 | } UILabelCountingMethod; 10 | 11 | typedef NSString* (^UICountingLabelFormatBlock)(float value); 12 | typedef NSAttributedString* (^UICountingLabelAttributedFormatBlock)(float value); 13 | 14 | @interface UICountingLabel : UILabel 15 | 16 | @property (nonatomic, strong) NSString *format; 17 | @property (nonatomic, assign) UILabelCountingMethod method; 18 | @property (nonatomic, assign) NSTimeInterval animationDuration; 19 | 20 | @property (nonatomic, copy) UICountingLabelFormatBlock formatBlock; 21 | @property (nonatomic, copy) UICountingLabelAttributedFormatBlock attributedFormatBlock; 22 | @property (nonatomic, copy) void (^completionBlock)(); 23 | 24 | -(void)countFrom:(float)startValue to:(float)endValue; 25 | -(void)countFrom:(float)startValue to:(float)endValue withDuration:(NSTimeInterval)duration; 26 | 27 | -(void)countFromCurrentValueTo:(float)endValue; 28 | -(void)countFromCurrentValueTo:(float)endValue withDuration:(NSTimeInterval)duration; 29 | 30 | -(void)countFromZeroTo:(float)endValue; 31 | -(void)countFromZeroTo:(float)endValue withDuration:(NSTimeInterval)duration; 32 | 33 | - (CGFloat)currentValue; 34 | 35 | @end 36 | 37 | -------------------------------------------------------------------------------- /Pods/PNChart/PNChart/PNGenericChart.h: -------------------------------------------------------------------------------- 1 | // 2 | // PNGenericChart.h 3 | // PNChartDemo 4 | // 5 | // Created by Andi Palo on 26/02/15. 6 | // Copyright (c) 2015 kevinzhow. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | typedef NS_ENUM(NSUInteger, PNLegendPosition) { 12 | PNLegendPositionTop = 0, 13 | PNLegendPositionBottom = 1, 14 | PNLegendPositionLeft = 2, 15 | PNLegendPositionRight = 3 16 | }; 17 | 18 | typedef NS_ENUM(NSUInteger, PNLegendItemStyle) { 19 | PNLegendItemStyleStacked = 0, 20 | PNLegendItemStyleSerial = 1 21 | }; 22 | 23 | @interface PNGenericChart : UIView 24 | 25 | @property (assign, nonatomic) BOOL hasLegend; 26 | @property (assign, nonatomic) PNLegendPosition legendPosition; 27 | @property (assign, nonatomic) PNLegendItemStyle legendStyle; 28 | 29 | @property (assign, nonatomic) UIFont *legendFont; 30 | @property (assign, nonatomic) UIColor *legendFontColor; 31 | @property (assign, nonatomic) NSUInteger labelRowsInSerialMode; 32 | 33 | /** 34 | * returns the Legend View, or nil if no chart data is present. 35 | * The origin of the legend frame is 0,0 but you can set it with setFrame:(CGRect) 36 | * 37 | * @param mWidth Maximum width of legend. Height will depend on this and font size 38 | * 39 | * @return UIView of Legend 40 | */ 41 | - (UIView*) getLegendWithMaxWidth:(CGFloat)mWidth; 42 | 43 | 44 | - (void) setupDefaultValues; 45 | @end 46 | -------------------------------------------------------------------------------- /Pods/NVActivityIndicatorView/NVActivityIndicatorView/Animations/NVActivityIndicatorAnimationSemiCircleSpin.swift: -------------------------------------------------------------------------------- 1 | // 2 | // NVActivityIndicatorAnimationSemiCircleSpin.swift 3 | // NVActivityIndicatorViewDemo 4 | // 5 | // Created by Nguyen Vinh on 7/27/15. 6 | // Copyright (c) 2015 Nguyen Vinh. All rights reserved. 7 | // 8 | 9 | import UIKit 10 | 11 | class NVActivityIndicatorAnimationSemiCircleSpin: NVActivityIndicatorAnimationDelegate { 12 | 13 | func setUpAnimationInLayer(layer: CALayer, size: CGSize, color: UIColor) { 14 | let duration: CFTimeInterval = 0.6 15 | 16 | // Animation 17 | let animation = CAKeyframeAnimation(keyPath: "transform.rotation.z") 18 | 19 | animation.keyTimes = [0, 0.5, 1] 20 | animation.values = [0, M_PI, 2 * M_PI] 21 | animation.duration = duration 22 | animation.repeatCount = HUGE 23 | animation.removedOnCompletion = false 24 | 25 | // Draw circle 26 | let circle = NVActivityIndicatorShape.CircleSemi.createLayerWith(size: size, color: color) 27 | let frame = CGRect( 28 | x: (layer.bounds.width - size.width) / 2, 29 | y: (layer.bounds.height - size.height) / 2, 30 | width: size.width, 31 | height: size.height 32 | ) 33 | 34 | circle.frame = frame 35 | circle.addAnimation(animation, forKey: "animation") 36 | layer.addSublayer(circle) 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /Nutrition Cal/NDBMeasure.swift: -------------------------------------------------------------------------------- 1 | // 2 | // NDBMeasure.swift 3 | // Nutrition Cal 4 | // 5 | // Created by Omar Albeik on 11/26/15. 6 | // Copyright © 2015 Omar Albeik. All rights reserved. 7 | // 8 | 9 | import Foundation 10 | import CoreData 11 | 12 | 13 | class NDBMeasure: NSManagedObject { 14 | 15 | @NSManaged var label: String? 16 | @NSManaged var eqv: NSNumber? 17 | @NSManaged var qty: NSNumber? 18 | @NSManaged var value: NSNumber? 19 | @NSManaged var nutrient: NDBNutrient 20 | 21 | override init(entity: NSEntityDescription, insertIntoManagedObjectContext context: NSManagedObjectContext?) { 22 | super.init(entity: entity, insertIntoManagedObjectContext: context) 23 | } 24 | 25 | init(nutrient: NDBNutrient, dictionary: [String: AnyObject], context: NSManagedObjectContext) { 26 | 27 | let entity = NSEntityDescription.entityForName("NDBMeasure", inManagedObjectContext: context)! 28 | super.init(entity: entity, insertIntoManagedObjectContext: context) 29 | 30 | self.label = (dictionary["label"] as! String) 31 | 32 | if let eqvNumber = dictionary["eqv"] as? Int { 33 | self.eqv = eqvNumber 34 | } else { 35 | self.eqv = 0 36 | } 37 | 38 | if let qtyNumber = dictionary["qty"] as? Int { 39 | self.qty = qtyNumber 40 | } else { 41 | self.qty = 0 42 | } 43 | 44 | if let valueNumber = dictionary["value"] as? Double { 45 | self.value = valueNumber 46 | } else { 47 | self.value = 0 48 | } 49 | 50 | self.nutrient = nutrient 51 | } 52 | } 53 | -------------------------------------------------------------------------------- /Nutrition Cal/NDBItem.swift: -------------------------------------------------------------------------------- 1 | // 2 | // NDBItem.swift 3 | // Nutrition Cal 4 | // 5 | // Created by Omar Albeik on 11/26/15. 6 | // Copyright © 2015 Omar Albeik. All rights reserved. 7 | // 8 | 9 | import UIKit 10 | import CoreData 11 | 12 | 13 | class NDBItem: NSManagedObject { 14 | 15 | @NSManaged var group: String? 16 | @NSManaged var name: String 17 | @NSManaged var ndbNo: String 18 | @NSManaged var saved: NSNumber 19 | @NSManaged var dateAdded: NSDate 20 | @NSManaged var imagePath: String? 21 | 22 | @NSManaged var nutrients: [NDBNutrient]? 23 | 24 | override init(entity: NSEntityDescription, insertIntoManagedObjectContext context: NSManagedObjectContext?) { 25 | super.init(entity: entity, insertIntoManagedObjectContext: context) 26 | } 27 | 28 | init(dictionary: [String : AnyObject], context: NSManagedObjectContext) { 29 | let entity = NSEntityDescription.entityForName("NDBItem", inManagedObjectContext: context)! 30 | super.init(entity: entity, insertIntoManagedObjectContext: context) 31 | 32 | self.group = (dictionary["group"] as! String) 33 | self.name = (dictionary["name"] as! String) 34 | self.ndbNo = (dictionary["ndbno"] as! String) 35 | self.saved = false 36 | self.dateAdded = NSDate() 37 | 38 | self.imagePath = ImageCache.Caches.imageCache.pathForIdentifier(ndbNo) 39 | } 40 | 41 | var image: UIImage? { 42 | get { return ImageCache.Caches.imageCache.imageWithIdentifier(ndbNo) } 43 | set { ImageCache.Caches.imageCache.storeImage(newValue, withIdentifier: ndbNo) } 44 | } 45 | 46 | } 47 | -------------------------------------------------------------------------------- /Pods/FSCalendar/FSCalendar/UIView+FSExtension.m: -------------------------------------------------------------------------------- 1 | // 2 | // UIView+FSExtension.m 3 | // Pods 4 | // 5 | // Created by Wenchao Ding on 29/1/15. 6 | // 7 | // 8 | 9 | #import "UIView+FSExtension.h" 10 | 11 | @implementation UIView (FSExtension) 12 | 13 | - (CGFloat)fs_width 14 | { 15 | return CGRectGetWidth(self.frame); 16 | } 17 | 18 | - (void)setFs_width:(CGFloat)fs_width 19 | { 20 | self.frame = CGRectMake(self.fs_left, self.fs_top, fs_width, self.fs_height); 21 | } 22 | 23 | - (CGFloat)fs_height 24 | { 25 | return CGRectGetHeight(self.frame); 26 | } 27 | 28 | - (void)setFs_height:(CGFloat)fs_height 29 | { 30 | self.frame = CGRectMake(self.fs_left, self.fs_top, self.fs_width, fs_height); 31 | } 32 | 33 | - (CGFloat)fs_top 34 | { 35 | return CGRectGetMinY(self.frame); 36 | } 37 | 38 | - (void)setFs_top:(CGFloat)fs_top 39 | { 40 | self.frame = CGRectMake(self.fs_left, fs_top, self.fs_width, self.fs_height); 41 | } 42 | 43 | - (CGFloat)fs_bottom 44 | { 45 | return CGRectGetMaxY(self.frame); 46 | } 47 | 48 | - (void)setFs_bottom:(CGFloat)fs_bottom 49 | { 50 | self.fs_top = fs_bottom - self.fs_height; 51 | } 52 | 53 | - (CGFloat)fs_left 54 | { 55 | return CGRectGetMinX(self.frame); 56 | } 57 | 58 | - (void)setFs_left:(CGFloat)fs_left 59 | { 60 | self.frame = CGRectMake(fs_left, self.fs_top, self.fs_width, self.fs_height); 61 | } 62 | 63 | - (CGFloat)fs_right 64 | { 65 | return CGRectGetMaxX(self.frame); 66 | } 67 | 68 | - (void)setFs_right:(CGFloat)fs_right 69 | { 70 | self.fs_left = self.fs_right - self.fs_width; 71 | } 72 | 73 | @end 74 | -------------------------------------------------------------------------------- /Nutrition Cal/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | $(PRODUCT_BUNDLE_IDENTIFIER) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | $(PRODUCT_NAME) 15 | CFBundlePackageType 16 | APPL 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | 8 23 | LSRequiresIPhoneOS 24 | 25 | NSAppTransportSecurity 26 | 27 | NSAllowsArbitraryLoads 28 | 29 | 30 | UILaunchStoryboardName 31 | LaunchScreen 32 | UIMainStoryboardFile 33 | Main 34 | UIRequiredDeviceCapabilities 35 | 36 | armv7 37 | healthkit 38 | 39 | UISupportedInterfaceOrientations 40 | 41 | UIInterfaceOrientationPortrait 42 | 43 | UISupportedInterfaceOrientations~ipad 44 | 45 | UIInterfaceOrientationPortrait 46 | UIInterfaceOrientationPortraitUpsideDown 47 | UIInterfaceOrientationLandscapeLeft 48 | UIInterfaceOrientationLandscapeRight 49 | 50 | 51 | 52 | -------------------------------------------------------------------------------- /Pods/PNChart/PNChart/PNRadarChart.h: -------------------------------------------------------------------------------- 1 | // 2 | // PNRadarChart.h 3 | // PNChartDemo 4 | // 5 | // Created by Lei on 15/7/1. 6 | // Copyright (c) 2015年 kevinzhow. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "PNGenericChart.h" 11 | #import "PNRadarChartDataItem.h" 12 | 13 | #define MAXCIRCLE 20 14 | 15 | typedef NS_ENUM(NSUInteger, PNRadarChartLabelStyle) { 16 | PNRadarChartLabelStyleCircle = 0, 17 | PNRadarChartLabelStyleHorizontal, 18 | PNRadarChartLabelStyleHidden, 19 | }; 20 | 21 | @interface PNRadarChart : PNGenericChart 22 | 23 | -(id)initWithFrame:(CGRect)frame items:(NSArray *)items valueDivider:(CGFloat)unitValue; 24 | /** 25 | *Draws the chart in an animated fashion. 26 | */ 27 | -(void)strokeChart; 28 | 29 | /** Array of `RadarChartDataItem` objects, one for each corner. */ 30 | @property (nonatomic) NSArray *chartData; 31 | /** The unit of this chart ,default is 1 */ 32 | @property (nonatomic) CGFloat valueDivider; 33 | /** The maximum for the range of values to display on the chart */ 34 | @property (nonatomic) CGFloat maxValue; 35 | /** Default is gray. */ 36 | @property (nonatomic) UIColor *webColor; 37 | /** Default is green , with an alpha of 0.7 */ 38 | @property (nonatomic) UIColor *plotColor; 39 | /** Default is black */ 40 | @property (nonatomic) UIColor *fontColor; 41 | /** Default is orange */ 42 | @property (nonatomic) UIColor *graduationColor; 43 | /** Default is 15 */ 44 | @property (nonatomic) CGFloat fontSize; 45 | /** Controls the labels display style that around chart */ 46 | @property (nonatomic, assign) PNRadarChartLabelStyle labelStyle; 47 | /** Tap the label will display detail value ,default is YES. */ 48 | @property (nonatomic, assign) BOOL isLabelTouchable; 49 | /** is show graduation on the chart ,default is NO. */ 50 | @property (nonatomic, assign) BOOL isShowGraduation; 51 | 52 | @end 53 | -------------------------------------------------------------------------------- /Pods/BGTableViewRowActionWithImage/README.md: -------------------------------------------------------------------------------- 1 | # BGTableViewRowActionWithImage 2 | 3 | A variation on the iOS 8.0+ `UITableViewRowAction` to support icons, with text below. Similar to the iOS 9 Mail application and various third-party applications as well. 4 | 5 | This isn't ideal, but it works until this becomes a built-in property for UITableViewRowAction. 6 | 7 | [![Version](https://img.shields.io/cocoapods/v/BGTableViewRowActionWithImage.svg?style=flat)](http://cocoapods.org/pods/BGTableViewRowActionWithImage) 8 | [![License](https://img.shields.io/cocoapods/l/BGTableViewRowActionWithImage.svg?style=flat)](http://cocoapods.org/pods/BGTableViewRowActionWithImage) 9 | [![Platform](https://img.shields.io/cocoapods/p/BGTableViewRowActionWithImage.svg?style=flat)](http://cocoapods.org/pods/BGTableViewRowActionWithImage) 10 | 11 | ## Usage 12 | 13 | ```objc 14 | + (instancetype)rowActionWithStyle:(UITableViewRowActionStyle)style title:(NSString *)title backgroundColor:(UIColor *)backgroundColor image:(UIImage *)image forCellHeight:(NSUInteger)cellHeight handler:(void (^)(UITableViewRowAction *, NSIndexPath *))handler; 15 | 16 | ``` 17 | 18 | Use this constructor **only** to configure the row action. Manually setting the `backgroundColor` will probably result in unexpected behavior. 19 | 20 | ## Demo 21 | 22 | ![Example screenshot](https://raw.github.com/benguild/BGTableViewRowActionWithImage/master/demo.jpg "Example screenshot") 23 | 24 | ## Installation 25 | 26 | BGTableViewRowActionWithImage is available through [CocoaPods](http://cocoapods.org). To install 27 | it, simply add the following line to your Podfile: 28 | 29 | ```ruby 30 | pod "BGTableViewRowActionWithImage" 31 | ``` 32 | 33 | ## Author 34 | 35 | Ben Guild, email@benguild.com 36 | 37 | ## License 38 | 39 | BGTableViewRowActionWithImage is available under the MIT license. See the LICENSE file for more info. 40 | -------------------------------------------------------------------------------- /Pods/FSCalendar/FSCalendar/FSCalendarCell.h: -------------------------------------------------------------------------------- 1 | // 2 | // FSCalendarCell.h 3 | // Pods 4 | // 5 | // Created by Wenchao Ding on 12/3/15. 6 | // 7 | // 8 | 9 | #import 10 | #import "FSCalendar.h" 11 | 12 | @interface FSCalendarCell : UICollectionViewCell 13 | 14 | @property (weak, nonatomic) FSCalendar *calendar; 15 | @property (weak, nonatomic) FSCalendarAppearance *appearance; 16 | 17 | @property (weak, nonatomic) UILabel *titleLabel; 18 | @property (weak, nonatomic) UILabel *subtitleLabel; 19 | @property (weak, nonatomic) UIImageView *imageView; 20 | 21 | @property (weak, nonatomic) CAShapeLayer *backgroundLayer; 22 | @property (weak, nonatomic) CAShapeLayer *eventLayer; 23 | 24 | @property (strong, nonatomic) NSDate *date; 25 | @property (strong, nonatomic) NSString *subtitle; 26 | @property (strong, nonatomic) UIImage *image; 27 | 28 | @property (assign, nonatomic) BOOL hasEvent; 29 | 30 | @property (assign, nonatomic) BOOL dateIsPlaceholder; 31 | @property (assign, nonatomic) BOOL dateIsSelected; 32 | @property (assign, nonatomic) BOOL dateIsToday; 33 | 34 | @property (readonly, nonatomic) BOOL weekend; 35 | 36 | @property (strong, nonatomic) UIColor *preferedSelectionColor; 37 | @property (strong, nonatomic) UIColor *preferedTitleDefaultColor; 38 | @property (strong, nonatomic) UIColor *preferedTitleSelectionColor; 39 | @property (strong, nonatomic) UIColor *preferedSubtitleDefaultColor; 40 | @property (strong, nonatomic) UIColor *preferedSubtitleSelectionColor; 41 | @property (strong, nonatomic) UIColor *preferedEventColor; 42 | @property (strong, nonatomic) UIColor *preferedBorderDefaultColor; 43 | @property (strong, nonatomic) UIColor *preferedBorderSelectionColor; 44 | @property (assign, nonatomic) FSCalendarCellShape preferedCellShape; 45 | 46 | - (UIColor *)colorForCurrentStateInDictionary:(NSDictionary *)dictionary; 47 | - (void)performSelecting; 48 | 49 | @end 50 | -------------------------------------------------------------------------------- /Nutrition Cal/Assets.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "iphone", 5 | "size" : "29x29", 6 | "scale" : "2x", 7 | "filename" : "Icon-Small@2x.png" 8 | }, 9 | { 10 | "idiom" : "iphone", 11 | "size" : "29x29", 12 | "scale" : "3x", 13 | "filename" : "Icon-Small@3x.png" 14 | }, 15 | { 16 | "idiom" : "iphone", 17 | "size" : "40x40", 18 | "scale" : "2x", 19 | "filename" : "Icon-40@2x.png" 20 | }, 21 | { 22 | "idiom" : "iphone", 23 | "size" : "40x40", 24 | "scale" : "3x", 25 | "filename" : "Icon-40@3x.png" 26 | }, 27 | { 28 | "idiom" : "iphone", 29 | "size" : "60x60", 30 | "scale" : "2x", 31 | "filename" : "Icon-60@2x.png" 32 | }, 33 | { 34 | "idiom" : "iphone", 35 | "size" : "60x60", 36 | "scale" : "3x", 37 | "filename" : "Icon-60@3x.png" 38 | }, 39 | { 40 | "idiom" : "ipad", 41 | "size" : "29x29", 42 | "scale" : "1x", 43 | "filename" : "Icon-Small.png" 44 | }, 45 | { 46 | "idiom" : "ipad", 47 | "size" : "29x29", 48 | "scale" : "2x", 49 | "filename" : "Icon-Small@2x.png" 50 | }, 51 | { 52 | "idiom" : "ipad", 53 | "size" : "40x40", 54 | "scale" : "1x", 55 | "filename" : "Icon-40.png" 56 | }, 57 | { 58 | "idiom" : "ipad", 59 | "size" : "40x40", 60 | "scale" : "2x", 61 | "filename" : "Icon-40@2x.png" 62 | }, 63 | { 64 | "idiom" : "ipad", 65 | "size" : "76x76", 66 | "scale" : "1x", 67 | "filename" : "Icon-76.png" 68 | }, 69 | { 70 | "idiom" : "ipad", 71 | "size" : "76x76", 72 | "scale" : "2x", 73 | "filename" : "Icon-76@2x.png" 74 | } 75 | ], 76 | "info" : { 77 | "version" : 1, 78 | "author" : "makeappicon" 79 | } 80 | } -------------------------------------------------------------------------------- /Pods/NVActivityIndicatorView/NVActivityIndicatorView/Animations/NVActivityIndicatorAnimationLineScale.swift: -------------------------------------------------------------------------------- 1 | // 2 | // NVActivityIndicatorAnimationBarScale.swift 3 | // NVActivityIndicatorViewDemo 4 | // 5 | // Created by Nguyen Vinh on 7/24/15. 6 | // Copyright (c) 2015 Nguyen Vinh. All rights reserved. 7 | // 8 | 9 | import UIKit 10 | 11 | class NVActivityIndicatorAnimationLineScale: NVActivityIndicatorAnimationDelegate { 12 | 13 | func setUpAnimationInLayer(layer: CALayer, size: CGSize, color: UIColor) { 14 | let lineSize = size.width / 9 15 | let x = (layer.bounds.size.width - size.width) / 2 16 | let y = (layer.bounds.size.height - size.height) / 2 17 | let duration: CFTimeInterval = 1 18 | let beginTime = CACurrentMediaTime() 19 | let beginTimes = [0.1, 0.2, 0.3, 0.4, 0.5] 20 | let timingFunction = CAMediaTimingFunction(controlPoints: 0.2, 0.68, 0.18, 1.08) 21 | 22 | // Animation 23 | let animation = CAKeyframeAnimation(keyPath: "transform.scale.y") 24 | 25 | animation.keyTimes = [0, 0.5, 1] 26 | animation.timingFunctions = [timingFunction, timingFunction] 27 | animation.values = [1, 0.4, 1] 28 | animation.duration = duration 29 | animation.repeatCount = HUGE 30 | animation.removedOnCompletion = false 31 | 32 | // Draw lines 33 | for var i = 0; i < 5; i++ { 34 | let line = NVActivityIndicatorShape.Line.createLayerWith(size: CGSize(width: lineSize, height: size.height), color: color) 35 | let frame = CGRect(x: x + lineSize * 2 * CGFloat(i), y: y, width: lineSize, height: size.height) 36 | 37 | animation.beginTime = beginTime + beginTimes[i] 38 | line.frame = frame 39 | line.addAnimation(animation, forKey: "animation") 40 | layer.addSublayer(line) 41 | } 42 | } 43 | } 44 | -------------------------------------------------------------------------------- /Nutrition Cal/Extensions.swift: -------------------------------------------------------------------------------- 1 | // 2 | // Extensions.swift 3 | // Nutrition Cal 4 | // 5 | // Created by Omar Albeik on 11/26/15. 6 | // Copyright © 2015 Omar Albeik. All rights reserved. 7 | // 8 | 9 | import UIKit 10 | import MaterialDesignColor 11 | 12 | extension NSDate { 13 | 14 | func isToday() -> Bool { 15 | let cal = NSCalendar.currentCalendar() 16 | var components = cal.components([.Era, .Year, .Month, .Day], fromDate:NSDate()) 17 | let today = cal.dateFromComponents(components)! 18 | 19 | components = cal.components([.Era, .Year, .Month, .Day], fromDate:self) 20 | let otherDate = cal.dateFromComponents(components)! 21 | 22 | if(today.isEqualToDate(otherDate)) { 23 | return true 24 | } else { 25 | return false 26 | } 27 | } 28 | 29 | func daysSince1970() -> Int { 30 | 31 | let dateIn1970 = NSDate(timeIntervalSince1970: NSTimeIntervalSince1970) 32 | 33 | let calendar = NSCalendar.currentCalendar() 34 | let components = calendar.components([.Day], fromDate: dateIn1970, toDate: self, options: []) 35 | 36 | return components.day 37 | } 38 | 39 | } 40 | 41 | extension CollectionType { 42 | func find(@noescape predicate: (Self.Generator.Element) throws -> Bool) rethrows -> Self.Generator.Element? { 43 | return try indexOf(predicate).map({self[$0]}) 44 | } 45 | } 46 | 47 | extension UIViewController { 48 | 49 | func presentMessage(title: String, message: String, action: String) { 50 | let alert = UIAlertController(title: title, message: message, preferredStyle: UIAlertControllerStyle.Alert) 51 | alert.addAction(UIAlertAction(title: action, style: UIAlertActionStyle.Default, handler: nil)) 52 | 53 | alert.view.tintColor = MaterialDesignColor.green500 54 | 55 | dispatch_async(dispatch_get_main_queue()) { 56 | self.presentViewController(alert, animated: true, completion: nil) 57 | alert.view.tintColor = MaterialDesignColor.green500 58 | } 59 | } 60 | 61 | } 62 | -------------------------------------------------------------------------------- /Pods/NVActivityIndicatorView/NVActivityIndicatorView/Animations/NVActivityIndicatorAnimationLineScaleParty.swift: -------------------------------------------------------------------------------- 1 | // 2 | // NVActivityIndicatorAnimationLineScaleParty.swift 3 | // NVActivityIndicatorViewDemo 4 | // 5 | // Created by Nguyen Vinh on 7/24/15. 6 | // Copyright (c) 2015 Nguyen Vinh. All rights reserved. 7 | // 8 | 9 | import UIKit 10 | 11 | class NVActivityIndicatorAnimationLineScaleParty: NVActivityIndicatorAnimationDelegate { 12 | 13 | func setUpAnimationInLayer(layer: CALayer, size: CGSize, color: UIColor) { 14 | let lineSize = size.width / 7 15 | let x = (layer.bounds.size.width - size.width) / 2 16 | let y = (layer.bounds.size.height - size.height) / 2 17 | let durations: [CFTimeInterval] = [1.26, 0.43, 1.01, 0.73] 18 | let beginTime = CACurrentMediaTime() 19 | let beginTimes: [CFTimeInterval] = [0.77, 0.29, 0.28, 0.74] 20 | let timingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionDefault) 21 | 22 | // Animation 23 | let animation = CAKeyframeAnimation(keyPath:"transform.scale") 24 | 25 | animation.keyTimes = [0, 0.5, 1] 26 | animation.timingFunctions = [timingFunction, timingFunction] 27 | animation.values = [1, 0.5, 1] 28 | animation.repeatCount = HUGE 29 | animation.removedOnCompletion = false 30 | 31 | for var i = 0; i < 4; i++ { 32 | let line = NVActivityIndicatorShape.Line.createLayerWith(size: CGSize(width: lineSize, height: size.height), color: color) 33 | let frame = CGRect(x: x + lineSize * 2 * CGFloat(i), y: y, width: lineSize, height: size.height) 34 | 35 | animation.beginTime = beginTime + beginTimes[i] 36 | animation.duration = durations[i] 37 | line.frame = frame 38 | line.addAnimation(animation, forKey: "animation") 39 | layer.addSublayer(line) 40 | } 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /Pods/NVActivityIndicatorView/NVActivityIndicatorView/Animations/NVActivityIndicatorAnimationBallScale.swift: -------------------------------------------------------------------------------- 1 | // 2 | // NVActivityIndicatorAnimationBallScale.swift 3 | // NVActivityIndicatorViewDemo 4 | // 5 | // Created by Nguyen Vinh on 7/24/15. 6 | // Copyright (c) 2015 Nguyen Vinh. All rights reserved. 7 | // 8 | 9 | import UIKit 10 | 11 | class NVActivityIndicatorAnimationBallScale: NVActivityIndicatorAnimationDelegate { 12 | 13 | func setUpAnimationInLayer(layer: CALayer, size: CGSize, color: UIColor) { 14 | let duration: CFTimeInterval = 1 15 | 16 | // Scale animation 17 | let scaleAnimation = CABasicAnimation(keyPath:"transform.scale") 18 | 19 | scaleAnimation.duration = duration; 20 | scaleAnimation.fromValue = 0; 21 | scaleAnimation.toValue = 1; 22 | 23 | // Opacity animation 24 | let opacityAnimation = CABasicAnimation(keyPath:"opacity") 25 | 26 | opacityAnimation.duration = duration; 27 | opacityAnimation.fromValue = 1; 28 | opacityAnimation.toValue = 0 29 | 30 | // Animation 31 | let animation = CAAnimationGroup() 32 | 33 | animation.animations = [scaleAnimation, opacityAnimation]; 34 | animation.timingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionEaseInEaseOut) 35 | animation.duration = duration 36 | animation.repeatCount = HUGE 37 | animation.removedOnCompletion = false 38 | 39 | // Draw circle 40 | let circle = NVActivityIndicatorShape.Circle.createLayerWith(size: size, color: color) 41 | 42 | circle.frame = CGRect(x: (layer.bounds.size.width - size.width) / 2, 43 | y: (layer.bounds.size.height - size.height) / 2, 44 | width: size.width, 45 | height: size.height); 46 | circle.addAnimation(animation, forKey: "animation") 47 | layer.addSublayer(circle) 48 | } 49 | } 50 | -------------------------------------------------------------------------------- /Pods/NVActivityIndicatorView/NVActivityIndicatorView/Animations/NVActivityIndicatorAnimationLineScalePulseOut.swift: -------------------------------------------------------------------------------- 1 | // 2 | // NVActivityIndicatorAnimationLineScalePulseOut.swift 3 | // NVActivityIndicatorViewDemo 4 | // 5 | // Created by Nguyen Vinh on 7/24/15. 6 | // Copyright (c) 2015 Nguyen Vinh. All rights reserved. 7 | // 8 | 9 | import UIKit 10 | 11 | class NVActivityIndicatorAnimationLineScalePulseOut: NVActivityIndicatorAnimationDelegate { 12 | 13 | func setUpAnimationInLayer(layer: CALayer, size: CGSize, color: UIColor) { 14 | let lineSize = size.width / 9 15 | let x = (layer.bounds.size.width - size.width) / 2 16 | let y = (layer.bounds.size.height - size.height) / 2 17 | let duration: CFTimeInterval = 1 18 | let beginTime = CACurrentMediaTime() 19 | let beginTimes = [0.4, 0.2, 0, 0.2, 0.4] 20 | let timingFunction = CAMediaTimingFunction(controlPoints: 0.85, 0.25, 0.37, 0.85) 21 | 22 | // Animation 23 | let animation = CAKeyframeAnimation(keyPath: "transform.scale.y") 24 | 25 | animation.keyTimes = [0, 0.5, 1] 26 | animation.timingFunctions = [timingFunction, timingFunction] 27 | animation.values = [1, 0.4, 1] 28 | animation.duration = duration 29 | animation.repeatCount = HUGE 30 | animation.removedOnCompletion = false 31 | 32 | // Draw lines 33 | for var i = 0; i < 5; i++ { 34 | let line = NVActivityIndicatorShape.Line.createLayerWith(size: CGSize(width: lineSize, height: size.height), color: color) 35 | let frame = CGRect(x: x + lineSize * 2 * CGFloat(i), 36 | y: y, 37 | width: lineSize, 38 | height: size.height) 39 | 40 | animation.beginTime = beginTime + beginTimes[i] 41 | line.frame = frame 42 | line.addAnimation(animation, forKey: "animation") 43 | layer.addSublayer(line) 44 | } 45 | } 46 | } 47 | -------------------------------------------------------------------------------- /Pods/FSCalendar/FSCalendar/FSCalendarDynamicHeader.h: -------------------------------------------------------------------------------- 1 | // 2 | // FSCalendarDynamicHeader.h 3 | // Pods 4 | // 5 | // Created by DingWenchao on 6/29/15. 6 | // 7 | // 动感头文件,仅供框架内部使用。 8 | // Private header, don't use it. 9 | // 10 | 11 | #import 12 | #import 13 | 14 | #import "FSCalendar.h" 15 | #import "FSCalendarCell.h" 16 | #import "FSCalendarHeader.h" 17 | 18 | 19 | @interface FSCalendar (Dynamic) 20 | 21 | @property (readonly, nonatomic) FSCalendarHeader *header; 22 | @property (readonly, nonatomic) UICollectionView *collectionView; 23 | @property (readonly, nonatomic) UICollectionViewFlowLayout *collectionViewLayout; 24 | @property (readonly, nonatomic) NSArray *weekdays; 25 | @property (readonly, nonatomic) BOOL ibEditing; 26 | @property (readonly, nonatomic) BOOL floatingMode; 27 | @property (readonly, nonatomic) NSArray *visibleStickyHeaders; 28 | @property (readonly, nonatomic) CGFloat preferedHeaderHeight; 29 | @property (readonly, nonatomic) CGFloat preferedWeekdayHeight; 30 | @property (readonly, nonatomic) CGFloat preferedRowHeight; 31 | 32 | @property (readonly, nonatomic) NSCalendar *calendar; 33 | @property (readonly, nonatomic) NSDateComponents *components; 34 | @property (readonly, nonatomic) NSDateFormatter *formatter; 35 | 36 | - (void)invalidateHeaders; 37 | - (void)invalidateWeekdaySymbols; 38 | - (void)invalidateAppearanceForCell:(FSCalendarCell *)cell; 39 | 40 | @end 41 | 42 | @interface FSCalendarAppearance (Dynamic) 43 | 44 | @property (readwrite, nonatomic) FSCalendar *calendar; 45 | 46 | @property (readonly, nonatomic) NSDictionary *backgroundColors; 47 | @property (readonly, nonatomic) NSDictionary *titleColors; 48 | @property (readonly, nonatomic) NSDictionary *subtitleColors; 49 | @property (readonly, nonatomic) NSDictionary *borderColors; 50 | 51 | - (void)adjustTitleIfNecessary; 52 | 53 | @end 54 | 55 | 56 | @interface FSCalendarHeader (Dynamic) 57 | 58 | @property (readonly, nonatomic) UICollectionView *collectionView; 59 | 60 | @end 61 | 62 | -------------------------------------------------------------------------------- /Pods/NVActivityIndicatorView/NVActivityIndicatorView/Animations/NVActivityIndicatorAnimationBallClipRotate.swift: -------------------------------------------------------------------------------- 1 | // 2 | // NVActivityIndicatorBallClipRotate.swift 3 | // NVActivityIndicatorViewDemo 4 | // 5 | // Created by Nguyen Vinh on 7/23/15. 6 | // Copyright (c) 2015 Nguyen Vinh. All rights reserved. 7 | // 8 | 9 | import UIKit 10 | 11 | class NVActivityIndicatorAnimationBallClipRotate: NVActivityIndicatorAnimationDelegate { 12 | 13 | func setUpAnimationInLayer(layer: CALayer, size: CGSize, color: UIColor) { 14 | let duration: CFTimeInterval = 0.75 15 | 16 | // Scale animation 17 | let scaleAnimation = CAKeyframeAnimation(keyPath: "transform.scale") 18 | 19 | scaleAnimation.keyTimes = [0, 0.5, 1] 20 | scaleAnimation.values = [1, 0.6, 1] 21 | 22 | // Rotate animation 23 | let rotateAnimation = CAKeyframeAnimation(keyPath: "transform.rotation.z") 24 | 25 | rotateAnimation.keyTimes = scaleAnimation.keyTimes 26 | rotateAnimation.values = [0, M_PI, 2 * M_PI] 27 | 28 | // Animation 29 | let animation = CAAnimationGroup() 30 | 31 | animation.animations = [scaleAnimation, rotateAnimation] 32 | animation.timingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionLinear) 33 | animation.duration = duration 34 | animation.repeatCount = HUGE 35 | animation.removedOnCompletion = false 36 | 37 | // Draw circle 38 | let circle = NVActivityIndicatorShape.RingThirdFour.createLayerWith(size: CGSize(width: size.width, height: size.height), color: color) 39 | let frame = CGRect(x: (layer.bounds.size.width - size.width) / 2, 40 | y: (layer.bounds.size.height - size.height) / 2, 41 | width: size.width, 42 | height: size.height) 43 | 44 | circle.frame = frame 45 | circle.addAnimation(animation, forKey: "animation") 46 | layer.addSublayer(circle) 47 | } 48 | } 49 | -------------------------------------------------------------------------------- /Pods/NVActivityIndicatorView/NVActivityIndicatorView/Animations/NVActivityIndicatorAnimationLineScalePulseOutRapid.swift: -------------------------------------------------------------------------------- 1 | // 2 | // NVActivityIndicatorAnimationLineScalePulseOutRapid.swift 3 | // NVActivityIndicatorViewDemo 4 | // 5 | // Created by Nguyen Vinh on 7/24/15. 6 | // Copyright (c) 2015 Nguyen Vinh. All rights reserved. 7 | // 8 | 9 | import UIKit 10 | 11 | class NVActivityIndicatorAnimationLineScalePulseOutRapid: NVActivityIndicatorAnimationDelegate { 12 | 13 | func setUpAnimationInLayer(layer: CALayer, size: CGSize, color: UIColor) { 14 | let lineSize = size.width / 9 15 | let x = (layer.bounds.size.width - size.width) / 2 16 | let y = (layer.bounds.size.height - size.height) / 2 17 | let duration: CFTimeInterval = 0.9 18 | let beginTime = CACurrentMediaTime() 19 | let beginTimes = [0.5, 0.25, 0, 0.25, 0.5] 20 | let timingFunction = CAMediaTimingFunction(controlPoints: 0.11, 0.49, 0.38, 0.78) 21 | 22 | // Animation 23 | let animation = CAKeyframeAnimation(keyPath: "transform.scale.y") 24 | 25 | animation.keyTimes = [0, 0.8, 0.9] 26 | animation.timingFunctions = [timingFunction, timingFunction] 27 | animation.beginTime = beginTime 28 | animation.values = [1, 0.3, 1] 29 | animation.duration = duration 30 | animation.repeatCount = HUGE 31 | animation.removedOnCompletion = false 32 | 33 | // Draw lines 34 | for var i = 0; i < 5; i++ { 35 | let line = NVActivityIndicatorShape.Line.createLayerWith(size: CGSize(width: lineSize, height: size.height), color: color) 36 | let frame = CGRect(x: x + lineSize * 2 * CGFloat(i), 37 | y: y, 38 | width: lineSize, 39 | height: size.height) 40 | 41 | animation.beginTime = beginTime + beginTimes[i] 42 | line.frame = frame 43 | line.addAnimation(animation, forKey: "animation") 44 | layer.addSublayer(line) 45 | } 46 | } 47 | } 48 | -------------------------------------------------------------------------------- /Pods/PNChart/PNChart/PNPieChart.h: -------------------------------------------------------------------------------- 1 | // 2 | // PNPieChart.h 3 | // PNChartDemo 4 | // 5 | // Created by Hang Zhang on 14-5-5. 6 | // Copyright (c) 2014年 kevinzhow. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "PNPieChartDataItem.h" 11 | #import "PNGenericChart.h" 12 | #import "PNChartDelegate.h" 13 | 14 | @interface PNPieChart : PNGenericChart 15 | 16 | - (id)initWithFrame:(CGRect)frame items:(NSArray *)items; 17 | 18 | @property (nonatomic, readonly) NSArray *items; 19 | 20 | /** Default is 18-point Avenir Medium. */ 21 | @property (nonatomic) UIFont *descriptionTextFont; 22 | 23 | /** Default is white. */ 24 | @property (nonatomic) UIColor *descriptionTextColor; 25 | 26 | /** Default is black, with an alpha of 0.4. */ 27 | @property (nonatomic) UIColor *descriptionTextShadowColor; 28 | 29 | /** Default is CGSizeMake(0, 1). */ 30 | @property (nonatomic) CGSize descriptionTextShadowOffset; 31 | 32 | /** Default is 1.0. */ 33 | @property (nonatomic) NSTimeInterval duration; 34 | 35 | /** Show only values, this is useful when legend is present */ 36 | @property (nonatomic) BOOL showOnlyValues; 37 | 38 | /** Show absolute values not relative i.e. percentages */ 39 | @property (nonatomic) BOOL showAbsoluteValues; 40 | 41 | /** Hide percentage labels less than cutoff value */ 42 | @property (nonatomic, assign) CGFloat labelPercentageCutoff; 43 | 44 | /** Default YES. */ 45 | @property (nonatomic) BOOL shouldHighlightSectorOnTouch; 46 | 47 | /** Current outer radius. Override recompute() to change this. **/ 48 | @property (nonatomic) CGFloat outerCircleRadius; 49 | 50 | /** Current inner radius. Override recompute() to change this. **/ 51 | @property (nonatomic) CGFloat innerCircleRadius; 52 | 53 | @property (nonatomic, weak) id delegate; 54 | 55 | /** Update chart items. Does not update chart itself. */ 56 | - (void)updateChartData:(NSArray *)data; 57 | 58 | /** Multiple selection */ 59 | @property (nonatomic, assign) BOOL enableMultipleSelection; 60 | 61 | - (void)strokeChart; 62 | 63 | - (void)recompute; 64 | 65 | @end 66 | -------------------------------------------------------------------------------- /Pods/NVActivityIndicatorView/NVActivityIndicatorView/Animations/NVActivityIndicatorAnimationBallPulse.swift: -------------------------------------------------------------------------------- 1 | // 2 | // NVActivityIndicatorAnimationBallPulse.swift 3 | // NVActivityIndicatorViewDemo 4 | // 5 | // Created by Nguyen Vinh on 7/23/15. 6 | // Copyright (c) 2015 Nguyen Vinh. All rights reserved. 7 | // 8 | 9 | import UIKit 10 | 11 | class NVActivityIndicatorAnimationBallPulse: NVActivityIndicatorAnimationDelegate { 12 | func setUpAnimationInLayer(layer: CALayer, size: CGSize, color: UIColor) { 13 | let circleSpacing: CGFloat = 2 14 | let circleSize: CGFloat = (size.width - 2 * circleSpacing) / 3 15 | let x: CGFloat = (layer.bounds.size.width - size.width) / 2 16 | let y: CGFloat = (layer.bounds.size.height - circleSize) / 2 17 | let duration: CFTimeInterval = 0.75 18 | let beginTime = CACurrentMediaTime() 19 | let beginTimes: [CFTimeInterval] = [0.12, 0.24, 0.36] 20 | let timingFunction = CAMediaTimingFunction(controlPoints: 0.2, 0.68, 0.18, 1.08) 21 | let animation = CAKeyframeAnimation(keyPath: "transform.scale") 22 | 23 | // Animation 24 | animation.keyTimes = [0, 0.3, 1] 25 | animation.timingFunctions = [timingFunction, timingFunction] 26 | animation.values = [1, 0.3, 1] 27 | animation.duration = duration 28 | animation.repeatCount = HUGE 29 | animation.removedOnCompletion = false 30 | 31 | // Draw circles 32 | for var i = 0; i < 3; i++ { 33 | let circle = NVActivityIndicatorShape.Circle.createLayerWith(size: CGSize(width: circleSize, height: circleSize), color: color) 34 | let frame = CGRect(x: x + circleSize * CGFloat(i) + circleSpacing * CGFloat(i), 35 | y: y, 36 | width: circleSize, 37 | height: circleSize) 38 | 39 | animation.beginTime = beginTime + beginTimes[i] 40 | circle.frame = frame 41 | circle.addAnimation(animation, forKey: "animation") 42 | layer.addSublayer(circle) 43 | } 44 | } 45 | } 46 | -------------------------------------------------------------------------------- /Pods/FSCalendar/FSCalendar/FSCalendarConstance.h: -------------------------------------------------------------------------------- 1 | // 2 | // FSCalendarConstane.h 3 | // FSCalendar 4 | // 5 | // Created by dingwenchao on 8/28/15. 6 | // Copyright (c) 2015 wenchaoios. All rights reserved. 7 | // 8 | 9 | #import 10 | #import 11 | 12 | #pragma mark - Constance 13 | 14 | UIKIT_EXTERN CGFloat const FSCalendarStandardHeaderHeight; 15 | UIKIT_EXTERN CGFloat const FSCalendarStandardWeekdayHeight; 16 | UIKIT_EXTERN CGFloat const FSCalendarStandardMonthlyPageHeight; 17 | UIKIT_EXTERN CGFloat const FSCalendarStandardWeeklyPageHeight; 18 | UIKIT_EXTERN CGFloat const FSCalendarStandardCellDiameter; 19 | UIKIT_EXTERN CGFloat const FSCalendarAutomaticDimension; 20 | UIKIT_EXTERN CGFloat const FSCalendarDefaultBounceAnimationDuration; 21 | UIKIT_EXTERN CGFloat const FSCalendarStandardRowHeight; 22 | UIKIT_EXTERN CGFloat const FSCalendarStandardTitleTextSize; 23 | UIKIT_EXTERN CGFloat const FSCalendarStandardSubtitleTextSize; 24 | UIKIT_EXTERN CGFloat const FSCalendarStandardWeekdayTextSize; 25 | UIKIT_EXTERN CGFloat const FSCalendarStandardHeaderTextSize; 26 | 27 | #define FSCalendarDeviceIsIPad [[UIDevice currentDevice].model hasPrefix:@"iPad"] 28 | 29 | #define FSCalendarStandardSelectionColor FSColorRGBA(31,119,219,1.0) 30 | #define FSCalendarStandardTodayColor FSColorRGBA(198,51,42 ,1.0) 31 | #define FSCalendarStandardTitleTextColor FSColorRGBA(14,69,221 ,1.0) 32 | #define FSCalendarStandardEventDotColor FSColorRGBA(31,119,219,0.75) 33 | 34 | #define FSColorRGBA(r,g,b,a) [UIColor colorWithRed:r/255.0 green:g/255.0 blue:b/255.0 alpha:a] 35 | 36 | #pragma mark - Deprecated 37 | 38 | #define FSCalendarDeprecated(message) __attribute((deprecated(message))) 39 | 40 | FSCalendarDeprecated("use \'FSCalendarCellShape\' instead") 41 | typedef NS_ENUM(NSInteger, FSCalendarCellStyle) { 42 | FSCalendarCellStyleCircle = 0, 43 | FSCalendarCellStyleRectangle = 1 44 | }; 45 | 46 | FSCalendarDeprecated("use \'FSCalendarScrollDirection\' instead") 47 | typedef NS_ENUM(NSInteger, FSCalendarFlow) { 48 | FSCalendarFlowVertical, 49 | FSCalendarFlowHorizontal 50 | }; 51 | -------------------------------------------------------------------------------- /Pods/NVActivityIndicatorView/NVActivityIndicatorView/Animations/NVActivityIndicatorAnimationBallScaleRipple.swift: -------------------------------------------------------------------------------- 1 | // 2 | // NVActivityIndicatorAnimationBallScaleRipple.swift 3 | // NVActivityIndicatorViewDemo 4 | // 5 | // Created by Nguyen Vinh on 7/24/15. 6 | // Copyright (c) 2015 Nguyen Vinh. All rights reserved. 7 | // 8 | 9 | import UIKit 10 | 11 | class NVActivityIndicatorAnimationBallScaleRipple: NVActivityIndicatorAnimationDelegate { 12 | 13 | func setUpAnimationInLayer(layer: CALayer, size: CGSize, color: UIColor) { 14 | let duration: CFTimeInterval = 1 15 | let timingFunction = CAMediaTimingFunction(controlPoints: 0.21, 0.53, 0.56, 0.8) 16 | 17 | // Scale animation 18 | let scaleAnimation = CAKeyframeAnimation(keyPath: "transform.scale") 19 | 20 | scaleAnimation.keyTimes = [0, 0.7] 21 | scaleAnimation.timingFunction = timingFunction 22 | scaleAnimation.values = [0.1, 1] 23 | scaleAnimation.duration = duration 24 | 25 | // Opacity animation 26 | let opacityAnimation = CAKeyframeAnimation(keyPath: "opacity") 27 | 28 | opacityAnimation.keyTimes = [0, 0.7, 1] 29 | opacityAnimation.timingFunctions = [timingFunction, timingFunction] 30 | opacityAnimation.values = [1, 0.7, 0] 31 | opacityAnimation.duration = duration 32 | 33 | // Animation 34 | let animation = CAAnimationGroup() 35 | 36 | animation.animations = [scaleAnimation, opacityAnimation] 37 | animation.duration = duration 38 | animation.repeatCount = HUGE 39 | animation.removedOnCompletion = false 40 | 41 | // Draw circle 42 | let circle = NVActivityIndicatorShape.Ring.createLayerWith(size: size, color: color) 43 | let frame = CGRect(x: (layer.bounds.size.width - size.width) / 2, 44 | y: (layer.bounds.size.height - size.height) / 2, 45 | width: size.width, 46 | height: size.height) 47 | 48 | circle.frame = frame 49 | circle.addAnimation(animation, forKey: "animation") 50 | layer.addSublayer(circle) 51 | } 52 | } 53 | -------------------------------------------------------------------------------- /Pods/NVActivityIndicatorView/NVActivityIndicatorView/Animations/NVActivityIndicatorAnimationBallPulseSync.swift: -------------------------------------------------------------------------------- 1 | // 2 | // NVActivityIndicatorAnimationBallPulseSync.swift 3 | // NVActivityIndicatorViewDemo 4 | // 5 | // Created by Nguyen Vinh on 7/24/15. 6 | // Copyright (c) 2015 Nguyen Vinh. All rights reserved. 7 | // 8 | 9 | import UIKit 10 | 11 | class NVActivityIndicatorAnimationBallPulseSync: NVActivityIndicatorAnimationDelegate { 12 | 13 | func setUpAnimationInLayer(layer: CALayer, size: CGSize, color: UIColor) { 14 | let circleSpacing: CGFloat = 2 15 | let circleSize = (size.width - circleSpacing * 2) / 3 16 | let x = (layer.bounds.size.width - size.width) / 2 17 | let y = (layer.bounds.size.height - circleSize) / 2 18 | let deltaY = (size.height / 2 - circleSize / 2) / 2 19 | let duration: CFTimeInterval = 0.6 20 | let beginTime = CACurrentMediaTime() 21 | let beginTimes: [CFTimeInterval] = [0.07, 0.14, 0.21] 22 | let timingFunciton = CAMediaTimingFunction(name: kCAMediaTimingFunctionEaseInEaseOut) 23 | 24 | // Animation 25 | let animation = CAKeyframeAnimation(keyPath: "transform.translation.y") 26 | 27 | animation.keyTimes = [0, 0.33, 0.66, 1] 28 | animation.timingFunctions = [timingFunciton, timingFunciton, timingFunciton] 29 | animation.values = [0, deltaY, -deltaY, 0] 30 | animation.duration = duration 31 | animation.repeatCount = HUGE 32 | animation.removedOnCompletion = false 33 | 34 | // Draw circles 35 | for var i = 0; i < 3; i++ { 36 | let circle = NVActivityIndicatorShape.Circle.createLayerWith(size: CGSize(width: circleSize, height: circleSize), color: color) 37 | let frame = CGRect(x: x + circleSize * CGFloat(i) + circleSpacing * CGFloat(i), 38 | y: y, 39 | width: circleSize, 40 | height: circleSize) 41 | 42 | animation.beginTime = beginTime + beginTimes[i] 43 | circle.frame = frame 44 | circle.addAnimation(animation, forKey: "animation") 45 | layer.addSublayer(circle) 46 | } 47 | } 48 | } 49 | -------------------------------------------------------------------------------- /Pods/NVActivityIndicatorView/NVActivityIndicatorView/Animations/NVActivityIndicatorAnimationBallScaleMultiple.swift: -------------------------------------------------------------------------------- 1 | // 2 | // NVActivityIndicatorAnimationBallScaleMultiple.swift 3 | // NVActivityIndicatorViewDemo 4 | // 5 | // Created by Nguyen Vinh on 7/24/15. 6 | // Copyright (c) 2015 Nguyen Vinh. All rights reserved. 7 | // 8 | 9 | import UIKit 10 | 11 | class NVActivityIndicatorAnimationBallScaleMultiple: NVActivityIndicatorAnimationDelegate { 12 | 13 | func setUpAnimationInLayer(layer: CALayer, size: CGSize, color: UIColor) { 14 | let duration: CFTimeInterval = 1 15 | let beginTime = CACurrentMediaTime() 16 | let beginTimes = [0, 0.2, 0.4] 17 | 18 | // Scale animation 19 | let scaleAnimation = CABasicAnimation(keyPath: "transform.scale") 20 | 21 | scaleAnimation.duration = duration 22 | scaleAnimation.fromValue = 0 23 | scaleAnimation.toValue = 1 24 | 25 | // Opacity animation 26 | let opacityAnimation = CAKeyframeAnimation(keyPath: "opacity") 27 | 28 | opacityAnimation.duration = duration 29 | opacityAnimation.keyTimes = [0, 0.05, 1] 30 | opacityAnimation.values = [0, 1, 0] 31 | 32 | // Animation 33 | let animation = CAAnimationGroup() 34 | 35 | animation.animations = [scaleAnimation, opacityAnimation] 36 | animation.timingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionLinear) 37 | animation.duration = duration 38 | animation.repeatCount = HUGE 39 | animation.removedOnCompletion = false 40 | 41 | // Draw balls 42 | for var i = 0; i < 3; i++ { 43 | let circle = NVActivityIndicatorShape.Circle.createLayerWith(size: size, color: color) 44 | let frame = CGRect(x: (layer.bounds.size.width - size.width) / 2, 45 | y: (layer.bounds.size.height - size.height) / 2, 46 | width: size.width, 47 | height: size.height) 48 | 49 | animation.beginTime = beginTime + beginTimes[i] 50 | circle.frame = frame 51 | circle.opacity = 0 52 | circle.addAnimation(animation, forKey: "animation") 53 | layer.addSublayer(circle) 54 | } 55 | } 56 | } 57 | -------------------------------------------------------------------------------- /Pods/NVActivityIndicatorView/NVActivityIndicatorView/Animations/NVActivityIndicatorAnimationBallGridBeat.swift: -------------------------------------------------------------------------------- 1 | // 2 | // NVActivityIndicatorAnimationBallGridBeat.swift 3 | // NVActivityIndicatorViewDemo 4 | // 5 | // Created by Nguyen Vinh on 7/24/15. 6 | // Copyright (c) 2015 Nguyen Vinh. All rights reserved. 7 | // 8 | 9 | import UIKit 10 | 11 | class NVActivityIndicatorAnimationBallGridBeat: NVActivityIndicatorAnimationDelegate { 12 | 13 | func setUpAnimationInLayer(layer: CALayer, size: CGSize, color: UIColor) { 14 | let circleSpacing: CGFloat = 2 15 | let circleSize = (size.width - circleSpacing * 2) / 3 16 | let x = (layer.bounds.size.width - size.width) / 2 17 | let y = (layer.bounds.size.height - size.height) / 2 18 | let durations = [0.96, 0.93, 1.19, 1.13, 1.34, 0.94, 1.2, 0.82, 1.19] 19 | let beginTime = CACurrentMediaTime() 20 | let beginTimes = [0.36, 0.4, 0.68, 0.41, 0.71, -0.15, -0.12, 0.01, 0.32] 21 | let timingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionDefault) 22 | 23 | // Animation 24 | let animation = CAKeyframeAnimation(keyPath: "opacity") 25 | 26 | animation.keyTimes = [0, 0.5, 1] 27 | animation.timingFunctions = [timingFunction, timingFunction] 28 | animation.values = [1, 0.7, 1] 29 | animation.repeatCount = HUGE 30 | animation.removedOnCompletion = false 31 | 32 | // Draw circles 33 | for var i = 0; i < 3; i++ { 34 | for var j = 0; j < 3; j++ { 35 | let circle = NVActivityIndicatorShape.Circle.createLayerWith(size: CGSize(width: circleSize, height: circleSize), color: color) 36 | let frame = CGRect(x: x + circleSize * CGFloat(j) + circleSpacing * CGFloat(j), 37 | y: y + circleSize * CGFloat(i) + circleSpacing * CGFloat(i), 38 | width: circleSize, 39 | height: circleSize) 40 | 41 | animation.duration = durations[3 * i + j] 42 | animation.beginTime = beginTime + beginTimes[3 * i + j] 43 | circle.frame = frame 44 | circle.addAnimation(animation, forKey: "animation") 45 | layer.addSublayer(circle) 46 | } 47 | } 48 | } 49 | } 50 | -------------------------------------------------------------------------------- /Pods/NVActivityIndicatorView/NVActivityIndicatorView/Animations/NVActivityIndicatorAnimationBallScaleRippleMultiple.swift: -------------------------------------------------------------------------------- 1 | // 2 | // NVActivityIndicatorAnimationBallScaleRippleMultiple.swift 3 | // NVActivityIndicatorViewDemo 4 | // 5 | // Created by Nguyen Vinh on 7/24/15. 6 | // Copyright (c) 2015 Nguyen Vinh. All rights reserved. 7 | // 8 | 9 | import UIKit 10 | 11 | class NVActivityIndicatorAnimationBallScaleRippleMultiple: NVActivityIndicatorAnimationDelegate { 12 | 13 | func setUpAnimationInLayer(layer: CALayer, size: CGSize, color: UIColor) { 14 | let duration: CFTimeInterval = 1.25 15 | let beginTime = CACurrentMediaTime() 16 | let beginTimes = [0.0, 0.2, 0.4] 17 | let timingFunction = CAMediaTimingFunction(controlPoints: 0.21, 0.53, 0.56, 0.8) 18 | 19 | // Scale animation 20 | let scaleAnimation = CAKeyframeAnimation(keyPath: "transform.scale") 21 | 22 | scaleAnimation.keyTimes = [0, 0.7] 23 | scaleAnimation.timingFunction = timingFunction 24 | scaleAnimation.values = [0, 1.0] 25 | scaleAnimation.duration = duration 26 | 27 | // Opacity animation 28 | let opacityAnimation = CAKeyframeAnimation(keyPath: "opacity") 29 | 30 | opacityAnimation.keyTimes = [0, 0.7, 1] 31 | opacityAnimation.timingFunctions = [timingFunction, timingFunction] 32 | opacityAnimation.values = [1, 0.7, 0] 33 | opacityAnimation.duration = duration 34 | 35 | // Animation 36 | let animation = CAAnimationGroup() 37 | 38 | animation.animations = [scaleAnimation, opacityAnimation] 39 | animation.duration = duration 40 | animation.repeatCount = HUGE 41 | animation.removedOnCompletion = false 42 | 43 | // Draw circles 44 | for var i = 0; i < 3; i++ { 45 | let circle = NVActivityIndicatorShape.Ring.createLayerWith(size: size, color: color) 46 | let frame = CGRect(x: (layer.bounds.size.width - size.width) / 2, 47 | y: (layer.bounds.size.height - size.height) / 2, 48 | width: size.width, 49 | height: size.height) 50 | 51 | animation.beginTime = beginTime + beginTimes[i] 52 | circle.frame = frame 53 | circle.addAnimation(animation, forKey: "animation") 54 | layer.addSublayer(circle) 55 | } 56 | } 57 | } 58 | -------------------------------------------------------------------------------- /Pods/PNChart/PNChart/PNScatterChart.h: -------------------------------------------------------------------------------- 1 | // 2 | // PNScatterChart.h 3 | // PNChartDemo 4 | // 5 | // Created by Alireza Arabi on 12/4/14. 6 | // Copyright (c) 2014 kevinzhow. All rights reserved. 7 | // 8 | 9 | #import 10 | #import 11 | #import "PNChartDelegate.h" 12 | #import "PNGenericChart.h" 13 | #import "PNScatterChartData.h" 14 | #import "PNScatterChartDataItem.h" 15 | 16 | @interface PNScatterChart : PNGenericChart 17 | 18 | @property (nonatomic, retain) id delegate; 19 | 20 | /** Array of `ScatterChartData` objects, one for each line. */ 21 | @property (nonatomic) NSArray *chartData; 22 | 23 | /** Controls whether to show the coordinate axis. Default is NO. */ 24 | @property (nonatomic, getter = isShowCoordinateAxis) BOOL showCoordinateAxis; 25 | @property (nonatomic) UIColor *axisColor; 26 | @property (nonatomic) CGFloat axisWidth; 27 | 28 | /** String formatter for float values in x-axis/y-axis labels. If not set, defaults to @"%1.f" */ 29 | @property (nonatomic, strong) NSString *xLabelFormat; 30 | @property (nonatomic, strong) NSString *yLabelFormat; 31 | 32 | /** Default is true. */ 33 | @property (nonatomic) BOOL showLabel; 34 | 35 | /** Default is 18-point Avenir Medium. */ 36 | @property (nonatomic) UIFont *descriptionTextFont; 37 | 38 | /** Default is white. */ 39 | @property (nonatomic) UIColor *descriptionTextColor; 40 | 41 | /** Default is black, with an alpha of 0.4. */ 42 | @property (nonatomic) UIColor *descriptionTextShadowColor; 43 | 44 | /** Default is CGSizeMake(0, 1). */ 45 | @property (nonatomic) CGSize descriptionTextShadowOffset; 46 | 47 | /** Default is 1.0. */ 48 | @property (nonatomic) NSTimeInterval duration; 49 | 50 | @property (nonatomic) CGFloat AxisX_minValue; 51 | @property (nonatomic) CGFloat AxisX_maxValue; 52 | 53 | @property (nonatomic) CGFloat AxisY_minValue; 54 | @property (nonatomic) CGFloat AxisY_maxValue; 55 | 56 | - (void) setAxisXWithMinimumValue:(CGFloat)minVal andMaxValue:(CGFloat)maxVal toTicks:(int)numberOfTicks; 57 | - (void) setAxisYWithMinimumValue:(CGFloat)minVal andMaxValue:(CGFloat)maxVal toTicks:(int)numberOfTicks; 58 | - (void) setAxisXLabel:(NSArray *)array; 59 | - (void) setAxisYLabel:(NSArray *)array; 60 | - (void) setup; 61 | - (void) drawLineFromPoint : (CGPoint) startPoint ToPoint : (CGPoint) endPoint WithLineWith : (CGFloat) lineWidth AndWithColor : (UIColor*) color; 62 | 63 | /** 64 | * Update Chart Value 65 | */ 66 | 67 | - (void)updateChartData:(NSArray *)data; 68 | 69 | @end 70 | -------------------------------------------------------------------------------- /Pods/NVActivityIndicatorView/NVActivityIndicatorView/Animations/NVActivityIndicatorAnimationBallBeat.swift: -------------------------------------------------------------------------------- 1 | // 2 | // NVActivityIndicatorAnimationBallBeat.swift 3 | // NVActivityIndicatorViewDemo 4 | // 5 | // Created by Nguyen Vinh on 7/24/15. 6 | // Copyright (c) 2015 Nguyen Vinh. All rights reserved. 7 | // 8 | 9 | import UIKit 10 | 11 | class NVActivityIndicatorAnimationBallBeat: NVActivityIndicatorAnimationDelegate { 12 | 13 | func setUpAnimationInLayer(layer: CALayer, size: CGSize, color: UIColor) { 14 | let circleSpacing: CGFloat = 2 15 | let circleSize = (size.width - circleSpacing * 2) / 3 16 | let x = (layer.bounds.size.width - size.width) / 2 17 | let y = (layer.bounds.size.height - circleSize) / 2 18 | let duration: CFTimeInterval = 0.7 19 | let beginTime = CACurrentMediaTime() 20 | let beginTimes = [0.35, 0, 0.35] 21 | 22 | // Scale animation 23 | let scaleAnimation = CAKeyframeAnimation(keyPath: "transform.scale") 24 | 25 | scaleAnimation.keyTimes = [0, 0.5, 1] 26 | scaleAnimation.values = [1, 0.75, 1] 27 | scaleAnimation.duration = duration 28 | 29 | // Opacity animation 30 | let opacityAnimation = CAKeyframeAnimation(keyPath: "opacity") 31 | 32 | opacityAnimation.keyTimes = [0, 0.5, 1] 33 | opacityAnimation.values = [1, 0.2, 1] 34 | opacityAnimation.duration = duration 35 | 36 | // Aniamtion 37 | let animation = CAAnimationGroup() 38 | 39 | animation.animations = [scaleAnimation, opacityAnimation] 40 | animation.timingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionLinear) 41 | animation.duration = duration 42 | animation.repeatCount = HUGE 43 | animation.removedOnCompletion = false 44 | 45 | // Draw circles 46 | for var i = 0; i < 3; i++ { 47 | let circle = NVActivityIndicatorShape.Circle.createLayerWith(size: CGSize(width: circleSize, height: circleSize), color: color) 48 | let frame = CGRect(x: x + circleSize * CGFloat(i) + circleSpacing * CGFloat(i), 49 | y: y, 50 | width: circleSize, 51 | height: circleSize) 52 | 53 | animation.beginTime = beginTime + beginTimes[i] 54 | circle.frame = frame 55 | circle.addAnimation(animation, forKey: "animation") 56 | layer.addSublayer(circle) 57 | } 58 | } 59 | } 60 | -------------------------------------------------------------------------------- /Pods/FSCalendar/FSCalendar/FSCalendarFlowLayout.m: -------------------------------------------------------------------------------- 1 | // 2 | // FSCalendarFlowLayout.m 3 | // FSCalendar 4 | // 5 | // Created by Wenchao Ding on 10/25/15. 6 | // Copyright (c) 2015 wenchaoios. All rights reserved. 7 | // 8 | 9 | #import "FSCalendarFlowLayout.h" 10 | #import "UIView+FSExtension.h" 11 | #import "FSCalendarDynamicHeader.h" 12 | 13 | @implementation FSCalendarFlowLayout 14 | 15 | - (instancetype)init 16 | { 17 | self = [super init]; 18 | if (self) { 19 | self.scrollDirection = UICollectionViewScrollDirectionHorizontal; 20 | self.minimumInteritemSpacing = 0; 21 | self.minimumLineSpacing = 0; 22 | self.itemSize = CGSizeMake(1, 1); 23 | self.sectionInset = UIEdgeInsetsZero; 24 | } 25 | return self; 26 | } 27 | 28 | - (void)prepareLayout 29 | { 30 | [super prepareLayout]; 31 | 32 | CGFloat rowHeight = _calendar.preferedRowHeight; 33 | 34 | if (!_calendar.floatingMode) { 35 | 36 | self.headerReferenceSize = CGSizeZero; 37 | switch (_calendar.scope) { 38 | case FSCalendarScopeMonth: { 39 | self.itemSize = CGSizeMake( 40 | self.collectionView.fs_width/7-(self.scrollDirection == UICollectionViewScrollDirectionVertical)*0.1, 41 | rowHeight 42 | ); 43 | CGFloat padding = (self.collectionView.fs_height-rowHeight*6)/2; 44 | self.sectionInset = UIEdgeInsetsMake(padding, 0, padding, 0); 45 | break; 46 | } 47 | case FSCalendarScopeWeek: { 48 | self.itemSize = CGSizeMake(self.collectionView.fs_width/7, rowHeight); 49 | CGFloat padding = (self.collectionView.fs_height-rowHeight)/2; 50 | self.sectionInset = UIEdgeInsetsMake(padding, 0, padding, 0); 51 | break; 52 | } 53 | default: { 54 | break; 55 | } 56 | } 57 | 58 | } else { 59 | 60 | CGFloat headerHeight = _calendar.preferedWeekdayHeight*1.5+_calendar.preferedHeaderHeight; 61 | self.headerReferenceSize = CGSizeMake(self.collectionView.fs_width, headerHeight); 62 | self.itemSize = CGSizeMake( 63 | self.collectionView.fs_width/7-(self.scrollDirection == UICollectionViewScrollDirectionVertical)*0.1, 64 | rowHeight 65 | ); 66 | 67 | } 68 | } 69 | 70 | @end 71 | -------------------------------------------------------------------------------- /Pods/FSCalendar/FSCalendar/NSDate+FSExtension.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSDate+FSExtension.h 3 | // Pods 4 | // 5 | // Created by Wenchao Ding on 29/1/15. 6 | // 7 | // 8 | 9 | #import 10 | 11 | @interface NSDate (FSExtension) 12 | 13 | @property (readonly, nonatomic) NSInteger fs_year; 14 | @property (readonly, nonatomic) NSInteger fs_month; 15 | @property (readonly, nonatomic) NSInteger fs_day; 16 | @property (readonly, nonatomic) NSInteger fs_weekday; 17 | @property (readonly, nonatomic) NSInteger fs_weekOfYear; 18 | @property (readonly, nonatomic) NSInteger fs_hour; 19 | @property (readonly, nonatomic) NSInteger fs_minute; 20 | @property (readonly, nonatomic) NSInteger fs_second; 21 | 22 | @property (readonly, nonatomic) NSDate *fs_dateByIgnoringTimeComponents; 23 | @property (readonly, nonatomic) NSDate *fs_firstDayOfMonth; 24 | @property (readonly, nonatomic) NSDate *fs_lastDayOfMonth; 25 | @property (readonly, nonatomic) NSDate *fs_firstDayOfWeek; 26 | @property (readonly, nonatomic) NSDate *fs_middleOfWeek; 27 | @property (readonly, nonatomic) NSDate *fs_tomorrow; 28 | @property (readonly, nonatomic) NSDate *fs_yesterday; 29 | @property (readonly, nonatomic) NSInteger fs_numberOfDaysInMonth; 30 | 31 | + (instancetype)fs_dateFromString:(NSString *)string format:(NSString *)format; 32 | + (instancetype)fs_dateWithYear:(NSInteger)year month:(NSInteger)month day:(NSInteger)day; 33 | 34 | - (NSDate *)fs_dateByAddingYears:(NSInteger)years; 35 | - (NSDate *)fs_dateBySubtractingYears:(NSInteger)years; 36 | - (NSDate *)fs_dateByAddingMonths:(NSInteger)months; 37 | - (NSDate *)fs_dateBySubtractingMonths:(NSInteger)months; 38 | - (NSDate *)fs_dateByAddingWeeks:(NSInteger)weeks; 39 | - (NSDate *)fs_dateBySubtractingWeeks:(NSInteger)weeks; 40 | - (NSDate *)fs_dateByAddingDays:(NSInteger)days; 41 | - (NSDate *)fs_dateBySubtractingDays:(NSInteger)days; 42 | - (NSInteger)fs_yearsFrom:(NSDate *)date; 43 | - (NSInteger)fs_monthsFrom:(NSDate *)date; 44 | - (NSInteger)fs_weeksFrom:(NSDate *)date; 45 | - (NSInteger)fs_daysFrom:(NSDate *)date; 46 | 47 | - (BOOL)fs_isEqualToDateForMonth:(NSDate *)date; 48 | - (BOOL)fs_isEqualToDateForWeek:(NSDate *)date; 49 | - (BOOL)fs_isEqualToDateForDay:(NSDate *)date; 50 | 51 | - (NSString *)fs_stringWithFormat:(NSString *)format; 52 | - (NSString *)fs_string; 53 | 54 | @end 55 | 56 | 57 | @interface NSCalendar (FSExtension) 58 | 59 | + (instancetype)fs_sharedCalendar; 60 | 61 | @end 62 | 63 | @interface NSDateFormatter (FSExtension) 64 | 65 | + (instancetype)fs_sharedDateFormatter; 66 | 67 | @end 68 | 69 | @interface NSDateComponents (FSExtension) 70 | 71 | + (instancetype)fs_sharedDateComponents; 72 | 73 | @end 74 | 75 | 76 | 77 | -------------------------------------------------------------------------------- /Pods/PNChart/PNChart/PNCircleChart.h: -------------------------------------------------------------------------------- 1 | // 2 | // PNCircleChart.h 3 | // PNChartDemo 4 | // 5 | // Created by kevinzhow on 13-11-30. 6 | // Copyright (c) 2013年 kevinzhow. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "PNColor.h" 11 | #import 12 | 13 | typedef NS_ENUM (NSUInteger, PNChartFormatType) { 14 | PNChartFormatTypePercent, 15 | PNChartFormatTypeDollar, 16 | PNChartFormatTypeNone, 17 | PNChartFormatTypeDecimal, 18 | PNChartFormatTypeDecimalTwoPlaces, 19 | }; 20 | 21 | #define DEGREES_TO_RADIANS(angle) ((angle) / 180.0 * M_PI) 22 | 23 | @interface PNCircleChart : UIView 24 | 25 | - (void)strokeChart; 26 | - (void)growChartByAmount:(NSNumber *)growAmount; 27 | - (void)updateChartByCurrent:(NSNumber *)current; 28 | - (void)updateChartByCurrent:(NSNumber *)current byTotal:(NSNumber *)total; 29 | - (id)initWithFrame:(CGRect)frame 30 | total:(NSNumber *)total 31 | current:(NSNumber *)current 32 | clockwise:(BOOL)clockwise; 33 | 34 | - (id)initWithFrame:(CGRect)frame 35 | total:(NSNumber *)total 36 | current:(NSNumber *)current 37 | clockwise:(BOOL)clockwise 38 | shadow:(BOOL)hasBackgroundShadow 39 | shadowColor:(UIColor *)backgroundShadowColor; 40 | 41 | - (id)initWithFrame:(CGRect)frame 42 | total:(NSNumber *)total 43 | current:(NSNumber *)current 44 | clockwise:(BOOL)clockwise 45 | shadow:(BOOL)hasBackgroundShadow 46 | shadowColor:(UIColor *)backgroundShadowColor 47 | displayCountingLabel:(BOOL)displayCountingLabel; 48 | 49 | - (id)initWithFrame:(CGRect)frame 50 | total:(NSNumber *)total 51 | current:(NSNumber *)current 52 | clockwise:(BOOL)clockwise 53 | shadow:(BOOL)hasBackgroundShadow 54 | shadowColor:(UIColor *)backgroundShadowColor 55 | displayCountingLabel:(BOOL)displayCountingLabel 56 | overrideLineWidth:(NSNumber *)overrideLineWidth; 57 | 58 | @property (strong, nonatomic) UICountingLabel *countingLabel; 59 | @property (nonatomic) UIColor *strokeColor; 60 | @property (nonatomic) UIColor *strokeColorGradientStart; 61 | @property (nonatomic) NSNumber *total; 62 | @property (nonatomic) NSNumber *current; 63 | @property (nonatomic) NSNumber *lineWidth; 64 | @property (nonatomic) NSTimeInterval duration; 65 | @property (nonatomic) PNChartFormatType chartType; 66 | 67 | 68 | @property (nonatomic) CAShapeLayer *circle; 69 | @property (nonatomic) CAShapeLayer *gradientMask; 70 | @property (nonatomic) CAShapeLayer *circleBackground; 71 | 72 | @property (nonatomic) BOOL displayCountingLabel; 73 | 74 | @end 75 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # NutritionCal 2 | 3 | Nutrition Diary is a food and nutrition app that helps you eat right and make healthier food decisions, get nutrition info for foods and drinks, keep track of what you eat, and sync your eaten foods with Apple's Health App. 4 | 5 | ![Alt text](https://github.com/omaralbeik/NutritionCal/blob/master/screenShots/readme_header.jpg "Nutrition Cal") 6 | 7 | How to Use: 8 | 9 | Nutrition Cal Has 3 main tabs 10 | 11 | a. Foods Tab: 12 | -Here You can search for foods and add them to favorites 13 | 14 | -To search for foods tap + Button in the top right corner 15 | 16 | -You can eat food simply by swiping to the left on a food and taping the fork icon, or you can tap on a food to check the nutrition info and them make a decision. 17 | 18 | -inside an item page you see a chart with the main nutritions for a food (calcium, carbohydrate, cholesterol, energy, fat, protein, sugar, vitamin C), or tap on Show All Nutrients button to see all nutrients, once done, tap on Eat it! button to eat the food, or back to go and continue your search. 19 | 20 | -You can save foods in favorites, by swiping to the left, and tap the download button, saving an item will fetch all nutritions for offline and fast use. 21 | 22 | 23 | b. History Tab: 24 | 25 | -Here you see a calendar view to check for foods eaten at a specific day, 26 | 27 | -Swipe to delete an item (note that this will not delete the info from Health App) 28 | 29 | 30 | c. Settings Tab: 31 | 32 | -Here you can choose to sync eaten foods with Health App, or keep history for foods in Nutrition Cal, reply tutorial, and more. 33 | 34 | 35 | Nutrition Cal is an App made for all sizes iPhone with autolayout, built using Swift 2.0 and XCode 7. 36 | Nutrition Cal requires iOS 8.0 or later.. 37 | To run the app, Simply download it, unzip the file run from Nutrition Cal.xcworkspace, not Nutrition Cal.xcodeproj 38 | 39 | 40 | ![Alt text](https://github.com/omaralbeik/NutritionCal/blob/master/screenShots/tutorial.gif "Tutorial") 41 | 42 | All items nutritions info is from: National Agricultural Library, Agricultural Research Service, U.S. Department of Agriculture 43 | http://www.nal.usda.gov/ 44 | 45 | Icons and graphics made by Freepik 46 | www.flaticon.com 47 | 48 | 49 | Special thanks to: 50 | Wenchao Ding (FSCalendar) 51 | https://github.com/WenchaoIOS/FSCalendar 52 | 53 | takuya ichise (MaterialDesignColor) 54 | https://github.com/tichise/MaterialDesignColor 55 | 56 | Nguyen Vinh (NVActivityIndicatorView) 57 | https://github.com/ninjaprox/NVActivityIndicatorView 58 | 59 | Ben Guild (BGTableViewRowActionWithImage) 60 | https://github.com/benguild/BGTableViewRowActionWithImage 61 | 62 | Kevin (PNChart) 63 | https://github.com/kevinzhow/PNChart 64 | -------------------------------------------------------------------------------- /Pods/NVActivityIndicatorView/NVActivityIndicatorView/Animations/NVActivityIndicatorAnimationTriangleSkewSpin.swift: -------------------------------------------------------------------------------- 1 | // 2 | // NVActivityIndicatorAnimationTriangleSkewSpin.swift 3 | // NVActivityIndicatorViewDemo 4 | // 5 | // Created by Nguyen Vinh on 7/24/15. 6 | // Copyright (c) 2015 Nguyen Vinh. All rights reserved. 7 | // 8 | 9 | import UIKit 10 | 11 | class NVActivityIndicatorAnimationTriangleSkewSpin: NVActivityIndicatorAnimationDelegate { 12 | 13 | func setUpAnimationInLayer(layer: CALayer, size: CGSize, color: UIColor) { 14 | let x = (layer.bounds.size.width - size.width) / 2 15 | let y = (layer.bounds.size.height - size.height) / 2 16 | let duration: CFTimeInterval = 3 17 | let timingFunction = CAMediaTimingFunction(controlPoints: 0.09, 0.57, 0.49, 0.9) 18 | 19 | // Animation 20 | let animation = CAKeyframeAnimation(keyPath: "transform") 21 | 22 | animation.keyTimes = [0, 0.25, 0.5, 0.75, 1] 23 | animation.timingFunctions = [timingFunction, timingFunction, timingFunction, timingFunction] 24 | animation.values = [ 25 | NSValue(CATransform3D: CATransform3DConcat(createRotateXTransform(angle: 0), createRotateYTransform(angle: 0))), 26 | NSValue(CATransform3D: CATransform3DConcat(createRotateXTransform(angle: CGFloat(M_PI)), createRotateYTransform(angle: 0))), 27 | NSValue(CATransform3D: CATransform3DConcat(createRotateXTransform(angle: CGFloat(M_PI)), createRotateYTransform(angle: CGFloat(M_PI)))), 28 | NSValue(CATransform3D: CATransform3DConcat(createRotateXTransform(angle: 0), createRotateYTransform(angle: CGFloat(M_PI)))), 29 | NSValue(CATransform3D: CATransform3DConcat(createRotateXTransform(angle: 0), createRotateYTransform(angle: 0)))] 30 | animation.duration = duration 31 | animation.repeatCount = HUGE 32 | animation.removedOnCompletion = false 33 | 34 | // Draw triangle 35 | let triangle = NVActivityIndicatorShape.Triangle.createLayerWith(size: size, color: color) 36 | 37 | triangle.frame = CGRect(x: x, y: y, width: size.width, height: size.height) 38 | triangle.addAnimation(animation, forKey: "animation") 39 | layer.addSublayer(triangle) 40 | } 41 | 42 | func createRotateXTransform(angle angle: CGFloat) -> CATransform3D { 43 | var transform = CATransform3DMakeRotation(angle, 1, 0, 0) 44 | 45 | transform.m34 = CGFloat(-1) / 100 46 | 47 | return transform 48 | } 49 | 50 | func createRotateYTransform(angle angle: CGFloat) -> CATransform3D { 51 | var transform = CATransform3DMakeRotation(angle, 0, 1, 0) 52 | 53 | transform.m34 = CGFloat(-1) / 100 54 | 55 | return transform 56 | } 57 | } 58 | -------------------------------------------------------------------------------- /Pods/NVActivityIndicatorView/NVActivityIndicatorView/Animations/NVActivityIndicatorAnimationSquareSpin.swift: -------------------------------------------------------------------------------- 1 | // 2 | // NVActivityIndicatorAnimationSquareSpin.swift 3 | // NVActivityIndicatorViewDemo 4 | // 5 | // Created by Nguyen Vinh on 7/24/15. 6 | // Copyright (c) 2015 Nguyen Vinh. All rights reserved. 7 | // 8 | 9 | import UIKit 10 | 11 | class NVActivityIndicatorAnimationSquareSpin: NVActivityIndicatorAnimationDelegate { 12 | 13 | func setUpAnimationInLayer(layer: CALayer, size: CGSize, color: UIColor) { 14 | let duration: CFTimeInterval = 3 15 | let timingFunction = CAMediaTimingFunction(controlPoints: 0.09, 0.57, 0.49, 0.9) 16 | 17 | // Animation 18 | let animation = CAKeyframeAnimation(keyPath: "transform") 19 | 20 | animation.keyTimes = [0, 0.25, 0.5, 0.75, 1] 21 | animation.timingFunctions = [timingFunction, timingFunction, timingFunction, timingFunction] 22 | animation.values = [ 23 | NSValue(CATransform3D: CATransform3DConcat(createRotateXTransform(angle: 0), createRotateYTransform(angle: 0))), 24 | NSValue(CATransform3D: CATransform3DConcat(createRotateXTransform(angle: CGFloat(M_PI)), createRotateYTransform(angle: 0))), 25 | NSValue(CATransform3D: CATransform3DConcat(createRotateXTransform(angle: CGFloat(M_PI)), createRotateYTransform(angle: CGFloat(M_PI)))), 26 | NSValue(CATransform3D: CATransform3DConcat(createRotateXTransform(angle: 0), createRotateYTransform(angle: CGFloat(M_PI)))), 27 | NSValue(CATransform3D: CATransform3DConcat(createRotateXTransform(angle: 0), createRotateYTransform(angle: 0)))] 28 | animation.duration = duration 29 | animation.repeatCount = HUGE 30 | animation.removedOnCompletion = false 31 | 32 | // Draw square 33 | let square = NVActivityIndicatorShape.Rectangle.createLayerWith(size: size, color: color) 34 | let frame = CGRect(x: (layer.bounds.size.width - size.width) / 2, 35 | y: (layer.bounds.size.height - size.height) / 2, 36 | width: size.width, 37 | height: size.height) 38 | 39 | square.frame = frame 40 | square.addAnimation(animation, forKey: "animation") 41 | layer.addSublayer(square) 42 | } 43 | 44 | func createRotateXTransform(angle angle: CGFloat) -> CATransform3D { 45 | var transform = CATransform3DMakeRotation(angle, 1, 0, 0) 46 | 47 | transform.m34 = CGFloat(-1) / 100 48 | 49 | return transform 50 | } 51 | 52 | func createRotateYTransform(angle angle: CGFloat) -> CATransform3D { 53 | var transform = CATransform3DMakeRotation(angle, 0, 1, 0) 54 | 55 | transform.m34 = CGFloat(-1) / 100 56 | 57 | return transform 58 | } 59 | } 60 | -------------------------------------------------------------------------------- /Pods/NVActivityIndicatorView/NVActivityIndicatorView/Animations/NVActivityIndicatorAnimationBallZigZag.swift: -------------------------------------------------------------------------------- 1 | // 2 | // NVActivityIndicatorAnimationBallZigZag.swift 3 | // NVActivityIndicatorViewDemo 4 | // 5 | // Created by Nguyen Vinh on 7/23/15. 6 | // Copyright (c) 2015 Nguyen Vinh. All rights reserved. 7 | // 8 | 9 | import UIKit 10 | import QuartzCore 11 | 12 | class NVActivityIndicatorAnimationBallZigZag: NVActivityIndicatorAnimationDelegate { 13 | 14 | func setUpAnimationInLayer(layer: CALayer, size: CGSize, color: UIColor) { 15 | let circleSize: CGFloat = size.width / 5 16 | let duration: CFTimeInterval = 0.7 17 | let deltaX = size.width / 2 - circleSize / 2 18 | let deltaY = size.height / 2 - circleSize / 2 19 | let frame = CGRect(x: (layer.bounds.size.width - circleSize) / 2, y: (layer.bounds.size.height - circleSize) / 2, width: circleSize, height: circleSize) 20 | 21 | // Circle 1 animation 22 | let animation = CAKeyframeAnimation(keyPath:"transform") 23 | 24 | animation.keyTimes = [0.0, 0.33, 0.66, 1.0] 25 | animation.timingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionLinear) 26 | 27 | animation.values = [NSValue(CATransform3D: CATransform3DMakeTranslation(0, 0, 0)), 28 | NSValue(CATransform3D: CATransform3DMakeTranslation(-deltaX, -deltaY, 0)), 29 | NSValue(CATransform3D: CATransform3DMakeTranslation(deltaX, -deltaY, 0)), 30 | NSValue(CATransform3D: CATransform3DMakeTranslation(0, 0, 0))] 31 | animation.duration = duration 32 | animation.repeatCount = HUGE 33 | animation.removedOnCompletion = false 34 | 35 | // Draw circle 1 36 | circleAt(frame: frame, layer: layer, size: CGSize(width: circleSize, height: circleSize), color: color, animation: animation) 37 | 38 | // Circle 2 animation 39 | animation.values = [NSValue(CATransform3D: CATransform3DMakeTranslation(0, 0, 0)), 40 | NSValue(CATransform3D: CATransform3DMakeTranslation(deltaX, deltaY, 0)), 41 | NSValue(CATransform3D: CATransform3DMakeTranslation(-deltaX, deltaY, 0)), 42 | NSValue(CATransform3D: CATransform3DMakeTranslation(0, 0, 0))] 43 | 44 | // Draw circle 2 45 | circleAt(frame: frame, layer: layer, size: CGSize(width: circleSize, height: circleSize), color: color, animation: animation) 46 | } 47 | 48 | func circleAt(frame frame: CGRect, layer: CALayer, size: CGSize, color: UIColor, animation: CAAnimation) { 49 | let circle = NVActivityIndicatorShape.Circle.createLayerWith(size: size, color: color) 50 | 51 | circle.frame = frame 52 | circle.addAnimation(animation, forKey: "animation") 53 | layer.addSublayer(circle) 54 | } 55 | } 56 | -------------------------------------------------------------------------------- /Pods/NVActivityIndicatorView/NVActivityIndicatorView/Animations/NVActivityIndicatorAnimationBallZigZagDeflect.swift: -------------------------------------------------------------------------------- 1 | // 2 | // NVActivityIndicatorAnimationBallZigZagDeflect.swift 3 | // NVActivityIndicatorViewDemo 4 | // 5 | // Created by Nguyen Vinh on 7/23/15. 6 | // Copyright (c) 2015 Nguyen Vinh. All rights reserved. 7 | // 8 | 9 | import UIKit 10 | 11 | class NVActivityIndicatorAnimationBallZigZagDeflect: NVActivityIndicatorAnimationDelegate { 12 | 13 | func setUpAnimationInLayer(layer: CALayer, size: CGSize, color: UIColor) { 14 | let circleSize: CGFloat = size.width / 5 15 | let duration: CFTimeInterval = 0.75 16 | let deltaX = size.width / 2 - circleSize / 2 17 | let deltaY = size.height / 2 - circleSize / 2 18 | let frame = CGRect(x: (layer.bounds.size.width - circleSize) / 2, y: (layer.bounds.size.height - circleSize) / 2, width: circleSize, height: circleSize) 19 | 20 | // Circle 1 animation 21 | let animation = CAKeyframeAnimation(keyPath:"transform") 22 | 23 | animation.keyTimes = [0.0, 0.33, 0.66, 1.0] 24 | animation.timingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionLinear) 25 | 26 | animation.values = [NSValue(CATransform3D: CATransform3DMakeTranslation(0, 0, 0)), 27 | NSValue(CATransform3D: CATransform3DMakeTranslation(-deltaX, -deltaY, 0)), 28 | NSValue(CATransform3D: CATransform3DMakeTranslation(deltaX, -deltaY, 0)), 29 | NSValue(CATransform3D: CATransform3DMakeTranslation(0, 0, 0))] 30 | animation.duration = duration 31 | animation.repeatCount = HUGE 32 | animation.autoreverses = true 33 | animation.removedOnCompletion = false 34 | 35 | // Draw circle 1 36 | circleAt(frame: frame, layer: layer, size: CGSize(width: circleSize, height: circleSize), color: color, animation: animation) 37 | 38 | // Circle 2 animation 39 | animation.values = [NSValue(CATransform3D: CATransform3DMakeTranslation(0, 0, 0)), 40 | NSValue(CATransform3D: CATransform3DMakeTranslation(deltaX, deltaY, 0)), 41 | NSValue(CATransform3D: CATransform3DMakeTranslation(-deltaX, deltaY, 0)), 42 | NSValue(CATransform3D: CATransform3DMakeTranslation(0, 0, 0))] 43 | 44 | // Draw circle 2 45 | circleAt(frame: frame, layer: layer, size: CGSize(width: circleSize, height: circleSize), color: color, animation: animation) 46 | } 47 | 48 | func circleAt(frame frame: CGRect, layer: CALayer, size: CGSize, color: UIColor, animation: CAAnimation) { 49 | let circle = NVActivityIndicatorShape.Circle.createLayerWith(size: size, color: color) 50 | 51 | circle.frame = frame 52 | circle.addAnimation(animation, forKey: "animation") 53 | layer.addSublayer(circle) 54 | } 55 | } 56 | --------------------------------------------------------------------------------