@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
@@ -1 +1 @@
1
- {"version":3,"file":"lucca-front-ng-file-upload.mjs","sources":["../../../packages/ng/file-upload/translations.ts","../../../packages/ng/file-upload/file-upload.translate.ts","../../../packages/ng/file-upload/formatter.ts","../../../packages/ng/file-upload/base-file-upload/base-file-upload.component.ts","../../../packages/ng/file-upload/file-dropzone/file-dropzone.component.ts","../../../packages/ng/file-upload/file-dropzone/file-dropzone.component.html","../../../packages/ng/file-upload/file-entry/file-entry.component.ts","../../../packages/ng/file-upload/file-entry/file-entry.component.html","../../../packages/ng/file-upload/multi/multi-file-upload.component.ts","../../../packages/ng/file-upload/multi/multi-file-upload.component.html","../../../packages/ng/file-upload/single/single-file-upload.component.ts","../../../packages/ng/file-upload/single/single-file-upload.component.html","../../../packages/ng/file-upload/lucca-front-ng-file-upload.ts"],"sourcesContent":["export const Translations = {\n\ten: {\n\t\tacceptedFormat: { one: 'Accepted format:', other: 'Accepted formats:' },\n\t\tselectFile: { one: 'Select a file', other: 'Select files' },\n\t\tdropOrClick: { one: 'Drag and drop file here or <span>click to browse</span>.', other: 'Drag and drop files here or <span>click to browse</span>.' },\n\t\tmaxWeight: { one: 'Maximum size: {{maxSizeDisplay}}. ', other: 'Maximum file size: {{maxSizeDisplay}}. ' },\n\t\tfileUploadedListed: { one: 'The submitted file is detailed below.', other: 'The submitted files are detailed below.' },\n\t\tall: 'all',\n\t\tfile: '{{fileTypeLastPart}} file',\n\t\tdownload: 'Download',\n\t\tdownloadFile: 'Download file \"{{fileName}}\"',\n\t\tdelete: 'Delete',\n\t\tdeleteFile: 'Delete file \"{{fileName}}\"',\n\t\tpassword: 'Password',\n\t\tconfirmPassword: 'Confirm password',\n\t},\n\tde: {\n\t\tacceptedFormat: { one: 'Accepted format:', other: 'Accepted formats:' },\n\t\tselectFile: { one: 'Select a file', other: 'Select files' },\n\t\tdropOrClick: { one: 'Drag and drop file here or <span>click to browse</span>.', other: 'Drag and drop files here or <span>click to browse</span>.' },\n\t\tmaxWeight: { one: 'Maximum size: {{maxSizeDisplay}}. ', other: 'Maximum file size: {{maxSizeDisplay}}. ' },\n\t\tfileUploadedListed: { one: 'The submitted file is detailed below.', other: 'The submitted files are detailed below.' },\n\t\tall: 'alle',\n\t\tfile: 'Datei {{fileTypeLastPart}}',\n\t\tdownload: 'Download',\n\t\tdownloadFile: 'Die Datei „ {{fileName}} “ downloaden',\n\t\tdelete: 'Löschen',\n\t\tdeleteFile: 'Die Datei „ {{fileName}} “ löschen',\n\t\tpassword: 'Passwort',\n\t\tconfirmPassword: 'Passwort',\n\t},\n\tfr: {\n\t\tacceptedFormat: { one: 'Format accepté :', other: 'Formats acceptés :' },\n\t\tselectFile: { one: 'Sélectionner un fichier', other: 'Sélectionner des fichiers' },\n\t\tdropOrClick: { one: 'Déposez le fichier ici ou <span>cliquez pour le sélectionner</span>.', other: 'Déposez les fichiers ici ou <span>cliquez pour les sélectionner</span>.' },\n\t\tmaxWeight: { one: 'Poids maximum : {{maxSizeDisplay}}. ', other: 'Poids maximum pour un fichier : {{maxSizeDisplay}}. ' },\n\t\tfileUploadedListed: { one: 'Le fichier déjà déposé est détaillé après.', other: 'Les fichiers déjà déposés sont détaillés après.' },\n\t\tall: 'tous',\n\t\tfile: 'Fichier {{fileTypeLastPart}}',\n\t\tdownload: 'Télécharger',\n\t\tdownloadFile: 'Télécharger le fichier « {{fileName}} »',\n\t\tdelete: 'Supprimer',\n\t\tdeleteFile: 'Supprimer le fichier « {{fileName}} »',\n\t\tpassword: 'Mot de passe',\n\t\tconfirmPassword: 'Valider le mot de passe',\n\t},\n\tit: {\n\t\tacceptedFormat: { one: 'Formato accettato:', other: 'Formati accettati:' },\n\t\tselectFile: { one: 'Selezionare un file', other: 'Selezionare i file' },\n\t\tdropOrClick: { one: 'Rilascia qui il file o <span>clicca per selezionarlo</span>.', other: 'Rilascia qui i file o <span>clicca per selezionarli</span>.' },\n\t\tmaxWeight: { one: 'Dimensione massima: {{maxSizeDisplay}}. ', other: 'Dimensione massima per un file: {{maxSizeDisplay}}. ' },\n\t\tfileUploadedListed: { one: 'Il file già rilasciato è indicato qui sotto.', other: 'I file già rilasciati sono indicati qui sotto.' },\n\t\tall: 'tutti',\n\t\tfile: 'File {{fileTypeLastPart}}',\n\t\tdownload: 'Scaricare',\n\t\tdownloadFile: 'Scaricare il file \"{{fileName}}\"',\n\t\tdelete: 'Eliminare',\n\t\tdeleteFile: 'Eliminare il file \"{{fileName}}\"',\n\t\tpassword: 'Password',\n\t\tconfirmPassword: 'Confermare la password',\n\t},\n\tnl: {\n\t\tacceptedFormat: { one: 'Goedgekeurd formaat:', other: 'Goedgekeurde formaten:' },\n\t\tselectFile: { one: 'Een bestand selecteren', other: 'Bestanden selecteren' },\n\t\tdropOrClick: { one: 'Kies het bestand hier of <span>klik om te selecteren</span>.', other: 'Kies de bestanden hier of <span>klik om te selecteren</span>.' },\n\t\tmaxWeight: { one: 'Maximale grootte: {{maxSizeDisplay}}. ', other: 'Maximale bestandsgrootte: {{maxSizeDisplay}}. ' },\n\t\tfileUploadedListed: { one: 'Het reeds ingediende bestand wordt naderhand gedetailleerd.', other: 'Reeds ingediende bestanden worden naderhand gedetailleerd.' },\n\t\tall: 'alle',\n\t\tfile: 'Bestand {{fileTypeLastPart}}',\n\t\tdownload: 'Downloaden',\n\t\tdownloadFile: \"Het bestand '{{fileName}}' downloaden\",\n\t\tdelete: 'Verwijderen',\n\t\tdeleteFile: \"Het bestand '{{fileName}}' verwijderen\",\n\t\tpassword: 'Wachtwoord',\n\t\tconfirmPassword: 'Wachtwoord valideren',\n\t},\n\t'nl-BE': {\n\t\tacceptedFormat: { one: 'Goedgekeurd formaat:', other: 'Goedgekeurde formaten:' },\n\t\tselectFile: { one: 'Een bestand selecteren', other: 'Bestanden selecteren' },\n\t\tdropOrClick: { one: 'Kies het bestand hier of <span>klik om te selecteren</span>.', other: 'Kies de bestanden hier of <span>klik om te selecteren</span>.' },\n\t\tmaxWeight: { one: 'Maximale grootte: {{maxSizeDisplay}}. ', other: 'Maximale bestandsgrootte: {{maxSizeDisplay}}. ' },\n\t\tfileUploadedListed: { one: 'Het reeds ingediende bestand wordt naderhand gedetailleerd.', other: 'Reeds ingediende bestanden worden naderhand gedetailleerd.' },\n\t\tall: 'alle',\n\t\tfile: 'Bestand {{fileTypeLastPart}}',\n\t\tdownload: 'Downloaden',\n\t\tdownloadFile: \"Het bestand '{{fileName}}' downloaden\",\n\t\tdelete: 'Verwijderen',\n\t\tdeleteFile: \"Het bestand '{{fileName}}' verwijderen\",\n\t\tpassword: 'Wachtwoord',\n\t\tconfirmPassword: 'Wachtwoord valideren',\n\t},\n\tes: {\n\t\tacceptedFormat: { one: 'Formato aceptado:', other: 'Formatos aceptados:' },\n\t\tselectFile: { one: 'Seleccionar un archivo', other: 'Seleccionar archivos' },\n\t\tdropOrClick: { one: 'Carga el archivo aquí o <span>pulsa para seleccionarlo</span>.', other: 'Carga los archivos aquí o <span>pulsa para seleccionarlos</span>.' },\n\t\tmaxWeight: { one: 'Tamaño máximo: {{maxSizeDisplay}}. ', other: 'Tamaño máximo de un archivo: {{maxSizeDisplay}}. ' },\n\t\tfileUploadedListed: { one: 'El archivo ya cargado se detalla después.', other: 'Los archivos ya cargados se detallan después.' },\n\t\tall: 'todos',\n\t\tfile: 'Archivo {{fileTypeLastPart}}',\n\t\tdownload: 'Descargar',\n\t\tdownloadFile: 'Descargar el archivo «{{fileName}}»',\n\t\tdelete: 'Eliminar',\n\t\tdeleteFile: 'Eliminar el archivo «{{fileName}}»',\n\t\tpassword: 'Contraseña',\n\t\tconfirmPassword: 'Validar la contraseña',\n\t},\n\tpt: {\n\t\tacceptedFormat: { one: 'Formato aceite :', other: 'Formatos aceites :' },\n\t\tselectFile: { one: 'Select a file', other: 'Select files' },\n\t\tdropOrClick: { one: 'Drag and drop file here or <span>click to browse</span>.', other: 'Drag and drop files here or <span>click to browse</span>.' },\n\t\tmaxWeight: { one: 'Maximum size: {{maxSizeDisplay}}. ', other: 'Maximum file size: {{maxSizeDisplay}}. ' },\n\t\tfileUploadedListed: { one: 'The submitted file is detailed below.', other: 'The submitted files are detailed below.' },\n\t\tall: 'todos',\n\t\tfile: 'Ficheiro {{fileTypeLastPart}}',\n\t\tdownload: 'Descarregar',\n\t\tdownloadFile: 'Descarregar o ficheiro \" {{fileName}} ',\n\t\tdelete: 'Eliminar',\n\t\tdeleteFile: 'Eliminar o ficheiro \" {{fileName}} ',\n\t\tpassword: 'Palavra-passe',\n\t\tconfirmPassword: 'Confirmar a palavra-passe',\n\t},\n};\n","import { InjectionToken } from '@angular/core';\nimport { LuTranslation } from '@lucca-front/ng/core';\nimport { Translations } from './translations';\n\nexport const LU_FILE_UPLOAD_TRANSLATIONS = new InjectionToken('LuFileUploadTranslations', {\n\tfactory: () => luFileUploadTranslations,\n});\n\nexport interface LuFileUploadLabel {\n\tacceptedFormat: {\n\t\tone: string;\n\t\tother: string;\n\t};\n\tselectFile: {\n\t\tone: string;\n\t\tother: string;\n\t};\n\tdropOrClick: {\n\t\tone: string;\n\t\tother: string;\n\t};\n\tmaxWeight: {\n\t\tone: string;\n\t\tother: string;\n\t};\n\tfileUploadedListed: {\n\t\tone: string;\n\t\tother: string;\n\t};\n\tall: string;\n\tfile: string;\n\tdownload: string;\n\tdownloadFile: string;\n\tdelete: string;\n\tdeleteFile: string;\n\tpassword: string;\n\tconfirmPassword: string;\n}\n\nexport const luFileUploadTranslations: LuTranslation<LuFileUploadLabel> = Translations;\n","export const KILO_BYTE = 1000;\nexport const MEGA_BYTE = KILO_BYTE * 1000;\n\nexport function formatFileSize(locale: string, size: number): string {\n\tlet unit = 'byte';\n\tlet value = size;\n\n\tif (size >= MEGA_BYTE) {\n\t\tunit = 'megabyte';\n\t\tvalue /= MEGA_BYTE;\n\t} else if (size >= KILO_BYTE) {\n\t\tunit = 'kilobyte';\n\t\tvalue /= KILO_BYTE;\n\t}\n\n\tconst weightFormatter = Intl.NumberFormat(locale, {\n\t\tnotation: 'compact',\n\t\tstyle: 'unit',\n\t\tunit: unit,\n\t\tunitDisplay: 'narrow',\n\t});\n\n\treturn weightFormatter.format(value);\n}\n","import { booleanAttribute, computed, Directive, effect, inject, input, LOCALE_ID, output } from '@angular/core';\nimport { intlInputOptions } from '@lucca-front/ng/core';\nimport { FORM_FIELD_INSTANCE } from '@lucca-front/ng/form-field';\nimport { LU_FILE_UPLOAD_TRANSLATIONS } from '../file-upload.translate';\nimport { formatFileSize, MEGA_BYTE } from '../formatter';\n\nlet nextId = 0;\n\n@Directive()\nexport abstract class BaseFileUploadComponent {\n\tprotected locale = inject(LOCALE_ID);\n\n\tprotected idSuffix = nextId++;\n\n\tprotected droppable = false;\n\n\treadonly intl = input(...intlInputOptions(LU_FILE_UPLOAD_TRANSLATIONS));\n\n\tprotected formFieldRef = inject(FORM_FIELD_INSTANCE, { optional: true });\n\n\tfilePicked = output<File>();\n\n\treadonly accept = input<\n\t\tArray<{\n\t\t\tformat: string;\n\t\t\tname?: string;\n\t\t}>\n\t>([]);\n\n\tprotected readonly defaultAccept = computed(() => [\n\t\t{\n\t\t\tformat: '*',\n\t\t\tname: this.intl().all,\n\t\t},\n\t]);\n\n\tprotected readonly resolvedAccept = computed(() => {\n\t\tconst acceptValue = this.accept();\n\t\treturn acceptValue.length > 0 ? acceptValue : this.defaultAccept();\n\t});\n\n\treadonly acceptNames = computed(() =>\n\t\tthis.resolvedAccept()\n\t\t\t.filter((e) => e.name)\n\t\t\t.map((e) => e.name),\n\t);\n\n\treadonly acceptAttribute = computed(() => this.resolvedAccept().map((e) => e.format));\n\n\treadonly acceptAll = computed(() => {\n\t\treturn this.acceptAttribute().some((str) => str.includes('*'));\n\t});\n\n\treadonly structure = input(false, { transform: booleanAttribute });\n\n\treadonly fileMaxSize = input<number>(80 * MEGA_BYTE);\n\n\treadonly maxSizeDisplay = computed(() => formatFileSize(this.locale, this.fileMaxSize()));\n\n\treadonly size = input<null | 'L'>(null);\n\n\treadonly password = input(false, { transform: booleanAttribute });\n\n\treadonly illustration = input<\n\t\t/** @deprecated use 'invoice' instead */\n\t\t'paper' | 'picture' | 'invoice'\n\t>('invoice');\n\n\treadonly illus = computed(() => {\n\t\tswitch (this.illustration()) {\n\t\t\tcase 'paper':\n\t\t\tcase 'invoice':\n\t\t\t\treturn 'invoice';\n\t\t\tdefault:\n\t\t\t\treturn 'picture';\n\t\t}\n\t});\n\n\treadonly required = input(false, { transform: booleanAttribute });\n\n\treadonly buttonFilled = input(false, { transform: booleanAttribute });\n\n\tconstructor() {\n\t\teffect(() => {\n\t\t\tthis.formFieldRef?.forceInputRequired.set(this.required());\n\t\t});\n\t}\n\n\tfilesChange(event: Event) {\n\t\tconst host = event.target as HTMLInputElement;\n\t\tthis.droppable = false;\n\t\tif (host.files) {\n\t\t\tfor (const file of Array.from(host.files)) {\n\t\t\t\tthis.filePicked.emit(file);\n\t\t\t}\n\t\t}\n\t\thost.value = '';\n\t}\n}\n","import { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';\nimport { BubbleIllustrationComponent } from '@lucca-front/ng/bubble-illustration';\nimport { IntlParamsPipe } from '@lucca-front/ng/core';\nimport { BaseFileUploadComponent } from '../base-file-upload/base-file-upload.component';\n\n@Component({\n\tselector: 'lu-file-dropzone',\n\ttemplateUrl: './file-dropzone.component.html',\n\tstyleUrl: './file-dropzone.component.scss',\n\tencapsulation: ViewEncapsulation.None,\n\timports: [IntlParamsPipe, BubbleIllustrationComponent],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class FileDropzoneComponent extends BaseFileUploadComponent {}\n","<div class=\"fileUpload mod-dropzone\" [class.is-droppable]=\"droppable\" (dragenter)=\"droppable = true\" (dragleave)=\"droppable = false\">\n\t<div class=\"fileUpload-status\">\n\t\t<lu-bubble-illustration [illustration]=\"illus()\" action size=\"L\" />\n\t</div>\n\t<div class=\"fileUpload-instruction\" [attr.id]=\"'fileUpload-instruction-' + idSuffix\">\n\t\t@if (acceptNames().length) {\n\t\t\t<span class=\"fileUpload-instruction-formats\">\n\t\t\t\t@if (acceptNames().length > 1 || acceptAll()) {\n\t\t\t\t\t{{ intl().acceptedFormat.other }}\n\t\t\t\t} @else {\n\t\t\t\t\t{{ intl().acceptedFormat.one }}\n\t\t\t\t}\n\t\t\t\t{{ acceptNames().join(\", \") }}.\n\t\t\t</span>\n\t\t}\n\t\t@if (fileMaxSize()) {\n\t\t\t<span class=\"fileUpload-instruction-size\">{{ intl().maxWeight.other | intlParams: { maxSizeDisplay: maxSizeDisplay() } }}</span>\n\t\t}\n\t</div>\n</div>\n","import { booleanAttribute, ChangeDetectionStrategy, Component, computed, inject, input, LOCALE_ID, ViewEncapsulation } from '@angular/core';\nimport { outputFromObservable } from '@angular/core/rxjs-interop';\nimport { FormsModule } from '@angular/forms';\nimport { ButtonComponent } from '@lucca-front/ng/button';\nimport { intlInputOptions, IntlParamsPipe, isNotNil } from '@lucca-front/ng/core';\nimport { DividerComponent } from '@lucca-front/ng/divider';\nimport { FormFieldComponent } from '@lucca-front/ng/form-field';\nimport { TextInputComponent } from '@lucca-front/ng/forms';\nimport { IconComponent } from '@lucca-front/ng/icon';\nimport { InlineMessageComponent } from '@lucca-front/ng/inline-message';\nimport { LuTooltipTriggerDirective } from '@lucca-front/ng/tooltip';\nimport { Subject } from 'rxjs';\nimport { FileEntry } from '../file-upload-entry';\nimport { LU_FILE_UPLOAD_TRANSLATIONS } from '../file-upload.translate';\nimport { formatFileSize } from '../formatter';\n\n@Component({\n\tselector: 'lu-file-entry',\n\ttemplateUrl: './file-entry.component.html',\n\tstyleUrl: './file-entry.component.scss',\n\tencapsulation: ViewEncapsulation.None,\n\timports: [IconComponent, ButtonComponent, InlineMessageComponent, DividerComponent, FormFieldComponent, TextInputComponent, FormsModule, IntlParamsPipe, LuTooltipTriggerDirective],\n\thost: {\n\t\tclass: 'pr-u-displayContents',\n\t},\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class FileEntryComponent {\n\t#locale = inject(LOCALE_ID);\n\n\treadonly intl = input(...intlInputOptions(LU_FILE_UPLOAD_TRANSLATIONS));\n\n\treadonly state = input<'success' | 'loading' | 'error' | 'default'>('default');\n\n\treadonly displayFileName = input(false, { transform: booleanAttribute });\n\n\treadonly structure = input(false, { transform: booleanAttribute });\n\n\treadonly inlineMessageError = input<string | null>(null);\n\n\treadonly entry = input.required<FileEntry>();\n\n\treadonly size = input<null | 'L'>(null);\n\n\treadonly iconOverride = input('');\n\n\treadonly downloadURL = input('');\n\n\treadonly password = input('');\n\treadonly passwordChange$ = new Subject<string>();\n\tpasswordChange = outputFromObservable(this.passwordChange$);\n\n\tget withPassword() {\n\t\treturn this.passwordChange$.observed;\n\t}\n\n\treadonly media = input(false, { transform: booleanAttribute });\n\n\treadonly deleteFile$ = new Subject<void>();\n\n\tdeleteFile = outputFromObservable(this.deleteFile$);\n\n\tget deletable() {\n\t\treturn this.deleteFile$.observed;\n\t}\n\n\treadonly fileName = computed(() => this.entry().name);\n\treadonly fileType = computed<string>(() => this.entry().type ?? '');\n\treadonly fileSize = computed<number | null>(() => this.entry().size ?? null);\n\n\treadonly fileSizeDisplay = computed(() => {\n\t\tconst fileSize = this.fileSize();\n\t\treturn isNotNil(fileSize) ? formatFileSize(this.#locale, fileSize) : null;\n\t});\n\treadonly fileTypeDisplay = computed(() => {\n\t\tconst fileExtension: string = extractFileExtension(this.fileName(), this.fileType());\n\n\t\treturn this.intl().file.replace('{{fileTypeLastPart}}', fileExtension);\n\t});\n\n\treadonly previewUrl = input<string>('');\n\n\treadonly fileEntryIconSrc = computed(() => {\n\t\tconst fileExtension = this.fileName().split('.').pop();\n\t\tconst fileEntryIconRoot = 'https://cdn.lucca.fr/transverse/prisme/visuals/file-entry/';\n\t\tconst fileEntryIconExtension = '.svg';\n\n\t\tswitch (fileExtension) {\n\t\t\tcase 'pdf':\n\t\t\tcase 'xls':\n\t\t\tcase 'xlsx':\n\t\t\tcase 'doc':\n\t\t\tcase 'csv':\n\t\t\t\treturn fileEntryIconRoot + fileExtension + fileEntryIconExtension;\n\t\t\tcase 'jpg':\n\t\t\tcase 'jpeg':\n\t\t\tcase 'png':\n\t\t\tcase 'gif':\n\t\t\tcase 'svg':\n\t\t\t\treturn fileEntryIconRoot + 'image' + fileEntryIconExtension;\n\t\t\tdefault:\n\t\t\t\treturn fileEntryIconRoot + 'default' + fileEntryIconExtension;\n\t\t}\n\t});\n\n\treadonly tooltip = computed(() => {\n\t\tconst fileSize = this.fileSizeDisplay() ? ` – ${this.fileSizeDisplay()}` : '';\n\t\tif (this.state() === 'error') {\n\t\t\tif (!this.media()) {\n\t\t\t\treturn null;\n\t\t\t} else {\n\t\t\t\treturn this.fileName() + fileSize;\n\t\t\t}\n\t\t}\n\n\t\tif (!this.media() && this.size() === 'L') {\n\t\t\treturn null;\n\t\t}\n\n\t\tif (this.size() === null && !this.media()) {\n\t\t\treturn this.fileTypeDisplay() + fileSize;\n\t\t}\n\n\t\treturn this.fileName() + ' – ' + this.fileTypeDisplay() + fileSize;\n\t});\n\n\treadonly dlClasses = computed(() => ({\n\t\t[`is-${this.state()}`]: !!this.state(),\n\t\t[`mod-${this.size()}`]: !!this.size(),\n\t}));\n}\n\nfunction extractFileExtension(fileName: string, type?: string): string {\n\tif (!type) {\n\t\treturn fileName.split('.')[1]?.toUpperCase() || '';\n\t}\n\n\tswitch (type) {\n\t\tcase 'application/vnd.ms-excel':\n\t\t\treturn 'XLS';\n\t\tcase 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet':\n\t\t\treturn 'XLSX';\n\t\tcase 'application/msword':\n\t\t\treturn 'DOC';\n\t\tcase 'application/vnd.openxmlformats-officedocument.wordprocessingml.document':\n\t\t\treturn 'DOCX';\n\t\tdefault:\n\t\t\treturn type.split('/')[1].toUpperCase();\n\t}\n}\n","<dl class=\"fileEntry\" [class.mod-media]=\"media()\" [class.mod-structure]=\"structure()\" [class]=\"dlClasses()\">\n\t@if (!media()) {\n\t\t<dt class=\"fileEntry-filename\">\n\t\t\t<div class=\"fileEntry-filename-tooltip\" luTooltip luTooltipWhenEllipsis>{{ fileName() }}</div>\n\t\t</dt>\n\t\t@if (state() === \"error\" && inlineMessageError()) {\n\t\t\t<dd class=\"fileEntry-inlineMessage\">\n\t\t\t\t<lu-inline-message withTooltip [label]=\"inlineMessageError()\" [state]=\"'error'\" />\n\t\t\t</dd>\n\t\t} @else {\n\t\t\t<dd class=\"fileEntry-description\">\n\t\t\t\t<span class=\"fileEntry-description-format\" luTooltip luTooltipWhenEllipsis>{{ fileTypeDisplay() }}</span>\n\t\t\t\t@if (fileSizeDisplay(); as fileSizeDisplay) {\n\t\t\t\t\t<span class=\"pr-u-mask\"> – </span>\n\t\t\t\t\t<lu-divider vertical class=\"fileEntry-description-divider\" />\n\t\t\t\t\t<span class=\"fileEntry-description-size\">{{ fileSizeDisplay }}</span>\n\t\t\t\t}\n\t\t\t</dd>\n\t\t}\n\t}\n\t<dd class=\"fileEntry-status\">\n\t\t<div class=\"fileEntry-status-content\" [luTooltip]=\"tooltip()\">\n\t\t\t@if (state() === \"error\" && inlineMessageError()) {\n\t\t\t\t@if (media()) {\n\t\t\t\t\t<div class=\"fileEntry-status-content-inside\">\n\t\t\t\t\t\t<lu-inline-message class=\"fileEntry-status-content-inlineMessage\" [label]=\"inlineMessageError()\" [state]=\"'error'\" />\n\t\t\t\t\t</div>\n\t\t\t\t} @else {\n\t\t\t\t\t<div class=\"fileEntry-status-content-inside\">\n\t\t\t\t\t\t<lu-icon class=\"fileEntry-status-content-inside-icon\" icon=\"signError\" />\n\t\t\t\t\t</div>\n\t\t\t\t}\n\t\t\t} @else {\n\t\t\t\t@if (previewUrl() && state() !== \"error\") {\n\t\t\t\t\t<div class=\"fileEntry-status-content-inside\">\n\t\t\t\t\t\t<img class=\"fileEntry-status-content-inside-img\" [src]=\"previewUrl()\" alt=\"\" loading=\"lazy\" />\n\t\t\t\t\t</div>\n\t\t\t\t}\n\t\t\t\t@if (state() === \"loading\") {\n\t\t\t\t\t<div class=\"fileEntry-status-content-inside\">\n\t\t\t\t\t\t<div class=\"fileEntry-status-content-inside-loading loading\"></div>\n\t\t\t\t\t</div>\n\t\t\t\t}\n\t\t\t\t@if (!previewUrl() && state() !== \"loading\") {\n\t\t\t\t\t<div class=\"fileEntry-status-content-inside\">\n\t\t\t\t\t\t<img\n\t\t\t\t\t\t\tclass=\"fileEntry-status-content-inside-svg\"\n\t\t\t\t\t\t\t[attr.src]=\"iconOverride() || fileEntryIconSrc()\"\n\t\t\t\t\t\t\talt=\"\"\n\t\t\t\t\t\t\twidth=\"32\"\n\t\t\t\t\t\t\theight=\"32\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t}\n\t\t\t}\n\t\t\t@if (displayFileName() && media()) {\n\t\t\t\t<div class=\"fileEntry-status-content-fileName\" aria-hidden=\"true\">{{ fileName() }}</div>\n\t\t\t}\n\t\t</div>\n\t</dd>\n\t@if (downloadURL() || deletable) {\n\t\t<dd class=\"fileEntry-toolbar\">\n\t\t\t<div class=\"fileToolbar\" [class.mod-disablePositioning]=\"!media()\" [class.mod-L]=\"size() === 'L'\">\n\t\t\t\t<ul class=\"fileToolbar-list\">\n\t\t\t\t\t@if (downloadURL()) {\n\t\t\t\t\t\t<li class=\"fileToolbar-list-item\">\n\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\t[href]=\"downloadURL()\"\n\t\t\t\t\t\t\t\ttarget=\"_blank\"\n\t\t\t\t\t\t\t\trel=\"noopener noreferrer\"\n\t\t\t\t\t\t\t\tdownload=\"download\"\n\t\t\t\t\t\t\t\tclass=\"fileToolbar-list-item-button\"\n\t\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\t\tluButton\n\t\t\t\t\t\t\t\t[luTooltip]=\"intl().download\"\n\t\t\t\t\t\t\t\tluTooltipOnlyForDisplay\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<lu-icon\n\t\t\t\t\t\t\t\t\tclass=\"fileToolbar-list-item-button-icon\"\n\t\t\t\t\t\t\t\t\ticon=\"arrowDownload\"\n\t\t\t\t\t\t\t\t\t[alt]=\"intl().downloadFile | intlParams: { fileName: fileName() }\"\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t</li>\n\t\t\t\t\t}\n\t\t\t\t\t@if (deletable) {\n\t\t\t\t\t\t<li class=\"fileToolbar-list-item\">\n\t\t\t\t\t\t\t<button\n\t\t\t\t\t\t\t\tclass=\"fileToolbar-list-item-button\"\n\t\t\t\t\t\t\t\t[class.palette-critical]=\"state() === 'error'\"\n\t\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\t\tluButton\n\t\t\t\t\t\t\t\tdelete\n\t\t\t\t\t\t\t\t[luTooltip]=\"intl().delete\"\n\t\t\t\t\t\t\t\tluTooltipOnlyForDisplay\n\t\t\t\t\t\t\t\t(click)=\"deleteFile$.next()\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<lu-icon\n\t\t\t\t\t\t\t\t\tclass=\"fileToolbar-list-item-button-icon\"\n\t\t\t\t\t\t\t\t\ticon=\"trashDelete\"\n\t\t\t\t\t\t\t\t\t[alt]=\"intl().deleteFile | intlParams: { fileName: fileName() }\"\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</button>\n\t\t\t\t\t\t</li>\n\t\t\t\t\t}\n\t\t\t\t</ul>\n\t\t\t</div>\n\t\t</dd>\n\t}\n</dl>\n@if (withPassword) {\n\t<div class=\"fileEntry_box box mod-withArrow mod-neutral\">\n\t\t<div class=\"box-arrow mod-neutral\"></div>\n\t\t<lu-form-field [label]=\"intl().password\">\n\t\t\t<div class=\"fileEntry_box-field\">\n\t\t\t\t<lu-text-input\n\t\t\t\t\tclass=\"fileEntry_box-field-textField\"\n\t\t\t\t\trequired\n\t\t\t\t\thasClearer\n\t\t\t\t\tsearchIcon=\"searchMagnifyingGlass\"\n\t\t\t\t\ttype=\"password\"\n\t\t\t\t\t[ngModel]=\"password()\"\n\t\t\t\t\t(ngModelChange)=\"passwordChange$.next($event)\"\n\t\t\t\t/>\n\t\t\t\t<button class=\"fileEntry_box-field-button\" luButton type=\"button\">{{ intl().confirmPassword }}</button>\n\t\t\t</div>\n\t\t</lu-form-field>\n\t</div>\n}\n","import { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';\nimport { BubbleIllustrationComponent } from '@lucca-front/ng/bubble-illustration';\nimport { IntlParamsPipe } from '@lucca-front/ng/core';\nimport { InputDirective } from '@lucca-front/ng/form-field';\nimport { BaseFileUploadComponent } from '../base-file-upload/base-file-upload.component';\n\n@Component({\n\tselector: 'lu-multi-file-upload',\n\ttemplateUrl: './multi-file-upload.component.html',\n\tstyleUrl: './multi-file-upload.component.scss',\n\tencapsulation: ViewEncapsulation.None,\n\thost: {\n\t\t'[class.mod-structure]': 'structure()',\n\t},\n\timports: [InputDirective, IntlParamsPipe, BubbleIllustrationComponent],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class MultiFileUploadComponent extends BaseFileUploadComponent {}\n","<div class=\"fileUpload\" [class.is-droppable]=\"droppable\" [class.mod-L]=\"size() === 'L'\" [class.mod-structure]=\"structure()\">\n\t<input\n\t\t[attr.aria-describedby]=\"'fileUpload-instruction-' + idSuffix\"\n\t\tclass=\"fileUpload-input\"\n\t\ttype=\"file\"\n\t\ttitle=\"\"\n\t\t[attr.accept]=\"acceptAttribute().length > 0 ? acceptAttribute() : null\"\n\t\tluInput\n\t\t(dragenter)=\"droppable = true\"\n\t\t(dragleave)=\"droppable = false\"\n\t\t(change)=\"filesChange($event)\"\n\t\tmultiple=\"multiple\"\n\t\t#inputRef\n\t/>\n\t<div class=\"fileUpload-status\">\n\t\t<lu-bubble-illustration [illustration]=\"illus()\" action size=\"L\" />\n\t</div>\n\t@if (size() === \"L\") {\n\t\t<ng-content />\n\t}\n\t<div class=\"fileUpload-instruction\" [attr.id]=\"'fileUpload-instruction-' + idSuffix\">\n\t\t<span class=\"fileUpload-instruction-action\" aria-hidden=\"true\" [innerHTML]=\"intl().dropOrClick.other\"></span>\n\t\t@if (acceptNames().length) {\n\t\t\t<span class=\"fileUpload-instruction-formats\">\n\t\t\t\t@if (acceptNames().length > 1 || acceptAll()) {\n\t\t\t\t\t{{ intl().acceptedFormat.other }}\n\t\t\t\t} @else {\n\t\t\t\t\tintl().acceptedFormat.one\n\t\t\t\t}\n\t\t\t\t{{ acceptNames().join(\", \") }}.\n\t\t\t</span>\n\t\t}\n\t\t@if (fileMaxSize()) {\n\t\t\t<span class=\"fileUpload-instruction-size\">{{ intl().maxWeight.other | intlParams: { maxSizeDisplay: maxSizeDisplay() } }}</span>\n\t\t}\n\t\t<span class=\"pr-u-mask\">{{ intl().fileUploadedListed.other }}</span>\n\t</div>\n\t<span class=\"fileUpload-button button\" [class.mod-filled]=\"buttonFilled()\" aria-hidden=\"true\">{{ intl().selectFile.other }}</span>\n</div>\n","import { booleanAttribute, ChangeDetectionStrategy, Component, input, output, ViewEncapsulation } from '@angular/core';\nimport { BubbleIllustrationComponent } from '@lucca-front/ng/bubble-illustration';\nimport { IntlParamsPipe } from '@lucca-front/ng/core';\nimport { InputDirective } from '@lucca-front/ng/form-field';\nimport { BaseFileUploadComponent } from '../base-file-upload/base-file-upload.component';\nimport { FileEntryComponent } from '../file-entry/file-entry.component';\nimport { FileEntry } from '../file-upload-entry';\n\n@Component({\n\tselector: 'lu-single-file-upload',\n\ttemplateUrl: './single-file-upload.component.html',\n\tstyleUrl: './single-file-upload.component.scss',\n\tencapsulation: ViewEncapsulation.None,\n\timports: [InputDirective, FileEntryComponent, IntlParamsPipe, BubbleIllustrationComponent],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SingleFileUploadComponent extends BaseFileUploadComponent {\n\treadonly entry = input<FileEntry | null>(null);\n\n\treadonly state = input<'loading' | 'success' | 'error' | 'default'>('default');\n\n\treadonly inlineMessageError = input<string | null>(null);\n\n\treadonly previewUrl = input<string | null>(null);\n\n\treadonly deleteFile = output<void>();\n\n\treadonly displayFileName = input(false, { transform: booleanAttribute });\n}\n","<div\n\tclass=\"fileUpload\"\n\t[class.is-droppable]=\"droppable\"\n\t[class.mod-L]=\"size() === 'L'\"\n\t[class.is-hidden]=\"!!entry()\"\n\t[class.mod-structure]=\"structure()\"\n>\n\t<input\n\t\tclass=\"fileUpload-input\"\n\t\ttype=\"file\"\n\t\ttitle=\"\"\n\t\t[attr.accept]=\"acceptAttribute().length > 0 ? acceptAttribute() : null\"\n\t\tluInput\n\t\t(dragenter)=\"droppable = true\"\n\t\t(dragleave)=\"droppable = false\"\n\t\t(change)=\"filesChange($event)\"\n\t\t[attr.disabled]=\"!!entry() ? 'disabled' : null\"\n\t\t[attr.aria-describedby]=\"'fileUpload-instruction-' + idSuffix\"\n\t/>\n\t<div class=\"fileUpload-status\">\n\t\t<lu-bubble-illustration [illustration]=\"illus()\" action size=\"L\" />\n\t</div>\n\t@if (size() === \"L\") {\n\t\t<ng-content />\n\t}\n\t<div class=\"fileUpload-instruction\" [attr.id]=\"'fileUpload-instruction-' + idSuffix\">\n\t\t<span class=\"fileUpload-instruction-action\" aria-hidden=\"true\" [innerHTML]=\"intl().dropOrClick.one\"></span>\n\t\t@if (acceptNames().length) {\n\t\t\t<span class=\"fileUpload-instruction-formats\">\n\t\t\t\t@if (acceptNames().length > 1 || acceptAll()) {\n\t\t\t\t\t{{ intl().acceptedFormat.other }}\n\t\t\t\t} @else {\n\t\t\t\t\t{{ intl().acceptedFormat.one }}\n\t\t\t\t}\n\t\t\t\t{{ acceptNames().join(\", \") }}.\n\t\t\t</span>\n\t\t}\n\t\t@if (fileMaxSize()) {\n\t\t\t<span class=\"fileUpload-instruction-size\">{{ intl().maxWeight.one | intlParams: { maxSizeDisplay: maxSizeDisplay() } }}</span>\n\t\t}\n\t\t<span class=\"pr-u-mask\">{{ intl().fileUploadedListed.one }}</span>\n\t</div>\n\t<span class=\"fileUpload-button button\" [class.mod-filled]=\"buttonFilled()\" aria-hidden=\"true\">{{ intl().selectFile.one }}</span>\n</div>\n@if (entry()) {\n\t<lu-file-entry\n\t\t[media]=\"size() === 'L'\"\n\t\t[size]=\"'L'\"\n\t\t[previewUrl]=\"previewUrl()\"\n\t\t[entry]=\"entry()\"\n\t\t[state]=\"state()\"\n\t\t(deleteFile)=\"deleteFile.emit()\"\n\t\t[inlineMessageError]=\"inlineMessageError()\"\n\t\t[displayFileName]=\"displayFileName()\"\n\t\t[structure]=\"structure()\"\n\t/>\n}\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-file-upload.mjs","sources":["../../../packages/ng/file-upload/translations.ts","../../../packages/ng/file-upload/file-upload.translate.ts","../../../packages/ng/file-upload/formatter.ts","../../../packages/ng/file-upload/base-file-upload/base-file-upload.component.ts","../../../packages/ng/file-upload/file-dropzone/file-dropzone.component.ts","../../../packages/ng/file-upload/file-dropzone/file-dropzone.component.html","../../../packages/ng/file-upload/file-entry/file-entry.type.ts","../../../packages/ng/file-upload/file-entry/file-entry.component.ts","../../../packages/ng/file-upload/file-entry/file-entry.component.html","../../../packages/ng/file-upload/file-upload.type.ts","../../../packages/ng/file-upload/multi/multi-file-upload.component.ts","../../../packages/ng/file-upload/multi/multi-file-upload.component.html","../../../packages/ng/file-upload/single/single-file-upload.component.ts","../../../packages/ng/file-upload/single/single-file-upload.component.html","../../../packages/ng/file-upload/lucca-front-ng-file-upload.ts"],"sourcesContent":["export const Translations = {\n\ten: {\n\t\tacceptedFormat: { one: 'Accepted format:', other: 'Accepted formats:' },\n\t\tselectFile: { one: 'Select a file', other: 'Select files' },\n\t\tdropOrClick: { one: 'Drag and drop file here or <span>click to browse</span>.', other: 'Drag and drop files here or <span>click to browse</span>.' },\n\t\tmaxWeight: { one: 'Maximum size: {{maxSizeDisplay}}. ', other: 'Maximum file size: {{maxSizeDisplay}}. ' },\n\t\tfileUploadedListed: { one: 'You can see the details of the file submitted below.', other: 'You can see the details of the files submitted below.' },\n\t\tall: 'all',\n\t\tfile: '{{fileTypeLastPart}} file',\n\t\tdownload: 'Download',\n\t\tpreview: 'View',\n\t\tdownloadFile: 'Download file \"{{fileName}}\"',\n\t\tdelete: 'Delete',\n\t\tdeleteFile: 'Delete file \"{{fileName}}\"',\n\t\tpassword: 'Password',\n\t\tconfirmPassword: 'Confirm password',\n\t\tedit: 'Edit',\n\t},\n\tde: {\n\t\tacceptedFormat: { one: 'Akzeptiertes Format:', other: 'Akzeptierte Formate:' },\n\t\tselectFile: { one: 'Eine Datei auswählen', other: 'Dateien auswählen' },\n\t\tdropOrClick: { one: 'Drag and drop file here or <span>click to browse</span>.', other: 'Drag and drop files here or <span>click to browse</span>.' },\n\t\tmaxWeight: { one: 'Maximale Größe: {{maxSizeDisplay}}. ', other: 'Maximale Größe für eine Datei: {{maxSizeDisplay}}. ' },\n\t\tfileUploadedListed: { one: 'Die bereits abgelegte Datei ist hier aufgeführt.', other: 'Die bereits abgelegten Dateien sind hier aufgeführt.' },\n\t\tall: 'alle',\n\t\tfile: 'Datei {{fileTypeLastPart}}',\n\t\tdownload: 'Download',\n\t\tpreview: 'Anzeigen',\n\t\tdownloadFile: 'Die Datei „ {{fileName}} “ downloaden',\n\t\tdelete: 'Löschen',\n\t\tdeleteFile: 'Die Datei „ {{fileName}} “ löschen',\n\t\tpassword: 'Passwort',\n\t\tconfirmPassword: 'Passwort',\n\t\tedit: 'Bearbeiten',\n\t},\n\tfr: {\n\t\tacceptedFormat: { one: 'Format accepté :', other: 'Formats acceptés :' },\n\t\tselectFile: { one: 'Sélectionner un fichier', other: 'Sélectionner des fichiers' },\n\t\tdropOrClick: { one: 'Déposez le fichier ici ou <span>cliquez pour le sélectionner</span>.', other: 'Déposez les fichiers ici ou <span>cliquez pour les sélectionner</span>.' },\n\t\tmaxWeight: { one: 'Poids maximum : {{maxSizeDisplay}}. ', other: 'Poids maximum pour un fichier : {{maxSizeDisplay}}. ' },\n\t\tfileUploadedListed: { one: 'Le fichier déjà déposé est détaillé après.', other: 'Les fichiers déjà déposés sont détaillés après.' },\n\t\tall: 'tous',\n\t\tfile: 'Fichier {{fileTypeLastPart}}',\n\t\tdownload: 'Télécharger',\n\t\tpreview: 'Visualiser',\n\t\tdownloadFile: 'Télécharger le fichier « {{fileName}} »',\n\t\tdelete: 'Supprimer',\n\t\tdeleteFile: 'Supprimer le fichier « {{fileName}} »',\n\t\tpassword: 'Mot de passe',\n\t\tconfirmPassword: 'Valider le mot de passe',\n\t\tedit: 'Modifier',\n\t},\n\tit: {\n\t\tacceptedFormat: { one: 'Formato accettato:', other: 'Formati accettati:' },\n\t\tselectFile: { one: 'Selezionare un file', other: 'Selezionare alcuni file' },\n\t\tdropOrClick: { one: 'Rilascia qui il file o <span>clicca per selezionarlo</span>.', other: 'Rilascia qui i file o <span>clicca per selezionarli</span>.' },\n\t\tmaxWeight: { one: 'Dimensione massima: {{maxSizeDisplay}}. ', other: 'Dimensione massima per un file: {{maxSizeDisplay}}. ' },\n\t\tfileUploadedListed: { one: 'Il file già rilasciato è indicato qui sotto.', other: 'I file già rilasciati sono indicati qui sotto.' },\n\t\tall: 'tutti',\n\t\tfile: 'File {{fileTypeLastPart}}',\n\t\tdownload: 'Scaricare',\n\t\tpreview: 'Visualizza',\n\t\tdownloadFile: 'Scaricare il file \"{{fileName}}\"',\n\t\tdelete: 'Eliminare',\n\t\tdeleteFile: 'Eliminare il file \"{{fileName}}\"',\n\t\tpassword: 'Password',\n\t\tconfirmPassword: 'Confermare la password',\n\t\tedit: 'Modificare',\n\t},\n\tnl: {\n\t\tacceptedFormat: { one: 'Goedgekeurd formaat:', other: 'Goedgekeurde formaten:' },\n\t\tselectFile: { one: 'Een bestand selecteren', other: 'Bestanden selecteren' },\n\t\tdropOrClick: { one: 'Kies het bestand hier of <span>klik om te selecteren</span>.', other: 'Kies de bestanden hier of <span>klik om te selecteren</span>.' },\n\t\tmaxWeight: { one: 'Maximale grootte: {{maxSizeDisplay}}. ', other: 'Maximale bestandsgrootte: {{maxSizeDisplay}}. ' },\n\t\tfileUploadedListed: { one: 'Het reeds ingediende bestand wordt naderhand gedetailleerd.', other: 'Reeds ingediende bestanden worden naderhand gedetailleerd.' },\n\t\tall: 'alle',\n\t\tfile: 'Bestand {{fileTypeLastPart}}',\n\t\tdownload: 'Downloaden',\n\t\tpreview: 'Bekijken',\n\t\tdownloadFile: \"Het bestand '{{fileName}}' downloaden\",\n\t\tdelete: 'Verwijderen',\n\t\tdeleteFile: \"Het bestand '{{fileName}}' verwijderen\",\n\t\tpassword: 'Wachtwoord',\n\t\tconfirmPassword: 'Wachtwoord valideren',\n\t\tedit: 'Wijzigen',\n\t},\n\t'nl-BE': {\n\t\tacceptedFormat: { one: 'Goedgekeurd formaat:', other: 'Goedgekeurde formaten:' },\n\t\tselectFile: { one: 'Een bestand selecteren', other: 'Bestanden selecteren' },\n\t\tdropOrClick: { one: 'Kies het bestand hier of <span>klik om te selecteren</span>.', other: 'Kies de bestanden hier of <span>klik om te selecteren</span>.' },\n\t\tmaxWeight: { one: 'Maximale grootte: {{maxSizeDisplay}}. ', other: 'Maximale bestandsgrootte: {{maxSizeDisplay}}. ' },\n\t\tfileUploadedListed: { one: 'Het reeds ingediende bestand wordt naderhand gedetailleerd.', other: 'Reeds ingediende bestanden worden naderhand gedetailleerd.' },\n\t\tall: 'alle',\n\t\tfile: 'Bestand {{fileTypeLastPart}}',\n\t\tdownload: 'Downloaden',\n\t\tpreview: 'Bekijken',\n\t\tdownloadFile: \"Het bestand '{{fileName}}' downloaden\",\n\t\tdelete: 'Verwijderen',\n\t\tdeleteFile: \"Het bestand '{{fileName}}' verwijderen\",\n\t\tpassword: 'Wachtwoord',\n\t\tconfirmPassword: 'Wachtwoord valideren',\n\t\tedit: 'Wijzigen',\n\t},\n\tes: {\n\t\tacceptedFormat: { one: 'Formato aceptado:', other: 'Formatos aceptados:' },\n\t\tselectFile: { one: 'Seleccionar un archivo', other: 'Seleccionar archivos' },\n\t\tdropOrClick: { one: 'Cargue el archivo aquí o <span>pulse para seleccionarlo</span>.', other: 'Cargue los archivos aquí o <span>pulse para seleccionarlos</span>.' },\n\t\tmaxWeight: { one: 'Tamaño máximo: {{maxSizeDisplay}}. ', other: 'Tamaño máximo de un archivo: {{maxSizeDisplay}}. ' },\n\t\tfileUploadedListed: { one: 'A continuación, se detalla el expediente ya presentado.', other: 'A continuación, se detallan los expedientes ya presentados.' },\n\t\tall: 'todos',\n\t\tfile: 'Archivo {{fileTypeLastPart}}',\n\t\tdownload: 'Descargar',\n\t\tpreview: 'Ver',\n\t\tdownloadFile: 'Descargar el archivo «{{fileName}}»',\n\t\tdelete: 'Eliminar',\n\t\tdeleteFile: 'Eliminar el archivo «{{fileName}}»',\n\t\tpassword: 'Contraseña',\n\t\tconfirmPassword: 'Validar la contraseña',\n\t\tedit: 'Editar',\n\t},\n\tpt: {\n\t\tacceptedFormat: { one: 'Formato aceite :', other: 'Formatos aceites :' },\n\t\tselectFile: { one: 'Select a file', other: 'Select files' },\n\t\tdropOrClick: { one: 'Drag and drop file here or <span>click to browse</span>.', other: 'Drag and drop files here or <span>click to browse</span>.' },\n\t\tmaxWeight: { one: 'Maximum size: {{maxSizeDisplay}}. ', other: 'Maximum file size: {{maxSizeDisplay}}. ' },\n\t\tfileUploadedListed: { one: 'You can see the details of the file submitted below.', other: 'You can see the details of the files submitted below.' },\n\t\tall: 'todos',\n\t\tfile: 'Ficheiro {{fileTypeLastPart}}',\n\t\tdownload: 'Descarregar',\n\t\tpreview: 'Visualizar',\n\t\tdownloadFile: 'Descarregar o ficheiro \" {{fileName}} ',\n\t\tdelete: 'Eliminar',\n\t\tdeleteFile: 'Eliminar o ficheiro \" {{fileName}} ',\n\t\tpassword: 'Palavra-passe',\n\t\tconfirmPassword: 'Confirmar a palavra-passe',\n\t\tedit: 'Modificar',\n\t},\n\tpl: {\n\t\tacceptedFormat: { one: 'Akceptowany format:', few: '', many: '', other: 'Akceptowane formaty:' },\n\t\tselectFile: { one: 'Wybierz plik', few: '', many: '', other: 'Wybierz pliki' },\n\t\tdropOrClick: { one: 'Przeciągnij plik tutaj lub <span>kliknij, aby go wybrać</span>.', few: '', many: '', other: 'Przeciągnij pliki tutaj lub <span>kliknij, aby je wybrać</span>.' },\n\t\tmaxWeight: { one: 'Maksymalny rozmiar: {{maxSizeDisplay}}. ', few: '', many: '', other: 'Maksymalny rozmiar pliku: {{maxSizeDisplay}}. ' },\n\t\tfileUploadedListed: { one: 'Plik już przesłany jest szczegółowo opisany poniżej.', few: '', many: '', other: 'Pliki już przesłane są szczegółowo opisane poniżej.' },\n\t\tall: 'wszystkie',\n\t\tfile: 'Plik {{fileTypeLastPart}}',\n\t\tdownload: 'Pobierz',\n\t\tpreview: 'Wyświetl',\n\t\tdownloadFile: 'Pobierz plik „{{fileName}}”',\n\t\tdelete: 'Usuń',\n\t\tdeleteFile: 'Usuń plik „{{fileName}}”',\n\t\tpassword: 'Hasło',\n\t\tconfirmPassword: 'Potwierdź hasło',\n\t\tedit: 'Edytuj',\n\t},\n};\n","import { InjectionToken } from '@angular/core';\nimport { LuTranslation } from '@lucca-front/ng/core';\nimport { Translations } from './translations';\n\nexport const LU_FILE_UPLOAD_TRANSLATIONS = new InjectionToken('LuFileUploadTranslations', {\n\tfactory: () => luFileUploadTranslations,\n});\n\nexport interface LuFileUploadLabel {\n\tacceptedFormat: {\n\t\tone: string;\n\t\tother: string;\n\t};\n\tselectFile: {\n\t\tone: string;\n\t\tother: string;\n\t};\n\tdropOrClick: {\n\t\tone: string;\n\t\tother: string;\n\t};\n\tmaxWeight: {\n\t\tone: string;\n\t\tother: string;\n\t};\n\tfileUploadedListed: {\n\t\tone: string;\n\t\tother: string;\n\t};\n\tall: string;\n\tfile: string;\n\tdownload: string;\n\tpreview: string;\n\tdownloadFile: string;\n\tdelete: string;\n\tdeleteFile: string;\n\tpassword: string;\n\tconfirmPassword: string;\n}\n\nexport const luFileUploadTranslations: LuTranslation<LuFileUploadLabel> = Translations;\n","export const KILO_BYTE = 1000;\nexport const MEGA_BYTE = KILO_BYTE * 1000;\n\nexport function formatFileSize(locale: string, size: number): string {\n\tlet unit = 'byte';\n\tlet value = size;\n\n\tif (size >= MEGA_BYTE) {\n\t\tunit = 'megabyte';\n\t\tvalue /= MEGA_BYTE;\n\t} else if (size >= KILO_BYTE) {\n\t\tunit = 'kilobyte';\n\t\tvalue /= KILO_BYTE;\n\t}\n\n\tconst weightFormatter = Intl.NumberFormat(locale, {\n\t\tnotation: 'compact',\n\t\tstyle: 'unit',\n\t\tunit: unit,\n\t\tunitDisplay: 'narrow',\n\t});\n\n\treturn weightFormatter.format(value);\n}\n","import { booleanAttribute, computed, Directive, effect, inject, input, LOCALE_ID, output } from '@angular/core';\nimport { intlInputOptions } from '@lucca-front/ng/core';\nimport { FORM_FIELD_INSTANCE } from '@lucca-front/ng/form-field';\nimport { LU_FILE_UPLOAD_TRANSLATIONS } from '../file-upload.translate';\nimport { FileUploadSize } from '../file-upload.type';\nimport { formatFileSize, MEGA_BYTE } from '../formatter';\n\nlet nextId = 0;\n\n@Directive()\nexport abstract class BaseFileUploadComponent {\n\tprotected locale = inject(LOCALE_ID);\n\n\tprotected idSuffix = nextId++;\n\n\tprotected droppable = false;\n\n\treadonly intl = input(...intlInputOptions(LU_FILE_UPLOAD_TRANSLATIONS));\n\n\tprotected formFieldRef = inject(FORM_FIELD_INSTANCE, { optional: true });\n\n\tfilePicked = output<File>();\n\n\treadonly accept = input<\n\t\tArray<{\n\t\t\tformat: string;\n\t\t\tname?: string;\n\t\t}>\n\t>([]);\n\n\tprotected readonly defaultAccept = computed(() => [\n\t\t{\n\t\t\tformat: '*',\n\t\t\tname: this.intl().all,\n\t\t},\n\t]);\n\n\tprotected readonly resolvedAccept = computed(() => {\n\t\tconst acceptValue = this.accept();\n\t\treturn acceptValue.length > 0 ? acceptValue : this.defaultAccept();\n\t});\n\n\treadonly acceptNames = computed(() =>\n\t\tthis.resolvedAccept()\n\t\t\t.filter((e) => e.name)\n\t\t\t.map((e) => e.name),\n\t);\n\n\treadonly acceptAttribute = computed(() => this.resolvedAccept().map((e) => e.format));\n\n\treadonly acceptAll = computed(() => {\n\t\treturn this.acceptAttribute().some((str) => str.includes('*'));\n\t});\n\n\treadonly structure = input(false, { transform: booleanAttribute });\n\n\treadonly fileMaxSize = input<number>(80 * MEGA_BYTE);\n\n\treadonly maxSizeDisplay = computed(() => formatFileSize(this.locale, this.fileMaxSize()));\n\n\treadonly size = input<FileUploadSize | null>(null);\n\n\treadonly password = input(false, { transform: booleanAttribute });\n\n\treadonly illustration = input<\n\t\t/** @deprecated use 'invoice' instead */\n\t\t'paper' | 'picture' | 'invoice'\n\t>('invoice');\n\n\treadonly illus = computed(() => {\n\t\tswitch (this.illustration()) {\n\t\t\tcase 'paper':\n\t\t\tcase 'invoice':\n\t\t\t\treturn 'invoice';\n\t\t\tdefault:\n\t\t\t\treturn 'picture';\n\t\t}\n\t});\n\n\treadonly required = input(false, { transform: booleanAttribute });\n\n\treadonly buttonFilled = input(false, { transform: booleanAttribute });\n\n\tconstructor() {\n\t\teffect(() => {\n\t\t\tthis.formFieldRef?.forceInputRequired.set(this.required());\n\t\t});\n\t}\n\n\tfilesChange(event: Event) {\n\t\tconst host = event.target as HTMLInputElement;\n\t\tthis.droppable = false;\n\t\tif (host.files) {\n\t\t\tfor (const file of Array.from(host.files)) {\n\t\t\t\tthis.filePicked.emit(file);\n\t\t\t}\n\t\t}\n\t\thost.value = '';\n\t}\n}\n","import { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';\nimport { BubbleIllustrationComponent } from '@lucca-front/ng/bubble-illustration';\nimport { IntlParamsPipe } from '@lucca-front/ng/core';\nimport { BaseFileUploadComponent } from '../base-file-upload/base-file-upload.component';\n\n@Component({\n\tselector: 'lu-file-dropzone',\n\ttemplateUrl: './file-dropzone.component.html',\n\tstyleUrl: './file-dropzone.component.scss',\n\tencapsulation: ViewEncapsulation.None,\n\timports: [IntlParamsPipe, BubbleIllustrationComponent],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class FileDropzoneComponent extends BaseFileUploadComponent {}\n","<div class=\"fileUpload mod-dropzone\" [class.is-droppable]=\"droppable\" (dragenter)=\"droppable = true\" (dragleave)=\"droppable = false\">\n\t<div class=\"fileUpload-status\">\n\t\t<lu-bubble-illustration [illustration]=\"illus()\" action size=\"L\" />\n\t</div>\n\t<div class=\"fileUpload-instruction\" [attr.id]=\"'fileUpload-instruction-' + idSuffix\">\n\t\t@if (acceptNames().length) {\n\t\t\t<span class=\"fileUpload-instruction-formats\">\n\t\t\t\t@if (acceptNames().length > 1 || acceptAll()) {\n\t\t\t\t\t{{ intl().acceptedFormat.other }}\n\t\t\t\t} @else {\n\t\t\t\t\t{{ intl().acceptedFormat.one }}\n\t\t\t\t}\n\t\t\t\t{{ acceptNames().join(\", \") }}.\n\t\t\t</span>\n\t\t}\n\t\t@if (fileMaxSize()) {\n\t\t\t<span class=\"fileUpload-instruction-size\">{{ intl().maxWeight.other | intlParams: { maxSizeDisplay: maxSizeDisplay() } }}</span>\n\t\t}\n\t</div>\n</div>\n","/**\n * Available FileEntryComponent Types\n */\n\nexport const FILE_ENTRY_STATE = ['success', 'loading', 'error', 'default'] as const;\nexport type FileEntryState = (typeof FILE_ENTRY_STATE)[number];\n\nexport const FILE_ENTRY_SIZE = ['L'] as const;\nexport type FileEntrySize = (typeof FILE_ENTRY_SIZE)[number];\n","import { booleanAttribute, ChangeDetectionStrategy, Component, computed, inject, input, LOCALE_ID, ViewEncapsulation } from '@angular/core';\nimport { outputFromObservable } from '@angular/core/rxjs-interop';\nimport { FormsModule } from '@angular/forms';\nimport { ButtonComponent } from '@lucca-front/ng/button';\nimport { intlInputOptions, IntlParamsPipe, isNotNil } from '@lucca-front/ng/core';\nimport { DividerComponent } from '@lucca-front/ng/divider';\nimport { FormFieldComponent } from '@lucca-front/ng/form-field';\nimport { TextInputComponent } from '@lucca-front/ng/forms';\nimport { IconComponent } from '@lucca-front/ng/icon';\nimport { InlineMessageComponent } from '@lucca-front/ng/inline-message';\nimport { LuTooltipTriggerDirective } from '@lucca-front/ng/tooltip';\nimport { Subject } from 'rxjs';\nimport { FileEntry } from '../file-upload-entry';\nimport { LU_FILE_UPLOAD_TRANSLATIONS } from '../file-upload.translate';\nimport { formatFileSize } from '../formatter';\nimport { FileEntrySize, FileEntryState } from './file-entry.type';\n\n@Component({\n\tselector: 'lu-file-entry',\n\ttemplateUrl: './file-entry.component.html',\n\tstyleUrl: './file-entry.component.scss',\n\tencapsulation: ViewEncapsulation.None,\n\timports: [IconComponent, ButtonComponent, InlineMessageComponent, DividerComponent, FormFieldComponent, TextInputComponent, FormsModule, IntlParamsPipe, LuTooltipTriggerDirective],\n\thost: {\n\t\tclass: 'pr-u-displayContents',\n\t},\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class FileEntryComponent {\n\t#locale = inject(LOCALE_ID);\n\n\treadonly intl = input(...intlInputOptions(LU_FILE_UPLOAD_TRANSLATIONS));\n\n\treadonly state = input<FileEntryState>('default');\n\n\treadonly displayFileName = input(false, { transform: booleanAttribute });\n\n\treadonly structure = input(false, { transform: booleanAttribute });\n\n\treadonly inlineMessageError = input<string | null>(null);\n\n\treadonly entry = input.required<FileEntry>();\n\n\treadonly size = input<FileEntrySize | null>(null);\n\n\treadonly iconOverride = input('');\n\n\treadonly downloadURL = input('');\n\n\treadonly openInNewTab = input(false, { transform: booleanAttribute });\n\n\treadonly password = input('');\n\treadonly passwordChange$ = new Subject<string>();\n\tpasswordChange = outputFromObservable(this.passwordChange$);\n\n\tget withPassword() {\n\t\treturn this.passwordChange$.observed;\n\t}\n\n\treadonly media = input(false, { transform: booleanAttribute });\n\n\treadonly deleteFile$ = new Subject<void>();\n\n\tdeleteFile = outputFromObservable(this.deleteFile$);\n\n\tget deletable() {\n\t\treturn this.deleteFile$.observed;\n\t}\n\n\treadonly fileName = computed(() => this.entry().name);\n\treadonly fileType = computed<string>(() => this.entry().type ?? '');\n\treadonly fileSize = computed<number | null>(() => this.entry().size ?? null);\n\n\treadonly fileSizeDisplay = computed(() => {\n\t\tconst fileSize = this.fileSize();\n\t\treturn isNotNil(fileSize) ? formatFileSize(this.#locale, fileSize) : null;\n\t});\n\treadonly fileTypeDisplay = computed(() => {\n\t\tconst fileExtension: string = extractFileExtension(this.fileName(), this.fileType());\n\n\t\treturn this.intl().file.replace('{{fileTypeLastPart}}', fileExtension);\n\t});\n\n\treadonly previewUrl = input<string>('');\n\n\treadonly fileEntryIconSrc = computed(() => {\n\t\tconst fileExtension = this.fileName().split('.').pop();\n\t\tconst fileEntryIconRoot = 'https://cdn.lucca.fr/transverse/prisme/visuals/file-entry/';\n\t\tconst fileEntryIconExtension = '.svg';\n\n\t\tswitch (fileExtension) {\n\t\t\tcase 'pdf':\n\t\t\tcase 'xls':\n\t\t\tcase 'xlsx':\n\t\t\tcase 'doc':\n\t\t\tcase 'csv':\n\t\t\t\treturn fileEntryIconRoot + fileExtension + fileEntryIconExtension;\n\t\t\tcase 'jpg':\n\t\t\tcase 'jpeg':\n\t\t\tcase 'png':\n\t\t\tcase 'gif':\n\t\t\tcase 'svg':\n\t\t\t\treturn fileEntryIconRoot + 'image' + fileEntryIconExtension;\n\t\t\tdefault:\n\t\t\t\treturn fileEntryIconRoot + 'default' + fileEntryIconExtension;\n\t\t}\n\t});\n\n\treadonly tooltip = computed(() => {\n\t\tconst fileSize = this.fileSizeDisplay() ? ` – ${this.fileSizeDisplay()}` : '';\n\t\tif (this.state() === 'error') {\n\t\t\tif (!this.media()) {\n\t\t\t\treturn null;\n\t\t\t} else {\n\t\t\t\treturn this.fileName() + fileSize;\n\t\t\t}\n\t\t}\n\n\t\tif (!this.media() && this.size() === 'L') {\n\t\t\treturn null;\n\t\t}\n\n\t\tif (this.size() === null && !this.media()) {\n\t\t\treturn this.fileTypeDisplay() + fileSize;\n\t\t}\n\n\t\treturn this.fileName() + ' – ' + this.fileTypeDisplay() + fileSize;\n\t});\n\n\treadonly dlClasses = computed(() => ({\n\t\t[`is-${this.state()}`]: !!this.state(),\n\t\t[`mod-${this.size()}`]: !!this.size(),\n\t}));\n}\n\nfunction extractFileExtension(fileName: string, type?: string): string {\n\tif (!type) {\n\t\treturn fileName.split('.')[1]?.toUpperCase() || '';\n\t}\n\n\tswitch (type) {\n\t\tcase 'application/vnd.ms-excel':\n\t\t\treturn 'XLS';\n\t\tcase 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet':\n\t\t\treturn 'XLSX';\n\t\tcase 'application/msword':\n\t\t\treturn 'DOC';\n\t\tcase 'application/vnd.openxmlformats-officedocument.wordprocessingml.document':\n\t\t\treturn 'DOCX';\n\t\tdefault:\n\t\t\treturn type.split('/')[1].toUpperCase();\n\t}\n}\n","<dl class=\"fileEntry\" [class.mod-media]=\"media()\" [class.mod-structure]=\"structure()\" [class]=\"dlClasses()\">\n\t@if (!media()) {\n\t\t<dt class=\"fileEntry-filename\">\n\t\t\t<div class=\"fileEntry-filename-tooltip\" luTooltip luTooltipWhenEllipsis>{{ fileName() }}</div>\n\t\t</dt>\n\t\t@if (state() === \"error\" && inlineMessageError()) {\n\t\t\t<dd class=\"fileEntry-inlineMessage\">\n\t\t\t\t<lu-inline-message withTooltip [label]=\"inlineMessageError()\" [state]=\"'error'\" />\n\t\t\t</dd>\n\t\t} @else {\n\t\t\t<dd class=\"fileEntry-description\">\n\t\t\t\t<span class=\"fileEntry-description-format\" luTooltip luTooltipWhenEllipsis>{{ fileTypeDisplay() }}</span>\n\t\t\t\t@if (fileSizeDisplay(); as fileSizeDisplay) {\n\t\t\t\t\t<span class=\"pr-u-mask\"> – </span>\n\t\t\t\t\t<lu-divider vertical class=\"fileEntry-description-divider\" />\n\t\t\t\t\t<span class=\"fileEntry-description-size\">{{ fileSizeDisplay }}</span>\n\t\t\t\t}\n\t\t\t</dd>\n\t\t}\n\t}\n\t<dd class=\"fileEntry-status\">\n\t\t<div class=\"fileEntry-status-content\" [luTooltip]=\"tooltip()\">\n\t\t\t@if (state() === \"error\" && inlineMessageError()) {\n\t\t\t\t@if (media()) {\n\t\t\t\t\t<div class=\"fileEntry-status-content-inside\">\n\t\t\t\t\t\t<lu-inline-message class=\"fileEntry-status-content-inlineMessage\" [label]=\"inlineMessageError()\" [state]=\"'error'\" />\n\t\t\t\t\t</div>\n\t\t\t\t} @else {\n\t\t\t\t\t<div class=\"fileEntry-status-content-inside\">\n\t\t\t\t\t\t<lu-icon class=\"fileEntry-status-content-inside-icon\" icon=\"signError\" />\n\t\t\t\t\t</div>\n\t\t\t\t}\n\t\t\t} @else {\n\t\t\t\t@if (previewUrl() && state() !== \"error\") {\n\t\t\t\t\t<div class=\"fileEntry-status-content-inside\">\n\t\t\t\t\t\t<img class=\"fileEntry-status-content-inside-img\" [src]=\"previewUrl()\" alt=\"\" loading=\"lazy\" />\n\t\t\t\t\t</div>\n\t\t\t\t}\n\t\t\t\t@if (state() === \"loading\") {\n\t\t\t\t\t<div class=\"fileEntry-status-content-inside\">\n\t\t\t\t\t\t<div class=\"fileEntry-status-content-inside-loading loading\"></div>\n\t\t\t\t\t</div>\n\t\t\t\t}\n\t\t\t\t@if (!previewUrl() && state() !== \"loading\") {\n\t\t\t\t\t<div class=\"fileEntry-status-content-inside\">\n\t\t\t\t\t\t<img\n\t\t\t\t\t\t\tclass=\"fileEntry-status-content-inside-svg\"\n\t\t\t\t\t\t\t[attr.src]=\"iconOverride() || fileEntryIconSrc()\"\n\t\t\t\t\t\t\talt=\"\"\n\t\t\t\t\t\t\twidth=\"32\"\n\t\t\t\t\t\t\theight=\"32\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t}\n\t\t\t}\n\t\t\t@if (displayFileName() && media()) {\n\t\t\t\t<div class=\"fileEntry-status-content-fileName\" aria-hidden=\"true\">{{ fileName() }}</div>\n\t\t\t}\n\t\t</div>\n\t</dd>\n\t@if (downloadURL() || deletable) {\n\t\t<dd class=\"fileEntry-toolbar\">\n\t\t\t<div class=\"fileToolbar\" [class.mod-disablePositioning]=\"!media()\" [class.mod-L]=\"size() === 'L'\">\n\t\t\t\t<ul class=\"fileToolbar-list\">\n\t\t\t\t\t@if (downloadURL()) {\n\t\t\t\t\t\t<li class=\"fileToolbar-list-item\">\n\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\t[href]=\"downloadURL()\"\n\t\t\t\t\t\t\t\t[attr.target]=\"openInNewTab() ? '_blank' : null\"\n\t\t\t\t\t\t\t\t[attr.rel]=\"openInNewTab() ? 'noopener noreferrer' : null\"\n\t\t\t\t\t\t\t\t[attr.download]=\"openInNewTab() ? null : 'download'\"\n\t\t\t\t\t\t\t\tclass=\"fileToolbar-list-item-button\"\n\t\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\t\tluButton\n\t\t\t\t\t\t\t\t[luTooltip]=\"openInNewTab() ? intl().preview : intl().download\"\n\t\t\t\t\t\t\t\tluTooltipOnlyForDisplay\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<lu-icon\n\t\t\t\t\t\t\t\t\tclass=\"fileToolbar-list-item-button-icon\"\n\t\t\t\t\t\t\t\t\t[icon]=\"openInNewTab() ? 'eye' : 'arrowDownload'\"\n\t\t\t\t\t\t\t\t\t[alt]=\"intl().downloadFile | intlParams: { fileName: fileName() }\"\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t</li>\n\t\t\t\t\t}\n\t\t\t\t\t@if (deletable) {\n\t\t\t\t\t\t<li class=\"fileToolbar-list-item\">\n\t\t\t\t\t\t\t<button\n\t\t\t\t\t\t\t\tclass=\"fileToolbar-list-item-button\"\n\t\t\t\t\t\t\t\t[class.palette-critical]=\"state() === 'error'\"\n\t\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\t\tluButton\n\t\t\t\t\t\t\t\tdelete\n\t\t\t\t\t\t\t\t[luTooltip]=\"intl().delete\"\n\t\t\t\t\t\t\t\tluTooltipOnlyForDisplay\n\t\t\t\t\t\t\t\t(click)=\"deleteFile$.next()\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<lu-icon\n\t\t\t\t\t\t\t\t\tclass=\"fileToolbar-list-item-button-icon\"\n\t\t\t\t\t\t\t\t\ticon=\"trashDelete\"\n\t\t\t\t\t\t\t\t\t[alt]=\"intl().deleteFile | intlParams: { fileName: fileName() }\"\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</button>\n\t\t\t\t\t\t</li>\n\t\t\t\t\t}\n\t\t\t\t</ul>\n\t\t\t</div>\n\t\t</dd>\n\t}\n</dl>\n@if (withPassword) {\n\t<div class=\"fileEntry_box box mod-withArrow mod-neutral\">\n\t\t<div class=\"box-arrow mod-neutral\"></div>\n\t\t<lu-form-field [label]=\"intl().password\">\n\t\t\t<div class=\"fileEntry_box-field\">\n\t\t\t\t<lu-text-input\n\t\t\t\t\tclass=\"fileEntry_box-field-textField\"\n\t\t\t\t\trequired\n\t\t\t\t\thasClearer\n\t\t\t\t\tsearchIcon=\"searchMagnifyingGlass\"\n\t\t\t\t\ttype=\"password\"\n\t\t\t\t\t[ngModel]=\"password()\"\n\t\t\t\t\t(ngModelChange)=\"passwordChange$.next($event)\"\n\t\t\t\t/>\n\t\t\t\t<button class=\"fileEntry_box-field-button\" luButton type=\"button\">{{ intl().confirmPassword }}</button>\n\t\t\t</div>\n\t\t</lu-form-field>\n\t</div>\n}\n","/**\n * Available FileUploadComponent Types\n */\n\nexport const FILE_UPLOAD_STATE = ['loading', 'success', 'error', 'default'] as const;\nexport type FileUploadState = (typeof FILE_UPLOAD_STATE)[number];\n\nexport const FILE_UPLOAD_SIZE = ['L'] as const;\nexport type FileUploadSize = (typeof FILE_UPLOAD_SIZE)[number];\n","import { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';\nimport { BubbleIllustrationComponent } from '@lucca-front/ng/bubble-illustration';\nimport { IntlParamsPipe } from '@lucca-front/ng/core';\nimport { InputDirective } from '@lucca-front/ng/form-field';\nimport { BaseFileUploadComponent } from '../base-file-upload/base-file-upload.component';\n\n@Component({\n\tselector: 'lu-multi-file-upload',\n\ttemplateUrl: './multi-file-upload.component.html',\n\tstyleUrl: './multi-file-upload.component.scss',\n\tencapsulation: ViewEncapsulation.None,\n\thost: {\n\t\t'[class.mod-structure]': 'structure()',\n\t},\n\timports: [InputDirective, IntlParamsPipe, BubbleIllustrationComponent],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class MultiFileUploadComponent extends BaseFileUploadComponent {}\n","<div class=\"fileUpload\" [class.is-droppable]=\"droppable\" [class.mod-L]=\"size() === 'L'\" [class.mod-structure]=\"structure()\">\n\t<input\n\t\t[attr.aria-describedby]=\"'fileUpload-instruction-' + idSuffix\"\n\t\tclass=\"fileUpload-input\"\n\t\ttype=\"file\"\n\t\ttitle=\"\"\n\t\t[attr.accept]=\"acceptAttribute().length > 0 ? acceptAttribute() : null\"\n\t\tluInput\n\t\t(dragenter)=\"droppable = true\"\n\t\t(dragleave)=\"droppable = false\"\n\t\t(change)=\"filesChange($event)\"\n\t\tmultiple=\"multiple\"\n\t\t#inputRef\n\t/>\n\t<div class=\"fileUpload-status\">\n\t\t<lu-bubble-illustration [illustration]=\"illus()\" action size=\"L\" />\n\t</div>\n\t@if (size() === \"L\") {\n\t\t<ng-content />\n\t}\n\t<div class=\"fileUpload-instruction\" [attr.id]=\"'fileUpload-instruction-' + idSuffix\">\n\t\t<span class=\"fileUpload-instruction-action\" aria-hidden=\"true\" [innerHTML]=\"intl().dropOrClick.other\"></span>\n\t\t@if (acceptNames().length) {\n\t\t\t<span class=\"fileUpload-instruction-formats\">\n\t\t\t\t@if (acceptNames().length > 1 || acceptAll()) {\n\t\t\t\t\t{{ intl().acceptedFormat.other }}\n\t\t\t\t} @else {\n\t\t\t\t\tintl().acceptedFormat.one\n\t\t\t\t}\n\t\t\t\t{{ acceptNames().join(\", \") }}.\n\t\t\t</span>\n\t\t}\n\t\t@if (fileMaxSize()) {\n\t\t\t<span class=\"fileUpload-instruction-size\">{{ intl().maxWeight.other | intlParams: { maxSizeDisplay: maxSizeDisplay() } }}</span>\n\t\t}\n\t\t<span class=\"pr-u-mask\">{{ intl().fileUploadedListed.other }}</span>\n\t</div>\n\t<span class=\"fileUpload-button button\" [class.mod-filled]=\"buttonFilled()\" aria-hidden=\"true\">{{ intl().selectFile.other }}</span>\n</div>\n","import { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';\nimport { BubbleIllustrationComponent } from '@lucca-front/ng/bubble-illustration';\nimport { IntlParamsPipe } from '@lucca-front/ng/core';\nimport { InputDirective } from '@lucca-front/ng/form-field';\nimport { BaseFileUploadComponent } from '../base-file-upload/base-file-upload.component';\n\n@Component({\n\tselector: 'lu-single-file-upload',\n\ttemplateUrl: './single-file-upload.component.html',\n\tstyleUrl: './single-file-upload.component.scss',\n\tencapsulation: ViewEncapsulation.None,\n\timports: [InputDirective, IntlParamsPipe, BubbleIllustrationComponent],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SingleFileUploadComponent extends BaseFileUploadComponent {}\n","<div class=\"fileUpload\" [class.is-droppable]=\"droppable\" [class.mod-L]=\"size() === 'L'\" [class.mod-structure]=\"structure()\">\n\t<input\n\t\tclass=\"fileUpload-input\"\n\t\ttype=\"file\"\n\t\ttitle=\"\"\n\t\t[attr.accept]=\"acceptAttribute().length > 0 ? acceptAttribute() : null\"\n\t\tluInput\n\t\t(dragenter)=\"droppable = true\"\n\t\t(dragleave)=\"droppable = false\"\n\t\t(change)=\"filesChange($event)\"\n\t\t[attr.aria-describedby]=\"'fileUpload-instruction-' + idSuffix\"\n\t/>\n\t<div class=\"fileUpload-status\">\n\t\t<lu-bubble-illustration [illustration]=\"illus()\" action size=\"L\" />\n\t</div>\n\t@if (size() === \"L\") {\n\t\t<ng-content />\n\t}\n\t<div class=\"fileUpload-instruction\" [attr.id]=\"'fileUpload-instruction-' + idSuffix\">\n\t\t<span class=\"fileUpload-instruction-action\" aria-hidden=\"true\" [innerHTML]=\"intl().dropOrClick.one\"></span>\n\t\t@if (acceptNames().length) {\n\t\t\t<span class=\"fileUpload-instruction-formats\">\n\t\t\t\t@if (acceptNames().length > 1 || acceptAll()) {\n\t\t\t\t\t{{ intl().acceptedFormat.other }}\n\t\t\t\t} @else {\n\t\t\t\t\t{{ intl().acceptedFormat.one }}\n\t\t\t\t}\n\t\t\t\t{{ acceptNames().join(\", \") }}.\n\t\t\t</span>\n\t\t}\n\t\t@if (fileMaxSize()) {\n\t\t\t<span class=\"fileUpload-instruction-size\">{{ intl().maxWeight.one | intlParams: { maxSizeDisplay: maxSizeDisplay() } }}</span>\n\t\t}\n\t\t<span class=\"pr-u-mask\">{{ intl().fileUploadedListed.one }}</span>\n\t</div>\n\t<span class=\"fileUpload-button button\" [class.mod-filled]=\"buttonFilled()\" aria-hidden=\"true\">{{ intl().selectFile.one }}</span>\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}