adb-shared 6.0.4 → 6.0.5

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.
@@ -4,11 +4,10 @@ import * as i0 from "@angular/core";
4
4
  import * as i1 from "@angular/common";
5
5
  import * as i2 from "@angular/forms";
6
6
  export class AdbRichEditorComponent {
7
- constructor(renderer, el) {
8
- this.renderer = renderer;
7
+ constructor(el) {
9
8
  this.el = el;
10
9
  this.hasTaxon = true;
11
- this.hasRefernce = true;
10
+ this.hasReference = false;
12
11
  //ControlValueAccessor
13
12
  this.onChange = () => { };
14
13
  this.onTouched = () => { };
@@ -33,7 +32,24 @@ export class AdbRichEditorComponent {
33
32
  this.onChange(this.text);
34
33
  }
35
34
  }
35
+ onBoldClick() {
36
+ const textarea = this.el.nativeElement.querySelector('textarea');
37
+ if (textarea) {
38
+ const selectionStart = textarea.selectionStart;
39
+ const selectionEnd = textarea.selectionEnd;
40
+ let currentValue = textarea.value;
41
+ let modifiedText = `${currentValue.substring(0, selectionStart)}__${currentValue.substring(selectionStart, selectionEnd)}__${currentValue.substring(selectionEnd)}`;
42
+ this.text = modifiedText;
43
+ this.onChange(this.text);
44
+ }
45
+ }
36
46
  onTaxonClick() {
47
+ this.replaceMarked('[Name](taxon:0)');
48
+ }
49
+ onReferenceClick() {
50
+ this.replaceMarked('[Name](reference:0)');
51
+ }
52
+ replaceMarked(replaceTag) {
37
53
  const textarea = this.el.nativeElement.querySelector('textarea');
38
54
  if (textarea) {
39
55
  const start = textarea.selectionStart;
@@ -43,9 +59,18 @@ export class AdbRichEditorComponent {
43
59
  const charAfter = end < originalText.length ? originalText[end] : '';
44
60
  const spaceBefore = charBefore && !/\s/.test(charBefore) ? ' ' : '';
45
61
  const spaceAfter = charAfter && !/\s/.test(charAfter) ? ' ' : '';
46
- const newText = originalText.slice(0, start) + spaceBefore + '[Name](taxon:0)' + spaceAfter + originalText.slice(end);
62
+ const newText = originalText.slice(0, start) + spaceBefore + replaceTag + spaceAfter + originalText.slice(end);
47
63
  this.text = newText;
48
64
  this.onChange(this.text);
65
+ const nameStart = newText.indexOf('Name', start); // Find 'Name' starting from the previous selection start
66
+ if (nameStart !== -1) {
67
+ const nameEnd = nameStart + 'Name'.length;
68
+ // Use setTimeout to make sure the textarea is updated before selecting
69
+ setTimeout(() => {
70
+ textarea.focus();
71
+ textarea.setSelectionRange(nameStart, nameEnd); // Select the 'Name' string
72
+ }, 0);
73
+ }
49
74
  }
50
75
  }
51
76
  onTextChange() {
@@ -64,21 +89,21 @@ export class AdbRichEditorComponent {
64
89
  }
65
90
  ngOnDestroy() {
66
91
  }
67
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: AdbRichEditorComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
68
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.8", type: AdbRichEditorComponent, selector: "adb-rich-editor", inputs: { hasTaxon: "hasTaxon", hasRefernce: "hasRefernce" }, providers: [{
92
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: AdbRichEditorComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
93
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.8", type: AdbRichEditorComponent, selector: "adb-rich-editor", inputs: { hasTaxon: "hasTaxon", hasReference: "hasReference" }, providers: [{
69
94
  provide: NG_VALUE_ACCESSOR, useExisting: forwardRef((() => AdbRichEditorComponent)),
70
95
  multi: true
71
- }], ngImport: i0, template: "<div>\r\n <div class=\"d-flex justify-content-end gap-3 mb-1\">\r\n <button class=\"btn btn-secondary\" (click)=\"onItalicClick()\"><span class=\"fas fa-italic\"></span></button>\r\n <button *ngIf=\"hasTaxon\" class=\"btn btn-secondary\" (click)=\"onTaxonClick()\"><span class=\"far fa-paw\"></span></button>\r\n </div>\r\n <textarea class=\"form-control\" [(ngModel)]=\"text\" (ngModelChange)=\"onTextChange()\" (dblclick)=\"onDoubleClick()\"></textarea>\r\n</div>\r\n", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] }); }
96
+ }], ngImport: i0, template: "<div>\r\n <div class=\"d-flex justify-content-end gap-3 p-1 bg-light border border-bottom-0\">\r\n <button class=\"btn btn-secondary\" (click)=\"onItalicClick()\" title=\"Italic\" aria-label=\"Italic\" type=\"button\"><span class=\"fas fa-italic\"></span></button>\r\n <button class=\"btn btn-secondary\" (click)=\"onBoldClick()\" title=\"Italic\" aria-label=\"strong\" type=\"button\"><span class=\"fas fa-bold\"></span></button>\r\n <button *ngIf=\"hasTaxon\" class=\"btn btn-secondary\" (click)=\"onTaxonClick()\" title=\"Taxon\" aria-label=\"Taxon\" type=\"button\"><span class=\"fas fa-bug\"></span></button>\r\n <button *ngIf=\"hasReference\" class=\"btn btn-secondary\" (click)=\"onReferenceClick()\" title=\"Reference\" aria-label=\"Reference\" type=\"button\"><span class=\"fas fa-asterisk\"></span></button>\r\n </div>\r\n <textarea class=\"form-control\" [(ngModel)]=\"text\" (ngModelChange)=\"onTextChange()\" (dblclick)=\"onDoubleClick()\"></textarea>\r\n</div>\r\n", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] }); }
72
97
  }
73
98
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: AdbRichEditorComponent, decorators: [{
74
99
  type: Component,
75
100
  args: [{ selector: 'adb-rich-editor', providers: [{
76
101
  provide: NG_VALUE_ACCESSOR, useExisting: forwardRef((() => AdbRichEditorComponent)),
77
102
  multi: true
78
- }], template: "<div>\r\n <div class=\"d-flex justify-content-end gap-3 mb-1\">\r\n <button class=\"btn btn-secondary\" (click)=\"onItalicClick()\"><span class=\"fas fa-italic\"></span></button>\r\n <button *ngIf=\"hasTaxon\" class=\"btn btn-secondary\" (click)=\"onTaxonClick()\"><span class=\"far fa-paw\"></span></button>\r\n </div>\r\n <textarea class=\"form-control\" [(ngModel)]=\"text\" (ngModelChange)=\"onTextChange()\" (dblclick)=\"onDoubleClick()\"></textarea>\r\n</div>\r\n" }]
79
- }], ctorParameters: () => [{ type: i0.Renderer2 }, { type: i0.ElementRef }], propDecorators: { hasTaxon: [{
103
+ }], template: "<div>\r\n <div class=\"d-flex justify-content-end gap-3 p-1 bg-light border border-bottom-0\">\r\n <button class=\"btn btn-secondary\" (click)=\"onItalicClick()\" title=\"Italic\" aria-label=\"Italic\" type=\"button\"><span class=\"fas fa-italic\"></span></button>\r\n <button class=\"btn btn-secondary\" (click)=\"onBoldClick()\" title=\"Italic\" aria-label=\"strong\" type=\"button\"><span class=\"fas fa-bold\"></span></button>\r\n <button *ngIf=\"hasTaxon\" class=\"btn btn-secondary\" (click)=\"onTaxonClick()\" title=\"Taxon\" aria-label=\"Taxon\" type=\"button\"><span class=\"fas fa-bug\"></span></button>\r\n <button *ngIf=\"hasReference\" class=\"btn btn-secondary\" (click)=\"onReferenceClick()\" title=\"Reference\" aria-label=\"Reference\" type=\"button\"><span class=\"fas fa-asterisk\"></span></button>\r\n </div>\r\n <textarea class=\"form-control\" [(ngModel)]=\"text\" (ngModelChange)=\"onTextChange()\" (dblclick)=\"onDoubleClick()\"></textarea>\r\n</div>\r\n" }]
104
+ }], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { hasTaxon: [{
80
105
  type: Input
81
- }], hasRefernce: [{
106
+ }], hasReference: [{
82
107
  type: Input
83
108
  }] } });
