Commit Graph

132 Commits

Author SHA1 Message Date
Aman Harwara
8e467f9e6d refactor: format and lint codebase (#971) 2022-04-13 22:02:34 +05:30
Aman Harwara
c16f23a75f feat: new lock screen and challenge modal design (#957) 2022-04-12 00:05:08 +05:30
Aman Harwara
3126d97dca feat: add file information panel to file preview modal (#965) 2022-04-11 19:33:34 +05:30
Aman Harwara
aba1e35a1d refactor: button to allow html attributes & refactor class names (#956) 2022-03-28 17:41:54 +05:30
Aman Harwara
dc3dcfba2b refactor: DecoratedInput and add DecoratedPasswordInput (#953) 2022-03-26 15:26:36 +05:30
Aman Harwara
97f14e2a95 feat: show alert if file exceeds classic reader limit (#948) 2022-03-24 01:17:56 +05:30
Aman Harwara
12e3bb0959 feat: add file preview modal (#945) 2022-03-24 00:13:44 +05:30
Aman Harwara
7e67061097 fix: file drag-n-drop issue (#923) 2022-03-14 17:16:25 +05:30
Aman Harwara
b31afee108 feat: add files popover in note toolbar (#913) 2022-03-10 13:51:28 +05:30
Myreli
5d49352f93 feat: redesign search filtering experience (#908)
* feat(search): redesign search filters as bubbles like mobile

* fix(search): decouble Bubble component styling

- animate the bubles on search
- decouple the Bubbles styling using utility classes
- improve styling of the new search options

* fix(Bubble): remove duplicated utility classes

* fix(bubble): use color neutral utility

* fix(bubble): increase gaps and justify center

* fix(Bubble): increase height and decrease gap

* fix(search): improve usability on search options

- increase animation timing to match mobile
- properly center cancel button
- only show cancel on text input
- prevent search options from disappearing when clicking with no text

* fix(search-options): improve spacing and auto size

* fix(search-options): improve animation and  decrease gap
2022-03-08 10:50:21 -06:00
Aman Harwara
c5eb84d7e8 feat: add toast notifications using stylekit (#905) 2022-03-02 23:33:46 +05:30
Aman Harwara
209bd99fe5 feat: add "Listed actions" option in note context menu (#891) 2022-02-23 20:51:34 +05:30
Aman Harwara
22718d8a9f feat: add tag context menu (#890) 2022-02-22 13:05:01 +05:30
Aman Harwara
538e41d1cb fix: plain editor revision rendering (#889) 2022-02-19 19:35:44 +05:30
Aman Harwara
96bfd6efc2 fix: header button border (#887) 2022-02-18 20:48:04 +05:30
Aman Harwara
1887d5d01e fix: plain editor revision rendering and revision list sorting (#878) 2022-02-18 19:28:24 +05:30
Aman Harwara
71c7ee1bec feat: new revision history UI (#861) 2022-02-16 19:39:04 +05:30
Aman Harwara
cc2bc1e21c feat: replace accordion in change editor menu with regular menu (#871) 2022-02-16 17:57:06 +05:30
Aman Harwara
7f5f0d9d17 feat: update line height and width of note size warning text (#852) 2022-02-07 22:12:08 +05:30
Aman Harwara
5605baeb57 feat: add warning to note options menu if note size is >0.5mb (#851) 2022-02-07 20:38:19 +05:30
Aman Harwara
1f5d235cd4 fix: notes list options menu not toggling correctly (#840) 2022-02-01 20:12:57 +05:30
Aman Harwara
7c41cfc3dc feat: make whole menu switch be clickable (#837) 2022-01-31 22:19:27 +05:30
Aman Harwara
0ecbde6bac feat: improve change editor menu keyboard navigation (#831) 2022-01-30 20:28:35 +05:30
Aman Harwara
b932e2a45e feat: Add new "Change Editor" option to note context menu (#823)
* feat: add editor icon

* refactor: remove 'any' type and format

* refactor: move NotesOptions and add ChangeEditorOption

* refactor: fix type for using regular RefObject<T>

* feat: add hide-if-last-child util class

* feat: add Change Editor option

* feat: make radio btn gray if not checked

* fix: accordion menu header and item sizing/spacing

* feat: add Escape key to KeyboardKey enum

* refactor: Remove Editor Menu

* feat: add editor select functionality

* refactor: move plain editor name to constant

* feat: add premium editors with modal if no subscription

refactor: simplify menu group creation

* feat: show alert when switching to non-interchangeable editor

* fix: change editor menu going out of bounds

* feat: increase group header & editor item size

* fix: change editor menu close on blur

* refactor: Use KeyboardKey enum & remove else statement

* feat: add keyboard navigation to change editor menu

* fix: editor menu separators

* feat: improve change editor menu sizing & spacing

* feat: show alert only if editor is not interchangeable

* feat: don't show alert when switching to/from plain editor

* chore: bump snjs version

* feat: temporarily remove change editor alert

* feat: dynamically get footer height

* refactor: move magic number to const

* refactor: move constants to constants file

* feat: use const instead of magic number
2022-01-28 14:23:39 -06:00
Vardan Hakobyan
a342a3a224 feat: add "Email Backups" to "Backups" section (#778)
* feat: add "Email Backups" to "Backups" section

* chore: remove comment

* chore: better wording

* chore: put working snjs version

* chore: better wording

* style: reuse existing css classes and add the missing one

* feat: add "No email backup" option

* refactor: move the function outside of the useEffect, remove unused utility function

* feat (WIP): move CloudLink to backups section

* chore: versions bump, type fixes

* fix: handle the case when the setting update fails

* style: remove dashed border from the confirmation code, UI improvements

* feat: implement removing integration, improve interaction on different events

* feat: implement non-interactive textarea for showing and copying the code

* fix: fix TS errors

* feat: implement "Perform backup" logic
- remove the code for copying the confirmation code for backup integration
- also remove unnecessary parameters passed to Provider

* feat: don't show "CloudLink" in preferences pane

* chore: show error in console on exception

* refactor: better naming, add `coverage` folder to gitignore

* fix: return correct setting name

* refactor: use async/await for the sake of consistency

* chore: remove duplicate line

* feat: get urls for cloud backup from snjs

* chore: update dependencies

* refactor: set both `token` and `frequency` settings when enabling cloud integration; get only `frequency` when checking the integration status

* refactor: once the setting is successfully saved, don't get its value from backend; instead, use its value that's still in frontend

* feat: move "Receive a notification email if a cloud backup fails." into cloud backups section

* fix: text correction

* fix: get correct cloud integration url from snjs based on prod/dev environment
2022-01-12 18:48:46 +04:00
Karol Sójko
c42eeea383 Revert "Revert "feat: New notes list design (#780)""
This reverts commit d76c636e54.
2022-01-05 16:12:12 +01:00
Karol Sójko
d76c636e54 Revert "feat: New notes list design (#780)"
This reverts commit 7dd4a60595.
2022-01-05 16:11:34 +01:00
Aman Harwara
7dd4a60595 feat: New notes list design (#780) 2022-01-04 17:29:10 +05:30
Laurent Senta
237cd91acd feat: implement tags folder as experimental feature (#788)
* feat: add tag folders support basics

* feat: add draggability to tags

* feat: add drag & drop draft

* feat: fold folders

* fix: do not select on fold / unfold tags

* style: clean the isValidTag call

* feat: add native folder toggle

* feat: add touch mobile support

* ui: add nicer design & icons

* style: render full-width tag items

* feat: nicer looking dropzone

* style: fix arguments

* fix: tag template rendering in list items

* feat: tag can be dragged over the whole item

* fix: cancel / reset title after save

* fix: disable drag completely when needed

* fix: invalid tag parents

* feat: add paying feature

* feat: with paid feature tooltip

* feat: tag has a plus feature

* feat: add premium modal

* style: simplif code

* refactor: extract feature_state & simplif code

* fix: icons and icons svg

* style: remove comment

* feat: tag folders naming

* feat: use the feature notification

* fix: tag folders copy

* style: variable names

* style: remove & clean comments

* refactor: remove is-mobile library

* feat: tags folder experimental (#10)

* feat: hide native folders behind experimental flag

* fix: better tags resizing

* fix: merge global window

* style: rename params

* refactor: remove level of indirection in feature toggle

* feat: recursively add tags to note on create (#9)

* fix: use add tags folder hierarchy & isTemplateItem (#13)

* fix: use new snjs add tag hierarchy

* fix: use new snjs isTemplateItem

* feat: tags folder premium (#774)

* feat: upgrade premium in tags section

refactor: move TagsSection to react

feat: show premium on Tag section

feat: keep drag and drop features always active

fix: drag & drop tweak with premium

feat: premium messages

fix: remove fill in svg icons

fix: change tag list color (temporary)

style: remove dead code

refactor: clarify names and modules

fix: draggable behind feature toggle

feat: add button in TagSection & design

* feat: fix features loading with app state (#775)

* fix: distinguish between app launch and start

* fix: update state for footer too

* fix: wait for application launch event

Co-authored-by: Laurent Senta <laurent@singulargarden.com>

* feat: tags folder with folder text design (#776)

* feat: add folder text

* fix: sn stylekit colors

* fix: root drop zone

* chore: upgrade stylekit

* fix: hide dropzone when feature is disabled

* chore: bump versions now that they are released

Co-authored-by: Mo <me@bitar.io>

* feat: tags folder design review (#785)

* fix: upgrade design after review

* fix: tweak dropzone

* fix: sync after assign parent

* fix: tsc error on build

* fix: vertical center the fold arrows

* fix: define our own hoist for react-dnd

* feat: hide fold when there are no folders

* fix: show children usability + resize UI

* fix: use old colors for now, theme compat

* fix: tweak alignment and add title

* fix: meta offset with folders

* fix: tweak tag size

* fix: observable setup

* fix: use link-off icon on dropzone

* fix: more tweak on text sizes

Co-authored-by: Mo <me@bitar.io>
2021-12-23 14:34:02 +01:00
Vardan Hakobyan
f120af3b43 feat: handle unprotected session expiration (#779)
* feat: hide note contents if the protection expires when the protected note is open and wasn't edited for a while

* feat: handle session expiration for opened protected note for both plain advanced editors

* fix: if after canceling  session expiry modal only one unprotected note stays selected, show its contents in the editor

* refactor: handle session expiration for opened protected note (move the logic to web client)

* feat: handle the case of selecting "Don't remember" option in session expiry dialog

* test (WIP): add unit tests for protecting opened note after the session has expired

* test: add remaining unit tests

* refactor: move the opened note protection logic to "editor_view"

* refactor: reviewer comments
- don't rely on user signed-in/out status to require authentication for protected note
- remove unnecessary async/awaits
- better wording on ui

* refactor: reviewer's comments:
 - use snjs method to check if "Don't remember" option is selected in authentication modal
 - move the constant to snjs
 - fix eslint error

* refactor: avoid `any` type for `appEvent` payload

* test: add unit tests

* chore: update function name

* refactor: use simpler protection session event types

* refactor: protected access terminology

* refactor: start counting idle timer after every edit (instead of counting by interval in spite of edits)

* test: unit tests

* style: don't give extra brightness to the "View Note"/"Authenticate" button on hover/focus

* chore: bump snjs version

* chore: put snjs "beta" version

* fix: run protection timeout when the note is marked as protected

* chore: snjs version bump

* refactor: immediately lock the note if it's marked as "Protected"

* refactor: rename component, directive and some props

* refactor: remove extra check

* refactor: rename the method

* chore: update snjs version

Co-authored-by: Mo Bitar <me@bitar.io>
2021-12-20 20:54:37 +04:00
Karol Sójko
2e168df929 Revert "feat: handle unprotected session expiration (#747)"
This reverts commit 8db549f6f6.
2021-12-15 15:26:31 +01:00
Vardan Hakobyan
8db549f6f6 feat: handle unprotected session expiration (#747)
* feat: hide note contents if the protection expires when the protected note is open and wasn't edited for a while

* feat: handle session expiration for opened protected note for both plain advanced editors

* fix: if after canceling  session expiry modal only one unprotected note stays selected, show its contents in the editor

* refactor: handle session expiration for opened protected note (move the logic to web client)

* feat: handle the case of selecting "Don't remember" option in session expiry dialog

* test (WIP): add unit tests for protecting opened note after the session has expired

* test: add remaining unit tests

* refactor: move the opened note protection logic to "editor_view"

* refactor: reviewer comments
- don't rely on user signed-in/out status to require authentication for protected note
- remove unnecessary async/awaits
- better wording on ui

* refactor: reviewer's comments:
 - use snjs method to check if "Don't remember" option is selected in authentication modal
 - move the constant to snjs
 - fix eslint error

* refactor: avoid `any` type for `appEvent` payload

* test: add unit tests

* chore: update function name

* refactor: use simpler protection session event types

* refactor: protected access terminology

* refactor: start counting idle timer after every edit (instead of counting by interval in spite of edits)

* test: unit tests

* style: don't give extra brightness to the "View Note"/"Authenticate" button on hover/focus

* chore: bump snjs version

Co-authored-by: Mo Bitar <me@bitar.io>
2021-12-14 19:14:01 +04:00
Aman Harwara
b29dc8ecc6 fix: Last sync date padding (#768) 2021-12-10 19:06:35 +05:30
Aman Harwara
e6087de709 fix: UI shiting when opening dropdown with a lot of items (#764) 2021-12-08 19:07:43 +05:30
Aman Harwara
31c48af01c feat: Add "Pin selected notes" button to editor title bar (#760) 2021-12-06 14:47:35 +05:30
Aman Harwara
9730006cba feat: Nativize "No distraction" theme as "Focus Mode" (#758)
Co-authored-by: Mo Bitar <me@bitar.io>
2021-12-02 22:34:57 +05:30
Aman Harwara
21433b5544 feat: Change bg color when focusing tag instead of border (#751) 2021-11-26 18:37:29 +05:30
Johnny A
ba3c58457a fix: add border to generated 2fa QR code (#749)
Co-authored-by: Johnny Almonte <johnny243@users.noreply.github.com>
2021-11-24 20:35:51 -04:00
Aman Harwara
f6ca7ef2b1 feat: Use new design for signed out pane in preferences (#734) 2021-11-12 22:51:29 +05:30
Aman Harwara
1e219699df feat: Make purchase flow modal mobile-friendly (#732) 2021-11-11 19:27:46 +05:30
Aman Harwara
42b3cf5750 feat: Use border-main (#721) 2021-11-05 19:29:54 +05:30
Vardan Hakobyan
bbc81ea276 feat: move extensions from prefs menu's left pane to General->Advanced section (#718) 2021-11-03 22:45:50 +04:00
Aman Harwara
bad87a4f2f feat: Replace border-gray-300 with border-neutral (#716) 2021-11-02 19:55:28 +05:30
Gorjan Petrovski
32ced95f72 fix: replace border-gray-300 with a themable colour (#664)
Co-authored-by: Aman Harwara <amanharwara@protonmail.com>
2021-11-01 20:46:14 +05:30
Aman Harwara
4f56c453cb feat: Update "Change Email" and "Change Password" modal designs (#714)
* feat: Add new utility classes

* feat: Update "Change Email" modal design

* feat: Use .sk-input.contrast className to mimic password wizard inputs

* feat: Add explicit labels to password wizard inputs

* feat: Make button sizing consistent

* refactor: Remove unused dependencies

* refactor: Remove unused component
2021-11-01 19:49:06 +05:30
Aman Harwara
5da51048bf feat: Use toggle switch for layerable themes in quick settings menu (#712)
* feat: Add px-0 utlility class
2021-10-30 21:22:46 +05:30
Gorjan Petrovski
31222e1236 feat(preferences): extension modals into extension panes (#683)
* feat(preferences): show inline extensions in extensions pane

* wip

* wip

* refactor: convert ComponentView to React component

* refactor: convert ComponentView to React component

* chore: fix merge conflicts

* feat: don't show features whose `area` is "room", update modal items' icons in Preferences menu

* chore: fix TS error

* feat: don't show 2FA Manager in modal-based component

* feat: remove `ExtendedDataReloadComplete` event, since Extensions Manger is being removed from the app

* chore: avoid hardcoded values in svg image, optimize `if` condition

* chore: remove remnant comment

* fix: fix typescript errors

Co-authored-by: vardanhakobyan <vardan_live@live.com>
2021-10-25 12:45:36 +04:00
Aman Harwara
397e4963bd feat: Update notes list options menu to new design (#687)
feat: Implement initial Menu component functionality.
2021-10-19 16:07:47 +00:00
Aman Harwara
f9b15262c7 feat: Purchase "Create account" & "Sign in" flows and Floating label input (#672) 2021-10-19 14:50:42 +00:00
Aman Harwara
7f1dddf2d2 feat: Add note attributes to notes options menu (#681) 2021-10-19 14:42:13 +00:00