requires https://github.com/TryGhost/Ghost/pull/8093
- adds `theme.activate()` method and associated adapter method for activating themes rather than relying on `settings.activeTheme`
- minor refactors to the `modals/upload-theme` component to use a full theme model
refs https://github.com/TryGhost/Ghost/issues/7515
- changes to `gh-task-button`:
- can take `buttonText` (default: "Save"), `runningText` ("Saving"), `successText` ("Saved"), and `failureText` ("Retry") params
- positional param for `buttonText`
- default button display can be overridden by passing in a block, in that scenario the component will yield a hash containing all states to be used in this fashion:
```
{{#gh-task-button task=myTask as |task|}}
{{if task.isIdle "Save me"}}
{{if task.isRunning "Saving"}}
{{if task.isSuccess "Thank you!"}}
{{if task.isFailure "Nooooooo!"}}
{{/gh-task-button}}
```
- update existing uses of `gh-task-button` to match new component signature
* 👷✅ Editor tests
Added acceptance tests for koenig markdown-like support.
Added some unit tests for koenig located in the /lib/koenig/test-support directory.
no issue
- `broccoli-clean-css` is used to compress codemirror CSS files so it's still needed
- update usage in `ember-cli-build.js` to match 2.0's class interface
refs https://github.com/TryGhost/Ghost/issues/8032
- `fileStorage: false` config is going away, it predates storage engines and will simplify future image optimisation work
- simplifies UI, it can be brought back in the future in a more robust fashion if required
no issue
- add functionality for night mode feature flag using alternate
stylesheets
- modify lazy loader service to work with alternate stylesheets
- update feature service to use user accessibility property & add tests
no issue
- cleans up the interface to maintain consistency between loadScript and
loadStyle
- update gh-cm-editor component to await result of loadStyle
no issue
- disables user email input field when using Ghost OAuth because email addresses are synced from the central identity management system
- adds a link to my.ghost.org account management when using Ghost OAuth and viewing your own user
no issue
- I was a little overzealous with the file cleanup, not realising that the template compiler must be specified even if it's not installed within the addon
no issue
- removes local addon dependency files to avoid confusion now that the host app manages dependencies
- removes unused tests directory
- these files may come back eventually, there's an open ember-cli RFC to improve in-repo-addon isolation and testing https://github.com/ember-cli/rfcs/pull/60
refs TryGhost/Ghost#7860
- removes post type filter links
- adds dropdown filters for post type, author, and tag
- replaces custom refresh on query params change with Ember's standard `refreshModel` config
no issue
- as a separate project a number of Ghost-Admin components and files had been copied verbatim, these are no longer needed as the original components are available now that the editor is integrated
no issue
- we're now using postcss with the cssnano plugin when building the production files so we don't need the additional minification plugin
- fixes `ember build -prod`
no issue
- this prevents the need for running `npm/yarn install` inside the `lib/gh-koenig` directory
- `ember-cli` may eventually be able to handle this with an `ember install` or similar command, there's [an in-repo-addon RFC](638cad2405/active/0000-better-in-repo-addons.md) suggesting this improvement but it hasn't got much traction yet - it may be necessary to wait until ember-cli has standardised on `yarn`
no issue
- `liquid-wormhole` changed the class of it's default destination element which meant that one of our styles resulted in it overlaying the whole app and preventing anything from being clicked after closing a modal
no issue
- adds [ember-inline-svg](https://github.com/minutebase/ember-inline-svg) addon
- configure svg path to `public/assets/icons` so that icons can be accessed directly, eg `{{inline-svg "plane.svg"}}`
- configure svg optimization to remove title, dimensions, and xmlns element (not needed for inline svg)
- add existing icons as used on Ghost.org
closes https://github.com/TryGhost/Ghost/issues/8055
- use `expired` if the date is in the past, otherwise `expires`
- fix mirage factories to use `moment.valueOf` instead of `moment.unix` for invite `expires` attributes
no issue
- the index route/controller/template was initially used for a separate loading state within the posts screen layout, this isn't necessary however as the same effect can be achieved with the `posts-loading.hbs` template
- this change also lays the groundwork for more complex dropdown-based filters as it enables the filters and query params to live in the same controller+template
no issue
- changes to layout meant that every page was automatically requested upon loading the content screen, this changes the infinite scroll trigger to match the new scrollable element
no issue
- we had [previously reverted](787646a4a2) the use of `yarn` on Travis as we suspected it as being a culprit in failing editor builds, that wasn't the real cause so this switches us back to using `yarn`
no issue
- persisting the broccoli cache should dramatically speed up the client builds on Travis as it will only need to rebuild changed files and those that depend on them
Temporarily reverting in order to get the next alpha release out. Unfortunately this has the unintended consequence of the service worker caching a 200 response for /ghost/ so when starting a new blog the redirect to /setup/one that the server sends is never picked up.
This would only affect developers using localhost/people trying to set up a blog multiple times on the same domain but as that's the target audience for the alpha it's probably best to avoid any confusion.
This commit adds support for service workers, mostly by including packages that do the heavy lifting. Those are in detail:
* ember-service-worker (SW infrastructure)
* ember-service-worker-ghost-cache (Caches static assets and the main application)
* ember-service-worker-cache-fallback (Caches API requests and falls back to the cache if the server can’t be reached)
* ember-service-worker-index (Caches main html)
refs https://github.com/TryGhost/Ghost/issues/5202
- refresh the access token after a successful authenticated application boot so that the session lifetime is continually extended
no issue
- the content filter will be remembered if you navigate away from then back to the content screen
- this PR changes the behaviour slightly so that clicking the sidebar "Content" link whilst viewing the content screen will act as a shortcut to reset the filter