Commit Graph

147 Commits

Author SHA1 Message Date
Kevin Ansfield
5df045ba46 Bump dependencies (#960)
no issue
- bump all deps with non-breaking changes
- bump yarn.lock sub-dependencies
2018-02-28 13:08:26 +00:00
Kevin Ansfield
aa229973ec Remove ember-one-way-controls (#959)
closes https://github.com/TryGhost/Ghost/issues/9386
- remove usage of `{{one-way-checkbox}}` in favour of direct HTML+handlebars
- add `{{gh-text-input}}` that inherits from Ember's built-in `TextInput` component along with our custom `TextInput` mixin
- swap all uses of `{{gh-input}}` for `{{gh-text-input}}
- remove `{{gh-input}}` component
- update `{{gh-textarea}}` to inherit from Ember's `TextArea` component instead of `OneWayTextarea` and update all component uses accordingly
- update `{{gh-trim-focus-input}}` to inherit from `{{gh-text-input}}` and update all component uses accordingly
- standardize on using the `focus-out` action naming rather than `focusOut` for all text inputs, this is because the text input components (especially `{{gh-trim-focus-input}}`) have their own `focusOut` handler which gets overridden if consumers supply their own `focusOut` attr
- drop `ember-one-way-controls` package
- add `ember-one-way-select` package
2018-02-28 11:44:03 +00:00
Kevin Ansfield
ec470d1a90 Bump dependencies
no issue
- bump all deps with non-breaking changes
- bump yarn.lock sub-dependencies
2018-02-19 18:01:53 +00:00
Tobias Bieniek
937418bc6f Update ember-cli-mocha to v0.15.0 (#922)
no issue
2018-02-06 09:38:42 +01:00
Kevin Ansfield
dec1250bbf Koenig - Added SHIFT+ENTER line break key command
refs https://github.com/TryGhost/Ghost/issues/9311
- pressing <kbd>Shift+Enter</kbd> will create a `soft-return` atom that adds a `<br>` element to the doc
- emulates many rich-text editors that have a similar functionality where it's desirable to add line breaks rather than starting new paragraphs
2018-01-30 10:58:28 +00:00
Kevin Ansfield
ba44d3c01f Fixed node 4.x compatibility in ember-cli-string-helpers
no issue
- linked directly to compatibility fix commit
- PR opened at https://github.com/romulomachado/ember-cli-string-helpers/pull/19
2018-01-29 11:54:24 +00:00
Kevin Ansfield
0d7b914ccd Update deleted sub-dependency 2018-01-29 11:14:11 +00:00
Kevin Ansfield
f0ff51548c Bump dependencies
no issue
- bump all deps with non-breaking changes
- bump yarn.lock sub-dependencies
2018-01-29 11:06:25 +00:00
Kevin Ansfield
630708f377 Bump eslint-plugin-ghost to version actually including node 4.x compat 2018-01-24 20:26:39 +00:00
Kevin Ansfield
b5e7fd8a93 Bumped eslint-plugin-ghost (fixed yarn install error) 2018-01-23 17:45:05 +00:00
Kevin Ansfield
506b2a9388 Resurrect the old alpha Koenig editor (#916)
requires https://github.com/TryGhost/Ghost/pull/9277

- added a `koenigEditor` feature flag
  - modified the feature service to accept a `developer` boolean on the options object passed into the internal `feature` method, if `true` the feature flag won't be enabled unless the `enableDeveloperExperiments` config option is also enabled
  - added "developer feature testing" section in labs that's only visible if `enableDeveloperExperiments` config flag is enabled
  - added koenig editor toggle to the developer section in labs

- enabled a switch between the markdown and koenig editors
  - modified the default value of the `mobiledoc` attr in the Post model to be a blank mobiledoc or blank markdown mobiledoc depending on the feature flag
  - modified the `autofocus` switch in editor controller's `setPost` method so that it is always switched, even for new->edit where the post model isn't swapped
  - added a compatibility check to the editor controller's `setPost` method that shows an alert and force enables the koenig editor if the koenig flag is not enabled and the opened post is not compatible with the markdown editor

- fixed various issues that have appeared due to the old koenig alpha becoming out of sync with master
2018-01-18 15:36:01 +00:00
Kevin Ansfield
08630c5913 Bump dependencies (#947)
no issue
- bump all deps with non-breaking changes
- bump yarn.lock sub-dependencies
- add `eslint` as a top-level dependency to satisfy peerDeps and fix linting when using Atom
2018-01-12 13:13:24 +00:00
Kevin Ansfield
a85f5fae35 Switch to eslint-plugin-ghost extending plugin:ghost/ember
no issue
- fix lint errors in lib/gh-koenig
- fix ghost:base eslint errors
- update ember plugin refs, remove ember-suave plugin refs
- remove old jshint refs
- add `lint:js` script
- switch to `eslint-plugin-ghost` extending `plugin:ghost/ember`
2018-01-12 12:17:56 +00:00
Kevin Ansfield
7469b7263f 🐛 Fixed list editing regression in 1.19.2
closes https://github.com/TryGhost/Ghost/issues/9372
- bump codemirror dependency to 5.33.0
- bump simplemde dependency
	- bumps internal codemirror to 5.33.0
	- moves all dependencies to devDependencies
2018-01-05 11:48:12 +00:00
Kevin Ansfield
a27052bdb6 Bump dependencies (#939)
no issue
- upgrade all dependencies with non-breaking changes
- bump sub-dependencies in yarn.lock
2018-01-04 14:18:32 +00:00
Kevin Ansfield
dbd1edb7d3 Revert ember-cli to 2.16.2
no issue
- there's a [bug in ember-cli@2.17](https://github.com/ember-cli/ember-cli/issues/7518) that results in production builds throwing an error: `Uncaught Error: Could not find module 'ember-resolver' imported from 'ghost-admin/resolver'`
2018-01-03 14:37:28 +00:00
Tobias Bieniek
af1aa2fabf Update ember-simple-auth to v1.4.2 (#932)
no issue
- updates `ember-simple-auth` to v1.4.2 to take advantage of the bug fix in https://github.com/simplabs/ember-simple-auth/pull/1477
- enables/unblocks https://github.com/TryGhost/Ghost-Admin/pull/922
2017-12-27 16:19:48 +00:00
Kevin Ansfield
b5c4a17aad Bump dependencies (#929)
no issue
- upgrade all dependencies with non breaking changes
- bump sub-dependencies in yarn.lock
2017-12-13 12:27:15 +00:00
Katharina Irrgang
3bba0a4eea Revert "Bump dependencies (#927)" (#928)
This reverts commit c00232ca92.
2017-12-13 10:10:46 +01:00
Kevin Ansfield
c00232ca92 Bump dependencies (#927)
no issue
- upgrade all dependencies with non breaking changes
- bump sub-dependencies in yarn.lock
2017-12-12 14:00:35 +00:00
Kevin Ansfield
222d98b454 🐛 Fixed "NaNUndefined" when inserting unordered list items (#920)
closes https://github.com/TryGhost/Ghost/issues/9302

- reverts the `simplemde` bump introduced in https://github.com/TryGhost/Ghost-Admin/pull/911/, the updated version of CodeMirror appears to contain a bug or incompatibility with SimpleMDE
2017-12-04 11:56:21 +01:00
Kevin Ansfield
a654fa645b bump eslint-plugin-ember, enable default rules 2017-11-25 09:49:49 +00:00
Kevin Ansfield
7d1ee9386b Bump dependencies (#911)
no issue
- bump minor/non-breaking dependencies
- bump sub-dependencies in yarn.lock
2017-11-22 13:31:33 +00:00
Kevin Ansfield
4eff0938ea Bump dependencies (#910)
no issue
- bump all deps with non-breaking changes
- bump sub-dependencies in yarn.lock
2017-11-17 16:15:20 +00:00
Kevin Ansfield
71afd505fa Fix yarn install errors
no issue
- `type-detect@4.0.4` was removed from the registry, ran `yarn upgrade` to bump the dep to `4.0.5`
2017-11-10 09:16:14 +00:00
Kevin Ansfield
dee8927418 Bump dependencies
no issue
- upgraded all out-of-date deps which don't require additional work to support
- bumped yarn.lock sub-dependencies
2017-11-09 13:39:34 +00:00
Kevin Ansfield
3864584f74 Bump ember-ajax dependency (#902)
no issue
- upgrade `ember-ajax` to 3.0.0
- `ember-ajax` [now passes the payload through directly](https://github.com/ember-cli/ember-ajax/releases/tag/v3.0.0) rather than trying to normalize it so all our error handling needed to be updated
2017-11-03 22:59:39 +00:00
Kevin Ansfield
7613f0e11b Bump vertical-collection dependency 2017-11-01 08:48:37 +00:00
Kevin Ansfield
97bde18402 Bump dependencies 2017-10-31 11:51:18 +00:00
Kevin Ansfield
0106a21e3c New tags input, drop selectize & jquery-ui deps (#892)
closes https://github.com/TryGhost/Ghost/issues/6458
- swap `ember-sortable` for `ember-drag-drop` in navigation UI
- extract PSM tag input into new `{{gh-psm-tags-input}}`
- add new `{{gh-token-input}}` that wraps `ember-power-select` and `ember-drag-drop` to replicate the previous selectize based tags input
- enhance `{{gh-psm-tags-input}}` behaviour to highlight selected primary tag and show "primary/internal" in selected tag titles
- 🔥 remove `selectize`
- 🔥 remove `jquery-ui`
- 🔥 remove unused `{{gh-navigation}}` component
2017-10-31 09:10:49 +00:00
Kevin Ansfield
336e57b17a Bump dependencies (#887)
no issue

- ember/ember-data/ember-cli@2.16
- bump all outdated dependencies that do not require additional work or more extensive tests
- bump sub-dependencies in yarn.lock
- use `broccoli-uglify-sourcemap` (same dep as already used in `ember-cli-uglify`) instead of a separate `broccoli-uglify-js` package for building production codemirror assets
- add `/concat-stats-for` to `.gitignore` so that filesize stats from `CONCAT_STATS=true ember build` don't end up in the repo
2017-10-12 17:42:10 +02:00
Kevin Ansfield
5fae14fa74 🎨 Added keyboard shortcuts for editor modes (#821)
closes https://github.com/TryGhost/Ghost/issues/8863

- Spellcheck shortcut: <kbd>Ctrl-Alt-S</kbd>
- Render preview shortcut: <kbd>Ctrl-Alt-R</kbd>
- Side-by-side preview shortcut: <kbd>Ctrl-Alt-P</kbd>
- fix "Hemmingway" typo
- update simplemde fork to add a bypass of the Ctrl->⌘ transformation in toolbar button tooltips
2017-10-03 12:31:10 +07:00
Kevin Ansfield
b937c83bca 🐛 Fixed incorrect Home/End key behaviour on Windows (#870)
closes https://github.com/TryGhost/Ghost/issues/8775

- upgrades our SimpleMDE fork
  - [bumps CodeMirror version to 5.30.0](b3e9f8b579)
  - [fixes Home/End key behaviour on Windows](f2e981845c)
2017-09-25 12:54:19 +02:00
Kevin Ansfield
b68f52fe0c Upgrade eslint dependencies (#855)
no issue

- bump ember-cli-eslint and eslint-plugin-ember
- fix indentation & "unnecessary escape chars" lint errors
2017-09-11 14:56:11 +07:00
Kevin Ansfield
8362f0cdf0 Remove unwanted String.prototype extensions (#856)
closes https://github.com/TryGhost/Ghost/issues/8958

- `markdown-it-named-headers` pulled in `String.js` despite it not being used which added a lot of String.prototype extensions and caused Ember deprecation notices
- moves the short `markdown-it-named-headers` functionality directly into our app code without using `String.js`
2017-09-11 10:39:22 +07:00
Kevin Ansfield
03c45a445e Removed defunct Ghost OAuth code (#848)
refs https://github.com/TryGhost/Ghost/issues/8958

- Ghost OAuth isn't coming back, time for the code to disappear and simply all the things
- fixes the `Usage of router is deprecated` notices that flood the console/test logs when testing
2017-09-04 21:17:04 +02:00
Kevin Ansfield
bffde8f29f Run Chrome in headless mode on Travis
no issue
- align Travis config more closely to default ember-cli setup
- run Chrome in headless mode in CI (Travis + `ember test`, `ember test --server` is "dev" mode)
- install yarn via install script rather than npm
- remove broccoli cache from Travis cache (not sure it ever worked?)
- remove forced node-sass install (no longer needed)
- add `testem` as a top-level dep to force the latest version (ember-data is pinned at 1.15)
2017-09-02 16:39:49 -04:00
Kevin Ansfield
c2557fb2a5 Upgrade to Ember 2.15.0
no issue
- bumped `ember`, `ember-cli`, `ember-data` and related dependencies
- bumped yarn.lock sub-dependencies
- use new public `router` service in place of the private `-routing` service
2017-09-02 16:18:10 -04:00
Kevin Ansfield
495d1e46b3 Bump dependencies (#839)
no issue
- bump dependencies that don't require additional changes
- bump sub-dependencies in yarn.lock
2017-08-28 11:39:29 +01:00
Kevin Ansfield
983110d931 Switched from ember-cli-shims to new module imports (#779)
no issue

- add eslint-plugin-ember, configure no-old-shims rule
- run `eslint --fix` on `app`, `lib`, `mirage`, and `tests` to move imports to the new module imports
- further cleanup of Ember globals usage
- remove event-dispatcher initializer now that `canDispatchToEventManager` is deprecated
2017-08-22 14:53:26 +07:00
Kevin Ansfield
3138a5bb62 Bump dependencies (#832)
no issue
- rollup of outdated deps that didn't contain breaking changes
- bumped sub-dependency versions in yarn.lock
2017-08-18 10:58:50 +07:00
Kevin Ansfield
2901c45026 Bump postcss and cssnano related dependencies
no issue
- an earlier dependency update resulted in production builds failing due to `cssnano`'s `postcss-merge-idents` dependency failing with a `Maximum call stack size exceeded` error
- bump `cssnano` to the 4.0.0 RC which includes a fix for this issue
- bump other `postcss` dependencies for good measure
2017-08-15 18:10:11 +01:00
Kevin Ansfield
350e3d1481 Unsplash integration
closes https://github.com/TryGhost/Ghost/issues/8859, requires https://github.com/TryGhost/Ghost/pull/8895
- adds Unsplash app to app settings
  - enable/disable toggle
  - validation and testing of Unsplash App ID
  - Unsplash App ID field hidden if provided via Ghost config
  - adds `fetchPrivate` method to `config` service to pull config that requires authentication and updates authentication routines to fetch private config
- adds Unsplash buttons to editor toolbar and `{{gh-image-uploader}}`
  - only present when Unsplash app is enabled
  - opens Unsplash image selector when clicked
  - `{{gh-image-uploader}}` has a new `allowUnsplash` attribute to control display of the unsplash button on a per-uploader basis
- adds Unsplash image selector (`{{gh-unsplash}}`)
  - uses new `unsplash` service to handle API requests and maintain state
  - search
  - infinite scroll
  - zoom image
  - insert image
  - download image
- adds `{{gh-scroll-trigger}}` that will fire an event when the component is rendered into or enters the visible screen area via scrolling
- updates `ui` service
  - adds `isFullscreen` property and updates `gh-editor` so that it gets set/unset when toggling editor fullscreen mode
  - adds `hasSideNav` and `isSideNavHidden` properties
- updates `media-queries` service so that it fires an event each time a breakpoint is entered/exited
  - removes the need for observers in certain circumstances
2017-08-15 16:01:12 +01:00
Kevin Ansfield
4e836d436f Bump dependencies (#826)
no issue
- rollup of minor dependency updates
- bump yarn.lock sub-dependencies
- remove deprecated use of `testSelector`
2017-08-11 16:28:05 +01:00
Aileen Nowak
dd4fe3a68f Added Twitter & Facebook data override fields to PSM (#814)
refs https://github.com/TryGhost/Ghost/issues/8334, requires https://github.com/TryGhost/Ghost/pull/8827
- added open graph and twitter fields to `Post` model
- added facebook and twitter card pane to PSM
- 💅🏼 Added preview styles for custom FB/Twitter cards
2017-08-03 15:45:14 +04:00
Kevin Ansfield
c489f4474b ⬆️ bump core ember dependencies (#804)
no issue

- bump core `ember`, `ember-data` and `ember-cli` related dependencies
- remove deprecated `MODEL_FACTORY_INJECTIONS` flag
- update files to better match `ember-cli new` output for easier diffs during upgrades
2017-07-31 13:38:46 +04:00
Kevin Ansfield
7d5c0552fe ️ hemingway editor mode (disable backspace) (#803)
no issue
- adds Hemmingway Mode toggle to the editor toolbar that disables
backspace
- shortcut is <kbd>Ctrl+Alt+H</kbd>
2017-07-28 17:21:09 +04:00
Kevin Ansfield
d65666f90b 🚀 supercharge tags performance
closes https://github.com/TryGhost/Ghost/issues/8540
- use `{{vertical-collection}}` in the tags dropdown filter list, opening the dropdown is now virtually instant as it's not attempting to immediately render components for every tag in the list
- remove pagination/infinite scroll from tags screen
- load all tags when accessing the tags screen
  - will pause to show spinner if no tags have previously been loaded
  - if tags exist in the ember data store, show the list immediately and load/update list in the background
- use `{{vertical-collection}}` to render enough tags to fill the scrollable area with a small buffer and use occlusion and element re-use to swap tags in whilst scrolling (suuuuper fast no matter number of tags loaded)
- scroll tags into view when they are selected (keyboard nav now makes a lot more sense)
- tested with 875 tags and 2x/5x CPU throttling with no major slowdowns 🎉
2017-07-07 17:53:08 +01:00
Kevin Ansfield
05a3a11855 welcome tour (#527)
refs https://github.com/TryGhost/Ghost/issues/5168
- adds a `tour` service that handles syncing and management of tour throbbers & content
- adds a `gh-tour-item` component that handles the display of a throbber and it's associated popover when clicked
- uses settings API endpoint to populate viewed tour items on app boot/signin
- adds `liquid-tether@2.0.3` dependency for attaching throbbers and popups
- adds initial tour contents
2017-06-08 22:00:10 +07:00
Kevin Ansfield
cb59388c5b 💄🐷 sort-imports eslint rule (#712)
no issue

- adds `eslint-plugin-sort-imports-es6-autofix` dependency
  - implements ESLint's base `sort-imports` rule but has a distinction in that `import {foo} from 'bar';` is considered `multiple` rather than `single`
  - fixes ESLint's autofix behaviour so `eslint --fix` will actually fix the sort order
- updates all unordered import rules by using `eslint --fix`

With the increased number of `import` statements since Ember+ecosystem started moving towards es6 modules I've found it frustrating at times trying to search through randomly ordered import statements. Recently I've been sorting imports manually when I've added new code or touched old code so I thought I'd add an ESLint rule to codify it.
2017-05-29 20:50:03 +02:00