Commit Graph

5348 Commits

Author SHA1 Message Date
renovate[bot]
448adc50e2 Update dependency ember-exam to v5 (#1512)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-03-09 10:00:12 +00:00
Kevin Ansfield
0df2a5da55 🐛 Fixed Ctrl+h and Ctrl+d breaking the editor when used on card boundaries in macOS
closes https://github.com/TryGhost/Ghost/issues/10240

- intercept known macOS content-modifying keyboard shortcuts and simulate the "normal" keyboard events that they map to
  - `ctrl+h`: `Backspace`
  - `ctrl+d`: `Delete`
2020-03-07 21:33:12 +00:00
Kevin Ansfield
98e0f66c59 🐛 Fixed scroll jump in editor when pasting a url onto a selection to create a link
closes https://github.com/TryGhost/Ghost/issues/10090

- when mobiledoc-kit replaces the selection the caret window selection is temporarily set to the whole editor element which was causing our scroll-cursor-into-view routine to scroll incorrectly
- adding the guard allows the first replacement cursor change to be ignored but the second cursor change to be picked up which will do nothing if the text is on-screen, or scroll if it's off screen as normal
2020-03-07 20:23:23 +00:00
Kevin Ansfield
f021badb9f 🐛 Fixed unreachable toolbar when editing wrapped links (#1511)
closes https://github.com/TryGhost/Ghost/issues/9792

- use `getClientRects()` to get separate rectangles for each line of a link and use the mouse position to find the closest one so that the toolbar can be positioned relative to that link section on that line rather than always in the middle of the editor canvas
- pass the rectangle used for positioning the link toolbar through to the link input component so that there is no jumping of position when clicking the edit button
2020-03-07 18:22:56 +00:00
Peter Zimon
7678c410f5 Updated suspended badge for staff list
Displaying the role of suspended staff users is misleading, giving the false impression that those users still have access to the publication.

no refs.
- updated label to "Suspended" for all suspended staff user
2020-03-05 12:12:09 +01:00
Peter Zimon
0b5b93376e Fixed arrow position bug on tags list
no refs.
- fixed size issue for arrow cell on tags list screen in Firefox
2020-03-05 11:36:35 +01:00
Daniel Lockyer
5e62f407cc Updated README with new CI badge
no issue
2020-03-04 15:24:03 +00:00
Daniel Lockyer
e65b4f06c5 Switched testing to GitHub Actions
no issue
2020-03-04 15:18:23 +00:00
Nazar Gargol
1c9a4399e0 Added support for setting custom currency on member's plans
refs c0512e30bb

- Adds a dropdown allowing to select and set custom currency.
- At the moment we don't have a specific way to interface with the members configuration API so all values are set directly on existing "config JSON". Ideally we should add more validations and be more precise what values can be set for the `stripeProcessor.config.*` values.
- Saves selected currency in `stripeProcessor.config.currency` variable.
2020-03-04 13:31:39 +08:00
renovate[bot]
86460ffef6 Update dependency element-resize-detector to v1.2.1 (#1469)
Co-authored-by: WhiteSource Renovate <renovatebot@gmail.com>
2020-03-03 14:51:51 +00:00
Daniel Lockyer
1857cf301a Version bump to 3.9.0 2020-03-02 12:02:24 +00:00
renovate[bot]
5023c59baf Update dependency ember-sinon to v5 (#1510)
Co-authored-by: WhiteSource Renovate <renovatebot@gmail.com>
2020-03-02 09:50:57 +00:00
Fabien O'Carroll
ee4c1fc927 Added billing route and iframe behind config
no-issue

* Updated the iframe src

* Moved billing behind config

* Transition to home route for missing billing config

* Replaced jquery element selection with native
2020-03-02 10:36:54 +05:30
Renovate Bot
e09c8b3b41 Update dependency ember-data to v3.16.2 2020-03-02 02:19:45 +00:00
Renovate Bot
5372cf80de Update dependency ember-concurrency to v1.1.6 2020-03-02 01:20:34 +00:00
Kevin Ansfield
5f9fbc47f2 Lock file maintenance 2020-02-27 15:36:29 +00:00
Peter Zimon
95fed28028 Refined members list mobile styles
no refs.
- fixed mobile styles for members list to comply with locaiton info
2020-02-27 16:32:32 +01:00
André Borud
377084a60d 🐛 Fixed redirect to posts list when deleting a page (#1486)
no issue

- success routine when deleting a post/page was not taking into consideration the type of record being deleted
  - deleting a post should keep previous behaviour of redirecting to posts list
  - deleting a page should redirect to the pages list
2020-02-27 15:19:31 +00:00
renovate[bot]
926fd8f01c Update dependency ember-simple-auth to v3 (#1496)
Co-authored-by: WhiteSource Renovate <renovatebot@gmail.com>
2020-02-27 15:15:02 +00:00
Kevin Ansfield
dfe0b6f810 Updated image card to trigger file browse immediately when inserting
no issue

- removes number of clicks required to insert images, especially when using the `/image` shortcut
- strips `triggerBrowse` property from the payload after inserting to avoid triggering file browse when a post with blank image cards is rendered/re-rendered
2020-02-27 14:38:53 +00:00
Peter Zimon
74b5327dbe Member geolocation design refinements
no refs.
- refined copy and styles for member list
- added geolocation data for member detail screen
2020-02-27 15:14:26 +01:00
Kevin Ansfield
de70ef1e25 Fixed template error 2020-02-27 13:00:57 +00:00
Kevin Ansfield
13a9a2802b Added member's geographic location to admin
no issue

- added `geolocation` attribute to member model with json-string transform
- prevent geolocation from being sent back to the API in member serializer
- add "Location" column to members list
  - if country is "US" then display "{State}, US" otherwise show full country name such as "United Kingdom"
  - displays "-" if no geolocation data has been collected for the member
2020-02-27 12:56:26 +00:00
Kevin Ansfield
b5d560750f Refactored <GhMemberAvatar> to glimmer component
no issue

- cleaned up property access in template to differentiate between passed-in args and component-defined properties
- tidied up logic in `backgroundStyle` and `initials` getters
2020-02-27 12:33:33 +00:00
Kevin Ansfield
ab8334dae2 Refactored <GhMembersListItem>
no issue

- switched to using a glimmer component
  - cleaned up property access in the template
  - used helpers for basic display logic in the template
- removed unused computed properties, aliases, and injected services
2020-02-27 12:17:48 +00:00
Peter Zimon
4b5f538552 Updated notifications design (#1498)
no issue

- updating toaster design for better discoverability
2020-02-27 09:19:29 +00:00
renovate[bot]
a4cb96a258 Update dependency ember-test-selectors to v4 (#1502)
Co-authored-by: WhiteSource Renovate <renovatebot@gmail.com>
2020-02-27 09:14:24 +00:00
renovate[bot]
cae8d9457e Update dependency postcss-custom-properties to v9.1.1 (#1501)
Co-authored-by: WhiteSource Renovate <renovatebot@gmail.com>
2020-02-27 09:14:12 +00:00
Naz
ff4fd2fc9a Added member impersonation (#1497)
refs b0ff1e7cac

- Adds "impersonate" button which would be triggering a popup window with "login url" that allows to log in as a member
2020-02-27 11:50:15 +08:00
Daniel Lockyer
4675fb911c Version bump to 3.8.0 2020-02-24 11:53:34 +00:00
Kevin Ansfield
2a2a207e14 🐛 Fixed infinite scroll on posts/pages lists in admin
closes https://github.com/TryGhost/Ghost/issues/11608

- reverts `ember-source` to a working version and temporarily blocks renovate from auto-updating
- ember-infinity issue https://github.com/ember-infinity/ember-infinity/issues/421
- related ember-source issue https://github.com/emberjs/ember.js/issues/18750
2020-02-24 11:28:25 +00:00
Nazar Gargol
ed14ffed02 Hidden subscriptions section on member profile when no connected Stripe
no issue

- There is no way to turn on "Complimentary" subscription when Stripe is not connected
- There is no constructiove information that can be shown about subscriptions
2020-02-24 17:08:47 +08:00
Rish
7f465278c6 Fixed lint
no issue
2020-02-24 13:39:59 +05:30
Rishabh Garg
fa577adcdb Updated send email messaging for Editors (#1505)
no issue

Fixes incorrect member count for Editors when trying to publish/schedule post with send email.

Note: This is a short-term fix till we fix fetching member data for Editors for proper count.
2020-02-24 13:22:39 +05:30
Rishabh Garg
491c5abdc9 Allowed editors to send email on publish (#1504)
no issue

So far, only owners or Admins were allowed to control the send email setting while publishing/scheduling a post. This change allows Editors to see the setting as well and toggle as needed.

No changes on the API side were needed.
2020-02-24 12:20:29 +08:00
Renovate Bot
d664cf45b5 Update dependency ember-source to v3.16.3 2020-02-24 02:19:52 +00:00
Renovate Bot
c560108750 Update dependency ember-cli-htmlbars to v4.2.3 2020-02-24 01:19:45 +00:00
Renovate Bot
2fba8c489d Update dependency broccoli-funnel to v3.0.2 2020-02-24 00:28:16 +00:00
Peter Zimon
b0b01acd03 Updated style definition for staff dropdowns
no refs.
- updated style for staff dropdown to make it generic for reuse
2020-02-21 10:20:08 +01:00
Nazar Gargol
13d9611b4c Enabled editing email field on member profile page
refs b9db9fa15e

- Now that Admin API allows to edit email, there is no reason to keep this field disabled
2020-02-21 16:12:35 +08:00
Daniel Lockyer
c0834ae221 Increased browser disconnect timeout to 30s
no issue

- browser tests would intermittently fail because they would hit the
  timeout limit
- this commit increases the limit to allow for more variability in the
  CI environment
2020-02-18 18:11:31 +00:00
Daniel Lockyer
e5f20d6b9e Version bump to 3.7.0 2020-02-18 12:23:18 +00:00
Renovate Bot
55b1bcdab1 Update dependency ember-fetch to v7.0.1 2020-02-17 02:16:47 +00:00
Renovate Bot
1198f251f6 Update dependency ember-composable-helpers to v3.1.1 2020-02-17 01:18:31 +00:00
renovate[bot]
3485e4f995 Lock file maintenance (#1487)
Co-authored-by: WhiteSource Renovate <renovatebot@gmail.com>
2020-02-14 12:33:27 +00:00
renovate[bot]
acfccdd2e8 Update ember core (#1485)
Co-authored-by: WhiteSource Renovate <renovatebot@gmail.com>
2020-02-14 12:26:14 +00:00
renovate[bot]
a3c9851526 Update dependency pretender to v3.3.1 (#1491)
Co-authored-by: WhiteSource Renovate <renovatebot@gmail.com>
2020-02-14 12:19:05 +00:00
renovate[bot]
198deea921 Update dependency ember-cli-babel to v7.18.0 (#1488)
Co-authored-by: WhiteSource Renovate <renovatebot@gmail.com>
2020-02-14 12:18:51 +00:00
Daniel Lockyer
b0119fcf98 Version bump to 3.6.0 2020-02-14 11:50:36 +00:00
Peter Zimon
64e4ea16e4 🐛 Fixed visual bug for members label dropdowns
no refs.
- fixed spacing issue for member label dropdown edit icon
- added max width to member label dropdown
2020-02-14 12:39:36 +01:00
Rishabh Garg
78e453c1b0 Fixed tests for labels (#1493)
no issue

- Updated member settings css property in tests
- Added mock for label API
2020-02-14 16:37:25 +05:30
Rishabh Garg
d115204d9f Added labels for Members (#1477)
no issue

refs TryGhost/Ghost#11538

* Added members label handling v1

* Added members label dropdown in list screen

* Updated selected labels and member list UI refactor

* Added v1 label add/delete modal

* Added add label modal v1

* Fixed disabled check for new label save

* First stab at member filters layout

* Updated member detail screen design

* Member detail refinements

* Added basic editing for member labels

* Fixed label deletion from members list

* Updated filtered list header

* Refinements for dropdown and empty filter state

* Refined label modal

* Updated member labels fetch logic

* Added custom dropdown component for labels

* Refined style for dropdown

* Refined dropdown button

* Restructure and refine members dropdown styles

* Added selected indication to dropdown

* Fixed dropdown footer style

* Removed member label placeholder

* Removed add label from member list actions

* New label refinements

* Added confirmation modal for label delete

* Added duplicate validation check for labels

* Updated validation check with slug

* Updated copy

* Updated actions dropdown copy

* Fixed visual glitch of dropdown on FF

* Hide scrollbar for labels dropdown

Co-authored-by: Peter Zimon <peter.zimon@gmail.com>
2020-02-14 15:04:01 +05:30
Peter Zimon
a376219453 🐛 Fixed visual bugs on integration details screen
no refs.
- fixed misalignment of icon container and icon
- fixed icon color for "Copied" link status indication
2020-02-12 09:33:27 +01:00
Daniel Lockyer
ffb3a34ee7 Version bump to 3.5.2 2020-02-11 09:37:50 +00:00
Peter Zimon
441146d316 🐛 Style fix for custom views
no refs.
- fixed misalignment of expand button for site custom views
2020-02-10 16:05:57 +01:00
Daniel Lockyer
4225f414e0 Version bump to 3.5.1 2020-02-10 12:55:55 +00:00
Peter Zimon
4ce559a169 Updated staff delete modal copy 2020-02-10 12:41:35 +00:00
Peter Zimon
fc46a97b18 Updated copy 2020-02-10 12:41:35 +00:00
Peter Zimon
0382ea7336 Added note about site backup to delete popup 2020-02-10 12:41:35 +00:00
Kevin Ansfield
9186280ac9 updated to use new model._meta
- use model._meta to access the meta object in the delete response
- removed unused `_deleteUser` method
- move the success/failure method bodies into the main `deleteUser` task to improve readability
- added a timeout after calling `_exportDb()` so that the iframe is not removed from the DOM immediately after it's `src` value is set due to a transition away from the member screen
2020-02-10 12:41:35 +00:00
Kevin Ansfield
7bb24df7b9 Added hacky method for accessing meta value of single-record requests
no issue

- Ember Data does not support accessing meta data included in the response to single-record requests such as save/delete
- approach to allow it taken from https://github.com/emberjs/data/pull/4077#issuecomment-200780097
2020-02-10 12:41:35 +00:00
Nazar Gargol
f42f2a29a3 Rewrote delete into generator function
- Wasn't necessary, but thought this might fix the problem when there's no 'meta' in the reponse object
2020-02-10 12:41:35 +00:00
Nazar Gargol
70524c55a4 Basic flow for triggering db export on user deletion 2020-02-10 12:41:35 +00:00
Kevin Ansfield
8883a1e6f6 Lock file cleanup
no issue

- previous `yarn.lock` was missing some cleanup
2020-02-05 16:19:00 +00:00
Daniel Lockyer
32de94197f Version bump to 3.5.0 2020-02-05 11:42:31 +00:00
Nazar Gargol
21aaf7a46a Renamed members subscribed flag label
no issue

- This change comes to keep the name consistent to the naming used in the CSV import file - `subscribed_to_emails`
2020-02-04 13:27:51 +08:00
Peter Zimon
767ce72212 💄Added shadow to What's new footer
no refs.
- improved discoverability of having more content/scrollable area by adding a small shadow to the footer
2020-02-03 20:58:20 +01:00
Peter Zimon
1756180025 🐛 Fixed mobile style bug for sidebar views
no refs.
- fixed the size of the expand/collapse chevron in sidebar for mobile
2020-02-03 20:18:51 +01:00
Kevin Ansfield
a3c71b8ba8 Fixed query params not resetting when deleting a custom view
no issue

- added a `transitionTo` after deleting a custom view that transitions to the `posts` route with default query params
- refactored `reset-posts-query` helper to a more generic `reset-query-params` helper
  - moved default query params definitions to this helper and expose them so we have a single source of truth
  - exposed `resetQueryParams()` function from the helper for use outside of templates
  - adjust the function and helper behaviour to accept the route name as the first param so that `router.currentRouteName` can be used as a generic reset
2020-02-03 16:38:14 +00:00
Peter Zimon
2c137f0b38 Refined sidebar view icons
no refs.
- replaced icons for custom views for circles so it's more scannable
2020-02-03 14:45:18 +01:00
Kevin Ansfield
1adae0d041 Fixed missing default views when user.accessibility is null
no issue

- removed an old guard that was exiting early when `user.accessibility` was null which meant that the default views were never being inserted into the custom views list
2020-02-03 12:34:23 +00:00
Kevin Ansfield
7c205c1a55 Fixed "Authorization failed" errors during setup and signin
no issue

- the `custom-views` and `navigation` services would trigger their observers immediately when `this.session.user` changed but that would occur before authentication had fully finished which was resulting in the `this.session.user` access triggering a request with no cookie/an old cookie set and causing a 403 error that interrupted the setup and authentication flows
2020-02-03 12:27:18 +00:00
Kevin Ansfield
2226861e17 🐛 Fixed deletion of custom integrations
no issue

- the named arguments for the `<GhTaskButton>` in the integration deletion modal were missing the `@` prefix
2020-01-30 16:48:37 +00:00
Kevin Ansfield
2a77c0fe51 Added default and custom post views (filters) to the admin sidebar (#1474)
no issue

- list custom post views in collapsable sidebar navigation
  - default views: Draft, Scheduled, Published (except for contributors)
  - record expanded/collapsed state of the navigation menus in user settings via new `navigation` service
- adds `customViews` service that manages custom views
  - provides list of default views
  - gives access to "active" custom view based on current route and query params
  - manages loading/saving of custom views to user settings
- show "Add view" button in the content filter when the posts list has been filtered
- show "Edit view" button in the content filter when the posts list filter matches a saved view

Co-authored-by: Peter Zimon <peter.zimon@gmail.com>
2020-01-30 15:35:36 +00:00
Kevin Ansfield
2b37f6aaae Version bump to 3.4.0 2020-01-28 17:23:42 +00:00
Naz Gargol
76c1341666 Added "Complimentary" plan toggle (#1476)
refs TryGhost/Ghost#11537

- Adds support for "Complimentary" plan toggle only when editing an existing member. The same functionality for adding a new member was left out intentionally for simplicity sake. 

Co-authored-by: Peter Zimon <peter.zimon@gmail.com>
2020-01-28 11:27:19 +07:00
Kevin Ansfield
1e77a4c915 Removed <GhDownloadCount>
no issue

- the count.ghost.org service is being shut down
- replaced the fetch+poll component with a hardcoded figure
2020-01-27 09:51:45 +00:00
renovate[bot]
c8625d6a42 Update dependency @tryghost/kg-parser-plugins to v0.9.0 (#1483)
Co-authored-by: WhiteSource Renovate <renovatebot@gmail.com>
2020-01-27 09:27:28 +00:00
Renovate Bot
c815191d41 Update ember core 2020-01-27 04:16:57 +00:00
Renovate Bot
3472f332e3 Update dependency @tryghost/kg-clean-basic-html to v0.1.5 2020-01-27 03:16:30 +00:00
Renovate Bot
910250006f Update dependency @tryghost/timezone-data to v0.2.19 2020-01-27 02:16:55 +00:00
Renovate Bot
05bb69b7d9 Update dependency @tryghost/helpers to v1.1.22 2020-01-27 01:16:27 +00:00
Rish
32cceb8a54 Fixed members chart dropdown style
no issue

We switched to angle bracket syntax and some PowerSelect properties were not properly auto configured here which enabled search box on members chart range dropdown
2020-01-23 13:46:37 +05:30
Daniel Lockyer
ba6389aaf5 Added Node 10 testing to CI
no issue

- we want to test on all supported Node versions
2020-01-22 12:47:50 +07:00
Kevin Ansfield
1e46306129 Fixed linting 2020-01-21 17:48:54 +00:00
Kevin Ansfield
4b40346ff4 Cleaned up unused code in bookmark card
no issue

- the `willDestroyElement` hook is referencing event handlers that aren't used in the bookmark card
- stopped setting `type` in the card payload as it's not used anywhere (possible hangover from when bookmarks were a type of embed card)
2020-01-21 17:45:33 +00:00
Peter Zimon
397e18c7c0 🐛 Fixed dark mode link input bug
no refs.
- fixed style bug for link input in Koenig having no blue border in dark mode
2020-01-21 12:27:30 +01:00
Peter Zimon
d2ac367371 🐛 Fixed button style for staff creation
no refs.
- Fixed Create button being visually detached and incorrect size on the Create (staff) account screen
2020-01-21 12:14:35 +01:00
Kevin Ansfield
d873f929e1 Changed content filters to show "unknown" if a deleted tag/author is selected
refs https://github.com/TryGhost/Ghost-Admin/pull/1474

- show some indicitive text rather than a blank dropdown button when type/author/tag/order query param is present but doesn't match something in our data sets (eg, if a tag/author has been deleted or a query param has been incorrectly typed)
2020-01-20 15:40:32 +00:00
Kevin Ansfield
9cad64cd76 Fixed toaster notification not clearing
no issue

- we switched to using native event listeners rather than jQuery but were still looking for the jQuery-specific `event.originalEvent`
2020-01-20 15:30:24 +00:00
Kevin Ansfield
942e09db9d Lock file maintenance 2020-01-20 09:27:10 +00:00
renovate[bot]
5d9458283e Update dependency ember-composable-helpers to v3.1.0 (#1471)
Co-authored-by: WhiteSource Renovate <renovatebot@gmail.com>
2020-01-20 09:21:13 +00:00
renovate[bot]
0dc30910a2 Update dependency ember-cli-chart to v3.6.0 (#1470)
Co-authored-by: WhiteSource Renovate <renovatebot@gmail.com>
2020-01-20 09:20:33 +00:00
Renovate Bot
28ce0b0dc3 Update dependency ember-route-action-helper to v2.0.8 2020-01-20 07:23:51 +00:00
Renovate Bot
0263b02ffa Update dependency ember-infinity to v2.0.3 2020-01-20 06:18:15 +00:00
Renovate Bot
50b88fba05 Update dependency ember-concurrency to v1.1.5 2020-01-20 05:18:07 +00:00
Renovate Bot
7c8ddab16a Update dependency autoprefixer to v9.7.4 2020-01-20 04:18:14 +00:00
Renovate Bot
51f272b235 Update dependency ember-cli-htmlbars to v4.2.2 2020-01-20 03:17:48 +00:00
Renovate Bot
55a41c6bb5 Update dependency @tryghost/timezone-data to v0.2.18 2020-01-20 02:18:50 +00:00
Renovate Bot
b3a184d5a3 Update dependency @tryghost/helpers to v1.1.21 2020-01-20 01:18:57 +00:00
Kevin Ansfield
ba4c53134f Upgraded eslint-plugin-ghost and fixed new linter errors
no issue

- update imports for `@ember-data` package (https://github.com/emberjs/rfcs/blob/master/text/0395-ember-data-packages.md)
- use `computed.reads` where applicable (https://github.com/ember-cli/eslint-plugin-ember/blob/master/docs/rules/require-computed-macros.md)
- fix usage of `scheduleOnce` so that functions are only scheduled once (https://github.com/ember-cli/eslint-plugin-ember/blob/master/docs/rules/no-incorrect-calls-with-inline-anonymous-functions.md)
2020-01-16 17:01:12 +00:00
Kevin Ansfield
2231dd84c2 Migrated to <AngleBracketSyntax /> (#1460)
no issue

Ember is migrating to `<AngleBracketSyntax />` for component invocation, see https://github.com/emberjs/rfcs/blob/master/text/0311-angle-bracket-invocation.md

We were in a half-way situation where some templates used angle bracket syntax in some places, this PR updates templates to use the syntax everywhere.

This simplifies the rules for what template code is referring to...

`<Component>` = a component
`{{helper}}` = a helper (or locally assigned handlebars variable)
`{{this.foo}}` = data on the template backing context (a component/controller)
`{{@foo}}` = a named argument passed into the component that the component backing class has not modified (note: this commit does not introduce any named arguments)

- ran codemod https://github.com/ember-codemods/ember-angle-brackets-codemod on the following directories:
  - `app/templates`
  - `lib/koenig-editor/addon/templates`
- removed positional params from components as angle bracket syntax does not support them
  - `gh-feature-flag`
  - `gh-tour-item`
  - `gh-cm-editor`
  - `gh-fullscreen-modal`
  - `gh-task-button`
- updates some code that was missed in 3c851293c1 to use explicit this
2020-01-16 15:14:03 +00:00
Kevin Ansfield
0f8610a6e9 Extracted duplicated posts/pages filter into a component
no issue

- posts and pages (and their corresponding `-loading` counterparts) templates were all duplicating a lengthy section of handlebars
- extracted the duplicated handlebars into a template for easier design changes or upgrading of `ember-power-select`
- moved generation of the "selected" CSS classes into the template to clean up code in the controller
2020-01-15 15:15:20 +00:00
Kevin Ansfield
7c7c4962f9 Upgraded ember-power-* addons (#1459)
no issue

- bump deps
- adjust usage for breaking changes... 
  - https://github.com/cibernox/ember-power-select/blob/master/CHANGELOG.md#300-beta1
  - https://github.com/cibernox/ember-basic-dropdown/blob/master/CHANGELOG.md#200-beta3
  - https://github.com/cibernox/ember-power-datepicker/blob/master/CHANGELOG.md#070
- update overridden component and template files to match latest addon code
  - switch to class syntax w/decorators
  - adjust for angle bracket syntax
2020-01-15 13:53:51 +00:00
Kevin Ansfield
210eb6ef2e Silenced Component#sendAction deprecation
no issue

- `ember-drag-drop` still triggers this and spams the console when re-ordering tags in the tags input
2020-01-14 15:39:48 +00:00
Fabien O'Carroll
579711d19c Version bump to 3.3.0 2020-01-13 14:08:24 +02:00
Kevin Ansfield
49befb0fe8 Lock file maintenance 2020-01-13 09:42:49 +00:00
Daniel Lockyer
eb6a3b9fa8 Switched to Renovate's LTS support policy
no issue

- we want to support all LTS versions and not just the latest
2020-01-13 14:21:24 +07:00
Renovate Bot
12a0191f0e Update dependency reframe.js to v2.2.7 2020-01-13 04:16:56 +00:00
Renovate Bot
7ff958c717 Update dependency ember-concurrency to v1.1.4 2020-01-13 03:16:46 +00:00
Renovate Bot
1e3e9bd71b Update dependency ember-cli-htmlbars to v4.2.1 2020-01-13 02:16:17 +00:00
Renovate Bot
6eafe9eb0b Update dependency element-resize-detector to v1.1.16 2020-01-13 01:16:44 +00:00
Kevin Ansfield
4d5c43305b Removed deprecated usage of this.$() in components
no issue

- converted remaining uses of `this.$()` that I could find over to native DOM
- deprecation is still silenced for now because both `liquid-fire` and `liquid-wormhole` trigger it
2020-01-10 15:12:39 +00:00
Kevin Ansfield
3ac4de6747 Cleaned up more unused code in <GhTagSettingsForm>
refs 704cbcfb4d

- `reset()` method was previously removed as it's no longer needed
- supporting code for calling that method was missed in the previous cleanup
2020-01-10 14:56:43 +00:00
Kevin Ansfield
f271415626 Enabled manual typing of post publish dates (#1431)
*  Enabled manual typing of post publish dates

closes https://github.com/TryGhost/Ghost/issues/9256

- stores the typed date internally to the component until
  - Enter is pressed whilst focused
  - Ctrl/Cmd+S is pressed whilst focused
  - the input loses focus
- shows an error message if the typed date is not in the correct format or is invalid
- stops Ctrl/Cmd+S propagating if the typed date is not in the correct format or is invalid
- as long as the date is valid it calls the `setDate` action when the input loses focus, Ctrl/Cmd+S or Enter is pressed
- prevents publish being triggered in the publish menu if an invalid date is entered
- resets any invalid state in the PSM when it's closed
- manages focus when using <kbd>Tab</kbd>
2020-01-10 14:25:59 +00:00
Kevin Ansfield
704cbcfb4d Cleaned up unused code in <GhTagSettingsForm>
no issue

- the tag screen is now separate from the index so the code needed for handling switches between main/meta panes and scroll resets is not used and no longer needed
- tidies up indentation in the template
2020-01-10 14:14:55 +00:00
Kevin Ansfield
190f2e905d Fixed Ember Data error when navigating to Staff screen
no issue

- if only some roles have been loaded, such as from embedded user records in posts, navigating to the Staff screen when invites exist for roles that have not yet been loaded would result in an Ember Data error
- the error occurs because we use `invite.role.*` in the template but we've specified `{async: false}` in the `belongsTo` relationship for `invite.role` which prevents Ember Data automatically querying the API
- by always fetching the roles list before fetching the invites list we prevent the error but we do introduce an extra API request in some circumstances
2020-01-10 13:53:58 +00:00
Kevin Ansfield
a862cb6b6a Unsilenced deprecations that are no longer triggered
no issue

- cleaned up the `deprecation-workflow.js` file by removing deprecations that are no longer being triggered by our test suite or general app usage (if they are still triggered in untested areas it will be useful to see the logs)
- updated usages of `{{gh-text-field}}` to use it's `shouldFocus` attribute rather than directly overriding it's `autofocus` computed property
2020-01-09 17:20:13 +00:00
Kevin Ansfield
3c30e73701 Fixed typo in email confirmation modal 2020-01-08 16:44:43 +00:00
Kevin Ansfield
bc09a7c4d3 Fixed invite management tests
no issue

- adjusts mirage config so that we're correctly serializing foreign keys
- our API outputs (and our app code expects) foreign keys for non-embedded resources to be in the format `{relationship_name}_id` but mirage's default REST serializer does not include the `_id` suffix
- tests started failing because c46d04f612 introduced a direct access of the invite->role relationship which Ember Data was not correctly creating when mirage was outputting `role` rather than `role_id`
2020-01-08 15:37:06 +00:00
John O'Nolan
516f4212c3 2020 2020-01-07 18:38:25 +00:00
Kevin Ansfield
c46d04f612 Fixed invite resend
refs 3d7e593c96

- `record.belongsTo().id` is an older Ember Data concept so it was returning `undefined`
- the `role` relationship is set up as `async: false` and is always output as an embedded record by our API so we're safe to use `this.role.id` without dealing with any async lookup
2020-01-07 13:45:06 +00:00
Kevin Ansfield
3d7e593c96 Fixed Ember Data record.toJSON() deprecation
no issue

- https://deprecations.emberjs.com/ember-data/v3.x/#toc_record-toJSON
2020-01-07 13:23:15 +00:00
Kevin Ansfield
571784ba3f Silenced "isVisible" deprecation
no issue

- it's being caused by the `ember-infinity` addon and was making test output rather noisy
- revert once `ember-inifinity` has a release removing `isVisible` and we've upgraded
2020-01-07 11:25:24 +00:00
renovate[bot]
ce78528a85 Update dependency ember-infinity to v2 (#1453)
Co-authored-by: Renovate Bot <renovatebot@gmail.com>
2020-01-07 09:54:26 +00:00
renovate[bot]
26e32a29d3 Update dependency ember-simple-auth to v2 (#1449)
Co-authored-by: Renovate Bot <renovatebot@gmail.com>
2020-01-07 09:27:13 +00:00
Kevin Ansfield
68c7147887 Fixed linting 2020-01-07 09:11:42 +00:00
Kevin Ansfield
7e0bbbf658 Swapped and updated pretender dependency
no issue

- `ember-cli-pretender` is no longer required when using `ember-auto-import`
- updated `pretender` dependency from 2.1.2 to 3.2.0
- removed upload progress tests (one was already skipped due to random failures) because pretender is not outputting meaningful `event.loaded` and `event.total` values
2020-01-06 17:28:47 +00:00
Kevin Ansfield
f6c0b6df7a Reverted broccoli-concat to 4.0.0
no issue

- 4.2.1 was failing when building on macOS due to an issue creating asset directories
- https://github.com/broccolijs/broccoli-concat/issues/149
2020-01-06 11:37:40 +00:00
Kevin Ansfield
4dd22a32fc Dropped Node 8.x support
no issue

- Node 8.x is now EOL
- switches Travis over to testing against latest Node LTS which is 12.x
2020-01-06 10:59:59 +00:00
renovate[bot]
9058bb1b1b Lock file maintenance (#1451)
Co-authored-by: Renovate Bot <renovatebot@gmail.com>
2020-01-06 10:59:35 +00:00
renovate[bot]
54839d6b48 Update ember core (#1441)
Co-authored-by: Renovate Bot <renovatebot@gmail.com>
2020-01-06 10:51:48 +00:00
renovate[bot]
f4c24b6f5b Update dependency ember-test-selectors to v3 (#1450)
Co-authored-by: Renovate Bot <renovatebot@gmail.com>
2020-01-06 10:37:47 +00:00
renovate[bot]
357e3719fc Update dependency ember-resolver to v7 (#1448)
Co-authored-by: Renovate Bot <renovatebot@gmail.com>
2020-01-06 10:27:27 +00:00
renovate[bot]
b3206b1bf5 Update dependency ember-fetch to v7 (#1447)
Co-authored-by: Renovate Bot <renovatebot@gmail.com>
2020-01-06 10:27:01 +00:00
renovate[bot]
a60b85297a Update dependency ember-cli-test-loader to v3 (#1445)
Co-authored-by: Renovate Bot <renovatebot@gmail.com>
2020-01-06 10:26:19 +00:00
renovate[bot]
adedc059a2 Update dependency broccoli-funnel to v3 (#1443)
Co-authored-by: Renovate Bot <renovatebot@gmail.com>
2020-01-06 10:23:06 +00:00
renovate[bot]
6112a9eb91 Update dependency ember-composable-helpers to v3 (#1446)
Co-authored-by: Renovate Bot <renovatebot@gmail.com>
2020-01-06 09:47:53 +00:00
renovate[bot]
2d9cc6fb37 Update dependency broccoli-merge-trees to v4 (#1444)
Co-authored-by: Renovate Bot <renovatebot@gmail.com>
2020-01-06 09:46:27 +00:00
renovate[bot]
7f45453fb7 Update dependency broccoli-concat to v4 (#1442)
Co-authored-by: Renovate Bot <renovatebot@gmail.com>
2020-01-06 09:45:29 +00:00
renovate[bot]
88262b91c6 Update dependency ember-cli-htmlbars to v4.2.0 (#1439)
Co-authored-by: Renovate Bot <renovatebot@gmail.com>
2020-01-06 09:44:59 +00:00
renovate[bot]
a2a7202b8c Update dependency ember-cli-babel to v7.13.2 (#1438)
Co-authored-by: Renovate Bot <renovatebot@gmail.com>
2020-01-06 09:44:28 +00:00
renovate[bot]
dbc69960ca Update dependency @ember/optional-features to v1.3.0 (#1437)
Co-authored-by: Renovate Bot <renovatebot@gmail.com>
2020-01-06 09:29:50 +00:00
Renovate Bot
9637f16b42 Update dependency ember-cli-string-helpers to v4.0.6 2020-01-06 01:15:49 +00:00
Renovate Bot
ccbea6c5c6 Update dependency eslint to v6.8.0 2019-12-30 00:17:04 +00:00
Renovate Bot
18d39a461b Update dependency ember-data to v3.14.1 2019-12-23 04:16:56 +00:00
Renovate Bot
c1feec7b64 Update dependency ember-cli-mirage to v1.1.6 2019-12-23 03:16:59 +00:00
Renovate Bot
deab3b4ec6 Update dependency @tryghost/timezone-data to v0.2.17 2019-12-23 02:17:41 +00:00
Renovate Bot
73e885a15d Update dependency @tryghost/helpers to v1.1.20 2019-12-23 01:20:46 +00:00
Kevin Ansfield
837fdd2609 Fixed incorrect "explicit this" for did-insert and will-destroy element modifiers
no issue

- the "explicit this" codemod incorrectly added `this.` in front of the `{{did-insert}}` and `{{will-destroy}}` element modifiers
2019-12-19 21:19:20 +00:00
Rish
d7bd6a3650 Version bump to 3.2.0 2019-12-17 21:52:51 +05:30
Rishabh Garg
d1cf671cbb Added upgrade modal for host member limits (#1428)
no issue

Uses 160ef2976a to add new upgrade popup for host limit errors while publishing/scheduling post with emails.
2019-12-17 19:27:42 +05:30
Rishabh Garg
5a25f83685 Added new brand color publication setting (#1409)
no issue

Reads new brand primary color setting and adds UI to modify/update it behind the dev flag
2019-12-17 16:37:34 +05:30
Rishabh Garg
6a1edceded Added members growth chart (#1424)
no issue

Adds new members growth chart in members list screen to highlight growth of members over different date ranges
2019-12-17 15:59:26 +05:30
Kevin Ansfield
397a1b52f2 Added console log with reason unsaved changes modal is shown in editor
no issue

- output the reason we're showing the unsaved changes modal along with some context to the console
- to share it, right click on the object that is logged to the web inspector console next to the text "showing leave editor modal" and choose "Store as global variable" in the popup menu, then execute `copy(temp1)` (if `temp1` was the variable that was created for you) which will copy a string representation of the object to your clipboard ready for sharing
2019-12-17 09:57:37 +00:00
Kevin Ansfield
c3b8fe6b43 Fixed unsaved changes modal showing after focus/blur of tag and member fields
no issue

- the inputs in tag/member settings are now two-way bound which means that a `null` or `undefined` value can become `""` when a field is focused/blurred due to inputs only working on strings
- if a `null` or `undefined` property value becomes `""` Ember Data will treat that as a dirty property and that will in turn trigger the unsaved changes modal when leaving the tag/member details screens
- this change strengthens our `_saveXProperty` private controller methods to skip any changes between "falsy" property values unless the new value is explicitly `false`
2019-12-16 17:02:19 +00:00
Peter Zimon
735f6eb66f 🐛 Fixed darkmode color regressions
refs. https://github.com/TryGhost/Ghost/issues/11445

- fixed input field background colors in Post Settings menu in darkmode
- applied color variables to day picker calendar component
- fixed colors of day picker calendar in darkmode
2019-12-16 15:04:32 +01:00
Kevin Ansfield
1063698861 Removed ember-addons Renovate group (#1427)
no issue

- having so many addons grouped into a single PR is difficult to manage when not reviewing, updating and merging frequently. If a single addon requires deeper work or breaks our node support range than it blocks upgrades on all other addons which then compounds required effort over time
2019-12-16 13:27:11 +01:00
renovate[bot]
0154b6c6c1 Pin dependency @glimmer/component to 1.0.0 (#1425) 2019-12-16 10:35:14 +01:00
Renovate Bot
787d8a28ad Update dependency ember-exam to v4.0.9 2019-12-16 01:12:39 +00:00
Renovate Bot
acc3e96b3c Update dependency autoprefixer to v9.7.3 2019-12-13 19:38:46 +00:00
Kevin Ansfield
a6c005e5be 🐛 Fixed unexpected "unsaved changes" modals when accessing screens
no issue

We weren't correctly clearing state for the "display modal" booleans when leaving screens. This meant that it was possible to end up in a state where where every time you access a screen you get the unsaved changes modal
2019-12-13 17:09:06 +00:00
renovate[bot]
4c9fc47df8 Lock file maintenance (#1419) 2019-12-13 17:14:46 +01:00
Kevin Ansfield
2d507c47b1 Converted <GhErrorMessage> to glimmer component
no issue

- fixes `isVisible` deprecation warning that was showing up for every component invocation since the Ember 3.14 upgrade
2019-12-13 16:12:04 +00:00
renovate[bot]
fbcb8476d5 Update ember core (#1389) 2019-12-13 16:15:06 +01:00
Kevin Ansfield
3c851293c1 Ran "no implicit this in templates" codemod
no issue

We were in a part-way state where some touched files had been (sometimes partially) migrated to explicit `this`. The codemod that was available has now fixed the formatting issues it had so it was a good time to run it.

https://github.com/ember-codemods/ember-no-implicit-this-codemod

- part of the migration path for https://github.com/emberjs/rfcs/pull/308
- starts to make template resolution rules more explicit
  - `<MyComponent />` - always a component
  - `{{my-component}}` - component or helper (components _must_ have a `-`. This style of component will go away once fully migrated to angle bracket components)
  - `{{value}}` - a helper or local template variable
  - `{{this.value}}` - reference to a property on the backing context (either a controller or a component JS file)
2019-12-13 14:20:29 +00:00
Kevin Ansfield
c10e245c9d Fixed linter errors 2019-12-13 13:55:59 +00:00
Kevin Ansfield
7d997d5c2d Fixed member count after deleting a member
no issue

- the member count is automatically calculated via the length of the live members array so there's no need to manually decrement it - if we do manually decrement then the count is off by one because the auto calculation runs to get the new value before the manual decrement
2019-12-13 11:38:37 +00:00
Kevin Ansfield
866d6eae9a 🐛 Fixed unsaved changes modal when using Cmd+S on tag/member screens
no issue

- keep a scratch model on the tag/member controllers rather than inside of the form components
  - allows the controller's `save` task to transfer scratch values to real values before saving
  - means that pressing Cmd+S whilst a field is still focused will save the expected value rather than the old value avoiding unsaved changes modals when trying to leave the screen when you think you've already saved
- fixed route and url not changing after saving a new member
- fixed error when clicking delete tag button
- cleaned up unused `showDeleteTagModal` actions
2019-12-13 11:37:01 +00:00
Kevin Ansfield
56ce6aa824 Tidied up <GhMemberSettingsForm>
no issue

- removed unused `isViewingSubview` property
- replaced `hasMultipleSubscriptions` CP with the `gt` CP macro
- fixed indentation in the template
2019-12-12 18:22:31 +00:00
Kevin Ansfield
5585a781b9 Unified tag and member screen code
no issue

The tag and member screens share the same underlying UI/UX patterns but were using different code patterns. This brings both in line so that we have consistent code patterns that can be re-used for other screens.

- fixed cleanup of new tags by adding the `deactivate` hook to the `tag` route
- updated `member` and `member.new` route/controller setup to match tag route/controller setup
  - added `save` action to member controller so that Ctrl/Cmd+S works on member screen
  - updated tag route/controller to utilise the same instant display w/background refresh when accessing the tag details screen
- completed transition of non-component tag/members templates over to angle bracket component syntax
2019-12-12 13:59:46 +00:00
Naz Gargol
51ded01ed3 Added members cancel subscription fields on members page (#1423)
refs https://github.com/TryGhost/Members/pull/107

- Added 'cancel at period end' logic to members subscription details
- Added stripe subscription link in subscriptions details
2019-12-12 20:00:57 +07:00
Kevin Ansfield
c53e4f9cd7 Fixed tag deletion
no issue

- don't show "Delete tag" button when we're displaying a new/unsaved tag
- refactor the `_deleteTag()` method to be more explicit and remove handling that is no longer required since the tag screen is not nested in the tags screen
- revised the condition in `showUnsavedChangesModal()` method so that it's body doesn't fire twice when leaving the `tag` or `tag.new` route
- revised the `showUnsavedChangesModal()` method body to look at the number of changed properties on the tag rather than relying on `tag.hasChangedAttributes` which is always `true` for new models
2019-12-10 12:18:20 +00:00
Kevin Ansfield
4496ea41c4 Fixed linting 2019-12-09 17:45:51 +00:00
Kevin Ansfield
5c0cfca479 Cleaned up and re-organised tag and new tag routes/controllers
no issue

- removed unused `<GhTagsManagementContainer>` component and related `isMobile` CPs
- un-nested `tag` and `tag.new` routes
  - nested routes in Ember are used for nested UI but these are both separate screens
  - removes usage of `selectedTag` property in favour of using Ember's built-in model handling
  - removed unnecessary `tags/new` controller
  - sets up `tag.new` route which extends the `tag` route to avoid duplicate code
2019-12-09 17:44:16 +00:00
Renovate Bot
ccaece5e8d Update ember testing 2019-12-04 22:21:20 +00:00
Renovate Bot
eca532639b Update ember addons 2019-12-04 20:54:43 +00:00
Nazar Gargol
a524faf56c Version bump to 3.1.1 2019-12-04 20:39:08 +07:00
Peter Zimon
d0a0e70caf 🎨 Refined new member avatar style
no issue.
- removed outline from manually created member avatar on member detail screen
2019-12-04 11:42:58 +01:00
Hannah Wolfe
00ce91ce3a Added Secondary Navigation (#1410)
refs: https://github.com/TryGhost/Ghost/pull/11409

- Added a new UI for a second set of navigation links
- This should support most concepts of nav, e.g. left and right, or header and footer
- This PR mostly updates the design and nav components to cope with a second set of nav
2019-12-04 11:14:45 +07:00
Peter Zimon
a50cc62617 Added white border to member gravatar on member list 2019-12-03 15:40:46 +01:00
Peter Zimon
1f2e41e5e8 Refined member gravatar design
no issue.
- removed halo from member gravatars
2019-12-03 15:32:01 +01:00
Peter Zimon
97940742cf 🎨 Scaled email mobile preview
no issue.

- scaled email mobile preview to resemble mobile proportions better
2019-12-03 15:04:32 +01:00
Renovate Bot
a93fc6fd88 Update Test & linting packages 2019-12-03 12:24:26 +00:00
Naz Gargol
1df0e2b917 🎨 Added gravatars for member avatars (#1417)
no issue

- When an email has a valid gravatar handle it displays an image instead of initials for the member
- Introduces new {{gravatar}} helper which accepts an email as parameter and size/d as named parameters. The output is a URL to gravatar image
- Refactored usage of "splattribute" to explicit property. There was a need to duplicate class property usage in the component and doing that through splatttibute feature is unsafe as pointed ou here - https://github.com/TryGhost/Ghost-Admin/pull/1417#discussion_r351837584
2019-12-03 18:10:47 +07:00
Peter Zimon
6d2bc8fccc 🐛 Fixed email preview header position
no issue.
- fixed email preview header being off in Firefox and Safari
2019-12-03 11:23:51 +01:00
Peter Zimon
137f8eae7c Refined mobile email preview
no refs.
Issue was that the ratio of email mobile preview UI was completely off on higher screen resolutions.

- set the email mobile preview UI to fixed size
2019-12-03 11:18:02 +01:00
Nazar Gargol
02fe1591e5 Fixed members acceptance test
- The `await wait()` worked in combination with correct assertions
2019-12-03 16:05:56 +07:00
Naz Gargol
4bd4825902 Improved adding first members on no-members screen (#1416)
no issue

- There was a need to make the experience of adding a first member(s) as frictionless as possible, which lead to adding some actionable controls to the "no-members" screen.
- Adds the ability to make yourself a member
- Adds the ability to import CSV member
- Link to add a member manually
2019-12-03 12:04:04 +07:00
Nazar Gargol
a4ad1f6576 Fixed flaky new member test
no issue

- The test is failing only when run purely from the console if run from the browser window it alway succeeds
- Commented out intended condition and left the tricky one out for future review
2019-12-03 11:24:16 +07:00
Naz Gargol
c41c184762 Added member "add" screen (#1411)
no issue

- We have a need to create a member manually, this changeset solves this problem.
- Added new member button to the member's screen
- Needed to be able to perform add member action
- Fixed inconsistent `createAt` naming. All models use consistent `createdAtUTC`, fixed it up so that members model follows the same pattern. If we want to change this pattern should probably happen for all models at once
- Fixed member avatar when creating a new member. If the values are completely empty the screen ends up being filled with empty space. Added some dummy initials which are recalculated once the member enters the name or an email
- Refactored DS naming for consistency. Nowhere else in the codebase 'DS' name is ever used, made this consistent
- Added missing validations in members form
- Simplified if conditions in the member list template. When using the if/esle statements unnecessary new-line symbols were inserted which made it hard to test. Also by using computed property view is much cleaner
- Updated member's model default value for `subscribed` to "true". It is turned on by default in the model layer  on the backend (ref: https://github.com/TryGhost/Ghost/blob/3.1.0/core/server/data/schema/schema.js#L330), this behavior is intended and should be the same on the frontend
2019-11-28 18:30:21 +07:00
Kevin Ansfield
c376fc016a Version bump to 3.1.0 2019-11-27 14:11:19 +00:00
Peter Zimon
8d45e95ee4 Updated post paragraph spacing 2019-11-27 13:36:12 +00:00
Peter Zimon
02387ab50a Refined editor post title styles
no issue.
- fixed editor post title placeholder font-weight
- fixed spacing between editor post title and first paragraph/card
2019-11-27 13:36:12 +00:00
Kevin Ansfield
1837adf336 Lock file maintenance 2019-11-27 12:18:08 +00:00
Kevin Ansfield
47b441c41d Merge branch 'mega' 2019-11-27 12:15:09 +00:00
Rish
55cd5bbb32 Fixed lint 2019-11-27 13:21:16 +05:30
Kevin Ansfield
6aecfbfcce Fixed members count in confirm email modal
no issue

- the members count used to disable the email toggle and shown in the confirm modal was incorrect as it didn't take into account subscribed vs non-subscribed members
- adjusts the filter in the count query to only fetch subscribed members
2019-11-26 15:08:33 +00:00
Peter Zimon
5674323d2a Removed link to settings for admins in email error copy 2019-11-26 13:38:43 +01:00
Peter Zimon
e866808193 Updated email role restrictions
no issue.
Only admins and owners should have access to sending emails. Updated relevant templates
to restrict access to emails for non-admins/owners
2019-11-26 13:20:49 +01:00