84
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRiLXJpY2gtZWRpdG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FydGRhdGEtc2hhcmVkL3NyYy9saWIvY29tcG9uZW50cy9hZGItcmljaC1lZGl0b3IvYWRiLXJpY2gtZWRpdG9yLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FydGRhdGEtc2hhcmVkL3NyYy9saWIvY29tcG9uZW50cy9hZGItcmljaC1lZGl0b3IvYWRiLXJpY2gtZWRpdG9yLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBaUIsU0FBUyxFQUFjLFVBQVUsRUFBRSxLQUFLLEVBQXdCLE1BQU0sZUFBZSxDQUFDO0FBQzlHLE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQVV6RSxNQUFNLE9BQU8sc0JBQXNCO0lBSy9CLFlBQW9CLFFBQW1CLEVBQVUsRUFBYztRQUEzQyxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQVUsT0FBRSxHQUFGLEVBQUUsQ0FBWTtRQUh0RCxhQUFRLEdBQUcsSUFBSSxDQUFDO1FBQ2hCLGdCQUFXLEdBQUcsSUFBSSxDQUFDO1FBbUQ1QixzQkFBc0I7UUFDdEIsYUFBUSxHQUFRLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUMxQixjQUFTLEdBQVEsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBbkR3QyxDQUFDO0lBR3BFLGFBQWE7UUFDVCxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDakUsTUFBTSxjQUFjLEdBQUcsUUFBUSxDQUFDLGNBQWMsQ0FBQztRQUMvQyxJQUFJLFlBQVksR0FBRyxRQUFRLENBQUMsWUFBWSxDQUFDO1FBQ3pDLE9BQU8sWUFBWSxHQUFHLGNBQWMsSUFBSSxRQUFRLENBQUMsS0FBSyxDQUFDLFlBQVksR0FBRyxDQUFDLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQztZQUMvRSxZQUFZLEVBQUUsQ0FBQztRQUNuQixDQUFDO1FBRUQsUUFBUSxDQUFDLGlCQUFpQixDQUFDLGNBQWMsRUFBRSxZQUFZLENBQUMsQ0FBQztJQUM3RCxDQUFDO0lBRUQsYUFBYTtRQUNULE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNqRSxJQUFJLFFBQVEsRUFBRSxDQUFDO1lBQ1gsTUFBTSxjQUFjLEdBQUcsUUFBUSxDQUFDLGNBQWMsQ0FBQztZQUMvQyxNQUFNLFlBQVksR0FBRyxRQUFRLENBQUMsWUFBWSxDQUFDO1lBQzNDLElBQUksWUFBWSxHQUFHLFFBQVEsQ0FBQyxLQUFLLENBQUM7WUFDbEMsSUFBSSxZQUFZLEdBQUcsR0FBRyxZQUFZLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxjQUFjLENBQUMsSUFBSSxZQUFZLENBQUMsU0FBUyxDQUFDLGNBQWMsRUFBRSxZQUFZLENBQUMsSUFBSSxZQUFZLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUM7WUFDbEssSUFBSSxDQUFDLElBQUksR0FBRyxZQUFZLENBQUM7WUFDekIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDN0IsQ0FBQztJQUVMLENBQUM7SUFFRCxZQUFZO1FBQ1IsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ2pFLElBQUksUUFBUSxFQUFFLENBQUM7WUFDWCxNQUFNLEtBQUssR0FBRyxRQUFRLENBQUMsY0FBYyxDQUFDO1lBQ3RDLE1BQU0sR0FBRyxHQUFHLFFBQVEsQ0FBQyxZQUFZLENBQUM7WUFDbEMsTUFBTSxZQUFZLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQztZQUNwQyxNQUFNLFVBQVUsR0FBRyxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDNUQsTUFBTSxTQUFTLEdBQUcsR0FBRyxHQUFHLFlBQVksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBRXJFLE1BQU0sV0FBVyxHQUFHLFVBQVUsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQ3BFLE1BQU0sVUFBVSxHQUFHLFNBQVMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBRWpFLE1BQU0sT0FBTyxHQUFHLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxHQUFHLFdBQVcsR0FBRyxpQkFBaUIsR0FBRyxVQUFVLEdBQUcsWUFBWSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUN0SCxJQUFJLENBQUMsSUFBSSxHQUFHLE9BQU8sQ0FBQztZQUNwQixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM3QixDQUFDO0lBQ0wsQ0FBQztJQUVELFlBQVk7UUFDUixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM3QixDQUFDO0lBTUQsVUFBVSxDQUFDLEtBQWE7UUFDcEIsSUFBSSxDQUFDLElBQUksR0FBRyxLQUFLLENBQUM7SUFDdEIsQ0FBQztJQUVELGdCQUFnQixDQUFDLEVBQU87UUFDcEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQUVELGlCQUFpQixDQUFDLEVBQU87UUFDckIsSUFBSSxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUM7SUFDeEIsQ0FBQztJQUVELGdCQUFnQixDQUFFLFVBQW1CO0lBRXJDLENBQUM7SUFFRCxXQUFXO0lBQ1gsQ0FBQztpSUEzRVEsc0JBQXNCO3FIQUF0QixzQkFBc0Isd0dBTHBCLENBQUM7Z0JBQ1IsT0FBTyxFQUFFLGlCQUFpQixFQUFFLFdBQVcsRUFBRSxVQUFVLEVBQUMsR0FBRyxFQUFFLENBQUMsc0JBQXNCLEVBQUM7Z0JBQ2pGLEtBQUssRUFBRSxJQUFJO2FBQ2QsQ0FBQywwQkNUTiw4ZUFPQTs7MkZESWEsc0JBQXNCO2tCQVJsQyxTQUFTOytCQUNJLGlCQUFpQixhQUVoQixDQUFDOzRCQUNSLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFDLEdBQUcsRUFBRSx1QkFBdUIsRUFBQzs0QkFDakYsS0FBSyxFQUFFLElBQUk7eUJBQ2QsQ0FBQzt1R0FJTyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIGZvcndhcmRSZWYsIElucHV0LCBPbkRlc3Ryb3ksIFJlbmRlcmVyMiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ2FkYi1yaWNoLWVkaXRvcicsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vYWRiLXJpY2gtZWRpdG9yLmNvbXBvbmVudC5odG1sJyxcclxuICAgIHByb3ZpZGVyczogW3tcclxuICAgICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUiwgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gQWRiUmljaEVkaXRvckNvbXBvbmVudCksXHJcbiAgICAgICAgbXVsdGk6IHRydWVcclxuICAgIH1dXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBZGJSaWNoRWRpdG9yQ29tcG9uZW50IGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE9uRGVzdHJveSB7XHJcbiAgICB0ZXh0OiBzdHJpbmc7XHJcbiAgICBASW5wdXQoKSBoYXNUYXhvbiA9IHRydWU7XHJcbiAgICBASW5wdXQoKSBoYXNSZWZlcm5jZSA9IHRydWU7XHJcbiAgICBcclxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMiwgcHJpdmF0ZSBlbDogRWxlbWVudFJlZikgeyB9XHJcblxyXG5cclxuICAgIG9uRG91YmxlQ2xpY2soKSB7XHJcbiAgICAgICAgY29uc3QgdGV4dGFyZWEgPSB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcigndGV4dGFyZWEnKTtcclxuICAgICAgICBjb25zdCBzZWxlY3Rpb25TdGFydCA9IHRleHRhcmVhLnNlbGVjdGlvblN0YXJ0O1xyXG4gICAgICAgIGxldCBzZWxlY3Rpb25FbmQgPSB0ZXh0YXJlYS5zZWxlY3Rpb25FbmQ7XHJcbiAgICAgICAgd2hpbGUgKHNlbGVjdGlvbkVuZCA+IHNlbGVjdGlvblN0YXJ0ICYmIHRleHRhcmVhLnZhbHVlW3NlbGVjdGlvbkVuZCAtIDFdID09PSAnICcpIHtcclxuICAgICAgICAgICAgc2VsZWN0aW9uRW5kLS07XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0ZXh0YXJlYS5zZXRTZWxlY3Rpb25SYW5nZShzZWxlY3Rpb25TdGFydCwgc2VsZWN0aW9uRW5kKTtcclxuICAgIH1cclxuXHJcbiAgICBvbkl0YWxpY0NsaWNrKCk6IHZvaWQge1xyXG4gICAgICAgIGNvbnN0IHRleHRhcmVhID0gdGhpcy5lbC5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJ3RleHRhcmVhJyk7XHJcbiAgICAgICAgaWYgKHRleHRhcmVhKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IHNlbGVjdGlvblN0YXJ0ID0gdGV4dGFyZWEuc2VsZWN0aW9uU3RhcnQ7XHJcbiAgICAgICAgICAgIGNvbnN0IHNlbGVjdGlvbkVuZCA9IHRleHRhcmVhLnNlbGVjdGlvbkVuZDtcclxuICAgICAgICAgICAgbGV0IGN1cnJlbnRWYWx1ZSA9IHRleHRhcmVhLnZhbHVlO1xyXG4gICAgICAgICAgICBsZXQgbW9kaWZpZWRUZXh0ID0gYCR7Y3VycmVudFZhbHVlLnN1YnN0cmluZygwLCBzZWxlY3Rpb25TdGFydCl9XyR7Y3VycmVudFZhbHVlLnN1YnN0cmluZyhzZWxlY3Rpb25TdGFydCwgc2VsZWN0aW9uRW5kKX1fJHtjdXJyZW50VmFsdWUuc3Vic3RyaW5nKHNlbGVjdGlvbkVuZCl9YDtcclxuICAgICAgICAgICAgdGhpcy50ZXh0ID0gbW9kaWZpZWRUZXh0O1xyXG4gICAgICAgICAgICB0aGlzLm9uQ2hhbmdlKHRoaXMudGV4dCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgIH1cclxuXHJcbiAgICBvblRheG9uQ2xpY2soKTogdm9pZCB7XHJcbiAgICAgICAgY29uc3QgdGV4dGFyZWEgPSB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcigndGV4dGFyZWEnKTtcclxuICAgICAgICBpZiAodGV4dGFyZWEpIHtcclxuICAgICAgICAgICAgY29uc3Qgc3RhcnQgPSB0ZXh0YXJlYS5zZWxlY3Rpb25TdGFydDtcclxuICAgICAgICAgICAgY29uc3QgZW5kID0gdGV4dGFyZWEuc2VsZWN0aW9uRW5kO1xyXG4gICAgICAgICAgICBjb25zdCBvcmlnaW5hbFRleHQgPSB0ZXh0YXJlYS52YWx1ZTtcclxuICAgICAgICAgICAgY29uc3QgY2hhckJlZm9yZSA9IHN0YXJ0ID4gMCA/IG9yaWdpbmFsVGV4dFtzdGFydCAtIDFdIDogJyc7XHJcbiAgICAgICAgICAgIGNvbnN0IGNoYXJBZnRlciA9IGVuZCA8IG9yaWdpbmFsVGV4dC5sZW5ndGggPyBvcmlnaW5hbFRleHRbZW5kXSA6ICcnO1xyXG5cclxuICAgICAgICAgICAgY29uc3Qgc3BhY2VCZWZvcmUgPSBjaGFyQmVmb3JlICYmICEvXFxzLy50ZXN0KGNoYXJCZWZvcmUpID8gJyAnIDogJyc7XHJcbiAgICAgICAgICAgIGNvbnN0IHNwYWNlQWZ0ZXIgPSBjaGFyQWZ0ZXIgJiYgIS9cXHMvLnRlc3QoY2hhckFmdGVyKSA/ICcgJyA6ICcnO1xyXG5cclxuICAgICAgICAgICAgY29uc3QgbmV3VGV4dCA9IG9yaWdpbmFsVGV4dC5zbGljZSgwLCBzdGFydCkgKyBzcGFjZUJlZm9yZSArICdbTmFtZV0odGF4b246MCknICsgc3BhY2VBZnRlciArIG9yaWdpbmFsVGV4dC5zbGljZShlbmQpO1xyXG4gICAgICAgICAgICB0aGlzLnRleHQgPSBuZXdUZXh0O1xyXG4gICAgICAgICAgICB0aGlzLm9uQ2hhbmdlKHRoaXMudGV4dCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIG9uVGV4dENoYW5nZSgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLm9uQ2hhbmdlKHRoaXMudGV4dCk7XHJcbiAgICB9XHJcblxyXG4gICAgLy9Db250cm9sVmFsdWVBY2Nlc3NvclxyXG4gICAgb25DaGFuZ2U6IGFueSA9ICgpID0+IHsgfTtcclxuICAgIG9uVG91Y2hlZDogYW55ID0gKCkgPT4geyB9O1xyXG5cclxuICAgIHdyaXRlVmFsdWUodmFsdWU6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMudGV4dCA9IHZhbHVlO1xyXG4gICAgfVxyXG5cclxuICAgIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcclxuICAgIH1cclxuXHJcbiAgICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5vblRvdWNoZWQgPSBmbjtcclxuICAgIH1cclxuXHJcbiAgICBzZXREaXNhYmxlZFN0YXRlPyhpc0Rpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XHJcblxyXG4gICAgfVxyXG5cclxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgfVxyXG59IiwiPGRpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWVuZCBnYXAtMyBtYi0xXCI+XHJcbiAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ0biBidG4tc2Vjb25kYXJ5XCIgKGNsaWNrKT1cIm9uSXRhbGljQ2xpY2soKVwiPjxzcGFuIGNsYXNzPVwiZmFzIGZhLWl0YWxpY1wiPjwvc3Bhbj48L2J1dHRvbj5cclxuICAgICAgICA8YnV0dG9uICpuZ0lmPVwiaGFzVGF4b25cIiBjbGFzcz1cImJ0biBidG4tc2Vjb25kYXJ5XCIgKGNsaWNrKT1cIm9uVGF4b25DbGljaygpXCI+PHNwYW4gY2xhc3M9XCJmYXIgZmEtcGF3XCI+PC9zcGFuPjwvYnV0dG9uPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8dGV4dGFyZWEgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBbKG5nTW9kZWwpXT1cInRleHRcIiAobmdNb2RlbENoYW5nZSk9XCJvblRleHRDaGFuZ2UoKVwiIChkYmxjbGljayk9XCJvbkRvdWJsZUNsaWNrKClcIj48L3RleHRhcmVhPlxyXG48L2Rpdj5cclxuIl19
109
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRiLXJpY2gtZWRpdG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FydGRhdGEtc2hhcmVkL3NyYy9saWIvY29tcG9uZW50cy9hZGItcmljaC1lZGl0b3IvYWRiLXJpY2gtZWRpdG9yLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FydGRhdGEtc2hhcmVkL3NyYy9saWIvY29tcG9uZW50cy9hZGItcmljaC1lZGl0b3IvYWRiLXJpY2gtZWRpdG9yLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBaUIsU0FBUyxFQUFjLFVBQVUsRUFBRSxLQUFLLEVBQXdCLE1BQU0sZUFBZSxDQUFDO0FBQzlHLE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQVV6RSxNQUFNLE9BQU8sc0JBQXNCO0lBTS9CLFlBQW9CLEVBQWM7UUFBZCxPQUFFLEdBQUYsRUFBRSxDQUFZO1FBSnpCLGFBQVEsR0FBRyxJQUFJLENBQUM7UUFDaEIsaUJBQVksR0FBRyxLQUFLLENBQUM7UUFnRjlCLHNCQUFzQjtRQUN0QixhQUFRLEdBQVEsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQzFCLGNBQVMsR0FBUSxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUM7SUEvRVcsQ0FBQztJQUd2QyxhQUFhO1FBQ1QsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ2pFLE1BQU0sY0FBYyxHQUFHLFFBQVEsQ0FBQyxjQUFjLENBQUM7UUFDL0MsSUFBSSxZQUFZLEdBQUcsUUFBUSxDQUFDLFlBQVksQ0FBQztRQUN6QyxPQUFPLFlBQVksR0FBRyxjQUFjLElBQUksUUFBUSxDQUFDLEtBQUssQ0FBQyxZQUFZLEdBQUcsQ0FBQyxDQUFDLEtBQUss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QixDQUFDO0lBRUQsaUJBQWlCLENBQUMsRUFBTztRQUNyQixJQUFJLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBRUQsZ0JBQWdCLENBQUUsVUFBbUI7SUFFckMsQ0FBQztJQUVELFdBQVc7SUFDWCxDQUFDO2lJQXhHUSxzQkFBc0I7cUhBQXRCLHNCQUFzQiwwR0FMcEIsQ0FBQztnQkFDUixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsV0FBVyxFQUFFLFVBQVUsRUFBQyxHQUFHLEVBQUUsQ0FBQyxzQkFBc0IsRUFBQztnQkFDakYsS0FBSyxFQUFFLElBQUk7YUFDZCxDQUFDLDBCQ1ROLHkvQkFTQTs7MkZERWEsc0JBQXNCO2tCQVJsQyxTQUFTOytCQUNJLGlCQUFpQixhQUVoQixDQUFDOzRCQUNSLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFDLEdBQUcsRUFBRSx1QkFBdUIsRUFBQzs0QkFDakYsS0FBSyxFQUFFLElBQUk7eUJBQ2QsQ0FBQzsrRUFJTyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIGZvcndhcmRSZWYsIElucHV0LCBPbkRlc3Ryb3ksIFJlbmRlcmVyMiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ2FkYi1yaWNoLWVkaXRvcicsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vYWRiLXJpY2gtZWRpdG9yLmNvbXBvbmVudC5odG1sJyxcclxuICAgIHByb3ZpZGVyczogW3tcclxuICAgICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUiwgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gQWRiUmljaEVkaXRvckNvbXBvbmVudCksXHJcbiAgICAgICAgbXVsdGk6IHRydWVcclxuICAgIH1dXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBZGJSaWNoRWRpdG9yQ29tcG9uZW50IGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE9uRGVzdHJveSB7XHJcbiAgICB0ZXh0OiBzdHJpbmc7XHJcbiAgICBASW5wdXQoKSBoYXNUYXhvbiA9IHRydWU7XHJcbiAgICBASW5wdXQoKSBoYXNSZWZlcmVuY2UgPSBmYWxzZTtcclxuXHJcblxyXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBlbDogRWxlbWVudFJlZikgeyB9XHJcblxyXG5cclxuICAgIG9uRG91YmxlQ2xpY2soKSB7XHJcbiAgICAgICAgY29uc3QgdGV4dGFyZWEgPSB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcigndGV4dGFyZWEnKTtcclxuICAgICAgICBjb25zdCBzZWxlY3Rpb25TdGFydCA9IHRleHRhcmVhLnNlbGVjdGlvblN0YXJ0O1xyXG4gICAgICAgIGxldCBzZWxlY3Rpb25FbmQgPSB0ZXh0YXJlYS5zZWxlY3Rpb25FbmQ7XHJcbiAgICAgICAgd2hpbGUgKHNlbGVjdGlvbkVuZCA+IHNlbGVjdGlvblN0YXJ0ICYmIHRleHRhcmVhLnZhbHVlW3NlbGVjdGlvbkVuZCAtIDFdID09PSAnICcpIHtcclxuICAgICAgICAgICAgc2VsZWN0aW9uRW5kLS07XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRleHRhcmVhLnNldFNlbGVjdGlvblJhbmdlKHNlbGVjdGlvblN0YXJ0LCBzZWxlY3Rpb25FbmQpO1xyXG4gICAgfVxyXG5cclxuICAgIG9uSXRhbGljQ2xpY2soKTogdm9pZCB7XHJcbiAgICAgICAgY29uc3QgdGV4dGFyZWEgPSB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcigndGV4dGFyZWEnKTtcclxuICAgICAgICBpZiAodGV4dGFyZWEpIHtcclxuICAgICAgICAgICAgY29uc3Qgc2VsZWN0aW9uU3RhcnQgPSB0ZXh0YXJlYS5zZWxlY3Rpb25TdGFydDtcclxuICAgICAgICAgICAgY29uc3Qgc2VsZWN0aW9uRW5kID0gdGV4dGFyZWEuc2VsZWN0aW9uRW5kO1xyXG4gICAgICAgICAgICBsZXQgY3VycmVudFZhbHVlID0gdGV4dGFyZWEudmFsdWU7XHJcbiAgICAgICAgICAgIGxldCBtb2RpZmllZFRleHQgPSBgJHtjdXJyZW50VmFsdWUuc3Vic3RyaW5nKDAsIHNlbGVjdGlvblN0YXJ0KX1fJHtjdXJyZW50VmFsdWUuc3Vic3RyaW5nKHNlbGVjdGlvblN0YXJ0LCBzZWxlY3Rpb25FbmQpfV8ke2N1cnJlbnRWYWx1ZS5zdWJzdHJpbmcoc2VsZWN0aW9uRW5kKX1gO1xyXG4gICAgICAgICAgICB0aGlzLnRleHQgPSBtb2RpZmllZFRleHQ7XHJcbiAgICAgICAgICAgIHRoaXMub25DaGFuZ2UodGhpcy50ZXh0KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgb25Cb2xkQ2xpY2soKTp2b2lke1xyXG4gICAgICAgIGNvbnN0IHRleHRhcmVhID0gdGhpcy5lbC5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJ3RleHRhcmVhJyk7XHJcbiAgICAgICAgaWYgKHRleHRhcmVhKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IHNlbGVjdGlvblN0YXJ0ID0gdGV4dGFyZWEuc2VsZWN0aW9uU3RhcnQ7XHJcbiAgICAgICAgICAgIGNvbnN0IHNlbGVjdGlvbkVuZCA9IHRleHRhcmVhLnNlbGVjdGlvbkVuZDtcclxuICAgICAgICAgICAgbGV0IGN1cnJlbnRWYWx1ZSA9IHRleHRhcmVhLnZhbHVlO1xyXG4gICAgICAgICAgICBsZXQgbW9kaWZpZWRUZXh0ID0gYCR7Y3VycmVudFZhbHVlLnN1YnN0cmluZygwLCBzZWxlY3Rpb25TdGFydCl9X18ke2N1cnJlbnRWYWx1ZS5zdWJzdHJpbmcoc2VsZWN0aW9uU3RhcnQsIHNlbGVjdGlvbkVuZCl9X18ke2N1cnJlbnRWYWx1ZS5zdWJzdHJpbmcoc2VsZWN0aW9uRW5kKX1gO1xyXG4gICAgICAgICAgICB0aGlzLnRleHQgPSBtb2RpZmllZFRleHQ7XHJcbiAgICAgICAgICAgIHRoaXMub25DaGFuZ2UodGhpcy50ZXh0KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgb25UYXhvbkNsaWNrKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMucmVwbGFjZU1hcmtlZCgnW05hbWVdKHRheG9uOjApJyk7XHJcbiAgICB9XHJcblxyXG4gICAgb25SZWZlcmVuY2VDbGljaygpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLnJlcGxhY2VNYXJrZWQoJ1tOYW1lXShyZWZlcmVuY2U6MCknKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIHJlcGxhY2VNYXJrZWQocmVwbGFjZVRhZzogc3RyaW5nKSB7XHJcbiAgICAgICAgY29uc3QgdGV4dGFyZWEgPSB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcigndGV4dGFyZWEnKTtcclxuICAgICAgICBpZiAodGV4dGFyZWEpIHtcclxuICAgICAgICAgICAgY29uc3Qgc3RhcnQgPSB0ZXh0YXJlYS5zZWxlY3Rpb25TdGFydDtcclxuICAgICAgICAgICAgY29uc3QgZW5kID0gdGV4dGFyZWEuc2VsZWN0aW9uRW5kO1xyXG4gICAgICAgICAgICBjb25zdCBvcmlnaW5hbFRleHQgPSB0ZXh0YXJlYS52YWx1ZTtcclxuICAgICAgICAgICAgY29uc3QgY2hhckJlZm9yZSA9IHN0YXJ0ID4gMCA/IG9yaWdpbmFsVGV4dFtzdGFydCAtIDFdIDogJyc7XHJcbiAgICAgICAgICAgIGNvbnN0IGNoYXJBZnRlciA9IGVuZCA8IG9yaWdpbmFsVGV4dC5sZW5ndGggPyBvcmlnaW5hbFRleHRbZW5kXSA6ICcnO1xyXG5cclxuICAgICAgICAgICAgY29uc3Qgc3BhY2VCZWZvcmUgPSBjaGFyQmVmb3JlICYmICEvXFxzLy50ZXN0KGNoYXJCZWZvcmUpID8gJyAnIDogJyc7XHJcbiAgICAgICAgICAgIGNvbnN0IHNwYWNlQWZ0ZXIgPSBjaGFyQWZ0ZXIgJiYgIS9cXHMvLnRlc3QoY2hhckFmdGVyKSA/ICcgJyA6ICcnO1xyXG5cclxuICAgICAgICAgICAgY29uc3QgbmV3VGV4dCA9IG9yaWdpbmFsVGV4dC5zbGljZSgwLCBzdGFydCkgKyBzcGFjZUJlZm9yZSArIHJlcGxhY2VUYWcgKyBzcGFjZUFmdGVyICsgb3JpZ2luYWxUZXh0LnNsaWNlKGVuZCk7XHJcbiAgICAgICAgICAgIHRoaXMudGV4dCA9IG5ld1RleHQ7XHJcbiAgICAgICAgICAgIHRoaXMub25DaGFuZ2UodGhpcy50ZXh0KTtcclxuICAgICAgICAgICAgY29uc3QgbmFtZVN0YXJ0ID0gbmV3VGV4dC5pbmRleE9mKCdOYW1lJywgc3RhcnQpOyAvLyBGaW5kICdOYW1lJyBzdGFydGluZyBmcm9tIHRoZSBwcmV2aW91cyBzZWxlY3Rpb24gc3RhcnRcclxuICAgICAgICAgICAgaWYgKG5hbWVTdGFydCAhPT0gLTEpIHtcclxuICAgICAgICAgICAgICAgIGNvbnN0IG5hbWVFbmQgPSBuYW1lU3RhcnQgKyAnTmFtZScubGVuZ3RoO1xyXG4gICAgXHJcbiAgICAgICAgICAgICAgICAvLyBVc2Ugc2V0VGltZW91dCB0byBtYWtlIHN1cmUgdGhlIHRleHRhcmVhIGlzIHVwZGF0ZWQgYmVmb3JlIHNlbGVjdGluZ1xyXG4gICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dGFyZWEuZm9jdXMoKTtcclxuICAgICAgICAgICAgICAgICAgICB0ZXh0YXJlYS5zZXRTZWxlY3Rpb25SYW5nZShuYW1lU3RhcnQsIG5hbWVFbmQpOyAvLyBTZWxlY3QgdGhlICdOYW1lJyBzdHJpbmdcclxuICAgICAgICAgICAgICAgIH0sIDApO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIG9uVGV4dENoYW5nZSgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLm9uQ2hhbmdlKHRoaXMudGV4dCk7XHJcbiAgICB9XHJcblxyXG4gICAgLy9Db250cm9sVmFsdWVBY2Nlc3NvclxyXG4gICAgb25DaGFuZ2U6IGFueSA9ICgpID0+IHsgfTtcclxuICAgIG9uVG91Y2hlZDogYW55ID0gKCkgPT4geyB9O1xyXG5cclxuICAgIHdyaXRlVmFsdWUodmFsdWU6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMudGV4dCA9IHZhbHVlO1xyXG4gICAgfVxyXG5cclxuICAgIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcclxuICAgIH1cclxuXHJcbiAgICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5vblRvdWNoZWQgPSBmbjtcclxuICAgIH1cclxuXHJcbiAgICBzZXREaXNhYmxlZFN0YXRlPyhpc0Rpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XHJcblxyXG4gICAgfVxyXG5cclxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgfVxyXG59IiwiPGRpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWVuZCBnYXAtMyBwLTEgYmctbGlnaHQgYm9yZGVyIGJvcmRlci1ib3R0b20tMFwiPlxyXG4gICAgICAgIDxidXR0b24gY2xhc3M9XCJidG4gYnRuLXNlY29uZGFyeVwiIChjbGljayk9XCJvbkl0YWxpY0NsaWNrKClcIiB0aXRsZT1cIkl0YWxpY1wiIGFyaWEtbGFiZWw9XCJJdGFsaWNcIiB0eXBlPVwiYnV0dG9uXCI+PHNwYW4gY2xhc3M9XCJmYXMgZmEtaXRhbGljXCI+PC9zcGFuPjwvYnV0dG9uPlxyXG4gICAgICAgIDxidXR0b24gY2xhc3M9XCJidG4gYnRuLXNlY29uZGFyeVwiIChjbGljayk9XCJvbkJvbGRDbGljaygpXCIgdGl0bGU9XCJJdGFsaWNcIiBhcmlhLWxhYmVsPVwic3Ryb25nXCIgdHlwZT1cImJ1dHRvblwiPjxzcGFuIGNsYXNzPVwiZmFzIGZhLWJvbGRcIj48L3NwYW4+PC9idXR0b24+XHJcbiAgICAgICAgPGJ1dHRvbiAqbmdJZj1cImhhc1RheG9uXCIgY2xhc3M9XCJidG4gYnRuLXNlY29uZGFyeVwiIChjbGljayk9XCJvblRheG9uQ2xpY2soKVwiIHRpdGxlPVwiVGF4b25cIiBhcmlhLWxhYmVsPVwiVGF4b25cIiB0eXBlPVwiYnV0dG9uXCI+PHNwYW4gY2xhc3M9XCJmYXMgZmEtYnVnXCI+PC9zcGFuPjwvYnV0dG9uPlxyXG4gICAgICAgIDxidXR0b24gKm5nSWY9XCJoYXNSZWZlcmVuY2VcIiBjbGFzcz1cImJ0biBidG4tc2Vjb25kYXJ5XCIgKGNsaWNrKT1cIm9uUmVmZXJlbmNlQ2xpY2soKVwiIHRpdGxlPVwiUmVmZXJlbmNlXCIgYXJpYS1sYWJlbD1cIlJlZmVyZW5jZVwiIHR5cGU9XCJidXR0b25cIj48c3BhbiBjbGFzcz1cImZhcyBmYS1hc3Rlcmlza1wiPjwvc3Bhbj48L2J1dHRvbj5cclxuICAgIDwvZGl2PlxyXG4gICAgPHRleHRhcmVhIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgWyhuZ01vZGVsKV09XCJ0ZXh0XCIgKG5nTW9kZWxDaGFuZ2UpPVwib25UZXh0Q2hhbmdlKClcIiAoZGJsY2xpY2spPVwib25Eb3VibGVDbGljaygpXCI+PC90ZXh0YXJlYT5cclxuPC9kaXY+XHJcbiJdfQ==
@@ -2,18 +2,19 @@ import { CommonModule } from "@angular/common";
2
2
  import { NgModule } from "@angular/core";
