@gouvfr/dsfr 1.4.0 → 1.4.1

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 (427) hide show
  1. package/.config/config.js +1 -1
  2. package/.config/icon-deprecated.scss +1 -1
  3. package/.config/icon.scss +1 -1
  4. package/dist/component/accordion/accordion.css +1 -1
  5. package/dist/component/accordion/accordion.legacy.css +1 -1
  6. package/dist/component/accordion/accordion.legacy.min.css +1 -1
  7. package/dist/component/accordion/accordion.main.css +1 -1
  8. package/dist/component/accordion/accordion.main.min.css +1 -1
  9. package/dist/component/accordion/accordion.min.css +1 -1
  10. package/dist/component/accordion/accordion.module.js +2 -2
  11. package/dist/component/accordion/accordion.module.js.map +1 -1
  12. package/dist/component/accordion/accordion.module.min.js +1 -1
  13. package/dist/component/accordion/accordion.module.min.js.map +1 -1
  14. package/dist/component/accordion/accordion.nomodule.js +2 -2
  15. package/dist/component/accordion/accordion.nomodule.js.map +1 -1
  16. package/dist/component/accordion/accordion.nomodule.min.js +1 -1
  17. package/dist/component/accordion/accordion.nomodule.min.js.map +1 -1
  18. package/dist/component/alert/alert.css +1 -1
  19. package/dist/component/alert/alert.legacy.css +1 -1
  20. package/dist/component/alert/alert.legacy.min.css +2 -2
  21. package/dist/component/alert/alert.main.css +1 -1
  22. package/dist/component/alert/alert.main.min.css +1 -1
  23. package/dist/component/alert/alert.min.css +2 -2
  24. package/dist/component/badge/badge.css +1 -1
  25. package/dist/component/badge/badge.legacy.css +1 -1
  26. package/dist/component/badge/badge.legacy.min.css +1 -1
  27. package/dist/component/badge/badge.main.css +1 -1
  28. package/dist/component/badge/badge.main.min.css +1 -1
  29. package/dist/component/badge/badge.min.css +1 -1
  30. package/dist/component/breadcrumb/breadcrumb.css +1 -1
  31. package/dist/component/breadcrumb/breadcrumb.legacy.css +1 -1
  32. package/dist/component/breadcrumb/breadcrumb.legacy.min.css +1 -1
  33. package/dist/component/breadcrumb/breadcrumb.main.css +1 -1
  34. package/dist/component/breadcrumb/breadcrumb.main.min.css +1 -1
  35. package/dist/component/breadcrumb/breadcrumb.min.css +1 -1
  36. package/dist/component/breadcrumb/breadcrumb.module.js +2 -2
  37. package/dist/component/breadcrumb/breadcrumb.module.js.map +1 -1
  38. package/dist/component/breadcrumb/breadcrumb.module.min.js +1 -1
  39. package/dist/component/breadcrumb/breadcrumb.module.min.js.map +1 -1
  40. package/dist/component/breadcrumb/breadcrumb.nomodule.js +2 -2
  41. package/dist/component/breadcrumb/breadcrumb.nomodule.js.map +1 -1
  42. package/dist/component/breadcrumb/breadcrumb.nomodule.min.js +1 -1
  43. package/dist/component/breadcrumb/breadcrumb.nomodule.min.js.map +1 -1
  44. package/dist/component/button/button.css +1 -1
  45. package/dist/component/button/button.legacy.css +1 -1
  46. package/dist/component/button/button.legacy.min.css +1 -1
  47. package/dist/component/button/button.main.css +1 -1
  48. package/dist/component/button/button.main.min.css +1 -1
  49. package/dist/component/button/button.min.css +1 -1
  50. package/dist/component/button/button.module.js +2 -2
  51. package/dist/component/button/button.module.js.map +1 -1
  52. package/dist/component/button/button.module.min.js +1 -1
  53. package/dist/component/button/button.module.min.js.map +1 -1
  54. package/dist/component/button/button.nomodule.js +2 -2
  55. package/dist/component/button/button.nomodule.js.map +1 -1
  56. package/dist/component/button/button.nomodule.min.js +1 -1
  57. package/dist/component/button/button.nomodule.min.js.map +1 -1
  58. package/dist/component/callout/callout.css +1 -1
  59. package/dist/component/callout/callout.legacy.css +1 -1
  60. package/dist/component/callout/callout.legacy.min.css +1 -1
  61. package/dist/component/callout/callout.main.css +1 -1
  62. package/dist/component/callout/callout.main.min.css +1 -1
  63. package/dist/component/callout/callout.min.css +1 -1
  64. package/dist/component/card/card.css +1 -1
  65. package/dist/component/card/card.legacy.css +1 -1
  66. package/dist/component/card/card.legacy.min.css +1 -1
  67. package/dist/component/card/card.main.css +1 -1
  68. package/dist/component/card/card.main.min.css +1 -1
  69. package/dist/component/card/card.min.css +1 -1
  70. package/dist/component/checkbox/checkbox.css +1 -1
  71. package/dist/component/checkbox/checkbox.legacy.css +1 -1
  72. package/dist/component/checkbox/checkbox.legacy.min.css +1 -1
  73. package/dist/component/checkbox/checkbox.main.css +1 -1
  74. package/dist/component/checkbox/checkbox.main.min.css +1 -1
  75. package/dist/component/checkbox/checkbox.min.css +1 -1
  76. package/dist/component/component.css +74 -233
  77. package/dist/component/component.css.map +1 -1
  78. package/dist/component/component.legacy.css +33 -21
  79. package/dist/component/component.legacy.css.map +1 -1
  80. package/dist/component/component.legacy.min.css +2 -2
  81. package/dist/component/component.legacy.min.css.map +1 -1
  82. package/dist/component/component.main.css +42 -213
  83. package/dist/component/component.main.css.map +1 -1
  84. package/dist/component/component.main.min.css +2 -2
  85. package/dist/component/component.main.min.css.map +1 -1
  86. package/dist/component/component.min.css +3 -3
  87. package/dist/component/component.min.css.map +1 -1
  88. package/dist/component/component.module.js +2 -2
  89. package/dist/component/component.module.js.map +1 -1
  90. package/dist/component/component.module.min.js +1 -1
  91. package/dist/component/component.module.min.js.map +1 -1
  92. package/dist/component/component.nomodule.js +2 -2
  93. package/dist/component/component.nomodule.js.map +1 -1
  94. package/dist/component/component.nomodule.min.js +1 -1
  95. package/dist/component/component.nomodule.min.js.map +1 -1
  96. package/dist/component/connect/connect.css +1 -1
  97. package/dist/component/connect/connect.legacy.css +1 -1
  98. package/dist/component/connect/connect.legacy.min.css +1 -1
  99. package/dist/component/connect/connect.main.css +1 -1
  100. package/dist/component/connect/connect.main.min.css +1 -1
  101. package/dist/component/connect/connect.min.css +1 -1
  102. package/dist/component/consent/consent.css +1 -1
  103. package/dist/component/consent/consent.legacy.css +1 -1
  104. package/dist/component/consent/consent.legacy.min.css +1 -1
  105. package/dist/component/consent/consent.main.css +1 -1
  106. package/dist/component/consent/consent.main.min.css +1 -1
  107. package/dist/component/consent/consent.min.css +1 -1
  108. package/dist/component/content/content.css +1 -1
  109. package/dist/component/content/content.legacy.css +1 -1
  110. package/dist/component/content/content.legacy.min.css +1 -1
  111. package/dist/component/content/content.main.css +1 -1
  112. package/dist/component/content/content.main.min.css +1 -1
  113. package/dist/component/content/content.min.css +1 -1
  114. package/dist/component/display/display.module.js +2 -2
  115. package/dist/component/display/display.module.js.map +1 -1
  116. package/dist/component/display/display.module.min.js +1 -1
  117. package/dist/component/display/display.module.min.js.map +1 -1
  118. package/dist/component/display/display.nomodule.js +2 -2
  119. package/dist/component/display/display.nomodule.js.map +1 -1
  120. package/dist/component/display/display.nomodule.min.js +1 -1
  121. package/dist/component/display/display.nomodule.min.js.map +1 -1
  122. package/dist/component/follow/follow.css +13 -200
  123. package/dist/component/follow/follow.css.map +1 -1
  124. package/dist/component/follow/follow.legacy.css +1 -1
  125. package/dist/component/follow/follow.legacy.min.css +1 -1
  126. package/dist/component/follow/follow.main.css +13 -200
  127. package/dist/component/follow/follow.main.css.map +1 -1
  128. package/dist/component/follow/follow.main.min.css +2 -2
  129. package/dist/component/follow/follow.main.min.css.map +1 -1
  130. package/dist/component/follow/follow.min.css +2 -2
  131. package/dist/component/follow/follow.min.css.map +1 -1
  132. package/dist/component/footer/footer.css +1 -1
  133. package/dist/component/footer/footer.legacy.css +1 -1
  134. package/dist/component/footer/footer.legacy.min.css +1 -1
  135. package/dist/component/footer/footer.main.css +1 -1
  136. package/dist/component/footer/footer.main.min.css +1 -1
  137. package/dist/component/footer/footer.min.css +1 -1
  138. package/dist/component/form/form.css +1 -1
  139. package/dist/component/form/form.legacy.css +1 -1
  140. package/dist/component/form/form.legacy.min.css +1 -1
  141. package/dist/component/form/form.main.css +1 -1
  142. package/dist/component/form/form.main.min.css +1 -1
  143. package/dist/component/form/form.min.css +1 -1
  144. package/dist/component/header/header.css +1 -1
  145. package/dist/component/header/header.legacy.css +1 -1
  146. package/dist/component/header/header.legacy.min.css +1 -1
  147. package/dist/component/header/header.main.css +1 -1
  148. package/dist/component/header/header.main.min.css +1 -1
  149. package/dist/component/header/header.min.css +1 -1
  150. package/dist/component/header/header.module.js +2 -2
  151. package/dist/component/header/header.module.js.map +1 -1
  152. package/dist/component/header/header.module.min.js +1 -1
  153. package/dist/component/header/header.module.min.js.map +1 -1
  154. package/dist/component/header/header.nomodule.js +2 -2
  155. package/dist/component/header/header.nomodule.js.map +1 -1
  156. package/dist/component/header/header.nomodule.min.js +1 -1
  157. package/dist/component/header/header.nomodule.min.js.map +1 -1
  158. package/dist/component/highlight/highlight.css +1 -1
  159. package/dist/component/highlight/highlight.legacy.css +1 -1
  160. package/dist/component/highlight/highlight.legacy.min.css +1 -1
  161. package/dist/component/highlight/highlight.main.css +1 -1
  162. package/dist/component/highlight/highlight.main.min.css +1 -1
  163. package/dist/component/highlight/highlight.min.css +1 -1
  164. package/dist/component/input/input.css +1 -1
  165. package/dist/component/input/input.legacy.css +1 -1
  166. package/dist/component/input/input.legacy.min.css +1 -1
  167. package/dist/component/input/input.main.css +1 -1
  168. package/dist/component/input/input.main.min.css +1 -1
  169. package/dist/component/input/input.min.css +1 -1
  170. package/dist/component/link/link.css +1 -1
  171. package/dist/component/link/link.legacy.css +1 -1
  172. package/dist/component/link/link.legacy.min.css +1 -1
  173. package/dist/component/link/link.main.css +1 -1
  174. package/dist/component/link/link.main.min.css +1 -1
  175. package/dist/component/link/link.min.css +1 -1
  176. package/dist/component/logo/logo.css +1 -1
  177. package/dist/component/logo/logo.legacy.css +1 -1
  178. package/dist/component/logo/logo.legacy.min.css +1 -1
  179. package/dist/component/logo/logo.main.css +1 -1
  180. package/dist/component/logo/logo.main.min.css +1 -1
  181. package/dist/component/logo/logo.min.css +1 -1
  182. package/dist/component/modal/modal.css +1 -1
  183. package/dist/component/modal/modal.legacy.css +1 -1
  184. package/dist/component/modal/modal.legacy.min.css +1 -1
  185. package/dist/component/modal/modal.main.css +1 -1
  186. package/dist/component/modal/modal.main.min.css +1 -1
  187. package/dist/component/modal/modal.min.css +1 -1
  188. package/dist/component/modal/modal.module.js +2 -2
  189. package/dist/component/modal/modal.module.js.map +1 -1
  190. package/dist/component/modal/modal.module.min.js +1 -1
  191. package/dist/component/modal/modal.module.min.js.map +1 -1
  192. package/dist/component/modal/modal.nomodule.js +2 -2
  193. package/dist/component/modal/modal.nomodule.js.map +1 -1
  194. package/dist/component/modal/modal.nomodule.min.js +1 -1
  195. package/dist/component/modal/modal.nomodule.min.js.map +1 -1
  196. package/dist/component/navigation/navigation.css +1 -1
  197. package/dist/component/navigation/navigation.legacy.css +1 -1
  198. package/dist/component/navigation/navigation.legacy.min.css +1 -1
  199. package/dist/component/navigation/navigation.main.css +1 -1
  200. package/dist/component/navigation/navigation.main.min.css +1 -1
  201. package/dist/component/navigation/navigation.min.css +1 -1
  202. package/dist/component/navigation/navigation.module.js +2 -2
  203. package/dist/component/navigation/navigation.module.js.map +1 -1
  204. package/dist/component/navigation/navigation.module.min.js +1 -1
  205. package/dist/component/navigation/navigation.module.min.js.map +1 -1
  206. package/dist/component/navigation/navigation.nomodule.js +2 -2
  207. package/dist/component/navigation/navigation.nomodule.js.map +1 -1
  208. package/dist/component/navigation/navigation.nomodule.min.js +1 -1
  209. package/dist/component/navigation/navigation.nomodule.min.js.map +1 -1
  210. package/dist/component/pagination/pagination.css +1 -1
  211. package/dist/component/pagination/pagination.legacy.css +1 -1
  212. package/dist/component/pagination/pagination.legacy.min.css +1 -1
  213. package/dist/component/pagination/pagination.main.css +1 -1
  214. package/dist/component/pagination/pagination.main.min.css +1 -1
  215. package/dist/component/pagination/pagination.min.css +1 -1
  216. package/dist/component/quote/quote.css +1 -1
  217. package/dist/component/quote/quote.legacy.css +1 -1
  218. package/dist/component/quote/quote.legacy.min.css +1 -1
  219. package/dist/component/quote/quote.main.css +1 -1
  220. package/dist/component/quote/quote.main.min.css +1 -1
  221. package/dist/component/quote/quote.min.css +1 -1
  222. package/dist/component/radio/radio.css +1 -1
  223. package/dist/component/radio/radio.legacy.css +1 -1
  224. package/dist/component/radio/radio.legacy.min.css +1 -1
  225. package/dist/component/radio/radio.main.css +1 -1
  226. package/dist/component/radio/radio.main.min.css +1 -1
  227. package/dist/component/radio/radio.min.css +1 -1
  228. package/dist/component/search/search.css +1 -1
  229. package/dist/component/search/search.legacy.css +1 -1
  230. package/dist/component/search/search.legacy.min.css +1 -1
  231. package/dist/component/search/search.main.css +1 -1
  232. package/dist/component/search/search.main.min.css +1 -1
  233. package/dist/component/search/search.min.css +1 -1
  234. package/dist/component/select/select.css +1 -1
  235. package/dist/component/select/select.legacy.css +1 -1
  236. package/dist/component/select/select.legacy.min.css +1 -1
  237. package/dist/component/select/select.main.css +1 -1
  238. package/dist/component/select/select.main.min.css +1 -1
  239. package/dist/component/select/select.min.css +1 -1
  240. package/dist/component/share/share.css +1 -1
  241. package/dist/component/share/share.legacy.css +1 -1
  242. package/dist/component/share/share.legacy.min.css +1 -1
  243. package/dist/component/share/share.main.css +1 -1
  244. package/dist/component/share/share.main.min.css +2 -2
  245. package/dist/component/share/share.min.css +2 -2
  246. package/dist/component/sidemenu/sidemenu.css +1 -1
  247. package/dist/component/sidemenu/sidemenu.legacy.css +1 -1
  248. package/dist/component/sidemenu/sidemenu.legacy.min.css +1 -1
  249. package/dist/component/sidemenu/sidemenu.main.css +1 -1
  250. package/dist/component/sidemenu/sidemenu.main.min.css +1 -1
  251. package/dist/component/sidemenu/sidemenu.min.css +1 -1
  252. package/dist/component/sidemenu/sidemenu.module.js +2 -2
  253. package/dist/component/sidemenu/sidemenu.module.js.map +1 -1
  254. package/dist/component/sidemenu/sidemenu.module.min.js +1 -1
  255. package/dist/component/sidemenu/sidemenu.module.min.js.map +1 -1
  256. package/dist/component/sidemenu/sidemenu.nomodule.js +2 -2
  257. package/dist/component/sidemenu/sidemenu.nomodule.js.map +1 -1
  258. package/dist/component/sidemenu/sidemenu.nomodule.min.js +1 -1
  259. package/dist/component/sidemenu/sidemenu.nomodule.min.js.map +1 -1
  260. package/dist/component/skiplink/skiplink.css +1 -1
  261. package/dist/component/skiplink/skiplink.legacy.css +1 -1
  262. package/dist/component/skiplink/skiplink.legacy.min.css +1 -1
  263. package/dist/component/skiplink/skiplink.main.css +1 -1
  264. package/dist/component/skiplink/skiplink.main.min.css +1 -1
  265. package/dist/component/skiplink/skiplink.min.css +1 -1
  266. package/dist/component/summary/summary.css +1 -1
  267. package/dist/component/summary/summary.legacy.css +1 -1
  268. package/dist/component/summary/summary.legacy.min.css +2 -2
  269. package/dist/component/summary/summary.main.css +1 -1
  270. package/dist/component/summary/summary.main.min.css +1 -1
  271. package/dist/component/summary/summary.min.css +2 -2
  272. package/dist/component/tab/tab.css +1 -1
  273. package/dist/component/tab/tab.legacy.css +1 -1
  274. package/dist/component/tab/tab.legacy.min.css +1 -1
  275. package/dist/component/tab/tab.main.css +1 -1
  276. package/dist/component/tab/tab.main.min.css +1 -1
  277. package/dist/component/tab/tab.min.css +1 -1
  278. package/dist/component/tab/tab.module.js +2 -2
  279. package/dist/component/tab/tab.module.js.map +1 -1
  280. package/dist/component/tab/tab.module.min.js +1 -1
  281. package/dist/component/tab/tab.module.min.js.map +1 -1
  282. package/dist/component/tab/tab.nomodule.js +2 -2
  283. package/dist/component/tab/tab.nomodule.js.map +1 -1
  284. package/dist/component/tab/tab.nomodule.min.js +1 -1
  285. package/dist/component/tab/tab.nomodule.min.js.map +1 -1
  286. package/dist/component/table/table.css +1 -1
  287. package/dist/component/table/table.legacy.css +1 -1
  288. package/dist/component/table/table.legacy.min.css +1 -1
  289. package/dist/component/table/table.main.css +1 -1
  290. package/dist/component/table/table.main.min.css +1 -1
  291. package/dist/component/table/table.min.css +1 -1
  292. package/dist/component/table/table.module.js +2 -2
  293. package/dist/component/table/table.module.js.map +1 -1
  294. package/dist/component/table/table.module.min.js +1 -1
  295. package/dist/component/table/table.module.min.js.map +1 -1
  296. package/dist/component/table/table.nomodule.js +2 -2
  297. package/dist/component/table/table.nomodule.js.map +1 -1
  298. package/dist/component/table/table.nomodule.min.js +1 -1
  299. package/dist/component/table/table.nomodule.min.js.map +1 -1
  300. package/dist/component/tag/tag.css +112 -80
  301. package/dist/component/tag/tag.css.map +1 -1
  302. package/dist/component/tag/tag.legacy.css +61 -55
  303. package/dist/component/tag/tag.legacy.css.map +1 -1
  304. package/dist/component/tag/tag.legacy.min.css +2 -2
  305. package/dist/component/tag/tag.legacy.min.css.map +1 -1
  306. package/dist/component/tag/tag.main.css +52 -26
  307. package/dist/component/tag/tag.main.css.map +1 -1
  308. package/dist/component/tag/tag.main.min.css +2 -2
  309. package/dist/component/tag/tag.main.min.css.map +1 -1
  310. package/dist/component/tag/tag.min.css +2 -2
  311. package/dist/component/tag/tag.min.css.map +1 -1
  312. package/dist/component/tag/tag.module.js +2 -2
  313. package/dist/component/tag/tag.module.js.map +1 -1
  314. package/dist/component/tag/tag.module.min.js +1 -1
  315. package/dist/component/tag/tag.module.min.js.map +1 -1
  316. package/dist/component/tag/tag.nomodule.js +2 -2
  317. package/dist/component/tag/tag.nomodule.js.map +1 -1
  318. package/dist/component/tag/tag.nomodule.min.js +1 -1
  319. package/dist/component/tag/tag.nomodule.min.js.map +1 -1
  320. package/dist/component/tile/tile.css +1 -1
  321. package/dist/component/tile/tile.legacy.css +1 -1
  322. package/dist/component/tile/tile.legacy.min.css +1 -1
  323. package/dist/component/tile/tile.main.css +1 -1
  324. package/dist/component/tile/tile.main.min.css +1 -1
  325. package/dist/component/tile/tile.min.css +1 -1
  326. package/dist/component/toggle/toggle.css +1 -1
  327. package/dist/component/toggle/toggle.legacy.css +1 -1
  328. package/dist/component/toggle/toggle.legacy.min.css +1 -1
  329. package/dist/component/toggle/toggle.main.css +1 -1
  330. package/dist/component/toggle/toggle.main.min.css +1 -1
  331. package/dist/component/toggle/toggle.min.css +1 -1
  332. package/dist/component/toggle/toggle.module.js +2 -2
  333. package/dist/component/toggle/toggle.module.js.map +1 -1
  334. package/dist/component/toggle/toggle.module.min.js +1 -1
  335. package/dist/component/toggle/toggle.module.min.js.map +1 -1
  336. package/dist/component/toggle/toggle.nomodule.js +2 -2
  337. package/dist/component/toggle/toggle.nomodule.js.map +1 -1
  338. package/dist/component/toggle/toggle.nomodule.min.js +1 -1
  339. package/dist/component/toggle/toggle.nomodule.min.js.map +1 -1
  340. package/dist/component/upload/upload.css +1 -1
  341. package/dist/component/upload/upload.min.css +1 -1
  342. package/dist/core/core.css +3 -3
  343. package/dist/core/core.css.map +1 -1
  344. package/dist/core/core.legacy.css +1 -1
  345. package/dist/core/core.legacy.min.css +1 -1
  346. package/dist/core/core.main.css +3 -3
  347. package/dist/core/core.main.css.map +1 -1
  348. package/dist/core/core.main.min.css +3 -3
  349. package/dist/core/core.main.min.css.map +1 -1
  350. package/dist/core/core.min.css +3 -3
  351. package/dist/core/core.min.css.map +1 -1
  352. package/dist/core/core.module.js +2 -2
  353. package/dist/core/core.module.js.map +1 -1
  354. package/dist/core/core.module.min.js +2 -2
  355. package/dist/core/core.module.min.js.map +1 -1
  356. package/dist/core/core.nomodule.js +2 -2
  357. package/dist/core/core.nomodule.js.map +1 -1
  358. package/dist/core/core.nomodule.min.js +2 -2
  359. package/dist/core/core.nomodule.min.js.map +1 -1
  360. package/dist/dsfr/dsfr.css +76 -235
  361. package/dist/dsfr/dsfr.css.map +1 -1
  362. package/dist/dsfr/dsfr.legacy.css +33 -21
  363. package/dist/dsfr/dsfr.legacy.css.map +1 -1
  364. package/dist/dsfr/dsfr.legacy.min.css +2 -2
  365. package/dist/dsfr/dsfr.legacy.min.css.map +1 -1
  366. package/dist/dsfr/dsfr.main.css +44 -215
  367. package/dist/dsfr/dsfr.main.css.map +1 -1
  368. package/dist/dsfr/dsfr.main.min.css +3 -3
  369. package/dist/dsfr/dsfr.main.min.css.map +1 -1
  370. package/dist/dsfr/dsfr.min.css +4 -4
  371. package/dist/dsfr/dsfr.min.css.map +1 -1
  372. package/dist/dsfr/dsfr.module.js +2 -2
  373. package/dist/dsfr/dsfr.module.js.map +1 -1
  374. package/dist/dsfr/dsfr.module.min.js +2 -2
  375. package/dist/dsfr/dsfr.module.min.js.map +1 -1
  376. package/dist/dsfr/dsfr.nomodule.js +2 -2
  377. package/dist/dsfr/dsfr.nomodule.js.map +1 -1
  378. package/dist/dsfr/dsfr.nomodule.min.js +2 -2
  379. package/dist/dsfr/dsfr.nomodule.min.js.map +1 -1
  380. package/dist/legacy/legacy.nomodule.js +1 -1
  381. package/dist/legacy/legacy.nomodule.min.js +1 -1
  382. package/dist/scheme/scheme.css +1 -1
  383. package/dist/scheme/scheme.min.css +1 -1
  384. package/dist/scheme/scheme.module.js +2 -2
  385. package/dist/scheme/scheme.module.js.map +1 -1
  386. package/dist/scheme/scheme.module.min.js +1 -1
  387. package/dist/scheme/scheme.module.min.js.map +1 -1
  388. package/example/component/accordion/index.html +164 -188
  389. package/example/component/breadcrumb/index.html +6 -6
  390. package/example/component/callout/index.html +10 -10
  391. package/example/component/card/index.html +8 -8
  392. package/example/component/checkbox/index.html +32 -32
  393. package/example/component/connect/index.html +4 -127
  394. package/example/component/consent/index.html +8 -8
  395. package/example/component/content/index.html +30 -30
  396. package/example/component/display/index.html +46 -46
  397. package/example/component/follow/index.html +16 -16
  398. package/example/component/footer/index.html +20 -20
  399. package/example/component/form/index.html +24 -24
  400. package/example/component/header/index.html +208 -208
  401. package/example/component/highlight/index.html +8 -8
  402. package/example/component/input/index.html +44 -44
  403. package/example/component/link/index.html +14 -14
  404. package/example/component/modal/index.html +80 -80
  405. package/example/component/navigation/index.html +34 -34
  406. package/example/component/pagination/index.html +12 -12
  407. package/example/component/quote/index.html +8 -8
  408. package/example/component/radio/index.html +38 -38
  409. package/example/component/select/index.html +10 -10
  410. package/example/component/share/index.html +10 -10
  411. package/example/component/sidemenu/index.html +456 -456
  412. package/example/component/skiplink/index.html +23 -23
  413. package/example/component/summary/index.html +2 -2
  414. package/example/component/tab/index.html +236 -238
  415. package/example/component/table/index.html +104 -104
  416. package/example/component/tag/index.html +50 -50
  417. package/example/component/tile/index.html +34 -34
  418. package/example/component/toggle/index.html +130 -130
  419. package/package.json +1 -1
  420. package/src/component/connect/example/index.ejs +3 -3
  421. package/src/component/connect/example/sample/connect-default.ejs +1 -2
  422. package/src/component/connect/example/sample/connect-plus.ejs +1 -2
  423. package/src/component/connect/template/ejs/connect.ejs +6 -1
  424. package/src/component/follow/deprecated/style/_module.scss +7 -1
  425. package/src/component/follow/deprecated/style/_tool.scss +3 -7
  426. package/src/component/tag/style/_scheme.scss +13 -22
  427. package/src/component/tag/style/_tool.scss +27 -2
