Tom Hacohen
5301b546df
LoginGate: move to be a function component.
2020-02-21 15:21:28 +02:00
Tom Hacohen
5f78657e51
Fix crash with associate accounts.
...
Associates accounts can't create journals, and the web client was
failing for them because the creation error wasn't being handled
correctly.
2020-02-17 17:25:42 +02:00
Tal Leibman
e0904eea02
RRule: layout and style changes
2020-02-14 16:48:03 +02:00
Tal Leibman
0381d2816b
JournalEdit: add ColorPicker and imporve validation
...
Fixes #75
2020-02-14 14:22:01 +02:00
Tal Leibman
7b0264fc50
Widgets: ColorPicker
2020-02-14 14:22:01 +02:00
Tal Leibman
643010ccfe
JournalsList: show journal color
2020-02-14 14:22:01 +02:00
Andrew P Maney
399724f7e4
DateTimePicker: change to a more usable date and time picker
...
Note by @tasn: I actually wrote this from scratch, but slightly based it
on work by @AbleLincoln in #74 which is why I set him as the author.
Fixes #9
2020-02-14 13:22:33 +02:00
Tom Hacohen
2f199ce0c9
JournalEdit: change to react-hooks.
2020-02-14 12:32:53 +02:00
Tom Hacohen
b76a909b7a
Login Form: change the label to Email from Username.
2020-02-10 15:40:23 +02:00
Tom Hacohen
a4c8fd6688
Helpers: fix color conversion functions and add tests.
2020-02-05 12:43:50 +02:00
Tom Hacohen
cac9b21135
AddressBook: fix search when there are contacts with a full name.
2020-01-26 10:48:26 +02:00
Tom Hacohen
28c3a8395b
Logout: invalidate the auth token after logging out.
2020-01-23 18:41:11 +02:00
Tom Hacohen
28b11e59ff
AddressBook: fix crash when fullname is undefined.
2020-01-22 21:42:08 +02:00
Tom Hacohen
9ec759bd44
Import: mime type detection is unreliable, allow filetype matching too.
2020-01-22 21:41:44 +02:00
Tom Hacohen
4f3c8895f3
Import: hopefully fix infinite loading on import.
2020-01-22 13:16:22 +02:00
Tom Hacohen
d0ec686592
Debug: added a debug route to let people easily inspect their journals.
...
Useful when people are helping with debugging.
2020-01-22 12:47:04 +02:00
Tom Hacohen
8567dd70b7
Import: better handle rejected files.
2020-01-20 17:17:35 +02:00
Tom Hacohen
d8a0aa19ca
Import: fix error handling to stop the loading and print the error.
2020-01-20 17:01:54 +02:00
Tom Hacohen
d268c0fab6
Event Edit: fix handling of recurring events with an until field.
...
It was slightly the wrong type because of typings were wrong. We now explicitly
convert it.
2020-01-14 22:46:12 +02:00
Tom Hacohen
7b22e0e76b
RRule: move filtering of empty values to inside the widget.
2020-01-14 22:40:07 +02:00
Tom Hacohen
8440cac7e8
rrule: fix spacing and locations of code.
2020-01-14 22:19:58 +02:00
Tom Hacohen
16255e4cad
RRule: fix indentation.
2020-01-14 22:19:58 +02:00
Tom Hacohen
e2b732f212
RRule: remove redundant checks.
2020-01-14 22:19:58 +02:00
Tom Hacohen
af65d20444
rrule: handle empty/undefined values
2020-01-14 22:19:58 +02:00
Tom Hacohen
94d56c4715
rrule: force the interval to be 1 and never empty.
2020-01-14 22:19:58 +02:00
Tom Hacohen
116883e207
ical.js types: fix ICAL.Recur's type and adjust code accordingly
2020-01-14 22:19:58 +02:00
Tom Hacohen
dfe5518f38
RRule: improve design a bit
2020-01-14 22:19:58 +02:00
Tom Hacohen
4b20a0db5f
Event Edit: simplify code and make it persist the rrule
...
While at it, also fix an issue with byday needing to be string[] and not
number[]
2020-01-14 22:19:58 +02:00
Tal Leibman
3897d38fb0
components: EventEdit removed whitespace changes
2020-01-14 22:19:58 +02:00
Tal Leibman
0661190aef
components: EventEdit state name "rruleOptions" to "rrule"
2020-01-14 22:19:58 +02:00
Tal Leibman
bd98d833aa
components: EventEdit warning message
2020-01-14 22:19:58 +02:00
Tal Leibman
0657e79e45
widgets: name change "RRuleEteSync" to "RRule"
2020-01-14 22:19:58 +02:00
Tal Leibman
c7c8b09e41
widgets: RRule layout and styles
2020-01-14 22:19:58 +02:00
Tal Leibman
2dcf86238b
widgets: RRule change bymonth and byday to multi Select
2020-01-14 22:19:58 +02:00
Tal Leibman
3f05e43439
widgets: RRule disable complex recurring event options
2020-01-14 22:19:58 +02:00
Tal Leibman
86bd2a5420
widgets: RRule support bymonth repeat for multiple values
2020-01-14 22:19:58 +02:00
Tal Leibman
7b17a14a84
components: EventEdit add RRule widget
2020-01-14 22:19:58 +02:00
Tal Leibman
8d9482b720
widgets: change RRule to get type ICAL.Recur as prop
...
in ICAL.Recur many values are an array of numbers currently the
RRule widget only handle multiple values for weekday.
this change is not final since it may cause user data to be lost
when editing an existing event
2020-01-14 22:19:58 +02:00
Tal Leibman
aae9cd5d16
EventEdit: import RRuleEteSync
2020-01-14 22:19:58 +02:00
Tal Leibman
265f2a091b
Event Edit: change container to Fragment
2020-01-14 22:19:58 +02:00
Tal Leibman
3f1194f8bd
widgets: RRuleOptions to match RecurData in ical.js from etesync IOS
2020-01-10 15:20:57 +02:00
Tal Leibman
47ba581a24
widgets: change RRule wrapper to React.Fragment
2020-01-10 15:20:57 +02:00
Tom Hacohen
e88adc60e3
Update ical.js types.
2020-01-10 15:04:12 +02:00
Tom Hacohen
7e6ed69e35
SyncGate: fix issue with empty journals not working.
...
Before this we weren't able to import/add entries to empty journals.
This was introduced in c6eafadb8b
2020-01-05 11:17:22 +02:00
Tom Hacohen
db75d82322
Import: make sure imported contacts/events/tasks have a uid.
...
Fixes #71 .
2020-01-04 23:26:36 +02:00
Tom Hacohen
b54f25eee9
Handle contacts with null for a uid.
...
It seems like we aren't setting a uid for contacts without one when importing
so it's possible to get ones without a uid.
Opened ticket #71 to track this issue.
2020-01-04 23:26:36 +02:00
Tal Leibman
e54e24d8c1
DateTimePicker : add disabled property
2020-01-04 17:38:23 +02:00
Tal Leibman
6446777c79
widgets: add RRule widget
...
First step towards fixing #50
RRule widget for repeating tasks and calendar events
2020-01-04 17:14:24 +02:00
Tom Hacohen
c6eafadb8b
Store actions fetchAll: cleanup and only fetch if there's new data.
2019-12-30 11:14:09 +02:00
Tom Hacohen
0dffd71276
Import Dialog: log potential import errors to console and close dialog.
2019-12-24 19:15:57 +02:00
Tom Hacohen
a9611f4117
Remove debug log that got committed.
2019-12-24 18:54:11 +02:00
Tom Hacohen
052543261f
Unify ICAL parsing and omit property group names.
...
The property groups were causing us issues and making it very hard
to handle these properties. And since we were not dealing with them
anyway, it's better to just remove them (standard allows this).
ical.js doesn't deal with them correctly, which is the source of this
problem. More info:
https://github.com/mozilla-comm/ical.js/issues/411
2019-12-24 01:00:39 +02:00
Tom Hacohen
b4634abff4
Fix new account setup.
...
We were getting a 404 because the user info doesn't exist, and were erroring
because of it, which was not calling the then (just the catch).
We now handle the error condition.
2019-11-28 15:42:28 +02:00
Tom Hacohen
583e9090d8
TaskList: make it possible to view completed items.
2019-11-26 22:47:08 +02:00
Tom Hacohen
1eb561342f
TaskEdit: fix editing of tasks without a start/due/completion date.
2019-11-26 22:35:56 +02:00
Tom Hacohen
ec5d1faaa1
TaskList: convert to a pure functional component.
2019-11-26 22:28:04 +02:00
Tom Hacohen
1d792add0f
Update ical.js types.
2019-11-25 16:22:25 +02:00
Tom Hacohen
3730300411
Event/task edit: handle timezones.
...
Fixes #29
2019-11-24 18:49:40 +02:00
Tom Hacohen
bfc54018ce
Widgets: add TimezonePicker widget.
2019-11-24 18:49:40 +02:00
Tom Hacohen
6a0fc11ab3
Event/task edit: improve design.
2019-11-24 18:49:40 +02:00
Tom Hacohen
fed79fcfea
Task/event: show current timezone next to events with timezones.
...
We were previously showing the original timezone which was confusing.
2019-11-24 18:49:40 +02:00
Tom Hacohen
52d4ad9967
ImportDialog: adjust to the changes in the previous commit.
2019-11-24 18:49:40 +02:00
Tom Hacohen
d1b3d82024
pim-types: sync from iOS app.
...
Mainly about adding timezone support.
2019-11-24 18:49:40 +02:00
Tom Hacohen
80e249c958
Task list: fix typing.
2019-11-24 18:49:40 +02:00
Tom Hacohen
9ae370ac01
Task list: simplify sort function.
2019-11-24 18:49:40 +02:00
Tom Hacohen
d3b4145269
Use the new UNSAFE_componentWillReceiveProps function name
...
We should redesign these, but until then, this should unbreak linting.
2019-11-24 18:49:40 +02:00
Tom Hacohen
58e432efec
Import: reset loading state when done importing.
2019-11-24 18:49:40 +02:00
Tal Leibman
ad10d75dab
Journals List Import: remove add journal button
2019-11-23 18:05:28 +02:00
Tom Hacohen
284cb2413a
Journals List Import: fix type error.
2019-11-23 17:21:33 +02:00
Tal Leibman
4318e064b3
Journal Import: add an import link to the sidebar
...
Fixes #55
2019-11-23 17:16:36 +02:00
Tal Leibman
a8bdc076d9
JournalsList: change to a functional component
2019-11-23 15:54:08 +02:00
Tom Hacohen
2c02ec839e
List: don't set the pointer cursor for non-clickable items.
2019-11-23 11:58:07 +02:00
Tom Hacohen
e407976e58
Journal Entries: make parse errors non-fatal here too.
...
This is in continuation to 9abb3dcad9
.
Fixes #48
2019-11-20 21:01:46 +02:00
Tom Hacohen
fc4b3294f1
Login screen: gracefully handle wrong encryption passwords.
2019-11-20 16:51:06 +02:00
Tom Hacohen
8656d1076f
Update react-big-calendar.
2019-11-18 16:45:37 +02:00
Tom Hacohen
fcf8f1af58
Upgrade material-ui.
2019-11-18 16:38:14 +02:00
Tom Hacohen
9abb3dcad9
Make parse errors non-fatal
...
Before this patch, parse errors would make the whole app stop and show
an error. Now we handle them more gracefully by showing the parsing
errors in a non-fatal way.
This was implemented in a hacky way, and will be changed once the web
app is refactored to better resemble the iOS app.
Fixes #48 .
2019-11-18 13:12:50 +02:00
Tom Hacohen
95944d87b5
PrettyError: redesign to make more reusable.
2019-11-18 12:39:18 +02:00
Tom Hacohen
8fe360751e
Address book: handle contact names with length 0.
...
We were handling non existent contact names, but not
ones with length 0. This fixes this.
Fixes #62 .
2019-11-17 19:31:03 +02:00
Tom Hacohen
fbb3aa154c
Login Form: fix new user detection following promise middleware changes.
2019-11-12 22:31:45 +02:00
Tom Hacohen
7edb1abfb4
promise middleware: fix to correctly return an error promise on error.
2019-11-12 16:42:36 +02:00
Tom Hacohen
c7d4a15f5f
Move the etesync-js API to its own repo.
2019-11-12 09:55:35 +02:00
Tom Hacohen
f3de2a641a
eslint: changed unused-args to always warn.
2019-11-07 12:02:51 +02:00
Tom Hacohen
566261b91a
lint: fix all remaining warnings!
2019-11-07 07:55:51 +02:00
Tom Hacohen
ab5495e221
Eslint: update rules and adjust code accordingly.
2019-11-06 23:00:32 +02:00
Tom Hacohen
29d4153e60
Fix some tsserver suggestions.
2019-11-06 10:37:56 +02:00
Tom Hacohen
18c7dcc816
EteSync test: fix eslint errors.
2019-11-06 00:41:36 +02:00
Tom Hacohen
b9aa69aba2
EteSync: update from iOS repo.
2019-11-06 00:24:49 +02:00
Tom Hacohen
11dd883f5f
lint: replace tslint with eslint and fix new warnings and errors.
2019-11-06 00:18:17 +02:00
Tom Hacohen
f29edf1563
Update ical.js types.
2019-11-05 18:19:28 +02:00
Tom Hacohen
ad9b0717f8
Fix eslint complaint.
2019-11-05 18:19:28 +02:00
Tom Hacohen
514f4ccddb
Login: show text about setting the encryption key on first login.
2019-10-29 16:11:38 +02:00
Tom Hacohen
25afd02ba5
Remove recompose dep and use React.memo instead.
2019-10-24 11:20:43 +03:00
Tom Hacohen
a252078d65
Use the new getCryptoManager when editing journals/userInfos.
...
This also fixes an issue when editing and deleting journals after an encryption
password change.
2019-10-24 11:05:09 +03:00
Tom Hacohen
f5df8cb4e1
api: import updated version from the ios repo.
...
Improves types and adds functionality to getting crypto managers.
2019-10-24 10:45:43 +03:00
Tom Hacohen
5aa9640987
store: fix fetchCount to include fetching entries and userInfo.
2019-10-20 13:04:07 +03:00
Tom Hacohen
77c70ffae6
Remove redundant sjcl collectors.
...
We don't need this because we rely on the browser to provide
good enough random values (which browsers do nowadays).
2019-10-19 11:14:29 +03:00
Tom Hacohen
631a8d1f25
Fix typing issues in EteSync.ts
2019-10-17 21:41:36 +03:00
Tom Hacohen
ba8d899d5d
Fix eslint warnings.
2019-10-17 00:02:18 +03:00
Claus Niesen
ff47e38845
Fix display of recurring events.
...
Fixes #56
2019-10-15 09:52:00 +03:00