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/fesm2015/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';
|
|
@@ -91,32 +91,48 @@ class PdmAlertDialogComponent {
|
|
|
91
91
|
this.confirmText = 'Continue';
|
|
92
92
|
this.cancelText = 'Cancel';
|
|
93
93
|
this.className = '';
|
|
94
|
+
/** Close when the ESC key is pressed. Default: `true`. */
|
|
95
|
+
this.closeOnEsc = true;
|
|
94
96
|
this.openChange = new EventEmitter();
|
|
95
97
|
this.confirm = new EventEmitter();
|
|
96
98
|
this.cancel = new EventEmitter();
|
|
97
99
|
}
|
|
100
|
+
/**
|
|
101
|
+
* Returns `true` when at least one consumer listens to `openChange`.
|
|
102
|
+
* - **Controlled** (has observers): parent manages `open` via two-way binding → only emit.
|
|
103
|
+
* - **Uncontrolled** (no observers): we own the `open` state → mutate it locally.
|
|
104
|
+
*/
|
|
105
|
+
get isControlled() {
|
|
106
|
+
return this.openChange.observed;
|
|
107
|
+
}
|
|
98
108
|
onTriggerClick() {
|
|
99
|
-
this.
|
|
109
|
+
if (!this.isControlled) {
|
|
110
|
+
this.open = true;
|
|
111
|
+
}
|
|
100
112
|
this.openChange.emit(true);
|
|
101
113
|
}
|
|
102
114
|
onCancel() {
|
|
103
115
|
this.cancel.emit();
|
|
104
|
-
this.
|
|
116
|
+
if (!this.isControlled) {
|
|
117
|
+
this.open = false;
|
|
118
|
+
}
|
|
105
119
|
this.openChange.emit(false);
|
|
106
120
|
}
|
|
107
121
|
onConfirm() {
|
|
108
122
|
this.confirm.emit();
|
|
109
|
-
this.
|
|
123
|
+
if (!this.isControlled) {
|
|
124
|
+
this.open = false;
|
|
125
|
+
}
|
|
110
126
|
this.openChange.emit(false);
|
|
111
127
|
}
|
|
112
128
|
onEsc() {
|
|
113
|
-
if (this.open) {
|
|
129
|
+
if (this.open && this.closeOnEsc) {
|
|
114
130
|
this.onCancel();
|
|
115
131
|
}
|
|
116
132
|
}
|
|
117
133
|
}
|
|
118
134
|
PdmAlertDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmAlertDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
119
|
-
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 });
|
|
135
|
+
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 });
|
|
120
136
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmAlertDialogComponent, decorators: [{
|
|
121
137
|
type: Component,
|
|
122
138
|
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" }]
|
|
@@ -136,6 +152,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
136
152
|
type: Input
|
|
137
153
|
}], className: [{
|
|
138
154
|
type: Input
|
|
155
|
+
}], closeOnEsc: [{
|
|
156
|
+
type: Input
|
|
139
157
|
}], openChange: [{
|
|
140
158
|
type: Output
|
|
141
159
|
}], confirm: [{
|
|
@@ -1796,6 +1814,15 @@ class PdmContextMenuComponent {
|
|
|
1796
1814
|
this.x = 0;
|
|
1797
1815
|
this.y = 0;
|
|
1798
1816
|
}
|
|
1817
|
+
ngOnInit() {
|
|
1818
|
+
this.boundPointerDown = (event) => this.onDocumentPointerDown(event);
|
|
1819
|
+
document.addEventListener('pointerdown', this.boundPointerDown, { capture: true });
|
|
1820
|
+
}
|
|
1821
|
+
ngOnDestroy() {
|
|
1822
|
+
if (this.boundPointerDown) {
|
|
1823
|
+
document.removeEventListener('pointerdown', this.boundPointerDown, { capture: true });
|
|
1824
|
+
}
|
|
1825
|
+
}
|
|
1799
1826
|
onContextMenu(event) {
|
|
1800
1827
|
event.preventDefault();
|
|
1801
1828
|
this.x = event.clientX;
|
|
@@ -1809,9 +1836,11 @@ class PdmContextMenuComponent {
|
|
|
1809
1836
|
this.open = false;
|
|
1810
1837
|
}
|
|
1811
1838
|
onEsc() {
|
|
1812
|
-
this.open
|
|
1839
|
+
if (this.open) {
|
|
1840
|
+
this.open = false;
|
|
1841
|
+
}
|
|
1813
1842
|
}
|
|
1814
|
-
|
|
1843
|
+
onDocumentPointerDown(event) {
|
|
1815
1844
|
if (!this.open)
|
|
1816
1845
|
return;
|
|
1817
1846
|
const target = event.target;
|
|
@@ -1821,7 +1850,7 @@ class PdmContextMenuComponent {
|
|
|
1821
1850
|
}
|
|
1822
1851
|
}
|
|
1823
1852
|
PdmContextMenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmContextMenuComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
1824
|
-
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()"
|
|
1853
|
+
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 });
|
|
1825
1854
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmContextMenuComponent, decorators: [{
|
|
1826
1855
|
type: Component,
|
|
1827
1856
|
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" }]
|
|
@@ -1840,9 +1869,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
1840
1869
|
}], onEsc: [{
|
|
1841
1870
|
type: HostListener,
|
|
1842
1871
|
args: ['document:keydown.escape']
|
|
1843
|
-
}], onDocumentClick: [{
|
|
1844
|
-
type: HostListener,
|
|
1845
|
-
args: ['document:click', ['$event']]
|
|
1846
1872
|
}] } });
|
|
1847
1873
|
|
|
1848
1874
|
class PdmDataTableComponent {
|
|
@@ -2583,7 +2609,9 @@ class PdmDropdownMenuComponent {
|
|
|
2583
2609
|
}
|
|
2584
2610
|
}
|
|
2585
2611
|
onEsc() {
|
|
2586
|
-
this.
|
|
2612
|
+
if (this.open) {
|
|
2613
|
+
this.closePanel();
|
|
2614
|
+
}
|
|
2587
2615
|
}
|
|
2588
2616
|
openPanel() {
|
|
2589
2617
|
var _a, _b, _c;
|
|
@@ -2682,11 +2710,25 @@ class PdmDrawerComponent {
|
|
|
2682
2710
|
this.usernameLabel = 'Username';
|
|
2683
2711
|
this.usernameValue = '';
|
|
2684
2712
|
this.responsivePrimaryLabel = '';
|
|
2713
|
+
/** Close when the ESC key is pressed. Default: `true`. */
|
|
2714
|
+
this.closeOnEsc = true;
|
|
2715
|
+
/** Close when the backdrop is clicked. Default: `true`. */
|
|
2716
|
+
this.closeOnBackdropClick = true;
|
|
2685
2717
|
this.openChange = new EventEmitter();
|
|
2686
2718
|
this.primaryAction = new EventEmitter();
|
|
2687
2719
|
this.secondaryAction = new EventEmitter();
|
|
2688
2720
|
this.bars = [];
|
|
2689
2721
|
}
|
|
2722
|
+
onEsc() {
|
|
2723
|
+
if (this.open && this.closeOnEsc) {
|
|
2724
|
+
this.close();
|
|
2725
|
+
}
|
|
2726
|
+
}
|
|
2727
|
+
onBackdropClick() {
|
|
2728
|
+
if (this.closeOnBackdropClick) {
|
|
2729
|
+
this.close();
|
|
2730
|
+
}
|
|
2731
|
+
}
|
|
2690
2732
|
close() {
|
|
2691
2733
|
this.openChange.emit(false);
|
|
2692
2734
|
}
|
|
@@ -2698,10 +2740,10 @@ class PdmDrawerComponent {
|
|
|
2698
2740
|
}
|
|
2699
2741
|
}
|
|
2700
2742
|
PdmDrawerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmDrawerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
2701
|
-
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)=\"
|
|
2743
|
+
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 });
|
|
2702
2744
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmDrawerComponent, decorators: [{
|
|
2703
2745
|
type: Component,
|
|
2704
|
-
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)=\"
|
|
2746
|
+
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" }]
|
|
2705
2747
|
}], propDecorators: { open: [{
|
|
2706
2748
|
type: Input
|
|
2707
2749
|
}], variant: [{
|
|
@@ -2738,6 +2780,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
2738
2780
|
type: Input
|
|
2739
2781
|
}], responsivePrimaryLabel: [{
|
|
2740
2782
|
type: Input
|
|
2783
|
+
}], closeOnEsc: [{
|
|
2784
|
+
type: Input
|
|
2785
|
+
}], closeOnBackdropClick: [{
|
|
2786
|
+
type: Input
|
|
2741
2787
|
}], openChange: [{
|
|
2742
2788
|
type: Output
|
|
2743
2789
|
}], primaryAction: [{
|
|
@@ -2746,6 +2792,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
2746
2792
|
type: Output
|
|
2747
2793
|
}], bars: [{
|
|
2748
2794
|
type: Input
|
|
2795
|
+
}], onEsc: [{
|
|
2796
|
+
type: HostListener,
|
|
2797
|
+
args: ['document:keydown.escape']
|
|
2749
2798
|
}] } });
|
|
2750
2799
|
|
|
2751
2800
|
class PdmEmptyComponent {
|
|
@@ -3279,12 +3328,29 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
3279
3328
|
}] } });
|
|
3280
3329
|
|
|
3281
3330
|
class PdmMenubarComponent {
|
|
3282
|
-
constructor() {
|
|
3331
|
+
constructor(elementRef, cdr) {
|
|
3332
|
+
this.elementRef = elementRef;
|
|
3333
|
+
this.cdr = cdr;
|
|
3283
3334
|
this.menus = [];
|
|
3284
3335
|
this.className = '';
|
|
3285
3336
|
this.itemSelect = new EventEmitter();
|
|
3286
3337
|
this.openIndex = -1;
|
|
3287
3338
|
}
|
|
3339
|
+
ngOnInit() {
|
|
3340
|
+
this.boundPointerDown = (event) => this.onDocumentPointerDown(event);
|
|
3341
|
+
document.addEventListener('pointerdown', this.boundPointerDown, { capture: true });
|
|
3342
|
+
}
|
|
3343
|
+
ngOnDestroy() {
|
|
3344
|
+
if (this.boundPointerDown) {
|
|
3345
|
+
document.removeEventListener('pointerdown', this.boundPointerDown, { capture: true });
|
|
3346
|
+
}
|
|
3347
|
+
}
|
|
3348
|
+
onEsc() {
|
|
3349
|
+
if (this.openIndex >= 0) {
|
|
3350
|
+
this.openIndex = -1;
|
|
3351
|
+
this.cdr.markForCheck();
|
|
3352
|
+
}
|
|
3353
|
+
}
|
|
3288
3354
|
toggle(index) {
|
|
3289
3355
|
this.openIndex = this.openIndex === index ? -1 : index;
|
|
3290
3356
|
}
|
|
@@ -3298,18 +3364,32 @@ class PdmMenubarComponent {
|
|
|
3298
3364
|
}
|
|
3299
3365
|
this.select(item.value);
|
|
3300
3366
|
}
|
|
3367
|
+
onDocumentPointerDown(event) {
|
|
3368
|
+
if (this.openIndex < 0)
|
|
3369
|
+
return;
|
|
3370
|
+
const target = event.target;
|
|
3371
|
+
if (!target)
|
|
3372
|
+
return;
|
|
3373
|
+
if (!this.elementRef.nativeElement.contains(target)) {
|
|
3374
|
+
this.openIndex = -1;
|
|
3375
|
+
this.cdr.markForCheck();
|
|
3376
|
+
}
|
|
3377
|
+
}
|
|
3301
3378
|
}
|
|
3302
|
-
PdmMenubarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmMenubarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
3303
|
-
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 });
|
|
3379
|
+
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 });
|
|
3380
|
+
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 });
|
|
3304
3381
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmMenubarComponent, decorators: [{
|
|
3305
3382
|
type: Component,
|
|
3306
3383
|
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" }]
|
|
3307
|
-
}], propDecorators: { menus: [{
|
|
3384
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { menus: [{
|
|
3308
3385
|
type: Input
|
|
3309
3386
|
}], className: [{
|
|
3310
3387
|
type: Input
|
|
3311
3388
|
}], itemSelect: [{
|
|
3312
3389
|
type: Output
|
|
3390
|
+
}], onEsc: [{
|
|
3391
|
+
type: HostListener,
|
|
3392
|
+
args: ['document:keydown.escape']
|
|
3313
3393
|
}] } });
|
|
3314
3394
|
|
|
3315
3395
|
class PdmNativeSelectComponent {
|
|
@@ -3367,6 +3447,90 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
3367
3447
|
type: Input
|
|
3368
3448
|
}] } });
|
|
3369
3449
|
|
|
3450
|
+
/**
|
|
3451
|
+
* Emits `(pdmOutsideClick)` whenever a `pointerdown` event fires outside the host element.
|
|
3452
|
+
*
|
|
3453
|
+
* Uses the CAPTURE phase so it intercepts clicks even when inner elements call
|
|
3454
|
+
* `stopPropagation()` (e.g. CDK overlay panels).
|
|
3455
|
+
*
|
|
3456
|
+
* SSR-safe: no listener is registered when running on the server.
|
|
3457
|
+
*
|
|
3458
|
+
* @example
|
|
3459
|
+
* ```html
|
|
3460
|
+
* <div [pdmOutsideClick]
|
|
3461
|
+
* (pdmOutsideClick)="close()"
|
|
3462
|
+
* [pdmOutsideClickDisabled]="!open">
|
|
3463
|
+
* </div>
|
|
3464
|
+
* ```
|
|
3465
|
+
*/
|
|
3466
|
+
class PdmOutsideClickDirective {
|
|
3467
|
+
constructor(elementRef, document, platformId) {
|
|
3468
|
+
this.elementRef = elementRef;
|
|
3469
|
+
this.document = document;
|
|
3470
|
+
/** When `true`, the outside-click listener is inactive. */
|
|
3471
|
+
this.pdmOutsideClickDisabled = false;
|
|
3472
|
+
/**
|
|
3473
|
+
* Additional elements to exclude from the "outside" check.
|
|
3474
|
+
* Useful when the trigger lives outside the host (e.g. a menubar button
|
|
3475
|
+
* that opens a floating panel bound to a different root element).
|
|
3476
|
+
*/
|
|
3477
|
+
this.pdmOutsideClickExclude = [];
|
|
3478
|
+
/** Fires when a `pointerdown` lands outside the host (and excluded elements). */
|
|
3479
|
+
this.pdmOutsideClick = new EventEmitter();
|
|
3480
|
+
this.isBrowser = isPlatformBrowser(platformId);
|
|
3481
|
+
}
|
|
3482
|
+
ngOnInit() {
|
|
3483
|
+
if (!this.isBrowser)
|
|
3484
|
+
return;
|
|
3485
|
+
this.boundHandler = (event) => this.onPointerDown(event);
|
|
3486
|
+
this.document.addEventListener('pointerdown', this.boundHandler, { capture: true });
|
|
3487
|
+
}
|
|
3488
|
+
ngOnDestroy() {
|
|
3489
|
+
if (!this.isBrowser || !this.boundHandler)
|
|
3490
|
+
return;
|
|
3491
|
+
this.document.removeEventListener('pointerdown', this.boundHandler, { capture: true });
|
|
3492
|
+
}
|
|
3493
|
+
onPointerDown(event) {
|
|
3494
|
+
if (this.pdmOutsideClickDisabled)
|
|
3495
|
+
return;
|
|
3496
|
+
const target = event.target;
|
|
3497
|
+
if (!target)
|
|
3498
|
+
return;
|
|
3499
|
+
// Check if click is inside the host element.
|
|
3500
|
+
if (this.elementRef.nativeElement.contains(target))
|
|
3501
|
+
return;
|
|
3502
|
+
// Check if click is inside any excluded element.
|
|
3503
|
+
for (const excluded of this.pdmOutsideClickExclude) {
|
|
3504
|
+
const el = excluded instanceof ElementRef ? excluded.nativeElement : excluded;
|
|
3505
|
+
if (el && el.contains(target))
|
|
3506
|
+
return;
|
|
3507
|
+
}
|
|
3508
|
+
this.pdmOutsideClick.emit(event);
|
|
3509
|
+
}
|
|
3510
|
+
}
|
|
3511
|
+
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 });
|
|
3512
|
+
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 });
|
|
3513
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmOutsideClickDirective, decorators: [{
|
|
3514
|
+
type: Directive,
|
|
3515
|
+
args: [{
|
|
3516
|
+
selector: '[pdmOutsideClick]'
|
|
3517
|
+
}]
|
|
3518
|
+
}], ctorParameters: function () {
|
|
3519
|
+
return [{ type: i0.ElementRef }, { type: Document, decorators: [{
|
|
3520
|
+
type: Inject,
|
|
3521
|
+
args: [DOCUMENT]
|
|
3522
|
+
}] }, { type: undefined, decorators: [{
|
|
3523
|
+
type: Inject,
|
|
3524
|
+
args: [PLATFORM_ID]
|
|
3525
|
+
}] }];
|
|
3526
|
+
}, propDecorators: { pdmOutsideClickDisabled: [{
|
|
3527
|
+
type: Input
|
|
3528
|
+
}], pdmOutsideClickExclude: [{
|
|
3529
|
+
type: Input
|
|
3530
|
+
}], pdmOutsideClick: [{
|
|
3531
|
+
type: Output
|
|
3532
|
+
}] } });
|
|
3533
|
+
|
|
3370
3534
|
/**
|
|
3371
3535
|
* Directive used to declare an option inside `<pdm-select>` via content projection.
|
|
3372
3536
|
*
|
|
@@ -3488,7 +3652,9 @@ class PdmSelectComponent {
|
|
|
3488
3652
|
this.closePanel();
|
|
3489
3653
|
}
|
|
3490
3654
|
onEscape() {
|
|
3491
|
-
this.
|
|
3655
|
+
if (this.open) {
|
|
3656
|
+
this.closePanel();
|
|
3657
|
+
}
|
|
3492
3658
|
}
|
|
3493
3659
|
openPanel() {
|
|
3494
3660
|
var _a;
|
|
@@ -3647,6 +3813,15 @@ class PdmPopoverComponent {
|
|
|
3647
3813
|
this.openChange = new EventEmitter();
|
|
3648
3814
|
this.panelPlacement = 'bottom';
|
|
3649
3815
|
}
|
|
3816
|
+
ngOnInit() {
|
|
3817
|
+
this.boundPointerDown = (event) => this.onDocumentPointerDown(event);
|
|
3818
|
+
document.addEventListener('pointerdown', this.boundPointerDown, { capture: true });
|
|
3819
|
+
}
|
|
3820
|
+
ngOnDestroy() {
|
|
3821
|
+
if (this.boundPointerDown) {
|
|
3822
|
+
document.removeEventListener('pointerdown', this.boundPointerDown, { capture: true });
|
|
3823
|
+
}
|
|
3824
|
+
}
|
|
3650
3825
|
set open(value) {
|
|
3651
3826
|
this._open = !!value;
|
|
3652
3827
|
if (this._open) {
|
|
@@ -3678,7 +3853,10 @@ class PdmPopoverComponent {
|
|
|
3678
3853
|
this.openChange.emit(false);
|
|
3679
3854
|
}
|
|
3680
3855
|
}
|
|
3681
|
-
|
|
3856
|
+
onViewportChange() {
|
|
3857
|
+
this.updatePanelPlacement();
|
|
3858
|
+
}
|
|
3859
|
+
onDocumentPointerDown(event) {
|
|
3682
3860
|
if (!this.open)
|
|
3683
3861
|
return;
|
|
3684
3862
|
const target = event.target;
|
|
@@ -3687,9 +3865,6 @@ class PdmPopoverComponent {
|
|
|
3687
3865
|
this.openChange.emit(false);
|
|
3688
3866
|
}
|
|
3689
3867
|
}
|
|
3690
|
-
onViewportChange() {
|
|
3691
|
-
this.updatePanelPlacement();
|
|
3692
|
-
}
|
|
3693
3868
|
schedulePanelPlacementUpdate() {
|
|
3694
3869
|
setTimeout(() => this.updatePanelPlacement());
|
|
3695
3870
|
}
|
|
@@ -3716,7 +3891,7 @@ class PdmPopoverComponent {
|
|
|
3716
3891
|
}
|
|
3717
3892
|
}
|
|
3718
3893
|
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 });
|
|
3719
|
-
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()", "
|
|
3894
|
+
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 });
|
|
3720
3895
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmPopoverComponent, decorators: [{
|
|
3721
3896
|
type: Component,
|
|
3722
3897
|
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" }]
|
|
@@ -3744,9 +3919,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
3744
3919
|
}], onEsc: [{
|
|
3745
3920
|
type: HostListener,
|
|
3746
3921
|
args: ['document:keydown.escape']
|
|
3747
|
-
}], onDocumentClick: [{
|
|
3748
|
-
type: HostListener,
|
|
3749
|
-
args: ['document:click', ['$event']]
|
|
3750
3922
|
}], onViewportChange: [{
|
|
3751
3923
|
type: HostListener,
|
|
3752
3924
|
args: ['window:resize']
|
|
@@ -3865,8 +4037,22 @@ class PdmSheetComponent {
|
|
|
3865
4037
|
this.open = false;
|
|
3866
4038
|
this.side = 'right';
|
|
3867
4039
|
this.className = '';
|
|
4040
|
+
/** Close when the ESC key is pressed. Default: `true`. */
|
|
4041
|
+
this.closeOnEsc = true;
|
|
4042
|
+
/** Close when the backdrop is clicked. Default: `true`. */
|
|
4043
|
+
this.closeOnBackdropClick = true;
|
|
3868
4044
|
this.openChange = new EventEmitter();
|
|
3869
4045
|
}
|
|
4046
|
+
onEsc() {
|
|
4047
|
+
if (this.open && this.closeOnEsc) {
|
|
4048
|
+
this.close();
|
|
4049
|
+
}
|
|
4050
|
+
}
|
|
4051
|
+
onBackdropClick() {
|
|
4052
|
+
if (this.closeOnBackdropClick) {
|
|
4053
|
+
this.close();
|
|
4054
|
+
}
|
|
4055
|
+
}
|
|
3870
4056
|
close() {
|
|
3871
4057
|
this.openChange.emit(false);
|
|
3872
4058
|
}
|
|
@@ -3881,18 +4067,25 @@ class PdmSheetComponent {
|
|
|
3881
4067
|
}
|
|
3882
4068
|
}
|
|
3883
4069
|
PdmSheetComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSheetComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
3884
|
-
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)=\"
|
|
4070
|
+
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 });
|
|
3885
4071
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSheetComponent, decorators: [{
|
|
3886
4072
|
type: Component,
|
|
3887
|
-
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)=\"
|
|
4073
|
+
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" }]
|
|
3888
4074
|
}], propDecorators: { open: [{
|
|
3889
4075
|
type: Input
|
|
3890
4076
|
}], side: [{
|
|
3891
4077
|
type: Input
|
|
3892
4078
|
}], className: [{
|
|
3893
4079
|
type: Input
|
|
4080
|
+
}], closeOnEsc: [{
|
|
4081
|
+
type: Input
|
|
4082
|
+
}], closeOnBackdropClick: [{
|
|
4083
|
+
type: Input
|
|
3894
4084
|
}], openChange: [{
|
|
3895
4085
|
type: Output
|
|
4086
|
+
}], onEsc: [{
|
|
4087
|
+
type: HostListener,
|
|
4088
|
+
args: ['document:keydown.escape']
|
|
3896
4089
|
}] } });
|
|
3897
4090
|
|
|
3898
4091
|
class PdmSidebarComponent {
|
|
@@ -4504,6 +4697,7 @@ const COMPONENTS = [
|
|
|
4504
4697
|
PdmMenubarComponent,
|
|
4505
4698
|
PdmNativeSelectComponent,
|
|
4506
4699
|
PdmNavigationMenuComponent,
|
|
4700
|
+
PdmOutsideClickDirective,
|
|
4507
4701
|
PdmPaginationComponent,
|
|
4508
4702
|
PdmPopoverComponent,
|
|
4509
4703
|
PdmProgressComponent,
|
|
@@ -4566,6 +4760,7 @@ PdmUiKitModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version:
|
|
|
4566
4760
|
PdmMenubarComponent,
|
|
4567
4761
|
PdmNativeSelectComponent,
|
|
4568
4762
|
PdmNavigationMenuComponent,
|
|
4763
|
+
PdmOutsideClickDirective,
|
|
4569
4764
|
PdmPaginationComponent,
|
|
4570
4765
|
PdmPopoverComponent,
|
|
4571
4766
|
PdmProgressComponent,
|
|
@@ -4623,6 +4818,7 @@ PdmUiKitModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version:
|
|
|
4623
4818
|
PdmMenubarComponent,
|
|
4624
4819
|
PdmNativeSelectComponent,
|
|
4625
4820
|
PdmNavigationMenuComponent,
|
|
4821
|
+
PdmOutsideClickDirective,
|
|
4626
4822
|
PdmPaginationComponent,
|
|
4627
4823
|
PdmPopoverComponent,
|
|
4628
4824
|
PdmProgressComponent,
|
|
@@ -4658,5 +4854,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
4658
4854
|
* Generated bundle index. Do not edit.
|
|
4659
4855
|
*/
|
|
4660
4856
|
|
|
4661
|
-
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 };
|
|
4857
|
+
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 };
|
|
4662
4858
|
//# sourceMappingURL=pdm-ui-kit.mjs.map
|