pdm-ui-kit 1.2.1 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (167) hide show
  1. package/aspect-ratio/aspect-ratio.component.d.ts +1 -1
  2. package/aspect-ratio/aspect-ratio.module.d.ts +5 -2
  3. package/badge/badge.component.d.ts +1 -1
  4. package/badge/badge.module.d.ts +5 -2
  5. package/button/button-theme.constant.d.ts +2 -0
  6. package/button/button.component.d.ts +1 -4
  7. package/button/testing/button-harness.d.ts +23 -0
  8. package/calendar/date-picker.component.d.ts +2 -1
  9. package/checkbox/testing/checkbox-harness.d.ts +22 -0
  10. package/dialog/dialog.module.d.ts +2 -1
  11. package/dialog/testing/dialog-harness.d.ts +26 -0
  12. package/esm2020/alert/alert.component.mjs +3 -3
  13. package/esm2020/aspect-ratio/aspect-ratio.component.mjs +4 -3
  14. package/esm2020/aspect-ratio/aspect-ratio.module.mjs +9 -10
  15. package/esm2020/badge/badge.component.mjs +4 -3
  16. package/esm2020/badge/badge.module.mjs +9 -10
  17. package/esm2020/button/button-theme.constant.mjs +55 -0
  18. package/esm2020/button/button.component.mjs +5 -18
  19. package/esm2020/button/testing/button-harness.mjs +51 -0
  20. package/esm2020/calendar/date-picker.component.mjs +15 -5
  21. package/esm2020/checkbox/testing/checkbox-harness.mjs +54 -0
  22. package/esm2020/dialog/dialog.component.mjs +5 -4
  23. package/esm2020/dialog/dialog.module.mjs +5 -4
  24. package/esm2020/dialog/testing/dialog-harness.mjs +87 -0
  25. package/esm2020/empty/empty.component.mjs +1 -1
  26. package/esm2020/icon/icon.component.mjs +4 -3
  27. package/esm2020/icon/icon.module.mjs +9 -10
  28. package/esm2020/input/input.component.mjs +16 -4
  29. package/esm2020/input/testing/input-harness.mjs +68 -0
  30. package/esm2020/kbd/kbd.component.mjs +4 -3
  31. package/esm2020/kbd/kbd.module.mjs +9 -10
  32. package/esm2020/pagination/pagination.component.mjs +3 -3
  33. package/esm2020/pagination/testing/pagination-harness.mjs +76 -0
  34. package/esm2020/public-api.mjs +3 -1
  35. package/esm2020/select/testing/select-harness.mjs +75 -0
  36. package/esm2020/separator/separator.component.mjs +4 -3
  37. package/esm2020/separator/separator.module.mjs +9 -10
  38. package/esm2020/skeleton/skeleton.component.mjs +4 -3
  39. package/esm2020/skeleton/skeleton.module.mjs +9 -10
  40. package/esm2020/spinner/spinner.component.mjs +4 -3
  41. package/esm2020/spinner/spinner.module.mjs +9 -10
  42. package/esm2020/src/alert/alert.component.mjs +3 -3
  43. package/esm2020/src/aspect-ratio/aspect-ratio.component.mjs +4 -3
  44. package/esm2020/src/aspect-ratio/aspect-ratio.module.mjs +9 -10
  45. package/esm2020/src/badge/badge.component.mjs +4 -3
  46. package/esm2020/src/badge/badge.module.mjs +9 -10
  47. package/esm2020/src/button/button-theme.constant.mjs +55 -0
  48. package/esm2020/src/button/button.component.mjs +5 -18
  49. package/esm2020/src/calendar/date-picker.component.mjs +15 -5
  50. package/esm2020/src/dialog/dialog.component.mjs +5 -4
  51. package/esm2020/src/dialog/dialog.module.mjs +5 -4
  52. package/esm2020/src/empty/empty.component.mjs +1 -1
  53. package/esm2020/src/icon/icon.component.mjs +4 -3
  54. package/esm2020/src/icon/icon.module.mjs +9 -10
  55. package/esm2020/src/input/input.component.mjs +16 -4
  56. package/esm2020/src/kbd/kbd.component.mjs +4 -3
  57. package/esm2020/src/kbd/kbd.module.mjs +9 -10
  58. package/esm2020/src/pagination/pagination.component.mjs +3 -3
  59. package/esm2020/src/separator/separator.component.mjs +4 -3
  60. package/esm2020/src/separator/separator.module.mjs +9 -10
  61. package/esm2020/src/skeleton/skeleton.component.mjs +4 -3
  62. package/esm2020/src/skeleton/skeleton.module.mjs +9 -10
  63. package/esm2020/src/spinner/spinner.component.mjs +4 -3
  64. package/esm2020/src/spinner/spinner.module.mjs +9 -10
  65. package/esm2020/src/utils/public-api.mjs +2 -1
  66. package/esm2020/src/utils/validators.mjs +180 -0
  67. package/esm2020/testing.mjs +13 -0
  68. package/fesm2015/pdm-ui-kit-src-alert.mjs +2 -2
  69. package/fesm2015/pdm-ui-kit-src-alert.mjs.map +1 -1
  70. package/fesm2015/pdm-ui-kit-src-aspect-ratio.mjs +10 -10
  71. package/fesm2015/pdm-ui-kit-src-aspect-ratio.mjs.map +1 -1
  72. package/fesm2015/pdm-ui-kit-src-badge.mjs +10 -10
  73. package/fesm2015/pdm-ui-kit-src-badge.mjs.map +1 -1
  74. package/fesm2015/pdm-ui-kit-src-button.mjs +58 -17
  75. package/fesm2015/pdm-ui-kit-src-button.mjs.map +1 -1
  76. package/fesm2015/pdm-ui-kit-src-calendar.mjs +14 -4
  77. package/fesm2015/pdm-ui-kit-src-calendar.mjs.map +1 -1
  78. package/fesm2015/pdm-ui-kit-src-dialog.mjs +8 -6
  79. package/fesm2015/pdm-ui-kit-src-dialog.mjs.map +1 -1
  80. package/fesm2015/pdm-ui-kit-src-empty.mjs.map +1 -1
  81. package/fesm2015/pdm-ui-kit-src-icon.mjs +12 -12
  82. package/fesm2015/pdm-ui-kit-src-icon.mjs.map +1 -1
  83. package/fesm2015/pdm-ui-kit-src-input.mjs +15 -3
  84. package/fesm2015/pdm-ui-kit-src-input.mjs.map +1 -1
  85. package/fesm2015/pdm-ui-kit-src-kbd.mjs +10 -10
  86. package/fesm2015/pdm-ui-kit-src-kbd.mjs.map +1 -1
  87. package/fesm2015/pdm-ui-kit-src-pagination.mjs +2 -2
  88. package/fesm2015/pdm-ui-kit-src-pagination.mjs.map +1 -1
  89. package/fesm2015/pdm-ui-kit-src-separator.mjs +10 -10
  90. package/fesm2015/pdm-ui-kit-src-separator.mjs.map +1 -1
  91. package/fesm2015/pdm-ui-kit-src-skeleton.mjs +10 -10
  92. package/fesm2015/pdm-ui-kit-src-skeleton.mjs.map +1 -1
  93. package/fesm2015/pdm-ui-kit-src-spinner.mjs +10 -10
  94. package/fesm2015/pdm-ui-kit-src-spinner.mjs.map +1 -1
  95. package/fesm2015/pdm-ui-kit-src-utils.mjs +181 -1
  96. package/fesm2015/pdm-ui-kit-src-utils.mjs.map +1 -1
  97. package/fesm2015/pdm-ui-kit.mjs +828 -215
  98. package/fesm2015/pdm-ui-kit.mjs.map +1 -1
  99. package/fesm2020/pdm-ui-kit-src-alert.mjs +2 -2
  100. package/fesm2020/pdm-ui-kit-src-alert.mjs.map +1 -1
  101. package/fesm2020/pdm-ui-kit-src-aspect-ratio.mjs +10 -10
  102. package/fesm2020/pdm-ui-kit-src-aspect-ratio.mjs.map +1 -1
  103. package/fesm2020/pdm-ui-kit-src-badge.mjs +10 -10
  104. package/fesm2020/pdm-ui-kit-src-badge.mjs.map +1 -1
  105. package/fesm2020/pdm-ui-kit-src-button.mjs +58 -17
  106. package/fesm2020/pdm-ui-kit-src-button.mjs.map +1 -1
  107. package/fesm2020/pdm-ui-kit-src-calendar.mjs +14 -4
  108. package/fesm2020/pdm-ui-kit-src-calendar.mjs.map +1 -1
  109. package/fesm2020/pdm-ui-kit-src-dialog.mjs +8 -6
  110. package/fesm2020/pdm-ui-kit-src-dialog.mjs.map +1 -1
  111. package/fesm2020/pdm-ui-kit-src-empty.mjs.map +1 -1
  112. package/fesm2020/pdm-ui-kit-src-icon.mjs +12 -12
  113. package/fesm2020/pdm-ui-kit-src-icon.mjs.map +1 -1
  114. package/fesm2020/pdm-ui-kit-src-input.mjs +15 -3
  115. package/fesm2020/pdm-ui-kit-src-input.mjs.map +1 -1
  116. package/fesm2020/pdm-ui-kit-src-kbd.mjs +10 -10
  117. package/fesm2020/pdm-ui-kit-src-kbd.mjs.map +1 -1
  118. package/fesm2020/pdm-ui-kit-src-pagination.mjs +2 -2
  119. package/fesm2020/pdm-ui-kit-src-pagination.mjs.map +1 -1
  120. package/fesm2020/pdm-ui-kit-src-separator.mjs +10 -10
  121. package/fesm2020/pdm-ui-kit-src-separator.mjs.map +1 -1
  122. package/fesm2020/pdm-ui-kit-src-skeleton.mjs +10 -10
  123. package/fesm2020/pdm-ui-kit-src-skeleton.mjs.map +1 -1
  124. package/fesm2020/pdm-ui-kit-src-spinner.mjs +10 -10
  125. package/fesm2020/pdm-ui-kit-src-spinner.mjs.map +1 -1
  126. package/fesm2020/pdm-ui-kit-src-utils.mjs +181 -1
  127. package/fesm2020/pdm-ui-kit-src-utils.mjs.map +1 -1
  128. package/fesm2020/pdm-ui-kit.mjs +687 -215
  129. package/fesm2020/pdm-ui-kit.mjs.map +1 -1
  130. package/icon/icon.component.d.ts +1 -1
  131. package/icon/icon.module.d.ts +5 -2
  132. package/input/input.component.d.ts +4 -0
  133. package/input/testing/input-harness.d.ts +27 -0
  134. package/kbd/kbd.component.d.ts +1 -1
  135. package/kbd/kbd.module.d.ts +5 -2
  136. package/package.json +1 -1
  137. package/pagination/testing/pagination-harness.d.ts +21 -0
  138. package/public-api.d.ts +1 -0
  139. package/select/testing/select-harness.d.ts +25 -0
  140. package/separator/separator.component.d.ts +1 -1
  141. package/separator/separator.module.d.ts +5 -2
  142. package/skeleton/skeleton.component.d.ts +1 -1
  143. package/skeleton/skeleton.module.d.ts +5 -2
  144. package/spinner/spinner.component.d.ts +1 -1
  145. package/spinner/spinner.module.d.ts +5 -2
  146. package/src/aspect-ratio/aspect-ratio.component.d.ts +1 -1
  147. package/src/aspect-ratio/aspect-ratio.module.d.ts +5 -2
  148. package/src/badge/badge.component.d.ts +1 -1
  149. package/src/badge/badge.module.d.ts +5 -2
  150. package/src/button/button-theme.constant.d.ts +2 -0
  151. package/src/button/button.component.d.ts +1 -4
  152. package/src/calendar/date-picker.component.d.ts +2 -1
  153. package/src/dialog/dialog.module.d.ts +2 -1
  154. package/src/icon/icon.component.d.ts +1 -1
  155. package/src/icon/icon.module.d.ts +5 -2
  156. package/src/input/input.component.d.ts +4 -0
  157. package/src/kbd/kbd.component.d.ts +1 -1
  158. package/src/kbd/kbd.module.d.ts +5 -2
  159. package/src/separator/separator.component.d.ts +1 -1
  160. package/src/separator/separator.module.d.ts +5 -2
  161. package/src/skeleton/skeleton.component.d.ts +1 -1
  162. package/src/skeleton/skeleton.module.d.ts +5 -2
  163. package/src/spinner/spinner.component.d.ts +1 -1
  164. package/src/spinner/spinner.module.d.ts +5 -2
  165. package/src/utils/public-api.d.ts +1 -0
  166. package/src/utils/validators.d.ts +109 -0
  167. package/testing.d.ts +12 -0
@@ -12,12 +12,15 @@ import { createFlexiblePositionStrategy as createFlexiblePositionStrategy$1, mer
12
12
  import * as i2 from 'pdm-ui-kit/src/icon';
13
13
  import { PdmIconModule as PdmIconModule$1 } from 'pdm-ui-kit/src/icon';
14
14
  import { TABLE_RESPONSIVE as TABLE_RESPONSIVE$1, Z_INDEX as Z_INDEX$1, responsive as responsive$1 } from 'pdm-ui-kit/src/utils';
15
- import * as i2$1 from 'pdm-ui-kit/src/button';
15
+ import * as i2$1 from '@angular/cdk/a11y';
16
+ import { A11yModule } from '@angular/cdk/a11y';
17
+ import * as i2$2 from 'pdm-ui-kit/src/button';
16
18
  import { PdmButtonModule as PdmButtonModule$1 } from 'pdm-ui-kit/src/button';
17
19
  import { icons } from 'lucide';
18
20
  import * as i1$2 from '@angular/platform-browser';
19
21
  import * as i3$1 from 'pdm-ui-kit/src/select';
20
22
  import { PdmSelectModule as PdmSelectModule$1 } from 'pdm-ui-kit/src/select';
23
+ import { ComponentHarness, HarnessPredicate } from '@angular/cdk/testing';
21
24
 
22
25
  class PdmAccordionComponent {
23
26
  constructor() {
@@ -58,7 +61,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
58
61
  type: Output
59
62
  }] } });
60
63
 
61
- const COMPONENTS$K = [
64
+ const COMPONENTS$D = [
62
65
  PdmAccordionComponent,
63
66
  ];
64
67
  class PdmAccordionModule {
@@ -70,8 +73,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
70
73
  type: NgModule,
71
74
  args: [{
72
75
  imports: [CommonModule],
73
- declarations: COMPONENTS$K,
74
- exports: COMPONENTS$K
76
+ declarations: COMPONENTS$D,
77
+ exports: COMPONENTS$D
75
78
  }]
76
79
  }] });
77
80
 
@@ -91,10 +94,10 @@ class PdmAlertComponent {
91
94
  }
92
95
  }
93
96
  PdmAlertComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmAlertComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
94
- PdmAlertComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmAlertComponent, selector: "pdm-alert", inputs: { variant: "variant", title: "title", description: "description", details: "details", className: "className" }, ngImport: i0, template: "<section\n role=\"alert\"\n [ngClass]=\"[\n 'w-full rounded-lg border border-solid border-border bg-background p-4',\n className\n ]\"\n>\n <div [ngClass]=\"['flex gap-3', isDestructive ? 'items-start' : 'items-center']\">\n <span class=\"inline-flex h-6 w-6 shrink-0 items-center justify-center\">\n <svg *ngIf=\"!isDestructive && !isTitleOnly\" viewBox=\"0 0 24 24\" class=\"h-5 w-5 text-foreground\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <circle cx=\"12\" cy=\"12\" r=\"9\" stroke=\"currentColor\" stroke-width=\"1.5\"></circle>\n <path d=\"M8.5 12.5L10.8 14.8L15.8 9.8\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"></path>\n </svg>\n <svg *ngIf=\"isTitleOnly\" viewBox=\"0 0 24 24\" class=\"h-5 w-5 text-foreground\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M5 8H19\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\"></path>\n <path d=\"M9 8V6.5C9 5.67 9.67 5 10.5 5H13.5C14.33 5 15 5.67 15 6.5V8\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\"></path>\n <path d=\"M7 8L8 18.5C8.07 19.33 8.77 20 9.6 20H14.4C15.23 20 15.93 19.33 16 18.5L17 8\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\"></path>\n </svg>\n <svg *ngIf=\"isDestructive\" viewBox=\"0 0 24 24\" class=\"h-5 w-5 text-destructive\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <circle cx=\"12\" cy=\"12\" r=\"9\" stroke=\"currentColor\" stroke-width=\"1.5\"></circle>\n <path d=\"M12 8V12\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\"></path>\n <circle cx=\"12\" cy=\"16\" r=\"1\" fill=\"currentColor\"></circle>\n </svg>\n </span>\n\n <div class=\"min-w-0 flex-1\">\n <h4\n [ngClass]=\"[\n 'm-0 text-sm font-medium',\n isDestructive ? 'text-destructive' : 'text-foreground'\n ]\"\n >\n {{ title }}\n </h4>\n\n <p\n *ngIf=\"!isTitleOnly && description\"\n [ngClass]=\"[\n 'm-0 mt-0.5 text-sm',\n isDestructive ? 'text-destructive' : 'text-muted-foreground'\n ]\"\n >\n {{ description }}\n </p>\n\n <ul *ngIf=\"isDestructive && details.length\" class=\"m-0 mt-1 pl-5 text-sm text-destructive\">\n <li *ngFor=\"let item of details\">{{ item }}</li>\n </ul>\n </div>\n </div>\n</section>\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 });
97
+ PdmAlertComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmAlertComponent, selector: "pdm-alert", inputs: { variant: "variant", title: "title", description: "description", details: "details", className: "className" }, ngImport: i0, template: "<section\n role=\"alert\"\n [ngClass]=\"[\n 'w-full rounded-lg border border-solid border-border bg-background p-4',\n className\n ]\"\n>\n <div [ngClass]=\"['flex gap-3', isDestructive ? 'items-start' : 'items-center']\">\n <span class=\"inline-flex h-6 w-6 shrink-0 items-center justify-center\">\n <svg *ngIf=\"!isDestructive && !isTitleOnly\" aria-label=\"Success\" viewBox=\"0 0 24 24\" class=\"h-5 w-5 text-foreground\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <circle cx=\"12\" cy=\"12\" r=\"9\" stroke=\"currentColor\" stroke-width=\"1.5\"></circle>\n <path d=\"M8.5 12.5L10.8 14.8L15.8 9.8\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"></path>\n </svg>\n <svg *ngIf=\"isTitleOnly\" aria-label=\"Info\" viewBox=\"0 0 24 24\" class=\"h-5 w-5 text-foreground\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M5 8H19\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\"></path>\n <path d=\"M9 8V6.5C9 5.67 9.67 5 10.5 5H13.5C14.33 5 15 5.67 15 6.5V8\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\"></path>\n <path d=\"M7 8L8 18.5C8.07 19.33 8.77 20 9.6 20H14.4C15.23 20 15.93 19.33 16 18.5L17 8\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\"></path>\n </svg>\n <svg *ngIf=\"isDestructive\" aria-label=\"Error\" viewBox=\"0 0 24 24\" class=\"h-5 w-5 text-destructive\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <circle cx=\"12\" cy=\"12\" r=\"9\" stroke=\"currentColor\" stroke-width=\"1.5\"></circle>\n <path d=\"M12 8V12\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\"></path>\n <circle cx=\"12\" cy=\"16\" r=\"1\" fill=\"currentColor\"></circle>\n </svg>\n </span>\n\n <div class=\"min-w-0 flex-1\">\n <h4\n [ngClass]=\"[\n 'm-0 text-sm font-medium',\n isDestructive ? 'text-destructive' : 'text-foreground'\n ]\"\n >\n {{ title }}\n </h4>\n\n <p\n *ngIf=\"!isTitleOnly && description\"\n [ngClass]=\"[\n 'm-0 mt-0.5 text-sm',\n isDestructive ? 'text-destructive' : 'text-muted-foreground'\n ]\"\n >\n {{ description }}\n </p>\n\n <ul *ngIf=\"isDestructive && details.length\" class=\"m-0 mt-1 pl-5 text-sm text-destructive\">\n <li *ngFor=\"let item of details\">{{ item }}</li>\n </ul>\n </div>\n </div>\n</section>\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 });
95
98
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmAlertComponent, decorators: [{
96
99
  type: Component,
97
- args: [{ selector: 'pdm-alert', changeDetection: ChangeDetectionStrategy.OnPush, template: "<section\n role=\"alert\"\n [ngClass]=\"[\n 'w-full rounded-lg border border-solid border-border bg-background p-4',\n className\n ]\"\n>\n <div [ngClass]=\"['flex gap-3', isDestructive ? 'items-start' : 'items-center']\">\n <span class=\"inline-flex h-6 w-6 shrink-0 items-center justify-center\">\n <svg *ngIf=\"!isDestructive && !isTitleOnly\" viewBox=\"0 0 24 24\" class=\"h-5 w-5 text-foreground\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <circle cx=\"12\" cy=\"12\" r=\"9\" stroke=\"currentColor\" stroke-width=\"1.5\"></circle>\n <path d=\"M8.5 12.5L10.8 14.8L15.8 9.8\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"></path>\n </svg>\n <svg *ngIf=\"isTitleOnly\" viewBox=\"0 0 24 24\" class=\"h-5 w-5 text-foreground\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M5 8H19\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\"></path>\n <path d=\"M9 8V6.5C9 5.67 9.67 5 10.5 5H13.5C14.33 5 15 5.67 15 6.5V8\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\"></path>\n <path d=\"M7 8L8 18.5C8.07 19.33 8.77 20 9.6 20H14.4C15.23 20 15.93 19.33 16 18.5L17 8\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\"></path>\n </svg>\n <svg *ngIf=\"isDestructive\" viewBox=\"0 0 24 24\" class=\"h-5 w-5 text-destructive\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <circle cx=\"12\" cy=\"12\" r=\"9\" stroke=\"currentColor\" stroke-width=\"1.5\"></circle>\n <path d=\"M12 8V12\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\"></path>\n <circle cx=\"12\" cy=\"16\" r=\"1\" fill=\"currentColor\"></circle>\n </svg>\n </span>\n\n <div class=\"min-w-0 flex-1\">\n <h4\n [ngClass]=\"[\n 'm-0 text-sm font-medium',\n isDestructive ? 'text-destructive' : 'text-foreground'\n ]\"\n >\n {{ title }}\n </h4>\n\n <p\n *ngIf=\"!isTitleOnly && description\"\n [ngClass]=\"[\n 'm-0 mt-0.5 text-sm',\n isDestructive ? 'text-destructive' : 'text-muted-foreground'\n ]\"\n >\n {{ description }}\n </p>\n\n <ul *ngIf=\"isDestructive && details.length\" class=\"m-0 mt-1 pl-5 text-sm text-destructive\">\n <li *ngFor=\"let item of details\">{{ item }}</li>\n </ul>\n </div>\n </div>\n</section>\n" }]
100
+ args: [{ selector: 'pdm-alert', changeDetection: ChangeDetectionStrategy.OnPush, template: "<section\n role=\"alert\"\n [ngClass]=\"[\n 'w-full rounded-lg border border-solid border-border bg-background p-4',\n className\n ]\"\n>\n <div [ngClass]=\"['flex gap-3', isDestructive ? 'items-start' : 'items-center']\">\n <span class=\"inline-flex h-6 w-6 shrink-0 items-center justify-center\">\n <svg *ngIf=\"!isDestructive && !isTitleOnly\" aria-label=\"Success\" viewBox=\"0 0 24 24\" class=\"h-5 w-5 text-foreground\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <circle cx=\"12\" cy=\"12\" r=\"9\" stroke=\"currentColor\" stroke-width=\"1.5\"></circle>\n <path d=\"M8.5 12.5L10.8 14.8L15.8 9.8\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"></path>\n </svg>\n <svg *ngIf=\"isTitleOnly\" aria-label=\"Info\" viewBox=\"0 0 24 24\" class=\"h-5 w-5 text-foreground\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M5 8H19\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\"></path>\n <path d=\"M9 8V6.5C9 5.67 9.67 5 10.5 5H13.5C14.33 5 15 5.67 15 6.5V8\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\"></path>\n <path d=\"M7 8L8 18.5C8.07 19.33 8.77 20 9.6 20H14.4C15.23 20 15.93 19.33 16 18.5L17 8\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\"></path>\n </svg>\n <svg *ngIf=\"isDestructive\" aria-label=\"Error\" viewBox=\"0 0 24 24\" class=\"h-5 w-5 text-destructive\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <circle cx=\"12\" cy=\"12\" r=\"9\" stroke=\"currentColor\" stroke-width=\"1.5\"></circle>\n <path d=\"M12 8V12\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\"></path>\n <circle cx=\"12\" cy=\"16\" r=\"1\" fill=\"currentColor\"></circle>\n </svg>\n </span>\n\n <div class=\"min-w-0 flex-1\">\n <h4\n [ngClass]=\"[\n 'm-0 text-sm font-medium',\n isDestructive ? 'text-destructive' : 'text-foreground'\n ]\"\n >\n {{ title }}\n </h4>\n\n <p\n *ngIf=\"!isTitleOnly && description\"\n [ngClass]=\"[\n 'm-0 mt-0.5 text-sm',\n isDestructive ? 'text-destructive' : 'text-muted-foreground'\n ]\"\n >\n {{ description }}\n </p>\n\n <ul *ngIf=\"isDestructive && details.length\" class=\"m-0 mt-1 pl-5 text-sm text-destructive\">\n <li *ngFor=\"let item of details\">{{ item }}</li>\n </ul>\n </div>\n </div>\n</section>\n" }]
98
101
  }], propDecorators: { variant: [{
99
102
  type: Input
100
103
  }], title: [{
@@ -191,7 +194,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
191
194
  args: ['document:keydown.escape']
192
195
  }] } });
