@lucca-front/ng 22.0.0-rc.2 → 22.0.0-rc.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (324) hide show
  1. package/fesm2022/lucca-front-ng-a11y.mjs +125 -8
  2. package/fesm2022/lucca-front-ng-a11y.mjs.map +1 -1
  3. package/fesm2022/lucca-front-ng-activity-feed.mjs +74 -27
  4. package/fesm2022/lucca-front-ng-activity-feed.mjs.map +1 -1
  5. package/fesm2022/lucca-front-ng-api.mjs +116 -78
  6. package/fesm2022/lucca-front-ng-api.mjs.map +1 -1
  7. package/fesm2022/lucca-front-ng-app-layout.mjs +4 -4
  8. package/fesm2022/lucca-front-ng-app-layout.mjs.map +1 -1
  9. package/fesm2022/lucca-front-ng-box.mjs +44 -6
  10. package/fesm2022/lucca-front-ng-box.mjs.map +1 -1
  11. package/fesm2022/lucca-front-ng-breadcrumbs.mjs +15 -9
  12. package/fesm2022/lucca-front-ng-breadcrumbs.mjs.map +1 -1
  13. package/fesm2022/lucca-front-ng-bubble-icon.mjs +28 -13
  14. package/fesm2022/lucca-front-ng-bubble-icon.mjs.map +1 -1
  15. package/fesm2022/lucca-front-ng-bubble-illustration.mjs +20 -10
  16. package/fesm2022/lucca-front-ng-bubble-illustration.mjs.map +1 -1
  17. package/fesm2022/lucca-front-ng-callout.mjs +105 -63
  18. package/fesm2022/lucca-front-ng-callout.mjs.map +1 -1
  19. package/fesm2022/lucca-front-ng-chip.mjs +33 -13
  20. package/fesm2022/lucca-front-ng-chip.mjs.map +1 -1
  21. package/fesm2022/lucca-front-ng-clear.mjs +17 -8
  22. package/fesm2022/lucca-front-ng-clear.mjs.map +1 -1
  23. package/fesm2022/lucca-front-ng-code.mjs +4 -4
  24. package/fesm2022/lucca-front-ng-code.mjs.map +1 -1
  25. package/fesm2022/lucca-front-ng-color.mjs +16 -8
  26. package/fesm2022/lucca-front-ng-color.mjs.map +1 -1
  27. package/fesm2022/lucca-front-ng-comment.mjs +48 -27
  28. package/fesm2022/lucca-front-ng-comment.mjs.map +1 -1
  29. package/fesm2022/lucca-front-ng-container.mjs +13 -6
  30. package/fesm2022/lucca-front-ng-container.mjs.map +1 -1
  31. package/fesm2022/lucca-front-ng-core-select-api.mjs +70 -24
  32. package/fesm2022/lucca-front-ng-core-select-api.mjs.map +1 -1
  33. package/fesm2022/lucca-front-ng-core-select-department.mjs +31 -18
  34. package/fesm2022/lucca-front-ng-core-select-department.mjs.map +1 -1
  35. package/fesm2022/lucca-front-ng-core-select-establishment.mjs +21 -15
  36. package/fesm2022/lucca-front-ng-core-select-establishment.mjs.map +1 -1
  37. package/fesm2022/lucca-front-ng-core-select-job-qualification.mjs +12 -9
  38. package/fesm2022/lucca-front-ng-core-select-job-qualification.mjs.map +1 -1
  39. package/fesm2022/lucca-front-ng-core-select-legal-units.mjs +168 -0
  40. package/fesm2022/lucca-front-ng-core-select-legal-units.mjs.map +1 -0
  41. package/fesm2022/lucca-front-ng-core-select-occupation-category.mjs +9 -6
  42. package/fesm2022/lucca-front-ng-core-select-occupation-category.mjs.map +1 -1
  43. package/fesm2022/lucca-front-ng-core-select-user.mjs +65 -41
  44. package/fesm2022/lucca-front-ng-core-select-user.mjs.map +1 -1
  45. package/fesm2022/lucca-front-ng-core-select.mjs +355 -236
  46. package/fesm2022/lucca-front-ng-core-select.mjs.map +1 -1
  47. package/fesm2022/lucca-front-ng-core.mjs +86 -29
  48. package/fesm2022/lucca-front-ng-core.mjs.map +1 -1
  49. package/fesm2022/lucca-front-ng-data-table.mjs +143 -81
  50. package/fesm2022/lucca-front-ng-data-table.mjs.map +1 -1
  51. package/fesm2022/lucca-front-ng-date.mjs +91 -62
  52. package/fesm2022/lucca-front-ng-date.mjs.map +1 -1
  53. package/fesm2022/lucca-front-ng-date2.mjs +375 -161
  54. package/fesm2022/lucca-front-ng-date2.mjs.map +1 -1
  55. package/fesm2022/lucca-front-ng-department.mjs +31 -27
  56. package/fesm2022/lucca-front-ng-department.mjs.map +1 -1
  57. package/fesm2022/lucca-front-ng-dialog.mjs +71 -51
  58. package/fesm2022/lucca-front-ng-dialog.mjs.map +1 -1
  59. package/fesm2022/lucca-front-ng-divider.mjs +16 -8
  60. package/fesm2022/lucca-front-ng-divider.mjs.map +1 -1
  61. package/fesm2022/lucca-front-ng-dropdown.mjs +42 -41
  62. package/fesm2022/lucca-front-ng-dropdown.mjs.map +1 -1
  63. package/fesm2022/lucca-front-ng-empty-state.mjs +56 -30
  64. package/fesm2022/lucca-front-ng-empty-state.mjs.map +1 -1
  65. package/fesm2022/lucca-front-ng-error-page.mjs +15 -7
  66. package/fesm2022/lucca-front-ng-error-page.mjs.map +1 -1
  67. package/fesm2022/lucca-front-ng-establishment.mjs +57 -45
  68. package/fesm2022/lucca-front-ng-establishment.mjs.map +1 -1
  69. package/fesm2022/lucca-front-ng-fancy-box.mjs +23 -11
  70. package/fesm2022/lucca-front-ng-fancy-box.mjs.map +1 -1
  71. package/fesm2022/lucca-front-ng-file-upload.mjs +135 -69
  72. package/fesm2022/lucca-front-ng-file-upload.mjs.map +1 -1
  73. package/fesm2022/lucca-front-ng-filter-pills.mjs +83 -52
  74. package/fesm2022/lucca-front-ng-filter-pills.mjs.map +1 -1
  75. package/fesm2022/lucca-front-ng-footer.mjs +17 -8
  76. package/fesm2022/lucca-front-ng-footer.mjs.map +1 -1
  77. package/fesm2022/lucca-front-ng-form-field.mjs +124 -71
  78. package/fesm2022/lucca-front-ng-form-field.mjs.map +1 -1
  79. package/fesm2022/lucca-front-ng-form-header.mjs +12 -6
  80. package/fesm2022/lucca-front-ng-form-header.mjs.map +1 -1
  81. package/fesm2022/lucca-front-ng-form-label.mjs +65 -42
  82. package/fesm2022/lucca-front-ng-form-label.mjs.map +1 -1
  83. package/fesm2022/lucca-front-ng-form.mjs +9 -6
  84. package/fesm2022/lucca-front-ng-form.mjs.map +1 -1
  85. package/fesm2022/lucca-front-ng-formly.mjs +58 -58
  86. package/fesm2022/lucca-front-ng-formly.mjs.map +1 -1
  87. package/fesm2022/lucca-front-ng-forms-phone-number-input.mjs +58 -40
  88. package/fesm2022/lucca-front-ng-forms-phone-number-input.mjs.map +1 -1
  89. package/fesm2022/lucca-front-ng-forms-rich-text-input-formatters-html.mjs +3 -3
  90. package/fesm2022/lucca-front-ng-forms-rich-text-input-formatters-html.mjs.map +1 -1
  91. package/fesm2022/lucca-front-ng-forms-rich-text-input-formatters-markdown.mjs +8 -9
  92. package/fesm2022/lucca-front-ng-forms-rich-text-input-formatters-markdown.mjs.map +1 -1
  93. package/fesm2022/lucca-front-ng-forms-rich-text-input-formatters-plain-text.mjs +3 -3
  94. package/fesm2022/lucca-front-ng-forms-rich-text-input-formatters-plain-text.mjs.map +1 -1
  95. package/fesm2022/lucca-front-ng-forms-rich-text-input.mjs +263 -105
  96. package/fesm2022/lucca-front-ng-forms-rich-text-input.mjs.map +1 -1
  97. package/fesm2022/lucca-front-ng-forms.mjs +370 -154
  98. package/fesm2022/lucca-front-ng-forms.mjs.map +1 -1
  99. package/fesm2022/lucca-front-ng-gauge.mjs +23 -13
  100. package/fesm2022/lucca-front-ng-gauge.mjs.map +1 -1
  101. package/fesm2022/lucca-front-ng-grid.mjs +39 -18
  102. package/fesm2022/lucca-front-ng-grid.mjs.map +1 -1
  103. package/fesm2022/lucca-front-ng-highlight-data.mjs +50 -15
  104. package/fesm2022/lucca-front-ng-highlight-data.mjs.map +1 -1
  105. package/fesm2022/lucca-front-ng-highlight-text.mjs +28 -0
  106. package/fesm2022/lucca-front-ng-highlight-text.mjs.map +1 -0
  107. package/fesm2022/lucca-front-ng-horizontal-navigation.mjs +174 -17
  108. package/fesm2022/lucca-front-ng-horizontal-navigation.mjs.map +1 -1
  109. package/fesm2022/lucca-front-ng-impersonation.mjs +124 -0
  110. package/fesm2022/lucca-front-ng-impersonation.mjs.map +1 -0
  111. package/fesm2022/lucca-front-ng-index-table.mjs +82 -54
  112. package/fesm2022/lucca-front-ng-index-table.mjs.map +1 -1
  113. package/fesm2022/lucca-front-ng-inline-message.mjs +17 -7
  114. package/fesm2022/lucca-front-ng-inline-message.mjs.map +1 -1
  115. package/fesm2022/lucca-front-ng-input.mjs +27 -24
  116. package/fesm2022/lucca-front-ng-input.mjs.map +1 -1
  117. package/fesm2022/lucca-front-ng-link.mjs +54 -23
  118. package/fesm2022/lucca-front-ng-link.mjs.map +1 -1
  119. package/fesm2022/lucca-front-ng-listbox.mjs +31 -18
  120. package/fesm2022/lucca-front-ng-listbox.mjs.map +1 -1
  121. package/fesm2022/lucca-front-ng-listing.mjs +16 -12
  122. package/fesm2022/lucca-front-ng-listing.mjs.map +1 -1
  123. package/fesm2022/lucca-front-ng-loading.mjs +13 -6
  124. package/fesm2022/lucca-front-ng-loading.mjs.map +1 -1
  125. package/fesm2022/lucca-front-ng-main-layout.mjs +6 -6
  126. package/fesm2022/lucca-front-ng-main-layout.mjs.map +1 -1
  127. package/fesm2022/lucca-front-ng-mobile-push.mjs +15 -5
  128. package/fesm2022/lucca-front-ng-mobile-push.mjs.map +1 -1
  129. package/fesm2022/lucca-front-ng-modal.mjs +32 -26
  130. package/fesm2022/lucca-front-ng-modal.mjs.map +1 -1
  131. package/fesm2022/lucca-front-ng-multi-select.mjs +247 -123
  132. package/fesm2022/lucca-front-ng-multi-select.mjs.map +1 -1
  133. package/fesm2022/lucca-front-ng-new-badge.mjs +5 -4
  134. package/fesm2022/lucca-front-ng-new-badge.mjs.map +1 -1
  135. package/fesm2022/lucca-front-ng-number-format.mjs +14 -10
  136. package/fesm2022/lucca-front-ng-number-format.mjs.map +1 -1
  137. package/fesm2022/lucca-front-ng-number.mjs +7 -7
  138. package/fesm2022/lucca-front-ng-number.mjs.map +1 -1
  139. package/fesm2022/lucca-front-ng-numeric-badge.mjs +24 -12
  140. package/fesm2022/lucca-front-ng-numeric-badge.mjs.map +1 -1
  141. package/fesm2022/lucca-front-ng-option.mjs +160 -140
  142. package/fesm2022/lucca-front-ng-option.mjs.map +1 -1
  143. package/fesm2022/lucca-front-ng-page-header.mjs +12 -8
  144. package/fesm2022/lucca-front-ng-page-header.mjs.map +1 -1
  145. package/fesm2022/lucca-front-ng-pagination.mjs +26 -10
  146. package/fesm2022/lucca-front-ng-pagination.mjs.map +1 -1
  147. package/fesm2022/lucca-front-ng-plg-push.mjs +14 -8
  148. package/fesm2022/lucca-front-ng-plg-push.mjs.map +1 -1
  149. package/fesm2022/lucca-front-ng-popover.mjs +23 -20
  150. package/fesm2022/lucca-front-ng-popover.mjs.map +1 -1
  151. package/fesm2022/lucca-front-ng-popover2.mjs +107 -35
  152. package/fesm2022/lucca-front-ng-popover2.mjs.map +1 -1
  153. package/fesm2022/lucca-front-ng-popup.mjs +10 -10
  154. package/fesm2022/lucca-front-ng-popup.mjs.map +1 -1
  155. package/fesm2022/lucca-front-ng-progress-bar.mjs +13 -6
  156. package/fesm2022/lucca-front-ng-progress-bar.mjs.map +1 -1
  157. package/fesm2022/lucca-front-ng-progress-stepper.mjs +22 -12
  158. package/fesm2022/lucca-front-ng-progress-stepper.mjs.map +1 -1
  159. package/fesm2022/lucca-front-ng-read-more.mjs +38 -17
  160. package/fesm2022/lucca-front-ng-read-more.mjs.map +1 -1
  161. package/fesm2022/lucca-front-ng-resource-card.mjs +26 -17
  162. package/fesm2022/lucca-front-ng-resource-card.mjs.map +1 -1
  163. package/fesm2022/lucca-front-ng-safe-content.mjs +10 -10
  164. package/fesm2022/lucca-front-ng-safe-content.mjs.map +1 -1
  165. package/fesm2022/lucca-front-ng-scroll-box.mjs +8 -6
  166. package/fesm2022/lucca-front-ng-scroll-box.mjs.map +1 -1
  167. package/fesm2022/lucca-front-ng-scroll.mjs +14 -10
  168. package/fesm2022/lucca-front-ng-scroll.mjs.map +1 -1
  169. package/fesm2022/lucca-front-ng-segmented-control-tabs.mjs +26 -14
  170. package/fesm2022/lucca-front-ng-segmented-control-tabs.mjs.map +1 -1
  171. package/fesm2022/lucca-front-ng-segmented-control.mjs +12 -10
  172. package/fesm2022/lucca-front-ng-segmented-control.mjs.map +1 -1
  173. package/fesm2022/lucca-front-ng-select.mjs +30 -23
  174. package/fesm2022/lucca-front-ng-select.mjs.map +1 -1
  175. package/fesm2022/lucca-front-ng-sidepanel.mjs +7 -7
  176. package/fesm2022/lucca-front-ng-sidepanel.mjs.map +1 -1
  177. package/fesm2022/lucca-front-ng-simple-select.mjs +66 -50
  178. package/fesm2022/lucca-front-ng-simple-select.mjs.map +1 -1
  179. package/fesm2022/lucca-front-ng-skeleton.mjs +131 -62
  180. package/fesm2022/lucca-front-ng-skeleton.mjs.map +1 -1
  181. package/fesm2022/lucca-front-ng-software-icon-wrapper.mjs +16 -11
  182. package/fesm2022/lucca-front-ng-software-icon-wrapper.mjs.map +1 -1
  183. package/fesm2022/lucca-front-ng-software-icon.mjs +34 -25
  184. package/fesm2022/lucca-front-ng-software-icon.mjs.map +1 -1
  185. package/fesm2022/lucca-front-ng-sortable-list.mjs +14 -11
  186. package/fesm2022/lucca-front-ng-sortable-list.mjs.map +1 -1
  187. package/fesm2022/lucca-front-ng-status-badge.mjs +15 -7
  188. package/fesm2022/lucca-front-ng-status-badge.mjs.map +1 -1
  189. package/fesm2022/lucca-front-ng-table-of-content.mjs +8 -7
  190. package/fesm2022/lucca-front-ng-table-of-content.mjs.map +1 -1
  191. package/fesm2022/lucca-front-ng-tag.mjs +22 -11
  192. package/fesm2022/lucca-front-ng-tag.mjs.map +1 -1
  193. package/fesm2022/lucca-front-ng-text-flow.mjs +4 -4
  194. package/fesm2022/lucca-front-ng-text-flow.mjs.map +1 -1
  195. package/fesm2022/lucca-front-ng-time.mjs +416 -80
  196. package/fesm2022/lucca-front-ng-time.mjs.map +1 -1
  197. package/fesm2022/lucca-front-ng-title.mjs +34 -15
  198. package/fesm2022/lucca-front-ng-title.mjs.map +1 -1
  199. package/fesm2022/lucca-front-ng-toast.mjs +20 -14
  200. package/fesm2022/lucca-front-ng-toast.mjs.map +1 -1
  201. package/fesm2022/lucca-front-ng-tooltip.mjs +60 -30
  202. package/fesm2022/lucca-front-ng-tooltip.mjs.map +1 -1
  203. package/fesm2022/lucca-front-ng-tree-select.mjs +20 -13
  204. package/fesm2022/lucca-front-ng-tree-select.mjs.map +1 -1
  205. package/fesm2022/lucca-front-ng-user-popover.mjs +28 -23
  206. package/fesm2022/lucca-front-ng-user-popover.mjs.map +1 -1
  207. package/fesm2022/lucca-front-ng-user.mjs +172 -113
  208. package/fesm2022/lucca-front-ng-user.mjs.map +1 -1
  209. package/fesm2022/lucca-front-ng-vertical-navigation.mjs +34 -24
  210. package/fesm2022/lucca-front-ng-vertical-navigation.mjs.map +1 -1
  211. package/package.json +20 -8
  212. package/schematics/action-icon/index.js +34 -1
  213. package/schematics/action-icon/migration.spec.js +36 -3
  214. package/schematics/alignment-utilities/migration.spec.js +36 -3
  215. package/schematics/cdn-urls/migration.spec.js +36 -3
  216. package/schematics/class-prefix/migration.spec.js +36 -3
  217. package/schematics/collection.json +10 -0
  218. package/schematics/color-text/migration.spec.js +36 -3
  219. package/schematics/component-path/migration.spec.js +36 -3
  220. package/schematics/deprecated-resolver/index.js +73 -0
  221. package/schematics/deprecated-resolver/migration.spec.js +58 -0
  222. package/schematics/deprecated-resolver/schema.json +23 -0
  223. package/schematics/empty-state-title/migration.spec.js +35 -2
  224. package/schematics/lib/css-mapper.js +44 -6
  225. package/schematics/lib/deprecated-mapper.js +109 -0
  226. package/schematics/lib/index.js +1 -0
  227. package/schematics/lib/lf-schematic-context.js +34 -1
  228. package/schematics/lib/local-deps/package-lock.json +17 -79
  229. package/schematics/lib/local-deps/package.json +1 -1
  230. package/schematics/lib/local-deps/postcss.js +34 -1
  231. package/schematics/lib/migration-test.js +5 -2
  232. package/schematics/lib/scss-ast.js +53 -0
  233. package/schematics/lu-button/migration.spec.js +34 -1
  234. package/schematics/lu-container/migration.spec.js +34 -1
  235. package/schematics/lu-grid/index.js +23 -0
  236. package/schematics/lu-grid/migration.js +237 -0
  237. package/schematics/lu-grid/migration.spec.js +56 -0
  238. package/schematics/lu-grid/migration.utils.js +60 -0
  239. package/schematics/lu-grid/schema.json +23 -0
  240. package/schematics/lu-icon/migration.spec.js +34 -1
  241. package/schematics/lu-loading/migration.spec.js +34 -1
  242. package/schematics/lu-select/migration.spec.js +34 -1
  243. package/schematics/lu-text-input/migration.spec.js +34 -1
  244. package/schematics/new-icons/index.js +35 -2
  245. package/schematics/new-icons/migration.spec.js +36 -3
  246. package/schematics/package.json +3 -0
  247. package/schematics/palettes/index.js +17 -2
  248. package/schematics/palettes/migration.spec.js +36 -3
  249. package/schematics/tokens-radius/migration.spec.js +36 -3
  250. package/schematics/tokens-spacing/migration.spec.js +36 -3
  251. package/schematics/tokens-typo/migration.spec.js +36 -3
  252. package/src/components/_picker.scss +6 -1
  253. package/src/components/_popover.scss +1 -2
  254. package/src/definitions/option/_option-item.scss +6 -25
  255. package/types/lucca-front-ng-a11y.d.ts +30 -2
  256. package/types/lucca-front-ng-activity-feed.d.ts +18 -3
  257. package/types/lucca-front-ng-api.d.ts +14 -8
  258. package/types/lucca-front-ng-box.d.ts +6 -1
  259. package/types/lucca-front-ng-bubble-icon.d.ts +12 -3
  260. package/types/lucca-front-ng-bubble-illustration.d.ts +11 -5
  261. package/types/lucca-front-ng-callout.d.ts +24 -16
  262. package/types/lucca-front-ng-chip.d.ts +10 -1
  263. package/types/lucca-front-ng-clear.d.ts +9 -3
  264. package/types/lucca-front-ng-color.d.ts +8 -1
  265. package/types/lucca-front-ng-comment.d.ts +8 -1
  266. package/types/lucca-front-ng-container.d.ts +8 -1
  267. package/types/lucca-front-ng-core-select-api.d.ts +13 -1
  268. package/types/lucca-front-ng-core-select-department.d.ts +3 -2
  269. package/types/lucca-front-ng-core-select-legal-units.d.ts +56 -0
  270. package/types/lucca-front-ng-core-select-user.d.ts +2 -1
  271. package/types/lucca-front-ng-core-select.d.ts +34 -15
  272. package/types/lucca-front-ng-core.d.ts +31 -8
  273. package/types/lucca-front-ng-data-table.d.ts +18 -3
  274. package/types/lucca-front-ng-date2.d.ts +28 -9
  275. package/types/lucca-front-ng-dialog.d.ts +13 -2
  276. package/types/lucca-front-ng-divider.d.ts +8 -1
  277. package/types/lucca-front-ng-empty-state.d.ts +16 -8
  278. package/types/lucca-front-ng-error-page.d.ts +9 -4
  279. package/types/lucca-front-ng-fancy-box.d.ts +8 -1
  280. package/types/lucca-front-ng-file-upload.d.ts +23 -11
  281. package/types/lucca-front-ng-filter-pills.d.ts +0 -1
  282. package/types/lucca-front-ng-footer.d.ts +11 -2
  283. package/types/lucca-front-ng-form-field.d.ts +34 -17
  284. package/types/lucca-front-ng-form-header.d.ts +9 -2
  285. package/types/lucca-front-ng-form-label.d.ts +13 -5
  286. package/types/lucca-front-ng-form.d.ts +2 -0
  287. package/types/lucca-front-ng-forms-phone-number-input.d.ts +19 -12
  288. package/types/lucca-front-ng-forms-rich-text-input.d.ts +17 -2
  289. package/types/lucca-front-ng-forms.d.ts +90 -22
  290. package/types/lucca-front-ng-gauge.d.ts +1 -1
  291. package/types/lucca-front-ng-grid.d.ts +23 -8
  292. package/types/lucca-front-ng-highlight-data.d.ts +16 -1
  293. package/types/lucca-front-ng-highlight-text.d.ts +12 -0
  294. package/types/lucca-front-ng-horizontal-navigation.d.ts +40 -3
  295. package/types/lucca-front-ng-impersonation.d.ts +33 -0
  296. package/types/lucca-front-ng-index-table.d.ts +19 -4
  297. package/types/lucca-front-ng-inline-message.d.ts +11 -4
  298. package/types/lucca-front-ng-input.d.ts +2 -1
  299. package/types/lucca-front-ng-link.d.ts +13 -3
  300. package/types/lucca-front-ng-listbox.d.ts +8 -1
  301. package/types/lucca-front-ng-listing.d.ts +1 -1
  302. package/types/lucca-front-ng-loading.d.ts +8 -1
  303. package/types/lucca-front-ng-modal.d.ts +1 -1
  304. package/types/lucca-front-ng-multi-select.d.ts +3 -0
  305. package/types/lucca-front-ng-numeric-badge.d.ts +9 -2
  306. package/types/lucca-front-ng-pagination.d.ts +8 -1
  307. package/types/lucca-front-ng-popover2.d.ts +23 -2
  308. package/types/lucca-front-ng-progress-bar.d.ts +8 -1
  309. package/types/lucca-front-ng-progress-stepper.d.ts +8 -1
  310. package/types/lucca-front-ng-read-more.d.ts +8 -1
  311. package/types/lucca-front-ng-resource-card.d.ts +10 -1
  312. package/types/lucca-front-ng-segmented-control-tabs.d.ts +2 -0
  313. package/types/lucca-front-ng-segmented-control.d.ts +4 -2
  314. package/types/lucca-front-ng-simple-select.d.ts +16 -17
  315. package/types/lucca-front-ng-skeleton.d.ts +51 -19
  316. package/types/lucca-front-ng-software-icon.d.ts +11 -6
  317. package/types/lucca-front-ng-sortable-list.d.ts +2 -1
  318. package/types/lucca-front-ng-status-badge.d.ts +9 -2
  319. package/types/lucca-front-ng-tag.d.ts +9 -2
  320. package/types/lucca-front-ng-time.d.ts +89 -8
  321. package/types/lucca-front-ng-title.d.ts +6 -1
  322. package/types/lucca-front-ng-tooltip.d.ts +7 -2
  323. package/types/lucca-front-ng-user.d.ts +19 -5
  324. package/types/lucca-front-ng-vertical-navigation.d.ts +1 -1
