Skip to content

Commit 02d2efa

Browse files
committed
Don't show time across date boundaries
1 parent dfbc01c commit 02d2efa

File tree

4 files changed

+21
-8
lines changed

4 files changed

+21
-8
lines changed

Diff for: screenshots/truth/date/datetime.png

-32 Bytes
Loading

Diff for: screenshots/truth/date/timedate.png

1.53 KB
Loading

Diff for: src/date/TembaDate.ts

+3-1
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,9 @@ export class TembaDate extends RapidElement {
6464
const hours = Math.abs(
6565
this.datetime.diffNow().milliseconds / 1000 / 60 / 60
6666
);
67-
if (hours < 24) {
67+
68+
const day = this.datetime.get('day');
69+
if (hours < 24 && day == DateTime.now().get('day')) {
6870
formatted = this.datetime.toLocaleString(Display.time);
6971
} else if (hours < 24 * 365) {
7072
formatted = this.datetime.toFormat(Display.day);

Diff for: test/temba-date.test.ts

+18-7
Original file line numberDiff line numberDiff line change
@@ -15,15 +15,15 @@ export const getDate = async (attrs: any = {}) => {
1515
return (await getComponent(TAG, attrs)) as TembaDate;
1616
};
1717

18-
mockNow('2022-12-02T21:00:00.000000-07:00');
18+
mockNow('2022-12-02T21:00:00.000000');
1919

2020
describe('temba-date', () => {
2121
beforeEach(() => {
2222
loadStore();
2323
});
2424

2525
it('renders default', async () => {
26-
const date = await getDate({ value: '1978-11-18T02:22:00.000000-07:00' });
26+
const date = await getDate({ value: '1978-11-18T02:22:00.000000' });
2727
const dateString = (
2828
date.shadowRoot.querySelector('.date') as HTMLSpanElement
2929
).innerText;
@@ -34,7 +34,7 @@ describe('temba-date', () => {
3434

3535
it('renders duration', async () => {
3636
const date = await getDate({
37-
value: '1978-11-18T02:22:00.000000-07:00',
37+
value: '1978-11-18T02:22:00.000000',
3838
display: 'duration'
3939
});
4040
const dateString = (
@@ -47,23 +47,34 @@ describe('temba-date', () => {
4747

4848
it('renders datetime', async () => {
4949
const date = await getDate({
50-
value: '1978-11-18T02:22:00.000000-07:00',
50+
value: '1978-11-18T02:22:00.000000',
5151
display: 'datetime'
5252
});
5353
const dateString = (
5454
date.shadowRoot.querySelector('.date') as HTMLSpanElement
5555
).innerText;
5656

5757
await assertScreenshot('date/datetime', getClip(date));
58-
expect(dateString).to.equal('11/18/1978, 9:22 AM');
58+
expect(dateString).to.equal('11/18/1978, 2:22 AM');
59+
});
60+
61+
it('renders timedate', async () => {
62+
const date = await getDate({
63+
value: '2022-12-01T21:30:00.000000',
64+
display: 'timedate'
65+
});
66+
const dateString = (
67+
date.shadowRoot.querySelector('.date') as HTMLSpanElement
68+
).innerText;
69+
await assertScreenshot('date/timedate', getClip(date));
70+
expect(dateString).to.equal('Dec 1');
5971
});
6072

6173
it('renders inline', async () => {
6274
const el: HTMLElement = await fixture(html`
6375
<span
6476
>Your birthday is
65-
<temba-date value="1978-11-18T02:22:00.000000-07:00"></temba-date
66-
>!</span
77+
<temba-date value="1978-11-18T02:22:00.000000"></temba-date>!</span
6778
>
6879
`);
6980

0 commit comments

Comments
 (0)