3
3
  import { AdbRichEditorComponent } from "./adb-rich-editor.component";
4
4
  import { FormsModule } from "@angular/forms";
5
+ import { RichTextComponent } from "./adb-rich-text";
5
6
  import * as i0 from "@angular/core";
6
7
  export class AdbRichEditorModule {
7
8
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: AdbRichEditorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
8
- /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.8", ngImport: i0, type: AdbRichEditorModule, declarations: [AdbRichEditorComponent], imports: [CommonModule, FormsModule], exports: [AdbRichEditorComponent] }); }
9
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.8", ngImport: i0, type: AdbRichEditorModule, declarations: [AdbRichEditorComponent, RichTextComponent], imports: [CommonModule, FormsModule], exports: [AdbRichEditorComponent, RichTextComponent] }); }
9
10
  /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: AdbRichEditorModule, imports: [CommonModule, FormsModule] }); }
10
11
  }
11
12
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: AdbRichEditorModule, decorators: [{
12
13
  type: NgModule,
13
14
  args: [{
14
15
  imports: [CommonModule, FormsModule],
15
- declarations: [AdbRichEditorComponent],
16
- exports: [AdbRichEditorComponent]
16
+ declarations: [AdbRichEditorComponent, RichTextComponent],
17
+ exports: [AdbRichEditorComponent, RichTextComponent]
17
18
  }]
18
19
  }] });
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRiLXJpY2gtZWRpdG9yLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FydGRhdGEtc2hhcmVkL3NyYy9saWIvY29tcG9uZW50cy9hZGItcmljaC1lZGl0b3IvYWRiLXJpY2gtZWRpdG9yLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6QyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNyRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7O0FBTzdDLE1BQU0sT0FBTyxtQkFBbUI7aUlBQW5CLG1CQUFtQjtrSUFBbkIsbUJBQW1CLGlCQUhiLHNCQUFzQixhQUQzQixZQUFZLEVBQUMsV0FBVyxhQUV4QixzQkFBc0I7a0lBRXZCLG1CQUFtQixZQUpsQixZQUFZLEVBQUMsV0FBVzs7MkZBSXpCLG1CQUFtQjtrQkFML0IsUUFBUTttQkFBQztvQkFDTixPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUMsV0FBVyxDQUFDO29CQUNuQyxZQUFZLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQztvQkFDdEMsT0FBTyxFQUFFLENBQUMsc0JBQXNCLENBQUM7aUJBQ3BDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xyXG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IEFkYkRpcmVjdGl2ZXNNb2R1bGUgfSBmcm9tIFwiLi4vLi4vZGlyZWN0aXZlcy9kaXJlY3RpdmVzLm1vZHVsZVwiO1xyXG5pbXBvcnQgeyBBZGJSaWNoRWRpdG9yQ29tcG9uZW50IH0gZnJvbSBcIi4vYWRiLXJpY2gtZWRpdG9yLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuICAgIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsRm9ybXNNb2R1bGVdLFxyXG4gICAgZGVjbGFyYXRpb25zOiBbQWRiUmljaEVkaXRvckNvbXBvbmVudF0sXHJcbiAgICBleHBvcnRzOiBbQWRiUmljaEVkaXRvckNvbXBvbmVudF1cclxufSlcclxuZXhwb3J0IGNsYXNzIEFkYlJpY2hFZGl0b3JNb2R1bGUgeyB9Il19
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRiLXJpY2gtZWRpdG9yLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FydGRhdGEtc2hhcmVkL3NyYy9saWIvY29tcG9uZW50cy9hZGItcmljaC1lZGl0b3IvYWRiLXJpY2gtZWRpdG9yLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNyRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUJBQWlCLENBQUM7O0FBT3BELE1BQU0sT0FBTyxtQkFBbUI7aUlBQW5CLG1CQUFtQjtrSUFBbkIsbUJBQW1CLGlCQUhiLHNCQUFzQixFQUFFLGlCQUFpQixhQUQ5QyxZQUFZLEVBQUUsV0FBVyxhQUV6QixzQkFBc0IsRUFBRSxpQkFBaUI7a0lBRTFDLG1CQUFtQixZQUpsQixZQUFZLEVBQUUsV0FBVzs7MkZBSTFCLG1CQUFtQjtrQkFML0IsUUFBUTttQkFBQztvQkFDTixPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsV0FBVyxDQUFDO29CQUNwQyxZQUFZLEVBQUUsQ0FBQyxzQkFBc0IsRUFBRSxpQkFBaUIsQ0FBQztvQkFDekQsT0FBTyxFQUFFLENBQUMsc0JBQXNCLEVBQUUsaUJBQWlCLENBQUM7aUJBQ3ZEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xyXG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IEFkYlJpY2hFZGl0b3JDb21wb25lbnQgfSBmcm9tIFwiLi9hZGItcmljaC1lZGl0b3IuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XHJcbmltcG9ydCB7IFJpY2hUZXh0Q29tcG9uZW50IH0gZnJvbSBcIi4vYWRiLXJpY2gtdGV4dFwiO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuICAgIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIEZvcm1zTW9kdWxlXSxcclxuICAgIGRlY2xhcmF0aW9uczogW0FkYlJpY2hFZGl0b3JDb21wb25lbnQsIFJpY2hUZXh0Q29tcG9uZW50XSxcclxuICAgIGV4cG9ydHM6IFtBZGJSaWNoRWRpdG9yQ29tcG9uZW50LCBSaWNoVGV4dENvbXBvbmVudF1cclxufSlcclxuZXhwb3J0IGNsYXNzIEFkYlJpY2hFZGl0b3JNb2R1bGUgeyB9Il19
@@ -0,0 +1,62 @@
1
+ import { Component, Input } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "@angular/common";
4
+ export class RichTextComponent {
5
+ constructor() {
6
+ this.text = '';
7
+ this.baseUrl = '';
8
+ this.parts = [];
9
+ }
10
+ ngOnChanges() {
11
+ if (this.text) {
12
+ this.parts = this.parseCustomMarkdown(this.text);
13
+ }
14
+ }
15
+ parseCustomMarkdown(input) {
16
+ const parts = [];
17
+ const italicRegex = /_([^_]+)_/g;
18
+ const boldRegex = /__([^_]+)__/g;
19
+ const taxonRegex = /\[([^\]]+)\]\(taxon:([^)]+)\)/g;
20
+ const termRegex = /\[([^\]]+)\]\(term:([^)]+)\)/g;
21
+ const referenceRegex = /\[([^\]]+)\]\(reference:([^)]+)\)/g;
22
+ const combinedRegex = new RegExp(`${italicRegex.source}|${boldRegex.source}|${taxonRegex.source}|${termRegex.source}|${referenceRegex.source}`, 'g');
23
+ let lastIndex = 0;
24
+ let match;
25
+ while ((match = combinedRegex.exec(input)) !== null) {
26
+ if (match.index > lastIndex) {
27
+ parts.push({ type: 'text', content: input.slice(lastIndex, match.index) });
28
+ }
29
+ if (match[1]) {
30
+ parts.push({ type: 'italic', content: match[1] });
31
+ }
32
+ else if (match[2]) {
33
+ parts.push({ type: 'bold', content: match[2] });
34
+ }
35
+ else if (match[3]) {
36
+ parts.push({ type: 'taxon', content: match[3], id: match[4] });
37
+ }
38
+ else if (match[5]) {
39
+ parts.push({ type: 'term', content: match[5], id: match[6] });
40
+ }
41
+ else if (match[7]) {
42
+ parts.push({ type: 'reference', content: match[7], id: match[8] });
43
+ }
44
+ lastIndex = combinedRegex.lastIndex;
45
+ }
46
+ if (lastIndex < input.length) {
47
+ parts.push({ type: 'text', content: input.slice(lastIndex) });
48
+ }
49
+ return parts;
50
+ }
51
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: RichTextComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
52
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.8", type: RichTextComponent, selector: "adb-rich-text", inputs: { text: "text", baseUrl: "baseUrl" }, usesOnChanges: true, ngImport: i0, template: "<div style=\"white-space: pre-wrap;\">\r\n <ng-container *ngFor=\"let part of parts\">\r\n <span *ngIf=\"part.type === 'text'\">{{ part.content }}</span>\r\n <em *ngIf=\"part.type === 'italic'\">{{ part.content }}</em>\r\n <b *ngIf=\"part.type === 'bold'\">{{ part.content }}</b>\r\n <a *ngIf=\"part.type === 'taxon'\" [href]=\"baseUrl + '/taxa/' + part.id\">{{ part.content }}</a>\r\n <span *ngIf=\"part.type === 'term'\">{{ part.content }}</span>\r\n <span *ngIf=\"part.type === 'reference'\">{{ part.content }}</span>\r\n </ng-container>\r\n </div>\r\n ", dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
53
+ }
54
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: RichTextComponent, decorators: [{
55
+ type: Component,
56
+ args: [{ selector: 'adb-rich-text', template: "<div style=\"white-space: pre-wrap;\">\r\n <ng-container *ngFor=\"let part of parts\">\r\n <span *ngIf=\"part.type === 'text'\">{{ part.content }}</span>\r\n <em *ngIf=\"part.type === 'italic'\">{{ part.content }}</em>\r\n <b *ngIf=\"part.type === 'bold'\">{{ part.content }}</b>\r\n <a *ngIf=\"part.type === 'taxon'\" [href]=\"baseUrl + '/taxa/' + part.id\">{{ part.content }}</a>\r\n <span *ngIf=\"part.type === 'term'\">{{ part.content }}</span>\r\n <span *ngIf=\"part.type === 'reference'\">{{ part.content }}</span>\r\n </ng-container>\r\n </div>\r\n " }]
57
+ }], propDecorators: { text: [{
58
+ type: Input
59
+ }], baseUrl: [{
60
+ type: Input
61
+ }] } });
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRiLXJpY2gtdGV4dC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FydGRhdGEtc2hhcmVkL3NyYy9saWIvY29tcG9uZW50cy9hZGItcmljaC1lZGl0b3IvYWRiLXJpY2gtdGV4dC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FydGRhdGEtc2hhcmVkL3NyYy9saWIvY29tcG9uZW50cy9hZGItcmljaC1lZGl0b3IvYWRiLXJpY2gtdGV4dC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFXakQsTUFBTSxPQUFPLGlCQUFpQjtJQUo5QjtRQUtXLFNBQUksR0FBVyxFQUFFLENBQUM7UUFDbEIsWUFBTyxHQUFXLEVBQUUsQ0FBQztRQUV2QixVQUFLLEdBQW1CLEVBQUUsQ0FBQztLQWdEbkM7SUE5Q0MsV0FBVztRQUNULElBQUksSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ2QsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ25ELENBQUM7SUFDSCxDQUFDO0lBRU8sbUJBQW1CLENBQUMsS0FBYTtRQUN2QyxNQUFNLEtBQUssR0FBbUIsRUFBRSxDQUFDO1FBRWpDLE1BQU0sV0FBVyxHQUFHLFlBQVksQ0FBQztRQUNqQyxNQUFNLFNBQVMsR0FBRyxjQUFjLENBQUM7UUFDakMsTUFBTSxVQUFVLEdBQUcsZ0NBQWdDLENBQUM7UUFDcEQsTUFBTSxTQUFTLEdBQUcsK0JBQStCLENBQUM7UUFDbEQsTUFBTSxjQUFjLEdBQUcsb0NBQW9DLENBQUM7UUFFNUQsTUFBTSxhQUFhLEdBQUcsSUFBSSxNQUFNLENBQUMsR0FBRyxXQUFXLENBQUMsTUFBTSxJQUFJLFNBQVMsQ0FBQyxNQUFNLElBQUksVUFBVSxDQUFDLE1BQU0sSUFBSSxTQUFTLENBQUMsTUFBTSxJQUFJLGNBQWMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUVySixJQUFJLFNBQVMsR0FBRyxDQUFDLENBQUM7UUFDbEIsSUFBSSxLQUFLLENBQUM7UUFFVixPQUFPLENBQUMsS0FBSyxHQUFHLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsQ0FBQztZQUNsRCxJQUFJLEtBQUssQ0FBQyxLQUFLLEdBQUcsU0FBUyxFQUFFLENBQUM7Z0JBQzFCLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxLQUFLLENBQUMsS0FBSyxDQUFDLFNBQVMsRUFBRSxLQUFLLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQy9FLENBQUM7WUFDRCxJQUFJLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO2dCQUNYLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQ3RELENBQUM7aUJBQU0sSUFBSSxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztnQkFDbEIsS0FBSyxDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDcEQsQ0FBQztpQkFBTSxJQUFJLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO2dCQUNsQixLQUFLLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQ25FLENBQUM7aUJBQU0sSUFBSSxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztnQkFDbEIsS0FBSyxDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUNsRSxDQUFDO2lCQUFNLElBQUksS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7Z0JBQ2xCLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFLE9BQU8sRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDdkUsQ0FBQztZQUVELFNBQVMsR0FBRyxhQUFhLENBQUMsU0FBUyxDQUFDO1FBQ3hDLENBQUM7UUFFRCxJQUFJLFNBQVMsR0FBRyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDM0IsS0FBSyxDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLEtBQUssQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ2xFLENBQUM7UUFFRCxPQUFPLEtBQUssQ0FBQztJQUNqQixDQUFDO2lJQWxEWSxpQkFBaUI7cUhBQWpCLGlCQUFpQix3SENYOUIsb2xCQVVFOzsyRkRDVyxpQkFBaUI7a0JBSjdCLFNBQVM7K0JBQ0UsZUFBZTs4QkFJaEIsSUFBSTtzQkFBWixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuZXhwb3J0IGludGVyZmFjZSBSaWNoVGV4dFBhcnQge1xyXG4gIHR5cGU6ICd0ZXh0JyB8ICdpdGFsaWMnIHwgJ2JvbGQnIHwgJ3RheG9uJyB8ICd0ZXJtJyB8ICdyZWZlcmVuY2UnO1xyXG4gIGNvbnRlbnQ6IHN0cmluZztcclxuICBpZD86IHN0cmluZztcclxufVxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhZGItcmljaC10ZXh0JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vYWRiLXJpY2gtdGV4dC5odG1sJyxcclxufSlcclxuZXhwb3J0IGNsYXNzIFJpY2hUZXh0Q29tcG9uZW50IHtcclxuICBASW5wdXQoKSB0ZXh0OiBzdHJpbmcgPSAnJztcclxuICBASW5wdXQoKSBiYXNlVXJsOiBzdHJpbmcgPSAnJztcclxuXHJcbiAgcHVibGljIHBhcnRzOiBSaWNoVGV4dFBhcnRbXSA9IFtdO1xyXG5cclxuICBuZ09uQ2hhbmdlcygpIHtcclxuICAgIGlmICh0aGlzLnRleHQpIHtcclxuICAgICAgdGhpcy5wYXJ0cyA9IHRoaXMucGFyc2VDdXN0b21NYXJrZG93bih0aGlzLnRleHQpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBwYXJzZUN1c3RvbU1hcmtkb3duKGlucHV0OiBzdHJpbmcpOiBSaWNoVGV4dFBhcnRbXSB7XHJcbiAgICBjb25zdCBwYXJ0czogUmljaFRleHRQYXJ0W10gPSBbXTtcclxuXHJcbiAgICBjb25zdCBpdGFsaWNSZWdleCA9IC9fKFteX10rKV8vZztcclxuICAgIGNvbnN0IGJvbGRSZWdleCA9IC9fXyhbXl9dKylfXy9nO1xyXG4gICAgY29uc3QgdGF4b25SZWdleCA9IC9cXFsoW15cXF1dKylcXF1cXCh0YXhvbjooW14pXSspXFwpL2c7XHJcbiAgICBjb25zdCB0ZXJtUmVnZXggPSAvXFxbKFteXFxdXSspXFxdXFwodGVybTooW14pXSspXFwpL2c7XHJcbiAgICBjb25zdCByZWZlcmVuY2VSZWdleCA9IC9cXFsoW15cXF1dKylcXF1cXChyZWZlcmVuY2U6KFteKV0rKVxcKS9nO1xyXG5cclxuICAgIGNvbnN0IGNvbWJpbmVkUmVnZXggPSBuZXcgUmVnRXhwKGAke2l0YWxpY1JlZ2V4LnNvdXJjZX18JHtib2xkUmVnZXguc291cmNlfXwke3RheG9uUmVnZXguc291cmNlfXwke3Rlcm1SZWdleC5zb3VyY2V9fCR7cmVmZXJlbmNlUmVnZXguc291cmNlfWAsICdnJyk7XHJcblxyXG4gICAgbGV0IGxhc3RJbmRleCA9IDA7XHJcbiAgICBsZXQgbWF0Y2g7XHJcblxyXG4gICAgd2hpbGUgKChtYXRjaCA9IGNvbWJpbmVkUmVnZXguZXhlYyhpbnB1dCkpICE9PSBudWxsKSB7XHJcbiAgICAgICAgaWYgKG1hdGNoLmluZGV4ID4gbGFzdEluZGV4KSB7XHJcbiAgICAgICAgICAgIHBhcnRzLnB1c2goeyB0eXBlOiAndGV4dCcsIGNvbnRlbnQ6IGlucHV0LnNsaWNlKGxhc3RJbmRleCwgbWF0Y2guaW5kZXgpIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAobWF0Y2hbMV0pIHtcclxuICAgICAgICAgICAgcGFydHMucHVzaCh7IHR5cGU6ICdpdGFsaWMnLCBjb250ZW50OiBtYXRjaFsxXSB9KTtcclxuICAgICAgICB9IGVsc2UgaWYgKG1hdGNoWzJdKSB7XHJcbiAgICAgICAgICAgIHBhcnRzLnB1c2goeyB0eXBlOiAnYm9sZCcsIGNvbnRlbnQ6IG1hdGNoWzJdIH0pO1xyXG4gICAgICAgIH0gZWxzZSBpZiAobWF0Y2hbM10pIHtcclxuICAgICAgICAgICAgcGFydHMucHVzaCh7IHR5cGU6ICd0YXhvbicsIGNvbnRlbnQ6IG1hdGNoWzNdLCBpZDogbWF0Y2hbNF0gfSk7XHJcbiAgICAgICAgfSBlbHNlIGlmIChtYXRjaFs1XSkge1xyXG4gICAgICAgICAgICBwYXJ0cy5wdXNoKHsgdHlwZTogJ3Rlcm0nLCBjb250ZW50OiBtYXRjaFs1XSwgaWQ6IG1hdGNoWzZdIH0pO1xyXG4gICAgICAgIH0gZWxzZSBpZiAobWF0Y2hbN10pIHtcclxuICAgICAgICAgICAgcGFydHMucHVzaCh7IHR5cGU6ICdyZWZlcmVuY2UnLCBjb250ZW50OiBtYXRjaFs3XSwgaWQ6IG1hdGNoWzhdIH0pO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgbGFzdEluZGV4ID0gY29tYmluZWRSZWdleC5sYXN0SW5kZXg7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGxhc3RJbmRleCA8IGlucHV0Lmxlbmd0aCkge1xyXG4gICAgICAgIHBhcnRzLnB1c2goeyB0eXBlOiAndGV4dCcsIGNvbnRlbnQ6IGlucHV0LnNsaWNlKGxhc3RJbmRleCkgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHBhcnRzO1xyXG59XHJcblxyXG59XHJcbiIsIjxkaXYgc3R5bGU9XCJ3aGl0ZS1zcGFjZTogcHJlLXdyYXA7XCI+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBwYXJ0IG9mIHBhcnRzXCI+XHJcbiAgICAgIDxzcGFuICpuZ0lmPVwicGFydC50eXBlID09PSAndGV4dCdcIj57eyBwYXJ0LmNvbnRlbnQgfX08L3NwYW4+XHJcbiAgICAgIDxlbSAqbmdJZj1cInBhcnQudHlwZSA9PT0gJ2l0YWxpYydcIj57eyBwYXJ0LmNvbnRlbnQgfX08L2VtPlxyXG4gICAgICA8YiAqbmdJZj1cInBhcnQudHlwZSA9PT0gJ2JvbGQnXCI+e3sgcGFydC5jb250ZW50IH19PC9iPlxyXG4gICAgICA8YSAqbmdJZj1cInBhcnQudHlwZSA9PT0gJ3RheG9uJ1wiIFtocmVmXT1cImJhc2VVcmwgKyAnL3RheGEvJyArIHBhcnQuaWRcIj57eyBwYXJ0LmNvbnRlbnQgfX08L2E+XHJcbiAgICAgIDxzcGFuICpuZ0lmPVwicGFydC50eXBlID09PSAndGVybSdcIj57eyBwYXJ0LmNvbnRlbnQgfX08L3NwYW4+XHJcbiAgICAgIDxzcGFuICpuZ0lmPVwicGFydC50eXBlID09PSAncmVmZXJlbmNlJ1wiPnt7IHBhcnQuY29udGVudCB9fTwvc3Bhbj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG4gIDwvZGl2PlxyXG4gICJdfQ==
@@ -4,19 +4,18 @@ import { EmptyValuePipe } from "./emptyValue.pipe";
4
4
  import { HighlightPipe } from "./highlight.pipe";
