@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,244 @@
1
+ import * as _angular_core from '@angular/core';
2
+ import * as _caribeng_ui from '@caribeng/ui';
3
+ import { cbFormat } from '@caribeng/ui';
4
+
5
+ /**
6
+ * Modelo del diagrama de Gantt: fechas, árbol de tareas, grupos calculados,
7
+ * dependencias (fin → inicio) y planificación automática. Funciones puras: el
8
+ * componente las usa y los tests las prueban sin DOM.
9
+ */
10
+ /** Tarea del diagrama. Las fechas son días (`'AAAA-MM-DD'` o `Date`); el fin es inclusivo. */
11
+ interface CbGanttTask {
12
+ readonly id: string;
13
+ readonly name: string;
14
+ readonly start: string | Date;
15
+ readonly end: string | Date;
16
+ /** Avance de 0 a 100. En los grupos se calcula con el de sus tareas. */
17
+ readonly progress?: number;
18
+ /** Tarea que la contiene (grupo). */
19
+ readonly parent?: string | null;
20
+ /** Tareas que deben terminar antes de que esta empiece (fin → inicio). */
21
+ readonly dependencies?: readonly string[];
22
+ /** `milestone` es un hito (un solo día, rombo); `group` agrupa tareas (sus fechas se calculan). */
23
+ readonly type?: 'task' | 'milestone' | 'group';
24
+ /** Color de la barra. */
25
+ readonly color?: string;
26
+ /** Texto de la columna Responsable. */
27
+ readonly assignee?: string;
28
+ }
29
+ /** Escala del diagrama: un día, una semana o un mes por columna. */
30
+ type CbGanttScale = 'day' | 'week' | 'month';
31
+ /** Columnas de la tabla de la izquierda. */
32
+ type CbGanttColumn = 'name' | 'start' | 'end' | 'duration' | 'progress' | 'assignee';
33
+ /** Una tarea cambió (al arrastrar, con el teclado o por la planificación automática). */
34
+ interface CbGanttChange {
35
+ readonly task: CbGanttTask;
36
+ readonly previous: CbGanttTask;
37
+ readonly reason: 'move' | 'resize' | 'progress' | 'schedule';
38
+ }
39
+ /** Dependencia creada o quitada: `to` depende de `from`. */
40
+ interface CbGanttLink {
41
+ readonly from: string;
42
+ readonly to: string;
43
+ }
44
+ /** Tarea con sus fechas ya resueltas (en los grupos, calculadas con sus tareas). */
45
+ interface ResolvedTask {
46
+ readonly task: CbGanttTask;
47
+ readonly start: Date;
48
+ readonly end: Date;
49
+ readonly progress: number;
50
+ readonly level: number;
51
+ readonly isGroup: boolean;
52
+ readonly isMilestone: boolean;
53
+ readonly children: readonly string[];
54
+ }
55
+ /** ¿Se puede crear la dependencia `from` → `to`? (sin repetir, sin ciclos ni grupos que se contienen). */
56
+ declare function canLink(tasks: readonly CbGanttTask[], from: string, to: string): boolean;
57
+ /**
58
+ * Planificación automática: cada tarea empieza como pronto el día siguiente al
59
+ * fin de sus predecesoras; si no, se desplaza conservando su duración. Devuelve
60
+ * las tareas cambiadas (las de grupos se resuelven con sus hijas).
61
+ */
62
+ declare function autoSchedule(tasks: readonly CbGanttTask[]): CbGanttTask[];
63
+
64
+ type DragMode = 'move' | 'start' | 'end' | 'progress' | 'link';
65
+ interface Preview {
66
+ readonly id: string;
67
+ readonly mode: DragMode;
68
+ /** Días desplazados (mover / cambiar inicio o fin). */
69
+ readonly delta: number;
70
+ /** Avance nuevo (al arrastrar el avance). */
71
+ readonly progress: number;
72
+ /** Punto del puntero en el diagrama (al crear una dependencia). */
73
+ readonly point: {
74
+ x: number;
75
+ y: number;
76
+ } | null;
77
+ }
78
+ interface Bar {
79
+ readonly row: ResolvedTask;
80
+ readonly index: number;
81
+ readonly x: number;
82
+ readonly width: number;
83
+ readonly y: number;
84
+ readonly start: Date;
85
+ readonly end: Date;
86
+ readonly progress: number;
87
+ }
88
+ interface Unit {
89
+ readonly key: string;
90
+ readonly label: string;
91
+ readonly x: number;
92
+ readonly width: number;
93
+ readonly weekend?: boolean;
94
+ }
95
+ /**
96
+ * Diagrama de Gantt de CaribeNG: tabla de tareas en árbol (grupos plegables) y
97
+ * barras en el tiempo, con escalas de día, semana y mes.
98
+ *
99
+ * - Arrastra una barra para moverla, sus bordes para cambiar inicio o fin, el
100
+ * tirador inferior para el avance y el punto de la derecha hasta otra tarea
101
+ * para crear una dependencia (fin → inicio).
102
+ * - Con `autoSchedule`, al retrasar una tarea se desplazan las que dependen de ella.
103
+ * - Los grupos abarcan a sus tareas y promedian su avance; los hitos son rombos.
104
+ * - Con el teclado, cada barra es un botón: flechas mueven, Mayús + flechas cambian
105
+ * el fin, Alt + flechas el inicio, + / − el avance, Supr quita sus dependencias
106
+ * y Enter abre la tarea. Cada cambio se anuncia.
107
+ *
108
+ * @example
109
+ * ```html
110
+ * <cb-gantt [(tasks)]="tareas" [(scale)]="escala" (taskChange)="guardar($event)" />
111
+ * ```
112
+ */
113
+ declare class CbGantt {
114
+ /** Textos de interfaz en el idioma activo (`provideCaribeNG({ locale })`). */
115
+ protected readonly t: _angular_core.Signal<_caribeng_ui.CbTranslation>;
116
+ protected readonly fmt: typeof cbFormat;
117
+ private readonly injector;
118
+ private readonly host;
119
+ protected readonly uid: string;
120
+ protected readonly row = 40;
121
+ protected readonly scales: readonly CbGanttScale[];
122
+ /** Tareas (bidireccional: se actualiza al arrastrar, con el teclado y al planificar). */
123
+ readonly tasks: _angular_core.ModelSignal<readonly CbGanttTask[]>;
124
+ /** Escala: un día, una semana o un mes por columna. */
125
+ readonly scale: _angular_core.ModelSignal<CbGanttScale>;
126
+ /** Columnas de la tabla de la izquierda y su orden. */
127
+ readonly columns: _angular_core.InputSignal<readonly CbGanttColumn[]>;
128
+ /** Ancho de la tabla de la izquierda; por defecto, el de sus columnas (como mucho, el 60 % del componente). */
129
+ readonly gridWidth: _angular_core.InputSignal<string>;
130
+ /** Alto del componente (con scroll). */
131
+ readonly height: _angular_core.InputSignal<string>;
132
+ /** Al retrasar una tarea, desplaza las que dependen de ella (fin → inicio). */
133
+ readonly autoSchedule: _angular_core.InputSignalWithTransform<boolean, unknown>;
134
+ /** Sin edición: no se arrastra ni se crean dependencias. */
135
+ readonly readonly: _angular_core.InputSignalWithTransform<boolean, unknown>;
136
+ /** Barra con la escala y el botón Hoy. */
137
+ readonly showToolbar: _angular_core.InputSignalWithTransform<boolean, unknown>;
138
+ /** Texto sin tareas. Por defecto, "Sin datos". */
139
+ readonly emptyMessage: _angular_core.InputSignal<string | undefined>;
140
+ readonly ariaLabel: _angular_core.InputSignal<string>;
141
+ /** Una tarea cambió de fechas o de avance (también las desplazadas por la planificación). */
142
+ readonly taskChange: _angular_core.OutputEmitterRef<CbGanttChange>;
143
+ /** Doble clic o Enter sobre una tarea. */
144
+ readonly taskOpen: _angular_core.OutputEmitterRef<CbGanttTask>;
145
+ /** Dependencia creada (`to` depende de `from`). */
146
+ readonly linkAdd: _angular_core.OutputEmitterRef<CbGanttLink>;
147
+ /** Dependencia quitada. */
148
+ readonly linkRemove: _angular_core.OutputEmitterRef<CbGanttLink>;
149
+ protected readonly collapsed: _angular_core.WritableSignal<ReadonlySet<string>>;
150
+ protected readonly selected: _angular_core.WritableSignal<string | null>;
151
+ protected readonly selectedLink: _angular_core.WritableSignal<{
152
+ key: string;
153
+ from: string;
154
+ to: string;
155
+ fromName: string;
156
+ toName: string;
157
+ mid: {
158
+ x: number;
159
+ y: number;
160
+ };
161
+ } | null>;
162
+ protected readonly preview: _angular_core.WritableSignal<Preview | null>;
163
+ protected readonly announcement: _angular_core.WritableSignal<string>;
164
+ private drag;
165
+ private readonly scroller;
166
+ private readonly chart;
167
+ private readonly resolved;
168
+ /** Ancho de la tabla: el indicado o el nombre (14rem) más el de cada columna. */
169
+ protected readonly gridSize: _angular_core.Signal<string>;
170
+ protected readonly rows: _angular_core.Signal<ResolvedTask[]>;
171
+ protected readonly dayWidth: _angular_core.Signal<number>;
172
+ /** Primer y último día del diagrama (con margen, alineados a la unidad de la escala). */
173
+ protected readonly range: _angular_core.Signal<{
174
+ start: Date;
175
+ end: Date;
176
+ days: number;
177
+ }>;
178
+ protected readonly chartWidth: _angular_core.Signal<number>;
179
+ private x;
180
+ /** Unidades de la escala (fila inferior de la cabecera y columnas del fondo). */
181
+ protected readonly units: _angular_core.Signal<Unit[]>;
182
+ /** Fila superior de la cabecera: meses (día y semana) o años (mes). */
183
+ protected readonly topUnits: _angular_core.Signal<Unit[]>;
184
+ protected readonly todayX: _angular_core.Signal<number | null>;
185
+ /** Geometría de las barras (con la vista previa del arrastre). */
186
+ protected readonly bars: _angular_core.Signal<Bar[]>;
187
+ /** Flechas de dependencias entre barras visibles. */
188
+ protected readonly links: _angular_core.Signal<{
189
+ key: string;
190
+ from: string;
191
+ to: string;
192
+ fromName: string;
193
+ toName: string;
194
+ path: string;
195
+ mid: {
196
+ x: number;
197
+ y: number;
198
+ };
199
+ }[]>;
200
+ /** Línea provisional al crear una dependencia. */
201
+ protected readonly linkLine: _angular_core.Signal<string | null>;
202
+ protected scaleLabel(s: CbGanttScale): string;
203
+ protected columnLabel(col: CbGanttColumn): string;
204
+ private dateText;
205
+ protected cellText(r: ResolvedTask, col: CbGanttColumn): string;
206
+ protected barLabel(b: Bar): string;
207
+ protected toggle(id: string): void;
208
+ /** Selecciona la tarea, lleva su barra a la vista y le da el foco. */
209
+ focusBar(id: string): void;
210
+ /** Desplaza el diagrama hasta hoy (centrado en la parte visible). */
211
+ scrollToToday(smooth?: boolean): void;
212
+ constructor();
213
+ private barEl;
214
+ /** Aplica un cambio a una tarea (y a las desplazadas por la planificación) y lo emite. */
215
+ private apply;
216
+ private commit;
217
+ private resolveFresh;
218
+ /** Crea la dependencia `from` → `to` (si no forma un ciclo). */
219
+ addLink(from: string, to: string): boolean;
220
+ /** Quita la dependencia `from` → `to`. */
221
+ removeLink(from: string, to: string): void;
222
+ protected selectLink(link: {
223
+ key: string;
224
+ from: string;
225
+ to: string;
226
+ fromName: string;
227
+ toName: string;
228
+ mid: {
229
+ x: number;
230
+ y: number;
231
+ };
232
+ }): void;
233
+ protected onPointerDown(event: PointerEvent, bar: Bar): void;
234
+ protected onPointerMove(event: PointerEvent): void;
235
+ protected onPointerUp(event: PointerEvent): void;
236
+ protected cancelDrag(): void;
237
+ protected onBarKeydown(event: KeyboardEvent, r: ResolvedTask): void;
238
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<CbGantt, never>;
239
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<CbGantt, "cb-gantt", never, { "tasks": { "alias": "tasks"; "required": false; "isSignal": true; }; "scale": { "alias": "scale"; "required": false; "isSignal": true; }; "columns": { "alias": "columns"; "required": false; "isSignal": true; }; "gridWidth": { "alias": "gridWidth"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; "autoSchedule": { "alias": "autoSchedule"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "showToolbar": { "alias": "showToolbar"; "required": false; "isSignal": true; }; "emptyMessage": { "alias": "emptyMessage"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; }, { "tasks": "tasksChange"; "scale": "scaleChange"; "taskChange": "taskChange"; "taskOpen": "taskOpen"; "linkAdd": "linkAdd"; "linkRemove": "linkRemove"; }, never, never, true, never>;
240
+ }
241
+
242
+ export { CbGantt, autoSchedule as cbGanttAutoSchedule, canLink as cbGanttCanLink };
243
+ export type { CbGanttChange, CbGanttColumn, CbGanttLink, CbGanttScale, CbGanttTask };
244
+ //# sourceMappingURL=caribeng-ui-gantt.d.ts.map
@@ -2,7 +2,7 @@ import * as _angular_core from '@angular/core';
2
2
  import * as _caribeng_ui from '@caribeng/ui';
3
3
 
4
4
  /**
5
- * Header de Caribe Design: cabecera de pantalla con título, subtítulo opcional,
5
+ * Header: cabecera de pantalla con título, subtítulo opcional,
6
6
  * botón de retroceso y una zona de acciones proyectadas.
7
7
  *
8
8
  * @example
@@ -26,4 +26,4 @@ declare class CbHeader {
26
26
  }
27
27
 
28
28
  export { CbHeader };
29
- //# sourceMappingURL=caribeng-ui-caribe-header.d.ts.map
29
+ //# sourceMappingURL=caribeng-ui-header.d.ts.map
@@ -2,7 +2,7 @@ import * as _angular_core from '@angular/core';
2
2
  import * as _caribeng_ui from '@caribeng/ui';
3
3
 
4
4
  /**
5
- * Icon-button de Caribe Design: botón circular con un único icono. Útil para
5
+ * Icon-button: botón circular con un único icono. Útil para
6
6
  * acciones compactas en barras y cabeceras.
7
7
  *
8
8
  * @example
@@ -28,4 +28,4 @@ declare class CbIconButton {
28
28
  }
29
29
 
30
30
  export { CbIconButton };
31
- //# sourceMappingURL=caribeng-ui-caribe-icon-button.d.ts.map
31
+ //# sourceMappingURL=caribeng-ui-icon-button.d.ts.map
@@ -12,4 +12,4 @@ declare class CbIllustration {
12
12
  }
13
13
 
14
14
  export { CbIllustration };
15
- //# sourceMappingURL=caribeng-ui-caribe-illustration.d.ts.map
15
+ //# sourceMappingURL=caribeng-ui-illustration.d.ts.map
@@ -0,0 +1,169 @@
1
+ import * as _angular_core from '@angular/core';
2
+ import * as _caribeng_ui from '@caribeng/ui';
3
+
4
+ /** Recuadro de recorte en fracciones de la imagen (0–1). */
5
+ interface CbCropRect {
6
+ x: number;
7
+ y: number;
8
+ w: number;
9
+ h: number;
10
+ }
11
+ /** Opciones de la imagen recortada. */
12
+ interface CbCropOutput {
13
+ /** `image/png` (por defecto, o el tipo de la original si es JPEG), `image/jpeg` o `image/webp`. */
14
+ readonly type?: 'image/png' | 'image/jpeg' | 'image/webp';
15
+ /** Calidad de JPEG y WebP (0–1). */
16
+ readonly quality?: number;
17
+ /** Tamaño máximo en píxeles: el recorte se reduce (nunca se amplía) para no pasar de él. */
18
+ readonly maxWidth?: number;
19
+ readonly maxHeight?: number;
20
+ /** Recorte circular (PNG con fondo transparente), p. ej. para fotos de perfil. */
21
+ readonly circle?: boolean;
22
+ }
23
+ /** Mantiene el recuadro dentro de la imagen y con un tamaño mínimo. */
24
+ declare function clampRect(rect: CbCropRect): CbCropRect;
25
+ /**
26
+ * Ajusta el recuadro a una proporción (ancho / alto en píxeles), lo más grande
27
+ * posible dentro del actual y centrado en él. `ratio` null = libre.
28
+ */
29
+ declare function fitRatio(rect: CbCropRect, ratio: number | null, imageWidth: number, imageHeight: number): CbCropRect;
30
+ /** Recuadro inicial: el mayor posible con la proporción, centrado. */
31
+ declare function initialRect(ratio: number | null, imageWidth: number, imageHeight: number): CbCropRect;
32
+ /**
33
+ * Redimensiona arrastrando una esquina (`nw`, `ne`, `sw`, `se`) un desplazamiento
34
+ * (dx, dy) en fracciones; con proporción, el alto sigue al ancho.
35
+ */
36
+ declare function resizeRect(rect: CbCropRect, corner: 'nw' | 'ne' | 'sw' | 'se', dx: number, dy: number, ratio: number | null, imageWidth: number, imageHeight: number): CbCropRect;
37
+ /** Tamaño en píxeles del recorte, reducido para no pasar de `maxWidth` × `maxHeight`. */
38
+ declare function outputSize(rect: CbCropRect, imageWidth: number, imageHeight: number, output?: CbCropOutput): {
39
+ w: number;
40
+ h: number;
41
+ };
42
+ /**
43
+ * Estilo de una vista previa del recorte hecha con CSS (sin canvas): la imagen como fondo,
44
+ * ampliada y desplazada para que solo se vea el recuadro.
45
+ */
46
+ declare function previewStyle(src: string, rect: CbCropRect): Record<string, string>;
47
+ /**
48
+ * Recorta los píxeles de la imagen. Las imágenes de otro dominio necesitan que
49
+ * su servidor permita CORS; si no, el navegador bloquea la lectura y se rechaza.
50
+ */
51
+ declare function cropImage(src: string, rect: CbCropRect, doc: Document, output?: CbCropOutput): Promise<Blob>;
52
+ /** Gira la imagen un cuarto de vuelta (`1` a la derecha, `-1` a la izquierda) y la devuelve como data URL PNG. */
53
+ declare function rotateImage(src: string, turns: 1 | -1, doc: Document): Promise<string>;
54
+ /** Lee un archivo como data URL. */
55
+ declare function readFileAsDataUrl(file: Blob): Promise<string>;
56
+
57
+ /** Proporción que se ofrece en la barra (`value` null = libre). */
58
+ interface CbCropRatio {
59
+ readonly label: string;
60
+ readonly value: number | null;
61
+ }
62
+ /** Resultado del recorte. */
63
+ interface CbCropResult {
64
+ readonly blob: Blob;
65
+ readonly dataUrl: string;
66
+ readonly rect: CbCropRect;
67
+ readonly width: number;
68
+ readonly height: number;
69
+ }
70
+ type Corner = 'nw' | 'ne' | 'sw' | 'se';
71
+ /**
72
+ * Recortador de imagen de CaribeNG: recuadro que se mueve y redimensiona con ratón, dedo o
73
+ * teclado, proporciones fijas o libre, forma circular para fotos de perfil, giro, vista previa
74
+ * y selección de archivo (botón o arrastrar). Devuelve el recorte como `Blob` y data URL.
75
+ *
76
+ * @example
77
+ * ```html
78
+ * <cb-image-cropper [src]="foto" shape="circle" preview (cropped)="guardar($event.blob)" />
79
+ * ```
80
+ */
81
+ declare class CbImageCropper {
82
+ protected readonly t: _angular_core.Signal<_caribeng_ui.CbTranslation>;
83
+ private readonly document;
84
+ private readonly injector;
85
+ private readonly destroyRef;
86
+ protected readonly helpId: string;
87
+ /** Imagen a recortar (URL o data URL). Las de otro dominio necesitan CORS para poder recortarse. */
88
+ readonly src: _angular_core.InputSignal<string>;
89
+ /** Recuadro en fracciones de la imagen (0–1). Se inicia al cargar la imagen si no se indica. */
90
+ readonly rect: _angular_core.ModelSignal<CbCropRect | null>;
91
+ /** Proporción ancho / alto (`null` = libre). Con `shape="circle"` siempre es 1. */
92
+ readonly ratio: _angular_core.ModelSignal<number | null>;
93
+ /** Proporciones de la barra (vacío para ocultarla). */
94
+ readonly ratios: _angular_core.InputSignal<readonly CbCropRatio[]>;
95
+ /** Recorte rectangular o circular (PNG con fondo transparente, para fotos de perfil). */
96
+ readonly shape: _angular_core.InputSignal<"rect" | "circle">;
97
+ /** Formato, calidad y tamaño máximo del recorte. */
98
+ readonly output: _angular_core.InputSignal<CbCropOutput>;
99
+ /** Botones de girar 90°. */
100
+ readonly rotatable: _angular_core.InputSignalWithTransform<boolean, unknown>;
101
+ /** Vista previa del recorte. */
102
+ readonly preview: _angular_core.InputSignalWithTransform<boolean, unknown>;
103
+ /** Botón para elegir otra imagen (y arrastrar archivos al área vacía). */
104
+ readonly chooser: _angular_core.InputSignalWithTransform<boolean, unknown>;
105
+ /** Botón Recortar (sin él, recorta llamando a `crop()`). */
106
+ readonly showApply: _angular_core.InputSignalWithTransform<boolean, unknown>;
107
+ readonly accept: _angular_core.InputSignal<string>;
108
+ /** Alto máximo de la imagen en pantalla. */
109
+ readonly maxHeight: _angular_core.InputSignal<string>;
110
+ readonly emptyMessage: _angular_core.InputSignal<string | undefined>;
111
+ /** Recorte hecho con el botón Recortar o Enter. */
112
+ readonly cropped: _angular_core.OutputEmitterRef<CbCropResult>;
113
+ /** Imagen elegida por el usuario (archivo). */
114
+ readonly fileSelect: _angular_core.OutputEmitterRef<File>;
115
+ /** No se pudo cargar o recortar la imagen. */
116
+ readonly cropError: _angular_core.OutputEmitterRef<unknown>;
117
+ protected readonly corners: readonly Corner[];
118
+ /** Imagen en pantalla: `src`, el archivo elegido o la imagen girada. */
119
+ protected readonly displaySrc: _angular_core.WritableSignal<string>;
120
+ protected readonly natural: _angular_core.WritableSignal<{
121
+ w: number;
122
+ h: number;
123
+ } | null>;
124
+ protected readonly busy: _angular_core.WritableSignal<boolean>;
125
+ protected readonly error: _angular_core.WritableSignal<string>;
126
+ protected readonly dragOver: _angular_core.WritableSignal<boolean>;
127
+ protected readonly announcement: _angular_core.WritableSignal<string>;
128
+ private readonly effRatio;
129
+ /** El recuadro vigente (`rect` es null hasta que carga la imagen). */
130
+ protected readonly current: _angular_core.Signal<CbCropRect>;
131
+ protected readonly valueText: _angular_core.Signal<string>;
132
+ protected readonly previewCss: _angular_core.Signal<{
133
+ 'aspect-ratio': string;
134
+ }>;
135
+ private readonly stage;
136
+ private readonly box;
137
+ private readonly fileInput;
138
+ constructor();
139
+ /** Recorta y devuelve el resultado (sin emitir `cropped`). */
140
+ crop(): Promise<CbCropResult>;
141
+ /** Abre el selector de archivos. */
142
+ choose(): void;
143
+ /** Proporción fija (ancho / alto) o libre (`null`). */
144
+ setRatio(ratio: number | null): void;
145
+ protected onLoad(event: Event): void;
146
+ protected onImageError(): void;
147
+ protected apply(): Promise<void>;
148
+ protected rotate(turns: 1 | -1): Promise<void>;
149
+ protected onFile(event: Event): Promise<void>;
150
+ protected onDragOver(event: DragEvent): void;
151
+ protected onDrop(event: DragEvent): Promise<void>;
152
+ /** Mueve (`corner` null) o redimensiona el recuadro arrastrando. */
153
+ protected startDrag(event: PointerEvent, corner: Corner | null): void;
154
+ /** Flechas: mover (2 %, 10 % con Ctrl); Mayús + flechas: tamaño desde la esquina inferior derecha; Enter: recortar. */
155
+ protected onKeydown(event: KeyboardEvent): void;
156
+ private load;
157
+ private useFile;
158
+ /** El recuadro aparece cuando carga la imagen: entonces recibe el foco. */
159
+ private focusWhenReady;
160
+ /** Un espacio duro alterno hace que el mismo texto cuente como cambio y se vuelva a anunciar. */
161
+ private announce;
162
+ private announceFlip;
163
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<CbImageCropper, never>;
164
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<CbImageCropper, "cb-image-cropper", never, { "src": { "alias": "src"; "required": false; "isSignal": true; }; "rect": { "alias": "rect"; "required": false; "isSignal": true; }; "ratio": { "alias": "ratio"; "required": false; "isSignal": true; }; "ratios": { "alias": "ratios"; "required": false; "isSignal": true; }; "shape": { "alias": "shape"; "required": false; "isSignal": true; }; "output": { "alias": "output"; "required": false; "isSignal": true; }; "rotatable": { "alias": "rotatable"; "required": false; "isSignal": true; }; "preview": { "alias": "preview"; "required": false; "isSignal": true; }; "chooser": { "alias": "chooser"; "required": false; "isSignal": true; }; "showApply": { "alias": "showApply"; "required": false; "isSignal": true; }; "accept": { "alias": "accept"; "required": false; "isSignal": true; }; "maxHeight": { "alias": "maxHeight"; "required": false; "isSignal": true; }; "emptyMessage": { "alias": "emptyMessage"; "required": false; "isSignal": true; }; }, { "rect": "rectChange"; "ratio": "ratioChange"; "cropped": "cropped"; "fileSelect": "fileSelect"; "cropError": "cropError"; }, never, never, true, never>;
165
+ }
166
+
167
+ export { CbImageCropper, clampRect, cropImage, fitRatio, initialRect, outputSize, previewStyle, readFileAsDataUrl, resizeRect, rotateImage };
168
+ export type { CbCropOutput, CbCropRatio, CbCropRect, CbCropResult };
169
+ //# sourceMappingURL=caribeng-ui-image-cropper.d.ts.map
@@ -0,0 +1,149 @@
1
+ import * as _angular_core from '@angular/core';
2
+ import * as _caribeng_ui from '@caribeng/ui';
3
+ import { cbFormat } from '@caribeng/ui';
4
+ import { CbDataGridColumn } from '@caribeng/ui/datagrid';
5
+ import { CbXlsxReadSheet } from '@caribeng/ui/xlsx';
6
+
7
+ /** Tipo de un campo a importar (cómo se interpreta el texto). */
8
+ type CbImportFieldType = 'text' | 'number' | 'date' | 'boolean';
9
+ /** Campo de destino de la importación. */
10
+ interface CbImportField {
11
+ readonly key: string;
12
+ readonly label: string;
13
+ readonly type?: CbImportFieldType;
14
+ readonly required?: boolean;
15
+ /** Otros nombres de columna con los que se asigna solo (p. ej. `['nit', 'documento']`). */
16
+ readonly aliases?: readonly string[];
17
+ /** Validación propia: mensaje de error o `null`. */
18
+ readonly validate?: (value: unknown, row: Record<string, unknown>) => string | null;
19
+ }
20
+ /** Error de una celda importada. */
21
+ interface CbImportError {
22
+ /** Fila de datos (1 = la primera después del encabezado). */
23
+ readonly row: number;
24
+ readonly field: string;
25
+ readonly message: string;
26
+ }
27
+ /** Resultado de la importación. */
28
+ interface CbImportResult<T = Record<string, unknown>> {
29
+ readonly rows: T[];
30
+ readonly errors: CbImportError[];
31
+ /** Filas descartadas por tener errores. */
32
+ readonly skipped: number;
33
+ }
34
+ type CbImportCell = string | number | boolean | null;
35
+ interface ImportTexts {
36
+ readonly required: string;
37
+ readonly number: string;
38
+ readonly date: string;
39
+ readonly boolean: string;
40
+ }
41
+ /** Separador más probable de un texto delimitado (tabulador, punto y coma o coma). */
42
+ declare function detectDelimiter(text: string): string;
43
+ /** CSV / TSV a filas (comillas dobles, saltos de línea dentro de comillas, BOM). */
44
+ declare function parseDelimited(text: string, delimiter?: string): string[][];
45
+ /**
46
+ * Importe a partir de texto: `$ 1.234,56`, `1,234.56`, `(1.234)` (negativo),
47
+ * `-1234`, `1.234.567`. Con un solo separador repetido, o seguido de 3 cifras,
48
+ * se toma como de miles.
49
+ */
50
+ declare function parseAmount(value: CbImportCell): number | null | undefined;
51
+ /** Fecha a partir de texto (`AAAA-MM-DD`, `DD/MM/AAAA`, `DD-MM-AAAA`) o de un número de serie de Excel. */
52
+ declare function parseDate(value: CbImportCell): Date | null | undefined;
53
+ declare function parseBoolean(value: CbImportCell): boolean | null | undefined;
54
+ /** Asigna cada campo a la columna cuyo encabezado coincide con su clave, etiqueta o alias. */
55
+ declare function autoMap(headers: readonly string[], fields: readonly CbImportField[]): Record<string, number | null>;
56
+ /** Convierte las filas con la asignación de columnas: valores con tipo y errores por celda. */
57
+ declare function convertRows(rows: readonly (readonly CbImportCell[])[], mapping: Readonly<Record<string, number | null>>, fields: readonly CbImportField[], texts: ImportTexts): {
58
+ rows: Record<string, unknown>[];
59
+ errors: CbImportError[];
60
+ };
61
+
62
+ type Step = 'file' | 'map' | 'review';
63
+ /**
64
+ * Asistente de importación de CaribeNG: archivo (CSV, TSV, Excel o datos pegados),
65
+ * asignación de columnas y revisión con validación fila a fila antes de importar.
66
+ *
67
+ * - Lee .xlsx en el navegador (varias hojas), CSV con `,` o `;` y lo copiado de una hoja de cálculo.
68
+ * - Asigna sola cada columna cuyo encabezado coincide con el campo (o sus `aliases`).
69
+ * - Interpreta importes (`$ 1.234,56`, `(1.234)`), fechas (`DD/MM/AAAA`, serie de Excel)
70
+ * y casillas (Sí / No); marca cada celda con error y deja importar solo las filas válidas.
71
+ *
72
+ * @example
73
+ * ```html
74
+ * <cb-import-wizard [fields]="campos" (import)="guardar($event.rows)" />
75
+ * ```
76
+ */
77
+ declare class CbImportWizard {
78
+ protected readonly t: _angular_core.Signal<_caribeng_ui.CbTranslation>;
79
+ protected readonly fmt: typeof cbFormat;
80
+ protected readonly uid: string;
81
+ protected readonly steps: Step[];
82
+ protected readonly accept = ".csv,.tsv,.txt,.xlsx,text/csv,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
83
+ /** Campos de destino (clave, etiqueta, tipo, obligatorio, alias y validación). */
84
+ readonly fields: _angular_core.InputSignal<readonly CbImportField[]>;
85
+ /** Importa también las filas con errores (marcadas en `errors`). */
86
+ readonly allowInvalid: _angular_core.InputSignalWithTransform<boolean, unknown>;
87
+ /** Filas importadas (con tipo) y errores encontrados. */
88
+ readonly import: _angular_core.OutputEmitterRef<CbImportResult<Record<string, unknown>>>;
89
+ protected readonly step: _angular_core.WritableSignal<Step>;
90
+ protected readonly stepIndex: _angular_core.Signal<number>;
91
+ protected readonly dragging: _angular_core.WritableSignal<boolean>;
92
+ protected readonly pasteOpen: _angular_core.WritableSignal<boolean>;
93
+ protected readonly fileName: _angular_core.WritableSignal<string>;
94
+ protected readonly error: _angular_core.WritableSignal<string>;
95
+ protected readonly sheets: _angular_core.WritableSignal<CbXlsxReadSheet[]>;
96
+ protected readonly sheetIndex: _angular_core.WritableSignal<number>;
97
+ private readonly text;
98
+ protected readonly hasHeader: _angular_core.WritableSignal<boolean>;
99
+ protected readonly mapping: _angular_core.WritableSignal<Record<string, number | null>>;
100
+ protected readonly onlyValid: _angular_core.WritableSignal<boolean>;
101
+ /** Filas leídas (de la hoja elegida o del texto). */
102
+ protected readonly raw: _angular_core.Signal<CbImportCell[][]>;
103
+ protected readonly headers: _angular_core.Signal<string[]>;
104
+ protected readonly dataRows: _angular_core.Signal<CbImportCell[][]>;
105
+ protected readonly sheetOptions: _angular_core.Signal<{
106
+ label: string;
107
+ value: number;
108
+ }[]>;
109
+ protected readonly columnOptions: _angular_core.Signal<{
110
+ label: string;
111
+ value: number;
112
+ }[]>;
113
+ protected readonly missing: _angular_core.Signal<string[]>;
114
+ private readonly texts;
115
+ private readonly converted;
116
+ protected readonly invalidRows: _angular_core.Signal<Set<number>>;
117
+ protected readonly validCount: _angular_core.Signal<number>;
118
+ private readonly errorIndex;
119
+ protected readonly previewRows: _angular_core.Signal<Record<string, unknown>[]>;
120
+ protected readonly previewColumns: _angular_core.Signal<CbDataGridColumn<Record<string, unknown>>[]>;
121
+ protected readonly importable: _angular_core.Signal<number>;
122
+ protected stepLabel(step: Step): string;
123
+ protected columnName(i: number): string;
124
+ protected example(key: string): string;
125
+ private plain;
126
+ protected onDrop(event: DragEvent): void;
127
+ protected onFile(event: Event): void;
128
+ protected onPaste(event: Event): void;
129
+ /** Carga un archivo (.xlsx, .csv, .tsv, .txt). */
130
+ load(file: File): Promise<void>;
131
+ /** Carga texto delimitado (CSV, TSV o lo pegado de una hoja de cálculo). */
132
+ loadText(text: string): void;
133
+ protected setHeader(value: boolean): void;
134
+ protected setMapping(key: string, column: number): void;
135
+ private remap;
136
+ protected canNext(): boolean;
137
+ protected next(): void;
138
+ protected back(): void;
139
+ protected finish(): void;
140
+ /** Vuelve al primer paso sin datos. */
141
+ reset(): void;
142
+ private focusHeading;
143
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<CbImportWizard, never>;
144
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<CbImportWizard, "cb-import-wizard", never, { "fields": { "alias": "fields"; "required": false; "isSignal": true; }; "allowInvalid": { "alias": "allowInvalid"; "required": false; "isSignal": true; }; }, { "import": "import"; }, never, never, true, never>;
145
+ }
146
+
147
+ export { CbImportWizard, autoMap, convertRows, detectDelimiter, parseAmount, parseBoolean, parseDate, parseDelimited };
148
+ export type { CbImportError, CbImportField, CbImportFieldType, CbImportResult };
149
+ //# sourceMappingURL=caribeng-ui-import-wizard.d.ts.map