Tom Hacohen
c907285d78
Journal sharing: support sharing journals as read-only.
5 years ago
Tom Hacohen
8e790ed666
Fix bug with web client not remembering a user is logged in.
...
Was introduced in 118d26ce83
5 years ago
Tom Hacohen
67c5275fa8
Fingerprint: add security fingerprint to settings page
...
I was initially trying to add it to the side menu. For a reason I just
can't understand the dialog wouldn't show from there, and I
unfortunately don't have time to debug it at the moment. Here it just
works as is "good enough" for now.
5 years ago
Tom Hacohen
fe42a3c2ed
Add migrations for the changes in the store's structure
5 years ago
Tom Hacohen
6ed0f02abc
SyncGate: move to react hooks.
5 years ago
Tom Hacohen
06bf21248e
Add journal and entry error handling to the global error handling.
5 years ago
Tom Hacohen
90392fe432
Change entries to also not be a complex fetch type.
5 years ago
Tom Hacohen
2946be464c
Change journals to also not be a complex fetch type.
5 years ago
Tom Hacohen
23048cfa63
Change userInfo to also not be a complex fetch type.
5 years ago
Tom Hacohen
118d26ce83
Simplify the fetch credentials structure to not use the fetch record.
...
It was thrashing the redux store. We made the same change for the ios app.
5 years ago
Tom Hacohen
5301b546df
LoginGate: move to be a function component.
5 years ago
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.
5 years ago
Tal Leibman
e0904eea02
RRule: layout and style changes
5 years ago
Tal Leibman
0381d2816b
JournalEdit: add ColorPicker and imporve validation
...
Fixes #75
5 years ago
Tal Leibman
7b0264fc50
Widgets: ColorPicker
5 years ago
Tal Leibman
643010ccfe
JournalsList: show journal color
5 years ago
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
5 years ago
Tom Hacohen
2f199ce0c9
JournalEdit: change to react-hooks.
5 years ago
Tom Hacohen
b76a909b7a
Login Form: change the label to Email from Username.
5 years ago
Tom Hacohen
a4c8fd6688
Helpers: fix color conversion functions and add tests.
5 years ago
Tom Hacohen
cac9b21135
AddressBook: fix search when there are contacts with a full name.
5 years ago
Tom Hacohen
28c3a8395b
Logout: invalidate the auth token after logging out.
5 years ago
Tom Hacohen
28b11e59ff
AddressBook: fix crash when fullname is undefined.
5 years ago
Tom Hacohen
9ec759bd44
Import: mime type detection is unreliable, allow filetype matching too.
5 years ago
Tom Hacohen
4f3c8895f3
Import: hopefully fix infinite loading on import.
5 years ago
Tom Hacohen
d0ec686592
Debug: added a debug route to let people easily inspect their journals.
...
Useful when people are helping with debugging.
5 years ago
Tom Hacohen
8567dd70b7
Import: better handle rejected files.
5 years ago
Tom Hacohen
d8a0aa19ca
Import: fix error handling to stop the loading and print the error.
5 years ago
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.
5 years ago
Tom Hacohen
7b22e0e76b
RRule: move filtering of empty values to inside the widget.
5 years ago
Tom Hacohen
8440cac7e8
rrule: fix spacing and locations of code.
5 years ago
Tom Hacohen
16255e4cad
RRule: fix indentation.
5 years ago
Tom Hacohen
e2b732f212
RRule: remove redundant checks.
5 years ago
Tom Hacohen
af65d20444
rrule: handle empty/undefined values
5 years ago
Tom Hacohen
94d56c4715
rrule: force the interval to be 1 and never empty.
5 years ago
Tom Hacohen
116883e207
ical.js types: fix ICAL.Recur's type and adjust code accordingly
5 years ago
Tom Hacohen
dfe5518f38
RRule: improve design a bit
5 years ago
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[]
5 years ago
Tal Leibman
3897d38fb0
components: EventEdit removed whitespace changes
5 years ago
Tal Leibman
0661190aef
components: EventEdit state name "rruleOptions" to "rrule"
5 years ago
Tal Leibman
bd98d833aa
components: EventEdit warning message
5 years ago
Tal Leibman
0657e79e45
widgets: name change "RRuleEteSync" to "RRule"
5 years ago
Tal Leibman
c7c8b09e41
widgets: RRule layout and styles
5 years ago
Tal Leibman
2dcf86238b
widgets: RRule change bymonth and byday to multi Select
5 years ago
Tal Leibman
3f05e43439
widgets: RRule disable complex recurring event options
5 years ago
Tal Leibman
86bd2a5420
widgets: RRule support bymonth repeat for multiple values
5 years ago
Tal Leibman
7b17a14a84
components: EventEdit add RRule widget
5 years ago
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
5 years ago
Tal Leibman
aae9cd5d16
EventEdit: import RRuleEteSync
5 years ago
Tal Leibman
265f2a091b
Event Edit: change container to Fragment
5 years ago
Tal Leibman
3f1194f8bd
widgets: RRuleOptions to match RecurData in ical.js from etesync IOS
5 years ago
Tal Leibman
47ba581a24
widgets: change RRule wrapper to React.Fragment
5 years ago
Tom Hacohen
e88adc60e3
Update ical.js types.
5 years ago
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
5 years ago
Tom Hacohen
db75d82322
Import: make sure imported contacts/events/tasks have a uid.
...
Fixes #71 .
5 years ago
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.
5 years ago
Tal Leibman
e54e24d8c1
DateTimePicker : add disabled property
5 years ago
Tal Leibman
6446777c79
widgets: add RRule widget
...
First step towards fixing #50
RRule widget for repeating tasks and calendar events
5 years ago
Tom Hacohen
c6eafadb8b
Store actions fetchAll: cleanup and only fetch if there's new data.
5 years ago
Tom Hacohen
0dffd71276
Import Dialog: log potential import errors to console and close dialog.
5 years ago
Tom Hacohen
a9611f4117
Remove debug log that got committed.
5 years ago
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
5 years ago
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.
5 years ago
Tom Hacohen
583e9090d8
TaskList: make it possible to view completed items.
5 years ago
Tom Hacohen
1eb561342f
TaskEdit: fix editing of tasks without a start/due/completion date.
5 years ago
Tom Hacohen
ec5d1faaa1
TaskList: convert to a pure functional component.
5 years ago
Tom Hacohen
1d792add0f
Update ical.js types.
5 years ago
Tom Hacohen
3730300411
Event/task edit: handle timezones.
...
Fixes #29
5 years ago
Tom Hacohen
bfc54018ce
Widgets: add TimezonePicker widget.
5 years ago
Tom Hacohen
6a0fc11ab3
Event/task edit: improve design.
5 years ago
Tom Hacohen
fed79fcfea
Task/event: show current timezone next to events with timezones.
...
We were previously showing the original timezone which was confusing.
5 years ago
Tom Hacohen
52d4ad9967
ImportDialog: adjust to the changes in the previous commit.
5 years ago
Tom Hacohen
d1b3d82024
pim-types: sync from iOS app.
...
Mainly about adding timezone support.
5 years ago
Tom Hacohen
80e249c958
Task list: fix typing.
5 years ago
Tom Hacohen
9ae370ac01
Task list: simplify sort function.
5 years ago
Tom Hacohen
d3b4145269
Use the new UNSAFE_componentWillReceiveProps function name
...
We should redesign these, but until then, this should unbreak linting.
5 years ago
Tom Hacohen
58e432efec
Import: reset loading state when done importing.
5 years ago
Tal Leibman
ad10d75dab
Journals List Import: remove add journal button
5 years ago
Tom Hacohen
284cb2413a
Journals List Import: fix type error.
5 years ago
Tal Leibman
4318e064b3
Journal Import: add an import link to the sidebar
...
Fixes #55
5 years ago
Tal Leibman
a8bdc076d9
JournalsList: change to a functional component
5 years ago
Tom Hacohen
2c02ec839e
List: don't set the pointer cursor for non-clickable items.
5 years ago
Tom Hacohen
e407976e58
Journal Entries: make parse errors non-fatal here too.
...
This is in continuation to 9abb3dcad9
.
Fixes #48
5 years ago
Tom Hacohen
fc4b3294f1
Login screen: gracefully handle wrong encryption passwords.
5 years ago
Tom Hacohen
8656d1076f
Update react-big-calendar.
5 years ago
Tom Hacohen
fcf8f1af58
Upgrade material-ui.
5 years ago
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 .
5 years ago
Tom Hacohen
95944d87b5
PrettyError: redesign to make more reusable.
5 years ago
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 .
5 years ago
Tom Hacohen
fbb3aa154c
Login Form: fix new user detection following promise middleware changes.
5 years ago
Tom Hacohen
7edb1abfb4
promise middleware: fix to correctly return an error promise on error.
5 years ago
Tom Hacohen
c7d4a15f5f
Move the etesync-js API to its own repo.
5 years ago
Tom Hacohen
f3de2a641a
eslint: changed unused-args to always warn.
5 years ago
Tom Hacohen
566261b91a
lint: fix all remaining warnings!
5 years ago
Tom Hacohen
ab5495e221
Eslint: update rules and adjust code accordingly.
5 years ago
Tom Hacohen
29d4153e60
Fix some tsserver suggestions.
5 years ago
Tom Hacohen
18c7dcc816
EteSync test: fix eslint errors.
5 years ago
Tom Hacohen
b9aa69aba2
EteSync: update from iOS repo.
5 years ago
Tom Hacohen
11dd883f5f
lint: replace tslint with eslint and fix new warnings and errors.
5 years ago
Tom Hacohen
f29edf1563
Update ical.js types.
5 years ago
Tom Hacohen
ad9b0717f8
Fix eslint complaint.
5 years ago
Tom Hacohen
514f4ccddb
Login: show text about setting the encryption key on first login.
5 years ago
Tom Hacohen
25afd02ba5
Remove recompose dep and use React.memo instead.
5 years ago
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.
5 years ago
Tom Hacohen
f5df8cb4e1
api: import updated version from the ios repo.
...
Improves types and adds functionality to getting crypto managers.
5 years ago
Tom Hacohen
5aa9640987
store: fix fetchCount to include fetching entries and userInfo.
5 years ago
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).
5 years ago
Tom Hacohen
631a8d1f25
Fix typing issues in EteSync.ts
5 years ago
Tom Hacohen
ba8d899d5d
Fix eslint warnings.
5 years ago
Claus Niesen
ff47e38845
Fix display of recurring events.
...
Fixes #56
5 years ago
Tom Hacohen
41848aa7e3
Remove useless constructor
5 years ago
Tom Hacohen
21e7d7d822
Add missing img alt text.
5 years ago
Tom Hacohen
8d76e134e8
Contact: change the field copy button to use the correct icon.
5 years ago
Tal Leibman
6d45c31f98
Contacts: Add a button to copy fields to clipboard
...
Fixes #39
5 years ago
Tom Hacohen
ea67bb4b87
AddressBook: fix handling of contacts with empty names.
...
Fixes #49
5 years ago
Tom Hacohen
c0c5af0cab
Fix issue with different items across collections sharing the same uid
...
The existing code falsely (and accidentally) assumed that all items
(even across different collections) will have unique uids. This is a
false assumption, especially when importing one collection into the
other.
5 years ago
Tom Hacohen
e85d611aa6
Block sharing of old-style journals.
5 years ago
Tom Hacohen
a0da029631
Sync helpers: add a function to create journal entry from sync entry.
5 years ago
Tom Hacohen
28c16ccae5
Journal members: implement giving access
6 years ago
Tom Hacohen
d0c9a9c559
Crypto: Add function to get cryptomanager's encryption key.
6 years ago
Tom Hacohen
34e6fc3668
User info: make it possible to deserialize contentless user info.
6 years ago
Tom Hacohen
61a4347a64
PrettyFingerprint: add a widget for pretty showing of fingerprints.
6 years ago
Tom Hacohen
4255e9f3d8
Confirmation dialog: fix confirmation dialog titles.
6 years ago
Tom Hacohen
68b38f115f
List: implement right icon for list items.
6 years ago
Tom Hacohen
85ac4da839
Journal members: implement revoking access.
6 years ago
Tom Hacohen
a557ec1fd2
Fix creation of default journals for new accounts.
...
I don't know when it stopped working or why, but this fixes it.
It was obviously an error, and was caused by sloppy typing.
6 years ago
Tom Hacohen
46fe1ceeb6
Gracefully handle wrong encryption passwords.
...
Until now we just showed integrity error which could be one of many issues.
Now we show an explicit error message and only clear the encryption password
cache rather than the whole cache.
6 years ago
Tom Hacohen
dfd6914cd9
Fix version number when saving events/todos.
6 years ago
Tom Hacohen
d1293b08c3
Journal: implement importing entries from file
...
It still needs a bit of polished, such as proper error handling,
progress indication, chunked pushing and etc, though it does work!
Fixes #17
6 years ago
Tom Hacohen
8a58fb01fc
Journal view: fix viewing of tasks directly from the journal.
6 years ago
Tom Hacohen
5de1087a2a
Ical.js types: add support for getting all subcomponents.
6 years ago
Tom Hacohen
cd28f282fb
API helpers: split the function creating journal entry.
6 years ago
Tom Hacohen
941b47b59a
API helpers: rename createJournalEntry -> addJournalEntry.
...
Following the change from the previous commit.
6 years ago
Tom Hacohen
9b7f24eb8a
Store actions: Rename createEntries -> addEntries.
6 years ago
Tom Hacohen
49273fbc6f
Calendar: scroll to 8am when opening week and day views.
...
Fixes #40 .
6 years ago
Tom Hacohen
4b09b9832a
Task: fix allDay when a task doesn't have a startDate.
6 years ago
Tom Hacohen
494bc2e3bd
Fix viewing tasks with no start or end date.
6 years ago
Tom Hacohen
f26af1e1ac
Journal actions: split fetchAll and fetching journal entries.
6 years ago
Tom Hacohen
8cc20ec3ed
Fix removal of deleted jorunals from the journal list.
...
Fixes #36 .
6 years ago
Tom Hacohen
ae3f32cc01
Store: handle addJournal correctly (include empty entry list).
...
Fixes #35 .
6 years ago
Tom Hacohen
aeca32afa8
AddressBook: make sort case insensitive.
...
Fixes #34 .
6 years ago
Tom Hacohen
ad45ad3f83
Update tslint and fix warnings.
6 years ago
Tom Hacohen
7da0a6009b
More tslint fixes.
6 years ago
Tom Hacohen
9913adc756
Update tslint config and update code to conform.
6 years ago
Tom Hacohen
3d67ad13b6
Remove redundant semi-colons.
6 years ago
Tom Hacohen
5c94954c96
Store reducers: fix inconsistent empty lines.
6 years ago
Tom Hacohen
812c8df61a
store reducers: fix copy paste for type.
6 years ago
Tom Hacohen
7e406e4f77
Split the store construction to a separate file.
6 years ago
Tom Hacohen
a4fca53541
Rename the locale settings to locale
...
I was trying to make it easier for people, but on second thought, en-GB
is definitely not representative of Europe, so having this split was
confusing.
6 years ago
Tom Hacohen
3b7fadcc69
Set the locale based on the settings.
...
Partially fixes #4
6 years ago
Tom Hacohen
43044750e3
Add support for settings (route and store).
6 years ago
Tom Hacohen
b46291f360
Make the login screen slightly nicer.
6 years ago
Tom Hacohen
e4c2cece16
Remove the unneeded isomorphic fetch.
6 years ago
Tom Hacohen
5237b14b74
Event and task: show timezone information.
...
First steps towards #29 .
6 years ago
Tom Hacohen
172cc4ce53
Task: rename the completed property to finished and include cancelled.
6 years ago
Tom Hacohen
66d95216f7
Add support for editing a task's status.
6 years ago
Tom Hacohen
a32e2c9019
Event and task description: show the text preformatted.
...
We previously had it in a div, which was dropping newlines.
6 years ago
Tom Hacohen
47c259d803
Improve task viewing.
6 years ago
Tom Hacohen
e90a92ed57
Add a function to format just a date.
6 years ago
Tom Hacohen
c2d4027e13
Move event date formatting function to a shared place.
6 years ago
Tom Hacohen
4db3b24743
Add task edit support.
6 years ago
Tom Hacohen
09ddfe8be8
Event: fix date calculation to account for exact same dates.
6 years ago
Tom Hacohen
7336fe5527
Change the max container width to 30rem.
6 years ago
Tom Hacohen
82434cec2c
Fix exception by moving to the better props type declaration.
...
Seems like a regression with React (or a deprecation?) as it used to
work. Though the separate interface style is better and works better
with typescript anyway.
6 years ago
Tom Hacohen
2fd674a456
Add support for tasks.
6 years ago
Tom Hacohen
d11180fed6
Fix material ui depracations.
6 years ago
Tom Hacohen
59aef075f5
Fix issue with navigation in journal views.
6 years ago
Tom Hacohen
e4de0605f9
Fix all the issues that came with switching to react scripts
6 years ago
Tom Hacohen
3c05beef0b
Move to react-scripts now that it supports typescript.
6 years ago
Tom Hacohen
d09b2f964a
Journal members: add a notice for no members.
6 years ago
Tom Hacohen
57f1aadc0d
Expand containers to fill full vertical height.
6 years ago
Tom Hacohen
b24070883a
Journal: add a page for viewing members.
6 years ago
Tom Hacohen
8b438a81f6
Prettify the journals page.
6 years ago
Tom Hacohen
56f976c766
Implement journal creation and deletion.
6 years ago
Tom Hacohen
525ec58081
Journal edit: disallow editing journals we don't own.
6 years ago
Tom Hacohen
c5fc6f23f5
Jounal store: simplify the store functions and change the list to a hash
...
It's always been a massive mess, this improves it.
6 years ago
Tom Hacohen
5b79e0f107
Implement journal update.
6 years ago
Tom Hacohen
b583347473
Confirmation dialog: fix warnings.
6 years ago
Tom Hacohen
b1070ecc94
Restructure the journals route.
...
This puts the jorunal list and the journal view in the same place
and will make it easier to add new/edit.
6 years ago
Tom Hacohen
4dac9703e9
Refresh button: add title.
6 years ago
Tom Hacohen
8f13da7a39
Remove the secondary header and update the appbar instead.
6 years ago
Tom Hacohen
cf435118d4
Secondary header: add support for more than just text.
6 years ago
Tom Hacohen
20b409ffe8
Move the journals to their own page.
6 years ago
Tom Hacohen
ebb2649078
Apply the theme to the base of the app.
6 years ago
Tom Hacohen
51e436be2e
Remove the hacky getPalette function and use the theme instead.
6 years ago
Tom Hacohen
45bd0a9054
Associate account workaround: allow journal creation to fail.
6 years ago
Tom Hacohen
7d2fa215a3
Also init tasks on first run.
6 years ago
Tom Hacohen
a8c6b30456
Fix infinite loading indicator when there are no entries.
6 years ago
Tom Hacohen
9f4fb75d73
Main view: make the calendar the default view.
...
It's used much more often than the contact list, so makes sense it's
the default.
6 years ago
Tom Hacohen
a9b6978ae5
Add basic support for viewing tasks.
6 years ago
Tom Hacohen
7d5bbd5742
Allow non-email usernames when using own server
...
Fixes #19
Co-authored-by: Nemanja Nedeljković <nemanjan00@gmail.com>
6 years ago
Tom Hacohen
3fc9e32f76
Item update/delete: fetch before inserting to make sure we're up to date.
6 years ago
Tom Hacohen
e697d3d276
Make it clearer that the first encryption password entered sets it.
...
Fixes #26
6 years ago
Tom Hacohen
e3e4a5288a
Event edit: fix wording in confirmation dialog (contact -> event).
...
Fixes #27 .
6 years ago
Tom Hacohen
f4fab17fb9
Don't show recurring warning for non recurring events.
6 years ago
Tom Hacohen
6b859b0693
Change the tab text colour to black.
...
Keeping the main title white and bold for now as it pops more. Maybe also
need to change.
Fixes #25 .
6 years ago
Tom Hacohen
493343dd92
Contact edit: fix default type for jabber.
6 years ago
Tom Hacohen
87c777ac10
Appbar: fix the warning about passing an unknown props.
6 years ago
Tom Hacohen
4d386f5a0a
Contact edit: fix changing subfield types.
6 years ago
Tom Hacohen
31bb36187a
Contact edit: improve design a bit.
6 years ago
Tom Hacohen
edc662b7c0
Contact/event: fix creating items on non-default journals.
...
Fixes #22
6 years ago
Tom Hacohen
fbdd478602
App: upgrade material-ui.
6 years ago
Tom Hacohen
c1d446551b
Event Edit: upgrade material-ui.
6 years ago
Tom Hacohen
6a0b94fa0e
Contact edit: upgrade material-ui.
6 years ago
Tom Hacohen
40ad15673d
Searchable addressbook: upgrade material-ui.
6 years ago
Tom Hacohen
a936ef2b64
Journal entries: upgrade material-ui.
6 years ago
Tom Hacohen
505795c711
Address book: upgrade material-ui.
6 years ago
Tom Hacohen
a249bb4586
Sidebar: upgrade material-ui.
6 years ago
Tom Hacohen
08bb517ef1
Login form: upgrade material-ui.
6 years ago
Tom Hacohen
bc46c197ba
Confirmation dialog: upgrade material-ui.
6 years ago
Tom Hacohen
eac0508194
Loading indicator: upgrade material-ui.
6 years ago
Tom Hacohen
6d0614df63
Container: upgrade material-ui.
6 years ago
Tom Hacohen
a33bde29d4
Pim Main: upgrade materail-ui.
6 years ago
Tom Hacohen
291b8ae8a6
Pim index: upgrade material-ui.
6 years ago
Tom Hacohen
d6b7ba0240
Journal: upgrade material-ui
6 years ago
Tom Hacohen
5cdf5d5563
Contact: upgrade material-ui.
6 years ago
Tom Hacohen
0a9d4f8a10
Calendar: implement basic recurrence support.
...
At the moment it only shows recurrence in the calendar. You can't edit
specific instances, only the whole series (the first event). You can't
event edit the rrule at the moment. It's view only (mostly).
While this is not much, this is already a major boost to the usability
of etesync web.
Fixes #15 .
6 years ago
Tom Hacohen
048c591b95
ICAL types: add more types and properties.
6 years ago
Tom Hacohen
563f718597
Fix contact's birthday and anniversary date presentation.
6 years ago
Tom Hacohen
e0ec5ee6c8
Encryption password login: add autofocus.
6 years ago
Tom Hacohen
f828e3d290
Upgrade material-ui and start migrating to it.
6 years ago
Tom Hacohen
ae26e34eb4
Update react, typescript recompose and etc.
6 years ago
Tom Hacohen
01b9921b2a
Purge cache in case of an integrity error and show a nicer message.
6 years ago
Tom Hacohen
73897700d9
Automatically create the default journals if there are none.
6 years ago
Tom Hacohen
1e1033fdf1
Actions fetchAll: return a promise rather than undefined.
6 years ago
Tom Hacohen
8e7243964d
Automatically create user info when there is none.
6 years ago
Tom Hacohen
811f795304
Add an ugly fragile hack to make the calendar fill the vertical space.
...
This is very fragile, but at least if it breaks it falls back to the
previous behaviour so it's not the end of the world if it does.
Fixes #16 .
6 years ago
Tom Hacohen
c25ac2d6c0
Improve error handling.
6 years ago
rugk
6456625716
Add access prohibition for external links
7 years ago
Tom Hacohen
5842b7074a
Login form: show a better error message.
7 years ago
Tom Hacohen
94214c9617
Calendar: fix switching back to months view when going back to calendar
...
Currently we preserve the watched date, so it's preserved when going
back to a calendar page. Now we also preserve the view.
Fixes #10
7 years ago
Tom Hacohen
99ccfaf441
Item creation: fix the cancel button.
...
It wasn't working because the callback was not connected, but the
onDelete callback was connected instead (which shouldn't have been).
7 years ago
Tom Hacohen
71f7df252a
Fix event editing.
...
It was crashing due to 7917b1fbe1
.
7 years ago
Tom Hacohen
e2a418a914
Upgrade react-scripts-ts and typescript.
7 years ago
Tom Hacohen
4c441de728
Calendar: Fix navigating of month view (workaround big-calendar bug)
...
This is a workaround for:
https://github.com/intljusticemission/react-big-calendar/issues/718
7 years ago
Tom Hacohen
56c12012fe
Types: update react-big-calendar types.
7 years ago
Tom Hacohen
7917b1fbe1
Calendar: Implement clicking on a time slot to add an event
...
You can now click (or select) a time slot to create an event that is
automatically populated with the selected times.
Fixes #8
7 years ago
Tom Hacohen
d09895c655
Event edit: remove the word Date from the datetime placeholder.
...
It was confusing users who thought this was only a date picker. This makes
it more generic.
7 years ago
Tom Hacohen
ed64bff3da
Switch to react-datetime for the date time picker
...
The reason for that is because not all browsers support input
type=date/time
7 years ago
Tom Hacohen
2187f4cd22
Types ical.js: add to/from json.
7 years ago
Tom Hacohen
f0ab21172a
Types ical.js: fix fromJSDate.
7 years ago
Tom Hacohen
56a28bf9c8
Fix the type of the DateTimePicker's change callback.
7 years ago
Tom Hacohen
02bb9baea7
Add more properties needed by react-big-calendar.
7 years ago
Tom Hacohen
9c740a4c4d
Add support for saving entries to shared journals.
7 years ago
Tom Hacohen
71e20bb65f
UserInfo: Fix persistance of user info to cache.
7 years ago
Tom Hacohen
e257f427eb
Show an error message when userInfo doesn't exist.
7 years ago
Tom Hacohen
b0cae39814
Add a widget to present errors nicely.
7 years ago
Tom Hacohen
8367767006
SyncGate: only get asymmetricKey from UserInfo if needed.
7 years ago
Tom Hacohen
719b0516f0
Support shared journals in side menu too.
...
This code path needs to be merged with SyncGate.
7 years ago
Tom Hacohen
cf823f5efe
Implement fetching userInfo and opening shared journals.
7 years ago
Tom Hacohen
80e9805d22
AsymmetricCrypto: we actually using pkcs8 not 1.
7 years ago
Tom Hacohen
12b578d44c
UserInfo: Fix the HMAC calculation function.
7 years ago
Tom Hacohen
1ee224bd0b
Add an action to fetch userInfo.
7 years ago
Tom Hacohen
00045d7cb0
CryptoManager: Add an option to load an already derived key.
7 years ago
Tom Hacohen
9a8f1cd33f
Add AsymmetricCryptoManager for asymmetric encryption.
7 years ago
Tom Hacohen
3353b21162
CryptoManager: fix decrypt/encrypt bits type.
7 years ago
Tom Hacohen
1f961fbad1
UserInfo: implement setting and getting the keypair.
7 years ago
Tom Hacohen
45db0c12c5
Crypto manager: add methods to encrypt/decrypt from/to bytes.
7 years ago
Tom Hacohen
fb738622fe
API: Add API to handle UserInfo.
7 years ago
Tom Hacohen
ac31f7093f
Add a basic link about signed pages.
7 years ago
Tom Hacohen
78c19fe7c4
Fix one-day long allDay events.
7 years ago
Tom Hacohen
2056c62b80
Use the error boundary component to semi-gracefully catch errors.
7 years ago
Tom Hacohen
5a79fdb6b8
Add an error boundary component to catch errors.
7 years ago
Tom Hacohen
e956ef3059
Change the delete confirmation dialog label.
7 years ago
Tom Hacohen
074fc8e6c0
Implement a common interface for pim types.
7 years ago
Tom Hacohen
bfa186dc35
Merge duplicate onItemSave code.
7 years ago
Tom Hacohen
78b292f1c4
Implement contact and calendar event deletion.
7 years ago
Tom Hacohen
507c0e3a1a
Add a configrmation dialog widget.
7 years ago
Tom Hacohen
f760becae8
Add icons to save/cancel buttons on item edit pages.
7 years ago
Tom Hacohen
5e59557335
Add a link to the etesync website from the login page.
7 years ago
Tom Hacohen
d869be6bc9
Revert "Only mark journals that have been shared with us as unsupported."
...
This is not needed, because key is set only if we have a key set for us
which means it was either shared with us, or we have a reason to have a
key (maybe changed the password).
(Kept the fixme that was added in that commit)
This reverts commit 3408e16013
.
7 years ago
Tom Hacohen
52f7d4ddd5
Base JSON: serialise should return the template type.
7 years ago
Tom Hacohen
3408e16013
Only mark journals that have been shared with us as unsupported.
...
Journals that we've shared are supported even if we share them,
so make the check a bit more explicit so we show them.
7 years ago
Tom Hacohen
3d9155e306
EteSync: expose journal owner.
7 years ago
Tom Hacohen
763b5b757f
Remove redundant filtering of shared journals.
...
This is already done in sync gate.
7 years ago
Tom Hacohen
84a0bf2a8e
Add a cancel button when editing contacts and events.
...
Fixes #2 .
7 years ago
Tom Hacohen
73ab88d3d2
Sync gate: better position the loading indicator.
7 years ago
Tom Hacohen
eafdb02d5c
Loading indicator: pass on props.
7 years ago
Tom Hacohen
e9f984dee9
SearchableAddressBook: add a search icon.
7 years ago
Tom Hacohen
ee34109d14
Addressbook: add a searchable address book that lets us filter the list
7 years ago
Tom Hacohen
c6df5c800a
Addressbook: support passing a filter function and memoize the sort.
7 years ago
Tom Hacohen
724bc29e4a
Merge the duplicate contact/event view/edit/log routes.
7 years ago
Tom Hacohen
7bd3051416
Unify the names of the props of ContactEdit and EventEdit.
7 years ago
Tom Hacohen
40af8a49d7
Make the event and contact itemUid the consistent.
...
It was different between them and compared to viewing a journal's item.
This was inconsistent and is now fixed.
7 years ago
Tom Hacohen
35b3ce7f95
Add a button to show an item's (contact/event) change history
...
Fixes #1
7 years ago
Tom Hacohen
30cd979ba8
Journal entries: support filtering by entry uid.
7 years ago
Tom Hacohen
ab3ebbff05
Fix the calendar widget on mobile.
7 years ago
Tom Hacohen
0eaaf671e8
Add some margin between the edit button and the header.
7 years ago
Tom Hacohen
0abe801dc7
Disable pull to refresh in PWAs based on chrome.
7 years ago
Tom Hacohen
6687758a3a
Add a refresh button and make it spinable.
...
This also adds a HOC that makes icons spinable.
7 years ago
Tom Hacohen
199cc5771c
Fix background colour issue.
7 years ago
Tom Hacohen
4833a98763
Split fetching credentials and key derivation.
7 years ago
Tom Hacohen
b769c18021
Show a shorter login form (only enc password) if already logged in.
...
This is extremely useful for iOS devices where a PWA's session storage
is deleted every time it's minimised, and it's also useful for people
having multiple tabs open.
7 years ago
Tom Hacohen
2608a354ea
Add an action to derive the encryption key.
7 years ago
Tom Hacohen
232ea823d0
LoinGate: rename the incorrectly named class name.
7 years ago
Tom Hacohen
8d3a06cdfd
Split the login credentials and the encryption key.
...
We do this so we can persist the login info to local storage, but
still keep the encryption key safe.
This version will fails if you clear the session storage. This will be
fixed in the next commit.
7 years ago
Tom Hacohen
c7e508b890
Also disable back when we have no history stack.
...
This is useful for when we open a page directly in an inner link.
7 years ago
Tom Hacohen
50af0ac0d1
Container: fix marging to be padding so size is correct.
7 years ago
Tom Hacohen
a464f019aa
Fix the elastic white area on iOS and change bar to translucent.
7 years ago
Tom Hacohen
2d76164666
Fix the back button to work on first load too.
7 years ago