193
196
 
194
- const COMPONENTS$J = [
197
+ const COMPONENTS$C = [
195
198
  PdmAlertComponent,
196
199
  PdmAlertDialogComponent,
197
200
  ];
@@ -206,8 +209,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
206
209
  type: NgModule,
207
210
  args: [{
208
211
  imports: [CommonModule],
209
- declarations: COMPONENTS$J,
210
- exports: COMPONENTS$J
212
+ declarations: COMPONENTS$C,
213
+ exports: COMPONENTS$C
211
214
  }]
212
215
  }] });
213
216
 
@@ -225,10 +228,10 @@ class PdmAspectRatioComponent {
225
228
  }
226
229
  }
227
230
  PdmAspectRatioComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmAspectRatioComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
228
- PdmAspectRatioComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmAspectRatioComponent, selector: "pdm-aspect-ratio", inputs: { ratio: "ratio", imageSrc: "imageSrc", imageAlt: "imageAlt", className: "className" }, ngImport: i0, template: "<div class=\"relative w-full\" [ngClass]=\"className\" [style.paddingTop]=\"paddingTop\">\n <div class=\"absolute inset-0 overflow-hidden rounded-lg\">\n <img\n *ngIf=\"imageSrc\"\n [src]=\"imageSrc\"\n [alt]=\"imageAlt\"\n class=\"pointer-events-none h-full w-full rounded-lg object-cover\"\n />\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 });
231
+ PdmAspectRatioComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmAspectRatioComponent, isStandalone: true, selector: "pdm-aspect-ratio", inputs: { ratio: "ratio", imageSrc: "imageSrc", imageAlt: "imageAlt", className: "className" }, ngImport: i0, template: "<div class=\"relative w-full\" [ngClass]=\"className\" [style.paddingTop]=\"paddingTop\">\n <div class=\"absolute inset-0 overflow-hidden rounded-lg\">\n <img\n *ngIf=\"imageSrc\"\n [src]=\"imageSrc\"\n [alt]=\"imageAlt\"\n class=\"pointer-events-none h-full w-full rounded-lg object-cover\"\n />\n <ng-content></ng-content>\n </div>\n</div>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { 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 });
229
232
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmAspectRatioComponent, decorators: [{
230
233
  type: Component,
231
- args: [{ selector: 'pdm-aspect-ratio', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"relative w-full\" [ngClass]=\"className\" [style.paddingTop]=\"paddingTop\">\n <div class=\"absolute inset-0 overflow-hidden rounded-lg\">\n <img\n *ngIf=\"imageSrc\"\n [src]=\"imageSrc\"\n [alt]=\"imageAlt\"\n class=\"pointer-events-none h-full w-full rounded-lg object-cover\"\n />\n <ng-content></ng-content>\n </div>\n</div>\n" }]
234
+ args: [{ selector: 'pdm-aspect-ratio', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CommonModule], template: "<div class=\"relative w-full\" [ngClass]=\"className\" [style.paddingTop]=\"paddingTop\">\n <div class=\"absolute inset-0 overflow-hidden rounded-lg\">\n <img\n *ngIf=\"imageSrc\"\n [src]=\"imageSrc\"\n [alt]=\"imageAlt\"\n class=\"pointer-events-none h-full w-full rounded-lg object-cover\"\n />\n <ng-content></ng-content>\n </div>\n</div>\n" }]
232
235
  }], propDecorators: { ratio: [{
233
236
  type: Input
234
237
  }], imageSrc: [{
@@ -239,20 +242,20 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
239
242
  type: Input
240
243
  }] } });
241
244
 
242
- const COMPONENTS$I = [
243
- PdmAspectRatioComponent,
244
- ];
245
+ /**
246
+ * @deprecated Import PdmAspectRatioComponent directly instead. This module is kept for backwards compatibility.
247
+ * For modern Angular (v14+), use: import { PdmAspectRatioComponent } from 'pdm-ui-kit/aspect-ratio'
248
+ */
245
249
  class PdmAspectRatioModule {
246
250
  }
247
251
  PdmAspectRatioModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmAspectRatioModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
248
- PdmAspectRatioModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: PdmAspectRatioModule, declarations: [PdmAspectRatioComponent], imports: [CommonModule], exports: [PdmAspectRatioComponent] });
249
- PdmAspectRatioModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmAspectRatioModule, imports: [CommonModule] });
252
+ PdmAspectRatioModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: PdmAspectRatioModule, imports: [PdmAspectRatioComponent], exports: [PdmAspectRatioComponent] });
253
+ PdmAspectRatioModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmAspectRatioModule, imports: [PdmAspectRatioComponent] });
250
254
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmAspectRatioModule, decorators: [{
251
255
  type: NgModule,
252
256
  args: [{
253
- imports: [CommonModule],
254
- declarations: COMPONENTS$I,
255
- exports: COMPONENTS$I
257
+ imports: [PdmAspectRatioComponent],
258
+ exports: [PdmAspectRatioComponent]
256
259
  }]
257
260
  }] });
258
261
 
@@ -299,7 +302,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
299
302
  type: Input
300
303
  }] } });
301
304
 
302
- const COMPONENTS$H = [
305
+ const COMPONENTS$B = [
303
306
  PdmAvatarComponent,
304
307
  ];
305
308
  class PdmAvatarModule {
@@ -311,8 +314,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
311
314
  type: NgModule,
312
315
  args: [{
313
316
  imports: [CommonModule],
314
- declarations: COMPONENTS$H,
315
- exports: COMPONENTS$H
317
+ declarations: COMPONENTS$B,
318
+ exports: COMPONENTS$B
316
319
  }]
317
320
  }] });
318
321
 
@@ -324,10 +327,10 @@ class PdmBadgeComponent {
324
327
  }
325
328
  }
326
329
  PdmBadgeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmBadgeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
327
- PdmBadgeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmBadgeComponent, selector: "pdm-badge", inputs: { variant: "variant", text: "text", className: "className" }, ngImport: i0, template: "<span\n [ngClass]=\"[\n 'inline-flex items-center justify-center text-center align-middle rounded-full px-2.5 py-0.5 text-xs font-semibold',\n variant === 'default' ? 'bg-primary text-primary-foreground' : '',\n variant === 'secondary' ? 'bg-secondary text-secondary-foreground' : '',\n variant === 'destructive' ? 'bg-destructive text-destructive-foreground' : '',\n variant === 'outline' ? 'border border-solid border-input text-foreground' : '',\n variant === 'icon' ? 'gap-1 bg-primary text-primary-foreground' : '',\n variant === 'number' ? 'min-w-5 rounded-full bg-primary px-1.5 text-primary-foreground' : '',\n variant === 'destructive-number' ? 'min-w-5 rounded-full bg-destructive px-1.5 text-destructive-foreground' : '',\n variant === 'secondary-number' ? 'min-w-5 rounded-full border border-solid border-input px-1.5 text-foreground' : '',\n className\n ]\"\n>\n <svg\n *ngIf=\"variant === 'icon'\"\n viewBox=\"0 0 24 24\"\n class=\"h-4 w-4\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n aria-hidden=\"true\"\n >\n <circle cx=\"12\" cy=\"12\" r=\"9\" stroke=\"currentColor\" stroke-width=\"1.5\"></circle>\n <path d=\"M8.5 12.5L10.8 14.8L15.8 9.8\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"></path>\n </svg>\n <span [ngClass]=\"[variant === 'secondary-number' ? 'font-mono' : '']\">{{ text }}</span>\n</span>\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 });
330
+ PdmBadgeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmBadgeComponent, isStandalone: true, selector: "pdm-badge", inputs: { variant: "variant", text: "text", className: "className" }, ngImport: i0, template: "<span\n [ngClass]=\"[\n 'inline-flex items-center justify-center text-center align-middle rounded-full px-2.5 py-0.5 text-xs font-semibold',\n variant === 'default' ? 'bg-primary text-primary-foreground' : '',\n variant === 'secondary' ? 'bg-secondary text-secondary-foreground' : '',\n variant === 'destructive' ? 'bg-destructive text-destructive-foreground' : '',\n variant === 'outline' ? 'border border-solid border-input text-foreground' : '',\n variant === 'icon' ? 'gap-1 bg-primary text-primary-foreground' : '',\n variant === 'number' ? 'min-w-5 rounded-full bg-primary px-1.5 text-primary-foreground' : '',\n variant === 'destructive-number' ? 'min-w-5 rounded-full bg-destructive px-1.5 text-destructive-foreground' : '',\n variant === 'secondary-number' ? 'min-w-5 rounded-full border border-solid border-input px-1.5 text-foreground' : '',\n className\n ]\"\n>\n <svg\n *ngIf=\"variant === 'icon'\"\n viewBox=\"0 0 24 24\"\n class=\"h-4 w-4\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n aria-hidden=\"true\"\n >\n <circle cx=\"12\" cy=\"12\" r=\"9\" stroke=\"currentColor\" stroke-width=\"1.5\"></circle>\n <path d=\"M8.5 12.5L10.8 14.8L15.8 9.8\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"></path>\n </svg>\n <span [ngClass]=\"[variant === 'secondary-number' ? 'font-mono' : '']\">{{ text }}</span>\n</span>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { 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 });
328
331
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmBadgeComponent, decorators: [{
329
332
  type: Component,
330
- args: [{ selector: 'pdm-badge', changeDetection: ChangeDetectionStrategy.OnPush, template: "<span\n [ngClass]=\"[\n 'inline-flex items-center justify-center text-center align-middle rounded-full px-2.5 py-0.5 text-xs font-semibold',\n variant === 'default' ? 'bg-primary text-primary-foreground' : '',\n variant === 'secondary' ? 'bg-secondary text-secondary-foreground' : '',\n variant === 'destructive' ? 'bg-destructive text-destructive-foreground' : '',\n variant === 'outline' ? 'border border-solid border-input text-foreground' : '',\n variant === 'icon' ? 'gap-1 bg-primary text-primary-foreground' : '',\n variant === 'number' ? 'min-w-5 rounded-full bg-primary px-1.5 text-primary-foreground' : '',\n variant === 'destructive-number' ? 'min-w-5 rounded-full bg-destructive px-1.5 text-destructive-foreground' : '',\n variant === 'secondary-number' ? 'min-w-5 rounded-full border border-solid border-input px-1.5 text-foreground' : '',\n className\n ]\"\n>\n <svg\n *ngIf=\"variant === 'icon'\"\n viewBox=\"0 0 24 24\"\n class=\"h-4 w-4\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n aria-hidden=\"true\"\n >\n <circle cx=\"12\" cy=\"12\" r=\"9\" stroke=\"currentColor\" stroke-width=\"1.5\"></circle>\n <path d=\"M8.5 12.5L10.8 14.8L15.8 9.8\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"></path>\n </svg>\n <span [ngClass]=\"[variant === 'secondary-number' ? 'font-mono' : '']\">{{ text }}</span>\n</span>\n" }]
333
+ args: [{ selector: 'pdm-badge', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CommonModule], template: "<span\n [ngClass]=\"[\n 'inline-flex items-center justify-center text-center align-middle rounded-full px-2.5 py-0.5 text-xs font-semibold',\n variant === 'default' ? 'bg-primary text-primary-foreground' : '',\n variant === 'secondary' ? 'bg-secondary text-secondary-foreground' : '',\n variant === 'destructive' ? 'bg-destructive text-destructive-foreground' : '',\n variant === 'outline' ? 'border border-solid border-input text-foreground' : '',\n variant === 'icon' ? 'gap-1 bg-primary text-primary-foreground' : '',\n variant === 'number' ? 'min-w-5 rounded-full bg-primary px-1.5 text-primary-foreground' : '',\n variant === 'destructive-number' ? 'min-w-5 rounded-full bg-destructive px-1.5 text-destructive-foreground' : '',\n variant === 'secondary-number' ? 'min-w-5 rounded-full border border-solid border-input px-1.5 text-foreground' : '',\n className\n ]\"\n>\n <svg\n *ngIf=\"variant === 'icon'\"\n viewBox=\"0 0 24 24\"\n class=\"h-4 w-4\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n aria-hidden=\"true\"\n >\n <circle cx=\"12\" cy=\"12\" r=\"9\" stroke=\"currentColor\" stroke-width=\"1.5\"></circle>\n <path d=\"M8.5 12.5L10.8 14.8L15.8 9.8\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"></path>\n </svg>\n <span [ngClass]=\"[variant === 'secondary-number' ? 'font-mono' : '']\">{{ text }}</span>\n</span>\n" }]
331
334
  }], propDecorators: { variant: [{
332
335
  type: Input
333
336
  }], text: [{
@@ -336,20 +339,20 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
336
339
  type: Input
337
340
  }] } });
338
341
 
339
- const COMPONENTS$G = [
340
- PdmBadgeComponent,
341
- ];
342
+ /**
343
+ * @deprecated Import PdmBadgeComponent directly instead. This module is kept for backwards compatibility.
344
+ * For modern Angular (v14+), use: import { PdmBadgeComponent } from 'pdm-ui-kit/badge'
345
+ */
342
346
  class PdmBadgeModule {
343
347
  }
344
348
  PdmBadgeModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmBadgeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
345
- PdmBadgeModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: PdmBadgeModule, declarations: [PdmBadgeComponent], imports: [CommonModule], exports: [PdmBadgeComponent] });
346
- PdmBadgeModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmBadgeModule, imports: [CommonModule] });
349
+ PdmBadgeModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: PdmBadgeModule, imports: [PdmBadgeComponent], exports: [PdmBadgeComponent] });
350
+ PdmBadgeModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmBadgeModule, imports: [PdmBadgeComponent] });
347
351
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmBadgeModule, decorators: [{
348
352
  type: NgModule,
349
353
  args: [{
350
- imports: [CommonModule],
351
- declarations: COMPONENTS$G,
352
- exports: COMPONENTS$G
354
+ imports: [PdmBadgeComponent],
355
+ exports: [PdmBadgeComponent]
353
356
  }]
354
357
  }] });
355
358
 
@@ -412,7 +415,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
412
415
  type: Input
413
416
  }] } });
414
417
 
415
- const COMPONENTS$F = [
418
+ const COMPONENTS$A = [
416
419
  PdmBreadcrumbComponent,
417
420
  ];
418
421
  class PdmBreadcrumbModule {
@@ -424,11 +427,66 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
424
427
  type: NgModule,
425
428
  args: [{
426
429
  imports: [CommonModule],
427
- declarations: COMPONENTS$F,
428
- exports: COMPONENTS$F
430
+ declarations: COMPONENTS$A,
431
+ exports: COMPONENTS$A
429
432
  }]
430
433
  }] });
431
434
 
