e38f4996ae
feat: Return view model from views.create ( #1153 )
...
* feat: Return view model from views.create
Towards #1152
* fix: presenter data
2020-01-11 13:46:13 -08:00
0ccbc6126b
fix: Drafts appear in document insert search ( #1148 )
...
* fix: Drafts appear in document insert search
* test
2020-01-05 17:24:57 -08:00
9c66a14fec
fix: API key create/delete should create audit events
...
closes #1101
2020-01-02 22:20:13 -08:00
146e4da73b
feat: Document presence indicator ( #1114 )
...
* Update websockets to allow joining document-based rooms
* dynamic websocket joining
* emit user.join/leave events when entering and exiting document rooms
* presence storage
* feat: frontend presence store
* lint
* UI updates
* First pass editing state
* refactoring
* Timeout per user/doc
lint
* Document data loading refactor to keep Socket mounted
* restore: Mark as viewed functionality
Add display of 'you' to collaborators
* fix: Socket/document remount when document slug changes due to title change
* Revert unneccessary package update
* Move editing ping interval to a shared constant
* fix: Flash of sidebar when loading page directly on editing mode
* separate document and revision loading
* add comments for socket events
* fix: Socket events getting bound multiple times on reconnect
* fix: Clear client side presence state on disconnect
* fix: Don't ignore server side error
Improved documentation
* More comments / why comments
* rename Socket -> SocketPresence
* fix: Handle redis is down
remove unneccessary join
* fix: PR feedback
2020-01-02 21:17:59 -08:00
d995f27736
feat: Add parentDocumentId option to documents.list endpoint
2019-12-22 17:06:29 -08:00
6bf2069fa7
fixes #1115 ( #1118 )
2019-12-22 14:54:12 -08:00
6d8216c54e
feat: Guest email authentication ( #1088 )
...
* feat: API endpoints for email signin
* fix: After testing
* Initial signin flow working
* move shared middleware
* feat: Add guest signin toggle, obey on endpoints
* feat: Basic email signin when enabled
* Improve guest signin email
Disable double signin with JWT
* fix: Simple rate limiting
* create placeholder users in db
* fix: Give invited users default avatar
add invited users to people settings
* test
* add transaction
* tmp: test CI
* derp
* md5
* urgh
* again
* test: pass
* test
* fix: Remove usage of data values
* guest signin page
* Visually separator 'Invited' from other people tabs
* fix: Edge case attempting SSO signin for guest email account
* fix: Correctly set email auth method to cookie
* Improve rate limit error display
* lint: cleanup / comments
* Improve invalid token error display
* style tweaks
* pass guest value to subdomain
* Restore copy link option
* feat: Allow invite revoke from people management
* fix: Incorrect users email schema does not allow for user deletion
* lint
* fix: avatarUrl for deleted user failure
* change default to off for guest invites
* fix: Changing security settings wipes subdomain
* fix: user delete permissioning
* test: Add user.invite specs
2019-12-15 18:46:08 -08:00
e404955394
feat: Trash ( #1082 )
...
* wip: trash
* Enable restoration of deleted documents
* update Trash icon
* Add endpoint to trigger garbage collection
* fix: account for drafts
* fix: Archived documents should be deletable
* fix: Missing delete cascade
* bump: upgrade rich-markdown-editor
2019-11-18 18:51:32 -08:00
2d2ad83469
fix: Cannot move a document to nested child in private collection
2019-10-16 08:45:21 -07:00
d4347b6f4b
fix: Restore option missing in archived documents
2019-10-12 13:24:48 -07:00
2d913e3766
fix: Event activity endpoint with deleted actor
...
closes #1061
2019-10-12 13:03:50 -07:00
b42e9737b6
feat: Memberships ( #1032 )
...
* WIP
* feat: Add collection.memberships endpoint
* feat: Add ability to filter collection.memberships with query
* WIP
* Merge stashed work
* feat: Add ability to filter memberships by permission
* continued refactoring
* paginated list component
* Collection member management
* fix: Incorrect policy data sent down after collection.update
* Reduce duplication, add empty state
* cleanup
* fix: Modal close should be a real button
* fix: Allow opening edit from modal
* fix: remove unused methods
* test: fix
* Passing test suite
* Refactor
* fix: Flow UI errors
* test: Add collections.update tests
* lint
* test: moar tests
* fix: Missing scopes, more missing tests
* fix: Handle collection privacy change over socket
* fix: More membership scopes
* fix: view endpoint permissions
* fix: respond to privacy change on socket event
* policy driven menus
* fix: share endpoint policies
* chore: Use policies to drive documents UI
* alignment
* fix: Header height
* fix: Correct behavior when collection becomes private
* fix: Header height for read-only collection
* send id's over socket instead of serialized objects
* fix: Remote policy change
* fix: reduce collection fetching
* More websocket efficiencies
* fix: Document collection pinning
* fix: Restored ability to edit drafts
fix: Removed ability to star drafts
* fix: Require write permissions to pin doc to collection
* fix: Header title overlaying document actions at small screen sizes
* fix: Jank on load caused by previous commit
* fix: Double collection fetch post-publish
* fix: Hide publish button if draft is in no longer accessible collection
* fix: Always allow deleting drafts
fix: Improved handling of deleted documents
* feat: Show collections in drafts view
feat: Show more obvious 'draft' badge on documents
* fix: incorrect policies after publish to private collection
* fix: Duplicating a draft publishes it
2019-10-05 18:42:03 -07:00
4164fc178c
fix: First auto-save unfocuses document ( #1046 )
...
* fix: Autosave unfocuses document
* Revert unneeded change
* test: le fix
* fix: Handle offline state
fix: Untitled documents appear with empty titles
* fix: Draft bubble roundness (yes, it doesnt belong here but see it, fix it)
2019-09-22 17:09:11 -07:00
b1a1d24f9c
fix: Unknown Slack users should be able to search team accessible docs ( #1049 )
...
* fix: Unknown Slack users should be able to search team accessible docs
* test: fix flaky test
* test: remove obsolete snapshot
* lint
* flow
* fix: Spelling mistake
2019-09-22 11:52:15 -07:00
b20d41a047
test: Update snapshots
2019-09-21 13:26:28 -07:00
e2b28dfeb7
refactor: Policies Architecture ( #1016 )
...
* add policy serialize method
* Add policies to collection responses
* wip
* test: remove .only
* refactor: Return policies with team and document requests
* store policies on the client
* refactor: drive admin UI from policies
2019-08-21 21:41:37 -07:00
f87b561685
feat: Allow export of collections as sync zip ( #1013 )
...
* feat: Allow export of collections as sync zip
* test: Add spec
2019-08-09 20:37:51 -07:00
978eda3ad2
fix: Deleted collections not showing in audit log
...
feat: Show titles of objects in audit log
fix: modelId not saved with share events
fix: List item squashes avatar at small screen sizes
2019-08-07 20:52:59 -07:00
fb4f6822a4
feat: Events / audit log ( #1008 )
...
* feat: Record events in DB
* feat: events API
* First pass, hacky activity feed
* WIP
* Reset dashboard
* feat: audit log UI
feat: store ip address
* chore: Document events.list api
* fix: command specs
* await event create
* fix: backlinks service
* tidy
* fix: Hide audit log menu item if not admin
2019-08-05 20:38:31 -07:00
92a18159b5
feat: Export collection as direct download instead of emailing ( #1001 )
...
* feat: Export collection as zip instead of emailing
* Flow typing download.js
2019-07-29 22:35:34 -07:00
466ba6ec1f
fix: don't echo request back for unknown endpoints
...
closes #998
2019-07-25 23:17:45 -07:00
be09ffea7b
feat: sharing drafts ( #991 )
...
closes #988
2019-07-13 12:40:25 -07:00
091e542406
feat: Backlinks ( #979 )
...
* feat: backlinks
* feat: add backlinkDocumentId to documents.list
* chore: refactor
fix: create and delete backlink handling
* fix: guard against self links
* feat: basic frontend
fix: race condition
* styling
* test: fix parse ids
* self review
* linting
* feat: Improved link styling
* fix: Increase clickable area at bottom of doc / between references
* perf: global styles are SLOW
2019-07-07 19:25:45 -07:00
dea6085a11
refactor document dirty and empty logic
2019-07-06 21:45:50 -07:00
ccc0906b0a
feat: Improved onboarding documents ( #970 )
...
* feat: New onboarding documents
* Images -> blocks
* Add tips
* test: removes assumptions of welcome documents
this actually results in the tests being much more understandable too
* add db flag when document was created from welcome flow
2019-07-04 10:33:00 -07:00
c9c5e43389
fix: add support for help slack command
2019-06-25 20:43:59 -07:00
d5192acabf
feat: invites ( #967 )
...
* stub invite endpoint
* feat: First pass invite UI
* feat: allow removing invite rows
* First pass: sending logic
* fix: label accessibility
* fix: add button submits
incorrect permissions
middleware flow error
* 💚
* Error handling, email filtering, tests
* Flow
* Add Invite to people page
Remove old Tip
* Add copy link to subdomain
2019-06-24 22:14:59 -07:00
0a8a685c12
fix: improved pagination validation
2019-06-23 16:11:15 -07:00
32f83311f6
chore: upgrade sequelize ( #965 )
...
* 0.18.0
* chore: Upgrade sequelize 4 -> 5
* fix: migrations v5 support
* fix: Majority of test failures
* fix: the rest of v5 tests
2019-06-23 15:49:45 -07:00
0079593446
Fix: Now supports AWS signature version 4. ( #949 )
...
* intial commiy
* cleaning code
* added makeCredential to s3.js and removed extra module dependecy
* lint fixes
* minor fix
* minor fixes
* changed encoding type from string to any
* added new env var to env.sample
2019-06-19 00:33:38 -07:00
7dfe8785a2
Added ability to append to documents. Added test cases for the same ( #963 )
...
* added ability to append to documents. Added test cases for the same
* made changes required for lint test
* updated snapshot for document.test.js to reflect new test cases added
* append should not enforce newline character
2019-06-13 23:36:24 -07:00
3eb67eaecf
Fixes: Calm notifications when hitting CMD+S while editing
2019-04-23 20:54:24 -07:00
da7fdfef0a
Improved search filtering ( #940 )
...
* Filter search by collectionId
* Improve spec, remove recursive import
* Add userId filter for documents.search
* 💚
* Search filter UI
* WIP UI
* Date filtering
Prevent dupe menu
* Refactor
* button
* Added year option, improved hover states
* Add new indexes
* Remove manual string interpolation in SQL construction
* Move dateFilter validation to controller
* Fixes: Double query when changing filter
Fixes: Visual jump between filters in dropdown
* Add option to clear filters
* More clearly define dropdowns in dark mode
* Checkbox -> Checkmark
2019-04-23 07:31:20 -07:00
b54583f438
👕
2019-04-20 12:01:09 -07:00
56a6db7d2a
Cleanup
2019-04-18 18:51:16 -07:00
5b34a4f076
Fix: Don't send notifications for autosave events
2019-04-17 21:55:11 -07:00
07a941a65d
Websocket Support ( #937 )
...
* Atom / RSS meta link
* Spike
* Feeling good about this spike now
* Remove document.collection
* Remove koa.ctx from all presenters to make them portable outside requests
* Remove full serialized model from events
Move events.add to controllers for now, will eventually be in commands
* collections.create event
parentDocument -> parentDocumentId
* Fix up deprecated tests
* Fixed: Doc creation
* documents.move
* Handle collection deleted
* 💚
* Authorize room join requests
* Move starred data structure
Account for documents with no context on sockets
* Add socket.io-redis
* Add WEBSOCKETS_ENABLED env variable to disable websockets entirely for self hosted
New installations will default to true, existing installations to false
* 💚 No need for promise response here
* Reload notice
2019-04-17 19:11:23 -07:00
c1256c61aa
Search archived documents ( #932 )
...
* POC
* Improved styling
* Test
2019-04-09 09:20:30 -07:00
763f57a3dc
Move document improvements ( #927 )
...
* Show all collections in UI
* Introduce command pattern
* Actually remove from previous collection
* Stash
* Fixes: Promises resolved outside of response lifecycle
* 💚
* 💚
* documentMover tests
* Transaction
* Perf. More in transactions
2019-04-08 21:25:13 -07:00
d668bd5646
Remove duplicate save in archive
...
Improve documents.archive test
2019-04-07 09:56:09 -07:00
642c11ff7d
Document Archive ( #921 )
...
* WIP: Archive
* WIP
* Finishing up archive endpoints
* WIP
* Update docs
* Flow
* Stash
* Add toast message confirmations
* Redirect handling, fixed publishhing info for archived docs
* Redirect to collection instead of home, remove unused pub info
* Account for deleted parent
* Trash -> Archive
Allow reading of archived docs
* Dont overload deletedAt
* Fixes
* 💚
* ParentDocumentId wipe for unarchived sub docs
* Fix: CMD+S exits editing
Fix: Duplicate user name on published but unedited docs
* Improve jank on paginated lists
* Prevent editing when archived
* 💚
Separate lint / flow steps
2019-04-06 16:20:27 -07:00
7b7ec52eee
Bump production dependencies with open CVEs
2019-03-12 23:54:35 -07:00
19fc99944a
Adds 'post to channel' functionality. ( #901 )
...
* Adds 'post to channel' functionality. Closes #613
* Add specs
Update Slack integration marketing page
* Fix specs
* 💚
2019-02-19 22:42:13 -08:00
8d3dc3a92e
User Profile ( #858 )
...
* First pass user profile
* 💚
* More collaborator tooltip improvements
2019-01-12 19:41:45 -08:00
3a260037cd
Regex-like search queries from Slack should not cause a server error
2019-01-11 19:41:19 -08:00
c78bf3c4bf
Display document views ( #849 )
...
* Display who has viewed a document in the header
* Add overflow, display of WHEN last viewed
Cleanup old document attributes
Add firstViewedAt, lastViewedAt to API response
* Cleanup
* Added: API documentation for views endpoints
* Include views for deleted users
2019-01-08 22:49:20 -08:00
74515e0b19
Improve partial word matching
2019-01-07 21:44:33 -08:00
58e31a9d3d
Fixes #831 - Link from Slack notification does not work for teams with subdomains
2019-01-06 00:05:50 -08:00
028160d9ad
Fixes: Share links in private collections visible in share listing
2019-01-05 23:13:58 -08:00
70287de6d7
Fixes: Cannot load document in private collection from share link when signed in with user that cannot access
2019-01-05 23:04:09 -08:00