@@ -1 +1 @@
1
- {"version":3,"file":"component.nomodule.min.js","sources":["../../.config/config.js","../../src/core/api.js","../../src/component/accordion/script/accordion/accordion-selector.js","../../src/component/accordion/script/accordion/accordions-group.js","../../src/component/accordion/index.js","../../src/component/accordion/main.js","../../src/component/button/script/button/button-selector.js","../../src/component/button/index.js","../../src/component/button/main.js","../../src/component/breadcrumb/script/breadcrumb/breadcrumb.js","../../src/component/breadcrumb/script/breadcrumb/breadcrumb-selector.js","../../src/component/breadcrumb/index.js","../../src/component/breadcrumb/main.js","../../src/component/toggle/script/toggle/toggle-input.js","../../src/component/toggle/script/toggle/toggle-status-label.js","../../src/component/toggle/script/toggle/toggle-selector.js","../../src/component/toggle/index.js","../../src/component/toggle/main.js","../../src/component/sidemenu/script/sidemenu/sidemenu-selector.js","../../src/component/sidemenu/script/sidemenu/sidemenu-list.js","../../src/component/sidemenu/index.js","../../src/component/sidemenu/main.js","../../src/component/modal/script/modal/modal-selector.js","../../src/component/modal/script/modal/modal-button.js","../../src/component/modal/script/modal/modal-attribute.js","../../src/component/modal/script/modal/modal.js","../../src/component/modal/script/modal/focus-trap.js","../../src/component/modal/script/modal/modals-group.js","../../src/component/modal/script/modal/modal-body.js","../../src/component/modal/index.js","../../src/component/modal/main.js","../../src/component/navigation/script/navigation/navigation-selector.js","../../src/component/navigation/script/navigation/navigation-item.js","../../src/component/navigation/script/navigation/navigation-mouse-position.js","../../src/component/navigation/script/navigation/navigation.js","../../src/component/navigation/index.js","../../src/component/navigation/main.js","../../src/component/tab/script/tab/tab-button.js","../../src/component/tab/script/tab/tab-selector.js","../../src/component/tab/script/tab/tab-panel-direction.js","../../src/component/tab/script/tab/tab-panel.js","../../src/component/tab/script/tab/tabs-group.js","../../src/component/tab/script/tab/tabs-list.js","../../src/component/tab/index.js","../../src/component/tab/main.js","../../src/component/table/script/table/table-emission.js","../../src/component/table/script/table/table.js","../../src/component/table/script/table/table-selector.js","../../src/component/table/script/table/table-element.js","../../src/component/table/script/table/table-caption.js","../../src/component/table/index.js","../../src/component/table/main.js","../../src/component/tag/script/tag/tag-selector.js","../../src/component/tag/index.js","../../src/component/tag/main.js","../../src/component/header/script/header/header-selector.js","../../src/component/header/script/header/header-links.js","../../src/component/header/script/header/header-modal.js","../../src/component/header/index.js","../../src/component/header/main.js","../../src/component/display/script/display/display-selector.js","../../src/component/display/script/display/display.js","../../src/component/display/index.js","../../src/component/display/main.js"],"sourcesContent":["const config = {\r\n prefix: 'fr',\r\n namespace: 'dsfr',\r\n organisation: '@gouvfr',\r\n version: '1.4.0'\r\n};\r\n\r\nexport default config;\r\n","import config from './config.js';\nconst api = window[config.namespace];\nexport default api;\n","import api from '../../api.js';\n\nexport const AccordionSelector = {\n GROUP: api.internals.ns.selector('accordions-group'),\n COLLAPSE: `${api.internals.ns.selector('accordion')} > ${api.internals.ns.selector('collapse')}`\n};\n","import api from '../../api.js';\nimport { AccordionSelector } from './accordion-selector.js';\n\nclass AccordionsGroup extends api.core.CollapsesGroup {\n static get instanceClassName () {\n return 'AccordionsGroup';\n }\n\n validate (member) {\n return member.node.matches(AccordionSelector.COLLAPSE);\n }\n}\n\nexport { AccordionsGroup };\n","import api from './api.js';\nimport { AccordionsGroup } from './script/accordion/accordions-group.js';\nimport { AccordionSelector } from './script/accordion/accordion-selector.js';\n\napi.accordion = {\n AccordionSelector: AccordionSelector,\n AccordionsGroup: AccordionsGroup\n};\n\nexport default api;\n","import api from './index.js';\n\napi.internals.register(api.accordion.AccordionSelector.GROUP, api.accordion.AccordionsGroup);\n\nexport default api;\n","import api from '../../api.js';\n\nexport const ButtonSelector = {\n EQUISIZED_BUTTON: `${api.internals.ns.selector('btns-group--equisized')} ${api.internals.ns.selector('btn')}`,\n EQUISIZED_GROUP: api.internals.ns.selector('btns-group--equisized')\n};\n","import api from './api.js';\nimport { ButtonSelector } from './script/button/button-selector';\n\napi.button = {\n ButtonSelector: ButtonSelector\n};\n\nexport default api;\n","import api from './index.js';\n\napi.internals.register(api.button.ButtonSelector.EQUISIZED_BUTTON, api.core.Equisized);\napi.internals.register(api.button.ButtonSelector.EQUISIZED_GROUP, api.core.EquisizedsGroup);\n\nexport default api;\n","import api from '../../api.js';\n\nclass Breadcrumb extends api.core.Instance {\n constructor () {\n super();\n this.count = 0;\n this.focusing = this.focus.bind(this);\n }\n\n static get instanceClassName () {\n return 'Breadcrumb';\n }\n\n init () {\n this.getCollapse();\n this.isResizing = true;\n }\n\n get proxy () {\n const scope = this;\n return Object.assign(super.proxy, {\n focus: scope.focus.bind(scope),\n disclose: scope.collapse.disclose.bind(scope.collapse)\n });\n }\n\n getCollapse () {\n const collapse = this.collapse;\n if (collapse) {\n collapse.listen(api.core.DisclosureEvent.DISCLOSE, this.focusing);\n } else {\n this.addAscent(api.core.DisclosureEmission.ADDED, this.getCollapse.bind(this));\n }\n }\n\n resize () {\n const collapse = this.collapse;\n const links = this.links;\n if (!collapse || !links.length) return;\n\n if (this.isBreakpoint(api.core.Breakpoints.MD)) {\n if (collapse.buttonHasFocus) links[0].focus();\n } else {\n if (links.indexOf(document.activeElement) > -1) collapse.focus();\n }\n }\n\n get links () {\n return [...this.querySelectorAll('a[href]')];\n }\n\n get collapse () {\n return this.element.getDescendantInstances(api.core.Collapse.instanceClassName, null, true)[0];\n }\n\n focus () {\n this.count = 0;\n this._focus();\n }\n\n _focus () {\n const link = this.links[0];\n if (!link) return;\n link.focus();\n this.request(this.verify.bind(this));\n }\n\n verify () {\n this.count++;\n if (this.count > 100) return;\n const link = this.links[0];\n if (!link) return;\n if (document.activeElement !== link) this._focus();\n }\n}\n\nexport { Breadcrumb };\n","import api from '../../api.js';\n\nexport const BreadcrumbSelector = {\n BREADCRUMB: api.internals.ns.selector('breadcrumb')\n};\n","import api from './api.js';\nimport { Breadcrumb } from './script/breadcrumb/breadcrumb.js';\nimport { BreadcrumbSelector } from './script/breadcrumb/breadcrumb-selector.js';\n\napi.breadcrumb = {\n BreadcrumbSelector: BreadcrumbSelector,\n Breadcrumb: Breadcrumb\n};\n\nexport default api;\n","import api from './index.js';\n\napi.internals.register(api.breadcrumb.BreadcrumbSelector.BREADCRUMB, api.breadcrumb.Breadcrumb);\n\nexport default api;\n","import api from '../../api.js';\n\nclass ToggleInput extends api.core.Instance {\n static get instanceClassName () {\n return 'ToggleInput';\n }\n\n get isChecked () {\n return this.hasAttribute('checked');\n }\n}\n\nexport { ToggleInput };\n","import api from '../../api.js';\nimport { ToggleInput } from './toggle-input.js';\n\nclass ToggleStatusLabel extends api.core.Instance {\n static get instanceClassName () {\n return 'ToggleStatusLabel';\n }\n\n init () {\n this.register(`input[id=\"${this.getAttribute('for')}\"]`, ToggleInput);\n this.update();\n this.isSwappingFont = true;\n }\n\n get proxy () {\n const scope = this;\n return Object.assign(super.proxy, {\n update: scope.update.bind(scope)\n });\n }\n\n get input () {\n return this.getRegisteredInstances('ToggleInput')[0];\n }\n\n update () {\n this.node.style.removeProperty('--toggle-status-width');\n const checked = this.input.isChecked;\n\n const style = getComputedStyle(this.node, ':before');\n let maxWidth = parseFloat(style.width);\n this.input.node.checked = !checked;\n\n const style2 = getComputedStyle(this.node, ':before');\n const width = parseFloat(style2.width);\n if (width > maxWidth) maxWidth = width;\n this.input.node.checked = checked;\n\n this.node.style.setProperty('--toggle-status-width', (maxWidth / 16) + 'rem');\n }\n\n swapFont (families) {\n this.update();\n }\n}\n\nexport { ToggleStatusLabel };\n","import api from '../../api.js';\n\nexport const ToggleSelector = {\n STATUS_LABEL: `${api.internals.ns.selector('toggle__label')}${api.internals.ns.attr.selector('checked-label')}${api.internals.ns.attr.selector('unchecked-label')}`\n};\n","import api from './api.js';\nimport { ToggleStatusLabel } from './script/toggle/toggle-status-label.js';\nimport { ToggleSelector } from './script/toggle/toggle-selector.js';\n// import { ToggleInput } from './script/toggle/toggle-input.js';\n\napi.toggle = {\n ToggleStatusLabel: ToggleStatusLabel,\n ToggleSelector: ToggleSelector\n};\n\nexport default api;\n","import api from './index.js';\n\napi.internals.register(api.toggle.ToggleSelector.STATUS_LABEL, api.toggle.ToggleStatusLabel);\n\nexport default api;\n","import api from '../../api.js';\n\nexport const SidemenuSelector = {\n LIST: api.internals.ns.selector('sidemenu__list'),\n COLLAPSE: `${api.internals.ns.selector('sidemenu__item')} > ${api.internals.ns.selector('collapse')}`\n};\n","import api from '../../api.js';\nimport { SidemenuSelector } from './sidemenu-selector.js';\n\nclass SidemenuList extends api.core.CollapsesGroup {\n static get instanceClassName () {\n return 'SidemenuList';\n }\n\n validate (member) {\n return member.node.matches(SidemenuSelector.COLLAPSE);\n }\n}\n\nexport { SidemenuList };\n","import api from './api.js';\nimport { SidemenuList } from './script/sidemenu/sidemenu-list.js';\nimport { SidemenuSelector } from './script/sidemenu/sidemenu-selector.js';\n\napi.sidemenu = {\n SidemenuList: SidemenuList,\n SidemenuSelector: SidemenuSelector\n};\n\nexport default api;\n","import api from './index.js';\n\napi.internals.register(api.sidemenu.SidemenuSelector.LIST, api.sidemenu.SidemenuList);\n\nexport default api;\n","import api from '../../api.js';\n\nexport const ModalSelector = {\n MODAL: api.internals.ns.selector('modal'),\n SCROLL_SHADOW: api.internals.ns.selector('scroll-shadow'),\n BODY: api.internals.ns.selector('modal__body')\n};\n","import api from '../../api.js';\n\nclass ModalButton extends api.core.DisclosureButton {\n constructor () {\n super(api.core.DisclosureType.OPENED);\n }\n\n static get instanceClassName () {\n return 'ModalButton';\n }\n}\n\nexport { ModalButton };\n","import api from '../../api';\n\nexport const ModalAttribute = {\n CONCEALING_BACKDROP: api.internals.ns.attr('concealing-backdrop')\n};\n","import api from '../../api.js';\nimport { ModalSelector } from './modal-selector.js';\nimport { ModalButton } from './modal-button.js';\nimport { ModalAttribute } from './modal-attribute';\n\nclass Modal extends api.core.Disclosure {\n constructor () {\n super(api.core.DisclosureType.OPENED, ModalSelector.MODAL, ModalButton, 'ModalsGroup');\n this.scrolling = this.resize.bind(this, false);\n this.resizing = this.resize.bind(this, true);\n }\n\n static get instanceClassName () {\n return 'Modal';\n }\n\n init () {\n super.init();\n this.listen('click', this.click.bind(this));\n this.listenKey(api.core.KeyCodes.ESCAPE, this.conceal.bind(this, false, false), true, true);\n }\n\n get body () {\n return this.element.getDescendantInstances('ModalBody', 'Modal')[0];\n }\n\n click (e) {\n if (e.target === this.node && this.getAttribute(ModalAttribute.CONCEALING_BACKDROP) !== 'false') this.conceal();\n }\n\n disclose (withhold) {\n if (!super.disclose(withhold)) return false;\n if (this.body) this.body.activate();\n this.isScrollLocked = true;\n this.setAttribute('aria-modal', 'true');\n this.setAttribute('open', 'true');\n return true;\n }\n\n conceal (withhold, preventFocus) {\n if (!super.conceal(withhold, preventFocus)) return false;\n this.isScrollLocked = false;\n this.removeAttribute('aria-modal');\n this.removeAttribute('open');\n if (this.body) this.body.deactivate();\n return true;\n }\n}\n\nexport { Modal };\n","import api from '../../api.js';\n\nconst unordereds = [\n '[tabindex=\"0\"]',\n 'a[href]',\n 'button:not([disabled])',\n 'input:not([disabled])',\n 'select:not([disabled])',\n 'textarea:not([disabled])',\n 'audio[controls]',\n 'video[controls]',\n '[contenteditable]:not([contenteditable=\"false\"])',\n 'details>summary:first-of-type',\n 'details',\n 'iframe'\n];\n\nconst UNORDEREDS = unordereds.join();\n\nconst ordereds = [\n '[tabindex]:not([tabindex=\"-1\"]):not([tabindex=\"0\"])'\n];\n\nconst ORDEREDS = ordereds.join();\n\nconst IS_STUNNING = false;\n\nconst isFocusable = (element, container) => {\n if (!(element instanceof Element)) return false;\n const style = window.getComputedStyle(element);\n if (!style) return false;\n if (style.visibility === 'hidden') return false;\n if (container === undefined) container = element;\n\n while (container.contains(element)) {\n if (style.display === 'none') return false;\n element = element.parentElement;\n }\n\n return true;\n};\n\nclass FocusTrap {\n constructor (onTrap, onUntrap) {\n this.element = null;\n this.activeElement = null;\n this.onTrap = onTrap;\n this.onUntrap = onUntrap;\n this.waiting = this.wait.bind(this);\n this.handling = this.handle.bind(this);\n this.focusing = this.maintainFocus.bind(this);\n this.current = null;\n }\n\n get trapped () { return this.element !== null; }\n\n trap (element) {\n if (this.trapped) this.untrap();\n\n this.element = element;\n this.isTrapping = true;\n this.wait();\n\n if (this.onTrap) this.onTrap();\n }\n\n wait () {\n if (!isFocusable(this.element)) {\n window.requestAnimationFrame(this.waiting);\n return;\n }\n\n this.trapping();\n }\n\n trapping () {\n if (!this.isTrapping) return;\n this.isTrapping = false;\n const focusables = this.focusables;\n if (focusables.length) focusables[0].focus();\n this.element.setAttribute('aria-modal', true);\n window.addEventListener('keydown', this.handling);\n document.body.addEventListener('focus', this.focusing, true);\n\n if (IS_STUNNING) {\n this.stunneds = [];\n this.stun(document.body);\n }\n }\n\n stun (node) {\n for (const child of node.children) {\n if (child === this.element) continue;\n if (child.contains(this.element)) {\n this.stun(child);\n continue;\n }\n this.stunneds.push(new Stunned(child));\n }\n }\n\n maintainFocus (event) {\n if (!this.element.contains(event.target)) {\n const focusables = this.focusables;\n if (focusables.length === 0) return;\n const first = focusables[0];\n event.preventDefault();\n first.focus();\n }\n }\n\n handle (e) {\n if (e.keyCode !== 9) return;\n\n const focusables = this.focusables;\n if (focusables.length === 0) return;\n\n const first = focusables[0];\n const last = focusables[focusables.length - 1];\n\n const index = focusables.indexOf(document.activeElement);\n\n if (e.shiftKey) {\n if (!this.element.contains(document.activeElement) || index < 1) {\n e.preventDefault();\n last.focus();\n } else if (document.activeElement.tabIndex > 0 || focusables[index - 1].tabIndex > 0) {\n e.preventDefault();\n focusables[index - 1].focus();\n }\n } else {\n if (!this.element.contains(document.activeElement) || index === focusables.length - 1 || index === -1) {\n e.preventDefault();\n first.focus();\n } else if (document.activeElement.tabIndex > 0) {\n e.preventDefault();\n focusables[index + 1].focus();\n }\n }\n }\n\n get focusables () {\n let unordereds = api.internals.dom.querySelectorAllArray(this.element, UNORDEREDS);\n\n /**\n * filtrage des radiobutttons de même name (la navigations d'un groupe de radio se fait à la flèche et non pas au tab\n **/\n const radios = api.internals.dom.querySelectorAllArray(document.documentElement, 'input[type=\"radio\"]');\n\n if (radios.length) {\n const groups = {};\n\n for (const radio of radios) {\n const name = radio.getAttribute('name');\n if (groups[name] === undefined) groups[name] = new RadioButtonGroup(name);\n groups[name].push(radio);\n }\n\n unordereds = unordereds.filter((unordered) => {\n if (unordered.tagName.toLowerCase() !== 'input' || unordered.getAttribute('type').toLowerCase() !== 'radio') return true;\n const name = unordered.getAttribute('name');\n return groups[name].keep(unordered);\n });\n }\n\n const ordereds = api.internals.dom.querySelectorAllArray(this.element, ORDEREDS);\n\n ordereds.sort((a, b) => a.tabIndex - b.tabIndex);\n\n const noDuplicates = unordereds.filter((element) => ordereds.indexOf(element) === -1);\n const concateneds = ordereds.concat(noDuplicates);\n return concateneds.filter((element) => element.tabIndex !== '-1' && isFocusable(element, this.element));\n }\n\n untrap () {\n if (!this.trapped) return;\n this.isTrapping = false;\n\n this.element.removeAttribute('aria-modal');\n window.removeEventListener('keydown', this.handling);\n document.body.removeEventListener('focus', this.focusing, true);\n\n this.element = null;\n\n if (IS_STUNNING) {\n for (const stunned of this.stunneds) stunned.unstun();\n this.stunneds = [];\n }\n\n if (this.onUntrap) this.onUntrap();\n }\n\n dispose () {\n this.untrap();\n }\n}\n\nclass Stunned {\n constructor (element) {\n this.element = element;\n // this.hidden = element.getAttribute('aria-hidden');\n this.inert = element.getAttribute('inert');\n\n // this.element.setAttribute('aria-hidden', true);\n this.element.setAttribute('inert', '');\n }\n\n unstun () {\n /*\n if (this.hidden === null) this.element.removeAttribute('aria-hidden');\n else this.element.setAttribute('aria-hidden', this.hidden);\n */\n\n if (this.inert === null) this.element.removeAttribute('inert');\n else this.element.setAttribute('inert', this.inert);\n }\n}\n\nclass RadioButtonGroup {\n constructor (name) {\n this.name = name;\n this.buttons = [];\n }\n\n push (button) {\n this.buttons.push(button);\n if (button === document.activeElement || button.checked || this.selected === undefined) this.selected = button;\n }\n\n keep (button) {\n return this.selected === button;\n }\n}\n\nexport { FocusTrap };\n","import api from '../../api.js';\nimport { FocusTrap } from './focus-trap.js';\n\nclass ModalsGroup extends api.core.DisclosuresGroup {\n constructor () {\n super('Modal', false);\n this.focusTrap = new FocusTrap();\n }\n\n static get instanceClassName () {\n return 'ModalsGroup';\n }\n\n apply (value, initial) {\n super.apply(value, initial);\n if (this.current === null) this.focusTrap.untrap();\n else this.focusTrap.trap(this.current.node);\n }\n}\n\nexport { ModalsGroup };\n","import api from '../../api.js';\nimport { ModalSelector } from './modal-selector.js';\n\nconst OFFSET = 32; // 32px => 8v => 2rem\n\nclass ModalBody extends api.core.Instance {\n static get instanceClassName () {\n return 'ModalBody';\n }\n\n init () {\n this.listen('scroll', this.shade.bind(this));\n }\n\n activate () {\n this.isResizing = true;\n this.resize();\n }\n\n deactivate () {\n this.isResizing = false;\n }\n\n shade () {\n if (this.node.scrollHeight > this.node.clientHeight) {\n if (this.node.offsetHeight + this.node.scrollTop >= this.node.scrollHeight) {\n this.removeClass(ModalSelector.SCROLL_SHADOW);\n } else {\n this.addClass(ModalSelector.SCROLL_SHADOW);\n }\n } else {\n this.removeClass(ModalSelector.SCROLL_SHADOW);\n }\n }\n\n resize () {\n this.adjust();\n this.request(this.adjust.bind(this));\n }\n\n adjust () {\n const offset = OFFSET * (this.isBreakpoint(api.core.Breakpoints.MD) ? 2 : 1);\n if (this.isLegacy) this.style.maxHeight = `${window.innerHeight - offset}px`;\n else this.style.setProperty('--modal-max-height', `${window.innerHeight - offset}px`);\n this.shade();\n }\n}\n\nexport { ModalBody };\n","import api from './api.js';\n\nimport { Modal } from './script/modal/modal.js';\nimport { ModalButton } from './script/modal/modal-button.js';\nimport { ModalsGroup } from './script/modal/modals-group.js';\nimport { ModalBody } from './script/modal/modal-body.js';\nimport { ModalSelector } from './script/modal/modal-selector.js';\n\napi.modal = {\n Modal: Modal,\n ModalButton: ModalButton,\n ModalBody: ModalBody,\n ModalsGroup: ModalsGroup,\n ModalSelector: ModalSelector\n};\n\nexport default api;\n","import api from './index.js';\n\napi.internals.register(api.modal.ModalSelector.MODAL, api.modal.Modal);\napi.internals.register(api.modal.ModalSelector.BODY, api.modal.ModalBody);\napi.internals.register(api.core.RootSelector.ROOT, api.modal.ModalsGroup);\n\nexport default api;\n","import api from '../../api.js';\n\nexport const NavigationSelector = {\n NAVIGATION: api.internals.ns.selector('nav'),\n COLLAPSE: `${api.internals.ns.selector('nav__item')} > ${api.internals.ns.selector('collapse')}`,\n ITEM: api.internals.ns.selector('nav__item'),\n ITEM_RIGHT: api.internals.ns('nav__item--align-right'),\n MENU: api.internals.ns.selector('menu')\n};\n","import api from '../../api.js';\nimport { NavigationSelector } from './navigation-selector.js';\n\nclass NavigationItem extends api.core.Instance {\n constructor () {\n super();\n this._isRightAligned = false;\n }\n\n static get instanceClassName () {\n return 'NavigationItem';\n }\n\n init () {\n this.addAscent(api.core.DisclosureEmission.ADDED, this.calculate.bind(this));\n this.addAscent(api.core.DisclosureEmission.REMOVED, this.calculate.bind(this));\n this.isResizing = true;\n this.calculate();\n }\n\n resize () {\n this.calculate();\n }\n\n calculate () {\n const collapse = this.element.getDescendantInstances(api.core.Collapse.instanceClassName, null, true)[0];\n if (collapse && this.isBreakpoint(api.core.Breakpoints.LG) && collapse.element.node.matches(NavigationSelector.MENU)) {\n const right = this.element.node.parentElement.getBoundingClientRect().right;\n const width = collapse.element.node.getBoundingClientRect().width;\n const left = this.element.node.getBoundingClientRect().left;\n this.isRightAligned = left + width > right;\n } else this.isRightAligned = false;\n }\n\n get isRightAligned () {\n return this._isRightAligned;\n }\n\n set isRightAligned (value) {\n if (this._isRightAligned === value) return;\n this._isRightAligned = value;\n if (value) api.internals.dom.addClass(this.element.node, NavigationSelector.ITEM_RIGHT);\n else api.internals.dom.removeClass(this.element.node, NavigationSelector.ITEM_RIGHT);\n }\n}\n\nexport { NavigationItem };\n","export const NavigationMousePosition = {\n NONE: -1,\n INSIDE: 0,\n OUTSIDE: 1\n};\n","import api from '../../api.js';\nimport { NavigationSelector } from './navigation-selector.js';\nimport { NavigationMousePosition } from './navigation-mouse-position.js';\n\nclass Navigation extends api.core.CollapsesGroup {\n static get instanceClassName () {\n return 'Navigation';\n }\n\n init () {\n super.init();\n this.clicked = false;\n this.out = false;\n this.listen('focusout', this.focusOut.bind(this));\n this.listen('mousedown', this.down.bind(this));\n }\n\n validate (member) {\n return member.element.node.matches(NavigationSelector.COLLAPSE);\n }\n\n down (e) {\n if (!this.isBreakpoint(api.core.Breakpoints.LG) || this.index === -1 || !this.current) return;\n this.position = this.current.element.node.contains(e.target) ? NavigationMousePosition.INSIDE : NavigationMousePosition.OUTSIDE;\n this.request(this.getPosition.bind(this));\n }\n\n focusOut (e) {\n if (!this.isBreakpoint(api.core.Breakpoints.LG)) return;\n this.out = true;\n this.request(this.getPosition.bind(this));\n }\n\n getPosition () {\n if (this.out) {\n switch (this.position) {\n case NavigationMousePosition.OUTSIDE:\n this.index = -1;\n break;\n\n case NavigationMousePosition.INSIDE:\n if (this.current) this.current.focus();\n break;\n\n default:\n if (this.index > -1 && !this.current.hasFocus) this.index = -1;\n }\n }\n this.position = NavigationMousePosition.NONE;\n this.out = false;\n }\n\n get index () { return super.index; }\n\n set index (value) {\n if (value === -1 && this.current !== null && this.current.hasFocus) this.current.focus();\n super.index = value;\n }\n}\n\nexport { Navigation };\n","import api from './api.js';\nimport { NavigationItem } from './script/navigation/navigation-item.js';\nimport { Navigation } from './script/navigation/navigation.js';\nimport { NavigationSelector } from './script/navigation/navigation-selector.js';\nimport { NavigationMousePosition } from './script/navigation/navigation-mouse-position.js';\n\napi.navigation = {\n Navigation: Navigation,\n NavigationItem: NavigationItem,\n NavigationMousePosition: NavigationMousePosition,\n NavigationSelector: NavigationSelector\n};\n\nexport default api;\n","import api from './index.js';\n\napi.internals.register(api.navigation.NavigationSelector.NAVIGATION, api.navigation.Navigation);\napi.internals.register(api.navigation.NavigationSelector.ITEM, api.navigation.NavigationItem);\n\nexport default api;\n","import api from '../../api.js';\n\n/**\n * TabButton correspond au bouton cliquable qui change le panel\n * TabButton étend de DisclosureButton qui ajoute/enelve l'attribut aria-selected,\n * Et change l'attributte tabindex a 0 si le boutton est actif (value=true), -1 s'il n'est pas actif (value=false)\n */\nclass TabButton extends api.core.DisclosureButton {\n constructor () {\n super(api.core.DisclosureType.SELECT);\n }\n\n static get instanceClassName () {\n return 'TabButton';\n }\n\n apply (value) {\n super.apply(value);\n if (this.isPrimary) {\n this.setAttribute('tabindex', value ? '0' : '-1');\n if (value) {\n if (this.list) this.list.focalize(this);\n }\n }\n }\n\n get list () {\n return this.element.getAscendantInstance('TabsList', 'TabsGroup');\n }\n}\n\nexport { TabButton };\n","import api from '../../api.js';\n\nexport const TabSelector = {\n TAB: api.internals.ns.selector('tabs__tab'),\n GROUP: api.internals.ns.selector('tabs'),\n PANEL: api.internals.ns.selector('tabs__panel'),\n LIST: api.internals.ns.selector('tabs__list'),\n SHADOW: api.internals.ns.selector('tabs__shadow'),\n SHADOW_LEFT: api.internals.ns.selector('tabs__shadow--left'),\n SHADOW_RIGHT: api.internals.ns.selector('tabs__shadow--right'),\n PANEL_START: api.internals.ns.selector('tabs__panel--direction-start'),\n PANEL_END: api.internals.ns.selector('tabs__panel--direction-end')\n};\n","export const TabPanelDirection = {\n START: 'direction-start',\n END: 'direction-end',\n NONE: 'none'\n};\n","import api from '../../api.js';\nimport { TabButton } from './tab-button.js';\nimport { TabSelector } from './tab-selector.js';\nimport { TabPanelDirection } from './tab-panel-direction.js';\n\n/**\n * Tab coorespond au panel d'un élement Tabs (tab panel)\n * Tab étend disclosure qui ajoute/enleve le modifier --selected,\n * et ajoute/eleve l'attribut hidden, sur le panel\n */\nclass TabPanel extends api.core.Disclosure {\n constructor () {\n super(api.core.DisclosureType.SELECT, TabSelector.PANEL, TabButton, 'TabsGroup');\n this._direction = TabPanelDirection.NONE;\n this._isPreventingTransition = false;\n }\n\n static get instanceClassName () {\n return 'TabPanel';\n }\n\n get direction () {\n return this._direction;\n }\n\n set direction (value) {\n if (value === this._direction) return;\n switch (this._direction) {\n case TabPanelDirection.START:\n this.removeClass(TabSelector.PANEL_START);\n break;\n\n case TabPanelDirection.END:\n this.removeClass(TabSelector.PANEL_END);\n break;\n\n case TabPanelDirection.NONE:\n break;\n\n default:\n return;\n }\n\n this._direction = value;\n\n switch (this._direction) {\n case TabPanelDirection.START:\n this.addClass(TabSelector.PANEL_START);\n break;\n\n case TabPanelDirection.END:\n this.addClass(TabSelector.PANEL_END);\n break;\n }\n }\n\n get isPreventingTransition () {\n return this._isPreventingTransition;\n }\n\n set isPreventingTransition (value) {\n if (this._isPreventingTransition === value) return;\n if (value) this.addClass(api.internals.motion.TransitionSelector.NONE);\n else this.removeClass(api.internals.motion.TransitionSelector.NONE);\n this._isPreventingTransition = value === true;\n }\n\n translate (direction, initial) {\n this.isPreventingTransition = initial;\n this.direction = direction;\n }\n\n reset () {\n this.group.index = 0;\n }\n}\n\nexport { TabPanel };\n","import api from '../../api.js';\nimport { TabPanelDirection } from './tab-panel-direction.js';\n\n/**\n* TabGroup est la classe étendue de DiscosuresGroup\n* Correspond à un objet Tabs avec plusieurs tab-button & Tab (panel)\n*/\nclass TabsGroup extends api.core.DisclosuresGroup {\n constructor () {\n super('TabPanel');\n }\n\n static get instanceClassName () {\n return 'TabsGroup';\n }\n\n init () {\n super.init();\n this.listen('transitionend', this.transitionend.bind(this));\n this.listenKey(api.core.KeyCodes.RIGHT, this.pressRight.bind(this), true, true);\n this.listenKey(api.core.KeyCodes.LEFT, this.pressLeft.bind(this), true, true);\n this.listenKey(api.core.KeyCodes.HOME, this.pressHome.bind(this), true, true);\n this.listenKey(api.core.KeyCodes.END, this.pressEnd.bind(this), true, true);\n this.isRendering = true;\n\n if (this.list) this.list.apply();\n }\n\n get list () {\n return this.element.getDescendantInstances('TabsList', 'TabsGroup', true)[0];\n }\n\n transitionend (e) {\n this.isPreventingTransition = true;\n }\n\n get buttonHasFocus () {\n return this.members.some(member => member.buttonHasFocus);\n }\n\n /**\n * Selectionne l'element suivant de la liste si on est sur un bouton\n * Si on est à la fin on retourne au début\n */\n pressRight () {\n if (this.buttonHasFocus) {\n if (this.index < this.length - 1) {\n this.index++;\n } else {\n this.index = 0;\n }\n\n this.focus();\n }\n };\n\n /**\n * Selectionne l'element précédent de la liste si on est sur un bouton\n * Si on est au debut retourne a la fin\n */\n pressLeft () {\n if (this.buttonHasFocus) {\n if (this.index > 0) {\n this.index--;\n } else {\n this.index = this.length - 1;\n }\n\n this.focus();\n }\n };\n\n /**\n * Selectionne le permier element de la liste si on est sur un bouton\n */\n pressHome () {\n if (this.buttonHasFocus) {\n this.index = 0;\n this.focus();\n }\n };\n\n /**\n * Selectionne le dernier element de la liste si on est sur un bouton\n */\n pressEnd () {\n if (this.buttonHasFocus) {\n this.index = this.length - 1;\n this.focus();\n }\n };\n\n focus () {\n if (this.current) {\n this.current.focus();\n }\n }\n\n apply () {\n for (let i = 0; i < this._index; i++) this.members[i].translate(TabPanelDirection.START);\n this.current.translate(TabPanelDirection.NONE);\n for (let i = this._index + 1; i < this.length; i++) this.members[i].translate(TabPanelDirection.END);\n this.isPreventingTransition = false;\n }\n\n get isPreventingTransition () {\n return this._isPreventingTransition;\n }\n\n set isPreventingTransition (value) {\n if (this._isPreventingTransition === value) return;\n if (value) this.addClass(api.internals.motion.TransitionSelector.NONE);\n else this.removeClass(api.internals.motion.TransitionSelector.NONE);\n this._isPreventingTransition = value === true;\n }\n\n render () {\n if (this.current === null) return;\n const paneHeight = Math.round(this.current.node.offsetHeight);\n if (this.panelHeight === paneHeight) return;\n this.panelHeight = paneHeight;\n let listHeight = 0;\n if (this.list) listHeight = this.list.node.offsetHeight;\n this.style.setProperty('--tabs-height', (this.panelHeight + listHeight) + 'px');\n }\n}\n\nexport { TabsGroup };\n","import api from '../../api.js';\nimport { TabSelector } from './tab-selector';\n\nconst FOCALIZE_OFFSET = 16;\nconst SCROLL_OFFSET = 16; // valeur en px du scroll avant laquelle le shadow s'active ou se desactive\n\nclass TabsList extends api.core.Instance {\n static get instanceClassName () {\n return 'TabsList';\n }\n\n init () {\n this.listen('scroll', this.scroll.bind(this));\n this.isResizing = true;\n }\n\n get group () {\n return this.element.getAscendantInstance('TabsGroup', 'TabsList');\n }\n\n focalize (btn) {\n const btnRect = btn.getRect();\n const listRect = this.getRect();\n const actualScroll = this.node.scrollLeft;\n if (btnRect.left < listRect.left) this.node.scrollTo(actualScroll - listRect.left + btnRect.left - FOCALIZE_OFFSET, 0);\n else if (btnRect.right > listRect.right) this.node.scrollTo(actualScroll - listRect.right + btnRect.right + FOCALIZE_OFFSET, 0);\n }\n\n get isScrolling () {\n return this._isScrolling;\n }\n\n set isScrolling (value) {\n if (this._isScrolling === value) return;\n this._isScrolling = value;\n this.apply();\n }\n\n apply () {\n if (!this.group) return;\n if (this._isScrolling) {\n this.group.addClass(TabSelector.SHADOW);\n this.scroll();\n } else {\n this.group.removeClass(TabSelector.SHADOW_RIGHT);\n this.group.removeClass(TabSelector.SHADOW_LEFT);\n this.group.removeClass(TabSelector.SHADOW);\n }\n }\n\n /* ajoute la classe fr-table__shadow-left ou fr-table__shadow-right sur fr-table en fonction d'une valeur de scroll et du sens (right, left) */\n scroll () {\n if (!this.group) return;\n const scrollLeft = this.node.scrollLeft;\n const isMin = scrollLeft <= SCROLL_OFFSET;\n const max = this.node.scrollWidth - this.node.clientWidth - SCROLL_OFFSET;\n\n const isMax = Math.abs(scrollLeft) >= max;\n const isRtl = document.documentElement.getAttribute('dir') === 'rtl';\n const minSelector = isRtl ? TabSelector.SHADOW_RIGHT : TabSelector.SHADOW_LEFT;\n const maxSelector = isRtl ? TabSelector.SHADOW_LEFT : TabSelector.SHADOW_RIGHT;\n\n if (isMin) {\n this.group.removeClass(minSelector);\n } else {\n this.group.addClass(minSelector);\n }\n\n if (isMax) {\n this.group.removeClass(maxSelector);\n } else {\n this.group.addClass(maxSelector);\n }\n }\n\n resize () {\n this.isScrolling = this.node.scrollWidth > this.node.clientWidth + SCROLL_OFFSET;\n }\n\n dispose () {\n this.isScrolling = false;\n }\n}\n\nexport { TabsList };\n","import api from './api.js';\nimport { TabPanel } from './script/tab/tab-panel.js';\nimport { TabButton } from './script/tab/tab-button.js';\nimport { TabsGroup } from './script/tab/tabs-group.js';\nimport { TabsList } from './script/tab/tabs-list.js';\nimport { TabSelector } from './script/tab/tab-selector.js';\n\napi.tab = {\n TabPanel: TabPanel,\n TabButton: TabButton,\n TabsGroup: TabsGroup,\n TabsList: TabsList,\n TabSelector: TabSelector\n};\n\nexport default api;\n","import api from './index.js';\n\napi.internals.register(api.tab.TabSelector.PANEL, api.tab.TabPanel);\napi.internals.register(api.tab.TabSelector.GROUP, api.tab.TabsGroup);\napi.internals.register(api.tab.TabSelector.LIST, api.tab.TabsList);\n\nexport default api;\n","import api from '../../api.js';\n\nexport const TableEmission = {\n SCROLLABLE: api.internals.ns.emission('table', 'scrollable'),\n CHANGE: api.internals.ns.emission('table', 'change'),\n CAPTION_HEIGHT: api.internals.ns.emission('table', 'captionheight')\n};\n","import api from '../../api.js';\nimport { TableEmission } from './table-emission.js';\n\nconst PADDING = '1rem'; // padding de 4v sur le caption\n\nclass Table extends api.core.Instance {\n static get instanceClassName () {\n return 'Table';\n }\n\n init () {\n this.addAscent(TableEmission.CAPTION_HEIGHT, this.setCaptionHeight.bind(this));\n }\n\n setCaptionHeight (value) {\n this.setProperty('--table-offset', `calc(${value}px + ${PADDING})`);\n }\n}\n\nexport { Table };\n","import api from '../../api.js';\n\nexport const TableSelector = {\n TABLE: api.internals.ns.selector('table'),\n SHADOW: api.internals.ns.selector('table__shadow'),\n SHADOW_LEFT: api.internals.ns.selector('table__shadow--left'),\n SHADOW_RIGHT: api.internals.ns.selector('table__shadow--right'),\n ELEMENT: `${api.internals.ns.selector('table')}:not(${api.internals.ns.selector('table--no-scroll')}) table`,\n CAPTION: `${api.internals.ns.selector('table')} table caption`\n};\n","import api from '../../api.js';\nimport { TableSelector } from './table-selector.js';\n\nconst SCROLL_OFFSET = 8; // valeur en px du scroll avant laquelle le shadow s'active ou se desactive\n\nclass TableElement extends api.core.Instance {\n static get instanceClassName () {\n return 'TableElement';\n }\n\n init () {\n this.listen('scroll', this.scroll.bind(this));\n this.content = this.querySelector('tbody');\n this.isResizing = true;\n }\n\n get isScrolling () {\n return this._isScrolling;\n }\n\n set isScrolling (value) {\n if (this._isScrolling === value) return;\n this._isScrolling = value;\n\n if (value) {\n this.addClass(TableSelector.SHADOW);\n this.scroll();\n } else {\n this.removeClass(TableSelector.SHADOW);\n this.removeClass(TableSelector.SHADOW_LEFT);\n this.removeClass(TableSelector.SHADOW_RIGHT);\n }\n }\n\n /* ajoute la classe fr-table__shadow-left ou fr-table__shadow-right sur fr-table en fonction d'une valeur de scroll et du sens (right, left) */\n scroll () {\n const isMin = this.node.scrollLeft <= SCROLL_OFFSET;\n const max = this.content.offsetWidth - this.node.offsetWidth - SCROLL_OFFSET;\n const isMax = Math.abs(this.node.scrollLeft) >= max;\n const isRtl = document.documentElement.getAttribute('dir') === 'rtl';\n const minSelector = isRtl ? TableSelector.SHADOW_RIGHT : TableSelector.SHADOW_LEFT;\n const maxSelector = isRtl ? TableSelector.SHADOW_LEFT : TableSelector.SHADOW_RIGHT;\n\n if (isMin) {\n this.removeClass(minSelector);\n } else {\n this.addClass(minSelector);\n }\n\n if (isMax) {\n this.removeClass(maxSelector);\n } else {\n this.addClass(maxSelector);\n }\n }\n\n resize () {\n this.isScrolling = this.content.offsetWidth > this.node.offsetWidth;\n }\n\n dispose () {\n this.isScrolling = false;\n }\n}\n\nexport { TableElement };\n","import api from '../../api.js';\nimport { TableEmission } from './table-emission.js';\n\nclass TableCaption extends api.core.Instance {\n static get instanceClassName () {\n return 'TableCaption';\n }\n\n init () {\n this.height = 0;\n this.isResizing = true;\n }\n\n resize () {\n const height = this.getRect().height;\n if (this.height === height) return;\n this.height = height;\n this.ascend(TableEmission.CAPTION_HEIGHT, height);\n }\n}\n\nexport { TableCaption };\n","import api from './api.js';\nimport { Table } from './script/table/table.js';\nimport { TableElement } from './script/table/table-element.js';\nimport { TableSelector } from './script/table/table-selector.js';\nimport { TableCaption } from './script/table/table-caption.js';\n\napi.table = {\n Table: Table,\n TableElement: TableElement,\n TableCaption: TableCaption,\n TableSelector: TableSelector\n};\n\nexport default api;\n","import api from './index.js';\n\napi.internals.register(api.table.TableSelector.TABLE, api.table.Table);\napi.internals.register(api.table.TableSelector.ELEMENT, api.table.TableElement);\napi.internals.register(api.table.TableSelector.CAPTION, api.table.TableCaption);\n\nexport default api;\n","import api from '../../api.js';\n\nexport const TagSelector = {\n TAG_PRESSABLE: `${api.internals.ns.selector('tag')}[aria-pressed]`\n};\n","import api from './api.js';\nimport { TagSelector } from './script/tag/tag-selector';\n\napi.tag = {\n TagSelector: TagSelector\n};\n\nexport default api;\n","import api from './index.js';\n\napi.internals.register(api.tag.TagSelector.TAG_PRESSABLE, api.core.Toggle);\n\nexport default api;\n","import api from '../../api.js';\n\nexport const HeaderSelector = {\n HEADER: api.internals.ns.selector('header'),\n TOOLS_LINKS: api.internals.ns.selector('header__tools-links'),\n MENU_LINKS: api.internals.ns.selector('header__menu-links'),\n BUTTONS: `${api.internals.ns.selector('header__tools-links')} ${api.internals.ns.selector('btns-group')}, ${api.internals.ns.selector('header__tools-links')} ${api.internals.ns.selector('links-group')}`,\n MODALS: `${api.internals.ns.selector('header__search')}${api.internals.ns.selector('modal')}, ${api.internals.ns.selector('header__menu')}${api.internals.ns.selector('modal')}`\n};\n","import api from '../../api.js';\nimport { HeaderSelector } from './header-selector.js';\n\nclass HeaderLinks extends api.core.Instance {\n static get instanceClassName () {\n return 'HeaderLinks';\n }\n\n init () {\n const header = this.queryParentSelector(HeaderSelector.HEADER);\n this.toolsLinks = header.querySelector(HeaderSelector.TOOLS_LINKS);\n this.menuLinks = header.querySelector(HeaderSelector.MENU_LINKS);\n\n const toolsHtml = this.toolsLinks.innerHTML.replace(/ +/g, ' ');\n const menuHtml = this.menuLinks.innerHTML.replace(/ +/g, ' ');\n\n if (toolsHtml === menuHtml) return;\n\n switch (api.mode) {\n case api.Modes.ANGULAR:\n case api.Modes.REACT:\n case api.Modes.VUE:\n api.inspector.warn(`header__tools-links content is different from header__menu-links content.\nAs you're using a dynamic framework, you should handle duplication of this content yourself, please refer to documentation: \n${api.header.doc}`);\n break;\n\n default:\n this.menuLinks.innerHTML = this.toolsLinks.innerHTML;\n }\n }\n}\n\nexport { HeaderLinks };\n","import api from '../../api.js';\n\nclass HeaderModal extends api.core.Instance {\n static get instanceClassName () {\n return 'HeaderModal';\n }\n\n init () {\n this.isResizing = true;\n }\n\n resize () {\n if (this.isBreakpoint(api.core.Breakpoints.LG)) this.unqualify();\n else this.qualify();\n }\n\n qualify () {\n this.setAttribute('role', 'dialog');\n const modal = this.element.getInstance('Modal');\n if (!modal) return;\n const buttons = modal.buttons;\n let id = '';\n for (const button of buttons) {\n id = button.id || id;\n if (button.isPrimary && id) break;\n }\n this.setAttribute('aria-labelledby', id);\n }\n\n unqualify () {\n const modal = this.element.getInstance('Modal');\n if (modal) modal.conceal();\n this.removeAttribute('role');\n this.removeAttribute('aria-labelledby');\n }\n}\n\nexport { HeaderModal };\n","import api from './api.js';\nimport { HeaderLinks } from './script/header/header-links.js';\nimport { HeaderModal } from './script/header/header-modal.js';\nimport { HeaderSelector } from './script/header/header-selector.js';\n\napi.header = {\n HeaderLinks: HeaderLinks,\n HeaderModal: HeaderModal,\n HeaderSelector: HeaderSelector,\n doc: 'https://gouvfr.atlassian.net/wiki/spaces/DB/pages/222789846/En-t+te+-+Header'\n};\n\nexport default api;\n","import api from './index.js';\n\napi.internals.register(api.header.HeaderSelector.BUTTONS, api.header.HeaderLinks);\napi.internals.register(api.header.HeaderSelector.MODALS, api.header.HeaderModal);\n\nexport default api;\n","import api from '../../api.js';\n\nexport const DisplaySelector = {\n DISPLAY: api.internals.ns.selector('display'),\n RADIO_BUTTONS: `input[name=\"${api.internals.ns('radios-theme')}\"]`,\n FIELDSET: api.internals.ns.selector('fieldset')\n};\n","import api from '../../api.js';\nimport { DisplaySelector } from './display-selector.js';\n\nclass Display extends api.core.Instance {\n static get instanceClassName () {\n return 'Display';\n }\n\n init () {\n this.radios = this.querySelectorAll(DisplaySelector.RADIO_BUTTONS);\n\n if (api.scheme) {\n this.changing = this.change.bind(this);\n for (const radio of this.radios) radio.addEventListener('change', this.changing);\n this.addDescent(api.scheme.SchemeEmission.SCHEME, this.apply.bind(this));\n this.ascend(api.scheme.SchemeEmission.ASK);\n } else {\n this.querySelector(DisplaySelector.FIELDSET).setAttribute('disabled', '');\n }\n }\n\n get scheme () {\n return this._scheme;\n }\n\n set scheme (value) {\n if (this._scheme === value || !api.scheme) return;\n switch (value) {\n case api.scheme.SchemeValue.SYSTEM:\n case api.scheme.SchemeValue.LIGHT:\n case api.scheme.SchemeValue.DARK:\n this._scheme = value;\n for (const radio of this.radios) {\n radio.checked = radio.value === value;\n }\n this.ascend(api.scheme.SchemeEmission.SCHEME, value);\n break;\n }\n }\n\n change () {\n for (const radio of this.radios) {\n if (radio.checked) {\n this.scheme = radio.value;\n return;\n }\n }\n }\n\n apply (value) {\n this.scheme = value;\n }\n\n dispose () {\n for (const radio of this.radios) radio.removeEventListener('change', this.changing);\n }\n}\n\nexport { Display };\n","import api from './api.js';\nimport { Display } from './script/display/display.js';\nimport { DisplaySelector } from './script/display/display-selector.js';\n\napi.display = {\n Display: Display,\n DisplaySelector: DisplaySelector\n};\n\nexport default api;\n","import api from './index.js';\n\napi.internals.register(api.display.DisplaySelector.DISPLAY, api.display.Display);\n\nexport default api;\n"],"names":["const","api","window","AccordionSelector","GROUP","internals","ns","selector","COLLAPSE","AccordionsGroup","staticAccessors","instanceClassName","validate","member","node","matches","core","CollapsesGroup","accordion","register","ButtonSelector","EQUISIZED_BUTTON","EQUISIZED_GROUP","button","Equisized","EquisizedsGroup","Breadcrumb","super","this","count","focusing","focus","bind","init","getCollapse","isResizing","prototypeAccessors","proxy","scope","Object","assign","disclose","collapse","listen","DisclosureEvent","DISCLOSE","addAscent","DisclosureEmission","ADDED","resize","links","length","isBreakpoint","Breakpoints","MD","buttonHasFocus","indexOf","document","activeElement","querySelectorAll","element","getDescendantInstances","Collapse","_focus","link","request","verify","Instance","BreadcrumbSelector","BREADCRUMB","breadcrumb","ToggleInput","isChecked","hasAttribute","ToggleStatusLabel","getAttribute","update","isSwappingFont","input","getRegisteredInstances","style","removeProperty","checked","getComputedStyle","maxWidth","parseFloat","width","style2","setProperty","swapFont","families","ToggleSelector","STATUS_LABEL","attr","toggle","SidemenuSelector","LIST","SidemenuList","sidemenu","ModalSelector","MODAL","SCROLL_SHADOW","BODY","ModalButton","DisclosureType","OPENED","DisclosureButton","ModalAttribute","CONCEALING_BACKDROP","Modal","scrolling","resizing","click","listenKey","KeyCodes","ESCAPE","conceal","body","e","target","withhold","activate","isScrollLocked","setAttribute","preventFocus","removeAttribute","deactivate","Disclosure","UNORDEREDS","join","ORDEREDS","isFocusable","container","Element","visibility","undefined","contains","display","parentElement","FocusTrap","onTrap","onUntrap","waiting","wait","handling","handle","maintainFocus","current","trapped","trap","untrap","isTrapping","trapping","requestAnimationFrame","focusables","addEventListener","stun","children","child","stunneds","push","Stunned","event","first","preventDefault","keyCode","last","index","shiftKey","tabIndex","unordereds","dom","querySelectorAllArray","radios","documentElement","groups","radio","name","RadioButtonGroup","filter","unordered","tagName","toLowerCase","keep","ordereds","sort","a","b","noDuplicates","concat","removeEventListener","dispose","inert","unstun","buttons","selected","ModalsGroup","focusTrap","apply","value","initial","DisclosuresGroup","ModalBody","shade","scrollHeight","clientHeight","offsetHeight","scrollTop","removeClass","addClass","adjust","offset","isLegacy","maxHeight","innerHeight","modal","RootSelector","ROOT","NavigationSelector","NAVIGATION","ITEM","ITEM_RIGHT","MENU","NavigationItem","_isRightAligned","calculate","REMOVED","LG","right","getBoundingClientRect","left","isRightAligned","NavigationMousePosition","NONE","INSIDE","OUTSIDE","Navigation","clicked","out","focusOut","down","position","getPosition","hasFocus","navigation","TabButton","SELECT","isPrimary","list","focalize","getAscendantInstance","TabSelector","TAB","PANEL","SHADOW","SHADOW_LEFT","SHADOW_RIGHT","PANEL_START","PANEL_END","TabPanelDirection","TabPanel","_direction","_isPreventingTransition","direction","isPreventingTransition","motion","TransitionSelector","translate","reset","group","TabsGroup","transitionend","RIGHT","pressRight","LEFT","pressLeft","HOME","pressHome","END","pressEnd","isRendering","members","some","let","i","_index","render","paneHeight","Math","round","panelHeight","listHeight","TabsList","scroll","btn","btnRect","getRect","listRect","actualScroll","scrollLeft","scrollTo","isScrolling","_isScrolling","isMin","max","scrollWidth","clientWidth","isMax","abs","isRtl","minSelector","maxSelector","tab","TableEmission","SCROLLABLE","emission","CHANGE","CAPTION_HEIGHT","Table","setCaptionHeight","TableSelector","TABLE","ELEMENT","CAPTION","TableElement","content","querySelector","offsetWidth","TableCaption","height","ascend","table","TagSelector","TAG_PRESSABLE","tag","Toggle","HeaderSelector","HEADER","TOOLS_LINKS","MENU_LINKS","BUTTONS","MODALS","HeaderLinks","header","queryParentSelector","toolsLinks","menuLinks","innerHTML","replace","mode","Modes","ANGULAR","REACT","VUE","inspector","warn","HeaderModal","unqualify","qualify","getInstance","id","doc","DisplaySelector","DISPLAY","RADIO_BUTTONS","FIELDSET","Display","scheme","changing","change","addDescent","SchemeEmission","SCHEME","ASK","_scheme","SchemeValue","SYSTEM","LIGHT","DARK"],"mappings":"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"}
1
+ {"version":3,"file":"component.nomodule.min.js","sources":["../../.config/config.js","../../src/core/api.js","../../src/component/accordion/script/accordion/accordion-selector.js","../../src/component/accordion/script/accordion/accordions-group.js","../../src/component/accordion/index.js","../../src/component/accordion/main.js","../../src/component/button/script/button/button-selector.js","../../src/component/button/index.js","../../src/component/button/main.js","../../src/component/breadcrumb/script/breadcrumb/breadcrumb.js","../../src/component/breadcrumb/script/breadcrumb/breadcrumb-selector.js","../../src/component/breadcrumb/index.js","../../src/component/breadcrumb/main.js","../../src/component/toggle/script/toggle/toggle-input.js","../../src/component/toggle/script/toggle/toggle-status-label.js","../../src/component/toggle/script/toggle/toggle-selector.js","../../src/component/toggle/index.js","../../src/component/toggle/main.js","../../src/component/sidemenu/script/sidemenu/sidemenu-selector.js","../../src/component/sidemenu/script/sidemenu/sidemenu-list.js","../../src/component/sidemenu/index.js","../../src/component/sidemenu/main.js","../../src/component/modal/script/modal/modal-selector.js","../../src/component/modal/script/modal/modal-button.js","../../src/component/modal/script/modal/modal-attribute.js","../../src/component/modal/script/modal/modal.js","../../src/component/modal/script/modal/focus-trap.js","../../src/component/modal/script/modal/modals-group.js","../../src/component/modal/script/modal/modal-body.js","../../src/component/modal/index.js","../../src/component/modal/main.js","../../src/component/navigation/script/navigation/navigation-selector.js","../../src/component/navigation/script/navigation/navigation-item.js","../../src/component/navigation/script/navigation/navigation-mouse-position.js","../../src/component/navigation/script/navigation/navigation.js","../../src/component/navigation/index.js","../../src/component/navigation/main.js","../../src/component/tab/script/tab/tab-button.js","../../src/component/tab/script/tab/tab-selector.js","../../src/component/tab/script/tab/tab-panel-direction.js","../../src/component/tab/script/tab/tab-panel.js","../../src/component/tab/script/tab/tabs-group.js","../../src/component/tab/script/tab/tabs-list.js","../../src/component/tab/index.js","../../src/component/tab/main.js","../../src/component/table/script/table/table-emission.js","../../src/component/table/script/table/table.js","../../src/component/table/script/table/table-selector.js","../../src/component/table/script/table/table-element.js","../../src/component/table/script/table/table-caption.js","../../src/component/table/index.js","../../src/component/table/main.js","../../src/component/tag/script/tag/tag-selector.js","../../src/component/tag/index.js","../../src/component/tag/main.js","../../src/component/header/script/header/header-selector.js","../../src/component/header/script/header/header-links.js","../../src/component/header/script/header/header-modal.js","../../src/component/header/index.js","../../src/component/header/main.js","../../src/component/display/script/display/display-selector.js","../../src/component/display/script/display/display.js","../../src/component/display/index.js","../../src/component/display/main.js"],"sourcesContent":["const config = {\r\n prefix: 'fr',\r\n namespace: 'dsfr',\r\n organisation: '@gouvfr',\r\n version: '1.4.1'\r\n};\r\n\r\nexport default config;\r\n","import config from './config.js';\nconst api = window[config.namespace];\nexport default api;\n","import api from '../../api.js';\n\nexport const AccordionSelector = {\n GROUP: api.internals.ns.selector('accordions-group'),\n COLLAPSE: `${api.internals.ns.selector('accordion')} > ${api.internals.ns.selector('collapse')}`\n};\n","import api from '../../api.js';\nimport { AccordionSelector } from './accordion-selector.js';\n\nclass AccordionsGroup extends api.core.CollapsesGroup {\n static get instanceClassName () {\n return 'AccordionsGroup';\n }\n\n validate (member) {\n return member.node.matches(AccordionSelector.COLLAPSE);\n }\n}\n\nexport { AccordionsGroup };\n","import api from './api.js';\nimport { AccordionsGroup } from './script/accordion/accordions-group.js';\nimport { AccordionSelector } from './script/accordion/accordion-selector.js';\n\napi.accordion = {\n AccordionSelector: AccordionSelector,\n AccordionsGroup: AccordionsGroup\n};\n\nexport default api;\n","import api from './index.js';\n\napi.internals.register(api.accordion.AccordionSelector.GROUP, api.accordion.AccordionsGroup);\n\nexport default api;\n","import api from '../../api.js';\n\nexport const ButtonSelector = {\n EQUISIZED_BUTTON: `${api.internals.ns.selector('btns-group--equisized')} ${api.internals.ns.selector('btn')}`,\n EQUISIZED_GROUP: api.internals.ns.selector('btns-group--equisized')\n};\n","import api from './api.js';\nimport { ButtonSelector } from './script/button/button-selector';\n\napi.button = {\n ButtonSelector: ButtonSelector\n};\n\nexport default api;\n","import api from './index.js';\n\napi.internals.register(api.button.ButtonSelector.EQUISIZED_BUTTON, api.core.Equisized);\napi.internals.register(api.button.ButtonSelector.EQUISIZED_GROUP, api.core.EquisizedsGroup);\n\nexport default api;\n","import api from '../../api.js';\n\nclass Breadcrumb extends api.core.Instance {\n constructor () {\n super();\n this.count = 0;\n this.focusing = this.focus.bind(this);\n }\n\n static get instanceClassName () {\n return 'Breadcrumb';\n }\n\n init () {\n this.getCollapse();\n this.isResizing = true;\n }\n\n get proxy () {\n const scope = this;\n return Object.assign(super.proxy, {\n focus: scope.focus.bind(scope),\n disclose: scope.collapse.disclose.bind(scope.collapse)\n });\n }\n\n getCollapse () {\n const collapse = this.collapse;\n if (collapse) {\n collapse.listen(api.core.DisclosureEvent.DISCLOSE, this.focusing);\n } else {\n this.addAscent(api.core.DisclosureEmission.ADDED, this.getCollapse.bind(this));\n }\n }\n\n resize () {\n const collapse = this.collapse;\n const links = this.links;\n if (!collapse || !links.length) return;\n\n if (this.isBreakpoint(api.core.Breakpoints.MD)) {\n if (collapse.buttonHasFocus) links[0].focus();\n } else {\n if (links.indexOf(document.activeElement) > -1) collapse.focus();\n }\n }\n\n get links () {\n return [...this.querySelectorAll('a[href]')];\n }\n\n get collapse () {\n return this.element.getDescendantInstances(api.core.Collapse.instanceClassName, null, true)[0];\n }\n\n focus () {\n this.count = 0;\n this._focus();\n }\n\n _focus () {\n const link = this.links[0];\n if (!link) return;\n link.focus();\n this.request(this.verify.bind(this));\n }\n\n verify () {\n this.count++;\n if (this.count > 100) return;\n const link = this.links[0];\n if (!link) return;\n if (document.activeElement !== link) this._focus();\n }\n}\n\nexport { Breadcrumb };\n","import api from '../../api.js';\n\nexport const BreadcrumbSelector = {\n BREADCRUMB: api.internals.ns.selector('breadcrumb')\n};\n","import api from './api.js';\nimport { Breadcrumb } from './script/breadcrumb/breadcrumb.js';\nimport { BreadcrumbSelector } from './script/breadcrumb/breadcrumb-selector.js';\n\napi.breadcrumb = {\n BreadcrumbSelector: BreadcrumbSelector,\n Breadcrumb: Breadcrumb\n};\n\nexport default api;\n","import api from './index.js';\n\napi.internals.register(api.breadcrumb.BreadcrumbSelector.BREADCRUMB, api.breadcrumb.Breadcrumb);\n\nexport default api;\n","import api from '../../api.js';\n\nclass ToggleInput extends api.core.Instance {\n static get instanceClassName () {\n return 'ToggleInput';\n }\n\n get isChecked () {\n return this.hasAttribute('checked');\n }\n}\n\nexport { ToggleInput };\n","import api from '../../api.js';\nimport { ToggleInput } from './toggle-input.js';\n\nclass ToggleStatusLabel extends api.core.Instance {\n static get instanceClassName () {\n return 'ToggleStatusLabel';\n }\n\n init () {\n this.register(`input[id=\"${this.getAttribute('for')}\"]`, ToggleInput);\n this.update();\n this.isSwappingFont = true;\n }\n\n get proxy () {\n const scope = this;\n return Object.assign(super.proxy, {\n update: scope.update.bind(scope)\n });\n }\n\n get input () {\n return this.getRegisteredInstances('ToggleInput')[0];\n }\n\n update () {\n this.node.style.removeProperty('--toggle-status-width');\n const checked = this.input.isChecked;\n\n const style = getComputedStyle(this.node, ':before');\n let maxWidth = parseFloat(style.width);\n this.input.node.checked = !checked;\n\n const style2 = getComputedStyle(this.node, ':before');\n const width = parseFloat(style2.width);\n if (width > maxWidth) maxWidth = width;\n this.input.node.checked = checked;\n\n this.node.style.setProperty('--toggle-status-width', (maxWidth / 16) + 'rem');\n }\n\n swapFont (families) {\n this.update();\n }\n}\n\nexport { ToggleStatusLabel };\n","import api from '../../api.js';\n\nexport const ToggleSelector = {\n STATUS_LABEL: `${api.internals.ns.selector('toggle__label')}${api.internals.ns.attr.selector('checked-label')}${api.internals.ns.attr.selector('unchecked-label')}`\n};\n","import api from './api.js';\nimport { ToggleStatusLabel } from './script/toggle/toggle-status-label.js';\nimport { ToggleSelector } from './script/toggle/toggle-selector.js';\n// import { ToggleInput } from './script/toggle/toggle-input.js';\n\napi.toggle = {\n ToggleStatusLabel: ToggleStatusLabel,\n ToggleSelector: ToggleSelector\n};\n\nexport default api;\n","import api from './index.js';\n\napi.internals.register(api.toggle.ToggleSelector.STATUS_LABEL, api.toggle.ToggleStatusLabel);\n\nexport default api;\n","import api from '../../api.js';\n\nexport const SidemenuSelector = {\n LIST: api.internals.ns.selector('sidemenu__list'),\n COLLAPSE: `${api.internals.ns.selector('sidemenu__item')} > ${api.internals.ns.selector('collapse')}`\n};\n","import api from '../../api.js';\nimport { SidemenuSelector } from './sidemenu-selector.js';\n\nclass SidemenuList extends api.core.CollapsesGroup {\n static get instanceClassName () {\n return 'SidemenuList';\n }\n\n validate (member) {\n return member.node.matches(SidemenuSelector.COLLAPSE);\n }\n}\n\nexport { SidemenuList };\n","import api from './api.js';\nimport { SidemenuList } from './script/sidemenu/sidemenu-list.js';\nimport { SidemenuSelector } from './script/sidemenu/sidemenu-selector.js';\n\napi.sidemenu = {\n SidemenuList: SidemenuList,\n SidemenuSelector: SidemenuSelector\n};\n\nexport default api;\n","import api from './index.js';\n\napi.internals.register(api.sidemenu.SidemenuSelector.LIST, api.sidemenu.SidemenuList);\n\nexport default api;\n","import api from '../../api.js';\n\nexport const ModalSelector = {\n MODAL: api.internals.ns.selector('modal'),\n SCROLL_SHADOW: api.internals.ns.selector('scroll-shadow'),\n BODY: api.internals.ns.selector('modal__body')\n};\n","import api from '../../api.js';\n\nclass ModalButton extends api.core.DisclosureButton {\n constructor () {\n super(api.core.DisclosureType.OPENED);\n }\n\n static get instanceClassName () {\n return 'ModalButton';\n }\n}\n\nexport { ModalButton };\n","import api from '../../api';\n\nexport const ModalAttribute = {\n CONCEALING_BACKDROP: api.internals.ns.attr('concealing-backdrop')\n};\n","import api from '../../api.js';\nimport { ModalSelector } from './modal-selector.js';\nimport { ModalButton } from './modal-button.js';\nimport { ModalAttribute } from './modal-attribute';\n\nclass Modal extends api.core.Disclosure {\n constructor () {\n super(api.core.DisclosureType.OPENED, ModalSelector.MODAL, ModalButton, 'ModalsGroup');\n this.scrolling = this.resize.bind(this, false);\n this.resizing = this.resize.bind(this, true);\n }\n\n static get instanceClassName () {\n return 'Modal';\n }\n\n init () {\n super.init();\n this.listen('click', this.click.bind(this));\n this.listenKey(api.core.KeyCodes.ESCAPE, this.conceal.bind(this, false, false), true, true);\n }\n\n get body () {\n return this.element.getDescendantInstances('ModalBody', 'Modal')[0];\n }\n\n click (e) {\n if (e.target === this.node && this.getAttribute(ModalAttribute.CONCEALING_BACKDROP) !== 'false') this.conceal();\n }\n\n disclose (withhold) {\n if (!super.disclose(withhold)) return false;\n if (this.body) this.body.activate();\n this.isScrollLocked = true;\n this.setAttribute('aria-modal', 'true');\n this.setAttribute('open', 'true');\n return true;\n }\n\n conceal (withhold, preventFocus) {\n if (!super.conceal(withhold, preventFocus)) return false;\n this.isScrollLocked = false;\n this.removeAttribute('aria-modal');\n this.removeAttribute('open');\n if (this.body) this.body.deactivate();\n return true;\n }\n}\n\nexport { Modal };\n","import api from '../../api.js';\n\nconst unordereds = [\n '[tabindex=\"0\"]',\n 'a[href]',\n 'button:not([disabled])',\n 'input:not([disabled])',\n 'select:not([disabled])',\n 'textarea:not([disabled])',\n 'audio[controls]',\n 'video[controls]',\n '[contenteditable]:not([contenteditable=\"false\"])',\n 'details>summary:first-of-type',\n 'details',\n 'iframe'\n];\n\nconst UNORDEREDS = unordereds.join();\n\nconst ordereds = [\n '[tabindex]:not([tabindex=\"-1\"]):not([tabindex=\"0\"])'\n];\n\nconst ORDEREDS = ordereds.join();\n\nconst IS_STUNNING = false;\n\nconst isFocusable = (element, container) => {\n if (!(element instanceof Element)) return false;\n const style = window.getComputedStyle(element);\n if (!style) return false;\n if (style.visibility === 'hidden') return false;\n if (container === undefined) container = element;\n\n while (container.contains(element)) {\n if (style.display === 'none') return false;\n element = element.parentElement;\n }\n\n return true;\n};\n\nclass FocusTrap {\n constructor (onTrap, onUntrap) {\n this.element = null;\n this.activeElement = null;\n this.onTrap = onTrap;\n this.onUntrap = onUntrap;\n this.waiting = this.wait.bind(this);\n this.handling = this.handle.bind(this);\n this.focusing = this.maintainFocus.bind(this);\n this.current = null;\n }\n\n get trapped () { return this.element !== null; }\n\n trap (element) {\n if (this.trapped) this.untrap();\n\n this.element = element;\n this.isTrapping = true;\n this.wait();\n\n if (this.onTrap) this.onTrap();\n }\n\n wait () {\n if (!isFocusable(this.element)) {\n window.requestAnimationFrame(this.waiting);\n return;\n }\n\n this.trapping();\n }\n\n trapping () {\n if (!this.isTrapping) return;\n this.isTrapping = false;\n const focusables = this.focusables;\n if (focusables.length) focusables[0].focus();\n this.element.setAttribute('aria-modal', true);\n window.addEventListener('keydown', this.handling);\n document.body.addEventListener('focus', this.focusing, true);\n\n if (IS_STUNNING) {\n this.stunneds = [];\n this.stun(document.body);\n }\n }\n\n stun (node) {\n for (const child of node.children) {\n if (child === this.element) continue;\n if (child.contains(this.element)) {\n this.stun(child);\n continue;\n }\n this.stunneds.push(new Stunned(child));\n }\n }\n\n maintainFocus (event) {\n if (!this.element.contains(event.target)) {\n const focusables = this.focusables;\n if (focusables.length === 0) return;\n const first = focusables[0];\n event.preventDefault();\n first.focus();\n }\n }\n\n handle (e) {\n if (e.keyCode !== 9) return;\n\n const focusables = this.focusables;\n if (focusables.length === 0) return;\n\n const first = focusables[0];\n const last = focusables[focusables.length - 1];\n\n const index = focusables.indexOf(document.activeElement);\n\n if (e.shiftKey) {\n if (!this.element.contains(document.activeElement) || index < 1) {\n e.preventDefault();\n last.focus();\n } else if (document.activeElement.tabIndex > 0 || focusables[index - 1].tabIndex > 0) {\n e.preventDefault();\n focusables[index - 1].focus();\n }\n } else {\n if (!this.element.contains(document.activeElement) || index === focusables.length - 1 || index === -1) {\n e.preventDefault();\n first.focus();\n } else if (document.activeElement.tabIndex > 0) {\n e.preventDefault();\n focusables[index + 1].focus();\n }\n }\n }\n\n get focusables () {\n let unordereds = api.internals.dom.querySelectorAllArray(this.element, UNORDEREDS);\n\n /**\n * filtrage des radiobutttons de même name (la navigations d'un groupe de radio se fait à la flèche et non pas au tab\n **/\n const radios = api.internals.dom.querySelectorAllArray(document.documentElement, 'input[type=\"radio\"]');\n\n if (radios.length) {\n const groups = {};\n\n for (const radio of radios) {\n const name = radio.getAttribute('name');\n if (groups[name] === undefined) groups[name] = new RadioButtonGroup(name);\n groups[name].push(radio);\n }\n\n unordereds = unordereds.filter((unordered) => {\n if (unordered.tagName.toLowerCase() !== 'input' || unordered.getAttribute('type').toLowerCase() !== 'radio') return true;\n const name = unordered.getAttribute('name');\n return groups[name].keep(unordered);\n });\n }\n\n const ordereds = api.internals.dom.querySelectorAllArray(this.element, ORDEREDS);\n\n ordereds.sort((a, b) => a.tabIndex - b.tabIndex);\n\n const noDuplicates = unordereds.filter((element) => ordereds.indexOf(element) === -1);\n const concateneds = ordereds.concat(noDuplicates);\n return concateneds.filter((element) => element.tabIndex !== '-1' && isFocusable(element, this.element));\n }\n\n untrap () {\n if (!this.trapped) return;\n this.isTrapping = false;\n\n this.element.removeAttribute('aria-modal');\n window.removeEventListener('keydown', this.handling);\n document.body.removeEventListener('focus', this.focusing, true);\n\n this.element = null;\n\n if (IS_STUNNING) {\n for (const stunned of this.stunneds) stunned.unstun();\n this.stunneds = [];\n }\n\n if (this.onUntrap) this.onUntrap();\n }\n\n dispose () {\n this.untrap();\n }\n}\n\nclass Stunned {\n constructor (element) {\n this.element = element;\n // this.hidden = element.getAttribute('aria-hidden');\n this.inert = element.getAttribute('inert');\n\n // this.element.setAttribute('aria-hidden', true);\n this.element.setAttribute('inert', '');\n }\n\n unstun () {\n /*\n if (this.hidden === null) this.element.removeAttribute('aria-hidden');\n else this.element.setAttribute('aria-hidden', this.hidden);\n */\n\n if (this.inert === null) this.element.removeAttribute('inert');\n else this.element.setAttribute('inert', this.inert);\n }\n}\n\nclass RadioButtonGroup {\n constructor (name) {\n this.name = name;\n this.buttons = [];\n }\n\n push (button) {\n this.buttons.push(button);\n if (button === document.activeElement || button.checked || this.selected === undefined) this.selected = button;\n }\n\n keep (button) {\n return this.selected === button;\n }\n}\n\nexport { FocusTrap };\n","import api from '../../api.js';\nimport { FocusTrap } from './focus-trap.js';\n\nclass ModalsGroup extends api.core.DisclosuresGroup {\n constructor () {\n super('Modal', false);\n this.focusTrap = new FocusTrap();\n }\n\n static get instanceClassName () {\n return 'ModalsGroup';\n }\n\n apply (value, initial) {\n super.apply(value, initial);\n if (this.current === null) this.focusTrap.untrap();\n else this.focusTrap.trap(this.current.node);\n }\n}\n\nexport { ModalsGroup };\n","import api from '../../api.js';\nimport { ModalSelector } from './modal-selector.js';\n\nconst OFFSET = 32; // 32px => 8v => 2rem\n\nclass ModalBody extends api.core.Instance {\n static get instanceClassName () {\n return 'ModalBody';\n }\n\n init () {\n this.listen('scroll', this.shade.bind(this));\n }\n\n activate () {\n this.isResizing = true;\n this.resize();\n }\n\n deactivate () {\n this.isResizing = false;\n }\n\n shade () {\n if (this.node.scrollHeight > this.node.clientHeight) {\n if (this.node.offsetHeight + this.node.scrollTop >= this.node.scrollHeight) {\n this.removeClass(ModalSelector.SCROLL_SHADOW);\n } else {\n this.addClass(ModalSelector.SCROLL_SHADOW);\n }\n } else {\n this.removeClass(ModalSelector.SCROLL_SHADOW);\n }\n }\n\n resize () {\n this.adjust();\n this.request(this.adjust.bind(this));\n }\n\n adjust () {\n const offset = OFFSET * (this.isBreakpoint(api.core.Breakpoints.MD) ? 2 : 1);\n if (this.isLegacy) this.style.maxHeight = `${window.innerHeight - offset}px`;\n else this.style.setProperty('--modal-max-height', `${window.innerHeight - offset}px`);\n this.shade();\n }\n}\n\nexport { ModalBody };\n","import api from './api.js';\n\nimport { Modal } from './script/modal/modal.js';\nimport { ModalButton } from './script/modal/modal-button.js';\nimport { ModalsGroup } from './script/modal/modals-group.js';\nimport { ModalBody } from './script/modal/modal-body.js';\nimport { ModalSelector } from './script/modal/modal-selector.js';\n\napi.modal = {\n Modal: Modal,\n ModalButton: ModalButton,\n ModalBody: ModalBody,\n ModalsGroup: ModalsGroup,\n ModalSelector: ModalSelector\n};\n\nexport default api;\n","import api from './index.js';\n\napi.internals.register(api.modal.ModalSelector.MODAL, api.modal.Modal);\napi.internals.register(api.modal.ModalSelector.BODY, api.modal.ModalBody);\napi.internals.register(api.core.RootSelector.ROOT, api.modal.ModalsGroup);\n\nexport default api;\n","import api from '../../api.js';\n\nexport const NavigationSelector = {\n NAVIGATION: api.internals.ns.selector('nav'),\n COLLAPSE: `${api.internals.ns.selector('nav__item')} > ${api.internals.ns.selector('collapse')}`,\n ITEM: api.internals.ns.selector('nav__item'),\n ITEM_RIGHT: api.internals.ns('nav__item--align-right'),\n MENU: api.internals.ns.selector('menu')\n};\n","import api from '../../api.js';\nimport { NavigationSelector } from './navigation-selector.js';\n\nclass NavigationItem extends api.core.Instance {\n constructor () {\n super();\n this._isRightAligned = false;\n }\n\n static get instanceClassName () {\n return 'NavigationItem';\n }\n\n init () {\n this.addAscent(api.core.DisclosureEmission.ADDED, this.calculate.bind(this));\n this.addAscent(api.core.DisclosureEmission.REMOVED, this.calculate.bind(this));\n this.isResizing = true;\n this.calculate();\n }\n\n resize () {\n this.calculate();\n }\n\n calculate () {\n const collapse = this.element.getDescendantInstances(api.core.Collapse.instanceClassName, null, true)[0];\n if (collapse && this.isBreakpoint(api.core.Breakpoints.LG) && collapse.element.node.matches(NavigationSelector.MENU)) {\n const right = this.element.node.parentElement.getBoundingClientRect().right;\n const width = collapse.element.node.getBoundingClientRect().width;\n const left = this.element.node.getBoundingClientRect().left;\n this.isRightAligned = left + width > right;\n } else this.isRightAligned = false;\n }\n\n get isRightAligned () {\n return this._isRightAligned;\n }\n\n set isRightAligned (value) {\n if (this._isRightAligned === value) return;\n this._isRightAligned = value;\n if (value) api.internals.dom.addClass(this.element.node, NavigationSelector.ITEM_RIGHT);\n else api.internals.dom.removeClass(this.element.node, NavigationSelector.ITEM_RIGHT);\n }\n}\n\nexport { NavigationItem };\n","export const NavigationMousePosition = {\n NONE: -1,\n INSIDE: 0,\n OUTSIDE: 1\n};\n","import api from '../../api.js';\nimport { NavigationSelector } from './navigation-selector.js';\nimport { NavigationMousePosition } from './navigation-mouse-position.js';\n\nclass Navigation extends api.core.CollapsesGroup {\n static get instanceClassName () {\n return 'Navigation';\n }\n\n init () {\n super.init();\n this.clicked = false;\n this.out = false;\n this.listen('focusout', this.focusOut.bind(this));\n this.listen('mousedown', this.down.bind(this));\n }\n\n validate (member) {\n return member.element.node.matches(NavigationSelector.COLLAPSE);\n }\n\n down (e) {\n if (!this.isBreakpoint(api.core.Breakpoints.LG) || this.index === -1 || !this.current) return;\n this.position = this.current.element.node.contains(e.target) ? NavigationMousePosition.INSIDE : NavigationMousePosition.OUTSIDE;\n this.request(this.getPosition.bind(this));\n }\n\n focusOut (e) {\n if (!this.isBreakpoint(api.core.Breakpoints.LG)) return;\n this.out = true;\n this.request(this.getPosition.bind(this));\n }\n\n getPosition () {\n if (this.out) {\n switch (this.position) {\n case NavigationMousePosition.OUTSIDE:\n this.index = -1;\n break;\n\n case NavigationMousePosition.INSIDE:\n if (this.current) this.current.focus();\n break;\n\n default:\n if (this.index > -1 && !this.current.hasFocus) this.index = -1;\n }\n }\n this.position = NavigationMousePosition.NONE;\n this.out = false;\n }\n\n get index () { return super.index; }\n\n set index (value) {\n if (value === -1 && this.current !== null && this.current.hasFocus) this.current.focus();\n super.index = value;\n }\n}\n\nexport { Navigation };\n","import api from './api.js';\nimport { NavigationItem } from './script/navigation/navigation-item.js';\nimport { Navigation } from './script/navigation/navigation.js';\nimport { NavigationSelector } from './script/navigation/navigation-selector.js';\nimport { NavigationMousePosition } from './script/navigation/navigation-mouse-position.js';\n\napi.navigation = {\n Navigation: Navigation,\n NavigationItem: NavigationItem,\n NavigationMousePosition: NavigationMousePosition,\n NavigationSelector: NavigationSelector\n};\n\nexport default api;\n","import api from './index.js';\n\napi.internals.register(api.navigation.NavigationSelector.NAVIGATION, api.navigation.Navigation);\napi.internals.register(api.navigation.NavigationSelector.ITEM, api.navigation.NavigationItem);\n\nexport default api;\n","import api from '../../api.js';\n\n/**\n * TabButton correspond au bouton cliquable qui change le panel\n * TabButton étend de DisclosureButton qui ajoute/enelve l'attribut aria-selected,\n * Et change l'attributte tabindex a 0 si le boutton est actif (value=true), -1 s'il n'est pas actif (value=false)\n */\nclass TabButton extends api.core.DisclosureButton {\n constructor () {\n super(api.core.DisclosureType.SELECT);\n }\n\n static get instanceClassName () {\n return 'TabButton';\n }\n\n apply (value) {\n super.apply(value);\n if (this.isPrimary) {\n this.setAttribute('tabindex', value ? '0' : '-1');\n if (value) {\n if (this.list) this.list.focalize(this);\n }\n }\n }\n\n get list () {\n return this.element.getAscendantInstance('TabsList', 'TabsGroup');\n }\n}\n\nexport { TabButton };\n","import api from '../../api.js';\n\nexport const TabSelector = {\n TAB: api.internals.ns.selector('tabs__tab'),\n GROUP: api.internals.ns.selector('tabs'),\n PANEL: api.internals.ns.selector('tabs__panel'),\n LIST: api.internals.ns.selector('tabs__list'),\n SHADOW: api.internals.ns.selector('tabs__shadow'),\n SHADOW_LEFT: api.internals.ns.selector('tabs__shadow--left'),\n SHADOW_RIGHT: api.internals.ns.selector('tabs__shadow--right'),\n PANEL_START: api.internals.ns.selector('tabs__panel--direction-start'),\n PANEL_END: api.internals.ns.selector('tabs__panel--direction-end')\n};\n","export const TabPanelDirection = {\n START: 'direction-start',\n END: 'direction-end',\n NONE: 'none'\n};\n","import api from '../../api.js';\nimport { TabButton } from './tab-button.js';\nimport { TabSelector } from './tab-selector.js';\nimport { TabPanelDirection } from './tab-panel-direction.js';\n\n/**\n * Tab coorespond au panel d'un élement Tabs (tab panel)\n * Tab étend disclosure qui ajoute/enleve le modifier --selected,\n * et ajoute/eleve l'attribut hidden, sur le panel\n */\nclass TabPanel extends api.core.Disclosure {\n constructor () {\n super(api.core.DisclosureType.SELECT, TabSelector.PANEL, TabButton, 'TabsGroup');\n this._direction = TabPanelDirection.NONE;\n this._isPreventingTransition = false;\n }\n\n static get instanceClassName () {\n return 'TabPanel';\n }\n\n get direction () {\n return this._direction;\n }\n\n set direction (value) {\n if (value === this._direction) return;\n switch (this._direction) {\n case TabPanelDirection.START:\n this.removeClass(TabSelector.PANEL_START);\n break;\n\n case TabPanelDirection.END:\n this.removeClass(TabSelector.PANEL_END);\n break;\n\n case TabPanelDirection.NONE:\n break;\n\n default:\n return;\n }\n\n this._direction = value;\n\n switch (this._direction) {\n case TabPanelDirection.START:\n this.addClass(TabSelector.PANEL_START);\n break;\n\n case TabPanelDirection.END:\n this.addClass(TabSelector.PANEL_END);\n break;\n }\n }\n\n get isPreventingTransition () {\n return this._isPreventingTransition;\n }\n\n set isPreventingTransition (value) {\n if (this._isPreventingTransition === value) return;\n if (value) this.addClass(api.internals.motion.TransitionSelector.NONE);\n else this.removeClass(api.internals.motion.TransitionSelector.NONE);\n this._isPreventingTransition = value === true;\n }\n\n translate (direction, initial) {\n this.isPreventingTransition = initial;\n this.direction = direction;\n }\n\n reset () {\n this.group.index = 0;\n }\n}\n\nexport { TabPanel };\n","import api from '../../api.js';\nimport { TabPanelDirection } from './tab-panel-direction.js';\n\n/**\n* TabGroup est la classe étendue de DiscosuresGroup\n* Correspond à un objet Tabs avec plusieurs tab-button & Tab (panel)\n*/\nclass TabsGroup extends api.core.DisclosuresGroup {\n constructor () {\n super('TabPanel');\n }\n\n static get instanceClassName () {\n return 'TabsGroup';\n }\n\n init () {\n super.init();\n this.listen('transitionend', this.transitionend.bind(this));\n this.listenKey(api.core.KeyCodes.RIGHT, this.pressRight.bind(this), true, true);\n this.listenKey(api.core.KeyCodes.LEFT, this.pressLeft.bind(this), true, true);\n this.listenKey(api.core.KeyCodes.HOME, this.pressHome.bind(this), true, true);\n this.listenKey(api.core.KeyCodes.END, this.pressEnd.bind(this), true, true);\n this.isRendering = true;\n\n if (this.list) this.list.apply();\n }\n\n get list () {\n return this.element.getDescendantInstances('TabsList', 'TabsGroup', true)[0];\n }\n\n transitionend (e) {\n this.isPreventingTransition = true;\n }\n\n get buttonHasFocus () {\n return this.members.some(member => member.buttonHasFocus);\n }\n\n /**\n * Selectionne l'element suivant de la liste si on est sur un bouton\n * Si on est à la fin on retourne au début\n */\n pressRight () {\n if (this.buttonHasFocus) {\n if (this.index < this.length - 1) {\n this.index++;\n } else {\n this.index = 0;\n }\n\n this.focus();\n }\n };\n\n /**\n * Selectionne l'element précédent de la liste si on est sur un bouton\n * Si on est au debut retourne a la fin\n */\n pressLeft () {\n if (this.buttonHasFocus) {\n if (this.index > 0) {\n this.index--;\n } else {\n this.index = this.length - 1;\n }\n\n this.focus();\n }\n };\n\n /**\n * Selectionne le permier element de la liste si on est sur un bouton\n */\n pressHome () {\n if (this.buttonHasFocus) {\n this.index = 0;\n this.focus();\n }\n };\n\n /**\n * Selectionne le dernier element de la liste si on est sur un bouton\n */\n pressEnd () {\n if (this.buttonHasFocus) {\n this.index = this.length - 1;\n this.focus();\n }\n };\n\n focus () {\n if (this.current) {\n this.current.focus();\n }\n }\n\n apply () {\n for (let i = 0; i < this._index; i++) this.members[i].translate(TabPanelDirection.START);\n this.current.translate(TabPanelDirection.NONE);\n for (let i = this._index + 1; i < this.length; i++) this.members[i].translate(TabPanelDirection.END);\n this.isPreventingTransition = false;\n }\n\n get isPreventingTransition () {\n return this._isPreventingTransition;\n }\n\n set isPreventingTransition (value) {\n if (this._isPreventingTransition === value) return;\n if (value) this.addClass(api.internals.motion.TransitionSelector.NONE);\n else this.removeClass(api.internals.motion.TransitionSelector.NONE);\n this._isPreventingTransition = value === true;\n }\n\n render () {\n if (this.current === null) return;\n const paneHeight = Math.round(this.current.node.offsetHeight);\n if (this.panelHeight === paneHeight) return;\n this.panelHeight = paneHeight;\n let listHeight = 0;\n if (this.list) listHeight = this.list.node.offsetHeight;\n this.style.setProperty('--tabs-height', (this.panelHeight + listHeight) + 'px');\n }\n}\n\nexport { TabsGroup };\n","import api from '../../api.js';\nimport { TabSelector } from './tab-selector';\n\nconst FOCALIZE_OFFSET = 16;\nconst SCROLL_OFFSET = 16; // valeur en px du scroll avant laquelle le shadow s'active ou se desactive\n\nclass TabsList extends api.core.Instance {\n static get instanceClassName () {\n return 'TabsList';\n }\n\n init () {\n this.listen('scroll', this.scroll.bind(this));\n this.isResizing = true;\n }\n\n get group () {\n return this.element.getAscendantInstance('TabsGroup', 'TabsList');\n }\n\n focalize (btn) {\n const btnRect = btn.getRect();\n const listRect = this.getRect();\n const actualScroll = this.node.scrollLeft;\n if (btnRect.left < listRect.left) this.node.scrollTo(actualScroll - listRect.left + btnRect.left - FOCALIZE_OFFSET, 0);\n else if (btnRect.right > listRect.right) this.node.scrollTo(actualScroll - listRect.right + btnRect.right + FOCALIZE_OFFSET, 0);\n }\n\n get isScrolling () {\n return this._isScrolling;\n }\n\n set isScrolling (value) {\n if (this._isScrolling === value) return;\n this._isScrolling = value;\n this.apply();\n }\n\n apply () {\n if (!this.group) return;\n if (this._isScrolling) {\n this.group.addClass(TabSelector.SHADOW);\n this.scroll();\n } else {\n this.group.removeClass(TabSelector.SHADOW_RIGHT);\n this.group.removeClass(TabSelector.SHADOW_LEFT);\n this.group.removeClass(TabSelector.SHADOW);\n }\n }\n\n /* ajoute la classe fr-table__shadow-left ou fr-table__shadow-right sur fr-table en fonction d'une valeur de scroll et du sens (right, left) */\n scroll () {\n if (!this.group) return;\n const scrollLeft = this.node.scrollLeft;\n const isMin = scrollLeft <= SCROLL_OFFSET;\n const max = this.node.scrollWidth - this.node.clientWidth - SCROLL_OFFSET;\n\n const isMax = Math.abs(scrollLeft) >= max;\n const isRtl = document.documentElement.getAttribute('dir') === 'rtl';\n const minSelector = isRtl ? TabSelector.SHADOW_RIGHT : TabSelector.SHADOW_LEFT;\n const maxSelector = isRtl ? TabSelector.SHADOW_LEFT : TabSelector.SHADOW_RIGHT;\n\n if (isMin) {\n this.group.removeClass(minSelector);\n } else {\n this.group.addClass(minSelector);\n }\n\n if (isMax) {\n this.group.removeClass(maxSelector);\n } else {\n this.group.addClass(maxSelector);\n }\n }\n\n resize () {\n this.isScrolling = this.node.scrollWidth > this.node.clientWidth + SCROLL_OFFSET;\n }\n\n dispose () {\n this.isScrolling = false;\n }\n}\n\nexport { TabsList };\n","import api from './api.js';\nimport { TabPanel } from './script/tab/tab-panel.js';\nimport { TabButton } from './script/tab/tab-button.js';\nimport { TabsGroup } from './script/tab/tabs-group.js';\nimport { TabsList } from './script/tab/tabs-list.js';\nimport { TabSelector } from './script/tab/tab-selector.js';\n\napi.tab = {\n TabPanel: TabPanel,\n TabButton: TabButton,\n TabsGroup: TabsGroup,\n TabsList: TabsList,\n TabSelector: TabSelector\n};\n\nexport default api;\n","import api from './index.js';\n\napi.internals.register(api.tab.TabSelector.PANEL, api.tab.TabPanel);\napi.internals.register(api.tab.TabSelector.GROUP, api.tab.TabsGroup);\napi.internals.register(api.tab.TabSelector.LIST, api.tab.TabsList);\n\nexport default api;\n","import api from '../../api.js';\n\nexport const TableEmission = {\n SCROLLABLE: api.internals.ns.emission('table', 'scrollable'),\n CHANGE: api.internals.ns.emission('table', 'change'),\n CAPTION_HEIGHT: api.internals.ns.emission('table', 'captionheight')\n};\n","import api from '../../api.js';\nimport { TableEmission } from './table-emission.js';\n\nconst PADDING = '1rem'; // padding de 4v sur le caption\n\nclass Table extends api.core.Instance {\n static get instanceClassName () {\n return 'Table';\n }\n\n init () {\n this.addAscent(TableEmission.CAPTION_HEIGHT, this.setCaptionHeight.bind(this));\n }\n\n setCaptionHeight (value) {\n this.setProperty('--table-offset', `calc(${value}px + ${PADDING})`);\n }\n}\n\nexport { Table };\n","import api from '../../api.js';\n\nexport const TableSelector = {\n TABLE: api.internals.ns.selector('table'),\n SHADOW: api.internals.ns.selector('table__shadow'),\n SHADOW_LEFT: api.internals.ns.selector('table__shadow--left'),\n SHADOW_RIGHT: api.internals.ns.selector('table__shadow--right'),\n ELEMENT: `${api.internals.ns.selector('table')}:not(${api.internals.ns.selector('table--no-scroll')}) table`,\n CAPTION: `${api.internals.ns.selector('table')} table caption`\n};\n","import api from '../../api.js';\nimport { TableSelector } from './table-selector.js';\n\nconst SCROLL_OFFSET = 8; // valeur en px du scroll avant laquelle le shadow s'active ou se desactive\n\nclass TableElement extends api.core.Instance {\n static get instanceClassName () {\n return 'TableElement';\n }\n\n init () {\n this.listen('scroll', this.scroll.bind(this));\n this.content = this.querySelector('tbody');\n this.isResizing = true;\n }\n\n get isScrolling () {\n return this._isScrolling;\n }\n\n set isScrolling (value) {\n if (this._isScrolling === value) return;\n this._isScrolling = value;\n\n if (value) {\n this.addClass(TableSelector.SHADOW);\n this.scroll();\n } else {\n this.removeClass(TableSelector.SHADOW);\n this.removeClass(TableSelector.SHADOW_LEFT);\n this.removeClass(TableSelector.SHADOW_RIGHT);\n }\n }\n\n /* ajoute la classe fr-table__shadow-left ou fr-table__shadow-right sur fr-table en fonction d'une valeur de scroll et du sens (right, left) */\n scroll () {\n const isMin = this.node.scrollLeft <= SCROLL_OFFSET;\n const max = this.content.offsetWidth - this.node.offsetWidth - SCROLL_OFFSET;\n const isMax = Math.abs(this.node.scrollLeft) >= max;\n const isRtl = document.documentElement.getAttribute('dir') === 'rtl';\n const minSelector = isRtl ? TableSelector.SHADOW_RIGHT : TableSelector.SHADOW_LEFT;\n const maxSelector = isRtl ? TableSelector.SHADOW_LEFT : TableSelector.SHADOW_RIGHT;\n\n if (isMin) {\n this.removeClass(minSelector);\n } else {\n this.addClass(minSelector);\n }\n\n if (isMax) {\n this.removeClass(maxSelector);\n } else {\n this.addClass(maxSelector);\n }\n }\n\n resize () {\n this.isScrolling = this.content.offsetWidth > this.node.offsetWidth;\n }\n\n dispose () {\n this.isScrolling = false;\n }\n}\n\nexport { TableElement };\n","import api from '../../api.js';\nimport { TableEmission } from './table-emission.js';\n\nclass TableCaption extends api.core.Instance {\n static get instanceClassName () {\n return 'TableCaption';\n }\n\n init () {\n this.height = 0;\n this.isResizing = true;\n }\n\n resize () {\n const height = this.getRect().height;\n if (this.height === height) return;\n this.height = height;\n this.ascend(TableEmission.CAPTION_HEIGHT, height);\n }\n}\n\nexport { TableCaption };\n","import api from './api.js';\nimport { Table } from './script/table/table.js';\nimport { TableElement } from './script/table/table-element.js';\nimport { TableSelector } from './script/table/table-selector.js';\nimport { TableCaption } from './script/table/table-caption.js';\n\napi.table = {\n Table: Table,\n TableElement: TableElement,\n TableCaption: TableCaption,\n TableSelector: TableSelector\n};\n\nexport default api;\n","import api from './index.js';\n\napi.internals.register(api.table.TableSelector.TABLE, api.table.Table);\napi.internals.register(api.table.TableSelector.ELEMENT, api.table.TableElement);\napi.internals.register(api.table.TableSelector.CAPTION, api.table.TableCaption);\n\nexport default api;\n","import api from '../../api.js';\n\nexport const TagSelector = {\n TAG_PRESSABLE: `${api.internals.ns.selector('tag')}[aria-pressed]`\n};\n","import api from './api.js';\nimport { TagSelector } from './script/tag/tag-selector';\n\napi.tag = {\n TagSelector: TagSelector\n};\n\nexport default api;\n","import api from './index.js';\n\napi.internals.register(api.tag.TagSelector.TAG_PRESSABLE, api.core.Toggle);\n\nexport default api;\n","import api from '../../api.js';\n\nexport const HeaderSelector = {\n HEADER: api.internals.ns.selector('header'),\n TOOLS_LINKS: api.internals.ns.selector('header__tools-links'),\n MENU_LINKS: api.internals.ns.selector('header__menu-links'),\n BUTTONS: `${api.internals.ns.selector('header__tools-links')} ${api.internals.ns.selector('btns-group')}, ${api.internals.ns.selector('header__tools-links')} ${api.internals.ns.selector('links-group')}`,\n MODALS: `${api.internals.ns.selector('header__search')}${api.internals.ns.selector('modal')}, ${api.internals.ns.selector('header__menu')}${api.internals.ns.selector('modal')}`\n};\n","import api from '../../api.js';\nimport { HeaderSelector } from './header-selector.js';\n\nclass HeaderLinks extends api.core.Instance {\n static get instanceClassName () {\n return 'HeaderLinks';\n }\n\n init () {\n const header = this.queryParentSelector(HeaderSelector.HEADER);\n this.toolsLinks = header.querySelector(HeaderSelector.TOOLS_LINKS);\n this.menuLinks = header.querySelector(HeaderSelector.MENU_LINKS);\n\n const toolsHtml = this.toolsLinks.innerHTML.replace(/ +/g, ' ');\n const menuHtml = this.menuLinks.innerHTML.replace(/ +/g, ' ');\n\n if (toolsHtml === menuHtml) return;\n\n switch (api.mode) {\n case api.Modes.ANGULAR:\n case api.Modes.REACT:\n case api.Modes.VUE:\n api.inspector.warn(`header__tools-links content is different from header__menu-links content.\nAs you're using a dynamic framework, you should handle duplication of this content yourself, please refer to documentation: \n${api.header.doc}`);\n break;\n\n default:\n this.menuLinks.innerHTML = this.toolsLinks.innerHTML;\n }\n }\n}\n\nexport { HeaderLinks };\n","import api from '../../api.js';\n\nclass HeaderModal extends api.core.Instance {\n static get instanceClassName () {\n return 'HeaderModal';\n }\n\n init () {\n this.isResizing = true;\n }\n\n resize () {\n if (this.isBreakpoint(api.core.Breakpoints.LG)) this.unqualify();\n else this.qualify();\n }\n\n qualify () {\n this.setAttribute('role', 'dialog');\n const modal = this.element.getInstance('Modal');\n if (!modal) return;\n const buttons = modal.buttons;\n let id = '';\n for (const button of buttons) {\n id = button.id || id;\n if (button.isPrimary && id) break;\n }\n this.setAttribute('aria-labelledby', id);\n }\n\n unqualify () {\n const modal = this.element.getInstance('Modal');\n if (modal) modal.conceal();\n this.removeAttribute('role');\n this.removeAttribute('aria-labelledby');\n }\n}\n\nexport { HeaderModal };\n","import api from './api.js';\nimport { HeaderLinks } from './script/header/header-links.js';\nimport { HeaderModal } from './script/header/header-modal.js';\nimport { HeaderSelector } from './script/header/header-selector.js';\n\napi.header = {\n HeaderLinks: HeaderLinks,\n HeaderModal: HeaderModal,\n HeaderSelector: HeaderSelector,\n doc: 'https://gouvfr.atlassian.net/wiki/spaces/DB/pages/222789846/En-t+te+-+Header'\n};\n\nexport default api;\n","import api from './index.js';\n\napi.internals.register(api.header.HeaderSelector.BUTTONS, api.header.HeaderLinks);\napi.internals.register(api.header.HeaderSelector.MODALS, api.header.HeaderModal);\n\nexport default api;\n","import api from '../../api.js';\n\nexport const DisplaySelector = {\n DISPLAY: api.internals.ns.selector('display'),\n RADIO_BUTTONS: `input[name=\"${api.internals.ns('radios-theme')}\"]`,\n FIELDSET: api.internals.ns.selector('fieldset')\n};\n","import api from '../../api.js';\nimport { DisplaySelector } from './display-selector.js';\n\nclass Display extends api.core.Instance {\n static get instanceClassName () {\n return 'Display';\n }\n\n init () {\n this.radios = this.querySelectorAll(DisplaySelector.RADIO_BUTTONS);\n\n if (api.scheme) {\n this.changing = this.change.bind(this);\n for (const radio of this.radios) radio.addEventListener('change', this.changing);\n this.addDescent(api.scheme.SchemeEmission.SCHEME, this.apply.bind(this));\n this.ascend(api.scheme.SchemeEmission.ASK);\n } else {\n this.querySelector(DisplaySelector.FIELDSET).setAttribute('disabled', '');\n }\n }\n\n get scheme () {\n return this._scheme;\n }\n\n set scheme (value) {\n if (this._scheme === value || !api.scheme) return;\n switch (value) {\n case api.scheme.SchemeValue.SYSTEM:\n case api.scheme.SchemeValue.LIGHT:\n case api.scheme.SchemeValue.DARK:\n this._scheme = value;\n for (const radio of this.radios) {\n radio.checked = radio.value === value;\n }\n this.ascend(api.scheme.SchemeEmission.SCHEME, value);\n break;\n }\n }\n\n change () {\n for (const radio of this.radios) {\n if (radio.checked) {\n this.scheme = radio.value;\n return;\n }\n }\n }\n\n apply (value) {\n this.scheme = value;\n }\n\n dispose () {\n for (const radio of this.radios) radio.removeEventListener('change', this.changing);\n }\n}\n\nexport { Display };\n","import api from './api.js';\nimport { Display } from './script/display/display.js';\nimport { DisplaySelector } from './script/display/display-selector.js';\n\napi.display = {\n Display: Display,\n DisplaySelector: DisplaySelector\n};\n\nexport default api;\n","import api from './index.js';\n\napi.internals.register(api.display.DisplaySelector.DISPLAY, api.display.Display);\n\nexport default api;\n"],"names":["const","api","window","AccordionSelector","GROUP","internals","ns","selector","COLLAPSE","AccordionsGroup","staticAccessors","instanceClassName","validate","member","node","matches","core","CollapsesGroup","accordion","register","ButtonSelector","EQUISIZED_BUTTON","EQUISIZED_GROUP","button","Equisized","EquisizedsGroup","Breadcrumb","super","this","count","focusing","focus","bind","init","getCollapse","isResizing","prototypeAccessors","proxy","scope","Object","assign","disclose","collapse","listen","DisclosureEvent","DISCLOSE","addAscent","DisclosureEmission","ADDED","resize","links","length","isBreakpoint","Breakpoints","MD","buttonHasFocus","indexOf","document","activeElement","querySelectorAll","element","getDescendantInstances","Collapse","_focus","link","request","verify","Instance","BreadcrumbSelector","BREADCRUMB","breadcrumb","ToggleInput","isChecked","hasAttribute","ToggleStatusLabel","getAttribute","update","isSwappingFont","input","getRegisteredInstances","style","removeProperty","checked","getComputedStyle","maxWidth","parseFloat","width","style2","setProperty","swapFont","families","ToggleSelector","STATUS_LABEL","attr","toggle","SidemenuSelector","LIST","SidemenuList","sidemenu","ModalSelector","MODAL","SCROLL_SHADOW","BODY","ModalButton","DisclosureType","OPENED","DisclosureButton","ModalAttribute","CONCEALING_BACKDROP","Modal","scrolling","resizing","click","listenKey","KeyCodes","ESCAPE","conceal","body","e","target","withhold","activate","isScrollLocked","setAttribute","preventFocus","removeAttribute","deactivate","Disclosure","UNORDEREDS","join","ORDEREDS","isFocusable","container","Element","visibility","undefined","contains","display","parentElement","FocusTrap","onTrap","onUntrap","waiting","wait","handling","handle","maintainFocus","current","trapped","trap","untrap","isTrapping","trapping","requestAnimationFrame","focusables","addEventListener","stun","children","child","stunneds","push","Stunned","event","first","preventDefault","keyCode","last","index","shiftKey","tabIndex","unordereds","dom","querySelectorAllArray","radios","documentElement","groups","radio","name","RadioButtonGroup","filter","unordered","tagName","toLowerCase","keep","ordereds","sort","a","b","noDuplicates","concat","removeEventListener","dispose","inert","unstun","buttons","selected","ModalsGroup","focusTrap","apply","value","initial","DisclosuresGroup","ModalBody","shade","scrollHeight","clientHeight","offsetHeight","scrollTop","removeClass","addClass","adjust","offset","isLegacy","maxHeight","innerHeight","modal","RootSelector","ROOT","NavigationSelector","NAVIGATION","ITEM","ITEM_RIGHT","MENU","NavigationItem","_isRightAligned","calculate","REMOVED","LG","right","getBoundingClientRect","left","isRightAligned","NavigationMousePosition","NONE","INSIDE","OUTSIDE","Navigation","clicked","out","focusOut","down","position","getPosition","hasFocus","navigation","TabButton","SELECT","isPrimary","list","focalize","getAscendantInstance","TabSelector","TAB","PANEL","SHADOW","SHADOW_LEFT","SHADOW_RIGHT","PANEL_START","PANEL_END","TabPanelDirection","TabPanel","_direction","_isPreventingTransition","direction","isPreventingTransition","motion","TransitionSelector","translate","reset","group","TabsGroup","transitionend","RIGHT","pressRight","LEFT","pressLeft","HOME","pressHome","END","pressEnd","isRendering","members","some","let","i","_index","render","paneHeight","Math","round","panelHeight","listHeight","TabsList","scroll","btn","btnRect","getRect","listRect","actualScroll","scrollLeft","scrollTo","isScrolling","_isScrolling","isMin","max","scrollWidth","clientWidth","isMax","abs","isRtl","minSelector","maxSelector","tab","TableEmission","SCROLLABLE","emission","CHANGE","CAPTION_HEIGHT","Table","setCaptionHeight","TableSelector","TABLE","ELEMENT","CAPTION","TableElement","content","querySelector","offsetWidth","TableCaption","height","ascend","table","TagSelector","TAG_PRESSABLE","tag","Toggle","HeaderSelector","HEADER","TOOLS_LINKS","MENU_LINKS","BUTTONS","MODALS","HeaderLinks","header","queryParentSelector","toolsLinks","menuLinks","innerHTML","replace","mode","Modes","ANGULAR","REACT","VUE","inspector","warn","HeaderModal","unqualify","qualify","getInstance","id","doc","DisplaySelector","DISPLAY","RADIO_BUTTONS","FIELDSET","Display","scheme","changing","change","addDescent","SchemeEmission","SCHEME","ASK","_scheme","SchemeValue","SYSTEM","LIGHT","DARK"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * DSFR v1.4.0 | SPDX-License-Identifier: MIT | License-Filename: LICENSE.md | restricted use (see terms and conditions)
2
+ * DSFR v1.4.1 | SPDX-License-Identifier: MIT | License-Filename: LICENSE.md | restricted use (see terms and conditions)
3
3
  */
4
4
  @charset "UTF-8";
5
5
 
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * DSFR v1.4.0 | SPDX-License-Identifier: MIT | License-Filename: LICENSE.md | restricted use (see terms and conditions)
2
+ * DSFR v1.4.1 | SPDX-License-Identifier: MIT | License-Filename: LICENSE.md | restricted use (see terms and conditions)
3
3
  */
4
4
  @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
5
5
  .fr-connect {
@@ -1,3 +1,3 @@
1
1
  /*!
2
- * DSFR v1.4.0 | SPDX-License-Identifier: MIT | License-Filename: LICENSE.md | restricted use (see terms and conditions)
2
+ * DSFR v1.4.1 | SPDX-License-Identifier: MIT | License-Filename: LICENSE.md | restricted use (see terms and conditions)
3
3
  */@media (-ms-high-contrast:active),(-ms-high-contrast:none){.fr-connect{background-color:#000091;color:#f5f5fe}.fr-connect:hover{background-color:#1212ff}.fr-connect:active{background-color:#2323ff}.fr-connect-group .fr-connect+p a{color:#000091}.fr-connect-group p{color:#666}.fr-connect:after{background-image:linear-gradient(0deg,#f5f5fe,#f5f5fe),linear-gradient(0deg,#f5f5fe,#f5f5fe)}.fr-connect:disabled,a.fr-connect:not([href]){background-color:#e5e5e5;color:#929292}.fr-connect:disabled:hover,a.fr-connect:not([href]):hover{background-color:#c5c5c5}.fr-connect:disabled:active,a.fr-connect:not([href]):active{background-color:#b2b2b2}.fr-connect:disabled:after,a.fr-connect:not([href]):after{background-image:linear-gradient(0deg,#929292,#929292),linear-gradient(0deg,#929292,#929292)}}
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * DSFR v1.4.0 | SPDX-License-Identifier: MIT | License-Filename: LICENSE.md | restricted use (see terms and conditions)
2
+ * DSFR v1.4.1 | SPDX-License-Identifier: MIT | License-Filename: LICENSE.md | restricted use (see terms and conditions)
3
3
  */
4
4
  @charset "UTF-8";
5
5
 
@@ -1,3 +1,3 @@
1
1
  /*!
2
- * DSFR v1.4.0 | SPDX-License-Identifier: MIT | License-Filename: LICENSE.md | restricted use (see terms and conditions)
2
+ * DSFR v1.4.1 | SPDX-License-Identifier: MIT | License-Filename: LICENSE.md | restricted use (see terms and conditions)
3
3
  */.fr-connect{--hover:var(--background-action-high-blue-france-hover);--active:var(--background-action-high-blue-france-active);align-items:flex-start;background-color:var(--background-action-high-blue-france);color:var(--text-inverted-blue-france);display:flex;flex-direction:column;height:3.5rem;justify-content:center;margin-bottom:.75rem;padding:.25rem .75rem .25rem 4rem;position:relative}.fr-connect:before{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 48'%3E%3Cpath fill='%232a2f82' d='M34.965 15.1 19.971 6.423 4.977 15.184a.606.606 0 0 0-.306.524v16.948a.666.666 0 0 0 .306.524l14.992 8.6 14.994-8.706a.665.665 0 0 0 .306-.524V15.628a.605.605 0 0 0-.304-.528Z'/%3E%3Cpath fill='%23df1f26' d='m14.614 15.6-5.029 8.628-4.557-9.175 5.39-3.113 4.489 3.16ZM35.27 32.58V15.622a.6.6 0 0 0-.306-.523L19.971 6.423'/%3E%3Cpath fill='%232e65b0' d='m4.673 32.58 15.3-26.157v35.362L4.977 33.18a.666.666 0 0 1-.306-.524V15.708Zm24.669-20.735L34.8 15l-4.489 9.15-5.387-9.236Z'/%3E%3Cpath fill='%23fff' d='m39.606 12.305-19.19-11.02a.933.933 0 0 0-.832 0L.394 12.305A.886.886 0 0 0 0 13v22a.886.886 0 0 0 .394.7l19.189 11.02a.933.933 0 0 0 .832 0L39.606 35.7A.886.886 0 0 0 40 35V13a.886.886 0 0 0-.394-.695ZM10.762 30.061h.079c-.042 0-.079.007-.079.05 0 .1.151 0 .2.1a.912.912 0 0 0-.629.276c0 .051.1.051.151.051-.075.1-.226.05-.277.151a.177.177 0 0 0 .1.05c-.05 0-.1 0-.1.051v.151c-.126 0-.176.1-.277.151.2.151.327 0 .528 0-.528.2-.956.478-1.484.629-.1 0 0 .151-.1.151.151.1.227-.05.377-.05-.654.377-1.333.7-2.037 1.132a.351.351 0 0 0-.1.2h-.2c-.1.05-.05.176-.151.277.226.151.5-.2.654 0 .05 0-.1.05-.2.05-.05 0-.05.1-.1.1h-.154c-.1.075-.2.126-.2.276a.219.219 0 0 0-.226.1 9.034 9.034 0 0 0 3.144-.578 7.685 7.685 0 0 0 2.088-1.559.176.176 0 0 1 .05.1 2.168 2.168 0 0 1-.806 1.08c-.277.151-.478.377-.7.478a4.045 4.045 0 0 0-.428.276 10.761 10.761 0 0 1-1.939.412l-.305.044c-.225.033-.449.069-.671.108L4.977 33.18a.648.648 0 0 1-.288-.411.574.574 0 0 0 .094-.063.265.265 0 0 0-.113-.071v-.65a12.786 12.786 0 0 0 3.038-.942A8.746 8.746 0 0 0 4.671 29.7v-1.515a11.662 11.662 0 0 1 1.639.392 6.415 6.415 0 0 1 1.182.578 3.113 3.113 0 0 0 .478.377.91.91 0 0 0 .8.05h.33a3.961 3.961 0 0 0 1.937-.905c0 .05.05.05.1.05a3.63 3.63 0 0 1-.428 1.132c.003.051-.048.152.053.202Zm2.817 3.571c.251-.1.4-.277.629-.377-.05.05-.05.151-.1.2a3.691 3.691 0 0 0-.528.4 15.96 15.96 0 0 0-1.585 1.61c-.252.3-.528.578-.8.855a2.385 2.385 0 0 1-.31.245l-2.527-1.45a4.047 4.047 0 0 0 1.076-.053 4.984 4.984 0 0 0 .855-.327v.1c.7-.277 1.232-.906 1.937-1.132.025 0 .126.1.226.05a1.883 1.883 0 0 1 1.509-.7c0 .05 0 .1.05.1h.025c-.151.126-.327.251-.5.377-.057.052-.007.102.043.102Zm-8.908-6.164v-.186a5.814 5.814 0 0 1 1.588-.188 1.52 1.52 0 0 1 .478 0 5.861 5.861 0 0 0-2.066.374Zm30.6 5.088a.665.665 0 0 1-.306.524l-10.079 5.851a32.3 32.3 0 0 1-3.408-1.185 2.826 2.826 0 0 1-.05-2.245 3.794 3.794 0 0 1 .352-.883c.025-.025.05-.05.05-.076a.025.025 0 0 0 .025-.025 4.316 4.316 0 0 1 .377-.555l.015-.015.02-.021.015-.015c0-.025.025-.05.05-.076.025-.051.075-.076.1-.126a3.771 3.771 0 0 1 .579-.5 4.07 4.07 0 0 1 .654-.177 19.817 19.817 0 0 1 2.415.328.751.751 0 0 1 .277.1 1.849 1.849 0 0 0 .905-.05 1.137 1.137 0 0 0 .855-.706 1.212 1.212 0 0 0 .05-1.059c-.178-.276-.013-.437.181-.59l.068-.055a1.17 1.17 0 0 0 .231-.216c.126-.252-.1-.4-.151-.63-.05-.1-.226-.05-.327-.2.352-.151.855-.429.629-.857-.151-.227-.377-.63-.1-.857.352-.2.855-.151 1.006-.479a1.138 1.138 0 0 0-.292-1.085l-.075-.108a4.754 4.754 0 0 1-.211-.32 6.914 6.914 0 0 0-.528-.757 4.3 4.3 0 0 1-.528-1.009c-.151-.378.05-.706.05-1.084a6.347 6.347 0 0 0-.327-2.144c-.126-.353-.176-.731-.327-1.059a1.12 1.12 0 0 0-.226-.58.375.375 0 0 1 0-.328 4.874 4.874 0 0 0 .579-.479.567.567 0 0 0-.2-.706c-.327-.151-.3.328-.528.429h-.151c-.05-.126.05-.177.151-.277 0-.05 0-.151-.05-.151-.2 0-.377-.051-.428-.151a3.957 3.957 0 0 0-1.861-1.286 2.319 2.319 0 0 0 .579.1 1.67 1.67 0 0 0 1.006-.1c.227-.076.277-.479.377-.706a.8.8 0 0 0-.151-.631 2.189 2.189 0 0 0-.906-.756 9.13 9.13 0 0 1-.679-.353.952.952 0 0 0-.251-.126c-2.965-1.485-9.069-.2-9.534 0h-.009a8.244 8.244 0 0 0-1.249.475 3.922 3.922 0 0 0-2.365 2.465 3.829 3.829 0 0 0-1.333 1.509c-.428.8-1.056 1.509-.956 2.414.1.78.277 1.484.428 2.289a4.668 4.668 0 0 0 .2.8c.1.276 0 .629.151.855.075.151.025.327.227.428v.2c.05.05.05.1.151.1v.2a6.446 6.446 0 0 1 1.107 1.434c.1.276-.478.151-.7.05a5.979 5.979 0 0 1-1.132-.956.175.175 0 0 0-.051.1c.2.352.906.78.528 1.006-.2.1-.428-.151-.629.051-.05.075 0 .176 0 .276-.277-.2-.578-.1-.855-.2-.2-.05-.252-.427-.478-.427a15.162 15.162 0 0 0-1.811-.327 15.137 15.137 0 0 0-1.739-.159V15.708a.606.606 0 0 1 .306-.524l14.987-8.761L34.965 15.1a.605.605 0 0 1 .306.524Zm-7.954-8.261a.325.325 0 0 1-.282.149 2.843 2.843 0 0 0-.282.273c.1 0 0 .149.1.149-.205.223.077.694-.205.793a2.176 2.176 0 0 1-1.127 0 .722.722 0 0 1 .167-.016h.085a.382.382 0 0 0 .337-.132v-.2c0-.05-.051-.05-.1-.05a.161.161 0 0 1-.1.05.223.223 0 0 0-.154-.2.807.807 0 0 1-.718-.273.67.67 0 0 1 .436-.05c.128 0 .077-.223.231-.322h.154c.307-.372.871-.471.974-.843 0-.1-.282-.1-.487-.149a2.259 2.259 0 0 0-.82.05 4.65 4.65 0 0 0-1.051.273 3.225 3.225 0 0 1 .923-.471 3.886 3.886 0 0 1 .718-.2l.132-.026.133-.027a.971.971 0 0 1 .556 0c.231.1.615.1.666.248.1.273-.154.545-.435.744-.057.081.148.135.148.23Z'/%3E%3C/svg%3E");background-position:50% 50%;background-repeat:no-repeat;background-size:2.5rem 3rem;bottom:.25rem;content:"";display:block;height:3rem;left:.75rem;position:absolute;top:.25rem;width:2.5rem}.fr-connect__brand,.fr-connect__login{line-height:1;z-index:1}.fr-connect__login{font-size:17px;height:17px}.fr-connect__brand{font-size:18px;font-weight:700;height:18px}.fr-connect--plus{padding-right:3rem}.fr-connect--plus:after{background-position:50% 50%,50% 50%;background-repeat:repeat-x,repeat-y;background-size:21.5% 21.5%,21.5% 21.5%;bottom:1rem;content:"";display:block;height:1.5rem;position:absolute;right:.75rem;top:1rem;width:1.5rem}.fr-connect--plus .fr-connect__brand{margin-right:-10px;overflow:hidden;width:100%}.fr-connect-group{--text-spacing:0 0 1rem 0}.fr-connect-group p{color:var(--text-mention-grey);font-size:.75rem;line-height:1.25rem}.fr-connect-group .fr-connect+p a{color:var(--text-action-high-blue-france);font-size:.875rem;line-height:1.5rem}.fr-connect:after{background-image:linear-gradient(0deg,var(--text-inverted-blue-france),var(--text-inverted-blue-france)),linear-gradient(0deg,var(--text-inverted-blue-france),var(--text-inverted-blue-france))}.fr-connect:disabled,a.fr-connect:not([href]){--hover:var(--background-disabled-grey-hover);--active:var(--background-disabled-grey-active);background-color:var(--background-disabled-grey);color:var(--text-disabled-grey)}.fr-connect:disabled:after,a.fr-connect:not([href]):after{background-image:linear-gradient(0deg,var(--text-disabled-grey),var(--text-disabled-grey)),linear-gradient(0deg,var(--text-disabled-grey),var(--text-disabled-grey))}
@@ -1,3 +1,3 @@
1
1
  /*!
2
- * DSFR v1.4.0 | SPDX-License-Identifier: MIT | License-Filename: LICENSE.md | restricted use (see terms and conditions)
2
+ * DSFR v1.4.1 | SPDX-License-Identifier: MIT | License-Filename: LICENSE.md | restricted use (see terms and conditions)
3
3
  */.fr-connect{--hover:var(--background-action-high-blue-france-hover);--active:var(--background-action-high-blue-france-active);align-items:flex-start;background-color:var(--background-action-high-blue-france);color:var(--text-inverted-blue-france);display:flex;flex-direction:column;height:3.5rem;justify-content:center;margin-bottom:.75rem;padding:.25rem .75rem .25rem 4rem;position:relative}.fr-connect:before{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 48'%3E%3Cpath fill='%232a2f82' d='M34.965 15.1 19.971 6.423 4.977 15.184a.606.606 0 0 0-.306.524v16.948a.666.666 0 0 0 .306.524l14.992 8.6 14.994-8.706a.665.665 0 0 0 .306-.524V15.628a.605.605 0 0 0-.304-.528Z'/%3E%3Cpath fill='%23df1f26' d='m14.614 15.6-5.029 8.628-4.557-9.175 5.39-3.113 4.489 3.16ZM35.27 32.58V15.622a.6.6 0 0 0-.306-.523L19.971 6.423'/%3E%3Cpath fill='%232e65b0' d='m4.673 32.58 15.3-26.157v35.362L4.977 33.18a.666.666 0 0 1-.306-.524V15.708Zm24.669-20.735L34.8 15l-4.489 9.15-5.387-9.236Z'/%3E%3Cpath fill='%23fff' d='m39.606 12.305-19.19-11.02a.933.933 0 0 0-.832 0L.394 12.305A.886.886 0 0 0 0 13v22a.886.886 0 0 0 .394.7l19.189 11.02a.933.933 0 0 0 .832 0L39.606 35.7A.886.886 0 0 0 40 35V13a.886.886 0 0 0-.394-.695ZM10.762 30.061h.079c-.042 0-.079.007-.079.05 0 .1.151 0 .2.1a.912.912 0 0 0-.629.276c0 .051.1.051.151.051-.075.1-.226.05-.277.151a.177.177 0 0 0 .1.05c-.05 0-.1 0-.1.051v.151c-.126 0-.176.1-.277.151.2.151.327 0 .528 0-.528.2-.956.478-1.484.629-.1 0 0 .151-.1.151.151.1.227-.05.377-.05-.654.377-1.333.7-2.037 1.132a.351.351 0 0 0-.1.2h-.2c-.1.05-.05.176-.151.277.226.151.5-.2.654 0 .05 0-.1.05-.2.05-.05 0-.05.1-.1.1h-.154c-.1.075-.2.126-.2.276a.219.219 0 0 0-.226.1 9.034 9.034 0 0 0 3.144-.578 7.685 7.685 0 0 0 2.088-1.559.176.176 0 0 1 .05.1 2.168 2.168 0 0 1-.806 1.08c-.277.151-.478.377-.7.478a4.045 4.045 0 0 0-.428.276 10.761 10.761 0 0 1-1.939.412l-.305.044c-.225.033-.449.069-.671.108L4.977 33.18a.648.648 0 0 1-.288-.411.574.574 0 0 0 .094-.063.265.265 0 0 0-.113-.071v-.65a12.786 12.786 0 0 0 3.038-.942A8.746 8.746 0 0 0 4.671 29.7v-1.515a11.662 11.662 0 0 1 1.639.392 6.415 6.415 0 0 1 1.182.578 3.113 3.113 0 0 0 .478.377.91.91 0 0 0 .8.05h.33a3.961 3.961 0 0 0 1.937-.905c0 .05.05.05.1.05a3.63 3.63 0 0 1-.428 1.132c.003.051-.048.152.053.202Zm2.817 3.571c.251-.1.4-.277.629-.377-.05.05-.05.151-.1.2a3.691 3.691 0 0 0-.528.4 15.96 15.96 0 0 0-1.585 1.61c-.252.3-.528.578-.8.855a2.385 2.385 0 0 1-.31.245l-2.527-1.45a4.047 4.047 0 0 0 1.076-.053 4.984 4.984 0 0 0 .855-.327v.1c.7-.277 1.232-.906 1.937-1.132.025 0 .126.1.226.05a1.883 1.883 0 0 1 1.509-.7c0 .05 0 .1.05.1h.025c-.151.126-.327.251-.5.377-.057.052-.007.102.043.102Zm-8.908-6.164v-.186a5.814 5.814 0 0 1 1.588-.188 1.52 1.52 0 0 1 .478 0 5.861 5.861 0 0 0-2.066.374Zm30.6 5.088a.665.665 0 0 1-.306.524l-10.079 5.851a32.3 32.3 0 0 1-3.408-1.185 2.826 2.826 0 0 1-.05-2.245 3.794 3.794 0 0 1 .352-.883c.025-.025.05-.05.05-.076a.025.025 0 0 0 .025-.025 4.316 4.316 0 0 1 .377-.555l.015-.015.02-.021.015-.015c0-.025.025-.05.05-.076.025-.051.075-.076.1-.126a3.771 3.771 0 0 1 .579-.5 4.07 4.07 0 0 1 .654-.177 19.817 19.817 0 0 1 2.415.328.751.751 0 0 1 .277.1 1.849 1.849 0 0 0 .905-.05 1.137 1.137 0 0 0 .855-.706 1.212 1.212 0 0 0 .05-1.059c-.178-.276-.013-.437.181-.59l.068-.055a1.17 1.17 0 0 0 .231-.216c.126-.252-.1-.4-.151-.63-.05-.1-.226-.05-.327-.2.352-.151.855-.429.629-.857-.151-.227-.377-.63-.1-.857.352-.2.855-.151 1.006-.479a1.138 1.138 0 0 0-.292-1.085l-.075-.108a4.754 4.754 0 0 1-.211-.32 6.914 6.914 0 0 0-.528-.757 4.3 4.3 0 0 1-.528-1.009c-.151-.378.05-.706.05-1.084a6.347 6.347 0 0 0-.327-2.144c-.126-.353-.176-.731-.327-1.059a1.12 1.12 0 0 0-.226-.58.375.375 0 0 1 0-.328 4.874 4.874 0 0 0 .579-.479.567.567 0 0 0-.2-.706c-.327-.151-.3.328-.528.429h-.151c-.05-.126.05-.177.151-.277 0-.05 0-.151-.05-.151-.2 0-.377-.051-.428-.151a3.957 3.957 0 0 0-1.861-1.286 2.319 2.319 0 0 0 .579.1 1.67 1.67 0 0 0 1.006-.1c.227-.076.277-.479.377-.706a.8.8 0 0 0-.151-.631 2.189 2.189 0 0 0-.906-.756 9.13 9.13 0 0 1-.679-.353.952.952 0 0 0-.251-.126c-2.965-1.485-9.069-.2-9.534 0h-.009a8.244 8.244 0 0 0-1.249.475 3.922 3.922 0 0 0-2.365 2.465 3.829 3.829 0 0 0-1.333 1.509c-.428.8-1.056 1.509-.956 2.414.1.78.277 1.484.428 2.289a4.668 4.668 0 0 0 .2.8c.1.276 0 .629.151.855.075.151.025.327.227.428v.2c.05.05.05.1.151.1v.2a6.446 6.446 0 0 1 1.107 1.434c.1.276-.478.151-.7.05a5.979 5.979 0 0 1-1.132-.956.175.175 0 0 0-.051.1c.2.352.906.78.528 1.006-.2.1-.428-.151-.629.051-.05.075 0 .176 0 .276-.277-.2-.578-.1-.855-.2-.2-.05-.252-.427-.478-.427a15.162 15.162 0 0 0-1.811-.327 15.137 15.137 0 0 0-1.739-.159V15.708a.606.606 0 0 1 .306-.524l14.987-8.761L34.965 15.1a.605.605 0 0 1 .306.524Zm-7.954-8.261a.325.325 0 0 1-.282.149 2.843 2.843 0 0 0-.282.273c.1 0 0 .149.1.149-.205.223.077.694-.205.793a2.176 2.176 0 0 1-1.127 0 .722.722 0 0 1 .167-.016h.085a.382.382 0 0 0 .337-.132v-.2c0-.05-.051-.05-.1-.05a.161.161 0 0 1-.1.05.223.223 0 0 0-.154-.2.807.807 0 0 1-.718-.273.67.67 0 0 1 .436-.05c.128 0 .077-.223.231-.322h.154c.307-.372.871-.471.974-.843 0-.1-.282-.1-.487-.149a2.259 2.259 0 0 0-.82.05 4.65 4.65 0 0 0-1.051.273 3.225 3.225 0 0 1 .923-.471 3.886 3.886 0 0 1 .718-.2l.132-.026.133-.027a.971.971 0 0 1 .556 0c.231.1.615.1.666.248.1.273-.154.545-.435.744-.057.081.148.135.148.23Z'/%3E%3C/svg%3E");background-position:50% 50%;background-repeat:no-repeat;background-size:2.5rem 3rem;bottom:.25rem;content:"";display:block;height:3rem;left:.75rem;position:absolute;top:.25rem;width:2.5rem}.fr-connect__brand,.fr-connect__login{line-height:1;z-index:1}.fr-connect__login{font-size:17px;height:17px}.fr-connect__brand{font-size:18px;font-weight:700;height:18px}.fr-connect--plus{padding-right:3rem}.fr-connect--plus:after{background-position:50% 50%,50% 50%;background-repeat:repeat-x,repeat-y;background-size:21.5% 21.5%,21.5% 21.5%;bottom:1rem;content:"";display:block;height:1.5rem;position:absolute;right:.75rem;top:1rem;width:1.5rem}.fr-connect--plus .fr-connect__brand{margin-right:-10px;overflow:hidden;width:100%}.fr-connect-group{--text-spacing:0 0 1rem 0}.fr-connect-group p{color:var(--text-mention-grey);font-size:.75rem;line-height:1.25rem}.fr-connect-group .fr-connect+p a{color:var(--text-action-high-blue-france);font-size:.875rem;line-height:1.5rem}.fr-connect:after{background-image:linear-gradient(0deg,var(--text-inverted-blue-france),var(--text-inverted-blue-france)),linear-gradient(0deg,var(--text-inverted-blue-france),var(--text-inverted-blue-france))}.fr-connect:disabled,a.fr-connect:not([href]){--hover:var(--background-disabled-grey-hover);--active:var(--background-disabled-grey-active);background-color:var(--background-disabled-grey);color:var(--text-disabled-grey)}.fr-connect:disabled:after,a.fr-connect:not([href]):after{background-image:linear-gradient(0deg,var(--text-disabled-grey),var(--text-disabled-grey)),linear-gradient(0deg,var(--text-disabled-grey),var(--text-disabled-grey))}@media (-ms-high-contrast:active),(-ms-high-contrast:none){.fr-connect{background-color:#000091;color:#f5f5fe}.fr-connect:hover{background-color:#1212ff}.fr-connect:active{background-color:#2323ff}.fr-connect-group .fr-connect+p a{color:#000091}.fr-connect-group p{color:#666}.fr-connect:after{background-image:linear-gradient(0deg,#f5f5fe,#f5f5fe),linear-gradient(0deg,#f5f5fe,#f5f5fe)}.fr-connect:disabled,a.fr-connect:not([href]){background-color:#e5e5e5;color:#929292}.fr-connect:disabled:hover,a.fr-connect:not([href]):hover{background-color:#c5c5c5}.fr-connect:disabled:active,a.fr-connect:not([href]):active{background-color:#b2b2b2}.fr-connect:disabled:after,a.fr-connect:not([href]):after{background-image:linear-gradient(0deg,#929292,#929292),linear-gradient(0deg,#929292,#929292)}}
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * DSFR v1.4.0 | SPDX-License-Identifier: MIT | License-Filename: LICENSE.md | restricted use (see terms and conditions)
2
+ * DSFR v1.4.1 | SPDX-License-Identifier: MIT | License-Filename: LICENSE.md | restricted use (see terms and conditions)
3
3
  */
4
4
  @charset "UTF-8";
5
5
 
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * DSFR v1.4.0 | SPDX-License-Identifier: MIT | License-Filename: LICENSE.md | restricted use (see terms and conditions)
2
+ * DSFR v1.4.1 | SPDX-License-Identifier: MIT | License-Filename: LICENSE.md | restricted use (see terms and conditions)
3
3
  */
4
4
  @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
5
5
  .fr-consent-placeholder {
@@ -1,3 +1,3 @@
1
1
  /*!
2
- * DSFR v1.4.0 | SPDX-License-Identifier: MIT | License-Filename: LICENSE.md | restricted use (see terms and conditions)
2
+ * DSFR v1.4.1 | SPDX-License-Identifier: MIT | License-Filename: LICENSE.md | restricted use (see terms and conditions)
3
3
  */@media (-ms-high-contrast:active),(-ms-high-contrast:none){.fr-consent-placeholder{background-color:#eee}.fr-consent-placeholder:hover{background-color:#d2d2d2}.fr-consent-placeholder:active{background-color:#c1c1c1}.fr-consent-banner{background-color:#eee;box-shadow:inset 0 0 0 1px #e5e5e5}.fr-consent-banner:hover{background-color:#d2d2d2}.fr-consent-banner:active{background-color:#c1c1c1}.fr-consent-manager__header,.fr-consent-service{box-shadow:inset 0 -1px 0 0 #e5e5e5;color:#3a3a3a}.fr-consent-manager__header .fr-radio-group+.fr-radio-group:before,.fr-consent-service .fr-radio-group+.fr-radio-group:before{box-shadow:inset 0 0 0 1px #e5e5e5}}
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * DSFR v1.4.0 | SPDX-License-Identifier: MIT | License-Filename: LICENSE.md | restricted use (see terms and conditions)
2
+ * DSFR v1.4.1 | SPDX-License-Identifier: MIT | License-Filename: LICENSE.md | restricted use (see terms and conditions)
3
3
  */
4
4
  @charset "UTF-8";
5
5
 
@@ -1,4 +1,4 @@
1
1
  @charset "UTF-8";
2
2
  /*!
3
- * DSFR v1.4.0 | SPDX-License-Identifier: MIT | License-Filename: LICENSE.md | restricted use (see terms and conditions)
3
+ * DSFR v1.4.1 | SPDX-License-Identifier: MIT | License-Filename: LICENSE.md | restricted use (see terms and conditions)
4
4
  */.fr-consent-placeholder{--text-spacing:0 0 1.5rem;--title-spacing:0 0 0.5rem;--hover:var(--background-contrast-grey-hover);--active:var(--background-contrast-grey-active);align-items:center;display:flex;flex-direction:column;justify-content:center;padding:5rem 2rem;text-align:center}.fr-consent-banner,.fr-consent-placeholder{background-color:var(--background-contrast-grey)}.fr-consent-banner{--text-spacing:0 0 1rem;--title-spacing:0 0 1rem;--hover:var(--background-contrast-grey-hover);--active:var(--background-contrast-grey-active);bottom:0;box-shadow:inset 0 0 0 1px var(--border-default-grey);left:0;max-height:calc(100% - 8rem);overflow:auto;padding:1rem;position:fixed;width:100%;z-index:4000}.fr-consent-banner__title{font-size:1.125rem;font-weight:700;line-height:1.5rem;margin-bottom:1rem}.fr-consent-banner__buttons{margin-bottom:-1rem;margin-top:1.5rem}.fr-consent-service{position:relative}.fr-consent-service>.fr-fieldset{display:flex;flex-direction:column;padding:0 0 1.25rem;position:static;width:100%}.fr-consent-service:last-child>.fr-fieldset{padding:2rem 0 1rem}.fr-consent-service:last-child>.fr-fieldset .fr-consent-service>.fr-fieldset:last-child{margin-bottom:0}.fr-consent-service__title{font-size:1.125rem;font-weight:700;line-height:1.5rem;margin:0;padding:2rem 0 .75rem}.fr-consent-service__desc{--text-spacing:0.75rem 0 0.75rem 0;font-size:.875rem;line-height:1.5rem}.fr-consent-service__collapse{margin-bottom:.75rem;margin-top:-.25rem;width:100%}.fr-consent-service__collapse .fr-consent-service__collapse-btn{background:transparent;color:inherit;flex-direction:row-reverse;font-size:.875rem;line-height:1.5rem;max-height:none;max-width:100%;overflow:initial;padding:0}.fr-consent-service__collapse .fr-consent-service__collapse-btn:before{content:"";font:normal 700 normal 1.5rem/1 dsfr-icon;font-size:1rem;font-weight:700;margin-left:.25rem;margin-right:-.16667rem}.fr-consent-service__collapse .fr-consent-service__collapse-btn[aria-expanded=true]:before{content:"";font:normal 700 normal 1rem/1 dsfr-icon;font-weight:700}.fr-consent-service__collapse-btn{--hover-tint:transparent;--active-tint:transparent;align-items:center;display:inline-flex;flex-direction:row;position:relative}.fr-consent-service__collapse-btn:after{background-image:var(--underline-img),var(--underline-img);background-position:50% calc(50% + .71875em),50% calc(50% + .65625em);background-repeat:no-repeat,no-repeat;background-size:0 .0625em,100% .0625em;bottom:0;content:"";display:block;height:calc(100% - .25rem);left:0;position:absolute;right:0;top:0;transition:background-size 0s;width:calc(100% - 1rem)}.fr-consent-service__radios{display:flex;flex-direction:row;flex-wrap:wrap}.fr-consent-service .fr-radio-group{position:relative}.fr-consent-service .fr-radio-group:not(:last-child) input[type=radio]+label{margin-right:3rem}.fr-consent-service .fr-radio-group:not(:first-child):before{content:"";display:block;height:1.5rem;left:calc(-1.5rem - 1px);position:absolute;top:.75rem;width:1px}.fr-consent-services{margin-bottom:-.5rem;margin-top:.5rem;width:100%}.fr-consent-services .fr-consent-service,.fr-consent-services .fr-consent-service:last-child{box-shadow:none}.fr-consent-services .fr-consent-service:last-child>.fr-fieldset,.fr-consent-services .fr-consent-service>.fr-fieldset{padding:0}.fr-consent-services .fr-consent-service:last-child>.fr-fieldset{margin-bottom:1.25rem}.fr-consent-services .fr-consent-service__title{padding-top:.75rem}.fr-consent-services .fr-consent-service__radios{top:0}.fr-consent-services .fr-consent-service__desc{--text-spacing:0.25rem 0 0.75rem 0}.fr-consent-manager__header{padding-top:0}.fr-consent-manager__header .fr-consent-service__title{font-size:1rem;font-weight:400;line-height:1.5rem;padding:0 0 .75rem;width:100%}.fr-consent-manager__header .fr-consent-service__radios{justify-content:flex-start;position:static;top:0;width:100%}.fr-consent-manager__buttons{margin-bottom:-3rem;margin-top:1rem}.fr-consent-manager .fr-consent-service:last-of-type{box-shadow:none}.fr-consent-manager__header,.fr-consent-service{box-shadow:inset 0 -1px 0 0 var(--border-default-grey);color:var(--text-default-grey)}.fr-consent-manager__header .fr-radio-group+.fr-radio-group:before,.fr-consent-service .fr-radio-group+.fr-radio-group:before{box-shadow:inset 0 0 0 1px var(--border-default-grey)}@media (min-width:48em){.fr-consent-banner{bottom:2.5rem;left:2.5rem;max-height:calc(100% - 5rem);max-width:40rem;padding:2rem}.fr-consent-banner__title{font-size:1.25rem;line-height:1.75rem}.fr-consent-banner__buttons{margin-top:2rem}.fr-consent-service>.fr-fieldset{display:flex;flex-direction:row;flex-wrap:wrap;padding:0 0 1.25rem}.fr-consent-service:last-child>.fr-fieldset{padding:1.25rem 0 1rem}.fr-consent-service__title{font-size:1.25rem;line-height:1.75rem;width:50%}.fr-consent-service__desc{--text-spacing:0.25rem 1.5rem 0.75rem 0;width:60%}.fr-consent-service__radios{align-items:center;display:flex;flex-direction:row;justify-content:flex-end;margin-bottom:0;position:absolute;right:0;top:1.25rem;width:50%}.fr-consent-services .fr-consent-service+.fr-consent-service{margin-top:-.25rem}.fr-consent-services .fr-consent-service__desc{--text-spacing:0.25rem 0 0.25rem 0}}@media (min-width:62em){.fr-consent-manager__header .fr-consent-service__title{width:44%}.fr-consent-manager__header .fr-consent-service__radios{justify-content:flex-end;position:absolute;width:56%}}@media (min-width:78em){.fr-consent-manager__header .fr-consent-service__radios,.fr-consent-manager__header .fr-consent-service__title{width:50%}}
@@ -1,4 +1,4 @@
1
1
  @charset "UTF-8";
2
2
  /*!
3
- * DSFR v1.4.0 | SPDX-License-Identifier: MIT | License-Filename: LICENSE.md | restricted use (see terms and conditions)
3
+ * DSFR v1.4.1 | SPDX-License-Identifier: MIT | License-Filename: LICENSE.md | restricted use (see terms and conditions)
4
4
  */.fr-consent-placeholder{--text-spacing:0 0 1.5rem;--title-spacing:0 0 0.5rem;--hover:var(--background-contrast-grey-hover);--active:var(--background-contrast-grey-active);align-items:center;display:flex;flex-direction:column;justify-content:center;padding:5rem 2rem;text-align:center}.fr-consent-banner,.fr-consent-placeholder{background-color:var(--background-contrast-grey)}.fr-consent-banner{--text-spacing:0 0 1rem;--title-spacing:0 0 1rem;--hover:var(--background-contrast-grey-hover);--active:var(--background-contrast-grey-active);bottom:0;box-shadow:inset 0 0 0 1px var(--border-default-grey);left:0;max-height:calc(100% - 8rem);overflow:auto;padding:1rem;position:fixed;width:100%;z-index:4000}.fr-consent-banner__title{font-size:1.125rem;font-weight:700;line-height:1.5rem;margin-bottom:1rem}.fr-consent-banner__buttons{margin-bottom:-1rem;margin-top:1.5rem}.fr-consent-service{position:relative}.fr-consent-service>.fr-fieldset{display:flex;flex-direction:column;padding:0 0 1.25rem;position:static;width:100%}.fr-consent-service:last-child>.fr-fieldset{padding:2rem 0 1rem}.fr-consent-service:last-child>.fr-fieldset .fr-consent-service>.fr-fieldset:last-child{margin-bottom:0}.fr-consent-service__title{font-size:1.125rem;font-weight:700;line-height:1.5rem;margin:0;padding:2rem 0 .75rem}.fr-consent-service__desc{--text-spacing:0.75rem 0 0.75rem 0;font-size:.875rem;line-height:1.5rem}.fr-consent-service__collapse{margin-bottom:.75rem;margin-top:-.25rem;width:100%}.fr-consent-service__collapse .fr-consent-service__collapse-btn{background:transparent;color:inherit;flex-direction:row-reverse;font-size:.875rem;line-height:1.5rem;max-height:none;max-width:100%;overflow:initial;padding:0}.fr-consent-service__collapse .fr-consent-service__collapse-btn:before{content:"";font:normal 700 normal 1.5rem/1 dsfr-icon;font-size:1rem;font-weight:700;margin-left:.25rem;margin-right:-.16667rem}.fr-consent-service__collapse .fr-consent-service__collapse-btn[aria-expanded=true]:before{content:"";font:normal 700 normal 1rem/1 dsfr-icon;font-weight:700}.fr-consent-service__collapse-btn{--hover-tint:transparent;--active-tint:transparent;align-items:center;display:inline-flex;flex-direction:row;position:relative}.fr-consent-service__collapse-btn:after{background-image:var(--underline-img),var(--underline-img);background-position:50% calc(50% + .71875em),50% calc(50% + .65625em);background-repeat:no-repeat,no-repeat;background-size:0 .0625em,100% .0625em;bottom:0;content:"";display:block;height:calc(100% - .25rem);left:0;position:absolute;right:0;top:0;transition:background-size 0s;width:calc(100% - 1rem)}.fr-consent-service__radios{display:flex;flex-direction:row;flex-wrap:wrap}.fr-consent-service .fr-radio-group{position:relative}.fr-consent-service .fr-radio-group:not(:last-child) input[type=radio]+label{margin-right:3rem}.fr-consent-service .fr-radio-group:not(:first-child):before{content:"";display:block;height:1.5rem;left:calc(-1.5rem - 1px);position:absolute;top:.75rem;width:1px}.fr-consent-services{margin-bottom:-.5rem;margin-top:.5rem;width:100%}.fr-consent-services .fr-consent-service,.fr-consent-services .fr-consent-service:last-child{box-shadow:none}.fr-consent-services .fr-consent-service:last-child>.fr-fieldset,.fr-consent-services .fr-consent-service>.fr-fieldset{padding:0}.fr-consent-services .fr-consent-service:last-child>.fr-fieldset{margin-bottom:1.25rem}.fr-consent-services .fr-consent-service__title{padding-top:.75rem}.fr-consent-services .fr-consent-service__radios{top:0}.fr-consent-services .fr-consent-service__desc{--text-spacing:0.25rem 0 0.75rem 0}.fr-consent-manager__header{padding-top:0}.fr-consent-manager__header .fr-consent-service__title{font-size:1rem;font-weight:400;line-height:1.5rem;padding:0 0 .75rem;width:100%}.fr-consent-manager__header .fr-consent-service__radios{justify-content:flex-start;position:static;top:0;width:100%}.fr-consent-manager__buttons{margin-bottom:-3rem;margin-top:1rem}.fr-consent-manager .fr-consent-service:last-of-type{box-shadow:none}.fr-consent-manager__header,.fr-consent-service{box-shadow:inset 0 -1px 0 0 var(--border-default-grey);color:var(--text-default-grey)}.fr-consent-manager__header .fr-radio-group+.fr-radio-group:before,.fr-consent-service .fr-radio-group+.fr-radio-group:before{box-shadow:inset 0 0 0 1px var(--border-default-grey)}@media (min-width:48em){.fr-consent-banner{bottom:2.5rem;left:2.5rem;max-height:calc(100% - 5rem);max-width:40rem;padding:2rem}.fr-consent-banner__title{font-size:1.25rem;line-height:1.75rem}.fr-consent-banner__buttons{margin-top:2rem}.fr-consent-service>.fr-fieldset{display:flex;flex-direction:row;flex-wrap:wrap;padding:0 0 1.25rem}.fr-consent-service:last-child>.fr-fieldset{padding:1.25rem 0 1rem}.fr-consent-service__title{font-size:1.25rem;line-height:1.75rem;width:50%}.fr-consent-service__desc{--text-spacing:0.25rem 1.5rem 0.75rem 0;width:60%}.fr-consent-service__radios{align-items:center;display:flex;flex-direction:row;justify-content:flex-end;margin-bottom:0;position:absolute;right:0;top:1.25rem;width:50%}.fr-consent-services .fr-consent-service+.fr-consent-service{margin-top:-.25rem}.fr-consent-services .fr-consent-service__desc{--text-spacing:0.25rem 0 0.25rem 0}}@media (min-width:62em){.fr-consent-manager__header .fr-consent-service__title{width:44%}.fr-consent-manager__header .fr-consent-service__radios{justify-content:flex-end;position:absolute;width:56%}}@media (min-width:78em){.fr-consent-manager__header .fr-consent-service__radios,.fr-consent-manager__header .fr-consent-service__title{width:50%}}@media (-ms-high-contrast:active),(-ms-high-contrast:none){.fr-consent-placeholder{background-color:#eee}.fr-consent-placeholder:hover{background-color:#d2d2d2}.fr-consent-placeholder:active{background-color:#c1c1c1}.fr-consent-banner{background-color:#eee;box-shadow:inset 0 0 0 1px #e5e5e5}.fr-consent-banner:hover{background-color:#d2d2d2}.fr-consent-banner:active{background-color:#c1c1c1}.fr-consent-manager__header,.fr-consent-service{box-shadow:inset 0 -1px 0 0 #e5e5e5;color:#3a3a3a}.fr-consent-manager__header .fr-radio-group+.fr-radio-group:before,.fr-consent-service .fr-radio-group+.fr-radio-group:before{box-shadow:inset 0 0 0 1px #e5e5e5}}
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * DSFR v1.4.0 | SPDX-License-Identifier: MIT | License-Filename: LICENSE.md | restricted use (see terms and conditions)
2
+ * DSFR v1.4.1 | SPDX-License-Identifier: MIT | License-Filename: LICENSE.md | restricted use (see terms and conditions)
3
3
  */
4
4
  @charset "UTF-8";
5
5
 
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * DSFR v1.4.0 | SPDX-License-Identifier: MIT | License-Filename: LICENSE.md | restricted use (see terms and conditions)
2
+ * DSFR v1.4.1 | SPDX-License-Identifier: MIT | License-Filename: LICENSE.md | restricted use (see terms and conditions)
3
3
  */
4
4
  .fr-content-media__transcription .fr-btn {
5
5
  background-color: transparent;
@@ -1,3 +1,3 @@
1
1
  /*!
2
- * DSFR v1.4.0 | SPDX-License-Identifier: MIT | License-Filename: LICENSE.md | restricted use (see terms and conditions)
2
+ * DSFR v1.4.1 | SPDX-License-Identifier: MIT | License-Filename: LICENSE.md | restricted use (see terms and conditions)
3
3
  */.fr-content-media__transcription .fr-btn{--hover:inherit;--active:inherit;background-color:transparent;color:var(--text-action-high-blue-france)}.fr-content-media__transcription .fr-btn:disabled,.fr-content-media__transcription a.fr-btn:not([href]){--hover:inherit;--active:inherit;background-color:transparent;color:var(--text-disabled-grey)}.fr-content-media__transcription .fr-link{--hover:inherit;--active:inherit;background-color:transparent;color:var(--text-action-high-blue-france)}.fr-content-media__transcription .fr-link:disabled,.fr-content-media__transcription a.fr-link:not([href]){--hover:inherit;--active:inherit;background-color:transparent;color:var(--text-disabled-grey)}
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * DSFR v1.4.0 | SPDX-License-Identifier: MIT | License-Filename: LICENSE.md | restricted use (see terms and conditions)
2
+ * DSFR v1.4.1 | SPDX-License-Identifier: MIT | License-Filename: LICENSE.md | restricted use (see terms and conditions)
3
3
  */
4
4
  @charset "UTF-8";
5
5
 
@@ -1,4 +1,4 @@
1
1
  @charset "UTF-8";
2
2
  /*!
3
- * DSFR v1.4.0 | SPDX-License-Identifier: MIT | License-Filename: LICENSE.md | restricted use (see terms and conditions)
3
+ * DSFR v1.4.1 | SPDX-License-Identifier: MIT | License-Filename: LICENSE.md | restricted use (see terms and conditions)
4
4
  */.fr-content-media{--text-spacing:0;--title-spacing:0;align-items:center;display:flex;flex-direction:column;margin:2.5rem 0;width:100%}.fr-content-media__img{position:relative;width:100%}.fr-content-media__img:before{content:"";display:block;padding-bottom:56.25%;width:100%}.fr-content-media__asset,.fr-content-media__img>*{bottom:0;height:100%;left:0;object-fit:cover;object-position:50% 50%;position:absolute;right:0;top:0;width:100%}.fr-content-media__caption,.fr-content-media__transcription{margin-top:.5rem;text-align:right;width:100%}.fr-content-media__caption{font-size:.75rem;line-height:1.25rem}.fr-content-media__transcription{margin-right:-1rem}.fr-content-media__transcription .fr-btn{--hover:inherit;--active:inherit;background-color:transparent;color:var(--text-action-high-blue-france);flex-direction:row-reverse;font-size:.875rem;font-weight:500;line-height:1.5rem;max-height:none;max-width:100%;min-height:2rem;overflow:initial;padding:.25rem 1rem}.fr-content-media__transcription .fr-btn:before{content:"";font:normal 700 normal 1.5rem/1 dsfr-icon;font-size:1rem;font-weight:700;margin-left:.5rem;margin-right:-.16667rem}.fr-content-media--sm .fr-content-media__caption,.fr-content-media--sm .fr-content-media__img,.fr-content-media--sm .fr-content-media__transcription,.fr-content-media--sm .fr-responsive-vid{width:83.33333%}.fr-content-media--lg .fr-content-media__caption,.fr-content-media--lg .fr-content-media__img,.fr-content-media--lg .fr-content-media__transcription,.fr-content-media--lg .fr-responsive-vid{width:116.66667%}.fr-content-media--lg .fr-content-media__img,.fr-content-media--lg .fr-responsive-vid{max-width:100vw}.fr-content-media--lg .fr-content-media__caption,.fr-content-media--lg .fr-content-media__transcription{max-width:calc(100vw - 2rem)}.fr-content-media__transcription .fr-link{--underline-img:none;--link-blank-font:none;--link-blank-content:none;--hover-tint:var(--hover);--hover:inherit;--active:inherit;background-color:transparent;color:var(--text-action-high-blue-france);flex-direction:row-reverse;font-size:.875rem;font-weight:500;line-height:1.5rem;max-height:none;max-width:100%;min-height:2rem;overflow:initial;padding:.25rem 1rem}.fr-content-media__transcription .fr-link:before{content:"";font:normal 700 normal 1.5rem/1 dsfr-icon;font-size:1rem;font-weight:700;margin-left:.5rem;margin-right:-.16667rem}.fr-content-media__transcription .fr-btn:disabled,.fr-content-media__transcription .fr-link:disabled,.fr-content-media__transcription a.fr-btn:not([href]),.fr-content-media__transcription a.fr-link:not([href]){--hover:inherit;--active:inherit;background-color:transparent;color:var(--text-disabled-grey)}@media (min-width:48em){.fr-content-media--sm .fr-content-media__caption,.fr-content-media--sm .fr-content-media__img,.fr-content-media--sm .fr-content-media__transcription,.fr-content-media--sm .fr-responsive-vid{width:75%}.fr-content-media--lg .fr-content-media__caption,.fr-content-media--lg .fr-content-media__img,.fr-content-media--lg .fr-content-media__transcription,.fr-content-media--lg .fr-responsive-vid{width:125%}}