276 Commits

Author SHA1 Message Date
Yarden Eitan
654c6cfdd7 [NavigationBar] Deprecate typography themer APIs.
PiperOrigin-RevId: 333366922
2020-09-23 14:10:35 -07:00
Yarden Eitan
2294616a4d [NavigationBar] Deprecate color themer APIs.
PiperOrigin-RevId: 333366577
2020-09-23 14:01:52 -07:00
Jeff Verkoeyen
fbb1f20aa2 Internal change
PiperOrigin-RevId: 332151481
2020-09-16 21:01:21 -07:00
Bryan Oltman
36430632ed [NavigationBar] Add example to demonstrate how to to set source for popover alert on iPad.
PiperOrigin-RevId: 327823139
2020-08-21 09:36:02 -07:00
Bryan Oltman
e28711a930 [NavigationBar] Delete supplemental code from Swift examples
PiperOrigin-RevId: 327653048
2020-08-20 10:37:42 -07:00
Jeff Verkoeyen
d7ff705337 Drop support for iOS 9.
PiperOrigin-RevId: 326015653
2020-08-11 07:21:40 -07:00
Andrew Overton
07c46757cc Replace material.io API doc links with links to the relevant header f…
This PR replaces API links containing "/api-docs/" with links to suitable header files in GitHub because the site previously linked to is being taken down and replaced with something that won't handle API docs.

Closes https://github.com/material-components/material-components-ios/pull/10045

COPYBARA_INTEGRATE_REVIEW=https://github.com/material-components/material-components-ios/pull/10045 from andrewoverton:replace-mio-api-docs-with-github-links 0d6e56cc11d0c147366a4f6cde829d8b51567ecc
PiperOrigin-RevId: 323424362
2020-07-27 13:09:23 -07:00
Jeff Verkoeyen
b380dc5897 [NavigationBar] Mark more apis as to-be-deprecated.
PiperOrigin-RevId: 318869458
2020-06-29 12:32:34 -07:00
Andrew Overton
0a36a3a12b [MDC-iOS] Fix broken links
This CL fixes some longstanding and some newly broken links.

PiperOrigin-RevId: 311351416
2020-05-13 10:09:44 -07:00
Jeff Verkoeyen
9e3ab8703b [NavigationBar] Add example snapshot tests.
PiperOrigin-RevId: 309345877
2020-04-30 19:36:22 -07:00
Andrew Overton
7814b0c460 Replace App Bar docs
This PR replaces the AppBar README. The content is mostly the same, I just had to restructure it in order to fit the new template.

Closes https://github.com/material-components/material-components-ios/pull/9981