5
5
  import { NumberSpacingPipe } from "./number-spacing.pipe";
6
6
  import { HighlightHtmlPipe } from "./highlight-html.pipe";
7
- import { RichPipe } from "./rich.pipe";
8
7
  import * as i0 from "@angular/core";
9
8
  export class AdbPipesModule {
10
9
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: AdbPipesModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
11
- /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.8", ngImport: i0, type: AdbPipesModule, declarations: [RichPipe, HighlightPipe, HighlightHtmlPipe, NumberSpacingPipe, LocaleDatePipe, EmptyValuePipe], exports: [RichPipe, HighlightPipe, HighlightHtmlPipe, NumberSpacingPipe, LocaleDatePipe, EmptyValuePipe] }); }
10
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.8", ngImport: i0, type: AdbPipesModule, declarations: [HighlightPipe, HighlightHtmlPipe, NumberSpacingPipe, LocaleDatePipe, EmptyValuePipe], exports: [HighlightPipe, HighlightHtmlPipe, NumberSpacingPipe, LocaleDatePipe, EmptyValuePipe] }); }
12
11
  /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: AdbPipesModule }); }
13
12
  }
14
13
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: AdbPipesModule, decorators: [{
15
14
  type: NgModule,
16
15
  args: [{
17
16
  imports: [],
18
- declarations: [RichPipe, HighlightPipe, HighlightHtmlPipe, NumberSpacingPipe, LocaleDatePipe, EmptyValuePipe],
19
- exports: [RichPipe, HighlightPipe, HighlightHtmlPipe, NumberSpacingPipe, LocaleDatePipe, EmptyValuePipe]
17
+ declarations: [HighlightPipe, HighlightHtmlPipe, NumberSpacingPipe, LocaleDatePipe, EmptyValuePipe],
18
+ exports: [HighlightPipe, HighlightHtmlPipe, NumberSpacingPipe, LocaleDatePipe, EmptyValuePipe]
20
19
  }]
21
20
  }] });
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGlwZXMubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXJ0ZGF0YS1zaGFyZWQvc3JjL2xpYi9waXBlcy9waXBlcy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzdDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDakQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDMUQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGFBQWEsQ0FBQzs7QUFPdkMsTUFBTSxPQUFPLGNBQWM7aUlBQWQsY0FBYztrSUFBZCxjQUFjLGlCQUhSLFFBQVEsRUFBRSxhQUFhLEVBQUUsaUJBQWlCLEVBQUUsaUJBQWlCLEVBQUUsY0FBYyxFQUFFLGNBQWMsYUFDbEcsUUFBUSxFQUFFLGFBQWEsRUFBRSxpQkFBaUIsRUFBRSxpQkFBaUIsRUFBRSxjQUFjLEVBQUUsY0FBYztrSUFFOUYsY0FBYzs7MkZBQWQsY0FBYztrQkFMMUIsUUFBUTttQkFBQztvQkFDTixPQUFPLEVBQUUsRUFBRTtvQkFDWCxZQUFZLEVBQUUsQ0FBQyxRQUFRLEVBQUUsYUFBYSxFQUFFLGlCQUFpQixFQUFFLGlCQUFpQixFQUFFLGNBQWMsRUFBRSxjQUFjLENBQUM7b0JBQzdHLE9BQU8sRUFBRSxDQUFDLFFBQVEsRUFBRSxhQUFhLEVBQUUsaUJBQWlCLEVBQUUsaUJBQWlCLEVBQUUsY0FBYyxFQUFFLGNBQWMsQ0FBQztpQkFDM0ciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IExvY2FsZURhdGVQaXBlIH0gZnJvbSBcIi4vZGF0ZS5waXBlXCI7XHJcbmltcG9ydCB7IEVtcHR5VmFsdWVQaXBlIH0gZnJvbSBcIi4vZW1wdHlWYWx1ZS5waXBlXCI7XHJcbmltcG9ydCB7IEhpZ2hsaWdodFBpcGUgfSBmcm9tIFwiLi9oaWdobGlnaHQucGlwZVwiO1xyXG5pbXBvcnQgeyBOdW1iZXJTcGFjaW5nUGlwZSB9IGZyb20gXCIuL251bWJlci1zcGFjaW5nLnBpcGVcIjtcclxuaW1wb3J0IHsgSGlnaGxpZ2h0SHRtbFBpcGUgfSBmcm9tIFwiLi9oaWdobGlnaHQtaHRtbC5waXBlXCI7XHJcbmltcG9ydCB7IFJpY2hQaXBlIH0gZnJvbSBcIi4vcmljaC5waXBlXCI7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gICAgaW1wb3J0czogW10sXHJcbiAgICBkZWNsYXJhdGlvbnM6IFtSaWNoUGlwZSwgSGlnaGxpZ2h0UGlwZSwgSGlnaGxpZ2h0SHRtbFBpcGUsIE51bWJlclNwYWNpbmdQaXBlLCBMb2NhbGVEYXRlUGlwZSwgRW1wdHlWYWx1ZVBpcGVdLFxyXG4gICAgZXhwb3J0czogW1JpY2hQaXBlLCBIaWdobGlnaHRQaXBlLCBIaWdobGlnaHRIdG1sUGlwZSwgTnVtYmVyU3BhY2luZ1BpcGUsIExvY2FsZURhdGVQaXBlLCBFbXB0eVZhbHVlUGlwZV1cclxufSlcclxuZXhwb3J0IGNsYXNzIEFkYlBpcGVzTW9kdWxlIHsgfSJdfQ==
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGlwZXMubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXJ0ZGF0YS1zaGFyZWQvc3JjL2xpYi9waXBlcy9waXBlcy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzdDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDakQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7O0FBTzFELE1BQU0sT0FBTyxjQUFjO2lJQUFkLGNBQWM7a0lBQWQsY0FBYyxpQkFIUixhQUFhLEVBQUUsaUJBQWlCLEVBQUUsaUJBQWlCLEVBQUUsY0FBYyxFQUFFLGNBQWMsYUFDeEYsYUFBYSxFQUFFLGlCQUFpQixFQUFFLGlCQUFpQixFQUFFLGNBQWMsRUFBRSxjQUFjO2tJQUVwRixjQUFjOzsyRkFBZCxjQUFjO2tCQUwxQixRQUFRO21CQUFDO29CQUNOLE9BQU8sRUFBRSxFQUFFO29CQUNYLFlBQVksRUFBRSxDQUFDLGFBQWEsRUFBRSxpQkFBaUIsRUFBRSxpQkFBaUIsRUFBRSxjQUFjLEVBQUUsY0FBYyxDQUFDO29CQUNuRyxPQUFPLEVBQUUsQ0FBQyxhQUFhLEVBQUUsaUJBQWlCLEVBQUUsaUJBQWlCLEVBQUUsY0FBYyxFQUFFLGNBQWMsQ0FBQztpQkFDakciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IExvY2FsZURhdGVQaXBlIH0gZnJvbSBcIi4vZGF0ZS5waXBlXCI7XHJcbmltcG9ydCB7IEVtcHR5VmFsdWVQaXBlIH0gZnJvbSBcIi4vZW1wdHlWYWx1ZS5waXBlXCI7XHJcbmltcG9ydCB7IEhpZ2hsaWdodFBpcGUgfSBmcm9tIFwiLi9oaWdobGlnaHQucGlwZVwiO1xyXG5pbXBvcnQgeyBOdW1iZXJTcGFjaW5nUGlwZSB9IGZyb20gXCIuL251bWJlci1zcGFjaW5nLnBpcGVcIjtcclxuaW1wb3J0IHsgSGlnaGxpZ2h0SHRtbFBpcGUgfSBmcm9tIFwiLi9oaWdobGlnaHQtaHRtbC5waXBlXCI7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gICAgaW1wb3J0czogW10sXHJcbiAgICBkZWNsYXJhdGlvbnM6IFtIaWdobGlnaHRQaXBlLCBIaWdobGlnaHRIdG1sUGlwZSwgTnVtYmVyU3BhY2luZ1BpcGUsIExvY2FsZURhdGVQaXBlLCBFbXB0eVZhbHVlUGlwZV0sXHJcbiAgICBleHBvcnRzOiBbSGlnaGxpZ2h0UGlwZSwgSGlnaGxpZ2h0SHRtbFBpcGUsIE51bWJlclNwYWNpbmdQaXBlLCBMb2NhbGVEYXRlUGlwZSwgRW1wdHlWYWx1ZVBpcGVdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBZGJQaXBlc01vZHVsZSB7IH0iXX0=
@@ -22,7 +22,6 @@ export * from './lib/pipes/highlight-html.pipe';
22
22
  export * from './lib/pipes/number-spacing.pipe';