435
+ const BUTTON_TONE_MAP = {
436
+ default: {
437
+ default: 'border-primary bg-primary text-primary-foreground',
438
+ hover: 'border-primary bg-primary text-primary-foreground opacity-90',
439
+ },
440
+ primary: {
441
+ default: 'border-primary bg-primary text-primary-foreground',
442
+ hover: 'border-primary bg-primary text-primary-foreground opacity-90',
443
+ },
444
+ destructive: {
445
+ default: 'border-border bg-destructive text-destructive-foreground',
446
+ hover: 'border-border bg-destructive text-destructive-foreground opacity-90',
447
+ },
448
+ outline: {
449
+ default: 'border-border bg-background text-foreground',
450
+ hover: 'border-border bg-muted text-foreground',
451
+ },
452
+ subtle: {
453
+ default: 'border-secondary bg-secondary text-secondary-foreground',
454
+ hover: 'border-accent bg-accent text-accent-foreground',
455
+ },
456
+ secondary: {
457
+ default: 'border-secondary bg-secondary text-secondary-foreground',
458
+ hover: 'border-accent bg-accent text-accent-foreground',
459
+ },
460
+ ghost: {
461
+ default: 'border-border bg-transparent text-foreground',
462
+ hover: 'border-border bg-accent text-accent-foreground',
463
+ },
464
+ link: {
465
+ default: 'border-border bg-transparent text-primary',
466
+ hover: 'border-border bg-transparent text-primary underline underline-offset-4',
467
+ },
468
+ 'with-icon': {
469
+ default: 'border-primary bg-primary text-primary-foreground',
470
+ hover: 'border-primary bg-primary text-primary-foreground opacity-90',
471
+ },
472
+ icon: {
473
+ default: 'border-border bg-background text-foreground',
474
+ hover: 'border-border bg-accent text-accent-foreground',
475
+ },
476
+ 'icon-circle': {
477
+ default: 'border-border bg-background text-foreground',
478
+ hover: 'border-border bg-accent text-accent-foreground',
479
+ },
480
+ rounded: {
481
+ default: 'border-border bg-background text-foreground',
482
+ hover: 'border-border bg-accent text-accent-foreground',
483
+ },
484
+ loading: {
485
+ default: 'border-primary bg-primary text-primary-foreground opacity-70',
486
+ hover: 'border-primary bg-primary text-primary-foreground opacity-70',
487
+ },
488
+ };
489
+
432
490
  class PdmButtonComponent {
433
491
  constructor() {
434
492
  this.type = 'button';
@@ -439,21 +497,7 @@ class PdmButtonComponent {
439
497
  this.loading = false;
440
498
  this.className = '';
441
499
  this.pressed = new EventEmitter();
442
- this.toneClassMap = {
443
- default: { default: 'border-primary bg-primary text-primary-foreground', hover: 'border-primary bg-primary text-primary-foreground opacity-90' },
444
- primary: { default: 'border-primary bg-primary text-primary-foreground', hover: 'border-primary bg-primary text-primary-foreground opacity-90' },
445
- destructive: { default: 'border-border bg-destructive text-destructive-foreground', hover: 'border-border bg-destructive text-destructive-foreground opacity-90' },
446
- outline: { default: 'border-border bg-background text-foreground', hover: 'border-border bg-muted text-foreground' },
447
- subtle: { default: 'border-secondary bg-secondary text-secondary-foreground', hover: 'border-accent bg-accent text-accent-foreground' },
448
- secondary: { default: 'border-secondary bg-secondary text-secondary-foreground', hover: 'border-accent bg-accent text-accent-foreground' },
449
- ghost: { default: 'border-border bg-transparent text-foreground', hover: 'border-border bg-accent text-accent-foreground' },
450
- link: { default: 'border-border bg-transparent text-primary', hover: 'border-border bg-transparent text-primary underline underline-offset-4' },
451
- 'with-icon': { default: 'border-primary bg-primary text-primary-foreground', hover: 'border-primary bg-primary text-primary-foreground opacity-90' },
452
- icon: { default: 'border-border bg-background text-foreground', hover: 'border-border bg-accent text-accent-foreground' },
453
- 'icon-circle': { default: 'border-border bg-background text-foreground', hover: 'border-border bg-accent text-accent-foreground' },
454
- rounded: { default: 'border-border bg-background text-foreground', hover: 'border-border bg-accent text-accent-foreground' },
455
- loading: { default: 'border-primary bg-primary text-primary-foreground opacity-70', hover: 'border-primary bg-primary text-primary-foreground opacity-70' }
456
- };
500
+ this.toneClassMap = BUTTON_TONE_MAP;
457
501
  }
458
502
  get isDisabled() {
459
503
  return this.disabled || this.loading || this.variant === 'loading';
@@ -518,10 +562,10 @@ class PdmButtonComponent {
518
562
  }
519
563
  }
520
564
  PdmButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
521
- PdmButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmButtonComponent, selector: "pdm-button", inputs: { type: "type", variant: "variant", state: "state", size: "size", disabled: "disabled", loading: "loading", className: "className" }, outputs: { pressed: "pressed" }, ngImport: i0, template: "<button\n [type]=\"type\"\n [disabled]=\"isDisabled\"\n [attr.aria-busy]=\"loading\"\n [ngClass]=\"rootClasses\"\n (click)=\"onClick($event)\"\n>\n <span\n *ngIf=\"loading\"\n class=\"inline-block h-4 w-4 animate-spin rounded-full border-2 border-current border-r-transparent\"\n aria-hidden=\"true\"\n ></span>\n <ng-content select=\"[pdmButtonIcon]\" *ngIf=\"showsIconSlot\"></ng-content>\n <ng-content></ng-content>\n</button>\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 });
565
+ PdmButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmButtonComponent, selector: "pdm-button", inputs: { type: "type", variant: "variant", state: "state", size: "size", disabled: "disabled", loading: "loading", className: "className" }, outputs: { pressed: "pressed" }, ngImport: i0, template: "<button\n [type]=\"type\"\n [disabled]=\"isDisabled\"\n [attr.aria-busy]=\"isDisabled && loading ? true : null\"\n [ngClass]=\"rootClasses\"\n (click)=\"onClick($event)\"\n>\n <span\n *ngIf=\"loading\"\n class=\"inline-block h-4 w-4 animate-spin rounded-full border-2 border-current border-r-transparent\"\n aria-hidden=\"true\"\n ></span>\n <ng-content select=\"[pdmButtonIcon]\" *ngIf=\"showsIconSlot\"></ng-content>\n <ng-content></ng-content>\n</button>\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 });
522
566
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmButtonComponent, decorators: [{
523
567
  type: Component,
524
- args: [{ selector: 'pdm-button', changeDetection: ChangeDetectionStrategy.OnPush, template: "<button\n [type]=\"type\"\n [disabled]=\"isDisabled\"\n [attr.aria-busy]=\"loading\"\n [ngClass]=\"rootClasses\"\n (click)=\"onClick($event)\"\n>\n <span\n *ngIf=\"loading\"\n class=\"inline-block h-4 w-4 animate-spin rounded-full border-2 border-current border-r-transparent\"\n aria-hidden=\"true\"\n ></span>\n <ng-content select=\"[pdmButtonIcon]\" *ngIf=\"showsIconSlot\"></ng-content>\n <ng-content></ng-content>\n</button>\n" }]
568
+ args: [{ selector: 'pdm-button', changeDetection: ChangeDetectionStrategy.OnPush, template: "<button\n [type]=\"type\"\n [disabled]=\"isDisabled\"\n [attr.aria-busy]=\"isDisabled && loading ? true : null\"\n [ngClass]=\"rootClasses\"\n (click)=\"onClick($event)\"\n>\n <span\n *ngIf=\"loading\"\n class=\"inline-block h-4 w-4 animate-spin rounded-full border-2 border-current border-r-transparent\"\n aria-hidden=\"true\"\n ></span>\n <ng-content select=\"[pdmButtonIcon]\" *ngIf=\"showsIconSlot\"></ng-content>\n <ng-content></ng-content>\n</button>\n" }]
525
569
  }], propDecorators: { type: [{
526
570
  type: Input
527
571
  }], variant: [{
@@ -773,7 +817,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
773
817
  type: Input
774
818
  }] } });
775
819
 
776
- const COMPONENTS$E = [
820
+ const COMPONENTS$z = [
777
821
  PdmButtonComponent,
778
822
  PdmButtonGroupComponent,
779
823
  ];
@@ -788,8 +832,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
788
832
  type: NgModule,
789
833
  args: [{
790
834
  imports: [CommonModule],
791
- declarations: COMPONENTS$E,
792
- exports: COMPONENTS$E
835
+ declarations: COMPONENTS$z,
836
+ exports: COMPONENTS$z
793
837
  }]
794
838
  }] });
795
839
 
@@ -1338,6 +1382,7 @@ class PdmDatePickerComponent {
1338
1382
  this.labelClassName = "";
1339
1383
  this.className = "";
1340
1384
  this.triggerClassName = "";
1385
+ this.iconOnly = false;
1341
1386
  /**
1342
1387
  * Additional CSS classes applied to the overlay panel.
1343
1388
  * Backward-compatible: mapped to `overlayOptions.panelClass` when `overlayOptions` is not set.
@@ -1440,15 +1485,22 @@ class PdmDatePickerComponent {
1440
1485
  get rootClasses() {
1441
1486
  return [
1442
1487
  "grid gap-2",
1443
- this.resolvedVariant === "range" ? "w-[280px]" : "w-[197px]",
1488
+ this.iconOnly
1489
+ ? "inline-grid w-auto"
1490
+ : this.resolvedVariant === "range"
1491
+ ? "w-[280px]"
1492
+ : "w-[197px]",
1444
1493
  this.className,
1445
1494
  ];
1446
1495
  }
1447
1496
  get triggerClasses() {
1448
1497
  const focusStyle = this._open || this.triggerFocused;
1449
1498
  return [
1450
- "border-input focus-visible:border-ring focus-visible:ring-2 focus-visible:ring-ring/50 aria-invalid:ring-2 aria-invalid:ring-destructive aria-invalid:border-destructive relative flex w-full appearance-none box-border items-center gap-2 overflow-hidden rounded-lg border border-solid bg-background px-3 py-[7.5px] text-left text-sm shadow-sm outline-none transition-colors",
1499
+ "border-input focus-visible:border-ring focus-visible:ring-2 focus-visible:ring-ring/50 aria-invalid:ring-2 aria-invalid:ring-destructive aria-invalid:border-destructive relative flex appearance-none box-border items-center overflow-hidden rounded-lg border border-solid bg-background text-sm shadow-sm outline-none transition-colors",
1451
1500
  "min-h-[36px] disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50",
1501
+ this.iconOnly
1502
+ ? "size-9 justify-center p-0"
1503
+ : "w-full gap-2 px-3 py-[7.5px] text-left",
1452
1504
  focusStyle ? "border-ring ring-2 ring-ring/50" : "",
1453
1505
  this.invalid ? "border-destructive ring-destructive/20" : "",
1454
1506
  this.triggerClassName,
@@ -1596,10 +1648,10 @@ class PdmDatePickerComponent {
1596
1648
  }
1597
1649
  }
1598
1650
  PdmDatePickerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmDatePickerComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1$1.Overlay }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Component });
1599
- PdmDatePickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmDatePickerComponent, selector: "pdm-date-picker", inputs: { id: "id", variant: "variant", label: "label", labelClassName: "labelClassName", className: "className", triggerClassName: "triggerClassName", panelClassName: "panelClassName", overlayOptions: "overlayOptions", placeholder: "placeholder", rangePlaceholder: "rangePlaceholder", format: "format", disabled: "disabled", readonly: "readonly", required: "required", invalid: "invalid", allowSameDayRange: "allowSameDayRange", closeOnSelect: "closeOnSelect", minDate: "minDate", maxDate: "maxDate", minYear: "minYear", maxYear: "maxYear", disabledDates: "disabledDates", isDateDisabled: "isDateDisabled", open: "open", value: "value", rangeValue: "rangeValue" }, outputs: { valueChange: "valueChange", rangeValueChange: "rangeValueChange", openChange: "openChange", monthChange: "monthChange" }, host: { listeners: { "document:keydown.escape": "onEscape()" } }, viewQueries: [{ propertyName: "triggerRef", first: true, predicate: ["triggerEl"], descendants: true }, { propertyName: "panelTemplateRef", first: true, predicate: ["panelTemplate"], descendants: true }], ngImport: i0, template: "<div [ngClass]=\"rootClasses\">\n <pdm-label *ngIf=\"label\" [forId]=\"triggerId\" [required]=\"required\" [className]=\"labelClassName\">\n {{ label }}\n </pdm-label>\n\n <button\n #triggerEl\n type=\"button\"\n [id]=\"triggerId\"\n [disabled]=\"disabled\"\n [attr.aria-expanded]=\"open\"\n [attr.aria-controls]=\"panelId\"\n [attr.aria-haspopup]=\"'dialog'\"\n [attr.aria-invalid]=\"invalid\"\n [ngClass]=\"triggerClasses\"\n [attr.title]=\"displayText\"\n (click)=\"toggleOpen()\"\n (focus)=\"onTriggerFocus()\"\n (blur)=\"onTriggerBlur()\"\n >\n <span class=\"flex h-5 w-5 shrink-0 items-center justify-center p-0.5 text-muted-foreground\" aria-hidden=\"true\">\n <svg viewBox=\"0 0 24 24\" class=\"h-4 w-4\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\">\n <path d=\"M8 2v4\" stroke-linecap=\"round\" stroke-linejoin=\"round\"></path>\n <path d=\"M16 2v4\" stroke-linecap=\"round\" stroke-linejoin=\"round\"></path>\n <rect x=\"3\" y=\"4.5\" width=\"18\" height=\"16.5\" rx=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"></rect>\n <path d=\"M3 9.5h18\" stroke-linecap=\"round\" stroke-linejoin=\"round\"></path>\n </svg>\n </span>\n\n <span [ngClass]=\"textClasses\">{{ displayText }}</span>\n </button>\n</div>\n\n<ng-template #panelTemplate>\n <div [id]=\"panelId\" role=\"dialog\" [attr.aria-labelledby]=\"label ? triggerId : null\">\n <pdm-calendar\n [variant]=\"resolvedVariant\"\n [value]=\"value\"\n [rangeValue]=\"rangeValue\"\n [readonly]=\"readonly\"\n [allowSameDayRange]=\"allowSameDayRange\"\n [minDate]=\"minDate\"\n [maxDate]=\"maxDate\"\n [minYear]=\"minYear\"\n [maxYear]=\"maxYear\"\n [disabledDates]=\"disabledDates\"\n [isDateDisabled]=\"isDateDisabled\"\n (valueChange)=\"onCalendarValueChange($event)\"\n (rangeValueChange)=\"onCalendarRangeValueChange($event)\"\n (monthChange)=\"onCalendarMonthChange($event)\"\n ></pdm-calendar>\n </div>\n</ng-template>\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: i3.PdmLabelComponent, selector: "pdm-label", inputs: ["forId", "required", "className"] }, { kind: "component", type: PdmCalendarComponent, selector: "pdm-calendar", inputs: ["variant", "className", "disabledDates", "minDate", "maxDate", "minYear", "maxYear", "isDateDisabled", "allowSameDayRange", "readonly", "value", "rangeValue", "month"], outputs: ["valueChange", "rangeValueChange", "monthChange", "dateClick", "disabledDateClick"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1651
+ PdmDatePickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmDatePickerComponent, selector: "pdm-date-picker", inputs: { id: "id", variant: "variant", label: "label", labelClassName: "labelClassName", className: "className", triggerClassName: "triggerClassName", iconOnly: "iconOnly", panelClassName: "panelClassName", overlayOptions: "overlayOptions", placeholder: "placeholder", rangePlaceholder: "rangePlaceholder", format: "format", disabled: "disabled", readonly: "readonly", required: "required", invalid: "invalid", allowSameDayRange: "allowSameDayRange", closeOnSelect: "closeOnSelect", minDate: "minDate", maxDate: "maxDate", minYear: "minYear", maxYear: "maxYear", disabledDates: "disabledDates", isDateDisabled: "isDateDisabled", open: "open", value: "value", rangeValue: "rangeValue" }, outputs: { valueChange: "valueChange", rangeValueChange: "rangeValueChange", openChange: "openChange", monthChange: "monthChange" }, host: { listeners: { "document:keydown.escape": "onEscape()" } }, viewQueries: [{ propertyName: "triggerRef", first: true, predicate: ["triggerEl"], descendants: true }, { propertyName: "panelTemplateRef", first: true, predicate: ["panelTemplate"], descendants: true }], ngImport: i0, template: "<div [ngClass]=\"rootClasses\">\n <pdm-label *ngIf=\"label\" [forId]=\"triggerId\" [required]=\"required\" [className]=\"labelClassName\">\n {{ label }}\n </pdm-label>\n\n <button\n #triggerEl\n type=\"button\"\n [id]=\"triggerId\"\n [disabled]=\"disabled\"\n [attr.aria-expanded]=\"open\"\n [attr.aria-controls]=\"panelId\"\n [attr.aria-haspopup]=\"'dialog'\"\n [attr.aria-invalid]=\"invalid\"\n [attr.aria-label]=\"iconOnly ? displayText : null\"\n [ngClass]=\"triggerClasses\"\n [attr.title]=\"displayText\"\n (click)=\"toggleOpen()\"\n (focus)=\"onTriggerFocus()\"\n (blur)=\"onTriggerBlur()\"\n >\n <span class=\"flex h-5 w-5 shrink-0 items-center justify-center p-0.5 text-muted-foreground\" aria-hidden=\"true\">\n <svg viewBox=\"0 0 24 24\" class=\"h-4 w-4\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\">\n <path d=\"M8 2v4\" stroke-linecap=\"round\" stroke-linejoin=\"round\"></path>\n <path d=\"M16 2v4\" stroke-linecap=\"round\" stroke-linejoin=\"round\"></path>\n <rect x=\"3\" y=\"4.5\" width=\"18\" height=\"16.5\" rx=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"></rect>\n <path d=\"M3 9.5h18\" stroke-linecap=\"round\" stroke-linejoin=\"round\"></path>\n </svg>\n </span>\n\n <span *ngIf=\"!iconOnly\" [ngClass]=\"textClasses\">{{ displayText }}</span>\n </button>\n</div>\n\n<ng-template #panelTemplate>\n <div [id]=\"panelId\" role=\"dialog\" [attr.aria-labelledby]=\"label ? triggerId : null\">\n <pdm-calendar\n [variant]=\"resolvedVariant\"\n [value]=\"value\"\n [rangeValue]=\"rangeValue\"\n [readonly]=\"readonly\"\n [allowSameDayRange]=\"allowSameDayRange\"\n [minDate]=\"minDate\"\n [maxDate]=\"maxDate\"\n [minYear]=\"minYear\"\n [maxYear]=\"maxYear\"\n [disabledDates]=\"disabledDates\"\n [isDateDisabled]=\"isDateDisabled\"\n (valueChange)=\"onCalendarValueChange($event)\"\n (rangeValueChange)=\"onCalendarRangeValueChange($event)\"\n (monthChange)=\"onCalendarMonthChange($event)\"\n ></pdm-calendar>\n </div>\n</ng-template>\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: i3.PdmLabelComponent, selector: "pdm-label", inputs: ["forId", "required", "className"] }, { kind: "component", type: PdmCalendarComponent, selector: "pdm-calendar", inputs: ["variant", "className", "disabledDates", "minDate", "maxDate", "minYear", "maxYear", "isDateDisabled", "allowSameDayRange", "readonly", "value", "rangeValue", "month"], outputs: ["valueChange", "rangeValueChange", "monthChange", "dateClick", "disabledDateClick"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1600
1652
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmDatePickerComponent, decorators: [{
1601
1653
  type: Component,
1602
- args: [{ selector: "pdm-date-picker", changeDetection: ChangeDetectionStrategy.OnPush, template: "<div [ngClass]=\"rootClasses\">\n <pdm-label *ngIf=\"label\" [forId]=\"triggerId\" [required]=\"required\" [className]=\"labelClassName\">\n {{ label }}\n </pdm-label>\n\n <button\n #triggerEl\n type=\"button\"\n [id]=\"triggerId\"\n [disabled]=\"disabled\"\n [attr.aria-expanded]=\"open\"\n [attr.aria-controls]=\"panelId\"\n [attr.aria-haspopup]=\"'dialog'\"\n [attr.aria-invalid]=\"invalid\"\n [ngClass]=\"triggerClasses\"\n [attr.title]=\"displayText\"\n (click)=\"toggleOpen()\"\n (focus)=\"onTriggerFocus()\"\n (blur)=\"onTriggerBlur()\"\n >\n <span class=\"flex h-5 w-5 shrink-0 items-center justify-center p-0.5 text-muted-foreground\" aria-hidden=\"true\">\n <svg viewBox=\"0 0 24 24\" class=\"h-4 w-4\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\">\n <path d=\"M8 2v4\" stroke-linecap=\"round\" stroke-linejoin=\"round\"></path>\n <path d=\"M16 2v4\" stroke-linecap=\"round\" stroke-linejoin=\"round\"></path>\n <rect x=\"3\" y=\"4.5\" width=\"18\" height=\"16.5\" rx=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"></rect>\n <path d=\"M3 9.5h18\" stroke-linecap=\"round\" stroke-linejoin=\"round\"></path>\n </svg>\n </span>\n\n <span [ngClass]=\"textClasses\">{{ displayText }}</span>\n </button>\n</div>\n\n<ng-template #panelTemplate>\n <div [id]=\"panelId\" role=\"dialog\" [attr.aria-labelledby]=\"label ? triggerId : null\">\n <pdm-calendar\n [variant]=\"resolvedVariant\"\n [value]=\"value\"\n [rangeValue]=\"rangeValue\"\n [readonly]=\"readonly\"\n [allowSameDayRange]=\"allowSameDayRange\"\n [minDate]=\"minDate\"\n [maxDate]=\"maxDate\"\n [minYear]=\"minYear\"\n [maxYear]=\"maxYear\"\n [disabledDates]=\"disabledDates\"\n [isDateDisabled]=\"isDateDisabled\"\n (valueChange)=\"onCalendarValueChange($event)\"\n (rangeValueChange)=\"onCalendarRangeValueChange($event)\"\n (monthChange)=\"onCalendarMonthChange($event)\"\n ></pdm-calendar>\n </div>\n</ng-template>\n" }]
1654
+ args: [{ selector: "pdm-date-picker", changeDetection: ChangeDetectionStrategy.OnPush, template: "<div [ngClass]=\"rootClasses\">\n <pdm-label *ngIf=\"label\" [forId]=\"triggerId\" [required]=\"required\" [className]=\"labelClassName\">\n {{ label }}\n </pdm-label>\n\n <button\n #triggerEl\n type=\"button\"\n [id]=\"triggerId\"\n [disabled]=\"disabled\"\n [attr.aria-expanded]=\"open\"\n [attr.aria-controls]=\"panelId\"\n [attr.aria-haspopup]=\"'dialog'\"\n [attr.aria-invalid]=\"invalid\"\n [attr.aria-label]=\"iconOnly ? displayText : null\"\n [ngClass]=\"triggerClasses\"\n [attr.title]=\"displayText\"\n (click)=\"toggleOpen()\"\n (focus)=\"onTriggerFocus()\"\n (blur)=\"onTriggerBlur()\"\n >\n <span class=\"flex h-5 w-5 shrink-0 items-center justify-center p-0.5 text-muted-foreground\" aria-hidden=\"true\">\n <svg viewBox=\"0 0 24 24\" class=\"h-4 w-4\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\">\n <path d=\"M8 2v4\" stroke-linecap=\"round\" stroke-linejoin=\"round\"></path>\n <path d=\"M16 2v4\" stroke-linecap=\"round\" stroke-linejoin=\"round\"></path>\n <rect x=\"3\" y=\"4.5\" width=\"18\" height=\"16.5\" rx=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"></rect>\n <path d=\"M3 9.5h18\" stroke-linecap=\"round\" stroke-linejoin=\"round\"></path>\n </svg>\n </span>\n\n <span *ngIf=\"!iconOnly\" [ngClass]=\"textClasses\">{{ displayText }}</span>\n </button>\n</div>\n\n<ng-template #panelTemplate>\n <div [id]=\"panelId\" role=\"dialog\" [attr.aria-labelledby]=\"label ? triggerId : null\">\n <pdm-calendar\n [variant]=\"resolvedVariant\"\n [value]=\"value\"\n [rangeValue]=\"rangeValue\"\n [readonly]=\"readonly\"\n [allowSameDayRange]=\"allowSameDayRange\"\n [minDate]=\"minDate\"\n [maxDate]=\"maxDate\"\n [minYear]=\"minYear\"\n [maxYear]=\"maxYear\"\n [disabledDates]=\"disabledDates\"\n [isDateDisabled]=\"isDateDisabled\"\n (valueChange)=\"onCalendarValueChange($event)\"\n (rangeValueChange)=\"onCalendarRangeValueChange($event)\"\n (monthChange)=\"onCalendarMonthChange($event)\"\n ></pdm-calendar>\n </div>\n</ng-template>\n" }]
1603
1655
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i1$1.Overlay }, { type: i0.ViewContainerRef }]; }, propDecorators: { triggerRef: [{
1604
1656
  type: ViewChild,
1605
1657
  args: ["triggerEl"]
@@ -1618,6 +1670,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
1618
1670
  type: Input
1619
1671
  }], triggerClassName: [{
1620
1672
  type: Input
1673
+ }], iconOnly: [{
1674
+ type: Input
1621
1675
  }], panelClassName: [{
1622
1676
  type: Input
1623
1677
  }], overlayOptions: [{
@@ -1671,7 +1725,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
1671
1725
  args: ["document:keydown.escape"]
1672
1726
  }] } });
1673
1727
 
1674
- const COMPONENTS$D = [PdmCalendarComponent, PdmDatePickerComponent];
1728
+ const COMPONENTS$y = [PdmCalendarComponent, PdmDatePickerComponent];
1675
1729
  class PdmCalendarModule {
1676
1730
  }
1677
1731
  PdmCalendarModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmCalendarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
@@ -1681,8 +1735,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
1681
1735
  type: NgModule,
1682
1736
  args: [{
1683
1737
  imports: [CommonModule, OverlayModule, PdmLabelModule$1],
1684
- declarations: COMPONENTS$D,
1685
- exports: COMPONENTS$D,
1738
+ declarations: COMPONENTS$y,
1739
+ exports: COMPONENTS$y,
1686
1740
  }]
1687
1741
  }] });
1688
1742
 
@@ -1731,7 +1785,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
1731
1785
  type: Input
1732
1786
  }] } });
1733
1787
 
1734
- const COMPONENTS$C = [
1788
+ const COMPONENTS$x = [
1735
1789
  PdmCardComponent,
1736
1790
  ];
1737
1791
  class PdmCardModule {
@@ -1743,8 +1797,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
1743
1797
  type: NgModule,
1744
1798
  args: [{
1745
1799
  imports: [CommonModule],
1746
- declarations: COMPONENTS$C,
1747
- exports: COMPONENTS$C
1800
+ declarations: COMPONENTS$x,
1801
+ exports: COMPONENTS$x
1748
1802
  }]
1749
1803
  }] });
1750
1804
 
@@ -1847,7 +1901,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
1847
1901
  type: Output
1848
1902
  }] } });
1849
1903
 
1850
- const COMPONENTS$B = [
1904
+ const COMPONENTS$w = [
1851
1905
  PdmCarouselComponent,
1852
1906
  ];
1853
1907
  class PdmCarouselModule {
@@ -1859,8 +1913,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
1859
1913
  type: NgModule,
1860
1914
  args: [{
1861
1915
  imports: [CommonModule],
1862
- declarations: COMPONENTS$B,
1863
- exports: COMPONENTS$B
1916
+ declarations: COMPONENTS$w,
1917
+ exports: COMPONENTS$w
1864
1918
  }]
1865
1919
  }] });
1866
1920
 
@@ -2038,7 +2092,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
2038
2092
  type: Input
2039
2093
  }] } });
2040
2094
 
2041
- const COMPONENTS$A = [
2095
+ const COMPONENTS$v = [
2042
2096
  PdmChartComponent,
2043
2097
  ];
2044
2098
  class PdmChartModule {
@@ -2050,8 +2104,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
2050
2104
  type: NgModule,
2051
2105
  args: [{
2052
2106
  imports: [CommonModule],
2053
- declarations: COMPONENTS$A,
2054
- exports: COMPONENTS$A
2107
+ declarations: COMPONENTS$v,
2108
+ exports: COMPONENTS$v
2055
2109
  }]
2056
2110
  }] });
2057
2111
 
@@ -2099,7 +2153,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
2099
2153
  type: Output
2100
2154
  }] } });
2101
2155
 
2102
- const COMPONENTS$z = [
2156
+ const COMPONENTS$u = [
2103
2157
  PdmCheckboxComponent,
2104
2158
  ];
2105
2159
  class PdmCheckboxModule {
@@ -2111,8 +2165,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
2111
2165
  type: NgModule,
2112
2166
  args: [{
2113
2167
  imports: [CommonModule],
2114
- declarations: COMPONENTS$z,
2115
- exports: COMPONENTS$z
2168
+ declarations: COMPONENTS$u,
2169
+ exports: COMPONENTS$u
2116
2170
  }]
2117
2171
  }] });
2118
2172
 
@@ -2156,7 +2210,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
2156
2210
  type: Output
2157
2211
  }] } });
2158
2212
 
2159
- const COMPONENTS$y = [
2213
+ const COMPONENTS$t = [
2160
2214
  PdmCollapsibleComponent,
2161
2215
  ];
2162
2216
  class PdmCollapsibleModule {
@@ -2168,8 +2222,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
2168
2222
  type: NgModule,
2169
2223
  args: [{
2170
2224
  imports: [CommonModule],
2171
- declarations: COMPONENTS$y,
2172
- exports: COMPONENTS$y
2225
+ declarations: COMPONENTS$t,
2226
+ exports: COMPONENTS$t
2173
2227
  }]
2174
2228
  }] });
2175
2229
 
@@ -2340,7 +2394,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
2340
2394
  args: ["document:keydown.escape"]
2341
2395
  }] } });
2342
2396
 
2343
- const COMPONENTS$x = [
2397
+ const COMPONENTS$s = [
2344
2398
  PdmComboboxComponent,
2345
2399
  ];
2346
2400
  class PdmComboboxModule {
@@ -2352,8 +2406,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
2352
2406
  type: NgModule,
2353
2407
  args: [{
2354
2408
  imports: [CommonModule, OverlayModule],
2355
- declarations: COMPONENTS$x,
2356
- exports: COMPONENTS$x
2409
+ declarations: COMPONENTS$s,
2410
+ exports: COMPONENTS$s
2357
2411
  }]
2358
2412
  }] });
2359
2413
 
@@ -2428,7 +2482,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
2428
2482
  type: Output
2429
2483
  }] } });
2430
2484
 
2431
- const COMPONENTS$w = [PdmCommandComponent];
2485
+ const COMPONENTS$r = [PdmCommandComponent];
2432
2486
  class PdmCommandModule {
2433
2487
  }
2434
2488
  PdmCommandModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmCommandModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
@@ -2438,8 +2492,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
2438
2492
  type: NgModule,
2439
2493
  args: [{
2440
2494
  imports: [CommonModule, PdmIconModule$1],
2441
- declarations: COMPONENTS$w,
2442
- exports: COMPONENTS$w,
2495
+ declarations: COMPONENTS$r,
2496
+ exports: COMPONENTS$r,
2443
2497
  }]
2444
2498
  }] });
2445
2499
 
@@ -2602,7 +2656,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
2602
2656
  args: ["document:click"]
2603
2657
  }] } });
2604
2658
 
2605
- const COMPONENTS$v = [
2659
+ const COMPONENTS$q = [
2606
2660
  PdmContextMenuComponent,
2607
2661
  ];
2608
2662
  class PdmContextMenuModule {
@@ -2614,8 +2668,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
2614
2668
  type: NgModule,
2615
2669
  args: [{
2616
2670
  imports: [CommonModule, OverlayModule],
2617
- declarations: COMPONENTS$v,
2618
- exports: COMPONENTS$v
2671
+ declarations: COMPONENTS$q,
2672
+ exports: COMPONENTS$q
2619
2673
  }]
2620
2674
  }] });
2621
2675
 
@@ -3389,7 +3443,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
3389
3443
  args: ['tableElement']
3390
3444
  }] } });
3391
3445
 
3392
- const COMPONENTS$u = [
3446
+ const COMPONENTS$p = [
3393
3447
  PdmDataTableComponent,
3394
3448
  PdmDraggableTableComponent,
3395
3449
  PdmTableComponent,
@@ -3407,8 +3461,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
3407
3461
  type: NgModule,
3408
3462
  args: [{
3409
3463
  imports: [CommonModule],
3410
- declarations: COMPONENTS$u,
3411
- exports: COMPONENTS$u
3464
+ declarations: COMPONENTS$p,
3465
+ exports: COMPONENTS$p
3412
3466
  }]
3413
3467
  }] });
3414
3468
 
@@ -3446,7 +3500,7 @@ class PdmDialogComponent {
3446
3500
  * - desktop/mobile/mobile-fullscreen: legacy, deprecado
3447
3501
  */
3448
3502
  this.size = "responsive";
3449
- this.title = "Edit profile";
3503
+ this.title = "";
3450
3504
  this.description = "";
3451
3505
  this.closeOnBackdrop = true;
3452
3506
  this.closeOnEsc = true;
@@ -3623,10 +3677,10 @@ class PdmDialogComponent {
3623
3677
  }
3624
3678
  }
