93e4ad8c5e
fix: Account for migrations ran on old versions of Sequelize ( #1130 )
2019-12-30 22:35:29 -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
682151554b
fix: Additional SQL cascades required
2019-11-18 20:14:55 -08:00
3ea79dd31a
fix: Additional SQL cascades required
2019-11-18 19:49:33 -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
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
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
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
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
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
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
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
8c02b0028c
Collection Permissions ( #829 )
...
see https://github.com/outline/outline/issues/668
2019-01-05 13:37:33 -08:00
044b4f16bc
Editor embeds ( #680 )
...
- [x] Make deleting an embed easier
- [x] Add document level ability to disable embeds
- [x] Add team level ability to disable embeds
- [x] GitHub
- [x] Numeracy
- [x] Mode Analytics
- [x] Figma
- [x] Airtable
- [x] Vimeo
- [x] RealtimeBoard
- [x] Loom
- [x] Lucidcharts
- [x] Framer
- [x] InVision
- [x] Typeform
- [x] Marvel
- [x] Spotify
- [x] Codepen
- [x] Trello
2018-12-15 14:06:29 -08:00
8cbcb77486
Base model refactor ( #810 )
...
* Big upgrades
* WIP: Stash
* Stash, 30 flow errors left
* Downgrade mobx
* WIP
* When I understand the difference between class and instance methods
* 💚
* Fixes: File import
Model saving edge cases
pinning and starring docs
Collection editing
Upgrade mobx devtools
* Notification settings saving works
* Disabled settings
* Document mailer
* Working notifications
* Colletion created notification
Ensure not notified for own actions
* Tidy up
* Document updated event only for document creation
Add indexes
Notification setting on user creation
* Commentary
* Fixed: Notification setting on signup
* Fix document move / duplicate stale data
Add BaseModel.refresh method
* Fixes: Title in sidebar not updated after editing document
* 💚
* Improve / restore error handling
Better handle offline errors
* 👕
2018-12-04 22:24:30 -08:00
07e61bd347
First pass, can create and update
2018-11-08 21:02:36 -08:00
328f731541
Share Permissions ( #761 )
...
* Share restrictions
* Tweak language, add spec
2018-08-19 16:06:39 -07:00
18cfe26e83
Migrate atlasId -> collectionId
2018-08-07 23:23:26 -07:00
69677b31e4
Allow more than one user to be deleted 😂
2018-07-10 20:44:59 -07:00
5f6236dd65
Merge master
2018-07-08 13:03:36 -07:00
4976d53ed8
Remove password field
2018-07-07 18:19:13 -05:00
465f819c45
Account deletion endpoint
2018-07-07 17:38:22 -05:00
ae502c10c9
Revoked share links ( #664 )
...
* Move to revokation API for share links
* Respect revoked share links
Add documentation for shares endpoints
* 💚
2018-06-16 12:36:25 -07:00
53a0f423c3
Track recently active and signin times ( #663 )
...
* Track recently active and signin times
* Trust proxy headers in production
2018-06-04 19:07:56 -07:00
2337b9df7f
service -> serviceId
2018-06-01 15:13:05 -04:00
72d874444e
DB migrations
...
Google button
2018-05-28 20:31:53 -07:00
9000aa3aac
First pass at API
2018-05-12 23:14:06 -07:00
44cb509ebf
Post to Slack ( #603 )
...
* Migrations
* WIP: Integration model, slack perms / hooks
* So so rough it pains me. Building this new model is revealing just how much needs to be refactored
* Working connect and post
* Cleanup UI, upating documents
* Show when slack command is connected
* stash
* 💚
* Add documents.update trigger
* Authorization, tidying
* Fixed integration policy
* pick integration presenter keys
2018-04-03 20:36:25 -07:00
38494d6d3c
Added migration for existing docs
2018-03-24 15:03:44 -07:00
1a8ca20fce
UI to prevent suspended users viewing the application
2018-03-04 22:18:23 -08:00
3d6b9466fb
Backend support
2018-03-04 15:38:51 -08:00
18b0338736
Pinned documents ( #608 )
...
* Migrations and API for pinned documents
* Documentation
* Add pin icon
* Fin.
* v0.2.0
* Remove pin from DocumentPreview, add general menu
Add Pinned documents header
* Tidy
* Fixed: Drafts appearing on collection home
2018-02-28 23:28:36 -08:00
9142d975df
Draft Documents ( #518 )
...
* Mostly there
* Fix up specs
* Working scope, updated tests
* Don't record view on draft
* PR feedback
* Highlight drafts nav item
* Bugaboos
* Styling
* Refactoring, gradually addressing Jori feedback
* Show collection in drafts list
Flow fixes
* Ensure menu actions are hidden when draft
2018-02-27 22:41:12 -08:00
c92697a8a8
Revert "Renamed Document#atlasId finally"
2018-02-07 11:32:18 -08:00
f08b3e0ac5
Renamed Document#atlasId finally
2018-02-07 00:04:39 -08:00
c4d1490d01
Added migration for adding initial admins
2017-12-26 15:06:53 +02:00
32ba98bb1a
Unfurling of Slack links ( #487 )
...
* First pass: Unfurling of Slack links
* Add authentication in db
* Call associate on Event correctly
* Add SLACK_APP_ID, remove SLACK_REDIRECT_URI, tidy env sample
* PR feedback
* Comment clarify
2017-12-18 19:59:29 -08:00
1f859f01e3
Tidy / fix migrations - MUST return a promise
2017-11-19 16:49:51 -08:00
0441e92d08
Lint rules and flow annotations for rest of the files
2017-11-15 23:40:14 -08:00
e70a8c2495
color editing
2017-10-29 23:23:16 -07:00
255d7564c5
Upload avatar to s3 on login
2017-10-19 00:49:22 -07:00
150771ee88
removed dependencies, html/preview
2017-10-16 23:35:56 -07:00
75bf265bd5
Removed legacy navigationtree
2017-10-15 18:35:28 -07:00
7c3cfbc9da
Added Event model and logging to Collection
2017-10-09 23:27:34 -07:00
7e82fd944e
allow-null-username
2017-09-04 13:27:29 -07:00
28956b98fa
migration-fixes
2017-09-01 08:46:39 -07:00
41f47f3f2f
Migrations fix
2017-08-31 19:41:10 -07:00
8558b92cae
Edit collection ( #173 )
...
* Collection edit modal
* Add icon
* 💚
* Oh look, some specs
* Delete collection
* Remove from collection
* Handle error responses
Protect against deleting last collection
* Fix key
* 💚
* Keyboard navigate documents list
* Add missing database constraints
2017-08-29 08:37:17 -07:00
cfcdae8aa0
Save title emoji against document
2017-07-29 15:06:17 -07:00
cd584da5cf
Upgrade sequelize and remove unique email constraints
2017-07-12 22:55:50 -07:00