548 Commits

Author SHA1 Message Date
Rafael Conde
8a9370fb0c Tweak header and card grid 2017-05-05 12:49:03 -04:00
Rafael Conde
9c1a41f61d Add hover effect on cards 2017-05-05 12:49:02 -04:00
Rafael Conde
de5f9bc708 Clean up basic colors and type 2017-05-05 12:49:02 -04:00
Shawn Erquhart
d0ee10a681 Merge pull request #394 from netlify/text-editor-scroll
prevent rte scroll, improve code display
2017-05-03 17:10:24 -04:00
Joseph Earl
bfe46a8e13 Fixes #324 Use branch name from config when creating PR 2017-05-01 08:17:46 -07:00
Shawn Erquhart
fdd44c88cb prevent rte scroll, improve code display 2017-04-28 15:40:54 -07:00
Benaiah Mischenko
9cdc39154a Prevent long code lines from breaking visual entry editor
Previously, long lines of preformatted text would cause the lines to
run off the side of the ProseMirror edit box and give the entire entry
editor a scrollbar. This commit makes the edit box itself scroll,
which looks and feels much less broken.
2017-04-26 12:23:37 -07:00
Shawn Erquhart
7a66dd4dcb remove superfluous rawMode editor prop 2017-04-24 22:39:37 -04:00
Shawn Erquhart
902134c4e8 add autosizing for markdown editor 2017-04-24 17:52:06 -04:00
Shawn Erquhart
ba2f092dc3 document Sticky microlib 2017-04-24 17:52:06 -04:00
Shawn Erquhart
9ff4e25736 move editor components to dropdown menu 2017-04-24 17:52:06 -04:00
Shawn Erquhart
fdd85486d8 update Toolbar proptypes 2017-04-24 17:52:06 -04:00
Shawn Erquhart
a3b487aaeb use React Toolbox Switch for rte mode selection 2017-04-24 17:52:06 -04:00
Shawn Erquhart
1a12c6f5aa fix rte markdown toggle position for small screens 2017-04-24 17:52:06 -04:00
Shawn Erquhart
86b7b84637 fold ToolbarPlugins into Toolbar 2017-04-24 17:52:06 -04:00
Shawn Erquhart
b8dce2fb4b split out ToolbarPluginForm 2017-04-24 17:52:05 -04:00
Shawn Erquhart
dd29658abb split out ToolbarPluginFormControl 2017-04-24 17:52:05 -04:00
Shawn Erquhart
63e916ee2a check for sticky ref before update 2017-04-24 17:52:05 -04:00
Shawn Erquhart
c7d3de0fc8 use ToolbarButton for plugins 2017-04-24 17:52:05 -04:00
Shawn Erquhart
c5d9f44de2 split out ToolbarButton component 2017-04-24 17:52:05 -04:00
Shawn Erquhart
5d839e8410 fix sticky toolbar width 2017-04-24 17:52:05 -04:00
Shawn Erquhart
a1a693051c improve preview toggle styling 2017-04-24 17:52:05 -04:00
Shawn Erquhart
192afe2ec5 make markdown toggle purpose more obvious
The "< >" button on the toolbar should format selected
text as code, but its serving as a visual mode toggle.
This commit switches out the code icon for a text label,
and moves it to the right side of the rich text toolbar.
2017-04-24 17:52:05 -04:00
Shawn Erquhart
de900eeb39 reposition properly when new sticky inserted 2017-04-24 17:52:05 -04:00
Shawn Erquhart
fc5d935e53 use Context for sticky, support multiple stickies 2017-04-24 17:52:05 -04:00
Shawn Erquhart
ec29a04089 implement initial working sticky rte toolbar 2017-04-24 17:52:05 -04:00
Shawn Erquhart
33fe2b820c add active state to rich text raw toggle 2017-04-24 17:52:04 -04:00
Shawn Erquhart
b2fd96c12e condense rich text functionality to static toolbar 2017-04-24 17:52:04 -04:00
Benaiah Mischenko
4bb03b8379 Merge pull request #382 from netlify/list-item-delete
fix list item deletion
2017-04-21 12:03:30 -07:00
Joseph Earl
6d7bf3b186 Fixes 298 Basic validation for config 2017-04-21 11:03:24 -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
Shawn Erquhart
d250b1cef3 fix list item deletion 2017-04-20 15:22:04 -04:00
Kevin McCormack
39852e9982 Fix filtering by file extension 2017-04-19 11:45:07 -04:00
Benaiah Mischenko
3be734da05 Merge pull request #370 from josephearl/filter-files-extension
Fixes #278 Filter folder collection files by extension
2017-04-18 16:28:05 -07:00
Joseph Earl
22137ed777 Fixes #292 Display version number 2017-04-18 16:11:48 -07:00
Joseph Earl
265146e2d1 Fixes #278 filter files by extension 2017-04-18 22:59:30 +01:00
Kevin McCormack
76bf16d62e Add backend config for site ID
Users can now specify `site_domain` in `config.yml`. This is useful
when attempting to access the CMS from a different host.
2017-04-18 16:24:45 -04:00
Joseph Earl
684fd1c490 Fixes 358 Save bar stuck 2017-04-14 21:30:49 +01:00
Shawn Erquhart
2047fda27c Merge pull request #360 from marzeelabs/feature/#359_list_children_metadata
#359 - Handle metadata for all children of a list field
2017-04-14 12:59:08 -04:00
Joseph Earl
4afec469f9 Merge pull request #355 from josephearl/113-disable-editor-preview
Fixes #113 Disable editor preview
2017-04-14 17:48:34 +01:00
Joseph Earl
4be23e5fc7 Show error if config fails to parse 2017-04-14 17:22:24 +01:00
Joseph Earl
e2f471e863 Remove webpack footer 2017-04-14 13:56:24 +01:00
Joseph Earl
881c0b0958 Fixes #113 Add ability to disable editor preview for a collection 2017-04-14 13:26:09 +01:00
Luis Correia
b75f86f4c2 #359 - Delete metadata by key of deleted value (previously harcoded) 2017-04-13 12:45:32 +01:00
Luis Correia
805f958165 #359 - Handle metadata for all children of a list field 2017-04-13 11:02:06 +01:00
Benaiah Mischenko
d58cd652d8 Cleanup resolvePromiseProperties
There were a couple issues with the original version of
`resolvePromiseProperties`:

