@mintplayer/ng-bootstrap 17.2.0 → 17.3.0
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,12 +1,18 @@
|
|
|
1
|
-
import { TemplateRef } from '@angular/core';
|
|
1
|
+
import { EventEmitter, TemplateRef } from '@angular/core';
|
|
2
|
+
import { HighlightAutoResult } from 'ngx-highlightjs';
|
|
3
|
+
import { BehaviorSubject } from 'rxjs';
|
|
2
4
|
import * as i0 from "@angular/core";
|
|
3
5
|
export declare class BsCodeSnippetComponent {
|
|
6
|
+
constructor();
|
|
4
7
|
offcanvasVisible: boolean;
|
|
5
8
|
codeToCopy: string;
|
|
6
9
|
languages: string[] | null;
|
|
7
10
|
lineNumbers: boolean;
|
|
8
11
|
copiedTemplate: TemplateRef<any>;
|
|
12
|
+
detectedLanguage: EventEmitter<string>;
|
|
13
|
+
language$: BehaviorSubject<string>;
|
|
9
14
|
copiedHtml(): void;
|
|
15
|
+
onHighlighted(result: HighlightAutoResult): void;
|
|
10
16
|
static ɵfac: i0.ɵɵFactoryDeclaration<BsCodeSnippetComponent, never>;
|
|
11
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<BsCodeSnippetComponent, "bs-code-snippet", never, { "codeToCopy": { "alias": "codeToCopy"; "required": false; }; "languages": { "alias": "languages"; "required": false; }; "lineNumbers": { "alias": "lineNumbers"; "required": false; }; }, {}, never, never, true, never>;
|
|
17
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<BsCodeSnippetComponent, "bs-code-snippet", never, { "codeToCopy": { "alias": "codeToCopy"; "required": false; }; "languages": { "alias": "languages"; "required": false; }; "lineNumbers": { "alias": "lineNumbers"; "required": false; }; }, { "detectedLanguage": "detectedLanguage"; }, never, never, true, never>;
|
|
12
18
|
}
|
|
@@ -1,7 +1,10 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { AsyncPipe } from '@angular/common';
|
|
2
|
+
import { Component, EventEmitter, Input, Output, TemplateRef, ViewChild } from '@angular/core';
|
|
3
|
+
import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
|
2
4
|
import { BsCopyDirective } from '@mintplayer/ng-bootstrap/copy';
|
|
3
5
|
import { BsOffcanvasModule } from '@mintplayer/ng-bootstrap/offcanvas';
|
|
4
6
|
import { HighlightModule } from 'ngx-highlightjs';
|
|
7
|
+
import { BehaviorSubject } from 'rxjs';
|
|
5
8
|
import * as i0 from "@angular/core";
|
|
6
9
|
import * as i1 from "@mintplayer/ng-bootstrap/offcanvas";
|
|
7
10
|
import * as i2 from "ngx-highlightjs";
|
|
@@ -11,18 +14,25 @@ export class BsCodeSnippetComponent {
|
|
|
11
14
|
this.codeToCopy = '';
|
|
12
15
|
this.languages = null;
|
|
13
16
|
this.lineNumbers = false;
|
|
17
|
+
this.detectedLanguage = new EventEmitter();
|
|
18
|
+
this.language$ = new BehaviorSubject('code');
|
|
19
|
+
this.language$.pipe(takeUntilDestroyed())
|
|
20
|
+
.subscribe((language) => this.detectedLanguage.emit(language));
|
|
14
21
|
}
|
|
15
22
|
copiedHtml() {
|
|
16
23
|
this.offcanvasVisible = true;
|
|
17
24
|
setTimeout(() => this.offcanvasVisible = false, 3000);
|
|
18
25
|
}
|
|
26
|
+
onHighlighted(result) {
|
|
27
|
+
this.language$.next(result.language ?? 'code');
|
|
28
|
+
}
|
|
19
29
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BsCodeSnippetComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
20
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.1", type: BsCodeSnippetComponent, isStandalone: true, selector: "bs-code-snippet", inputs: { codeToCopy: "codeToCopy", languages: "languages", lineNumbers: "lineNumbers" }, viewQueries: [{ propertyName: "copiedTemplate", first: true, predicate: ["copiedTemplate"], descendants: true }], ngImport: i0, template: "<div class=\"position-relative\">\n <button #copyBtn [bsCopy]=\"codeToCopy\" (bsCopied)=\"copiedHtml()\" class=\"btn btn-link rounded-0 text-light position-absolute copy-btn\">\n Copy
|
|
30
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.1", type: BsCodeSnippetComponent, isStandalone: true, selector: "bs-code-snippet", inputs: { codeToCopy: "codeToCopy", languages: "languages", lineNumbers: "lineNumbers" }, outputs: { detectedLanguage: "detectedLanguage" }, viewQueries: [{ propertyName: "copiedTemplate", first: true, predicate: ["copiedTemplate"], descendants: true }], ngImport: i0, template: "<div class=\"position-relative\">\n <button #copyBtn [bsCopy]=\"codeToCopy\" (bsCopied)=\"copiedHtml()\" class=\"btn btn-link rounded-0 text-light position-absolute copy-btn\">\n Copy {{ language$ | async }}\n </button>\n <pre class=\"white-space-normal\">\n <code class=\"d-block white-space-pre\" [highlight]=\"codeToCopy\" [lineNumbers]=\"lineNumbers\" [languages]=\"languages ?? undefined!\" (highlighted)=\"onHighlighted($event)\"></code>\n </pre>\n <bs-offcanvas [(isVisible)]=\"offcanvasVisible\" [position]=\"'bottom'\">\n <div *bsOffcanvasContent class=\"p-3 bg-dark text-light\">Copied!</div>\n </bs-offcanvas>\n</div>", styles: [".copy-btn{right:0}\n"], dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "directive", type: BsCopyDirective, selector: "[bsCopy]", inputs: ["bsCopy"], outputs: ["bsCopied"] }, { kind: "ngmodule", type: BsOffcanvasModule }, { kind: "directive", type: i1.BsOffcanvasContentDirective, selector: "[bsOffcanvasContent]" }, { kind: "component", type: i1.BsOffcanvasHostComponent, selector: "bs-offcanvas", inputs: ["isVisible", "position", "size", "hasBackdrop"], outputs: ["backdropClick", "isVisibleChange"] }, { kind: "ngmodule", type: HighlightModule }, { kind: "directive", type: i2.Highlight, selector: "[highlight]", inputs: ["highlight", "languages", "lineNumbers"], outputs: ["highlighted"] }] }); }
|
|
21
31
|
}
|
|
22
32
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BsCodeSnippetComponent, decorators: [{
|
|
23
33
|
type: Component,
|
|
24
|
-
args: [{ selector: 'bs-code-snippet', standalone: true, imports: [BsCopyDirective, BsOffcanvasModule, HighlightModule], template: "<div class=\"position-relative\">\n <button #copyBtn [bsCopy]=\"codeToCopy\" (bsCopied)=\"copiedHtml()\" class=\"btn btn-link rounded-0 text-light position-absolute copy-btn\">\n Copy
|
|
25
|
-
}], propDecorators: { codeToCopy: [{
|
|
34
|
+
args: [{ selector: 'bs-code-snippet', standalone: true, imports: [AsyncPipe, BsCopyDirective, BsOffcanvasModule, HighlightModule], template: "<div class=\"position-relative\">\n <button #copyBtn [bsCopy]=\"codeToCopy\" (bsCopied)=\"copiedHtml()\" class=\"btn btn-link rounded-0 text-light position-absolute copy-btn\">\n Copy {{ language$ | async }}\n </button>\n <pre class=\"white-space-normal\">\n <code class=\"d-block white-space-pre\" [highlight]=\"codeToCopy\" [lineNumbers]=\"lineNumbers\" [languages]=\"languages ?? undefined!\" (highlighted)=\"onHighlighted($event)\"></code>\n </pre>\n <bs-offcanvas [(isVisible)]=\"offcanvasVisible\" [position]=\"'bottom'\">\n <div *bsOffcanvasContent class=\"p-3 bg-dark text-light\">Copied!</div>\n </bs-offcanvas>\n</div>", styles: [".copy-btn{right:0}\n"] }]
|
|
35
|
+
}], ctorParameters: () => [], propDecorators: { codeToCopy: [{
|
|
26
36
|
type: Input
|
|
27
37
|
}], languages: [{
|
|
28
38
|
type: Input
|
|
@@ -31,5 +41,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImpor
|
|
|
31
41
|
}], copiedTemplate: [{
|
|
32
42
|
type: ViewChild,
|
|
33
43
|
args: ['copiedTemplate']
|
|
44
|
+
}], detectedLanguage: [{
|
|
45
|
+
type: Output
|
|
34
46
|
}] } });
|
|
35
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
47
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kZS1zbmlwcGV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbWludHBsYXllci1uZy1ib290c3RyYXAvY29kZS1zbmlwcGV0L3NyYy9jb2RlLXNuaXBwZXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9taW50cGxheWVyLW5nLWJvb3RzdHJhcC9jb2RlLXNuaXBwZXQvc3JjL2NvZGUtc25pcHBldC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDNUMsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9GLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNoRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUN2RSxPQUFPLEVBQXVCLGVBQWUsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7QUFTdkMsTUFBTSxPQUFPLHNCQUFzQjtJQUVqQztRQUtBLHFCQUFnQixHQUFHLEtBQUssQ0FBQztRQUNULGVBQVUsR0FBRyxFQUFFLENBQUM7UUFDaEIsY0FBUyxHQUFvQixJQUFJLENBQUM7UUFDbEMsZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFFbkIscUJBQWdCLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUUvRCxjQUFTLEdBQUcsSUFBSSxlQUFlLENBQVMsTUFBTSxDQUFDLENBQUM7UUFYOUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQzthQUN0QyxTQUFTLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztJQUNuRSxDQUFDO0lBV0QsVUFBVTtRQUNSLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUM7UUFDN0IsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDeEQsQ0FBQztJQUVELGFBQWEsQ0FBQyxNQUEyQjtRQUN2QyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxJQUFJLE1BQU0sQ0FBQyxDQUFDO0lBQ2pELENBQUM7OEdBdkJVLHNCQUFzQjtrR0FBdEIsc0JBQXNCLDBVQ2ZuQyw2cEJBVU0seUVER00sU0FBUyw4Q0FBRSxlQUFlLCtGQUFFLGlCQUFpQiwwVEFBRSxlQUFlOzsyRkFFN0Qsc0JBQXNCO2tCQVBsQyxTQUFTOytCQUNFLGlCQUFpQixjQUdmLElBQUksV0FDUCxDQUFDLFNBQVMsRUFBRSxlQUFlLEVBQUUsaUJBQWlCLEVBQUUsZUFBZSxDQUFDO3dEQVV6RCxVQUFVO3NCQUF6QixLQUFLO2dCQUNVLFNBQVM7c0JBQXhCLEtBQUs7Z0JBQ1UsV0FBVztzQkFBMUIsS0FBSztnQkFDdUIsY0FBYztzQkFBMUMsU0FBUzt1QkFBQyxnQkFBZ0I7Z0JBQ1YsZ0JBQWdCO3NCQUFoQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXN5bmNQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0LCBUZW1wbGF0ZVJlZiwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB0YWtlVW50aWxEZXN0cm95ZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBCc0NvcHlEaXJlY3RpdmUgfSBmcm9tICdAbWludHBsYXllci9uZy1ib290c3RyYXAvY29weSc7XG5pbXBvcnQgeyBCc09mZmNhbnZhc01vZHVsZSB9IGZyb20gJ0BtaW50cGxheWVyL25nLWJvb3RzdHJhcC9vZmZjYW52YXMnO1xuaW1wb3J0IHsgSGlnaGxpZ2h0QXV0b1Jlc3VsdCwgSGlnaGxpZ2h0TW9kdWxlIH0gZnJvbSAnbmd4LWhpZ2hsaWdodGpzJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdicy1jb2RlLXNuaXBwZXQnLFxuICB0ZW1wbGF0ZVVybDogJy4vY29kZS1zbmlwcGV0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY29kZS1zbmlwcGV0LmNvbXBvbmVudC5zY3NzJ10sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtBc3luY1BpcGUsIEJzQ29weURpcmVjdGl2ZSwgQnNPZmZjYW52YXNNb2R1bGUsIEhpZ2hsaWdodE1vZHVsZV1cbn0pXG5leHBvcnQgY2xhc3MgQnNDb2RlU25pcHBldENvbXBvbmVudCB7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy5sYW5ndWFnZSQucGlwZSh0YWtlVW50aWxEZXN0cm95ZWQoKSlcbiAgICAgIC5zdWJzY3JpYmUoKGxhbmd1YWdlKSA9PiB0aGlzLmRldGVjdGVkTGFuZ3VhZ2UuZW1pdChsYW5ndWFnZSkpO1xuICB9XG5cbiAgb2ZmY2FudmFzVmlzaWJsZSA9IGZhbHNlO1xuICBASW5wdXQoKSBwdWJsaWMgY29kZVRvQ29weSA9ICcnO1xuICBASW5wdXQoKSBwdWJsaWMgbGFuZ3VhZ2VzOiBzdHJpbmdbXSB8IG51bGwgPSBudWxsO1xuICBASW5wdXQoKSBwdWJsaWMgbGluZU51bWJlcnMgPSBmYWxzZTtcbiAgQFZpZXdDaGlsZCgnY29waWVkVGVtcGxhdGUnKSBjb3BpZWRUZW1wbGF0ZSE6IFRlbXBsYXRlUmVmPGFueT47XG4gIEBPdXRwdXQoKSBwdWJsaWMgZGV0ZWN0ZWRMYW5ndWFnZSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuXG4gIGxhbmd1YWdlJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8c3RyaW5nPignY29kZScpO1xuXG4gIGNvcGllZEh0bWwoKSB7XG4gICAgdGhpcy5vZmZjYW52YXNWaXNpYmxlID0gdHJ1ZTtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMub2ZmY2FudmFzVmlzaWJsZSA9IGZhbHNlLCAzMDAwKTtcbiAgfVxuXG4gIG9uSGlnaGxpZ2h0ZWQocmVzdWx0OiBIaWdobGlnaHRBdXRvUmVzdWx0KSB7XG4gICAgdGhpcy5sYW5ndWFnZSQubmV4dChyZXN1bHQubGFuZ3VhZ2UgPz8gJ2NvZGUnKTtcbiAgfVxuXG59XG4iLCI8ZGl2IGNsYXNzPVwicG9zaXRpb24tcmVsYXRpdmVcIj5cbiAgICA8YnV0dG9uICNjb3B5QnRuIFtic0NvcHldPVwiY29kZVRvQ29weVwiIChic0NvcGllZCk9XCJjb3BpZWRIdG1sKClcIiBjbGFzcz1cImJ0biBidG4tbGluayByb3VuZGVkLTAgdGV4dC1saWdodCBwb3NpdGlvbi1hYnNvbHV0ZSBjb3B5LWJ0blwiPlxuICAgICAgICBDb3B5IHt7IGxhbmd1YWdlJCB8IGFzeW5jIH19XG4gICAgPC9idXR0b24+XG4gICAgPHByZSBjbGFzcz1cIndoaXRlLXNwYWNlLW5vcm1hbFwiPlxuICAgICAgICA8Y29kZSBjbGFzcz1cImQtYmxvY2sgd2hpdGUtc3BhY2UtcHJlXCIgW2hpZ2hsaWdodF09XCJjb2RlVG9Db3B5XCIgW2xpbmVOdW1iZXJzXT1cImxpbmVOdW1iZXJzXCIgW2xhbmd1YWdlc109XCJsYW5ndWFnZXMgPz8gdW5kZWZpbmVkIVwiIChoaWdobGlnaHRlZCk9XCJvbkhpZ2hsaWdodGVkKCRldmVudClcIj48L2NvZGU+XG4gICAgPC9wcmU+XG4gICAgPGJzLW9mZmNhbnZhcyBbKGlzVmlzaWJsZSldPVwib2ZmY2FudmFzVmlzaWJsZVwiIFtwb3NpdGlvbl09XCInYm90dG9tJ1wiPlxuICAgICAgICA8ZGl2ICpic09mZmNhbnZhc0NvbnRlbnQgY2xhc3M9XCJwLTMgYmctZGFyayB0ZXh0LWxpZ2h0XCI+Q29waWVkITwvZGl2PlxuICAgIDwvYnMtb2ZmY2FudmFzPlxuPC9kaXY+Il19
|
|
@@ -1,10 +1,13 @@
|
|
|
1
|
+
import { AsyncPipe } from '@angular/common';
|
|
1
2
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { Component, Input, ViewChild } from '@angular/core';
|
|
3
|
+
import { EventEmitter, Component, Input, ViewChild, Output } from '@angular/core';
|
|
4
|
+
import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
|
3
5
|
import { BsCopyDirective } from '@mintplayer/ng-bootstrap/copy';
|
|
4
6
|
import * as i1 from '@mintplayer/ng-bootstrap/offcanvas';
|
|
5
7
|
import { BsOffcanvasModule } from '@mintplayer/ng-bootstrap/offcanvas';
|
|
6
8
|
import * as i2 from 'ngx-highlightjs';
|
|
7
9
|
import { HighlightModule } from 'ngx-highlightjs';
|
|
10
|
+
import { BehaviorSubject } from 'rxjs';
|
|
8
11
|
|
|
9
12
|
class BsCodeSnippetComponent {
|
|
10
13
|
constructor() {
|
|
@@ -12,18 +15,25 @@ class BsCodeSnippetComponent {
|
|
|
12
15
|
this.codeToCopy = '';
|
|
13
16
|
this.languages = null;
|
|
14
17
|
this.lineNumbers = false;
|
|
18
|
+
this.detectedLanguage = new EventEmitter();
|
|
19
|
+
this.language$ = new BehaviorSubject('code');
|
|
20
|
+
this.language$.pipe(takeUntilDestroyed())
|
|
21
|
+
.subscribe((language) => this.detectedLanguage.emit(language));
|
|
15
22
|
}
|
|
16
23
|
copiedHtml() {
|
|
17
24
|
this.offcanvasVisible = true;
|
|
18
25
|
setTimeout(() => this.offcanvasVisible = false, 3000);
|
|
19
26
|
}
|
|
27
|
+
onHighlighted(result) {
|
|
28
|
+
this.language$.next(result.language ?? 'code');
|
|
29
|
+
}
|
|
20
30
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BsCodeSnippetComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
21
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.1", type: BsCodeSnippetComponent, isStandalone: true, selector: "bs-code-snippet", inputs: { codeToCopy: "codeToCopy", languages: "languages", lineNumbers: "lineNumbers" }, viewQueries: [{ propertyName: "copiedTemplate", first: true, predicate: ["copiedTemplate"], descendants: true }], ngImport: i0, template: "<div class=\"position-relative\">\n <button #copyBtn [bsCopy]=\"codeToCopy\" (bsCopied)=\"copiedHtml()\" class=\"btn btn-link rounded-0 text-light position-absolute copy-btn\">\n Copy
|
|
31
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.1", type: BsCodeSnippetComponent, isStandalone: true, selector: "bs-code-snippet", inputs: { codeToCopy: "codeToCopy", languages: "languages", lineNumbers: "lineNumbers" }, outputs: { detectedLanguage: "detectedLanguage" }, viewQueries: [{ propertyName: "copiedTemplate", first: true, predicate: ["copiedTemplate"], descendants: true }], ngImport: i0, template: "<div class=\"position-relative\">\n <button #copyBtn [bsCopy]=\"codeToCopy\" (bsCopied)=\"copiedHtml()\" class=\"btn btn-link rounded-0 text-light position-absolute copy-btn\">\n Copy {{ language$ | async }}\n </button>\n <pre class=\"white-space-normal\">\n <code class=\"d-block white-space-pre\" [highlight]=\"codeToCopy\" [lineNumbers]=\"lineNumbers\" [languages]=\"languages ?? undefined!\" (highlighted)=\"onHighlighted($event)\"></code>\n </pre>\n <bs-offcanvas [(isVisible)]=\"offcanvasVisible\" [position]=\"'bottom'\">\n <div *bsOffcanvasContent class=\"p-3 bg-dark text-light\">Copied!</div>\n </bs-offcanvas>\n</div>", styles: [".copy-btn{right:0}\n"], dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "directive", type: BsCopyDirective, selector: "[bsCopy]", inputs: ["bsCopy"], outputs: ["bsCopied"] }, { kind: "ngmodule", type: BsOffcanvasModule }, { kind: "directive", type: i1.BsOffcanvasContentDirective, selector: "[bsOffcanvasContent]" }, { kind: "component", type: i1.BsOffcanvasHostComponent, selector: "bs-offcanvas", inputs: ["isVisible", "position", "size", "hasBackdrop"], outputs: ["backdropClick", "isVisibleChange"] }, { kind: "ngmodule", type: HighlightModule }, { kind: "directive", type: i2.Highlight, selector: "[highlight]", inputs: ["highlight", "languages", "lineNumbers"], outputs: ["highlighted"] }] }); }
|
|
22
32
|
}
|
|
23
33
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BsCodeSnippetComponent, decorators: [{
|
|
24
34
|
type: Component,
|
|
25
|
-
args: [{ selector: 'bs-code-snippet', standalone: true, imports: [BsCopyDirective, BsOffcanvasModule, HighlightModule], template: "<div class=\"position-relative\">\n <button #copyBtn [bsCopy]=\"codeToCopy\" (bsCopied)=\"copiedHtml()\" class=\"btn btn-link rounded-0 text-light position-absolute copy-btn\">\n Copy
|
|
26
|
-
}], propDecorators: { codeToCopy: [{
|
|
35
|
+
args: [{ selector: 'bs-code-snippet', standalone: true, imports: [AsyncPipe, BsCopyDirective, BsOffcanvasModule, HighlightModule], template: "<div class=\"position-relative\">\n <button #copyBtn [bsCopy]=\"codeToCopy\" (bsCopied)=\"copiedHtml()\" class=\"btn btn-link rounded-0 text-light position-absolute copy-btn\">\n Copy {{ language$ | async }}\n </button>\n <pre class=\"white-space-normal\">\n <code class=\"d-block white-space-pre\" [highlight]=\"codeToCopy\" [lineNumbers]=\"lineNumbers\" [languages]=\"languages ?? undefined!\" (highlighted)=\"onHighlighted($event)\"></code>\n </pre>\n <bs-offcanvas [(isVisible)]=\"offcanvasVisible\" [position]=\"'bottom'\">\n <div *bsOffcanvasContent class=\"p-3 bg-dark text-light\">Copied!</div>\n </bs-offcanvas>\n</div>", styles: [".copy-btn{right:0}\n"] }]
|
|
36
|
+
}], ctorParameters: () => [], propDecorators: { codeToCopy: [{
|
|
27
37
|
type: Input
|
|
28
38
|
}], languages: [{
|
|
29
39
|
type: Input
|
|
@@ -32,6 +42,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImpor
|
|
|
32
42
|
}], copiedTemplate: [{
|
|
33
43
|
type: ViewChild,
|
|
34
44
|
args: ['copiedTemplate']
|
|
45
|
+
}], detectedLanguage: [{
|
|
46
|
+
type: Output
|
|
35
47
|
}] } });
|
|
36
48
|
|
|
37
49
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mintplayer-ng-bootstrap-code-snippet.mjs","sources":["../../../../libs/mintplayer-ng-bootstrap/code-snippet/src/code-snippet.component.ts","../../../../libs/mintplayer-ng-bootstrap/code-snippet/src/code-snippet.component.html","../../../../libs/mintplayer-ng-bootstrap/code-snippet/mintplayer-ng-bootstrap-code-snippet.ts"],"sourcesContent":["import { Component, Input, TemplateRef, ViewChild } from '@angular/core';\nimport { BsCopyDirective } from '@mintplayer/ng-bootstrap/copy';\nimport { BsOffcanvasModule } from '@mintplayer/ng-bootstrap/offcanvas';\nimport { HighlightModule } from 'ngx-highlightjs';\n\n@Component({\n selector: 'bs-code-snippet',\n templateUrl: './code-snippet.component.html',\n styleUrls: ['./code-snippet.component.scss'],\n standalone: true,\n imports: [BsCopyDirective, BsOffcanvasModule, HighlightModule]\n})\nexport class BsCodeSnippetComponent {\n\n offcanvasVisible = false;\n @Input() public codeToCopy = '';\n @Input() public languages: string[] | null = null;\n @Input() public lineNumbers = false;\n @ViewChild('copiedTemplate') copiedTemplate!: TemplateRef<any>;\n\n copiedHtml() {\n this.offcanvasVisible = true;\n setTimeout(() => this.offcanvasVisible = false, 3000);\n }\n\n}\n","<div class=\"position-relative\">\n <button #copyBtn [bsCopy]=\"codeToCopy\" (bsCopied)=\"copiedHtml()\" class=\"btn btn-link rounded-0 text-light position-absolute copy-btn\">\n Copy
|
|
1
|
+
{"version":3,"file":"mintplayer-ng-bootstrap-code-snippet.mjs","sources":["../../../../libs/mintplayer-ng-bootstrap/code-snippet/src/code-snippet.component.ts","../../../../libs/mintplayer-ng-bootstrap/code-snippet/src/code-snippet.component.html","../../../../libs/mintplayer-ng-bootstrap/code-snippet/mintplayer-ng-bootstrap-code-snippet.ts"],"sourcesContent":["import { AsyncPipe } from '@angular/common';\nimport { Component, EventEmitter, Input, Output, TemplateRef, ViewChild } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { BsCopyDirective } from '@mintplayer/ng-bootstrap/copy';\nimport { BsOffcanvasModule } from '@mintplayer/ng-bootstrap/offcanvas';\nimport { HighlightAutoResult, HighlightModule } from 'ngx-highlightjs';\nimport { BehaviorSubject } from 'rxjs';\n\n@Component({\n selector: 'bs-code-snippet',\n templateUrl: './code-snippet.component.html',\n styleUrls: ['./code-snippet.component.scss'],\n standalone: true,\n imports: [AsyncPipe, BsCopyDirective, BsOffcanvasModule, HighlightModule]\n})\nexport class BsCodeSnippetComponent {\n\n constructor() {\n this.language$.pipe(takeUntilDestroyed())\n .subscribe((language) => this.detectedLanguage.emit(language));\n }\n\n offcanvasVisible = false;\n @Input() public codeToCopy = '';\n @Input() public languages: string[] | null = null;\n @Input() public lineNumbers = false;\n @ViewChild('copiedTemplate') copiedTemplate!: TemplateRef<any>;\n @Output() public detectedLanguage = new EventEmitter<string>();\n\n language$ = new BehaviorSubject<string>('code');\n\n copiedHtml() {\n this.offcanvasVisible = true;\n setTimeout(() => this.offcanvasVisible = false, 3000);\n }\n\n onHighlighted(result: HighlightAutoResult) {\n this.language$.next(result.language ?? 'code');\n }\n\n}\n","<div class=\"position-relative\">\n <button #copyBtn [bsCopy]=\"codeToCopy\" (bsCopied)=\"copiedHtml()\" class=\"btn btn-link rounded-0 text-light position-absolute copy-btn\">\n Copy {{ language$ | async }}\n </button>\n <pre class=\"white-space-normal\">\n <code class=\"d-block white-space-pre\" [highlight]=\"codeToCopy\" [lineNumbers]=\"lineNumbers\" [languages]=\"languages ?? undefined!\" (highlighted)=\"onHighlighted($event)\"></code>\n </pre>\n <bs-offcanvas [(isVisible)]=\"offcanvasVisible\" [position]=\"'bottom'\">\n <div *bsOffcanvasContent class=\"p-3 bg-dark text-light\">Copied!</div>\n </bs-offcanvas>\n</div>","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|