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
refs https://github.com/TryGhost/Ghost/issues/7860
- restores the previous up/down/enter/cmd+backspace functionality
- modifies the `delete-post` modal to accept a hash with an `onSuccess` action
refs https://github.com/TryGhost/Ghost/issues/7860
- load 30 posts per page
- clean up unnecessary styles, match class name to component name
- start moving towards desired content/styles end goal
refs https://github.com/TryGhost/Ghost/issues/7860
- if touch event handlers are registered Chrome assumes it's being run on a touch device and will attempt to optimise scrolling by delaying `setTimeout` and XHRs which in turn plays havoc with infinite scroll performance
no issue
- adds Ghost-Editor 0.1.6
- Improves markdown parsing speed
- Shows toolbar on mouseup now (still freezes on loading unfortunately)
- Makes Ghost-Editor full height for easy selection
- temporarily pull from a branch that fixes dependency issues
- remove unused module-for-acceptance.js file
refs https://github.com/TryGhost/Ghost/issues/7907
- rather than forwarding the redirect URI as configured in Ghost we should use the URL that the admin client is currently loaded on when setting the Ghost OAuth `redirectUri` attribute
- fixes issue with the admin app loading inside of the OAuth popup window and not logging in when using https with a registered http redirect uri
no issue
- update `config` service normalise blogUrl to non-trailing slash to match previous API behaviour
- fixes double slashes appearing in places around the app
- fixes "Redirect URI Mismatch" errors when using Ghost OAuth due to the double slashes
refs TryGhost/Ghost#7688
- Adds new upload functionality for a blog icon in general settings.
- Icons will be uploaded to a new endpoint `uploads/icons` to trigger different validations.
refs https://github.com/TryGhost/Ghost/issues/7860
- remove preview pane from content screen
- add basic post status filters
- replace custom infinite scroll with ember-infinity and increase trigger threshold for improved scroll behaviour
Commits:
* basic content list + filter using existing infinite scroll and pagination
* swap our custom pagination + infinite loader for `ember-infinity`
* minor cleanups
* reset scroll position when changing filter
* fix tests
* remove client-side sorting step as we no longer have a live collection
* remove unused `mobile-index-route`
* add acceptance tests for content screen filters
* chore(package): update ember-one-way-controls to version 2.0.0
* update yarn.lock
* update `gh-trim-focus-input` for removal of `sanitizeInput` in `ember-one-way-controls`
no issue
- add loading substates for all routes that previously blocked transitions until their model had finished loading
- enables immediate response on navigation click
- loading templates include the title bar to provide immediate indication of which page is loading
- loading templates include a new `{{gh-loading-spinner}}` component that will only show the spinner after 200ms to avoid flashing a spinner for users on fast connections
- updated Version Mismatch tests to match new behaviour of intermediate transitions when navigating
no issue
- use the same loading indicator as used on my.ghost.org
- will display whilst the JS is loading and initializing rather than showing a completely blank screen
- we were exporting the component through a yield, which is probably not best practice. As there were no major things barring the content from going into the posts-list-item component, the template content was just moved
- we were using borrowed code from an older version, now that ember-cli-active-link-wrapper has a built-in mixin we can just use that
- this fixes render issues with ember 2.10
closes#274
- Removed “white-space: nowrap” property to allow word breaks.
- Added “flex: 1” to “.theme-list-item-body” and
“.theme-list-item-aside”.
- Aligned links inside “.theme-list-item-aside” to right.
no issue
- ember-watson does not need to be included in our dependency list, it has limited one-time usage and is better used as a global install for developers who want to run any of it's codemods
no issue
- use the configured `blogUrl` value rather than using `window.location.href` with a poor regex that was incorrectly matching on domains containing multiple `/ghost` parts such as `http://ghost.local:2368/ghost`
closesTryGhost/Ghost#7730
- treat `Post.authorID` as a string not a number as it's now an objectid
- update `isAuthoredByUser` method so that author's posts aren't hidden from them
- update the post compare method so that it doesn't try to parse objectids as integers (may need revisiting now that we don't have auto-increment IDs to fall back on)
refs https://github.com/TryGhost/Ghost/issues/7494
- remove `uuid` attrs from all models except Post
- remove uuids from mirage factories and fixtures
- add a workaround for tags where the selectize-based tags input on the PSM relies on a unique identifier for each tag which doesn't get sent back to the server when saving (fixes the broken tags input caused by uuid removal in https://github.com/TryGhost/Ghost/pull/7495)
refs https://github.com/TryGhost/Ghost/issues/7432
- invite.role instead of invite.roles
- be able to serialize/deserialize response from and request to server
- server returns role_id
no issue
- recent changes to the way our modals work has resulted in the subscribers import modal appearing blank. The `liquid-if` used for transitioning between upload and result state of the doesn't run properly and the styles end up hiding it's contents
- this PR is a quick-fix that removes the animated transition so that imports are still possible
no issue
- switch `jscs` and `jshint` inline config to `eslint` config
- fix eslint errors, predominantly in tests where the config now the main app config more closely
no issue
- drop `jshint`, `jscs`, and `ember-suave` dependencies
- remove `grunt` related linting dependencies and tasks
- remove linting build from Travis so that linting can be performed as part of the normal test suite (refs TryGhost/Ghost#7427)
- add `ember-cli-eslint` and `eslint-plugin-ember-suave` dependencies
- configure `eslint` to match our previous coding style
- update config to run eslint tests as part of the normal test run
- add `npm run lint` command to only run linter tests
no issue
- reverts change added in c3d994c9da
- `ghost-editor` has stabilised now and updates will be unlikely to require additional changes inside of Ghost
no issue
- recent changes to the way our modals work has resulted in the subscribers import modal appearing blank. The `liquid-if` used for transitioning between upload and result state of the doesn't run properly and the styles end up hiding it's contents
- this PR is a quick-fix that removes the animated transition so that imports are still possible
refs TryGhost/Ghost#7628 (issue), refs TryGhost/Ghost#7631 (required)
- update `config` service to fetch from public configuration endpoint
- add `beforeModel` to `application` route to fetch config and pause further processing until the request is complete
- remove `<meta name="env-*">` tags from generated `default.hbs` and internal testing `index.html`
- add mirage config to simulate configuration endpoint and helper to simulate enabled oauth config
- update `ghost-oauth2` torii provider to use auth server URL from server-provided config
- the title is now part of the content
- new ways to navigate from the title to the content
- the new editor contains updated toolbar behavior
- the new editor contains markdown like commands
no issue
- Glimmer2 was backed out of the 2.9 branch as it wasn't considered ready yet, 2.9 is therefore safe to upgrade to as changes are very minimal from the previous 2.8.2 version
no issue
- #309 introduced a change to our asset path but some images, particularly around the team page and user avatars were missed, this fixes those URLs to use the new `ghostPaths.assetRoot` helper
refs TryGhost/Ghost#5202
We can get into a situation where the app is left open without a
network connection and the token subsequently expires, this will
result in the next network request returning a 401 and killing the
session. This is an attempt to detect that and restore the session
using the stored refresh token before continuing with the request
- wrap ajax requests in a session restore request if we detect an expired `access_token`
Refs TryGhost/Ghost#7429
- Added mobiledoc card, this uses the mobiledoc editor from within Ghost. In the future we'll pull this out and replace it with a textarea as the preview is too small to fit in the content.
- Made the HTML editor a codemirror editor (pulled in from ghost-admin to save duplicating libraries).
- Ghost-Admin now passes the paths for the ghost-api and the image directory for tools.
- Fixed the scrolling issue.
issue TryGhost/Ghost#7562
- removes the custom endpoint so that we always use `/authentication/token`
- adds missing `grant_type` attribute to our auth data so that the server can switch appropriately
refs TryGhost/Ghost#7427
Removes `-contributors.hbs` and `public/assets/img/contributors` from `.gitignore`.
Removes `buildAboutPage` from `grunt init` task.
Updates `contributors.hbs` and adds images for each contributor.
Changes the `max-width` of `.gh-credits` wrapper to be 700px instead of 650px, so we'll fit them all in two rows.
* refs #7429
Finally it's starting to feel like a real editor! Although there will be another version bump over the weekend which improves the toolbar behavior and usability, and enables image uploading.
- Added the start of a new toolbar, what we're (well I am) calling the Owesome bar, not to be confused with the Firefox Awesome bar. It's a cultural thing. (google "O for awesome" if you're curious 🎡 of 💰).
- The idea of dragging and dropping cards has been removed for now, although the code will still be in there as we will support dragging cards around within content fairly shortly. When apps are included a better card interface will be required for a large amount of app created content cards (Oh yeah!)
- Ghost Server now pulls in it's configuration from Ghost-Editor, this allows Ghost-Editor to:
A) Keep cards up to date, and
B) define what happens if a card is missing.
- The whole "cards in admin written in ember and cards in server written in javascript" thing is still very much a work in progress, it's kind of messy as we find the optimum solution (which isn't the current solution).
So yeah, this is a WIP not the final styling, not the final interactions, not the final anything... :)
* Added new toolbar and image uploading tests
* Includes an updated toolbar and basic image card.
refs #7503
- Having assets served from the same directory as the admin makes this tricky to refactor server side
- It's also much harder to optimise for 404s
no issue
- remove `liquid-tether` dependency
- add `liquid-wormhole` dependency (previously a dependency of liquid-tether)
- refactor `gh-fullscreen-modal` to simplify and use `liquid-wormhole` directly instead of `liquid-tether` as we don't need the positioning ability that `liquid-tether` provides
- fixes broken View/Component tree in Ember Inspector 🎉
no issue
- update `ember-light-table` to 1.4.2
- remove `gh-light-table` override component as scrolling has been fixed
- disable the infinite scroll acceptance test for now because Chrome has issues detecting the position of the scroll trigger when the app is rendered into the zoomed container during testing