- The wrapper promise was unnecessary, since we can just return the
  `Promise.all`. Fixing this allows us to remove a wrapping function,
  reduce indentation, remove the `resolve` and `reject` calls, and
  remove the now unnecessary `.catch` line.

- There was inadvertent mutation in the `Object.assign` call - the
  first parameter to `Object.assign` is mutated, so to call it without
  mutating existing objects the first parameter should be a literal
  `{}`. This is now fixed.
2017-04-11 10:55:56 -07: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
Benaiah Mischenko
d503547883 Stop showing loader forever when there are no entries (#343) 2017-04-07 09:32:30 -07:00
Benaiah Mischenko
12f5e4cda8 Merge pull request #306 from americool/adding-close-preview-feature
Adding close preview feature
2017-04-06 15:56:24 -07:00
Julian Krispel-Samsel
c560689edd fixes #258 - reverse collection order (#345) 2017-04-05 15:02:13 -07:00
Shawn Erquhart
4752a1f150 add styling for preview toggle 2017-04-05 12:43:18 -04:00
Americool
948158cda3 small fixes changed PREVIEW_STATE to PREVIEW_HIDE 2017-04-05 12:42:30 -04:00
Americool
1f5db5ab3c adding close preview 2017-04-05 12:42:30 -04:00
Shawn Erquhart
71e683f5bf Fix logout for Firefox
The log out menu was nested within a button, which caused
bubbling issues for the log out button event handler. This
was due to a misuse of the React Toolbox AppBar component.
Added a proper IconMenu to trigger the logout dropdown.
2017-03-31 15:47:55 -04:00
Benaiah Mischenko
1aa02eb42a Refactor readUnpublishedBranchFile with resolvePromiseProperties 2017-03-20 17:16:58 -07:00
Benaiah Mischenko
1dc2841609 New promise helper, resolvePromiseProperties
`resolvePromiseProperties` takes on object and returns a promise which
resolves to a copy of the object. This copy has all its immediate
properties which were Promises replaced with the resolved value of
those promises. Promises are run with `Promise.all`. Errors are passed
up to the outer promise chain.

Example usage:

```js
resolvePromiseProperties({
  promise: Promise.resolve("this property will resolve to this string"),
  nonPromise: "this will remain the same",

  // you can nest the function
  nestedPromiseInside: resolvePromiseProperties({
    nestedPromise: Promise.resolve("this will resolve"),
    nestedNonPromise: "this stays the same",
  }),
})
.then(obj => console.log(obj))

```

That will produce the following output:

```js
{
  promise: "this property will resolve to this string",
  nonPromise: "this will remain the same",
  nestedPromiseInside: {
    nestedPromise: "this will resolve",
    nestedNonPromise: "this stays the same",
  },
}
```
2017-03-20 17:04:40 -07:00
Benaiah Mischenko
c079cb96c4 Label cards in editorial workflow 2017-03-20 17:02:52 -07:00
Shawn Erquhart
b3ce95057e fix preview pane height in Safari 2017-03-20 12:33:04 -04:00
Luis Correia
e9c6e8cda1 #294 Make commit messages imperative 2017-03-17 01:09:52 +00:00
Benaiah Mischenko
3adb1ee4fc Set correct hasChanged and set it on all entry persistence actions 2017-03-16 11:34:36 -07:00
Benaiah Mischenko
47c46e7a6a Set state.entryDraft.entry.hasChanged to false when an entry saves succesfully 2017-03-16 11:05:17 -07:00
Shawn Erquhart
3096b4617e improve entry editor UI 2017-03-15 21:18:16 -04:00
Shawn Erquhart
736954da8b Merge pull request #285 from Benaiah/confirm-navigation-while-changes-unsaved
Confirm navigation when it would discard unsaved changes
2017-03-15 18:12:02 -04:00
Benaiah Mischenko
a88b2d6c9f Confirm navigation when it would discard unsaved changes
- New state field: `state.entryDraft.hasChanged`, initialized to
  `false`.

- `state.entryDraft.hasChanged` set to `true` in `entryDraft` reducer
  for `DRAFT_CHANGE_FIELD`.

- `EntryPage` adds a `listenBefore` listener to `history` on
  `componentDidMount` that checks `this.props.entryDraft.hasChanged`
  and, if that is true, asks the user to confirm the navigation.

- `EntryPage` removes its listener on `componentWillUnmount`.
2017-03-15 14:49:38 -07:00
Shawn Erquhart
705e348138 update sidebar styling, add new entry links (#276)
* udpate sidebar styling, add new entry links

* make sidebar new entry links always visible

* simplify app bar implementation, findbar
2017-03-15 11:32:41 -07:00
Mathias Biilmann Christensen
5e504bbc5a Fix firefox fetch issue in GitHub API 2017-03-15 00:06:31 -07:00
Benaiah Mischenko
47096c1cf0 Filter merged PRs from unpublished posts 2017-03-14 17:01:21 -07:00
Benaiah Mischenko
9fc98a738b Disallow full stops in entry slugs
Full stops in slugs were preventing branch creation for unpublished
entries when using the editorial workflow, as `.` is not an allowed
character in branch names. This commit changes slug generation so
periods are replaced with `-` the same way other "non-sluggable"
characters are.
2017-03-14 13:39:56 -07:00
americool
3c7b8d2322 delete button working (#274)
Fixes #274.
2017-03-11 10:47:36 -08:00
Shawn Erquhart
ff8b420777 remove leading underscore from getWidget method 2017-03-06 19:38:21 -05:00
Shawn Erquhart
e48221a04f add shared widget getter for widgetFor and widgetsFor 2017-03-06 15:22:40 -05:00
Shawn Erquhart
9bc80ed5e4 add object support to widgetsFor 2017-03-06 13:30:40 -05:00
Shawn Erquhart
9dca9f912a add widgetsFor helper
This allows individual widgets to be accessed
from preview templates that handle lists
2017-03-06 12:28:40 -05:00
Mathias Biilmann Christensen
b777343d70 yet another field ordering related change 2017-02-21 23:59:34 -08:00
Mathias Biilmann Christensen
09e6f2c80e Fix ordering when persisting a files based entry 2017-02-21 23:41:40 -08:00
Mathias Biilmann Christensen
e9088957b3 Fix persistence for collections stored in different files
Getting the order of the fields failed when the collections was not folder based
2017-02-21 23:04:12 -08:00
Mathias Biilmann
e294b87554 Merge pull request #231 from verythorough/fix-img-width
Prevent giant images in editor
2017-02-17 16:27:16 -08:00
Luis Correia
471b26a9d5 #222 - Encode branch name on requests to avoid errors with special chars 2017-02-03 15:10:27 +00:00
Jessica Parsons
ffead874bf Fix oversized images 2017-02-02 13:15:20 -08:00
Cássio Zen
507b4cb957 Don't try to validate hidden fields 2017-01-31 17:09:45 -02:00
Cássio Souza
ecbcbf06b5 Role authorization for Netlify-auth (#224) 2017-01-26 19:23:42 -02:00
Cássio Zen
2a7314a3ef Removed console log 2017-01-23 18:32:39 -02:00
Mathias Biilmann Christensen
8e26d5db81 Bump version 2017-01-21 16:57:13 -08:00
Cássio Zen
d237318ef4 Bugfix: Only try to load file if there's a path 2017-01-19 17:28:06 -02:00
Cássio Zen
4dd0c0ccb5 Bugfix: Images not appearing on search 2017-01-19 16:34:13 -02:00
Cássio Souza
0e10c3f984 Local search (#220)
* Version Bump

* local search skeleton

* Added WaitService middleware

* Return matching queries

* wait action middleware rename/refactor

* bigger debounce time

* Fix: Initialize state using Immutable

* Local Search without integrations

* Local Search refactor: Keep state in closure, recurse

* “string” should be treated as the default widget by the inference. Closes #199
2017-01-19 15:50:26 -02:00
Cássio Zen
f5d1fa7314 Makes input fields easier to click. Closes #173 2017-01-19 14:26:49 -02:00
Cássio Zen
78a9ac0f4b Added more synonyms 2017-01-19 13:44:40 -02:00
Cássio Zen
ef9f499b42 Bugfix: Do not try to normalize absolute paths 2017-01-19 13:31:44 -02: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 Zen
bd13a847a7 bugfix in path. Closes #219 2017-01-18 18:26:01 -02:00
Cássio Zen
11f7c1e047 bugfix in proptype 2017-01-16 16:52:59 -02:00
Cássio Zen
7b755d5839 Bugfix: List with basic string should call onChange 2017-01-16 16:52:24 -02:00
Cássio Zen
63ae669507 more variety of presence check 2017-01-16 16:51:53 -02:00
Cássio Zen
8c6bbed0cd Make sure to try to persist on next tick 2017-01-13 19:46:49 -02:00
Cássio Souza
3306670459 Validation (#216)
* Field config options: 'required' and 'pattern'
* Widget controls can implement it's own isValid
* Validation errors store in redux & displayed
* Support for returned Promises in isValid
* Allow widget controls to return either a boolean, an error object or a promise from isValid
2017-01-13 19:30:40 -02:00
Cássio Zen
b710e706da Bugfix: Set draft as persisting for both publish modes 2017-01-13 17:52:27 -02:00
Cássio Zen
58461c0d22 Added same-origin credentials to fetch config file 2017-01-12 19:20:37 -02:00