378 Commits

Author SHA1 Message Date
9e7aa0c500 fix: duplicate and new entry action (#3003)
* fix: duplicate and new entry action

* test(e2e): flush clock when duplicating entry to handle debounced fields

Co-authored-by: Erez Rokah <erezrokah@users.noreply.github.com>
2019-12-25 11:47:02 +02:00
e4ba4d9d74 fix: cleanup nested widget validation (#2991)
* fix: cleanup nested widget validation

* fix: list input widget validation
2019-12-25 10:48:47 +02:00
982fd7b0f8 fix: always ensure collection exists before routing (#2992) 2019-12-22 13:40:14 +02:00
8c175f6132 fix: rebase open authoring branches (#2975)
* fix: create open authoring branches from default origin branch

* refactor: pass repoURL to getBranch

* fix(backend-github): rebase open authoring branch,support multiple files
2019-12-20 12:33:43 -05:00
9173d8c97e fix: select widget dropdown options (#2981) 2019-12-19 10:47:09 -05:00
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
af61245360 fix: don't show progress when loading preview status (#2974) 2019-12-17 08:30:08 +02:00
18c579d0e9 feat: Code Widget + Markdown Widget Internal Overhaul (#2828)
* wip - upgrade to slate 0.43

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* finish list handling logic

* add plugins directory

* tests wip

* setup testing

* wip

* add selection commands

* finish list testing

* stuff

* add codemirror

* abstract codemirror from slate

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* codemirror mostly working, some bugs

* upgrade to slate 46

* upgrade to slate 47

* wip

* wip

* progress

* wip

* mostly working links with surrounding marks

* wip

* tests passing

* add test

* fix formatting

* update snapshots

* close self closing tag in markdown html output

* wip - commonmark

* hold on commonmark work

* all tests passing

* fix e2e specs

* ignore tests in esm builds

* break/backspace plugins wip

* finish enter/backspace spec

* fix soft break handling

* wip - editor component deletion

* add insertion points

* make insertion points invisible

* fix empty mark nodes output to markdown

* fix pasting

* improve insertion points

* add static bottom insertion point

* improve click handling at insertion points

* restore current table functionality

* add paste support for Slate fragments

* support cut/copy markdown, paste between rich/raw editor

* fix copy paste

* wip - paste/select bug fixing

* fixed known slate issues

* split plugins

* fix editor toggles

* force text cursor in code widget

* wip - reorg plugins

* finish markdown control reorg

* configure plugin types

* quote block adjacent handling with tests

* wip

* finish quote logic and tests

* fix copy paste plugin migration regressions

* fix force insert before node

* fix trailing insertion point

* remove empty headers

* codemirror working properly in markdown widget

* return focus to codemirror on lang select enter

* fix state issues for widgets with local state

* wip - vim working, just need to work out distribution

* add settings pane

* wip - default modes

* fix deps

* add programming language data

* implement linguist langs in code widget

* everything built in

* remove old registration code, fix focus styling

* fix/update linting setup

* fix js lint errors

* remove stylelint from format script

* fix remaining linting errors

* fix reducer test failures

* chore: update commitlint for worktree support

* chore: fix remaining tests

* chore: drop unused monaco plugin

* chore: remove extraneous global styles rendering

* chore: fix failing tests

* fix: tests

* fix: quote/list nesting (tests still broken)

* fix: update quote tests

* chore: bring back code widget test config

* fix: autofocus

* fix: code blocks without the code widget

* fix: code editor component state issues

* fix: error

* fix: add code block test, few fixes

* chore: remove notes

* fix: [wip] update stateful shortcodes on undo/redo

* fix: support code styled links, handle unknown langs

* fix: few fixes

* fix: autofocus on insert, focus on all clicks

* fix: linting

* fix: autofocus

* fix: update code block fixture

* fix: remove unused cypress snapshot plugin

* fix: drop node 8 test, add node 12

* fix: use lodash.flatten instead of Array.flat

* fix: remove console logs
2019-12-16 19:17:37 +02:00
d180bffb44 feat: duplicate entry (#2956) 2019-12-10 20:33:02 -05:00
d0b32a7a0a fix(core): use UTC date methods for slug formatting (#2944) 2019-12-02 17:03:18 -05:00
3c4865f2a7 fix: keep editor slug path (#2934)
* fix: keep editor slug path

* fix: cleanup

* refactor: remove unused path preview component
2019-12-01 10:46:45 +02:00
45a6ee92cc fix: unpublish published entry (#2931) 2019-11-29 17:49:19 +02:00
caaa8b6db4 fix: load unpublished entries (#2927)
* fix: load unpublished entries

* test(cypress): re-record fixtures data
2019-11-28 17:07:07 +02:00
4c5f013d15 chore: fix some dev mode console errors (#2924) 2019-11-28 11:02:19 +02:00
afcfe5b6d5 feat: content in sub folders (#2897) 2019-11-27 22:39:33 -05:00
41bb9aac0d feat: workflow unpublished entry (#2914)
* feat: workflow unpublished entry

* fix: post rebase fix - load unpublished entry after unpublish

* feat: change unpublish button to dropdown

* test(cypress): add unpublish entry cypress test
2019-11-26 12:14:04 +02:00
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
9ddfa48512 fix: emotion use ref prop (#2905) 2019-11-21 09:10:33 +02:00
ead46af194 chore(deps): update dependency prettier to v1.19.1 (#2893)
* chore(deps): update dependency prettier to v1.19.1

* style: format files after prettier upgrade
2019-11-18 17:51:51 +02:00
6515dee871 feat: commit media with post (#2851)
* feat: commit media with post - initial commit

* feat: add draft media indication

* feat: sync UI media files with GitHub on entry load

* feat: bug fixes

* feat: delete media files from github when removed from library

* test: add GitHub backend tests

* test: add unit tests

* fix: meta data object files are not updated

* feat: used nested paths when update a tree instead of recursion

* feat(test-backend): update test backend to persist media file with entry

* test(e2e): re-record fixtures data

* chore: code cleanup

* chore: code cleanup

* fix: wait for library to load before adding entry media files

* chore: code cleanup

* fix: don't add media files on entry when not a draft

* fix: sync media library after draft entry was published

* feat: update media library card draft style, add tests

* test: add Editor unit tests

* chore: test code cleanup

* fix: publishing an entry from workflow tab throws an error

* fix: duplicate media files when using test backend

* refactor: fix lodash import

* chore: update translations and yarn file after rebase

* test(cypress): update recorded data

* fix(test-backend): fix mapping of media files on publish
2019-11-17 11:51:50 +02:00
096b067d45 feat: add translation support (#2870)
* feat: add translation support

* test(cypress): fix locale import

* docs: add locale documentation

* feat: add german translation (#2877)

* fix: locales package version, register all locales in netlify-cms
2019-11-14 11:25:04 +02:00
f5c8ff31f1 fix(media-libs): accept string or string array for insertMedia action (#2857) 2019-11-11 11:30:34 +02:00
1d78a2705f improvement: add logs when a 404 error is expected (#2807)
improvement: add logs when a 404 error is expected

improvement: address code review feedback -return rejected promise
2019-11-10 10:34:03 +02:00
542a7acfe6 fix(workflow): label file collection entries in Workflow (#2566) 2019-11-08 18:28:17 -05:00
002cdd77a8 fix: change default open authoring scope, make it configurable (#2821) 2019-11-07 12:39:47 -05:00
c1c95874f4 fix(backend-test-repo): show notice when test repo is in use (#2678) 2019-11-05 18:21:38 -05:00
2841ff9ffe feat: enable specifying custom open authoring commit message (#2810) 2019-10-28 15:29:47 -04:00
7ca528b20a enhancement: improve error with no existing widget (#2722)
* enhancement: improve error with no existing widget

* Update Widget.js

* chore: fix formatting of Widget.js
2019-10-24 11:59:32 +03:00
68dd995d97 Fix lint issues with propTypes (#2713) 2019-10-24 11:45:00 +03:00
c54f896e39 fix: hide collection item overflow on hover (#2706) 2019-10-23 14:08:46 -04:00
f3e58e6be2 fix history console warning (#2789) 2019-10-23 15:58:54 +03:00
d38d4665c4 test(cleanup): remove/reintorduce skipped tests (#2788) 2019-10-23 13:22:48 +03:00
04b371825e chore: fix the typos in comments (#2679) 2019-09-24 16:16:09 -04:00
8bdfea4728 fix: prevent deletion of file collection entries by default (#2627) 2019-09-05 18:08:07 -04:00
752927060e improvement(editor): remove editor width constraint (#2626)
* Remove Editor max width

* Increase divider width
2019-09-05 15:26:31 -04:00
6765bbd2fd fix(core): list widget pattern validation (#2599)
* fix list widget pattern validation

* remove array value check
2019-09-05 15:06:56 -04:00
9f003106e5 fix(media-library): automatically select uploaded image (#2569) 2019-09-05 13:38:27 -04:00
e674e43f9f fix(github-graphql): use getMediaDisplayURL to load media with auth header (#2652) 2019-09-04 18:56:06 -04:00
ce95a774b2 fix(core): don't pass boolean value to string prop, use null instead (#2609) 2019-09-04 18:39:21 -04:00
5b64e25d07 fix(core): don't pass ref to react-polyglot 'translate' function component (#2607) 2019-09-04 18:38:41 -04:00
1aff33e158 chore: update and document edit route (#2619)
* chore: update and document edit route

* fix formatting
2019-09-03 20:37:31 -04:00
083a336ba4 feat(routing): support direct linking to entries (#2556) 2019-08-28 20:37:56 -04:00
6e6e4b86ca improvement(editor): add title to toggle buttons (#2548) 2019-08-28 18:48:30 -04:00
9cb7cd7214 Update toml library from toml-j0.4 to @iarna/toml@2.2.3 (#2547) 2019-08-28 18:46:11 -04:00
4c5fe6a606 fix(media-library): no render of non-viewable files (#2546) 2019-08-28 18:27:48 -04:00
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
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
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
326ed4dc3f fix(core): fix broken search (#2488) 2019-07-24 15:29:37 -04:00
a02496b0dd fix(core): load more entries until viewport is filled (#2415) 2019-06-28 17:30:39 -04:00