pdm-ui-kit 0.1.1 → 0.1.3

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 (378) hide show
  1. package/README.md +99 -50
  2. package/dist/corelusa-pdm-ui-kit/README.md +79 -0
  3. package/dist/corelusa-pdm-ui-kit/esm2020/corelusa-pdm-ui-kit.mjs +5 -0
  4. package/{fesm2015/pdm-ui-kit.mjs → dist/corelusa-pdm-ui-kit/fesm2015/corelusa-pdm-ui-kit.mjs} +1 -1
  5. package/dist/corelusa-pdm-ui-kit/fesm2015/corelusa-pdm-ui-kit.mjs.map +1 -0
  6. package/{fesm2020/pdm-ui-kit.mjs → dist/corelusa-pdm-ui-kit/fesm2020/corelusa-pdm-ui-kit.mjs} +1 -1
  7. package/dist/corelusa-pdm-ui-kit/fesm2020/corelusa-pdm-ui-kit.mjs.map +1 -0
  8. package/dist/corelusa-pdm-ui-kit/index.d.ts +5 -0
  9. package/dist/corelusa-pdm-ui-kit/package.json +47 -0
  10. package/dist/pdm-ui-kit/README.md +128 -0
  11. package/dist/pdm-ui-kit/esm2020/lib/components/accordion/accordion.component.mjs +42 -0
  12. package/dist/pdm-ui-kit/esm2020/lib/components/alert/alert.component.mjs +35 -0
  13. package/dist/pdm-ui-kit/esm2020/lib/components/alert-dialog/alert-dialog.component.mjs +69 -0
  14. package/dist/pdm-ui-kit/esm2020/lib/components/aspect-ratio/aspect-ratio.component.mjs +31 -0
  15. package/dist/pdm-ui-kit/esm2020/lib/components/avatar/avatar.component.mjs +46 -0
  16. package/dist/pdm-ui-kit/esm2020/lib/components/badge/badge.component.mjs +23 -0
  17. package/dist/pdm-ui-kit/esm2020/lib/components/breadcrumb/breadcrumb.component.mjs +29 -0
  18. package/dist/pdm-ui-kit/esm2020/lib/components/button/button.component.mjs +82 -0
  19. package/dist/pdm-ui-kit/esm2020/lib/components/button-group/button-group.component.mjs +23 -0
  20. package/dist/pdm-ui-kit/esm2020/lib/components/calendar/calendar.component.mjs +71 -0
  21. package/dist/pdm-ui-kit/esm2020/lib/components/card/card.component.mjs +65 -0
  22. package/dist/pdm-ui-kit/esm2020/lib/components/carousel/carousel.component.mjs +97 -0
  23. package/dist/pdm-ui-kit/esm2020/lib/components/chart/chart.component.mjs +174 -0
  24. package/dist/pdm-ui-kit/esm2020/lib/components/checkbox/checkbox.component.mjs +47 -0
  25. package/dist/pdm-ui-kit/esm2020/lib/components/collapsible/collapsible.component.mjs +43 -0
  26. package/dist/pdm-ui-kit/esm2020/lib/components/combobox/combobox.component.mjs +51 -0
  27. package/dist/pdm-ui-kit/esm2020/lib/components/command/command.component.mjs +75 -0
  28. package/dist/pdm-ui-kit/esm2020/lib/components/context-menu/context-menu.component.mjs +78 -0
  29. package/dist/pdm-ui-kit/esm2020/lib/components/data-table/data-table.component.mjs +89 -0
  30. package/dist/pdm-ui-kit/esm2020/lib/components/date-picker/date-picker.component.mjs +63 -0
  31. package/dist/pdm-ui-kit/esm2020/lib/components/dialog/dialog.component.mjs +90 -0
  32. package/dist/pdm-ui-kit/esm2020/lib/components/drawer/drawer.component.mjs +72 -0
  33. package/dist/pdm-ui-kit/esm2020/lib/components/dropdown-menu/dropdown-menu.component.mjs +120 -0
  34. package/dist/pdm-ui-kit/esm2020/lib/components/empty/empty.component.mjs +58 -0
  35. package/dist/pdm-ui-kit/esm2020/lib/components/field/field.component.mjs +64 -0
  36. package/dist/pdm-ui-kit/esm2020/lib/components/hover-card/hover-card.component.mjs +44 -0
  37. package/dist/pdm-ui-kit/esm2020/lib/components/icon/icon.component.mjs +94 -0
  38. package/dist/pdm-ui-kit/esm2020/lib/components/input/input.component.mjs +65 -0
  39. package/dist/pdm-ui-kit/esm2020/lib/components/input-group/input-group.component.mjs +63 -0
  40. package/dist/pdm-ui-kit/esm2020/lib/components/input-otp/input-otp.component.mjs +140 -0
  41. package/dist/pdm-ui-kit/esm2020/lib/components/input-password/input-password.component.mjs +72 -0
  42. package/dist/pdm-ui-kit/esm2020/lib/components/item/item.component.mjs +23 -0
  43. package/dist/pdm-ui-kit/esm2020/lib/components/kbd/kbd.component.mjs +17 -0
  44. package/dist/pdm-ui-kit/esm2020/lib/components/label/label.component.mjs +23 -0
  45. package/dist/pdm-ui-kit/esm2020/lib/components/menubar/menubar.component.mjs +31 -0
  46. package/dist/pdm-ui-kit/esm2020/lib/components/native-select/native-select.component.mjs +42 -0
  47. package/dist/pdm-ui-kit/esm2020/lib/components/navigation-menu/navigation-menu.component.mjs +20 -0
  48. package/dist/pdm-ui-kit/esm2020/lib/components/pagination/pagination.component.mjs +47 -0
  49. package/dist/pdm-ui-kit/esm2020/lib/components/popover/popover.component.mjs +58 -0
  50. package/dist/pdm-ui-kit/esm2020/lib/components/progress/progress.component.mjs +33 -0
  51. package/dist/pdm-ui-kit/esm2020/lib/components/radio-group/radio-group.component.mjs +38 -0
  52. package/dist/pdm-ui-kit/esm2020/lib/components/scroll-area/scroll-area.component.mjs +20 -0
  53. package/dist/pdm-ui-kit/esm2020/lib/components/select/select.component.mjs +38 -0
  54. package/dist/pdm-ui-kit/esm2020/lib/components/separator/separator.component.mjs +26 -0
  55. package/dist/pdm-ui-kit/esm2020/lib/components/sheet/sheet.component.mjs +39 -0
  56. package/dist/pdm-ui-kit/esm2020/lib/components/sidebar/sidebar.component.mjs +20 -0
  57. package/dist/pdm-ui-kit/esm2020/lib/components/skeleton/skeleton.component.mjs +17 -0
  58. package/dist/pdm-ui-kit/esm2020/lib/components/slider/slider.component.mjs +46 -0
  59. package/dist/pdm-ui-kit/esm2020/lib/components/sonner/sonner.component.mjs +39 -0
  60. package/dist/pdm-ui-kit/esm2020/lib/components/spinner/spinner.component.mjs +20 -0
  61. package/dist/pdm-ui-kit/esm2020/lib/components/switch/switch.component.mjs +35 -0
  62. package/dist/pdm-ui-kit/esm2020/lib/components/table/table.component.mjs +17 -0
  63. package/dist/pdm-ui-kit/esm2020/lib/components/tabs/tabs.component.mjs +31 -0
  64. package/dist/pdm-ui-kit/esm2020/lib/components/textarea/textarea.component.mjs +59 -0
  65. package/dist/pdm-ui-kit/esm2020/lib/components/toggle/toggle.component.mjs +41 -0
  66. package/dist/pdm-ui-kit/esm2020/lib/components/toggle-group/toggle-group.component.mjs +31 -0
  67. package/dist/pdm-ui-kit/esm2020/lib/components/tooltip/tooltip.component.mjs +33 -0
  68. package/dist/pdm-ui-kit/esm2020/lib/pdm-ui-kit.module.mjs +245 -0
  69. package/dist/pdm-ui-kit/esm2020/public-api.mjs +59 -0
  70. package/dist/pdm-ui-kit/fesm2015/pdm-ui-kit.mjs +2980 -0
  71. package/dist/pdm-ui-kit/fesm2015/pdm-ui-kit.mjs.map +1 -0
  72. package/dist/pdm-ui-kit/fesm2020/pdm-ui-kit.mjs +2975 -0
  73. package/dist/pdm-ui-kit/fesm2020/pdm-ui-kit.mjs.map +1 -0
  74. package/dist/pdm-ui-kit/lib/components/accordion/accordion.component.d.ts +19 -0
  75. package/dist/pdm-ui-kit/lib/components/alert/alert.component.d.ts +13 -0
  76. package/dist/pdm-ui-kit/lib/components/alert-dialog/alert-dialog.component.d.ts +21 -0
  77. package/dist/pdm-ui-kit/lib/components/aspect-ratio/aspect-ratio.component.d.ts +10 -0
  78. package/dist/pdm-ui-kit/lib/components/avatar/avatar.component.d.ts +20 -0
  79. package/dist/pdm-ui-kit/lib/components/badge/badge.component.d.ts +9 -0
  80. package/dist/pdm-ui-kit/lib/components/breadcrumb/breadcrumb.component.d.ts +10 -0
  81. package/dist/pdm-ui-kit/lib/components/button/button.component.d.ts +24 -0
  82. package/dist/pdm-ui-kit/lib/components/button-group/button-group.component.d.ts +9 -0
  83. package/dist/pdm-ui-kit/lib/components/calendar/calendar.component.d.ts +28 -0
  84. package/dist/pdm-ui-kit/lib/components/card/card.component.d.ts +24 -0
  85. package/dist/pdm-ui-kit/lib/components/carousel/carousel.component.d.ts +25 -0
  86. package/dist/pdm-ui-kit/lib/components/chart/chart.component.d.ts +41 -0
  87. package/dist/pdm-ui-kit/lib/components/checkbox/checkbox.component.d.ts +17 -0
  88. package/dist/pdm-ui-kit/lib/components/collapsible/collapsible.component.d.ts +14 -0
  89. package/dist/pdm-ui-kit/lib/components/combobox/combobox.component.d.ts +18 -0
  90. package/dist/pdm-ui-kit/lib/components/command/command.component.d.ts +33 -0
  91. package/dist/pdm-ui-kit/lib/components/context-menu/context-menu.component.d.ts +26 -0
  92. package/dist/pdm-ui-kit/lib/components/data-table/data-table.component.d.ts +36 -0
  93. package/dist/pdm-ui-kit/lib/components/date-picker/date-picker.component.d.ts +23 -0
  94. package/dist/pdm-ui-kit/lib/components/dialog/dialog.component.d.ts +30 -0
  95. package/dist/pdm-ui-kit/lib/components/drawer/drawer.component.d.ts +27 -0
  96. package/dist/pdm-ui-kit/lib/components/dropdown-menu/dropdown-menu.component.d.ts +34 -0
  97. package/dist/pdm-ui-kit/lib/components/empty/empty.component.d.ts +19 -0
  98. package/dist/pdm-ui-kit/lib/components/field/field.component.d.ts +23 -0
  99. package/dist/pdm-ui-kit/lib/components/hover-card/hover-card.component.d.ts +14 -0
  100. package/dist/pdm-ui-kit/lib/components/icon/icon.component.d.ts +18 -0
  101. package/dist/pdm-ui-kit/lib/components/input/input.component.d.ts +23 -0
  102. package/dist/pdm-ui-kit/lib/components/input-group/input-group.component.d.ts +22 -0
  103. package/dist/pdm-ui-kit/lib/components/input-otp/input-otp.component.d.ts +26 -0
  104. package/dist/pdm-ui-kit/lib/components/input-password/input-password.component.d.ts +25 -0
  105. package/dist/pdm-ui-kit/lib/components/item/item.component.d.ts +8 -0
  106. package/dist/pdm-ui-kit/lib/components/kbd/kbd.component.d.ts +6 -0
  107. package/dist/pdm-ui-kit/lib/components/label/label.component.d.ts +8 -0
  108. package/dist/pdm-ui-kit/lib/components/menubar/menubar.component.d.ts +17 -0
  109. package/dist/pdm-ui-kit/lib/components/native-select/native-select.component.d.ts +20 -0
  110. package/dist/pdm-ui-kit/lib/components/navigation-menu/navigation-menu.component.d.ts +12 -0
  111. package/dist/pdm-ui-kit/lib/components/pagination/pagination.component.d.ts +13 -0
  112. package/dist/pdm-ui-kit/lib/components/popover/popover.component.d.ts +17 -0
  113. package/dist/pdm-ui-kit/lib/components/progress/progress.component.d.ts +10 -0
  114. package/dist/pdm-ui-kit/lib/components/radio-group/radio-group.component.d.ts +19 -0
  115. package/dist/pdm-ui-kit/lib/components/scroll-area/scroll-area.component.d.ts +7 -0
  116. package/dist/pdm-ui-kit/lib/components/select/select.component.d.ts +19 -0
  117. package/dist/pdm-ui-kit/lib/components/separator/separator.component.d.ts +9 -0
  118. package/dist/pdm-ui-kit/lib/components/sheet/sheet.component.d.ts +13 -0
  119. package/dist/pdm-ui-kit/lib/components/sidebar/sidebar.component.d.ts +7 -0
  120. package/dist/pdm-ui-kit/lib/components/skeleton/skeleton.component.d.ts +6 -0
  121. package/dist/pdm-ui-kit/lib/components/slider/slider.component.d.ts +15 -0
  122. package/dist/pdm-ui-kit/lib/components/sonner/sonner.component.d.ts +13 -0
  123. package/dist/pdm-ui-kit/lib/components/spinner/spinner.component.d.ts +7 -0
  124. package/dist/pdm-ui-kit/lib/components/switch/switch.component.d.ts +13 -0
  125. package/dist/pdm-ui-kit/lib/components/table/table.component.d.ts +6 -0
  126. package/dist/pdm-ui-kit/lib/components/tabs/tabs.component.d.ts +16 -0
  127. package/dist/pdm-ui-kit/lib/components/textarea/textarea.component.d.ts +21 -0
  128. package/dist/pdm-ui-kit/lib/components/toggle/toggle.component.d.ts +14 -0
  129. package/dist/pdm-ui-kit/lib/components/toggle-group/toggle-group.component.d.ts +16 -0
  130. package/dist/pdm-ui-kit/lib/components/tooltip/tooltip.component.d.ts +10 -0
  131. package/dist/pdm-ui-kit/lib/pdm-ui-kit.module.d.ts +64 -0
  132. package/dist/pdm-ui-kit/package.json +44 -0
  133. package/dist/pdm-ui-kit/public-api.d.ts +58 -0
  134. package/ng-package.json +8 -0
  135. package/package.json +13 -20
  136. package/pdm-ui-kit-0.1.1.tgz +0 -0
  137. package/pdm-ui-kit-0.1.2.tgz +0 -0
  138. package/pdm-ui-kit-0.1.3.tgz +0 -0
  139. package/src/lib/components/accordion/accordion.component.html +34 -0
  140. package/src/lib/components/accordion/accordion.component.ts +38 -0
  141. package/src/lib/components/alert/alert.component.html +52 -0
  142. package/src/lib/components/alert/alert.component.ts +25 -0
  143. package/src/lib/components/alert-dialog/alert-dialog.component.html +41 -0
  144. package/src/lib/components/alert-dialog/alert-dialog.component.ts +45 -0
  145. package/src/lib/components/aspect-ratio/aspect-ratio.component.html +11 -0
  146. package/src/lib/components/aspect-ratio/aspect-ratio.component.ts +18 -0
  147. package/src/lib/components/avatar/avatar.component.html +21 -0
  148. package/src/lib/components/avatar/avatar.component.ts +32 -0
  149. package/src/lib/components/badge/badge.component.html +28 -0
  150. package/src/lib/components/badge/badge.component.ts +23 -0
  151. package/src/lib/components/breadcrumb/breadcrumb.component.html +39 -0
  152. package/src/lib/components/breadcrumb/breadcrumb.component.ts +26 -0
  153. package/src/lib/components/button/button.component.html +15 -0
  154. package/src/lib/components/button/button.component.ts +84 -0
  155. package/src/lib/components/button-group/button-group.component.html +39 -0
  156. package/src/lib/components/button-group/button-group.component.ts +15 -0
  157. package/src/lib/components/calendar/calendar.component.html +73 -0
  158. package/src/lib/components/calendar/calendar.component.ts +78 -0
  159. package/src/lib/components/card/card.component.html +77 -0
  160. package/src/lib/components/card/card.component.ts +39 -0
  161. package/src/lib/components/carousel/carousel.component.html +86 -0
  162. package/src/lib/components/carousel/carousel.component.ts +100 -0
  163. package/src/lib/components/chart/chart.component.html +143 -0
  164. package/src/lib/components/chart/chart.component.ts +147 -0
  165. package/src/lib/components/checkbox/checkbox.component.html +38 -0
  166. package/src/lib/components/checkbox/checkbox.component.ts +32 -0
  167. package/src/lib/components/collapsible/collapsible.component.html +26 -0
  168. package/src/lib/components/collapsible/collapsible.component.ts +29 -0
  169. package/src/lib/components/combobox/combobox.component.html +42 -0
  170. package/src/lib/components/combobox/combobox.component.ts +32 -0
  171. package/src/lib/components/command/command.component.html +55 -0
  172. package/src/lib/components/command/command.component.ts +67 -0
  173. package/src/lib/components/context-menu/context-menu.component.html +47 -0
  174. package/src/lib/components/context-menu/context-menu.component.ts +67 -0
  175. package/src/lib/components/data-table/data-table.component.html +63 -0
  176. package/src/lib/components/data-table/data-table.component.ts +78 -0
  177. package/src/lib/components/date-picker/date-picker.component.html +38 -0
  178. package/src/lib/components/date-picker/date-picker.component.ts +38 -0
  179. package/src/lib/components/dialog/dialog.component.html +78 -0
  180. package/src/lib/components/dialog/dialog.component.ts +55 -0
  181. package/src/lib/components/drawer/drawer.component.html +56 -0
  182. package/src/lib/components/drawer/drawer.component.ts +43 -0
  183. package/src/lib/components/dropdown-menu/dropdown-menu.component.html +56 -0
  184. package/src/lib/components/dropdown-menu/dropdown-menu.component.ts +126 -0
  185. package/src/lib/components/empty/empty.component.html +29 -0
  186. package/src/lib/components/empty/empty.component.ts +35 -0
  187. package/src/lib/components/field/field.component.html +26 -0
  188. package/src/lib/components/field/field.component.ts +42 -0
  189. package/src/lib/components/hover-card/hover-card.component.html +24 -0
  190. package/src/lib/components/hover-card/hover-card.component.ts +36 -0
  191. package/src/lib/components/icon/icon.component.html +286 -0
  192. package/src/lib/components/icon/icon.component.ts +133 -0
  193. package/src/lib/components/input/input.component.html +25 -0
  194. package/src/lib/components/input/input.component.ts +33 -0
  195. package/src/lib/components/input-group/input-group.component.html +59 -0
  196. package/src/lib/components/input-group/input-group.component.ts +32 -0
  197. package/src/lib/components/input-otp/input-otp.component.html +25 -0
  198. package/src/lib/components/input-otp/input-otp.component.ts +146 -0
  199. package/src/lib/components/input-password/input-password.component.html +66 -0
  200. package/src/lib/components/input-password/input-password.component.ts +46 -0
  201. package/src/lib/components/item/item.component.html +10 -0
  202. package/src/lib/components/item/item.component.ts +12 -0
  203. package/src/lib/components/kbd/kbd.component.html +3 -0
  204. package/src/lib/components/kbd/kbd.component.ts +10 -0
  205. package/src/lib/components/label/label.component.html +7 -0
  206. package/src/lib/components/label/label.component.ts +12 -0
  207. package/src/lib/components/menubar/menubar.component.html +16 -0
  208. package/src/lib/components/menubar/menubar.component.ts +29 -0
  209. package/src/lib/components/native-select/native-select.component.html +17 -0
  210. package/src/lib/components/native-select/native-select.component.ts +28 -0
  211. package/src/lib/components/navigation-menu/navigation-menu.component.html +15 -0
  212. package/src/lib/components/navigation-menu/navigation-menu.component.ts +17 -0
  213. package/src/lib/components/pagination/pagination.component.html +30 -0
  214. package/src/lib/components/pagination/pagination.component.ts +37 -0
  215. package/src/lib/components/popover/popover.component.html +6 -0
  216. package/src/lib/components/popover/popover.component.ts +40 -0
  217. package/src/lib/components/progress/progress.component.html +9 -0
  218. package/src/lib/components/progress/progress.component.ts +20 -0
  219. package/src/lib/components/radio-group/radio-group.component.html +25 -0
  220. package/src/lib/components/radio-group/radio-group.component.ts +30 -0
  221. package/src/lib/components/scroll-area/scroll-area.component.html +5 -0
  222. package/src/lib/components/scroll-area/scroll-area.component.ts +11 -0
  223. package/src/lib/components/select/select.component.html +14 -0
  224. package/src/lib/components/select/select.component.ts +27 -0
  225. package/src/lib/components/separator/separator.component.html +5 -0
  226. package/src/lib/components/separator/separator.component.ts +16 -0
  227. package/src/lib/components/sheet/sheet.component.html +10 -0
  228. package/src/lib/components/sheet/sheet.component.ts +28 -0
  229. package/src/lib/components/sidebar/sidebar.component.html +3 -0
  230. package/src/lib/components/sidebar/sidebar.component.ts +11 -0
  231. package/src/lib/components/skeleton/skeleton.component.html +1 -0
  232. package/src/lib/components/skeleton/skeleton.component.ts +10 -0
  233. package/src/lib/components/slider/slider.component.html +15 -0
  234. package/src/lib/components/slider/slider.component.ts +31 -0
  235. package/src/lib/components/sonner/sonner.component.html +10 -0
  236. package/src/lib/components/sonner/sonner.component.ts +25 -0
  237. package/src/lib/components/spinner/spinner.component.html +6 -0
  238. package/src/lib/components/spinner/spinner.component.ts +11 -0
  239. package/src/lib/components/switch/switch.component.html +14 -0
  240. package/src/lib/components/switch/switch.component.ts +20 -0
  241. package/src/lib/components/table/table.component.html +5 -0
  242. package/src/lib/components/table/table.component.ts +10 -0
  243. package/src/lib/components/tabs/tabs.component.html +21 -0
  244. package/src/lib/components/tabs/tabs.component.ts +26 -0
  245. package/src/lib/components/textarea/textarea.component.html +21 -0
  246. package/src/lib/components/textarea/textarea.component.ts +28 -0
  247. package/src/lib/components/toggle/toggle.component.html +16 -0
  248. package/src/lib/components/toggle/toggle.component.ts +29 -0
  249. package/src/lib/components/toggle-group/toggle-group.component.html +17 -0
  250. package/src/lib/components/toggle-group/toggle-group.component.ts +26 -0
  251. package/src/lib/components/tooltip/tooltip.component.html +6 -0
  252. package/src/lib/components/tooltip/tooltip.component.ts +20 -0
  253. package/src/lib/pdm-ui-kit.module.ts +126 -0
  254. package/src/public-api.ts +58 -0
  255. package/tsconfig.json +30 -0
  256. package/tsconfig.lib.json +17 -0
  257. package/fesm2015/pdm-ui-kit.mjs.map +0 -1
  258. package/fesm2020/pdm-ui-kit.mjs.map +0 -1
  259. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/components/accordion/accordion.component.mjs +0 -0
  260. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/components/alert/alert.component.mjs +0 -0
  261. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/components/alert-dialog/alert-dialog.component.mjs +0 -0
  262. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/components/aspect-ratio/aspect-ratio.component.mjs +0 -0
  263. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/components/avatar/avatar.component.mjs +0 -0
  264. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/components/badge/badge.component.mjs +0 -0
  265. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/components/breadcrumb/breadcrumb.component.mjs +0 -0
  266. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/components/button/button.component.mjs +0 -0
  267. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/components/button-group/button-group.component.mjs +0 -0
  268. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/components/calendar/calendar.component.mjs +0 -0
  269. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/components/card/card.component.mjs +0 -0
  270. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/components/carousel/carousel.component.mjs +0 -0
  271. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/components/chart/chart.component.mjs +0 -0
  272. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/components/checkbox/checkbox.component.mjs +0 -0
  273. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/components/collapsible/collapsible.component.mjs +0 -0
  274. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/components/combobox/combobox.component.mjs +0 -0
  275. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/components/command/command.component.mjs +0 -0
  276. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/components/context-menu/context-menu.component.mjs +0 -0
  277. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/components/data-table/data-table.component.mjs +0 -0
  278. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/components/date-picker/date-picker.component.mjs +0 -0
  279. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/components/dialog/dialog.component.mjs +0 -0
  280. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/components/drawer/drawer.component.mjs +0 -0
  281. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/components/dropdown-menu/dropdown-menu.component.mjs +0 -0
  282. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/components/empty/empty.component.mjs +0 -0
  283. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/components/field/field.component.mjs +0 -0
  284. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/components/hover-card/hover-card.component.mjs +0 -0
  285. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/components/icon/icon.component.mjs +0 -0
  286. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/components/input/input.component.mjs +0 -0
  287. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/components/input-group/input-group.component.mjs +0 -0
  288. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/components/input-otp/input-otp.component.mjs +0 -0
  289. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/components/input-password/input-password.component.mjs +0 -0
  290. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/components/item/item.component.mjs +0 -0
  291. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/components/kbd/kbd.component.mjs +0 -0
  292. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/components/label/label.component.mjs +0 -0
  293. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/components/menubar/menubar.component.mjs +0 -0
  294. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/components/native-select/native-select.component.mjs +0 -0
  295. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/components/navigation-menu/navigation-menu.component.mjs +0 -0
  296. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/components/pagination/pagination.component.mjs +0 -0
  297. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/components/popover/popover.component.mjs +0 -0
  298. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/components/progress/progress.component.mjs +0 -0
  299. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/components/radio-group/radio-group.component.mjs +0 -0
  300. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/components/scroll-area/scroll-area.component.mjs +0 -0
  301. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/components/select/select.component.mjs +0 -0
  302. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/components/separator/separator.component.mjs +0 -0
  303. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/components/sheet/sheet.component.mjs +0 -0
  304. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/components/sidebar/sidebar.component.mjs +0 -0
  305. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/components/skeleton/skeleton.component.mjs +0 -0
  306. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/components/slider/slider.component.mjs +0 -0
  307. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/components/sonner/sonner.component.mjs +0 -0
  308. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/components/spinner/spinner.component.mjs +0 -0
  309. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/components/switch/switch.component.mjs +0 -0
  310. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/components/table/table.component.mjs +0 -0
  311. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/components/tabs/tabs.component.mjs +0 -0
  312. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/components/textarea/textarea.component.mjs +0 -0
  313. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/components/toggle/toggle.component.mjs +0 -0
  314. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/components/toggle-group/toggle-group.component.mjs +0 -0
  315. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/components/tooltip/tooltip.component.mjs +0 -0
  316. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/lib/pdm-ui-kit.module.mjs +0 -0
  317. /package/{esm2020 → dist/corelusa-pdm-ui-kit/esm2020}/public-api.mjs +0 -0
  318. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/components/accordion/accordion.component.d.ts +0 -0
  319. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/components/alert/alert.component.d.ts +0 -0
  320. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/components/alert-dialog/alert-dialog.component.d.ts +0 -0
  321. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/components/aspect-ratio/aspect-ratio.component.d.ts +0 -0
  322. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/components/avatar/avatar.component.d.ts +0 -0
  323. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/components/badge/badge.component.d.ts +0 -0
  324. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/components/breadcrumb/breadcrumb.component.d.ts +0 -0
  325. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/components/button/button.component.d.ts +0 -0
  326. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/components/button-group/button-group.component.d.ts +0 -0
  327. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/components/calendar/calendar.component.d.ts +0 -0
  328. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/components/card/card.component.d.ts +0 -0
  329. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/components/carousel/carousel.component.d.ts +0 -0
  330. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/components/chart/chart.component.d.ts +0 -0
  331. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/components/checkbox/checkbox.component.d.ts +0 -0
  332. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/components/collapsible/collapsible.component.d.ts +0 -0
  333. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/components/combobox/combobox.component.d.ts +0 -0
  334. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/components/command/command.component.d.ts +0 -0
  335. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/components/context-menu/context-menu.component.d.ts +0 -0
  336. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/components/data-table/data-table.component.d.ts +0 -0
  337. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/components/date-picker/date-picker.component.d.ts +0 -0
  338. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/components/dialog/dialog.component.d.ts +0 -0
  339. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/components/drawer/drawer.component.d.ts +0 -0
  340. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/components/dropdown-menu/dropdown-menu.component.d.ts +0 -0
  341. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/components/empty/empty.component.d.ts +0 -0
  342. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/components/field/field.component.d.ts +0 -0
  343. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/components/hover-card/hover-card.component.d.ts +0 -0
  344. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/components/icon/icon.component.d.ts +0 -0
  345. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/components/input/input.component.d.ts +0 -0
  346. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/components/input-group/input-group.component.d.ts +0 -0
  347. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/components/input-otp/input-otp.component.d.ts +0 -0
  348. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/components/input-password/input-password.component.d.ts +0 -0
  349. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/components/item/item.component.d.ts +0 -0
  350. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/components/kbd/kbd.component.d.ts +0 -0
  351. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/components/label/label.component.d.ts +0 -0
  352. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/components/menubar/menubar.component.d.ts +0 -0
  353. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/components/native-select/native-select.component.d.ts +0 -0
  354. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/components/navigation-menu/navigation-menu.component.d.ts +0 -0
  355. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/components/pagination/pagination.component.d.ts +0 -0
  356. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/components/popover/popover.component.d.ts +0 -0
  357. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/components/progress/progress.component.d.ts +0 -0
  358. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/components/radio-group/radio-group.component.d.ts +0 -0
  359. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/components/scroll-area/scroll-area.component.d.ts +0 -0
  360. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/components/select/select.component.d.ts +0 -0
  361. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/components/separator/separator.component.d.ts +0 -0
  362. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/components/sheet/sheet.component.d.ts +0 -0
  363. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/components/sidebar/sidebar.component.d.ts +0 -0
  364. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/components/skeleton/skeleton.component.d.ts +0 -0
  365. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/components/slider/slider.component.d.ts +0 -0
  366. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/components/sonner/sonner.component.d.ts +0 -0
  367. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/components/spinner/spinner.component.d.ts +0 -0
  368. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/components/switch/switch.component.d.ts +0 -0
  369. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/components/table/table.component.d.ts +0 -0
  370. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/components/tabs/tabs.component.d.ts +0 -0
  371. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/components/textarea/textarea.component.d.ts +0 -0
  372. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/components/toggle/toggle.component.d.ts +0 -0
  373. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/components/toggle-group/toggle-group.component.d.ts +0 -0
  374. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/components/tooltip/tooltip.component.d.ts +0 -0
  375. /package/{lib → dist/corelusa-pdm-ui-kit/lib}/pdm-ui-kit.module.d.ts +0 -0
  376. /package/{public-api.d.ts → dist/corelusa-pdm-ui-kit/public-api.d.ts} +0 -0
  377. /package/{esm2020 → dist/pdm-ui-kit/esm2020}/pdm-ui-kit.mjs +0 -0
  378. /package/{index.d.ts → dist/pdm-ui-kit/index.d.ts} +0 -0
