Ghost/ghost/admin
Gabriel Csapo ddfeb90fc6 Updated ember-auto-import@1 -> ember-auto-import@2 (#2252)
requires https://github.com/TryGhost/Ghost/pull/15128
refs https://github.com/TryGhost/Admin/pull/2252

- bumped `ember-auto-import` dependency
  - updated `autoImport` config to match new format
  - added dependencies for node packages that no longer have built-in polyfills in webpack@5
- updated `asset-delivery` to work with `ember-auto-import@2`
  - reverted to standard ember `index.html` to let `ember-auto-import` handle it's insertion of multiple JS chunk files
  - updated the `asset-delivery` addon to copy the the `index.html` and `/assets` to `core/built/admin/{development|production}/` directory rather than splitting the `index.html` file apart from the assets inside Ghost's directory structure
- switched to relative root URL in development/production
  - required because assets are served from the same directory the index file is served from in Ghost rather than from the root
  - Admin uses `/#/` URLs so it can be served from any subdirectory without requiring prior knowledge of that directory at build time

Co-authored-by: Kevin Ansfield <kevin@lookingsideways.co.uk>
2022-08-02 13:43:28 +01:00
..
.github Renamed core/client to core/admin in PR template 2022-05-17 11:57:00 +01:00
app Updated ember-auto-import@1 -> ember-auto-import@2 (#2252) 2022-08-02 13:43:28 +01:00
config Updated ember-auto-import@1 -> ember-auto-import@2 (#2252) 2022-08-02 13:43:28 +01:00
lib Updated ember-auto-import@1 -> ember-auto-import@2 (#2252) 2022-08-02 13:43:28 +01:00
mirage Added newsletter slug generation to mirage 2022-06-02 13:19:52 +02:00
public/assets Added in a new comments icon for the activity feed 2022-07-22 10:08:00 +01:00
tests Added Ghost Explore UI 2022-08-01 11:11:47 +01:00
.csscomb.json
.editorconfig
.ember-cli
.eslintignore
.eslintrc.js Added support for building/rendering react components 2022-07-19 12:48:53 +01:00
.gitignore Added test documentation to README 2022-06-02 10:38:51 +02:00
.lint-todo Duplicated <GhKoenigEditor> to <GhKoenigEditorReact> 2022-07-18 11:11:19 +01:00
.lint-todorc.js Reset linter warnings with longer decay times 2022-05-09 12:57:19 +01:00
.template-lintrc.js Added disabled newsletter dropdown to scheduled state of publish menu (#2357) 2022-04-27 10:49:55 +01:00
.watchmanconfig
ember-cli-build.js Updated ember-auto-import@1 -> ember-auto-import@2 (#2252) 2022-08-02 13:43:28 +01:00
ember-cli-update.json
Gruntfile.js Renamed "client" references to "admin" 2022-05-17 09:09:14 +01:00
LICENSE
package.json Updated ember-auto-import@1 -> ember-auto-import@2 (#2252) 2022-08-02 13:43:28 +01:00
README.md Added test timeout hint to README 2022-06-02 13:20:05 +02:00
renovate.json
SECURITY.md
testem.js
yarn.lock Updated ember-auto-import@1 -> ember-auto-import@2 (#2252) 2022-08-02 13:43:28 +01:00

Ghost-Admin

This is the home of Ember.js based admin app that ships with Ghost.

Do you want to set up a Ghost blog? Check the getting started guide

Do you want to modify or contribute to Ghost-Admin? Please read how to install from source and swing by our forum if you need any help 😄

Running tests

Build and run tests once:

TZ=UTC yarn test

Note the TZ=UTC environment variable which is currently required to get tests working if your system timezone doesn't match UTC.

If you are serving the admin app (e.g., when running yarn serve, or when running yarn dev in the main Ghost project), you can also run the tests in your browser by going to http://localhost:4200/tests.

This has the additional benefit that you can use await this.pauseTest() in your tests to temporarily pause tests (best to also add this.timeout(0); to avoid timeouts). This allows you to inspect the DOM in your browser to debug tests. You can resume tests by running resumeTest() in your browser console.

More information

Writing tests

When writing tests and not using the http://localhost:4200/tests browser tests, it can be easier to have a separate watching build that builds the project for the test environment (this drastically reduces the time you have to wait when running tests):

yarn build --environment=test -w -o="dist-test"

After that, you can easily run tests locally:

Run all tests:

TZ=UTC yarn test 1 --path="dist-test"

To have a cleaner output:

TZ=UTC yarn test 1 --reporter dot  --path="dist-test"

This shows a dot (.) for every successful test, and F for every failed test. At the end, it will only show the output of the failed tests.

To run a specific test file:

TZ=UTC yarn test 1 --reporter dot  --path="dist-test" -mp=tests/acceptance/settings/newsletters-test.js

Hint: you can easily copy the path of a test in VSCode by right clicking on the test file and choosing Copy Relative Path.

To have a full list of the available options, run

ember exam --help

Have a bug or issue?

Bugs and issues (even if they only affect the admin app) should be opened on the core Ghost repository.

Copyright & License

Copyright (c) 2013-2022 Ghost Foundation - Released under the MIT license. Ghost and the Ghost Logo are trademarks of Ghost Foundation Ltd. Please see our trademark policy for info on acceptable usage.