Feature/add link to Duck.ai to copy AI prompt action (#4272)
* Add link to Duck.ai * Update changelog
This commit is contained in:
parent
8878212487
commit
f638b102da
@ -9,6 +9,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|||||||
|
|
||||||
### Added
|
### Added
|
||||||
|
|
||||||
|
- Added a link to _Duck.ai_ to the _Copy AI prompt to clipboard_ action on the analysis page (experimental)
|
||||||
- Extracted the tags selector to a reusable component used in the create or update activity dialog and holding detail dialog
|
- Extracted the tags selector to a reusable component used in the create or update activity dialog and holding detail dialog
|
||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
|
@ -20,6 +20,7 @@ import { ChangeDetectorRef, Component, OnDestroy, OnInit } from '@angular/core';
|
|||||||
import { MatSnackBar } from '@angular/material/snack-bar';
|
import { MatSnackBar } from '@angular/material/snack-bar';
|
||||||
import { SymbolProfile } from '@prisma/client';
|
import { SymbolProfile } from '@prisma/client';
|
||||||
import { isNumber, sortBy } from 'lodash';
|
import { isNumber, sortBy } from 'lodash';
|
||||||
|
import ms from 'ms';
|
||||||
import { DeviceDetectorService } from 'ngx-device-detector';
|
import { DeviceDetectorService } from 'ngx-device-detector';
|
||||||
import { Subject } from 'rxjs';
|
import { Subject } from 'rxjs';
|
||||||
import { takeUntil } from 'rxjs/operators';
|
import { takeUntil } from 'rxjs/operators';
|
||||||
@ -142,17 +143,27 @@ export class AnalysisPageComponent implements OnDestroy, OnInit {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public onCopyPromptToClipboard() {
|
public onCopyPromptToClipboard() {
|
||||||
this.dataService.fetchPrompt().subscribe(({ prompt }) => {
|
this.dataService
|
||||||
this.clipboard.copy(prompt);
|
.fetchPrompt()
|
||||||
|
.pipe(takeUntil(this.unsubscribeSubject))
|
||||||
|
.subscribe(({ prompt }) => {
|
||||||
|
this.clipboard.copy(prompt);
|
||||||
|
|
||||||
this.snackBar.open(
|
const snackBarRef = this.snackBar.open(
|
||||||
'✅ ' + $localize`AI prompt has been copied to the clipboard`,
|
'✅ ' + $localize`AI prompt has been copied to the clipboard`,
|
||||||
undefined,
|
$localize`Open Duck.ai` + ' →',
|
||||||
{
|
{
|
||||||
duration: 3000
|
duration: ms('7 seconds')
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
});
|
|
||||||
|
snackBarRef
|
||||||
|
.onAction()
|
||||||
|
.pipe(takeUntil(this.unsubscribeSubject))
|
||||||
|
.subscribe(() => {
|
||||||
|
window.open('https://duck.ai', '_blank');
|
||||||
|
});
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
public ngOnDestroy() {
|
public ngOnDestroy() {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user