3625
3679
  PdmDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
3626
- PdmDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmDialogComponent, selector: "pdm-dialog", inputs: { open: "open", variant: "variant", size: "size", title: "title", description: "description", closeOnBackdrop: "closeOnBackdrop", closeOnEsc: "closeOnEsc", showCloseButton: "showCloseButton", showHeader: "showHeader", showFooter: "showFooter", primaryActionText: "primaryActionText", secondaryActionText: "secondaryActionText", alignFooter: "alignFooter", headerClassName: "headerClassName", bodyClassName: "bodyClassName", footerClassName: "footerClassName", className: "className" }, outputs: { openChange: "openChange", primaryAction: "primaryAction", secondaryAction: "secondaryAction" }, host: { listeners: { "document:keydown.escape": "onEsc()" } }, ngImport: i0, template: "<div *ngIf=\"open\" [ngClass]=\"containerClassName\">\n <!-- Backdrop -->\n <div class=\"absolute inset-0 bg-foreground/30 backdrop-blur-sm\" (click)=\"onBackdropClick()\"></div>\n \n <!-- Dialog Panel -->\n <section role=\"dialog\" aria-modal=\"true\" [ngClass]=\"panelClassName\">\n <!-- Header -->\n <div *ngIf=\"showHeader\" [ngClass]=\"headerWrapperClassName\">\n <div class=\"min-w-0 flex-1\">\n <h2 class=\"m-0 text-lg font-semibold leading-none tracking-tight text-foreground\">{{ title }}</h2>\n <p *ngIf=\"description\" class=\"m-0 mt-2 text-sm text-muted-foreground\">{{ description }}</p>\n </div>\n <button\n *ngIf=\"showCloseButton\"\n type=\"button\"\n class=\"inline-flex h-6 w-6 flex-shrink-0 appearance-none box-border items-center justify-center rounded-sm border-0 bg-transparent p-0 text-foreground 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\"\n (click)=\"close()\"\n aria-label=\"Close dialog\"\n >\n <svg viewBox=\"0 0 24 24\" class=\"h-4 w-4\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M6 6L18 18M18 6L6 18\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\"></path>\n </svg>\n </button>\n </div>\n\n <!-- Body -->\n <div [ngClass]=\"bodyWrapperClassName\">\n <ng-content></ng-content>\n </div>\n\n <!-- Footer -->\n <div *ngIf=\"showFooter\" [ngClass]=\"footerWrapperClassName\">\n <ng-container *ngIf=\"variant === 'custom-close'; else defaultActions\">\n <button\n type=\"button\"\n class=\"inline-flex h-9 w-full appearance-none box-border items-center justify-center rounded-md border border-solid border-input bg-background px-4 py-2 text-sm font-medium text-foreground shadow-sm sm:w-auto\"\n (click)=\"onSecondaryAction()\"\n >\n {{ secondaryActionText }}\n </button>\n </ng-container>\n\n <ng-template #defaultActions>\n <button\n type=\"button\"\n class=\"inline-flex h-9 w-full appearance-none box-border items-center justify-center rounded-md border border-solid border-input bg-background px-4 py-2 text-sm font-medium text-foreground shadow-sm sm:w-auto\"\n (click)=\"onSecondaryAction()\"\n >\n {{ secondaryActionText }}\n </button>\n <button\n type=\"button\"\n class=\"inline-flex h-9 w-full appearance-none box-border items-center justify-center rounded-md bg-primary px-4 py-2 text-sm font-medium text-primary-foreground shadow-sm sm:w-auto\"\n (click)=\"onPrimaryAction()\"\n >\n {{ primaryActionText }}\n </button>\n </ng-template>\n </div>\n </section>\n</div>\n", styles: [":host{display:block}\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 });
3680
+ PdmDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmDialogComponent, selector: "pdm-dialog", inputs: { open: "open", variant: "variant", size: "size", title: "title", description: "description", closeOnBackdrop: "closeOnBackdrop", closeOnEsc: "closeOnEsc", showCloseButton: "showCloseButton", showHeader: "showHeader", showFooter: "showFooter", primaryActionText: "primaryActionText", secondaryActionText: "secondaryActionText", alignFooter: "alignFooter", headerClassName: "headerClassName", bodyClassName: "bodyClassName", footerClassName: "footerClassName", className: "className" }, outputs: { openChange: "openChange", primaryAction: "primaryAction", secondaryAction: "secondaryAction" }, host: { listeners: { "document:keydown.escape": "onEsc()" } }, ngImport: i0, template: "<div *ngIf=\"open\" [ngClass]=\"containerClassName\">\n <!-- Backdrop -->\n <div class=\"absolute inset-0 bg-foreground/30 backdrop-blur-sm\" (click)=\"onBackdropClick()\"></div>\n \n <!-- Dialog Panel -->\n <section role=\"dialog\" aria-modal=\"true\" cdkTrapFocus [ngClass]=\"panelClassName\">\n <!-- Header -->\n <div *ngIf=\"showHeader\" [ngClass]=\"headerWrapperClassName\">\n <div class=\"min-w-0 flex-1\">\n <h2 class=\"m-0 text-lg font-semibold leading-none tracking-tight text-foreground\">{{ title }}</h2>\n <p *ngIf=\"description\" class=\"m-0 mt-2 text-sm text-muted-foreground\">{{ description }}</p>\n </div>\n <button\n *ngIf=\"showCloseButton\"\n type=\"button\"\n class=\"inline-flex h-6 w-6 flex-shrink-0 appearance-none box-border items-center justify-center rounded-sm border-0 bg-transparent p-0 text-foreground 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\"\n (click)=\"close()\"\n aria-label=\"Close dialog\"\n >\n <svg viewBox=\"0 0 24 24\" class=\"h-4 w-4\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M6 6L18 18M18 6L6 18\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\"></path>\n </svg>\n </button>\n </div>\n\n <!-- Body -->\n <div [ngClass]=\"bodyWrapperClassName\">\n <ng-content></ng-content>\n </div>\n\n <!-- Footer -->\n <div *ngIf=\"showFooter\" [ngClass]=\"footerWrapperClassName\">\n <ng-container *ngIf=\"variant === 'custom-close'; else defaultActions\">\n <button\n type=\"button\"\n class=\"inline-flex h-9 w-full appearance-none box-border items-center justify-center rounded-md border border-solid border-input bg-background px-4 py-2 text-sm font-medium text-foreground shadow-sm sm:w-auto\"\n (click)=\"onSecondaryAction()\"\n >\n {{ secondaryActionText }}\n </button>\n </ng-container>\n\n <ng-template #defaultActions>\n <button\n type=\"button\"\n class=\"inline-flex h-9 w-full appearance-none box-border items-center justify-center rounded-md border border-solid border-input bg-background px-4 py-2 text-sm font-medium text-foreground shadow-sm sm:w-auto\"\n (click)=\"onSecondaryAction()\"\n >\n {{ secondaryActionText }}\n </button>\n <button\n type=\"button\"\n class=\"inline-flex h-9 w-full appearance-none box-border items-center justify-center rounded-md bg-primary px-4 py-2 text-sm font-medium text-primary-foreground shadow-sm sm:w-auto\"\n (click)=\"onPrimaryAction()\"\n >\n {{ primaryActionText }}\n </button>\n </ng-template>\n </div>\n </section>\n</div>\n", styles: [":host{display:block}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2$1.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
3627
3681
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmDialogComponent, decorators: [{
3628
3682
  type: Component,
3629
- args: [{ selector: "pdm-dialog", changeDetection: ChangeDetectionStrategy.OnPush, template: "<div *ngIf=\"open\" [ngClass]=\"containerClassName\">\n <!-- Backdrop -->\n <div class=\"absolute inset-0 bg-foreground/30 backdrop-blur-sm\" (click)=\"onBackdropClick()\"></div>\n \n <!-- Dialog Panel -->\n <section role=\"dialog\" aria-modal=\"true\" [ngClass]=\"panelClassName\">\n <!-- Header -->\n <div *ngIf=\"showHeader\" [ngClass]=\"headerWrapperClassName\">\n <div class=\"min-w-0 flex-1\">\n <h2 class=\"m-0 text-lg font-semibold leading-none tracking-tight text-foreground\">{{ title }}</h2>\n <p *ngIf=\"description\" class=\"m-0 mt-2 text-sm text-muted-foreground\">{{ description }}</p>\n </div>\n <button\n *ngIf=\"showCloseButton\"\n type=\"button\"\n class=\"inline-flex h-6 w-6 flex-shrink-0 appearance-none box-border items-center justify-center rounded-sm border-0 bg-transparent p-0 text-foreground 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\"\n (click)=\"close()\"\n aria-label=\"Close dialog\"\n >\n <svg viewBox=\"0 0 24 24\" class=\"h-4 w-4\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M6 6L18 18M18 6L6 18\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\"></path>\n </svg>\n </button>\n </div>\n\n <!-- Body -->\n <div [ngClass]=\"bodyWrapperClassName\">\n <ng-content></ng-content>\n </div>\n\n <!-- Footer -->\n <div *ngIf=\"showFooter\" [ngClass]=\"footerWrapperClassName\">\n <ng-container *ngIf=\"variant === 'custom-close'; else defaultActions\">\n <button\n type=\"button\"\n class=\"inline-flex h-9 w-full appearance-none box-border items-center justify-center rounded-md border border-solid border-input bg-background px-4 py-2 text-sm font-medium text-foreground shadow-sm sm:w-auto\"\n (click)=\"onSecondaryAction()\"\n >\n {{ secondaryActionText }}\n </button>\n </ng-container>\n\n <ng-template #defaultActions>\n <button\n type=\"button\"\n class=\"inline-flex h-9 w-full appearance-none box-border items-center justify-center rounded-md border border-solid border-input bg-background px-4 py-2 text-sm font-medium text-foreground shadow-sm sm:w-auto\"\n (click)=\"onSecondaryAction()\"\n >\n {{ secondaryActionText }}\n </button>\n <button\n type=\"button\"\n class=\"inline-flex h-9 w-full appearance-none box-border items-center justify-center rounded-md bg-primary px-4 py-2 text-sm font-medium text-primary-foreground shadow-sm sm:w-auto\"\n (click)=\"onPrimaryAction()\"\n >\n {{ primaryActionText }}\n </button>\n </ng-template>\n </div>\n </section>\n</div>\n", styles: [":host{display:block}\n"] }]
3683
+ args: [{ selector: "pdm-dialog", changeDetection: ChangeDetectionStrategy.OnPush, template: "<div *ngIf=\"open\" [ngClass]=\"containerClassName\">\n <!-- Backdrop -->\n <div class=\"absolute inset-0 bg-foreground/30 backdrop-blur-sm\" (click)=\"onBackdropClick()\"></div>\n \n <!-- Dialog Panel -->\n <section role=\"dialog\" aria-modal=\"true\" cdkTrapFocus [ngClass]=\"panelClassName\">\n <!-- Header -->\n <div *ngIf=\"showHeader\" [ngClass]=\"headerWrapperClassName\">\n <div class=\"min-w-0 flex-1\">\n <h2 class=\"m-0 text-lg font-semibold leading-none tracking-tight text-foreground\">{{ title }}</h2>\n <p *ngIf=\"description\" class=\"m-0 mt-2 text-sm text-muted-foreground\">{{ description }}</p>\n </div>\n <button\n *ngIf=\"showCloseButton\"\n type=\"button\"\n class=\"inline-flex h-6 w-6 flex-shrink-0 appearance-none box-border items-center justify-center rounded-sm border-0 bg-transparent p-0 text-foreground 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\"\n (click)=\"close()\"\n aria-label=\"Close dialog\"\n >\n <svg viewBox=\"0 0 24 24\" class=\"h-4 w-4\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M6 6L18 18M18 6L6 18\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\"></path>\n </svg>\n </button>\n </div>\n\n <!-- Body -->\n <div [ngClass]=\"bodyWrapperClassName\">\n <ng-content></ng-content>\n </div>\n\n <!-- Footer -->\n <div *ngIf=\"showFooter\" [ngClass]=\"footerWrapperClassName\">\n <ng-container *ngIf=\"variant === 'custom-close'; else defaultActions\">\n <button\n type=\"button\"\n class=\"inline-flex h-9 w-full appearance-none box-border items-center justify-center rounded-md border border-solid border-input bg-background px-4 py-2 text-sm font-medium text-foreground shadow-sm sm:w-auto\"\n (click)=\"onSecondaryAction()\"\n >\n {{ secondaryActionText }}\n </button>\n </ng-container>\n\n <ng-template #defaultActions>\n <button\n type=\"button\"\n class=\"inline-flex h-9 w-full appearance-none box-border items-center justify-center rounded-md border border-solid border-input bg-background px-4 py-2 text-sm font-medium text-foreground shadow-sm sm:w-auto\"\n (click)=\"onSecondaryAction()\"\n >\n {{ secondaryActionText }}\n </button>\n <button\n type=\"button\"\n class=\"inline-flex h-9 w-full appearance-none box-border items-center justify-center rounded-md bg-primary px-4 py-2 text-sm font-medium text-primary-foreground shadow-sm sm:w-auto\"\n (click)=\"onPrimaryAction()\"\n >\n {{ primaryActionText }}\n </button>\n </ng-template>\n </div>\n </section>\n</div>\n", styles: [":host{display:block}\n"] }]
3630
3684
  }], propDecorators: { open: [{
3631
3685
  type: Input
3632
3686
  }], variant: [{
@@ -3672,20 +3726,20 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
3672
3726
  args: ["document:keydown.escape"]
3673
3727
  }] } });
3674
3728
 
3675
- const COMPONENTS$t = [
3729
+ const COMPONENTS$o = [
3676
3730
  PdmDialogComponent,
3677
3731
  ];
3678
3732
  class PdmDialogModule {
3679
3733
  }
3680
3734
  PdmDialogModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmDialogModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
3681
- PdmDialogModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: PdmDialogModule, declarations: [PdmDialogComponent], imports: [CommonModule], exports: [PdmDialogComponent] });
3682
- PdmDialogModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmDialogModule, imports: [CommonModule] });
3735
+ PdmDialogModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: PdmDialogModule, declarations: [PdmDialogComponent], imports: [CommonModule, A11yModule], exports: [PdmDialogComponent] });
3736
+ PdmDialogModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmDialogModule, imports: [CommonModule, A11yModule] });
3683
3737
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmDialogModule, decorators: [{
3684
3738
  type: NgModule,
3685
3739
  args: [{
3686
- imports: [CommonModule],
3687
- declarations: COMPONENTS$t,
3688
- exports: COMPONENTS$t
3740
+ imports: [CommonModule, A11yModule],
3741
+ declarations: COMPONENTS$o,
3742
+ exports: COMPONENTS$o
3689
3743
  }]
3690
3744
  }] });
3691
3745
 
