@tilde-nlp/ngx-common 6.1.88 → 6.1.90
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/llm/components/llm-rephrase/llm-rephrase.component.mjs +48 -0
- package/esm2022/lib/llm/components/llm-summary/llm-summary.component.mjs +48 -0
- package/esm2022/lib/llm/llm.component.mjs +19 -31
- package/esm2022/lib/llm/llm.module.mjs +15 -5
- package/esm2022/lib/open-close-button/open-close-button.component.mjs +4 -4
- package/fesm2022/tilde-nlp-ngx-common.mjs +277 -200
- package/fesm2022/tilde-nlp-ngx-common.mjs.map +1 -1
- package/lib/llm/components/llm-rephrase/llm-rephrase.component.d.ts +11 -0
- package/lib/llm/components/llm-summary/llm-summary.component.d.ts +11 -0
- package/lib/llm/llm.component.d.ts +2 -1
- package/lib/llm/llm.module.d.ts +16 -13
- package/package.json +1 -1
- package/web-components/main.js +15 -13
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { Injectable, EventEmitter, Component, Output, Input, ViewChild, NgModule, Optional, Inject, Pipe, inject, Directive, HostListener, HostBinding, ViewChildren, input, effect, ElementRef, ContentChildren, ContentChild, InjectionToken, output, computed
|
|
2
|
+
import { Injectable, EventEmitter, Component, Output, Input, ViewChild, NgModule, Optional, Inject, Pipe, inject, Directive, HostListener, HostBinding, ViewChildren, input, effect, ElementRef, ContentChildren, ContentChild, InjectionToken, signal, output, computed } from '@angular/core';
|
|
3
3
|
import * as i1 from '@angular/material/icon';
|
|
4
4
|
import { MatIconModule, MatIcon } from '@angular/material/icon';
|
|
5
5
|
import * as i2 from '@angular/platform-browser';
|
|
@@ -4709,7 +4709,7 @@ function OpenCloseButtonComponent_button_0_Template(rf, ctx) { if (rf & 1) {
|
|
|
4709
4709
|
const closed_r2 = i0.ɵɵreference(7);
|
|
4710
4710
|
const ctx_r0 = i0.ɵɵnextContext();
|
|
4711
4711
|
i0.ɵɵproperty("disabled", ctx_r0.disabled)("disableRipple", true)("ngClass.lt-md", "open-close-button-tablet");
|
|
4712
|
-
i0.ɵɵattribute("aria-label", i0.ɵɵpipeBind1(1,
|
|
4712
|
+
i0.ɵɵattribute("aria-label", i0.ɵɵpipeBind1(1, 7, ctx_r0.ariaLabelCode))("aria-expanded", ctx_r0.isOpened);
|
|
4713
4713
|
i0.ɵɵadvance(5);
|
|
4714
4714
|
i0.ɵɵproperty("ngIf", ctx_r0.isOpened)("ngIfElse", closed_r2);
|
|
4715
4715
|
} }
|
|
@@ -4752,7 +4752,7 @@ class OpenCloseButtonComponent {
|
|
|
4752
4752
|
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.button = _t.first);
|
|
4753
4753
|
} }, inputs: { disableFocusOnAction: "disableFocusOnAction", disabled: "disabled", isIcon: "isIcon", ariaLabelCode: "ariaLabelCode", isOpened: "isOpened" }, ngContentSelectors: _c0$7, decls: 2, vars: 2, consts: [["closed", ""], ["mat-button", "", 3, "disabled", "disableRipple", "ngClass.lt-md", 4, "ngIf"], ["mat-icon-button", "", "fxLayoutAlign", "center center", 3, "disabled", 4, "ngIf"], ["mat-button", "", 3, "disabled", "disableRipple", "ngClass.lt-md"], ["fxLayout", "row", "fxLayoutAlign", "center center"], ["fxLayoutAlign", "center center", 1, "open-close-button-content", "text-l"], ["class", "material-icons spin", 4, "ngIf", "ngIfElse"], [1, "material-icons", "spin"], ["mat-icon-button", "", "fxLayoutAlign", "center center", 3, "disabled"], [1, "material-icons"]], template: function OpenCloseButtonComponent_Template(rf, ctx) { if (rf & 1) {
|
|
4754
4754
|
i0.ɵɵprojectionDef();
|
|
4755
|
-
i0.ɵɵtemplate(0, OpenCloseButtonComponent_button_0_Template, 8,
|
|
4755
|
+
i0.ɵɵtemplate(0, OpenCloseButtonComponent_button_0_Template, 8, 9, "button", 1)(1, OpenCloseButtonComponent_button_1_Template, 4, 5, "button", 2);
|
|
4756
4756
|
} if (rf & 2) {
|
|
4757
4757
|
i0.ɵɵproperty("ngIf", !ctx.isIcon);
|
|
4758
4758
|
i0.ɵɵadvance();
|
|
@@ -4761,7 +4761,7 @@ class OpenCloseButtonComponent {
|
|
|
4761
4761
|
}
|
|
4762
4762
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(OpenCloseButtonComponent, [{
|
|
4763
4763
|
type: Component,
|
|
4764
|
-
args: [{ selector: 'lib-open-close-button', template: "<button\r\n mat-button\r\n *ngIf=\"!isIcon\"\r\n [disabled]=\"disabled\"\r\n [disableRipple]=\"true\"\r\n [ngClass.lt-md]=\"'open-close-button-tablet'\"\r\n [attr.aria-label]=\"ariaLabelCode | translate\">\r\n <span fxLayout=\"row\" fxLayoutAlign=\"center center\">\r\n <span class=\"open-close-button-content text-l\" fxLayoutAlign=\"center center\">\r\n <ng-content></ng-content>\r\n </span>\r\n\r\n <span *ngIf=\"isOpened; else closed\" class=\"material-icons spin\">\r\n {{ icons.open }}\r\n </span>\r\n\r\n <ng-template #closed>\r\n <span class=\"material-icons spin\">\r\n {{ icons.close }}\r\n </span>\r\n </ng-template>\r\n </span>\r\n</button>\r\n<button\r\n mat-icon-button\r\n fxLayoutAlign=\"center center\"\r\n *ngIf=\"isIcon\"\r\n [disabled]=\"disabled\"\r\n [attr.aria-label]=\"ariaLabelCode | translate\">\r\n <span class=\"material-icons\">\r\n {{ isOpened ? icons.open : icons.close }}\r\n </span>\r\n</button>\r\n", styles: [".spin{animation:spinArrow .3s forwards}@keyframes spinArrow{to{transform:rotate(180deg)}}.material-icons{color:var(--base-30)}\n"] }]
|
|
4764
|
+
args: [{ selector: 'lib-open-close-button', template: "<button\r\n mat-button\r\n *ngIf=\"!isIcon\"\r\n [disabled]=\"disabled\"\r\n [disableRipple]=\"true\"\r\n [ngClass.lt-md]=\"'open-close-button-tablet'\"\r\n [attr.aria-label]=\"ariaLabelCode | translate\"\r\n [attr.aria-expanded]=\"isOpened\" \r\n>\r\n <span fxLayout=\"row\" fxLayoutAlign=\"center center\">\r\n <span class=\"open-close-button-content text-l\" fxLayoutAlign=\"center center\">\r\n <ng-content></ng-content>\r\n </span>\r\n\r\n <span *ngIf=\"isOpened; else closed\" class=\"material-icons spin\">\r\n {{ icons.open }}\r\n </span>\r\n\r\n <ng-template #closed>\r\n <span class=\"material-icons spin\">\r\n {{ icons.close }}\r\n </span>\r\n </ng-template>\r\n </span>\r\n</button>\r\n<button\r\n mat-icon-button\r\n fxLayoutAlign=\"center center\"\r\n *ngIf=\"isIcon\"\r\n [disabled]=\"disabled\"\r\n [attr.aria-label]=\"ariaLabelCode | translate\">\r\n <span class=\"material-icons\">\r\n {{ isOpened ? icons.open : icons.close }}\r\n </span>\r\n</button>\r\n", styles: [".spin{animation:spinArrow .3s forwards}@keyframes spinArrow{to{transform:rotate(180deg)}}.material-icons{color:var(--base-30)}\n"] }]
|
|
4765
4765
|
}], () => [{ type: undefined, decorators: [{
|
|
4766
4766
|
type: Optional
|
|
4767
4767
|
}, {
|
|
@@ -7328,45 +7328,278 @@ var icons = /*#__PURE__*/Object.freeze({
|
|
|
7328
7328
|
SUMMARIZE: SUMMARIZE
|
|
7329
7329
|
});
|
|
7330
7330
|
|
|
7331
|
+
class NewFeatureDialogComponent {
|
|
7332
|
+
constructor() {
|
|
7333
|
+
this.data = inject(MAT_DIALOG_DATA);
|
|
7334
|
+
}
|
|
7335
|
+
static { this.ɵfac = function NewFeatureDialogComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || NewFeatureDialogComponent)(); }; }
|
|
7336
|
+
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: NewFeatureDialogComponent, selectors: [["lib-new-feature-dialog"]], standalone: true, features: [i0.ɵɵStandaloneFeature], decls: 10, vars: 9, consts: [["mat-dialog-title", ""], [1, "description", 3, "innerHTML"], ["mat-button", "", "mat-dialog-close", "", "color", "accent"]], template: function NewFeatureDialogComponent_Template(rf, ctx) { if (rf & 1) {
|
|
7337
|
+
i0.ɵɵelementStart(0, "h2", 0);
|
|
7338
|
+
i0.ɵɵtext(1);
|
|
7339
|
+
i0.ɵɵpipe(2, "translate");
|
|
7340
|
+
i0.ɵɵelementEnd();
|
|
7341
|
+
i0.ɵɵelementStart(3, "mat-dialog-content");
|
|
7342
|
+
i0.ɵɵelement(4, "p", 1);
|
|
7343
|
+
i0.ɵɵpipe(5, "translate");
|
|
7344
|
+
i0.ɵɵelementEnd();
|
|
7345
|
+
i0.ɵɵelementStart(6, "mat-dialog-actions")(7, "button", 2);
|
|
7346
|
+
i0.ɵɵtext(8);
|
|
7347
|
+
i0.ɵɵpipe(9, "translate");
|
|
7348
|
+
i0.ɵɵelementEnd()();
|
|
7349
|
+
} if (rf & 2) {
|
|
7350
|
+
i0.ɵɵadvance();
|
|
7351
|
+
i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(2, 3, ctx.data.title));
|
|
7352
|
+
i0.ɵɵadvance(3);
|
|
7353
|
+
i0.ɵɵproperty("innerHTML", i0.ɵɵpipeBind1(5, 5, ctx.data.description), i0.ɵɵsanitizeHtml);
|
|
7354
|
+
i0.ɵɵadvance(4);
|
|
7355
|
+
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(9, 7, ctx.data.close), " ");
|
|
7356
|
+
} }, dependencies: [MatDialogModule, i1$4.MatDialogClose, i1$4.MatDialogTitle, i1$4.MatDialogActions, i1$4.MatDialogContent, MatButtonModule, i2$1.MatButton, TranslatePipe], styles: ["[_nghost-%COMP%] {display:inline-block;padding:12px 16px}[_nghost-%COMP%] .mat-mdc-dialog-title, [_nghost-%COMP%] mat-dialog-actions, [_nghost-%COMP%] mat-dialog-content{padding:0!important;margin:0!important}"] }); }
|
|
7357
|
+
}
|
|
7358
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(NewFeatureDialogComponent, [{
|
|
7359
|
+
type: Component,
|
|
7360
|
+
args: [{ selector: 'lib-new-feature-dialog', standalone: true, imports: [MatDialogModule, MatButtonModule, TranslatePipe], template: "<h2 mat-dialog-title>{{ data.title | translate }}</h2>\r\n<mat-dialog-content>\r\n <p class=\"description\" [innerHTML]=\"data.description | translate\"></p>\r\n</mat-dialog-content>\r\n<mat-dialog-actions>\r\n <button mat-button mat-dialog-close color=\"accent\">\r\n {{ data.close | translate }}\r\n </button>\r\n</mat-dialog-actions>\r\n", styles: [":host ::ng-deep{display:inline-block;padding:12px 16px}:host ::ng-deep .mat-mdc-dialog-title,:host ::ng-deep mat-dialog-actions,:host ::ng-deep mat-dialog-content{padding:0!important;margin:0!important}\n"] }]
|
|
7361
|
+
}], null, null); })();
|
|
7362
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(NewFeatureDialogComponent, { className: "NewFeatureDialogComponent", filePath: "lib\\new-feature-dialog\\new-feature-dialog.component.ts", lineNumber: 13 }); })();
|
|
7363
|
+
|
|
7364
|
+
class NewFeatureDialogService {
|
|
7365
|
+
constructor() {
|
|
7366
|
+
this.current = signal(undefined);
|
|
7367
|
+
this.queue = [];
|
|
7368
|
+
}
|
|
7369
|
+
requestOpenFeature(component) {
|
|
7370
|
+
if (this.queue.includes(component)) {
|
|
7371
|
+
return;
|
|
7372
|
+
}
|
|
7373
|
+
this.queue.push(component);
|
|
7374
|
+
if (!this.current()) {
|
|
7375
|
+
this.showNextFeature();
|
|
7376
|
+
}
|
|
7377
|
+
}
|
|
7378
|
+
showNextFeature() {
|
|
7379
|
+
if (this.queue.length === 0) {
|
|
7380
|
+
return;
|
|
7381
|
+
}
|
|
7382
|
+
const nextFeature = this.queue.shift();
|
|
7383
|
+
if (!nextFeature) {
|
|
7384
|
+
return;
|
|
7385
|
+
}
|
|
7386
|
+
this.current.set(nextFeature);
|
|
7387
|
+
nextFeature.showFeatureDialog();
|
|
7388
|
+
}
|
|
7389
|
+
static { this.ɵfac = function NewFeatureDialogService_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || NewFeatureDialogService)(); }; }
|
|
7390
|
+
static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: NewFeatureDialogService, factory: NewFeatureDialogService.ɵfac, providedIn: 'root' }); }
|
|
7391
|
+
}
|
|
7392
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(NewFeatureDialogService, [{
|
|
7393
|
+
type: Injectable,
|
|
7394
|
+
args: [{
|
|
7395
|
+
providedIn: 'root',
|
|
7396
|
+
}]
|
|
7397
|
+
}], null, null); })();
|
|
7398
|
+
|
|
7399
|
+
class NewFeatureDialogWrapperComponent {
|
|
7400
|
+
constructor() {
|
|
7401
|
+
this.timeout = 0;
|
|
7402
|
+
this.maxWidth = 320;
|
|
7403
|
+
this.#dialog = inject(MatDialog);
|
|
7404
|
+
this.#featureService = inject(NewFeatureDialogService);
|
|
7405
|
+
this.#destroy = new Subject();
|
|
7406
|
+
this.featureActive = signal(false);
|
|
7407
|
+
this.isFeatureSeen = false;
|
|
7408
|
+
}
|
|
7409
|
+
#dialog;
|
|
7410
|
+
#featureService;
|
|
7411
|
+
#destroy;
|
|
7412
|
+
ngOnInit() {
|
|
7413
|
+
setTimeout(() => {
|
|
7414
|
+
this.setFeatureStatus();
|
|
7415
|
+
}, this.timeout);
|
|
7416
|
+
}
|
|
7417
|
+
ngOnDestroy() {
|
|
7418
|
+
this.#destroy.next(null);
|
|
7419
|
+
this.#destroy.complete();
|
|
7420
|
+
}
|
|
7421
|
+
showFeatureDialog() {
|
|
7422
|
+
const targetElement = document.querySelector(`.${this.featureClassName}`);
|
|
7423
|
+
if (!targetElement) {
|
|
7424
|
+
return;
|
|
7425
|
+
}
|
|
7426
|
+
if (ResolutionHelper.isMobileRes() && this.mobileScreenCustomPosition?.autoScroll) {
|
|
7427
|
+
targetElement.scrollIntoView({ behavior: 'smooth', block: 'center' });
|
|
7428
|
+
}
|
|
7429
|
+
setTimeout(() => {
|
|
7430
|
+
this.featureActive.set(true);
|
|
7431
|
+
const updatedRects = targetElement.getBoundingClientRect();
|
|
7432
|
+
this.dialogRef = this.#dialog.open(NewFeatureDialogComponent, {
|
|
7433
|
+
data: {
|
|
7434
|
+
title: this.titleLocalizationKey,
|
|
7435
|
+
description: this.descriptionLocalizationKey,
|
|
7436
|
+
close: this.closeLocalizationKey,
|
|
7437
|
+
featureLocalStorageKey: this.featureLocalStorageKey,
|
|
7438
|
+
},
|
|
7439
|
+
position: {
|
|
7440
|
+
left: `${ResolutionHelper.isMobileRes() && this.mobileScreenCustomPosition?.left ? this.mobileScreenCustomPosition.left : (updatedRects.left - this.maxWidth) + 'px'}`,
|
|
7441
|
+
top: `${ResolutionHelper.isMobileRes() && this.mobileScreenCustomPosition?.top ? this.mobileScreenCustomPosition.top : (updatedRects.top + 45) + 'px'}`
|
|
7442
|
+
},
|
|
7443
|
+
maxWidth: `${this.maxWidth}px`
|
|
7444
|
+
});
|
|
7445
|
+
this.dialogRef.afterClosed().subscribe(() => {
|
|
7446
|
+
this.setFeatureSeen();
|
|
7447
|
+
this.#featureService.current.set(undefined);
|
|
7448
|
+
this.#featureService.showNextFeature();
|
|
7449
|
+
});
|
|
7450
|
+
// Wait until the element is visible in the viewport.
|
|
7451
|
+
}, ResolutionHelper.isMobileRes() && this.mobileScreenCustomPosition?.autoScroll ? 500 : 0);
|
|
7452
|
+
}
|
|
7453
|
+
setFeatureStatus() {
|
|
7454
|
+
this.isFeatureSeen = !!this.featureLocalStorageKey && !!localStorage.getItem(this.featureLocalStorageKey);
|
|
7455
|
+
if (!this.isFeatureSeen) {
|
|
7456
|
+
this.#featureService.requestOpenFeature(this);
|
|
7457
|
+
}
|
|
7458
|
+
}
|
|
7459
|
+
setFeatureSeen() {
|
|
7460
|
+
this.featureActive.set(false);
|
|
7461
|
+
this.isFeatureSeen = true;
|
|
7462
|
+
if (this.featureLocalStorageKey) {
|
|
7463
|
+
localStorage.setItem(this.featureLocalStorageKey, 'true');
|
|
7464
|
+
}
|
|
7465
|
+
}
|
|
7466
|
+
static { this.ɵfac = function NewFeatureDialogWrapperComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || NewFeatureDialogWrapperComponent)(); }; }
|
|
7467
|
+
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: NewFeatureDialogWrapperComponent, selectors: [["lib-new-feature-dialog-wrapper"]], inputs: { titleLocalizationKey: "titleLocalizationKey", descriptionLocalizationKey: "descriptionLocalizationKey", closeLocalizationKey: "closeLocalizationKey", featureClassName: "featureClassName", featureLocalStorageKey: "featureLocalStorageKey", timeout: "timeout", maxWidth: "maxWidth", mobileScreenCustomPosition: "mobileScreenCustomPosition" }, standalone: true, features: [i0.ɵɵStandaloneFeature], decls: 0, vars: 0, template: function NewFeatureDialogWrapperComponent_Template(rf, ctx) { }, dependencies: [CommonModule, MatDialogModule], encapsulation: 2 }); }
|
|
7468
|
+
}
|
|
7469
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(NewFeatureDialogWrapperComponent, [{
|
|
7470
|
+
type: Component,
|
|
7471
|
+
args: [{
|
|
7472
|
+
selector: 'lib-new-feature-dialog-wrapper',
|
|
7473
|
+
standalone: true,
|
|
7474
|
+
imports: [CommonModule, MatDialogModule, NewFeatureDialogComponent],
|
|
7475
|
+
template: '',
|
|
7476
|
+
}]
|
|
7477
|
+
}], null, { titleLocalizationKey: [{
|
|
7478
|
+
type: Input
|
|
7479
|
+
}], descriptionLocalizationKey: [{
|
|
7480
|
+
type: Input
|
|
7481
|
+
}], closeLocalizationKey: [{
|
|
7482
|
+
type: Input
|
|
7483
|
+
}], featureClassName: [{
|
|
7484
|
+
type: Input
|
|
7485
|
+
}], featureLocalStorageKey: [{
|
|
7486
|
+
type: Input
|
|
7487
|
+
}], timeout: [{
|
|
7488
|
+
type: Input
|
|
7489
|
+
}], maxWidth: [{
|
|
7490
|
+
type: Input
|
|
7491
|
+
}], mobileScreenCustomPosition: [{
|
|
7492
|
+
type: Input
|
|
7493
|
+
}] }); })();
|
|
7494
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(NewFeatureDialogWrapperComponent, { className: "NewFeatureDialogWrapperComponent", filePath: "lib\\new-feature-dialog\\new-feature-dialog-wrapper\\new-feature-dialog-wrapper.component.ts", lineNumber: 16 }); })();
|
|
7495
|
+
|
|
7496
|
+
class LLMSummaryComponent {
|
|
7497
|
+
constructor() {
|
|
7498
|
+
this.openModalEvent = new EventEmitter();
|
|
7499
|
+
}
|
|
7500
|
+
openModal() {
|
|
7501
|
+
this.openModalEvent.emit(LLMActions.SUMMARY);
|
|
7502
|
+
}
|
|
7503
|
+
static { this.ɵfac = function LLMSummaryComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || LLMSummaryComponent)(); }; }
|
|
7504
|
+
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LLMSummaryComponent, selectors: [["lib-llm-summary"]], inputs: { isTextSummarizable: "isTextSummarizable", newFeatureLocalStorageKey: "newFeatureLocalStorageKey" }, outputs: { openModalEvent: "openModalEvent" }, decls: 6, vars: 12, consts: [["summarizeFeature", ""], ["mat-stroked-button", "", "color", "accent", 1, "llm-summary", 3, "click", "disabled"], [3, "svgIcon"], [3, "titleLocalizationKey", "descriptionLocalizationKey", "closeLocalizationKey", "featureClassName", "featureLocalStorageKey"]], template: function LLMSummaryComponent_Template(rf, ctx) { if (rf & 1) {
|
|
7505
|
+
const _r1 = i0.ɵɵgetCurrentView();
|
|
7506
|
+
i0.ɵɵelementStart(0, "button", 1);
|
|
7507
|
+
i0.ɵɵlistener("click", function LLMSummaryComponent_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.openModal()); });
|
|
7508
|
+
i0.ɵɵelement(1, "mat-icon", 2);
|
|
7509
|
+
i0.ɵɵtext(2);
|
|
7510
|
+
i0.ɵɵpipe(3, "translate");
|
|
7511
|
+
i0.ɵɵelementEnd();
|
|
7512
|
+
i0.ɵɵelement(4, "lib-new-feature-dialog-wrapper", 3, 0);
|
|
7513
|
+
} if (rf & 2) {
|
|
7514
|
+
const summarizeFeature_r2 = i0.ɵɵreference(5);
|
|
7515
|
+
i0.ɵɵclassProp("summarize-feature-active", summarizeFeature_r2 == null ? null : summarizeFeature_r2.featureActive());
|
|
7516
|
+
i0.ɵɵproperty("disabled", !ctx.isTextSummarizable);
|
|
7517
|
+
i0.ɵɵadvance();
|
|
7518
|
+
i0.ɵɵproperty("svgIcon", "summarize");
|
|
7519
|
+
i0.ɵɵadvance();
|
|
7520
|
+
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(3, 10, "LLM.SUMMARY"), "\n");
|
|
7521
|
+
i0.ɵɵadvance(2);
|
|
7522
|
+
i0.ɵɵproperty("titleLocalizationKey", "LLM.SUMMARY_NEW_FEATURE.TITLE")("descriptionLocalizationKey", "LLM.SUMMARY_NEW_FEATURE.DESCRIPTION")("closeLocalizationKey", "LLM.SUMMARY_NEW_FEATURE.CLOSE")("featureClassName", "llm-summary")("featureLocalStorageKey", "summary" + ctx.newFeatureLocalStorageKey);
|
|
7523
|
+
} }, dependencies: [i2$1.MatButton, i1.MatIcon, NewFeatureDialogWrapperComponent, i1$1.TranslatePipe], styles: [".summarize-feature-active{z-index:1001!important;background-color:#fff!important}"] }); }
|
|
7524
|
+
}
|
|
7525
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(LLMSummaryComponent, [{
|
|
7526
|
+
type: Component,
|
|
7527
|
+
args: [{ selector: 'lib-llm-summary', template: "<button\r\n\tmat-stroked-button\r\n\tclass=\"llm-summary\"\r\n\tcolor=\"accent\"\r\n\t[disabled]=\"!isTextSummarizable\"\r\n\t[class.summarize-feature-active]=\"summarizeFeature?.featureActive()\"\r\n\t(click)=\"openModal()\"\r\n>\r\n\t<mat-icon [svgIcon]=\"'summarize'\"></mat-icon>\r\n\t{{ \"LLM.SUMMARY\" | translate }}\r\n</button>\r\n\r\n<lib-new-feature-dialog-wrapper\r\n\t#summarizeFeature\r\n\t[titleLocalizationKey]=\"'LLM.SUMMARY_NEW_FEATURE.TITLE'\"\r\n\t[descriptionLocalizationKey]=\"'LLM.SUMMARY_NEW_FEATURE.DESCRIPTION'\"\r\n\t[closeLocalizationKey]=\"'LLM.SUMMARY_NEW_FEATURE.CLOSE'\"\r\n\t[featureClassName]=\"'llm-summary'\"\r\n\t[featureLocalStorageKey]=\"'summary' + newFeatureLocalStorageKey\"\r\n></lib-new-feature-dialog-wrapper>\r\n", styles: ["::ng-deep .summarize-feature-active{z-index:1001!important;background-color:#fff!important}\n"] }]
|
|
7528
|
+
}], null, { isTextSummarizable: [{
|
|
7529
|
+
type: Input
|
|
7530
|
+
}], newFeatureLocalStorageKey: [{
|
|
7531
|
+
type: Input
|
|
7532
|
+
}], openModalEvent: [{
|
|
7533
|
+
type: Output
|
|
7534
|
+
}] }); })();
|
|
7535
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(LLMSummaryComponent, { className: "LLMSummaryComponent", filePath: "lib\\llm\\components\\llm-summary\\llm-summary.component.ts", lineNumber: 9 }); })();
|
|
7536
|
+
|
|
7537
|
+
class LLMRephraseComponent {
|
|
7538
|
+
constructor() {
|
|
7539
|
+
this.openModalEvent = new EventEmitter();
|
|
7540
|
+
}
|
|
7541
|
+
openModal() {
|
|
7542
|
+
this.openModalEvent.emit(LLMActions.REPHRASE);
|
|
7543
|
+
}
|
|
7544
|
+
static { this.ɵfac = function LLMRephraseComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || LLMRephraseComponent)(); }; }
|
|
7545
|
+
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LLMRephraseComponent, selectors: [["lib-llm-rephrase"]], inputs: { isTargetLanguageRephrasable: "isTargetLanguageRephrasable", newFeatureLocalStorageKey: "newFeatureLocalStorageKey" }, outputs: { openModalEvent: "openModalEvent" }, decls: 6, vars: 13, consts: [["rephraseFeature", ""], ["mat-stroked-button", "", "color", "accent", 1, "llm-rephrase", 3, "click", "disabled"], [3, "svgIcon"], [3, "titleLocalizationKey", "descriptionLocalizationKey", "closeLocalizationKey", "featureClassName", "featureLocalStorageKey", "maxWidth"]], template: function LLMRephraseComponent_Template(rf, ctx) { if (rf & 1) {
|
|
7546
|
+
const _r1 = i0.ɵɵgetCurrentView();
|
|
7547
|
+
i0.ɵɵelementStart(0, "button", 1);
|
|
7548
|
+
i0.ɵɵlistener("click", function LLMRephraseComponent_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.openModal()); });
|
|
7549
|
+
i0.ɵɵelement(1, "mat-icon", 2);
|
|
7550
|
+
i0.ɵɵtext(2);
|
|
7551
|
+
i0.ɵɵpipe(3, "translate");
|
|
7552
|
+
i0.ɵɵelementEnd();
|
|
7553
|
+
i0.ɵɵelement(4, "lib-new-feature-dialog-wrapper", 3, 0);
|
|
7554
|
+
} if (rf & 2) {
|
|
7555
|
+
const rephraseFeature_r2 = i0.ɵɵreference(5);
|
|
7556
|
+
i0.ɵɵclassProp("rephrase-feature-active", rephraseFeature_r2 == null ? null : rephraseFeature_r2.featureActive());
|
|
7557
|
+
i0.ɵɵproperty("disabled", !ctx.isTargetLanguageRephrasable);
|
|
7558
|
+
i0.ɵɵadvance();
|
|
7559
|
+
i0.ɵɵproperty("svgIcon", "rephrase");
|
|
7560
|
+
i0.ɵɵadvance();
|
|
7561
|
+
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(3, 11, "LLM.REPHRASE"), "\n");
|
|
7562
|
+
i0.ɵɵadvance(2);
|
|
7563
|
+
i0.ɵɵproperty("titleLocalizationKey", "LLM.REPHRASE_NEW_FEATURE.TITLE")("descriptionLocalizationKey", "LLM.REPHRASE_NEW_FEATURE.DESCRIPTION")("closeLocalizationKey", "LLM.REPHRASE_NEW_FEATURE.CLOSE")("featureClassName", "llm-rephrase")("featureLocalStorageKey", "rephrase" + ctx.newFeatureLocalStorageKey)("maxWidth", 400);
|
|
7564
|
+
} }, dependencies: [i2$1.MatButton, i1.MatIcon, NewFeatureDialogWrapperComponent, i1$1.TranslatePipe], styles: [".rephrase-feature-active{z-index:1001!important;background-color:#fff!important}"] }); }
|
|
7565
|
+
}
|
|
7566
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(LLMRephraseComponent, [{
|
|
7567
|
+
type: Component,
|
|
7568
|
+
args: [{ selector: 'lib-llm-rephrase', template: "<button\r\n\tmat-stroked-button\r\n\tclass=\"llm-rephrase\"\r\n\tcolor=\"accent\"\r\n\t[disabled]=\"!isTargetLanguageRephrasable\"\r\n\t[class.rephrase-feature-active]=\"rephraseFeature?.featureActive()\"\r\n\t(click)=\"openModal()\"\r\n>\r\n\t<mat-icon [svgIcon]=\"'rephrase'\"></mat-icon>\r\n\t{{ \"LLM.REPHRASE\" | translate }}\r\n</button>\r\n\r\n<lib-new-feature-dialog-wrapper\r\n\t#rephraseFeature\r\n\t[titleLocalizationKey]=\"'LLM.REPHRASE_NEW_FEATURE.TITLE'\"\r\n\t[descriptionLocalizationKey]=\"'LLM.REPHRASE_NEW_FEATURE.DESCRIPTION'\"\r\n\t[closeLocalizationKey]=\"'LLM.REPHRASE_NEW_FEATURE.CLOSE'\"\r\n\t[featureClassName]=\"'llm-rephrase'\"\r\n\t[featureLocalStorageKey]=\"'rephrase' + newFeatureLocalStorageKey\"\r\n\t[maxWidth]=\"400\"\r\n></lib-new-feature-dialog-wrapper>\r\n", styles: ["::ng-deep .rephrase-feature-active{z-index:1001!important;background-color:#fff!important}\n"] }]
|
|
7569
|
+
}], null, { isTargetLanguageRephrasable: [{
|
|
7570
|
+
type: Input
|
|
7571
|
+
}], newFeatureLocalStorageKey: [{
|
|
7572
|
+
type: Input
|
|
7573
|
+
}], openModalEvent: [{
|
|
7574
|
+
type: Output
|
|
7575
|
+
}] }); })();
|
|
7576
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(LLMRephraseComponent, { className: "LLMRephraseComponent", filePath: "lib\\llm\\components\\llm-rephrase\\llm-rephrase.component.ts", lineNumber: 9 }); })();
|
|
7577
|
+
|
|
7331
7578
|
function LLMComponent_div_1_Template(rf, ctx) { if (rf & 1) {
|
|
7332
7579
|
const _r1 = i0.ɵɵgetCurrentView();
|
|
7333
7580
|
i0.ɵɵelementStart(0, "div", 2);
|
|
7334
7581
|
i0.ɵɵpipe(1, "translate");
|
|
7335
|
-
i0.ɵɵelementStart(2, "
|
|
7336
|
-
i0.ɵɵlistener("
|
|
7337
|
-
i0.ɵɵelement(3, "mat-icon", 4);
|
|
7338
|
-
i0.ɵɵtext(4);
|
|
7339
|
-
i0.ɵɵpipe(5, "translate");
|
|
7582
|
+
i0.ɵɵelementStart(2, "lib-llm-summary", 3);
|
|
7583
|
+
i0.ɵɵlistener("openModalEvent", function LLMComponent_div_1_Template_lib_llm_summary_openModalEvent_2_listener($event) { i0.ɵɵrestoreView(_r1); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.openLLMModal($event)); });
|
|
7340
7584
|
i0.ɵɵelementEnd()();
|
|
7341
7585
|
} if (rf & 2) {
|
|
7342
7586
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
7343
|
-
i0.ɵɵproperty("matTooltipPosition", "left")("matTooltip", !ctx_r1.isTextSummarizable ? i0.ɵɵpipeBind1(1,
|
|
7587
|
+
i0.ɵɵproperty("matTooltipPosition", "left")("matTooltip", !ctx_r1.isTextSummarizable ? i0.ɵɵpipeBind1(1, 4, "LLM.MENU_SUMMARY_DISABLED_TOOLTIP") : "");
|
|
7344
7588
|
i0.ɵɵadvance(2);
|
|
7345
|
-
i0.ɵɵproperty("
|
|
7346
|
-
i0.ɵɵadvance();
|
|
7347
|
-
i0.ɵɵproperty("svgIcon", "summarize");
|
|
7348
|
-
i0.ɵɵadvance();
|
|
7349
|
-
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(5, 7, "LLM.SUMMARY"), " ");
|
|
7589
|
+
i0.ɵɵproperty("isTextSummarizable", !!ctx_r1.isTextSummarizable)("newFeatureLocalStorageKey", ctx_r1.newFeatureLocalStorageKey);
|
|
7350
7590
|
} }
|
|
7351
7591
|
function LLMComponent_div_2_Template(rf, ctx) { if (rf & 1) {
|
|
7352
7592
|
const _r3 = i0.ɵɵgetCurrentView();
|
|
7353
7593
|
i0.ɵɵelementStart(0, "div", 2);
|
|
7354
7594
|
i0.ɵɵpipe(1, "translate");
|
|
7355
|
-
i0.ɵɵelementStart(2, "
|
|
7356
|
-
i0.ɵɵlistener("
|
|
7357
|
-
i0.ɵɵelement(3, "mat-icon", 4);
|
|
7358
|
-
i0.ɵɵtext(4);
|
|
7359
|
-
i0.ɵɵpipe(5, "translate");
|
|
7595
|
+
i0.ɵɵelementStart(2, "lib-llm-rephrase", 4);
|
|
7596
|
+
i0.ɵɵlistener("openModalEvent", function LLMComponent_div_2_Template_lib_llm_rephrase_openModalEvent_2_listener($event) { i0.ɵɵrestoreView(_r3); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.openLLMModal($event)); });
|
|
7360
7597
|
i0.ɵɵelementEnd()();
|
|
7361
7598
|
} if (rf & 2) {
|
|
7362
7599
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
7363
|
-
i0.ɵɵproperty("matTooltipPosition", "left")("matTooltip", !ctx_r1.isTargetLanguageRephrasable ? i0.ɵɵpipeBind1(1,
|
|
7600
|
+
i0.ɵɵproperty("matTooltipPosition", "left")("matTooltip", !ctx_r1.isTargetLanguageRephrasable ? i0.ɵɵpipeBind1(1, 4, "LLM.MENU_REPHRASE_DISABLED_TOOLTIP") : "");
|
|
7364
7601
|
i0.ɵɵadvance(2);
|
|
7365
|
-
i0.ɵɵproperty("
|
|
7366
|
-
i0.ɵɵadvance();
|
|
7367
|
-
i0.ɵɵproperty("svgIcon", "rephrase");
|
|
7368
|
-
i0.ɵɵadvance();
|
|
7369
|
-
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(5, 7, "LLM.REPHRASE"), " ");
|
|
7602
|
+
i0.ɵɵproperty("isTargetLanguageRephrasable", !!ctx_r1.isTargetLanguageRephrasable)("newFeatureLocalStorageKey", ctx_r1.newFeatureLocalStorageKey);
|
|
7370
7603
|
} }
|
|
7371
7604
|
class LLMComponent {
|
|
7372
7605
|
get isTextSummarizable() {
|
|
@@ -7410,20 +7643,20 @@ class LLMComponent {
|
|
|
7410
7643
|
});
|
|
7411
7644
|
}
|
|
7412
7645
|
static { this.ɵfac = function LLMComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || LLMComponent)(i0.ɵɵdirectiveInject(i1$4.MatDialog), i0.ɵɵdirectiveInject(IconService), i0.ɵɵdirectiveInject(LanguageTranslateService)); }; }
|
|
7413
|
-
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LLMComponent, selectors: [["lib-llm"]], inputs: { text: "text", language: "language", rephrasableLanguagesCodeList: "rephrasableLanguagesCodeList", summaryEnabled: "summaryEnabled", rephraseEnabled: "rephraseEnabled", showUseCaseSummary: "showUseCaseSummary", showUseCaseRephrase: "showUseCaseRephrase" }, outputs: { menuTriggerClick: "menuTriggerClick" }, decls: 3, vars: 2, consts: [[1, "llm-wrapper"], [3, "matTooltipPosition", "matTooltip", 4, "ngIf"], [3, "matTooltipPosition", "matTooltip"], [
|
|
7646
|
+
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LLMComponent, selectors: [["lib-llm"]], inputs: { text: "text", language: "language", rephrasableLanguagesCodeList: "rephrasableLanguagesCodeList", summaryEnabled: "summaryEnabled", rephraseEnabled: "rephraseEnabled", showUseCaseSummary: "showUseCaseSummary", showUseCaseRephrase: "showUseCaseRephrase", newFeatureLocalStorageKey: "newFeatureLocalStorageKey" }, outputs: { menuTriggerClick: "menuTriggerClick" }, decls: 3, vars: 2, consts: [[1, "llm-wrapper"], [3, "matTooltipPosition", "matTooltip", 4, "ngIf"], [3, "matTooltipPosition", "matTooltip"], [3, "openModalEvent", "isTextSummarizable", "newFeatureLocalStorageKey"], [3, "openModalEvent", "isTargetLanguageRephrasable", "newFeatureLocalStorageKey"]], template: function LLMComponent_Template(rf, ctx) { if (rf & 1) {
|
|
7414
7647
|
i0.ɵɵelementStart(0, "div", 0);
|
|
7415
|
-
i0.ɵɵtemplate(1, LLMComponent_div_1_Template,
|
|
7648
|
+
i0.ɵɵtemplate(1, LLMComponent_div_1_Template, 3, 6, "div", 1)(2, LLMComponent_div_2_Template, 3, 6, "div", 1);
|
|
7416
7649
|
i0.ɵɵelementEnd();
|
|
7417
7650
|
} if (rf & 2) {
|
|
7418
7651
|
i0.ɵɵadvance();
|
|
7419
7652
|
i0.ɵɵproperty("ngIf", ctx.summaryEnabled);
|
|
7420
7653
|
i0.ɵɵadvance();
|
|
7421
|
-
i0.ɵɵproperty("ngIf", ctx.
|
|
7422
|
-
} }, dependencies: [i1$2.NgIf, i2$
|
|
7654
|
+
i0.ɵɵproperty("ngIf", ctx.rephraseEnabled);
|
|
7655
|
+
} }, dependencies: [i1$2.NgIf, i2$2.MatTooltip, LLMSummaryComponent, LLMRephraseComponent, i1$1.TranslatePipe], styles: [".llm-wrapper[_ngcontent-%COMP%]{display:flex;gap:8px}"] }); }
|
|
7423
7656
|
}
|
|
7424
7657
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(LLMComponent, [{
|
|
7425
7658
|
type: Component,
|
|
7426
|
-
args: [{ selector: 'lib-llm', template: "<div class=\"llm-wrapper\">\r\n\t<div *ngIf=\"summaryEnabled\" [matTooltipPosition]=\"'left'\" [matTooltip]=\"!isTextSummarizable ? ('LLM.MENU_SUMMARY_DISABLED_TOOLTIP' | translate) : ''\">\r\n\t\t<
|
|
7659
|
+
args: [{ selector: 'lib-llm', template: "<div class=\"llm-wrapper\">\r\n\t<div *ngIf=\"summaryEnabled\" [matTooltipPosition]=\"'left'\" [matTooltip]=\"!isTextSummarizable ? ('LLM.MENU_SUMMARY_DISABLED_TOOLTIP' | translate) : ''\">\r\n\t\t<lib-llm-summary [isTextSummarizable]=\"!!isTextSummarizable\" [newFeatureLocalStorageKey]=\"newFeatureLocalStorageKey\" (openModalEvent)=\"openLLMModal($event)\"></lib-llm-summary>\r\n\t</div>\r\n\r\n\t<div *ngIf=\"rephraseEnabled\" [matTooltipPosition]=\"'left'\" [matTooltip]=\"!isTargetLanguageRephrasable ? ('LLM.MENU_REPHRASE_DISABLED_TOOLTIP' | translate) : ''\">\r\n\t\t<lib-llm-rephrase\r\n\t\t\t[isTargetLanguageRephrasable]=\"!!isTargetLanguageRephrasable\"\r\n\t\t\t[newFeatureLocalStorageKey]=\"newFeatureLocalStorageKey\"\r\n\t\t\t(openModalEvent)=\"openLLMModal($event)\"\r\n\t\t></lib-llm-rephrase>\r\n\t</div>\r\n</div>\r\n", styles: [".llm-wrapper{display:flex;gap:8px}\n"] }]
|
|
7427
7660
|
}], () => [{ type: i1$4.MatDialog }, { type: IconService }, { type: LanguageTranslateService }], { text: [{
|
|
7428
7661
|
type: Input
|
|
7429
7662
|
}], language: [{
|
|
@@ -7438,6 +7671,8 @@ class LLMComponent {
|
|
|
7438
7671
|
type: Input
|
|
7439
7672
|
}], showUseCaseRephrase: [{
|
|
7440
7673
|
type: Input
|
|
7674
|
+
}], newFeatureLocalStorageKey: [{
|
|
7675
|
+
type: Input
|
|
7441
7676
|
}], menuTriggerClick: [{
|
|
7442
7677
|
type: Output
|
|
7443
7678
|
}] }); })();
|
|
@@ -7458,7 +7693,8 @@ class LLMModule {
|
|
|
7458
7693
|
NotificationMessageModule,
|
|
7459
7694
|
MatTooltipModule,
|
|
7460
7695
|
FlexLayoutModule,
|
|
7461
|
-
MatProgressSpinnerModule
|
|
7696
|
+
MatProgressSpinnerModule,
|
|
7697
|
+
NewFeatureDialogWrapperComponent] }); }
|
|
7462
7698
|
}
|
|
7463
7699
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(LLMModule, [{
|
|
7464
7700
|
type: NgModule,
|
|
@@ -7467,6 +7703,8 @@ class LLMModule {
|
|
|
7467
7703
|
LLMComponent,
|
|
7468
7704
|
LLMTextareaComponent,
|
|
7469
7705
|
LLMTextareaWithActionsComponent,
|
|
7706
|
+
LLMSummaryComponent,
|
|
7707
|
+
LLMRephraseComponent
|
|
7470
7708
|
],
|
|
7471
7709
|
imports: [
|
|
7472
7710
|
CommonModule,
|
|
@@ -7481,14 +7719,17 @@ class LLMModule {
|
|
|
7481
7719
|
NotificationMessageModule,
|
|
7482
7720
|
MatTooltipModule,
|
|
7483
7721
|
FlexLayoutModule,
|
|
7484
|
-
MatProgressSpinnerModule
|
|
7722
|
+
MatProgressSpinnerModule,
|
|
7723
|
+
NewFeatureDialogWrapperComponent
|
|
7485
7724
|
],
|
|
7486
7725
|
exports: [LLMComponent],
|
|
7487
7726
|
}]
|
|
7488
7727
|
}], null, null); })();
|
|
7489
7728
|
(function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(LLMModule, { declarations: [LLMComponent,
|
|
7490
7729
|
LLMTextareaComponent,
|
|
7491
|
-
LLMTextareaWithActionsComponent
|
|
7730
|
+
LLMTextareaWithActionsComponent,
|
|
7731
|
+
LLMSummaryComponent,
|
|
7732
|
+
LLMRephraseComponent], imports: [CommonModule,
|
|
7492
7733
|
MatButtonModule,
|
|
7493
7734
|
MatIconModule,
|
|
7494
7735
|
TranslateModule,
|
|
@@ -7500,7 +7741,8 @@ class LLMModule {
|
|
|
7500
7741
|
NotificationMessageModule,
|
|
7501
7742
|
MatTooltipModule,
|
|
7502
7743
|
FlexLayoutModule,
|
|
7503
|
-
MatProgressSpinnerModule
|
|
7744
|
+
MatProgressSpinnerModule,
|
|
7745
|
+
NewFeatureDialogWrapperComponent], exports: [LLMComponent] }); })();
|
|
7504
7746
|
|
|
7505
7747
|
class SidebarService {
|
|
7506
7748
|
constructor() {
|
|
@@ -8253,171 +8495,6 @@ class SubscriptionComponent {
|
|
|
8253
8495
|
}], null, null); })();
|
|
8254
8496
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SubscriptionComponent, { className: "SubscriptionComponent", filePath: "lib\\subscription\\subscription.component.ts", lineNumber: 27 }); })();
|
|
8255
8497
|
|
|
8256
|
-
class NewFeatureDialogComponent {
|
|
8257
|
-
constructor() {
|
|
8258
|
-
this.data = inject(MAT_DIALOG_DATA);
|
|
8259
|
-
}
|
|
8260
|
-
static { this.ɵfac = function NewFeatureDialogComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || NewFeatureDialogComponent)(); }; }
|
|
8261
|
-
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: NewFeatureDialogComponent, selectors: [["lib-new-feature-dialog"]], standalone: true, features: [i0.ɵɵStandaloneFeature], decls: 10, vars: 9, consts: [["mat-dialog-title", ""], [1, "description", 3, "innerHTML"], ["mat-button", "", "mat-dialog-close", "", "color", "accent"]], template: function NewFeatureDialogComponent_Template(rf, ctx) { if (rf & 1) {
|
|
8262
|
-
i0.ɵɵelementStart(0, "h2", 0);
|
|
8263
|
-
i0.ɵɵtext(1);
|
|
8264
|
-
i0.ɵɵpipe(2, "translate");
|
|
8265
|
-
i0.ɵɵelementEnd();
|
|
8266
|
-
i0.ɵɵelementStart(3, "mat-dialog-content");
|
|
8267
|
-
i0.ɵɵelement(4, "p", 1);
|
|
8268
|
-
i0.ɵɵpipe(5, "translate");
|
|
8269
|
-
i0.ɵɵelementEnd();
|
|
8270
|
-
i0.ɵɵelementStart(6, "mat-dialog-actions")(7, "button", 2);
|
|
8271
|
-
i0.ɵɵtext(8);
|
|
8272
|
-
i0.ɵɵpipe(9, "translate");
|
|
8273
|
-
i0.ɵɵelementEnd()();
|
|
8274
|
-
} if (rf & 2) {
|
|
8275
|
-
i0.ɵɵadvance();
|
|
8276
|
-
i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(2, 3, ctx.data.title));
|
|
8277
|
-
i0.ɵɵadvance(3);
|
|
8278
|
-
i0.ɵɵproperty("innerHTML", i0.ɵɵpipeBind1(5, 5, ctx.data.description), i0.ɵɵsanitizeHtml);
|
|
8279
|
-
i0.ɵɵadvance(4);
|
|
8280
|
-
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(9, 7, ctx.data.close), " ");
|
|
8281
|
-
} }, dependencies: [MatDialogModule, i1$4.MatDialogClose, i1$4.MatDialogTitle, i1$4.MatDialogActions, i1$4.MatDialogContent, MatButtonModule, i2$1.MatButton, TranslatePipe], styles: ["[_nghost-%COMP%] {display:inline-block;padding:12px 16px}[_nghost-%COMP%] .mat-mdc-dialog-title, [_nghost-%COMP%] mat-dialog-actions, [_nghost-%COMP%] mat-dialog-content{padding:0!important;margin:0!important}"] }); }
|
|
8282
|
-
}
|
|
8283
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(NewFeatureDialogComponent, [{
|
|
8284
|
-
type: Component,
|
|
8285
|
-
args: [{ selector: 'lib-new-feature-dialog', standalone: true, imports: [MatDialogModule, MatButtonModule, TranslatePipe], template: "<h2 mat-dialog-title>{{ data.title | translate }}</h2>\r\n<mat-dialog-content>\r\n <p class=\"description\" [innerHTML]=\"data.description | translate\"></p>\r\n</mat-dialog-content>\r\n<mat-dialog-actions>\r\n <button mat-button mat-dialog-close color=\"accent\">\r\n {{ data.close | translate }}\r\n </button>\r\n</mat-dialog-actions>\r\n", styles: [":host ::ng-deep{display:inline-block;padding:12px 16px}:host ::ng-deep .mat-mdc-dialog-title,:host ::ng-deep mat-dialog-actions,:host ::ng-deep mat-dialog-content{padding:0!important;margin:0!important}\n"] }]
|
|
8286
|
-
}], null, null); })();
|
|
8287
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(NewFeatureDialogComponent, { className: "NewFeatureDialogComponent", filePath: "lib\\new-feature-dialog\\new-feature-dialog.component.ts", lineNumber: 13 }); })();
|
|
8288
|
-
|
|
8289
|
-
class NewFeatureDialogService {
|
|
8290
|
-
constructor() {
|
|
8291
|
-
this.current = signal(undefined);
|
|
8292
|
-
this.queue = [];
|
|
8293
|
-
}
|
|
8294
|
-
requestOpenFeature(component) {
|
|
8295
|
-
if (this.queue.includes(component)) {
|
|
8296
|
-
return;
|
|
8297
|
-
}
|
|
8298
|
-
this.queue.push(component);
|
|
8299
|
-
if (!this.current()) {
|
|
8300
|
-
this.showNextFeature();
|
|
8301
|
-
}
|
|
8302
|
-
}
|
|
8303
|
-
showNextFeature() {
|
|
8304
|
-
if (this.queue.length === 0) {
|
|
8305
|
-
return;
|
|
8306
|
-
}
|
|
8307
|
-
const nextFeature = this.queue.shift();
|
|
8308
|
-
if (!nextFeature) {
|
|
8309
|
-
return;
|
|
8310
|
-
}
|
|
8311
|
-
this.current.set(nextFeature);
|
|
8312
|
-
nextFeature.showFeatureDialog();
|
|
8313
|
-
}
|
|
8314
|
-
static { this.ɵfac = function NewFeatureDialogService_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || NewFeatureDialogService)(); }; }
|
|
8315
|
-
static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: NewFeatureDialogService, factory: NewFeatureDialogService.ɵfac, providedIn: 'root' }); }
|
|
8316
|
-
}
|
|
8317
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(NewFeatureDialogService, [{
|
|
8318
|
-
type: Injectable,
|
|
8319
|
-
args: [{
|
|
8320
|
-
providedIn: 'root',
|
|
8321
|
-
}]
|
|
8322
|
-
}], null, null); })();
|
|
8323
|
-
|
|
8324
|
-
class NewFeatureDialogWrapperComponent {
|
|
8325
|
-
constructor() {
|
|
8326
|
-
this.timeout = 0;
|
|
8327
|
-
this.maxWidth = 320;
|
|
8328
|
-
this.#dialog = inject(MatDialog);
|
|
8329
|
-
this.#featureService = inject(NewFeatureDialogService);
|
|
8330
|
-
this.#destroy = new Subject();
|
|
8331
|
-
this.featureActive = signal(false);
|
|
8332
|
-
this.isFeatureSeen = false;
|
|
8333
|
-
}
|
|
8334
|
-
#dialog;
|
|
8335
|
-
#featureService;
|
|
8336
|
-
#destroy;
|
|
8337
|
-
ngOnInit() {
|
|
8338
|
-
setTimeout(() => {
|
|
8339
|
-
this.setFeatureStatus();
|
|
8340
|
-
}, this.timeout);
|
|
8341
|
-
}
|
|
8342
|
-
ngOnDestroy() {
|
|
8343
|
-
this.#destroy.next(null);
|
|
8344
|
-
this.#destroy.complete();
|
|
8345
|
-
}
|
|
8346
|
-
showFeatureDialog() {
|
|
8347
|
-
const targetElement = document.querySelector(`.${this.featureClassName}`);
|
|
8348
|
-
if (!targetElement) {
|
|
8349
|
-
return;
|
|
8350
|
-
}
|
|
8351
|
-
if (ResolutionHelper.isMobileRes() && this.mobileScreenCustomPosition?.autoScroll) {
|
|
8352
|
-
targetElement.scrollIntoView({ behavior: 'smooth', block: 'center' });
|
|
8353
|
-
}
|
|
8354
|
-
setTimeout(() => {
|
|
8355
|
-
this.featureActive.set(true);
|
|
8356
|
-
const updatedRects = targetElement.getBoundingClientRect();
|
|
8357
|
-
this.dialogRef = this.#dialog.open(NewFeatureDialogComponent, {
|
|
8358
|
-
data: {
|
|
8359
|
-
title: this.titleLocalizationKey,
|
|
8360
|
-
description: this.descriptionLocalizationKey,
|
|
8361
|
-
close: this.closeLocalizationKey,
|
|
8362
|
-
featureLocalStorageKey: this.featureLocalStorageKey,
|
|
8363
|
-
},
|
|
8364
|
-
position: {
|
|
8365
|
-
left: `${ResolutionHelper.isMobileRes() && this.mobileScreenCustomPosition?.left ? this.mobileScreenCustomPosition.left : (updatedRects.left - this.maxWidth) + 'px'}`,
|
|
8366
|
-
top: `${ResolutionHelper.isMobileRes() && this.mobileScreenCustomPosition?.top ? this.mobileScreenCustomPosition.top : (updatedRects.top + 45) + 'px'}`
|
|
8367
|
-
},
|
|
8368
|
-
maxWidth: `${this.maxWidth}px`
|
|
8369
|
-
});
|
|
8370
|
-
this.dialogRef.afterClosed().subscribe(() => {
|
|
8371
|
-
this.setFeatureSeen();
|
|
8372
|
-
this.#featureService.current.set(undefined);
|
|
8373
|
-
this.#featureService.showNextFeature();
|
|
8374
|
-
});
|
|
8375
|
-
// Wait until the element is visible in the viewport.
|
|
8376
|
-
}, ResolutionHelper.isMobileRes() && this.mobileScreenCustomPosition?.autoScroll ? 500 : 0);
|
|
8377
|
-
}
|
|
8378
|
-
setFeatureStatus() {
|
|
8379
|
-
this.isFeatureSeen = !!this.featureLocalStorageKey && !!localStorage.getItem(this.featureLocalStorageKey);
|
|
8380
|
-
if (!this.isFeatureSeen) {
|
|
8381
|
-
this.#featureService.requestOpenFeature(this);
|
|
8382
|
-
}
|
|
8383
|
-
}
|
|
8384
|
-
setFeatureSeen() {
|
|
8385
|
-
this.featureActive.set(false);
|
|
8386
|
-
this.isFeatureSeen = true;
|
|
8387
|
-
if (this.featureLocalStorageKey) {
|
|
8388
|
-
localStorage.setItem(this.featureLocalStorageKey, 'true');
|
|
8389
|
-
}
|
|
8390
|
-
}
|
|
8391
|
-
static { this.ɵfac = function NewFeatureDialogWrapperComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || NewFeatureDialogWrapperComponent)(); }; }
|
|
8392
|
-
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: NewFeatureDialogWrapperComponent, selectors: [["lib-new-feature-dialog-wrapper"]], inputs: { titleLocalizationKey: "titleLocalizationKey", descriptionLocalizationKey: "descriptionLocalizationKey", closeLocalizationKey: "closeLocalizationKey", featureClassName: "featureClassName", featureLocalStorageKey: "featureLocalStorageKey", timeout: "timeout", maxWidth: "maxWidth", mobileScreenCustomPosition: "mobileScreenCustomPosition" }, standalone: true, features: [i0.ɵɵStandaloneFeature], decls: 0, vars: 0, template: function NewFeatureDialogWrapperComponent_Template(rf, ctx) { }, dependencies: [CommonModule, MatDialogModule], encapsulation: 2 }); }
|
|
8393
|
-
}
|
|
8394
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(NewFeatureDialogWrapperComponent, [{
|
|
8395
|
-
type: Component,
|
|
8396
|
-
args: [{
|
|
8397
|
-
selector: 'lib-new-feature-dialog-wrapper',
|
|
8398
|
-
standalone: true,
|
|
8399
|
-
imports: [CommonModule, MatDialogModule, NewFeatureDialogComponent],
|
|
8400
|
-
template: '',
|
|
8401
|
-
}]
|
|
8402
|
-
}], null, { titleLocalizationKey: [{
|
|
8403
|
-
type: Input
|
|
8404
|
-
}], descriptionLocalizationKey: [{
|
|
8405
|
-
type: Input
|
|
8406
|
-
}], closeLocalizationKey: [{
|
|
8407
|
-
type: Input
|
|
8408
|
-
}], featureClassName: [{
|
|
8409
|
-
type: Input
|
|
8410
|
-
}], featureLocalStorageKey: [{
|
|
8411
|
-
type: Input
|
|
8412
|
-
}], timeout: [{
|
|
8413
|
-
type: Input
|
|
8414
|
-
}], maxWidth: [{
|
|
8415
|
-
type: Input
|
|
8416
|
-
}], mobileScreenCustomPosition: [{
|
|
8417
|
-
type: Input
|
|
8418
|
-
}] }); })();
|
|
8419
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(NewFeatureDialogWrapperComponent, { className: "NewFeatureDialogWrapperComponent", filePath: "lib\\new-feature-dialog\\new-feature-dialog-wrapper\\new-feature-dialog-wrapper.component.ts", lineNumber: 16 }); })();
|
|
8420
|
-
|
|
8421
8498
|
/*
|
|
8422
8499
|
* Public API Surface of ngx-common
|
|
8423
8500
|
*/
|