@@ -43,10 +43,10 @@ function provideLuRichTextHTMLFormatter() {
43
43
  }
44
44
 
45
45
  class HtmlFormatterDirective {
46
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: HtmlFormatterDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
47
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.14", type: HtmlFormatterDirective, isStandalone: true, selector: "lu-rich-text-input[luWithHtmlFormatter]", providers: [provideLuRichTextHTMLFormatter()], ngImport: i0 }); }
46
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: HtmlFormatterDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
47
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.7", type: HtmlFormatterDirective, isStandalone: true, selector: "lu-rich-text-input[luWithHtmlFormatter]", providers: [provideLuRichTextHTMLFormatter()], ngImport: i0 }); }
48
48
  }
49
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: HtmlFormatterDirective, decorators: [{
49
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: HtmlFormatterDirective, decorators: [{
50
50
  type: Directive,
51
51
  args: [{
52
52
  selector: 'lu-rich-text-input[luWithHtmlFormatter]',
@@ -1 +1 @@
1
- {"version":3,"file":"lucca-front-ng-forms-rich-text-input-formatters-html.mjs","sources":["../../../packages/ng/forms/rich-text-input/formatters/html/html-formatter.ts","../../../packages/ng/forms/rich-text-input/formatters/html/html-formatter.directive.ts","../../../packages/ng/forms/rich-text-input/formatters/html/lucca-front-ng-forms-rich-text-input-formatters-html.ts"],"sourcesContent":["import { Provider } from '@angular/core';\nimport { $generateHtmlFromNodes, $generateNodesFromDOM } from '@lexical/html';\nimport { registerRichText } from '@lexical/rich-text';\nimport { RICH_TEXT_FORMATTER, RichTextFormatter } from '@lucca-front/ng/forms/rich-text-input';\nimport DOMPurify from 'isomorphic-dompurify';\nimport { $getRoot, $insertNodes, LexicalEditor } from 'lexical';\n\nexport class HtmlFormatter extends RichTextFormatter {\n\toverride registerTextPlugin(editor: LexicalEditor) {\n\t\treturn registerRichText(editor);\n\t}\n\n\toverride parse(editor: LexicalEditor, htmlString?: string | null): void {\n\t\tif (htmlString) {\n\t\t\tconst parser = new DOMParser();\n\t\t\tconst dom = parser.parseFromString(\n\t\t\t\tDOMPurify.sanitize(htmlString, {\n\t\t\t\t\tFORBID_ATTR: ['style', 'class'],\n\t\t\t\t}),\n\t\t\t\t'text/html',\n\t\t\t);\n\t\t\teditor.update(() => {\n\t\t\t\t// Once you have the DOM instance it's easy to generate LexicalNodes.\n\t\t\t\tconst nodes = $generateNodesFromDOM(editor, dom);\n\n\t\t\t\t// Select the root\n\t\t\t\t$getRoot().clear();\n\t\t\t\t$getRoot().select();\n\n\t\t\t\t// Insert them at a selection.\n\t\t\t\t$insertNodes(nodes);\n\t\t\t});\n\t\t}\n\t}\n\n\toverride format(editor: LexicalEditor): string {\n\t\tlet result = '';\n\t\teditor.getEditorState().read(() => (result = $generateHtmlFromNodes(editor)));\n\t\treturn DOMPurify.sanitize(result, {\n\t\t\tFORBID_ATTR: ['style', 'class'],\n\t\t});\n\t}\n}\n\nexport function provideLuRichTextHTMLFormatter(): Provider {\n\treturn {\n\t\tprovide: RICH_TEXT_FORMATTER,\n\t\tuseFactory: () => new HtmlFormatter(),\n\t};\n}\n","import { Directive } from '@angular/core';\nimport { provideLuRichTextHTMLFormatter } from './html-formatter';\n\n@Directive({\n\tselector: 'lu-rich-text-input[luWithHtmlFormatter]',\n\tproviders: [provideLuRichTextHTMLFormatter()],\n})\nexport class HtmlFormatterDirective {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;;;AAOM,MAAO,aAAc,SAAQ,iBAAiB,CAAA;AAC1C,IAAA,kBAAkB,CAAC,MAAqB,EAAA;AAChD,QAAA,OAAO,gBAAgB,CAAC,MAAM,CAAC;IAChC;IAES,KAAK,CAAC,MAAqB,EAAE,UAA0B,EAAA;QAC/D,IAAI,UAAU,EAAE;AACf,YAAA,MAAM,MAAM,GAAG,IAAI,SAAS,EAAE;YAC9B,MAAM,GAAG,GAAG,MAAM,CAAC,eAAe,CACjC,SAAS,CAAC,QAAQ,CAAC,UAAU,EAAE;AAC9B,gBAAA,WAAW,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC;aAC/B,CAAC,EACF,WAAW,CACX;AACD,YAAA,MAAM,CAAC,MAAM,CAAC,MAAK;;gBAElB,MAAM,KAAK,GAAG,qBAAqB,CAAC,MAAM,EAAE,GAAG,CAAC;;AAGhD,gBAAA,QAAQ,EAAE,CAAC,KAAK,EAAE;AAClB,gBAAA,QAAQ,EAAE,CAAC,MAAM,EAAE;;gBAGnB,YAAY,CAAC,KAAK,CAAC;AACpB,YAAA,CAAC,CAAC;QACH;IACD;AAES,IAAA,MAAM,CAAC,MAAqB,EAAA;QACpC,IAAI,MAAM,GAAG,EAAE;AACf,QAAA,MAAM,CAAC,cAAc,EAAE,CAAC,IAAI,CAAC,OAAO,MAAM,GAAG,sBAAsB,CAAC,MAAM,CAAC,CAAC,CAAC;AAC7E,QAAA,OAAO,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE;AACjC,YAAA,WAAW,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC;AAC/B,SAAA,CAAC;IACH;AACA;SAEe,8BAA8B,GAAA;IAC7C,OAAO;AACN,QAAA,OAAO,EAAE,mBAAmB;AAC5B,QAAA,UAAU,EAAE,MAAM,IAAI,aAAa,EAAE;KACrC;AACF;;MC1Ca,sBAAsB,CAAA;+GAAtB,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAtB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,sBAAsB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,yCAAA,EAAA,SAAA,EAFvB,CAAC,8BAA8B,EAAE,CAAC,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAEjC,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBAJlC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,QAAQ,EAAE,yCAAyC;AACnD,oBAAA,SAAS,EAAE,CAAC,8BAA8B,EAAE,CAAC;AAC7C,iBAAA;;;ACND;;AAEG;;;;"}
1
+ {"version":3,"file":"lucca-front-ng-forms-rich-text-input-formatters-html.mjs","sources":["../../../packages/ng/forms/rich-text-input/formatters/html/html-formatter.ts","../../../packages/ng/forms/rich-text-input/formatters/html/html-formatter.directive.ts","../../../packages/ng/forms/rich-text-input/formatters/html/lucca-front-ng-forms-rich-text-input-formatters-html.ts"],"sourcesContent":["import { Provider } from '@angular/core';\nimport { $generateHtmlFromNodes, $generateNodesFromDOM } from '@lexical/html';\nimport { registerRichText } from '@lexical/rich-text';\nimport { RICH_TEXT_FORMATTER, RichTextFormatter } from '@lucca-front/ng/forms/rich-text-input';\nimport DOMPurify from 'isomorphic-dompurify';\nimport { $getRoot, $insertNodes, LexicalEditor } from 'lexical';\n\nexport class HtmlFormatter extends RichTextFormatter {\n\toverride registerTextPlugin(editor: LexicalEditor) {\n\t\treturn registerRichText(editor);\n\t}\n\n\toverride parse(editor: LexicalEditor, htmlString?: string | null): void {\n\t\tif (htmlString) {\n\t\t\tconst parser = new DOMParser();\n\t\t\tconst dom = parser.parseFromString(\n\t\t\t\tDOMPurify.sanitize(htmlString, {\n\t\t\t\t\tFORBID_ATTR: ['style', 'class'],\n\t\t\t\t}),\n\t\t\t\t'text/html',\n\t\t\t);\n\t\t\teditor.update(() => {\n\t\t\t\t// Once you have the DOM instance it's easy to generate LexicalNodes.\n\t\t\t\tconst nodes = $generateNodesFromDOM(editor, dom);\n\n\t\t\t\t// Select the root\n\t\t\t\t$getRoot().clear();\n\t\t\t\t$getRoot().select();\n\n\t\t\t\t// Insert them at a selection.\n\t\t\t\t$insertNodes(nodes);\n\t\t\t});\n\t\t}\n\t}\n\n\toverride format(editor: LexicalEditor): string {\n\t\tlet result = '';\n\t\teditor.getEditorState().read(() => (result = $generateHtmlFromNodes(editor)));\n\t\treturn DOMPurify.sanitize(result, {\n\t\t\tFORBID_ATTR: ['style', 'class'],\n\t\t});\n\t}\n}\n\nexport function provideLuRichTextHTMLFormatter(): Provider {\n\treturn {\n\t\tprovide: RICH_TEXT_FORMATTER,\n\t\tuseFactory: () => new HtmlFormatter(),\n\t};\n}\n","import { Directive } from '@angular/core';\nimport { provideLuRichTextHTMLFormatter } from './html-formatter';\n\n@Directive({\n\tselector: 'lu-rich-text-input[luWithHtmlFormatter]',\n\tproviders: [provideLuRichTextHTMLFormatter()],\n})\nexport class HtmlFormatterDirective {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;;;AAOM,MAAO,aAAc,SAAQ,iBAAiB,CAAA;AAC1C,IAAA,kBAAkB,CAAC,MAAqB,EAAA;AAChD,QAAA,OAAO,gBAAgB,CAAC,MAAM,CAAC;IAChC;IAES,KAAK,CAAC,MAAqB,EAAE,UAA0B,EAAA;QAC/D,IAAI,UAAU,EAAE;AACf,YAAA,MAAM,MAAM,GAAG,IAAI,SAAS,EAAE;YAC9B,MAAM,GAAG,GAAG,MAAM,CAAC,eAAe,CACjC,SAAS,CAAC,QAAQ,CAAC,UAAU,EAAE;AAC9B,gBAAA,WAAW,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC;aAC/B,CAAC,EACF,WAAW,CACX;AACD,YAAA,MAAM,CAAC,MAAM,CAAC,MAAK;;gBAElB,MAAM,KAAK,GAAG,qBAAqB,CAAC,MAAM,EAAE,GAAG,CAAC;;AAGhD,gBAAA,QAAQ,EAAE,CAAC,KAAK,EAAE;AAClB,gBAAA,QAAQ,EAAE,CAAC,MAAM,EAAE;;gBAGnB,YAAY,CAAC,KAAK,CAAC;AACpB,YAAA,CAAC,CAAC;QACH;IACD;AAES,IAAA,MAAM,CAAC,MAAqB,EAAA;QACpC,IAAI,MAAM,GAAG,EAAE;AACf,QAAA,MAAM,CAAC,cAAc,EAAE,CAAC,IAAI,CAAC,OAAO,MAAM,GAAG,sBAAsB,CAAC,MAAM,CAAC,CAAC,CAAC;AAC7E,QAAA,OAAO,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE;AACjC,YAAA,WAAW,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC;AAC/B,SAAA,CAAC;IACH;AACA;SAEe,8BAA8B,GAAA;IAC7C,OAAO;AACN,QAAA,OAAO,EAAE,mBAAmB;AAC5B,QAAA,UAAU,EAAE,MAAM,IAAI,aAAa,EAAE;KACrC;AACF;;MC1Ca,sBAAsB,CAAA;8GAAtB,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAtB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,sBAAsB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,yCAAA,EAAA,SAAA,EAFvB,CAAC,8BAA8B,EAAE,CAAC,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAEjC,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBAJlC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,QAAQ,EAAE,yCAAyC;AACnD,oBAAA,SAAS,EAAE,CAAC,8BAA8B,EAAE,CAAC;AAC7C,iBAAA;;;ACND;;AAEG;;;;"}
@@ -2,7 +2,6 @@ import { UNORDERED_LIST, HEADING, ORDERED_LIST, BOLD_ITALIC_STAR, BOLD_ITALIC_UN
2
2
  import { registerRichText } from '@lexical/rich-text';
3
3
  import { mergeRegister } from '@lexical/utils';
4
4
  import { RichTextFormatter, RICH_TEXT_FORMATTER, $createTagNode, TagNode } from '@lucca-front/ng/forms/rich-text-input';
5
- import DOMPurify from 'isomorphic-dompurify';
6
5
  import * as i0 from '@angular/core';
7
6
  import { Directive } from '@angular/core';
8
7
 
@@ -33,13 +32,13 @@ class MarkdownFormatter extends RichTextFormatter {
33
32
  }
34
33
  parse(editor, markdown) {
35
34
  editor.update(() => {
36
- $convertFromMarkdownString(DOMPurify.sanitize(markdown ?? ''), this.#transformers, undefined, true);
35
+ $convertFromMarkdownString(markdown ?? '', this.#transformers, undefined, true);
37
36
  });
38
37
  }
39
38
  format(editor) {
40
39
  let result = '';
41
40
  editor.getEditorState().read(() => (result = $convertToMarkdownString(this.#transformers, undefined, true)));
42
- return DOMPurify.sanitize(result);
41
+ return result;
43
42
  }
44
43
  }
45
44
  function provideLuRichTextMarkdownFormatter(transformers) {
@@ -71,10 +70,10 @@ const TAGS = {
71
70
  };
72
71
 
73
72
  class MarkdownFormatterDirective {
74
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: MarkdownFormatterDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
75
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.14", type: MarkdownFormatterDirective, isStandalone: true, selector: "lu-rich-text-input[luWithMarkdownFormatter]", providers: [provideLuRichTextMarkdownFormatter()], ngImport: i0 }); }
73
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: MarkdownFormatterDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
74
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.7", type: MarkdownFormatterDirective, isStandalone: true, selector: "lu-rich-text-input[luWithMarkdownFormatter]", providers: [provideLuRichTextMarkdownFormatter()], ngImport: i0 }); }
76
75
  }
77
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: MarkdownFormatterDirective, decorators: [{
76
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: MarkdownFormatterDirective, decorators: [{
78
77
  type: Directive,
79
78
  args: [{
80
79
  selector: 'lu-rich-text-input[luWithMarkdownFormatter]',
@@ -82,10 +81,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImpo
82
81
  }]
83
82
  }] });
84
83
  class MarkdownFormatterWithTagsDirective {
85
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: MarkdownFormatterWithTagsDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
86
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.14", type: MarkdownFormatterWithTagsDirective, isStandalone: true, selector: "lu-rich-text-input[luWithMarkdownTagsFormatter]", providers: [provideLuRichTextMarkdownFormatter([...DEFAULT_MARKDOWN_TRANSFORMERS, TAGS])], ngImport: i0 }); }
84
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: MarkdownFormatterWithTagsDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
85
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.7", type: MarkdownFormatterWithTagsDirective, isStandalone: true, selector: "lu-rich-text-input[luWithMarkdownTagsFormatter]", providers: [provideLuRichTextMarkdownFormatter([...DEFAULT_MARKDOWN_TRANSFORMERS, TAGS])], ngImport: i0 }); }
87
86
  }
88
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: MarkdownFormatterWithTagsDirective, decorators: [{
87
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: MarkdownFormatterWithTagsDirective, decorators: [{
89
88
  type: Directive,
90
89
  args: [{
91
90
  selector: 'lu-rich-text-input[luWithMarkdownTagsFormatter]',
@@ -1 +1 @@
1
- {"version":3,"file":"lucca-front-ng-forms-rich-text-input-formatters-markdown.mjs","sources":["../../../packages/ng/forms/rich-text-input/formatters/markdown/markdown-formatter.ts","../../../packages/ng/forms/rich-text-input/formatters/markdown/transformers/tag.transformers.ts","../../../packages/ng/forms/rich-text-input/formatters/markdown/markdown-formatter.directive.ts","../../../packages/ng/forms/rich-text-input/formatters/markdown/lucca-front-ng-forms-rich-text-input-formatters-markdown.ts"],"sourcesContent":["import { Provider } from '@angular/core';\nimport {\n\t$convertFromMarkdownString,\n\t$convertToMarkdownString,\n\tBOLD_ITALIC_STAR,\n\tBOLD_ITALIC_UNDERSCORE,\n\tBOLD_STAR,\n\tBOLD_UNDERSCORE,\n\tHEADING,\n\tINLINE_CODE,\n\tITALIC_STAR,\n\tITALIC_UNDERSCORE,\n\tLINK,\n\tORDERED_LIST,\n\tregisterMarkdownShortcuts,\n\tSTRIKETHROUGH,\n\tTransformer,\n\tUNORDERED_LIST,\n} from '@lexical/markdown';\nimport { registerRichText } from '@lexical/rich-text';\nimport { mergeRegister } from '@lexical/utils';\nimport { RICH_TEXT_FORMATTER, RichTextFormatter } from '@lucca-front/ng/forms/rich-text-input';\nimport DOMPurify from 'isomorphic-dompurify';\nimport { LexicalEditor } from 'lexical';\n\nexport const DEFAULT_MARKDOWN_TRANSFORMERS: Transformer[] = [\n\tUNORDERED_LIST,\n\tHEADING,\n\tORDERED_LIST,\n\tBOLD_ITALIC_STAR,\n\tBOLD_ITALIC_UNDERSCORE,\n\tBOLD_STAR,\n\tBOLD_UNDERSCORE,\n\tINLINE_CODE,\n\tITALIC_STAR,\n\tITALIC_UNDERSCORE,\n\tSTRIKETHROUGH,\n\tLINK,\n];\n\nexport class MarkdownFormatter extends RichTextFormatter {\n\t#transformers: Transformer[] = DEFAULT_MARKDOWN_TRANSFORMERS;\n\n\tconstructor(transformers?: Transformer[]) {\n\t\tsuper();\n\t\tif (transformers) {\n\t\t\tthis.#transformers = transformers;\n\t\t}\n\t}\n\n\toverride registerTextPlugin(editor: LexicalEditor): () => void {\n\t\treturn mergeRegister(registerMarkdownShortcuts(editor, this.#transformers), registerRichText(editor));\n\t}\n\n\toverride parse(editor: LexicalEditor, markdown?: string | null): void {\n\t\teditor.update(() => {\n\t\t\t$convertFromMarkdownString(DOMPurify.sanitize(markdown ?? ''), this.#transformers, undefined, true);\n\t\t});\n\t}\n\n\toverride format(editor: LexicalEditor): string {\n\t\tlet result = '';\n\t\teditor.getEditorState().read(() => (result = $convertToMarkdownString(this.#transformers, undefined, true)));\n\t\treturn DOMPurify.sanitize(result);\n\t}\n}\n\nexport function provideLuRichTextMarkdownFormatter(transformers?: Transformer[]): Provider {\n\treturn {\n\t\tprovide: RICH_TEXT_FORMATTER,\n\t\tuseFactory: () => new MarkdownFormatter(transformers),\n\t};\n}\n","import { TextMatchTransformer } from '@lexical/markdown';\nimport { $createTagNode, TagNode } from '@lucca-front/ng/forms/rich-text-input';\n\n/**\n * Transformer for tag nodes\n * It will match the following pattern `{{Tag}}` and create a TagNode (using `replace` function).\n * It will export the tag node to markdown (as `{{Tag}}`) using the `export` function.\n *\n * @docs https://github.com/facebook/lexical/tree/main/packages/lexical-markdown#transformers\n */\nexport const TAGS: TextMatchTransformer = {\n\tdependencies: [TagNode],\n\texport: (node) => (node instanceof TagNode ? `{{${node.getTagKey()}}}` : null),\n\timportRegExp: /{{(\\w+)}}/,\n\tregExp: /{{(\\w+)}}/,\n\treplace: (textNode, match) => {\n\t\tif (match[1]) {\n\t\t\ttextNode.replace($createTagNode(match[1].trim()));\n\t\t}\n\t},\n\ttype: 'text-match',\n\ttrigger: '{{',\n};\n","import { Directive } from '@angular/core';\nimport { DEFAULT_MARKDOWN_TRANSFORMERS, provideLuRichTextMarkdownFormatter } from './markdown-formatter';\nimport { TAGS } from './transformers';\n\n@Directive({\n\tselector: 'lu-rich-text-input[luWithMarkdownFormatter]',\n\tproviders: [provideLuRichTextMarkdownFormatter()],\n})\nexport class MarkdownFormatterDirective {}\n\n@Directive({\n\tselector: 'lu-rich-text-input[luWithMarkdownTagsFormatter]',\n\tproviders: [provideLuRichTextMarkdownFormatter([...DEFAULT_MARKDOWN_TRANSFORMERS, TAGS])],\n})\nexport class MarkdownFormatterWithTagsDirective {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lucca-front-ng-forms-rich-text-input-formatters-markdown.mjs","sources":["../../../packages/ng/forms/rich-text-input/formatters/markdown/markdown-formatter.ts","../../../packages/ng/forms/rich-text-input/formatters/markdown/transformers/tag.transformers.ts","../../../packages/ng/forms/rich-text-input/formatters/markdown/markdown-formatter.directive.ts","../../../packages/ng/forms/rich-text-input/formatters/markdown/lucca-front-ng-forms-rich-text-input-formatters-markdown.ts"],"sourcesContent":["import { Provider } from '@angular/core';\nimport {\n\t$convertFromMarkdownString,\n\t$convertToMarkdownString,\n\tBOLD_ITALIC_STAR,\n\tBOLD_ITALIC_UNDERSCORE,\n\tBOLD_STAR,\n\tBOLD_UNDERSCORE,\n\tHEADING,\n\tINLINE_CODE,\n\tITALIC_STAR,\n\tITALIC_UNDERSCORE,\n\tLINK,\n\tORDERED_LIST,\n\tregisterMarkdownShortcuts,\n\tSTRIKETHROUGH,\n\tTransformer,\n\tUNORDERED_LIST,\n} from '@lexical/markdown';\nimport { registerRichText } from '@lexical/rich-text';\nimport { mergeRegister } from '@lexical/utils';\nimport { RICH_TEXT_FORMATTER, RichTextFormatter } from '@lucca-front/ng/forms/rich-text-input';\nimport { LexicalEditor } from 'lexical';\n\nexport const DEFAULT_MARKDOWN_TRANSFORMERS: Transformer[] = [\n\tUNORDERED_LIST,\n\tHEADING,\n\tORDERED_LIST,\n\tBOLD_ITALIC_STAR,\n\tBOLD_ITALIC_UNDERSCORE,\n\tBOLD_STAR,\n\tBOLD_UNDERSCORE,\n\tINLINE_CODE,\n\tITALIC_STAR,\n\tITALIC_UNDERSCORE,\n\tSTRIKETHROUGH,\n\tLINK,\n];\n\nexport class MarkdownFormatter extends RichTextFormatter {\n\t#transformers: Transformer[] = DEFAULT_MARKDOWN_TRANSFORMERS;\n\n\tconstructor(transformers?: Transformer[]) {\n\t\tsuper();\n\t\tif (transformers) {\n\t\t\tthis.#transformers = transformers;\n\t\t}\n\t}\n\n\toverride registerTextPlugin(editor: LexicalEditor): () => void {\n\t\treturn mergeRegister(registerMarkdownShortcuts(editor, this.#transformers), registerRichText(editor));\n\t}\n\n\toverride parse(editor: LexicalEditor, markdown?: string | null): void {\n\t\teditor.update(() => {\n\t\t\t$convertFromMarkdownString(markdown ?? '', this.#transformers, undefined, true);\n\t\t});\n\t}\n\n\toverride format(editor: LexicalEditor): string {\n\t\tlet result = '';\n\t\teditor.getEditorState().read(() => (result = $convertToMarkdownString(this.#transformers, undefined, true)));\n\t\treturn result;\n\t}\n}\n\nexport function provideLuRichTextMarkdownFormatter(transformers?: Transformer[]): Provider {\n\treturn {\n\t\tprovide: RICH_TEXT_FORMATTER,\n\t\tuseFactory: () => new MarkdownFormatter(transformers),\n\t};\n}\n","import { TextMatchTransformer } from '@lexical/markdown';\nimport { $createTagNode, TagNode } from '@lucca-front/ng/forms/rich-text-input';\n\n/**\n * Transformer for tag nodes\n * It will match the following pattern `{{Tag}}` and create a TagNode (using `replace` function).\n * It will export the tag node to markdown (as `{{Tag}}`) using the `export` function.\n *\n * @docs https://github.com/facebook/lexical/tree/main/packages/lexical-markdown#transformers\n */\nexport const TAGS: TextMatchTransformer = {\n\tdependencies: [TagNode],\n\texport: (node) => (node instanceof TagNode ? `{{${node.getTagKey()}}}` : null),\n\timportRegExp: /{{(\\w+)}}/,\n\tregExp: /{{(\\w+)}}/,\n\treplace: (textNode, match) => {\n\t\tif (match[1]) {\n\t\t\ttextNode.replace($createTagNode(match[1].trim()));\n\t\t}\n\t},\n\ttype: 'text-match',\n\ttrigger: '{{',\n};\n","import { Directive } from '@angular/core';\nimport { DEFAULT_MARKDOWN_TRANSFORMERS, provideLuRichTextMarkdownFormatter } from './markdown-formatter';\nimport { TAGS } from './transformers';\n\n@Directive({\n\tselector: 'lu-rich-text-input[luWithMarkdownFormatter]',\n\tproviders: [provideLuRichTextMarkdownFormatter()],\n})\nexport class MarkdownFormatterDirective {}\n\n@Directive({\n\tselector: 'lu-rich-text-input[luWithMarkdownTagsFormatter]',\n\tproviders: [provideLuRichTextMarkdownFormatter([...DEFAULT_MARKDOWN_TRANSFORMERS, TAGS])],\n})\nexport class MarkdownFormatterWithTagsDirective {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -86,10 +86,10 @@ function provideLuRichTextPlainTextFormatter(transformers) {
86
86
  }
87
87
 
88
88
  class PlainTextFormatterWithTagsDirective {
89
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: PlainTextFormatterWithTagsDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
90
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.14", type: PlainTextFormatterWithTagsDirective, isStandalone: true, selector: "lu-rich-text-input[luWithPlainTextTagsFormatter]", providers: [provideLuRichTextPlainTextFormatter()], ngImport: i0 }); }
89
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: PlainTextFormatterWithTagsDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
90
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.7", type: PlainTextFormatterWithTagsDirective, isStandalone: true, selector: "lu-rich-text-input[luWithPlainTextTagsFormatter]", providers: [provideLuRichTextPlainTextFormatter()], ngImport: i0 }); }
91
91
  }
92
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: PlainTextFormatterWithTagsDirective, decorators: [{
92
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: PlainTextFormatterWithTagsDirective, decorators: [{
93
93
  type: Directive,
94
94
  args: [{
95
95
  selector: 'lu-rich-text-input[luWithPlainTextTagsFormatter]',
@@ -1 +1 @@
1
- {"version":3,"file":"lucca-front-ng-forms-rich-text-input-formatters-plain-text.mjs","sources":["../../../packages/ng/forms/rich-text-input/formatters/plain-text/transformers/tag.transformers.ts","../../../packages/ng/forms/rich-text-input/formatters/plain-text/plain-text-formatter.ts","../../../packages/ng/forms/rich-text-input/formatters/plain-text/plain-text-formatter.directive.ts","../../../packages/ng/forms/rich-text-input/formatters/plain-text/lucca-front-ng-forms-rich-text-input-formatters-plain-text.ts"],"sourcesContent":["import { $createTagNode } from '@lucca-front/ng/forms/rich-text-input';\nimport { PlainTextTransformer } from './plain-text-transformer';\n\n/**\n * Transformer for tag nodes\n * It will match the following pattern `{{Tag}}` and create a TagNode (using `replace` function).\n *\n */\nexport const PLAINTEXT_TAGS: PlainTextTransformer = {\n\tregExp: /{{(\\w+)}}/,\n\treplace: (textNode, match) => {\n\t\tif (match[1]) {\n\t\t\ttextNode.replace($createTagNode(match[1].trim()));\n\t\t}\n\t},\n};\n","import { Provider } from '@angular/core';\nimport { registerPlainText } from '@lexical/plain-text';\nimport { $rootTextContent } from '@lexical/text';\nimport { RICH_TEXT_FORMATTER, RichTextFormatter } from '@lucca-front/ng/forms/rich-text-input';\nimport { $createParagraphNode, $createTextNode, $getRoot, LexicalEditor, TextNode } from 'lexical';\nimport { PLAINTEXT_TAGS, PlainTextTransformer } from './transformers';\n\nexport class PlainTextFormatter extends RichTextFormatter {\n\t#transformers: PlainTextTransformer[] = [PLAINTEXT_TAGS];\n\n\tconstructor(transformers?: PlainTextTransformer[]) {\n\t\tsuper();\n\t\tif (transformers) {\n\t\t\tthis.#transformers = transformers;\n\t\t}\n\t}\n\n\toverride registerTextPlugin(editor: LexicalEditor) {\n\t\treturn registerPlainText(editor);\n\t}\n\n\toverride parse(editor: LexicalEditor, text?: string | null): void {\n\t\teditor.update(() => {\n\t\t\tconst rootNode = $getRoot();\n\t\t\trootNode.clear();\n\t\t\tif (text) {\n\t\t\t\tconst paragraphNode = $createParagraphNode();\n\t\t\t\tconst textNode = $createTextNode(text);\n\t\t\t\tparagraphNode.append(textNode);\n\t\t\t\trootNode.append(paragraphNode);\n\t\t\t\tthis.#applyTransformers(textNode);\n\t\t\t}\n\t\t});\n\t}\n\n\toverride format(editor: LexicalEditor): string {\n\t\tlet result = '';\n\t\teditor.getEditorState().read(() => (result = $rootTextContent()));\n\t\treturn result;\n\t}\n\n\t#applyTransformers(textNode: TextNode): void {\n\t\tfor (const t of this.#transformers) {\n\t\t\tconst match = textNode.getTextContent().match(t.regExp);\n\n\t\t\tif (!match) {\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tconst startIndex = match.index || 0;\n\t\t\tconst endIndex = startIndex + match[0].length;\n\n\t\t\tlet transformedNode: TextNode | undefined = undefined;\n\t\t\tlet nodeAfter: TextNode | undefined = undefined;\n\t\t\tlet nodeBefore: TextNode | undefined = undefined;\n\n\t\t\tif (startIndex === 0) {\n\t\t\t\t[transformedNode, nodeAfter] = textNode.splitText(endIndex);\n\t\t\t} else {\n\t\t\t\t[nodeBefore, transformedNode, nodeAfter] = textNode.splitText(startIndex, endIndex);\n\t\t\t}\n\t\t\tif (transformedNode) {\n\t\t\t\tt.replace(transformedNode, match);\n\t\t\t}\n\t\t\tif (nodeAfter) {\n\t\t\t\tthis.#applyTransformers(nodeAfter);\n\t\t\t}\n\t\t\tif (nodeBefore) {\n\t\t\t\tthis.#applyTransformers(nodeBefore);\n\t\t\t}\n\t\t\tbreak;\n\t\t}\n\t}\n}\n\nexport function provideLuRichTextPlainTextFormatter(transformers?: PlainTextTransformer[]): Provider {\n\treturn {\n\t\tprovide: RICH_TEXT_FORMATTER,\n\t\tuseFactory: () => new PlainTextFormatter(transformers),\n\t};\n}\n","import { Directive } from '@angular/core';\nimport { provideLuRichTextPlainTextFormatter } from './plain-text-formatter';\n\n@Directive({\n\tselector: 'lu-rich-text-input[luWithPlainTextTagsFormatter]',\n\tproviders: [provideLuRichTextPlainTextFormatter()],\n})\nexport class PlainTextFormatterWithTagsDirective {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lucca-front-ng-forms-rich-text-input-formatters-plain-text.mjs","sources":["../../../packages/ng/forms/rich-text-input/formatters/plain-text/transformers/tag.transformers.ts","../../../packages/ng/forms/rich-text-input/formatters/plain-text/plain-text-formatter.ts","../../../packages/ng/forms/rich-text-input/formatters/plain-text/plain-text-formatter.directive.ts","../../../packages/ng/forms/rich-text-input/formatters/plain-text/lucca-front-ng-forms-rich-text-input-formatters-plain-text.ts"],"sourcesContent":["import { $createTagNode } from '@lucca-front/ng/forms/rich-text-input';\nimport { PlainTextTransformer } from './plain-text-transformer';\n\n/**\n * Transformer for tag nodes\n * It will match the following pattern `{{Tag}}` and create a TagNode (using `replace` function).\n *\n */\nexport const PLAINTEXT_TAGS: PlainTextTransformer = {\n\tregExp: /{{(\\w+)}}/,\n\treplace: (textNode, match) => {\n\t\tif (match[1]) {\n\t\t\ttextNode.replace($createTagNode(match[1].trim()));\n\t\t}\n\t},\n};\n","import { Provider } from '@angular/core';\nimport { registerPlainText } from '@lexical/plain-text';\nimport { $rootTextContent } from '@lexical/text';\nimport { RICH_TEXT_FORMATTER, RichTextFormatter } from '@lucca-front/ng/forms/rich-text-input';\nimport { $createParagraphNode, $createTextNode, $getRoot, LexicalEditor, TextNode } from 'lexical';\nimport { PLAINTEXT_TAGS, PlainTextTransformer } from './transformers';\n\nexport class PlainTextFormatter extends RichTextFormatter {\n\t#transformers: PlainTextTransformer[] = [PLAINTEXT_TAGS];\n\n\tconstructor(transformers?: PlainTextTransformer[]) {\n\t\tsuper();\n\t\tif (transformers) {\n\t\t\tthis.#transformers = transformers;\n\t\t}\n\t}\n\n\toverride registerTextPlugin(editor: LexicalEditor) {\n\t\treturn registerPlainText(editor);\n\t}\n\n\toverride parse(editor: LexicalEditor, text?: string | null): void {\n\t\teditor.update(() => {\n\t\t\tconst rootNode = $getRoot();\n\t\t\trootNode.clear();\n\t\t\tif (text) {\n\t\t\t\tconst paragraphNode = $createParagraphNode();\n\t\t\t\tconst textNode = $createTextNode(text);\n\t\t\t\tparagraphNode.append(textNode);\n\t\t\t\trootNode.append(paragraphNode);\n\t\t\t\tthis.#applyTransformers(textNode);\n\t\t\t}\n\t\t});\n\t}\n\n\toverride format(editor: LexicalEditor): string {\n\t\tlet result = '';\n\t\teditor.getEditorState().read(() => (result = $rootTextContent()));\n\t\treturn result;\n\t}\n\n\t#applyTransformers(textNode: TextNode): void {\n\t\tfor (const t of this.#transformers) {\n\t\t\tconst match = textNode.getTextContent().match(t.regExp);\n\n\t\t\tif (!match) {\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tconst startIndex = match.index || 0;\n\t\t\tconst endIndex = startIndex + match[0].length;\n\n\t\t\tlet transformedNode: TextNode | undefined = undefined;\n\t\t\tlet nodeAfter: TextNode | undefined = undefined;\n\t\t\tlet nodeBefore: TextNode | undefined = undefined;\n\n\t\t\tif (startIndex === 0) {\n\t\t\t\t[transformedNode, nodeAfter] = textNode.splitText(endIndex);\n\t\t\t} else {\n\t\t\t\t[nodeBefore, transformedNode, nodeAfter] = textNode.splitText(startIndex, endIndex);\n\t\t\t}\n\t\t\tif (transformedNode) {\n\t\t\t\tt.replace(transformedNode, match);\n\t\t\t}\n\t\t\tif (nodeAfter) {\n\t\t\t\tthis.#applyTransformers(nodeAfter);\n\t\t\t}\n\t\t\tif (nodeBefore) {\n\t\t\t\tthis.#applyTransformers(nodeBefore);\n\t\t\t}\n\t\t\tbreak;\n\t\t}\n\t}\n}\n\nexport function provideLuRichTextPlainTextFormatter(transformers?: PlainTextTransformer[]): Provider {\n\treturn {\n\t\tprovide: RICH_TEXT_FORMATTER,\n\t\tuseFactory: () => new PlainTextFormatter(transformers),\n\t};\n}\n","import { Directive } from '@angular/core';\nimport { provideLuRichTextPlainTextFormatter } from './plain-text-formatter';\n\n@Directive({\n\tselector: 'lu-rich-text-input[luWithPlainTextTagsFormatter]',\n\tproviders: [provideLuRichTextPlainTextFormatter()],\n})\nexport class PlainTextFormatterWithTagsDirective {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}