@@ -4014,7 +4068,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
4014
4068
  args: ['document:keydown.escape']
4015
4069
  }] } });
4016
4070
 
4017
- const COMPONENTS$s = [PdmDrawerComponent, PdmSheetComponent];
4071
+ const COMPONENTS$n = [PdmDrawerComponent, PdmSheetComponent];
4018
4072
  class PdmDrawerModule {
4019
4073
  }
4020
4074
  PdmDrawerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmDrawerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
@@ -4024,8 +4078,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
4024
4078
  type: NgModule,
4025
4079
  args: [{
4026
4080
  imports: [CommonModule, PdmIconModule$1],
4027
- declarations: COMPONENTS$s,
4028
- exports: COMPONENTS$s,
4081
+ declarations: COMPONENTS$n,
4082
+ exports: COMPONENTS$n,
4029
4083
  }]
4030
4084
  }] });
4031
4085
 
@@ -4214,7 +4268,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
4214
4268
  args: ['document:keydown.escape']
4215
4269
  }] } });
4216
4270
 
4217
- const COMPONENTS$r = [
4271
+ const COMPONENTS$m = [
4218
4272
  PdmDropdownMenuComponent,
4219
4273
  ];
4220
4274
  class PdmDropdownMenuModule {
@@ -4226,8 +4280,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
4226
4280
  type: NgModule,
4227
4281
  args: [{
4228
4282
  imports: [CommonModule, OverlayModule],
4229
- declarations: COMPONENTS$r,
4230
- exports: COMPONENTS$r
4283
+ declarations: COMPONENTS$m,
4284
+ exports: COMPONENTS$m
4231
4285
  }]
4232
4286
  }] });
4233
4287
 
@@ -4256,7 +4310,7 @@ class PdmEmptyComponent {
4256
4310
  }
4257
4311
  }
4258
4312
  PdmEmptyComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmEmptyComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
4259
- PdmEmptyComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmEmptyComponent, selector: "pdm-empty", inputs: { variant: "variant", title: "title", description: "description", iconName: "iconName", primaryActionLabel: "primaryActionLabel", secondaryActionLabel: "secondaryActionLabel", linkLabel: "linkLabel", className: "className" }, outputs: { primaryAction: "primaryAction", secondaryAction: "secondaryAction", linkAction: "linkAction" }, ngImport: i0, template: "<section [ngClass]=\"['flex flex-col items-center justify-center gap-4 px-6 py-10 text-center text-foreground', containerClass, className]\">\n <div class=\"flex h-10 w-10 items-center justify-center rounded-lg bg-muted text-muted-foreground\">\n <pdm-icon [name]=\"iconName\" [size]=\"20\"></pdm-icon>\n </div>\n\n <div class=\"space-y-2\">\n <h3 class=\"m-0 text-2xl font-semibold leading-none tracking-tight\">{{ title }}</h3>\n <p class=\"m-0 mx-auto max-w-md text-sm leading-relaxed text-muted-foreground\">\n {{ description }}\n </p>\n </div>\n\n <div *ngIf=\"primaryActionLabel || secondaryActionLabel\" class=\"mt-1 flex flex-wrap items-center justify-center gap-3\">\n <pdm-button *ngIf=\"primaryActionLabel\" variant=\"default\" (pressed)=\"primaryAction.emit()\">{{ primaryActionLabel }}</pdm-button>\n <pdm-button *ngIf=\"secondaryActionLabel\" variant=\"outline\" (pressed)=\"secondaryAction.emit()\">{{ secondaryActionLabel }}</pdm-button>\n </div>\n\n <button\n *ngIf=\"linkLabel\"\n type=\"button\"\n class=\"mt-1 inline-flex appearance-none box-border items-center gap-2 border-0 bg-transparent p-0 text-sm font-medium text-muted-foreground underline-offset-4 hover:underline focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2\"\n (click)=\"linkAction.emit()\"\n >\n <span>{{ linkLabel }}</span>\n <pdm-icon name=\"arrow-up-right\" [size]=\"16\"></pdm-icon>\n </button>\n\n <ng-content></ng-content>\n</section>\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: i2$1.PdmButtonComponent, selector: "pdm-button", inputs: ["type", "variant", "state", "size", "disabled", "loading", "className"], outputs: ["pressed"] }, { kind: "component", type: i2.PdmIconComponent, selector: "pdm-icon", inputs: ["name", "library", "assetUrl", "size", "strokeWidth", "className", "ariaLabel", "decorative"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
4313
+ PdmEmptyComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmEmptyComponent, selector: "pdm-empty", inputs: { variant: "variant", title: "title", description: "description", iconName: "iconName", primaryActionLabel: "primaryActionLabel", secondaryActionLabel: "secondaryActionLabel", linkLabel: "linkLabel", className: "className" }, outputs: { primaryAction: "primaryAction", secondaryAction: "secondaryAction", linkAction: "linkAction" }, ngImport: i0, template: "<section [ngClass]=\"['flex flex-col items-center justify-center gap-4 px-6 py-10 text-center text-foreground', containerClass, className]\">\n <div class=\"flex h-10 w-10 items-center justify-center rounded-lg bg-muted text-muted-foreground\">\n <pdm-icon [name]=\"iconName\" [size]=\"20\"></pdm-icon>\n </div>\n\n <div class=\"space-y-2\">\n <h3 class=\"m-0 text-2xl font-semibold leading-none tracking-tight\">{{ title }}</h3>\n <p class=\"m-0 mx-auto max-w-md text-sm leading-relaxed text-muted-foreground\">\n {{ description }}\n </p>\n </div>\n\n <div *ngIf=\"primaryActionLabel || secondaryActionLabel\" class=\"mt-1 flex flex-wrap items-center justify-center gap-3\">\n <pdm-button *ngIf=\"primaryActionLabel\" variant=\"default\" (pressed)=\"primaryAction.emit()\">{{ primaryActionLabel }}</pdm-button>\n <pdm-button *ngIf=\"secondaryActionLabel\" variant=\"outline\" (pressed)=\"secondaryAction.emit()\">{{ secondaryActionLabel }}</pdm-button>\n </div>\n\n <button\n *ngIf=\"linkLabel\"\n type=\"button\"\n class=\"mt-1 inline-flex appearance-none box-border items-center gap-2 border-0 bg-transparent p-0 text-sm font-medium text-muted-foreground underline-offset-4 hover:underline focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2\"\n (click)=\"linkAction.emit()\"\n >\n <span>{{ linkLabel }}</span>\n <pdm-icon name=\"arrow-up-right\" [size]=\"16\"></pdm-icon>\n </button>\n\n <ng-content></ng-content>\n</section>\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: i2$2.PdmButtonComponent, selector: "pdm-button", inputs: ["type", "variant", "state", "size", "disabled", "loading", "className"], outputs: ["pressed"] }, { kind: "component", type: i2.PdmIconComponent, selector: "pdm-icon", inputs: ["name", "library", "assetUrl", "size", "strokeWidth", "className", "ariaLabel", "decorative"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
4260
4314
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmEmptyComponent, decorators: [{
4261
4315
  type: Component,
4262
4316
  args: [{ selector: 'pdm-empty', changeDetection: ChangeDetectionStrategy.OnPush, template: "<section [ngClass]=\"['flex flex-col items-center justify-center gap-4 px-6 py-10 text-center text-foreground', containerClass, className]\">\n <div class=\"flex h-10 w-10 items-center justify-center rounded-lg bg-muted text-muted-foreground\">\n <pdm-icon [name]=\"iconName\" [size]=\"20\"></pdm-icon>\n </div>\n\n <div class=\"space-y-2\">\n <h3 class=\"m-0 text-2xl font-semibold leading-none tracking-tight\">{{ title }}</h3>\n <p class=\"m-0 mx-auto max-w-md text-sm leading-relaxed text-muted-foreground\">\n {{ description }}\n </p>\n </div>\n\n <div *ngIf=\"primaryActionLabel || secondaryActionLabel\" class=\"mt-1 flex flex-wrap items-center justify-center gap-3\">\n <pdm-button *ngIf=\"primaryActionLabel\" variant=\"default\" (pressed)=\"primaryAction.emit()\">{{ primaryActionLabel }}</pdm-button>\n <pdm-button *ngIf=\"secondaryActionLabel\" variant=\"outline\" (pressed)=\"secondaryAction.emit()\">{{ secondaryActionLabel }}</pdm-button>\n </div>\n\n <button\n *ngIf=\"linkLabel\"\n type=\"button\"\n class=\"mt-1 inline-flex appearance-none box-border items-center gap-2 border-0 bg-transparent p-0 text-sm font-medium text-muted-foreground underline-offset-4 hover:underline focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2\"\n (click)=\"linkAction.emit()\"\n >\n <span>{{ linkLabel }}</span>\n <pdm-icon name=\"arrow-up-right\" [size]=\"16\"></pdm-icon>\n </button>\n\n <ng-content></ng-content>\n</section>\n" }]
@@ -4284,7 +4338,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
4284
4338
  type: Output
4285
4339
  }] } });
4286
4340
 
4287
- const COMPONENTS$q = [PdmEmptyComponent];
4341
+ const COMPONENTS$l = [PdmEmptyComponent];
4288
4342
  class PdmEmptyModule {
4289
4343
  }
4290
4344
  PdmEmptyModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmEmptyModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
@@ -4294,8 +4348,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
4294
4348
  type: NgModule,
4295
4349
  args: [{
4296
4350
  imports: [CommonModule, PdmButtonModule$1, PdmIconModule$1],
4297
- declarations: COMPONENTS$q,
4298
- exports: COMPONENTS$q,
4351
+ declarations: COMPONENTS$l,
4352
+ exports: COMPONENTS$l,
4299
4353
  }]
4300
4354
  }] });
4301
4355
 
@@ -4360,7 +4414,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
4360
4414
  type: Input
4361
4415
  }] } });
4362
4416
 
4363
- const COMPONENTS$p = [
4417
+ const COMPONENTS$k = [
4364
4418
  PdmFieldComponent,
4365
4419
  ];
4366
4420
  class PdmFieldModule {
@@ -4372,8 +4426,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
4372
4426
  type: NgModule,
4373
4427
  args: [{
4374
4428
  imports: [CommonModule],
4375
- declarations: COMPONENTS$p,
4376
- exports: COMPONENTS$p
4429
+ declarations: COMPONENTS$k,
4430
+ exports: COMPONENTS$k
4377
4431
  }]
4378
4432
  }] });
4379
4433
 
@@ -4576,7 +4630,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
4576
4630
  args: ["focusout"]
4577
4631
  }] } });
4578
4632
 
4579
- const COMPONENTS$o = [
4633
+ const COMPONENTS$j = [
4580
4634
  PdmHoverCardComponent,
4581
4635
  ];
4582
4636
  class PdmHoverCardModule {
@@ -4588,8 +4642,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
4588
4642
  type: NgModule,
4589
4643
  args: [{
4590
4644
  imports: [CommonModule, OverlayModule],
4591
- declarations: COMPONENTS$o,
4592
- exports: COMPONENTS$o
4645
+ declarations: COMPONENTS$j,
4646
+ exports: COMPONENTS$j
4593
4647
  }]
4594
4648
  }] });
4595
4649
 
@@ -4710,10 +4764,10 @@ class PdmIconComponent {
4710
4764
  }
4711
4765
  }
4712
4766
  PdmIconComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmIconComponent, deps: [{ token: i1$2.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component });
4713
- PdmIconComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmIconComponent, selector: "pdm-icon", inputs: { name: "name", library: "library", assetUrl: "assetUrl", size: "size", strokeWidth: "strokeWidth", className: "className", ariaLabel: "ariaLabel", decorative: "decorative" }, ngImport: i0, template: "<ng-container *ngIf=\"assetUrl; else inlineIcon\">\n <img\n [src]=\"assetUrl\"\n [style.width.px]=\"resolvedSize\"\n [style.height.px]=\"resolvedSize\"\n [ngClass]=\"className\"\n [attr.role]=\"decorative ? null : 'img'\"\n [attr.aria-hidden]=\"decorative ? 'true' : null\"\n [attr.aria-label]=\"!decorative ? ariaLabel || name : null\"\n alt=\"\"\n />\n</ng-container>\n\n<ng-template #inlineIcon>\n <span\n [ngClass]=\"className\"\n [style.display]=\"'inline-flex'\"\n [style.align-items]=\"'center'\"\n [style.justify-content]=\"'center'\"\n [style.line-height]=\"0\"\n [style.width.px]=\"resolvedSize\"\n [style.height.px]=\"resolvedSize\"\n [attr.role]=\"decorative ? null : 'img'\"\n [attr.aria-hidden]=\"decorative ? 'true' : null\"\n [attr.aria-label]=\"!decorative ? ariaLabel || name : null\"\n [innerHTML]=\"svgMarkup\"\n ></span>\n</ng-template>\n", styles: [":host{display:inline-flex;align-items:center;justify-content:center;line-height:0;flex-shrink:0}:host svg{display:block}\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 });
4767
+ PdmIconComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmIconComponent, isStandalone: true, selector: "pdm-icon", inputs: { name: "name", library: "library", assetUrl: "assetUrl", size: "size", strokeWidth: "strokeWidth", className: "className", ariaLabel: "ariaLabel", decorative: "decorative" }, ngImport: i0, template: "<ng-container *ngIf=\"assetUrl; else inlineIcon\">\n <img\n [src]=\"assetUrl\"\n [style.width.px]=\"resolvedSize\"\n [style.height.px]=\"resolvedSize\"\n [ngClass]=\"className\"\n [attr.role]=\"decorative ? null : 'img'\"\n [attr.aria-hidden]=\"decorative ? 'true' : null\"\n [attr.aria-label]=\"!decorative ? ariaLabel || name : null\"\n alt=\"\"\n />\n</ng-container>\n\n<ng-template #inlineIcon>\n <span\n [ngClass]=\"className\"\n [style.display]=\"'inline-flex'\"\n [style.align-items]=\"'center'\"\n [style.justify-content]=\"'center'\"\n [style.line-height]=\"0\"\n [style.width.px]=\"resolvedSize\"\n [style.height.px]=\"resolvedSize\"\n [attr.role]=\"decorative ? null : 'img'\"\n [attr.aria-hidden]=\"decorative ? 'true' : null\"\n [attr.aria-label]=\"!decorative ? ariaLabel || name : null\"\n [innerHTML]=\"svgMarkup\"\n ></span>\n</ng-template>\n", styles: [":host{display:inline-flex;align-items:center;justify-content:center;line-height:0;flex-shrink:0}:host svg{display:block}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { 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 });
4714
4768
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmIconComponent, decorators: [{
4715
4769
  type: Component,
4716
- args: [{ selector: 'pdm-icon', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"assetUrl; else inlineIcon\">\n <img\n [src]=\"assetUrl\"\n [style.width.px]=\"resolvedSize\"\n [style.height.px]=\"resolvedSize\"\n [ngClass]=\"className\"\n [attr.role]=\"decorative ? null : 'img'\"\n [attr.aria-hidden]=\"decorative ? 'true' : null\"\n [attr.aria-label]=\"!decorative ? ariaLabel || name : null\"\n alt=\"\"\n />\n</ng-container>\n\n<ng-template #inlineIcon>\n <span\n [ngClass]=\"className\"\n [style.display]=\"'inline-flex'\"\n [style.align-items]=\"'center'\"\n [style.justify-content]=\"'center'\"\n [style.line-height]=\"0\"\n [style.width.px]=\"resolvedSize\"\n [style.height.px]=\"resolvedSize\"\n [attr.role]=\"decorative ? null : 'img'\"\n [attr.aria-hidden]=\"decorative ? 'true' : null\"\n [attr.aria-label]=\"!decorative ? ariaLabel || name : null\"\n [innerHTML]=\"svgMarkup\"\n ></span>\n</ng-template>\n", styles: [":host{display:inline-flex;align-items:center;justify-content:center;line-height:0;flex-shrink:0}:host svg{display:block}\n"] }]
4770
+ args: [{ selector: 'pdm-icon', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CommonModule], template: "<ng-container *ngIf=\"assetUrl; else inlineIcon\">\n <img\n [src]=\"assetUrl\"\n [style.width.px]=\"resolvedSize\"\n [style.height.px]=\"resolvedSize\"\n [ngClass]=\"className\"\n [attr.role]=\"decorative ? null : 'img'\"\n [attr.aria-hidden]=\"decorative ? 'true' : null\"\n [attr.aria-label]=\"!decorative ? ariaLabel || name : null\"\n alt=\"\"\n />\n</ng-container>\n\n<ng-template #inlineIcon>\n <span\n [ngClass]=\"className\"\n [style.display]=\"'inline-flex'\"\n [style.align-items]=\"'center'\"\n [style.justify-content]=\"'center'\"\n [style.line-height]=\"0\"\n [style.width.px]=\"resolvedSize\"\n [style.height.px]=\"resolvedSize\"\n [attr.role]=\"decorative ? null : 'img'\"\n [attr.aria-hidden]=\"decorative ? 'true' : null\"\n [attr.aria-label]=\"!decorative ? ariaLabel || name : null\"\n [innerHTML]=\"svgMarkup\"\n ></span>\n</ng-template>\n", styles: [":host{display:inline-flex;align-items:center;justify-content:center;line-height:0;flex-shrink:0}:host svg{display:block}\n"] }]
4717
4771
  }], ctorParameters: function () { return [{ type: i1$2.DomSanitizer }]; }, propDecorators: { name: [{
4718
4772
  type: Input
4719
4773
  }], library: [{
@@ -4732,20 +4786,20 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
4732
4786
  type: Input
4733
4787
  }] } });
4734
4788
 
4735
- const COMPONENTS$n = [
4736
- PdmIconComponent,
4737
- ];
4789
+ /**
4790
+ * @deprecated Import PdmIconComponent directly instead. This module is kept for backwards compatibility.
4791
+ * For modern Angular (v14+), use: import { PdmIconComponent } from 'pdm-ui-kit/icon'
4792
+ */
4738
4793
  class PdmIconModule {
4739
4794
  }
4740
4795
  PdmIconModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmIconModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
4741
- PdmIconModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: PdmIconModule, declarations: [PdmIconComponent], imports: [CommonModule], exports: [PdmIconComponent] });
4742
- PdmIconModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmIconModule, imports: [CommonModule] });
4796
+ PdmIconModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: PdmIconModule, imports: [PdmIconComponent], exports: [PdmIconComponent] });
4797
+ PdmIconModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmIconModule, imports: [PdmIconComponent] });
4743
4798
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmIconModule, decorators: [{
4744
4799
  type: NgModule,
4745
4800
  args: [{
4746
- imports: [CommonModule],
4747
- declarations: COMPONENTS$n,
4748
- exports: COMPONENTS$n
4801
+ imports: [PdmIconComponent],
4802
+ exports: [PdmIconComponent]
4749
4803
  }]
4750
4804
  }] });
4751
4805
 
@@ -4768,6 +4822,9 @@ class PdmInputComponent {
4768
4822
  this.errorText = "";
4769
4823
  this.valueChange = new EventEmitter();
4770
4824
  this.blurred = new EventEmitter();
4825
+ if (this.required && this.disabled) {
4826
+ console.warn('PdmInputComponent: required + disabled is invalid — a required field cannot be disabled');
4827
+ }
4771
4828
  }
