@caribeng/ui 22.2.0 → 22.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (285) hide show
  1. package/README.md +311 -231
  2. package/fesm2022/caribeng-ui-accordion.mjs +2 -2
  3. package/fesm2022/caribeng-ui-account-picker.mjs +533 -0
  4. package/fesm2022/caribeng-ui-aging.mjs +488 -0
  5. package/fesm2022/{caribeng-ui-caribe-alert.mjs → caribeng-ui-alert.mjs} +45 -45
  6. package/fesm2022/caribeng-ui-amount.mjs +249 -0
  7. package/fesm2022/caribeng-ui-anchor.mjs +2 -2
  8. package/fesm2022/{caribeng-ui-caribe-animation-lottie.mjs → caribeng-ui-animation-lottie.mjs} +41 -41
  9. package/fesm2022/caribeng-ui-audit-log.mjs +323 -0
  10. package/fesm2022/caribeng-ui-avatar.mjs +4 -4
  11. package/fesm2022/caribeng-ui-badge.mjs +8 -2
  12. package/fesm2022/caribeng-ui-breadcrumb.mjs +26 -9
  13. package/fesm2022/{caribeng-ui-caribe-button-group.mjs → caribeng-ui-button-group.mjs} +15 -15
  14. package/fesm2022/caribeng-ui-button.mjs +2 -2
  15. package/fesm2022/{caribeng-ui-caribe-card-content.mjs → caribeng-ui-card-content.mjs} +39 -39
  16. package/fesm2022/{caribeng-ui-caribe-card-move.mjs → caribeng-ui-card-move.mjs} +65 -65
  17. package/fesm2022/{caribeng-ui-caribe-card-primary.mjs → caribeng-ui-card-primary.mjs} +31 -31
  18. package/fesm2022/{caribeng-ui-caribe-card-select.mjs → caribeng-ui-card-select.mjs} +67 -67
  19. package/fesm2022/caribeng-ui-carousel.mjs +2 -2
  20. package/fesm2022/caribeng-ui-cascadeselect.mjs +45 -9
  21. package/fesm2022/caribeng-ui-chart.mjs +8 -5
  22. package/fesm2022/caribeng-ui-chat.mjs +1303 -0
  23. package/fesm2022/{caribeng-ui-caribe-coachmark.mjs → caribeng-ui-coachmark.mjs} +85 -85
  24. package/fesm2022/caribeng-ui-code-block.mjs +332 -0
  25. package/fesm2022/caribeng-ui-colorpicker.mjs +99 -5
  26. package/fesm2022/caribeng-ui-command-palette.mjs +476 -0
  27. package/fesm2022/caribeng-ui-comments.mjs +864 -0
  28. package/fesm2022/caribeng-ui-confirmdialog.mjs +78 -13
  29. package/fesm2022/caribeng-ui-confirmpopup.mjs +91 -16
  30. package/fesm2022/caribeng-ui-contextmenu.mjs +8 -4
  31. package/fesm2022/caribeng-ui-copy-button.mjs +230 -0
  32. package/fesm2022/caribeng-ui-datagrid.mjs +1635 -0
  33. package/fesm2022/caribeng-ui-dataview.mjs +6 -3
  34. package/fesm2022/caribeng-ui-datepicker.mjs +2 -2
  35. package/fesm2022/caribeng-ui-dock.mjs +52 -12
  36. package/fesm2022/caribeng-ui-document.mjs +495 -0
  37. package/fesm2022/{caribeng-ui-caribe-dots-indicator.mjs → caribeng-ui-dots-indicator.mjs} +41 -41
  38. package/fesm2022/caribeng-ui-drawer.mjs +9 -4
  39. package/fesm2022/caribeng-ui-dynamic-form.mjs +1581 -0
  40. package/fesm2022/caribeng-ui-editor.mjs +2324 -1311
  41. package/fesm2022/{caribeng-ui-caribe-expansion-panel.mjs → caribeng-ui-expansion-panel.mjs} +39 -39
  42. package/fesm2022/{caribeng-ui-caribe-fab-menu.mjs → caribeng-ui-fab-menu.mjs} +75 -75
  43. package/fesm2022/caribeng-ui-fieldset.mjs +2 -2
  44. package/fesm2022/caribeng-ui-file-card.mjs +134 -17
  45. package/fesm2022/{caribeng-ui-caribe-file-download.mjs → caribeng-ui-file-download.mjs} +63 -63
  46. package/fesm2022/caribeng-ui-financial-report.mjs +380 -0
  47. package/fesm2022/{caribeng-ui-caribe-float-menu.mjs → caribeng-ui-float-menu.mjs} +31 -31
  48. package/fesm2022/caribeng-ui-floatlabel.mjs +2 -2
  49. package/fesm2022/caribeng-ui-flow.mjs +1508 -0
  50. package/fesm2022/caribeng-ui-folder-card.mjs +122 -12
  51. package/fesm2022/{caribeng-ui-caribe-footer.mjs → caribeng-ui-footer.mjs} +19 -19
  52. package/fesm2022/caribeng-ui-gantt.mjs +1094 -0
  53. package/fesm2022/{caribeng-ui-caribe-header.mjs → caribeng-ui-header.mjs} +49 -49
  54. package/fesm2022/{caribeng-ui-caribe-icon-button.mjs → caribeng-ui-icon-button.mjs} +23 -23
  55. package/fesm2022/caribeng-ui-image-cropper.mjs +671 -0
  56. package/fesm2022/caribeng-ui-import-wizard.mjs +746 -0
  57. package/fesm2022/caribeng-ui-infinite-scroll.mjs +226 -0
  58. package/fesm2022/caribeng-ui-inlinemessage.mjs +2 -2
  59. package/fesm2022/caribeng-ui-input-number.mjs +22 -6
  60. package/fesm2022/{caribeng-ui-caribe-input-search.mjs → caribeng-ui-input-search.mjs} +65 -65
  61. package/fesm2022/{caribeng-ui-caribe-input-token.mjs → caribeng-ui-input-token.mjs} +59 -59
  62. package/fesm2022/caribeng-ui-inputmask.mjs +8 -2
  63. package/fesm2022/caribeng-ui-inputotp.mjs +2 -2
  64. package/fesm2022/caribeng-ui-journal-entry.mjs +340 -0
  65. package/fesm2022/caribeng-ui-kanban.mjs +4612 -0
  66. package/fesm2022/caribeng-ui-kbd.mjs +122 -0
  67. package/fesm2022/caribeng-ui-kpi.mjs +189 -0
  68. package/fesm2022/{caribeng-ui-caribe-link.mjs → caribeng-ui-link.mjs} +37 -37
  69. package/fesm2022/caribeng-ui-masonry.mjs +93 -0
  70. package/fesm2022/caribeng-ui-media-player.mjs +821 -0
  71. package/fesm2022/caribeng-ui-megamenu.mjs +13 -9
  72. package/fesm2022/caribeng-ui-mentions.mjs +495 -0
  73. package/fesm2022/caribeng-ui-menu.mjs +8 -4
  74. package/fesm2022/caribeng-ui-menubar.mjs +9 -5
  75. package/fesm2022/caribeng-ui-message.mjs +6 -3
  76. package/fesm2022/caribeng-ui-notification-center.mjs +636 -0
  77. package/fesm2022/{caribeng-ui-caribe-off-canvas.mjs → caribeng-ui-off-canvas.mjs} +55 -55
  78. package/fesm2022/{caribeng-ui-caribe-onboarding.mjs → caribeng-ui-onboarding.mjs} +105 -105
  79. package/fesm2022/caribeng-ui-orderlist.mjs +2 -2
  80. package/fesm2022/caribeng-ui-organizationchart.mjs +6 -10
  81. package/fesm2022/caribeng-ui-panel.mjs +6 -6
  82. package/fesm2022/caribeng-ui-panelmenu.mjs +9 -6
  83. package/fesm2022/caribeng-ui-pdfviewer.mjs +1755 -25
  84. package/fesm2022/caribeng-ui-period-picker.mjs +637 -0
  85. package/fesm2022/caribeng-ui-phone-input.mjs +688 -0
  86. package/fesm2022/caribeng-ui-picklist.mjs +2 -2
  87. package/fesm2022/caribeng-ui-pivot.mjs +419 -0
  88. package/fesm2022/caribeng-ui-pricing.mjs +263 -69
  89. package/fesm2022/caribeng-ui-qrcode.mjs +564 -0
  90. package/fesm2022/caribeng-ui-rating.mjs +14 -17
  91. package/fesm2022/caribeng-ui-reconciliation.mjs +386 -0
  92. package/fesm2022/caribeng-ui-ripple.mjs +2 -0
  93. package/fesm2022/caribeng-ui-scheduler.mjs +1027 -0
  94. package/fesm2022/caribeng-ui-scrolltop.mjs +3 -1
  95. package/fesm2022/caribeng-ui-select.mjs +2 -2
  96. package/fesm2022/{caribeng-ui-caribe-shortcut.mjs → caribeng-ui-shortcut.mjs} +29 -29
  97. package/fesm2022/caribeng-ui-sidebar.mjs +573 -0
  98. package/fesm2022/caribeng-ui-signature-pad.mjs +654 -0
  99. package/fesm2022/{caribeng-ui-caribe-status.mjs → caribeng-ui-status.mjs} +11 -11
  100. package/fesm2022/{caribeng-ui-caribe-step-indicator.mjs → caribeng-ui-step-indicator.mjs} +53 -53
  101. package/fesm2022/caribeng-ui-stepper.mjs +12 -5
  102. package/fesm2022/caribeng-ui-steps.mjs +2 -2
  103. package/fesm2022/caribeng-ui-table.mjs +333 -19
  104. package/fesm2022/caribeng-ui-tabmenu.mjs +10 -6
  105. package/fesm2022/caribeng-ui-tabs.mjs +2 -2
  106. package/fesm2022/{caribeng-ui-caribe-tag-button.mjs → caribeng-ui-tag-button.mjs} +25 -25
  107. package/fesm2022/caribeng-ui-tag.mjs +2 -2
  108. package/fesm2022/caribeng-ui-tieredmenu.mjs +111 -21
  109. package/fesm2022/{caribeng-ui-caribe-tracker.mjs → caribeng-ui-tracker.mjs} +29 -29
  110. package/fesm2022/{caribeng-ui-caribe-transaction-status.mjs → caribeng-ui-transaction-status.mjs} +11 -11
  111. package/fesm2022/caribeng-ui-treeselect.mjs +44 -9
  112. package/fesm2022/caribeng-ui-treetable.mjs +236 -17
  113. package/fesm2022/{caribeng-ui-caribe-voucher.mjs → caribeng-ui-voucher.mjs} +45 -45
  114. package/fesm2022/caribeng-ui-xlsx.mjs +486 -0
  115. package/fesm2022/caribeng-ui.mjs +1568 -1
  116. package/package.json +258 -178
  117. package/schematics/collection.json +5 -0
  118. package/schematics/migrate-from-primeng/core-icons.json +1 -0
  119. package/schematics/migrate-from-primeng/icons.js +269 -0
  120. package/schematics/migrate-from-primeng/index.js +290 -0
  121. package/schematics/migrate-from-primeng/mappings/button.js +93 -0
  122. package/schematics/migrate-from-primeng/mappings/card.js +33 -0
  123. package/schematics/migrate-from-primeng/mappings/checkbox.js +44 -0
  124. package/schematics/migrate-from-primeng/mappings/confirm.js +221 -0
  125. package/schematics/migrate-from-primeng/mappings/datepicker.js +121 -0
  126. package/schematics/migrate-from-primeng/mappings/dialog.js +84 -0
  127. package/schematics/migrate-from-primeng/mappings/index.js +88 -0
  128. package/schematics/migrate-from-primeng/mappings/inputnumber.js +62 -0
  129. package/schematics/migrate-from-primeng/mappings/inputtext.js +60 -0
  130. package/schematics/migrate-from-primeng/mappings/menu.js +468 -0
  131. package/schematics/migrate-from-primeng/mappings/multiselect.js +49 -0
  132. package/schematics/migrate-from-primeng/mappings/radiobutton.js +22 -0
  133. package/schematics/migrate-from-primeng/mappings/rules.js +206 -0
  134. package/schematics/migrate-from-primeng/mappings/select.js +97 -0
  135. package/schematics/migrate-from-primeng/mappings/service-calls.js +100 -0
  136. package/schematics/migrate-from-primeng/mappings/table.js +613 -0
  137. package/schematics/migrate-from-primeng/mappings/tabs.js +225 -0
  138. package/schematics/migrate-from-primeng/mappings/tag.js +29 -0
  139. package/schematics/migrate-from-primeng/mappings/textarea.js +44 -0
  140. package/schematics/migrate-from-primeng/mappings/toast.js +173 -0
  141. package/schematics/migrate-from-primeng/mappings/toggleswitch.js +37 -0
  142. package/schematics/migrate-from-primeng/mappings/tooltip.js +44 -0
  143. package/schematics/migrate-from-primeng/mappings/types.js +10 -0
  144. package/schematics/migrate-from-primeng/report.js +79 -0
  145. package/schematics/migrate-from-primeng/schema.js +2 -0
  146. package/schematics/migrate-from-primeng/schema.json +34 -0
  147. package/schematics/migrate-from-primeng/template.js +387 -0
  148. package/schematics/migrate-from-primeng/todo.js +5 -0
  149. package/schematics/migrate-from-primeng/typescript.js +442 -0
  150. package/schematics/migrate-from-primeng/workspace.js +117 -0
  151. package/schematics/ng-add/index.js +16 -1
  152. package/types/caribeng-ui-account-picker.d.ts +142 -0
  153. package/types/caribeng-ui-aging.d.ts +123 -0
  154. package/types/{caribeng-ui-caribe-alert.d.ts → caribeng-ui-alert.d.ts} +2 -2
  155. package/types/caribeng-ui-amount.d.ts +82 -0
  156. package/types/{caribeng-ui-caribe-animation-lottie.d.ts → caribeng-ui-animation-lottie.d.ts} +2 -2
  157. package/types/caribeng-ui-audit-log.d.ts +86 -0
  158. package/types/caribeng-ui-badge.d.ts +3 -1
  159. package/types/caribeng-ui-breadcrumb.d.ts +9 -1
  160. package/types/{caribeng-ui-caribe-button-group.d.ts → caribeng-ui-button-group.d.ts} +2 -2
  161. package/types/{caribeng-ui-caribe-card-content.d.ts → caribeng-ui-card-content.d.ts} +2 -2
  162. package/types/{caribeng-ui-caribe-card-move.d.ts → caribeng-ui-card-move.d.ts} +1 -1
  163. package/types/{caribeng-ui-caribe-card-primary.d.ts → caribeng-ui-card-primary.d.ts} +2 -2
  164. package/types/{caribeng-ui-caribe-card-select.d.ts → caribeng-ui-card-select.d.ts} +2 -2
  165. package/types/caribeng-ui-cascadeselect.d.ts +6 -0
  166. package/types/caribeng-ui-chart.d.ts +3 -1
  167. package/types/caribeng-ui-chat.d.ts +299 -0
  168. package/types/{caribeng-ui-caribe-coachmark.d.ts → caribeng-ui-coachmark.d.ts} +2 -2
  169. package/types/caribeng-ui-code-block.d.ts +65 -0
  170. package/types/caribeng-ui-colorpicker.d.ts +5 -1
  171. package/types/caribeng-ui-command-palette.d.ts +133 -0
  172. package/types/caribeng-ui-comments.d.ts +214 -0
  173. package/types/caribeng-ui-confirmdialog.d.ts +34 -2
  174. package/types/caribeng-ui-confirmpopup.d.ts +39 -2
  175. package/types/caribeng-ui-contextmenu.d.ts +7 -0
  176. package/types/caribeng-ui-copy-button.d.ts +90 -0
  177. package/types/caribeng-ui-datagrid.d.ts +269 -0
  178. package/types/caribeng-ui-dataview.d.ts +2 -0
  179. package/types/caribeng-ui-dock.d.ts +13 -1
  180. package/types/caribeng-ui-document.d.ts +138 -0
  181. package/types/{caribeng-ui-caribe-dots-indicator.d.ts → caribeng-ui-dots-indicator.d.ts} +2 -2
  182. package/types/caribeng-ui-drawer.d.ts +3 -1
  183. package/types/caribeng-ui-dynamic-form.d.ts +409 -0
  184. package/types/caribeng-ui-editor.d.ts +110 -12
  185. package/types/{caribeng-ui-caribe-expansion-panel.d.ts → caribeng-ui-expansion-panel.d.ts} +1 -1
  186. package/types/{caribeng-ui-caribe-fab-menu.d.ts → caribeng-ui-fab-menu.d.ts} +2 -2
  187. package/types/caribeng-ui-file-card.d.ts +27 -2
  188. package/types/{caribeng-ui-caribe-file-download.d.ts → caribeng-ui-file-download.d.ts} +1 -1
  189. package/types/caribeng-ui-financial-report.d.ts +102 -0
  190. package/types/{caribeng-ui-caribe-float-menu.d.ts → caribeng-ui-float-menu.d.ts} +2 -2
  191. package/types/caribeng-ui-flow.d.ts +228 -0
  192. package/types/caribeng-ui-folder-card.d.ts +27 -5
  193. package/types/{caribeng-ui-caribe-footer.d.ts → caribeng-ui-footer.d.ts} +2 -2
  194. package/types/caribeng-ui-gantt.d.ts +244 -0
  195. package/types/{caribeng-ui-caribe-header.d.ts → caribeng-ui-header.d.ts} +2 -2
  196. package/types/{caribeng-ui-caribe-icon-button.d.ts → caribeng-ui-icon-button.d.ts} +2 -2
  197. package/types/{caribeng-ui-caribe-illustration.d.ts → caribeng-ui-illustration.d.ts} +1 -1
  198. package/types/caribeng-ui-image-cropper.d.ts +169 -0
  199. package/types/caribeng-ui-import-wizard.d.ts +149 -0
  200. package/types/caribeng-ui-infinite-scroll.d.ts +75 -0
  201. package/types/caribeng-ui-input-number.d.ts +1 -1
  202. package/types/{caribeng-ui-caribe-input-search.d.ts → caribeng-ui-input-search.d.ts} +2 -2
  203. package/types/{caribeng-ui-caribe-input-token.d.ts → caribeng-ui-input-token.d.ts} +2 -2
  204. package/types/caribeng-ui-inputmask.d.ts +3 -1
  205. package/types/caribeng-ui-journal-entry.d.ts +110 -0
  206. package/types/caribeng-ui-kanban.d.ts +783 -0
  207. package/types/caribeng-ui-kbd.d.ts +36 -0
  208. package/types/caribeng-ui-kpi.d.ts +64 -0
  209. package/types/{caribeng-ui-caribe-link.d.ts → caribeng-ui-link.d.ts} +2 -2
  210. package/types/{caribeng-ui-caribe-logo.d.ts → caribeng-ui-logo.d.ts} +1 -1
  211. package/types/caribeng-ui-masonry.d.ts +32 -0
  212. package/types/caribeng-ui-media-player.d.ts +140 -0
  213. package/types/caribeng-ui-megamenu.d.ts +11 -0
  214. package/types/caribeng-ui-mentions.d.ts +127 -0
  215. package/types/caribeng-ui-menu.d.ts +7 -0
  216. package/types/caribeng-ui-menubar.d.ts +7 -0
  217. package/types/caribeng-ui-message.d.ts +2 -0
  218. package/types/caribeng-ui-notification-center.d.ts +153 -0
  219. package/types/{caribeng-ui-caribe-off-canvas.d.ts → caribeng-ui-off-canvas.d.ts} +2 -2
  220. package/types/{caribeng-ui-caribe-onboarding.d.ts → caribeng-ui-onboarding.d.ts} +2 -2
  221. package/types/caribeng-ui-panelmenu.d.ts +7 -0
  222. package/types/caribeng-ui-pdfviewer.d.ts +245 -5
  223. package/types/caribeng-ui-period-picker.d.ts +148 -0
  224. package/types/caribeng-ui-phone-input.d.ts +168 -0
  225. package/types/caribeng-ui-pivot.d.ts +116 -0
  226. package/types/caribeng-ui-pricing.d.ts +41 -4
  227. package/types/caribeng-ui-qrcode.d.ts +88 -0
  228. package/types/caribeng-ui-reconciliation.d.ts +109 -0
  229. package/types/caribeng-ui-scheduler.d.ts +188 -0
  230. package/types/{caribeng-ui-caribe-shortcut.d.ts → caribeng-ui-shortcut.d.ts} +2 -2
  231. package/types/caribeng-ui-sidebar.d.ts +167 -0
  232. package/types/caribeng-ui-signature-pad.d.ts +151 -0
  233. package/types/{caribeng-ui-caribe-status.d.ts → caribeng-ui-status.d.ts} +2 -2
  234. package/types/{caribeng-ui-caribe-step-indicator.d.ts → caribeng-ui-step-indicator.d.ts} +2 -2
  235. package/types/caribeng-ui-stepper.d.ts +2 -0
  236. package/types/caribeng-ui-table.d.ts +67 -3
  237. package/types/caribeng-ui-tabmenu.d.ts +7 -0
  238. package/types/{caribeng-ui-caribe-tag-button.d.ts → caribeng-ui-tag-button.d.ts} +2 -2
  239. package/types/caribeng-ui-tieredmenu.d.ts +17 -1
  240. package/types/{caribeng-ui-caribe-tracker.d.ts → caribeng-ui-tracker.d.ts} +2 -2
  241. package/types/{caribeng-ui-caribe-transaction-status.d.ts → caribeng-ui-transaction-status.d.ts} +2 -2
  242. package/types/caribeng-ui-treeselect.d.ts +6 -0
  243. package/types/caribeng-ui-treetable.d.ts +67 -2
  244. package/types/{caribeng-ui-caribe-voucher.d.ts → caribeng-ui-voucher.d.ts} +2 -2
  245. package/types/caribeng-ui-xlsx.d.ts +79 -0
  246. package/types/caribeng-ui.d.ts +985 -2
  247. package/fesm2022/caribeng-ui-caribe-calendar.mjs +0 -92
  248. package/fesm2022/caribeng-ui-caribe-circle-loading.mjs +0 -130
  249. package/fesm2022/caribeng-ui-caribe-data-table.mjs +0 -94
  250. package/fesm2022/caribeng-ui-caribe-file-select.mjs +0 -88
  251. package/fesm2022/caribeng-ui-caribe-inline-alert.mjs +0 -100
  252. package/fesm2022/caribeng-ui-caribe-input-date.mjs +0 -138
  253. package/fesm2022/caribeng-ui-caribe-input-select.mjs +0 -154
  254. package/fesm2022/caribeng-ui-caribe-loader.mjs +0 -48
  255. package/fesm2022/caribeng-ui-caribe-modal.mjs +0 -119
  256. package/fesm2022/caribeng-ui-caribe-pictogram.mjs +0 -52
  257. package/fesm2022/caribeng-ui-caribe-pop-over.mjs +0 -104
  258. package/fesm2022/caribeng-ui-caribe-preloader.mjs +0 -57
  259. package/fesm2022/caribeng-ui-caribe-progress-bar.mjs +0 -84
  260. package/fesm2022/caribeng-ui-caribe-stroke.mjs +0 -69
  261. package/fesm2022/caribeng-ui-caribe-switch.mjs +0 -182
  262. package/styles/caribeng.css +0 -380
  263. package/styles/scss/_mixins.scss +0 -46
  264. package/styles/scss/_overlay.scss +0 -15
  265. package/styles/scss/_tokens.scss +0 -267
  266. package/styles/scss/_utilities.scss +0 -73
  267. package/styles/scss/_variables.scss +0 -33
  268. package/styles/scss/index.scss +0 -16
  269. package/types/caribeng-ui-caribe-calendar.d.ts +0 -27
  270. package/types/caribeng-ui-caribe-circle-loading.d.ts +0 -28
  271. package/types/caribeng-ui-caribe-data-table.d.ts +0 -26
  272. package/types/caribeng-ui-caribe-file-select.d.ts +0 -31
  273. package/types/caribeng-ui-caribe-inline-alert.d.ts +0 -28
  274. package/types/caribeng-ui-caribe-input-date.d.ts +0 -40
  275. package/types/caribeng-ui-caribe-input-select.d.ts +0 -47
  276. package/types/caribeng-ui-caribe-loader.d.ts +0 -22
  277. package/types/caribeng-ui-caribe-modal.d.ts +0 -21
  278. package/types/caribeng-ui-caribe-pictogram.d.ts +0 -15
  279. package/types/caribeng-ui-caribe-pop-over.d.ts +0 -17
  280. package/types/caribeng-ui-caribe-preloader.d.ts +0 -24
  281. package/types/caribeng-ui-caribe-progress-bar.d.ts +0 -28
  282. package/types/caribeng-ui-caribe-stroke.d.ts +0 -17
  283. package/types/caribeng-ui-caribe-switch.d.ts +0 -55
  284. /package/fesm2022/{caribeng-ui-caribe-illustration.mjs → caribeng-ui-illustration.mjs} +0 -0
  285. /package/fesm2022/{caribeng-ui-caribe-logo.mjs → caribeng-ui-logo.mjs} +0 -0
