├── .gitignore ├── .swift-version ├── .travis.yml ├── CalendarView.podspec ├── CalendarView ├── CalendarView.xcodeproj │ ├── project.pbxproj │ ├── project.xcworkspace │ │ └── contents.xcworkspacedata │ └── xcshareddata │ │ └── xcschemes │ │ └── CalendarView.xcscheme ├── CalendarView │ ├── CalendarView.h │ ├── Classes │ │ ├── CalendarView.swift │ │ ├── ContentView.swift │ │ ├── DayView.swift │ │ ├── EasyCast.swift │ │ ├── MonthView.swift │ │ └── WeekView.swift │ └── Info.plist ├── CalendarViewTests │ ├── CalendarViewTests.swift │ └── Info.plist ├── Cartfile ├── Cartfile.resolved └── Carthage │ └── Checkouts │ └── SwiftMoment │ ├── .gitignore │ ├── .travis.yml │ ├── CONTRIBUTORS.md │ ├── Carthage │ └── Build │ ├── LICENSE │ ├── README.md │ ├── Resources │ └── install_swiftlint.sh │ ├── SwiftMoment.podspec │ ├── SwiftMoment.xcworkspace │ └── contents.xcworkspacedata │ └── SwiftMoment │ ├── MyPlayground.playground │ ├── Contents.swift │ ├── Sources │ │ └── SupportCode.swift │ ├── contents.xcplayground │ └── timeline.xctimeline │ ├── SwiftMoment.xcodeproj │ ├── project.pbxproj │ ├── project.xcworkspace │ │ └── contents.xcworkspacedata │ └── xcshareddata │ │ └── xcschemes │ │ ├── SwiftMoment iOS.xcscheme │ │ ├── SwiftMoment macOS.xcscheme │ │ ├── SwiftMoment tvOS.xcscheme │ │ ├── SwiftMoment watchOS.xcscheme │ │ ├── SwiftMoment.xcscheme │ │ └── SwiftMomentOSX.xcscheme │ ├── SwiftMoment │ ├── Duration.swift │ ├── Extensions.swift │ ├── Info.plist │ ├── InfoOSX.plist │ ├── Moment.swift │ ├── MomentFromNow.bundle │ │ ├── Root.plist │ │ ├── ar.lproj │ │ │ └── NSDateTimeAgo.strings │ │ ├── bg.lproj │ │ │ └── NSDateTimeAgo.strings │ │ ├── cs.lproj │ │ │ └── NSDateTimeAgo.strings │ │ ├── da.lproj │ │ │ └── NSDateTimeAgo.strings │ │ ├── de.lproj │ │ │ └── NSDateTimeAgo.strings │ │ ├── en.lproj │ │ │ └── NSDateTimeAgo.strings │ │ ├── en_US.lproj │ │ │ └── NSDateTimeAgo.strings │ │ ├── es.lproj │ │ │ └── NSDateTimeAgo.strings │ │ ├── fi.lproj │ │ │ └── NSDateTimeAgo.strings │ │ ├── fr.lproj │ │ │ └── NSDateTimeAgo.strings │ │ ├── gre.lproj │ │ │ └── NSDateTimeAgo.strings │ │ ├── he.lproj │ │ │ └── NSDateTimeAgo.strings │ │ ├── hu.lproj │ │ │ └── NSDateTimeAgo.strings │ │ ├── is.lproj │ │ │ └── NSDateTimeAgo.strings │ │ ├── it.lproj │ │ │ └── NSDateTimeAgo.strings │ │ ├── ja.lproj │ │ │ └── NSDateTimeAgo.strings │ │ ├── ko.lproj │ │ │ └── NSDateTimeAgo.strings │ │ ├── lv.lproj │ │ │ └── NSDateTimeAgo.strings │ │ ├── ms.lproj │ │ │ └── NSDateTimeAgo.strings │ │ ├── nb.lproj │ │ │ └── NSDateTimeAgo.strings │ │ ├── nl.lproj │ │ │ └── NSDateTimeAgo.strings │ │ ├── pl.lproj │ │ │ └── NSDateTimeAgo.strings │ │ ├── pt-PT.lproj │ │ │ └── NSDateTimeAgo.strings │ │ ├── pt.lproj │ │ │ └── NSDateTimeAgo.strings │ │ ├── ro.lproj │ │ │ └── NSDateTimeAgo.strings │ │ ├── ru.lproj │ │ │ └── NSDateTimeAgo.strings │ │ ├── sk.lproj │ │ │ └── NSDateTimeAgo.strings │ │ ├── sq.lproj │ │ │ └── NSDateTimeAgo.strings │ │ ├── sv.lproj │ │ │ └── NSDateTimeAgo.strings │ │ ├── th.lproj │ │ │ └── NSDateTimeAgo.strings │ │ ├── tr.lproj │ │ │ └── NSDateTimeAgo.strings │ │ ├── uk.lproj │ │ │ └── NSDateTimeAgo.strings │ │ ├── vi.lproj │ │ │ └── NSDateTimeAgo.strings │ │ ├── zh-Hans.lproj │ │ │ └── NSDateTimeAgo.strings │ │ └── zh-Hant.lproj │ │ │ └── NSDateTimeAgo.strings │ ├── MomentFromNow.swift │ ├── Operators.swift │ ├── SwiftMoment.h │ └── TimeUnit.swift │ └── SwiftMomentTests │ ├── DurationTests.swift │ ├── ExtensionsTests.swift │ ├── FromNowTests.swift │ ├── Info.plist │ ├── InfoOSX.plist │ └── MomentTests.swift ├── CalendarViewDemo ├── CalendarViewDemo.xcodeproj │ ├── project.pbxproj │ └── project.xcworkspace │ │ └── contents.xcworkspacedata ├── CalendarViewDemo.xcworkspace │ └── contents.xcworkspacedata ├── CalendarViewDemo │ ├── AppDelegate.swift │ ├── Base.lproj │ │ ├── LaunchScreen.xib │ │ └── Main.storyboard │ ├── Images.xcassets │ │ └── AppIcon.appiconset │ │ │ └── Contents.json │ ├── Info.plist │ └── ViewController.swift ├── CalendarViewDemoTests │ ├── CalendarViewDemoTests.swift │ └── Info.plist ├── Podfile ├── Podfile.lock └── Pods │ ├── Headers │ └── Private │ │ └── SwiftMoment │ │ └── SwiftMoment.h │ ├── Local Podspecs │ └── CalendarView.podspec.json │ ├── Manifest.lock │ ├── Pods.xcodeproj │ ├── project.pbxproj │ └── xcshareddata │ │ └── xcschemes │ │ └── CalendarView.xcscheme │ ├── SwiftMoment │ ├── LICENSE │ ├── README.md │ └── SwiftMoment │ │ └── SwiftMoment │ │ ├── Duration.swift │ │ ├── Extensions.swift │ │ ├── Moment.swift │ │ ├── Operators.swift │ │ ├── SwiftMoment.h │ │ └── TimeUnit.swift │ └── Target Support Files │ ├── CalendarView │ ├── CalendarView-dummy.m │ ├── CalendarView-prefix.pch │ ├── CalendarView-umbrella.h │ ├── CalendarView.modulemap │ ├── CalendarView.xcconfig │ └── Info.plist │ ├── Pods │ ├── Info.plist │ ├── Pods-acknowledgements.markdown │ ├── Pods-acknowledgements.plist │ ├── Pods-dummy.m │ ├── Pods-frameworks.sh │ ├── Pods-resources.sh │ ├── Pods-umbrella.h │ ├── Pods.debug.xcconfig │ ├── Pods.modulemap │ └── Pods.release.xcconfig │ └── SwiftMoment │ ├── Info.plist │ ├── SwiftMoment-dummy.m │ ├── SwiftMoment-prefix.pch │ ├── SwiftMoment-umbrella.h │ ├── SwiftMoment.modulemap │ └── SwiftMoment.xcconfig ├── LICENSE ├── Pod └── Assets │ └── .gitkeep ├── README.md └── screens ├── demo.gif └── screenshot.png /.gitignore: -------------------------------------------------------------------------------- 1 | # OS X 2 | .DS_Store 3 | 4 | # Xcode 5 | build/ 6 | *.pbxuser 7 | !default.pbxuser 8 | *.mode1v3 9 | !default.mode1v3 10 | *.mode2v3 11 | !default.mode2v3 12 | *.perspectivev3 13 | !default.perspectivev3 14 | xcuserdata 15 | *.xccheckout 16 | profile 17 | *.moved-aside 18 | DerivedData 19 | *.hmap 20 | *.ipa 21 | 22 | # Bundler 23 | .bundle 24 | 25 | # We recommend against adding the Pods directory to your .gitignore. However 26 | # you should judge for yourself, the pros and cons are mentioned at: 27 | # http://guides.cocoapods.org/using/using-cocoapods.html#should-i-ignore-the-pods-directory-in-source-control 28 | # 29 | # Note: if you ignore the Pods directory, make sure to uncomment 30 | # `pod install` in .travis.yml 31 | # 32 | # Pods/ 33 | -------------------------------------------------------------------------------- /.swift-version: -------------------------------------------------------------------------------- 1 | 3 2 | -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | # references: 2 | # * http://www.objc.io/issue-6/travis-ci.html 3 | # * https://github.com/supermarin/xcpretty#usage 4 | 5 | language: objective-c 6 | # cache: cocoapods 7 | # podfile: Example/Podfile 8 | # before_install: 9 | # - gem install cocoapods # Since Travis is not always on latest version 10 | # - pod install --project-directory=Example 11 | install: 12 | - gem install xcpretty --no-rdoc --no-ri --no-document --quiet 13 | script: 14 | - set -o pipefail && xcodebuild test -workspace Example/CalendarView.xcworkspace -scheme CalendarView-Example -sdk iphonesimulator ONLY_ACTIVE_ARCH=NO | xcpretty -c 15 | - pod lib lint --quick 16 | -------------------------------------------------------------------------------- /CalendarView.podspec: -------------------------------------------------------------------------------- 1 | # 2 | # Be sure to run `pod lib lint CalendarView.podspec' to ensure this is a 3 | # valid spec and remove all comments before submitting the spec. 4 | # 5 | # Any lines starting with a # are optional, but encouraged 6 | # 7 | # To learn more about a Podspec see http://guides.cocoapods.org/syntax/podspec.html 8 | # 9 | 10 | Pod::Spec.new do |s| 11 | s.name = "CalendarView" 12 | s.version = "1.1.2" 13 | s.summary = "A lightweight calendar view." 14 | s.description = <<-DESC 15 | A calendar view with a focus on: 16 | 17 | * Speed 18 | * Simplicity 19 | * Customization 20 | DESC 21 | s.homepage = "https://github.com/n8armstrong/CalendarView" 22 | s.screenshots = "https://raw.githubusercontent.com/n8armstrong/CalendarView/master/screens/screenshot.png" 23 | s.license = 'MIT' 24 | s.author = { "Nate Armstrong" => "natearmstrong2@gmail.com" } 25 | s.source = { :git => "https://github.com/n8armstrong/CalendarView.git", :tag => s.version.to_s } 26 | s.social_media_url = 'https://twitter.com/N8armstrong' 27 | 28 | s.platform = :ios, '8.3' 29 | s.requires_arc = true 30 | 31 | s.source_files = 'CalendarView/CalendarView/Classes/**/*' 32 | s.resource_bundles = { 33 | 'CalendarView' => ['Pod/Assets/*.png'] 34 | } 35 | 36 | s.frameworks = 'UIKit' 37 | s.dependency 'SwiftMoment', '~> 0.6' 38 | end 39 | -------------------------------------------------------------------------------- /CalendarView/CalendarView.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /CalendarView/CalendarView.xcodeproj/xcshareddata/xcschemes/CalendarView.xcscheme: -------------------------------------------------------------------------------- 1 | 2 | 5 | 8 | 9 | 15 | 21 | 22 | 23 | 24 | 25 | 30 | 31 | 33 | 39 | 40 | 41 | 42 | 43 | 49 | 50 | 51 | 52 | 53 | 54 | 64 | 65 | 71 | 72 | 73 | 74 | 75 | 76 | 82 | 83 | 89 | 90 | 91 | 92 | 94 | 95 | 98 | 99 | 100 | -------------------------------------------------------------------------------- /CalendarView/CalendarView/CalendarView.h: -------------------------------------------------------------------------------- 1 | // 2 | // CalendarView.h 3 | // CalendarView 4 | // 5 | // Created by Nate Armstrong on 10/12/15. 6 | // Copyright © 2015 Nate Armstrong. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | //! Project version number for CalendarView. 12 | FOUNDATION_EXPORT double CalendarViewVersionNumber; 13 | 14 | //! Project version string for CalendarView. 15 | FOUNDATION_EXPORT const unsigned char CalendarViewVersionString[]; 16 | 17 | // In this header, you should import all the public headers of your framework using statements like #import 18 | 19 | 20 | -------------------------------------------------------------------------------- /CalendarView/CalendarView/Classes/ContentView.swift: -------------------------------------------------------------------------------- 1 | // 2 | // CalendarContentView.swift 3 | // Calendar 4 | // 5 | // Created by Nate Armstrong on 3/29/15. 6 | // Copyright (c) 2015 Nate Armstrong. All rights reserved. 7 | // Updated to Swift 4 by A&D Progress aka verebes (c) 2018 8 | // 9 | 10 | import UIKit 11 | import SwiftMoment 12 | 13 | class ContentView: UIScrollView { 14 | 15 | let numMonthsLoaded = 3 16 | let currentPage = 1 17 | var months: [MonthView] = [] 18 | var selectedDate: Moment? 19 | var paged = false 20 | 21 | required init?(coder aDecoder: NSCoder) { 22 | super.init(coder: aDecoder) 23 | setup() 24 | } 25 | 26 | override init(frame: CGRect) { 27 | super.init(frame: frame) 28 | setup() 29 | } 30 | 31 | func setup() { 32 | isPagingEnabled = true 33 | showsHorizontalScrollIndicator = false 34 | showsVerticalScrollIndicator = false 35 | 36 | for month in months { 37 | month.setdown() 38 | month.removeFromSuperview() 39 | } 40 | 41 | months = [] 42 | let date = selectedDate ?? moment() 43 | selectedDate = date 44 | var currentDate = date.subtract(1, .Months) 45 | for _ in 1...numMonthsLoaded { 46 | let month = MonthView(frame: CGRect.zero) 47 | month.date = currentDate 48 | addSubview(month) 49 | months.append(month) 50 | currentDate = currentDate.add(1, .Months) 51 | } 52 | } 53 | 54 | override func layoutSubviews() { 55 | super.layoutSubviews() 56 | var x: CGFloat = 0 57 | for month in months { 58 | month.frame = CGRect(x: x, y: 0, width: bounds.size.width, height: bounds.size.height) 59 | x = month.frame.maxX 60 | } 61 | contentSize = CGSize(width: bounds.size.width * numMonthsLoaded, height: bounds.size.height) 62 | } 63 | 64 | func selectPage(page: Int) { 65 | var page1FrameMatched = false 66 | var page2FrameMatched = false 67 | var page3FrameMatched = false 68 | var frameCurrentMatched = false 69 | 70 | let pageWidth = frame.size.width 71 | let pageHeight = frame.size.height 72 | 73 | let frameCurrent = CGRect(x: page * pageWidth, y: 0, width: pageWidth, height: pageHeight) 74 | let frameLeft = CGRect(x: (page-1) * pageWidth, y: 0, width: pageWidth, height: pageHeight) 75 | let frameRight = CGRect(x: (page+1) * pageWidth, y: 0, width: pageWidth, height: pageHeight) 76 | 77 | let page1 = months.first! 78 | let page2 = months[1] 79 | let page3 = months.last! 80 | 81 | if frameCurrent.origin.x == page1.frame.origin.x { 82 | page1FrameMatched = true 83 | frameCurrentMatched = true 84 | } 85 | else if frameCurrent.origin.x == page2.frame.origin.x { 86 | page2FrameMatched = true 87 | frameCurrentMatched = true 88 | } 89 | else if frameCurrent.origin.x == page3.frame.origin.x { 90 | page3FrameMatched = true 91 | frameCurrentMatched = true 92 | } 93 | 94 | if frameCurrentMatched { 95 | if page2FrameMatched { 96 | print("something weird happened") 97 | } 98 | else if page1FrameMatched { 99 | page3.date = page1.date.subtract(1, .Months) 100 | page1.frame = frameCurrent 101 | page2.frame = frameRight 102 | page3.frame = frameLeft 103 | months = [page3, page1, page2] 104 | } 105 | else if page3FrameMatched { 106 | page1.date = page3.date.add(1, .Months) 107 | page1.frame = frameRight 108 | page2.frame = frameLeft 109 | page3.frame = frameCurrent 110 | months = [page2, page3, page1] 111 | } 112 | contentOffset.x = frame.width 113 | selectedDate = nil 114 | paged = true 115 | } 116 | } 117 | 118 | func selectDate(date: Moment) { 119 | selectedDate = date 120 | setup() 121 | selectVisibleDate(date: date.day) 122 | setNeedsLayout() 123 | } 124 | 125 | func selectVisibleDate(date: Int) -> DayView? { 126 | let month = currentMonth() 127 | for week in month.weeks { 128 | for day in week.days { 129 | if day.date != nil && day.date.month == month.date.month && day.date.day == date { 130 | day.selected = true 131 | return day 132 | } 133 | } 134 | } 135 | return nil 136 | } 137 | 138 | func removeObservers() { 139 | for month in months { 140 | for week in month.weeks { 141 | for day in week.days { 142 | NotificationCenter.default.removeObserver(day) 143 | } 144 | } 145 | } 146 | } 147 | 148 | func currentMonth() -> MonthView { 149 | return months[1] 150 | } 151 | 152 | } 153 | -------------------------------------------------------------------------------- /CalendarView/CalendarView/Classes/DayView.swift: -------------------------------------------------------------------------------- 1 | // 2 | // DayView.swift 3 | // Calendar 4 | // 5 | // Created by Nate Armstrong on 3/29/15. 6 | // Copyright (c) 2015 Nate Armstrong. All rights reserved. 7 | // Updated to Swift 4 by A&D Progress aka verebes (c) 2018 8 | // 9 | 10 | import UIKit 11 | import SwiftMoment 12 | 13 | let CalendarSelectedDayNotification = "CalendarSelectedDayNotification" 14 | 15 | class DayView: UIView { 16 | 17 | var date: Moment! { 18 | didSet { 19 | dateLabel.text = date.format("d") 20 | setNeedsLayout() 21 | } 22 | } 23 | lazy var dateLabel: UILabel = { 24 | let label = UILabel() 25 | label.textAlignment = .center 26 | label.font = CalendarView.dayFont 27 | self.addSubview(label) 28 | return label 29 | }() 30 | var isToday: Bool = false 31 | var isOtherMonth: Bool = false 32 | var selected: Bool = false { 33 | didSet { 34 | if selected { 35 | NotificationCenter.default 36 | .post(name: NSNotification.Name(rawValue: CalendarSelectedDayNotification), object: date.toNSDate()) 37 | } 38 | updateView() 39 | } 40 | } 41 | 42 | init() { 43 | super.init(frame: CGRect.zero) 44 | let tap = UITapGestureRecognizer(target: self, action: #selector(selectIt)) 45 | addGestureRecognizer(tap) 46 | NotificationCenter.default.addObserver(self, 47 | selector: #selector(onSelected(notification:)), 48 | name: NSNotification.Name(rawValue: CalendarSelectedDayNotification), 49 | object: nil) 50 | } 51 | 52 | required init?(coder aDecoder: NSCoder) { 53 | super.init(coder: aDecoder) 54 | } 55 | 56 | override init(frame: CGRect) { 57 | super.init(frame: frame) 58 | } 59 | 60 | override func layoutSubviews() { 61 | super.layoutSubviews() 62 | dateLabel.frame = bounds.insetBy(dx: 10, dy: 10) //(bounds, 10, 10) 63 | updateView() 64 | } 65 | 66 | @objc func onSelected(notification: NSNotification) { 67 | if let date = date, let nsDate = notification.object as? Date { 68 | let mo = moment(nsDate) 69 | if mo.month != date.month || mo.day != date.day { 70 | selected = false 71 | } 72 | } 73 | } 74 | 75 | func updateView() { 76 | if self.selected { 77 | dateLabel.textColor = CalendarView.daySelectedTextColor 78 | dateLabel.backgroundColor = CalendarView.daySelectedBackgroundColor 79 | } else if isToday { 80 | dateLabel.textColor = CalendarView.todayTextColor 81 | dateLabel.backgroundColor = CalendarView.todayBackgroundColor 82 | } else if isOtherMonth { 83 | dateLabel.textColor = CalendarView.otherMonthTextColor 84 | dateLabel.backgroundColor = CalendarView.otherMonthBackgroundColor 85 | } else { 86 | self.dateLabel.textColor = CalendarView.dayTextColor 87 | self.dateLabel.backgroundColor = CalendarView.dayBackgroundColor 88 | } 89 | } 90 | 91 | @objc func selectIt() { 92 | selected = true 93 | } 94 | 95 | } 96 | 97 | public extension Moment { 98 | 99 | func toNSDate() -> Date? { 100 | let epoch = moment(Date(timeIntervalSince1970: 0)) 101 | let timeInterval = self.intervalSince(epoch) 102 | let date = Date(timeIntervalSince1970: timeInterval.seconds) 103 | return date 104 | } 105 | 106 | func isToday() -> Bool { 107 | let cal = Calendar.current 108 | return cal.isDateInToday(self.toNSDate()!) 109 | } 110 | 111 | func isSameMonth(other: Moment) -> Bool { 112 | return self.month == other.month && self.year == other.year 113 | } 114 | 115 | } 116 | -------------------------------------------------------------------------------- /CalendarView/CalendarView/Classes/MonthView.swift: -------------------------------------------------------------------------------- 1 | // 2 | // MonthView.swift 3 | // Calendar 4 | // 5 | // Created by Nate Armstrong on 3/29/15. 6 | // Copyright (c) 2015 Nate Armstrong. All rights reserved. 7 | // Updated to Swift 4 by A&D Progress aka verebes (c) 2018 8 | // 9 | 10 | import UIKit 11 | import SwiftMoment 12 | 13 | class MonthView: UIView { 14 | 15 | let maxNumWeeks = 6 16 | 17 | var date: Moment! { 18 | didSet { 19 | startsOn = date.startOf(.Months).weekday // Sun is 1 20 | let numDays = Double(date.endOf(.Months).day + startsOn - 1) 21 | self.numDays = Int(ceil(numDays / 7.0) * 7) 22 | self.numDays = 42 // TODO: add option to always show 6 weeks 23 | setWeeks() 24 | } 25 | } 26 | 27 | var weeks: [WeekView] = [] 28 | var weekLabels: [WeekLabel] = [ 29 | WeekLabel(day: "SUN"), 30 | WeekLabel(day: "MON"), 31 | WeekLabel(day: "TUE"), 32 | WeekLabel(day: "WED"), 33 | WeekLabel(day: "THU"), 34 | WeekLabel(day: "FRI"), 35 | WeekLabel(day: "SAT"), 36 | ] 37 | 38 | // these values are expensive to compute so cache them 39 | var numDays: Int = 30 40 | var startsOn: Int = 0 41 | 42 | required init?(coder aDecoder: NSCoder) { 43 | super.init(coder: aDecoder) 44 | setup() 45 | } 46 | 47 | override init(frame: CGRect) { 48 | super.init(frame: frame) 49 | setup() 50 | } 51 | 52 | func setup() { 53 | weeks = [] 54 | for _ in 1...maxNumWeeks { 55 | let week = WeekView(frame: CGRect.zero) 56 | addSubview(week) 57 | weeks.append(week) 58 | } 59 | for label in weekLabels { 60 | addSubview(label) 61 | } 62 | } 63 | 64 | func setdown() { 65 | for week in weeks { 66 | week.setdown() 67 | week.removeFromSuperview() 68 | } 69 | } 70 | 71 | override func layoutSubviews() { 72 | super.layoutSubviews() 73 | var x: CGFloat = 0 74 | let labelHeight: CGFloat = 18 75 | let inset: CGFloat = 10 76 | for label in weekLabels { 77 | label.frame = CGRect(x: x, y: inset, width: bounds.size.width / 7, height: labelHeight) 78 | x = label.frame.maxX 79 | } 80 | var y: CGFloat = labelHeight + inset 81 | for i in 1...weeks.count { 82 | let week = weeks[i - 1] 83 | week.frame = CGRect(x: 0, y: y, width: bounds.size.width, height: (bounds.size.height - (labelHeight + inset) - inset) / maxNumWeeks) 84 | y = week.frame.maxY 85 | } 86 | } 87 | 88 | func setWeeks() { 89 | if weeks.count > 0 { 90 | let numWeeks = Int(numDays / 7) 91 | let firstVisibleDate = date.startOf(.Months).endOf(.Days).subtract(startsOn - 1, .Days).startOf(.Days) 92 | for i in 1...weeks.count { 93 | let firstDateOfWeek = firstVisibleDate.add(7*(i-1), .Days) 94 | let week = weeks[i - 1] 95 | week.month = date 96 | week.date = firstDateOfWeek 97 | week.isHidden = i > numWeeks 98 | } 99 | } 100 | } 101 | 102 | } 103 | 104 | class WeekLabel: UILabel { 105 | 106 | init(day: String) { 107 | super.init(frame: CGRect.zero) 108 | text = day 109 | textAlignment = .center 110 | textColor = CalendarView.weekLabelTextColor 111 | font = UIFont.boldSystemFont(ofSize: 10) 112 | } 113 | 114 | required init?(coder aDecoder: NSCoder) { 115 | super.init(coder: aDecoder) 116 | } 117 | 118 | override init(frame: CGRect) { 119 | super.init(frame: frame) 120 | } 121 | 122 | } 123 | -------------------------------------------------------------------------------- /CalendarView/CalendarView/Classes/WeekView.swift: -------------------------------------------------------------------------------- 1 | // 2 | // WeekView.swift 3 | // Calendar 4 | // 5 | // Created by Nate Armstrong on 3/29/15. 6 | // Copyright (c) 2015 Nate Armstrong. All rights reserved. 7 | // Updated to Swift 4 by A&D Progress aka verebes (c) 2018 8 | // 9 | 10 | import UIKit 11 | import SwiftMoment 12 | 13 | class WeekView: UIView { 14 | 15 | var date: Moment! { 16 | didSet { 17 | setDays() 18 | } 19 | } 20 | var days: [DayView] = [] 21 | var month: Moment! 22 | 23 | required init?(coder aDecoder: NSCoder) { 24 | super.init(coder: aDecoder) 25 | setup() 26 | } 27 | 28 | override init(frame: CGRect) { 29 | super.init(frame: frame) 30 | setup() 31 | } 32 | 33 | func setup() { 34 | days = [] 35 | for _ in 1...7 { 36 | let day = DayView() 37 | addSubview(day) 38 | days.append(day) 39 | } 40 | } 41 | 42 | func setdown() { 43 | for day in days { 44 | NotificationCenter.default.removeObserver(day) 45 | day.removeFromSuperview() 46 | } 47 | } 48 | 49 | override func layoutSubviews() { 50 | super.layoutSubviews() 51 | var x: CGFloat = 0 52 | for i in 1...days.count { 53 | let day = days[i - 1] 54 | day.frame = CGRect(x: x, y: 0, width: bounds.size.width / days.count, height: bounds.size.height) 55 | x = day.frame.maxX 56 | } 57 | } 58 | 59 | func setDays() { 60 | if days.count > 0 { 61 | for i in 0.. 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 | FMWK 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | $(CURRENT_PROJECT_VERSION) 23 | NSPrincipalClass 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /CalendarView/CalendarViewTests/CalendarViewTests.swift: -------------------------------------------------------------------------------- 1 | // 2 | // CalendarViewTests.swift 3 | // CalendarViewTests 4 | // 5 | // Created by Nate Armstrong on 10/12/15. 6 | // Copyright © 2015 Nate Armstrong. All rights reserved. 7 | // 8 | 9 | import XCTest 10 | @testable import CalendarView 11 | import SwiftMoment 12 | 13 | class CalendarViewTests: XCTestCase { 14 | 15 | override func setUp() { 16 | super.setUp() 17 | // Put setup code here. This method is called before the invocation of each test method in the class. 18 | } 19 | 20 | override func tearDown() { 21 | // Put teardown code here. This method is called after the invocation of each test method in the class. 22 | super.tearDown() 23 | } 24 | 25 | func testNovember2015Bug() { 26 | let october = moment("10-12-2015")! 27 | XCTAssertEqual("October 12, 2015", october.format("MMMM d, yyyy")) 28 | let november = october.add(1, .Months) 29 | let date = november.startOf(.Months) 30 | XCTAssertEqual(1, date.day) 31 | let date2 = date.endOf(.Days).add(1, .Days) 32 | XCTAssertEqual(2, date2.day) 33 | } 34 | 35 | // See: https://github.com/n8armstrong/CalendarView/issues/7 36 | func testSecondSundayInMarchBug() { 37 | let marchFirst = moment("3-1-2016")! 38 | let firstVisibleDay = marchFirst.startOf(.Months).endOf(.Days).subtract(marchFirst.weekday - 1, .Days).startOf(.Days) 39 | XCTAssertEqual("February 28, 2016", firstVisibleDay.format("MMMM d, yyyy")) 40 | let dayInQuestion = firstVisibleDay.add(14, .Days) 41 | XCTAssertEqual(13, dayInQuestion.day) 42 | } 43 | 44 | } 45 | -------------------------------------------------------------------------------- /CalendarView/CalendarViewTests/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 | BNDL 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | 1 23 | 24 | 25 | -------------------------------------------------------------------------------- /CalendarView/Cartfile: -------------------------------------------------------------------------------- 1 | github "akosma/SwiftMoment" 2 | -------------------------------------------------------------------------------- /CalendarView/Cartfile.resolved: -------------------------------------------------------------------------------- 1 | github "akosma/SwiftMoment" "v0.6" 2 | -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/.gitignore: -------------------------------------------------------------------------------- 1 | # Created by https://www.gitignore.io 2 | 3 | ### Xcode ### 4 | build/ 5 | *.pbxuser 6 | !default.pbxuser 7 | *.mode1v3 8 | !default.mode1v3 9 | *.mode2v3 10 | !default.mode2v3 11 | *.perspectivev3 12 | !default.perspectivev3 13 | xcuserdata 14 | *.xccheckout 15 | *.moved-aside 16 | DerivedData 17 | *.xcuserstate 18 | -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/.travis.yml: -------------------------------------------------------------------------------- 1 | language: objective-c 2 | osx_image: xcode8 3 | 4 | install: 5 | - ./Resources/install_swiftlint.sh 6 | 7 | env: 8 | global: 9 | - LC_CTYPE=en_US.UTF-8 10 | - LANG=en_US.UTF-8 11 | - WORKSPACE=SwiftMoment.xcworkspace 12 | - IOS_FRAMEWORK_SCHEME="SwiftMoment iOS" 13 | - OSX_FRAMEWORK_SCHEME="SwiftMoment macOS" 14 | - TVOS_FRAMEWORK_SCHEME="SwiftMoment tvOS" 15 | - WATCHOS_FRAMEWORK_SCHEME="SwiftMoment watchOS" 16 | - IOS_SDK=iphonesimulator10.0 17 | - WATCHOS_SDK=watchsimulator3.0 18 | - TVOS_SDK=appletvsimulator10.0 19 | - OSX_SDK=macosx10.12 20 | matrix: 21 | - DESTINATION="OS=10.0,name=iPhone 7 Plus" SCHEME="$IOS_FRAMEWORK_SCHEME" SDK="$IOS_SDK" RUN_TESTS="YES" POD_LINT="YES" 22 | - DESTINATION="OS=10.0,name=Apple TV 1080p" SCHEME="$TVOS_FRAMEWORK_SCHEME" SDK="$TVOS_SDK" RUN_TESTS="YES" POD_LINT="NO" 23 | - DESTINATION="arch=x86_64" SCHEME="$OSX_FRAMEWORK_SCHEME" SDK="$OSX_SDK" RUN_TESTS="YES" POD_LINT="NO" 24 | script: 25 | - set -o pipefail 26 | - swiftlint 27 | - xcodebuild -version 28 | - xcodebuild -showsdks 29 | 30 | # Build Framework in Debug and Run Tests if specified 31 | - if [ $RUN_TESTS == "YES" ]; then 32 | xcodebuild -workspace "$WORKSPACE" -scheme "$SCHEME" -sdk "$SDK" -destination "$DESTINATION" -configuration Debug ONLY_ACTIVE_ARCH=NO test | xcpretty -c; 33 | else 34 | xcodebuild -workspace "$WORKSPACE" -scheme "$SCHEME" -sdk "$SDK" -destination "$DESTINATION" -configuration Debug ONLY_ACTIVE_ARCH=NO build | xcpretty -c; 35 | fi 36 | 37 | # Build Framework in Release and Run Tests if specified 38 | - if [ $RUN_TESTS == "YES" ]; then 39 | xcodebuild -workspace "$WORKSPACE" -scheme "$SCHEME" -sdk "$SDK" -destination "$DESTINATION" -configuration Release ONLY_ACTIVE_ARCH=NO test | xcpretty -c; 40 | else 41 | xcodebuild -workspace "$WORKSPACE" -scheme "$SCHEME" -sdk "$SDK" -destination "$DESTINATION" -configuration Release ONLY_ACTIVE_ARCH=NO build | xcpretty -c; 42 | fi 43 | 44 | # Run `pod lib lint` if specified 45 | - if [ $POD_LINT == "YES" ]; then 46 | pod lib lint; 47 | fi 48 | -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/CONTRIBUTORS.md: -------------------------------------------------------------------------------- 1 | Contributors 2 | ============ 3 | 4 | This is the list of people that have helped making SwiftMoment with pull 5 | requests, bug submissions, etc: 6 | 7 | - [박현재](https://github.com/hyeonjae) 8 | - [akihiro0228](https://github.com/akihiro0228) 9 | - [Aaron Brager](https://github.com/getaaron) 10 | - [Adriano Goncalves](https://github.com/amg1976) 11 | - [Anders Klenke](https://github.com/andersklenke) 12 | - [Andrew Barba](https://github.com/AndrewBarba) 13 | - [Andrew Branch](https://github.com/andrewbranch) 14 | - [Chris Sloey](https://github.com/chrissloey) 15 | - [Daniel Cestari](https://github.com/dcestari) 16 | - [David Harris](https://github.com/toadzky) 17 | - [Fabio Felici](https://github.com/fabfelici) 18 | - [Florent Pillet](https://github.com/fpillet) 19 | - [Hadar Landao](https://github.com/hlandao) 20 | - [Jake Johnson](https://github.com/johnsonjake) 21 | - [karupanenura](https://github.com/karupanerura) 22 | - [Ken Goldfarb](https://github.com/kengoldfarb) 23 | - [Laurin Brandner](https://github.com/larcus94) 24 | - [Madhava Jay](https://github.com/madhavajay) 25 | - [Masaya Yashiro](https://github.com/yashims) 26 | - [Mihyaeru](https://github.com/mihyaeru21) 27 | - [Narayan Sainaney](https://github.com/nsainaney) 28 | - [Nate Armstrong](https://github.com/n8armstrong) 29 | - [Neil](https://github.com/AsFarA) 30 | - [PG Herveou](https://github.com/pgherveou) 31 | - [Pine Mizune](https://github.com/pine613) 32 | - [Ryan Maxwell](https://github.com/ryanmaxwell) 33 | - [Ryo Yamada](https://github.com/Liooo) 34 | - [Tomáš Slíž](https://github.com/tomassliz) 35 | 36 | Special Thanks 37 | -------------- 38 | 39 | A big shoutout to [Dave Verwer](https://twitter.com/daveverwer) who 40 | kindly featured SwiftMoment in [iOS Dev Weekly issue 41 | 186](http://iosdevweekly.com/issues/186), to [Natasha 42 | Murashev](http://natashatherobot.com) who also featured SwiftMoment in 43 | her newsletter, and to [Swift Sandbox](http://swiftsandbox.io) who 44 | featured SwiftMoment in [issue 36](http://swiftsandbox.io/issues/36?#start)! 45 | Please make sure to subscribe to all of these newsletters! 46 | 47 | Also thanks to [Matteo Crippa](https://github.com/matteocrippa) and 48 | [dkhamsing](https://github.com/dkhamsing) for featuring SwiftMoment in 49 | the [awesome swift](https://github.com/matteocrippa/awesome-swift) list! 50 | 51 | -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/Carthage/Build: -------------------------------------------------------------------------------- 1 | ../../../../Carthage/Build -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2015, Adrian Kosmaczewski 2 | All rights reserved. 3 | 4 | Redistribution and use in source and binary forms, with or without modification, 5 | are permitted provided that the following conditions are met: 6 | 7 | 1. Redistributions of source code must retain the above copyright notice, this 8 | list of conditions and the following disclaimer. 9 | 10 | 2. Redistributions in binary form must reproduce the above copyright notice, 11 | this list of conditions and the following disclaimer in the documentation 12 | and/or other materials provided with the distribution. 13 | 14 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 15 | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 16 | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 17 | DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR 18 | ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 19 | (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 20 | LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON 21 | ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 22 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 23 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 24 | 25 | -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/README.md: -------------------------------------------------------------------------------- 1 | # SwiftMoment 2 | 3 | [![Build Status](https://travis-ci.org/akosma/SwiftMoment.svg?branch=master)](https://travis-ci.org/akosma/SwiftMoment) 4 | [![CocoaPods Compatible](https://img.shields.io/cocoapods/v/SwiftMoment.svg)](https://img.shields.io/cocoapods/v/SwiftMoment) 5 | [![Carthage Compatible](https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat)](https://github.com/Carthage/Carthage) 6 | [![Platform](https://img.shields.io/cocoapods/p/SwiftMoment.svg?style=flat)](http://cocoadocs.org/docsets/SwiftMoment) 7 | [![swiftyness](https://img.shields.io/badge/pure-swift-ff3f26.svg?style=flat)](https://swift.org/) 8 | 9 | This framework is inspired by [Moment.js](http://momentjs.com). Its 10 | objectives are the following: 11 | 12 | - Simplify the manipulation and readability of date and interval values. 13 | - Provide help when parsing dates from various string representations. 14 | - Simplifying the formatting of date information into strings. 15 | - Streamlining getting date components (day, month, etc.) from dates and 16 | time intervals. 17 | 18 | Important: This framework supports iOS 9+, macOS 10.11+, tvOS 9+, watchOS 2+, Xcode 8 and Swift 3. 19 | 20 | ## Installation 21 | 22 | SwiftMoment is compatible with 23 | [Carthage](http://github.com/Carthage/Carthage) and 24 | [CocoaPods](http://cocoapods.org/). With CocoaPods, just add this to 25 | your Podfile: 26 | 27 | ```ruby 28 | pod 'SwiftMoment' 29 | ``` 30 | 31 | ## Mac OS X Notes 32 | 33 | - Drag the created .framework file into the Xcode Project, be sure to tick 'Copy Files to Directory' 34 | - In the containing applications target, add a new 'Copy File Build Phase' 35 | - Set the 'Destination' to 'Frameworks' 36 | - Drag in the created .framework 37 | 38 | ## Examples 39 | 40 | To use this library, just `import SwiftMoment` in your application. 41 | 42 | To create new moment instances: 43 | 44 | ```Swift 45 | let now = moment() 46 | let yesterday = moment("2015-01-19") 47 | ``` 48 | 49 | By default, moments are initialized with the current date and time. You 50 | can create moments for any... moment in the future or the past; you can 51 | do that by passing strings in different formats: 52 | 53 | ```Swift 54 | let yesterday = moment("2015-01-19") 55 | ``` 56 | 57 | You can also do it by directly specifying the components manually: 58 | 59 | ```Swift 60 | let today = moment([2015, 01, 19, 20, 45, 34]) 61 | ``` 62 | 63 | You can also use a dictionary with the following keys: 64 | 65 | ```Swift 66 | let obj = moment(["year": 2015, 67 | "second": 34, 68 | "month": 01, 69 | "minute": 45, 70 | "hour": 20, 71 | "day": 19 72 | ]) 73 | ``` 74 | 75 | When using a `[String: Int]` dictionary, the order of the keys does not 76 | matter. Moreover, only the keys above are taken into account, and any 77 | other information is ignored. 78 | 79 | There is also an extension to the `Int` type in Swift, used to create 80 | `Duration` values directly from an integer value: 81 | 82 | ```Swift 83 | let duration = 5.hours + 56.minutes 84 | ``` 85 | 86 | ## Architecture 87 | 88 | The two most important components of this library are the `Moment` and 89 | `Duration` structures. `Moment` wraps an `NSDate` instance, while 90 | `Duration` wraps an `NSTimeInterval` value. 91 | 92 | Both `Moment` and `Duration` comply with the `Comparable` protocols, and 93 | include all the required operators. In addition, `Moment` instances can 94 | be subtracted from one another (which yields a `Duration`) and 95 | `Duration` instances can be added to `Moments` to create new moments. 96 | 97 | `Moments` and `Durations` are made as immutable as possible. 98 | 99 | ## Tests 100 | 101 | Swift Moment includes a suite of tests showing how to use the different 102 | functions of the framework. 103 | 104 | ## Playground 105 | 106 | A playground is included in the project to learn how to use the library. 107 | 108 | ## Differences with [Moment.js](http://momentjs.com) 109 | 110 | - Format strings `DD` and `dd` do not yield the same results. 111 | 112 | ## Contributors 113 | 114 | Lots of people are actively helping in the development of this library; 115 | please check the 116 | [CONTRIBUTORS](https://github.com/akosma/SwiftMoment/blob/master/CONTRIBUTORS.md) 117 | file for the full list! Thanks to all :) 118 | 119 | ## License 120 | 121 | This project is distributed under a BSD license. See the LICENSE file 122 | for details. 123 | 124 | -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/Resources/install_swiftlint.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | # Installs the SwiftLint package. 4 | # Tries to get the precompiled .pkg file from Github, but if that 5 | # fails just recompiles from source. 6 | 7 | set -e 8 | 9 | SWIFTLINT_PKG_PATH="/tmp/SwiftLint.pkg" 10 | SWIFTLINT_PKG_URL="https://github.com/realm/SwiftLint/releases/download/0.10.0/SwiftLint.pkg" 11 | 12 | wget --output-document=$SWIFTLINT_PKG_PATH $SWIFTLINT_PKG_URL 13 | 14 | if [ -f $SWIFTLINT_PKG_PATH ]; then 15 | echo "SwiftLint package exists! Installing it..." 16 | sudo installer -pkg $SWIFTLINT_PKG_PATH -target / 17 | else 18 | echo "SwiftLint package doesn't exist. Compiling from source..." && 19 | git clone https://github.com/realm/SwiftLint.git /tmp/SwiftLint && 20 | cd /tmp/SwiftLint && 21 | git submodule update --init --recursive && 22 | sudo make install 23 | fi 24 | -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment.podspec: -------------------------------------------------------------------------------- 1 | Pod::Spec.new do |s| 2 | 3 | s.name = "SwiftMoment" 4 | s.version = "0.5.1" 5 | s.summary = "A time and calendar manipulation library for iOS / macOS / tvOS / watchOS written in Swift" 6 | s.description = <<-DESC 7 | This framework is inspired by Moment.js. Its objectives are the following: 8 | 9 | * Simplify the manipulation and readability of date and interval values. 10 | * Provide help when parsing dates from various string representations. 11 | * Simplifying the formatting of date information into strings. 12 | * Streamlining getting date components (day, month, etc.) from dates and time intervals. 13 | 14 | This framework supports iOS 8+, macOS 10.10+, tvOS 9+, watchOS 2+, Xcode 7 and Swift 2.2. 15 | DESC 16 | s.homepage = "http://akosma.github.io/SwiftMoment/" 17 | s.license = { :type => "BSD", :file => "LICENSE" } 18 | s.author = { "Adrian Kosmaczewski" => "akosma@me.com" } 19 | s.social_media_url = "http://twitter.com/akosma" 20 | s.ios.deployment_target = "8.0" 21 | s.osx.deployment_target = "10.10" 22 | s.tvos.deployment_target = "9.0" 23 | s.watchos.deployment_target = "2.0" 24 | s.source = { :git => "https://github.com/akosma/SwiftMoment.git", :tag => "v0.5.1" } 25 | s.source_files = "SwiftMoment/SwiftMoment" 26 | s.resource = "SwiftMoment/SwiftMoment/MomentFromNow.bundle" 27 | end 28 | -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/MyPlayground.playground/Contents.swift: -------------------------------------------------------------------------------- 1 | import SwiftMoment 2 | 3 | let now = moment() 4 | print(now.format()) 5 | 6 | var obj = moment([2015, 01, 19, 20, 45, 34])! 7 | obj = obj + 4.days 8 | obj.format("YYYY MMMM dd") 9 | 10 | obj.fromNow() 11 | 12 | let today = moment() 13 | let first = moment(today).add(50.days) 14 | let second = moment(today).add(50, .Days) 15 | 16 | -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/MyPlayground.playground/Sources/SupportCode.swift: -------------------------------------------------------------------------------- 1 | // empty 2 | -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/MyPlayground.playground/contents.xcplayground: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/MyPlayground.playground/timeline.xctimeline: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMoment.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMoment.xcodeproj/xcshareddata/xcschemes/SwiftMoment iOS.xcscheme: -------------------------------------------------------------------------------- 1 | 2 | 5 | 8 | 9 | 15 | 21 | 22 | 23 | 29 | 35 | 36 | 37 | 38 | 39 | 45 | 46 | 48 | 54 | 55 | 56 | 57 | 58 | 64 | 65 | 66 | 67 | 68 | 69 | 79 | 80 | 86 | 87 | 88 | 89 | 90 | 91 | 97 | 98 | 104 | 105 | 106 | 107 | 109 | 110 | 113 | 114 | 115 | -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMoment.xcodeproj/xcshareddata/xcschemes/SwiftMoment tvOS.xcscheme: -------------------------------------------------------------------------------- 1 | 2 | 5 | 8 | 9 | 15 | 21 | 22 | 23 | 29 | 35 | 36 | 37 | 38 | 39 | 45 | 46 | 48 | 54 | 55 | 56 | 57 | 58 | 64 | 65 | 66 | 67 | 68 | 69 | 79 | 80 | 86 | 87 | 88 | 89 | 90 | 91 | 97 | 98 | 104 | 105 | 106 | 107 | 109 | 110 | 113 | 114 | 115 | -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMoment.xcodeproj/xcshareddata/xcschemes/SwiftMoment watchOS.xcscheme: -------------------------------------------------------------------------------- 1 | 2 | 5 | 8 | 9 | 15 | 21 | 22 | 23 | 24 | 25 | 31 | 32 | 33 | 34 | 35 | 36 | 46 | 47 | 53 | 54 | 55 | 56 | 57 | 58 | 64 | 65 | 71 | 72 | 73 | 74 | 76 | 77 | 80 | 81 | 82 | -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMoment.xcodeproj/xcshareddata/xcschemes/SwiftMoment.xcscheme: -------------------------------------------------------------------------------- 1 | 2 | 5 | 8 | 9 | 15 | 21 | 22 | 23 | 29 | 35 | 36 | 37 | 38 | 39 | 45 | 46 | 48 | 54 | 55 | 56 | 57 | 58 | 64 | 65 | 66 | 67 | 68 | 69 | 79 | 80 | 86 | 87 | 88 | 89 | 90 | 91 | 97 | 98 | 104 | 105 | 106 | 107 | 109 | 110 | 113 | 114 | 115 | -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMoment.xcodeproj/xcshareddata/xcschemes/SwiftMomentOSX.xcscheme: -------------------------------------------------------------------------------- 1 | 2 | 5 | 8 | 9 | 15 | 21 | 22 | 23 | 24 | 25 | 30 | 31 | 33 | 39 | 40 | 41 | 42 | 43 | 49 | 50 | 51 | 52 | 53 | 54 | 64 | 65 | 71 | 72 | 73 | 74 | 75 | 76 | 82 | 83 | 89 | 90 | 91 | 92 | 94 | 95 | 98 | 99 | 100 | -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMoment/Duration.swift: -------------------------------------------------------------------------------- 1 | // 2 | // Duration.swift 3 | // SwiftMoment 4 | // 5 | // Created by Adrian on 19/01/15. 6 | // Copyright (c) 2015 Adrian Kosmaczewski. All rights reserved. 7 | // 8 | 9 | import Foundation 10 | 11 | public struct Duration: Equatable { 12 | let interval: TimeInterval 13 | 14 | public init(value: TimeInterval) { 15 | self.interval = value 16 | } 17 | 18 | public init(value: Int) { 19 | self.interval = TimeInterval(value) 20 | } 21 | 22 | public var years: Double { 23 | return interval / 31536000 // 365 days 24 | } 25 | 26 | public var quarters: Double { 27 | return interval / 7776000 // 3 months 28 | } 29 | 30 | public var months: Double { 31 | return interval / 2592000 // 30 days 32 | } 33 | 34 | public var days: Double { 35 | return interval / 86400 // 24 hours 36 | } 37 | 38 | public var hours: Double { 39 | return interval / 3600 // 60 minutes 40 | } 41 | 42 | public var minutes: Double { 43 | return interval / 60 44 | } 45 | 46 | public var seconds: Double { 47 | return interval 48 | } 49 | 50 | public func ago() -> Moment { 51 | return moment().subtract(self) 52 | } 53 | 54 | public func add(_ duration: Duration) -> Duration { 55 | return Duration(value: self.interval + duration.interval) 56 | } 57 | 58 | public func subtract(_ duration: Duration) -> Duration { 59 | return Duration(value: self.interval - duration.interval) 60 | } 61 | 62 | public func isEqualTo(_ duration: Duration) -> Bool { 63 | return self.interval == duration.interval 64 | } 65 | } 66 | 67 | extension Duration: CustomStringConvertible { 68 | public var description: String { 69 | let formatter = DateComponentsFormatter() 70 | formatter.calendar = Calendar(identifier: Calendar.Identifier.gregorian) 71 | formatter.calendar?.timeZone = TimeZone(abbreviation: "UTC")! 72 | formatter.allowedUnits = [.year, .month, .weekOfMonth, .day, .hour, .minute, .second] 73 | 74 | let referenceDate = Date(timeIntervalSinceReferenceDate: 0) 75 | let intervalDate = Date(timeInterval: self.interval, since: referenceDate) 76 | return formatter.string(from: referenceDate, to: intervalDate)! 77 | } 78 | } 79 | -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMoment/Extensions.swift: -------------------------------------------------------------------------------- 1 | // 2 | // Extensions.swift 3 | // SwiftMoment 4 | // 5 | // Created by Adrian on 19/01/15. 6 | // Copyright (c) 2015 Adrian Kosmaczewski. All rights reserved. 7 | // 8 | 9 | public extension Int { 10 | var seconds: Duration { 11 | return Duration(value: self) 12 | } 13 | 14 | var minutes: Duration { 15 | return Duration(value: self * 60) 16 | } 17 | 18 | var hours: Duration { 19 | return Duration(value: self * 3600) 20 | } 21 | 22 | var weeks: Duration { 23 | return Duration(value: self * 604800) 24 | } 25 | 26 | var days: Duration { 27 | return Duration(value: self * 86400) 28 | } 29 | 30 | var months: Duration { 31 | return Duration(value: self * 2592000) 32 | } 33 | 34 | var quarters: Duration { 35 | return Duration(value: self * 7776000) 36 | } 37 | 38 | var years: Duration { 39 | return Duration(value: self * 31536000) 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMoment/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 | FMWK 17 | CFBundleShortVersionString 18 | 0.5 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | $(CURRENT_PROJECT_VERSION) 23 | NSPrincipalClass 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMoment/InfoOSX.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | com.akosma.$(PRODUCT_NAME:rfc1034identifier) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | $(PRODUCT_NAME) 15 | CFBundlePackageType 16 | FMWK 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | $(CURRENT_PROJECT_VERSION) 23 | NSPrincipalClass 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMoment/MomentFromNow.bundle/Root.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | StringsTable 6 | Root 7 | PreferenceSpecifiers 8 | 9 | 10 | Type 11 | PSGroupSpecifier 12 | Title 13 | Group 14 | 15 | 16 | Type 17 | PSTextFieldSpecifier 18 | Title 19 | Name 20 | Key 21 | name_preference 22 | DefaultValue 23 | 24 | IsSecure 25 | 26 | KeyboardType 27 | Alphabet 28 | AutocapitalizationType 29 | None 30 | AutocorrectionType 31 | No 32 | 33 | 34 | Type 35 | PSToggleSwitchSpecifier 36 | Title 37 | Enabled 38 | Key 39 | enabled_preference 40 | DefaultValue 41 | 42 | 43 | 44 | Type 45 | PSSliderSpecifier 46 | Key 47 | slider_preference 48 | DefaultValue 49 | 0.5 50 | MinimumValue 51 | 0 52 | MaximumValue 53 | 1 54 | MinimumValueImage 55 | 56 | MaximumValueImage 57 | 58 | 59 | 60 | 61 | 62 | -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMoment/MomentFromNow.bundle/ar.lproj/NSDateTimeAgo.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/armstrongnate/CalendarView/f95c89a83f6a81bcafa6cf1e8eaf595161d33946/CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMoment/MomentFromNow.bundle/ar.lproj/NSDateTimeAgo.strings -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMoment/MomentFromNow.bundle/bg.lproj/NSDateTimeAgo.strings: -------------------------------------------------------------------------------- 1 | /* No comment provided by engineer. */ 2 | "%d days ago" = "преди %d дена"; 3 | 4 | /* No comment provided by engineer. */ 5 | "%d hours ago" = "преди %d часа"; 6 | 7 | /* No comment provided by engineer. */ 8 | "%d minutes ago" = "преди %d минути"; 9 | 10 | /* No comment provided by engineer. */ 11 | "%d months ago" = "преди %d месеца"; 12 | 13 | /* No comment provided by engineer. */ 14 | "%d seconds ago" = "преди %d секунди"; 15 | 16 | /* No comment provided by engineer. */ 17 | "%d weeks ago" = "преди %d седмици"; 18 | 19 | /* No comment provided by engineer. */ 20 | "%d years ago" = "преди %d години"; 21 | 22 | /* No comment provided by engineer. */ 23 | "A minute ago" = "преди минута"; 24 | 25 | /* No comment provided by engineer. */ 26 | "An hour ago" = "преди час"; 27 | 28 | /* No comment provided by engineer. */ 29 | "Just now" = "току що"; 30 | 31 | /* No comment provided by engineer. */ 32 | "Last month" = "през последния месец"; 33 | 34 | /* No comment provided by engineer. */ 35 | "Last week" = "през последната седмица"; 36 | 37 | /* No comment provided by engineer. */ 38 | "Last year" = "през последната година"; 39 | 40 | /* No comment provided by engineer. */ 41 | "Yesterday" = "вчера"; 42 | 43 | /* No comment provided by engineer. */ 44 | "1 year ago" = "преди 1 година"; 45 | 46 | /* No comment provided by engineer. */ 47 | "1 month ago" = "преди 1 месец"; 48 | 49 | /* No comment provided by engineer. */ 50 | "1 week ago" = "преди 1 седмица"; 51 | 52 | /* No comment provided by engineer. */ 53 | "1 day ago" = "преди 1 ден"; 54 | 55 | /* No comment provided by engineer. */ 56 | "This morning" = "тази сутрин"; 57 | 58 | /* No comment provided by engineer. */ 59 | "This afternoon" = "тази вечер"; 60 | 61 | /* No comment provided by engineer. */ 62 | "Today" = "днес"; 63 | 64 | /* No comment provided by engineer. */ 65 | "This week" = "тази седмица"; 66 | 67 | /* No comment provided by engineer. */ 68 | "This month" = "този месец"; 69 | 70 | /* No comment provided by engineer. */ 71 | "This year" = "тази година"; 72 | -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMoment/MomentFromNow.bundle/cs.lproj/NSDateTimeAgo.strings: -------------------------------------------------------------------------------- 1 | /* No comment provided by engineer. */ 2 | "%d days ago" = "Před %d dny"; 3 | 4 | /* No comment provided by engineer. */ 5 | "%d hours ago" = "Před %d hodinami"; 6 | 7 | /* No comment provided by engineer. */ 8 | "%d minutes ago" = "Před %d minutami"; 9 | 10 | /* No comment provided by engineer. */ 11 | "%d months ago" = "Před %d měsíci"; 12 | 13 | /* No comment provided by engineer. */ 14 | "%d seconds ago" = "Před %d sekundami"; 15 | 16 | /* No comment provided by engineer. */ 17 | "%d weeks ago" = "Před %d týdny"; 18 | 19 | /* No comment provided by engineer. */ 20 | "%d years ago" = "Před %d lety"; 21 | 22 | /* No comment provided by engineer. */ 23 | "A minute ago" = "Před minutou"; 24 | 25 | /* No comment provided by engineer. */ 26 | "An hour ago" = "Před hodinou"; 27 | 28 | /* No comment provided by engineer. */ 29 | "Just now" = "Právě teď"; 30 | 31 | /* No comment provided by engineer. */ 32 | "Last month" = "Minulý měsíc"; 33 | 34 | /* No comment provided by engineer. */ 35 | "Last week" = "Minulý týden"; 36 | 37 | /* No comment provided by engineer. */ 38 | "Last year" = "Minulý rok"; 39 | 40 | /* No comment provided by engineer. */ 41 | "Yesterday" = "Včera"; 42 | 43 | /* No comment provided by engineer. */ 44 | "1 year ago" = "Před rokem"; 45 | 46 | /* No comment provided by engineer. */ 47 | "1 month ago" = "Před měsícem"; 48 | 49 | /* No comment provided by engineer. */ 50 | "1 week ago" = "Před týdnem"; 51 | 52 | /* No comment provided by engineer. */ 53 | "1 day ago" = "Předevčírem"; 54 | 55 | /* No comment provided by engineer. */ 56 | "This morning" = "Dnes dopoledne"; 57 | 58 | /* No comment provided by engineer. */ 59 | "This afternoon" = "Dnes odpoledne"; 60 | 61 | /* No comment provided by engineer. */ 62 | "Today" = "Dnes"; 63 | 64 | /* No comment provided by engineer. */ 65 | "This week" = "Tento týden"; 66 | 67 | /* No comment provided by engineer. */ 68 | "This month" = "Tento měsíc"; 69 | 70 | /* No comment provided by engineer. */ 71 | "This year" = "Letos"; 72 | -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMoment/MomentFromNow.bundle/da.lproj/NSDateTimeAgo.strings: -------------------------------------------------------------------------------- 1 | /* No comment provided by engineer. */ 2 | "%d days ago" = "%d dage siden"; 3 | 4 | /* No comment provided by engineer. */ 5 | "%d hours ago" = "%d timer siden"; 6 | 7 | /* No comment provided by engineer. */ 8 | "%d minutes ago" = "%d minutter siden"; 9 | 10 | /* No comment provided by engineer. */ 11 | "%d months ago" = "%d måneder siden"; 12 | 13 | /* No comment provided by engineer. */ 14 | "%d seconds ago" = "%d sekunder siden"; 15 | 16 | /* No comment provided by engineer. */ 17 | "%d weeks ago" = "%d uger siden"; 18 | 19 | /* No comment provided by engineer. */ 20 | "%d years ago" = "%d år siden"; 21 | 22 | /* No comment provided by engineer. */ 23 | "A minute ago" = "Et minut siden"; 24 | 25 | /* No comment provided by engineer. */ 26 | "An hour ago" = "En time siden"; 27 | 28 | /* No comment provided by engineer. */ 29 | "Just now" = "Lige nu"; 30 | 31 | /* No comment provided by engineer. */ 32 | "Last month" = "Sidste måned"; 33 | 34 | /* No comment provided by engineer. */ 35 | "Last week" = "Sidste uge"; 36 | 37 | /* No comment provided by engineer. */ 38 | "Last year" = "Sidste år"; 39 | 40 | /* No comment provided by engineer. */ 41 | "Yesterday" = "I går"; 42 | 43 | /* No comment provided by engineer. */ 44 | "1 year ago" = "1 år siden"; 45 | 46 | /* No comment provided by engineer. */ 47 | "1 month ago" = "1 måned siden"; 48 | 49 | /* No comment provided by engineer. */ 50 | "1 week ago" = "1 uge siden"; 51 | 52 | /* No comment provided by engineer. */ 53 | "1 day ago" = "1 dag siden"; 54 | 55 | /* No comment provided by engineer. */ 56 | "This morning" = "Her til morgen"; 57 | 58 | /* No comment provided by engineer. */ 59 | "This afternoon" = "Her til eftermiddag"; 60 | 61 | /* No comment provided by engineer. */ 62 | "Today" = "I dag"; 63 | 64 | /* No comment provided by engineer. */ 65 | "This week" = "Denne uge"; 66 | 67 | /* No comment provided by engineer. */ 68 | "This month" = "Denne måned"; 69 | 70 | /* No comment provided by engineer. */ 71 | "This year" = "Dette år"; -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMoment/MomentFromNow.bundle/de.lproj/NSDateTimeAgo.strings: -------------------------------------------------------------------------------- 1 | /* No comment provided by engineer. */ 2 | "%d days ago" = "Vor %d Tagen"; 3 | 4 | /* No comment provided by engineer. */ 5 | "%d hours ago" = "Vor %d Stunden"; 6 | 7 | /* No comment provided by engineer. */ 8 | "%d minutes ago" = "Vor %d Minuten"; 9 | 10 | /* No comment provided by engineer. */ 11 | "%d months ago" = "Vor %d Monaten"; 12 | 13 | /* No comment provided by engineer. */ 14 | "%d seconds ago" = "Vor %d Sekunden"; 15 | 16 | /* No comment provided by engineer. */ 17 | "%d weeks ago" = "Vor %d Wochen"; 18 | 19 | /* No comment provided by engineer. */ 20 | "%d years ago" = "Vor %d Jahren"; 21 | 22 | /* No comment provided by engineer. */ 23 | "A minute ago" = "Vor einer Minute"; 24 | 25 | /* No comment provided by engineer. */ 26 | "An hour ago" = "Vor einer Stunde"; 27 | 28 | /* No comment provided by engineer. */ 29 | "Just now" = "Gerade eben"; 30 | 31 | /* No comment provided by engineer. */ 32 | "Last month" = "Letzten Monat"; 33 | 34 | /* No comment provided by engineer. */ 35 | "Last week" = "Letzte Woche"; 36 | 37 | /* No comment provided by engineer. */ 38 | "Last year" = "Letztes Jahr"; 39 | 40 | /* No comment provided by engineer. */ 41 | "Yesterday" = "Gestern"; 42 | 43 | /* No comment provided by engineer. */ 44 | "1 year ago" = "Vor 1 Jahr"; 45 | 46 | /* No comment provided by engineer. */ 47 | "1 month ago" = "Vor 1 Monat"; 48 | 49 | /* No comment provided by engineer. */ 50 | "1 week ago" = "Vor 1 Woche"; 51 | 52 | /* No comment provided by engineer. */ 53 | "1 day ago" = "Vor 1 Tag"; 54 | 55 | /* No comment provided by engineer. */ 56 | "This morning" = "Heute Morgen"; 57 | 58 | /* No comment provided by engineer. */ 59 | "This afternoon" = "Heute Nachmittag"; 60 | 61 | /* No comment provided by engineer. */ 62 | "Today" = "Heute"; 63 | 64 | /* No comment provided by engineer. */ 65 | "This week" = "Diese Woche"; 66 | 67 | /* No comment provided by engineer. */ 68 | "This month" = "Diesen Monat"; 69 | 70 | /* No comment provided by engineer. */ 71 | "This year" = "Dieses Jahr"; 72 | -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMoment/MomentFromNow.bundle/en.lproj/NSDateTimeAgo.strings: -------------------------------------------------------------------------------- 1 | /* No comment provided by engineer. */ 2 | "%d days ago" = "%d days ago"; 3 | 4 | /* No comment provided by engineer. */ 5 | "%d hours ago" = "%d hours ago"; 6 | 7 | /* No comment provided by engineer. */ 8 | "%d minutes ago" = "%d minutes ago"; 9 | 10 | /* No comment provided by engineer. */ 11 | "%d months ago" = "%d months ago"; 12 | 13 | /* No comment provided by engineer. */ 14 | "%d seconds ago" = "%d seconds ago"; 15 | 16 | /* No comment provided by engineer. */ 17 | "%d weeks ago" = "%d weeks ago"; 18 | 19 | /* No comment provided by engineer. */ 20 | "%d years ago" = "%d years ago"; 21 | 22 | /* No comment provided by engineer. */ 23 | "A minute ago" = "A minute ago"; 24 | 25 | /* No comment provided by engineer. */ 26 | "An hour ago" = "An hour ago"; 27 | 28 | /* No comment provided by engineer. */ 29 | "Just now" = "Just now"; 30 | 31 | /* No comment provided by engineer. */ 32 | "Last month" = "Last month"; 33 | 34 | /* No comment provided by engineer. */ 35 | "Last week" = "Last week"; 36 | 37 | /* No comment provided by engineer. */ 38 | "Last year" = "Last year"; 39 | 40 | /* No comment provided by engineer. */ 41 | "Yesterday" = "Yesterday"; 42 | 43 | /* No comment provided by engineer. */ 44 | "1 year ago" = "1 year ago"; 45 | 46 | /* No comment provided by engineer. */ 47 | "1 month ago" = "1 month ago"; 48 | 49 | /* No comment provided by engineer. */ 50 | "1 week ago" = "1 week ago"; 51 | 52 | /* No comment provided by engineer. */ 53 | "1 day ago" = "1 day ago"; 54 | 55 | /* No comment provided by engineer. */ 56 | "This morning" = "This morning"; 57 | 58 | /* No comment provided by engineer. */ 59 | "This afternoon" = "This afternoon"; 60 | 61 | /* No comment provided by engineer. */ 62 | "Today" = "Today"; 63 | 64 | /* No comment provided by engineer. */ 65 | "This week" = "This week"; 66 | 67 | /* No comment provided by engineer. */ 68 | "This month" = "This month"; 69 | 70 | /* No comment provided by engineer. */ 71 | "This year" = "This year"; 72 | -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMoment/MomentFromNow.bundle/en_US.lproj/NSDateTimeAgo.strings: -------------------------------------------------------------------------------- 1 | /* No comment provided by engineer. */ 2 | "%d days ago" = "%d days ago"; 3 | 4 | /* No comment provided by engineer. */ 5 | "%d hours ago" = "%d hours ago"; 6 | 7 | /* No comment provided by engineer. */ 8 | "%d minutes ago" = "%d minutes ago"; 9 | 10 | /* No comment provided by engineer. */ 11 | "%d months ago" = "%d months ago"; 12 | 13 | /* No comment provided by engineer. */ 14 | "%d seconds ago" = "%d seconds ago"; 15 | 16 | /* No comment provided by engineer. */ 17 | "%d weeks ago" = "%d weeks ago"; 18 | 19 | /* No comment provided by engineer. */ 20 | "%d years ago" = "%d years ago"; 21 | 22 | /* No comment provided by engineer. */ 23 | "A minute ago" = "A minute ago"; 24 | 25 | /* No comment provided by engineer. */ 26 | "An hour ago" = "An hour ago"; 27 | 28 | /* No comment provided by engineer. */ 29 | "Just now" = "Just now"; 30 | 31 | /* No comment provided by engineer. */ 32 | "Last month" = "Last month"; 33 | 34 | /* No comment provided by engineer. */ 35 | "Last week" = "Last week"; 36 | 37 | /* No comment provided by engineer. */ 38 | "Last year" = "Last year"; 39 | 40 | /* No comment provided by engineer. */ 41 | "Yesterday" = "Yesterday"; 42 | 43 | /* No comment provided by engineer. */ 44 | "1 year ago" = "1 year ago"; 45 | 46 | /* No comment provided by engineer. */ 47 | "1 month ago" = "1 month ago"; 48 | 49 | /* No comment provided by engineer. */ 50 | "1 week ago" = "1 week ago"; 51 | 52 | /* No comment provided by engineer. */ 53 | "1 day ago" = "1 day ago"; 54 | 55 | /* No comment provided by engineer. */ 56 | "This morning" = "This morning"; 57 | 58 | /* No comment provided by engineer. */ 59 | "This afternoon" = "This afternoon"; 60 | 61 | /* No comment provided by engineer. */ 62 | "Today" = "Today"; 63 | 64 | /* No comment provided by engineer. */ 65 | "This week" = "This week"; 66 | 67 | /* No comment provided by engineer. */ 68 | "This month" = "This month"; 69 | 70 | /* No comment provided by engineer. */ 71 | "This year" = "This year"; 72 | -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMoment/MomentFromNow.bundle/es.lproj/NSDateTimeAgo.strings: -------------------------------------------------------------------------------- 1 | /* No comment provided by engineer. */ 2 | "%d days ago" = "Hace %d días"; 3 | 4 | /* No comment provided by engineer. */ 5 | "%d hours ago" = "Hace %d horas"; 6 | 7 | /* No comment provided by engineer. */ 8 | "%d minutes ago" = "Hace %d minutos"; 9 | 10 | /* No comment provided by engineer. */ 11 | "%d months ago" = "Hace %d meses"; 12 | 13 | /* No comment provided by engineer. */ 14 | "%d seconds ago" = "Hace %d segundos"; 15 | 16 | /* No comment provided by engineer. */ 17 | "%d weeks ago" = "Hace %d semanas"; 18 | 19 | /* No comment provided by engineer. */ 20 | "%d years ago" = "Hace %d años"; 21 | 22 | /* No comment provided by engineer. */ 23 | "A minute ago" = "Hace un minuto"; 24 | 25 | /* No comment provided by engineer. */ 26 | "An hour ago" = "Hace una hora"; 27 | 28 | /* No comment provided by engineer. */ 29 | "Just now" = "Ahora mismo"; 30 | 31 | /* No comment provided by engineer. */ 32 | "Last month" = "El mes pasado"; 33 | 34 | /* No comment provided by engineer. */ 35 | "Last week" = "La semana pasada"; 36 | 37 | /* No comment provided by engineer. */ 38 | "Last year" = "El año pasado"; 39 | 40 | /* No comment provided by engineer. */ 41 | "Yesterday" = "Ayer"; 42 | 43 | /* No comment provided by engineer. */ 44 | "1 year ago" = "Hace un año"; 45 | 46 | /* No comment provided by engineer. */ 47 | "1 month ago" = "Hace un mes"; 48 | 49 | /* No comment provided by engineer. */ 50 | "1 week ago" = "Hace una semana"; 51 | 52 | /* No comment provided by engineer. */ 53 | "1 day ago" = "Hace un día"; 54 | 55 | /* No comment provided by engineer. */ 56 | "This morning" = "Esta mañana"; 57 | 58 | /* No comment provided by engineer. */ 59 | "This afternoon" = "Esta tarde"; 60 | 61 | /* No comment provided by engineer. */ 62 | "Today" = "Hoy"; 63 | 64 | /* No comment provided by engineer. */ 65 | "This week" = "Esta semana"; 66 | 67 | /* No comment provided by engineer. */ 68 | "This month" = "Este mes"; 69 | 70 | /* No comment provided by engineer. */ 71 | "This year" = "Este año"; 72 | -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMoment/MomentFromNow.bundle/fi.lproj/NSDateTimeAgo.strings: -------------------------------------------------------------------------------- 1 | /* No comment provided by engineer. */ 2 | "%d days ago" = "%d päivää sitten"; 3 | 4 | /* No comment provided by engineer. */ 5 | "%d hours ago" = "%d tuntia sitten"; 6 | 7 | /* No comment provided by engineer. */ 8 | "%d minutes ago" = "%d minuuttia sitten"; 9 | 10 | /* No comment provided by engineer. */ 11 | "%d months ago" = "%d kuukautta sitten"; 12 | 13 | /* No comment provided by engineer. */ 14 | "%d seconds ago" = "%d sekuntia sitten"; 15 | 16 | /* No comment provided by engineer. */ 17 | "%d weeks ago" = "%d viikkoa sitten"; 18 | 19 | /* No comment provided by engineer. */ 20 | "%d years ago" = "%d vuotta sitten"; 21 | 22 | /* No comment provided by engineer. */ 23 | "A minute ago" = "Minuutti sitten"; 24 | 25 | /* No comment provided by engineer. */ 26 | "An hour ago" = "Tunti sitten"; 27 | 28 | /* No comment provided by engineer. */ 29 | "Just now" = "Juuri äsken"; 30 | 31 | /* No comment provided by engineer. */ 32 | "Last month" = "Viime kuussa"; 33 | 34 | /* No comment provided by engineer. */ 35 | "Last week" = "Viime viikolla"; 36 | 37 | /* No comment provided by engineer. */ 38 | "Last year" = "Viime vuonna"; 39 | 40 | /* No comment provided by engineer. */ 41 | "Yesterday" = "Eilen"; 42 | 43 | /* No comment provided by engineer. */ 44 | "1 year ago" = "Vuosi sitten"; 45 | 46 | /* No comment provided by engineer. */ 47 | "1 month ago" = "Kuukausi sitten"; 48 | 49 | /* No comment provided by engineer. */ 50 | "1 week ago" = "Viikko sitten"; 51 | 52 | /* No comment provided by engineer. */ 53 | "1 day ago" = "Vuorokausi sitten"; 54 | 55 | /* No comment provided by engineer. */ 56 | "This morning" = "Tänä aamuna"; 57 | 58 | /* No comment provided by engineer. */ 59 | "This afternoon" = "Tänä iltapäivänä"; 60 | 61 | /* No comment provided by engineer. */ 62 | "Today" = "Tänään"; 63 | 64 | /* No comment provided by engineer. */ 65 | "This week" = "Tällä viikolla"; 66 | 67 | /* No comment provided by engineer. */ 68 | "This month" = "Tässä kuussa"; 69 | 70 | /* No comment provided by engineer. */ 71 | "This year" = "Tänä vuonna"; 72 | -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMoment/MomentFromNow.bundle/fr.lproj/NSDateTimeAgo.strings: -------------------------------------------------------------------------------- 1 | /* No comment provided by engineer. */ 2 | "%d days ago" = "Il y a %d jours"; 3 | 4 | /* No comment provided by engineer. */ 5 | "%d hours ago" = "Il y a %d heures"; 6 | 7 | /* No comment provided by engineer. */ 8 | "%d minutes ago" = "Il y a %d minutes"; 9 | 10 | /* No comment provided by engineer. */ 11 | "%d months ago" = "Il y a %d mois"; 12 | 13 | /* No comment provided by engineer. */ 14 | "%d seconds ago" = "Il y a %d secondes"; 15 | 16 | /* No comment provided by engineer. */ 17 | "%d weeks ago" = "Il y a %d semaines"; 18 | 19 | /* No comment provided by engineer. */ 20 | "%d years ago" = "Il y a %d ans"; 21 | 22 | /* No comment provided by engineer. */ 23 | "A minute ago" = "Il y a une minute"; 24 | 25 | /* No comment provided by engineer. */ 26 | "An hour ago" = "Il y a une heure"; 27 | 28 | /* No comment provided by engineer. */ 29 | "Just now" = "A l'instant"; 30 | 31 | /* No comment provided by engineer. */ 32 | "Last month" = "Le mois dernier"; 33 | 34 | /* No comment provided by engineer. */ 35 | "Last week" = "La semaine dernière"; 36 | 37 | /* No comment provided by engineer. */ 38 | "Last year" = "L'année dernière"; 39 | 40 | /* No comment provided by engineer. */ 41 | "Yesterday" = "Hier"; 42 | 43 | /* No comment provided by engineer. */ 44 | "1 year ago" = "Il y a 1 an"; 45 | 46 | /* No comment provided by engineer. */ 47 | "1 month ago" = "Il y a 1 mois"; 48 | 49 | /* No comment provided by engineer. */ 50 | "1 week ago" = "Il y a 1 semaine"; 51 | 52 | /* No comment provided by engineer. */ 53 | "1 day ago" = "Il y a 1 jour"; 54 | 55 | /* No comment provided by engineer. */ 56 | "This morning" = "Ce matin"; 57 | 58 | /* No comment provided by engineer. */ 59 | "This afternoon" = "Cet après-midi"; 60 | 61 | /* No comment provided by engineer. */ 62 | "Today" = "Aujourd'hui"; 63 | 64 | /* No comment provided by engineer. */ 65 | "This week" = "Cette semaine"; 66 | 67 | /* No comment provided by engineer. */ 68 | "This month" = "Ce mois-ci"; 69 | 70 | /* No comment provided by engineer. */ 71 | "This year" = "Cette année"; 72 | -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMoment/MomentFromNow.bundle/gre.lproj/NSDateTimeAgo.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/armstrongnate/CalendarView/f95c89a83f6a81bcafa6cf1e8eaf595161d33946/CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMoment/MomentFromNow.bundle/gre.lproj/NSDateTimeAgo.strings -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMoment/MomentFromNow.bundle/he.lproj/NSDateTimeAgo.strings: -------------------------------------------------------------------------------- 1 | /* No comment provided by engineer. */ 2 | "%d days ago" = "לפני %d ימים"; 3 | 4 | /* No comment provided by engineer. */ 5 | "%d hours ago" = "לפני %d שעות"; 6 | 7 | /* No comment provided by engineer. */ 8 | "%d minutes ago" = "לפני %d דקות"; 9 | 10 | /* No comment provided by engineer. */ 11 | "%d months ago" = "לפני %d חודשים"; 12 | 13 | /* No comment provided by engineer. */ 14 | "%d seconds ago" = "לפני %d שניות"; 15 | 16 | /* No comment provided by engineer. */ 17 | "%d weeks ago" = "לפני %d שבועות"; 18 | 19 | /* No comment provided by engineer. */ 20 | "%d years ago" = "לפני %d שנים"; 21 | 22 | /* No comment provided by engineer. */ 23 | "A minute ago" = "לפני דקה"; 24 | 25 | /* No comment provided by engineer. */ 26 | "An hour ago" = "לפני שעה"; 27 | 28 | /* No comment provided by engineer. */ 29 | "Just now" = "ממש עכשיו"; 30 | 31 | /* No comment provided by engineer. */ 32 | "Last month" = "בחודש שעבר"; 33 | 34 | /* No comment provided by engineer. */ 35 | "Last week" = "בשבוע שעבר"; 36 | 37 | /* No comment provided by engineer. */ 38 | "Last year" = "בשנה שעברה"; 39 | 40 | /* No comment provided by engineer. */ 41 | "Yesterday" = "אתמול"; 42 | 43 | /* No comment provided by engineer. */ 44 | "1 year ago" = "לפני שנה"; 45 | 46 | /* No comment provided by engineer. */ 47 | "1 month ago" = "לפני חודש"; 48 | 49 | /* No comment provided by engineer. */ 50 | "1 week ago" = "לפני שבוע"; 51 | 52 | /* No comment provided by engineer. */ 53 | "1 day ago" = "לפני יום"; 54 | 55 | /* No comment provided by engineer. */ 56 | "This morning" = "הבוקר"; 57 | 58 | /* No comment provided by engineer. */ 59 | "This afternoon" = "בצהריים"; 60 | 61 | /* No comment provided by engineer. */ 62 | "Today" = "היום"; 63 | 64 | /* No comment provided by engineer. */ 65 | "This week" = "השבוע"; 66 | 67 | /* No comment provided by engineer. */ 68 | "This month" = "החודש"; 69 | 70 | /* No comment provided by engineer. */ 71 | "This year" = "השנה"; 72 | -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMoment/MomentFromNow.bundle/hu.lproj/NSDateTimeAgo.strings: -------------------------------------------------------------------------------- 1 | /* No comment provided by engineer. */ 2 | "%d days ago" = "%d napja"; 3 | 4 | /* No comment provided by engineer. */ 5 | "%d hours ago" = "%d órája"; 6 | 7 | /* No comment provided by engineer. */ 8 | "%d minutes ago" = "%d perce"; 9 | 10 | /* No comment provided by engineer. */ 11 | "%d months ago" = "%d hónapja"; 12 | 13 | /* No comment provided by engineer. */ 14 | "%d seconds ago" = "%d másodperce"; 15 | 16 | /* No comment provided by engineer. */ 17 | "%d weeks ago" = "%d hete"; 18 | 19 | /* No comment provided by engineer. */ 20 | "%d years ago" = "%d éve"; 21 | 22 | /* No comment provided by engineer. */ 23 | "A minute ago" = "Egy perccel ezelőtt"; 24 | 25 | /* No comment provided by engineer. */ 26 | "An hour ago" = "Egy órával ezelőtt"; 27 | 28 | /* No comment provided by engineer. */ 29 | "Just now" = "Az imént"; 30 | 31 | /* No comment provided by engineer. */ 32 | "Last month" = "Az előző hónapban"; 33 | 34 | /* No comment provided by engineer. */ 35 | "Last week" = "Az előző héten"; 36 | 37 | /* No comment provided by engineer. */ 38 | "Last year" = "Tavaly"; 39 | 40 | /* No comment provided by engineer. */ 41 | "Yesterday" = "Tegnap"; 42 | 43 | /* No comment provided by engineer. */ 44 | "1 year ago" = "Tavaly"; 45 | 46 | /* No comment provided by engineer. */ 47 | "1 month ago" = "Egy hónapja"; 48 | 49 | /* No comment provided by engineer. */ 50 | "1 week ago" = "Egy hete"; 51 | 52 | /* No comment provided by engineer. */ 53 | "1 day ago" = "Tegnap"; 54 | 55 | /* No comment provided by engineer. */ 56 | "This morning" = "Ma reggel"; 57 | 58 | /* No comment provided by engineer. */ 59 | "This afternoon" = "Ma délután"; 60 | 61 | /* No comment provided by engineer. */ 62 | "Today" = "Ma"; 63 | 64 | /* No comment provided by engineer. */ 65 | "This week" = "Ezen a héten"; 66 | 67 | /* No comment provided by engineer. */ 68 | "This month" = "Ebben a hónapban"; 69 | 70 | /* No comment provided by engineer. */ 71 | "This year" = "Idén"; 72 | -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMoment/MomentFromNow.bundle/is.lproj/NSDateTimeAgo.strings: -------------------------------------------------------------------------------- 1 | /* No comment provided by engineer. */ 2 | "%d days ago" = "%d dögum síðan"; 3 | 4 | /* No comment provided by engineer. */ 5 | "%d hours ago" = "%d klst. síðan"; 6 | 7 | /* No comment provided by engineer. */ 8 | "%d minutes ago" = "%d mínútum síðan"; 9 | 10 | /* No comment provided by engineer. */ 11 | "%d months ago" = "%d mánuðum síðan"; 12 | 13 | /* No comment provided by engineer. */ 14 | "%d seconds ago" = "%d sekúndum síðan"; 15 | 16 | /* No comment provided by engineer. */ 17 | "%d weeks ago" = "%d vikum síðan"; 18 | 19 | /* No comment provided by engineer. */ 20 | "%d years ago" = "%d árum síðan"; 21 | 22 | /* No comment provided by engineer. */ 23 | "A minute ago" = "Einni mínútu síðan"; 24 | 25 | /* No comment provided by engineer. */ 26 | "An hour ago" = "Einni klst. síðan"; 27 | 28 | /* No comment provided by engineer. */ 29 | "Just now" = "Rétt í þessu"; 30 | 31 | /* No comment provided by engineer. */ 32 | "Last month" = "Í síðasta mánuði"; 33 | 34 | /* No comment provided by engineer. */ 35 | "Last week" = "Í síðustu viku"; 36 | 37 | /* No comment provided by engineer. */ 38 | "Last year" = "Á síðasta ári"; 39 | 40 | /* No comment provided by engineer. */ 41 | "Yesterday" = "Í gær"; 42 | 43 | /* No comment provided by engineer. */ 44 | "1 year ago" = "1 ári síðan"; 45 | 46 | /* No comment provided by engineer. */ 47 | "1 month ago" = "1 mánuði síðan"; 48 | 49 | /* No comment provided by engineer. */ 50 | "1 week ago" = "1 viku síðan"; 51 | 52 | /* No comment provided by engineer. */ 53 | "1 day ago" = "1 degi síðan"; 54 | 55 | /* No comment provided by engineer. */ 56 | "This morning" = "Í morgun"; 57 | 58 | /* No comment provided by engineer. */ 59 | "This afternoon" = "Síðdegis"; 60 | 61 | /* No comment provided by engineer. */ 62 | "Today" = "Í dag"; 63 | 64 | /* No comment provided by engineer. */ 65 | "This week" = "Í þessari viku"; 66 | 67 | /* No comment provided by engineer. */ 68 | "This month" = "Í þessum mánuði"; 69 | 70 | /* No comment provided by engineer. */ 71 | "This year" = "Á þessu ári"; 72 | -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMoment/MomentFromNow.bundle/it.lproj/NSDateTimeAgo.strings: -------------------------------------------------------------------------------- 1 | /* No comment provided by engineer. */ 2 | "%d days ago" = "%d giorni fa"; 3 | 4 | /* No comment provided by engineer. */ 5 | "%d hours ago" = "%d ore fa"; 6 | 7 | /* No comment provided by engineer. */ 8 | "%d minutes ago" = "%d minuti fa"; 9 | 10 | /* No comment provided by engineer. */ 11 | "%d months ago" = "%d mesi fa"; 12 | 13 | /* No comment provided by engineer. */ 14 | "%d seconds ago" = "%d secondi fa"; 15 | 16 | /* No comment provided by engineer. */ 17 | "%d weeks ago" = "%d settimane fa"; 18 | 19 | /* No comment provided by engineer. */ 20 | "%d years ago" = "%d anni fa"; 21 | 22 | /* No comment provided by engineer. */ 23 | "A minute ago" = "Un minuto fa"; 24 | 25 | /* No comment provided by engineer. */ 26 | "An hour ago" = "Un'ora fa"; 27 | 28 | /* No comment provided by engineer. */ 29 | "Just now" = "Ora"; 30 | 31 | /* No comment provided by engineer. */ 32 | "Last month" = "Il mese scorso"; 33 | 34 | /* No comment provided by engineer. */ 35 | "Last week" = "La settimana scorsa"; 36 | 37 | /* No comment provided by engineer. */ 38 | "Last year" = "L'anno scorso"; 39 | 40 | /* No comment provided by engineer. */ 41 | "Yesterday" = "Ieri"; 42 | 43 | /* No comment provided by engineer. */ 44 | "1 year ago" = "Un anno fa"; 45 | 46 | /* No comment provided by engineer. */ 47 | "1 month ago" = "Un mese fa"; 48 | 49 | /* No comment provided by engineer. */ 50 | "1 week ago" = "Una settimana fa"; 51 | 52 | /* No comment provided by engineer. */ 53 | "1 day ago" = "Un giorno fa"; 54 | 55 | /* No comment provided by engineer. */ 56 | "This morning" = "Questa mattina"; 57 | 58 | /* No comment provided by engineer. */ 59 | "This afternoon" = "Questo pomeriggio"; 60 | 61 | /* No comment provided by engineer. */ 62 | "Today" = "Oggi"; 63 | 64 | /* No comment provided by engineer. */ 65 | "This week" = "Questa settimana"; 66 | 67 | /* No comment provided by engineer. */ 68 | "This month" = "Questo mese"; 69 | 70 | /* No comment provided by engineer. */ 71 | "This year" = "Quest'anno"; 72 | -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMoment/MomentFromNow.bundle/ja.lproj/NSDateTimeAgo.strings: -------------------------------------------------------------------------------- 1 | /* No comment provided by engineer. */ 2 | "%d days ago" = "%d日前"; 3 | 4 | /* No comment provided by engineer. */ 5 | "%d hours ago" = "%d時間前"; 6 | 7 | /* No comment provided by engineer. */ 8 | "%d minutes ago" = "%d分前"; 9 | 10 | /* No comment provided by engineer. */ 11 | "%d months ago" = "%dヶ月前"; 12 | 13 | /* No comment provided by engineer. */ 14 | "%d seconds ago" = "%d秒前"; 15 | 16 | /* No comment provided by engineer. */ 17 | "%d weeks ago" = "%d週間前"; 18 | 19 | /* No comment provided by engineer. */ 20 | "%d years ago" = "%d年前"; 21 | 22 | /* No comment provided by engineer. */ 23 | "A minute ago" = "1分前"; 24 | 25 | /* No comment provided by engineer. */ 26 | "An hour ago" = "1時間前"; 27 | 28 | /* No comment provided by engineer. */ 29 | "Just now" = "たった今"; 30 | 31 | /* No comment provided by engineer. */ 32 | "Last month" = "先月"; 33 | 34 | /* No comment provided by engineer. */ 35 | "Last week" = "先週"; 36 | 37 | /* No comment provided by engineer. */ 38 | "Last year" = "去年"; 39 | 40 | /* No comment provided by engineer. */ 41 | "Yesterday" = "昨日"; 42 | 43 | /* No comment provided by engineer. */ 44 | "1 year ago" = "1年前"; 45 | 46 | /* No comment provided by engineer. */ 47 | "1 month ago" = "1ヶ月前"; 48 | 49 | /* No comment provided by engineer. */ 50 | "1 week ago" = "1週間前"; 51 | 52 | /* No comment provided by engineer. */ 53 | "1 day ago" = "1日前"; 54 | 55 | /* No comment provided by engineer. */ 56 | "This morning" = "午前"; 57 | 58 | /* No comment provided by engineer. */ 59 | "This afternoon" = "午後"; 60 | 61 | /* No comment provided by engineer. */ 62 | "Today" = "今日"; 63 | 64 | /* No comment provided by engineer. */ 65 | "This week" = "今週"; 66 | 67 | /* No comment provided by engineer. */ 68 | "This month" = "今月"; 69 | 70 | /* No comment provided by engineer. */ 71 | "This year" = "今年"; 72 | -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMoment/MomentFromNow.bundle/ko.lproj/NSDateTimeAgo.strings: -------------------------------------------------------------------------------- 1 | /* No comment provided by engineer. */ 2 | "%d days ago" = "%d일전"; 3 | 4 | /* No comment provided by engineer. */ 5 | "%d hours ago" = "%d시간전"; 6 | 7 | /* No comment provided by engineer. */ 8 | "%d minutes ago" = "%d분전"; 9 | 10 | /* No comment provided by engineer. */ 11 | "%d months ago" = "%d개월전"; 12 | 13 | /* No comment provided by engineer. */ 14 | "%d seconds ago" = "%d초전"; 15 | 16 | /* No comment provided by engineer. */ 17 | "%d weeks ago" = "%d주전"; 18 | 19 | /* No comment provided by engineer. */ 20 | "%d years ago" = "%d년전"; 21 | 22 | /* No comment provided by engineer. */ 23 | "A minute ago" = "1분전"; 24 | 25 | /* No comment provided by engineer. */ 26 | "An hour ago" = "1시간전"; 27 | 28 | /* No comment provided by engineer. */ 29 | "Just now" = "방금전"; 30 | 31 | /* No comment provided by engineer. */ 32 | "Last month" = "지난달"; 33 | 34 | /* No comment provided by engineer. */ 35 | "Last week" = "지난주"; 36 | 37 | /* No comment provided by engineer. */ 38 | "Last year" = "지난해"; 39 | 40 | /* No comment provided by engineer. */ 41 | "Yesterday" = "어제"; 42 | 43 | /* No comment provided by engineer. */ 44 | "1 year ago" = "1년전"; 45 | 46 | /* No comment provided by engineer. */ 47 | "1 month ago" = "1개월전"; 48 | 49 | /* No comment provided by engineer. */ 50 | "1 week ago" = "1주전"; 51 | 52 | /* No comment provided by engineer. */ 53 | "1 day ago" = "1일전"; 54 | 55 | /* No comment provided by engineer. */ 56 | "This morning" = "오늘 아침"; 57 | 58 | /* No comment provided by engineer. */ 59 | "This afternoon" = "오늘 오후"; 60 | 61 | /* No comment provided by engineer. */ 62 | "Today" = "오늘"; 63 | 64 | /* No comment provided by engineer. */ 65 | "This week" = "이번주"; 66 | 67 | /* No comment provided by engineer. */ 68 | "This month" = "이번달"; 69 | 70 | /* No comment provided by engineer. */ 71 | "This year" = "올해"; 72 | -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMoment/MomentFromNow.bundle/lv.lproj/NSDateTimeAgo.strings: -------------------------------------------------------------------------------- 1 | /* No comment provided by engineer. */ 2 | "1 year ago" = "Pirms gada"; 3 | 4 | /* No comment provided by engineer. */ 5 | "1 month ago" = "Pirms mēneša"; 6 | 7 | /* No comment provided by engineer. */ 8 | "1 week ago" = "Pirms nedēļas"; 9 | 10 | /* No comment provided by engineer. */ 11 | "1 day ago" = "Pirms dienas"; 12 | 13 | /* No comment provided by engineer. */ 14 | "A minute ago" = "Pirms minūtes"; 15 | 16 | /* No comment provided by engineer. */ 17 | "An hour ago" = "Pirms stundas"; 18 | 19 | /* No comment provided by engineer. */ 20 | "Last month" = "Pagājušajā mēnesī"; 21 | 22 | /* No comment provided by engineer. */ 23 | "Last week" = "Pagājušajā nedēļā"; 24 | 25 | /* No comment provided by engineer. */ 26 | "Last year" = "Pagājušajā gadā"; 27 | 28 | /* No comment provided by engineer. */ 29 | "Just now" = "Tikko"; 30 | 31 | /* No comment provided by engineer. */ 32 | "Today" = "Šodien"; 33 | 34 | /* No comment provided by engineer. */ 35 | "Yesterday" = "Vakar"; 36 | 37 | /* No comment provided by engineer. */ 38 | "This morning" = "Šorīt"; 39 | 40 | /* No comment provided by engineer. */ 41 | "This afternoon" = "Pēcpusdienā"; 42 | 43 | /* No comment provided by engineer. */ 44 | "This week" = "Šonedēļ"; 45 | 46 | /* No comment provided by engineer. */ 47 | "This month" = "Šomēnes"; 48 | 49 | /* No comment provided by engineer. */ 50 | "This year" = "Šogad"; 51 | 52 | /* No comment provided by engineer. */ 53 | "%d seconds ago" = "Pirms %d sekundēm"; 54 | 55 | /* No comment provided by engineer. */ 56 | "%d minutes ago" = "Pirms %d minūtēm"; 57 | 58 | /* No comment provided by engineer. */ 59 | "%d hours ago" = "Pirms %d stundām"; 60 | 61 | /* No comment provided by engineer. */ 62 | "%d days ago" = "Pirms %d dienām"; 63 | 64 | /* No comment provided by engineer. */ 65 | "%d weeks ago" = "Pirms %d nedēļām"; 66 | 67 | /* No comment provided by engineer. */ 68 | "%d months ago" = "Pirms %d mēnešiem"; 69 | 70 | /* No comment provided by engineer. */ 71 | "%d years ago" = "Pirms %d gadiem"; -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMoment/MomentFromNow.bundle/ms.lproj/NSDateTimeAgo.strings: -------------------------------------------------------------------------------- 1 | /* No comment provided by engineer. */ 2 | "%d days ago" = "%d hari yang lalu"; 3 | 4 | /* No comment provided by engineer. */ 5 | "%d hours ago" = "%d jam yang lalu"; 6 | 7 | /* No comment provided by engineer. */ 8 | "%d minutes ago" = "%d minit yang lalu"; 9 | 10 | /* No comment provided by engineer. */ 11 | "%d months ago" = "%d bulan yang lalu"; 12 | 13 | /* No comment provided by engineer. */ 14 | "%d seconds ago" = "%d saat yang lalu"; 15 | 16 | /* No comment provided by engineer. */ 17 | "%d weeks ago" = "%d minggu yang lalu"; 18 | 19 | /* No comment provided by engineer. */ 20 | "%d years ago" = "%d tahun yang lalu"; 21 | 22 | /* No comment provided by engineer. */ 23 | "A minute ago" = "Seminit yang lalu"; 24 | 25 | /* No comment provided by engineer. */ 26 | "An hour ago" = "Sejam yang lalu"; 27 | 28 | /* No comment provided by engineer. */ 29 | "Just now" = "Sebentar tadi"; 30 | 31 | /* No comment provided by engineer. */ 32 | "Last month" = "Sebulan yang lalu"; 33 | 34 | /* No comment provided by engineer. */ 35 | "Last week" = "Seminggu yang lalu"; 36 | 37 | /* No comment provided by engineer. */ 38 | "Last year" = "Setahun yang lalu"; 39 | 40 | /* No comment provided by engineer. */ 41 | "Yesterday" = "Semalam"; 42 | 43 | /* No comment provided by engineer. */ 44 | "1 year ago" = "Setahun yang lalu"; 45 | 46 | /* No comment provided by engineer. */ 47 | "1 month ago" = "Sebulan yang lali"; 48 | 49 | /* No comment provided by engineer. */ 50 | "1 week ago" = "Seminggu yang lalu"; 51 | 52 | /* No comment provided by engineer. */ 53 | "1 day ago" = "Semalam"; 54 | 55 | /* No comment provided by engineer. */ 56 | "This morning" = "Pagi ini"; 57 | 58 | /* No comment provided by engineer. */ 59 | "This afternoon" = "Tengahari ini"; 60 | 61 | /* No comment provided by engineer. */ 62 | "Today" = "Hari ini"; 63 | 64 | /* No comment provided by engineer. */ 65 | "This week" = "Minggu ini"; 66 | 67 | /* No comment provided by engineer. */ 68 | "This month" = "Bulan ini"; 69 | 70 | /* No comment provided by engineer. */ 71 | "This year" = "Tahun ini"; -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMoment/MomentFromNow.bundle/nb.lproj/NSDateTimeAgo.strings: -------------------------------------------------------------------------------- 1 | /* 2 | RULES: 3 | Assume value for (seconds, hours, minutes, days, weeks, months or years) is XXXY, Y is last digit, XY is last two digits; 4 | */ 5 | 6 | /* Y ==0 OR Y > 4 OR XY == 11; */ 7 | "%d days ago" = "%d dager siden"; 8 | 9 | /* If Y != 1 AND Y < 5; */ 10 | "%d _days ago" = "%d dager siden"; 11 | 12 | /* If Y == 1; */ 13 | "%d __days ago" = "%d dag siden"; 14 | 15 | 16 | /* Y ==0 OR Y > 4 OR XY == 11; */ 17 | "%d hours ago" = "%d timer siden"; 18 | 19 | /* If Y != 1 AND Y < 5; */ 20 | "%d _hours ago" = "%d timer siden"; 21 | 22 | /* If Y == 1; */ 23 | "%d __hours ago" = "%d time siden"; 24 | 25 | 26 | /* Y ==0 OR Y > 4 OR XY == 11; */ 27 | "%d minutes ago" = "%d minutter siden"; 28 | 29 | /* If Y != 1 AND Y < 5; */ 30 | "%d _minutes ago" = "%d minutter siden"; 31 | 32 | /* If Y == 1; */ 33 | "%d __minutes ago" = "%d minutt siden"; 34 | 35 | 36 | /* Y ==0 OR Y > 4 OR XY == 11; */ 37 | "%d months ago" = "%d måneder siden"; 38 | 39 | /* If Y != 1 AND Y < 5; */ 40 | "%d _months ago" = "%d måneder siden"; 41 | 42 | /* If Y == 1; */ 43 | "%d __months ago" = "%d måned siden"; 44 | 45 | 46 | /* Y ==0 OR Y > 4 OR XY == 11; */ 47 | "%d seconds ago" = "%d sekunder siden"; 48 | 49 | /* If Y != 1 AND Y < 5; */ 50 | "%d _seconds ago" = "%d sekunder siden"; 51 | 52 | /* If Y == 1; */ 53 | "%d __seconds ago" = "%d sekund siden"; 54 | 55 | 56 | /* Y ==0 OR Y > 4 OR XY == 11; */ 57 | "%d weeks ago" = "%d uker siden"; 58 | 59 | /* If Y != 1 AND Y < 5; */ 60 | "%d _weeks ago" = "%d uker siden"; 61 | 62 | /* If Y == 1; */ 63 | "%d __weeks ago" = "%d uke siden"; 64 | 65 | 66 | /* Y ==0 OR Y > 4 OR XY == 11; */ 67 | "%d years ago" = "%d år siden"; 68 | 69 | /* If Y != 1 AND Y < 5; */ 70 | "%d _years ago" = "%d år siden"; 71 | 72 | /* If Y == 1; */ 73 | "%d __years ago" = "%d år siden"; 74 | 75 | 76 | /* No comment provided by engineer. */ 77 | "A minute ago" = "Et minutt siden"; 78 | 79 | /* No comment provided by engineer. */ 80 | "An hour ago" = "En time siden"; 81 | 82 | /* No comment provided by engineer. */ 83 | "Just now" = "Nå"; 84 | 85 | /* No comment provided by engineer. */ 86 | "Last month" = "For en måned siden"; 87 | 88 | /* No comment provided by engineer. */ 89 | "Last week" = "For en uke siden"; 90 | 91 | /* No comment provided by engineer. */ 92 | "Last year" = "For et år siden"; 93 | 94 | /* No comment provided by engineer. */ 95 | "Yesterday" = "I går"; 96 | 97 | /* No comment provided by engineer. */ 98 | "1 year ago" = "1 år siden"; 99 | 100 | /* No comment provided by engineer. */ 101 | "1 month ago" = "1 måned siden"; 102 | 103 | /* No comment provided by engineer. */ 104 | "1 week ago" = "1 uke siden"; 105 | 106 | /* No comment provided by engineer. */ 107 | "1 day ago" = "1 dag siden"; 108 | 109 | /* No comment provided by engineer. */ 110 | "This morning" = "Denne morgenen"; 111 | 112 | /* No comment provided by engineer. */ 113 | "This afternoon" = "I ettermiddag"; 114 | 115 | /* No comment provided by engineer. */ 116 | "Today" = "I dag"; 117 | 118 | /* No comment provided by engineer. */ 119 | "This week" = "Denne uken"; 120 | 121 | /* No comment provided by engineer. */ 122 | "This month" = "Denne måneden"; 123 | 124 | /* No comment provided by engineer. */ 125 | "This year" = "Dette året"; 126 | -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMoment/MomentFromNow.bundle/nl.lproj/NSDateTimeAgo.strings: -------------------------------------------------------------------------------- 1 | /* No comment provided by engineer. */ 2 | "%d days ago" = "%d dagen geleden"; 3 | 4 | /* No comment provided by engineer. */ 5 | "%d hours ago" = "%d uur geleden"; 6 | 7 | /* No comment provided by engineer. */ 8 | "%d minutes ago" = "%d minuten geleden"; 9 | 10 | /* No comment provided by engineer. */ 11 | "%d months ago" = "%d maanden geleden"; 12 | 13 | /* No comment provided by engineer. */ 14 | "%d seconds ago" = "%d seconden geleden"; 15 | 16 | /* No comment provided by engineer. */ 17 | "%d weeks ago" = "%d weken geleden"; 18 | 19 | /* No comment provided by engineer. */ 20 | "%d years ago" = "%d jaar geleden"; 21 | 22 | /* No comment provided by engineer. */ 23 | "A minute ago" = "Een minuut geleden"; 24 | 25 | /* No comment provided by engineer. */ 26 | "An hour ago" = "Een uur geleden"; 27 | 28 | /* No comment provided by engineer. */ 29 | "Just now" = "Zojuist"; 30 | 31 | /* No comment provided by engineer. */ 32 | "Last month" = "Vorige maand"; 33 | 34 | /* No comment provided by engineer. */ 35 | "Last week" = "Vorige week"; 36 | 37 | /* No comment provided by engineer. */ 38 | "Last year" = "Vorig jaar"; 39 | 40 | /* No comment provided by engineer. */ 41 | "Yesterday" = "Gisteren"; 42 | 43 | /* No comment provided by engineer. */ 44 | "1 year ago" = "1 jaar geleden"; 45 | 46 | /* No comment provided by engineer. */ 47 | "1 month ago" = "1 maand geleden"; 48 | 49 | /* No comment provided by engineer. */ 50 | "1 week ago" = "1 week geleden"; 51 | 52 | /* No comment provided by engineer. */ 53 | "1 day ago" = "1 dag geleden"; 54 | 55 | /* No comment provided by engineer. */ 56 | "This morning" = "Vanmorgen"; 57 | 58 | /* No comment provided by engineer. */ 59 | "This afternoon" = "Vanmiddag"; 60 | 61 | /* No comment provided by engineer. */ 62 | "Today" = "Vandaag"; 63 | 64 | /* No comment provided by engineer. */ 65 | "This week" = "Deze week"; 66 | 67 | /* No comment provided by engineer. */ 68 | "This month" = "Deze maand"; 69 | 70 | /* No comment provided by engineer. */ 71 | "This year" = "Dit jaar"; 72 | -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMoment/MomentFromNow.bundle/pl.lproj/NSDateTimeAgo.strings: -------------------------------------------------------------------------------- 1 | /* No comment provided by engineer. */ 2 | "%d days ago" = "%d dni temu"; 3 | 4 | /* No comment provided by engineer. */ 5 | "%d hours ago" = "%d godzin(y) temu"; 6 | 7 | /* No comment provided by engineer. */ 8 | "%d minutes ago" = "%d minut(y) temu"; 9 | 10 | /* No comment provided by engineer. */ 11 | "%d months ago" = "%d miesice/-y temu"; 12 | 13 | /* No comment provided by engineer. */ 14 | "%d seconds ago" = "%d sekund(y) temu"; 15 | 16 | /* No comment provided by engineer. */ 17 | "%d weeks ago" = "%d tygodni(e) temu"; 18 | 19 | /* No comment provided by engineer. */ 20 | "%d years ago" = "%d lat(a) temu"; 21 | 22 | /* No comment provided by engineer. */ 23 | "A minute ago" = "Minut temu"; 24 | 25 | /* No comment provided by engineer. */ 26 | "An hour ago" = "Godzin temu"; 27 | 28 | /* No comment provided by engineer. */ 29 | "Just now" = "W tej chwili"; 30 | 31 | /* No comment provided by engineer. */ 32 | "Last month" = "W zeszBym miesicu"; 33 | 34 | /* No comment provided by engineer. */ 35 | "Last week" = "W zeszBym tygodniu"; 36 | 37 | /* No comment provided by engineer. */ 38 | "Last year" = "W zeszBym roku"; 39 | 40 | /* No comment provided by engineer. */ 41 | "Yesterday" = "Wczoraj"; 42 | 43 | /* No comment provided by engineer. */ 44 | "1 year ago" = "1 rok temu"; 45 | 46 | /* No comment provided by engineer. */ 47 | "1 month ago" = "1 miesic temu"; 48 | 49 | /* No comment provided by engineer. */ 50 | "1 week ago" = "1 tydzieD temu"; 51 | 52 | /* No comment provided by engineer. */ 53 | "1 day ago" = "1 dzieD temu"; 54 | 55 | /* No comment provided by engineer. */ 56 | "This morning" = "Dzi[ rano"; 57 | 58 | /* No comment provided by engineer. */ 59 | "This afternoon" = "Dzi[ po poBudniu"; 60 | 61 | /* No comment provided by engineer. */ 62 | "Today" = "Dzisiaj"; 63 | 64 | /* No comment provided by engineer. */ 65 | "This week" = "W tym tygodniu"; 66 | 67 | /* No comment provided by engineer. */ 68 | "This month" = "W tym miesicu"; 69 | 70 | /* No comment provided by engineer. */ 71 | "This year" = "W tym roku"; 72 | -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMoment/MomentFromNow.bundle/pt-PT.lproj/NSDateTimeAgo.strings: -------------------------------------------------------------------------------- 1 | /* No comment provided by engineer. */ 2 | "%d days ago" = "%d dias atrás"; 3 | 4 | /* No comment provided by engineer. */ 5 | "%d hours ago" = "%d horas atrás"; 6 | 7 | /* No comment provided by engineer. */ 8 | "%d minutes ago" = "%d minutos atrás"; 9 | 10 | /* No comment provided by engineer. */ 11 | "%d months ago" = "%d meses atrás"; 12 | 13 | /* No comment provided by engineer. */ 14 | "%d seconds ago" = "%d segundos atrás"; 15 | 16 | /* No comment provided by engineer. */ 17 | "%d weeks ago" = "%d semanas atrás"; 18 | 19 | /* No comment provided by engineer. */ 20 | "%d years ago" = "%d anos atrás"; 21 | 22 | /* No comment provided by engineer. */ 23 | "A minute ago" = "Um minute atrás"; 24 | 25 | /* No comment provided by engineer. */ 26 | "An hour ago" = "Uma hora atrás"; 27 | 28 | /* No comment provided by engineer. */ 29 | "Just now" = "Agora mesmo"; 30 | 31 | /* No comment provided by engineer. */ 32 | "Last month" = "Mês passado"; 33 | 34 | /* No comment provided by engineer. */ 35 | "Last week" = "Semana passada"; 36 | 37 | /* No comment provided by engineer. */ 38 | "Last year" = "Ano passado"; 39 | 40 | /* No comment provided by engineer. */ 41 | "Yesterday" = "Ontem"; 42 | 43 | /* No comment provided by engineer. */ 44 | "1 year ago" = "1 ano passado"; 45 | 46 | /* No comment provided by engineer. */ 47 | "1 month ago" = "1 mês atrás"; 48 | 49 | /* No comment provided by engineer. */ 50 | "1 week ago" = "1 semana atrás"; 51 | 52 | /* No comment provided by engineer. */ 53 | "1 day ago" = "1 dia atrás"; 54 | 55 | /* No comment provided by engineer. */ 56 | "This morning" = "Esta manhã"; 57 | 58 | /* No comment provided by engineer. */ 59 | "This afternoon" = "Esta tarde"; 60 | 61 | /* No comment provided by engineer. */ 62 | "Today" = "Hoje"; 63 | 64 | /* No comment provided by engineer. */ 65 | "This week" = "Esta semana"; 66 | 67 | /* No comment provided by engineer. */ 68 | "This month" = "Este mês"; 69 | 70 | /* No comment provided by engineer. */ 71 | "This year" = "Este ano"; 72 | -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMoment/MomentFromNow.bundle/pt.lproj/NSDateTimeAgo.strings: -------------------------------------------------------------------------------- 1 | /* No comment provided by engineer. */ 2 | "%d days ago" = "%d dias atrás"; 3 | 4 | /* No comment provided by engineer. */ 5 | "%d hours ago" = "%d horas atrás"; 6 | 7 | /* No comment provided by engineer. */ 8 | "%d minutes ago" = "%d minutos atrás"; 9 | 10 | /* No comment provided by engineer. */ 11 | "%d months ago" = "%d meses atrás"; 12 | 13 | /* No comment provided by engineer. */ 14 | "%d seconds ago" = "%d segundos atrás"; 15 | 16 | /* No comment provided by engineer. */ 17 | "%d weeks ago" = "%d semanas atrás"; 18 | 19 | /* No comment provided by engineer. */ 20 | "%d years ago" = "%d anos atrás"; 21 | 22 | /* No comment provided by engineer. */ 23 | "A minute ago" = "Há um minuto"; 24 | 25 | /* No comment provided by engineer. */ 26 | "An hour ago" = "Há uma hora"; 27 | 28 | /* No comment provided by engineer. */ 29 | "Just now" = "Agora"; 30 | 31 | /* No comment provided by engineer. */ 32 | "Last month" = "Mês passado"; 33 | 34 | /* No comment provided by engineer. */ 35 | "Last week" = "Semana passada"; 36 | 37 | /* No comment provided by engineer. */ 38 | "Last year" = "Ano passado"; 39 | 40 | /* No comment provided by engineer. */ 41 | "Yesterday" = "Ontem"; 42 | 43 | /* No comment provided by engineer. */ 44 | "1 year ago" = "1 ano atrás"; 45 | 46 | /* No comment provided by engineer. */ 47 | "1 month ago" = "1 mês atrás"; 48 | 49 | /* No comment provided by engineer. */ 50 | "1 week ago" = "1 semana atrás"; 51 | 52 | /* No comment provided by engineer. */ 53 | "1 day ago" = "1 dia atrás"; 54 | 55 | /* No comment provided by engineer. */ 56 | "This morning" = "Esta manhã"; 57 | 58 | /* No comment provided by engineer. */ 59 | "This afternoon" = "Esta tarde"; 60 | 61 | /* No comment provided by engineer. */ 62 | "Today" = "Hoje"; 63 | 64 | /* No comment provided by engineer. */ 65 | "This week" = "Esta semana"; 66 | 67 | /* No comment provided by engineer. */ 68 | "This month" = "Este mês"; 69 | 70 | /* No comment provided by engineer. */ 71 | "This year" = "Este ano"; 72 | -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMoment/MomentFromNow.bundle/ro.lproj/NSDateTimeAgo.strings: -------------------------------------------------------------------------------- 1 | /* No comment provided by engineer. */ 2 | "%d days ago" = "În urmă cu %d zile"; 3 | 4 | /* No comment provided by engineer. */ 5 | "%d hours ago" = "În urmă cu %d ore"; 6 | 7 | /* No comment provided by engineer. */ 8 | "%d minutes ago" = "În urmă cu %d minute"; 9 | 10 | /* No comment provided by engineer. */ 11 | "%d months ago" = "În urmă cu %d luni"; 12 | 13 | /* No comment provided by engineer. */ 14 | "%d seconds ago" = "În urmă cu %d secunde"; 15 | 16 | /* No comment provided by engineer. */ 17 | "%d weeks ago" = "În urmă cu %d săptămâni"; 18 | 19 | /* No comment provided by engineer. */ 20 | "%d years ago" = "În urmă cu %d ani"; 21 | 22 | /* No comment provided by engineer. */ 23 | "A minute ago" = "În urmă cu 1 minut"; 24 | 25 | /* No comment provided by engineer. */ 26 | "An hour ago" = "În urmă cu 1 oră"; 27 | 28 | /* No comment provided by engineer. */ 29 | "Just now" = "Acum câteva momente"; 30 | 31 | /* No comment provided by engineer. */ 32 | "Last month" = "Luna trecută"; 33 | 34 | /* No comment provided by engineer. */ 35 | "Last week" = "Săptămâna trecută"; 36 | 37 | /* No comment provided by engineer. */ 38 | "Last year" = "Anul trecut"; 39 | 40 | /* No comment provided by engineer. */ 41 | "Yesterday" = "Ieri"; 42 | 43 | /* No comment provided by engineer. */ 44 | "1 year ago" = "În urmă cu 1 an"; 45 | 46 | /* No comment provided by engineer. */ 47 | "1 month ago" = "În urmă cu 1 lună"; 48 | 49 | /* No comment provided by engineer. */ 50 | "1 week ago" = "În urmă cu 1 săptămână"; 51 | 52 | /* No comment provided by engineer. */ 53 | "1 day ago" = "În urmă cu 1 zi"; 54 | 55 | /* No comment provided by engineer. */ 56 | "This morning" = "Azi dimineață"; 57 | 58 | /* No comment provided by engineer. */ 59 | "This afternoon" = "În această seară"; 60 | 61 | /* No comment provided by engineer. */ 62 | "Today" = "Astăzi"; 63 | 64 | /* No comment provided by engineer. */ 65 | "This week" = "Săptămâna aceasta"; 66 | 67 | /* No comment provided by engineer. */ 68 | "This month" = "Luna aceasta"; 69 | 70 | /* No comment provided by engineer. */ 71 | "This year" = "Anul acesta"; -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMoment/MomentFromNow.bundle/ru.lproj/NSDateTimeAgo.strings: -------------------------------------------------------------------------------- 1 | /* 2 | RULES: 3 | Assume value for (seconds, hours, minutes, days, weeks, months or years) is XXXY, Y is last digit, XY is last two digits; 4 | */ 5 | 6 | /* Y == 0 OR Y > 4 OR (XY > 10 AND XY < 15); */ 7 | "%d days ago" = "%d дней назад"; 8 | 9 | /* Y > 1 AND Y < 5 AND (XY < 10 OR XY > 20); */ 10 | "%d _days ago" = "%d дня назад"; 11 | 12 | /* Y == 1 AND XY != 11; */ 13 | "%d __days ago" = "%d день назад"; 14 | 15 | 16 | /* Y == 0 OR Y > 4 OR (XY > 10 AND XY < 15); */ 17 | "%d hours ago" = "%d часов назад"; 18 | 19 | /* Y > 1 AND Y < 5 AND (XY < 10 OR XY > 20); */ 20 | "%d _hours ago" = "%d часа назад"; 21 | 22 | /* Y == 1 AND XY != 11; */ 23 | "%d __hours ago" = "%d час назад"; 24 | 25 | 26 | /* Y == 0 OR Y > 4 OR (XY > 10 AND XY < 15); */ 27 | "%d minutes ago" = "%d минут назад"; 28 | 29 | /* Y > 1 AND Y < 5 AND (XY < 10 OR XY > 20); */ 30 | "%d _minutes ago" = "%d минуты назад"; 31 | 32 | /* Y == 1 AND XY != 11; */ 33 | "%d __minutes ago" = "%d минуту назад"; 34 | 35 | 36 | /* Y == 0 OR Y > 4 OR (XY > 10 AND XY < 15); */ 37 | "%d months ago" = "%d месяцев назад"; 38 | 39 | /* Y > 1 AND Y < 5 AND (XY < 10 OR XY > 20); */ 40 | "%d _months ago" = "%d месяца назад"; 41 | 42 | /* Y == 1 AND XY != 11; */ 43 | "%d __months ago" = "%d месяц назад"; 44 | 45 | 46 | /* Y == 0 OR Y > 4 OR (XY > 10 AND XY < 15); */ 47 | "%d seconds ago" = "%d секунд назад"; 48 | 49 | /* Y > 1 AND Y < 5 AND (XY < 10 OR XY > 20); */ 50 | "%d _seconds ago" = "%d секунды назад"; 51 | 52 | /* Y == 1 AND XY != 11; */ 53 | "%d __seconds ago" = "%d секунду назад"; 54 | 55 | 56 | /* Y == 0 OR Y > 4 OR (XY > 10 AND XY < 15); */ 57 | "%d weeks ago" = "%d недель назад"; 58 | 59 | /* Y > 1 AND Y < 5 AND (XY < 10 OR XY > 20); */ 60 | "%d _weeks ago" = "%d недели назад"; 61 | 62 | /* Y == 1 AND XY != 11; */ 63 | "%d __weeks ago" = "%d неделю назад"; 64 | 65 | 66 | /* Y == 0 OR Y > 4 OR (XY > 10 AND XY < 15); */ 67 | "%d years ago" = "%d лет назад"; 68 | 69 | /* Y > 1 AND Y < 5 AND (XY < 10 OR XY > 20); */ 70 | "%d _years ago" = "%d года назад"; 71 | 72 | /* Y == 1 AND XY != 11; */ 73 | "%d __years ago" = "%d год назад"; 74 | 75 | 76 | /* No comment provided by engineer. */ 77 | "A minute ago" = "Минуту назад"; 78 | 79 | /* No comment provided by engineer. */ 80 | "An hour ago" = "Час назад"; 81 | 82 | /* No comment provided by engineer. */ 83 | "Just now" = "Только что"; 84 | 85 | /* No comment provided by engineer. */ 86 | "Last month" = "Месяц назад"; 87 | 88 | /* No comment provided by engineer. */ 89 | "Last week" = "Неделю назад"; 90 | 91 | /* No comment provided by engineer. */ 92 | "Last year" = "Год назад"; 93 | 94 | /* No comment provided by engineer. */ 95 | "Yesterday" = "Вчера"; 96 | 97 | /* No comment provided by engineer. */ 98 | "1 year ago" = "1 год назад"; 99 | 100 | /* No comment provided by engineer. */ 101 | "1 month ago" = "1 месяц назад"; 102 | 103 | /* No comment provided by engineer. */ 104 | "1 week ago" = "1 неделю назад"; 105 | 106 | /* No comment provided by engineer. */ 107 | "1 day ago" = "1 день назад"; 108 | 109 | /* No comment provided by engineer. */ 110 | "This morning" = "Этим утром"; 111 | 112 | /* No comment provided by engineer. */ 113 | "This afternoon" = "Этим днём"; 114 | 115 | /* No comment provided by engineer. */ 116 | "Today" = "Сегодня"; 117 | 118 | /* No comment provided by engineer. */ 119 | "This week" = "На этой неделе"; 120 | 121 | /* No comment provided by engineer. */ 122 | "This month" = "В этом месяце"; 123 | 124 | /* No comment provided by engineer. */ 125 | "This year" = "В этом году"; 126 | -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMoment/MomentFromNow.bundle/sk.lproj/NSDateTimeAgo.strings: -------------------------------------------------------------------------------- 1 | /* No comment provided by engineer. */ 2 | "%d days ago" = "Pred %d dňami"; 3 | 4 | /* No comment provided by engineer. */ 5 | "%d hours ago" = "Pred %d hodinami"; 6 | 7 | /* No comment provided by engineer. */ 8 | "%d minutes ago" = "Pred %d minútami"; 9 | 10 | /* No comment provided by engineer. */ 11 | "%d months ago" = "Pred %d mesiaci"; 12 | 13 | /* No comment provided by engineer. */ 14 | "%d seconds ago" = "Pred %d sekundami"; 15 | 16 | /* No comment provided by engineer. */ 17 | "%d weeks ago" = "Pred %d týždňami"; 18 | 19 | /* No comment provided by engineer. */ 20 | "%d years ago" = "Pred %d rokmi"; 21 | 22 | /* No comment provided by engineer. */ 23 | "A minute ago" = "Pred minútou"; 24 | 25 | /* No comment provided by engineer. */ 26 | "An hour ago" = "Pred hodinou"; 27 | 28 | /* No comment provided by engineer. */ 29 | "Just now" = "Práve teraz"; 30 | 31 | /* No comment provided by engineer. */ 32 | "Last month" = "Minulý mesiac"; 33 | 34 | /* No comment provided by engineer. */ 35 | "Last week" = "Minulý týždeň"; 36 | 37 | /* No comment provided by engineer. */ 38 | "Last year" = "Minulý rok"; 39 | 40 | /* No comment provided by engineer. */ 41 | "Yesterday" = "Včera"; 42 | 43 | /* No comment provided by engineer. */ 44 | "1 year ago" = "Pred rokom"; 45 | 46 | /* No comment provided by engineer. */ 47 | "1 month ago" = "Pred mesiacom"; 48 | 49 | /* No comment provided by engineer. */ 50 | "1 week ago" = "Pred týždňom"; 51 | 52 | /* No comment provided by engineer. */ 53 | "1 day ago" = "Predvčerom"; 54 | 55 | /* No comment provided by engineer. */ 56 | "This morning" = "Dnes dopoludnia"; 57 | 58 | /* No comment provided by engineer. */ 59 | "This afternoon" = "Dnes popoludní"; 60 | 61 | /* No comment provided by engineer. */ 62 | "Today" = "Dnes"; 63 | 64 | /* No comment provided by engineer. */ 65 | "This week" = "Tento týždeň"; 66 | 67 | /* No comment provided by engineer. */ 68 | "This month" = "Tento mesiac"; 69 | 70 | /* No comment provided by engineer. */ 71 | "This year" = "Tento rok"; 72 | -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMoment/MomentFromNow.bundle/sq.lproj/NSDateTimeAgo.strings: -------------------------------------------------------------------------------- 1 | /* No comment provided by engineer. */ 2 | "%d days ago" = "%d ditë më parë"; 3 | 4 | /* No comment provided by engineer. */ 5 | "%d hours ago" = "%d orë më parë"; 6 | 7 | /* No comment provided by engineer. */ 8 | "%d minutes ago" = "%d minuta më parë"; 9 | 10 | /* No comment provided by engineer. */ 11 | "%d months ago" = "%d muaj më parë"; 12 | 13 | /* No comment provided by engineer. */ 14 | "%d seconds ago" = "%d sekonda më parë"; 15 | 16 | /* No comment provided by engineer. */ 17 | "%d weeks ago" = "%d javë më parë"; 18 | 19 | /* No comment provided by engineer. */ 20 | "%d years ago" = "%d vite më parë"; 21 | 22 | /* No comment provided by engineer. */ 23 | "A minute ago" = "Një minutë më parë"; 24 | 25 | /* No comment provided by engineer. */ 26 | "An hour ago" = "Një orë më parë"; 27 | 28 | /* No comment provided by engineer. */ 29 | "Just now" = "Tani"; 30 | 31 | /* No comment provided by engineer. */ 32 | "Last month" = "Muajin e kaluar"; 33 | 34 | /* No comment provided by engineer. */ 35 | "Last week" = "Javën e kaluar"; 36 | 37 | /* No comment provided by engineer. */ 38 | "Last year" = "Vitin e kaluar"; 39 | 40 | /* No comment provided by engineer. */ 41 | "Yesterday" = "Dje"; 42 | 43 | /* No comment provided by engineer. */ 44 | "1 year ago" = "1 vit më parë"; 45 | 46 | /* No comment provided by engineer. */ 47 | "1 month ago" = "1 muaj më parë"; 48 | 49 | /* No comment provided by engineer. */ 50 | "1 week ago" = "1 javë më parë"; 51 | 52 | /* No comment provided by engineer. */ 53 | "1 day ago" = "1 ditë më parë"; 54 | 55 | /* No comment provided by engineer. */ 56 | "This morning" = "Këtë mëngjes"; 57 | 58 | /* No comment provided by engineer. */ 59 | "This afternoon" = "Këtë pasdite"; 60 | 61 | /* No comment provided by engineer. */ 62 | "Today" = "Sot"; 63 | 64 | /* No comment provided by engineer. */ 65 | "This week" = "Këtë javë"; 66 | 67 | /* No comment provided by engineer. */ 68 | "This month" = "Këtë muaj"; 69 | 70 | /* No comment provided by engineer. */ 71 | "This year" = "Këtë vit"; -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMoment/MomentFromNow.bundle/sv.lproj/NSDateTimeAgo.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/armstrongnate/CalendarView/f95c89a83f6a81bcafa6cf1e8eaf595161d33946/CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMoment/MomentFromNow.bundle/sv.lproj/NSDateTimeAgo.strings -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMoment/MomentFromNow.bundle/th.lproj/NSDateTimeAgo.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/armstrongnate/CalendarView/f95c89a83f6a81bcafa6cf1e8eaf595161d33946/CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMoment/MomentFromNow.bundle/th.lproj/NSDateTimeAgo.strings -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMoment/MomentFromNow.bundle/tr.lproj/NSDateTimeAgo.strings: -------------------------------------------------------------------------------- 1 | /* No comment provided by engineer. */ 2 | "%d days ago" = "%d gün önce"; 3 | 4 | /* No comment provided by engineer. */ 5 | "%d hours ago" = "%d saat önce"; 6 | 7 | /* No comment provided by engineer. */ 8 | "%d minutes ago" = "%d dakika önce"; 9 | 10 | /* No comment provided by engineer. */ 11 | "%d months ago" = "%d ay önce"; 12 | 13 | /* No comment provided by engineer. */ 14 | "%d seconds ago" = "%d saniye önce"; 15 | 16 | /* No comment provided by engineer. */ 17 | "%d weeks ago" = "%d hafta önce"; 18 | 19 | /* No comment provided by engineer. */ 20 | "%d years ago" = "%d yıl önce"; 21 | 22 | /* No comment provided by engineer. */ 23 | "A minute ago" = "Bir dakika önce"; 24 | 25 | /* No comment provided by engineer. */ 26 | "An hour ago" = "Bir saat önce"; 27 | 28 | /* No comment provided by engineer. */ 29 | "Just now" = "Şimdi"; 30 | 31 | /* No comment provided by engineer. */ 32 | "Last month" = "Geçen ay"; 33 | 34 | /* No comment provided by engineer. */ 35 | "Last week" = "Geçen hafta"; 36 | 37 | /* No comment provided by engineer. */ 38 | "Last year" = "Geçen yıl"; 39 | 40 | /* No comment provided by engineer. */ 41 | "Yesterday" = "Dün"; 42 | 43 | /* No comment provided by engineer. */ 44 | "1 year ago" = "1 yıl önce"; 45 | 46 | /* No comment provided by engineer. */ 47 | "1 month ago" = "1 ay önce"; 48 | 49 | /* No comment provided by engineer. */ 50 | "1 week ago" = "1 hafta önce"; 51 | 52 | /* No comment provided by engineer. */ 53 | "1 day ago" = "1 gün önce"; 54 | 55 | /* No comment provided by engineer. */ 56 | "This morning" = "Bu sabah"; 57 | 58 | /* No comment provided by engineer. */ 59 | "This afternoon" = "Öğleden sonra"; 60 | 61 | /* No comment provided by engineer. */ 62 | "Today" = "Bugün"; 63 | 64 | /* No comment provided by engineer. */ 65 | "This week" = "Bu hafta"; 66 | 67 | /* No comment provided by engineer. */ 68 | "This month" = "Bu ay"; 69 | 70 | /* No comment provided by engineer. */ 71 | "This year" = "Bu yıl"; 72 | -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMoment/MomentFromNow.bundle/uk.lproj/NSDateTimeAgo.strings: -------------------------------------------------------------------------------- 1 | /* 2 | RULES: 3 | Assume value for (seconds, hours, minutes, days, weeks, months or years) is XXXY, Y is last digit, XY is last two digits; 4 | */ 5 | 6 | /* Y == 0 OR Y > 4 OR (XY > 10 AND XY < 15); */ 7 | "%d days ago" = "%d днів тому"; 8 | 9 | /* Y > 1 AND Y < 5 AND (XY < 10 OR XY > 20); */ 10 | "%d _days ago" = "%d дня тому"; 11 | 12 | /* Y == 1 AND XY != 11; */ 13 | "%d __days ago" = "%d день тому"; 14 | 15 | 16 | /* Y == 0 OR Y > 4 OR (XY > 10 AND XY < 15); */ 17 | "%d hours ago" = "%d годин тому"; 18 | 19 | /* Y > 1 AND Y < 5 AND (XY < 10 OR XY > 20); */ 20 | "%d _hours ago" = "%d години тому"; 21 | 22 | /* Y == 1 AND XY != 11; */ 23 | "%d __hours ago" = "%d годину тому"; 24 | 25 | 26 | /* Y == 0 OR Y > 4 OR (XY > 10 AND XY < 15); */ 27 | "%d minutes ago" = "%d хвилин тому"; 28 | 29 | /* Y > 1 AND Y < 5 AND (XY < 10 OR XY > 20); */ 30 | "%d _minutes ago" = "%d хвилини тому"; 31 | 32 | /* Y == 1 AND XY != 11; */ 33 | "%d __minutes ago" = "%d хвилину тому"; 34 | 35 | 36 | /* Y == 0 OR Y > 4 OR (XY > 10 AND XY < 15); */ 37 | "%d months ago" = "%d місяців тому"; 38 | 39 | /* Y > 1 AND Y < 5 AND (XY < 10 OR XY > 20); */ 40 | "%d _months ago" = "%d місяця тому"; 41 | 42 | /* Y == 1 AND XY != 11; */ 43 | "%d __months ago" = "%d місяць тому"; 44 | 45 | 46 | /* Y == 0 OR Y > 4 OR (XY > 10 AND XY < 15); */ 47 | "%d seconds ago" = "%d секунд тому"; 48 | 49 | /* Y > 1 AND Y < 5 AND (XY < 10 OR XY > 20); */ 50 | "%d _seconds ago" = "%d секунди тому"; 51 | 52 | /* Y == 1 AND XY != 11; */ 53 | "%d __seconds ago" = "%d секунду тому"; 54 | 55 | 56 | /* Y == 0 OR Y > 4 OR (XY > 10 AND XY < 15); */ 57 | "%d weeks ago" = "%d тижднів тому"; 58 | 59 | /* Y > 1 AND Y < 5 AND (XY < 10 OR XY > 20); */ 60 | "%d _weeks ago" = "%d тиждні тому"; 61 | 62 | /* Y == 1 AND XY != 11; */ 63 | "%d __weeks ago" = "%d тиждень тому"; 64 | 65 | 66 | /* Y == 0 OR Y > 4 OR (XY > 10 AND XY < 15); */ 67 | "%d years ago" = "%d років тому"; 68 | 69 | /* Y > 1 AND Y < 5 AND (XY < 10 OR XY > 20); */ 70 | "%d _years ago" = "%d роки тому"; 71 | 72 | /* Y == 1 AND XY != 11; */ 73 | "%d __years ago" = "%d рік тому"; 74 | 75 | 76 | /* No comment provided by engineer. */ 77 | "A minute ago" = "Хвилину тому"; 78 | 79 | /* No comment provided by engineer. */ 80 | "An hour ago" = "Годину тому"; 81 | 82 | /* No comment provided by engineer. */ 83 | "Just now" = "Щойно"; 84 | 85 | /* No comment provided by engineer. */ 86 | "Last month" = "Місяць тому"; 87 | 88 | /* No comment provided by engineer. */ 89 | "Last week" = "Тиждень тому"; 90 | 91 | /* No comment provided by engineer. */ 92 | "Last year" = "Рік тому"; 93 | 94 | /* No comment provided by engineer. */ 95 | "Yesterday" = "Вчора"; 96 | 97 | /* No comment provided by engineer. */ 98 | "1 year ago" = "1 рік тому"; 99 | 100 | /* No comment provided by engineer. */ 101 | "1 month ago" = "1 місяць тому"; 102 | 103 | /* No comment provided by engineer. */ 104 | "1 week ago" = "1 тиждень тому"; 105 | 106 | /* No comment provided by engineer. */ 107 | "1 day ago" = "1 день тому"; 108 | 109 | /* No comment provided by engineer. */ 110 | "This morning" = "Цього ранку"; 111 | 112 | /* No comment provided by engineer. */ 113 | "This afternoon" = "Сьогодні вдень"; 114 | 115 | /* No comment provided by engineer. */ 116 | "Today" = "Сьогодні"; 117 | 118 | /* No comment provided by engineer. */ 119 | "This week" = "Цього тиждня"; 120 | 121 | /* No comment provided by engineer. */ 122 | "This month" = "Цього місяця"; 123 | 124 | /* No comment provided by engineer. */ 125 | "This year" = "Цього року"; 126 | -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMoment/MomentFromNow.bundle/vi.lproj/NSDateTimeAgo.strings: -------------------------------------------------------------------------------- 1 | /* No comment provided by engineer. */ 2 | "%d days ago" = "%d ngày trước"; 3 | 4 | /* No comment provided by engineer. */ 5 | "%d hours ago" = "%d giờ trước"; 6 | 7 | /* No comment provided by engineer. */ 8 | "%d minutes ago" = "%d phút trước"; 9 | 10 | /* No comment provided by engineer. */ 11 | "%d months ago" = "%d tháng trước"; 12 | 13 | /* No comment provided by engineer. */ 14 | "%d seconds ago" = "%d giây trước"; 15 | 16 | /* No comment provided by engineer. */ 17 | "%d weeks ago" = "%d tuần trước"; 18 | 19 | /* No comment provided by engineer. */ 20 | "%d years ago" = "%d năm trước"; 21 | 22 | /* No comment provided by engineer. */ 23 | "A minute ago" = "Một phút trước"; 24 | 25 | /* No comment provided by engineer. */ 26 | "An hour ago" = "Một giờ trước"; 27 | 28 | /* No comment provided by engineer. */ 29 | "Just now" = "Vừa mới đây"; 30 | 31 | /* No comment provided by engineer. */ 32 | "Last month" = "Tháng trước"; 33 | 34 | /* No comment provided by engineer. */ 35 | "Last week" = "Tuần trước"; 36 | 37 | /* No comment provided by engineer. */ 38 | "Last year" = "Năm vừa rồi"; 39 | 40 | /* No comment provided by engineer. */ 41 | "Yesterday" = "Hôm qua"; 42 | 43 | /* No comment provided by engineer. */ 44 | "1 year ago" = "1 năm trước"; 45 | 46 | /* No comment provided by engineer. */ 47 | "1 month ago" = "1 tháng trước"; 48 | 49 | /* No comment provided by engineer. */ 50 | "1 week ago" = "1 tuần trước"; 51 | 52 | /* No comment provided by engineer. */ 53 | "1 day ago" = "1 ngày trước"; 54 | 55 | /* No comment provided by engineer. */ 56 | "This morning" = "Sáng nay"; 57 | 58 | /* No comment provided by engineer. */ 59 | "This afternoon" = "Trưa nay"; 60 | 61 | /* No comment provided by engineer. */ 62 | "Today" = "Hôm nay"; 63 | 64 | /* No comment provided by engineer. */ 65 | "This week" = "Tuần này"; 66 | 67 | /* No comment provided by engineer. */ 68 | "This month" = "Tháng này"; 69 | 70 | /* No comment provided by engineer. */ 71 | "This year" = "Năm nay"; 72 | -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMoment/MomentFromNow.bundle/zh-Hans.lproj/NSDateTimeAgo.strings: -------------------------------------------------------------------------------- 1 | /* No comment provided by engineer. */ 2 | "%d days ago" = "%d天前"; 3 | 4 | /* No comment provided by engineer. */ 5 | "%d hours ago" = "%d小时前"; 6 | 7 | /* No comment provided by engineer. */ 8 | "%d minutes ago" = "%d分钟前"; 9 | 10 | /* No comment provided by engineer. */ 11 | "%d months ago" = "%d个月前"; 12 | 13 | /* No comment provided by engineer. */ 14 | "%d seconds ago" = "%d秒钟前"; 15 | 16 | /* No comment provided by engineer. */ 17 | "%d weeks ago" = "%d星期前"; 18 | 19 | /* No comment provided by engineer. */ 20 | "%d years ago" = "%d年前"; 21 | 22 | /* No comment provided by engineer. */ 23 | "A minute ago" = "1分钟前"; 24 | 25 | /* No comment provided by engineer. */ 26 | "An hour ago" = "1小时前"; 27 | 28 | /* No comment provided by engineer. */ 29 | "Just now" = "刚刚"; 30 | 31 | /* No comment provided by engineer. */ 32 | "Last month" = "上个月"; 33 | 34 | /* No comment provided by engineer. */ 35 | "Last week" = "上星期"; 36 | 37 | /* No comment provided by engineer. */ 38 | "Last year" = "去年"; 39 | 40 | /* No comment provided by engineer. */ 41 | "Yesterday" = "昨天"; 42 | 43 | /* You can add a space between the number and the characters. */ 44 | "1 year ago" = "1年前"; 45 | 46 | /* You can add a space between the number and the characters. */ 47 | "1 month ago" = "1个月前"; 48 | 49 | /* You can add a space between the number and the characters. */ 50 | "1 week ago" = "1星期前"; 51 | 52 | /* You can add a space between the number and the characters. */ 53 | "1 day ago" = "1天前"; 54 | 55 | /* No comment provided by engineer. */ 56 | "This morning" = "今天上午"; 57 | 58 | /* No comment provided by engineer. */ 59 | "This afternoon" = "今天下午"; 60 | 61 | /* No comment provided by engineer. */ 62 | "Today" = "今天"; 63 | 64 | /* No comment provided by engineer. */ 65 | "This week" = "本周"; 66 | 67 | /* No comment provided by engineer. */ 68 | "This month" = "本月"; 69 | 70 | /* No comment provided by engineer. */ 71 | "This year" = "今年"; 72 | -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMoment/MomentFromNow.bundle/zh-Hant.lproj/NSDateTimeAgo.strings: -------------------------------------------------------------------------------- 1 | /* No comment provided by engineer. */ 2 | "%d days ago" = "%d天前"; 3 | 4 | /* No comment provided by engineer. */ 5 | "%d hours ago" = "%d小時前"; 6 | 7 | /* No comment provided by engineer. */ 8 | "%d minutes ago" = "%d分鐘前"; 9 | 10 | /* No comment provided by engineer. */ 11 | "%d months ago" = "%d個月前"; 12 | 13 | /* No comment provided by engineer. */ 14 | "%d seconds ago" = "%d秒鐘前"; 15 | 16 | /* No comment provided by engineer. */ 17 | "%d weeks ago" = "%d星期前"; 18 | 19 | /* No comment provided by engineer. */ 20 | "%d years ago" = "%d年前"; 21 | 22 | /* No comment provided by engineer. */ 23 | "A minute ago" = "1分鐘前"; 24 | 25 | /* No comment provided by engineer. */ 26 | "An hour ago" = "1小時前"; 27 | 28 | /* No comment provided by engineer. */ 29 | "Just now" = "剛剛"; 30 | 31 | /* No comment provided by engineer. */ 32 | "Last month" = "上個月"; 33 | 34 | /* No comment provided by engineer. */ 35 | "Last week" = "上星期"; 36 | 37 | /* No comment provided by engineer. */ 38 | "Last year" = "去年"; 39 | 40 | /* No comment provided by engineer. */ 41 | "Yesterday" = "昨天"; 42 | 43 | /* No comment provided by engineer. */ 44 | "1 year ago" = "1年前"; 45 | 46 | /* No comment provided by engineer. */ 47 | "1 month ago" = "1個月前"; 48 | 49 | /* No comment provided by engineer. */ 50 | "1 week ago" = "1星期前"; 51 | 52 | /* No comment provided by engineer. */ 53 | "1 day ago" = "1天前"; 54 | 55 | /* No comment provided by engineer. */ 56 | "This morning" = "今天上午"; 57 | 58 | /* No comment provided by engineer. */ 59 | "This afternoon" = "今天下午"; 60 | 61 | /* No comment provided by engineer. */ 62 | "Today" = "今天"; 63 | 64 | /* No comment provided by engineer. */ 65 | "This week" = "本周"; 66 | 67 | /* No comment provided by engineer. */ 68 | "This month" = "本月"; 69 | 70 | /* No comment provided by engineer. */ 71 | "This year" = "今年"; 72 | -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMoment/Operators.swift: -------------------------------------------------------------------------------- 1 | // 2 | // Operators.swift 3 | // SwiftMoment 4 | // 5 | // Created by Adrian on 19/01/15. 6 | // Copyright (c) 2015 Adrian Kosmaczewski. All rights reserved. 7 | // 8 | 9 | public func == (lhs: Moment, rhs: Moment) -> Bool { 10 | return lhs.isEqualTo(rhs) 11 | } 12 | 13 | public func != (lhs: Moment, rhs: Moment) -> Bool { 14 | return !lhs.isEqualTo(rhs) 15 | } 16 | 17 | public func ~= (lhs: Moment, rhs: Moment) -> Bool { 18 | return lhs.isCloseTo(rhs) 19 | } 20 | 21 | public func - (lhs: Moment, rhs: Moment) -> Duration { 22 | return lhs.intervalSince(rhs) 23 | } 24 | 25 | public func > (lhs: Moment, rhs: Moment) -> Bool { 26 | return lhs.intervalSince(rhs).interval > 0 27 | } 28 | 29 | public func < (lhs: Moment, rhs: Moment) -> Bool { 30 | return lhs.intervalSince(rhs).interval < 0 31 | } 32 | 33 | public func >= (lhs: Moment, rhs: Moment) -> Bool { 34 | return lhs.intervalSince(rhs).interval >= 0 35 | } 36 | 37 | public func <= (lhs: Moment, rhs: Moment) -> Bool { 38 | return lhs.intervalSince(rhs).interval <= 0 39 | } 40 | 41 | public func + (lhs: Moment, rhs: Duration) -> Moment { 42 | return lhs.add(rhs) 43 | } 44 | 45 | public func + (lhs: Duration, rhs: Moment) -> Moment { 46 | return rhs.add(lhs) 47 | } 48 | 49 | public func - (lhs: Moment, rhs: Duration) -> Moment { 50 | return lhs.subtract(rhs) 51 | } 52 | 53 | public func - (lhs: Duration, rhs: Moment) -> Moment { 54 | return rhs.subtract(lhs) 55 | } 56 | 57 | public func == (lhs: Duration, rhs: Duration) -> Bool { 58 | return lhs.isEqualTo(rhs) 59 | } 60 | 61 | public func + (lhs: Duration, rhs: Duration) -> Duration { 62 | return lhs.add(rhs) 63 | } 64 | 65 | public func - (lhs: Duration, rhs: Duration) -> Duration { 66 | return lhs.subtract(rhs) 67 | } 68 | -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMoment/SwiftMoment.h: -------------------------------------------------------------------------------- 1 | // 2 | // SwiftMoment.h 3 | // SwiftMoment 4 | // 5 | // Created by Adrian on 19/01/15. 6 | // Copyright (c) 2015 Adrian Kosmaczewski. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | //! Project version number for SwiftMoment. 12 | FOUNDATION_EXPORT double SwiftMomentVersionNumber; 13 | 14 | //! Project version string for SwiftMoment. 15 | FOUNDATION_EXPORT const unsigned char SwiftMomentVersionString[]; 16 | 17 | // In this header, you should import all the public headers of your framework using statements like #import 18 | 19 | 20 | -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMoment/TimeUnit.swift: -------------------------------------------------------------------------------- 1 | // 2 | // TimeUnit.swift 3 | // SwiftMoment 4 | // 5 | // Created by Adrian on 19/01/15. 6 | // Copyright (c) 2015 Adrian Kosmaczewski. All rights reserved. 7 | // 8 | 9 | public enum TimeUnit: String { 10 | case Years = "y" 11 | case Quarters = "Q" 12 | case Months = "M" 13 | case Weeks = "w" 14 | case Days = "d" 15 | case Hours = "H" 16 | case Minutes = "m" 17 | case Seconds = "s" 18 | } 19 | -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMomentTests/DurationTests.swift: -------------------------------------------------------------------------------- 1 | // 2 | // DurationTests.swift 3 | // SwiftMoment 4 | // 5 | // Created by Adrian on 19/01/15. 6 | // Copyright (c) 2015 Adrian Kosmaczewski. All rights reserved. 7 | // 8 | 9 | import Foundation 10 | import XCTest 11 | import SwiftMoment 12 | 13 | class DurationTests: XCTestCase { 14 | 15 | override func setUp() { 16 | super.setUp() 17 | } 18 | 19 | override func tearDown() { 20 | super.tearDown() 21 | } 22 | 23 | func testCanCreateDurationsFromIntegers() { 24 | let duration = Duration(value: 10000000) 25 | let durationString = "The Duration instance wraps an NSTimeInterval in seconds" 26 | XCTAssertEqual(duration.seconds, 10000000, durationString) 27 | } 28 | 29 | func testCanCreateDurationsFromDoubles() { 30 | let duration = Duration(value: 10000000.1000) 31 | let durationString = "The Duration instance wraps an NSTimeInterval in seconds" 32 | XCTAssertEqual(duration.seconds, 10000000.1000, durationString) 33 | } 34 | 35 | func testCanGenerateMomentAgo() { 36 | let date = 2.months.ago() 37 | XCTAssert(date ~= (moment() - 2.months), "'ago()' returns a moment in the past") 38 | } 39 | 40 | func testSinceReturnsDuration() { 41 | let date = 2.months.ago() + 3.hours + 5.minutes 42 | let duration = since(date) 43 | let seconds = Int(duration.seconds) 44 | XCTAssertEqual(seconds, 5172900, "That date happened 5172900 seconds ago") 45 | } 46 | 47 | func testCanAddAndSubstractDurations() { 48 | let birthday = moment("09/04/1973")! 49 | let duration = Duration(value: 107567580) 50 | let subtracted = birthday - (3.years + 5.months - 7.minutes) 51 | let subtracted2 = birthday - duration 52 | XCTAssertEqual(subtracted, subtracted2, "Both operations yield the same result") 53 | } 54 | 55 | func testDurationDescription() { 56 | let duration = 4.months + 53.days + 6.hours + 4.minutes 57 | let str = duration.description 58 | let durationString = "The description of a duration provides quite a bit of info" 59 | XCTAssertEqual(str, "5m 3w 1d 6:04:00", durationString) 60 | } 61 | } 62 | -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMomentTests/ExtensionsTests.swift: -------------------------------------------------------------------------------- 1 | // 2 | // ExtensionsTests.swift 3 | // SwiftMoment 4 | // 5 | // Created by akihiro0228 on 2016/01/04. 6 | // Copyright (c) 2016 Adrian Kosmaczewski. All rights reserved. 7 | // 8 | 9 | import Foundation 10 | import XCTest 11 | import SwiftMoment 12 | 13 | class ExtensionsTests: XCTestCase { 14 | 15 | override func setUp() { 16 | super.setUp() 17 | } 18 | 19 | override func tearDown() { 20 | super.tearDown() 21 | } 22 | 23 | func testCanReturnSecondsDuration() { 24 | XCTAssertEqual(1.seconds, Duration(value: 1 * 1), 25 | "The Duration instance by one seconds is returned") 26 | XCTAssertEqual(2.seconds, Duration(value: 1 * 2), 27 | "The Duration instance by two seconds is returned") 28 | XCTAssertEqual(3.seconds, Duration(value: 1 * 3), 29 | "The Duration instance by three seconds is returned") 30 | } 31 | 32 | func testCanReturnMinutesDuration() { 33 | XCTAssertEqual(1.minutes, Duration(value: 60 * 1), 34 | "The Duration instance by one minutes is returned") 35 | XCTAssertEqual(2.minutes, Duration(value: 60 * 2), 36 | "The Duration instance by two minutes is returned") 37 | XCTAssertEqual(3.minutes, Duration(value: 60 * 3), 38 | "The Duration instance by three minutes is returned") 39 | } 40 | 41 | func testCanReturnHoursDuration() { 42 | XCTAssertEqual(1.hours, Duration(value: 3600 * 1), 43 | "The Duration instance by one hours is returned") 44 | XCTAssertEqual(2.hours, Duration(value: 3600 * 2), 45 | "The Duration instance by two hours is returned") 46 | XCTAssertEqual(3.hours, Duration(value: 3600 * 3), 47 | "The Duration instance by three hours is returned") 48 | } 49 | 50 | func testCanReturnDaysDuration() { 51 | XCTAssertEqual(1.days, Duration(value: 86400 * 1), 52 | "The Duration instance by one days is returned") 53 | XCTAssertEqual(2.days, Duration(value: 86400 * 2), 54 | "The Duration instance by two days is returned") 55 | XCTAssertEqual(3.days, Duration(value: 86400 * 3), 56 | "The Duration instance by three days is returned") 57 | } 58 | 59 | func testCanReturnMonthsDuration() { 60 | XCTAssertEqual(1.months, Duration(value: 2592000 * 1), 61 | "The Duration instance by one months is returned") 62 | XCTAssertEqual(2.months, Duration(value: 2592000 * 2), 63 | "The Duration instance by two months is returned") 64 | XCTAssertEqual(3.months, Duration(value: 2592000 * 3), 65 | "The Duration instance by three months is returned") 66 | } 67 | 68 | func testCanReturnQuartersDuration() { 69 | XCTAssertEqual(1.quarters, Duration(value: 7776000 * 1), 70 | "The Duration instance by one quarters is returned") 71 | XCTAssertEqual(2.quarters, Duration(value: 7776000 * 2), 72 | "The Duration instance by two quarters is returned") 73 | XCTAssertEqual(3.quarters, Duration(value: 7776000 * 3), 74 | "The Duration instance by three quarters is returned") 75 | } 76 | 77 | func testCanReturnYearsDuration() { 78 | XCTAssertEqual(1.years, Duration(value: 31536000 * 1), 79 | "The Duration instance by one years is returned") 80 | XCTAssertEqual(2.years, Duration(value: 31536000 * 2), 81 | "The Duration instance by two years is returned") 82 | XCTAssertEqual(3.years, Duration(value: 31536000 * 3), 83 | "The Duration instance by three years is returned") 84 | } 85 | } 86 | -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMomentTests/FromNowTests.swift: -------------------------------------------------------------------------------- 1 | // 2 | // FromNowTests.swift 3 | // SwiftMoment 4 | // 5 | // Created by Madhava Jay on 07/06/2016. 6 | // Copyright © 2016 Adrian Kosmaczewski. All rights reserved. 7 | // 8 | 9 | import Foundation 10 | import XCTest 11 | import SwiftMoment 12 | 13 | class FromNowTests: XCTestCase { 14 | 15 | override func setUp() { 16 | super.setUp() 17 | } 18 | 19 | override func tearDown() { 20 | super.tearDown() 21 | } 22 | 23 | func testFromNowEnglish() { 24 | let now = Date() 25 | let nowMoment = getLocalEnglishMoment(now) 26 | XCTAssertEqual(nowMoment.fromNow(), "Just now") 27 | 28 | let nowSeconds = now.addingTimeInterval(TimeInterval(-50)) 29 | let secondsMoment = getLocalEnglishMoment(nowSeconds) 30 | XCTAssertEqual(secondsMoment.fromNow(), "50 seconds ago") 31 | 32 | let nowSeconds2 = now.addingTimeInterval(TimeInterval(-90)) 33 | let secondsMoment2 = getLocalEnglishMoment(nowSeconds2) 34 | XCTAssertEqual(secondsMoment2.fromNow(), "A minute ago") 35 | 36 | let nowMinutes = now.addingTimeInterval(TimeInterval(-500)) 37 | let minutesMoment = getLocalEnglishMoment(nowMinutes) 38 | XCTAssertEqual(minutesMoment.fromNow(), "8 minutes ago") 39 | 40 | let hourSecs: Double = 3600 41 | 42 | let nowMinutes2 = now.addingTimeInterval(TimeInterval(-(hourSecs * 1.5))) 43 | let minutesMoment2 = getLocalEnglishMoment(nowMinutes2) 44 | XCTAssertEqual(minutesMoment2.fromNow(), "An hour ago") 45 | 46 | let nowMinutes3 = now.addingTimeInterval(TimeInterval(-(hourSecs * 6))) 47 | let minutesMoment3 = getLocalEnglishMoment(nowMinutes3) 48 | XCTAssertEqual(minutesMoment3.fromNow(), "6 hours ago") 49 | 50 | let nowHours = now.addingTimeInterval(TimeInterval(-(hourSecs * 25))) 51 | let hoursMoment = getLocalEnglishMoment(nowHours) 52 | XCTAssertEqual(hoursMoment.fromNow(), "Yesterday") 53 | 54 | let nowHours2 = now.addingTimeInterval(TimeInterval(-(hourSecs * 48))) 55 | let hoursMoment2 = getLocalEnglishMoment(nowHours2) 56 | XCTAssertEqual(hoursMoment2.fromNow(), "2 days ago") 57 | 58 | let daySecs = hourSecs * 24 59 | 60 | let nowDays = now.addingTimeInterval(TimeInterval(-(daySecs * 7))) 61 | let daysMoment = getLocalEnglishMoment(nowDays) 62 | XCTAssertEqual(daysMoment.fromNow(), "Last week") 63 | 64 | let nowWeeks = now.addingTimeInterval(TimeInterval(-(daySecs * 14))) 65 | let weeksMoment = getLocalEnglishMoment(nowWeeks) 66 | XCTAssertEqual(weeksMoment.fromNow(), "2 weeks ago") 67 | 68 | let nowWeeks2 = now.addingTimeInterval(TimeInterval(-(daySecs * 50))) 69 | let weeksMoment2 = getLocalEnglishMoment(nowWeeks2) 70 | XCTAssertEqual(weeksMoment2.fromNow(), "Last month") 71 | 72 | let weekSecs = daySecs * 7 73 | 74 | let nowMonths = now.addingTimeInterval(TimeInterval(-(weekSecs * 10))) 75 | let monthsMoment = getLocalEnglishMoment(nowMonths) 76 | XCTAssertEqual(monthsMoment.fromNow(), "2 months ago") 77 | 78 | let nowMonths2 = now.addingTimeInterval(TimeInterval(-(weekSecs * 60))) 79 | let monthsMoment2 = getLocalEnglishMoment(nowMonths2) 80 | XCTAssertEqual(monthsMoment2.fromNow(), "Last year") 81 | 82 | let nowMonths3 = now.addingTimeInterval(TimeInterval(-(weekSecs * 160))) 83 | let monthsMoment3 = getLocalEnglishMoment(nowMonths3) 84 | XCTAssertEqual(monthsMoment3.fromNow(), "3 years ago") 85 | } 86 | 87 | func getLocalEnglishMoment(_ date: Date) -> Moment { 88 | return moment(date, timeZone: TimeZone.current, 89 | locale: Locale(identifier: "en")) 90 | } 91 | 92 | func testFromNowHebrew() { 93 | let mom = moment(Date(), timeZone: TimeZone.current, 94 | locale: Locale(identifier: "he")) 95 | XCTAssertEqual(mom.fromNow(), "ממש עכשיו") 96 | } 97 | } 98 | -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMomentTests/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 | BNDL 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | 1 23 | 24 | 25 | -------------------------------------------------------------------------------- /CalendarView/Carthage/Checkouts/SwiftMoment/SwiftMoment/SwiftMomentTests/InfoOSX.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 | BNDL 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | 1 23 | 24 | 25 | -------------------------------------------------------------------------------- /CalendarViewDemo/CalendarViewDemo.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /CalendarViewDemo/CalendarViewDemo.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /CalendarViewDemo/CalendarViewDemo/AppDelegate.swift: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.swift 3 | // CalendarViewDemo 4 | // 5 | // Created by Nate Armstrong on 5/7/15. 6 | // Copyright (c) 2015 Nate Armstrong. All rights reserved. 7 | // 8 | 9 | import UIKit 10 | import CalendarView 11 | 12 | @UIApplicationMain 13 | class AppDelegate: UIResponder, UIApplicationDelegate { 14 | 15 | var window: UIWindow? 16 | 17 | 18 | func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool { 19 | // Override point for customization after application launch. 20 | 21 | CalendarView.dayFont = UIFont.boldSystemFontOfSize(14) 22 | 23 | return true 24 | } 25 | 26 | func applicationWillResignActive(application: UIApplication) { 27 | // Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state. 28 | // Use this method to pause ongoing tasks, disable timers, and throttle down OpenGL ES frame rates. Games should use this method to pause the game. 29 | } 30 | 31 | func applicationDidEnterBackground(application: UIApplication) { 32 | // Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later. 33 | // If your application supports background execution, this method is called instead of applicationWillTerminate: when the user quits. 34 | } 35 | 36 | func applicationWillEnterForeground(application: UIApplication) { 37 | // Called as part of the transition from the background to the inactive state; here you can undo many of the changes made on entering the background. 38 | } 39 | 40 | func applicationDidBecomeActive(application: UIApplication) { 41 | // Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface. 42 | } 43 | 44 | func applicationWillTerminate(application: UIApplication) { 45 | // Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:. 46 | } 47 | 48 | 49 | } 50 | 51 | -------------------------------------------------------------------------------- /CalendarViewDemo/CalendarViewDemo/Base.lproj/LaunchScreen.xib: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 20 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | -------------------------------------------------------------------------------- /CalendarViewDemo/CalendarViewDemo/Images.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "iphone", 5 | "size" : "29x29", 6 | "scale" : "2x" 7 | }, 8 | { 9 | "idiom" : "iphone", 10 | "size" : "29x29", 11 | "scale" : "3x" 12 | }, 13 | { 14 | "idiom" : "iphone", 15 | "size" : "40x40", 16 | "scale" : "2x" 17 | }, 18 | { 19 | "idiom" : "iphone", 20 | "size" : "40x40", 21 | "scale" : "3x" 22 | }, 23 | { 24 | "idiom" : "iphone", 25 | "size" : "60x60", 26 | "scale" : "2x" 27 | }, 28 | { 29 | "idiom" : "iphone", 30 | "size" : "60x60", 31 | "scale" : "3x" 32 | }, 33 | { 34 | "idiom" : "ipad", 35 | "size" : "29x29", 36 | "scale" : "1x" 37 | }, 38 | { 39 | "idiom" : "ipad", 40 | "size" : "29x29", 41 | "scale" : "2x" 42 | }, 43 | { 44 | "idiom" : "ipad", 45 | "size" : "40x40", 46 | "scale" : "1x" 47 | }, 48 | { 49 | "idiom" : "ipad", 50 | "size" : "40x40", 51 | "scale" : "2x" 52 | }, 53 | { 54 | "idiom" : "ipad", 55 | "size" : "76x76", 56 | "scale" : "1x" 57 | }, 58 | { 59 | "idiom" : "ipad", 60 | "size" : "76x76", 61 | "scale" : "2x" 62 | } 63 | ], 64 | "info" : { 65 | "version" : 1, 66 | "author" : "xcode" 67 | } 68 | } -------------------------------------------------------------------------------- /CalendarViewDemo/CalendarViewDemo/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | com.armstrongnate.$(PRODUCT_NAME:rfc1034identifier) 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 | 1 23 | LSRequiresIPhoneOS 24 | 25 | UILaunchStoryboardName 26 | LaunchScreen 27 | UIMainStoryboardFile 28 | Main 29 | UIRequiredDeviceCapabilities 30 | 31 | armv7 32 | 33 | UISupportedInterfaceOrientations 34 | 35 | UIInterfaceOrientationPortrait 36 | UIInterfaceOrientationLandscapeLeft 37 | UIInterfaceOrientationLandscapeRight 38 | 39 | UISupportedInterfaceOrientations~ipad 40 | 41 | UIInterfaceOrientationPortrait 42 | UIInterfaceOrientationPortraitUpsideDown 43 | UIInterfaceOrientationLandscapeLeft 44 | UIInterfaceOrientationLandscapeRight 45 | 46 | 47 | 48 | -------------------------------------------------------------------------------- /CalendarViewDemo/CalendarViewDemo/ViewController.swift: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.swift 3 | // CalendarViewDemo 4 | // 5 | // Created by Nate Armstrong on 5/7/15. 6 | // Copyright (c) 2015 Nate Armstrong. All rights reserved. 7 | // 8 | 9 | import UIKit 10 | import CalendarView 11 | import SwiftMoment 12 | 13 | class ViewController: UIViewController { 14 | 15 | @IBOutlet weak var calendar: CalendarView! 16 | 17 | var date: Moment! { 18 | didSet { 19 | title = date.format("MMMM d, yyyy") 20 | } 21 | } 22 | 23 | override func viewDidLoad() { 24 | super.viewDidLoad() 25 | date = moment() 26 | calendar.delegate = self 27 | } 28 | 29 | } 30 | 31 | extension ViewController: CalendarViewDelegate { 32 | 33 | func calendarDidSelectDate(date: Moment) { 34 | self.date = date 35 | } 36 | 37 | func calendarDidPageToDate(date: Moment) { 38 | self.date = date 39 | } 40 | 41 | } 42 | -------------------------------------------------------------------------------- /CalendarViewDemo/CalendarViewDemoTests/CalendarViewDemoTests.swift: -------------------------------------------------------------------------------- 1 | // 2 | // CalendarViewDemoTests.swift 3 | // CalendarViewDemoTests 4 | // 5 | // Created by Nate Armstrong on 5/7/15. 6 | // Copyright (c) 2015 Nate Armstrong. All rights reserved. 7 | // 8 | 9 | import UIKit 10 | import XCTest 11 | 12 | class CalendarViewDemoTests: XCTestCase { 13 | 14 | override func setUp() { 15 | super.setUp() 16 | // Put setup code here. This method is called before the invocation of each test method in the class. 17 | } 18 | 19 | override func tearDown() { 20 | // Put teardown code here. This method is called after the invocation of each test method in the class. 21 | super.tearDown() 22 | } 23 | 24 | func testExample() { 25 | // This is an example of a functional test case. 26 | XCTAssert(true, "Pass") 27 | } 28 | 29 | func testPerformanceExample() { 30 | // This is an example of a performance test case. 31 | self.measureBlock() { 32 | // Put the code you want to measure the time of here. 33 | } 34 | } 35 | 36 | } 37 | -------------------------------------------------------------------------------- /CalendarViewDemo/CalendarViewDemoTests/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | com.armstrongnate.$(PRODUCT_NAME:rfc1034identifier) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | $(PRODUCT_NAME) 15 | CFBundlePackageType 16 | BNDL 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | 1 23 | 24 | 25 | -------------------------------------------------------------------------------- /CalendarViewDemo/Podfile: -------------------------------------------------------------------------------- 1 | source 'https://github.com/CocoaPods/Specs.git' 2 | platform :ios, '8.3' 3 | use_frameworks! 4 | 5 | pod 'CalendarView', path: '..' 6 | 7 | -------------------------------------------------------------------------------- /CalendarViewDemo/Podfile.lock: -------------------------------------------------------------------------------- 1 | PODS: 2 | - CalendarView (1.1.0): 3 | - SwiftMoment (~> 0.1) 4 | - SwiftMoment (0.3) 5 | 6 | DEPENDENCIES: 7 | - CalendarView (from `..`) 8 | 9 | EXTERNAL SOURCES: 10 | CalendarView: 11 | :path: .. 12 | 13 | SPEC CHECKSUMS: 14 | CalendarView: adad8997eae3474f2cfd8f300a0a16914f4fd4b3 15 | SwiftMoment: 79f924ccf5450a5406b00eaebe5bfb248cc5e33d 16 | 17 | COCOAPODS: 0.39.0 18 | -------------------------------------------------------------------------------- /CalendarViewDemo/Pods/Headers/Private/SwiftMoment/SwiftMoment.h: -------------------------------------------------------------------------------- 1 | ../../../SwiftMoment/SwiftMoment/SwiftMoment/SwiftMoment.h -------------------------------------------------------------------------------- /CalendarViewDemo/Pods/Local Podspecs/CalendarView.podspec.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "CalendarView", 3 | "version": "1.1.0", 4 | "summary": "A lightweight calendar view.", 5 | "description": "A calendar view with a focus on:\n\n* Speed\n* Simplicity\n* Customization", 6 | "homepage": "https://github.com/n8armstrong/CalendarView", 7 | "screenshots": "https://raw.githubusercontent.com/n8armstrong/CalendarView/master/screens/screenshot.png", 8 | "license": "MIT", 9 | "authors": { 10 | "Nate Armstrong": "natearmstrong2@gmail.com" 11 | }, 12 | "source": { 13 | "git": "https://github.com/n8armstrong/CalendarView.git", 14 | "tag": "1.1.0" 15 | }, 16 | "social_media_url": "https://twitter.com/N8armstrong", 17 | "platforms": { 18 | "ios": "8.3" 19 | }, 20 | "requires_arc": true, 21 | "source_files": "CalendarView/CalendarView/Classes/**/*", 22 | "resource_bundles": { 23 | "CalendarView": [ 24 | "Pod/Assets/*.png" 25 | ] 26 | }, 27 | "frameworks": "UIKit", 28 | "dependencies": { 29 | "SwiftMoment": [ 30 | "~> 0.1" 31 | ] 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /CalendarViewDemo/Pods/Manifest.lock: -------------------------------------------------------------------------------- 1 | PODS: 2 | - CalendarView (1.1.0): 3 | - SwiftMoment (~> 0.1) 4 | - SwiftMoment (0.3) 5 | 6 | DEPENDENCIES: 7 | - CalendarView (from `..`) 8 | 9 | EXTERNAL SOURCES: 10 | CalendarView: 11 | :path: .. 12 | 13 | SPEC CHECKSUMS: 14 | CalendarView: adad8997eae3474f2cfd8f300a0a16914f4fd4b3 15 | SwiftMoment: 79f924ccf5450a5406b00eaebe5bfb248cc5e33d 16 | 17 | COCOAPODS: 0.39.0 18 | -------------------------------------------------------------------------------- /CalendarViewDemo/Pods/Pods.xcodeproj/xcshareddata/xcschemes/CalendarView.xcscheme: -------------------------------------------------------------------------------- 1 | 2 | 5 | 8 | 9 | 15 | 21 | 22 | 23 | 24 | 25 | 30 | 31 | 32 | 33 | 43 | 44 | 45 | 46 | 52 | 53 | 55 | 56 | 59 | 60 | 61 | -------------------------------------------------------------------------------- /CalendarViewDemo/Pods/SwiftMoment/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2015, Adrian Kosmaczewski 2 | All rights reserved. 3 | 4 | Redistribution and use in source and binary forms, with or without modification, 5 | are permitted provided that the following conditions are met: 6 | 7 | 1. Redistributions of source code must retain the above copyright notice, this 8 | list of conditions and the following disclaimer. 9 | 10 | 2. Redistributions in binary form must reproduce the above copyright notice, 11 | this list of conditions and the following disclaimer in the documentation 12 | and/or other materials provided with the distribution. 13 | 14 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 15 | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 16 | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 17 | DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR 18 | ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 19 | (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 20 | LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON 21 | ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 22 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 23 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 24 | 25 | -------------------------------------------------------------------------------- /CalendarViewDemo/Pods/SwiftMoment/README.md: -------------------------------------------------------------------------------- 1 | # SwiftMoment 2 | 3 | This framework is inspired by [Moment.js](http://momentjs.com). Its 4 | objectives are the following: 5 | 6 | - Simplify the manipulation and readability of date and interval values. 7 | - Provide help when parsing dates from various string representations. 8 | - Simplifying the formatting of date information into strings. 9 | - Streamlining getting date components (day, month, etc.) from dates and 10 | time intervals. 11 | 12 | Important: This framework targets iOS 9, OS X 10.10, Xcode 7 and Swift 13 | 2.0 and later exclusively. 14 | 15 | ## Installation 16 | 17 | SwiftMoment is compatible with 18 | [Carthage](http://github.com/Carthage/Carthage) and 19 | [CocoaPods](http://cocoapods.org/). With CocoaPods, just add this to 20 | your Podfile: 21 | 22 | ```ruby 23 | pod 'SwiftMoment' 24 | ``` 25 | 26 | ## Examples 27 | 28 | To use this library, just `import SwiftMoment` in your application. 29 | 30 | To create new moment instances: 31 | 32 | ```Swift 33 | let now = moment() 34 | let yesterday = moment("2015-01-19") 35 | ``` 36 | 37 | By default, moments are initialized with the current date and time. You 38 | can create moments for any... moment in the future or the past; you can 39 | do that by passing strings in different formats: 40 | 41 | ```Swift 42 | let yesterday = moment("2015-01-19") 43 | ``` 44 | 45 | You can also do it by directly specifying the components manually: 46 | 47 | ```Swift 48 | let today = moment([2015, 01, 19, 20, 45, 34]) 49 | ``` 50 | 51 | You can also use a dictionary with the following keys: 52 | 53 | ```Swift 54 | let obj = moment(["year": 2015, 55 | "second": 34, 56 | "month": 01, 57 | "minute": 45, 58 | "hour": 20, 59 | "day": 19 60 | ]) 61 | ``` 62 | 63 | When using a `[String: Int]` dictionary, the order of the keys does not 64 | matter. Moreover, only the keys above are taken into account, and any 65 | other information is ignored. 66 | 67 | There is also an extension to the `Int` type in Swift, used to create 68 | `Duration` values directly from an integer value: 69 | 70 | ```Swift 71 | let duration = 5.hours + 56.minutes 72 | ``` 73 | 74 | ## Architecture 75 | 76 | The two most important components of this library are the `Moment` and 77 | `Duration` structures. `Moment` wraps an `NSDate` instance, while 78 | `Duration` wraps an `NSTimeInterval` value. 79 | 80 | Both `Moment` and `Duration` comply with the `Comparable` protocols, and 81 | include all the required operators. In addition, `Moment` instances can 82 | be subtracted from one another (which yields a `Duration`) and 83 | `Duration` instances can be added to `Moments` to create new moments. 84 | 85 | `Moments` and `Durations` are made as immutable as possible. 86 | 87 | ## Tests 88 | 89 | Swift Moment includes a suite of tests showing how to use the different 90 | functions of the framework. 91 | 92 | ## Playground 93 | 94 | A playground is included in the project to learn how to use the library. 95 | 96 | ## Differences with [Moment.js](http://momentjs.com) 97 | 98 | - Format strings `DD` and `dd` do not yield the same results. 99 | 100 | ## Contributors 101 | 102 | Lots of people are actively helping in the development of this library; 103 | please check the 104 | [CONTRIBUTORS](https://github.com/akosma/SwiftMoment/blob/master/CONTRIBUTORS.md) 105 | file for the full list! Thanks to all :) 106 | 107 | ## License 108 | 109 | This project is distributed under a BSD license. See the LICENSE file 110 | for details. 111 | 112 | -------------------------------------------------------------------------------- /CalendarViewDemo/Pods/SwiftMoment/SwiftMoment/SwiftMoment/Duration.swift: -------------------------------------------------------------------------------- 1 | // 2 | // Duration.swift 3 | // SwiftMoment 4 | // 5 | // Created by Adrian on 19/01/15. 6 | // Copyright (c) 2015 Adrian Kosmaczewski. All rights reserved. 7 | // 8 | 9 | import Foundation 10 | 11 | public struct Duration: Equatable { 12 | let interval: NSTimeInterval 13 | 14 | public init(value: NSTimeInterval) { 15 | self.interval = value 16 | } 17 | 18 | public init(value: Int) { 19 | self.interval = NSTimeInterval(value) 20 | } 21 | 22 | public var years: Double { 23 | return interval / 31536000 // 365 days 24 | } 25 | 26 | public var quarters: Double { 27 | return interval / 7776000 // 3 months 28 | } 29 | 30 | public var months: Double { 31 | return interval / 2592000 // 30 days 32 | } 33 | 34 | public var days: Double { 35 | return interval / 86400 // 24 hours 36 | } 37 | 38 | public var hours: Double { 39 | return interval / 3600 // 60 minutes 40 | } 41 | 42 | public var minutes: Double { 43 | return interval / 60 44 | } 45 | 46 | public var seconds: Double { 47 | return interval 48 | } 49 | 50 | public func ago() -> Moment { 51 | return moment().subtract(self) 52 | } 53 | 54 | public func add(duration: Duration) -> Duration { 55 | return Duration(value: self.interval + duration.interval) 56 | } 57 | 58 | public func subtract(duration: Duration) -> Duration { 59 | return Duration(value: self.interval - duration.interval) 60 | } 61 | 62 | public func isEqualTo(duration: Duration) -> Bool { 63 | return self.interval == duration.interval 64 | } 65 | } 66 | 67 | extension Duration: CustomStringConvertible { 68 | public var description: String { 69 | let formatter = NSDateComponentsFormatter() 70 | formatter.calendar = NSCalendar(identifier: NSCalendarIdentifierGregorian) 71 | formatter.calendar?.timeZone = NSTimeZone(abbreviation: "UTC")! 72 | formatter.allowedUnits = [.Year, .Month, .WeekOfMonth, .Day, .Hour, .Minute, .Second] 73 | 74 | let referenceDate = NSDate(timeIntervalSinceReferenceDate: 0) 75 | let intervalDate = NSDate(timeInterval: self.interval, sinceDate: referenceDate) 76 | return formatter.stringFromDate(referenceDate, toDate: intervalDate)! 77 | } 78 | } 79 | -------------------------------------------------------------------------------- /CalendarViewDemo/Pods/SwiftMoment/SwiftMoment/SwiftMoment/Extensions.swift: -------------------------------------------------------------------------------- 1 | // 2 | // Extensions.swift 3 | // SwiftMoment 4 | // 5 | // Created by Adrian on 19/01/15. 6 | // Copyright (c) 2015 Adrian Kosmaczewski. All rights reserved. 7 | // 8 | 9 | public extension Int { 10 | var seconds: Duration { 11 | return Duration(value: self) 12 | } 13 | 14 | var minutes: Duration { 15 | return Duration(value: self * 60) 16 | } 17 | 18 | var hours: Duration { 19 | return Duration(value: self * 3600) 20 | } 21 | 22 | var days: Duration { 23 | return Duration(value: self * 86400) 24 | } 25 | 26 | var months: Duration { 27 | return Duration(value: self * 2592000) 28 | } 29 | 30 | var quarters: Duration { 31 | return Duration(value: self * 7776000) 32 | } 33 | 34 | var years: Duration { 35 | return Duration(value: self * 31536000) 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /CalendarViewDemo/Pods/SwiftMoment/SwiftMoment/SwiftMoment/Operators.swift: -------------------------------------------------------------------------------- 1 | // 2 | // Operators.swift 3 | // SwiftMoment 4 | // 5 | // Created by Adrian on 19/01/15. 6 | // Copyright (c) 2015 Adrian Kosmaczewski. All rights reserved. 7 | // 8 | 9 | public func == (lhs: Moment, rhs: Moment) -> Bool { 10 | return lhs.isEqualTo(rhs) 11 | } 12 | 13 | public func != (lhs: Moment, rhs: Moment) -> Bool { 14 | return !lhs.isEqualTo(rhs) 15 | } 16 | 17 | public func ~= (lhs: Moment, rhs: Moment) -> Bool { 18 | return lhs.isCloseTo(rhs) 19 | } 20 | 21 | public func - (lhs: Moment, rhs: Moment) -> Duration { 22 | return lhs.intervalSince(rhs) 23 | } 24 | 25 | public func > (lhs: Moment, rhs: Moment) -> Bool { 26 | return lhs.intervalSince(rhs).interval > 0 27 | } 28 | 29 | public func < (lhs: Moment, rhs: Moment) -> Bool { 30 | return lhs.intervalSince(rhs).interval < 0 31 | } 32 | 33 | public func >= (lhs: Moment, rhs: Moment) -> Bool { 34 | return lhs.intervalSince(rhs).interval >= 0 35 | } 36 | 37 | public func <= (lhs: Moment, rhs: Moment) -> Bool { 38 | return lhs.intervalSince(rhs).interval <= 0 39 | } 40 | 41 | public func + (lhs: Moment, rhs: Duration) -> Moment { 42 | return lhs.add(rhs) 43 | } 44 | 45 | public func + (lhs: Duration, rhs: Moment) -> Moment { 46 | return rhs.add(lhs) 47 | } 48 | 49 | public func - (lhs: Moment, rhs: Duration) -> Moment { 50 | return lhs.subtract(rhs) 51 | } 52 | 53 | public func - (lhs: Duration, rhs: Moment) -> Moment { 54 | return rhs.subtract(lhs) 55 | } 56 | 57 | public func == (lhs: Duration, rhs: Duration) -> Bool { 58 | return lhs.isEqualTo(rhs) 59 | } 60 | 61 | public func + (lhs: Duration, rhs: Duration) -> Duration { 62 | return lhs.add(rhs) 63 | } 64 | 65 | public func - (lhs: Duration, rhs: Duration) -> Duration { 66 | return lhs.subtract(rhs) 67 | } 68 | -------------------------------------------------------------------------------- /CalendarViewDemo/Pods/SwiftMoment/SwiftMoment/SwiftMoment/SwiftMoment.h: -------------------------------------------------------------------------------- 1 | // 2 | // SwiftMoment.h 3 | // SwiftMoment 4 | // 5 | // Created by Adrian on 19/01/15. 6 | // Copyright (c) 2015 Adrian Kosmaczewski. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | //! Project version number for SwiftMoment. 12 | FOUNDATION_EXPORT double SwiftMomentVersionNumber; 13 | 14 | //! Project version string for SwiftMoment. 15 | FOUNDATION_EXPORT const unsigned char SwiftMomentVersionString[]; 16 | 17 | // In this header, you should import all the public headers of your framework using statements like #import 18 | 19 | 20 | -------------------------------------------------------------------------------- /CalendarViewDemo/Pods/SwiftMoment/SwiftMoment/SwiftMoment/TimeUnit.swift: -------------------------------------------------------------------------------- 1 | // 2 | // TimeUnit.swift 3 | // SwiftMoment 4 | // 5 | // Created by Adrian on 19/01/15. 6 | // Copyright (c) 2015 Adrian Kosmaczewski. All rights reserved. 7 | // 8 | 9 | public enum TimeUnit : String { 10 | case Years = "y" 11 | case Quarters = "Q" 12 | case Months = "M" 13 | case Days = "d" 14 | case Hours = "H" 15 | case Minutes = "m" 16 | case Seconds = "s" 17 | } 18 | -------------------------------------------------------------------------------- /CalendarViewDemo/Pods/Target Support Files/CalendarView/CalendarView-dummy.m: -------------------------------------------------------------------------------- 1 | #import 2 | @interface PodsDummy_CalendarView : NSObject 3 | @end 4 | @implementation PodsDummy_CalendarView 5 | @end 6 | -------------------------------------------------------------------------------- /CalendarViewDemo/Pods/Target Support Files/CalendarView/CalendarView-prefix.pch: -------------------------------------------------------------------------------- 1 | #ifdef __OBJC__ 2 | #import 3 | #endif 4 | 5 | -------------------------------------------------------------------------------- /CalendarViewDemo/Pods/Target Support Files/CalendarView/CalendarView-umbrella.h: -------------------------------------------------------------------------------- 1 | #import 2 | 3 | 4 | FOUNDATION_EXPORT double CalendarViewVersionNumber; 5 | FOUNDATION_EXPORT const unsigned char CalendarViewVersionString[]; 6 | 7 | -------------------------------------------------------------------------------- /CalendarViewDemo/Pods/Target Support Files/CalendarView/CalendarView.modulemap: -------------------------------------------------------------------------------- 1 | framework module CalendarView { 2 | umbrella header "CalendarView-umbrella.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | -------------------------------------------------------------------------------- /CalendarViewDemo/Pods/Target Support Files/CalendarView/CalendarView.xcconfig: -------------------------------------------------------------------------------- 1 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 2 | HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Private/CalendarView" "${PODS_ROOT}/Headers/Public" 3 | OTHER_LDFLAGS = -framework "UIKit" 4 | OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS" 5 | PODS_ROOT = ${SRCROOT} 6 | SKIP_INSTALL = YES -------------------------------------------------------------------------------- /CalendarViewDemo/Pods/Target Support Files/CalendarView/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.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | ${CURRENT_PROJECT_VERSION} 23 | NSPrincipalClass 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /CalendarViewDemo/Pods/Target Support Files/Pods/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 | -------------------------------------------------------------------------------- /CalendarViewDemo/Pods/Target Support Files/Pods/Pods-acknowledgements.markdown: -------------------------------------------------------------------------------- 1 | # Acknowledgements 2 | This application makes use of the following third party libraries: 3 | 4 | ## CalendarView 5 | 6 | Copyright (c) 2015 Nate Armstrong 7 | 8 | Permission is hereby granted, free of charge, to any person obtaining a copy 9 | of this software and associated documentation files (the "Software"), to deal 10 | in the Software without restriction, including without limitation the rights 11 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 12 | copies of the Software, and to permit persons to whom the Software is 13 | furnished to do so, subject to the following conditions: 14 | 15 | The above copyright notice and this permission notice shall be included in 16 | all copies or substantial portions of the Software. 17 | 18 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 19 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 20 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 21 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 22 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 23 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 24 | THE SOFTWARE. 25 | 26 | 27 | ## SwiftMoment 28 | 29 | Copyright (c) 2015, Adrian Kosmaczewski 30 | All rights reserved. 31 | 32 | Redistribution and use in source and binary forms, with or without modification, 33 | are permitted provided that the following conditions are met: 34 | 35 | 1. Redistributions of source code must retain the above copyright notice, this 36 | list of conditions and the following disclaimer. 37 | 38 | 2. Redistributions in binary form must reproduce the above copyright notice, 39 | this list of conditions and the following disclaimer in the documentation 40 | and/or other materials provided with the distribution. 41 | 42 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 43 | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 44 | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 45 | DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR 46 | ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 47 | (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 48 | LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON 49 | ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 50 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 51 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 52 | 53 | 54 | Generated by CocoaPods - http://cocoapods.org 55 | -------------------------------------------------------------------------------- /CalendarViewDemo/Pods/Target Support Files/Pods/Pods-acknowledgements.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | PreferenceSpecifiers 6 | 7 | 8 | FooterText 9 | This application makes use of the following third party libraries: 10 | Title 11 | Acknowledgements 12 | Type 13 | PSGroupSpecifier 14 | 15 | 16 | FooterText 17 | Copyright (c) 2015 Nate Armstrong <natearmstrong2@gmail.com> 18 | 19 | Permission is hereby granted, free of charge, to any person obtaining a copy 20 | of this software and associated documentation files (the "Software"), to deal 21 | in the Software without restriction, including without limitation the rights 22 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 23 | copies of the Software, and to permit persons to whom the Software is 24 | furnished to do so, subject to the following conditions: 25 | 26 | The above copyright notice and this permission notice shall be included in 27 | all copies or substantial portions of the Software. 28 | 29 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 30 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 31 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 32 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 33 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 34 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 35 | THE SOFTWARE. 36 | 37 | Title 38 | CalendarView 39 | Type 40 | PSGroupSpecifier 41 | 42 | 43 | FooterText 44 | Copyright (c) 2015, Adrian Kosmaczewski 45 | All rights reserved. 46 | 47 | Redistribution and use in source and binary forms, with or without modification, 48 | are permitted provided that the following conditions are met: 49 | 50 | 1. Redistributions of source code must retain the above copyright notice, this 51 | list of conditions and the following disclaimer. 52 | 53 | 2. Redistributions in binary form must reproduce the above copyright notice, 54 | this list of conditions and the following disclaimer in the documentation 55 | and/or other materials provided with the distribution. 56 | 57 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 58 | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 59 | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 60 | DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR 61 | ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 62 | (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 63 | LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON 64 | ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 65 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 66 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 67 | 68 | 69 | Title 70 | SwiftMoment 71 | Type 72 | PSGroupSpecifier 73 | 74 | 75 | FooterText 76 | Generated by CocoaPods - http://cocoapods.org 77 | Title 78 | 79 | Type 80 | PSGroupSpecifier 81 | 82 | 83 | StringsTable 84 | Acknowledgements 85 | Title 86 | Acknowledgements 87 | 88 | 89 | -------------------------------------------------------------------------------- /CalendarViewDemo/Pods/Target Support Files/Pods/Pods-dummy.m: -------------------------------------------------------------------------------- 1 | #import 2 | @interface PodsDummy_Pods : NSObject 3 | @end 4 | @implementation PodsDummy_Pods 5 | @end 6 | -------------------------------------------------------------------------------- /CalendarViewDemo/Pods/Target Support Files/Pods/Pods-frameworks.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | set -e 3 | 4 | echo "mkdir -p ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" 5 | mkdir -p "${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" 6 | 7 | SWIFT_STDLIB_PATH="${DT_TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}" 8 | 9 | install_framework() 10 | { 11 | if [ -r "${BUILT_PRODUCTS_DIR}/$1" ]; then 12 | local source="${BUILT_PRODUCTS_DIR}/$1" 13 | elif [ -r "${BUILT_PRODUCTS_DIR}/$(basename "$1")" ]; then 14 | local source="${BUILT_PRODUCTS_DIR}/$(basename "$1")" 15 | elif [ -r "$1" ]; then 16 | local source="$1" 17 | fi 18 | 19 | local destination="${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" 20 | 21 | if [ -L "${source}" ]; then 22 | echo "Symlinked..." 23 | source="$(readlink "${source}")" 24 | fi 25 | 26 | # use filter instead of exclude so missing patterns dont' throw errors 27 | echo "rsync -av --filter \"- CVS/\" --filter \"- .svn/\" --filter \"- .git/\" --filter \"- .hg/\" --filter \"- Headers\" --filter \"- PrivateHeaders\" --filter \"- Modules\" \"${source}\" \"${destination}\"" 28 | rsync -av --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${source}" "${destination}" 29 | 30 | local basename 31 | basename="$(basename -s .framework "$1")" 32 | binary="${destination}/${basename}.framework/${basename}" 33 | if ! [ -r "$binary" ]; then 34 | binary="${destination}/${basename}" 35 | fi 36 | 37 | # Strip invalid architectures so "fat" simulator / device frameworks work on device 38 | if [[ "$(file "$binary")" == *"dynamically linked shared library"* ]]; then 39 | strip_invalid_archs "$binary" 40 | fi 41 | 42 | # Resign the code if required by the build settings to avoid unstable apps 43 | code_sign_if_enabled "${destination}/$(basename "$1")" 44 | 45 | # Embed linked Swift runtime libraries. No longer necessary as of Xcode 7. 46 | if [ "${XCODE_VERSION_MAJOR}" -lt 7 ]; then 47 | local swift_runtime_libs 48 | swift_runtime_libs=$(xcrun otool -LX "$binary" | grep --color=never @rpath/libswift | sed -E s/@rpath\\/\(.+dylib\).*/\\1/g | uniq -u && exit ${PIPESTATUS[0]}) 49 | for lib in $swift_runtime_libs; do 50 | echo "rsync -auv \"${SWIFT_STDLIB_PATH}/${lib}\" \"${destination}\"" 51 | rsync -auv "${SWIFT_STDLIB_PATH}/${lib}" "${destination}" 52 | code_sign_if_enabled "${destination}/${lib}" 53 | done 54 | fi 55 | } 56 | 57 | # Signs a framework with the provided identity 58 | code_sign_if_enabled() { 59 | if [ -n "${EXPANDED_CODE_SIGN_IDENTITY}" -a "${CODE_SIGNING_REQUIRED}" != "NO" -a "${CODE_SIGNING_ALLOWED}" != "NO" ]; then 60 | # Use the current code_sign_identitiy 61 | echo "Code Signing $1 with Identity ${EXPANDED_CODE_SIGN_IDENTITY_NAME}" 62 | echo "/usr/bin/codesign --force --sign ${EXPANDED_CODE_SIGN_IDENTITY} --preserve-metadata=identifier,entitlements \"$1\"" 63 | /usr/bin/codesign --force --sign ${EXPANDED_CODE_SIGN_IDENTITY} --preserve-metadata=identifier,entitlements "$1" 64 | fi 65 | } 66 | 67 | # Strip invalid architectures 68 | strip_invalid_archs() { 69 | binary="$1" 70 | # Get architectures for current file 71 | archs="$(lipo -info "$binary" | rev | cut -d ':' -f1 | rev)" 72 | stripped="" 73 | for arch in $archs; do 74 | if ! [[ "${VALID_ARCHS}" == *"$arch"* ]]; then 75 | # Strip non-valid architectures in-place 76 | lipo -remove "$arch" -output "$binary" "$binary" || exit 1 77 | stripped="$stripped $arch" 78 | fi 79 | done 80 | if [[ "$stripped" ]]; then 81 | echo "Stripped $binary of architectures:$stripped" 82 | fi 83 | } 84 | 85 | 86 | if [[ "$CONFIGURATION" == "Debug" ]]; then 87 | install_framework "Pods/CalendarView.framework" 88 | install_framework "Pods/SwiftMoment.framework" 89 | fi 90 | if [[ "$CONFIGURATION" == "Release" ]]; then 91 | install_framework "Pods/CalendarView.framework" 92 | install_framework "Pods/SwiftMoment.framework" 93 | fi 94 | -------------------------------------------------------------------------------- /CalendarViewDemo/Pods/Target Support Files/Pods/Pods-resources.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | set -e 3 | 4 | mkdir -p "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" 5 | 6 | RESOURCES_TO_COPY=${PODS_ROOT}/resources-to-copy-${TARGETNAME}.txt 7 | > "$RESOURCES_TO_COPY" 8 | 9 | XCASSET_FILES=() 10 | 11 | realpath() { 12 | DIRECTORY="$(cd "${1%/*}" && pwd)" 13 | FILENAME="${1##*/}" 14 | echo "$DIRECTORY/$FILENAME" 15 | } 16 | 17 | install_resource() 18 | { 19 | case $1 in 20 | *.storyboard) 21 | echo "ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile ${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .storyboard`.storyboardc ${PODS_ROOT}/$1 --sdk ${SDKROOT}" 22 | ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .storyboard`.storyboardc" "${PODS_ROOT}/$1" --sdk "${SDKROOT}" 23 | ;; 24 | *.xib) 25 | echo "ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile ${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .xib`.nib ${PODS_ROOT}/$1 --sdk ${SDKROOT}" 26 | ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .xib`.nib" "${PODS_ROOT}/$1" --sdk "${SDKROOT}" 27 | ;; 28 | *.framework) 29 | echo "mkdir -p ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" 30 | mkdir -p "${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" 31 | echo "rsync -av ${PODS_ROOT}/$1 ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" 32 | rsync -av "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" 33 | ;; 34 | *.xcdatamodel) 35 | echo "xcrun momc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1"`.mom\"" 36 | xcrun momc "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcdatamodel`.mom" 37 | ;; 38 | *.xcdatamodeld) 39 | echo "xcrun momc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcdatamodeld`.momd\"" 40 | xcrun momc "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcdatamodeld`.momd" 41 | ;; 42 | *.xcmappingmodel) 43 | echo "xcrun mapc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcmappingmodel`.cdm\"" 44 | xcrun mapc "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcmappingmodel`.cdm" 45 | ;; 46 | *.xcassets) 47 | ABSOLUTE_XCASSET_FILE=$(realpath "${PODS_ROOT}/$1") 48 | XCASSET_FILES+=("$ABSOLUTE_XCASSET_FILE") 49 | ;; 50 | /*) 51 | echo "$1" 52 | echo "$1" >> "$RESOURCES_TO_COPY" 53 | ;; 54 | *) 55 | echo "${PODS_ROOT}/$1" 56 | echo "${PODS_ROOT}/$1" >> "$RESOURCES_TO_COPY" 57 | ;; 58 | esac 59 | } 60 | 61 | mkdir -p "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" 62 | rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" 63 | if [[ "${ACTION}" == "install" ]] && [[ "${SKIP_INSTALL}" == "NO" ]]; then 64 | mkdir -p "${INSTALL_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" 65 | rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${INSTALL_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" 66 | fi 67 | rm -f "$RESOURCES_TO_COPY" 68 | 69 | if [[ -n "${WRAPPER_EXTENSION}" ]] && [ "`xcrun --find actool`" ] && [ -n "$XCASSET_FILES" ] 70 | then 71 | case "${TARGETED_DEVICE_FAMILY}" in 72 | 1,2) 73 | TARGET_DEVICE_ARGS="--target-device ipad --target-device iphone" 74 | ;; 75 | 1) 76 | TARGET_DEVICE_ARGS="--target-device iphone" 77 | ;; 78 | 2) 79 | TARGET_DEVICE_ARGS="--target-device ipad" 80 | ;; 81 | *) 82 | TARGET_DEVICE_ARGS="--target-device mac" 83 | ;; 84 | esac 85 | 86 | # Find all other xcassets (this unfortunately includes those of path pods and other targets). 87 | OTHER_XCASSETS=$(find "$PWD" -iname "*.xcassets" -type d) 88 | while read line; do 89 | if [[ $line != "`realpath $PODS_ROOT`*" ]]; then 90 | XCASSET_FILES+=("$line") 91 | fi 92 | done <<<"$OTHER_XCASSETS" 93 | 94 | printf "%s\0" "${XCASSET_FILES[@]}" | xargs -0 xcrun actool --output-format human-readable-text --notices --warnings --platform "${PLATFORM_NAME}" --minimum-deployment-target "${IPHONEOS_DEPLOYMENT_TARGET}" ${TARGET_DEVICE_ARGS} --compress-pngs --compile "${BUILT_PRODUCTS_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" 95 | fi 96 | -------------------------------------------------------------------------------- /CalendarViewDemo/Pods/Target Support Files/Pods/Pods-umbrella.h: -------------------------------------------------------------------------------- 1 | #import 2 | 3 | 4 | FOUNDATION_EXPORT double PodsVersionNumber; 5 | FOUNDATION_EXPORT const unsigned char PodsVersionString[]; 6 | 7 | -------------------------------------------------------------------------------- /CalendarViewDemo/Pods/Target Support Files/Pods/Pods.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/CalendarView.framework/Headers" -iquote "$CONFIGURATION_BUILD_DIR/SwiftMoment.framework/Headers" 5 | OTHER_LDFLAGS = $(inherited) -framework "CalendarView" -framework "SwiftMoment" 6 | OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS" 7 | PODS_FRAMEWORK_BUILD_PATH = $(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/Pods 8 | PODS_ROOT = ${SRCROOT}/Pods -------------------------------------------------------------------------------- /CalendarViewDemo/Pods/Target Support Files/Pods/Pods.modulemap: -------------------------------------------------------------------------------- 1 | framework module Pods { 2 | umbrella header "Pods-umbrella.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | -------------------------------------------------------------------------------- /CalendarViewDemo/Pods/Target Support Files/Pods/Pods.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/CalendarView.framework/Headers" -iquote "$CONFIGURATION_BUILD_DIR/SwiftMoment.framework/Headers" 5 | OTHER_LDFLAGS = $(inherited) -framework "CalendarView" -framework "SwiftMoment" 6 | OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS" 7 | PODS_FRAMEWORK_BUILD_PATH = $(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/Pods 8 | PODS_ROOT = ${SRCROOT}/Pods -------------------------------------------------------------------------------- /CalendarViewDemo/Pods/Target Support Files/SwiftMoment/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 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | ${CURRENT_PROJECT_VERSION} 23 | NSPrincipalClass 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /CalendarViewDemo/Pods/Target Support Files/SwiftMoment/SwiftMoment-dummy.m: -------------------------------------------------------------------------------- 1 | #import 2 | @interface PodsDummy_SwiftMoment : NSObject 3 | @end 4 | @implementation PodsDummy_SwiftMoment 5 | @end 6 | -------------------------------------------------------------------------------- /CalendarViewDemo/Pods/Target Support Files/SwiftMoment/SwiftMoment-prefix.pch: -------------------------------------------------------------------------------- 1 | #ifdef __OBJC__ 2 | #import 3 | #endif 4 | 5 | -------------------------------------------------------------------------------- /CalendarViewDemo/Pods/Target Support Files/SwiftMoment/SwiftMoment-umbrella.h: -------------------------------------------------------------------------------- 1 | #import 2 | 3 | #import "SwiftMoment.h" 4 | 5 | FOUNDATION_EXPORT double SwiftMomentVersionNumber; 6 | FOUNDATION_EXPORT const unsigned char SwiftMomentVersionString[]; 7 | 8 | -------------------------------------------------------------------------------- /CalendarViewDemo/Pods/Target Support Files/SwiftMoment/SwiftMoment.modulemap: -------------------------------------------------------------------------------- 1 | framework module SwiftMoment { 2 | umbrella header "SwiftMoment-umbrella.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | -------------------------------------------------------------------------------- /CalendarViewDemo/Pods/Target Support Files/SwiftMoment/SwiftMoment.xcconfig: -------------------------------------------------------------------------------- 1 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 2 | HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Private/SwiftMoment" "${PODS_ROOT}/Headers/Public" 3 | OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS" 4 | PODS_ROOT = ${SRCROOT} 5 | SKIP_INSTALL = YES -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2015 Nate Armstrong 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 | -------------------------------------------------------------------------------- /Pod/Assets/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/armstrongnate/CalendarView/f95c89a83f6a81bcafa6cf1e8eaf595161d33946/Pod/Assets/.gitkeep -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # CalendarView 2 | 3 | [![CI Status](http://img.shields.io/travis/Nate Armstrong/CalendarView.svg?style=flat)](https://travis-ci.org/Nate Armstrong/CalendarView) 4 | [![Version](https://img.shields.io/cocoapods/v/CalendarView.svg?style=flat)](http://cocoapods.org/pods/CalendarView) 5 | [![License](https://img.shields.io/cocoapods/l/CalendarView.svg?style=flat)](http://cocoapods.org/pods/CalendarView) 6 | [![Platform](https://img.shields.io/cocoapods/p/CalendarView.svg?style=flat)](http://cocoapods.org/pods/CalendarView) 7 | 8 | ## Usage 9 | 10 | To run the example project, clone the repo, and run `pod install` from the CalendarViewDemo directory first. 11 | 12 | ## Requirements 13 | 14 | * iOS 9.0+ 15 | * Xcode 9.0 16 | 17 | ## Installation 18 | 19 | CalendarView is available through [Carthage](https://github.com/Carthage/Carthage) and [CocoaPods](http://cocoapods.org). 20 | To install it, simply add the following line to your Podfile: 21 | 22 | ```ruby 23 | pod "CalendarView" 24 | ``` 25 | 26 | ## Screenshot 27 | 28 | 29 |   30 |   31 | 32 | 33 | ## Usage 34 | 35 | Use the `CalendarView` class in code: 36 | 37 | ```swift 38 | let calendar = CalendarView(frame: CGRect(x: 0, y: 0, width: view.frame.width, height: 320)) 39 | view.addSubview(calendar) 40 | ``` 41 | 42 | or as an outlet (supports auto layout) 43 | 44 | ```swift 45 | @IBOutlet weak var calendar: CalendarView! 46 | ``` 47 | 48 | ### Select specific date 49 | 50 | The selected date is the current date by default. You can select any date by using 51 | the `selectDate(date: Moment)` method. 52 | 53 | ```swift 54 | let date: Date = YOUR_DATE_HERE 55 | calendar.selectDate(moment(date)) 56 | ``` 57 | 58 | ### Delegate 59 | 60 | A `CalendarView`'s `delegate` is notified of two events: 61 | 62 | ```swift 63 | calendarDidSelectDate(date: Moment) // called when user taps a date 64 | calendarDidPageToDate(date: Moment) // called when users swipes month 65 | ``` 66 | 67 | The `CalendarView` class uses [SwiftMoment](https://github.com/akosma/SwiftMoment) 68 | for date manipulation. 69 | 70 | #### Example use of delegate calls 71 | 72 | ```swift 73 | extension ViewController: CalendarViewDelegate { 74 | 75 | func calendarDidSelectDate(date: Moment) { 76 | title = date.format(dateFormat: "MMMM d, yyyy") 77 | } 78 | 79 | func calendarDidPageToDate(date: Moment) { 80 | title = date.format(dateFormat: "MMMM d, yyyy") 81 | } 82 | 83 | } 84 | ``` 85 | 86 | ### Customizations 87 | 88 | The aim is to allow the calendar to be as customizable as possible without making 89 | it overly complex and bloated. 90 | 91 | #### Appearance 92 | 93 | You can customize the look of the calendar by setting certain class properties of 94 | `CalendarView`. 95 | 96 | ```swift 97 | import UIKit 98 | import CalendarView 99 | 100 | @UIApplicationMain 101 | class AppDelegate: UIResponder, UIApplicationDelegate { 102 | 103 | var window: UIWindow? 104 | 105 | 106 | func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool { 107 | // Calendar appearance 108 | CalendarView.daySelectedBackgroundColor = UIColor.orange 109 | CalendarView.daySelectedTextColor = UIColor.white 110 | CalendarView.todayBackgroundColor = UIColor(white: 0.0, alpha: 0.3) 111 | CalendarView.todayTextColor = UIColor.white 112 | CalendarView.otherMonthBackgroundColor = UIColor.clear 113 | CalendarView.otherMonthTextColor = UIColor(white: 1.0, alpha: 0.3) 114 | CalendarView.dayTextColor = UIColor(white: 1.0, alpha: 0.6) 115 | CalendarView.dayBackgroundColor = UIColor.clear 116 | CalendarView.weekLabelTextColor = UIColor(white: 1.0, alpha: 0.3) 117 | 118 | return true 119 | } 120 | } 121 | ``` 122 | 123 | #### Selected date on swipe 124 | 125 | By default the first day of the month is automatically selected when the user swipes 126 | to a different month. You can customize this behavior by modifying the `selectedDayOnPaged` 127 | property of your `CalendarView` instance: 128 | 129 | ```swift 130 | public var selectedDayOnPaged: Int? = 1 131 | ``` 132 | 133 | If set to `nil`, no day will be automatically selected on swipe. 134 | 135 | ## Author 136 | 137 | Nate Armstrong, natearmstrong2@gmail.com 138 | 139 | ## Update to Swift 4 140 | 141 | A&D Progress aka verebes, info@adprogress.co.uk 142 | 143 | ## License 144 | 145 | CalendarView is available under the MIT license. See the LICENSE file for more info. 146 | -------------------------------------------------------------------------------- /screens/demo.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/armstrongnate/CalendarView/f95c89a83f6a81bcafa6cf1e8eaf595161d33946/screens/demo.gif -------------------------------------------------------------------------------- /screens/screenshot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/armstrongnate/CalendarView/f95c89a83f6a81bcafa6cf1e8eaf595161d33946/screens/screenshot.png --------------------------------------------------------------------------------