4772
4829
  onInput(event) {
4773
4830
  this.valueChange.emit(event.target.value);
@@ -4775,13 +4832,22 @@ class PdmInputComponent {
4775
4832
  onBlur(event) {
4776
4833
  this.blurred.emit(event);
4777
4834
  }
4835
+ get helperAttrId() {
4836
+ return this.id ? `${this.id}-helper` : null;
4837
+ }
4838
+ get errorAttrId() {
4839
+ return this.id ? `${this.id}-error` : null;
4840
+ }
4841
+ get descriptionAttrId() {
4842
+ return this.invalid && this.errorText ? this.errorAttrId : this.helperAttrId;
4843
+ }
4778
4844
  }
4779
4845
  PdmInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
4780
- PdmInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmInputComponent, selector: "pdm-input", inputs: { id: "id", type: "type", value: "value", placeholder: "placeholder", disabled: "disabled", readonly: "readonly", required: "required", invalid: "invalid", size: "size", roundness: "roundness", className: "className", inputClassName: "inputClassName", label: "label", helperText: "helperText", errorText: "errorText" }, outputs: { valueChange: "valueChange", blurred: "blurred" }, ngImport: i0, template: "<div [ngClass]=\"['grid w-full gap-3', className]\">\n <label\n *ngIf=\"label\"\n [attr.for]=\"id\"\n [ngClass]=\"[\n 'text-sm font-medium leading-none',\n invalid ? 'text-destructive' : 'text-foreground',\n ]\"\n >{{ label }}</label\n >\n <input\n [id]=\"id\"\n [type]=\"type\"\n [value]=\"value\"\n [placeholder]=\"placeholder\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n [required]=\"required\"\n [attr.aria-invalid]=\"invalid\"\n [ngClass]=\"[\n 'border-input focus-visible:border-ring focus-visible:ring-2 focus-visible:ring-ring/50 aria-invalid:ring-2 aria-invalid:ring-destructive aria-invalid:border-destructive aria-invalid:placeholder:text-destructive/70 placeholder:text-muted-foreground w-full min-w-0 appearance-none box-border rounded-lg border border-solid bg-transparent px-3 py-1 text-sm shadow-sm transition-colors outline-none file:inline-flex file:h-6 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50',\n size === 'large' ? 'h-10 px-4 text-sm' : '',\n size === 'regular' ? 'h-9 px-3 text-sm' : '',\n size === 'small' ? 'h-8 px-2 text-sm' : '',\n size === 'mini' ? 'h-6 px-1.5 text-xs' : '',\n roundness === 'round' ? 'rounded-full' : 'rounded-lg',\n type === 'file' ? 'text-sm' : 'text-foreground',\n inputClassName,\n ]\"\n (input)=\"onInput($event)\"\n (blur)=\"onBlur($event)\"\n />\n <p *ngIf=\"!invalid && helperText\" class=\"m-0 text-sm text-muted-foreground\">\n {{ helperText }}\n </p>\n <p *ngIf=\"invalid && errorText\" class=\"m-0 text-sm text-destructive\">\n {{ errorText }}\n </p>\n</div>\n", styles: [":host{display:block}\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 });
4846
+ PdmInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmInputComponent, selector: "pdm-input", inputs: { id: "id", type: "type", value: "value", placeholder: "placeholder", disabled: "disabled", readonly: "readonly", required: "required", invalid: "invalid", size: "size", roundness: "roundness", className: "className", inputClassName: "inputClassName", label: "label", helperText: "helperText", errorText: "errorText" }, outputs: { valueChange: "valueChange", blurred: "blurred" }, ngImport: i0, template: "<div [ngClass]=\"['grid w-full gap-3', className]\">\n <label\n *ngIf=\"label\"\n [attr.for]=\"id\"\n [ngClass]=\"[\n 'text-sm font-medium leading-none',\n invalid ? 'text-destructive' : 'text-foreground',\n ]\"\n >{{ label }}</label\n >\n <input\n [id]=\"id\"\n [type]=\"type\"\n [value]=\"value\"\n [placeholder]=\"placeholder\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n [required]=\"required\"\n [attr.aria-invalid]=\"invalid\"\n [attr.aria-describedby]=\"descriptionAttrId\"\n [ngClass]=\"[\n 'border-input focus-visible:border-ring focus-visible:ring-2 focus-visible:ring-ring/50 aria-invalid:ring-2 aria-invalid:ring-destructive aria-invalid:border-destructive aria-invalid:placeholder:text-destructive/70 placeholder:text-muted-foreground w-full min-w-0 appearance-none box-border rounded-lg border border-solid bg-transparent px-3 py-1 text-sm shadow-sm transition-colors outline-none file:inline-flex file:h-6 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50',\n size === 'large' ? 'h-10 px-4 text-sm' : '',\n size === 'regular' ? 'h-9 px-3 text-sm' : '',\n size === 'small' ? 'h-8 px-2 text-sm' : '',\n size === 'mini' ? 'h-6 px-1.5 text-xs' : '',\n roundness === 'round' ? 'rounded-full' : 'rounded-lg',\n type === 'file' ? 'text-sm' : 'text-foreground',\n inputClassName,\n ]\"\n (input)=\"onInput($event)\"\n (blur)=\"onBlur($event)\"\n />\n <p *ngIf=\"!invalid && helperText\" [id]=\"helperAttrId\" class=\"m-0 text-sm text-muted-foreground\">\n {{ helperText }}\n </p>\n <p *ngIf=\"invalid && errorText\" [id]=\"errorAttrId\" class=\"m-0 text-sm text-destructive\">\n {{ errorText }}\n </p>\n</div>\n", styles: [":host{display:block}\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 });
4781
4847
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmInputComponent, decorators: [{
4782
4848
  type: Component,
4783
- args: [{ selector: "pdm-input", changeDetection: ChangeDetectionStrategy.OnPush, template: "<div [ngClass]=\"['grid w-full gap-3', className]\">\n <label\n *ngIf=\"label\"\n [attr.for]=\"id\"\n [ngClass]=\"[\n 'text-sm font-medium leading-none',\n invalid ? 'text-destructive' : 'text-foreground',\n ]\"\n >{{ label }}</label\n >\n <input\n [id]=\"id\"\n [type]=\"type\"\n [value]=\"value\"\n [placeholder]=\"placeholder\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n [required]=\"required\"\n [attr.aria-invalid]=\"invalid\"\n [ngClass]=\"[\n 'border-input focus-visible:border-ring focus-visible:ring-2 focus-visible:ring-ring/50 aria-invalid:ring-2 aria-invalid:ring-destructive aria-invalid:border-destructive aria-invalid:placeholder:text-destructive/70 placeholder:text-muted-foreground w-full min-w-0 appearance-none box-border rounded-lg border border-solid bg-transparent px-3 py-1 text-sm shadow-sm transition-colors outline-none file:inline-flex file:h-6 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50',\n size === 'large' ? 'h-10 px-4 text-sm' : '',\n size === 'regular' ? 'h-9 px-3 text-sm' : '',\n size === 'small' ? 'h-8 px-2 text-sm' : '',\n size === 'mini' ? 'h-6 px-1.5 text-xs' : '',\n roundness === 'round' ? 'rounded-full' : 'rounded-lg',\n type === 'file' ? 'text-sm' : 'text-foreground',\n inputClassName,\n ]\"\n (input)=\"onInput($event)\"\n (blur)=\"onBlur($event)\"\n />\n <p *ngIf=\"!invalid && helperText\" class=\"m-0 text-sm text-muted-foreground\">\n {{ helperText }}\n </p>\n <p *ngIf=\"invalid && errorText\" class=\"m-0 text-sm text-destructive\">\n {{ errorText }}\n </p>\n</div>\n", styles: [":host{display:block}\n"] }]
4784
- }], propDecorators: { id: [{
4849
+ args: [{ selector: "pdm-input", changeDetection: ChangeDetectionStrategy.OnPush, template: "<div [ngClass]=\"['grid w-full gap-3', className]\">\n <label\n *ngIf=\"label\"\n [attr.for]=\"id\"\n [ngClass]=\"[\n 'text-sm font-medium leading-none',\n invalid ? 'text-destructive' : 'text-foreground',\n ]\"\n >{{ label }}</label\n >\n <input\n [id]=\"id\"\n [type]=\"type\"\n [value]=\"value\"\n [placeholder]=\"placeholder\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n [required]=\"required\"\n [attr.aria-invalid]=\"invalid\"\n [attr.aria-describedby]=\"descriptionAttrId\"\n [ngClass]=\"[\n 'border-input focus-visible:border-ring focus-visible:ring-2 focus-visible:ring-ring/50 aria-invalid:ring-2 aria-invalid:ring-destructive aria-invalid:border-destructive aria-invalid:placeholder:text-destructive/70 placeholder:text-muted-foreground w-full min-w-0 appearance-none box-border rounded-lg border border-solid bg-transparent px-3 py-1 text-sm shadow-sm transition-colors outline-none file:inline-flex file:h-6 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50',\n size === 'large' ? 'h-10 px-4 text-sm' : '',\n size === 'regular' ? 'h-9 px-3 text-sm' : '',\n size === 'small' ? 'h-8 px-2 text-sm' : '',\n size === 'mini' ? 'h-6 px-1.5 text-xs' : '',\n roundness === 'round' ? 'rounded-full' : 'rounded-lg',\n type === 'file' ? 'text-sm' : 'text-foreground',\n inputClassName,\n ]\"\n (input)=\"onInput($event)\"\n (blur)=\"onBlur($event)\"\n />\n <p *ngIf=\"!invalid && helperText\" [id]=\"helperAttrId\" class=\"m-0 text-sm text-muted-foreground\">\n {{ helperText }}\n </p>\n <p *ngIf=\"invalid && errorText\" [id]=\"errorAttrId\" class=\"m-0 text-sm text-destructive\">\n {{ errorText }}\n </p>\n</div>\n", styles: [":host{display:block}\n"] }]
4850
+ }], ctorParameters: function () { return []; }, propDecorators: { id: [{
4785
4851
  type: Input
4786
4852
  }], type: [{
4787
4853
  type: Input
@@ -5148,7 +5214,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
5148
5214
  type: Output
5149
5215
  }] } });
5150
5216
 
5151
- const COMPONENTS$m = [
5217
+ const COMPONENTS$i = [
5152
5218
  PdmInputComponent,
5153
5219
  PdmInputGroupComponent,
5154
5220
  PdmInputOtpComponent,
@@ -5172,8 +5238,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
5172
5238
  type: NgModule,
5173
5239
  args: [{
5174
5240
  imports: [CommonModule, PdmIconModule$1],
5175
- declarations: COMPONENTS$m,
5176
- exports: COMPONENTS$m,
5241
+ declarations: COMPONENTS$i,
5242
+ exports: COMPONENTS$i,
5177
5243
  }]
5178
5244
  }] });
5179
5245
 
@@ -5197,7 +5263,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
5197
5263
  type: Input
5198
5264
  }] } });
5199
5265
 
5200
- const COMPONENTS$l = [
5266
+ const COMPONENTS$h = [
5201
5267
  PdmItemComponent,
5202
5268
  ];
5203
5269
  class PdmItemModule {
@@ -5209,8 +5275,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
5209
5275
  type: NgModule,
5210
5276
  args: [{
5211
5277
  imports: [CommonModule],
5212
- declarations: COMPONENTS$l,
5213
- exports: COMPONENTS$l
5278
+ declarations: COMPONENTS$h,
5279
+ exports: COMPONENTS$h
5214
5280
  }]
5215
5281
  }] });
5216
5282
 
@@ -5220,28 +5286,28 @@ class PdmKbdComponent {
5220
5286
  }
5221
5287
  }
5222
5288
  PdmKbdComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmKbdComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
5223
- PdmKbdComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmKbdComponent, selector: "pdm-kbd", inputs: { className: "className" }, ngImport: i0, template: "<kbd [ngClass]=\"['inline-flex h-6 min-w-6 items-center justify-center rounded-md border border-solid border-border bg-muted px-1.5 font-mono text-xs font-medium text-muted-foreground', className]\">\n <ng-content></ng-content>\n</kbd>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
5289
+ PdmKbdComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmKbdComponent, isStandalone: true, selector: "pdm-kbd", inputs: { className: "className" }, ngImport: i0, template: "<kbd [ngClass]=\"['inline-flex h-6 min-w-6 items-center justify-center rounded-md border border-solid border-border bg-muted px-1.5 font-mono text-xs font-medium text-muted-foreground', className]\">\n <ng-content></ng-content>\n</kbd>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
5224
5290
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmKbdComponent, decorators: [{
5225
5291
  type: Component,
5226
- args: [{ selector: 'pdm-kbd', changeDetection: ChangeDetectionStrategy.OnPush, template: "<kbd [ngClass]=\"['inline-flex h-6 min-w-6 items-center justify-center rounded-md border border-solid border-border bg-muted px-1.5 font-mono text-xs font-medium text-muted-foreground', className]\">\n <ng-content></ng-content>\n</kbd>\n" }]
5292
+ args: [{ selector: 'pdm-kbd', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CommonModule], template: "<kbd [ngClass]=\"['inline-flex h-6 min-w-6 items-center justify-center rounded-md border border-solid border-border bg-muted px-1.5 font-mono text-xs font-medium text-muted-foreground', className]\">\n <ng-content></ng-content>\n</kbd>\n" }]
5227
5293
  }], propDecorators: { className: [{
5228
5294
  type: Input
5229
5295
  }] } });
5230
5296
 
5231
- const COMPONENTS$k = [
5232
- PdmKbdComponent,
5233
- ];
5297
+ /**
5298
+ * @deprecated Import PdmKbdComponent directly instead. This module is kept for backwards compatibility.
5299
+ * For modern Angular (v14+), use: import { PdmKbdComponent } from 'pdm-ui-kit/kbd'
5300
+ */
5234
5301
  class PdmKbdModule {
5235
5302
  }
5236
5303
  PdmKbdModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmKbdModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
5237
- PdmKbdModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: PdmKbdModule, declarations: [PdmKbdComponent], imports: [CommonModule], exports: [PdmKbdComponent] });
5238
- PdmKbdModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmKbdModule, imports: [CommonModule] });
5304
+ PdmKbdModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: PdmKbdModule, imports: [PdmKbdComponent], exports: [PdmKbdComponent] });
5305
+ PdmKbdModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmKbdModule, imports: [PdmKbdComponent] });
5239
5306
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmKbdModule, decorators: [{
5240
5307
  type: NgModule,
5241
5308
  args: [{
5242
- imports: [CommonModule],
5243
- declarations: COMPONENTS$k,
5244
- exports: COMPONENTS$k
5309
+ imports: [PdmKbdComponent],
5310
+ exports: [PdmKbdComponent]
5245
5311
  }]
5246
5312
  }] });
5247
5313
 
@@ -5265,7 +5331,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
5265
5331
  type: Input
5266
5332
  }] } });
5267
5333
 
5268
- const COMPONENTS$j = [
5334
+ const COMPONENTS$g = [
5269
5335
  PdmLabelComponent,
5270
5336
  ];
5271
5337
  class PdmLabelModule {
@@ -5277,8 +5343,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
5277
5343
  type: NgModule,
5278
5344
  args: [{
5279
5345
  imports: [CommonModule],
5280
- declarations: COMPONENTS$j,
5281
- exports: COMPONENTS$j
5346
+ declarations: COMPONENTS$g,
5347
+ exports: COMPONENTS$g
5282
5348
  }]
5283
5349
  }] });
5284
5350
 
@@ -5420,7 +5486,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
5420
5486
  args: ["document:keydown.escape"]
5421
5487
  }] } });
5422
5488
 
5423
- const COMPONENTS$i = [
5489
+ const COMPONENTS$f = [
5424
5490
  PdmMenubarComponent,
5425
5491
  ];
5426
5492
  class PdmMenubarModule {
@@ -5432,8 +5498,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
5432
5498
  type: NgModule,
5433
5499
  args: [{
5434
5500
  imports: [CommonModule, OverlayModule],
5435
- declarations: COMPONENTS$i,
5436
- exports: COMPONENTS$i
5501
+ declarations: COMPONENTS$f,
5502
+ exports: COMPONENTS$f
5437
5503
  }]
5438
5504
  }] });
5439
5505
 
@@ -5475,7 +5541,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
5475
5541
  type: Output
5476
5542
  }] } });
5477
5543
 
5478
- const COMPONENTS$h = [PdmNativeSelectComponent];
5544
+ const COMPONENTS$e = [PdmNativeSelectComponent];
5479
5545
  class PdmNativeSelectModule {
5480
5546
  }
5481
5547
  PdmNativeSelectModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmNativeSelectModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
@@ -5485,8 +5551,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
5485
5551
  type: NgModule,
5486
5552
  args: [{
5487
5553
  imports: [CommonModule, PdmIconModule$1],
5488
- declarations: COMPONENTS$h,
5489
- exports: COMPONENTS$h,
5554
+ declarations: COMPONENTS$e,
5555
+ exports: COMPONENTS$e,
5490
5556
  }]
5491
5557
  }] });
5492
5558
 
@@ -5529,7 +5595,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
5529
5595
  type: Input
5530
5596
  }] } });
5531
5597
 
5532
- const COMPONENTS$g = [
5598
+ const COMPONENTS$d = [
5533
5599
  PdmNavigationMenuComponent,
5534
5600
  ];
5535
5601
  class PdmNavigationMenuModule {
@@ -5541,8 +5607,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
5541
5607
  type: NgModule,
5542
5608
  args: [{
5543
5609
  imports: [CommonModule],
5544
- declarations: COMPONENTS$g,
5545
- exports: COMPONENTS$g
5610
+ declarations: COMPONENTS$d,
5611
+ exports: COMPONENTS$d
5546
5612
  }]
5547
5613
  }] });
5548
5614
 
@@ -5619,10 +5685,10 @@ class PdmPaginationComponent {
5619
5685
  }
5620
5686
  }
5621
5687
  PdmPaginationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmPaginationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
5622
- PdmPaginationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmPaginationComponent, selector: "pdm-pagination", inputs: { page: "page", pageCount: "pageCount", maxVisible: "maxVisible", className: "className", rowsPerPageLabel: "rowsPerPageLabel", rowsPerPage: "rowsPerPage", rowsPerPageOptions: "rowsPerPageOptions" }, outputs: { pageChange: "pageChange", rowsPerPageChange: "rowsPerPageChange" }, ngImport: i0, template: "<nav\n aria-label=\"Pagination\"\n [ngClass]=\"[\n 'mx-auto flex w-full flex-wrap items-center justify-center gap-4',\n className,\n ]\"\n>\n <div class=\"flex items-center gap-3\" *ngIf=\"rowsPerPageOptions.length > 0\">\n <span class=\"text-sm font-medium text-foreground\">{{\n rowsPerPageLabel\n }}</span>\n <pdm-select\n [value]=\"rowsPerPageValue\"\n [options]=\"rowsPerPageSelectOptions\"\n [placeholder]=\"rowsPerPageValue\"\n className=\"w-[100px] sm:w-[120px]\"\n (valueChange)=\"onRowsPerPageChangeValue($event)\"\n ></pdm-select>\n </div>\n\n <ul class=\"m-0 flex list-none items-center gap-1 p-0\">\n <li>\n <button\n type=\"button\"\n class=\"inline-flex h-9 appearance-none box-border items-center justify-center gap-1 rounded-md border-0 bg-transparent px-2 text-sm text-foreground hover:bg-accent disabled:opacity-50 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2\"\n [disabled]=\"page <= 1\"\n (click)=\"setPage(page - 1)\"\n >\n <pdm-icon name=\"chevron-left\" [size]=\"14\"></pdm-icon>\n Previous\n </button>\n </li>\n <li *ngFor=\"let pageNumber of visiblePages\">\n <ng-container *ngIf=\"pageNumber === 'ellipsis'; else pageButton\">\n <span\n class=\"inline-flex h-9 min-w-9 items-center justify-center px-2 text-sm text-muted-foreground\"\n >...</span\n >\n </ng-container>\n <ng-template #pageButton>\n <button\n type=\"button\"\n [ngClass]=\"[\n 'inline-flex h-9 min-w-9 items-center justify-center rounded-md px-2 text-sm ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2',\n pageNumber === page\n ? 'appearance-none box-border border border-solid border-border bg-muted text-foreground shadow-sm'\n : 'appearance-none box-border border-0 bg-transparent text-foreground hover:bg-accent hover:text-accent-foreground',\n ]\"\n (click)=\"setPage(+pageNumber)\"\n >\n {{ pageNumber }}\n </button>\n </ng-template>\n </li>\n <li>\n <button\n type=\"button\"\n class=\"inline-flex h-9 appearance-none box-border items-center justify-center gap-1 rounded-md border-0 bg-transparent px-2 text-sm text-foreground hover:bg-accent disabled:opacity-50 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2\"\n [disabled]=\"page >= pageCount\"\n (click)=\"setPage(page + 1)\"\n >\n Next\n <pdm-icon name=\"chevron-right\" [size]=\"14\"></pdm-icon>\n </button>\n </li>\n </ul>\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"] }, { kind: "component", type: i2.PdmIconComponent, selector: "pdm-icon", inputs: ["name", "library", "assetUrl", "size", "strokeWidth", "className", "ariaLabel", "decorative"] }, { kind: "component", type: i3$1.PdmSelectComponent, selector: "pdm-select", inputs: ["id", "value", "options", "disabled", "invalid", "className", "placeholder", "overlayOptions"], outputs: ["valueChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
5688
+ PdmPaginationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmPaginationComponent, selector: "pdm-pagination", inputs: { page: "page", pageCount: "pageCount", maxVisible: "maxVisible", className: "className", rowsPerPageLabel: "rowsPerPageLabel", rowsPerPage: "rowsPerPage", rowsPerPageOptions: "rowsPerPageOptions" }, outputs: { pageChange: "pageChange", rowsPerPageChange: "rowsPerPageChange" }, ngImport: i0, template: "<nav\n aria-label=\"Pagination\"\n [ngClass]=\"[\n 'mx-auto flex w-full flex-wrap items-center justify-center gap-4',\n className,\n ]\"\n>\n <div class=\"flex items-center gap-3\" *ngIf=\"rowsPerPageOptions.length > 0\">\n <span class=\"text-sm font-medium text-foreground\">{{\n rowsPerPageLabel\n }}</span>\n <pdm-select\n [value]=\"rowsPerPageValue\"\n [options]=\"rowsPerPageSelectOptions\"\n [placeholder]=\"rowsPerPageValue\"\n className=\"w-[100px] sm:w-[120px]\"\n (valueChange)=\"onRowsPerPageChangeValue($event)\"\n ></pdm-select>\n </div>\n\n <ul class=\"m-0 flex list-none items-center gap-1 p-0\">\n <li>\n <button\n type=\"button\"\n class=\"inline-flex h-9 appearance-none box-border items-center justify-center gap-1 rounded-md border-0 bg-transparent px-2 text-sm text-foreground hover:bg-accent disabled:opacity-50 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2\"\n [disabled]=\"page <= 1\"\n [attr.aria-label]=\"'Go to previous page'\"\n (click)=\"setPage(page - 1)\"\n >\n <pdm-icon name=\"chevron-left\" [size]=\"14\"></pdm-icon>\n Previous\n </button>\n </li>\n <li *ngFor=\"let pageNumber of visiblePages\">\n <ng-container *ngIf=\"pageNumber === 'ellipsis'; else pageButton\">\n <span\n class=\"inline-flex h-9 min-w-9 items-center justify-center px-2 text-sm text-muted-foreground\"\n >...</span\n >\n </ng-container>\n <ng-template #pageButton>\n <button\n type=\"button\"\n [ngClass]=\"[\n 'inline-flex h-9 min-w-9 items-center justify-center rounded-md px-2 text-sm ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2',\n pageNumber === page\n ? 'appearance-none box-border border border-solid border-border bg-muted text-foreground shadow-sm'\n : 'appearance-none box-border border-0 bg-transparent text-foreground hover:bg-accent hover:text-accent-foreground',\n ]\"\n [attr.aria-label]=\"'Go to page ' + pageNumber\"\n [attr.aria-current]=\"pageNumber === page ? 'page' : null\"\n (click)=\"setPage(+pageNumber)\"\n >\n {{ pageNumber }}\n </button>\n </ng-template>\n </li>\n <li>\n <button\n type=\"button\"\n class=\"inline-flex h-9 appearance-none box-border items-center justify-center gap-1 rounded-md border-0 bg-transparent px-2 text-sm text-foreground hover:bg-accent disabled:opacity-50 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2\"\n [disabled]=\"page >= pageCount\"\n [attr.aria-label]=\"'Go to next page'\"\n (click)=\"setPage(page + 1)\"\n >\n Next\n <pdm-icon name=\"chevron-right\" [size]=\"14\"></pdm-icon>\n </button>\n </li>\n </ul>\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"] }, { kind: "component", type: i2.PdmIconComponent, selector: "pdm-icon", inputs: ["name", "library", "assetUrl", "size", "strokeWidth", "className", "ariaLabel", "decorative"] }, { kind: "component", type: i3$1.PdmSelectComponent, selector: "pdm-select", inputs: ["id", "value", "options", "disabled", "invalid", "className", "placeholder", "overlayOptions"], outputs: ["valueChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
5623
5689
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmPaginationComponent, decorators: [{
5624
5690
  type: Component,
5625
- args: [{ selector: 'pdm-pagination', changeDetection: ChangeDetectionStrategy.OnPush, template: "<nav\n aria-label=\"Pagination\"\n [ngClass]=\"[\n 'mx-auto flex w-full flex-wrap items-center justify-center gap-4',\n className,\n ]\"\n>\n <div class=\"flex items-center gap-3\" *ngIf=\"rowsPerPageOptions.length > 0\">\n <span class=\"text-sm font-medium text-foreground\">{{\n rowsPerPageLabel\n }}</span>\n <pdm-select\n [value]=\"rowsPerPageValue\"\n [options]=\"rowsPerPageSelectOptions\"\n [placeholder]=\"rowsPerPageValue\"\n className=\"w-[100px] sm:w-[120px]\"\n (valueChange)=\"onRowsPerPageChangeValue($event)\"\n ></pdm-select>\n </div>\n\n <ul class=\"m-0 flex list-none items-center gap-1 p-0\">\n <li>\n <button\n type=\"button\"\n class=\"inline-flex h-9 appearance-none box-border items-center justify-center gap-1 rounded-md border-0 bg-transparent px-2 text-sm text-foreground hover:bg-accent disabled:opacity-50 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2\"\n [disabled]=\"page <= 1\"\n (click)=\"setPage(page - 1)\"\n >\n <pdm-icon name=\"chevron-left\" [size]=\"14\"></pdm-icon>\n Previous\n </button>\n </li>\n <li *ngFor=\"let pageNumber of visiblePages\">\n <ng-container *ngIf=\"pageNumber === 'ellipsis'; else pageButton\">\n <span\n class=\"inline-flex h-9 min-w-9 items-center justify-center px-2 text-sm text-muted-foreground\"\n >...</span\n >\n </ng-container>\n <ng-template #pageButton>\n <button\n type=\"button\"\n [ngClass]=\"[\n 'inline-flex h-9 min-w-9 items-center justify-center rounded-md px-2 text-sm ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2',\n pageNumber === page\n ? 'appearance-none box-border border border-solid border-border bg-muted text-foreground shadow-sm'\n : 'appearance-none box-border border-0 bg-transparent text-foreground hover:bg-accent hover:text-accent-foreground',\n ]\"\n (click)=\"setPage(+pageNumber)\"\n >\n {{ pageNumber }}\n </button>\n </ng-template>\n </li>\n <li>\n <button\n type=\"button\"\n class=\"inline-flex h-9 appearance-none box-border items-center justify-center gap-1 rounded-md border-0 bg-transparent px-2 text-sm text-foreground hover:bg-accent disabled:opacity-50 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2\"\n [disabled]=\"page >= pageCount\"\n (click)=\"setPage(page + 1)\"\n >\n Next\n <pdm-icon name=\"chevron-right\" [size]=\"14\"></pdm-icon>\n </button>\n </li>\n </ul>\n</nav>\n" }]
5691
+ args: [{ selector: 'pdm-pagination', changeDetection: ChangeDetectionStrategy.OnPush, template: "<nav\n aria-label=\"Pagination\"\n [ngClass]=\"[\n 'mx-auto flex w-full flex-wrap items-center justify-center gap-4',\n className,\n ]\"\n>\n <div class=\"flex items-center gap-3\" *ngIf=\"rowsPerPageOptions.length > 0\">\n <span class=\"text-sm font-medium text-foreground\">{{\n rowsPerPageLabel\n }}</span>\n <pdm-select\n [value]=\"rowsPerPageValue\"\n [options]=\"rowsPerPageSelectOptions\"\n [placeholder]=\"rowsPerPageValue\"\n className=\"w-[100px] sm:w-[120px]\"\n (valueChange)=\"onRowsPerPageChangeValue($event)\"\n ></pdm-select>\n </div>\n\n <ul class=\"m-0 flex list-none items-center gap-1 p-0\">\n <li>\n <button\n type=\"button\"\n class=\"inline-flex h-9 appearance-none box-border items-center justify-center gap-1 rounded-md border-0 bg-transparent px-2 text-sm text-foreground hover:bg-accent disabled:opacity-50 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2\"\n [disabled]=\"page <= 1\"\n [attr.aria-label]=\"'Go to previous page'\"\n (click)=\"setPage(page - 1)\"\n >\n <pdm-icon name=\"chevron-left\" [size]=\"14\"></pdm-icon>\n Previous\n </button>\n </li>\n <li *ngFor=\"let pageNumber of visiblePages\">\n <ng-container *ngIf=\"pageNumber === 'ellipsis'; else pageButton\">\n <span\n class=\"inline-flex h-9 min-w-9 items-center justify-center px-2 text-sm text-muted-foreground\"\n >...</span\n >\n </ng-container>\n <ng-template #pageButton>\n <button\n type=\"button\"\n [ngClass]=\"[\n 'inline-flex h-9 min-w-9 items-center justify-center rounded-md px-2 text-sm ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2',\n pageNumber === page\n ? 'appearance-none box-border border border-solid border-border bg-muted text-foreground shadow-sm'\n : 'appearance-none box-border border-0 bg-transparent text-foreground hover:bg-accent hover:text-accent-foreground',\n ]\"\n [attr.aria-label]=\"'Go to page ' + pageNumber\"\n [attr.aria-current]=\"pageNumber === page ? 'page' : null\"\n (click)=\"setPage(+pageNumber)\"\n >\n {{ pageNumber }}\n </button>\n </ng-template>\n </li>\n <li>\n <button\n type=\"button\"\n class=\"inline-flex h-9 appearance-none box-border items-center justify-center gap-1 rounded-md border-0 bg-transparent px-2 text-sm text-foreground hover:bg-accent disabled:opacity-50 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2\"\n [disabled]=\"page >= pageCount\"\n [attr.aria-label]=\"'Go to next page'\"\n (click)=\"setPage(page + 1)\"\n >\n Next\n <pdm-icon name=\"chevron-right\" [size]=\"14\"></pdm-icon>\n </button>\n </li>\n </ul>\n</nav>\n" }]
5626
5692
  }], propDecorators: { page: [{
5627
5693
  type: Input
5628
5694
  }], pageCount: [{
@@ -5643,7 +5709,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
5643
5709
  type: Output
5644
5710
  }] } });
