pdm-ui-kit 0.1.2 → 0.1.4

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/dist/corelusa-pdm-ui-kit/README.md +79 -0
  2. package/dist/corelusa-pdm-ui-kit/esm2020/corelusa-pdm-ui-kit.mjs +5 -0
  3. package/{fesm2015/pdm-ui-kit.mjs → dist/corelusa-pdm-ui-kit/fesm2015/corelusa-pdm-ui-kit.mjs} +1 -1
  4. package/dist/corelusa-pdm-ui-kit/fesm2015/corelusa-pdm-ui-kit.mjs.map +1 -0
  5. package/{fesm2020/pdm-ui-kit.mjs → dist/corelusa-pdm-ui-kit/fesm2020/corelusa-pdm-ui-kit.mjs} +1 -1
  6. package/dist/corelusa-pdm-ui-kit/fesm2020/corelusa-pdm-ui-kit.mjs.map +1 -0
  7. package/dist/corelusa-pdm-ui-kit/index.d.ts +5 -0
  8. package/dist/corelusa-pdm-ui-kit/package.json +47 -0
  9. package/dist/pdm-ui-kit/README.md +128 -0
  10. package/dist/pdm-ui-kit/esm2020/lib/components/accordion/accordion.component.mjs +42 -0
  11. package/dist/pdm-ui-kit/esm2020/lib/components/alert/alert.component.mjs +35 -0
  12. package/dist/pdm-ui-kit/esm2020/lib/components/alert-dialog/alert-dialog.component.mjs +69 -0
  13. package/dist/pdm-ui-kit/esm2020/lib/components/aspect-ratio/aspect-ratio.component.mjs +31 -0
  14. package/dist/pdm-ui-kit/esm2020/lib/components/avatar/avatar.component.mjs +46 -0
  15. package/dist/pdm-ui-kit/esm2020/lib/components/badge/badge.component.mjs +23 -0
  16. package/dist/pdm-ui-kit/esm2020/lib/components/breadcrumb/breadcrumb.component.mjs +29 -0
  17. package/dist/pdm-ui-kit/esm2020/lib/components/button/button.component.mjs +82 -0
  18. package/dist/pdm-ui-kit/esm2020/lib/components/button-group/button-group.component.mjs +23 -0
  19. package/dist/pdm-ui-kit/esm2020/lib/components/calendar/calendar.component.mjs +71 -0
  20. package/dist/pdm-ui-kit/esm2020/lib/components/card/card.component.mjs +65 -0
  21. package/dist/pdm-ui-kit/esm2020/lib/components/carousel/carousel.component.mjs +97 -0
  22. package/dist/pdm-ui-kit/esm2020/lib/components/chart/chart.component.mjs +174 -0
  23. package/dist/pdm-ui-kit/esm2020/lib/components/checkbox/checkbox.component.mjs +47 -0
  24. package/dist/pdm-ui-kit/esm2020/lib/components/collapsible/collapsible.component.mjs +43 -0
  25. package/dist/pdm-ui-kit/esm2020/lib/components/combobox/combobox.component.mjs +51 -0
  26. package/dist/pdm-ui-kit/esm2020/lib/components/command/command.component.mjs +75 -0
  27. package/dist/pdm-ui-kit/esm2020/lib/components/context-menu/context-menu.component.mjs +78 -0
  28. package/dist/pdm-ui-kit/esm2020/lib/components/data-table/data-table.component.mjs +89 -0
  29. package/dist/pdm-ui-kit/esm2020/lib/components/date-picker/date-picker.component.mjs +63 -0
  30. package/dist/pdm-ui-kit/esm2020/lib/components/dialog/dialog.component.mjs +90 -0
  31. package/dist/pdm-ui-kit/esm2020/lib/components/drawer/drawer.component.mjs +72 -0
  32. package/dist/pdm-ui-kit/esm2020/lib/components/dropdown-menu/dropdown-menu.component.mjs +120 -0
  33. package/dist/pdm-ui-kit/esm2020/lib/components/empty/empty.component.mjs +58 -0
  34. package/dist/pdm-ui-kit/esm2020/lib/components/field/field.component.mjs +64 -0
  35. package/dist/pdm-ui-kit/esm2020/lib/components/hover-card/hover-card.component.mjs +44 -0
  36. package/dist/pdm-ui-kit/esm2020/lib/components/icon/icon.component.mjs +94 -0
  37. package/dist/pdm-ui-kit/esm2020/lib/components/input/input.component.mjs +65 -0
  38. package/dist/pdm-ui-kit/esm2020/lib/components/input-group/input-group.component.mjs +63 -0
  39. package/dist/pdm-ui-kit/esm2020/lib/components/input-otp/input-otp.component.mjs +140 -0
  40. package/dist/pdm-ui-kit/esm2020/lib/components/input-password/input-password.component.mjs +72 -0
  41. package/dist/pdm-ui-kit/esm2020/lib/components/item/item.component.mjs +23 -0
  42. package/dist/pdm-ui-kit/esm2020/lib/components/kbd/kbd.component.mjs +17 -0
  43. package/dist/pdm-ui-kit/esm2020/lib/components/label/label.component.mjs +23 -0
  44. package/dist/pdm-ui-kit/esm2020/lib/components/menubar/menubar.component.mjs +31 -0
  45. package/dist/pdm-ui-kit/esm2020/lib/components/native-select/native-select.component.mjs +42 -0
  46. package/dist/pdm-ui-kit/esm2020/lib/components/navigation-menu/navigation-menu.component.mjs +20 -0
  47. package/dist/pdm-ui-kit/esm2020/lib/components/pagination/pagination.component.mjs +47 -0
  48. package/dist/pdm-ui-kit/esm2020/lib/components/popover/popover.component.mjs +58 -0
  49. package/dist/pdm-ui-kit/esm2020/lib/components/progress/progress.component.mjs +33 -0
  50. package/dist/pdm-ui-kit/esm2020/lib/components/radio-group/radio-group.component.mjs +38 -0
  51. package/dist/pdm-ui-kit/esm2020/lib/components/scroll-area/scroll-area.component.mjs +20 -0
  52. package/dist/pdm-ui-kit/esm2020/lib/components/select/select.component.mjs +38 -0
  53. package/dist/pdm-ui-kit/esm2020/lib/components/separator/separator.component.mjs +26 -0
  54. package/dist/pdm-ui-kit/esm2020/lib/components/sheet/sheet.component.mjs +39 -0
  55. package/dist/pdm-ui-kit/esm2020/lib/components/sidebar/sidebar.component.mjs +20 -0
  56. package/dist/pdm-ui-kit/esm2020/lib/components/skeleton/skeleton.component.mjs +17 -0
  57. package/dist/pdm-ui-kit/esm2020/lib/components/slider/slider.component.mjs +46 -0
  58. package/dist/pdm-ui-kit/esm2020/lib/components/sonner/sonner.component.mjs +39 -0
  59. package/dist/pdm-ui-kit/esm2020/lib/components/spinner/spinner.component.mjs +20 -0
  60. package/dist/pdm-ui-kit/esm2020/lib/components/switch/switch.component.mjs +35 -0
  61. package/dist/pdm-ui-kit/esm2020/lib/components/table/table.component.mjs +17 -0
  62. package/dist/pdm-ui-kit/esm2020/lib/components/tabs/tabs.component.mjs +31 -0
  63. package/dist/pdm-ui-kit/esm2020/lib/components/textarea/textarea.component.mjs +59 -0
  64. package/dist/pdm-ui-kit/esm2020/lib/components/toggle/toggle.component.mjs +41 -0
  65. package/dist/pdm-ui-kit/esm2020/lib/components/toggle-group/toggle-group.component.mjs +31 -0
  66. package/dist/pdm-ui-kit/esm2020/lib/components/tooltip/tooltip.component.mjs +33 -0
  67. package/dist/pdm-ui-kit/esm2020/lib/pdm-ui-kit.module.mjs +245 -0
  68. package/dist/pdm-ui-kit/esm2020/public-api.mjs +59 -0
  69. package/dist/pdm-ui-kit/fesm2015/pdm-ui-kit.mjs +2980 -0
  70. package/dist/pdm-ui-kit/fesm2015/pdm-ui-kit.mjs.map +1 -0
  71. package/dist/pdm-ui-kit/fesm2020/pdm-ui-kit.mjs +2975 -0
  72. package/dist/pdm-ui-kit/fesm2020/pdm-ui-kit.mjs.map +1 -0
  73. package/dist/pdm-ui-kit/lib/components/accordion/accordion.component.d.ts +19 -0
  74. package/dist/pdm-ui-kit/lib/components/alert/alert.component.d.ts +13 -0
  75. package/dist/pdm-ui-kit/lib/components/alert-dialog/alert-dialog.component.d.ts +21 -0
  76. package/dist/pdm-ui-kit/lib/components/aspect-ratio/aspect-ratio.component.d.ts +10 -0
  77. package/dist/pdm-ui-kit/lib/components/avatar/avatar.component.d.ts +20 -0
  78. package/dist/pdm-ui-kit/lib/components/badge/badge.component.d.ts +9 -0
  79. package/dist/pdm-ui-kit/lib/components/breadcrumb/breadcrumb.component.d.ts +10 -0
  80. package/dist/pdm-ui-kit/lib/components/button/button.component.d.ts +24 -0
  81. package/dist/pdm-ui-kit/lib/components/button-group/button-group.component.d.ts +9 -0
  82. package/dist/pdm-ui-kit/lib/components/calendar/calendar.component.d.ts +28 -0
  83. package/dist/pdm-ui-kit/lib/components/card/card.component.d.ts +24 -0
  84. package/dist/pdm-ui-kit/lib/components/carousel/carousel.component.d.ts +25 -0
  85. package/dist/pdm-ui-kit/lib/components/chart/chart.component.d.ts +41 -0
  86. package/dist/pdm-ui-kit/lib/components/checkbox/checkbox.component.d.ts +17 -0
  87. package/dist/pdm-ui-kit/lib/components/collapsible/collapsible.component.d.ts +14 -0
  88. package/dist/pdm-ui-kit/lib/components/combobox/combobox.component.d.ts +18 -0
  89. package/dist/pdm-ui-kit/lib/components/command/command.component.d.ts +33 -0
  90. package/dist/pdm-ui-kit/lib/components/context-menu/context-menu.component.d.ts +26 -0
  91. package/dist/pdm-ui-kit/lib/components/data-table/data-table.component.d.ts +36 -0
  92. package/dist/pdm-ui-kit/lib/components/date-picker/date-picker.component.d.ts +23 -0
  93. package/dist/pdm-ui-kit/lib/components/dialog/dialog.component.d.ts +30 -0
  94. package/dist/pdm-ui-kit/lib/components/drawer/drawer.component.d.ts +27 -0
  95. package/dist/pdm-ui-kit/lib/components/dropdown-menu/dropdown-menu.component.d.ts +34 -0
  96. package/dist/pdm-ui-kit/lib/components/empty/empty.component.d.ts +19 -0
  97. package/dist/pdm-ui-kit/lib/components/field/field.component.d.ts +23 -0
  98. package/dist/pdm-ui-kit/lib/components/hover-card/hover-card.component.d.ts +14 -0
  99. package/dist/pdm-ui-kit/lib/components/icon/icon.component.d.ts +18 -0
  100. package/dist/pdm-ui-kit/lib/components/input/input.component.d.ts +23 -0
  101. package/dist/pdm-ui-kit/lib/components/input-group/input-group.component.d.ts +22 -0
  102. package/dist/pdm-ui-kit/lib/components/input-otp/input-otp.component.d.ts +26 -0
  103. package/dist/pdm-ui-kit/lib/components/input-password/input-password.component.d.ts +25 -0
  104. package/dist/pdm-ui-kit/lib/components/item/item.component.d.ts +8 -0
  105. package/dist/pdm-ui-kit/lib/components/kbd/kbd.component.d.ts +6 -0
  106. package/dist/pdm-ui-kit/lib/components/label/label.component.d.ts +8 -0
  107. package/dist/pdm-ui-kit/lib/components/menubar/menubar.component.d.ts +17 -0
  108. package/dist/pdm-ui-kit/lib/components/native-select/native-select.component.d.ts +20 -0
  109. package/dist/pdm-ui-kit/lib/components/navigation-menu/navigation-menu.component.d.ts +12 -0
  110. package/dist/pdm-ui-kit/lib/components/pagination/pagination.component.d.ts +13 -0
  111. package/dist/pdm-ui-kit/lib/components/popover/popover.component.d.ts +17 -0
  112. package/dist/pdm-ui-kit/lib/components/progress/progress.component.d.ts +10 -0
  113. package/dist/pdm-ui-kit/lib/components/radio-group/radio-group.component.d.ts +19 -0
  114. package/dist/pdm-ui-kit/lib/components/scroll-area/scroll-area.component.d.ts +7 -0
  115. package/dist/pdm-ui-kit/lib/components/select/select.component.d.ts +19 -0
  116. package/dist/pdm-ui-kit/lib/components/separator/separator.component.d.ts +9 -0
  117. package/dist/pdm-ui-kit/lib/components/sheet/sheet.component.d.ts +13 -0
  118. package/dist/pdm-ui-kit/lib/components/sidebar/sidebar.component.d.ts +7 -0
  119. package/dist/pdm-ui-kit/lib/components/skeleton/skeleton.component.d.ts +6 -0
  120. package/dist/pdm-ui-kit/lib/components/slider/slider.component.d.ts +15 -0
  121. package/dist/pdm-ui-kit/lib/components/sonner/sonner.component.d.ts +13 -0
  122. package/dist/pdm-ui-kit/lib/components/spinner/spinner.component.d.ts +7 -0
  123. package/dist/pdm-ui-kit/lib/components/switch/switch.component.d.ts +13 -0
  124. package/dist/pdm-ui-kit/lib/components/table/table.component.d.ts +6 -0
  125. package/dist/pdm-ui-kit/lib/components/tabs/tabs.component.d.ts +16 -0
  126. package/dist/pdm-ui-kit/lib/components/textarea/textarea.component.d.ts +21 -0
  127. package/dist/pdm-ui-kit/lib/components/toggle/toggle.component.d.ts +14 -0
  128. package/dist/pdm-ui-kit/lib/components/toggle-group/toggle-group.component.d.ts +16 -0
  129. package/dist/pdm-ui-kit/lib/components/tooltip/tooltip.component.d.ts +10 -0
  130. package/dist/pdm-ui-kit/lib/pdm-ui-kit.module.d.ts +64 -0
  131. package/dist/pdm-ui-kit/package.json +44 -0
  132. package/dist/pdm-ui-kit/public-api.d.ts +58 -0
  133. package/ng-package.json +8 -0
  134. package/package.json +13 -20
  135. package/pdm-ui-kit-0.1.1.tgz +0 -0
  136. package/pdm-ui-kit-0.1.2.tgz +0 -0
  137. package/pdm-ui-kit-0.1.3.tgz +0 -0
  138. package/pdm-ui-kit-0.1.4.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,143 @@