@@ -0,0 +1,58 @@
1
+ export * from './lib/pdm-ui-kit.module';
2
+ export * from './lib/components/accordion/accordion.component';
3
+ export * from './lib/components/alert/alert.component';
4
+ export * from './lib/components/alert-dialog/alert-dialog.component';
5
+ export * from './lib/components/aspect-ratio/aspect-ratio.component';
6
+ export * from './lib/components/avatar/avatar.component';
7
+ export * from './lib/components/badge/badge.component';
8
+ export * from './lib/components/breadcrumb/breadcrumb.component';
9
+ export * from './lib/components/button-group/button-group.component';
10
+ export * from './lib/components/button/button.component';
11
+ export * from './lib/components/calendar/calendar.component';
12
+ export * from './lib/components/carousel/carousel.component';
13
+ export * from './lib/components/card/card.component';
14
+ export * from './lib/components/chart/chart.component';
15
+ export * from './lib/components/checkbox/checkbox.component';
16
+ export * from './lib/components/collapsible/collapsible.component';
17
+ export * from './lib/components/combobox/combobox.component';
18
+ export * from './lib/components/command/command.component';
19
+ export * from './lib/components/context-menu/context-menu.component';
20
+ export * from './lib/components/data-table/data-table.component';
21
+ export * from './lib/components/date-picker/date-picker.component';
22
+ export * from './lib/components/dialog/dialog.component';
23
+ export * from './lib/components/dropdown-menu/dropdown-menu.component';
24
+ export * from './lib/components/drawer/drawer.component';
25
+ export * from './lib/components/empty/empty.component';
26
+ export * from './lib/components/field/field.component';
27
+ export * from './lib/components/hover-card/hover-card.component';
28
+ export * from './lib/components/icon/icon.component';
29
+ export * from './lib/components/item/item.component';
30
+ export * from './lib/components/input/input.component';
31
+ export * from './lib/components/input-password/input-password.component';
32
+ export * from './lib/components/input-group/input-group.component';
33
+ export * from './lib/components/input-otp/input-otp.component';
34
+ export * from './lib/components/kbd/kbd.component';
35
+ export * from './lib/components/label/label.component';
36
+ export * from './lib/components/menubar/menubar.component';
37
+ export * from './lib/components/native-select/native-select.component';
38
+ export * from './lib/components/navigation-menu/navigation-menu.component';
39
+ export * from './lib/components/pagination/pagination.component';
40
+ export * from './lib/components/popover/popover.component';
41
+ export * from './lib/components/progress/progress.component';
42
+ export * from './lib/components/radio-group/radio-group.component';
43
+ export * from './lib/components/scroll-area/scroll-area.component';
44
+ export * from './lib/components/select/select.component';
45
+ export * from './lib/components/separator/separator.component';
46
+ export * from './lib/components/sheet/sheet.component';
47
+ export * from './lib/components/sidebar/sidebar.component';
48
+ export * from './lib/components/skeleton/skeleton.component';
49
+ export * from './lib/components/slider/slider.component';
50
+ export * from './lib/components/sonner/sonner.component';
51
+ export * from './lib/components/spinner/spinner.component';
52
+ export * from './lib/components/switch/switch.component';
53
+ export * from './lib/components/table/table.component';
54
+ export * from './lib/components/tabs/tabs.component';
55
+ export * from './lib/components/textarea/textarea.component';
56
+ export * from './lib/components/toggle/toggle.component';
57
+ export * from './lib/components/toggle-group/toggle-group.component';
58
+ export * from './lib/components/tooltip/tooltip.component';
@@ -0,0 +1,8 @@
1
+ {
2
+ "$schema": "./node_modules/ng-packagr/ng-package.schema.json",
3
+ "dest": "dist/pdm-ui-kit",
4
+ "lib": {
5
+ "entryFile": "src/public-api.ts"
6
+ },
7
+ "allowedNonPeerDependencies": []
8
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pdm-ui-kit",
3
- "version": "0.1.1",
3
+ "version": "0.1.3",
4
4
  "description": "PDM UI Kit Angular components",
5
5
  "author": "Corelusa",
6
6
  "license": "MIT",
@@ -15,6 +15,12 @@
15
15
  "url": "https://github.com/corelusa/pdm-ui-kit.git"
16
16
  },