5645
5711
 
5646
- const COMPONENTS$f = [PdmPaginationComponent];
5712
+ const COMPONENTS$c = [PdmPaginationComponent];
5647
5713
  class PdmPaginationModule {
5648
5714
  }
5649
5715
  PdmPaginationModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmPaginationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
@@ -5653,8 +5719,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
5653
5719
  type: NgModule,
5654
5720
  args: [{
5655
5721
  imports: [CommonModule, PdmIconModule$1, PdmSelectModule$1],
5656
- declarations: COMPONENTS$f,
5657
- exports: COMPONENTS$f,
5722
+ declarations: COMPONENTS$c,
5723
+ exports: COMPONENTS$c,
5658
5724
  }]
5659
5725
  }] });
5660
5726
 
@@ -5814,7 +5880,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
5814
5880
  args: ["document:keydown.escape"]
5815
5881
  }] } });
5816
5882
 
5817
- const COMPONENTS$e = [
5883
+ const COMPONENTS$b = [
5818
5884
  PdmPopoverComponent,
5819
5885
  ];
5820
5886
  class PdmPopoverModule {
@@ -5826,8 +5892,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
5826
5892
  type: NgModule,
5827
5893
  args: [{
5828
5894
  imports: [CommonModule, OverlayModule],
5829
- declarations: COMPONENTS$e,
5830
- exports: COMPONENTS$e
5895
+ declarations: COMPONENTS$b,
5896
+ exports: COMPONENTS$b
5831
5897
  }]
5832
5898
  }] });
5833
5899
 
@@ -5861,7 +5927,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
5861
5927
  type: Input
5862
5928
  }] } });
5863
5929
 
5864
- const COMPONENTS$d = [
5930
+ const COMPONENTS$a = [
5865
5931
  PdmProgressComponent,
5866
5932
  ];
5867
5933
  class PdmProgressModule {
@@ -5873,8 +5939,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
5873
5939
  type: NgModule,
5874
5940
  args: [{
5875
5941
  imports: [CommonModule],
5876
- declarations: COMPONENTS$d,
5877
- exports: COMPONENTS$d
5942
+ declarations: COMPONENTS$a,
5943
+ exports: COMPONENTS$a
5878
5944
  }]
5879
5945
  }] });
5880
5946
 
@@ -5913,7 +5979,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
5913
5979
  type: Output
5914
5980
  }] } });
5915
5981
 
5916
- const COMPONENTS$c = [
5982
+ const COMPONENTS$9 = [
5917
5983
  PdmRadioGroupComponent,
5918
5984
  ];
5919
5985
  class PdmRadioGroupModule {
@@ -5925,8 +5991,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
5925
5991
  type: NgModule,
5926
5992
  args: [{
5927
5993
  imports: [CommonModule],
5928
- declarations: COMPONENTS$c,
5929
- exports: COMPONENTS$c
5994
+ declarations: COMPONENTS$9,
5995
+ exports: COMPONENTS$9
5930
5996
  }]
5931
5997
  }] });
5932
5998
 
@@ -5947,7 +6013,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
5947
6013
  type: Input
5948
6014
  }] } });
5949
6015
 
5950
- const COMPONENTS$b = [
6016
+ const COMPONENTS$8 = [
5951
6017
  PdmScrollAreaComponent,
5952
6018
  ];
5953
6019
  class PdmScrollAreaModule {
@@ -5959,8 +6025,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
5959
6025
  type: NgModule,
5960
6026
  args: [{
5961
6027
  imports: [CommonModule],
5962
- declarations: COMPONENTS$b,
5963
- exports: COMPONENTS$b
6028
+ declarations: COMPONENTS$8,
6029
+ exports: COMPONENTS$8
5964
6030
  }]
5965
6031
  }] });
5966
6032
 
@@ -6172,7 +6238,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
6172
6238
  args: ["document:keydown.escape"]
6173
6239
  }] } });
6174
6240
 
6175
- const COMPONENTS$a = [PdmSelectComponent, PdmSelectOptionDirective];
6241
+ const COMPONENTS$7 = [PdmSelectComponent, PdmSelectOptionDirective];
6176
6242
  class PdmSelectModule {
6177
6243
  }
6178
6244
  PdmSelectModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSelectModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
@@ -6182,8 +6248,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
6182
6248
  type: NgModule,
6183
6249
  args: [{
6184
6250
  imports: [CommonModule, OverlayModule, PdmIconModule$1],
6185
- declarations: COMPONENTS$a,
6186
- exports: COMPONENTS$a,
6251
+ declarations: COMPONENTS$7,
6252
+ exports: COMPONENTS$7,
6187
6253
  }]
6188
6254
  }] });
6189
6255
 
@@ -6198,10 +6264,10 @@ class PdmSeparatorComponent {
6198
6264
  }
6199
6265
  }
6200
6266
  PdmSeparatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSeparatorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
6201
- PdmSeparatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmSeparatorComponent, selector: "pdm-separator", inputs: { orientation: "orientation", decorative: "decorative", className: "className" }, ngImport: i0, template: "<div\n [attr.role]=\"decorative ? 'none' : 'separator'\"\n [attr.aria-orientation]=\"orientation\"\n [ngClass]=\"['shrink-0 bg-border', orientationClass, className]\"\n></div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
6267
+ PdmSeparatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmSeparatorComponent, isStandalone: true, selector: "pdm-separator", inputs: { orientation: "orientation", decorative: "decorative", className: "className" }, ngImport: i0, template: "<div\n [attr.role]=\"decorative ? 'none' : 'separator'\"\n [attr.aria-orientation]=\"orientation\"\n [ngClass]=\"['shrink-0 bg-border', orientationClass, className]\"\n></div>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
6202
6268
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSeparatorComponent, decorators: [{
6203
6269
  type: Component,
6204
- args: [{ selector: 'pdm-separator', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n [attr.role]=\"decorative ? 'none' : 'separator'\"\n [attr.aria-orientation]=\"orientation\"\n [ngClass]=\"['shrink-0 bg-border', orientationClass, className]\"\n></div>\n" }]
6270
+ args: [{ selector: 'pdm-separator', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CommonModule], template: "<div\n [attr.role]=\"decorative ? 'none' : 'separator'\"\n [attr.aria-orientation]=\"orientation\"\n [ngClass]=\"['shrink-0 bg-border', orientationClass, className]\"\n></div>\n" }]
6205
6271
  }], propDecorators: { orientation: [{
6206
6272
  type: Input
6207
6273
  }], decorative: [{
@@ -6210,20 +6276,20 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
6210
6276
  type: Input
6211
6277
  }] } });
6212
6278
 
6213
- const COMPONENTS$9 = [
6214
- PdmSeparatorComponent,
6215
- ];
6279
+ /**
6280
+ * @deprecated Import PdmSeparatorComponent directly instead. This module is kept for backwards compatibility.
6281
+ * For modern Angular (v14+), use: import { PdmSeparatorComponent } from 'pdm-ui-kit/separator'
6282
+ */
6216
6283
  class PdmSeparatorModule {
6217
6284
  }
6218
6285
  PdmSeparatorModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSeparatorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
6219
- PdmSeparatorModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: PdmSeparatorModule, declarations: [PdmSeparatorComponent], imports: [CommonModule], exports: [PdmSeparatorComponent] });
6220
- PdmSeparatorModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSeparatorModule, imports: [CommonModule] });
6286
+ PdmSeparatorModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: PdmSeparatorModule, imports: [PdmSeparatorComponent], exports: [PdmSeparatorComponent] });
6287
+ PdmSeparatorModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSeparatorModule, imports: [PdmSeparatorComponent] });
6221
6288
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSeparatorModule, decorators: [{
6222
6289
  type: NgModule,
6223
6290
  args: [{
6224
- imports: [CommonModule],
6225
- declarations: COMPONENTS$9,
6226
- exports: COMPONENTS$9
6291
+ imports: [PdmSeparatorComponent],
6292
+ exports: [PdmSeparatorComponent]
6227
6293
  }]
6228
6294
  }] });
6229
6295
 
@@ -6291,7 +6357,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
6291
6357
  type: Output
6292
6358
  }] } });
6293
6359
 
6294
- const COMPONENTS$8 = [
6360
+ const COMPONENTS$6 = [
6295
6361
  PdmSidebarComponent,
6296
6362
  ];
6297
6363
  class PdmSidebarModule {
@@ -6303,8 +6369,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
6303
6369
  type: NgModule,
6304
6370
  args: [{
6305
6371
  imports: [CommonModule],
6306
- declarations: COMPONENTS$8,
6307
- exports: COMPONENTS$8
6372
+ declarations: COMPONENTS$6,
6373
+ exports: COMPONENTS$6
6308
6374
  }]
6309
6375
  }] });
6310
6376
 
@@ -6314,28 +6380,28 @@ class PdmSkeletonComponent {
6314
6380
  }
6315
6381
  }
6316
6382
  PdmSkeletonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSkeletonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
6317
- PdmSkeletonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmSkeletonComponent, selector: "pdm-skeleton", inputs: { className: "className" }, ngImport: i0, template: "<div [ngClass]=\"['animate-pulse rounded-md bg-muted', className]\"></div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
6383
+ PdmSkeletonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmSkeletonComponent, isStandalone: true, selector: "pdm-skeleton", inputs: { className: "className" }, ngImport: i0, template: "<div [ngClass]=\"['animate-pulse rounded-md bg-muted', className]\"></div>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
6318
6384
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSkeletonComponent, decorators: [{
6319
6385
  type: Component,
6320
- args: [{ selector: 'pdm-skeleton', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div [ngClass]=\"['animate-pulse rounded-md bg-muted', className]\"></div>\n" }]
6386
+ args: [{ selector: 'pdm-skeleton', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CommonModule], template: "<div [ngClass]=\"['animate-pulse rounded-md bg-muted', className]\"></div>\n" }]
6321
6387
  }], propDecorators: { className: [{
6322
6388
  type: Input
6323
6389
  }] } });
6324
6390
 
6325
- const COMPONENTS$7 = [
6326
- PdmSkeletonComponent,
6327
- ];
6391
+ /**
6392
+ * @deprecated Import PdmSkeletonComponent directly instead. This module is kept for backwards compatibility.
6393
+ * For modern Angular (v14+), use: import { PdmSkeletonComponent } from 'pdm-ui-kit/skeleton'
6394
+ */
6328
6395
  class PdmSkeletonModule {
6329
6396
  }
6330
6397
  PdmSkeletonModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSkeletonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
6331
- PdmSkeletonModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: PdmSkeletonModule, declarations: [PdmSkeletonComponent], imports: [CommonModule], exports: [PdmSkeletonComponent] });
6332
- PdmSkeletonModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSkeletonModule, imports: [CommonModule] });
6398
+ PdmSkeletonModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: PdmSkeletonModule, imports: [PdmSkeletonComponent], exports: [PdmSkeletonComponent] });
6399
+ PdmSkeletonModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSkeletonModule, imports: [PdmSkeletonComponent] });
6333
6400
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSkeletonModule, decorators: [{
6334
6401
  type: NgModule,
6335
6402
  args: [{
6336
- imports: [CommonModule],
6337
- declarations: COMPONENTS$7,
6338
- exports: COMPONENTS$7
6403
+ imports: [PdmSkeletonComponent],
6404
+ exports: [PdmSkeletonComponent]
6339
6405
  }]
6340
6406
  }] });
6341
6407
 
@@ -6382,7 +6448,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
6382
6448
  type: Output
6383
6449
  }] } });
6384
6450
 
6385
- const COMPONENTS$6 = [
6451
+ const COMPONENTS$5 = [
6386
6452
  PdmSliderComponent,
6387
6453
  ];
6388
6454
  class PdmSliderModule {
@@ -6394,8 +6460,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
6394
6460
  type: NgModule,
6395
6461
  args: [{
6396
6462
  imports: [CommonModule],
6397
- declarations: COMPONENTS$6,
6398
- exports: COMPONENTS$6
6463
+ declarations: COMPONENTS$5,
6464
+ exports: COMPONENTS$5
6399
6465
  }]
6400
6466
  }] });
6401
6467
 
@@ -6434,7 +6500,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
6434
6500
  type: Output
6435
6501
  }] } });
6436
6502
 
6437
- const COMPONENTS$5 = [PdmSonnerComponent];
6503
+ const COMPONENTS$4 = [PdmSonnerComponent];
6438
6504
  class PdmSonnerModule {
6439
6505
  }
6440
6506
  PdmSonnerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSonnerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
@@ -6444,8 +6510,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
6444
6510
  type: NgModule,
6445
6511
  args: [{
6446
6512
  imports: [CommonModule, PdmIconModule$1],
6447
- declarations: COMPONENTS$5,
6448
- exports: COMPONENTS$5,
6513
+ declarations: COMPONENTS$4,
6514
+ exports: COMPONENTS$4,
6449
6515
  }]
6450
6516
  }] });
6451
6517
 
@@ -6456,30 +6522,30 @@ class PdmSpinnerComponent {
6456
6522
  }
6457
6523
  }
6458
6524
  PdmSpinnerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSpinnerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
6459
- PdmSpinnerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmSpinnerComponent, selector: "pdm-spinner", inputs: { size: "size", className: "className" }, ngImport: i0, template: "<span\n [style.width.px]=\"size\"\n [style.height.px]=\"size\"\n [ngClass]=\"['inline-block animate-spin rounded-full border-2 border-current border-r-transparent', className]\"\n aria-hidden=\"true\"\n></span>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
6525
+ PdmSpinnerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmSpinnerComponent, isStandalone: true, selector: "pdm-spinner", inputs: { size: "size", className: "className" }, ngImport: i0, template: "<span\n [style.width.px]=\"size\"\n [style.height.px]=\"size\"\n [ngClass]=\"['inline-block animate-spin rounded-full border-2 border-current border-r-transparent', className]\"\n aria-hidden=\"true\"\n></span>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
6460
6526
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSpinnerComponent, decorators: [{
6461
6527
  type: Component,
6462
- args: [{ selector: 'pdm-spinner', changeDetection: ChangeDetectionStrategy.OnPush, template: "<span\n [style.width.px]=\"size\"\n [style.height.px]=\"size\"\n [ngClass]=\"['inline-block animate-spin rounded-full border-2 border-current border-r-transparent', className]\"\n aria-hidden=\"true\"\n></span>\n" }]
6528
+ args: [{ selector: 'pdm-spinner', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CommonModule], template: "<span\n [style.width.px]=\"size\"\n [style.height.px]=\"size\"\n [ngClass]=\"['inline-block animate-spin rounded-full border-2 border-current border-r-transparent', className]\"\n aria-hidden=\"true\"\n></span>\n" }]
6463
6529
  }], propDecorators: { size: [{
6464
6530
  type: Input
6465
6531
  }], className: [{
6466
6532
  type: Input
6467
6533
  }] } });
6468
6534
 
6469
- const COMPONENTS$4 = [
6470
- PdmSpinnerComponent,
6471
- ];
6535
+ /**
6536
+ * @deprecated Import PdmSpinnerComponent directly instead. This module is kept for backwards compatibility.
6537
+ * For modern Angular (v14+), use: import { PdmSpinnerComponent } from 'pdm-ui-kit/spinner'
6538
+ */
6472
6539
  class PdmSpinnerModule {
6473
6540
  }
6474
6541
  PdmSpinnerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSpinnerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
6475
- PdmSpinnerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: PdmSpinnerModule, declarations: [PdmSpinnerComponent], imports: [CommonModule], exports: [PdmSpinnerComponent] });
6476
- PdmSpinnerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSpinnerModule, imports: [CommonModule] });
6542
+ PdmSpinnerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: PdmSpinnerModule, imports: [PdmSpinnerComponent], exports: [PdmSpinnerComponent] });
6543
+ PdmSpinnerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSpinnerModule, imports: [PdmSpinnerComponent] });
6477
6544
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSpinnerModule, decorators: [{
6478
6545
  type: NgModule,
6479
6546
  args: [{
6480
- imports: [CommonModule],
6481
- declarations: COMPONENTS$4,
6482
- exports: COMPONENTS$4
6547
+ imports: [PdmSpinnerComponent],
6548
+ exports: [PdmSpinnerComponent]
6483
6549
  }]
6484
6550
  }] });
