30 Commits

Author SHA1 Message Date
Erez Rokah
834f6b9e45 fix(backend-git-gateway): re-write GitHub pagination links (#3135) 2020-01-23 21:14:33 -05:00
Erez Rokah
7e8084be87 chore: add proxy backend (#3126)
* feat(backends): add proxy backend

* feat: add proxy server initial commit

* fix: move from joi to @hapi/joi

* test: add joi validation tests

* feat: proxy server initial implementations

* test: add tests, fix build

* chore: update yarn.lock

* build: fix develop command

* fix(back-proxy): fix bugs

* test(backend-proxy): add cypress tests

* chore: cleanup

* chore: support node 10

* chore: code cleanup

* chore: run cypress on ubuntu 16.04

* test(e2e): fix proxy backend cypress tests

* chore: don't start proxy server on yarn develop
2020-01-22 16:47:34 -05:00
Erez Rokah
a48c02d852
feat(backend-bitbucket): Add Git-LFS support (#3118) 2020-01-21 18:57:36 +02:00
Erez Rokah
6a13a85e26
fix: use string endsWith to filter by extension (#3097) 2020-01-16 12:03:30 +02:00
Erez Rokah
6f221ab3c1 Feat: editorial workflow bitbucket gitlab (#3014)
* refactor: typescript the backends

* feat: support multiple files upload for GitLab and BitBucket

* fix: load entry media files from media folder or UI state

* chore: cleanup log message

* chore: code cleanup

* refactor: typescript the test backend

* refactor: cleanup getEntry unsued variables

* refactor: moved shared backend code to lib util

* chore: rename files to preserve history

* fix: bind readFile method to API classes

* test(e2e): switch to chrome in cypress tests

* refactor: extract common api methods

* refactor: remove most of immutable js usage from backends

* feat(backend-gitlab): initial editorial workflow support

* feat(backend-gitlab): implement missing workflow methods

* chore: fix lint error

* feat(backend-gitlab): support files deletion

* test(e2e): add gitlab cypress tests

* feat(backend-bitbucket): implement missing editorial workflow methods

* test(e2e): add BitBucket backend e2e tests

* build: update node version to 12 on netlify builds

* fix(backend-bitbucket): extract BitBucket avatar url

* test: fix git-gateway AuthenticationPage test

* test(e2e): fix some backend tests

* test(e2e): fix tests

* test(e2e): add git-gateway editorial workflow test

* chore: code cleanup

* test(e2e): revert back to electron

* test(e2e): add non editorial workflow tests

* fix(git-gateway-gitlab): don't call unpublishedEntry in simple workflow

gitlab git-gateway doesn't support editorial workflow APIs yet. This change makes sure not to call them in simple workflow

* refactor(backend-bitbucket): switch to diffstat API instead of raw diff

* chore: fix test

* test(e2e): add more git-gateway tests

* fix: post rebase typescript fixes

* test(e2e): fix tests

* fix: fix parsing of content key and add tests

* refactor: rename test file

* test(unit): add getStatues unit tests

* chore: update cypress

* docs: update beta docs
2020-01-14 17:15:14 -05:00
Erez Rokah
b27748b54f
Fix: get files by path depth (#2993)
* fix: get files up to depth specified by colletion path

* test(e2e): update mock data

* chore: fix comment
2019-12-22 15:20:42 +02:00
Erez Rokah
2b41d8a838 feat: bundle assets with content (#2958)
* fix(media_folder_relative): use collection name in unpublished entry

* refactor: pass arguments as object to AssetProxy ctor

* feat: support media folders per collection

* feat: resolve media files path based on entry path

* fix: asset public path resolving

* refactor: introduce typescript for AssetProxy

* refactor: code cleanup

* refactor(asset-proxy): add tests,switch to typescript,extract arguments

* refactor: typescript for editorialWorkflow

* refactor: add typescript for media library actions

* refactor: fix type error on map set

* refactor: move locale selector into reducer

* refactor: add typescript for entries actions

* refactor: remove duplication between asset store and media lib

* feat: load assets from backend using API

* refactor(github): add typescript, cache media files

* fix: don't load media URL if already loaded

* feat: add media folder config to collection

* fix: load assets from API when not in UI state

* feat: load entry media files when opening media library

* fix: editorial workflow draft media files bug fixes

* test(unit): fix unit tests

* fix: editor control losing focus

* style: add eslint object-shorthand rule

* test(cypress): re-record mock data

* fix: fix non github backends, large media

* test: uncomment only in tests

* fix(backend-test): add missing displayURL property

* test(e2e): add media library tests

* test(e2e): enable visual testing

* test(e2e): add github backend media library tests

* test(e2e): add git-gateway large media tests

* chore: post rebase fixes

* test: fix tests

* test: fix tests

* test(cypress): fix tests

* docs: add media_folder docs

* test(e2e): add media library delete test

* test(e2e): try and fix image comparison on CI

* ci: reduce test machines from 9 to 8

* test: add reducers and selectors unit tests

* test(e2e): disable visual regression testing for now

* test: add getAsset unit tests

* refactor: use Asset class component instead of hooks

* build: don't inline source maps

* test: add more media path tests
2019-12-18 11:16:02 -05:00
Bartholomew
465f463959 fix(backend-github): prepend collection name (#2878)
* fix(backend-github): prepend collection name

* chore: prefer migrating entries

* chore: cleanup

* chore: move migration to listUnpublishedBranches

* chore: prefer flowAsync

* chore: feedback updates

* refactor: extract current metadata version to a const

* refactor: don't send pulls request on open authoring

* test: update recorded data

* fix: hardcode migration key/branch logic

* test(backend-github): add unit tests for migration code

* fix(github-graphql): add ref property to result of createBranch

* test(cypress): update recorded data

* fix: load unpublished entries once

* fix: run migration for published draft entry

* fix: failing test

* chore: use hardcoded version number

* fix: use hardcoded version number

* test(cypress): update recorded data
2019-11-26 10:40:27 +02:00
Bartholomew
86adca3a18 fix(backend-github): editorial workflow commits (#2867) 2019-11-11 17:06:29 +02:00
Erez Rokah
97f1f84b69 fix(github-backend): handle race condition in editorial workflow (#2658) 2019-09-09 15:56:47 -04:00
Erez Rokah
ece136c92e feat(backend-github): GitHub GraphQL API support (#2456)
* add GitHub GraphQL api initial support

* support mutiple backends for e2e tests - initial commit

* add github backend e2e test (currently skipped), fix bugs per tests

* refactor e2e tests, add fork workflow tests, support fork workflow in GraphQL api

* remove log message that might contain authentication token

* return empty error when commit is not found when using GraphQL (align with base class)

* disable github backend tests

* fix bugs introduced after rebase of GraphQL and OpenAuthoring features

* test: update tests per openAuthoring changes, split tests into multiple files

* fix: pass in headers for pagination requests, avoid async iterator as it requires a polyfill on old browsers

* test(e2e): disable github backend tests
2019-09-03 14:56:20 -04:00
Sam Lanning
a47a29fb8b Allow for relative paths of media files (#2394)
* Allow for relative paths of media files

fixes #325

* Switch to calculating the relative path based on collection

The required relative path is now calculated depending on the
location of the collection of the current entry having the
media inserted into. And the configuration option has now been
changed to a boolean flag.

This allows collections to not neccesarily all be in the same
location relative to the media folder, and simplifies config.

* Clean up code and fix linting

* Add unit tests to resolveMediaFilename()

* Rework insertMedia action to fetch own config

This moves more of the media path resolution logic into the action
which makes it easier to unit test

* Add unit tests for the mediaLibrary.insertMedia action

* yarn run format

* add dependabot config (#2580)
2019-08-24 16:03:09 -04:00
Benaiah Mischenko
34e1f09105 Open Authoring bugfixes and pagination improvements (#2523)
* Fix handling of displayURLs which are strings

* Add fromFetchArguments to unsentRequest

* Add parseLinkHeader to backendUtil

* Handle paginated endpoints in GitHub API

* Rename fork workflow to Open Authoring across the whole repo

* Fixes for bugs in GitHub API introduced by Open Authoring changes

* Fix getDeployPreview

* Fix incorrect auth header formatting GitHub implementation

cf. https://github.com/netlify/netlify-cms/pull/2456#discussion_r309633387

* Remove unused and broken method from GitHub API

cf. https://github.com/netlify/netlify-cms/pull/2456#discussion_r308687145

* Fix editorialWorkflowGit method in GitHub API

* Request published entry content from origin repo

* Better error when deleting a published post in Open Authoring

* Rename to Open Authoring in fork request message

Also adds a note to the fork request message that an existing fork of
the same repo will be used automatically.

* fix linting
2019-08-24 13:54:59 -04:00
Benaiah Mischenko
edf0a3afdc feat(backend-github): Open Authoring (#2430)
* Make filterPromises resolve entries before filtering

* Add filterPromisesWith & onlySuccessfulPromises to utility library

* Memoize user method in GitHub API

* Make storeMetadata safe to call concurrently in GitHub API

* Fork workflow: startup and authentication

* Fork workflow: backend support

* Fork workflow: disable unused UI elements

* Fork workflow: docs

* Fork workflow: fix deploy previews

* Suggested edits for fork workflow doc

* Change future tense to present

* Fork workflow: add beta status to docs

* remove debug statement

* rename fork workflow to Open Authoring
2019-07-24 18:20:41 -04:00
Tony Alves
82cc7941cc feat: provide usable UMD builds for all packages (#2141) 2019-03-16 18:44:29 -04:00
Benaiah Mischenko
da2249c651 Netlify Large Media integration (#2124) 2019-02-26 13:11:15 -05:00
Tony Alves
da91038067 improvement(backends): changes for registerBackend compatibility (#1880) 2018-11-26 16:30:50 -05:00
Shawn Erquhart
0596904e0b
feat(media): add external media library support, Uploadcare integration (#1602) 2018-08-30 16:24:28 -04:00
Tony Zhang
4f3116de4d fix: remove alert modal from localForage error case (#1676) 2018-08-28 17:48:10 -04:00
Caleb
f801b19221 chore: add code formatting and linting (#952) 2018-08-07 16:46:54 -04:00
Caleb
88f7dca328 chore(lint): cleanup unused variables in code (#1563) 2018-08-07 11:53:31 -04:00
Caleb
5a27fb8b9d chore: fix miscellaneous errors from linters (#1555) 2018-07-31 17:03:46 -04:00
Caleb
4f6e8cea44 chore: remove unused imports (#1534) 2018-07-28 16:33:42 -04:00
Shawn Erquhart
bdfd9443db
fix(bitbucket): fix rebasing mistakes in bitbucket backend and deps (#1522) 2018-07-26 13:42:19 -04:00
Shawn Erquhart
aac5167461 migrate bitbucket backend 2018-07-25 21:17:57 -04:00
Shawn Erquhart
2f95d8c4fc use webpack for all builds 2018-07-25 21:17:57 -04:00
Shawn Erquhart
040dd6859c fix build, migrate test backend 2018-07-25 21:17:57 -04:00
Shawn Erquhart
2e7406862e fix various bugs 2018-07-25 21:17:57 -04:00
Shawn Erquhart
e491f2a085 move errors to utils lib 2018-07-25 21:17:57 -04:00
Shawn Erquhart
768fcbaa1d begin scaffolding for lerna 2018-07-25 21:17:57 -04:00