@@ -0,0 +1,214 @@
1
+ import * as _angular_core from '@angular/core';
2
+ import * as _caribeng_ui from '@caribeng/ui';
3
+ import { cbFormat } from '@caribeng/ui';
4
+ import { SafeHtml } from '@angular/platform-browser';
5
+ import { CbEditorTool, CbEditorMentionSource } from '@caribeng/ui/editor';
6
+
7
+ /** Persona que comenta, reacciona o a la que se menciona (compatible con `CbKanbanPerson`). */
8
+ interface CbCommentPerson {
9
+ readonly id: string;
10
+ readonly name: string;
11
+ /** Foto (si no hay, se muestran las iniciales). */
12
+ readonly image?: string;
13
+ /** Texto secundario en la lista de menciones (cargo, correo…). */
14
+ readonly description?: string;
15
+ }
16
+ /** Reacción con un emoji y quién la puso (ids de persona). */
17
+ interface CbCommentReaction {
18
+ readonly emoji: string;
19
+ readonly by: readonly string[];
20
+ }
21
+ /** Comentario del hilo. Las respuestas llevan `parentId` (un solo nivel, como en Asana o GitHub). */
22
+ interface CbComment {
23
+ readonly id: string;
24
+ readonly author: CbCommentPerson;
25
+ /** Contenido en HTML del editor (se sanea al guardarlo y al pintarlo). Las menciones son `<span data-mention="id">`. */
26
+ readonly html: string;
27
+ /** Fecha de publicación (`Date` o ISO 8601). */
28
+ readonly date: Date | string;
29
+ /** Fecha de la última edición. */
30
+ readonly edited?: Date | string;
31
+ /** Comentario al que responde. */
32
+ readonly parentId?: string;
33
+ readonly reactions?: readonly CbCommentReaction[];
34
+ /** Eliminado, pero se conserva porque tiene respuestas. */
35
+ readonly deleted?: boolean;
36
+ }
37
+ /** Entrada del historial de cambios ("Ana movió esta tarea a En curso"). */
38
+ interface CbActivity {
39
+ readonly id: string;
40
+ /** Texto de la acción, sin el nombre (se antepone `author`). */
41
+ readonly text: string;
42
+ readonly author?: CbCommentPerson;
43
+ readonly date: Date | string;
44
+ /** Icono (por defecto, un reloj). */
45
+ readonly icon?: string;
46
+ }
47
+ /** Qué muestra el hilo. */
48
+ type CbCommentsFilter = 'all' | 'comments' | 'activity';
49
+ /** Comentario publicado o editado, con los ids de las personas que menciona. */
50
+ interface CbCommentEvent {
51
+ readonly comment: CbComment;
52
+ readonly mentions: readonly string[];
53
+ }
54
+ /** Reacción puesta (`added`) o quitada. */
55
+ interface CbCommentReactionEvent {
56
+ readonly comment: CbComment;
57
+ readonly emoji: string;
58
+ readonly added: boolean;
59
+ }
60
+ /** Elemento del hilo ya ordenado: un comentario raíz con sus respuestas, o una actividad. */
61
+ type CbFeedItem = {
62
+ readonly kind: 'comment';
63
+ readonly comment: CbComment;
64
+ readonly replies: readonly CbComment[];
65
+ readonly time: number;
66
+ } | {
67
+ readonly kind: 'activity';
68
+ readonly activity: CbActivity;
69
+ readonly time: number;
70
+ };
71
+ /** Ids de las personas mencionadas en un HTML (`data-mention`), sin repetir y en orden. */
72
+ declare function mentionIds(html: string): string[];
73
+ /** Pone o quita la reacción `emoji` de `userId`; las reacciones que se quedan sin nadie desaparecen. */
74
+ declare function toggleReaction(reactions: readonly CbCommentReaction[] | undefined, emoji: string, userId: string): {
75
+ reactions: CbCommentReaction[];
76
+ added: boolean;
77
+ };
78
+ /**
79
+ * Elimina un comentario. Si tiene respuestas se conserva como "eliminado" para no romper el hilo;
80
+ * si era la última respuesta de un comentario ya eliminado, también desaparece el padre.
81
+ */
82
+ declare function removeComment(comments: readonly CbComment[], id: string): CbComment[];
83
+
84
+ /** Barra del editor por defecto: lo justo para un comentario. */
85
+ declare const CB_COMMENTS_TOOLBAR: readonly CbEditorTool[];
86
+ /** Dónde se está escribiendo: comentario nuevo, respuesta a un hilo o edición. */
87
+ type Draft = 'new' | {
88
+ reply: string;
89
+ } | {
90
+ edit: string;
91
+ };
92
+ /**
93
+ * Hilo de comentarios y actividad de CaribeNG: comentarios con formato y @menciones
94
+ * (sobre `cb-editor`), respuestas de un nivel, reacciones con emoji, edición y borrado de los
95
+ * propios y, mezclado por fecha, el historial de cambios (`activity`).
96
+ *
97
+ * @example
98
+ * ```html
99
+ * <cb-comments [(comments)]="comentarios" [activity]="historial" [currentUser]="yo" [people]="equipo" />
100
+ * ```
101
+ */
102
+ declare class CbComments {
103
+ protected readonly t: _angular_core.Signal<_caribeng_ui.CbTranslation>;
104
+ protected readonly fmt: typeof cbFormat;
105
+ private readonly host;
106
+ private readonly injector;
107
+ private readonly sanitizer;
108
+ private readonly uid;
109
+ /** Comentarios (raíces y respuestas, en una lista plana). Se actualiza al publicar, editar, borrar o reaccionar. */
110
+ readonly comments: _angular_core.ModelSignal<readonly CbComment[]>;
111
+ /** Historial de cambios, que se intercala por fecha con los comentarios. */
112
+ readonly activity: _angular_core.InputSignal<readonly CbActivity[]>;
113
+ /** Quién escribe. Sin él, el hilo es de solo lectura. */
114
+ readonly currentUser: _angular_core.InputSignal<CbCommentPerson | null>;
115
+ /** Personas que se pueden mencionar con `@` y cuyos nombres aparecen en las reacciones. */
116
+ readonly people: _angular_core.InputSignal<readonly CbCommentPerson[]>;
117
+ /** Fuente propia de menciones (lista o función, también asíncrona); sustituye a `people` para `@`. */
118
+ readonly mentions: _angular_core.InputSignal<CbEditorMentionSource | null>;
119
+ /** Qué se muestra: todo, solo comentarios o solo actividad. */
120
+ readonly filter: _angular_core.ModelSignal<CbCommentsFilter>;
121
+ /** Orden del hilo. Con `oldest` la caja para comentar va al final; con `newest`, arriba. */
122
+ readonly order: _angular_core.InputSignal<"oldest" | "newest">;
123
+ /** Emojis para reaccionar (vacío para quitar las reacciones). */
124
+ readonly reactions: _angular_core.InputSignal<readonly string[]>;
125
+ /** Permite responder a un comentario. */
126
+ readonly replies: _angular_core.InputSignalWithTransform<boolean, unknown>;
127
+ /** Permite editar y eliminar los comentarios propios. */
128
+ readonly editable: _angular_core.InputSignalWithTransform<boolean, unknown>;
129
+ /** Muestra la caja para comentar (con `false` solo se responde, edita y reacciona). */
130
+ readonly composer: _angular_core.InputSignalWithTransform<boolean, unknown>;
131
+ readonly readonly: _angular_core.InputSignalWithTransform<boolean, unknown>;
132
+ /** Herramientas del editor. */
133
+ readonly toolbar: _angular_core.InputSignal<readonly CbEditorTool[]>;
134
+ /** Alto del área de escritura (crece hasta 16rem). */
135
+ readonly editorHeight: _angular_core.InputSignal<string>;
136
+ readonly placeholder: _angular_core.InputSignal<string | undefined>;
137
+ readonly emptyMessage: _angular_core.InputSignal<string | undefined>;
138
+ /** Nombre del hilo para lectores de pantalla (por defecto, "Comentarios y actividad"). */
139
+ readonly ariaLabel: _angular_core.InputSignal<string>;
140
+ /** Comentario publicado (raíz o respuesta). */
141
+ readonly commentAdd: _angular_core.OutputEmitterRef<CbCommentEvent>;
142
+ readonly commentEdit: _angular_core.OutputEmitterRef<CbCommentEvent>;
143
+ readonly commentDelete: _angular_core.OutputEmitterRef<CbComment>;
144
+ readonly reactionToggle: _angular_core.OutputEmitterRef<CbCommentReactionEvent>;
145
+ protected readonly filters: readonly CbCommentsFilter[];
146
+ protected readonly feed: _angular_core.Signal<CbFeedItem[]>;
147
+ protected readonly showFilter: _angular_core.Signal<boolean>;
148
+ protected readonly canAct: _angular_core.Signal<boolean>;
149
+ protected readonly mentionSource: _angular_core.Signal<CbEditorMentionSource | null>;
150
+ private readonly names;
151
+ /** Borradores abiertos, por clave (`new`, `reply:<id>`, `edit:<id>`). */
152
+ private readonly drafts;
153
+ /** Hilo al que se está respondiendo y comentario en edición. */
154
+ private readonly replyTo;
155
+ private readonly editing;
156
+ protected readonly picker: _angular_core.WritableSignal<string | null>;
157
+ protected readonly confirming: _angular_core.WritableSignal<string | null>;
158
+ protected readonly announcement: _angular_core.WritableSignal<string>;
159
+ /** Hora de referencia de las fechas relativas (se refresca cada minuto). */
160
+ private readonly now;
161
+ private readonly safeCache;
162
+ constructor();
163
+ protected itemKey(item: CbFeedItem): string;
164
+ protected domId(id: string): string;
165
+ protected filterLabel(f: CbCommentsFilter): string;
166
+ protected initials(name: string): string;
167
+ protected iso(date: Date | string): string;
168
+ protected full(date: Date | string): string;
169
+ protected rel(date: Date | string): string;
170
+ /** HTML del comentario, saneado (lista blanca del editor) y marcado como seguro una sola vez. */
171
+ protected safe(html: string): SafeHtml;
172
+ protected mine(r: CbCommentReaction): boolean;
173
+ protected mineEmoji(c: CbComment, emoji: string): boolean;
174
+ /** "👍, 2: Ana López y tú". */
175
+ protected reactionLabel(r: CbCommentReaction): string;
176
+ protected canManage(c: CbComment): boolean;
177
+ protected isReplying(id: string): boolean;
178
+ protected isEditing(id: string): boolean;
179
+ protected isEdit(d: Draft): d is {
180
+ edit: string;
181
+ };
182
+ protected draftKey(d: Draft): string;
183
+ protected draftOf(d: Draft): string;
184
+ protected setDraft(d: Draft, html: string): void;
185
+ protected isEmpty(html: string): boolean;
186
+ protected placeholderOf(d: Draft): string;
187
+ protected editorLabel(d: Draft): string;
188
+ /** Ctrl / ⌘ + Enter envía; Escape cancela la respuesta o la edición (salvo que lo use el editor). */
189
+ protected onEditorKeydown(event: KeyboardEvent, d: Draft): void;
190
+ protected submit(d: Draft): void;
191
+ protected cancelDraft(d: Draft): void;
192
+ protected startReply(root: CbComment): void;
193
+ protected startEdit(c: CbComment): void;
194
+ protected askDelete(id: string): void;
195
+ protected cancelDelete(id: string): void;
196
+ protected confirmDelete(c: CbComment): void;
197
+ protected togglePicker(id: string): void;
198
+ protected closePicker(id: string, event?: Event): void;
199
+ /** El selector se cierra al salir de él con el teclado o el ratón. */
200
+ protected onPickerFocusOut(id: string, event: FocusEvent): void;
201
+ protected react(c: CbComment, emoji: string, fromPicker?: boolean): void;
202
+ private find;
203
+ private clearDraft;
204
+ /** Un espacio duro alterno hace que el mismo texto cuente como cambio y se vuelva a anunciar. */
205
+ private announce;
206
+ private announceFlip;
207
+ private focusLater;
208
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<CbComments, never>;
209
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<CbComments, "cb-comments", never, { "comments": { "alias": "comments"; "required": false; "isSignal": true; }; "activity": { "alias": "activity"; "required": false; "isSignal": true; }; "currentUser": { "alias": "currentUser"; "required": false; "isSignal": true; }; "people": { "alias": "people"; "required": false; "isSignal": true; }; "mentions": { "alias": "mentions"; "required": false; "isSignal": true; }; "filter": { "alias": "filter"; "required": false; "isSignal": true; }; "order": { "alias": "order"; "required": false; "isSignal": true; }; "reactions": { "alias": "reactions"; "required": false; "isSignal": true; }; "replies": { "alias": "replies"; "required": false; "isSignal": true; }; "editable": { "alias": "editable"; "required": false; "isSignal": true; }; "composer": { "alias": "composer"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "toolbar": { "alias": "toolbar"; "required": false; "isSignal": true; }; "editorHeight": { "alias": "editorHeight"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "emptyMessage": { "alias": "emptyMessage"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; }, { "comments": "commentsChange"; "filter": "filterChange"; "commentAdd": "commentAdd"; "commentEdit": "commentEdit"; "commentDelete": "commentDelete"; "reactionToggle": "reactionToggle"; }, never, never, true, never>;
210
+ }
211
+
212
+ export { CB_COMMENTS_TOOLBAR, CbComments, mentionIds as cbCommentMentions, removeComment as cbRemoveComment, toggleReaction as cbToggleReaction };
213
+ export type { CbActivity, CbComment, CbCommentEvent, CbCommentPerson, CbCommentReaction, CbCommentReactionEvent, CbCommentsFilter };
214
+ //# sourceMappingURL=caribeng-ui-comments.d.ts.map
@@ -1,5 +1,6 @@
1
1
  import * as _angular_core from '@angular/core';
2
2
  import * as _caribeng_ui from '@caribeng/ui';
3
+ import { CbConfirmSeverity } from '@caribeng/ui';
3
4
 
4
5
  /**
5
6
  * Diálogo de confirmación (`role="alertdialog"`) con trampa de foco, cierre con
@@ -16,10 +17,21 @@ import * as _caribeng_ui from '@caribeng/ui';
16
17
  * (accepted)="eliminar()"
17
18
  * />
18
19
  * ```
20
+ *
21
+ * Con `service` muestra las confirmaciones pedidas desde código con
22
+ * `CbConfirmationService` (como `ConfirmationService` de PrimeNG):
23
+ *
24
+ * ```html
25
+ * <cb-confirm-dialog service />
26
+ * ```
27
+ * ```ts
28
+ * inject(CbConfirmationService).confirm({ message: '¿Eliminar?', accept: () => this.eliminar() });
29
+ * ```
19
30
  */
20
31
  declare class CbConfirmDialog {
21
32
  protected readonly t: _angular_core.Signal<_caribeng_ui.CbTranslation>;
22
33
  private readonly document;
34
+ private readonly confirmation;
23
35
  /** Visibilidad (two-way). */
24
36
  readonly visible: _angular_core.ModelSignal<boolean>;
25
37
  /** Título. Por defecto, "Confirmar" del idioma activo. */
@@ -29,19 +41,39 @@ declare class CbConfirmDialog {
29
41
  readonly acceptLabel: _angular_core.InputSignal<string | undefined>;
30
42
  readonly rejectLabel: _angular_core.InputSignal<string | undefined>;
31
43
  /** Severidad del botón de aceptar (p. ej. `danger` para acciones destructivas). */
32
- readonly acceptSeverity: _angular_core.InputSignal<"primary" | "danger" | "success" | "warning">;
44
+ readonly acceptSeverity: _angular_core.InputSignal<CbConfirmSeverity>;
45
+ /**
46
+ * Muestra las confirmaciones pedidas con `CbConfirmationService`. Sin él, el
47
+ * componente solo responde a `[(visible)]` (así un diálogo declarativo no se
48
+ * abre con las confirmaciones de otra parte de la app).
49
+ */
50
+ readonly service: _angular_core.InputSignalWithTransform<boolean, unknown>;
51
+ /** Con `service`: atiende solo las confirmaciones con este mismo `key` (o sin key si no se indica). */
52
+ readonly key: _angular_core.InputSignal<string | undefined>;
33
53
  readonly accepted: _angular_core.OutputEmitterRef<void>;
34
54
  readonly rejected: _angular_core.OutputEmitterRef<void>;
35
55
  protected readonly titleId: string;
36
56
  protected readonly messageId: string;
57
+ /** Confirmación pedida con `CbConfirmationService` que se está mostrando. */
58
+ private readonly active;
59
+ /** Textos visibles: los de la confirmación del servicio, si la hay; si no, los inputs y el idioma. */
60
+ protected readonly shown: _angular_core.Signal<{
61
+ header: string;
62
+ message: string;
63
+ acceptLabel: string;
64
+ rejectLabel: string;
65
+ acceptSeverity: CbConfirmSeverity;
66
+ }>;
37
67
  /** Elemento enfocado antes de abrir; recibe el foco de vuelta al cerrar. */
38
68
  private previouslyFocused;
39
69
  constructor();
40
70
  protected onEscape(): void;
41
71
  protected confirm(): void;
42
72
  protected reject(): void;
73
+ /** Cierra y, si venía del servicio, lo libera y ejecuta su callback (que puede pedir otra confirmación). */
74
+ private finish;
43
75
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<CbConfirmDialog, never>;
44
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<CbConfirmDialog, "cb-confirm-dialog", never, { "visible": { "alias": "visible"; "required": false; "isSignal": true; }; "header": { "alias": "header"; "required": false; "isSignal": true; }; "message": { "alias": "message"; "required": false; "isSignal": true; }; "acceptLabel": { "alias": "acceptLabel"; "required": false; "isSignal": true; }; "rejectLabel": { "alias": "rejectLabel"; "required": false; "isSignal": true; }; "acceptSeverity": { "alias": "acceptSeverity"; "required": false; "isSignal": true; }; }, { "visible": "visibleChange"; "accepted": "accepted"; "rejected": "rejected"; }, never, never, true, never>;
76
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<CbConfirmDialog, "cb-confirm-dialog", never, { "visible": { "alias": "visible"; "required": false; "isSignal": true; }; "header": { "alias": "header"; "required": false; "isSignal": true; }; "message": { "alias": "message"; "required": false; "isSignal": true; }; "acceptLabel": { "alias": "acceptLabel"; "required": false; "isSignal": true; }; "rejectLabel": { "alias": "rejectLabel"; "required": false; "isSignal": true; }; "acceptSeverity": { "alias": "acceptSeverity"; "required": false; "isSignal": true; }; "service": { "alias": "service"; "required": false; "isSignal": true; }; "key": { "alias": "key"; "required": false; "isSignal": true; }; }, { "visible": "visibleChange"; "accepted": "accepted"; "rejected": "rejected"; }, never, never, true, never>;
45
77
  }
46
78
 
47
79
  export { CbConfirmDialog };
@@ -1,5 +1,6 @@
1
1
  import * as _angular_core from '@angular/core';
2
2
  import * as _caribeng_ui from '@caribeng/ui';
3
+ import { CbConfirmSeverity } from '@caribeng/ui';
3
4
 
4
5
  /**
5
6
  * Confirmación breve de CaribeNG. Ábrela anclada al botón que la dispara con
@@ -11,12 +12,26 @@ import * as _caribeng_ui from '@caribeng/ui';
11
12
  * <cb-button severity="danger" (click)="borrar.confirm($event)">Eliminar</cb-button>
12
13
  * <cb-confirm-popup #borrar message="¿Eliminar este archivo?" (accepted)="eliminar()" />
13
14
  * ```
15
+ *
16
+ * Con `service` muestra las confirmaciones de `CbConfirmationService` que traen
17
+ * `target` (como `ConfirmationService` de PrimeNG):
18
+ *
19
+ * ```html
20
+ * <cb-button (click)="borrar($event)">Eliminar</cb-button>
21
+ * <cb-confirm-popup service />
22
+ * ```
23
+ * ```ts
24
+ * borrar(event: Event) {
25
+ * inject(CbConfirmationService).confirm({ target: event.currentTarget, message: '¿Eliminar?', accept: () => this.eliminar() });
26
+ * }
27
+ * ```
14
28
  */
15
29
  declare class CbConfirmPopup {
16
30
  protected readonly t: _angular_core.Signal<_caribeng_ui.CbTranslation>;
17
31
  private readonly overlay;
18
32
  private readonly vcr;
19
33
  private readonly injector;
34
+ private readonly confirmation;
20
35
  protected readonly messageId: string;
21
36
  /** Visibilidad (two-way). Con `[(visible)]` se muestra en línea. */
22
37
  readonly visible: _angular_core.ModelSignal<boolean>;
@@ -25,7 +40,15 @@ declare class CbConfirmPopup {
25
40
  readonly acceptLabel: _angular_core.InputSignal<string | undefined>;
26
41
  readonly rejectLabel: _angular_core.InputSignal<string | undefined>;
27
42
  /** Severidad del botón de aceptar (p. ej. `danger` para acciones destructivas). */
28
- readonly acceptSeverity: _angular_core.InputSignal<"primary" | "danger" | "success" | "warning">;
43
+ readonly acceptSeverity: _angular_core.InputSignal<CbConfirmSeverity>;
44
+ /**
45
+ * Muestra las confirmaciones pedidas con `CbConfirmationService`. Sin él, el
46
+ * componente solo responde a `[(visible)]` (así un diálogo declarativo no se
47
+ * abre con las confirmaciones de otra parte de la app).
48
+ */
49
+ readonly service: _angular_core.InputSignalWithTransform<boolean, unknown>;
50
+ /** Con `service`: atiende solo las confirmaciones con este mismo `key` (o sin key si no se indica). */
51
+ readonly key: _angular_core.InputSignal<string | undefined>;
29
52
  readonly accepted: _angular_core.OutputEmitterRef<void>;
30
53
  readonly rejected: _angular_core.OutputEmitterRef<void>;
31
54
  private readonly panel;
@@ -33,6 +56,16 @@ declare class CbConfirmPopup {
33
56
  protected readonly anchored: _angular_core.WritableSignal<boolean>;
34
57
  private overlayRef;
35
58
  private trigger;
59
+ /** Confirmación pedida con `CbConfirmationService` que se está mostrando. */
60
+ private readonly active;
61
+ /** Textos visibles: los de la confirmación del servicio, si la hay; si no, los inputs y el idioma. */
62
+ protected readonly shown: _angular_core.Signal<{
63
+ message: string;
64
+ acceptLabel: string;
65
+ rejectLabel: string;
66
+ acceptSeverity: CbConfirmSeverity;
67
+ }>;
68
+ constructor();
36
69
  private readonly positions;
37
70
  /** Abre la confirmación anclada al elemento que recibió el evento. */
38
71
  confirm(event: Event): void;
@@ -40,9 +73,13 @@ declare class CbConfirmPopup {
40
73
  show(target: HTMLElement): void;
41
74
  protected accept(): void;
42
75
  protected reject(): void;
76
+ /** Cierra y, si venía del servicio, lo libera y ejecuta su callback (que puede pedir otra confirmación). */
77
+ private finish;
43
78
  private close;
79
+ /** Quita el overlay sin devolver el foco. */
80
+ private dispose;
44
81
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<CbConfirmPopup, never>;
45
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<CbConfirmPopup, "cb-confirm-popup", never, { "visible": { "alias": "visible"; "required": false; "isSignal": true; }; "message": { "alias": "message"; "required": false; "isSignal": true; }; "acceptLabel": { "alias": "acceptLabel"; "required": false; "isSignal": true; }; "rejectLabel": { "alias": "rejectLabel"; "required": false; "isSignal": true; }; "acceptSeverity": { "alias": "acceptSeverity"; "required": false; "isSignal": true; }; }, { "visible": "visibleChange"; "accepted": "accepted"; "rejected": "rejected"; }, never, never, true, never>;
82
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<CbConfirmPopup, "cb-confirm-popup", never, { "visible": { "alias": "visible"; "required": false; "isSignal": true; }; "message": { "alias": "message"; "required": false; "isSignal": true; }; "acceptLabel": { "alias": "acceptLabel"; "required": false; "isSignal": true; }; "rejectLabel": { "alias": "rejectLabel"; "required": false; "isSignal": true; }; "acceptSeverity": { "alias": "acceptSeverity"; "required": false; "isSignal": true; }; "service": { "alias": "service"; "required": false; "isSignal": true; }; "key": { "alias": "key"; "required": false; "isSignal": true; }; }, { "visible": "visibleChange"; "accepted": "accepted"; "rejected": "rejected"; }, never, never, true, never>;
46
83
  }
47
84
 
48
85
  export { CbConfirmPopup };
@@ -1,11 +1,16 @@
1
1
  import * as _angular_core from '@angular/core';
2
2
  import * as _caribeng_ui from '@caribeng/ui';
3
+ import { CbMenuCommandEvent } from '@caribeng/ui';
3
4
 
4
5
  interface CbContextMenuItem {
5
6
  label: string;
6
7
  icon?: string;
7
8
  disabled?: boolean;
8
9
  separator?: boolean;
10
+ /** Acción al elegir el item (además del evento de selección), como `command` en PrimeNG. */
11
+ command?: (event: CbMenuCommandEvent<CbContextMenuItem>) => void;
12
+ /** `false` oculta el item. */
13
+ visible?: boolean;
9
14
  }
10
15
  /** Context menu that opens at the pointer position on right click. */
11
16
  declare class CbContextMenu {
@@ -15,6 +20,8 @@ declare class CbContextMenu {
15
20
  private readonly vcr;
16
21
  private readonly destroyRef;
17
22
  readonly items: _angular_core.InputSignal<readonly CbContextMenuItem[]>;
23
+ /** Items sin los de `visible: false`. */
24
+ protected readonly visibleItems: _angular_core.Signal<CbContextMenuItem[]>;
18
25
  readonly ariaLabel: _angular_core.InputSignal<string | undefined>;
19
26
  readonly itemSelect: _angular_core.OutputEmitterRef<CbContextMenuItem>;
20
27
  private readonly content;
@@ -0,0 +1,90 @@
1
+ import * as _angular_core from '@angular/core';
2
+ import * as _caribeng_ui from '@caribeng/ui';
3
+ import { CbSeverity, CbSize } from '@caribeng/ui';
4
+ import { CbButtonVariant } from '@caribeng/ui/button';
5
+
6
+ /**
7
+ * Botón que copia un texto al portapapeles y confirma con un ✓ durante unos
8
+ * segundos. El resultado se anuncia a los lectores de pantalla.
9
+ *
10
+ * @example
11
+ * ```html
12
+ * <span>0012 3456 7890</span> <cb-copy-button value="001234567890" />
13
+ * <cb-copy-button [value]="apiKey" showLabel variant="outlined" />
14
+ * ```
15
+ */
16
+ declare class CbCopyButton {
17
+ /** Textos de interfaz en el idioma activo (`provideCaribeNG({ locale })`). */
18
+ protected readonly t: _angular_core.Signal<_caribeng_ui.CbTranslation>;
19
+ private readonly clipboard;
20
+ private timer;
21
+ /** Texto que se copia. */
22
+ readonly value: _angular_core.InputSignal<string | number | null | undefined>;
23
+ /** Muestra el texto ("Copiar" / "Copiado") junto al icono. */
24
+ readonly showLabel: _angular_core.InputSignalWithTransform<boolean, unknown>;
25
+ /** Texto del botón y nombre accesible. Por defecto, "Copiar" del idioma activo. */
26
+ readonly label: _angular_core.InputSignal<string | undefined>;
27
+ /** Texto tras copiar. Por defecto, "Copiado". */
28
+ readonly copiedLabel: _angular_core.InputSignal<string | undefined>;
29
+ /** Milisegundos que dura la confirmación. */
30
+ readonly timeout: _angular_core.InputSignal<number>;
31
+ readonly variant: _angular_core.InputSignal<CbButtonVariant>;
32
+ readonly severity: _angular_core.InputSignal<CbSeverity>;
33
+ readonly size: _angular_core.InputSignal<CbSize>;
34
+ readonly disabled: _angular_core.InputSignalWithTransform<boolean, unknown>;
35
+ /** Texto copiado. */
36
+ readonly copied: _angular_core.OutputEmitterRef<string>;
37
+ /** El navegador no permitió copiar. */
38
+ readonly copyError: _angular_core.OutputEmitterRef<string>;
39
+ protected readonly state: _angular_core.WritableSignal<"idle" | "copied" | "error">;
40
+ protected readonly buttonLabel: _angular_core.Signal<string>;
41
+ protected readonly visibleLabel: _angular_core.Signal<string>;
42
+ protected readonly announcement: _angular_core.Signal<string>;
43
+ protected readonly iconSize: _angular_core.Signal<18 | 14 | 16>;
44
+ constructor();
45
+ /** Copia el valor y muestra la confirmación. Resuelve `true` si lo consiguió. */
46
+ copy(): Promise<boolean>;
47
+ private clearTimer;
48
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<CbCopyButton, never>;
49
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<CbCopyButton, "cb-copy-button", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "showLabel": { "alias": "showLabel"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "copiedLabel": { "alias": "copiedLabel"; "required": false; "isSignal": true; }; "timeout": { "alias": "timeout"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "severity": { "alias": "severity"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; }, { "copied": "copied"; "copyError": "copyError"; }, never, never, true, never>;
50
+ }
51
+
52
+ /**
53
+ * Copia un texto al portapapeles al pulsar el elemento (botón, enlace, icono…).
54
+ * Para el aviso visual usa `cb-copy-button`, o reacciona a `copied`.
55
+ *
56
+ * @example
57
+ * ```html
58
+ * <button type="button" [cbCopy]="cuenta" (copied)="toast.add({ summary: 'Copiado' })">Copiar</button>
59
+ * ```
60
+ */
61
+ declare class CbCopy {
62
+ private readonly clipboard;
63
+ /** Texto que se copia. */
64
+ readonly cbCopy: _angular_core.InputSignal<string | number | null | undefined>;
65
+ /** Texto copiado. */
66
+ readonly copied: _angular_core.OutputEmitterRef<string>;
67
+ /** El navegador no permitió copiar. */
68
+ readonly copyError: _angular_core.OutputEmitterRef<string>;
69
+ /** Copia el texto. Resuelve `true` si lo consiguió. */
70
+ copy(): Promise<boolean>;
71
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<CbCopy, never>;
72
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<CbCopy, "[cbCopy]", never, { "cbCopy": { "alias": "cbCopy"; "required": false; "isSignal": true; }; }, { "copied": "copied"; "copyError": "copyError"; }, never, never, true, never>;
73
+ }
74
+
75
+ /**
76
+ * Portapapeles de CaribeNG. Usa la API asíncrona del navegador y, si no está
77
+ * disponible (HTTP sin contexto seguro, navegadores antiguos), un textarea
78
+ * temporal con `execCommand('copy')`.
79
+ */
80
+ declare class CbClipboard {
81
+ private readonly doc;
82
+ /** Copia `text`. Resuelve `true` si se copió y `false` si el navegador lo impidió. */
83
+ copy(text: string): Promise<boolean>;
84
+ private copyWithTextarea;
85
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<CbClipboard, never>;
86
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<CbClipboard>;
87
+ }
88
+
89
+ export { CbClipboard, CbCopy, CbCopyButton };
90
+ //# sourceMappingURL=caribeng-ui-copy-button.d.ts.map