81 Commits

Author SHA1 Message Date
Erez Rokah
529186a7cf
fix(list-entries-integration): don't show commit date & author default sort (#4849) 2021-01-19 16:59:00 +02:00
Vladislav Shkodin
77dd88519f
refactor: different config loading strategy (#4807)
* move config loading from App.js to bootstrap.js

* remove mergeConfig action

* introduce deepmerge package

* fix: manual init

Co-authored-by: erezrokah <erezrokah@users.noreply.github.com>
2021-01-13 19:51:45 +02:00
Vladislav Shkodin
f60c2871d3
refactor: remove immutable from medias state slice (#4740) 2020-12-23 13:53:50 +02:00
Vladislav Shkodin
655fffe7c9
refactor: remove immutable from status and auth (#4727) 2020-12-20 12:59:25 +02:00
Vladislav Shkodin
df97aec9aa
fix(typings): make 'status' state slice more typesafe (#4709) 2020-12-15 12:38:59 +02:00
Vladislav Shkodin
929ca380bb
refactor(typings): migrate 'auth' state slice to TypeScript (#4698) 2020-12-13 13:35:07 +02:00
Kancer (Nilay) Gökırmak
e52e29034e
feat: Add group by to collection view (Issue 3614) (#4486) 2020-11-08 18:33:09 +02:00
Kancer (Nilay) Gökırmak
950f5c59ec
chore: remove redux-optimist 2020-10-21 21:30:55 +03:00
stefanprobst
ecb4fd6165
fix: allow setting per-file editor preview (#4414) 2020-10-12 13:33:18 +03:00
Erez Rokah
cb2ad687ee
Feat: multi content authoring (#4139) 2020-09-20 20:30:46 +03:00
andreascm
88a5a8098e
fix: deprecate inconsistent config param case (#4172) 2020-08-31 14:25:48 +03:00
andreascm
017883f0dc
fix: persistent view style (#4138) 2020-08-13 14:21:47 +03:00
Erez Rokah
07f47824e9
chore: replace react-router-redux with connected-react-router (#4001) 2020-07-09 19:08:18 +03:00
Erez Rokah
822819f42a
fix(editor-media-lib): handle duplicate media folders (#3921) 2020-06-18 20:31:46 +03:00
Erez Rokah
af7bbbd9a9
Feat: nested collections (#3716) 2020-06-18 10:11:37 +03:00
Nigel Huang
a50edc7055
feat: add backend status down indicator (#3889) 2020-06-15 17:59:28 +03:00
Erez Rokah
285c940562
fix: handle token expiry (#3847) 2020-06-03 12:44:03 +03:00
Shashank Bairy R
c28cc0c9e7
feat: add filter to collection view (#3741) 2020-05-24 20:37:08 +03:00
Hannes Küttner
588622adb2
feat: improve search to target single collections (#3760) 2020-05-18 10:52:06 +03:00
Erez Rokah
213ae86b54
feat(widget-relation): string templates support (#3659) 2020-04-30 16:03:08 +03:00
Erez Rokah
cf57284f40
fix(sort): don't clear sort data on entries request (#3648) 2020-04-22 16:05:47 +03:00
Hannes Küttner
625a9980f1
fix: unify the title used in entry cards and workflow cards (#3573) (#3575) 2020-04-12 19:31:25 +03:00
Erez Rokah
4afbbdd8a9
feat(yaml): support comments (#3529) 2020-04-07 15:00:06 +03:00
Erez Rokah
1a577b8e27
fix: set default public_folder on files and fields (#3519) 2020-04-01 17:18:56 +03:00
Erez Rokah
174d86f0a0
Feat: entry sorting (#3494)
* refactor: typescript search actions, add tests avoid duplicate search

* refactor: switch from promise chain to async/await in loadEntries

* feat: add sorting, initial commit

* fix: set isFetching to true on entries request

* fix: ui improvments and bug fixes

* test: fix tests

* feat(backend-gitlab): cache local tree)

* fix: fix prop type warning

* refactor: code cleanup

* feat(backend-bitbucket): add local tree caching support

* feat: swtich to orderBy and support multiple sort keys

* fix: backoff function

* fix: improve backoff

* feat: infer sortable fields

* feat: fetch file commit metadata - initial commit

* feat: extract file author and date, finalize GitLab & Bitbucket

* refactor: code cleanup

* feat: handle github rate limit errors

* refactor: code cleanup

* fix(github): add missing author and date when traversing cursor

* fix: add missing author and date when traversing cursor

* refactor: code cleanup

* refactor: code cleanup

* refactor: code cleanup

* test: fix tests

* fix: rebuild local tree when head doesn't exist in remote branch

* fix: allow sortable fields to be an empty array

* fix: allow translation of built in sort fields

* build: fix proxy server build

* fix: hide commit author and date fields by default on non git backends

* fix(algolia): add listAllEntries method for alogolia integration

* fix: handle sort fields overflow

* test(bitbucket): re-record some bitbucket e2e tests

* test(bitbucket): fix media library test

* refactor(gitgateway-gitlab): share request code and handle 404 errors

* fix: always show commit date by default

* docs: add sortableFields

* refactor: code cleanup

* improvement: drop multi-sort, rework sort UI

* chore: force main package bumps

Co-authored-by: Shawn Erquhart <shawn@erquh.art>
2020-03-31 23:13:27 -04:00
Erez Rokah
45a1654404
fix: don't use getAsset for draft entries (#3403) 2020-03-22 16:53:06 +02:00
Erez Rokah
2409323dba
fix: call createDraftFromEntry after entry is loaded instead in Editor (#3418)
* fix: call createDraftFromEntry after entry is loaded instead in Editor
2020-03-16 20:48:49 +01:00
Erez Rokah
e0b1246810
feat: populate new entry from URL params (#3343) 2020-03-02 11:32:22 +01:00
Erez Rokah
961cde4ea5
fix: consider variable types when traversing collection fields (#3347) 2020-02-28 20:06:34 +01:00
Bartholomew
cf81f587cf
fix: ensure draft changes (#3306) 2020-02-28 11:40:51 +01:00
Erez Rokah
1d63038e78
fix(core): report config error when external media lib is missing (#3255) 2020-02-14 15:32:36 -05:00
Erez Rokah
02ef2010e7
Fix: show specific field media files in library, cascade folder templates (#3252)
* feat: cascade & compose media folders - initial commit

* refactor: code cleanup

* fix: pass field instead of folder to getAsset

* fix: only show field media files in library

* test: fix medial library selector test

* fix: fallback to original path when asset not found

* fix: only show field media files in media library

* fix: properly handle empty strings in field folders
2020-02-14 15:31:33 -05:00
Erez Rokah
ab685e8594
fix: change getAsset to not return a promise (#3232)
* fix: change getAsset to not return a promise

* fix: update markdown widget per getAsset changes

* test: fix editor component image test

* docs: update getAsset docs
2020-02-12 19:12:36 -05:00
Erez Rokah
c4125625f9
Feat: Allow using subfields as identifier field (#3219) 2020-02-12 08:30:44 +02:00
Erez Rokah
97bc0c8dc4
feat: field based media/public folders (#3208) 2020-02-10 11:05:47 -05:00
Erez Rokah
a215cfbe3a
fix: allow absolute paths for collection media folder (#3160) 2020-01-28 10:33:21 -08: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
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
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
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
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
Erez Rokah
af61245360
fix: don't show progress when loading preview status (#2974) 2019-12-17 08:30:08 +02: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
Bartholomew
d180bffb44 feat: duplicate entry (#2956) 2019-12-10 20:33:02 -05:00
Erez Rokah
afcfe5b6d5 feat: content in sub folders (#2897) 2019-11-27 22:39:33 -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
Ananthakumar
542a7acfe6 fix(workflow): label file collection entries in Workflow (#2566) 2019-11-08 18:28:17 -05:00
Erez Rokah
d38d4665c4
test(cleanup): remove/reintorduce skipped tests (#2788) 2019-10-23 13:22:48 +03:00
polemius
04b371825e chore: fix the typos in comments (#2679) 2019-09-24 16:16:09 -04:00