23
23
  export * from './lib/pipes/date.pipe';
24
24
  export * from './lib/pipes/emptyValue.pipe';
25
- export * from './lib/pipes/rich.pipe';
26
25
  export * from './lib/components/date-picker/adb-date-picker.module';
27
26
  export * from './lib/components/date-picker/adb-date-picker.component';
28
27
  export * from './lib/components/date-picker/adb-date-picker.directive';
@@ -39,4 +38,5 @@ export * from './lib/components/adb-buttons/adb-buttons.module';
39
38
  export * from './lib/components/adb-buttons/help-button.component';
40
39
  export * from './lib/components/adb-rich-editor/adb-rich-editor.module';
41
40
  export * from './lib/components/adb-rich-editor/adb-rich-editor.component';
42
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2FydGRhdGEtc2hhcmVkL3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBR0gsY0FBYywrQ0FBK0MsQ0FBQztBQUM5RCxjQUFjLCtDQUErQyxDQUFDO0FBRTlELGNBQWMsaUVBQWlFLENBQUM7QUFDaEYsY0FBYyxvRUFBb0UsQ0FBQztBQUNuRixjQUFjLHVFQUF1RSxDQUFDO0FBRXRGLGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMsZ0RBQWdELENBQUM7QUFDL0QsY0FBYyx1Q0FBdUMsQ0FBQztBQUN0RCxjQUFjLHdDQUF3QyxDQUFDO0FBRXZELGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyxtREFBbUQsQ0FBQztBQUNsRSxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMsc0NBQXNDLENBQUM7QUFFckQsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYyx1QkFBdUIsQ0FBQztBQUV0QyxjQUFjLHFEQUFxRCxDQUFDO0FBQ3BFLGNBQWMsd0RBQXdELENBQUM7QUFDdkUsY0FBYyx3REFBd0QsQ0FBQztBQUV2RSxjQUFjLG1EQUFtRCxDQUFDO0FBQ2xFLGNBQWMsc0RBQXNELENBQUM7QUFDckUsY0FBYyx1REFBdUQsQ0FBQztBQUV0RSxjQUFjLHFEQUFxRCxDQUFDO0FBQ3BFLGNBQWMsc0RBQXNELENBQUM7QUFDckUsY0FBYyxzREFBc0QsQ0FBQztBQUVyRSxjQUFjLDZDQUE2QyxDQUFDO0FBQzVELGNBQWMsc0NBQXNDLENBQUM7QUFDckQsY0FBYyw4Q0FBOEMsQ0FBQztBQUU3RCxjQUFjLGlEQUFpRCxDQUFDO0FBQ2hFLGNBQWMsb0RBQW9ELENBQUM7QUFFbkUsY0FBYyx5REFBeUQsQ0FBQztBQUN4RSxjQUFjLDREQUE0RCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIGFydGRhdGEtc2hhcmVkXHJcbiAqL1xyXG5cclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYWRiLWhlYWRlci9hZGItaGVhZGVyLm1vZHVsZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYWRiLWhlYWRlci9hZGItbmF2LmNvbXBvbmVudCc7XHJcblxyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2FkYi1hcnRwb3J0YWxlbi1uYXYvYWRiLWFydHBvcnRhbGVuLW5hdi5tb2R1bGUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2FkYi1hcnRwb3J0YWxlbi1uYXYvYWRiLWFydHBvcnRhbGVuLW5hdi5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2FkYi1hcnRwb3J0YWxlbi1uYXYvYWRiLWFydHBvcnRhbGVuLWZvb3Rlci5jb21wb25lbnQnO1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvZGlyZWN0aXZlcy9kaXJlY3RpdmVzLm1vZHVsZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvY2xpY2stb3V0c2lkZS5kaXJlY3RpdmUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXJlY3RpdmVzL2ZvY3VzLmRpcmVjdGl2ZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvcmVkbGlzdC1iYWRnZS1jbGFzcy5kaXJlY3RpdmUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXJlY3RpdmVzL3Jpc2stY2xhc3MuZGlyZWN0aXZlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvZGlyZWN0aXZlcy9maWxlLXVwbG9hZC5kaXJlY3RpdmUnO1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9wYWdlcnMvcGFnZXJzLm1vZHVsZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvcGFnZXJzL2luZmluaXRlLXNjcm9sbC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3BhZ2Vycy9wYWdlcic7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvcGFnZXJzL3BhZ2VyLWlubGluZSc7XHJcblxyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9waXBlcy9waXBlcy5tb2R1bGUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9waXBlcy9oaWdobGlnaHQucGlwZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3BpcGVzL2hpZ2hsaWdodC1odG1sLnBpcGUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9waXBlcy9udW1iZXItc3BhY2luZy5waXBlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvcGlwZXMvZGF0ZS5waXBlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvcGlwZXMvZW1wdHlWYWx1ZS5waXBlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvcGlwZXMvcmljaC5waXBlJztcclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvZGF0ZS1waWNrZXIvYWRiLWRhdGUtcGlja2VyLm1vZHVsZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvZGF0ZS1waWNrZXIvYWRiLWRhdGUtcGlja2VyLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvZGF0ZS1waWNrZXIvYWRiLWRhdGUtcGlja2VyLmRpcmVjdGl2ZSc7XHJcblxyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2FkYi1kcm9wZG93bi9hZGItZHJvcGRvd24ubW9kdWxlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9hZGItZHJvcGRvd24vYWRiLWRyb3Bkb3duLmRpcmVjdGl2ZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYWRiLWRyb3Bkb3duL2FkYi1kcm9wZG93bjIuZGlyZWN0aXZlJztcclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYWRiLWNvbmZpcm0tbW9kYWwvYWRiLW1vZGFsLm1vZHVsZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYWRiLWNvbmZpcm0tbW9kYWwvYWRiLWNvbmZpcm0tbW9kYWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2FkYi1jb25maXJtLW1vZGFsL2FkYi1tb2RhbC5zZXJ2aWNlJztcclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYWRiLXRvYXN0L2FkYi10b2FzdC5tb2R1bGUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2FkYi10b2FzdC9hZGItdG9hc3QnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2FkYi10b2FzdC9hZGItdG9hc3Quc2VydmljZSc7XHJcblxyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2FkYi1idXR0b25zL2FkYi1idXR0b25zLm1vZHVsZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYWRiLWJ1dHRvbnMvaGVscC1idXR0b24uY29tcG9uZW50JztcclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYWRiLXJpY2gtZWRpdG9yL2FkYi1yaWNoLWVkaXRvci5tb2R1bGUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2FkYi1yaWNoLWVkaXRvci9hZGItcmljaC1lZGl0b3IuY29tcG9uZW50JzsiXX0=
41
+ export * from './lib/components/adb-rich-editor/adb-rich-text';
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2FydGRhdGEtc2hhcmVkL3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBR0gsY0FBYywrQ0FBK0MsQ0FBQztBQUM5RCxjQUFjLCtDQUErQyxDQUFDO0FBRTlELGNBQWMsaUVBQWlFLENBQUM7QUFDaEYsY0FBYyxvRUFBb0UsQ0FBQztBQUNuRixjQUFjLHVFQUF1RSxDQUFDO0FBRXRGLGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMsZ0RBQWdELENBQUM7QUFDL0QsY0FBYyx1Q0FBdUMsQ0FBQztBQUN0RCxjQUFjLHdDQUF3QyxDQUFDO0FBRXZELGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyxtREFBbUQsQ0FBQztBQUNsRSxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMsc0NBQXNDLENBQUM7QUFFckQsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMsNkJBQTZCLENBQUM7QUFFNUMsY0FBYyxxREFBcUQsQ0FBQztBQUNwRSxjQUFjLHdEQUF3RCxDQUFDO0FBQ3ZFLGNBQWMsd0RBQXdELENBQUM7QUFFdkUsY0FBYyxtREFBbUQsQ0FBQztBQUNsRSxjQUFjLHNEQUFzRCxDQUFDO0FBQ3JFLGNBQWMsdURBQXVELENBQUM7QUFFdEUsY0FBYyxxREFBcUQsQ0FBQztBQUNwRSxjQUFjLHNEQUFzRCxDQUFDO0FBQ3JFLGNBQWMsc0RBQXNELENBQUM7QUFFckUsY0FBYyw2Q0FBNkMsQ0FBQztBQUM1RCxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMsOENBQThDLENBQUM7QUFFN0QsY0FBYyxpREFBaUQsQ0FBQztBQUNoRSxjQUFjLG9EQUFvRCxDQUFDO0FBRW5FLGNBQWMseURBQXlELENBQUM7QUFDeEUsY0FBYyw0REFBNEQsQ0FBQztBQUMzRSxjQUFjLGdEQUFnRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIGFydGRhdGEtc2hhcmVkXHJcbiAqL1xyXG5cclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYWRiLWhlYWRlci9hZGItaGVhZGVyLm1vZHVsZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYWRiLWhlYWRlci9hZGItbmF2LmNvbXBvbmVudCc7XHJcblxyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2FkYi1hcnRwb3J0YWxlbi1uYXYvYWRiLWFydHBvcnRhbGVuLW5hdi5tb2R1bGUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2FkYi1hcnRwb3J0YWxlbi1uYXYvYWRiLWFydHBvcnRhbGVuLW5hdi5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2FkYi1hcnRwb3J0YWxlbi1uYXYvYWRiLWFydHBvcnRhbGVuLWZvb3Rlci5jb21wb25lbnQnO1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvZGlyZWN0aXZlcy9kaXJlY3RpdmVzLm1vZHVsZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvY2xpY2stb3V0c2lkZS5kaXJlY3RpdmUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXJlY3RpdmVzL2ZvY3VzLmRpcmVjdGl2ZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvcmVkbGlzdC1iYWRnZS1jbGFzcy5kaXJlY3RpdmUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXJlY3RpdmVzL3Jpc2stY2xhc3MuZGlyZWN0aXZlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvZGlyZWN0aXZlcy9maWxlLXVwbG9hZC5kaXJlY3RpdmUnO1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9wYWdlcnMvcGFnZXJzLm1vZHVsZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvcGFnZXJzL2luZmluaXRlLXNjcm9sbC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3BhZ2Vycy9wYWdlcic7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvcGFnZXJzL3BhZ2VyLWlubGluZSc7XHJcblxyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9waXBlcy9waXBlcy5tb2R1bGUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9waXBlcy9oaWdobGlnaHQucGlwZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3BpcGVzL2hpZ2hsaWdodC1odG1sLnBpcGUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9waXBlcy9udW1iZXItc3BhY2luZy5waXBlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvcGlwZXMvZGF0ZS5waXBlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvcGlwZXMvZW1wdHlWYWx1ZS5waXBlJztcclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvZGF0ZS1waWNrZXIvYWRiLWRhdGUtcGlja2VyLm1vZHVsZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvZGF0ZS1waWNrZXIvYWRiLWRhdGUtcGlja2VyLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvZGF0ZS1waWNrZXIvYWRiLWRhdGUtcGlja2VyLmRpcmVjdGl2ZSc7XHJcblxyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2FkYi1kcm9wZG93bi9hZGItZHJvcGRvd24ubW9kdWxlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9hZGItZHJvcGRvd24vYWRiLWRyb3Bkb3duLmRpcmVjdGl2ZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYWRiLWRyb3Bkb3duL2FkYi1kcm9wZG93bjIuZGlyZWN0aXZlJztcclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYWRiLWNvbmZpcm0tbW9kYWwvYWRiLW1vZGFsLm1vZHVsZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYWRiLWNvbmZpcm0tbW9kYWwvYWRiLWNvbmZpcm0tbW9kYWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2FkYi1jb25maXJtLW1vZGFsL2FkYi1tb2RhbC5zZXJ2aWNlJztcclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYWRiLXRvYXN0L2FkYi10b2FzdC5tb2R1bGUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2FkYi10b2FzdC9hZGItdG9hc3QnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2FkYi10b2FzdC9hZGItdG9hc3Quc2VydmljZSc7XHJcblxyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2FkYi1idXR0b25zL2FkYi1idXR0b25zLm1vZHVsZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYWRiLWJ1dHRvbnMvaGVscC1idXR0b24uY29tcG9uZW50JztcclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYWRiLXJpY2gtZWRpdG9yL2FkYi1yaWNoLWVkaXRvci5tb2R1bGUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2FkYi1yaWNoLWVkaXRvci9hZGItcmljaC1lZGl0b3IuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9hZGItcmljaC1lZGl0b3IvYWRiLXJpY2gtdGV4dCc7Il19
@@ -9,7 +9,6 @@ import { provideHttpClient, withInterceptorsFromDi } from '@angular/common/http'
9
9
  import * as i2 from '@angular/router';
