@bootkit/ng0 0.0.0-alpha.5 → 0.0.0-alpha.51
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/common/index.d.ts +288 -28
- package/components/accordion/index.d.ts +20 -10
- package/components/button/index.d.ts +7 -10
- package/components/card/index.d.ts +2 -6
- package/components/code/index.d.ts +2 -4
- package/components/collapse/index.d.ts +4 -41
- package/components/confirmation/index.d.ts +14 -16
- package/components/dropdown/index.d.ts +156 -0
- package/components/form-field/index.d.ts +24 -41
- package/components/list/index.d.ts +260 -0
- package/components/modal/index.d.ts +33 -11
- package/components/nav/index.d.ts +34 -32
- package/components/offcanvas/index.d.ts +13 -5
- package/components/pagination/index.d.ts +39 -13
- package/components/popover/index.d.ts +6 -6
- package/components/select/index.d.ts +160 -0
- package/components/sidenav/index.d.ts +122 -0
- package/components/stepper/index.d.ts +3 -4
- package/components/table/index.d.ts +205 -72
- package/components/toast/index.d.ts +14 -8
- package/components/tooltip/index.d.ts +36 -22
- package/components/vertical-menu/index.d.ts +79 -42
- package/data/index.d.ts +98 -38
- package/date/index.d.ts +34 -0
- package/fesm2022/bootkit-ng0-common.mjs +289 -12
- package/fesm2022/bootkit-ng0-common.mjs.map +1 -1
- package/fesm2022/bootkit-ng0-components-accordion.mjs +38 -33
- package/fesm2022/bootkit-ng0-components-accordion.mjs.map +1 -1
- package/fesm2022/bootkit-ng0-components-button.mjs +21 -29
- package/fesm2022/bootkit-ng0-components-button.mjs.map +1 -1
- package/fesm2022/bootkit-ng0-components-card.mjs +18 -26
- package/fesm2022/bootkit-ng0-components-card.mjs.map +1 -1
- package/fesm2022/bootkit-ng0-components-code.mjs +16 -20
- package/fesm2022/bootkit-ng0-components-code.mjs.map +1 -1
- package/fesm2022/bootkit-ng0-components-collapse.mjs +20 -132
- package/fesm2022/bootkit-ng0-components-collapse.mjs.map +1 -1
- package/fesm2022/bootkit-ng0-components-confirmation.mjs +24 -34
- package/fesm2022/bootkit-ng0-components-confirmation.mjs.map +1 -1
- package/fesm2022/bootkit-ng0-components-dropdown.mjs +308 -0
- package/fesm2022/bootkit-ng0-components-dropdown.mjs.map +1 -0
- package/fesm2022/bootkit-ng0-components-form-field.mjs +62 -84
- package/fesm2022/bootkit-ng0-components-form-field.mjs.map +1 -1
- package/fesm2022/bootkit-ng0-components-list.mjs +564 -0
- package/fesm2022/bootkit-ng0-components-list.mjs.map +1 -0
- package/fesm2022/bootkit-ng0-components-modal.mjs +48 -29
- package/fesm2022/bootkit-ng0-components-modal.mjs.map +1 -1
- package/fesm2022/bootkit-ng0-components-nav.mjs +60 -68
- package/fesm2022/bootkit-ng0-components-nav.mjs.map +1 -1
- package/fesm2022/bootkit-ng0-components-offcanvas.mjs +20 -13
- package/fesm2022/bootkit-ng0-components-offcanvas.mjs.map +1 -1
- package/fesm2022/bootkit-ng0-components-overlay.mjs.map +1 -1
- package/fesm2022/bootkit-ng0-components-pagination.mjs +61 -26
- package/fesm2022/bootkit-ng0-components-pagination.mjs.map +1 -1
- package/fesm2022/bootkit-ng0-components-popover.mjs +12 -12
- package/fesm2022/bootkit-ng0-components-popover.mjs.map +1 -1
- package/fesm2022/bootkit-ng0-components-select.mjs +448 -0
- package/fesm2022/bootkit-ng0-components-select.mjs.map +1 -0
- package/fesm2022/bootkit-ng0-components-sidenav.mjs +296 -0
- package/fesm2022/bootkit-ng0-components-sidenav.mjs.map +1 -0
- package/fesm2022/bootkit-ng0-components-stepper.mjs +15 -42
- package/fesm2022/bootkit-ng0-components-stepper.mjs.map +1 -1
- package/fesm2022/bootkit-ng0-components-table.mjs +323 -165
- package/fesm2022/bootkit-ng0-components-table.mjs.map +1 -1
- package/fesm2022/bootkit-ng0-components-toast.mjs +62 -84
- package/fesm2022/bootkit-ng0-components-toast.mjs.map +1 -1
- package/fesm2022/bootkit-ng0-components-tooltip.mjs +87 -74
- package/fesm2022/bootkit-ng0-components-tooltip.mjs.map +1 -1
- package/fesm2022/bootkit-ng0-components-vertical-menu.mjs +171 -114
- package/fesm2022/bootkit-ng0-components-vertical-menu.mjs.map +1 -1
- package/fesm2022/bootkit-ng0-data.mjs +152 -39
- package/fesm2022/bootkit-ng0-data.mjs.map +1 -1
- package/fesm2022/bootkit-ng0-date.mjs +50 -0
- package/fesm2022/bootkit-ng0-date.mjs.map +1 -0
- package/fesm2022/bootkit-ng0-file.mjs.map +1 -1
- package/fesm2022/bootkit-ng0-form.mjs +575 -264
- package/fesm2022/bootkit-ng0-form.mjs.map +1 -1
- package/fesm2022/bootkit-ng0-http.mjs +61 -34
- package/fesm2022/bootkit-ng0-http.mjs.map +1 -1
- package/fesm2022/bootkit-ng0-layouts-layout1.mjs +317 -0
- package/fesm2022/bootkit-ng0-layouts-layout1.mjs.map +1 -0
- package/fesm2022/bootkit-ng0-localization-locales.mjs +103 -0
- package/fesm2022/bootkit-ng0-localization-locales.mjs.map +1 -0
- package/fesm2022/bootkit-ng0-localization.mjs +431 -105
- package/fesm2022/bootkit-ng0-localization.mjs.map +1 -1
- package/fesm2022/bootkit-ng0-platform-browser.mjs +179 -0
- package/fesm2022/bootkit-ng0-platform-browser.mjs.map +1 -0
- package/fesm2022/bootkit-ng0-routing.mjs +80 -0
- package/fesm2022/bootkit-ng0-routing.mjs.map +1 -0
- package/fesm2022/bootkit-ng0-script.mjs +3 -3
- package/fesm2022/bootkit-ng0-script.mjs.map +1 -1
- package/fesm2022/bootkit-ng0-security.mjs +175 -40
- package/fesm2022/bootkit-ng0-security.mjs.map +1 -1
- package/fesm2022/bootkit-ng0-utils.mjs +122 -0
- package/fesm2022/bootkit-ng0-utils.mjs.map +1 -0
- package/fesm2022/bootkit-ng0.mjs +2 -2
- package/fesm2022/bootkit-ng0.mjs.map +1 -1
- package/form/index.d.ts +153 -56
- package/http/index.d.ts +45 -14
- package/index.d.ts +2 -2
- package/layouts/layout1/index.d.ts +201 -0
- package/localization/index.d.ts +231 -42
- package/localization/locales/index.d.ts +7 -0
- package/package.json +57 -17
- package/platform/browser/index.d.ts +88 -0
- package/routing/index.d.ts +124 -0
- package/security/index.d.ts +76 -11
- package/utils/index.d.ts +63 -0
|
@@ -1,67 +1,72 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { input, model, effect, ChangeDetectionStrategy, Component, ContentChildren, NgModule } from '@angular/core';
|
|
2
|
+
import { inject, ElementRef, Renderer2, input, model, effect, ChangeDetectionStrategy, Component, ContentChildren, NgModule } from '@angular/core';
|
|
3
3
|
import { CollapseComponent } from '@bootkit/ng0/components/collapse';
|
|
4
4
|
|
|
5
5
|
class AccordionItemComponent {
|
|
6
|
-
_element;
|
|
7
|
-
_renderer;
|
|
8
|
-
_accordion;
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
6
|
+
_element = inject(ElementRef);
|
|
7
|
+
_renderer = inject(Renderer2);
|
|
8
|
+
_accordion = inject(AccordionComponent);
|
|
9
|
+
/**
|
|
10
|
+
* The header text of the accordion item.
|
|
11
|
+
*/
|
|
12
|
+
header = input(...(ngDevMode ? [undefined, { debugName: "header" }] : []));
|
|
13
|
+
/**
|
|
14
|
+
* Whether the accordion item is collapsed or expanded.
|
|
15
|
+
*/
|
|
16
|
+
collapsed = model(true, ...(ngDevMode ? [{ debugName: "collapsed" }] : [{}]));
|
|
17
|
+
constructor() {
|
|
15
18
|
this._renderer.addClass(this._element.nativeElement, 'accordion-item');
|
|
16
19
|
effect(() => {
|
|
17
20
|
var collapsed = this.collapsed();
|
|
18
|
-
if (_accordion.mode() == 'single') {
|
|
21
|
+
if (this._accordion.mode() == 'single') {
|
|
19
22
|
if (!collapsed) {
|
|
20
23
|
this._accordion.items.filter(x => x !== this).forEach(x => x.collapsed.update(x => true));
|
|
21
24
|
}
|
|
22
25
|
}
|
|
23
|
-
}
|
|
26
|
+
});
|
|
24
27
|
}
|
|
25
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.
|
|
26
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.
|
|
28
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.11", ngImport: i0, type: AccordionItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
29
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.11", type: AccordionItemComponent, isStandalone: true, selector: "ng0-accordion-item", inputs: { header: { classPropertyName: "header", publicName: "header", isSignal: true, isRequired: false, transformFunction: null }, collapsed: { classPropertyName: "collapsed", publicName: "collapsed", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { collapsed: "collapsedChange" }, exportAs: ["ng0AccordionItem"], ngImport: i0, template: "<h6 class=\"accordion-header\">\n <button class=\"accordion-button\" type=\"button\" [class.collapsed]=\"collapsed()\" (click)=\"collapsed.set(!collapsed())\">\n {{header()}}\n </button>\n</h6>\n\n<ng0-collapse [collapsed]=\"collapsed()\">\n <div class=\"accordion-body\">\n <ng-content></ng-content>\n </div>\n</ng0-collapse>", styles: [":host{display:block}\n"], dependencies: [{ kind: "component", type: CollapseComponent, selector: "ng0-collapse", inputs: ["collapsed"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
27
30
|
}
|
|
28
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.
|
|
31
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.11", ngImport: i0, type: AccordionItemComponent, decorators: [{
|
|
29
32
|
type: Component,
|
|
30
33
|
args: [{ selector: 'ng0-accordion-item', exportAs: 'ng0AccordionItem', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [
|
|
31
|
-
CollapseComponent
|
|
32
|
-
], template: "<h6 class=\"accordion-header\">\
|
|
33
|
-
}], ctorParameters: () => [{ type: i0.
|
|
34
|
+
CollapseComponent,
|
|
35
|
+
], template: "<h6 class=\"accordion-header\">\n <button class=\"accordion-button\" type=\"button\" [class.collapsed]=\"collapsed()\" (click)=\"collapsed.set(!collapsed())\">\n {{header()}}\n </button>\n</h6>\n\n<ng0-collapse [collapsed]=\"collapsed()\">\n <div class=\"accordion-body\">\n <ng-content></ng-content>\n </div>\n</ng0-collapse>", styles: [":host{display:block}\n"] }]
|
|
36
|
+
}], ctorParameters: () => [], propDecorators: { header: [{ type: i0.Input, args: [{ isSignal: true, alias: "header", required: false }] }], collapsed: [{ type: i0.Input, args: [{ isSignal: true, alias: "collapsed", required: false }] }, { type: i0.Output, args: ["collapsedChange"] }] } });
|
|
34
37
|
|
|
35
38
|
class AccordionComponent {
|
|
36
|
-
_element;
|
|
37
|
-
_renderer;
|
|
38
|
-
/**
|
|
39
|
-
|
|
39
|
+
_element = inject(ElementRef);
|
|
40
|
+
_renderer = inject(Renderer2);
|
|
41
|
+
/**
|
|
42
|
+
* The mode of the accordion - 'single' or 'multiple'.
|
|
43
|
+
* 'single' mode allows only one item to be expanded at a time.
|
|
44
|
+
* 'multiple' mode allows multiple items to be expanded simultaneously.
|
|
45
|
+
*/
|
|
46
|
+
mode = input('single', ...(ngDevMode ? [{ debugName: "mode" }] : []));
|
|
40
47
|
items;
|
|
41
|
-
constructor(
|
|
42
|
-
this._element = _element;
|
|
43
|
-
this._renderer = _renderer;
|
|
48
|
+
constructor() {
|
|
44
49
|
this._renderer.addClass(this._element.nativeElement, 'accordion');
|
|
45
50
|
}
|
|
46
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.
|
|
47
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.
|
|
51
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.11", ngImport: i0, type: AccordionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
52
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.11", type: AccordionComponent, isStandalone: true, selector: "ng0-accordion", inputs: { mode: { classPropertyName: "mode", publicName: "mode", isSignal: true, isRequired: false, transformFunction: null } }, queries: [{ propertyName: "items", predicate: AccordionItemComponent }], exportAs: ["ng0Accordion"], ngImport: i0, template: "<ng-content></ng-content>", styles: [":host{display:block}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
48
53
|
}
|
|
49
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.
|
|
54
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.11", ngImport: i0, type: AccordionComponent, decorators: [{
|
|
50
55
|
type: Component,
|
|
51
56
|
args: [{ selector: 'ng0-accordion', exportAs: 'ng0Accordion', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-content></ng-content>", styles: [":host{display:block}\n"] }]
|
|
52
|
-
}], ctorParameters: () => [{ type: i0.
|
|
57
|
+
}], ctorParameters: () => [], propDecorators: { mode: [{ type: i0.Input, args: [{ isSignal: true, alias: "mode", required: false }] }], items: [{
|
|
53
58
|
type: ContentChildren,
|
|
54
59
|
args: [AccordionItemComponent]
|
|
55
60
|
}] } });
|
|
56
61
|
|
|
57
62
|
class AccordionModule {
|
|
58
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.
|
|
59
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.
|
|
63
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.11", ngImport: i0, type: AccordionModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
64
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.11", ngImport: i0, type: AccordionModule, imports: [AccordionComponent,
|
|
60
65
|
AccordionItemComponent], exports: [AccordionComponent,
|
|
61
66
|
AccordionItemComponent] });
|
|
62
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.
|
|
67
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.11", ngImport: i0, type: AccordionModule, imports: [AccordionItemComponent] });
|
|
63
68
|
}
|
|
64
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.
|
|
69
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.11", ngImport: i0, type: AccordionModule, decorators: [{
|
|
65
70
|
type: NgModule,
|
|
66
71
|
args: [{
|
|
67
72
|
imports: [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bootkit-ng0-components-accordion.mjs","sources":["../../../projects/ng0/components/accordion/accordion-item.component.ts","../../../projects/ng0/components/accordion/accordion-item.component.html","../../../projects/ng0/components/accordion/accordion.component.ts","../../../projects/ng0/components/accordion/accordion.component.html","../../../projects/ng0/components/accordion/accordion.module.ts","../../../projects/ng0/components/accordion/bootkit-ng0-components-accordion.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, effect, ElementRef, input, model, Renderer2 } from '@angular/core';\
|
|
1
|
+
{"version":3,"file":"bootkit-ng0-components-accordion.mjs","sources":["../../../projects/ng0/components/accordion/accordion-item.component.ts","../../../projects/ng0/components/accordion/accordion-item.component.html","../../../projects/ng0/components/accordion/accordion.component.ts","../../../projects/ng0/components/accordion/accordion.component.html","../../../projects/ng0/components/accordion/accordion.module.ts","../../../projects/ng0/components/accordion/bootkit-ng0-components-accordion.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, effect, ElementRef, inject, input, model, Renderer2 } from '@angular/core';\nimport { CollapseComponent } from '@bootkit/ng0/components/collapse';\nimport { AccordionComponent } from './accordion.component';\n\n@Component({\n selector: 'ng0-accordion-item',\n exportAs: 'ng0AccordionItem',\n templateUrl: './accordion-item.component.html',\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n styles: `:host {display: block;}`,\n imports: [\n CollapseComponent,\n ]\n})\nexport class AccordionItemComponent {\n private readonly _element = inject(ElementRef);\n private readonly _renderer = inject(Renderer2);\n private readonly _accordion = inject(AccordionComponent);\n\n /**\n * The header text of the accordion item.\n */\n public readonly header = input<string>();\n\n /**\n * Whether the accordion item is collapsed or expanded.\n */\n public readonly collapsed = model(true, {});\n\n constructor() {\n this._renderer.addClass(this._element.nativeElement, 'accordion-item');\n\n effect(() => {\n var collapsed = this.collapsed();\n if (this._accordion.mode() == 'single') {\n if (!collapsed) {\n this._accordion.items.filter(x => x !== this).forEach(x => x.collapsed.update(x => true));\n }\n }\n })\n }\n}\n","<h6 class=\"accordion-header\">\n <button class=\"accordion-button\" type=\"button\" [class.collapsed]=\"collapsed()\" (click)=\"collapsed.set(!collapsed())\">\n {{header()}}\n </button>\n</h6>\n\n<ng0-collapse [collapsed]=\"collapsed()\">\n <div class=\"accordion-body\">\n <ng-content></ng-content>\n </div>\n</ng0-collapse>","import { ChangeDetectionStrategy, Component, ContentChildren, ElementRef, inject, input, QueryList, Renderer2 } from '@angular/core';\nimport { AccordionItemComponent } from './accordion-item.component';\n\n@Component({\n selector: 'ng0-accordion',\n exportAs: 'ng0Accordion',\n templateUrl: './accordion.component.html',\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n styles: `:host {display: block;}`\n})\nexport class AccordionComponent {\n private _element = inject(ElementRef);\n private _renderer = inject(Renderer2);\n\n /**\n * The mode of the accordion - 'single' or 'multiple'.\n * 'single' mode allows only one item to be expanded at a time.\n * 'multiple' mode allows multiple items to be expanded simultaneously.\n */\n public readonly mode = input<'single' | 'multiple'>('single');\n\n @ContentChildren(AccordionItemComponent)\n public readonly items!: QueryList<AccordionItemComponent>;\n\n constructor() {\n this._renderer.addClass(this._element.nativeElement, 'accordion');\n }\n}\n","<ng-content></ng-content>","import { NgModule } from '@angular/core';\nimport { AccordionComponent } from './accordion.component';\nimport { AccordionItemComponent } from './accordion-item.component';\n\n@NgModule({\n imports: [\n AccordionComponent,\n AccordionItemComponent,\n ],\n exports: [\n AccordionComponent,\n AccordionItemComponent,\n ]\n})\nexport class AccordionModule {\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -1,42 +1,36 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { input, model, booleanAttribute, Directive, NgModule } from '@angular/core';
|
|
2
|
+
import { inject, ElementRef, Renderer2, DestroyRef, input, model, booleanAttribute, Directive, NgModule } from '@angular/core';
|
|
3
3
|
import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
|
4
|
-
import
|
|
4
|
+
import { HttpService } from '@bootkit/ng0/http';
|
|
5
5
|
|
|
6
6
|
class ButtonDirective {
|
|
7
|
-
_element;
|
|
8
|
-
_renderer;
|
|
9
|
-
_http;
|
|
10
|
-
_destroyRef;
|
|
11
7
|
_loadingElement;
|
|
8
|
+
_element = inject(ElementRef);
|
|
9
|
+
_renderer = inject(Renderer2);
|
|
10
|
+
_http = inject(HttpService);
|
|
11
|
+
_destroyRef = inject(DestroyRef);
|
|
12
12
|
/**
|
|
13
13
|
* The IDs of the HTTP requests that this button listens to.
|
|
14
14
|
* If one of these requests is in progress, it will show a loading indicator or will be disabled based on 'showLoading' and 'disableOnLoading' properties.
|
|
15
15
|
*/
|
|
16
|
-
request = input(undefined);
|
|
16
|
+
request = input(undefined, ...(ngDevMode ? [{ debugName: "request" }] : []));
|
|
17
17
|
/**
|
|
18
18
|
* Whether the button is disabled or not.
|
|
19
19
|
*/
|
|
20
|
-
disabled = model(false);
|
|
20
|
+
disabled = model(false, ...(ngDevMode ? [{ debugName: "disabled" }] : []));
|
|
21
21
|
/**
|
|
22
22
|
* Whether to wait for the HTTP response before enabling the button again.
|
|
23
23
|
* If true, the button will remain disabled until the HTTP request completes.
|
|
24
24
|
* This is useful for preventing multiple clicks while waiting for a response.
|
|
25
25
|
* Default is true.
|
|
26
26
|
*/
|
|
27
|
-
disableDuringRequest = input(true, { transform: booleanAttribute });
|
|
27
|
+
disableDuringRequest = input(true, ...(ngDevMode ? [{ debugName: "disableDuringRequest", transform: booleanAttribute }] : [{ transform: booleanAttribute }]));
|
|
28
28
|
/**
|
|
29
29
|
* Whether to show a loading indicator when the HTTP request is in progress.
|
|
30
30
|
* If true, a loading spinner will be displayed on the button while the request is being processed.
|
|
31
31
|
* Default is true.
|
|
32
32
|
*/
|
|
33
|
-
loadingIndicator = input(false, { transform: booleanAttribute });
|
|
34
|
-
constructor(_element, _renderer, _http, _destroyRef) {
|
|
35
|
-
this._element = _element;
|
|
36
|
-
this._renderer = _renderer;
|
|
37
|
-
this._http = _http;
|
|
38
|
-
this._destroyRef = _destroyRef;
|
|
39
|
-
}
|
|
33
|
+
loadingIndicator = input(false, ...(ngDevMode ? [{ debugName: "loadingIndicator", transform: booleanAttribute }] : [{ transform: booleanAttribute }]));
|
|
40
34
|
ngOnInit() {
|
|
41
35
|
this._renderer.setStyle(this._element.nativeElement, "position", "relative");
|
|
42
36
|
if (this.request()) {
|
|
@@ -74,12 +68,10 @@ class ButtonDirective {
|
|
|
74
68
|
_hideLoading() {
|
|
75
69
|
this._renderer.removeChild(this._element.nativeElement, this._loadingElement);
|
|
76
70
|
}
|
|
77
|
-
|
|
78
|
-
}
|
|
79
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: ButtonDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i1.HttpService }, { token: i0.DestroyRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
80
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.0.6", type: ButtonDirective, isStandalone: true, selector: "button[ng0Button], a[ng0Button], input[type=button][ng0Button], input[type=submit][ng0Button], input[type=reset][ng0Button]", inputs: { request: { classPropertyName: "request", publicName: "request", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, disableDuringRequest: { classPropertyName: "disableDuringRequest", publicName: "disableDuringRequest", isSignal: true, isRequired: false, transformFunction: null }, loadingIndicator: { classPropertyName: "loadingIndicator", publicName: "loadingIndicator", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { disabled: "disabledChange" }, host: { properties: { "class.disabled": "disabled()", "prop.disabled": "disabled()", "attr.aria-disabled": "disabled()", "attr.tabindex": "disabled() ? \"-1\" : \"\" " } }, exportAs: ["ng0Button"], ngImport: i0 });
|
|
71
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.11", ngImport: i0, type: ButtonDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
72
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.3.11", type: ButtonDirective, isStandalone: true, selector: "button[ng0Button], a[ng0Button], input[type=button][ng0Button], input[type=submit][ng0Button], input[type=reset][ng0Button]", inputs: { request: { classPropertyName: "request", publicName: "request", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, disableDuringRequest: { classPropertyName: "disableDuringRequest", publicName: "disableDuringRequest", isSignal: true, isRequired: false, transformFunction: null }, loadingIndicator: { classPropertyName: "loadingIndicator", publicName: "loadingIndicator", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { disabled: "disabledChange" }, host: { properties: { "class.disabled": "disabled()", "attr.disabled": "disabled() ? \"\" : undefined", "attr.aria-disabled": "disabled() ? \"\" : undefined", "attr.tabindex": "disabled() ? \"-1\" : undefined" } }, exportAs: ["ng0Button"], ngImport: i0 });
|
|
81
73
|
}
|
|
82
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.
|
|
74
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.11", ngImport: i0, type: ButtonDirective, decorators: [{
|
|
83
75
|
type: Directive,
|
|
84
76
|
args: [{
|
|
85
77
|
selector: 'button[ng0Button], a[ng0Button], input[type=button][ng0Button], input[type=submit][ng0Button], input[type=reset][ng0Button]',
|
|
@@ -87,19 +79,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImpor
|
|
|
87
79
|
standalone: true,
|
|
88
80
|
host: {
|
|
89
81
|
'[class.disabled]': 'disabled()',
|
|
90
|
-
'[
|
|
91
|
-
'[attr.aria-disabled]': 'disabled()',
|
|
92
|
-
'[attr.tabindex]': 'disabled() ? "-1" :
|
|
82
|
+
'[attr.disabled]': 'disabled() ? "" : undefined',
|
|
83
|
+
'[attr.aria-disabled]': 'disabled() ? "" : undefined',
|
|
84
|
+
'[attr.tabindex]': 'disabled() ? "-1" : undefined',
|
|
93
85
|
}
|
|
94
86
|
}]
|
|
95
|
-
}],
|
|
87
|
+
}], propDecorators: { request: [{ type: i0.Input, args: [{ isSignal: true, alias: "request", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }, { type: i0.Output, args: ["disabledChange"] }], disableDuringRequest: [{ type: i0.Input, args: [{ isSignal: true, alias: "disableDuringRequest", required: false }] }], loadingIndicator: [{ type: i0.Input, args: [{ isSignal: true, alias: "loadingIndicator", required: false }] }] } });
|
|
96
88
|
|
|
97
89
|
class ButtonModule {
|
|
98
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.
|
|
99
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.
|
|
100
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.
|
|
90
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.11", ngImport: i0, type: ButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
91
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.11", ngImport: i0, type: ButtonModule, imports: [ButtonDirective], exports: [ButtonDirective] });
|
|
92
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.11", ngImport: i0, type: ButtonModule });
|
|
101
93
|
}
|
|
102
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.
|
|
94
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.11", ngImport: i0, type: ButtonModule, decorators: [{
|
|
103
95
|
type: NgModule,
|
|
104
96
|
args: [{
|
|
105
97
|
imports: [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bootkit-ng0-components-button.mjs","sources":["../../../projects/ng0/components/button/button.directive.ts","../../../projects/ng0/components/button/button.module.ts","../../../projects/ng0/components/button/bootkit-ng0-components-button.ts"],"sourcesContent":["import { Directive, Renderer2, ElementRef, OnInit,
|
|
1
|
+
{"version":3,"file":"bootkit-ng0-components-button.mjs","sources":["../../../projects/ng0/components/button/button.directive.ts","../../../projects/ng0/components/button/button.module.ts","../../../projects/ng0/components/button/bootkit-ng0-components-button.ts"],"sourcesContent":["import { Directive, Renderer2, ElementRef, OnInit, input, DestroyRef, model, booleanAttribute, inject } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { HttpService } from '@bootkit/ng0/http';\n\n@Directive({\n selector: 'button[ng0Button], a[ng0Button], input[type=button][ng0Button], input[type=submit][ng0Button], input[type=reset][ng0Button]',\n exportAs: 'ng0Button',\n standalone: true,\n host: {\n '[class.disabled]': 'disabled()',\n '[attr.disabled]': 'disabled() ? \"\" : undefined',\n '[attr.aria-disabled]': 'disabled() ? \"\" : undefined',\n '[attr.tabindex]': 'disabled() ? \"-1\" : undefined',\n }\n})\nexport class ButtonDirective implements OnInit {\n private _loadingElement: any;\n private _element = inject(ElementRef);\n private _renderer = inject(Renderer2);\n private _http = inject(HttpService);\n private _destroyRef = inject(DestroyRef);\n\n /**\n * The IDs of the HTTP requests that this button listens to.\n * If one of these requests is in progress, it will show a loading indicator or will be disabled based on 'showLoading' and 'disableOnLoading' properties.\n */\n public readonly request = input<string | string[] | undefined>(undefined);\n\n /** \n * Whether the button is disabled or not.\n */\n public readonly disabled = model(false);\n\n /**\n * Whether to wait for the HTTP response before enabling the button again.\n * If true, the button will remain disabled until the HTTP request completes.\n * This is useful for preventing multiple clicks while waiting for a response.\n * Default is true.\n */\n public readonly disableDuringRequest = input(true, { transform: booleanAttribute });\n\n /**\n * Whether to show a loading indicator when the HTTP request is in progress.\n * If true, a loading spinner will be displayed on the button while the request is being processed.\n * Default is true.\n */\n public readonly loadingIndicator = input(false, { transform: booleanAttribute });\n\n ngOnInit(): void {\n this._renderer.setStyle(this._element.nativeElement, \"position\", \"relative\");\n\n if (this.request()) {\n this._http.events.pipe(takeUntilDestroyed(this._destroyRef)).subscribe(e => {\n var ids = (Array.isArray(this.request()) ? this.request() : [this.request()]) as string[];\n\n if (ids.includes(e?.options?.id)) {\n let requestInProgress = e.type === 'Send' || e.type === 'Progress';\n\n if (this.disableDuringRequest()) {\n this.disabled.set(requestInProgress);\n }\n\n if (this.loadingIndicator()) {\n if (requestInProgress) {\n this._showLoading();\n } else {\n this._hideLoading();\n }\n }\n }\n });\n }\n }\n\n // @HostListener('click', ['$event']) private _onClick(e: MouseEvent): void {\n // if (!this._disabled) {\n // }\n // }\n private _showLoading() {\n this._loadingElement = this._renderer.createElement(\"div\");\n [\"spinner-grow\", \"spinner-grow-sm\", \"text-warning\"].forEach(s => this._renderer.addClass(this._loadingElement, s));\n this._renderer.setStyle(this._loadingElement, \"position\", \"absolute\");\n this._renderer.setStyle(this._loadingElement, \"top\", \"-25%\");\n this._renderer.setStyle(this._loadingElement, \"left\", \"-5px\");\n this._renderer.appendChild(this._element.nativeElement, this._loadingElement);\n }\n\n private _hideLoading() {\n this._renderer.removeChild(this._element.nativeElement, this._loadingElement);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { ButtonDirective } from './button.directive';\n\n@NgModule({\n imports: [\n ButtonDirective,\n ],\n exports: [\n ButtonDirective,\n ]\n})\nexport class ButtonModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -1,52 +1,44 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { input, ChangeDetectionStrategy, Component, NgModule } from '@angular/core';
|
|
2
|
+
import { inject, ElementRef, Renderer2, input, ChangeDetectionStrategy, Component, NgModule } from '@angular/core';
|
|
3
3
|
import * as i1 from '@angular/common';
|
|
4
4
|
import { CommonModule } from '@angular/common';
|
|
5
5
|
|
|
6
6
|
class CardComponent {
|
|
7
|
-
_element;
|
|
8
|
-
_renderer;
|
|
9
|
-
header = input();
|
|
10
|
-
constructor(
|
|
11
|
-
this._element = _element;
|
|
12
|
-
this._renderer = _renderer;
|
|
7
|
+
_element = inject(ElementRef);
|
|
8
|
+
_renderer = inject(Renderer2);
|
|
9
|
+
header = input(...(ngDevMode ? [undefined, { debugName: "header" }] : []));
|
|
10
|
+
constructor() {
|
|
13
11
|
this._renderer.addClass(this._element.nativeElement, 'card');
|
|
14
12
|
}
|
|
15
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.
|
|
16
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.
|
|
13
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.11", ngImport: i0, type: CardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
14
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.11", type: CardComponent, isStandalone: true, selector: "ng0-card", inputs: { header: { classPropertyName: "header", publicName: "header", isSignal: true, isRequired: false, transformFunction: null } }, exportAs: ["ng0Card"], ngImport: i0, template: "<div *ngIf=\"header()\" class=\"card-header\">\n {{header()}}\n</div>\n\n<div class=\"card-body\">\n <ng-content></ng-content>\n</div>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
17
15
|
}
|
|
18
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.
|
|
16
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.11", ngImport: i0, type: CardComponent, decorators: [{
|
|
19
17
|
type: Component,
|
|
20
|
-
args: [{ selector: 'ng0-card', exportAs: 'ng0Card', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CommonModule], template: "<div *ngIf=\"header()\" class=\"card-header\">\
|
|
21
|
-
}], ctorParameters: () => [{ type: i0.
|
|
18
|
+
args: [{ selector: 'ng0-card', exportAs: 'ng0Card', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CommonModule], template: "<div *ngIf=\"header()\" class=\"card-header\">\n {{header()}}\n</div>\n\n<div class=\"card-body\">\n <ng-content></ng-content>\n</div>\n" }]
|
|
19
|
+
}], ctorParameters: () => [], propDecorators: { header: [{ type: i0.Input, args: [{ isSignal: true, alias: "header", required: false }] }] } });
|
|
22
20
|
|
|
23
21
|
class CardHeaderComponent {
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
constructor(_element, _renderer) {
|
|
27
|
-
this._element = _element;
|
|
28
|
-
this._renderer = _renderer;
|
|
29
|
-
}
|
|
30
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: CardHeaderComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
|
|
31
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.6", type: CardHeaderComponent, isStandalone: true, selector: "ng0-card-header", exportAs: ["ng0CardHeader"], ngImport: i0, template: "<ng-content></ng-content>", dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
22
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.11", ngImport: i0, type: CardHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
23
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.11", type: CardHeaderComponent, isStandalone: true, selector: "ng0-card-header", exportAs: ["ng0CardHeader"], ngImport: i0, template: "<ng-content></ng-content>", dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
32
24
|
}
|
|
33
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.
|
|
25
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.11", ngImport: i0, type: CardHeaderComponent, decorators: [{
|
|
34
26
|
type: Component,
|
|
35
27
|
args: [{ selector: 'ng0-card-header', exportAs: 'ng0CardHeader', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CommonModule], template: "<ng-content></ng-content>" }]
|
|
36
|
-
}]
|
|
28
|
+
}] });
|
|
37
29
|
|
|
38
30
|
const DECLARES = [
|
|
39
31
|
CardComponent,
|
|
40
32
|
CardHeaderComponent
|
|
41
33
|
];
|
|
42
34
|
class CardModule {
|
|
43
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.
|
|
44
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.
|
|
35
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.11", ngImport: i0, type: CardModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
36
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.11", ngImport: i0, type: CardModule, imports: [CardComponent,
|
|
45
37
|
CardHeaderComponent], exports: [CardComponent,
|
|
46
38
|
CardHeaderComponent] });
|
|
47
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.
|
|
39
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.11", ngImport: i0, type: CardModule, imports: [DECLARES] });
|
|
48
40
|
}
|
|
49
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.
|
|
41
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.11", ngImport: i0, type: CardModule, decorators: [{
|
|
50
42
|
type: NgModule,
|
|
51
43
|
args: [{
|
|
52
44
|
imports: DECLARES,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bootkit-ng0-components-card.mjs","sources":["../../../projects/ng0/components/card/card.component.ts","../../../projects/ng0/components/card/card.component.html","../../../projects/ng0/components/card/card-header.component.ts","../../../projects/ng0/components/card/card-header.component.html","../../../projects/ng0/components/card/card.module.ts","../../../projects/ng0/components/card/bootkit-ng0-components-card.ts"],"sourcesContent":["import { Component, ElementRef, Renderer2,
|
|
1
|
+
{"version":3,"file":"bootkit-ng0-components-card.mjs","sources":["../../../projects/ng0/components/card/card.component.ts","../../../projects/ng0/components/card/card.component.html","../../../projects/ng0/components/card/card-header.component.ts","../../../projects/ng0/components/card/card-header.component.html","../../../projects/ng0/components/card/card.module.ts","../../../projects/ng0/components/card/bootkit-ng0-components-card.ts"],"sourcesContent":["import { Component, ElementRef, Renderer2, ChangeDetectionStrategy, input, inject } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\n@Component({\n selector: 'ng0-card',\n exportAs: 'ng0Card',\n templateUrl: 'card.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n imports: [CommonModule]\n})\nexport class CardComponent {\n private _element = inject(ElementRef);\n private _renderer = inject(Renderer2);\n\n public readonly header = input<string>();\n\n constructor() {\n this._renderer.addClass(this._element.nativeElement, 'card');\n }\n}\n","<div *ngIf=\"header()\" class=\"card-header\">\n {{header()}}\n</div>\n\n<div class=\"card-body\">\n <ng-content></ng-content>\n</div>\n","import { Component, ChangeDetectionStrategy } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\n@Component({\n selector: 'ng0-card-header',\n exportAs: 'ng0CardHeader',\n templateUrl: 'card-header.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n imports: [CommonModule]\n})\nexport class CardHeaderComponent {\n}\n","<ng-content></ng-content>","import { NgModule } from '@angular/core';\nimport { CardComponent } from './card.component';\nimport { CardHeaderComponent } from './card-header.component';\n\nconst DECLARES = [\n CardComponent,\n CardHeaderComponent\n];\n\n@NgModule({\n imports: DECLARES,\n exports: DECLARES\n})\nexport class CardModule {\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { Injectable, input, computed, ChangeDetectionStrategy, Component } from '@angular/core';
|
|
3
|
-
import
|
|
2
|
+
import { Injectable, inject, input, computed, ChangeDetectionStrategy, Component } from '@angular/core';
|
|
3
|
+
import { DomSanitizer } from '@angular/platform-browser';
|
|
4
4
|
|
|
5
5
|
class CodeFormatter {
|
|
6
6
|
name;
|
|
@@ -25,10 +25,10 @@ class CodeFormatters {
|
|
|
25
25
|
find(name) {
|
|
26
26
|
return this._formatters.find(x => x.name == name);
|
|
27
27
|
}
|
|
28
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.
|
|
29
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.
|
|
28
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.11", ngImport: i0, type: CodeFormatters, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
29
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.11", ngImport: i0, type: CodeFormatters, providedIn: 'root' });
|
|
30
30
|
}
|
|
31
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.
|
|
31
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.11", ngImport: i0, type: CodeFormatters, decorators: [{
|
|
32
32
|
type: Injectable,
|
|
33
33
|
args: [{
|
|
34
34
|
providedIn: 'root'
|
|
@@ -36,31 +36,27 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImpor
|
|
|
36
36
|
}], ctorParameters: () => [] });
|
|
37
37
|
|
|
38
38
|
class CodeComponent {
|
|
39
|
-
|
|
40
|
-
|
|
39
|
+
_formatters = inject(CodeFormatters);
|
|
40
|
+
_domSanitizer = inject(DomSanitizer);
|
|
41
41
|
/** Code formatter name */
|
|
42
|
-
formatter = input.required();
|
|
42
|
+
formatter = input.required(...(ngDevMode ? [{ debugName: "formatter" }] : []));
|
|
43
43
|
/** Code */
|
|
44
|
-
code = input.required();
|
|
44
|
+
code = input.required(...(ngDevMode ? [{ debugName: "code" }] : []));
|
|
45
45
|
_safeHtml = computed(() => {
|
|
46
|
-
var frmt = this.
|
|
46
|
+
var frmt = this._formatters.find(this.formatter());
|
|
47
47
|
if (frmt == null) {
|
|
48
48
|
console.warn(`Code formatter named "${this.formatter()}" not found.`);
|
|
49
49
|
return undefined;
|
|
50
50
|
}
|
|
51
|
-
return this.
|
|
52
|
-
});
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
this.domSanitizer = domSanitizer;
|
|
56
|
-
}
|
|
57
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: CodeComponent, deps: [{ token: CodeFormatters }, { token: i2.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component });
|
|
58
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: CodeComponent, isStandalone: true, selector: "ng0-code", inputs: { formatter: { classPropertyName: "formatter", publicName: "formatter", isSignal: true, isRequired: true, transformFunction: null }, code: { classPropertyName: "code", publicName: "code", isSignal: true, isRequired: true, transformFunction: null } }, exportAs: ["ng0Code"], ngImport: i0, template: "<pre class=\"language-{{formatter()}} formatter-{{formatter()}}\">@if(_safeHtml()) {<code class=\"language-{{formatter()}} formatter-{{formatter()}}\" [innerHtml]=\"_safeHtml()\" ></code>}@else {<code class=\"language-{{formatter()}} formatter-{{formatter()}}\" [innerText]=\"code()\"></code>}</pre>", styles: [":host{display:block}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
51
|
+
return this._domSanitizer.bypassSecurityTrustHtml(frmt.format(this.code()));
|
|
52
|
+
}, ...(ngDevMode ? [{ debugName: "_safeHtml" }] : []));
|
|
53
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.11", ngImport: i0, type: CodeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
54
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.11", type: CodeComponent, isStandalone: true, selector: "ng0-code", inputs: { formatter: { classPropertyName: "formatter", publicName: "formatter", isSignal: true, isRequired: true, transformFunction: null }, code: { classPropertyName: "code", publicName: "code", isSignal: true, isRequired: true, transformFunction: null } }, exportAs: ["ng0Code"], ngImport: i0, template: "<pre class=\"language-{{formatter()}} formatter-{{formatter()}}\">@if(_safeHtml()) {<code class=\"language-{{formatter()}} formatter-{{formatter()}}\" [innerHtml]=\"_safeHtml()\" ></code>}@else {<code class=\"language-{{formatter()}} formatter-{{formatter()}}\" [innerText]=\"code()\"></code>}</pre>", styles: [":host{display:block}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
59
55
|
}
|
|
60
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.
|
|
56
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.11", ngImport: i0, type: CodeComponent, decorators: [{
|
|
61
57
|
type: Component,
|
|
62
58
|
args: [{ selector: 'ng0-code', exportAs: 'ng0Code', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, template: "<pre class=\"language-{{formatter()}} formatter-{{formatter()}}\">@if(_safeHtml()) {<code class=\"language-{{formatter()}} formatter-{{formatter()}}\" [innerHtml]=\"_safeHtml()\" ></code>}@else {<code class=\"language-{{formatter()}} formatter-{{formatter()}}\" [innerText]=\"code()\"></code>}</pre>", styles: [":host{display:block}\n"] }]
|
|
63
|
-
}],
|
|
59
|
+
}], propDecorators: { formatter: [{ type: i0.Input, args: [{ isSignal: true, alias: "formatter", required: true }] }], code: [{ type: i0.Input, args: [{ isSignal: true, alias: "code", required: true }] }] } });
|
|
64
60
|
|
|
65
61
|
/**
|
|
66
62
|
* Generated bundle index. Do not edit.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bootkit-ng0-components-code.mjs","sources":["../../../projects/ng0/components/code/types.ts","../../../projects/ng0/components/code/code-formatters.ts","../../../projects/ng0/components/code/code.component.ts","../../../projects/ng0/components/code/code.component.html","../../../projects/ng0/components/code/bootkit-ng0-components-code.ts"],"sourcesContent":["export type CodeFormatterFunc = (code: string) => string;\
|
|
1
|
+
{"version":3,"file":"bootkit-ng0-components-code.mjs","sources":["../../../projects/ng0/components/code/types.ts","../../../projects/ng0/components/code/code-formatters.ts","../../../projects/ng0/components/code/code.component.ts","../../../projects/ng0/components/code/code.component.html","../../../projects/ng0/components/code/bootkit-ng0-components-code.ts"],"sourcesContent":["export type CodeFormatterFunc = (code: string) => string;\n\nexport class CodeFormatter {\n constructor(public readonly name: string, public readonly format: CodeFormatterFunc) {\n }\n}\n","import { Injectable } from '@angular/core';\nimport { CodeFormatter, CodeFormatterFunc } from './types';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class CodeFormatters {\n private _formatters = new Array<CodeFormatter>();\n\n constructor() { }\n\n add(name: string, func: CodeFormatterFunc): CodeFormatter {\n var formatter = this._formatters.find(x => x.name == name);\n if (!formatter) {\n formatter = new CodeFormatter(name, func);\n this._formatters.push(formatter);\n }\n\n return formatter;\n }\n\n find(name: string) {\n return this._formatters.find(x => x.name == name);\n }\n}\n\n","import { ChangeDetectionStrategy, Component, computed, inject, input } from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\nimport { CodeFormatters } from './code-formatters';\n\n@Component({\n selector: 'ng0-code',\n exportAs: 'ng0Code',\n styleUrls: ['./code.component.scss'],\n templateUrl: './code.component.html',\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class CodeComponent {\n private _formatters = inject(CodeFormatters);\n private _domSanitizer = inject(DomSanitizer);\n\n /** Code formatter name */\n public formatter = input.required<string>();\n\n /** Code */\n public code = input.required<string>();\n\n protected _safeHtml = computed(() => {\n var frmt = this._formatters.find(this.formatter());\n\n if (frmt == null) {\n console.warn(`Code formatter named \"${this.formatter()}\" not found.`)\n return undefined;\n }\n\n return this._domSanitizer.bypassSecurityTrustHtml(frmt.format(this.code()));\n })\n}\n","<pre class=\"language-{{formatter()}} formatter-{{formatter()}}\">@if(_safeHtml()) {<code class=\"language-{{formatter()}} formatter-{{formatter()}}\" [innerHtml]=\"_safeHtml()\" ></code>}@else {<code class=\"language-{{formatter()}} formatter-{{formatter()}}\" [innerText]=\"code()\"></code>}</pre>","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|