Ghost/ghost/admin/lib/koenig-editor/addon/components/koenig-editor.hbs
Kevin Ansfield 4e30da6c70 Added ability to update snippet contents (#2073)
refs https://github.com/TryGhost/Team/issues/1008

To update a snippet, select the content in the editor that you want as your snippet text and click the snippet icon as per creating a snippet. Once the snippet name input shows, start typing the name of an existing snippet to be able to select it for update.

- replaced main snippet input component with the labs component
- removed the feature flag and associated labs screen toggle
- removed original/labs snippet input conditional in the editor
2021-09-01 09:09:40 +01:00

110 lines
3.7 KiB
Handlebars

<div class="koenig-editor__editor-wrapper" data-kg="editor-wrapper">
<div class="koenig-editor__editor" data-kg="editor"></div>
</div>
{{!-- pop-up markup toolbar is shown when there's a selection --}}
<KoenigToolbar
@editor={{this.editor}}
@editorRange={{this.selectedRange}}
@activeMarkupTagNames={{this.activeMarkupTagNames}}
@activeSectionTagNames={{this.activeSectionTagNames}}
@toggleMarkup={{action "toggleMarkup"}}
@toggleSection={{action "toggleSection"}}
@toggleHeaderSection={{action "toggleHeaderSection"}}
@editLink={{action "editLink"}}
@addSnippet={{this.addSnippetIfPossible}}
/>
{{!-- pop-up link hover toolbar --}}
<KoenigLinkToolbar
@editor={{this.editor}}
@container={{this.element}}
@linkRange={{this.linkRange}}
@selectedRange={{this.selectedRange}}
@editLink={{action "editLink"}}
/>
{{!-- pop-up link editing toolbar --}}
{{#if this.linkRange}}
<KoenigLinkInput
@editor={{this.editor}}
@linkRange={{this.linkRange}}
@linkRect={{this.linkRect}}
@selectedRange={{this.selectedRange}}
@cancel={{action "cancelEditLink"}}
/>
{{/if}}
{{!-- pop-up snippet editing toolbar --}}
{{#if this.snippetRange}}
<KoenigSnippetInput
@editor={{this.editor}}
@snippetRange={{this.snippetRange}}
@snippetRect={{this.snippetRect}}
@snippets={{@snippets}}
@save={{@saveSnippet}}
@update={{@updateSnippet}}
@cancel={{this.cancelAddSnippet}}
/>
{{/if}}
{{!-- (+) icon and pop-up menu --}}
<KoenigPlusMenu
@editor={{this.editor}}
@editorRange={{this.selectedRange}}
@snippets={{this.snippets}}
@deleteSnippet={{this.deleteSnippet}}
@replaceWithCardSection={{action "replaceWithCardSection"}}
@replaceWithPost={{action "replaceWithPost"}}
/>
{{!-- slash menu popup --}}
<KoenigSlashMenu
@editor={{this.editor}}
@editorRange={{this.selectedRange}}
@snippets={{this.snippets}}
@deleteSnippet={{this.deleteSnippet}}
@replaceWithCardSection={{action "replaceWithCardSection"}}
@replaceWithPost={{action "replaceWithPost"}}
/>
{{!-- all component cards wormholed into the editor canvas --}}
{{#each this.componentCards as |card|}}
{{#in-element card.destinationElement}}
{{component card.componentName
editor=this.editor
postModel=card.postModel
cardName=card.cardName
payload=card.payload
env=card.env
options=card.options
headerOffset=this.headerOffset
saveCard=(action card.env.save)
cancelCard=(action card.env.cancel)
removeCard=(action card.env.remove)
isSelected=card.isSelected
isEditing=card.isEditing
selectCard=(action "selectCard" card)
deselectCard=(action "deselectCard" card)
editCard=(action "editCard" card)
deleteCard=(action "deleteCard" card)
saveAsSnippet=(if this.saveCardAsSnippetIfPossible (fn this.saveCardAsSnippetIfPossible card))
moveCursorToPrevSection=(action "moveCursorToPrevSection" card)
moveCursorToNextSection=(action "moveCursorToNextSection" card)
addParagraphAfterCard=(action "addParagraphAfterCard" card)
registerComponent=(action (mut card.component))
}}
{{/in-element}}
{{/each}}
{{!-- all component atoms wormholed into the editor canvas --}}
{{#each this.componentAtoms as |atom|}}
{{#in-element atom.destinationElement}}
{{component atom.componentName
editor=this.editor
atom=atom
saveAtom=(fn atom.env.save atom.env.value atom.env.payload)
registerComponent=(action (mut atom.component))
}}
{{/in-element}}
{{/each}}