10
10
  import { NavigationEnd, RouterModule } from '@angular/router';
11
11
  import { Subscription, Subject, of } from 'rxjs';
12
- import * as i1$2 from '@angular/platform-browser';
13
12
  import { startOfDay, subYears, endOfDay, addYears, getMonth, subMonths, addMonths, isSameYear, startOfMonth, endOfMonth, eachWeekOfInterval, getISOWeek, addDays, eachDayOfInterval, getHours, getMinutes, isSameDay, isSameMonth, isWithinInterval, isValid, parseISO } from 'date-fns';
14
13
  import * as i2$2 from '@angular/forms';
15
14
  import { NG_VALUE_ACCESSOR, NG_VALIDATORS, FormsModule } from '@angular/forms';
@@ -1149,50 +1148,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImpor
1149
1148
  }]
1150
1149
  }] });
1151
1150
 
1152
- class RichPipe {
1153
- constructor(sanitizer) {
1154
- this.sanitizer = sanitizer;
1155
- }
1156
- transform(value, baseUrl) {
1157
- if (!value) {
1158
- return '';
1159
- }
1160
- const htmlContent = this.parseCustomMarkdown(value, baseUrl);
1161
- return this.sanitizer.bypassSecurityTrustHtml(htmlContent);
1162
- }
1163
- parseCustomMarkdown(input, baseUrl) {
1164
- const italicRegex = /_([^_]+)_/g;
1165
- const taxonRegex = /\[([^\]]+)\]\(taxon:([^)]+)\)/g;
1166
- const termRegex = /\[([^\]]+)\]\(term:([^)]+)\)/g;
1167
- const referenceRegex = /\[([^\]]+)\]\(reference:([^)]+)\)/g;
1168
- // Replace patterns with HTML tags and use baseUrl if needed
1169
- input = input.replace(italicRegex, '<em>$1</em>');
1170
- input = input.replace(taxonRegex, `<a href="${baseUrl}/taxa/$2" class="taxon">$1</a>`);
1171
- input = input.replace(termRegex, `<span> class="term">$1</span>`);
1172
- input = input.replace(referenceRegex, `<span> class="term">$1</span>`);
1173
- return input;
1174
- }
1175
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: RichPipe, deps: [{ token: i1$2.DomSanitizer }], target: i0.ɵɵFactoryTarget.Pipe }); }
1176
- /** @nocollapse */ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.8", ngImport: i0, type: RichPipe, name: "rich" }); }
1177
- }
1178
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: RichPipe, decorators: [{
1179
- type: Pipe,
1180
- args: [{
1181
- name: 'rich'
1182
- }]
1183
- }], ctorParameters: () => [{ type: i1$2.DomSanitizer }] });
1184
-
1185
1151
  class AdbPipesModule {
1186
1152
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: AdbPipesModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
1187
- /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.8", ngImport: i0, type: AdbPipesModule, declarations: [RichPipe, HighlightPipe, HighlightHtmlPipe, NumberSpacingPipe, LocaleDatePipe, EmptyValuePipe], exports: [RichPipe, HighlightPipe, HighlightHtmlPipe, NumberSpacingPipe, LocaleDatePipe, EmptyValuePipe] }); }
1153
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.8", ngImport: i0, type: AdbPipesModule, declarations: [HighlightPipe, HighlightHtmlPipe, NumberSpacingPipe, LocaleDatePipe, EmptyValuePipe], exports: [HighlightPipe, HighlightHtmlPipe, NumberSpacingPipe, LocaleDatePipe, EmptyValuePipe] }); }
1188
1154
  /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: AdbPipesModule }); }
