284 Commits

Author SHA1 Message Date
Bartholomew
d1179e3999
fix: media file path (#3166) 2020-01-29 09:54:01 -08:00
Shawn Erquhart
4cad2700a2 chore(release): publish
- netlify-cms-app@2.11.11
 - netlify-cms-core@2.15.4
 - netlify-cms-locales@1.7.0
 - netlify-cms-proxy-server@1.0.5
 - netlify-cms-widget-code@1.1.3
 - netlify-cms@2.10.14
2020-01-28 18:17:39 -08:00
Erez Rokah
06c045e4e6
fix: don't show duplicate entry when create is disabled (#3162) 2020-01-28 14:28:33 -08:00
Erez Rokah
a215cfbe3a
fix: allow absolute paths for collection media folder (#3160) 2020-01-28 10:33:21 -08:00
Shawn Erquhart
06b50ba829 chore(release): publish
- netlify-cms-app@2.11.7
 - netlify-cms-backend-proxy@1.0.2
 - netlify-cms-core@2.15.3
 - netlify-cms-lib-util@2.6.1
 - netlify-cms-proxy-server@1.0.2
 - netlify-cms@2.10.10
2020-01-22 16:55:18 -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
cf57da223d Feat: media folders templates (#3116)
* refactor: typescript backendHelper

* test: add string templating tests

* test: add createPreviewUrl invalid date test

* refactor: move all formatters to one file

* feat: support media folders templating

* feat: add filename and extension template variables

* feat: support paths in string templates

* docs: add media folder templating docs

* style(docs): remove line break
2020-01-22 13:42:24 -05:00
Shawn Erquhart
7f580db56f chore(release): publish
- netlify-cms-app@2.11.4
 - netlify-cms-core@2.15.2
 - netlify-cms-widget-markdown@2.8.2
 - netlify-cms@2.10.7
2020-01-15 10:30:30 -05:00
Erez Rokah
c4cbae7725 revert: don't force multiline flag for editor component patterns (#3089)
* revert: don't force multiline flag for editor component patterns

refs: 338c1b68d2865a20fed851295451175b840983d4, 4839160ee6126adfbab7bfa58452560090c00737

github issues: 3088, 3086

* fix: only trim ending white spaces/line breaks when parsing shortcodes

remark validates the value of the 'eat' function using a prefix match between the original value and the value provided. Trimming the start can break that validation

* fix: change console log to warn
2020-01-15 10:28:09 -05:00
Shawn Erquhart
1091bfcd4f chore(release): publish
- netlify-cms-app@2.11.3
 - netlify-cms-backend-bitbucket@2.7.2
 - netlify-cms-backend-git-gateway@2.6.1
 - netlify-cms-backend-github@2.6.3
 - netlify-cms-backend-gitlab@2.5.1
 - netlify-cms-backend-test@2.7.1
 - netlify-cms-core@2.15.1
 - netlify-cms-lib-auth@2.2.7
 - netlify-cms-lib-util@2.5.1
 - netlify-cms@2.10.6
2020-01-14 18:29:44 -05: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
Shawn Erquhart
4ff5bc2ee0 chore(release): publish
- netlify-cms-app@2.11.2
 - netlify-cms-backend-github@2.6.2
 - netlify-cms-core@2.15.0
 - netlify-cms-locales@1.5.0
 - netlify-cms-widget-markdown@2.8.1
 - netlify-cms@2.10.5
2020-01-14 13:25:26 -05:00
Erez Rokah
0a50efda8e feat: support per collection public_folder (#3069)
* feat: support per collection public_folder

* test: improve tests readability
2020-01-14 13:02:53 -05:00
Shawn Erquhart
476f45096e fix(core): force multiline flag for editor component patterns (#3082) 2020-01-14 08:44:37 +02:00
Mauro Bieg
24a81ef9b7 Add media_library.config.max_file_size option (#3028)
* feat: add media_library.config.max_file_size option
2020-01-09 19:56:11 +02:00
Shawn Erquhart
d2db746b9d chore(release): publish
- netlify-cms-app@2.11.1
 - netlify-cms-backend-bitbucket@2.7.1
 - netlify-cms-backend-github@2.6.1
 - netlify-cms-core@2.14.1
 - netlify-cms-locales@1.4.1
 - netlify-cms@2.10.4
2020-01-09 10:10:43 -05:00
Erez Rokah
5bd724026c
fix: don't wait for external media library to load (#3050) 2020-01-08 17:21:14 +02:00
Shawn Erquhart
0a06d8eb47 chore(release): publish
- netlify-cms-app@2.11.0
 - netlify-cms-backend-bitbucket@2.7.0
 - netlify-cms-backend-git-gateway@2.6.0
 - netlify-cms-backend-github@2.6.0
 - netlify-cms-backend-gitlab@2.5.0
 - netlify-cms-backend-test@2.7.0
 - netlify-cms-core@2.14.0
 - netlify-cms-editor-component-image@2.5.0
 - netlify-cms-lib-util@2.5.0
 - netlify-cms-locales@1.4.0
 - netlify-cms-ui-default@2.8.0
 - netlify-cms-widget-code@1.1.2
 - netlify-cms-widget-file@2.5.0
 - netlify-cms-widget-image@2.5.0
 - netlify-cms-widget-list@2.4.1
 - netlify-cms-widget-markdown@2.8.0
 - netlify-cms-widget-object@2.3.1
 - netlify-cms@2.10.3
2020-01-07 15:04:08 -05:00
Erez Rokah
b5ffccdac5 feat(backend-git-gateway): handle identity disabled error message (#3002) 2020-01-06 14:10:37 -05:00
Bartholomew
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
Bartholomew
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
Shawn Erquhart
982fd7b0f8 fix: always ensure collection exists before routing (#2992) 2019-12-22 13:40:14 +02:00
Erez Rokah
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
Shawn Erquhart
1695b76a09 chore(release): publish
- netlify-cms-app@2.11.0-beta.1
 - netlify-cms-core@2.14.0-beta.1
 - netlify-cms-widget-code@1.1.2-beta.0
 - netlify-cms@2.10.2-beta.0
2019-12-19 16:09:35 -05:00
Bartholomew
9173d8c97e fix: select widget dropdown options (#2981) 2019-12-19 10:47:09 -05:00
Shawn Erquhart
b5c42bdcc9 chore(release): publish
- netlify-cms-app@2.11.0-beta.0
 - netlify-cms-backend-bitbucket@2.7.0-beta.0
 - netlify-cms-backend-git-gateway@2.6.0-beta.0
 - netlify-cms-backend-github@2.6.0-beta.0
 - netlify-cms-backend-gitlab@2.5.0-beta.0
 - netlify-cms-backend-test@2.7.0-beta.0
 - netlify-cms-core@2.14.0-beta.0
 - netlify-cms-editor-component-image@2.5.0-beta.0
 - netlify-cms-lib-util@2.5.0-beta.0
 - netlify-cms-ui-default@2.8.0-beta.0
 - netlify-cms-widget-file@2.5.0-beta.0
 - netlify-cms-widget-image@2.5.0-beta.0
 - netlify-cms-widget-markdown@2.8.0-beta.0
 - netlify-cms@2.10.1-beta.0
2019-12-18 11:18:23 -05: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
Shawn Erquhart
7e4d4c1cc4 chore(release): publish
- netlify-cms-app@2.10.0
 - netlify-cms-backend-bitbucket@2.6.0
 - netlify-cms-backend-github@2.5.0
 - netlify-cms-backend-gitlab@2.4.0
 - netlify-cms-backend-test@2.6.0
 - netlify-cms-core@2.13.0
 - netlify-cms-lib-auth@2.2.6
 - netlify-cms-lib-util@2.4.0
 - netlify-cms-locales@1.3.0
 - netlify-cms-ui-default@2.7.0
 - netlify-cms-widget-list@2.4.0
 - netlify-cms-widget-markdown@2.7.0
 - netlify-cms@2.10.0
2019-12-18 11:02:29 -05:00
Erez Rokah
af61245360
fix: don't show progress when loading preview status (#2974) 2019-12-17 08:30:08 +02:00
Shawn Erquhart
e4272817c2 chore(release): publish
- netlify-cms-app@2.10.0-beta.5
 - netlify-cms-backend-bitbucket@2.6.0-beta.1
 - netlify-cms-backend-github@2.5.0-beta.8
 - netlify-cms-core@2.13.0-beta.10
 - netlify-cms-default-exports@2.3.0
 - netlify-cms-locales@1.3.0-beta.2
 - netlify-cms-ui-default@2.7.0-beta.5
 - netlify-cms-widget-boolean@2.3.0
 - netlify-cms-widget-code@1.1.0
 - netlify-cms-widget-date@2.4.0
 - netlify-cms-widget-image@2.4.0
 - netlify-cms-widget-list@2.4.0-beta.0
 - netlify-cms-widget-markdown@2.7.0-beta.0
 - netlify-cms-widget-object@2.3.0
 - netlify-cms-widget-text@2.3.0
 - netlify-cms@2.10.0-beta.5
2019-12-16 12:37:43 -05:00
Shawn Erquhart
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
Shawn Erquhart
feccfa2821 chore(release): publish
- netlify-cms-app@2.10.0-beta.4
 - netlify-cms-core@2.13.0-beta.9
 - netlify-cms-locales@1.3.0-beta.1
 - netlify-cms-ui-default@2.7.0-beta.4
 - netlify-cms@2.10.0-beta.4
2019-12-10 20:35:59 -05:00
Bartholomew
d180bffb44 feat: duplicate entry (#2956) 2019-12-10 20:33:02 -05:00
Shawn Erquhart
c8d6eaf239 chore(release): publish
- netlify-cms-app@2.10.0-beta.3
 - netlify-cms-backend-bitbucket@2.6.0-beta.0
 - netlify-cms-backend-github@2.5.0-beta.7
 - netlify-cms-backend-gitlab@2.4.0-beta.1
 - netlify-cms-backend-test@2.6.0-beta.0
 - netlify-cms-core@2.13.0-beta.8
 - netlify-cms-lib-auth@2.2.6-beta.0
 - netlify-cms-locales@1.3.0-beta.0
 - netlify-cms-widget-markdown@2.6.1-beta.0
 - netlify-cms@2.10.0-beta.3
2019-12-02 17:04:48 -05:00
Shawn Erquhart
d0b32a7a0a
fix(core): use UTC date methods for slug formatting (#2944) 2019-12-02 17:03:18 -05:00
Yuri Drabik
7391061b3b fix: .d.ts definitions for core and app (#2929)
* fix: .d.ts definitions for core and app

* fix: updated ts types to match the schema
2019-12-02 13:04:07 +02:00
Bartholomew
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
Bartholomew
45a6ee92cc fix: unpublish published entry (#2931) 2019-11-29 17:49:19 +02:00
Bartholomew
caaa8b6db4 fix: load unpublished entries (#2927)
* fix: load unpublished entries

* test(cypress): re-record fixtures data
2019-11-28 17:07:07 +02:00
Erez Rokah
4c5f013d15
chore: fix some dev mode console errors (#2924) 2019-11-28 11:02:19 +02:00
Erez Rokah
afcfe5b6d5 feat: content in sub folders (#2897) 2019-11-27 22:39:33 -05:00
Shawn Erquhart
6909008a5c chore(release): publish
- netlify-cms-app@2.10.0-beta.2
 - netlify-cms-backend-github@2.5.0-beta.6
 - netlify-cms-backend-test@2.5.0
 - netlify-cms-core@2.13.0-beta.7
 - netlify-cms-lib-util@2.4.0-beta.5
 - netlify-cms-locales@1.2.0
 - netlify-cms@2.10.0-beta.2
2019-11-26 17:17:42 -05:00
Bartholomew
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
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
renovate[bot]
695b0e0380 fix(deps): update dependency react-is to v16.12.0 (#2912) 2019-11-25 13:12:20 +02:00
Bartholomew
9ddfa48512 fix: emotion use ref prop (#2905) 2019-11-21 09:10:33 +02:00
Shawn Erquhart
dc0c4c51ed chore(release): publish
- netlify-cms-app@2.10.0-beta.0
 - netlify-cms-backend-git-gateway@2.5.1
 - netlify-cms-backend-github@2.5.0-beta.5
 - netlify-cms-backend-test@2.4.0
 - netlify-cms-core@2.13.0-beta.6
 - netlify-cms-lib-auth@2.2.5
 - netlify-cms-locales@1.1.0
 - netlify-cms-ui-default@2.7.0-beta.2
 - netlify-cms-widget-markdown@2.5.2
 - netlify-cms-widget-relation@2.5.0
 - netlify-cms@2.10.0-beta.0
2019-11-18 16:56:44 -05:00
Erez Rokah
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
Erez Rokah
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
Erez Rokah
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