52 Commits

Author SHA1 Message Date
Tony Alves
7053ccd8ec Register Internal and Custom backend API's (#1011)
* allow backend register

* handle multiple backends, including internal
2018-01-25 11:55:13 -05:00
Václav Klecanda
b927c8acfb LocalForageTest (#550) 2018-01-04 11:33:18 -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
Shawn Erquhart
6b45a46a39 add media library
* rebase editorial workflow pull requests when behind

* fix async/await transpilation

* add media library pagination

* switch media library to grid layout

* ensure that only cms branches can be force updated
2017-11-08 15:00:28 -05:00
Caleb
8b5dc61e6c Change "new entry" path to avoid slug conflicts. 2017-10-19 13:43:59 -04:00
Darrel O'Pry
2617621a47 Remove unused urlize 2017-10-04 12:37:54 -04:00
Caleb
57202376ba Update tests.
Thanks @dopry!
2017-10-03 20:27:42 -06:00
Caleb
793afc8b73 Remove mutation from sanitizeIRI. 2017-10-03 20:27:30 -06:00
Caleb
fdc4054fbd Remove recursion for sanitizeIRI replacement checking. 2017-10-03 19:21:58 -06:00
Caleb
451c69cb87 Fix alternate replacement not always working in sanitizeSlug. 2017-10-03 18:46:12 -06:00
Caleb
b8006bbcbe Update slug sanitization errors. 2017-10-03 18:11:45 -06:00
Darrel O'Pry
ddcf009fc6 add sanitizeSlug tests. 2017-10-03 19:28:28 -04:00
Caleb
2b64fbfba6 Allow empty options object for sanitizeSlug. 2017-10-03 16:16:24 -06:00
Caleb
716f55cd8e Make sure sanitizeIRI replacement character is safe. 2017-10-03 16:15:53 -06:00
Caleb
476ff2e1ab Add tests for sanitizeIRI. 2017-10-03 16:15:52 -06:00
Caleb
f40f58b7dd Add default replacment to sanitizeIRI. 2017-10-03 16:15:52 -06:00
Caleb
be28f895bc Document slug sanitizing functions. 2017-10-03 16:15:51 -06:00
Caleb
8fb326ff2b Make sanitizeSlug immutable.
Thanks @erquhart!
2017-10-03 16:15:42 -06:00
Caleb
72492749d9 Move slug sanitizer to a seperate function. 2017-10-03 13:03:28 -06:00
Caleb
4e5a004010 Make ucschars regex smaller. 2017-10-03 13:03:27 -06:00
Caleb
9bc65cd0ac Re-implement standard slugification with IRIs instead of URIs. 2017-10-03 13:03:26 -06:00
Shawn Erquhart
e2232e1067 improve markdown entity escaping perf 2017-09-26 16:35:01 -04:00
Shawn Erquhart
30a762cec1 improve markdown entity escaping for visual editor 2017-09-26 14:50:56 -04:00
Mathias Biilmann Christensen
890ee3d7e3 Update old netlify-auth-js to gotrue-js 2017-09-05 13:24:16 -07:00
Shawn Erquhart
9c0b7262ef fix small code issues in RTE implementation 2017-08-25 16:36:22 -04:00
Shawn Erquhart
842c2935e9 use mdast instead of html for rte local model
markdown is currently serialized to html at load time,
which makes it near impossible to support arbitrary html
in the markdown. This also means we're stringifying to
html on every change.

This commit moves to Remark's MDAST for local serialization,
including parsing from MDAST to Slates's Raw AST. It brings
much more control over the editing experience and full
support for processing unescaped HTML.
2017-08-25 16:30:37 -04:00
Shawn Erquhart
e0ca24c6d3 add unified config module 2017-08-25 16:24:13 -04:00
Shawn Erquhart
ffbd8d22cc expose widgetValueSerializer registry 2017-08-25 16:24:13 -04:00
Shawn Erquhart
bd767308cd fix visual editor tests, parse/serialize consistency 2017-08-25 16:24:12 -04:00
Shawn Erquhart
5048c7ca1d convert editor component registry to Map 2017-08-25 16:24:12 -04:00
Shawn Erquhart
aebf28b881 allow registered widget controls to be reused 2017-07-10 15:01:02 -04:00
Jerry Holmes
cc93ad87dc Encode URI of image path for card view vs. normalizePath replace (#474) 2017-07-10 10:36:07 -07:00
Jerry Holmes
f7c2dec8e8 normalizePath handles spaces for use in resolvePath 2017-05-10 22:13:03 -04:00
Joseph Earl
265146e2d1 Fixes #278 filter files by extension 2017-04-18 22:59:30 +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
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
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
Benaiah Mischenko
47096c1cf0 Filter merged PRs from unpublished posts 2017-03-14 17:01:21 -07:00
Cássio Zen
ef9f499b42 Bugfix: Do not try to normalize absolute paths 2017-01-19 13:31:44 -02:00
Cássio Souza
a4d7622ade Asset API (#204)
Asset API
2017-01-10 22:23:22 -02:00
Cássio Souza
1efc59a9fb Netlify auth (#194) 2016-12-23 16:59:48 -02:00
Cássio Zen
695f533c8e Added resolvePath helper to normalize and prepend the public_path and as needed 2016-11-17 15:33:02 -02:00
Cássio Souza
2a2497072d UI updates (#151)
* infer card title

* Infer entry body & image

* infer image

* Better terminology: EntryListing accept a single Collection

* remove log

* Refactored Collections VO into selectors

* use selectors when showning card

* fixed size cards

* Added 'bio' and 'biography' to collection description inference synonyms

* Removed unused card file

* throw error instance

* bugfix for file based collections

* lint

* moved components with css to own folder

* Search Bugfix: More than one collection might be returned

* Changed sidebar implementation. Closes #104 & #152

* Show spinning loading for unpublished entries

* Refactored Sidebar into a separate container

* Make preview widgets more robust
2016-11-11 17:54:58 -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
8221c9c170 Maor UI polish for editing with live preview 2016-09-12 11:14:21 +02:00
Mathias Biilmann Christensen
fcd0ce718a Support for YAML content 2016-09-11 23:08:18 +02:00
Mathias Biilmann Christensen
8d63ff0a88 Expose methods for installations to create custom preview components 2016-09-11 17:53:44 +02:00
Cássio Zen
6eec0feb72 Small refactor preparing for branch creating/editing. Also closes #58 2016-08-29 17:09:04 -03:00
Cássio Zen
d7324bd743 seting site_id automatically only for localhost 2016-07-20 13:46:52 -03:00
Cássio Zen
2d48743f37 moving string size check to helper lib 2016-06-07 21:33:12 -03:00