17
17
  "sideEffects": false,
18
+ "scripts": {
19
+ "build": "ng-packagr -p ng-package.json",
20
+ "pack:dist": "npm pack ./dist/pdm-ui-kit",
21
+ "publish:dist": "npm publish ./dist/pdm-ui-kit",
22
+ "prepublishOnly": "npm run build"
23
+ },
18
24
  "peerDependencies": {
19
25
  "@angular/common": ">=13.0.0 <16.0.0",
20
26
  "@angular/core": ">=13.0.0 <16.0.0"
@@ -22,23 +28,10 @@
22
28
  "dependencies": {
23
29
  "tslib": "^2.3.0"
24
30
  },
25
- "module": "fesm2015/pdm-ui-kit.mjs",
26
- "es2020": "fesm2020/pdm-ui-kit.mjs",
27
- "esm2020": "esm2020/pdm-ui-kit.mjs",
28
- "fesm2020": "fesm2020/pdm-ui-kit.mjs",
29
- "fesm2015": "fesm2015/pdm-ui-kit.mjs",
30
- "typings": "index.d.ts",
31
- "exports": {
32
- "./package.json": {
33
- "default": "./package.json"
34
- },
35
- ".": {
36
- "types": "./index.d.ts",
37
- "esm2020": "./esm2020/pdm-ui-kit.mjs",
38
- "es2020": "./fesm2020/pdm-ui-kit.mjs",
39
- "es2015": "./fesm2015/pdm-ui-kit.mjs",
40
- "node": "./fesm2015/pdm-ui-kit.mjs",
41
- "default": "./fesm2020/pdm-ui-kit.mjs"
42
- }
31
+ "devDependencies": {
32
+ "@angular/compiler": "^15.2.10",
33
+ "@angular/compiler-cli": "^15.2.10",
34
+ "ng-packagr": "^15.2.2",
35
+ "typescript": "~4.9.5"
43
36
  }
44
- }
37
+ }
Binary file
Binary file
Binary file
@@ -0,0 +1,34 @@
1
+ <div [ngClass]="['w-full', className]">
2
+ <div *ngFor="let item of items; let i = index" class="border-b border-[#e5e5e5]">
3
+ <h3>
4
+ <button
5
+ type="button"
6
+ class="flex h-[52px] w-full items-center justify-between py-4 text-left text-[14px] font-medium leading-5 text-[#0a0a0a] transition-colors"
7
+ [disabled]="item.disabled"
8
+ [attr.aria-expanded]="isExpanded(i)"
9
+ [attr.aria-controls]="item.id + '-panel'"
10
+ (click)="toggle(i)"
11
+ >
12
+ <span class="pr-[10px]">{{ item.title }}</span>
13
+ <span class="inline-flex h-6 w-6 items-center justify-center text-[#0a0a0a]" aria-hidden="true">
14
+ <svg
15
+ class="h-4 w-4 transition-transform"
16
+ [ngClass]="isExpanded(i) ? 'rotate-180' : ''"
17
+ viewBox="0 0 16 16"
18
+ fill="none"
19
+ xmlns="http://www.w3.org/2000/svg"
20
+ >
21
+ <path d="M3.5 6.5L8 11L12.5 6.5" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" />
22
+ </svg>
23
+ </span>
24
+ </button>
25
+ </h3>
26
+ <div
27
+ *ngIf="isExpanded(i)"
28
+ [id]="item.id + '-panel'"
29
+ class="flex flex-col gap-4 pb-4 text-[14px] font-normal leading-5 text-[#0a0a0a]"
30
+ >
31
+ <p *ngFor="let line of contentLines(item.content)" class="m-0">{{ line }}</p>
32
+ </div>
33
+ </div>
34
+ </div>
@@ -0,0 +1,38 @@
1
+ import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';
2
+
3
+ export interface PdmAccordionItem {
4
+ id: string;
5
+ title: string;
6
+ content: string | string[];
7
+ disabled?: boolean;
8
+ }
9
+
10
+ @Component({
11
+ selector: 'pdm-accordion',
12
+ templateUrl: './accordion.component.html',
13
+ changeDetection: ChangeDetectionStrategy.OnPush
14
+ })
15
+ export class PdmAccordionComponent {
16
+ @Input() items: PdmAccordionItem[] = [];
17
+ @Input() expandedIndex = -1;
18
+ @Input() className = '';
19
+
20
+ @Output() expandedIndexChange = new EventEmitter<number>();
21
+
22
+ isExpanded(index: number): boolean {
23
+ return this.expandedIndex === index;
24
+ }
25
+
26
+ contentLines(content: string | string[]): string[] {
27
+ if (Array.isArray(content)) return content;
28
+ return content
29
+ .split('\n')
30
+ .map((line) => line.trim())
31
+ .filter((line) => line.length > 0);
32
+ }
33
+
34
+ toggle(index: number): void {
35
+ if (this.items[index]?.disabled) return;
36
+ this.expandedIndexChange.emit(this.expandedIndex === index ? -1 : index);
37
+ }
38
+ }
@@ -0,0 +1,52 @@
1
+ <section
2
+ role="alert"
3
+ [ngClass]="[
4
+ 'w-full rounded-[10px] border border-[#e5e5e5] bg-white px-4 py-3',
5
+ className
6
+ ]"
7
+ >
8
+ <div [ngClass]="['flex gap-3', isDestructive ? 'items-start' : 'items-center']">
9
+ <span class="inline-flex h-6 w-6 shrink-0 items-center justify-center">
10
+ <svg *ngIf="!isDestructive && !isTitleOnly" viewBox="0 0 24 24" class="h-5 w-5 text-[#0a0a0a]" fill="none" xmlns="http://www.w3.org/2000/svg">
11
+ <circle cx="12" cy="12" r="9" stroke="currentColor" stroke-width="1.5"></circle>
12
+ <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>
13
+ </svg>
14
+ <svg *ngIf="isTitleOnly" viewBox="0 0 24 24" class="h-5 w-5 text-[#0a0a0a]" fill="none" xmlns="http://www.w3.org/2000/svg">
15
+ <path d="M5 8H19" stroke="currentColor" stroke-width="1.5" stroke-linecap="round"></path>
16
+ <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>
17
+ <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>
18
+ </svg>
19
+ <svg *ngIf="isDestructive" viewBox="0 0 24 24" class="h-5 w-5 text-[#dc2626]" fill="none" xmlns="http://www.w3.org/2000/svg">
20
+ <circle cx="12" cy="12" r="9" stroke="currentColor" stroke-width="1.5"></circle>
21
+ <path d="M12 8V12" stroke="currentColor" stroke-width="1.5" stroke-linecap="round"></path>
22
+ <circle cx="12" cy="16" r="1" fill="currentColor"></circle>
23
+ </svg>
24
+ </span>
25
+
26
+ <div class="min-w-0 flex-1">
27
+ <h4
28
+ [ngClass]="[
29
+ 'm-0 text-[14px] font-medium leading-5',
30
+ isDestructive ? 'text-[#dc2626]' : 'text-[#0a0a0a]'
31
+ ]"
32
+ >
33
+ {{ title }}
34
+ </h4>
35
+
36
+ <p
37
+ *ngIf="!isTitleOnly && description"
38
+ [ngClass]="[
39
+ 'm-0 mt-0.5 text-[14px] leading-5',
40
+ isDestructive ? 'text-[#dc2626]' : 'text-[#0a0a0a] font-light'
41
+ ]"
42
+ >
43
+ {{ description }}
44
+ </p>
45
+
46
+ <ul *ngIf="isDestructive && details.length" class="m-0 mt-1 pl-5 text-[14px] leading-5 text-[#dc2626]">
47
+ <li *ngFor="let item of details">{{ item }}</li>
48
+ </ul>
49
+ </div>
50
+ </div>
51
+ </section>
52
+
@@ -0,0 +1,25 @@
1
+ import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
2
+
3
+ export type PdmAlertVariant = 'default' | 'title-only' | 'destructive';
4
+
5
+ @Component({
6
+ selector: 'pdm-alert',
7
+ templateUrl: './alert.component.html',
8
+ changeDetection: ChangeDetectionStrategy.OnPush
9
+ })
10
+ export class PdmAlertComponent {
11
+ @Input() variant: PdmAlertVariant = 'default';
12
+ @Input() title = 'Success! Your changes have been saved';
13
+ @Input() description = 'This is an alert with icon, title and description.';
14
+ @Input() details: string[] = [];
15
+ @Input() className = '';
16
+
17
+ get isDestructive(): boolean {
18
+ return this.variant === 'destructive';
19
+ }
20
+
21
+ get isTitleOnly(): boolean {
22
+ return this.variant === 'title-only';
23
+ }
24
+ }
25
+
@@ -0,0 +1,41 @@
1
+ <button
2
+ *ngIf="showTrigger && !open"
3
+ type="button"
4
+ class="inline-flex h-9 items-center justify-center rounded-[8px] border border-[#e5e5e5] bg-[#f5f5f5] px-4 py-2 text-[14px] font-medium leading-5 text-[#0a0a0a] shadow-[0px_1px_2px_0px_rgba(0,0,0,0.1)]"
5
+ (click)="onTriggerClick()"
6
+ >
7
+ {{ triggerText }}
8
+ </button>
9
+
10
+ <div *ngIf="open" class="fixed inset-0 z-50 flex items-center justify-center p-5">
11
+ <div class="absolute inset-0 bg-[rgba(0,0,0,0.3)]" (click)="onCancel()"></div>
12
+ <section
13
+ role="alertdialog"
14
+ aria-modal="true"
15
+ [ngClass]="[
16
+ 'relative z-10 w-full max-w-[552px] rounded-[10px] border border-[#e5e5e5] bg-white p-6 text-[#0a0a0a] shadow-[0px_10px_15px_0px_rgba(0,0,0,0.1),0px_4px_6px_0px_rgba(0,0,0,0.1)]',
17
+ className
18
+ ]"
19
+ >
20
+ <div class="flex flex-col gap-2">
21
+ <h2 class="text-[18px] font-semibold leading-7 tracking-normal">{{ title }}</h2>
22
+ <p *ngIf="description" class="text-[14px] font-normal leading-5 text-[#737373]">{{ description }}</p>
23
+ </div>
24
+ <div class="mt-4 flex items-center justify-end gap-2">
25
+ <button
26
+ type="button"
27
+ class="inline-flex h-9 items-center justify-center rounded-[10px] border border-[#e5e5e5] bg-white px-4 py-2 text-[14px] font-medium leading-5 text-[#0a0a0a] shadow-[0px_1px_2px_0px_rgba(0,0,0,0.1)]"
28
+ (click)="onCancel()"
29
+ >
30
+ {{ cancelText }}
31
+ </button>
32
+ <button
33
+ type="button"
34
+ class="inline-flex h-9 items-center justify-center rounded-[10px] bg-[#171717] px-4 py-2 text-[14px] font-medium leading-5 text-[#fafafa] shadow-[0px_1px_2px_0px_rgba(0,0,0,0.1)]"
35
+ (click)="onConfirm()"
36
+ >
37
+ {{ confirmText }}
38
+ </button>
39
+ </div>
40
+ </section>
41
+ </div>
@@ -0,0 +1,45 @@
1
+ import { ChangeDetectionStrategy, Component, EventEmitter, HostListener, Input, Output } from '@angular/core';
2
+
3
+ @Component({
4
+ selector: 'pdm-alert-dialog',
5
+ templateUrl: './alert-dialog.component.html',
6
+ changeDetection: ChangeDetectionStrategy.OnPush
7
+ })
8
+ export class PdmAlertDialogComponent {
9
+ @Input() open = false;
10
+ @Input() showTrigger = false;
11
+ @Input() triggerText = 'Show dialog';
12
+ @Input() title = 'Are you absolutely sure?';
13
+ @Input() description = '';
14
+ @Input() confirmText = 'Continue';
15
+ @Input() cancelText = 'Cancel';
16
+ @Input() className = '';
17
+
18
+ @Output() openChange = new EventEmitter<boolean>();
19
+ @Output() confirm = new EventEmitter<void>();
20
+ @Output() cancel = new EventEmitter<void>();
21
+
22
+ onTriggerClick(): void {
23
+ this.open = true;
24
+ this.openChange.emit(true);
25
+ }
26
+
27
+ onCancel(): void {
28
+ this.cancel.emit();
29
+ this.open = false;
30
+ this.openChange.emit(false);
31
+ }
32
+
33
+ onConfirm(): void {
34
+ this.confirm.emit();
35
+ this.open = false;
36
+ this.openChange.emit(false);
37
+ }
38
+
39
+ @HostListener('document:keydown.escape')
40
+ onEsc(): void {
41
+ if (this.open) {
42
+ this.onCancel();
43
+ }
44
+ }
45
+ }
@@ -0,0 +1,11 @@
1
+ <div class="relative w-full" [ngClass]="className" [style.paddingTop]="paddingTop">
2
+ <div class="absolute inset-0 overflow-hidden rounded-[10px]">
3
+ <img
4
+ *ngIf="imageSrc"
5
+ [src]="imageSrc"
6
+ [alt]="imageAlt"
7
+ class="pointer-events-none h-full w-full rounded-[10px] object-cover"
8
+ />
9
+ <ng-content></ng-content>
10
+ </div>
11
+ </div>
@@ -0,0 +1,18 @@
1
+ import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
2
+
3
+ @Component({
4
+ selector: 'pdm-aspect-ratio',
5
+ templateUrl: './aspect-ratio.component.html',
6
+ changeDetection: ChangeDetectionStrategy.OnPush
7
+ })
8
+ export class PdmAspectRatioComponent {
9
+ @Input() ratio = 16 / 9;
10
+ @Input() imageSrc = '';
11
+ @Input() imageAlt = '';
12
+ @Input() className = '';
13
+
14
+ get paddingTop(): string {
15
+ if (!this.ratio || this.ratio <= 0) return '56.25%';
16
+ return (100 / this.ratio).toFixed(4) + '%';
17
+ }
18
+ }
@@ -0,0 +1,21 @@
1
+ <div *ngIf="!isGroup" [ngClass]="['relative flex shrink-0 overflow-hidden', radiusClass, sizeClasses[size], className]">
2
+ <img *ngIf="src" [src]="src" [alt]="alt" [ngClass]="['aspect-square h-full w-full object-cover', radiusClass]" />
3
+ <div
4
+ *ngIf="!src"
5
+ [ngClass]="['flex h-full w-full items-center justify-center bg-[hsl(var(--muted))] text-xs text-[hsl(var(--muted-foreground))]', radiusClass]"
6
+ >
7
+ {{ fallback }}
8
+ </div>
9
+ </div>
10
+
11
+ <div *ngIf="isGroup" [ngClass]="['inline-flex items-center pr-2', className]">
12
+ <div
13
+ *ngFor="let groupSrc of groupSources; let i = index"
14
+ [ngClass]="[
15
+ 'relative h-8 w-8 shrink-0 overflow-hidden rounded-full',
16
+ i > 0 ? '-mr-2 border border-[#e5e5e5]' : '-mr-2'
17
+ ]"
18
+ >
19
+ <img [src]="groupSrc" [alt]="alt + ' ' + (i + 1)" class="h-full w-full rounded-full object-cover" />
20
+ </div>
21
+ </div>
@@ -0,0 +1,32 @@
1
+ import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
2
+
3
+ export type PdmAvatarShape = 'circle' | 'square';
4
+
5
+ @Component({
6
+ selector: 'pdm-avatar',
7
+ templateUrl: './avatar.component.html',
8
+ changeDetection: ChangeDetectionStrategy.OnPush
9
+ })
10
+ export class PdmAvatarComponent {
11
+ @Input() src = '';
12
+ @Input() alt = 'Avatar';
13
+ @Input() fallback = 'U';
14
+ @Input() shape: PdmAvatarShape = 'circle';
15
+ @Input() size: 'sm' | 'md' | 'lg' = 'md';
16
+ @Input() groupSources: string[] = [];
17
+ @Input() className = '';
18
+
19
+ readonly sizeClasses = {
20
+ sm: 'h-8 w-8',
21
+ md: 'h-10 w-10',
22
+ lg: 'h-12 w-12'
23
+ };
24
+
25
+ get isGroup(): boolean {
26
+ return this.groupSources.length > 0;
27
+ }
28
+
29
+ get radiusClass(): string {
30
+ return this.shape === 'square' ? 'rounded-[8px]' : 'rounded-full';
31
+ }
32
+ }
@@ -0,0 +1,28 @@
1
+ <span
2
+ [ngClass]="[
3
+ 'inline-flex items-center justify-center text-center align-middle',
4
+ variant === 'default' ? 'h-[22px] rounded-[10px] bg-[#171717] px-[10px] py-[2px] text-[12px] font-medium leading-4 text-[#fafafa]' : '',
5
+ variant === 'secondary' ? 'h-[22px] rounded-[10px] bg-[#f5f5f5] px-[10px] py-[2px] text-[12px] font-medium leading-4 text-[#0a0a0a]' : '',
6
+ variant === 'destructive' ? 'h-[22px] rounded-[10px] bg-[#dc2626] px-[10px] py-[2px] text-[12px] font-medium leading-4 text-[rgba(255,255,255,0.95)]' : '',
7
+ variant === 'outline' ? 'h-[22px] rounded-[10px] border border-[#e5e5e5] px-[10px] py-[2px] text-[12px] font-medium leading-4 text-[#0a0a0a]' : '',
8
+ variant === 'icon' ? 'h-[22px] gap-1 rounded-[10px] bg-[#171717] px-[10px] py-[2px] text-[12px] font-medium leading-4 text-[#fafafa]' : '',
9
+ variant === 'number' ? 'h-5 min-w-[20px] rounded-full bg-[#171717] px-[6px] py-[2px] text-[12px] font-medium leading-4 text-[#fafafa]' : '',
10
+ variant === 'destructive-number' ? 'h-5 min-w-[20px] rounded-full bg-[#dc2626] px-[6px] py-[2px] text-[12px] font-medium leading-4 text-[rgba(255,255,255,0.95)]' : '',
11
+ variant === 'secondary-number' ? 'h-5 min-w-[20px] rounded-full border border-[#e5e5e5] px-1 py-[2px] text-[12px] font-medium leading-4 text-[#0a0a0a]' : '',
12
+ className
13
+ ]"
14
+ >
15
+ <svg
16
+ *ngIf="variant === 'icon'"
17
+ viewBox="0 0 24 24"
18
+ class="h-4 w-4"
19
+ fill="none"
20
+ xmlns="http://www.w3.org/2000/svg"
21
+ aria-hidden="true"
22
+ >
23
+ <circle cx="12" cy="12" r="9" stroke="currentColor" stroke-width="1.5"></circle>
24
+ <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>
25
+ </svg>
26
+ <span [ngClass]="[variant === 'secondary-number' ? 'font-mono' : '']">{{ text }}</span>
27
+ </span>
28
+
@@ -0,0 +1,23 @@
1
+ import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
2
+
3
+ export type PdmBadgeVariant =
4
+ | 'default'
5
+ | 'secondary'
6
+ | 'destructive'
7
+ | 'outline'
8
+ | 'icon'
9
+ | 'number'
10
+ | 'destructive-number'
11
+ | 'secondary-number';
12
+
13
+ @Component({
14
+ selector: 'pdm-badge',
15
+ templateUrl: './badge.component.html',
16
+ changeDetection: ChangeDetectionStrategy.OnPush
17
+ })
18
+ export class PdmBadgeComponent {
19
+ @Input() variant: PdmBadgeVariant = 'default';
20
+ @Input() text = 'Badge';
21
+ @Input() className = '';
22
+ }
23
+
@@ -0,0 +1,39 @@
1
+ <nav
2
+ aria-label="breadcrumb"
3
+ [ngClass]="['inline-flex items-center gap-[6px] text-[14px] leading-5', className]"
4
+ >
5
+ <ng-container *ngFor="let item of renderedItems; let i = index; let last = last">
6
+ <span [ngClass]="[last ? 'text-[#0a0a0a]' : 'text-[#737373]']">{{ item }}</span>
7
+
8
+ <ng-container *ngIf="!last">
9
+ <span class="inline-flex h-6 w-6 items-center justify-center text-[#737373]" aria-hidden="true">
10
+ <svg
11
+ *ngIf="mode === 'custom-separator' && item !== '...'"
12
+ viewBox="0 0 24 24"
13
+ class="h-4 w-4"
14
+ fill="none"
15
+ xmlns="http://www.w3.org/2000/svg"
16
+ >
17
+ <path d="M8 20L16 4" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" />
18
+ </svg>
19
+ <svg
20
+ *ngIf="(mode !== 'custom-separator' && item !== '...') || item === '...'"
21
+ viewBox="0 0 24 24"
22
+ class="h-4 w-4"
23
+ fill="none"
24
+ xmlns="http://www.w3.org/2000/svg"
25
+ >
26
+ <path d="M9 6L15 12L9 18" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" />
27
+ </svg>
28
+ </span>
29
+ </ng-container>
30
+
31
+ <ng-container *ngIf="mode === 'dropdown' && i === 1 && item !== '...' && !last">
32
+ <span class="-ml-2 inline-flex h-6 w-6 items-center justify-center text-[#737373]" aria-hidden="true">
33
+ <svg viewBox="0 0 24 24" class="h-4 w-4" fill="none" xmlns="http://www.w3.org/2000/svg">
34
+ <path d="M7 10L12 15L17 10" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" />
35
+ </svg>
36
+ </span>
37
+ </ng-container>
38
+ </ng-container>
39
+ </nav>
@@ -0,0 +1,26 @@
1
+ import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
2
+
3
+ export type PdmBreadcrumbMode =
4
+ | 'custom-separator'
5
+ | 'dropdown'
6
+ | 'collapsed'
7
+ | 'link-component'
8
+ | 'responsive';
9
+
10
+ @Component({
11
+ selector: 'pdm-breadcrumb',
12
+ templateUrl: './breadcrumb.component.html',
13
+ changeDetection: ChangeDetectionStrategy.OnPush
14
+ })
15
+ export class PdmBreadcrumbComponent {
16
+ @Input() mode: PdmBreadcrumbMode = 'link-component';
17
+ @Input() items: string[] = ['Home', 'Components', 'Breadcrumb'];
18
+ @Input() className = '';
19
+
20
+ get renderedItems(): string[] {
21
+ if ((this.mode === 'collapsed' || this.mode === 'responsive') && this.items.length > 3) {
22
+ return [this.items[0], '...', this.items[this.items.length - 2], this.items[this.items.length - 1]];
23
+ }
24
+ return this.items;
25
+ }
26
+ }
@@ -0,0 +1,15 @@
1
+ <button
2
+ [type]="type"
3
+ [disabled]="isDisabled"
4
+ [attr.aria-busy]="loading"
5
+ [ngClass]="rootClasses"
6
+ (click)="onClick($event)"
7
+ >
8
+ <span
9
+ *ngIf="loading"
10
+ class="inline-block h-4 w-4 animate-spin rounded-full border-2 border-current border-r-transparent"
11
+ aria-hidden="true"
12
+ ></span>
13
+ <ng-content select="[pdmButtonIcon]" *ngIf="variant === 'with-icon' || variant === 'icon' || variant === 'icon-circle' || variant === 'rounded'"></ng-content>
14
+ <ng-content></ng-content>
15
+ </button>