mirror of
https://github.com/TryGhost/Ghost.git
synced 2024-11-30 01:42:29 +03:00
6c5f359628
no issue - we currently rely on a side-effect of the individual publish menu components calling `setSaveType` when they are rendered - in tests sometimes the timing was not what we expected and the menu would swap components mid-save which then updated the save type and caused further problems - added a guard so that we never swap the publish menu components whilst a save is in progress
43 lines
1.6 KiB
Handlebars
43 lines
1.6 KiB
Handlebars
{{#basic-dropdown verticalPosition="below" onOpen=(action "open") onClose=(action "close") as |dd|}}
|
|
{{#dd.trigger class="gh-btn gh-btn-outline gh-publishmenu-trigger"}}
|
|
<span data-test-publishmenu-trigger>{{triggerText}} {{svg-jar "arrow-down"}}</span>
|
|
{{/dd.trigger}}
|
|
|
|
{{#dd.content class="gh-publishmenu-dropdown"}}
|
|
{{#if (eq displayState "published")}}
|
|
{{gh-publishmenu-published
|
|
saveType=saveType
|
|
setSaveType=(action "setSaveType")}}
|
|
|
|
{{else if (eq displayState "scheduled")}}
|
|
{{gh-publishmenu-scheduled
|
|
post=post
|
|
saveType=saveType
|
|
isClosing=isClosing
|
|
setSaveType=(action "setSaveType")}}
|
|
|
|
{{else}}
|
|
{{gh-publishmenu-draft
|
|
post=post
|
|
saveType=saveType
|
|
setSaveType=(action "setSaveType")}}
|
|
{{/if}}
|
|
|
|
{{!--
|
|
save button needs to be outside of menu components so it doesn't lose state
|
|
or cancel the task when the post status updates and switches components
|
|
--}}
|
|
<footer class="gh-publishmenu-footer">
|
|
<button class="gh-btn gh-btn-outline gh-btn-link" {{action dd.actions.close}} data-test-publishmenu-cancel>
|
|
<span>Cancel</span>
|
|
</button>
|
|
{{gh-task-button buttonText
|
|
task=save
|
|
successText=successText
|
|
runningText=runningText
|
|
class="gh-btn gh-btn-blue gh-publishmenu-button gh-btn-icon"
|
|
data-test-publishmenu-save=true}}
|
|
</footer>
|
|
{{/dd.content}}
|
|
{{/basic-dropdown}}
|