pdm-ui-kit 0.1.48 → 0.1.50
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/esm2020/lib/components/alert-dialog/alert-dialog.component.mjs +24 -6
- package/esm2020/lib/components/context-menu/context-menu.component.mjs +15 -7
- package/esm2020/lib/components/drawer/drawer.component.mjs +25 -4
- package/esm2020/lib/components/dropdown-menu/dropdown-menu.component.mjs +4 -2
- package/esm2020/lib/components/menubar/menubar.component.mjs +37 -6
- package/esm2020/lib/components/popover/popover.component.mjs +15 -9
- package/esm2020/lib/components/select/select.component.mjs +4 -2
- package/esm2020/lib/components/sheet/sheet.component.mjs +25 -4
- package/esm2020/lib/overlay/pdm-outside-click.directive.mjs +86 -0
- package/esm2020/lib/pdm-ui-kit.module.mjs +5 -1
- package/esm2020/public-api.mjs +2 -1
- package/fesm2015/pdm-ui-kit.mjs +228 -32
- package/fesm2015/pdm-ui-kit.mjs.map +1 -1
- package/fesm2020/pdm-ui-kit.mjs +226 -32
- package/fesm2020/pdm-ui-kit.mjs.map +1 -1
- package/lib/components/alert-dialog/alert-dialog.component.d.ts +9 -1
- package/lib/components/context-menu/context-menu.component.d.ts +6 -3
- package/lib/components/drawer/drawer.component.d.ts +7 -1
- package/lib/components/menubar/menubar.component.d.ts +10 -2
- package/lib/components/popover/popover.component.d.ts +6 -3
- package/lib/components/sheet/sheet.component.d.ts +7 -1
- package/lib/overlay/pdm-outside-click.directive.d.ts +40 -0
- package/lib/pdm-ui-kit.module.d.ts +25 -24
- package/package.json +2 -2
- package/public-api.d.ts +1 -0
package/fesm2020/pdm-ui-kit.mjs
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as i1 from '@angular/common';
|
|
2
|
-
import { CommonModule } from '@angular/common';
|
|
2
|
+
import { isPlatformBrowser, DOCUMENT, CommonModule } from '@angular/common';
|
|
3
3
|
import * as i0 from '@angular/core';
|
|
4
|
-
import { EventEmitter, Component, ChangeDetectionStrategy, Input, Output, HostListener, ViewChild, ViewChildren, Directive, ContentChildren, NgModule } from '@angular/core';
|
|
4
|
+
import { EventEmitter, Component, ChangeDetectionStrategy, Input, Output, HostListener, ViewChild, ViewChildren, ElementRef, PLATFORM_ID, Directive, Inject, ContentChildren, NgModule } from '@angular/core';
|
|
5
5
|
import * as i1$2 from '@angular/cdk/overlay';
|
|
6
6
|
import { OverlayModule } from '@angular/cdk/overlay';
|
|
7
7
|
import { icons } from 'lucide';
|
|
@@ -90,32 +90,48 @@ class PdmAlertDialogComponent {
|
|
|
90
90
|
this.confirmText = 'Continue';
|
|
91
91
|
this.cancelText = 'Cancel';
|
|
92
92
|
this.className = '';
|
|
93
|
+
/** Close when the ESC key is pressed. Default: `true`. */
|
|
94
|
+
this.closeOnEsc = true;
|
|
93
95
|
this.openChange = new EventEmitter();
|
|
94
96
|
this.confirm = new EventEmitter();
|
|
95
97
|
this.cancel = new EventEmitter();
|
|
96
98
|
}
|
|
99
|
+
/**
|
|
100
|
+
* Returns `true` when at least one consumer listens to `openChange`.
|
|
101
|
+
* - **Controlled** (has observers): parent manages `open` via two-way binding → only emit.
|
|
102
|
+
* - **Uncontrolled** (no observers): we own the `open` state → mutate it locally.
|
|
103
|
+
*/
|
|
104
|
+
get isControlled() {
|
|
105
|
+
return this.openChange.observed;
|
|
106
|
+
}
|
|
97
107
|
onTriggerClick() {
|
|
98
|
-
this.
|
|
108
|
+
if (!this.isControlled) {
|
|
109
|
+
this.open = true;
|
|
110
|
+
}
|
|
99
111
|
this.openChange.emit(true);
|
|
100
112
|
}
|
|
101
113
|
onCancel() {
|
|
102
114
|
this.cancel.emit();
|
|
103
|
-
this.
|
|
115
|
+
if (!this.isControlled) {
|
|
116
|
+
this.open = false;
|
|
117
|
+
}
|
|
104
118
|
this.openChange.emit(false);
|
|
105
119
|
}
|
|
106
120
|
onConfirm() {
|
|
107
121
|
this.confirm.emit();
|
|
108
|
-
this.
|
|
122
|
+
if (!this.isControlled) {
|
|
123
|
+
this.open = false;
|
|
124
|
+
}
|
|
109
125
|
this.openChange.emit(false);
|
|
110
126
|
}
|
|
111
127
|
onEsc() {
|
|
112
|
-
if (this.open) {
|
|
128
|
+
if (this.open && this.closeOnEsc) {
|
|
113
129
|
this.onCancel();
|
|
114
130
|
}
|
|
115
131
|
}
|
|
116
132
|
}
|
|
117
133
|
PdmAlertDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmAlertDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
118
|
-
PdmAlertDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmAlertDialogComponent, selector: "pdm-alert-dialog", inputs: { open: "open", showTrigger: "showTrigger", triggerText: "triggerText", title: "title", description: "description", confirmText: "confirmText", cancelText: "cancelText", className: "className" }, outputs: { openChange: "openChange", confirm: "confirm", cancel: "cancel" }, host: { listeners: { "document:keydown.escape": "onEsc()" } }, ngImport: i0, template: "<button\n *ngIf=\"showTrigger && !open\"\n type=\"button\"\n class=\"inline-flex h-9 appearance-none items-center justify-center rounded-md border border-input bg-background px-4 py-2 text-sm font-medium text-foreground shadow-sm\"\n (click)=\"onTriggerClick()\"\n>\n {{ triggerText }}\n</button>\n\n<div *ngIf=\"open\" class=\"fixed inset-0 z-50 flex items-center justify-center p-5\">\n <div class=\"absolute inset-0 bg-foreground/30\" (click)=\"onCancel()\"></div>\n <section\n role=\"alertdialog\"\n aria-modal=\"true\"\n [ngClass]=\"[\n 'relative z-10 w-full max-w-lg rounded-lg border border-border bg-background p-6 text-foreground shadow-lg',\n className\n ]\"\n >\n <div class=\"flex flex-col gap-2\">\n <h2 class=\"m-0 text-lg font-semibold leading-none tracking-tight\">{{ title }}</h2>\n <p *ngIf=\"description\" class=\"m-0 text-sm text-muted-foreground\">{{ description }}</p>\n </div>\n <div class=\"mt-4 flex items-center justify-end gap-2\">\n <button\n type=\"button\"\n class=\"inline-flex h-9 appearance-none items-center justify-center rounded-md border border-input bg-background px-4 py-2 text-sm font-medium text-foreground shadow-sm\"\n (click)=\"onCancel()\"\n >\n {{ cancelText }}\n </button>\n <button\n type=\"button\"\n class=\"inline-flex h-9 appearance-none items-center justify-center rounded-md bg-primary px-4 py-2 text-sm font-medium text-primary-foreground shadow-sm\"\n (click)=\"onConfirm()\"\n >\n {{ confirmText }}\n </button>\n </div>\n </section>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
134
|
+
PdmAlertDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmAlertDialogComponent, selector: "pdm-alert-dialog", inputs: { open: "open", showTrigger: "showTrigger", triggerText: "triggerText", title: "title", description: "description", confirmText: "confirmText", cancelText: "cancelText", className: "className", closeOnEsc: "closeOnEsc" }, outputs: { openChange: "openChange", confirm: "confirm", cancel: "cancel" }, host: { listeners: { "document:keydown.escape": "onEsc()" } }, ngImport: i0, template: "<button\n *ngIf=\"showTrigger && !open\"\n type=\"button\"\n class=\"inline-flex h-9 appearance-none items-center justify-center rounded-md border border-input bg-background px-4 py-2 text-sm font-medium text-foreground shadow-sm\"\n (click)=\"onTriggerClick()\"\n>\n {{ triggerText }}\n</button>\n\n<div *ngIf=\"open\" class=\"fixed inset-0 z-50 flex items-center justify-center p-5\">\n <div class=\"absolute inset-0 bg-foreground/30\" (click)=\"onCancel()\"></div>\n <section\n role=\"alertdialog\"\n aria-modal=\"true\"\n [ngClass]=\"[\n 'relative z-10 w-full max-w-lg rounded-lg border border-border bg-background p-6 text-foreground shadow-lg',\n className\n ]\"\n >\n <div class=\"flex flex-col gap-2\">\n <h2 class=\"m-0 text-lg font-semibold leading-none tracking-tight\">{{ title }}</h2>\n <p *ngIf=\"description\" class=\"m-0 text-sm text-muted-foreground\">{{ description }}</p>\n </div>\n <div class=\"mt-4 flex items-center justify-end gap-2\">\n <button\n type=\"button\"\n class=\"inline-flex h-9 appearance-none items-center justify-center rounded-md border border-input bg-background px-4 py-2 text-sm font-medium text-foreground shadow-sm\"\n (click)=\"onCancel()\"\n >\n {{ cancelText }}\n </button>\n <button\n type=\"button\"\n class=\"inline-flex h-9 appearance-none items-center justify-center rounded-md bg-primary px-4 py-2 text-sm font-medium text-primary-foreground shadow-sm\"\n (click)=\"onConfirm()\"\n >\n {{ confirmText }}\n </button>\n </div>\n </section>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
119
135
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmAlertDialogComponent, decorators: [{
|
|
120
136
|
type: Component,
|
|
121
137
|
args: [{ selector: 'pdm-alert-dialog', changeDetection: ChangeDetectionStrategy.OnPush, template: "<button\n *ngIf=\"showTrigger && !open\"\n type=\"button\"\n class=\"inline-flex h-9 appearance-none items-center justify-center rounded-md border border-input bg-background px-4 py-2 text-sm font-medium text-foreground shadow-sm\"\n (click)=\"onTriggerClick()\"\n>\n {{ triggerText }}\n</button>\n\n<div *ngIf=\"open\" class=\"fixed inset-0 z-50 flex items-center justify-center p-5\">\n <div class=\"absolute inset-0 bg-foreground/30\" (click)=\"onCancel()\"></div>\n <section\n role=\"alertdialog\"\n aria-modal=\"true\"\n [ngClass]=\"[\n 'relative z-10 w-full max-w-lg rounded-lg border border-border bg-background p-6 text-foreground shadow-lg',\n className\n ]\"\n >\n <div class=\"flex flex-col gap-2\">\n <h2 class=\"m-0 text-lg font-semibold leading-none tracking-tight\">{{ title }}</h2>\n <p *ngIf=\"description\" class=\"m-0 text-sm text-muted-foreground\">{{ description }}</p>\n </div>\n <div class=\"mt-4 flex items-center justify-end gap-2\">\n <button\n type=\"button\"\n class=\"inline-flex h-9 appearance-none items-center justify-center rounded-md border border-input bg-background px-4 py-2 text-sm font-medium text-foreground shadow-sm\"\n (click)=\"onCancel()\"\n >\n {{ cancelText }}\n </button>\n <button\n type=\"button\"\n class=\"inline-flex h-9 appearance-none items-center justify-center rounded-md bg-primary px-4 py-2 text-sm font-medium text-primary-foreground shadow-sm\"\n (click)=\"onConfirm()\"\n >\n {{ confirmText }}\n </button>\n </div>\n </section>\n</div>\n" }]
|
|
@@ -135,6 +151,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
135
151
|
type: Input
|
|
136
152
|
}], className: [{
|
|
137
153
|
type: Input
|
|
154
|
+
}], closeOnEsc: [{
|
|
155
|
+
type: Input
|
|
138
156
|
}], openChange: [{
|
|
139
157
|
type: Output
|
|
140
158
|
}], confirm: [{
|
|
@@ -1785,6 +1803,15 @@ class PdmContextMenuComponent {
|
|
|
1785
1803
|
this.x = 0;
|
|
1786
1804
|
this.y = 0;
|
|
1787
1805
|
}
|
|
1806
|
+
ngOnInit() {
|
|
1807
|
+
this.boundPointerDown = (event) => this.onDocumentPointerDown(event);
|
|
1808
|
+
document.addEventListener('pointerdown', this.boundPointerDown, { capture: true });
|
|
1809
|
+
}
|
|
1810
|
+
ngOnDestroy() {
|
|
1811
|
+
if (this.boundPointerDown) {
|
|
1812
|
+
document.removeEventListener('pointerdown', this.boundPointerDown, { capture: true });
|
|
1813
|
+
}
|
|
1814
|
+
}
|
|
1788
1815
|
onContextMenu(event) {
|
|
1789
1816
|
event.preventDefault();
|
|
1790
1817
|
this.x = event.clientX;
|
|
@@ -1798,9 +1825,11 @@ class PdmContextMenuComponent {
|
|
|
1798
1825
|
this.open = false;
|
|
1799
1826
|
}
|
|
1800
1827
|
onEsc() {
|
|
1801
|
-
this.open
|
|
1828
|
+
if (this.open) {
|
|
1829
|
+
this.open = false;
|
|
1830
|
+
}
|
|
1802
1831
|
}
|
|
1803
|
-
|
|
1832
|
+
onDocumentPointerDown(event) {
|
|
1804
1833
|
if (!this.open)
|
|
1805
1834
|
return;
|
|
1806
1835
|
const target = event.target;
|
|
@@ -1810,7 +1839,7 @@ class PdmContextMenuComponent {
|
|
|
1810
1839
|
}
|
|
1811
1840
|
}
|
|
1812
1841
|
PdmContextMenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmContextMenuComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
1813
|
-
PdmContextMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmContextMenuComponent, selector: "pdm-context-menu", inputs: { items: "items", className: "className", triggerLabel: "triggerLabel", width: "width", height: "height" }, outputs: { itemSelect: "itemSelect" }, host: { listeners: { "document:keydown.escape": "onEsc()"
|
|
1842
|
+
PdmContextMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmContextMenuComponent, selector: "pdm-context-menu", inputs: { items: "items", className: "className", triggerLabel: "triggerLabel", width: "width", height: "height" }, outputs: { itemSelect: "itemSelect" }, host: { listeners: { "document:keydown.escape": "onEsc()" } }, ngImport: i0, template: "<div class=\"relative\" [ngClass]=\"className\" (contextmenu)=\"onContextMenu($event)\">\n <div\n class=\"flex items-center justify-center rounded-md border border-dashed border-border\"\n [style.width.px]=\"width\"\n [style.height.px]=\"height\"\n >\n <span class=\"text-sm font-medium text-foreground\">{{ triggerLabel }}</span>\n </div>\n\n <div\n *ngIf=\"open\"\n class=\"fixed z-50 w-52 rounded-md border border-border bg-popover p-1 text-popover-foreground shadow-md\"\n [style.left.px]=\"x + 4\"\n [style.top.px]=\"y + 2\"\n >\n <div>\n <ng-container *ngFor=\"let item of items\">\n <div *ngIf=\"item.type === 'separator'\" class=\"-mx-1 my-1 h-px bg-muted\"></div>\n\n <div *ngIf=\"item.type === 'label'\" class=\"px-2 py-1.5 text-sm font-semibold text-foreground\">\n {{ item.label }}\n </div>\n\n <button\n *ngIf=\"!item.type || item.type === 'item'\"\n type=\"button\"\n [disabled]=\"item.disabled\"\n class=\"relative flex w-full appearance-none cursor-default select-none items-center rounded-sm border-0 bg-transparent py-1.5 pr-2 text-left text-sm outline-none transition-colors hover:bg-accent hover:text-accent-foreground focus-visible:bg-accent focus-visible:text-accent-foreground disabled:pointer-events-none disabled:opacity-50\"\n [ngClass]=\"item.inset ? 'pl-8' : 'px-2'\"\n (click)=\"select(item)\"\n >\n <span class=\"mr-2 inline-flex w-4 shrink-0 items-center justify-center text-foreground\">\n <svg *ngIf=\"item.checked\" viewBox=\"0 0 24 24\" class=\"h-3.5 w-3.5\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M5 12.5L9.2 16.7L19 7\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\"></path>\n </svg>\n <span *ngIf=\"item.selectedDot\" class=\"h-2 w-2 rounded-full bg-foreground\"></span>\n </span>\n <span class=\"min-w-0 flex-1 truncate text-foreground\">{{ item.label }}</span>\n <span *ngIf=\"item.shortcut\" class=\"text-xs text-muted-foreground\">{{ item.shortcut }}</span>\n <svg *ngIf=\"item.showChevron\" viewBox=\"0 0 24 24\" class=\"h-3.5 w-3.5 text-muted-foreground\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M9 6L15 12L9 18\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"></path>\n </svg>\n </button>\n </ng-container>\n </div>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1814
1843
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmContextMenuComponent, decorators: [{
|
|
1815
1844
|
type: Component,
|
|
1816
1845
|
args: [{ selector: 'pdm-context-menu', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"relative\" [ngClass]=\"className\" (contextmenu)=\"onContextMenu($event)\">\n <div\n class=\"flex items-center justify-center rounded-md border border-dashed border-border\"\n [style.width.px]=\"width\"\n [style.height.px]=\"height\"\n >\n <span class=\"text-sm font-medium text-foreground\">{{ triggerLabel }}</span>\n </div>\n\n <div\n *ngIf=\"open\"\n class=\"fixed z-50 w-52 rounded-md border border-border bg-popover p-1 text-popover-foreground shadow-md\"\n [style.left.px]=\"x + 4\"\n [style.top.px]=\"y + 2\"\n >\n <div>\n <ng-container *ngFor=\"let item of items\">\n <div *ngIf=\"item.type === 'separator'\" class=\"-mx-1 my-1 h-px bg-muted\"></div>\n\n <div *ngIf=\"item.type === 'label'\" class=\"px-2 py-1.5 text-sm font-semibold text-foreground\">\n {{ item.label }}\n </div>\n\n <button\n *ngIf=\"!item.type || item.type === 'item'\"\n type=\"button\"\n [disabled]=\"item.disabled\"\n class=\"relative flex w-full appearance-none cursor-default select-none items-center rounded-sm border-0 bg-transparent py-1.5 pr-2 text-left text-sm outline-none transition-colors hover:bg-accent hover:text-accent-foreground focus-visible:bg-accent focus-visible:text-accent-foreground disabled:pointer-events-none disabled:opacity-50\"\n [ngClass]=\"item.inset ? 'pl-8' : 'px-2'\"\n (click)=\"select(item)\"\n >\n <span class=\"mr-2 inline-flex w-4 shrink-0 items-center justify-center text-foreground\">\n <svg *ngIf=\"item.checked\" viewBox=\"0 0 24 24\" class=\"h-3.5 w-3.5\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M5 12.5L9.2 16.7L19 7\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\"></path>\n </svg>\n <span *ngIf=\"item.selectedDot\" class=\"h-2 w-2 rounded-full bg-foreground\"></span>\n </span>\n <span class=\"min-w-0 flex-1 truncate text-foreground\">{{ item.label }}</span>\n <span *ngIf=\"item.shortcut\" class=\"text-xs text-muted-foreground\">{{ item.shortcut }}</span>\n <svg *ngIf=\"item.showChevron\" viewBox=\"0 0 24 24\" class=\"h-3.5 w-3.5 text-muted-foreground\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M9 6L15 12L9 18\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"></path>\n </svg>\n </button>\n </ng-container>\n </div>\n </div>\n</div>\n" }]
|
|
@@ -1829,9 +1858,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
1829
1858
|
}], onEsc: [{
|
|
1830
1859
|
type: HostListener,
|
|
1831
1860
|
args: ['document:keydown.escape']
|
|
1832
|
-
}], onDocumentClick: [{
|
|
1833
|
-
type: HostListener,
|
|
1834
|
-
args: ['document:click', ['$event']]
|
|
1835
1861
|
}] } });
|
|
1836
1862
|
|
|
1837
1863
|
class PdmDataTableComponent {
|
|
@@ -2575,7 +2601,9 @@ class PdmDropdownMenuComponent {
|
|
|
2575
2601
|
}
|
|
2576
2602
|
}
|
|
2577
2603
|
onEsc() {
|
|
2578
|
-
this.
|
|
2604
|
+
if (this.open) {
|
|
2605
|
+
this.closePanel();
|
|
2606
|
+
}
|
|
2579
2607
|
}
|
|
2580
2608
|
openPanel() {
|
|
2581
2609
|
if (this.overlayRef)
|
|
@@ -2679,11 +2707,25 @@ class PdmDrawerComponent {
|
|
|
2679
2707
|
this.usernameLabel = 'Username';
|
|
2680
2708
|
this.usernameValue = '';
|
|
2681
2709
|
this.responsivePrimaryLabel = '';
|
|
2710
|
+
/** Close when the ESC key is pressed. Default: `true`. */
|
|
2711
|
+
this.closeOnEsc = true;
|
|
2712
|
+
/** Close when the backdrop is clicked. Default: `true`. */
|
|
2713
|
+
this.closeOnBackdropClick = true;
|
|
2682
2714
|
this.openChange = new EventEmitter();
|
|
2683
2715
|
this.primaryAction = new EventEmitter();
|
|
2684
2716
|
this.secondaryAction = new EventEmitter();
|
|
2685
2717
|
this.bars = [];
|
|
2686
2718
|
}
|
|
2719
|
+
onEsc() {
|
|
2720
|
+
if (this.open && this.closeOnEsc) {
|
|
2721
|
+
this.close();
|
|
2722
|
+
}
|
|
2723
|
+
}
|
|
2724
|
+
onBackdropClick() {
|
|
2725
|
+
if (this.closeOnBackdropClick) {
|
|
2726
|
+
this.close();
|
|
2727
|
+
}
|
|
2728
|
+
}
|
|
2687
2729
|
close() {
|
|
2688
2730
|
this.openChange.emit(false);
|
|
2689
2731
|
}
|
|
@@ -2695,10 +2737,10 @@ class PdmDrawerComponent {
|
|
|
2695
2737
|
}
|
|
2696
2738
|
}
|
|
2697
2739
|
PdmDrawerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmDrawerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
2698
|
-
PdmDrawerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmDrawerComponent, selector: "pdm-drawer", inputs: { open: "open", variant: "variant", className: "className", title: "title", description: "description", value: "value", unit: "unit", decrementLabel: "decrementLabel", incrementLabel: "incrementLabel", primaryLabel: "primaryLabel", secondaryLabel: "secondaryLabel", profileTitle: "profileTitle", profileDescription: "profileDescription", nameLabel: "nameLabel", nameValue: "nameValue", usernameLabel: "usernameLabel", usernameValue: "usernameValue", responsivePrimaryLabel: "responsivePrimaryLabel", bars: "bars" }, outputs: { openChange: "openChange", primaryAction: "primaryAction", secondaryAction: "secondaryAction" }, ngImport: i0, template: "<div *ngIf=\"open\" class=\"fixed inset-0 z-50\" [ngClass]=\"className\">\n <div class=\"absolute inset-0 bg-foreground/30\" (click)=\"
|
|
2740
|
+
PdmDrawerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmDrawerComponent, selector: "pdm-drawer", inputs: { open: "open", variant: "variant", className: "className", title: "title", description: "description", value: "value", unit: "unit", decrementLabel: "decrementLabel", incrementLabel: "incrementLabel", primaryLabel: "primaryLabel", secondaryLabel: "secondaryLabel", profileTitle: "profileTitle", profileDescription: "profileDescription", nameLabel: "nameLabel", nameValue: "nameValue", usernameLabel: "usernameLabel", usernameValue: "usernameValue", responsivePrimaryLabel: "responsivePrimaryLabel", closeOnEsc: "closeOnEsc", closeOnBackdropClick: "closeOnBackdropClick", bars: "bars" }, outputs: { openChange: "openChange", primaryAction: "primaryAction", secondaryAction: "secondaryAction" }, host: { listeners: { "document:keydown.escape": "onEsc()" } }, ngImport: i0, template: "<div *ngIf=\"open\" class=\"fixed inset-0 z-50\" [ngClass]=\"className\">\n <div class=\"absolute inset-0 bg-foreground/30\" (click)=\"onBackdropClick()\"></div>\n\n <section\n *ngIf=\"variant === 'drawer'; else responsiveDialog\"\n class=\"absolute inset-x-0 bottom-0 mx-auto w-full max-w-6xl rounded-t-lg border border-border bg-background p-6 shadow-lg\"\n >\n <div class=\"mx-auto mb-4 h-1 w-10 rounded-full bg-border\"></div>\n\n <div class=\"mx-auto flex max-w-sm flex-col items-center\">\n <h3 class=\"m-0 text-sm font-semibold text-foreground\">{{ title }}</h3>\n <p class=\"m-0 mt-1 text-xs text-muted-foreground\">{{ description }}</p>\n\n <div class=\"mt-3 flex w-full items-center justify-center gap-4\">\n <button type=\"button\" class=\"inline-flex h-6 w-6 appearance-none items-center justify-center rounded-full border border-border bg-transparent p-0 text-muted-foreground\">{{ decrementLabel }}</button>\n <div class=\"text-center\">\n <div class=\"text-5xl font-semibold leading-none text-foreground\">{{ value }}</div>\n <div class=\"mt-1 text-xs tracking-wide text-muted-foreground\">{{ unit }}</div>\n </div>\n <button type=\"button\" class=\"inline-flex h-6 w-6 appearance-none items-center justify-center rounded-full border border-border bg-transparent p-0 text-muted-foreground\">{{ incrementLabel }}</button>\n </div>\n\n <div *ngIf=\"bars.length\" class=\"mt-3 flex h-14 w-full items-end gap-1\">\n <div *ngFor=\"let bar of bars\" class=\"flex-1 bg-foreground\" [style.height.px]=\"bar\"></div>\n </div>\n\n <button *ngIf=\"primaryLabel\" type=\"button\" class=\"mt-3 h-9 w-full appearance-none rounded-md bg-primary text-sm font-medium text-primary-foreground\" (click)=\"onPrimaryAction()\">{{ primaryLabel }}</button>\n <button *ngIf=\"secondaryLabel\" type=\"button\" class=\"mt-2 h-9 w-full appearance-none rounded-md border border-input bg-background text-sm font-medium text-foreground\" (click)=\"onSecondaryAction()\">{{ secondaryLabel }}</button>\n </div>\n </section>\n\n <ng-template #responsiveDialog>\n <section class=\"absolute left-1/2 top-1/2 w-full max-w-lg -translate-x-1/2 -translate-y-1/2 rounded-lg border border-border bg-background p-6 shadow-lg\">\n <div class=\"flex items-start justify-between\">\n <div>\n <h3 class=\"m-0 text-lg font-semibold leading-none tracking-tight text-foreground\">{{ profileTitle }}</h3>\n <p class=\"m-0 mt-1 text-sm text-muted-foreground\">{{ profileDescription }}</p>\n </div>\n <button type=\"button\" class=\"h-5 w-5 appearance-none border-0 bg-transparent p-0 text-muted-foreground\" (click)=\"close()\">\u00D7</button>\n </div>\n\n <div class=\"mt-3 flex flex-col gap-3\">\n <div>\n <label class=\"mb-1 block text-xs font-medium text-foreground\">{{ nameLabel }}</label>\n <div class=\"h-8 rounded-md border border-border bg-background px-2 py-1 text-xs text-foreground\">{{ nameValue }}</div>\n </div>\n <div>\n <label class=\"mb-1 block text-xs font-medium text-foreground\">{{ usernameLabel }}</label>\n <div class=\"h-8 rounded-md border border-border bg-background px-2 py-1 text-xs text-foreground\">{{ usernameValue }}</div>\n </div>\n </div>\n\n <button *ngIf=\"responsivePrimaryLabel\" type=\"button\" class=\"mt-3 h-8 w-full appearance-none rounded-md bg-primary text-xs font-medium text-primary-foreground\" (click)=\"onPrimaryAction()\">{{ responsivePrimaryLabel }}</button>\n </section>\n </ng-template>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2699
2741
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmDrawerComponent, decorators: [{
|
|
2700
2742
|
type: Component,
|
|
2701
|
-
args: [{ selector: 'pdm-drawer', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div *ngIf=\"open\" class=\"fixed inset-0 z-50\" [ngClass]=\"className\">\n <div class=\"absolute inset-0 bg-foreground/30\" (click)=\"
|
|
2743
|
+
args: [{ selector: 'pdm-drawer', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div *ngIf=\"open\" class=\"fixed inset-0 z-50\" [ngClass]=\"className\">\n <div class=\"absolute inset-0 bg-foreground/30\" (click)=\"onBackdropClick()\"></div>\n\n <section\n *ngIf=\"variant === 'drawer'; else responsiveDialog\"\n class=\"absolute inset-x-0 bottom-0 mx-auto w-full max-w-6xl rounded-t-lg border border-border bg-background p-6 shadow-lg\"\n >\n <div class=\"mx-auto mb-4 h-1 w-10 rounded-full bg-border\"></div>\n\n <div class=\"mx-auto flex max-w-sm flex-col items-center\">\n <h3 class=\"m-0 text-sm font-semibold text-foreground\">{{ title }}</h3>\n <p class=\"m-0 mt-1 text-xs text-muted-foreground\">{{ description }}</p>\n\n <div class=\"mt-3 flex w-full items-center justify-center gap-4\">\n <button type=\"button\" class=\"inline-flex h-6 w-6 appearance-none items-center justify-center rounded-full border border-border bg-transparent p-0 text-muted-foreground\">{{ decrementLabel }}</button>\n <div class=\"text-center\">\n <div class=\"text-5xl font-semibold leading-none text-foreground\">{{ value }}</div>\n <div class=\"mt-1 text-xs tracking-wide text-muted-foreground\">{{ unit }}</div>\n </div>\n <button type=\"button\" class=\"inline-flex h-6 w-6 appearance-none items-center justify-center rounded-full border border-border bg-transparent p-0 text-muted-foreground\">{{ incrementLabel }}</button>\n </div>\n\n <div *ngIf=\"bars.length\" class=\"mt-3 flex h-14 w-full items-end gap-1\">\n <div *ngFor=\"let bar of bars\" class=\"flex-1 bg-foreground\" [style.height.px]=\"bar\"></div>\n </div>\n\n <button *ngIf=\"primaryLabel\" type=\"button\" class=\"mt-3 h-9 w-full appearance-none rounded-md bg-primary text-sm font-medium text-primary-foreground\" (click)=\"onPrimaryAction()\">{{ primaryLabel }}</button>\n <button *ngIf=\"secondaryLabel\" type=\"button\" class=\"mt-2 h-9 w-full appearance-none rounded-md border border-input bg-background text-sm font-medium text-foreground\" (click)=\"onSecondaryAction()\">{{ secondaryLabel }}</button>\n </div>\n </section>\n\n <ng-template #responsiveDialog>\n <section class=\"absolute left-1/2 top-1/2 w-full max-w-lg -translate-x-1/2 -translate-y-1/2 rounded-lg border border-border bg-background p-6 shadow-lg\">\n <div class=\"flex items-start justify-between\">\n <div>\n <h3 class=\"m-0 text-lg font-semibold leading-none tracking-tight text-foreground\">{{ profileTitle }}</h3>\n <p class=\"m-0 mt-1 text-sm text-muted-foreground\">{{ profileDescription }}</p>\n </div>\n <button type=\"button\" class=\"h-5 w-5 appearance-none border-0 bg-transparent p-0 text-muted-foreground\" (click)=\"close()\">\u00D7</button>\n </div>\n\n <div class=\"mt-3 flex flex-col gap-3\">\n <div>\n <label class=\"mb-1 block text-xs font-medium text-foreground\">{{ nameLabel }}</label>\n <div class=\"h-8 rounded-md border border-border bg-background px-2 py-1 text-xs text-foreground\">{{ nameValue }}</div>\n </div>\n <div>\n <label class=\"mb-1 block text-xs font-medium text-foreground\">{{ usernameLabel }}</label>\n <div class=\"h-8 rounded-md border border-border bg-background px-2 py-1 text-xs text-foreground\">{{ usernameValue }}</div>\n </div>\n </div>\n\n <button *ngIf=\"responsivePrimaryLabel\" type=\"button\" class=\"mt-3 h-8 w-full appearance-none rounded-md bg-primary text-xs font-medium text-primary-foreground\" (click)=\"onPrimaryAction()\">{{ responsivePrimaryLabel }}</button>\n </section>\n </ng-template>\n</div>\n" }]
|
|
2702
2744
|
}], propDecorators: { open: [{
|
|
2703
2745
|
type: Input
|
|
2704
2746
|
}], variant: [{
|
|
@@ -2735,6 +2777,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
2735
2777
|
type: Input
|
|
2736
2778
|
}], responsivePrimaryLabel: [{
|
|
2737
2779
|
type: Input
|
|
2780
|
+
}], closeOnEsc: [{
|
|
2781
|
+
type: Input
|
|
2782
|
+
}], closeOnBackdropClick: [{
|
|
2783
|
+
type: Input
|
|
2738
2784
|
}], openChange: [{
|
|
2739
2785
|
type: Output
|
|
2740
2786
|
}], primaryAction: [{
|
|
@@ -2743,6 +2789,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
2743
2789
|
type: Output
|
|
2744
2790
|
}], bars: [{
|
|
2745
2791
|
type: Input
|
|
2792
|
+
}], onEsc: [{
|
|
2793
|
+
type: HostListener,
|
|
2794
|
+
args: ['document:keydown.escape']
|
|
2746
2795
|
}] } });
|
|
2747
2796
|
|
|
2748
2797
|
class PdmEmptyComponent {
|
|
@@ -3274,12 +3323,29 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
3274
3323
|
}] } });
|
|
3275
3324
|
|
|
3276
3325
|
class PdmMenubarComponent {
|
|
3277
|
-
constructor() {
|
|
3326
|
+
constructor(elementRef, cdr) {
|
|
3327
|
+
this.elementRef = elementRef;
|
|
3328
|
+
this.cdr = cdr;
|
|
3278
3329
|
this.menus = [];
|
|
3279
3330
|
this.className = '';
|
|
3280
3331
|
this.itemSelect = new EventEmitter();
|
|
3281
3332
|
this.openIndex = -1;
|
|
3282
3333
|
}
|
|
3334
|
+
ngOnInit() {
|
|
3335
|
+
this.boundPointerDown = (event) => this.onDocumentPointerDown(event);
|
|
3336
|
+
document.addEventListener('pointerdown', this.boundPointerDown, { capture: true });
|
|
3337
|
+
}
|
|
3338
|
+
ngOnDestroy() {
|
|
3339
|
+
if (this.boundPointerDown) {
|
|
3340
|
+
document.removeEventListener('pointerdown', this.boundPointerDown, { capture: true });
|
|
3341
|
+
}
|
|
3342
|
+
}
|
|
3343
|
+
onEsc() {
|
|
3344
|
+
if (this.openIndex >= 0) {
|
|
3345
|
+
this.openIndex = -1;
|
|
3346
|
+
this.cdr.markForCheck();
|
|
3347
|
+
}
|
|
3348
|
+
}
|
|
3283
3349
|
toggle(index) {
|
|
3284
3350
|
this.openIndex = this.openIndex === index ? -1 : index;
|
|
3285
3351
|
}
|
|
@@ -3293,18 +3359,32 @@ class PdmMenubarComponent {
|
|
|
3293
3359
|
}
|
|
3294
3360
|
this.select(item.value);
|
|
3295
3361
|
}
|
|
3362
|
+
onDocumentPointerDown(event) {
|
|
3363
|
+
if (this.openIndex < 0)
|
|
3364
|
+
return;
|
|
3365
|
+
const target = event.target;
|
|
3366
|
+
if (!target)
|
|
3367
|
+
return;
|
|
3368
|
+
if (!this.elementRef.nativeElement.contains(target)) {
|
|
3369
|
+
this.openIndex = -1;
|
|
3370
|
+
this.cdr.markForCheck();
|
|
3371
|
+
}
|
|
3372
|
+
}
|
|
3296
3373
|
}
|
|
3297
|
-
PdmMenubarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmMenubarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
3298
|
-
PdmMenubarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmMenubarComponent, selector: "pdm-menubar", inputs: { menus: "menus", className: "className" }, outputs: { itemSelect: "itemSelect" }, ngImport: i0, template: "<nav role=\"menubar\" [ngClass]=\"['inline-flex h-9 items-center gap-0.5 rounded-md border border-border bg-background p-1 shadow-sm', className]\">\n <div *ngFor=\"let menu of menus; let i = index\" class=\"relative\">\n <button type=\"button\" class=\"inline-flex h-7 appearance-none items-center rounded-sm border-0 bg-transparent px-3 text-sm text-foreground hover:bg-accent focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background\" (click)=\"toggle(i)\">{{ menu.label }}</button>\n <div *ngIf=\"openIndex === i\" class=\"absolute left-0 top-full z-50 mt-1 min-w-48 rounded-md border border-border bg-popover p-1 text-popover-foreground shadow-md\">\n <button\n *ngFor=\"let item of menu.items\"\n type=\"button\"\n [disabled]=\"item.disabled || !item.value\"\n class=\"relative flex w-full appearance-none cursor-default select-none items-center rounded-sm border-0 bg-transparent px-2 py-1.5 text-sm outline-none transition-colors hover:bg-accent hover:text-accent-foreground focus-visible:bg-accent focus-visible:text-accent-foreground disabled:pointer-events-none disabled:opacity-50\"\n (click)=\"selectItem(item)\"\n >\n {{ item.label }}\n </button>\n </div>\n </div>\n</nav>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
3374
|
+
PdmMenubarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmMenubarComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
3375
|
+
PdmMenubarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmMenubarComponent, selector: "pdm-menubar", inputs: { menus: "menus", className: "className" }, outputs: { itemSelect: "itemSelect" }, host: { listeners: { "document:keydown.escape": "onEsc()" } }, ngImport: i0, template: "<nav role=\"menubar\" [ngClass]=\"['inline-flex h-9 items-center gap-0.5 rounded-md border border-border bg-background p-1 shadow-sm', className]\">\n <div *ngFor=\"let menu of menus; let i = index\" class=\"relative\">\n <button type=\"button\" class=\"inline-flex h-7 appearance-none items-center rounded-sm border-0 bg-transparent px-3 text-sm text-foreground hover:bg-accent focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background\" (click)=\"toggle(i)\">{{ menu.label }}</button>\n <div *ngIf=\"openIndex === i\" class=\"absolute left-0 top-full z-50 mt-1 min-w-48 rounded-md border border-border bg-popover p-1 text-popover-foreground shadow-md\">\n <button\n *ngFor=\"let item of menu.items\"\n type=\"button\"\n [disabled]=\"item.disabled || !item.value\"\n class=\"relative flex w-full appearance-none cursor-default select-none items-center rounded-sm border-0 bg-transparent px-2 py-1.5 text-sm outline-none transition-colors hover:bg-accent hover:text-accent-foreground focus-visible:bg-accent focus-visible:text-accent-foreground disabled:pointer-events-none disabled:opacity-50\"\n (click)=\"selectItem(item)\"\n >\n {{ item.label }}\n </button>\n </div>\n </div>\n</nav>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
3299
3376
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmMenubarComponent, decorators: [{
|
|
3300
3377
|
type: Component,
|
|
3301
3378
|
args: [{ selector: 'pdm-menubar', changeDetection: ChangeDetectionStrategy.OnPush, template: "<nav role=\"menubar\" [ngClass]=\"['inline-flex h-9 items-center gap-0.5 rounded-md border border-border bg-background p-1 shadow-sm', className]\">\n <div *ngFor=\"let menu of menus; let i = index\" class=\"relative\">\n <button type=\"button\" class=\"inline-flex h-7 appearance-none items-center rounded-sm border-0 bg-transparent px-3 text-sm text-foreground hover:bg-accent focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background\" (click)=\"toggle(i)\">{{ menu.label }}</button>\n <div *ngIf=\"openIndex === i\" class=\"absolute left-0 top-full z-50 mt-1 min-w-48 rounded-md border border-border bg-popover p-1 text-popover-foreground shadow-md\">\n <button\n *ngFor=\"let item of menu.items\"\n type=\"button\"\n [disabled]=\"item.disabled || !item.value\"\n class=\"relative flex w-full appearance-none cursor-default select-none items-center rounded-sm border-0 bg-transparent px-2 py-1.5 text-sm outline-none transition-colors hover:bg-accent hover:text-accent-foreground focus-visible:bg-accent focus-visible:text-accent-foreground disabled:pointer-events-none disabled:opacity-50\"\n (click)=\"selectItem(item)\"\n >\n {{ item.label }}\n </button>\n </div>\n </div>\n</nav>\n" }]
|
|
3302
|
-
}], propDecorators: { menus: [{
|
|
3379
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { menus: [{
|
|
3303
3380
|
type: Input
|
|
3304
3381
|
}], className: [{
|
|
3305
3382
|
type: Input
|
|
3306
3383
|
}], itemSelect: [{
|
|
3307
3384
|
type: Output
|
|
3385
|
+
}], onEsc: [{
|
|
3386
|
+
type: HostListener,
|
|
3387
|
+
args: ['document:keydown.escape']
|
|
3308
3388
|
}] } });
|
|
3309
3389
|
|
|
3310
3390
|
class PdmNativeSelectComponent {
|
|
@@ -3362,6 +3442,88 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
3362
3442
|
type: Input
|
|
3363
3443
|
}] } });
|
|
3364
3444
|
|
|
3445
|
+
/**
|
|
3446
|
+
* Emits `(pdmOutsideClick)` whenever a `pointerdown` event fires outside the host element.
|
|
3447
|
+
*
|
|
3448
|
+
* Uses the CAPTURE phase so it intercepts clicks even when inner elements call
|
|
3449
|
+
* `stopPropagation()` (e.g. CDK overlay panels).
|
|
3450
|
+
*
|
|
3451
|
+
* SSR-safe: no listener is registered when running on the server.
|
|
3452
|
+
*
|
|
3453
|
+
* @example
|
|
3454
|
+
* ```html
|
|
3455
|
+
* <div [pdmOutsideClick]
|
|
3456
|
+
* (pdmOutsideClick)="close()"
|
|
3457
|
+
* [pdmOutsideClickDisabled]="!open">
|
|
3458
|
+
* </div>
|
|
3459
|
+
* ```
|
|
3460
|
+
*/
|
|
3461
|
+
class PdmOutsideClickDirective {
|
|
3462
|
+
constructor(elementRef, document, platformId) {
|
|
3463
|
+
this.elementRef = elementRef;
|
|
3464
|
+
this.document = document;
|
|
3465
|
+
/** When `true`, the outside-click listener is inactive. */
|
|
3466
|
+
this.pdmOutsideClickDisabled = false;
|
|
3467
|
+
/**
|
|
3468
|
+
* Additional elements to exclude from the "outside" check.
|
|
3469
|
+
* Useful when the trigger lives outside the host (e.g. a menubar button
|
|
3470
|
+
* that opens a floating panel bound to a different root element).
|
|
3471
|
+
*/
|
|
3472
|
+
this.pdmOutsideClickExclude = [];
|
|
3473
|
+
/** Fires when a `pointerdown` lands outside the host (and excluded elements). */
|
|
3474
|
+
this.pdmOutsideClick = new EventEmitter();
|
|
3475
|
+
this.isBrowser = isPlatformBrowser(platformId);
|
|
3476
|
+
}
|
|
3477
|
+
ngOnInit() {
|
|
3478
|
+
if (!this.isBrowser)
|
|
3479
|
+
return;
|
|
3480
|
+
this.boundHandler = (event) => this.onPointerDown(event);
|
|
3481
|
+
this.document.addEventListener('pointerdown', this.boundHandler, { capture: true });
|
|
3482
|
+
}
|
|
3483
|
+
ngOnDestroy() {
|
|
3484
|
+
if (!this.isBrowser || !this.boundHandler)
|
|
3485
|
+
return;
|
|
3486
|
+
this.document.removeEventListener('pointerdown', this.boundHandler, { capture: true });
|
|
3487
|
+
}
|
|
3488
|
+
onPointerDown(event) {
|
|
3489
|
+
if (this.pdmOutsideClickDisabled)
|
|
3490
|
+
return;
|
|
3491
|
+
const target = event.target;
|
|
3492
|
+
if (!target)
|
|
3493
|
+
return;
|
|
3494
|
+
// Check if click is inside the host element.
|
|
3495
|
+
if (this.elementRef.nativeElement.contains(target))
|
|
3496
|
+
return;
|
|
3497
|
+
// Check if click is inside any excluded element.
|
|
3498
|
+
for (const excluded of this.pdmOutsideClickExclude) {
|
|
3499
|
+
const el = excluded instanceof ElementRef ? excluded.nativeElement : excluded;
|
|
3500
|
+
if (el && el.contains(target))
|
|
3501
|
+
return;
|
|
3502
|
+
}
|
|
3503
|
+
this.pdmOutsideClick.emit(event);
|
|
3504
|
+
}
|
|
3505
|
+
}
|
|
3506
|
+
PdmOutsideClickDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmOutsideClickDirective, deps: [{ token: i0.ElementRef }, { token: DOCUMENT }, { token: PLATFORM_ID }], target: i0.ɵɵFactoryTarget.Directive });
|
|
3507
|
+
PdmOutsideClickDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.3.0", type: PdmOutsideClickDirective, selector: "[pdmOutsideClick]", inputs: { pdmOutsideClickDisabled: "pdmOutsideClickDisabled", pdmOutsideClickExclude: "pdmOutsideClickExclude" }, outputs: { pdmOutsideClick: "pdmOutsideClick" }, ngImport: i0 });
|
|
3508
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmOutsideClickDirective, decorators: [{
|
|
3509
|
+
type: Directive,
|
|
3510
|
+
args: [{
|
|
3511
|
+
selector: '[pdmOutsideClick]'
|
|
3512
|
+
}]
|
|
3513
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: Document, decorators: [{
|
|
3514
|
+
type: Inject,
|
|
3515
|
+
args: [DOCUMENT]
|
|
3516
|
+
}] }, { type: undefined, decorators: [{
|
|
3517
|
+
type: Inject,
|
|
3518
|
+
args: [PLATFORM_ID]
|
|
3519
|
+
}] }]; }, propDecorators: { pdmOutsideClickDisabled: [{
|
|
3520
|
+
type: Input
|
|
3521
|
+
}], pdmOutsideClickExclude: [{
|
|
3522
|
+
type: Input
|
|
3523
|
+
}], pdmOutsideClick: [{
|
|
3524
|
+
type: Output
|
|
3525
|
+
}] } });
|
|
3526
|
+
|
|
3365
3527
|
/**
|
|
3366
3528
|
* Directive used to declare an option inside `<pdm-select>` via content projection.
|
|
3367
3529
|
*
|
|
@@ -3481,7 +3643,9 @@ class PdmSelectComponent {
|
|
|
3481
3643
|
this.closePanel();
|
|
3482
3644
|
}
|
|
3483
3645
|
onEscape() {
|
|
3484
|
-
this.
|
|
3646
|
+
if (this.open) {
|
|
3647
|
+
this.closePanel();
|
|
3648
|
+
}
|
|
3485
3649
|
}
|
|
3486
3650
|
openPanel() {
|
|
3487
3651
|
if (this.overlayRef)
|
|
@@ -3645,6 +3809,15 @@ class PdmPopoverComponent {
|
|
|
3645
3809
|
this.openChange = new EventEmitter();
|
|
3646
3810
|
this.panelPlacement = 'bottom';
|
|
3647
3811
|
}
|
|
3812
|
+
ngOnInit() {
|
|
3813
|
+
this.boundPointerDown = (event) => this.onDocumentPointerDown(event);
|
|
3814
|
+
document.addEventListener('pointerdown', this.boundPointerDown, { capture: true });
|
|
3815
|
+
}
|
|
3816
|
+
ngOnDestroy() {
|
|
3817
|
+
if (this.boundPointerDown) {
|
|
3818
|
+
document.removeEventListener('pointerdown', this.boundPointerDown, { capture: true });
|
|
3819
|
+
}
|
|
3820
|
+
}
|
|
3648
3821
|
set open(value) {
|
|
3649
3822
|
this._open = !!value;
|
|
3650
3823
|
if (this._open) {
|
|
@@ -3676,7 +3849,10 @@ class PdmPopoverComponent {
|
|
|
3676
3849
|
this.openChange.emit(false);
|
|
3677
3850
|
}
|
|
3678
3851
|
}
|
|
3679
|
-
|
|
3852
|
+
onViewportChange() {
|
|
3853
|
+
this.updatePanelPlacement();
|
|
3854
|
+
}
|
|
3855
|
+
onDocumentPointerDown(event) {
|
|
3680
3856
|
if (!this.open)
|
|
3681
3857
|
return;
|
|
3682
3858
|
const target = event.target;
|
|
@@ -3685,9 +3861,6 @@ class PdmPopoverComponent {
|
|
|
3685
3861
|
this.openChange.emit(false);
|
|
3686
3862
|
}
|
|
3687
3863
|
}
|
|
3688
|
-
onViewportChange() {
|
|
3689
|
-
this.updatePanelPlacement();
|
|
3690
|
-
}
|
|
3691
3864
|
schedulePanelPlacementUpdate() {
|
|
3692
3865
|
setTimeout(() => this.updatePanelPlacement());
|
|
3693
3866
|
}
|
|
@@ -3713,7 +3886,7 @@ class PdmPopoverComponent {
|
|
|
3713
3886
|
}
|
|
3714
3887
|
}
|
|
3715
3888
|
PdmPopoverComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmPopoverComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
3716
|
-
PdmPopoverComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmPopoverComponent, selector: "pdm-popover", inputs: { triggerText: "triggerText", className: "className", panelClassName: "panelClassName", showTrigger: "showTrigger", open: "open" }, outputs: { openChange: "openChange" }, host: { listeners: { "document:keydown.escape": "onEsc()", "
|
|
3889
|
+
PdmPopoverComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmPopoverComponent, selector: "pdm-popover", inputs: { triggerText: "triggerText", className: "className", panelClassName: "panelClassName", showTrigger: "showTrigger", open: "open" }, outputs: { openChange: "openChange" }, host: { listeners: { "document:keydown.escape": "onEsc()", "window:resize": "onViewportChange()", "window:scroll": "onViewportChange()" } }, viewQueries: [{ propertyName: "anchorRef", first: true, predicate: ["anchorEl"], descendants: true }, { propertyName: "triggerRef", first: true, predicate: ["triggerEl"], descendants: true }, { propertyName: "panelRef", first: true, predicate: ["panelEl"], descendants: true }], ngImport: i0, template: "<div #anchorEl class=\"relative inline-block\" [ngClass]=\"className\">\n <button #triggerEl *ngIf=\"showTrigger\" type=\"button\" class=\"inline-flex h-9 appearance-none items-center justify-center rounded-md border border-input bg-background px-3 text-sm font-medium text-foreground shadow-sm\" [attr.aria-expanded]=\"open\" (click)=\"toggle()\">{{ triggerText }}</button>\n <div #panelEl *ngIf=\"open || !showTrigger\" [ngClass]=\"panelClasses\">\n <ng-content></ng-content>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
3717
3890
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmPopoverComponent, decorators: [{
|
|
3718
3891
|
type: Component,
|
|
3719
3892
|
args: [{ selector: 'pdm-popover', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div #anchorEl class=\"relative inline-block\" [ngClass]=\"className\">\n <button #triggerEl *ngIf=\"showTrigger\" type=\"button\" class=\"inline-flex h-9 appearance-none items-center justify-center rounded-md border border-input bg-background px-3 text-sm font-medium text-foreground shadow-sm\" [attr.aria-expanded]=\"open\" (click)=\"toggle()\">{{ triggerText }}</button>\n <div #panelEl *ngIf=\"open || !showTrigger\" [ngClass]=\"panelClasses\">\n <ng-content></ng-content>\n </div>\n</div>\n" }]
|
|
@@ -3741,9 +3914,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
3741
3914
|
}], onEsc: [{
|
|
3742
3915
|
type: HostListener,
|
|
3743
3916
|
args: ['document:keydown.escape']
|
|
3744
|
-
}], onDocumentClick: [{
|
|
3745
|
-
type: HostListener,
|
|
3746
|
-
args: ['document:click', ['$event']]
|
|
3747
3917
|
}], onViewportChange: [{
|
|
3748
3918
|
type: HostListener,
|
|
3749
3919
|
args: ['window:resize']
|
|
@@ -3862,8 +4032,22 @@ class PdmSheetComponent {
|
|
|
3862
4032
|
this.open = false;
|
|
3863
4033
|
this.side = 'right';
|
|
3864
4034
|
this.className = '';
|
|
4035
|
+
/** Close when the ESC key is pressed. Default: `true`. */
|
|
4036
|
+
this.closeOnEsc = true;
|
|
4037
|
+
/** Close when the backdrop is clicked. Default: `true`. */
|
|
4038
|
+
this.closeOnBackdropClick = true;
|
|
3865
4039
|
this.openChange = new EventEmitter();
|
|
3866
4040
|
}
|
|
4041
|
+
onEsc() {
|
|
4042
|
+
if (this.open && this.closeOnEsc) {
|
|
4043
|
+
this.close();
|
|
4044
|
+
}
|
|
4045
|
+
}
|
|
4046
|
+
onBackdropClick() {
|
|
4047
|
+
if (this.closeOnBackdropClick) {
|
|
4048
|
+
this.close();
|
|
4049
|
+
}
|
|
4050
|
+
}
|
|
3867
4051
|
close() {
|
|
3868
4052
|
this.openChange.emit(false);
|
|
3869
4053
|
}
|
|
@@ -3878,18 +4062,25 @@ class PdmSheetComponent {
|
|
|
3878
4062
|
}
|
|
3879
4063
|
}
|
|
3880
4064
|
PdmSheetComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSheetComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
3881
|
-
PdmSheetComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmSheetComponent, selector: "pdm-sheet", inputs: { open: "open", side: "side", className: "className" }, outputs: { openChange: "openChange" }, ngImport: i0, template: "<div *ngIf=\"open\" class=\"fixed inset-0 z-50\">\n <button type=\"button\" class=\"absolute inset-0 appearance-none border-0 bg-foreground/80 p-0\" aria-label=\"Close sheet\" (click)=\"
|
|
4065
|
+
PdmSheetComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmSheetComponent, selector: "pdm-sheet", inputs: { open: "open", side: "side", className: "className", closeOnEsc: "closeOnEsc", closeOnBackdropClick: "closeOnBackdropClick" }, outputs: { openChange: "openChange" }, host: { listeners: { "document:keydown.escape": "onEsc()" } }, ngImport: i0, template: "<div *ngIf=\"open\" class=\"fixed inset-0 z-50\">\n <button type=\"button\" class=\"absolute inset-0 appearance-none border-0 bg-foreground/80 p-0\" aria-label=\"Close sheet\" (click)=\"onBackdropClick()\"></button>\n\n <section [ngClass]=\"['absolute border border-border bg-background p-6 shadow-lg', panelClass, className]\" role=\"dialog\" aria-modal=\"true\">\n <button type=\"button\" class=\"absolute right-3 top-3 appearance-none rounded-sm border-0 bg-transparent p-0 opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none\" (click)=\"close()\">\n <pdm-icon name=\"x\" [size]=\"16\"></pdm-icon>\n </button>\n <ng-content></ng-content>\n </section>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: PdmIconComponent, selector: "pdm-icon", inputs: ["name", "library", "assetUrl", "size", "strokeWidth", "className", "ariaLabel", "decorative"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
3882
4066
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSheetComponent, decorators: [{
|
|
3883
4067
|
type: Component,
|
|
3884
|
-
args: [{ selector: 'pdm-sheet', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div *ngIf=\"open\" class=\"fixed inset-0 z-50\">\n <button type=\"button\" class=\"absolute inset-0 appearance-none border-0 bg-foreground/80 p-0\" aria-label=\"Close sheet\" (click)=\"
|
|
4068
|
+
args: [{ selector: 'pdm-sheet', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div *ngIf=\"open\" class=\"fixed inset-0 z-50\">\n <button type=\"button\" class=\"absolute inset-0 appearance-none border-0 bg-foreground/80 p-0\" aria-label=\"Close sheet\" (click)=\"onBackdropClick()\"></button>\n\n <section [ngClass]=\"['absolute border border-border bg-background p-6 shadow-lg', panelClass, className]\" role=\"dialog\" aria-modal=\"true\">\n <button type=\"button\" class=\"absolute right-3 top-3 appearance-none rounded-sm border-0 bg-transparent p-0 opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none\" (click)=\"close()\">\n <pdm-icon name=\"x\" [size]=\"16\"></pdm-icon>\n </button>\n <ng-content></ng-content>\n </section>\n</div>\n" }]
|
|
3885
4069
|
}], propDecorators: { open: [{
|
|
3886
4070
|
type: Input
|
|
3887
4071
|
}], side: [{
|
|
3888
4072
|
type: Input
|
|
3889
4073
|
}], className: [{
|
|
3890
4074
|
type: Input
|
|
4075
|
+
}], closeOnEsc: [{
|
|
4076
|
+
type: Input
|
|
4077
|
+
}], closeOnBackdropClick: [{
|
|
4078
|
+
type: Input
|
|
3891
4079
|
}], openChange: [{
|
|
3892
4080
|
type: Output
|
|
4081
|
+
}], onEsc: [{
|
|
4082
|
+
type: HostListener,
|
|
4083
|
+
args: ['document:keydown.escape']
|
|
3893
4084
|
}] } });
|
|
3894
4085
|
|
|
3895
4086
|
class PdmSidebarComponent {
|
|
@@ -4500,6 +4691,7 @@ const COMPONENTS = [
|
|
|
4500
4691
|
PdmMenubarComponent,
|
|
4501
4692
|
PdmNativeSelectComponent,
|
|
4502
4693
|
PdmNavigationMenuComponent,
|
|
4694
|
+
PdmOutsideClickDirective,
|
|
4503
4695
|
PdmPaginationComponent,
|
|
4504
4696
|
PdmPopoverComponent,
|
|
4505
4697
|
PdmProgressComponent,
|
|
@@ -4562,6 +4754,7 @@ PdmUiKitModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version:
|
|
|
4562
4754
|
PdmMenubarComponent,
|
|
4563
4755
|
PdmNativeSelectComponent,
|
|
4564
4756
|
PdmNavigationMenuComponent,
|
|
4757
|
+
PdmOutsideClickDirective,
|
|
4565
4758
|
PdmPaginationComponent,
|
|
4566
4759
|
PdmPopoverComponent,
|
|
4567
4760
|
PdmProgressComponent,
|
|
@@ -4619,6 +4812,7 @@ PdmUiKitModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version:
|
|
|
4619
4812
|
PdmMenubarComponent,
|
|
4620
4813
|
PdmNativeSelectComponent,
|
|
4621
4814
|
PdmNavigationMenuComponent,
|
|
4815
|
+
PdmOutsideClickDirective,
|
|
4622
4816
|
PdmPaginationComponent,
|
|
4623
4817
|
PdmPopoverComponent,
|
|
4624
4818
|
PdmProgressComponent,
|
|
@@ -4654,5 +4848,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
4654
4848
|
* Generated bundle index. Do not edit.
|
|
4655
4849
|
*/
|
|
4656
4850
|
|
|
4657
|
-
export { PdmAccordionComponent, PdmAlertComponent, PdmAlertDialogComponent, PdmAspectRatioComponent, PdmAvatarComponent, PdmBadgeComponent, PdmBreadcrumbComponent, PdmButtonComponent, PdmButtonGroupComponent, PdmCalendarComponent, PdmCardComponent, PdmCarouselComponent, PdmChartComponent, PdmCheckboxComponent, PdmCollapsibleComponent, PdmComboboxComponent, PdmCommandComponent, PdmContextMenuComponent, PdmDataTableComponent, PdmDatePickerComponent, PdmDialogComponent, PdmDrawerComponent, PdmDropdownMenuComponent, PdmEmptyComponent, PdmFieldComponent, PdmHoverCardComponent, PdmIconComponent, PdmInputComponent, PdmInputGroupComponent, PdmInputOtpComponent, PdmInputPasswordComponent, PdmItemComponent, PdmKbdComponent, PdmLabelComponent, PdmMenubarComponent, PdmNativeSelectComponent, PdmNavigationMenuComponent, PdmPaginationComponent, PdmPopoverComponent, PdmProgressComponent, PdmRadioGroupComponent, PdmScrollAreaComponent, PdmSelectComponent, PdmSelectOptionDirective, PdmSeparatorComponent, PdmSheetComponent, PdmSidebarComponent, PdmSkeletonComponent, PdmSliderComponent, PdmSonnerComponent, PdmSpinnerComponent, PdmSwitchComponent, PdmTableComponent, PdmTabsComponent, PdmTextareaComponent, PdmToggleComponent, PdmToggleGroupComponent, PdmTooltipComponent, PdmUiKitModule, createFlexiblePositionStrategy };
|
|
4851
|
+
export { PdmAccordionComponent, PdmAlertComponent, PdmAlertDialogComponent, PdmAspectRatioComponent, PdmAvatarComponent, PdmBadgeComponent, PdmBreadcrumbComponent, PdmButtonComponent, PdmButtonGroupComponent, PdmCalendarComponent, PdmCardComponent, PdmCarouselComponent, PdmChartComponent, PdmCheckboxComponent, PdmCollapsibleComponent, PdmComboboxComponent, PdmCommandComponent, PdmContextMenuComponent, PdmDataTableComponent, PdmDatePickerComponent, PdmDialogComponent, PdmDrawerComponent, PdmDropdownMenuComponent, PdmEmptyComponent, PdmFieldComponent, PdmHoverCardComponent, PdmIconComponent, PdmInputComponent, PdmInputGroupComponent, PdmInputOtpComponent, PdmInputPasswordComponent, PdmItemComponent, PdmKbdComponent, PdmLabelComponent, PdmMenubarComponent, PdmNativeSelectComponent, PdmNavigationMenuComponent, PdmOutsideClickDirective, PdmPaginationComponent, PdmPopoverComponent, PdmProgressComponent, PdmRadioGroupComponent, PdmScrollAreaComponent, PdmSelectComponent, PdmSelectOptionDirective, PdmSeparatorComponent, PdmSheetComponent, PdmSidebarComponent, PdmSkeletonComponent, PdmSliderComponent, PdmSonnerComponent, PdmSpinnerComponent, PdmSwitchComponent, PdmTableComponent, PdmTabsComponent, PdmTextareaComponent, PdmToggleComponent, PdmToggleGroupComponent, PdmTooltipComponent, PdmUiKitModule, createFlexiblePositionStrategy };
|
|
4658
4852
|
//# sourceMappingURL=pdm-ui-kit.mjs.map
|