42 Commits

Author SHA1 Message Date
Caleb
d10f97f561 Allow different beginning and ending frontmatter delimiters. 2018-02-21 17:01:13 -05:00
Swieckowski
afce6abbc2 Custom delimiters (#1064)
* frontmatter functions now exported as curried constructors

* changed formats.js to accomodate frontmatter.js changes

* can only use custom delimiters if format is specified

* reverting changes

* updated tests to reflect changes

* created tests for custom delimiters

* updated docs to reflect addition of custom delimiter configuration

* formatByExtension no longer takes custom delimiter

* missed some formatByExtension calls

* Edited the docs according to suggestions

* Throws an error if a custom delimiter is set without declaring frontmatter format

* Throws error if custom delimiter set without explicit and proper frontmatter format being declared

* example config file set to proper defaults

* moved frontmatterFormats to formats

* Update .all-contributorsrc

* updated contributions

* Clarify docs
2018-02-08 18:04:42 -07:00
Caleb
756d562c66 Support writing frontmatter in multiple formats (#933)
* Format JSON files.

Currently we store JSON as a single line in files. We should prettify it
like we do the other formats.

* Add output parsers to the frontmatter list.

* Cleanup frontmatter format parser options.

* Support writing frontmatter in TOML and JSON.

Right now we can read TOML or JSON frontmatter by inferring,
but we can only write frontmatter in YAML. This change allows the
frontmatter format to be explicitly set for reading and writing.

* Fix frontmatter formatter.

* Update Frontmatter formatter tests.

* Update frontmatter format docs.
2018-01-29 17:35:36 -05:00
Caleb
e45f531319 Format JSON files.
Currently we store JSON as a single line in files. We should prettify it
like we do the other formats.
2018-01-03 17:55:51 -05:00
Shawn Erquhart
cfbf31b130
WIP - Global UI (#785)
* update top bar and collections sidebar UI

* update collection entries UI

* improve global layout

* merge search page into collection page

* enable new entry button

* search fixup

* wip -initial editor update

* update editor scrolling and markdown toolbar position

* wip

* editor toolbar progress

* editor toolbar wip

* finished basic editor toolbar

* add standalone toggle component

* improve markdown toolbar spacing

* add user avatar placeholder

* finish markdown toggle styling

* refactor icon setup, add new icons

* add new icons to markdown editor toolbar

* remove extra app container

* add markdown active mark style

* relation and text widget styling

* widget design updates, basic list/object design update

* widget style updates, image widget improvements

* refactor widget directory, fix file removal

* widget focus styles

* finish editor widget focus styles

* migrate media library modal to react-modal

* wip - migrate editor component form to modal

* wip - move editor component form to modal

* wip - embed plugin forms in the editor

* inline shortcode forms working

* disable react hot loading, its breaking things

* improve shortcode form styles

* make shortcode form collapsible, improve styling

* add close functionality to shortcode blocks

* improve base media library styling

* fix shortcode label

* migrate unstyled workflow to new UI

* wip - reorganizing everything

* more work moving everything

* finish more moving and eliminating stuff

* restructure, remove react-toolbox

* wip - removing old stuff, more restructure

* finish restructure

* wip - css arch

* switch back to test repo

* update react-datetime to ^2.11.0

* remove leftover react-toolbox button

* more restructuring clean-up

* fix UI component directory case

* wip -css editor control style

* wip - consolidate widget styles

* wip - use a single control renderer

* fixed object values breaking

* wip - editor control active styles

* pass control wrapper to widgets

* ensure branch name is trimmed

* wip - improve widget authoring support

* import Map to Widget component

* refactor toolbar buttons

* wip - more widget active styles

* break out editor toggle component

* add local scroll sync back

* update editor toggle icons

* limit editor control pane content width

* fix editor control spacing

* migrate markdown toolbar stickiness to css

* fix markdown toolbar border radius

* temporarily use test backend

* stop markdown toolbar from going to bottom

* restore disabled markdown toolbar buttons for raw

* test markdown widget without focus styles

* more widget updates

* remove card visuals from editor

* disable dragging editor split off screen

* use editorControl component for shortcode fields

* make header site link configurable

* add configurable collection descriptions

* temporarily add example assets

* add basic list view

* remove outdated css mixins

* add and implement search icon

* activate quick add menu

* visualize usable space in editor view

* fix entry close, other improvements

* wip - editorial workflow updates

* some dropshadow and other CSS tweaks

* workflow ui updates

* add worfklow card buttons

* fix workflow card button handlers

* some dropshadow and other CSS tweaks

* make workflow board wider

* center workflow and collection views

* add basic responsiveness

* a bunch of fun UI fixes! a BUNCH! (#875)

* give `.nc-entryEditor-toolbar-mainSection` left and right child divs

* a bunch of fun UI fixes! a BUNCH!

* remove obscure --buttonShadow

* revert to test repo

* fix not found page styling

* allow workflow publishing from any column

* disallow publishing from all columns, with feedback

* fix new entry button

* fix markdown state persisting across entries

* enable simple workflow save and new from editor

* update slug in address bar when saving new entry

* wip - workflow updates, deletion working

* add status change functionality to editor

* wip - improving status change from editor

* editor toolbar back button improvements, loading improvements, cleanup

* progress on the media library UI cleanup

* remove font smothing css

* a quick fix for these buttons

* tweaks

* progress on media library modal— broken FYI

* fix media library functionality, finish migrating footer

* remove media library footer files

* remove leftover css import

* fix media library

* editor publishing functionality complete (unstyled)

* remove leftover loader var from media library

* wip - editor publishing styles

* add status dropdown styling

* editor toolbar style updates

* editor toolbar state improvements

* progress on the media library UI cleanup, style improvements

* finish editorial workflow editor styling

* finish media library styling

* fix config

* add what-input to optimize focus styling

* fix button

* fix navigation blocking for simple workflow

* improve simple workflow publishing

* add avatar dropdown to editor top bar

* style github and test-repo auth pages

* add git gateway auth page styles

* improve editor error styling
2017-12-07 12:37:10 -05:00
Caleb
834c5f4942 Throw if cannot infer format from file extension. 2017-12-06 10:23:08 -05:00
Caleb
326dd48cc0 Remove support for markdown and html as explicit formats.
The `frontmatter` format is the correct one to use here.
2017-12-06 10:23:08 -05:00
Caleb
d5ff92e47e Throw config error if unsupported format. 2017-12-06 10:23:08 -05:00
Caleb
864083bc8b Infer format from extension for new entries.
If a collection has no format specified, we try to infer the format from
the file extension when reading. This commit also allows us to infer the
format from the `extension` set in the config, so that we can still
create the correct format when making a new file.
2017-12-06 10:07:07 -05:00
Caleb
0e51cff231 Do not infer file format if collection specified.
Before, we always tried to infer a file's format, even if it was
explicitly specified in the collection's config. This commit makes it so
that we always use the format from the config if it is specified, and
only if it is not set do we try to infer it from the file extension.
2017-12-06 09:53:38 -05:00
Caleb
a72a08f7a2 Add JSON as manually supported format. 2017-11-27 15:37:37 -05:00
Ernie Bello
0183ad433b fix persist with missing body from file 2017-11-11 14:34:21 -07:00
Caleb
37a36ffed4 Fix other than markdown editorial workflow entries on dashboard.
When entries were loaded for the editorial workflow dashboard, they were
all assumed to be FrontMatter/MarkDown files. This PR allows them to be
any supported format.
2017-11-11 10:34:29 -05:00
Caleb
1bb2b56366 Cleanup file formatters. (#759)
* Clean up frontmatter formatter.

* Move `formatToExtension`.

* Use plain objects for file formatters.

* Use same parsers for files and frontmatter.

We want to use our file parsers for frontmatter, instead of the builtin
ones, as they process some formats (images, dates) properly.

* Cleanup YAML frontmatter parser code.
2017-10-30 12:48:19 -07:00
Caleb
87536f9bcc Typo fix (#744) 2017-10-26 12:16:44 -07:00
Caleb
2ef6556d4a Add support for TOML files. (#740)
* Move `sortKeys` into a helper function.

* Add support for TOML files.
2017-10-26 11:43:28 -07:00
Caleb
b80c417429 Switch to a smaller/faster TOML parser. 2017-10-01 17:21:23 -06:00
Caleb
9f40edaf52 Re-add ability to parse frontmatter like ---json. 2017-09-15 19:22:04 -06:00
Caleb
335dd15e6d Fix JSON parser for gray-matter. 2017-09-15 19:22:04 -06:00
Caleb
ebf91a9800 Switch back to gray-matter for front-matter parsing. 2017-09-15 19:22:04 -06:00
Caleb
ab8226ce63 Infer front-matter type on our own. 2017-09-15 19:22:04 -06:00
Benaiah Mischenko
30dcc2bdf0 Fix confusing "yaml/yml" distinction in formats.js
Makes "yml" and "yaml" synonyms for both file extensions and format
settings.
2017-08-15 14:42:55 -07:00
Benaiah Mischenko
365c0358e9 Mock AssetProxy in frontmatter testing 2017-04-21 10:34:33 -07:00
Shawn Erquhart
17b40b58ea fix frontmatter stringification for date fields
Switches back to custom frontmatter stringification
until support lands in preliminaries. This is necessary
because we use custom schemas for certain data types,
such as dates and times.
2017-04-21 10:34:33 -07:00
Joseph Earl
265146e2d1 Fixes #278 filter files by extension 2017-04-18 22:59:30 +01:00
Joseph Earl
dc313d157b Rename YamlFrontmatter to just Frontmatter 2017-04-09 19:32:33 +01:00
Joseph Earl
a2e8602fdd Add multi-format frontmatter parser 2017-04-08 23:32:39 +01:00
Cássio Zen
b64259cb5a Sort frontmatter according to the fields order in config file. Closes #215 2017-01-19 12:09:18 -02:00
Cássio Souza
a4d7622ade Asset API (#204)
Asset API
2017-01-10 22:23:22 -02:00
Mathias Biilmann Christensen
8b82a5b72e Add a script for auto configurating a collection 2016-12-26 17:44:50 -08:00
Mathias Biilmann Christensen
c23b2fb531 Make list widget sortable 2016-10-30 16:01:10 -07:00
Mathias Biilmann Christensen
6b73c39ba8 Support for object widget 2016-10-28 04:51:37 +02:00
Mathias Biilmann Christensen
80a2cefbf0 Add json format support 2016-10-27 15:33:15 +02:00
Andrey Okonetchnikov
eb14200643 Fixed ESLint errors and warning that could be fixed with eslint --fix 2016-09-13 15:30:58 +02:00
Mathias Biilmann Christensen
42853f2af8 Handle formats better 2016-09-13 14:53:50 +02:00
Mathias Biilmann Christensen
7cd5d84fa5 Merge remote-tracking branch 'origin/react-pr' into react-ui-updates
Replaced dateFormat with moment

Conflicts:
	package.json
	src/backends/netlify-git/API.js
	src/containers/CollectionPage.js
	src/formats/formats.js
2016-09-12 15:35:56 +02:00
Mathias Biilmann Christensen
fcd0ce718a Support for YAML content 2016-09-11 23:08:18 +02:00
Cássio Zen
f0e608a209 Editorial Workflow skeleton 2016-09-06 13:04:17 -03:00
Cássio Zen
18ad041d96 Preparing for github file persistence 2016-07-19 17:11:22 -03:00
Cássio Zen
1ba98fdb5a refactor: Creating Medias reducer 2016-06-10 00:16:01 -03:00
Cássio Zen
83d03c63ec persistence draft
Persisting individual media file objects
2016-06-07 01:20:54 -03:00
Mathias Biilmann Christensen
978b7290c5 Test repo can now be used to list entries 2016-02-25 20:40:35 -08:00