@ng-util/markdown 19.0.0 → 19.0.1
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.
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
2
|
import { InjectionToken, makeEnvironmentProviders, inject, Injectable, ElementRef, NgZone, EventEmitter, numberAttribute, booleanAttribute, Directive, Input, Output, Component, ChangeDetectionStrategy, forwardRef, NgModule } from '@angular/core';
|
|
3
|
-
import { NuLazyService } from '@ng-util/lazy';
|
|
4
3
|
import { Subject } from 'rxjs';
|
|
4
|
+
import { NuLazyService } from '@ng-util/lazy';
|
|
5
5
|
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
6
6
|
import { CommonModule } from '@angular/common';
|
|
7
7
|
|
|
@@ -22,7 +22,7 @@ class NuMarkdownService {
|
|
|
22
22
|
this.notify$ = new Subject();
|
|
23
23
|
this.libs = this.config?.libs || [
|
|
24
24
|
`https://cdn.jsdelivr.net/npm/vditor/dist/index.min.js`,
|
|
25
|
-
`https://cdn.jsdelivr.net/npm/vditor/dist/index.css
|
|
25
|
+
`https://cdn.jsdelivr.net/npm/vditor/dist/index.css`
|
|
26
26
|
];
|
|
27
27
|
}
|
|
28
28
|
load() {
|
|
@@ -41,10 +41,10 @@ class NuMarkdownService {
|
|
|
41
41
|
this.lazySrv.load(libs);
|
|
42
42
|
return this;
|
|
43
43
|
}
|
|
44
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.
|
|
45
|
-
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.
|
|
44
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.3", ngImport: i0, type: NuMarkdownService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
45
|
+
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.1.3", ngImport: i0, type: NuMarkdownService, providedIn: 'root' }); }
|
|
46
46
|
}
|
|
47
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.
|
|
47
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.3", ngImport: i0, type: NuMarkdownService, decorators: [{
|
|
48
48
|
type: Injectable,
|
|
49
49
|
args: [{ providedIn: 'root' }]
|
|
50
50
|
}], ctorParameters: () => [] });
|
|
@@ -85,10 +85,10 @@ class NuMarkdownBaseComponent {
|
|
|
85
85
|
ngOnDestroy() {
|
|
86
86
|
this.notify$?.unsubscribe();
|
|
87
87
|
}
|
|
88
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.
|
|
89
|
-
/** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "19.
|
|
88
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.3", ngImport: i0, type: NuMarkdownBaseComponent, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
89
|
+
/** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "19.1.3", type: NuMarkdownBaseComponent, isStandalone: true, inputs: { delay: ["delay", "delay", numberAttribute], disabled: ["disabled", "disabled", booleanAttribute], options: "options", value: "value" }, outputs: { ready: "ready" }, ngImport: i0 }); }
|
|
90
90
|
}
|
|
91
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.
|
|
91
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.3", ngImport: i0, type: NuMarkdownBaseComponent, decorators: [{
|
|
92
92
|
type: Directive
|
|
93
93
|
}], propDecorators: { delay: [{
|
|
94
94
|
type: Input,
|
|
@@ -111,30 +111,32 @@ class NuMarkdownPreviewComponent extends NuMarkdownBaseComponent {
|
|
|
111
111
|
this.ngZone.run(() => this.ready.emit(this.el.nativeElement.innerHTML));
|
|
112
112
|
});
|
|
113
113
|
}
|
|
114
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.
|
|
115
|
-
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.
|
|
114
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.3", ngImport: i0, type: NuMarkdownPreviewComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
115
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.1.3", type: NuMarkdownPreviewComponent, isStandalone: true, selector: "nu-markdown-preview", exportAs: ["nuMarkdownPreview"], usesInheritance: true, ngImport: i0, template: ``, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
116
116
|
}
|
|
117
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.
|
|
117
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.3", ngImport: i0, type: NuMarkdownPreviewComponent, decorators: [{
|
|
118
118
|
type: Component,
|
|
119
119
|
args: [{
|
|
120
120
|
selector: 'nu-markdown-preview',
|
|
121
121
|
template: ``,
|
|
122
122
|
exportAs: 'nuMarkdownPreview',
|
|
123
|
-
changeDetection: ChangeDetectionStrategy.OnPush
|
|
123
|
+
changeDetection: ChangeDetectionStrategy.OnPush
|
|
124
124
|
}]
|
|
125
125
|
}] });
|
|
126
126
|
|
|
127
127
|
class NuMarkdownComponent extends NuMarkdownBaseComponent {
|
|
128
128
|
constructor() {
|
|
129
129
|
super(...arguments);
|
|
130
|
-
this.onChange = (_) => {
|
|
130
|
+
this.onChange = (_) => {
|
|
131
|
+
//
|
|
132
|
+
};
|
|
131
133
|
}
|
|
132
134
|
init() {
|
|
133
135
|
this.ngZone.runOutsideAngular(() => {
|
|
134
136
|
const options = {
|
|
135
137
|
value: this._value,
|
|
136
138
|
cache: {
|
|
137
|
-
enable: false
|
|
139
|
+
enable: false
|
|
138
140
|
},
|
|
139
141
|
mode: 'sv',
|
|
140
142
|
minHeight: 350,
|
|
@@ -145,7 +147,7 @@ class NuMarkdownComponent extends NuMarkdownBaseComponent {
|
|
|
145
147
|
});
|
|
146
148
|
},
|
|
147
149
|
...this.config?.defaultOptions,
|
|
148
|
-
...this.options
|
|
150
|
+
...this.options
|
|
149
151
|
};
|
|
150
152
|
this._instance = new Vditor(this.el.nativeElement, options);
|
|
151
153
|
this.ngZone.run(() => this.ready.emit(this._instance));
|
|
@@ -171,21 +173,23 @@ class NuMarkdownComponent extends NuMarkdownBaseComponent {
|
|
|
171
173
|
registerOnChange(fn) {
|
|
172
174
|
this.onChange = fn;
|
|
173
175
|
}
|
|
174
|
-
registerOnTouched(_) {
|
|
176
|
+
registerOnTouched(_) {
|
|
177
|
+
//
|
|
178
|
+
}
|
|
175
179
|
setDisabledState(_isDisabled) {
|
|
176
180
|
this.disabled = _isDisabled;
|
|
177
181
|
this.setDisabled();
|
|
178
182
|
}
|
|
179
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.
|
|
180
|
-
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.
|
|
183
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.3", ngImport: i0, type: NuMarkdownComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
184
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.1.3", type: NuMarkdownComponent, isStandalone: true, selector: "nu-markdown", providers: [
|
|
181
185
|
{
|
|
182
186
|
provide: NG_VALUE_ACCESSOR,
|
|
183
187
|
useExisting: forwardRef((() => NuMarkdownComponent)),
|
|
184
|
-
multi: true
|
|
185
|
-
}
|
|
188
|
+
multi: true
|
|
189
|
+
}
|
|
186
190
|
], exportAs: ["nuMarkdown"], usesInheritance: true, ngImport: i0, template: ``, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
187
191
|
}
|
|
188
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.
|
|
192
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.3", ngImport: i0, type: NuMarkdownComponent, decorators: [{
|
|
189
193
|
type: Component,
|
|
190
194
|
args: [{
|
|
191
195
|
selector: 'nu-markdown',
|
|
@@ -195,10 +199,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0", ngImpor
|
|
|
195
199
|
{
|
|
196
200
|
provide: NG_VALUE_ACCESSOR,
|
|
197
201
|
useExisting: forwardRef((() => NuMarkdownComponent)),
|
|
198
|
-
multi: true
|
|
199
|
-
}
|
|
202
|
+
multi: true
|
|
203
|
+
}
|
|
200
204
|
],
|
|
201
|
-
changeDetection: ChangeDetectionStrategy.OnPush
|
|
205
|
+
changeDetection: ChangeDetectionStrategy.OnPush
|
|
202
206
|
}]
|
|
203
207
|
}] });
|
|
204
208
|
|
|
@@ -210,18 +214,18 @@ class NuMarkdownModule {
|
|
|
210
214
|
static forRoot(config) {
|
|
211
215
|
return {
|
|
212
216
|
ngModule: NuMarkdownModule,
|
|
213
|
-
providers: [{ provide: NU_MARKDOWN_CONFIG, useValue: config }]
|
|
217
|
+
providers: [{ provide: NU_MARKDOWN_CONFIG, useValue: config }]
|
|
214
218
|
};
|
|
215
219
|
}
|
|
216
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.
|
|
217
|
-
/** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.
|
|
218
|
-
/** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.
|
|
220
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.3", ngImport: i0, type: NuMarkdownModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
221
|
+
/** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.1.3", ngImport: i0, type: NuMarkdownModule, imports: [CommonModule, NuMarkdownComponent, NuMarkdownPreviewComponent], exports: [NuMarkdownComponent, NuMarkdownPreviewComponent] }); }
|
|
222
|
+
/** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.1.3", ngImport: i0, type: NuMarkdownModule, imports: [CommonModule] }); }
|
|
219
223
|
}
|
|
220
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.
|
|
224
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.3", ngImport: i0, type: NuMarkdownModule, decorators: [{
|
|
221
225
|
type: NgModule,
|
|
222
226
|
args: [{
|
|
223
227
|
imports: [CommonModule, ...COMPONENTS],
|
|
224
|
-
exports: COMPONENTS
|
|
228
|
+
exports: COMPONENTS
|
|
225
229
|
}]
|
|
226
230
|
}] });
|
|
227
231
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ng-util-markdown.mjs","sources":["../../../../packages/markdown/markdown.config.ts","../../../../packages/markdown/markdown.service.ts","../../../../packages/markdown/markdown-base.component.ts","../../../../packages/markdown/markdown-preview.component.ts","../../../../packages/markdown/markdown.component.ts","../../../../packages/markdown/markdown.module.ts","../../../../packages/markdown/ng-util-markdown.ts"],"sourcesContent":["import { EnvironmentProviders, InjectionToken, makeEnvironmentProviders } from '@angular/core';\n\nexport const NU_MARKDOWN_CONFIG = new InjectionToken<NuMarkdownConfig>('NU_MARKDOWN_CONFIG');\n\nexport function provideNuMarkdownConfig(config?: NuMarkdownConfig): EnvironmentProviders {\n return makeEnvironmentProviders([{ provide: NU_MARKDOWN_CONFIG, useValue: config }]);\n}\n\nexport interface NuMarkdownConfig {\n /**\n * The base URL to [Vditor](https://github.com/Vanessa219/vditor) library, Default: `['https://cdn.jsdelivr.net/npm/vditor/dist/index.min.js', 'https://cdn.jsdelivr.net/npm/vditor/dist/index.css']`\n */\n libs?: string[];\n\n /**\n * Equar [IOptions](https://github.com/Vanessa219/vditor/blob/master/types/index.d.ts#L432)\n */\n defaultOptions?: any;\n}\n","import { inject, Injectable } from '@angular/core';\nimport { NuLazyService } from '@ng-util/lazy';\nimport { Observable, Subject } from 'rxjs';\nimport { NU_MARKDOWN_CONFIG } from './markdown.config';\n\n@Injectable({ providedIn: 'root' })\nexport class NuMarkdownService {\n private readonly config = inject(NU_MARKDOWN_CONFIG, { optional: true });\n private readonly lazySrv = inject(NuLazyService);\n private libs: string[];\n private loading = false;\n private loaded = false;\n private notify$ = new Subject<void>();\n\n get notify(): Observable<void> {\n return this.notify$.asObservable();\n }\n\n constructor() {\n this.libs = this.config?.libs || [\n `https://cdn.jsdelivr.net/npm/vditor/dist/index.min.js`,\n `https://cdn.jsdelivr.net/npm/vditor/dist/index.css`,\n ];\n }\n\n load(): this {\n if (this.loading) {\n if (this.loaded) {\n this.notify$.next();\n }\n return this;\n }\n this.loading = true;\n\n const libs = this.libs!;\n this.lazySrv.monitor(libs).subscribe(() => {\n this.loaded = true;\n this.notify$.next();\n });\n this.lazySrv.load(libs);\n\n return this;\n }\n}\n","import {\n AfterViewInit,\n booleanAttribute,\n Directive,\n ElementRef,\n EventEmitter,\n inject,\n Input,\n NgZone,\n numberAttribute,\n OnDestroy,\n Output,\n} from '@angular/core';\nimport { Subscription } from 'rxjs';\nimport { NU_MARKDOWN_CONFIG } from './markdown.config';\nimport { NuMarkdownService } from './markdown.service';\n\n@Directive()\nexport abstract class NuMarkdownBaseComponent implements AfterViewInit, OnDestroy {\n protected el = inject<ElementRef<HTMLElement>>(ElementRef);\n protected config = inject(NU_MARKDOWN_CONFIG, { optional: true });\n protected srv = inject(NuMarkdownService);\n protected ngZone = inject(NgZone);\n\n private notify$?: Subscription;\n protected _instance: any;\n\n @Input({ transform: numberAttribute }) delay = 0;\n @Input({ transform: booleanAttribute }) disabled = false;\n @Input() options: any;\n @Output() readonly ready = new EventEmitter<string>();\n\n protected _value!: string;\n @Input()\n set value(v: string) {\n this._value = v;\n if (this.loaded) {\n this.init();\n }\n }\n\n get instance(): any {\n return this._instance;\n }\n\n private initDelay(): void {\n setTimeout(() => this.init(), this.delay);\n }\n\n protected abstract init(): void;\n\n protected get loaded(): boolean {\n return !!(window as any).Vditor;\n }\n\n ngAfterViewInit(): void {\n this.notify$ = this.srv.notify.subscribe(() => this.initDelay());\n if (this.loaded) {\n this.initDelay();\n return;\n }\n this.srv.load();\n }\n\n ngOnDestroy(): void {\n this.notify$?.unsubscribe();\n }\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { NuMarkdownBaseComponent } from './markdown-base.component';\n\ndeclare var Vditor: any;\n\n@Component({\n selector: 'nu-markdown-preview',\n template: ``,\n exportAs: 'nuMarkdownPreview',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class NuMarkdownPreviewComponent extends NuMarkdownBaseComponent {\n protected init(): void {\n this.ngZone.runOutsideAngular(async () => {\n await Vditor.preview(this.el.nativeElement, this._value, this.options);\n this.ngZone.run(() => this.ready.emit(this.el.nativeElement.innerHTML));\n });\n }\n}\n","import { ChangeDetectionStrategy, Component, forwardRef } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { NuMarkdownBaseComponent } from './markdown-base.component';\n\ndeclare var Vditor: any;\n\n@Component({\n selector: 'nu-markdown',\n template: ``,\n exportAs: 'nuMarkdown',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => NuMarkdownComponent),\n multi: true,\n },\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class NuMarkdownComponent extends NuMarkdownBaseComponent implements ControlValueAccessor {\n private onChange = (_: string) => {};\n\n protected init(): void {\n this.ngZone.runOutsideAngular(() => {\n const options = {\n value: this._value,\n cache: {\n enable: false,\n },\n mode: 'sv',\n minHeight: 350,\n input: (value: string) => {\n this.ngZone.run(() => {\n this._value = value;\n this.onChange(value);\n });\n },\n ...this.config?.defaultOptions,\n ...this.options,\n };\n this._instance = new Vditor(this.el.nativeElement, options);\n this.ngZone.run(() => this.ready.emit(this._instance));\n });\n }\n\n private setDisabled(): void {\n if (!this.instance) {\n return;\n }\n if (this.disabled) {\n this.instance.disabled();\n } else {\n this.instance.enable();\n }\n }\n\n writeValue(value: string): void {\n this._value = value || '';\n if (this.instance) {\n this.instance.setValue(this._value);\n }\n }\n\n registerOnChange(fn: (_: string) => void): void {\n this.onChange = fn;\n }\n\n registerOnTouched(_: () => void): void {}\n\n setDisabledState(_isDisabled: boolean): void {\n this.disabled = _isDisabled;\n this.setDisabled();\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { ModuleWithProviders, NgModule } from '@angular/core';\nimport { NuMarkdownPreviewComponent } from './markdown-preview.component';\nimport { NuMarkdownComponent } from './markdown.component';\nimport { NuMarkdownConfig, NU_MARKDOWN_CONFIG } from './markdown.config';\n\nconst COMPONENTS = [NuMarkdownComponent, NuMarkdownPreviewComponent];\n\n@NgModule({\n imports: [CommonModule, ...COMPONENTS],\n exports: COMPONENTS,\n})\nexport class NuMarkdownModule {\n /**\n * Or use `provideNuMarkdownConfig` instead.\n */\n static forRoot(config?: NuMarkdownConfig): ModuleWithProviders<NuMarkdownModule> {\n return {\n ngModule: NuMarkdownModule,\n providers: [{ provide: NU_MARKDOWN_CONFIG, useValue: config }],\n };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ng-util-markdown.mjs","sources":["../../../../packages/markdown/markdown.config.ts","../../../../packages/markdown/markdown.service.ts","../../../../packages/markdown/markdown-base.component.ts","../../../../packages/markdown/markdown-preview.component.ts","../../../../packages/markdown/markdown.component.ts","../../../../packages/markdown/markdown.module.ts","../../../../packages/markdown/ng-util-markdown.ts"],"sourcesContent":["import { EnvironmentProviders, InjectionToken, makeEnvironmentProviders } from '@angular/core';\n\nexport const NU_MARKDOWN_CONFIG = new InjectionToken<NuMarkdownConfig>('NU_MARKDOWN_CONFIG');\n\nexport function provideNuMarkdownConfig(config?: NuMarkdownConfig): EnvironmentProviders {\n return makeEnvironmentProviders([{ provide: NU_MARKDOWN_CONFIG, useValue: config }]);\n}\n\nexport interface NuMarkdownConfig {\n /**\n * The base URL to [Vditor](https://github.com/Vanessa219/vditor) library, Default: `['https://cdn.jsdelivr.net/npm/vditor/dist/index.min.js', 'https://cdn.jsdelivr.net/npm/vditor/dist/index.css']`\n */\n libs?: string[];\n\n /**\n * Equar [IOptions](https://github.com/Vanessa219/vditor/blob/master/types/index.d.ts#L432)\n */\n defaultOptions?: any;\n}\n","import { inject, Injectable } from '@angular/core';\nimport { Observable, Subject } from 'rxjs';\n\nimport { NuLazyService } from '@ng-util/lazy';\n\nimport { NU_MARKDOWN_CONFIG } from './markdown.config';\n\n@Injectable({ providedIn: 'root' })\nexport class NuMarkdownService {\n private readonly config = inject(NU_MARKDOWN_CONFIG, { optional: true });\n private readonly lazySrv = inject(NuLazyService);\n private libs: string[];\n private loading = false;\n private loaded = false;\n private notify$ = new Subject<void>();\n\n get notify(): Observable<void> {\n return this.notify$.asObservable();\n }\n\n constructor() {\n this.libs = this.config?.libs || [\n `https://cdn.jsdelivr.net/npm/vditor/dist/index.min.js`,\n `https://cdn.jsdelivr.net/npm/vditor/dist/index.css`\n ];\n }\n\n load(): this {\n if (this.loading) {\n if (this.loaded) {\n this.notify$.next();\n }\n return this;\n }\n this.loading = true;\n\n const libs = this.libs!;\n this.lazySrv.monitor(libs).subscribe(() => {\n this.loaded = true;\n this.notify$.next();\n });\n this.lazySrv.load(libs);\n\n return this;\n }\n}\n","import {\n AfterViewInit,\n booleanAttribute,\n Directive,\n ElementRef,\n EventEmitter,\n inject,\n Input,\n NgZone,\n numberAttribute,\n OnDestroy,\n Output\n} from '@angular/core';\nimport { Subscription } from 'rxjs';\n\nimport { NU_MARKDOWN_CONFIG } from './markdown.config';\nimport { NuMarkdownService } from './markdown.service';\n\n@Directive()\nexport abstract class NuMarkdownBaseComponent implements AfterViewInit, OnDestroy {\n protected el = inject<ElementRef<HTMLElement>>(ElementRef);\n protected config = inject(NU_MARKDOWN_CONFIG, { optional: true });\n protected srv = inject(NuMarkdownService);\n protected ngZone = inject(NgZone);\n\n private notify$?: Subscription;\n protected _instance: any;\n\n @Input({ transform: numberAttribute }) delay = 0;\n @Input({ transform: booleanAttribute }) disabled = false;\n @Input() options: any;\n @Output() readonly ready = new EventEmitter<string>();\n\n protected _value!: string;\n @Input()\n set value(v: string) {\n this._value = v;\n if (this.loaded) {\n this.init();\n }\n }\n\n get instance(): any {\n return this._instance;\n }\n\n private initDelay(): void {\n setTimeout(() => this.init(), this.delay);\n }\n\n protected abstract init(): void;\n\n protected get loaded(): boolean {\n return !!(window as any).Vditor;\n }\n\n ngAfterViewInit(): void {\n this.notify$ = this.srv.notify.subscribe(() => this.initDelay());\n if (this.loaded) {\n this.initDelay();\n return;\n }\n this.srv.load();\n }\n\n ngOnDestroy(): void {\n this.notify$?.unsubscribe();\n }\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { NuMarkdownBaseComponent } from './markdown-base.component';\n\ndeclare let Vditor: any;\n\n@Component({\n selector: 'nu-markdown-preview',\n template: ``,\n exportAs: 'nuMarkdownPreview',\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class NuMarkdownPreviewComponent extends NuMarkdownBaseComponent {\n protected init(): void {\n this.ngZone.runOutsideAngular(async () => {\n await Vditor.preview(this.el.nativeElement, this._value, this.options);\n this.ngZone.run(() => this.ready.emit(this.el.nativeElement.innerHTML));\n });\n }\n}\n","import { ChangeDetectionStrategy, Component, forwardRef } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport { NuMarkdownBaseComponent } from './markdown-base.component';\n\ndeclare let Vditor: any;\n\n@Component({\n selector: 'nu-markdown',\n template: ``,\n exportAs: 'nuMarkdown',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => NuMarkdownComponent),\n multi: true\n }\n ],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class NuMarkdownComponent extends NuMarkdownBaseComponent implements ControlValueAccessor {\n private onChange = (_: string) => {\n //\n };\n\n protected init(): void {\n this.ngZone.runOutsideAngular(() => {\n const options = {\n value: this._value,\n cache: {\n enable: false\n },\n mode: 'sv',\n minHeight: 350,\n input: (value: string) => {\n this.ngZone.run(() => {\n this._value = value;\n this.onChange(value);\n });\n },\n ...this.config?.defaultOptions,\n ...this.options\n };\n this._instance = new Vditor(this.el.nativeElement, options);\n this.ngZone.run(() => this.ready.emit(this._instance));\n });\n }\n\n private setDisabled(): void {\n if (!this.instance) {\n return;\n }\n if (this.disabled) {\n this.instance.disabled();\n } else {\n this.instance.enable();\n }\n }\n\n writeValue(value: string): void {\n this._value = value || '';\n if (this.instance) {\n this.instance.setValue(this._value);\n }\n }\n\n registerOnChange(fn: (_: string) => void): void {\n this.onChange = fn;\n }\n\n registerOnTouched(_: () => void): void {\n //\n }\n\n setDisabledState(_isDisabled: boolean): void {\n this.disabled = _isDisabled;\n this.setDisabled();\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { ModuleWithProviders, NgModule } from '@angular/core';\n\nimport { NuMarkdownPreviewComponent } from './markdown-preview.component';\nimport { NuMarkdownComponent } from './markdown.component';\nimport { NuMarkdownConfig, NU_MARKDOWN_CONFIG } from './markdown.config';\n\nconst COMPONENTS = [NuMarkdownComponent, NuMarkdownPreviewComponent];\n\n@NgModule({\n imports: [CommonModule, ...COMPONENTS],\n exports: COMPONENTS\n})\nexport class NuMarkdownModule {\n /**\n * Or use `provideNuMarkdownConfig` instead.\n */\n static forRoot(config?: NuMarkdownConfig): ModuleWithProviders<NuMarkdownModule> {\n return {\n ngModule: NuMarkdownModule,\n providers: [{ provide: NU_MARKDOWN_CONFIG, useValue: config }]\n };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|