6485
6551
 
@@ -7538,9 +7604,415 @@ function logZIndexStack(element) {
7538
7604
  console.table(stack);
7539
7605
  }
7540
7606
 
7607
+ class PdmInputHarness extends ComponentHarness {
7608
+ constructor() {
7609
+ super(...arguments);
7610
+ this.input = this.locatorFor('input');
7611
+ }
7612
+ static with(options) {
7613
+ return new HarnessPredicate(PdmInputHarness, options)
7614
+ .addOption('id', options.id, (harness, id) => HarnessPredicate.stringMatches(harness.getId(), id))
7615
+ .addOption('placeholder', options.placeholder, (harness, placeholder) => HarnessPredicate.stringMatches(harness.getPlaceholder(), placeholder));
7616
+ }
7617
+ async getId() {
7618
+ return (await this.input()).getAttribute('id') || '';
7619
+ }
7620
+ async getValue() {
7621
+ return (await this.input()).getProperty('value') || '';
7622
+ }
7623
+ async setValue(value) {
7624
+ const input = await this.input();
7625
+ await input.clear();
7626
+ await input.sendKeys(value);
7627
+ }
7628
+ async getPlaceholder() {
7629
+ return (await this.input()).getAttribute('placeholder') || '';
7630
+ }
7631
+ async isDisabled() {
7632
+ return (await this.input()).matchesSelector(':disabled');
7633
+ }
7634
+ async isReadonly() {
7635
+ return (await this.input()).matchesSelector('[readonly]');
7636
+ }
7637
+ async isRequired() {
7638
+ return (await this.input()).matchesSelector('[required]');
7639
+ }
7640
+ async isInvalid() {
7641
+ return (await this.input()).matchesSelector('[aria-invalid="true"]');
7642
+ }
7643
+ async getLabel() {
7644
+ const label = await this.locatorForOptional('label')();
7645
+ return label ? label.text() : null;
7646
+ }
7647
+ async getHelperText() {
7648
+ const helper = await this.locatorForOptional('[class*="text-muted-foreground"]')();
7649
+ return helper ? helper.text() : null;
7650
+ }
7651
+ async getErrorText() {
7652
+ const error = await this.locatorForOptional('[class*="text-destructive"]')();
7653
+ return error ? error.text() : null;
7654
+ }
7655
+ async focus() {
7656
+ return (await this.input()).focus();
7657
+ }
7658
+ async blur() {
7659
+ return (await this.input()).blur();
7660
+ }
7661
+ async getType() {
7662
+ return (await this.input()).getAttribute('type') || 'text';
7663
+ }
7664
+ async clear() {
7665
+ return (await this.input()).clear();
7666
+ }
7667
+ getComponentInstance() {
7668
+ return this.locatorFor(PdmInputComponent)();
7669
+ }
7670
+ }
7671
+ PdmInputHarness.hostSelector = 'pdm-input';
7672
+
7673
+ class PdmButtonHarness extends ComponentHarness {
7674
+ constructor() {
7675
+ super(...arguments);
7676
+ this.button = this.locatorFor('button');
7677
+ }
7678
+ static with(options) {
7679
+ return new HarnessPredicate(PdmButtonHarness, options)
7680
+ .addOption('variant', options.variant, (harness, variant) => HarnessPredicate.stringMatches(harness.getVariant(), variant))
7681
+ .addOption('text', options.text, (harness, text) => HarnessPredicate.stringMatches(harness.getText(), text));
7682
+ }
7683
+ async click() {
7684
+ return (await this.button()).click();
7685
+ }
7686
+ async getText() {
7687
+ return (await this.button()).text();
7688
+ }
7689
+ async isDisabled() {
7690
+ return (await this.button()).matchesSelector(':disabled');
7691
+ }
7692
+ async isLoading() {
7693
+ return (await this.button()).matchesSelector('[aria-busy="true"]');
7694
+ }
7695
+ async getVariant() {
7696
+ const component = await this.getComponentInstance();
7697
+ return component.resolvedVariant;
7698
+ }
7699
+ async getSize() {
7700
+ const component = await this.getComponentInstance();
7701
+ return component.resolvedSize;
7702
+ }
7703
+ async getType() {
7704
+ return (await this.button()).getAttribute('type');
7705
+ }
7706
+ async hasIcon() {
7707
+ const icon = await this.locatorForOptional('[pdmButtonIcon]')();
7708
+ return !!icon;
7709
+ }
7710
+ async focus() {
7711
+ return (await this.button()).focus();
7712
+ }
7713
+ async blur() {
7714
+ return (await this.button()).blur();
7715
+ }
7716
+ getComponentInstance() {
7717
+ return this.locatorFor(PdmButtonComponent)();
7718
+ }
7719
+ }
7720
+ PdmButtonHarness.hostSelector = 'pdm-button';
7721
+
7722
+ class PdmDialogHarness extends ComponentHarness {
7723
+ constructor() {
7724
+ super(...arguments);
7725
+ this.dialog = this.locatorFor('[role="dialog"]');
7726
+ this.closeButton = this.locatorForOptional('button[aria-label="Close dialog"]');
7727
+ this.primaryButton = this.locatorForOptional('[role="dialog"] button:last-child');
7728
+ }
7729
+ static with(options) {
7730
+ return new HarnessPredicate(PdmDialogHarness, options)
7731
+ .addOption('title', options.title, (harness, title) => HarnessPredicate.stringMatches(harness.getTitle(), title));
7732
+ }
7733
+ async isOpen() {
7734
+ try {
7735
+ await this.dialog();
7736
+ return true;
7737
+ }
7738
+ catch {
7739
+ return false;
7740
+ }
7741
+ }
7742
+ async getTitle() {
7743
+ try {
7744
+ const heading = await this.locatorForOptional('[role="dialog"] h2')();
7745
+ return heading ? heading.text() : '';
7746
+ }
7747
+ catch {
7748
+ return '';
7749
+ }
7750
+ }
7751
+ async getDescription() {
7752
+ try {
7753
+ const description = await this.locatorForOptional('[role="dialog"] p')();
7754
+ return description ? description.text() : '';
7755
+ }
7756
+ catch {
7757
+ return '';
7758
+ }
7759
+ }
7760
+ async close() {
7761
+ const closeBtn = await this.closeButton();
7762
+ if (closeBtn) {
7763
+ return closeBtn.click();
7764
+ }
7765
+ }
7766
+ async clickPrimaryAction() {
7767
+ const btn = await this.primaryButton();
7768
+ if (btn) {
7769
+ return btn.click();
7770
+ }
7771
+ }
7772
+ async clickSecondaryAction() {
7773
+ const buttons = await this.locatorForAll('button')();
7774
+ if (buttons.length >= 2) {
7775
+ return buttons[buttons.length - 2].click();
7776
+ }
7777
+ }
7778
+ async getVariant() {
7779
+ const component = await this.getComponentInstance();
7780
+ return component.variant;
7781
+ }
7782
+ async getSize() {
7783
+ const component = await this.getComponentInstance();
7784
+ return component.size;
7785
+ }
7786
+ async getPrimaryActionText() {
7787
+ const component = await this.getComponentInstance();
7788
+ return component.primaryActionText;
7789
+ }
7790
+ async getSecondaryActionText() {
7791
+ const component = await this.getComponentInstance();
7792
+ return component.secondaryActionText;
7793
+ }
7794
+ async hasCloseButton() {
7795
+ return !!(await this.closeButton());
7796
+ }
7797
+ async getContent() {
7798
+ const dialog = await this.dialog();
7799
+ return dialog.text();
7800
+ }
7801
+ getComponentInstance() {
7802
+ return this.locatorFor(PdmDialogComponent)();
7803
+ }
7804
+ }
7805
+ PdmDialogHarness.hostSelector = 'pdm-dialog';
7806
+
7807
+ class PdmSelectHarness extends ComponentHarness {
7808
+ constructor() {
7809
+ super(...arguments);
7810
+ this.trigger = this.locatorFor('button');
7811
+ this.panel = this.locatorForOptional('.cdk-overlay-pane');
7812
+ }
7813
+ static with(options) {
7814
+ return new HarnessPredicate(PdmSelectHarness, options)
7815
+ .addOption('placeholder', options.placeholder, (harness, placeholder) => HarnessPredicate.stringMatches(harness.getPlaceholder(), placeholder));
7816
+ }
7817
+ async open() {
7818
+ return (await this.trigger()).click();
7819
+ }
7820
+ async close() {
7821
+ // Close by pressing Escape
7822
+ return (await this.trigger()).sendKeys('Escape');
7823
+ }
7824
+ async isOpen() {
7825
+ try {
7826
+ const component = await this.getComponentInstance();
7827
+ return component.open;
7828
+ }
7829
+ catch {
7830
+ return false;
7831
+ }
7832
+ }
7833
+ async getSelectedOption() {
7834
+ const component = await this.getComponentInstance();
7835
+ return component.selectedOption;
7836
+ }
7837
+ async getSelectedLabel() {
7838
+ const component = await this.getComponentInstance();
7839
+ return component.selectedLabel;
7840
+ }
7841
+ async getPlaceholder() {
7842
+ const component = await this.getComponentInstance();
7843
+ return component.placeholder;
7844
+ }
7845
+ async selectOption(value) {
7846
+ await this.open();
7847
+ const options = await this.locatorForAll('.cdk-overlay-pane button')();
7848
+ for (const option of options) {
7849
+ const text = await option.text();
7850
+ if (text.includes(value)) {
7851
+ return option.click();
7852
+ }
7853
+ }
7854
+ throw new Error(`Option with value "${value}" not found`);
7855
+ }
7856
+ async getOptions() {
7857
+ const component = await this.getComponentInstance();
7858
+ return component.resolvedOptions;
7859
+ }
7860
+ async isDisabled() {
7861
+ const component = await this.getComponentInstance();
7862
+ return component.disabled;
7863
+ }
7864
+ async isInvalid() {
7865
+ const component = await this.getComponentInstance();
7866
+ return component.invalid;
7867
+ }
7868
+ async focus() {
7869
+ return (await this.trigger()).focus();
7870
+ }
7871
+ async blur() {
7872
+ return (await this.trigger()).blur();
7873
+ }
7874
+ getComponentInstance() {
7875
+ return this.locatorFor(PdmSelectComponent)();
7876
+ }
7877
+ }
7878
+ PdmSelectHarness.hostSelector = 'pdm-select';
7879
+
7880
+ class PdmCheckboxHarness extends ComponentHarness {
7881
+ constructor() {
7882
+ super(...arguments);
7883
+ this.input = this.locatorFor('input[type="checkbox"]');
7884
+ }
7885
+ static with(options) {
7886
+ return new HarnessPredicate(PdmCheckboxHarness, options)
7887
+ .addOption('label', options.label, (harness, label) => HarnessPredicate.stringMatches(harness.getLabel(), label));
7888
+ }
7889
+ async isChecked() {
7890
+ return (await this.input()).matchesSelector(':checked');
7891
+ }
7892
+ async toggle() {
7893
+ return (await this.input()).click();
7894
+ }
7895
+ async check() {
7896
+ if (!(await this.isChecked())) {
7897
+ await this.toggle();
7898
+ }
7899
+ }
7900
+ async uncheck() {
7901
+ if (await this.isChecked()) {
7902
+ await this.toggle();
7903
+ }
7904
+ }
7905
+ async isDisabled() {
7906
+ return (await this.input()).matchesSelector(':disabled');
7907
+ }
7908
+ async getLabel() {
7909
+ const label = await this.locatorForOptional('label')();
7910
+ return label ? label.text() : '';
7911
+ }
7912
+ async getDescription() {
7913
+ const component = await this.getComponentInstance();
7914
+ return component.description;
7915
+ }
7916
+ async getVariant() {
7917
+ const component = await this.getComponentInstance();
7918
+ return component.variant;
7919
+ }
7920
+ async focus() {
7921
+ return (await this.input()).focus();
7922
+ }
7923
+ async blur() {
7924
+ return (await this.input()).blur();
7925
+ }
7926
+ getComponentInstance() {
7927
+ return this.locatorFor(PdmCheckboxComponent)();
7928
+ }
7929
+ }
7930
+ PdmCheckboxHarness.hostSelector = 'pdm-checkbox';
7931
+
7932
+ class PdmPaginationHarness extends ComponentHarness {
7933
+ constructor() {
7934
+ super(...arguments);
7935
+ this.nav = this.locatorFor('nav');
7936
+ }
7937
+ static with(options) {
7938
+ return new HarnessPredicate(PdmPaginationHarness, options);
7939
+ }
7940
+ async goToPage(page) {
7941
+ const buttons = await this.locatorForAll('button')();
7942
+ for (const button of buttons) {
7943
+ const text = await button.text();
7944
+ if (text.trim() === String(page)) {
7945
+ return button.click();
7946
+ }
7947
+ }
7948
+ throw new Error(`Page ${page} not found in pagination`);
7949
+ }
7950
+ async goToNextPage() {
7951
+ const buttons = await this.locatorForAll('button')();
7952
+ if (buttons.length > 0) {
7953
+ return buttons[buttons.length - 1].click();
7954
+ }
7955
+ }
7956
+ async goToPreviousPage() {
7957
+ const buttons = await this.locatorForAll('button')();
7958
+ if (buttons.length > 0) {
7959
+ return buttons[0].click();
7960
+ }
7961
+ }
7962
+ async getCurrentPage() {
7963
+ const component = await this.getComponentInstance();
7964
+ return component.page;
7965
+ }
7966
+ async getPageCount() {
7967
+ const component = await this.getComponentInstance();
7968
+ return component.pageCount;
7969
+ }
7970
+ async getRowsPerPage() {
7971
+ const component = await this.getComponentInstance();
7972
+ return component.rowsPerPage;
7973
+ }
7974
+ async setRowsPerPage(rows) {
7975
+ // This would require interacting with the select component
7976
+ const component = await this.getComponentInstance();
7977
+ component.rowsPerPageChange.emit(rows);
7978
+ }
7979
+ async getVisiblePages() {
7980
+ const component = await this.getComponentInstance();
7981
+ return component.visiblePages;
7982
+ }
7983
+ async isNextPageDisabled() {
7984
+ const buttons = await this.locatorForAll('button')();
7985
+ if (buttons.length > 0) {
7986
+ return buttons[buttons.length - 1].matchesSelector(':disabled');
7987
+ }
7988
+ return true;
7989
+ }
7990
+ async isPreviousPageDisabled() {
7991
+ const buttons = await this.locatorForAll('button')();
7992
+ if (buttons.length > 0) {
7993
+ return buttons[0].matchesSelector(':disabled');
7994
+ }
7995
+ return true;
7996
+ }
7997
+ async getPageButtons() {
7998
+ return this.locatorForAll('button')();
7999
+ }
8000
+ getComponentInstance() {
8001
+ return this.locatorFor(PdmPaginationComponent)();
8002
+ }
8003
+ }
8004
+ PdmPaginationHarness.hostSelector = 'pdm-pagination';
8005
+
8006
+ /**
8007
+ * Public API for CDK test harnesses
8008
+ *
8009
+ * Usage:
8010
+ * import { PdmInputHarness, PdmButtonHarness } from 'pdm-ui-kit/testing';
8011
+ */
8012
+
7541
8013
  /**
7542
8014
  * Generated bundle index. Do not edit.
7543
8015
  */
7544
8016
 
7545
- export { BREAKPOINTS, OVERLAY_BASE_Z_INDEX, PdmAccordionComponent, PdmAccordionModule, PdmAlertComponent, PdmAlertDialogComponent, PdmAlertModule, PdmAspectRatioComponent, PdmAspectRatioModule, PdmAvatarComponent, PdmAvatarModule, PdmBadgeComponent, PdmBadgeModule, PdmBreadcrumbComponent, PdmBreadcrumbModule, PdmButtonComponent, PdmButtonGroupComponent, PdmButtonModule, PdmCalendarComponent, PdmCalendarModule, PdmCardComponent, PdmCardModule, PdmCarouselComponent, PdmCarouselModule, PdmChartComponent, PdmChartModule, PdmCheckboxComponent, PdmCheckboxModule, PdmCollapsibleComponent, PdmCollapsibleModule, PdmComboboxComponent, PdmComboboxModule, PdmCommandComponent, PdmCommandModule, PdmContextMenuComponent, PdmContextMenuModule, PdmDataTableComponent, PdmDataTableModule, PdmDatePickerComponent, PdmDialogComponent, PdmDialogModule, PdmDraggableTableComponent, PdmDrawerComponent, PdmDrawerModule, PdmDropdownMenuComponent, PdmDropdownMenuModule, PdmEmptyComponent, PdmEmptyModule, PdmFieldComponent, PdmFieldModule, PdmHoverCardComponent, PdmHoverCardModule, PdmIconComponent, PdmIconModule, PdmInputComponent, PdmInputGroupComponent, PdmInputModule, PdmInputOtpComponent, PdmInputPasswordComponent, PdmItemComponent, PdmItemModule, PdmKbdComponent, PdmKbdModule, PdmLabelComponent, PdmLabelModule, PdmMenubarComponent, PdmMenubarModule, PdmNativeSelectComponent, PdmNativeSelectModule, PdmNavigationMenuComponent, PdmNavigationMenuModule, PdmOutsideClickDirective, PdmOutsideClickModule, PdmPaginationComponent, PdmPaginationModule, PdmPopoverComponent, PdmPopoverModule, PdmProgressComponent, PdmProgressModule, PdmRadioGroupComponent, PdmRadioGroupModule, PdmScrollAreaComponent, PdmScrollAreaModule, PdmSelectComponent, PdmSelectModule, PdmSelectOptionDirective, PdmSeparatorComponent, PdmSeparatorModule, PdmSheetComponent, PdmSidebarComponent, PdmSidebarModule, PdmSkeletonComponent, PdmSkeletonModule, PdmSliderComponent, PdmSliderModule, PdmSonnerComponent, PdmSonnerModule, PdmSpinnerComponent, PdmSpinnerModule, PdmSwitchComponent, PdmSwitchModule, PdmTableComponent, PdmTabsComponent, PdmTabsModule, PdmTextareaComponent, PdmToggleComponent, PdmToggleGroupComponent, PdmToggleModule, PdmTooltipComponent, PdmTooltipModule, PdmUiKitModule, RESPONSIVE_CONTAINER, RESPONSIVE_DISPLAY, TABLE_RESPONSIVE, Z_INDEX, createFlexiblePositionStrategy, createZIndexEnforcedOverlay, extractZIndex, logZIndexStack, mergeOverlayPanelClass, overflowResponsive, responsive, spacingResponsive, widthResponsive };
8017
+ export { BREAKPOINTS, OVERLAY_BASE_Z_INDEX, PdmAccordionComponent, PdmAccordionModule, PdmAlertComponent, PdmAlertDialogComponent, PdmAlertModule, PdmAspectRatioComponent, PdmAspectRatioModule, PdmAvatarComponent, PdmAvatarModule, PdmBadgeComponent, PdmBadgeModule, PdmBreadcrumbComponent, PdmBreadcrumbModule, PdmButtonComponent, PdmButtonGroupComponent, PdmButtonHarness, PdmButtonModule, PdmCalendarComponent, PdmCalendarModule, PdmCardComponent, PdmCardModule, PdmCarouselComponent, PdmCarouselModule, PdmChartComponent, PdmChartModule, PdmCheckboxComponent, PdmCheckboxHarness, PdmCheckboxModule, PdmCollapsibleComponent, PdmCollapsibleModule, PdmComboboxComponent, PdmComboboxModule, PdmCommandComponent, PdmCommandModule, PdmContextMenuComponent, PdmContextMenuModule, PdmDataTableComponent, PdmDataTableModule, PdmDatePickerComponent, PdmDialogComponent, PdmDialogHarness, PdmDialogModule, PdmDraggableTableComponent, PdmDrawerComponent, PdmDrawerModule, PdmDropdownMenuComponent, PdmDropdownMenuModule, PdmEmptyComponent, PdmEmptyModule, PdmFieldComponent, PdmFieldModule, PdmHoverCardComponent, PdmHoverCardModule, PdmIconComponent, PdmIconModule, PdmInputComponent, PdmInputGroupComponent, PdmInputHarness, PdmInputModule, PdmInputOtpComponent, PdmInputPasswordComponent, PdmItemComponent, PdmItemModule, PdmKbdComponent, PdmKbdModule, PdmLabelComponent, PdmLabelModule, PdmMenubarComponent, PdmMenubarModule, PdmNativeSelectComponent, PdmNativeSelectModule, PdmNavigationMenuComponent, PdmNavigationMenuModule, PdmOutsideClickDirective, PdmOutsideClickModule, PdmPaginationComponent, PdmPaginationHarness, PdmPaginationModule, PdmPopoverComponent, PdmPopoverModule, PdmProgressComponent, PdmProgressModule, PdmRadioGroupComponent, PdmRadioGroupModule, PdmScrollAreaComponent, PdmScrollAreaModule, PdmSelectComponent, PdmSelectHarness, PdmSelectModule, PdmSelectOptionDirective, PdmSeparatorComponent, PdmSeparatorModule, PdmSheetComponent, PdmSidebarComponent, PdmSidebarModule, PdmSkeletonComponent, PdmSkeletonModule, PdmSliderComponent, PdmSliderModule, PdmSonnerComponent, PdmSonnerModule, PdmSpinnerComponent, PdmSpinnerModule, PdmSwitchComponent, PdmSwitchModule, PdmTableComponent, PdmTabsComponent, PdmTabsModule, PdmTextareaComponent, PdmToggleComponent, PdmToggleGroupComponent, PdmToggleModule, PdmTooltipComponent, PdmTooltipModule, PdmUiKitModule, RESPONSIVE_CONTAINER, RESPONSIVE_DISPLAY, TABLE_RESPONSIVE, Z_INDEX, createFlexiblePositionStrategy, createZIndexEnforcedOverlay, extractZIndex, logZIndexStack, mergeOverlayPanelClass, overflowResponsive, responsive, spacingResponsive, widthResponsive };
7546
8018
  //# sourceMappingURL=pdm-ui-kit.mjs.map