1
+ <section [ngClass]="['w-full rounded-[14px] border border-[hsl(var(--border))] bg-[hsl(var(--card))] text-[hsl(var(--card-foreground))]', className]">
2
+ <div class="flex w-full items-stretch border-b border-[hsl(var(--border))]">
3
+ <div class="flex min-w-0 flex-1 flex-col gap-1 px-6 pb-3 pt-4">
4
+ <h3 class="m-0 text-sm font-semibold leading-5">{{ title }}</h3>
5
+ <p class="m-0 text-sm leading-5 text-[hsl(var(--muted-foreground))]">{{ description }}</p>
6
+ </div>
7
+
8
+ <div class="flex h-[92px]">
9
+ <div class="flex h-full w-[171px] flex-col justify-center border-l border-[hsl(var(--border))] bg-[hsl(var(--muted))] px-6 py-4">
10
+ <span class="text-xs leading-4 text-[hsl(var(--muted-foreground))]">{{ desktopLabel }}</span>
11
+ <span class="mt-1 text-[28px] font-semibold leading-8">{{ desktopValue }}</span>
12
+ </div>
13
+ <div class="flex h-full w-[171px] flex-col justify-center px-6 py-4">
14
+ <span class="text-xs leading-4 text-[hsl(var(--muted-foreground))]">{{ mobileLabel }}</span>
15
+ <span class="mt-1 text-[28px] font-semibold leading-8">{{ mobileValue }}</span>
16
+ </div>
17
+ </div>
18
+ </div>
19
+
20
+ <div class="w-full p-6">
21
+ <ng-container [ngSwitch]="type">
22
+ <div *ngSwitchCase="'bar'" class="flex h-[236px] w-full flex-col justify-end gap-2">
23
+ <div class="relative h-[183px] w-full overflow-hidden">
24
+ <div class="absolute bottom-0 left-0 right-0 border-t border-[hsl(var(--border))] opacity-50"></div>
25
+ <div class="absolute left-0 right-0 top-[54px] border-t border-[hsl(var(--border))] opacity-50"></div>
26
+ <div class="absolute left-0 right-0 top-[108px] border-t border-[hsl(var(--border))] opacity-50"></div>
27
+ <div class="absolute left-0 right-0 top-[162px] border-t border-[hsl(var(--border))] opacity-50"></div>
28
+ <div class="absolute inset-x-0 bottom-0 flex h-[183px] items-end gap-[2px] px-0.5">
29
+ <div *ngFor="let bar of normalizedBars" class="w-[5px] rounded-[2px] bg-[hsl(var(--primary))]" [style.height.px]="bar"></div>
30
+ </div>
31
+ </div>
32
+ <div class="flex h-4 w-full items-center justify-between gap-2">
33
+ <span *ngFor="let label of labels" class="truncate text-xs leading-4 text-[hsl(var(--muted-foreground))]">{{ label }}</span>
34
+ </div>
35
+ </div>
36
+
37
+ <div *ngSwitchCase="'line'" class="flex h-[236px] w-full flex-col gap-2">
38
+ <svg viewBox="0 0 320 180" class="h-[183px] w-full">
39
+ <line x1="0" y1="180" x2="320" y2="180" stroke="hsl(var(--border))" stroke-width="1"></line>
40
+ <line x1="0" y1="135" x2="320" y2="135" stroke="hsl(var(--border))" stroke-width="1" opacity="0.5"></line>
41
+ <line x1="0" y1="90" x2="320" y2="90" stroke="hsl(var(--border))" stroke-width="1" opacity="0.5"></line>
42
+ <line x1="0" y1="45" x2="320" y2="45" stroke="hsl(var(--border))" stroke-width="1" opacity="0.5"></line>
43
+ <path [attr.d]="linePath" fill="none" stroke="hsl(var(--primary))" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"></path>
44
+ </svg>
45
+ <div class="flex h-4 w-full items-center justify-between gap-2">
46
+ <span *ngFor="let label of labels" class="truncate text-xs leading-4 text-[hsl(var(--muted-foreground))]">{{ label }}</span>
47
+ </div>
48
+ </div>
49
+
50
+ <div *ngSwitchCase="'area'" class="flex h-[236px] w-full flex-col gap-2">
51
+ <svg viewBox="0 0 320 180" class="h-[183px] w-full">
52
+ <defs>
53
+ <linearGradient id="pdm-chart-area-gradient" x1="0" y1="0" x2="0" y2="1">
54
+ <stop offset="0%" stop-color="hsl(var(--primary))" stop-opacity="0.35"></stop>
55
+ <stop offset="100%" stop-color="hsl(var(--primary))" stop-opacity="0.02"></stop>
56
+ </linearGradient>
57
+ </defs>
58
+ <line x1="0" y1="180" x2="320" y2="180" stroke="hsl(var(--border))" stroke-width="1"></line>
59
+ <line x1="0" y1="135" x2="320" y2="135" stroke="hsl(var(--border))" stroke-width="1" opacity="0.5"></line>
60
+ <line x1="0" y1="90" x2="320" y2="90" stroke="hsl(var(--border))" stroke-width="1" opacity="0.5"></line>
61
+ <line x1="0" y1="45" x2="320" y2="45" stroke="hsl(var(--border))" stroke-width="1" opacity="0.5"></line>
62
+ <path [attr.d]="areaPath" fill="url(#pdm-chart-area-gradient)"></path>
63
+ <path [attr.d]="linePath" fill="none" stroke="hsl(var(--primary))" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"></path>
64
+ </svg>
65
+ <div class="flex h-4 w-full items-center justify-between gap-2">
66
+ <span *ngFor="let label of labels" class="truncate text-xs leading-4 text-[hsl(var(--muted-foreground))]">{{ label }}</span>
67
+ </div>
68
+ </div>
69
+
70
+ <div *ngSwitchCase="'pie'" class="flex items-center gap-6">
71
+ <div class="relative h-40 w-40 rounded-full" [style.background]="pieGradient">
72
+ <div class="absolute inset-7 rounded-full bg-[hsl(var(--card))]"></div>
73
+ </div>
74
+ <div class="grid flex-1 gap-2">
75
+ <div *ngFor="let segment of pieSegments" class="flex items-center justify-between rounded-md border border-[hsl(var(--border))] px-3 py-2">
76
+ <div class="flex items-center gap-2">
77
+ <span class="size-2.5 rounded-full" [style.background]="segment.color"></span>
78
+ <span class="text-sm leading-5">{{ segment.label }}</span>
79
+ </div>
80
+ <span class="text-sm font-medium leading-5">{{ segment.size | number: '1.0-0' }}%</span>
81
+ </div>
82
+ </div>
83
+ </div>
84
+
85
+ <div *ngSwitchCase="'radar'" class="flex items-center gap-6">
86
+ <svg viewBox="0 0 160 160" class="h-44 w-44">
87
+ <polygon points="80,8 144,44 144,116 80,152 16,116 16,44" fill="none" stroke="hsl(var(--border))"></polygon>
88
+ <polygon points="80,28 126,54 126,106 80,132 34,106 34,54" fill="none" stroke="hsl(var(--border))" opacity="0.75"></polygon>
89
+ <polygon points="80,48 109,64 109,96 80,112 51,96 51,64" fill="none" stroke="hsl(var(--border))" opacity="0.55"></polygon>
90
+ <polygon [attr.points]="radarPoints" fill="hsl(var(--primary))" fill-opacity="0.22" stroke="hsl(var(--primary))" stroke-width="2"></polygon>
91
+ </svg>
92
+ <div class="grid flex-1 gap-2">
93
+ <div *ngFor="let item of radar; index as i" class="flex items-center justify-between rounded-md border border-[hsl(var(--border))] px-3 py-2 text-sm">
94
+ <span class="text-[hsl(var(--muted-foreground))]">Metric {{ i + 1 }}</span>
95
+ <span class="font-medium">{{ item }}</span>
96
+ </div>
97
+ </div>
98
+ </div>
99
+
100
+ <div *ngSwitchCase="'radial'" class="flex items-center justify-between gap-6">
101
+ <div class="relative flex size-44 items-center justify-center">
102
+ <svg viewBox="0 0 96 96" class="size-40 -rotate-90">
103
+ <circle cx="48" cy="48" r="42" fill="none" stroke="hsl(var(--muted))" stroke-width="10"></circle>
104
+ <circle
105
+ cx="48"
106
+ cy="48"
107
+ r="42"
108
+ fill="none"
109
+ stroke="hsl(var(--primary))"
110
+ stroke-width="10"
111
+ stroke-linecap="round"
112
+ stroke-dasharray="263.89"
113
+ [attr.stroke-dashoffset]="radialStrokeOffset"
114
+ ></circle>
115
+ </svg>
116
+ <div class="absolute text-center">
117
+ <div class="text-[30px] font-semibold leading-9">{{ radialValue }}%</div>
118
+ <div class="text-xs text-[hsl(var(--muted-foreground))]">{{ radialLabel }}</div>
119
+ </div>
120
+ </div>
121
+ <div class="flex-1">
122
+ <p class="m-0 text-sm font-medium leading-5">{{ radialLabel }}</p>
123
+ <p class="m-0 mt-1 text-sm leading-5 text-[hsl(var(--muted-foreground))]">{{ radialDescription }}</p>
124
+ </div>
125
+ </div>
126
+
127
+ <div *ngSwitchCase="'tooltips'" class="grid gap-3">
128
+ <div class="inline-flex w-fit min-w-[220px] flex-col gap-2 rounded-lg border border-[hsl(var(--border))] bg-[hsl(var(--card))] p-3 shadow-sm">
129
+ <p class="m-0 text-xs font-medium leading-4 text-[hsl(var(--muted-foreground))]">{{ tooltipTitle }}</p>
130
+ <div class="flex items-center justify-between text-sm">
131
+ <span>{{ tooltipPrimaryLabel }}</span>
132
+ <span class="font-semibold">{{ tooltipPrimaryValue }}</span>
133
+ </div>
134
+ <div class="flex items-center justify-between text-sm">
135
+ <span>{{ tooltipSecondaryLabel }}</span>
136
+ <span class="font-semibold">{{ tooltipSecondaryValue }}</span>
137
+ </div>
138
+ </div>
139
+ <p class="m-0 text-xs text-[hsl(var(--muted-foreground))]">Tooltip style preparado para charts de línea, área y barras.</p>
140
+ </div>
141
+ </ng-container>
142
+ </div>
143
+ </section>
@@ -0,0 +1,147 @@
1
+ import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
2
+
3
+ export type PdmChartType = 'area' | 'bar' | 'line' | 'pie' | 'radar' | 'radial' | 'tooltips';
4
+
5
+ @Component({
6
+ selector: 'pdm-chart',
7
+ templateUrl: './chart.component.html',
8
+ changeDetection: ChangeDetectionStrategy.OnPush
9
+ })
10
+ export class PdmChartComponent {
11
+ @Input() type: PdmChartType = 'bar';
12
+ @Input() className = '';
13
+ @Input() title = 'Bar Chart - Interactive';
14
+ @Input() description = 'Showing total visitors for the last 3 months';
15
+
16
+ @Input() desktopLabel = 'Desktop';
17
+ @Input() desktopValue = '24,828';
18
+ @Input() mobileLabel = 'Mobile';
19
+ @Input() mobileValue = '25,010';
20
+
21
+ @Input() labels: string[] = ['Apr 9', 'Apr 19', 'Apr 29', 'May 9', 'May 19', 'May 29', 'Jun 9', 'Jun 19', 'Jun 30'];
22
+
23
+ @Input() bars: number[] = [
24
+ 48, 21, 53, 69, 56, 77, 12, 54, 61, 59, 66, 27, 24, 27, 84, 62, 44, 18, 45, 57,
25
+ 45, 72, 56, 15, 73, 25, 59, 86, 49, 59, 69, 93, 96, 72, 30, 58, 75, 67, 43, 43,
26
+ 84, 89, 62, 96, 59, 72, 82, 34, 34, 70, 62, 42, 40, 80, 60, 33, 67, 34, 34, 88,
27
+ 22, 84, 19, 62, 56, 43, 95, 70, 67, 89, 84, 31, 18, 92, 16, 87, 54, 44, 91, 23,
28
+ 67, 77, 49, 59, 93, 26, 29, 81, 84, 30, 22, 84
29
+ ];
30
+ @Input() line: number[] = [40, 28, 56, 49, 73, 67, 81, 58, 92];
31
+ @Input() pie: number[] = [35, 28, 20, 17];
32
+ @Input() radar: number[] = [72, 58, 88, 64, 79, 70];
33
+ @Input() radialValue = 76;
34
+ @Input() radialLabel = 'Completion';
35
+ @Input() radialDescription = 'Updated monthly';
36
+ @Input() tooltipTitle = 'June 2024';
37
+ @Input() tooltipPrimaryLabel = 'Desktop';
38
+ @Input() tooltipPrimaryValue = '12,450';
39
+ @Input() tooltipSecondaryLabel = 'Mobile';
40
+ @Input() tooltipSecondaryValue = '8,110';
41
+ @Input() pieLabels: string[] = ['Desktop', 'Mobile', 'Tablet', 'Other'];
42
+
43
+ get normalizedBars(): number[] {
44
+ if (!this.bars.length) {
45
+ return [];
46
+ }
47
+
48
+ const max = Math.max(...this.bars);
49
+ if (max === 0) {
50
+ return this.bars.map(() => 0);
51
+ }
52
+
53
+ return this.bars.map((value) => Math.max(8, Math.round((value / max) * 183)));
54
+ }
55
+
56
+ get normalizedLine(): number[] {
57
+ if (!this.line.length) {
58
+ return [];
59
+ }
60
+
61
+ const max = Math.max(...this.line);
62
+ if (max === 0) {
63
+ return this.line.map(() => 170);
64
+ }
65
+
66
+ return this.line.map((value) => 180 - Math.round((value / max) * 150));
67
+ }
68
+
69
+ get linePath(): string {
70
+ const points = this.normalizedLine;
71
+ if (!points.length) {
72
+ return '';
73
+ }
74
+
75
+ const step = points.length > 1 ? 320 / (points.length - 1) : 0;
76
+ return points
77
+ .map((y, index) => `${index === 0 ? 'M' : 'L'} ${Math.round(index * step)} ${y}`)
78
+ .join(' ');
79
+ }
80
+
81
+ get areaPath(): string {
82
+ const linePath = this.linePath;
83
+ if (!linePath) {
84
+ return '';
85
+ }
86
+
87
+ return `${linePath} L 320 180 L 0 180 Z`;
88
+ }
89
+
90
+ get pieSegments(): { color: string; size: number; offset: number; label: string }[] {
91
+ const total = this.pie.reduce((acc, value) => acc + Math.max(value, 0), 0);
92
+ if (total === 0) {
93
+ return [];
94
+ }
95
+
96
+ let offset = 0;
97
+ const colors = ['#0090ff', '#34d399', '#f59e0b', '#f43f5e'];
98
+ return this.pie.map((value, index) => {
99
+ const size = (Math.max(value, 0) / total) * 100;
100
+ const segment = {
101
+ color: colors[index % colors.length],
102
+ size,
103
+ offset,
104
+ label: this.pieLabels[index] ?? `Series ${index + 1}`
105
+ };
106
+ offset += size;
107
+ return segment;
108
+ });
109
+ }
110
+
111
+ get pieGradient(): string {
112
+ const segments = this.pieSegments;
113
+ if (!segments.length) {
114
+ return 'conic-gradient(#e5e5e5 0 100%)';
115
+ }
116
+
117
+ return `conic-gradient(${segments
118
+ .map((segment) => `${segment.color} ${segment.offset}% ${segment.offset + segment.size}%`)
119
+ .join(', ')})`;
120
+ }
121
+
122
+ get radarPoints(): string {
123
+ const values = this.radar.slice(0, 6);
124
+ if (!values.length) {
125
+ return '';
126
+ }
127
+
128
+ const max = Math.max(...values, 1);
129
+ const radius = 72;
130
+ const center = 80;
131
+ return values
132
+ .map((value, index) => {
133
+ const angle = ((Math.PI * 2) / values.length) * index - Math.PI / 2;
134
+ const valueRadius = (Math.max(value, 0) / max) * radius;
135
+ const x = center + Math.cos(angle) * valueRadius;
136
+ const y = center + Math.sin(angle) * valueRadius;
137
+ return `${x},${y}`;
138
+ })
139
+ .join(' ');
140
+ }
141
+
142
+ get radialStrokeOffset(): number {
143
+ const bounded = Math.max(0, Math.min(this.radialValue, 100));
144
+ const circumference = 2 * Math.PI * 42;
145
+ return circumference - (bounded / 100) * circumference;
146
+ }
147
+ }
@@ -0,0 +1,38 @@
1
+ <button
2
+ type="button"
3
+ role="checkbox"
4
+ [attr.id]="id || null"
5
+ [attr.aria-checked]="checked"
6
+ [attr.aria-disabled]="disabled"
7
+ [disabled]="disabled"
8
+ [ngClass]="[
9
+ 'w-full border-0 bg-transparent p-0 text-left outline-none focus:outline-none focus-visible:outline-none',
10
+ variant === 'card'
11
+ ? checked
12
+ ? 'flex items-start gap-3 rounded-[10px] border border-foreground bg-muted p-3'
13
+ : 'flex items-start gap-3 rounded-[10px] border border-border bg-background p-3'
14
+ : hasDescription
15
+ ? 'flex items-start gap-3'
16
+ : 'flex items-center gap-3',
17
+ disabled ? 'opacity-50' : '',
18
+ className
19
+ ]"
20
+ (click)="onToggle()"
21
+ >
22
+ <span
23
+ [ngClass]="[
24
+ 'mt-0.5 inline-flex h-4 w-4 shrink-0 items-center justify-center rounded-[6px] border shadow-[0_1px_2px_rgba(0,0,0,0.1)]',
25
+ checked ? 'border-foreground bg-foreground text-background' : 'border-input bg-background text-transparent'
26
+ ]"
27
+ aria-hidden="true"
28
+ >
29
+ <svg viewBox="0 0 16 16" class="h-3 w-3" fill="none" xmlns="http://www.w3.org/2000/svg">
30
+ <path d="M3 8.5L6.4 12L13 4" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"></path>
31
+ </svg>
32
+ </span>
33
+
34
+ <span [ngClass]="['min-w-0 flex-1', hasDescription ? 'flex flex-col gap-2' : 'flex items-center']">
35
+ <span class="text-[14px] font-medium leading-5 text-foreground">{{ label }}</span>
36
+ <span *ngIf="hasDescription" class="text-[14px] leading-5 text-muted-foreground">{{ description }}</span>
37
+ </span>
38
+ </button>
@@ -0,0 +1,32 @@
1
+ import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';
2
+
3
+ export type PdmCheckboxVariant = 'default' | 'subtext' | 'card';
4
+
5
+ @Component({
6
+ selector: 'pdm-checkbox',
7
+ templateUrl: './checkbox.component.html',
8
+ changeDetection: ChangeDetectionStrategy.OnPush
9
+ })
10
+ export class PdmCheckboxComponent {
11
+ @Input() id = '';
12
+ @Input() checked = false;
13
+ @Input() disabled = false;
14
+ @Input() variant: PdmCheckboxVariant = 'default';
15
+ @Input() label = 'Accept terms and conditions';
16
+ @Input() description = '';
17
+ @Input() className = '';
18
+
19
+ @Output() checkedChange = new EventEmitter<boolean>();
20
+
21
+ get hasDescription(): boolean {
22
+ return this.variant === 'subtext' || this.variant === 'card' ? !!this.description : false;
23
+ }
24
+
25
+ onToggle(): void {
26
+ if (this.disabled) {
27
+ return;
28
+ }
29
+
30
+ this.checkedChange.emit(!this.checked);
31
+ }
32
+ }
@@ -0,0 +1,26 @@
1
+ <div [ngClass]="['flex w-[350px] flex-col gap-2', className]">
2
+ <button
3
+ type="button"
4
+ [disabled]="disabled"
5
+ class="flex w-full items-center justify-between px-4 text-left"
6
+ [attr.aria-expanded]="open"
7
+ (click)="toggle()"
8
+ >
9
+ <span class="text-[14px] font-semibold leading-5 text-[#0a0a0a]">{{ title }}</span>
10
+ <span class="inline-flex h-8 w-8 items-center justify-center text-[#0a0a0a]">
11
+ <svg viewBox="0 0 24 24" class="h-4 w-4" fill="none" xmlns="http://www.w3.org/2000/svg">
12
+ <path d="M7 15L12 20L17 15" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"></path>
13
+ <path d="M17 9L12 4L7 9" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"></path>
14
+ </svg>
15
+ </span>
16
+ </button>
17
+
18
+ <div class="flex w-full flex-col gap-2">
19
+ <div
20
+ *ngFor="let item of visibleItems"
21
+ class="w-full rounded-[8px] border border-[#e5e5e5] bg-white px-4 py-2"
22
+ >
23
+ <span class="font-mono text-[14px] leading-5 text-[#0a0a0a]">{{ item }}</span>
24
+ </div>
25
+ </div>
26
+ </div>
@@ -0,0 +1,29 @@
1
+ import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';
2
+
3
+ @Component({
4
+ selector: 'pdm-collapsible',
5
+ templateUrl: './collapsible.component.html',
6
+ changeDetection: ChangeDetectionStrategy.OnPush
7
+ })
8
+ export class PdmCollapsibleComponent {
9
+ @Input() title = '@peduarte starred 3 repositories';
10
+ @Input() open = false;
11
+ @Input() disabled = false;
12
+ @Input() items: string[] = ['@radix-ui/primitives', '@radix-ui/colors', '@stitches/react'];
13
+ @Input() className = '';
14
+
15
+ @Output() openChange = new EventEmitter<boolean>();
16
+
17
+ get visibleItems(): string[] {
18
+ if (!this.items.length) {
19
+ return [];
20
+ }
21
+ return this.open ? this.items : this.items.slice(0, 1);
22
+ }
23
+
24
+ toggle(): void {
25
+ if (!this.disabled) {
26
+ this.openChange.emit(!this.open);
27
+ }
28
+ }
29
+ }
@@ -0,0 +1,42 @@
1
+ <div [ngClass]="['flex flex-col gap-1', className]" [style.width.px]="width">
2
+ <button
3
+ type="button"
4
+ class="flex h-9 w-full items-center gap-2 rounded-[8px] border border-[#e5e5e5] bg-white px-3 py-2 shadow-[0_1px_2px_rgba(0,0,0,0.1)]"
5
+ [attr.aria-expanded]="open"
6
+ (click)="toggle()"
7
+ >
8
+ <span class="min-w-0 flex-1 truncate text-left text-[14px] font-medium leading-5 text-[#0a0a0a]">{{ selectedLabel }}</span>
9
+ <svg viewBox="0 0 24 24" class="h-4 w-4 text-[#0a0a0a]" fill="none" xmlns="http://www.w3.org/2000/svg">
10
+ <path d="M7 15L12 20L17 15" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"></path>
11
+ <path d="M17 9L12 4L7 9" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"></path>
12
+ </svg>
13
+ </button>
14
+
15
+ <div
16
+ *ngIf="open"
17
+ class="w-full rounded-[8px] border border-[#e5e5e5] bg-white shadow-[0_2px_4px_-2px_rgba(0,0,0,0.1),0_4px_6px_-1px_rgba(0,0,0,0.1)]"
18
+ >
19
+ <div class="flex items-center gap-2 border-b border-[#e5e5e5] px-3">
20
+ <svg viewBox="0 0 24 24" class="h-4 w-4 text-[#737373]" fill="none" xmlns="http://www.w3.org/2000/svg">
21
+ <circle cx="11" cy="11" r="7" stroke="currentColor" stroke-width="1.5"></circle>
22
+ <path d="M20 20L16.6 16.6" stroke="currentColor" stroke-width="1.5" stroke-linecap="round"></path>
23
+ </svg>
24
+ <div class="h-9 flex-1 py-2 text-[14px] leading-5 text-[#737373]">{{ searchPlaceholder }}</div>
25
+ </div>
26
+
27
+ <div class="p-1">
28
+ <button
29
+ *ngFor="let option of options"
30
+ type="button"
31
+ class="flex w-full items-center gap-2 rounded-[4px] px-2 py-[6px] text-left"
32
+ [ngClass]="option === value ? 'bg-[#f5f5f5]' : ''"
33
+ (click)="select(option)"
34
+ >
35
+ <span [ngClass]="['min-w-0 flex-1 truncate text-[14px] leading-5', option === value ? 'text-[#171717]' : 'text-[#0a0a0a]']">{{ option }}</span>
36
+ <svg *ngIf="option === value" viewBox="0 0 24 24" class="h-4 w-4 text-[#0a0a0a]" fill="none" xmlns="http://www.w3.org/2000/svg">
37
+ <path d="M5 12.5L9.2 16.7L19 7" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"></path>
38
+ </svg>
39
+ </button>
40
+ </div>
41
+ </div>
42
+ </div>
@@ -0,0 +1,32 @@
1
+ import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';
2
+
3
+ @Component({
4
+ selector: 'pdm-combobox',
5
+ templateUrl: './combobox.component.html',
6
+ changeDetection: ChangeDetectionStrategy.OnPush
7
+ })
8
+ export class PdmComboboxComponent {
9
+ @Input() open = false;
10
+ @Input() placeholder = 'Select framework...';
11
+ @Input() searchPlaceholder = 'Search framework';
12
+ @Input() className = '';
13
+ @Input() options: string[] = ['Next.js', 'SvelteKit', 'Nuxt.js', 'Remix', 'Astro'];
14
+ @Input() value = '';
15
+ @Input() width = 200;
16
+
17
+ @Output() openChange = new EventEmitter<boolean>();
18
+ @Output() valueChange = new EventEmitter<string>();
19
+
20
+ get selectedLabel(): string {
21
+ return this.value || this.placeholder;
22
+ }
23
+
24
+ toggle(): void {
25
+ this.openChange.emit(!this.open);
26
+ }
27
+
28
+ select(option: string): void {
29
+ this.valueChange.emit(option);
30
+ this.openChange.emit(false);
31
+ }
32
+ }
@@ -0,0 +1,55 @@
1
+ <div [ngClass]="['w-full', className]">
2
+ <div *ngIf="!open" class="flex items-center gap-1">
3
+ <span class="text-[14px] font-medium leading-5 text-[#737373]">{{ hintLabel }}</span>
4
+ <button
5
+ type="button"
6
+ class="inline-flex h-5 items-center gap-0.5 rounded-[6px] border border-[#e5e5e5] bg-[#f5f5f5] px-1.5"
7
+ (click)="toggleOpen()"
8
+ >
9
+ <pdm-icon name="command" [size]="12" className="text-[#737373]" [decorative]="true"></pdm-icon>
10
+ <span class="text-[12px] leading-4 text-[#737373]">{{ hintKey }}</span>
11
+ </button>
12
+ </div>
13
+
14
+ <section
15
+ *ngIf="open"
16
+ class="flex w-full flex-col overflow-hidden rounded-[10px] border border-[#e5e5e5] bg-white shadow-[0_2px_4px_-2px_rgba(0,0,0,0.1),0_4px_6px_-1px_rgba(0,0,0,0.1)]"
17
+ >
18
+ <div class="flex items-center gap-2 border-b border-[#e5e5e5] px-3">
19
+ <pdm-icon name="search" [size]="16" className="text-[#737373]" [decorative]="true"></pdm-icon>
20
+ <input
21
+ type="text"
22
+ [placeholder]="placeholder"
23
+ [value]="query"
24
+ (input)="onQueryChange($event)"
25
+ class="h-10 w-full bg-transparent py-3 text-[14px] leading-5 text-[#0a0a0a] outline-none placeholder:text-[#737373]"
26
+ />
27
+ </div>
28
+
29
+ <div class="max-h-[300px] overflow-y-auto p-1">
30
+ <ng-container *ngFor="let group of groupedItems; let groupIndex = index">
31
+ <div *ngIf="group.name" class="px-2 py-[6px] text-[12px] leading-4 text-[#737373]">{{ group.name }}</div>
32
+ <button
33
+ *ngFor="let item of group.items"
34
+ type="button"
35
+ [disabled]="item.disabled"
36
+ class="flex w-full items-center gap-2 rounded-[6px] px-2 py-[6px] text-left"
37
+ [ngClass]="[
38
+ item.disabled ? 'opacity-50' : '',
39
+ item.label === 'Calendar' ? 'bg-[#f5f5f5]' : ''
40
+ ]"
41
+ (click)="select(item.value)"
42
+ >
43
+ <span class="inline-flex h-4 w-4 items-center justify-center text-[#0a0a0a]">
44
+ <pdm-icon *ngIf="item.icon" [name]="item.icon" [size]="16" [decorative]="true"></pdm-icon>
45
+ </span>
46
+ <span class="min-w-0 flex-1 text-[14px] leading-5 text-[#0a0a0a]">{{ item.label }}</span>
47
+ <span *ngIf="item.shortcut" class="text-[12px] leading-4 text-[#737373]">{{ item.shortcut }}</span>
48
+ </button>
49
+ <div *ngIf="groupIndex === 0 && groupedItems.length > 1" class="my-1 border-t border-[#e5e5e5]"></div>
50
+ </ng-container>
51
+
52
+ <p *ngIf="filteredItems.length === 0" class="py-6 text-center text-[14px] text-[#737373]">{{ emptyMessage }}</p>
53
+ </div>
54
+ </section>
55
+ </div>
@@ -0,0 +1,67 @@
1
+ import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';
2
+ import type { PdmIconName } from '../icon/icon.component';
3
+
4
+ export interface PdmCommandItem {
5
+ label: string;
6
+ value: string;
7
+ group?: string;
8
+ icon?: PdmIconName;
9
+ shortcut?: string;
10
+ disabled?: boolean;
11
+ }
12
+
13
+ @Component({
14
+ selector: 'pdm-command',
15
+ templateUrl: './command.component.html',
16
+ changeDetection: ChangeDetectionStrategy.OnPush
17
+ })
18
+ export class PdmCommandComponent {
19
+ @Input() open = true;
20
+ @Input() hintLabel = 'Press';
21
+ @Input() hintKey = 'J';
22
+ @Input() placeholder = 'Type a command or search...';
23
+ @Input() emptyMessage = 'No results found.';
24
+ @Input() items: PdmCommandItem[] = [
25
+ { label: 'Calendar', value: 'calendar', group: 'Suggestions', icon: 'calendar' },
26
+ { label: 'Search emoji', value: 'emoji', group: 'Suggestions', icon: 'smile' },
27
+ { label: 'Calculator', value: 'calculator', group: 'Suggestions', icon: 'calculator', disabled: true },
28
+ { label: 'Profile', value: 'profile', group: 'Settings', icon: 'user', shortcut: '⌘P' },
29
+ { label: 'Billing', value: 'billing', group: 'Settings', icon: 'credit-card', shortcut: '⌘B' },
30
+ { label: 'Settings', value: 'settings', group: 'Settings', icon: 'settings', shortcut: '⌘S' }
31
+ ];
32
+ @Input() className = '';
33
+
34
+ @Output() itemSelect = new EventEmitter<string>();
35
+ @Output() openChange = new EventEmitter<boolean>();
36
+
37
+ query = '';
38
+
39
+ get filteredItems(): PdmCommandItem[] {
40
+ const q = this.query.toLowerCase().trim();
41
+ if (!q) return this.items;
42
+ return this.items.filter((item) => item.label.toLowerCase().includes(q));
43
+ }
44
+
45
+ get groupedItems(): { name: string; items: PdmCommandItem[] }[] {
46
+ const map = new Map<string, PdmCommandItem[]>();
47
+ for (const item of this.filteredItems) {
48
+ const key = item.group || '';
49
+ const arr = map.get(key) ?? [];
50
+ arr.push(item);
51
+ map.set(key, arr);
52
+ }
53
+ return Array.from(map.entries()).map(([name, items]) => ({ name, items }));
54
+ }
55
+
56
+ onQueryChange(event: Event): void {
57
+ this.query = (event.target as HTMLInputElement).value;
58
+ }
59
+
60
+ toggleOpen(): void {
61
+ this.openChange.emit(!this.open);
62
+ }
63
+
64
+ select(value: string): void {
65
+ this.itemSelect.emit(value);
66
+ }
67
+ }