PiperOrigin-RevId: 309097690
2020-04-29 14:32:52 -07:00
Wenyu Zhang
a3381717f7
Fix the bazel BUILD files and snapshot that were restored unintentionally.(#9983) 2020-04-29 11:00:00 -04:00
Randall Li
0100cfe414 [MDC-iOS/BottomSheet] Fix dismissOnDraggingDownSheet behavior
The bottom sheet incorrectly allowed the sheet to be drag dismissed when `dismissOnDraggingDownSheet` was set to NO.

This change permits the gesture to dismiss to begin but prevents it from actually closing the sheet.

https://github.com/material-components/material-components-ios/issues/9723

Closes https://github.com/material-components/material-components-ios/pull/9885

PiperOrigin-RevId: 307802500
2020-04-22 06:21:26 -07:00
Jeff Verkoeyen
8abbb099a9 Delete all bazel support.
We no longer support bazel.

This PR deletes everything related to bazel support from our repo.

Closes https://github.com/material-components/material-components-ios/pull/9968

PiperOrigin-RevId: 306227127
2020-04-13 07:13:47 -07:00
Cody Weaver
fdf87c5995 [MDC/ColorScheme] Remove usage of init within MDC.
We recommend using `initWithDefaults` and we should follow the recommendation. This change removes all usage of `init` within MDC components in order to let us remove that initializer from the public surface.

PiperOrigin-RevId: 302958447
2020-03-25 13:36:51 -07:00
Jeff Verkoeyen
23878968f4 [NavigationBar] Remove default insets for leading titles.
After this change, the default behavior for MDCNavigationBar's titleInsets property will be dynamic. In leading mode, the default insets will be 0,0,0,0, while in centered mode the title insets will continue to be 0,16,0,16. If the titleInsets property is explicitly set then the explicitly set value will be preferred indefinitely.

PiperOrigin-RevId: 301632853
2020-03-18 11:41:35 -07:00
Tony Lai
8a3118161c Problem: The title label does not resize in an edge case when the user enables bold text in settings->display & brightness and then opening the app if the title label was already on the screen.
Root cause: The title label's size is calculated with the text and currently it does not recalculate upon the app entering the foreground

Solution: Force MDCAppNavigationBar to layout subviews on app entering foreground
PiperOrigin-RevId: 301604933
2020-03-18 09:47:13 -07:00
featherless
162a063bda
[bazel] Remove all unused mdc_objc_library loads. (#9376)
Found by searching for all references to `\bmdc_objc_library` and removing load statements from files that only returned one result.

Clean up as part of https://github.com/material-components/material-components-ios/issues/9363
2020-01-02 14:34:36 -05:00
featherless
0a0bc4b47b
[automated] Ran buildifier on all BUILD files. (#9366)
```
find . -name BUILD | xargs buildifier
```

This is in preparation of https://github.com/material-components/material-components-ios/issues/9363
2020-01-02 10:05:07 -05:00
featherless
5425884431
[examples] Annotate all catalogShouldHideNavigation invocations with @objc. (#8791)
Context:

Due to changes in the Swift runtime over the past years, methods that are considered "optional" in Objective-C need to have @objc annotations in order for Objective-C to be able to perform `respondsToSelector:` invocations.

Problem:
Many of our examples had not annotated their `catalogShouldHideNavigation` methods with the `@objc` annotation, causing the Catalog to wrap the examples in a container app bar view controller. The reason most of these examples would implement `catalogShouldHideNavigation` is because they are managing their own navigation (e.g. to demonstrate AppBar functionality), so this would often result in duplicate AppBars appearing in the example.

The fix:
All `catalogShouldHideNavigation` Swift methods have been annotated with `@objc`.

Fixes https://github.com/material-components/material-components-ios/issues/7576
Fixes https://github.com/material-components/material-components-ios/issues/7578
2019-11-12 16:54:55 -05:00
Robert Moore
8cebc56185
[*] Suppress deprecation warnings. (#8481)
Suppresses deprecation warnings either for implementations of our own
deprecated APIs or for their use in tests and elsewhere.

Part of #7537
2019-09-23 12:48:42 -04:00
Bryan Oltman
14febdb6a1
Delete unused MDCNavigationBar textAlignment property (#8411) 2019-09-09 16:42:36 -04:00
Wenyu Zhang
5f0fadc504
[NavigationBar] Stop running swift tests on Autobot. (#8272)
closes https://github.com/material-components/material-components-ios/issues/8271.

This change only affects Autobot runner. The work to re-enable this flag for Autobot is tracked in #8249.

### Context
Error occurs when testing using Bazel.
```
Test Case '-[components_NavigationBar_unit_test_swift_sources.NavigationBarButtonLayoutTests testChangingTitleFontUpdatesLayoutToMatchSizeThatFitsWidth]' started.
Child process terminated with signal 11: Segmentation fault
```
2019-08-12 11:54:23 -04:00
Robert Moore
bbdf2f459f
[NavigationBar] Use Starlark macros. (#8176)
Add more Starlark macro use to the BUILD file. Makes releasing easier.

Part of #8150
2019-08-02 10:28:48 -04:00
Wenyu Zhang
4191d03853
[NavigationBar] Add doc to note UIBarButtonItem cannot be used in UIPopoverPresentationController. (#8129)
Part of https://github.com/material-components/material-components-ios/issues/7907.
2019-07-30 16:11:12 -04:00
Cody Weaver
60c60f288c
[NavigationBar] Add MaterialElevation support. (#8115)
Adds conformance to MDCElevatable and MDCElevationOverriding to
MDCNavigationBar.

Closes #8016
2019-07-29 20:47:46 -07:00
Robert Moore
8dcf1e4a56
[*] Remove RTL snapshot method overrides. (#7996)
With #7986, most snapshot tests began overriding a method that had nearly the
same behavior.
2019-07-22 21:11:17 -07:00
Cody Weaver
3d9d2db94d
[NavigationBar] Add traitCollectionDidChange block. (#7918)
The navigation bar needs an API so clients can hook-in to trait collection changes. This additionally passes the navigation bar as a parameter so clients can modify the flexible header within the block.

Closes #7919
2019-07-15 12:43:00 -07:00
Yarden Eitan
3b4bc76524
[NavigationBar] Adds the Ripple behavior to NavigationBar. (#7602)
## Related links
* Bug: Closes #7379 
* Ripple: [Ripple](https://github.com/material-components/material-components-ios/tree/develop/components/Ripple)

## Introduction
This PR allows enabling the Ripple Behavior for [`MDCNavigationBar`](https://github.com/material-components/material-components-ios/tree/develop/components/NavigationBar) by way of `MDCButtonBar` by enabling the ripple behavior of the internal `MDCButton`s. This behavior is an opt in flag property added to MDCNavigationBar, `enableRippleBehavior`.  This improves the visual touch feedback for our users as MDCInkView didn't support our current motion guidelines. We are also marking any of the Ink APIs ToBeDeprecated as part of the [Deprecation Policy](cb6b8e9599/contributing/deprecation_policy.md (step-4-add-a-comment-to-the-api-indicating-that-it-will-be-deprecated)).

## Videos
| Before | After |
| - | - |
|![oldRipple](https://user-images.githubusercontent.com/4066863/59468585-707e9980-8e00-11e9-8eb4-f6709ea3af94.gif)|![newRipple](https://user-images.githubusercontent.com/4066863/59468588-72e0f380-8e00-11e9-992f-9fecc8383dd7.gif)|
2019-06-15 17:53:35 -04:00
Robert Moore
225decbfb0
[Buttons] Fix fallback behavior for Dynamic Type. (#7514)
The `titleFontForState:` API did not correctly reflect the rendered font
when no explicit fonts were set via the MDCButton APIs. As a result,
calling `updateTitleFont` internally could result in a different font
being returned than what was displayed.

Moving the "fall back" and Dynamic Type behavior into the
`titleFontForState:` method allows more consistent behavior (reduces the
risk of deviations) and corrects the APIs to reflect what is rendered.
This change should result in no visible changes to clients (the rendered
fonts should remain the same), but will result in non-`nil` results
being returned from `titleFontForState:` to correctly reflect the
rendered font for a given state.

Part of #7492
2019-05-30 10:25:13 -04:00
featherless
f60a0b6a59
[NavigationBar] Add rectFor*Item APIs. (#7504)
These two new APIs make it possible to get the frame of the leading and trailing item views in a navigation bar. These APIs are primarily intended for use when needing to present popover or contextual elements that point to the views for individual navigation bar items.

Closes https://github.com/material-components/material-components-ios/issues/7248
2019-05-28 16:10:38 -04:00
featherless
aa62eeb107
[NavigationBar] Fix bug where titleView would disappear. (#7310)
Closes https://github.com/material-components/material-components-ios/issues/7207

Context
-------

UINavigationBar will attempt to steal a navigationItem's titleView property for its own use, even if the navigation bar is not visible. Our own MDCNavigationBar also wants to show the titleView instance but we can't stop UINavigationBar from stealing the titleView.

To protect against this behavior, MDCNavigationBar implements a "sandbag swap" of the titleView when it's assigned. UINavigationBar ends up stealing the sandbag away, while our MDCNavigationBar keeps an internal reference to the desired titleView.

Before this fix
---------------

The sandbag view would be swapped the first time titleView is assigned. If the same titleView was assigned to the navigationItem again, however, we would not swap it with a sandbag. The result is that navigationItem.titleView would be pointing at the actual view (not the sandbag) when UINavigationBar comes around to steal the titleView. The result is that the titleView would disappear from MDCNavigationBar.

After this fix
--------------

We now assign the sandbag view on every assignment, regardless of whether the view is the same or not.

I wrote a test to simulate the theft behavior of UINavigationBar. I verified that the test failed before this patch and that it passes after this patch. I also verified the original bug with the internal client's code and example.
2019-05-01 19:37:34 +03:00
featherless
a71a338460
[NavigationBar] Add titleView tests. (#7309)
These tests will help validate the fix for https://github.com/material-components/material-components-ios/issues/7207
2019-05-01 17:44:39 +03:00
Yarden Eitan
efe61588a6
update (#7246)
We need to add @objc annotations to colorScheme and typographyScheme instances in our Swift examples, because we moved to Swift 4.2, the respondsToSelector won't find `setColorScheme:` and `setTypographyScheme:` setters otherwise.
2019-04-23 10:21:14 -04:00
featherless
593d57f23c
[NavigationBar] Annotate themer APIs with the recommended APIs. (#7228)
Part of https://github.com/material-components/material-components-ios/issues/7108
2019-04-22 20:02:09 +03:00
Andrew Overton
c56d5d76d3
Add @objc annotations to get examples to show up in Dragons (#7168)
This is a follow up PR for #7166 adds @objc annotations to Swift catalogMetadata() methods, because the Swift 4 compiler no longer attempts to infer what methods should be visible to Objective-C. As a result of this change in the compiler, no Swift examples were showing up in Dragons after #7166. See this article: https://useyourloaf.com/blog/objc-warnings-upgrading-to-swift-4/ for additional context.
2019-04-17 21:35:43 -04:00
Andrew Overton
b38372192f
Update to Swift 4.2 (#7166)
This PR updates the Swift version to 4.2.

Partially resolves #6874.
2019-04-17 16:59:02 -04:00
ianegordon
861cebe7e1 Revert "[Typography] Dynamic Type 2.0 (#6733)" (#6848)
This reverts commit 648f2499e80a02de28a545a223cc50f00c715097.
2019-03-12 16:36:54 -04:00
Robert Moore
b1cab54a4f
[NavigationBar] Add basic Snapshot tests. (#6821)
Includes leading/trailing items, titleView, and RTL.

Fixes #6811
2019-03-11 21:40:05 -04:00
ianegordon
648f2499e8
[Typography] Dynamic Type 2.0 (#6733)
Next iteration of our Dynamic Type.

Mimics Apple's new APIs. (UIFontMetrics)
Adds MDCFontScalar to attach curves.
Adds UIFont category to expose fontScaledForCategory methods.
Adds new MDCTypographyScheme with scalable fonts.
Adds sample to demonstrate new curves.
2019-03-08 16:15:24 -05:00
Yarden Eitan
c4d24627ee
updated jazzy yaml files to include framework root (#6750)
We have had errors when generating the docs using jazzy specifically around components giving a fatal error around not finding imports when depending on other components. This is because each component for jazzy is isolated and on its own unless we provide the framework root. This caused our website generator to crash each time and fail to generate a new website.

This should resolve this problem.

QA=
Before the fix when running the website generator we got these errors:
```
/material-components-ios/components/BottomAppBar/src/MDCBottomAppBarView.h:17:9: fatal error: 'MaterialButtons.h' file not found
building site
building search index
^C/Library/Ruby/Gems/2.3.0/gems/rouge-3.1.1/lib/rouge/lexer.rb:458:in `load': Interrupt
	from /Library/Ruby/Gems/2.3.0/gems/rouge-3.1.1/lib/rouge/lexer.rb:458:in `load_lexer'
	from /Library/Ruby/Gems/2.3.0/gems/rouge-3.1.1/lib/rouge.rb:50:in `block in <top (required)>'
	from /Library/Ruby/Gems/2.3.0/gems/rouge-3.1.1/lib/rouge.rb:49:in `each'
	from /Library/Ruby/Gems/2.3.0/gems/rouge-3.1.1/lib/rouge.rb:49:in `<top (required)>'
	from /Library/Ruby/Gems/2.3.0/gems/jazzy-0.9.3/lib/jazzy/jazzy_markdown.rb:2:in `require'
	from /Library/Ruby/Gems/2.3.0/gems/jazzy-0.9.3/lib/jazzy/jazzy_markdown.rb:2:in `<top (required)>'
	from /Library/Ruby/Gems/2.3.0/gems/jazzy-0.9.3/lib/jazzy/doc.rb:7:in `require'
	from /Library/Ruby/Gems/2.3.0/gems/jazzy-0.9.3/lib/jazzy/doc.rb:7:in `<top (required)>'
	from /Library/Ruby/Gems/2.3.0/gems/jazzy-0.9.3/lib/jazzy/config.rb:5:in `require'
	from /Library/Ruby/Gems/2.3.0/gems/jazzy-0.9.3/lib/jazzy/config.rb:5:in `<top (required)>'
	from /Library/Ruby/Gems/2.3.0/gems/jazzy-0.9.3/lib/jazzy.rb:1:in `require'
	from /Library/Ruby/Gems/2.3.0/gems/jazzy-0.9.3/lib/jazzy.rb:1:in `<top (required)>'
	from /Library/Ruby/Gems/2.3.0/gems/jazzy-0.9.3/bin/jazzy:13:in `require'
	from /Library/Ruby/Gems/2.3.0/gems/jazzy-0.9.3/bin/jazzy:13:in `<top (required)>'
	from /usr/local/bin/jazzy:22:in `load'
	from /usr/local/bin/jazzy:22:in `<top (required)>'
	from /Library/Ruby/Gems/2.3.0/gems/bundler-2.0.1/lib/bundler/cli/exec.rb:74:in `load'
	from /Library/Ruby/Gems/2.3.0/gems/bundler-2.0.1/lib/bundler/cli/exec.rb:74:in `kernel_load'
	from /Library/Ruby/Gems/2.3.0/gems/bundler-2.0.1/lib/bundler/cli/exec.rb:28:in `run'
	from /Library/Ruby/Gems/2.3.0/gems/bundler-2.0.1/lib/bundler/cli.rb:463:in `exec'
	from /Library/Ruby/Gems/2.3.0/gems/bundler-2.0.1/lib/bundler/vendor/thor/lib/thor/command.rb:27:in `run'
	from /Library/Ruby/Gems/2.3.0/gems/bundler-2.0.1/lib/bundler/vendor/thor/lib/thor/invocation.rb:126:in `invoke_command'
	from /Library/Ruby/Gems/2.3.0/gems/bundler-2.0.1/lib/bundler/vendor/thor/lib/thor.rb:387:in `dispatch'
	from /Library/Ruby/Gems/2.3.0/gems/bundler-2.0.1/lib/bundler/cli.rb:27:in `dispatch'
	from /Library/Ruby/Gems/2.3.0/gems/bundler-2.0.1/lib/bundler/vendor/thor/lib/thor/base.rb:466:in `start'
	from /Library/Ruby/Gems/2.3.0/gems/bundler-2.0.1/lib/bundler/cli.rb:18:in `start'
	from /Library/Ruby/Gems/2.3.0/gems/bundler-2.0.1/exe/bundle:30:in `block in <top (required)>'
	from /Library/Ruby/Gems/2.3.0/gems/bundler-2.0.1/lib/bundler/friendly_errors.rb:124:in `with_friendly_errors'
	from /Library/Ruby/Gems/2.3.0/gems/bundler-2.0.1/exe/bundle:22:in `<top (required)>'
	from /usr/local/bin/bundle:22:in `load'
	from /usr/local/bin/bundle:22:in `<main>'
/material-components-site-generator/scripts/lib/reporter.js:36
      throw e;
      ^

Error: Command failed: bundle exec jazzy         --output "/material-components-site-generator/.stage/ios/catalog/bottomnavigation/api-docs/"         --theme "/material-components-site-generator/ios-api-docs-src/theme"         --head '/components'         --use-safe-filenames
    at checkExecSyncError (child_process.js:601:13)
    at execSync (child_process.js:641:13)
    at JazzyApiGenerator.build (/material-components-site-generator/scripts/lib/jazzy-api-generator.js:34:5)
    at PlatformSite.generateApiDocs (/material-components-site-generator/scripts/lib/platform-site.js:212:17)
    at platformSites.forEach (/material-components-site-generator/scripts/build:86:14)
    at Array.forEach (<anonymous>)
    at reporter.step (/material-components-site-generator/scripts/build:85:21)
    at Reporter.step (/material-components-site-generator/scripts/lib/reporter.js:32:22)
    at Object.<anonymous> (/material-components-site-generator/scripts/build:84:14)
    at Module._compile (module.js:652:30)
    at Object.Module._extensions..js (module.js:663:10)
    at Module.load (module.js:565:32)
    at tryModuleLoad (module.js:505:12)
    at Function.Module._load (module.js:497:3)
    at Function.Module.runMain (module.js:693:10)
    at startup (bootstrap_node.js:191:16)
    at bootstrap_node.js:612:3
```
Now we no longer get fatal errors or crash when running the script.
2019-03-01 16:52:02 -05:00
Robert Moore
800188a649
{clang-format} Format the components. (#6347)
This is a follow-up to https://github.com/material-components/material-components-ios/pull/6027

```
find components \( -name "*.h" -or -name "*.m" \) | xargs clang-format -i
```
2019-01-23 11:08:43 -05:00
Robert Moore
1a7b3f8f36
[NavigationBar] Add examples to bazel. (#6425) 2019-01-22 08:39:25 -05:00
Yarden Eitan
2803125b2c
ran clang-format (#6027) 2019-01-11 13:23:51 -05:00
Robert Moore
de31d9f2e0 [NavigationBar] Remove duplicate test helper. (#6196)
A bad merge resulted in a duplicated test helper method. Continuous builds are
failing.

Follow-up to #6136
2019-01-08 10:54:21 -05:00
Cody Weaver
59164eae27 [NavigationBar] Refactor tests to not repeat the same code multiple times (#6136)
### Context
In working on #6118  I noticed some of the test had the same setup in the _Given_ section.  This duplication of code reduces the readability of the code and the test added in #6118 will also use this function to further reduce the duplication of _Given_ in the tests.
### The problem
Some of the test had the same _Given_.
### The fix
Move the duplicate code to it's own function to improve readability and make it so test later can be simpler.
### Related bug
This was noticed when working on #6133
2019-01-07 16:59:30 -05:00
Cody Weaver
aa2d3908f5
[NavigationBar] Add inset property for title view (#6118)
### Context
Currently navigation bar has the horizontal padding of 16 on both sides as a constant. A client may meed to have a spacing of 8 on both sides, 24 on both sides or 20 on one side and 0 on the other. Currently the docs say "_The title view's width will equal the navigation bar's width minus any space consumed by the leading and trailing buttons._" - MDCTitleViewLayoutBehaviorFill but if the titleBehavior is set to this value then it fills the navigation bar's width _minus 32_ minus any space consumed by the leading and trailing buttons. 
### The problem
In MDCTitleViewLayoutBehaviorFill it doesn't _Fill_ the navigation bar and isn't customizable.
### The fix
Expose the UIEdgeInset value that is used to layout the titleView.
### Related bug
Closes #6133
2018-12-28 08:28:31 -08:00
Robert Moore
5b1943dd78
[bazel] Use mdc_extension_objc_library in BUILD (#6089)
Changing all component extension targets to use the new macro
`mdc_extension_objc_library` to reduce boilerplate in the target
definitions.
2018-12-20 17:14:19 -05:00
featherless
003cf8bcd9
[automated] Make mdc_unit_test_suite's name explicit. (#6080)
This change was automatically generated by running a find replace of the following strings:

```
mdc_unit_test_suite(

mdc_unit_test_suite(
    name = "unit_tests",
```

And then running buildifier to enforce style:

    find . -name BUILD | xargs ~/buildifier
2018-12-20 12:36:05 -05:00
featherless
a247edea76
Update bazel to 0.20 and all dependencies as a result (#5926)
Kokoro's Bazel version has been increased from 0.11.0 to 0.20.0

As part of this change, the `.kokoro` bazel header rewrite phase's rewrites for MDF libraries has been made less generic because MDFInternationalization can now be imported using framework-style imports as expected. MDFTextAccessibility does not yet have this functionality, so we still need to rewrite it.

Version changes in the bazel workspace:

- bazelbuild/rules_apple has been increased from 0.3.0 to 0.9.0
- bazel_skylib has been increased from 0.2.0 to 0.6.0
- bazelbuild/rules_swift has been added at 0.4.0
- xctestrunner has been increased from 0.2.1 to 0.2.5
- material_internationalization_ios has been increased from v1.0.4 to v2.0.1
- material_text_accessibility_ios has been increased from fd570d71ae0124c75ad5af00e6b8b4b1668d5e40 to v2.0.0
- motion_interchange_objc has been increased from v1.6.0 to v2.0.0
- motion_animator_objc has been increased from v2.5.0 to v3.0.0
- motion_transitioning_objc has been increased from v5.0.0 to v6.0.0
- Swift version has been pinned to 3 for all swift libraries.

buildifier was ran on all affected build targets.

This unblocks https://github.com/material-components/material-components-ios/pull/5550.
2018-12-13 14:27:43 -05:00