mirror of
https://github.com/datahub-project/datahub.git
synced 2025-08-12 11:17:01 +00:00
183 lines
6.9 KiB
Handlebars
183 lines
6.9 KiB
Handlebars
![]() |
<ModalDialog
|
||
|
@overlayClass="notification-overlay"
|
||
|
@containerClassNames="{{this.baseModalClass}}__modal notification-confirm-modal"
|
||
|
@onClose={{fn this.onResetModal}}
|
||
|
>
|
||
|
<header class="notification-confirm-modal__header {{this.baseModalClass}}__header">
|
||
|
<h3 class="{{this.baseModalClass}}__title">
|
||
|
Add change log
|
||
|
</h3>
|
||
|
<button
|
||
|
type="button"
|
||
|
class="{{this.baseModalClass}}__close"
|
||
|
{{on "click" (fn this.onResetModal)}}
|
||
|
>
|
||
|
×
|
||
|
</button>
|
||
|
</header>
|
||
|
<section class="notification-confirm-modal__content {{this.baseModalClass}}__content">
|
||
|
{{#if this.isDisplayingPreviewModal}}
|
||
|
<div class="{{this.baseModalClass}}__item">
|
||
|
<p class="{{this.baseModalClass}}__label {{this.baseModalClass}}__label-bold">
|
||
|
{{this.titleText}}
|
||
|
</p>
|
||
|
<ul class="{{this.baseModalClass}}__item {{this.baseModalClass}}__list">
|
||
|
<li>Dataset Followers ({{this.emailRecipientsCount.followers}})</li>
|
||
|
<li>All Owners of the dataset ({{this.emailRecipientsCount.owners}})</li>
|
||
|
<li>Individual email recipients ({{this.emailRecipientsCount.individualRecipients}})</li>
|
||
|
<li>Group email distribution list ({{this.emailRecipientsCount.distributionLists}})</li>
|
||
|
</ul>
|
||
|
</div>
|
||
|
<div class="{{this.baseModalClass}}__item">
|
||
|
<p class="{{this.baseModalClass}}__label {{this.baseModalClass}}__label-bold">
|
||
|
Add Additional email recipients (optional)
|
||
|
</p>
|
||
|
<p class="{{this.baseModalClass}}__label">
|
||
|
Add Group email distribution list
|
||
|
</p>
|
||
|
<div class="{{this.baseModalClass}}__tag-input">
|
||
|
{{#each this.distributionLists as |distributionList index|}}
|
||
|
<NachoPillInput
|
||
|
class="{{this.baseModalClass}}__pill"
|
||
|
@value={{distributionList}}
|
||
|
@onDelete={{fn this.removeRecipient this.recipientType.distributionList index}}
|
||
|
/>
|
||
|
{{/each}}
|
||
|
<NachoPillInput
|
||
|
class="{{this.baseModalClass}}__pill"
|
||
|
@placeholder="e.g.,datahub-dev"
|
||
|
@onComplete={{fn this.addRecipient this.recipientType.distributionList}}
|
||
|
/>
|
||
|
</div>
|
||
|
<p class="{{this.baseModalClass}}__label">
|
||
|
Add Individual email recipients
|
||
|
</p>
|
||
|
<div class="{{this.baseModalClass}}__tag-input">
|
||
|
{{#each this.individualRecipients as |individualRecipient index|}}
|
||
|
<NachoPillInput
|
||
|
class="{{this.baseModalClass}}__pill"
|
||
|
@value={{individualRecipient}}
|
||
|
@onDelete={{fn this.removeRecipient this.recipientType.individualRecipient index}}
|
||
|
/>
|
||
|
{{/each}}
|
||
|
<NachoPillInput
|
||
|
class="{{this.baseModalClass}}__pill"
|
||
|
@placeholder="e.g.,jweiner"
|
||
|
@onComplete={{fn this.addRecipient this.recipientType.individualRecipient}}
|
||
|
/>
|
||
|
</div>
|
||
|
</div>
|
||
|
{{else if this.isSendingEmailOnly}}
|
||
|
<ChangeManagement::ReadOnlyEmailContent
|
||
|
@subject={{@currentChangeLog.subject}}
|
||
|
@content={{@currentChangeLog.content}}
|
||
|
/>
|
||
|
{{else}}
|
||
|
<div class="{{this.baseModalClass}}__item">
|
||
|
<p class="{{this.baseModalClass}}__label">Subject</p>
|
||
|
<Textarea
|
||
|
class="{{this.baseModalClass}}__text-input {{this.baseModalClass}}__text-input-subject"
|
||
|
@maxlength={{this.maxCharSubject}}
|
||
|
@value={{this.editableChangeset.subject}}
|
||
|
@placeholder="Headline of the change"
|
||
|
/>
|
||
|
<p class="{{this.baseModalClass}}__text-input-validation">
|
||
|
{{! render validation messages for subject}}
|
||
|
<ul class="{{this.baseModalClass}}__text-input-error">
|
||
|
{{#with this.editableChangeset.error as |error|}}
|
||
|
{{#let (get error "subject.validation") as |validations|}}
|
||
|
{{#each validations as |validation|}}
|
||
|
<li>
|
||
|
{{validation}}
|
||
|
</li>
|
||
|
{{/each}}
|
||
|
{{/let}}
|
||
|
{{/with}}
|
||
|
</ul>
|
||
|
<span class="{{this.baseModalClass}}__text-input-validation-count">
|
||
|
{{this.editableChangeset.subject.length}}/{{this.maxCharSubject}}
|
||
|
</span>
|
||
|
</p>
|
||
|
</div>
|
||
|
|
||
|
<div class="{{this.baseModalClass}}__item">
|
||
|
<p class="{{this.baseModalClass}}__label">Content</p>
|
||
|
<Textarea
|
||
|
class="{{this.baseModalClass}}__text-input {{this.baseModalClass}}__text-input-content"
|
||
|
@maxlength={{this.maxCharContent}}
|
||
|
@value={{this.editableChangeset.content}}
|
||
|
@placeholder="Details you wish to include in the log"
|
||
|
/>
|
||
|
<p class="{{this.baseModalClass}}__text-input-validation">
|
||
|
{{! render validation messages for content/body}}
|
||
|
<ul class="{{this.baseModalClass}}__text-input-error">
|
||
|
{{#with this.editableChangeset.error as |error|}}
|
||
|
{{#let (get error "content.validation") as |validations|}}
|
||
|
{{#each validations as |validation|}}
|
||
|
<li>
|
||
|
{{validation}}
|
||
|
</li>
|
||
|
{{/each}}
|
||
|
{{/let}}
|
||
|
{{/with}}
|
||
|
</ul>
|
||
|
<span class="{{this.baseModalClass}}__text-input-validation-count">
|
||
|
{{this.editableChangeset.content.length}}/{{this.maxCharContent}}
|
||
|
</span>
|
||
|
</p>
|
||
|
</div>
|
||
|
<div class="{{this.baseModalClass}}__item">
|
||
|
<Input
|
||
|
id="send-change-log-email"
|
||
|
name="change-log-checkbox"
|
||
|
type="checkbox"
|
||
|
checked={{readonly this.editableChangeset.sendEmail}}
|
||
|
{{on "change" (fn this.onSendEmailSelected)}}
|
||
|
{{track-control-interaction type="SHORT_PRESS" name="DatahubChangeManagementSaveAndNotifyCheckbox"}}
|
||
|
/>
|
||
|
<label
|
||
|
class="{{this.baseModalClass}}__label"
|
||
|
for="send-change-log-email"
|
||
|
>
|
||
|
Send Email
|
||
|
</label>
|
||
|
</div>
|
||
|
{{/if}}
|
||
|
</section>
|
||
|
<section class="notification-confirm-modal__footer {{this.baseModalClass}}__actions">
|
||
|
<div>
|
||
|
{{#if this.isDisplayingPreviewModal}}
|
||
|
<button
|
||
|
type="button"
|
||
|
class="nacho-button--large nacho-button--secondary {{this.baseModalClass}}__action"
|
||
|
{{on "click" (fn this.onBackToAddModal)}}
|
||
|
>
|
||
|
Back
|
||
|
</button>
|
||
|
{{/if}}
|
||
|
</div>
|
||
|
<div>
|
||
|
<button
|
||
|
type="button"
|
||
|
class="nacho-button--large nacho-button--secondary {{this.baseModalClass}}__action"
|
||
|
{{on "click" (fn this.onResetModal)}}
|
||
|
>
|
||
|
Cancel
|
||
|
</button>
|
||
|
<button
|
||
|
type="button"
|
||
|
class="nacho-button--large nacho-button--primary {{this.baseModalClass}}__action"
|
||
|
disabled={{this.isSaveDisabled}}
|
||
|
{{on "click" (fn this.handleSaveOrNextClick)}}
|
||
|
>
|
||
|
{{#if this.saveChangeLogTask.isRunning}}
|
||
|
<NachoAnimation::PendulumEllipsis />
|
||
|
{{else}}
|
||
|
{{this.saveOrNextButtonText}}
|
||
|
{{/if}}
|
||
|
</button>
|
||
|
</div>
|
||
|
|
||
|
</section>
|
||
|
</ModalDialog>
|