1189
1155
  }
1190
1156
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: AdbPipesModule, decorators: [{
1191
1157
  type: NgModule,
1192
1158
  args: [{
1193
1159
  imports: [],
1194
- declarations: [RichPipe, HighlightPipe, HighlightHtmlPipe, NumberSpacingPipe, LocaleDatePipe, EmptyValuePipe],
1195
- exports: [RichPipe, HighlightPipe, HighlightHtmlPipe, NumberSpacingPipe, LocaleDatePipe, EmptyValuePipe]
1160
+ declarations: [HighlightPipe, HighlightHtmlPipe, NumberSpacingPipe, LocaleDatePipe, EmptyValuePipe],
1161
+ exports: [HighlightPipe, HighlightHtmlPipe, NumberSpacingPipe, LocaleDatePipe, EmptyValuePipe]
1196
1162
  }]
1197
1163
  }] });
1198
1164
 
@@ -1811,11 +1777,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImpor
1811
1777
  }] });
1812
1778
 
1813
1779
  class AdbRichEditorComponent {
1814
- constructor(renderer, el) {
1815
- this.renderer = renderer;
1780
+ constructor(el) {
1816
1781
  this.el = el;
1817
1782
  this.hasTaxon = true;
1818
- this.hasRefernce = true;
1783
+ this.hasReference = false;
1819
1784
  //ControlValueAccessor
1820
1785
  this.onChange = () => { };
1821
1786
  this.onTouched = () => { };
@@ -1840,7 +1805,24 @@ class AdbRichEditorComponent {
1840
1805
  this.onChange(this.text);
1841
1806
  }
1842
1807
  }
1808
+ onBoldClick() {
1809
+ const textarea = this.el.nativeElement.querySelector('textarea');
1810
+ if (textarea) {
1811
+ const selectionStart = textarea.selectionStart;
1812
+ const selectionEnd = textarea.selectionEnd;
1813
+ let currentValue = textarea.value;
1814
+ let modifiedText = `${currentValue.substring(0, selectionStart)}__${currentValue.substring(selectionStart, selectionEnd)}__${currentValue.substring(selectionEnd)}`;
1815
+ this.text = modifiedText;
1816
+ this.onChange(this.text);
1817
+ }
1818
+ }
1843
1819
  onTaxonClick() {
1820
+ this.replaceMarked('[Name](taxon:0)');
1821
+ }
1822
+ onReferenceClick() {
1823
+ this.replaceMarked('[Name](reference:0)');
1824
+ }
1825
+ replaceMarked(replaceTag) {
1844
1826
  const textarea = this.el.nativeElement.querySelector('textarea');
1845
1827
  if (textarea) {
1846
1828
  const start = textarea.selectionStart;
@@ -1850,9 +1832,18 @@ class AdbRichEditorComponent {
1850
1832
  const charAfter = end < originalText.length ? originalText[end] : '';
1851
1833
  const spaceBefore = charBefore && !/\s/.test(charBefore) ? ' ' : '';
1852
1834
  const spaceAfter = charAfter && !/\s/.test(charAfter) ? ' ' : '';
1853
- const newText = originalText.slice(0, start) + spaceBefore + '[Name](taxon:0)' + spaceAfter + originalText.slice(end);
1835
+ const newText = originalText.slice(0, start) + spaceBefore + replaceTag + spaceAfter + originalText.slice(end);
1854
1836
  this.text = newText;
1855
1837
  this.onChange(this.text);
1838
+ const nameStart = newText.indexOf('Name', start); // Find 'Name' starting from the previous selection start
1839
+ if (nameStart !== -1) {
1840
+ const nameEnd = nameStart + 'Name'.length;
1841
+ // Use setTimeout to make sure the textarea is updated before selecting
1842
+ setTimeout(() => {
1843
+ textarea.focus();
1844
+ textarea.setSelectionRange(nameStart, nameEnd); // Select the 'Name' string
1845
+ }, 0);
1846
+ }
1856
1847
  }
1857
1848
  }
1858
1849
  onTextChange() {
@@ -1871,35 +1862,94 @@ class AdbRichEditorComponent {
1871
1862
  }
1872
1863
  ngOnDestroy() {
1873
1864
  }
1874
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: AdbRichEditorComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
1875
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.8", type: AdbRichEditorComponent, selector: "adb-rich-editor", inputs: { hasTaxon: "hasTaxon", hasRefernce: "hasRefernce" }, providers: [{
1865
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: AdbRichEditorComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
1866
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.8", type: AdbRichEditorComponent, selector: "adb-rich-editor", inputs: { hasTaxon: "hasTaxon", hasReference: "hasReference" }, providers: [{
1876
1867
  provide: NG_VALUE_ACCESSOR, useExisting: forwardRef((() => AdbRichEditorComponent)),
1877
1868
  multi: true
1878
- }], ngImport: i0, template: "<div>\r\n <div class=\"d-flex justify-content-end gap-3 mb-1\">\r\n <button class=\"btn btn-secondary\" (click)=\"onItalicClick()\"><span class=\"fas fa-italic\"></span></button>\r\n <button *ngIf=\"hasTaxon\" class=\"btn btn-secondary\" (click)=\"onTaxonClick()\"><span class=\"far fa-paw\"></span></button>\r\n </div>\r\n <textarea class=\"form-control\" [(ngModel)]=\"text\" (ngModelChange)=\"onTextChange()\" (dblclick)=\"onDoubleClick()\"></textarea>\r\n</div>\r\n", dependencies: [{ kind: "directive", type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2$2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] }); }
1869
+ }], ngImport: i0, template: "<div>\r\n <div class=\"d-flex justify-content-end gap-3 p-1 bg-light border border-bottom-0\">\r\n <button class=\"btn btn-secondary\" (click)=\"onItalicClick()\" title=\"Italic\" aria-label=\"Italic\" type=\"button\"><span class=\"fas fa-italic\"></span></button>\r\n <button class=\"btn btn-secondary\" (click)=\"onBoldClick()\" title=\"Italic\" aria-label=\"strong\" type=\"button\"><span class=\"fas fa-bold\"></span></button>\r\n <button *ngIf=\"hasTaxon\" class=\"btn btn-secondary\" (click)=\"onTaxonClick()\" title=\"Taxon\" aria-label=\"Taxon\" type=\"button\"><span class=\"fas fa-bug\"></span></button>\r\n <button *ngIf=\"hasReference\" class=\"btn btn-secondary\" (click)=\"onReferenceClick()\" title=\"Reference\" aria-label=\"Reference\" type=\"button\"><span class=\"fas fa-asterisk\"></span></button>\r\n </div>\r\n <textarea class=\"form-control\" [(ngModel)]=\"text\" (ngModelChange)=\"onTextChange()\" (dblclick)=\"onDoubleClick()\"></textarea>\r\n</div>\r\n", dependencies: [{ kind: "directive", type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2$2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] }); }
1879
1870
  }
1880
1871
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: AdbRichEditorComponent, decorators: [{
1881
1872
  type: Component,
1882
1873
  args: [{ selector: 'adb-rich-editor', providers: [{
1883
1874
  provide: NG_VALUE_ACCESSOR, useExisting: forwardRef((() => AdbRichEditorComponent)),
1884
1875
  multi: true
1885
- }], template: "<div>\r\n <div class=\"d-flex justify-content-end gap-3 mb-1\">\r\n <button class=\"btn btn-secondary\" (click)=\"onItalicClick()\"><span class=\"fas fa-italic\"></span></button>\r\n <button *ngIf=\"hasTaxon\" class=\"btn btn-secondary\" (click)=\"onTaxonClick()\"><span class=\"far fa-paw\"></span></button>\r\n </div>\r\n <textarea class=\"form-control\" [(ngModel)]=\"text\" (ngModelChange)=\"onTextChange()\" (dblclick)=\"onDoubleClick()\"></textarea>\r\n</div>\r\n" }]
1886
- }], ctorParameters: () => [{ type: i0.Renderer2 }, { type: i0.ElementRef }], propDecorators: { hasTaxon: [{
1876
+ }], template: "<div>\r\n <div class=\"d-flex justify-content-end gap-3 p-1 bg-light border border-bottom-0\">\r\n <button class=\"btn btn-secondary\" (click)=\"onItalicClick()\" title=\"Italic\" aria-label=\"Italic\" type=\"button\"><span class=\"fas fa-italic\"></span></button>\r\n <button class=\"btn btn-secondary\" (click)=\"onBoldClick()\" title=\"Italic\" aria-label=\"strong\" type=\"button\"><span class=\"fas fa-bold\"></span></button>\r\n <button *ngIf=\"hasTaxon\" class=\"btn btn-secondary\" (click)=\"onTaxonClick()\" title=\"Taxon\" aria-label=\"Taxon\" type=\"button\"><span class=\"fas fa-bug\"></span></button>\r\n <button *ngIf=\"hasReference\" class=\"btn btn-secondary\" (click)=\"onReferenceClick()\" title=\"Reference\" aria-label=\"Reference\" type=\"button\"><span class=\"fas fa-asterisk\"></span></button>\r\n </div>\r\n <textarea class=\"form-control\" [(ngModel)]=\"text\" (ngModelChange)=\"onTextChange()\" (dblclick)=\"onDoubleClick()\"></textarea>\r\n</div>\r\n" }]
1877
+ }], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { hasTaxon: [{
1878
+ type: Input
1879
+ }], hasReference: [{
1880
+ type: Input
1881
+ }] } });
1882
+
1883
+ class RichTextComponent {
1884
+ constructor() {
1885
+ this.text = '';
1886
+ this.baseUrl = '';
1887
+ this.parts = [];
1888
+ }
1889
+ ngOnChanges() {
1890
+ if (this.text) {
1891
+ this.parts = this.parseCustomMarkdown(this.text);
1892
+ }
1893
+ }
1894
+ parseCustomMarkdown(input) {
1895
+ const parts = [];
1896
+ const italicRegex = /_([^_]+)_/g;
1897
+ const boldRegex = /__([^_]+)__/g;
1898
+ const taxonRegex = /\[([^\]]+)\]\(taxon:([^)]+)\)/g;
1899
+ const termRegex = /\[([^\]]+)\]\(term:([^)]+)\)/g;
1900
+ const referenceRegex = /\[([^\]]+)\]\(reference:([^)]+)\)/g;
1901
+ const combinedRegex = new RegExp(`${italicRegex.source}|${boldRegex.source}|${taxonRegex.source}|${termRegex.source}|${referenceRegex.source}`, 'g');
1902
+ let lastIndex = 0;
1903
+ let match;
1904
+ while ((match = combinedRegex.exec(input)) !== null) {
1905
+ if (match.index > lastIndex) {
1906
+ parts.push({ type: 'text', content: input.slice(lastIndex, match.index) });
1907
+ }
1908
+ if (match[1]) {
1909
+ parts.push({ type: 'italic', content: match[1] });
1910
+ }
1911
+ else if (match[2]) {
1912
+ parts.push({ type: 'bold', content: match[2] });
1913
+ }
1914
+ else if (match[3]) {
1915
+ parts.push({ type: 'taxon', content: match[3], id: match[4] });
1916
+ }
1917
+ else if (match[5]) {
1918
+ parts.push({ type: 'term', content: match[5], id: match[6] });
1919
+ }
1920
+ else if (match[7]) {
1921
+ parts.push({ type: 'reference', content: match[7], id: match[8] });
1922
+ }
1923
+ lastIndex = combinedRegex.lastIndex;
1924
+ }
1925
+ if (lastIndex < input.length) {
1926
+ parts.push({ type: 'text', content: input.slice(lastIndex) });
1927
+ }
1928
+ return parts;
1929
+ }
1930
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: RichTextComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1931
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.8", type: RichTextComponent, selector: "adb-rich-text", inputs: { text: "text", baseUrl: "baseUrl" }, usesOnChanges: true, ngImport: i0, template: "<div style=\"white-space: pre-wrap;\">\r\n <ng-container *ngFor=\"let part of parts\">\r\n <span *ngIf=\"part.type === 'text'\">{{ part.content }}</span>\r\n <em *ngIf=\"part.type === 'italic'\">{{ part.content }}</em>\r\n <b *ngIf=\"part.type === 'bold'\">{{ part.content }}</b>\r\n <a *ngIf=\"part.type === 'taxon'\" [href]=\"baseUrl + '/taxa/' + part.id\">{{ part.content }}</a>\r\n <span *ngIf=\"part.type === 'term'\">{{ part.content }}</span>\r\n <span *ngIf=\"part.type === 'reference'\">{{ part.content }}</span>\r\n </ng-container>\r\n </div>\r\n ", dependencies: [{ kind: "directive", type: i2$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
1932
+ }
1933
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: RichTextComponent, decorators: [{
1934
+ type: Component,
1935
+ args: [{ selector: 'adb-rich-text', template: "<div style=\"white-space: pre-wrap;\">\r\n <ng-container *ngFor=\"let part of parts\">\r\n <span *ngIf=\"part.type === 'text'\">{{ part.content }}</span>\r\n <em *ngIf=\"part.type === 'italic'\">{{ part.content }}</em>\r\n <b *ngIf=\"part.type === 'bold'\">{{ part.content }}</b>\r\n <a *ngIf=\"part.type === 'taxon'\" [href]=\"baseUrl + '/taxa/' + part.id\">{{ part.content }}</a>\r\n <span *ngIf=\"part.type === 'term'\">{{ part.content }}</span>\r\n <span *ngIf=\"part.type === 'reference'\">{{ part.content }}</span>\r\n </ng-container>\r\n </div>\r\n " }]
1936
+ }], propDecorators: { text: [{
1887
1937
  type: Input
1888
- }], hasRefernce: [{
1938
+ }], baseUrl: [{
1889
1939
  type: Input
1890
1940
  }] } });
1891
1941
 
1892
1942
  class AdbRichEditorModule {
1893
1943
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: AdbRichEditorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
1894
- /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.8", ngImport: i0, type: AdbRichEditorModule, declarations: [AdbRichEditorComponent], imports: [CommonModule, FormsModule], exports: [AdbRichEditorComponent] }); }
1944
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.8", ngImport: i0, type: AdbRichEditorModule, declarations: [AdbRichEditorComponent, RichTextComponent], imports: [CommonModule, FormsModule], exports: [AdbRichEditorComponent, RichTextComponent] }); }
1895
1945
  /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: AdbRichEditorModule, imports: [CommonModule, FormsModule] }); }
1896
1946
  }
1897
1947
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: AdbRichEditorModule, decorators: [{
1898
1948
  type: NgModule,
1899
1949
  args: [{
1900
1950
  imports: [CommonModule, FormsModule],
1901
- declarations: [AdbRichEditorComponent],
1902
- exports: [AdbRichEditorComponent]
1951
+ declarations: [AdbRichEditorComponent, RichTextComponent],
1952
+ exports: [AdbRichEditorComponent, RichTextComponent]
1903
1953
  }]
1904
1954
  }] });
1905
1955
 
@@ -1911,5 +1961,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImpor
1911
1961
  * Generated bundle index. Do not edit.
1912
1962
  */
1913
1963
 
1914
- export { ADBHeaderModule, ADBNavComponent, AdbButtonsModule, AdbConfirmModal, AdbDatePickerComponent, AdbDatePickerDirective, AdbDatePickerModule, AdbDirectivesModule, AdbDropdown2Directive, AdbDropdownDirective, AdbDropdownModule, AdbHelpButtonComponent, AdbModalModule, AdbModalService, AdbPagersModule, AdbPipesModule, AdbRichEditorComponent, AdbRichEditorModule, AdbToast, AdbToastModule, AdbToastService, ArtportalenFooterComponent, ArtportalenNavComponent, ArtportalenNavModule, ClickOutsideDirective, EmptyValuePipe, FileUploadDirective, FocusDirective, HighlightHtmlPipe, HighlightPipe, InfiniteScrollComponent, LocaleDatePipe, NumberSpacingPipe, PagerComponent, PagerInlineComponent, RedListBadgeClassDirective, RichPipe, RiskClassDirective, ToastType };
1964
+ export { ADBHeaderModule, ADBNavComponent, AdbButtonsModule, AdbConfirmModal, AdbDatePickerComponent, AdbDatePickerDirective, AdbDatePickerModule, AdbDirectivesModule, AdbDropdown2Directive, AdbDropdownDirective, AdbDropdownModule, AdbHelpButtonComponent, AdbModalModule, AdbModalService, AdbPagersModule, AdbPipesModule, AdbRichEditorComponent, AdbRichEditorModule, AdbToast, AdbToastModule, AdbToastService, ArtportalenFooterComponent, ArtportalenNavComponent, ArtportalenNavModule, ClickOutsideDirective, EmptyValuePipe, FileUploadDirective, FocusDirective, HighlightHtmlPipe, HighlightPipe, InfiniteScrollComponent, LocaleDatePipe, NumberSpacingPipe, PagerComponent, PagerInlineComponent, RedListBadgeClassDirective, RichTextComponent, RiskClassDirective, ToastType };
1915
1965
  //# sourceMappingURL=adb-shared.mjs.map